/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme — Real Passione Premium Lingerie
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

/* ============================================
   REAL PASSIONE — PREMIUM LINGERIE CSS
   Design Language: Feminine · Luxurious · Modern
   Palette: Noir #1a1a1a | Rose #c9a0a0 | Nude #f5e6e0 | Gold #b8943f | White #fafafa
   ============================================ */

/* ── CSS VARIABLES ── */
:root {
  --rp-noir: #1a1a1a;
  --rp-rose: #c9a0a0;
  --rp-nude: #f5e6e0;
  --rp-gold: #b8943f;
  --rp-gold-light: #d4af6a;
  --rp-white: #fafafa;
  --rp-gray: #888;
  --rp-light-gray: #f8f4f2;
  --rp-font-serif: 'Playfair Display', Georgia, serif;
  --rp-font-sans: 'Montserrat', 'Helvetica Neue', sans-serif;
  --rp-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --rp-shadow: 0 4px 20px rgba(0,0,0,0.08);
  --rp-shadow-hover: 0 8px 40px rgba(0,0,0,0.15);
}

/* ── GOOGLE FONTS IMPORT ── */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400;1,600&family=Montserrat:wght@300;400;500;600;700&display=swap');

/* ── GLOBAL ── */
body {
  font-family: var(--rp-font-sans) !important;
  color: var(--rp-noir);
  background-color: var(--rp-white);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5 {
  font-family: var(--rp-font-serif) !important;
  font-weight: 600;
  letter-spacing: 0.02em;
}

/* ── HEADER ── */
.wd-header {
  border-bottom: 1px solid rgba(0,0,0,0.08);
}

.site-logo img {
  max-height: 55px !important;
}

/* Top bar */
.wd-top-bar {
  background-color: var(--rp-noir) !important;
  color: var(--rp-white) !important;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 8px 0;
}
.wd-top-bar a {
  color: var(--rp-gold-light) !important;
}

/* Main navigation */
.wd-nav > li > a,
.whb-col nav > ul > li > a {
  font-family: var(--rp-font-sans) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--rp-noir) !important;
  padding: 8px 16px !important;
  transition: var(--rp-transition) !important;
}
.wd-nav > li > a:hover,
.whb-col nav > ul > li > a:hover {
  color: var(--rp-rose) !important;
}

/* ── BUTTONS ── */
.wd-btn-primary,
button.button,
input[type=submit],
.single_add_to_cart_button,
.checkout-button,
.button:not(.wd-btn-outline) {
  background-color: var(--rp-noir) !important;
  color: var(--rp-white) !important;
  border: 2px solid var(--rp-noir) !important;
  border-radius: 0 !important;
  font-family: var(--rp-font-sans) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  padding: 14px 32px !important;
  transition: var(--rp-transition) !important;
}
.wd-btn-primary:hover,
button.button:hover,
.single_add_to_cart_button:hover,
.checkout-button:hover,
.button:not(.wd-btn-outline):hover {
  background-color: transparent !important;
  color: var(--rp-noir) !important;
}

/* Add to cart on product grid */
.product-element-bottom .btn-add-to-cart,
.wd-product .add_to_cart_button {
  background-color: var(--rp-noir) !important;
  color: var(--rp-white) !important;
  border-radius: 0 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

/* ── PRODUCT CARDS ── */
.wd-product .product-image-wrap {
  border-radius: 0 !important;
  overflow: hidden;
}
.wd-product .product-image-wrap img {
  transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}
.wd-product:hover .product-image-wrap img {
  transform: scale(1.04) !important;
}
.product-title {
  font-family: var(--rp-font-sans) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0.03em !important;
  color: var(--rp-noir) !important;
}
.woocommerce-Price-amount {
  font-weight: 700 !important;
  color: var(--rp-noir) !important;
}
del .woocommerce-Price-amount {
  color: var(--rp-gray) !important;
  font-weight: 400 !important;
}
ins .woocommerce-Price-amount {
  color: #c0392b !important;
}

/* Sale badge */
.wd-product .product-labels span.sale,
span.onsale {
  background-color: #c0392b !important;
  border-radius: 0 !important;
  font-family: var(--rp-font-sans) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}
/* New badge */
.wd-product .product-labels span.new {
  background-color: var(--rp-noir) !important;
  border-radius: 0 !important;
}

/* ── PRODUCT DETAIL PAGE ── */
.woocommerce-product-gallery__image img {
  border-radius: 0 !important;
}
.product_title.entry-title {
  font-family: var(--rp-font-serif) !important;
  font-size: clamp(22px, 3vw, 32px) !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  color: var(--rp-noir) !important;
}
.price-wrapper .woocommerce-Price-amount {
  font-size: 24px !important;
  font-weight: 700 !important;
}
.woocommerce-product-details__short-description {
  font-size: 14px !important;
  line-height: 1.8 !important;
  color: #555 !important;
  border-top: 1px solid rgba(0,0,0,0.1);
  padding-top: 16px;
  margin-top: 16px;
}
.variations label {
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
}

/* ── SHOP PAGE ── */
.woocommerce-products-header__title,
.wd-shop-page-title {
  font-family: var(--rp-font-serif) !important;
  font-size: clamp(28px, 4vw, 48px) !important;
  font-weight: 700 !important;
  color: var(--rp-noir) !important;
  letter-spacing: 0.02em !important;
}

/* ── CART & CHECKOUT ── */
.woocommerce-cart-form th,
.shop_table th {
  font-size: 11px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
}
#order_review .order-total .woocommerce-Price-amount {
  font-size: 20px !important;
  font-weight: 700 !important;
}

/* ── FOOTER ── */
.wd-footer-widgets {
  background-color: var(--rp-noir) !important;
  color: var(--rp-white) !important;
  padding: 60px 0 40px !important;
}
.wd-footer-widgets h3,
.wd-footer-widgets .widget-title {
  color: var(--rp-white) !important;
  font-family: var(--rp-font-serif) !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 20px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid rgba(255,255,255,0.15) !important;
}
.wd-footer-widgets a {
  color: rgba(255,255,255,0.7) !important;
  font-size: 13px !important;
  line-height: 2 !important;
  transition: var(--rp-transition) !important;
}
.wd-footer-widgets a:hover {
  color: var(--rp-gold-light) !important;
}
.wd-bottom-bar {
  background-color: #0d0d0d !important;
  color: rgba(255,255,255,0.5) !important;
  font-size: 12px !important;
  padding: 16px 0 !important;
}
.wd-bottom-bar a {
  color: rgba(255,255,255,0.5) !important;
}
.wd-bottom-bar a:hover {
  color: var(--rp-gold-light) !important;
}

/* ── BREADCRUMBS ── */
.woocommerce-breadcrumb {
  font-size: 12px !important;
  letter-spacing: 0.06em !important;
  color: var(--rp-gray) !important;
}
.woocommerce-breadcrumb a {
  color: var(--rp-gray) !important;
}
.woocommerce-breadcrumb a:hover {
  color: var(--rp-rose) !important;
}

/* ── STARS / REVIEWS ── */
.star-rating span::before,
.stars span a::before {
  color: var(--rp-gold) !important;
}

/* ── TABS (Product Page) ── */
.woocommerce-tabs ul.tabs li a {
  font-family: var(--rp-font-sans) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--rp-noir) !important;
}
.woocommerce-tabs ul.tabs li.active a {
  color: var(--rp-rose) !important;
  border-bottom: 2px solid var(--rp-rose) !important;
}

/* ── PAGINATION ── */
.woocommerce-pagination a,
.wd-pagination a {
  border-radius: 0 !important;
  font-weight: 600 !important;
  border: 1px solid rgba(0,0,0,0.15) !important;
}
.woocommerce-pagination .current,
.wd-pagination .current {
  background-color: var(--rp-noir) !important;
  color: var(--rp-white) !important;
  border-color: var(--rp-noir) !important;
}

/* ── NEWSLETTER (Mailchimp) ── */
.mc4wp-form-fields input[type=email] {
  border: 1px solid rgba(0,0,0,0.2) !important;
  border-radius: 0 !important;
  padding: 14px 20px !important;
  font-size: 14px !important;
}
.mc4wp-form-fields input[type=submit] {
  border-radius: 0 !important;
  background-color: var(--rp-noir) !important;
  color: var(--rp-white) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  padding: 14px 32px !important;
  border: 2px solid var(--rp-noir) !important;
}

/* ── MOBILE ── */
@media (max-width: 768px) {
  .product_title.entry-title { font-size: 22px !important; }
  .woocommerce-products-header__title { font-size: 24px !important; }
}
@media (max-width: 480px) {
  button.button,
  .single_add_to_cart_button { width: 100% !important; }
  .wd-product .product-title { font-size: 13px !important; }
}
