/*
Theme Name:   WatchVault Child
Theme URI:    https://the-watch-vault.ro
Description:  Child theme pentru The Watch Vault, bazat pe Astra
Author:       MADKO Design Studio
Author URI:   https://creare-site-brasov.ro
Template:     astra
Version:      1.0.0
Text Domain:  watchvault-child
*/

/* ============================================================
   DESIGN TOKENS — sursa unică de adevăr pentru întreg site-ul
   ============================================================ */
:root {
  /* Culori */
  --wv-bg:        #0A0A0A;
  --wv-surface:   #141414;
  --wv-card:      #1A1A1A;
  --wv-border:    #2A2A2A;
  --wv-gold:      #C9A84C;
  --wv-gold-dim:  #8B7030;
  --wv-cream:     #F5F0E8;
  --wv-muted:     #888880;
  --wv-subtle:    #444440;
  --wv-green:     #4ade80;
  --wv-red:       #f87171;

  /* Tipografie */
  --wv-font-display: 'Cormorant Garamond', Georgia, serif;
  --wv-font-body:    'Inter', system-ui, -apple-system, sans-serif;

  /* Spacing */
  --wv-gap-xs:  0.5rem;
  --wv-gap-sm:  1rem;
  --wv-gap-md:  2rem;
  --wv-gap-lg:  4rem;
  --wv-gap-xl:  7rem;

  /* Tranziții */
  --wv-t-fast: 0.18s ease;
  --wv-t-med:  0.32s ease;

  /* Border radius — 0 pentru look-ul nostru angular */
  --wv-radius: 0;
}

/* ============================================================
   GOOGLE FONTS IMPORT
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Inter:wght@300;400;500;600&display=swap');

/* ============================================================
   RESET ASTRA — anulăm stilurile care intră în conflict
   ============================================================ */

/* Background și culoare globală */
body {
  background-color: var(--wv-bg) !important;
  color: var(--wv-cream) !important;
  font-family: var(--wv-font-body) !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  -webkit-font-smoothing: antialiased;
}

/* Resetăm culorile Astra */
:root {
  --ast-global-color-0: var(--wv-gold);
  --ast-global-color-1: var(--wv-cream);
  --ast-global-color-2: var(--wv-muted);
  --ast-global-color-3: var(--wv-bg);
  --ast-global-color-4: var(--wv-surface);
  --ast-global-color-5: var(--wv-card);
}

/* Link-uri globale */
a {
  color: var(--wv-cream);
  text-decoration: none;
  transition: color var(--wv-t-fast);
}
a:hover { color: var(--wv-gold); }

/* Headings */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--wv-font-display);
  font-weight: 300;
  color: var(--wv-cream);
  line-height: 1.1;
}

/* ===== WV_GLOBAL_LAYOUT — header, footer, titluri (din designul primei pagini) ===== */
:root { --c-bg: #0A0A0A; --c-surface: #141414; --c-card: #1A1A1A; --c-border: #2A2A2A; --c-gold: #C9A84C; --c-gold-dim: #8B7030; --c-cream: #F5F0E8; --c-muted: #888880; --c-subtle: #444440; --f-display: 'Cormorant Garamond', Georgia, serif; --f-body: 'Inter', system-ui, sans-serif; --gap-xs: 0.5rem; --gap-sm: 1rem; --gap-md: 2rem; --gap-lg: 4rem; --gap-xl: 7rem; --t-fast: 0.18s ease; --t-med: 0.32s ease; }
body .wv-container { max-width: 1320px; margin: 0px auto; padding: 0px 2rem; }
body .wv-btn { display: inline-flex; align-items: center; gap: 0.5rem; font-family: var(--f-body); font-size: 0.78rem; font-weight: 500; letter-spacing: 0.1em; text-transform: uppercase; padding: 0.85rem 2rem; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; cursor: pointer; transition: all var(--t-fast); text-decoration: none; }
body .wv-btn-primary { background: var(--c-gold); color: rgb(10, 10, 10); }
body .wv-btn-primary:hover { background: rgb(224, 188, 102); transform: translateY(-1px); color: rgb(10, 10, 10); }
body .wv-btn-outline { background: transparent; color: var(--c-cream); border: 1px solid var(--c-border); }
body .wv-btn-outline:hover { border-color: var(--c-gold); color: var(--c-gold); }
body .wv-btn-ghost { background: transparent; color: var(--c-gold); padding: 0.5rem 0px; letter-spacing: 0.1em; border-bottom: 1px solid transparent; font-size: 0.82rem; }
body .wv-btn-ghost:hover { border-bottom-color: var(--c-gold); color: var(--c-gold); }
body .wv-header { position: fixed; top: 0px; left: 0px; right: 0px; z-index: 100; padding: 1.25rem 0px; transition: background var(--t-med), border-color var(--t-med); border-bottom: 1px solid transparent; }
body .wv-header.scrolled { background: rgba(10, 10, 10, 0.96); backdrop-filter: blur(12px); border-bottom-color: var(--c-border); }
body .wv-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
body .wv-logo { font-family: var(--f-display); font-size: 1.4rem; font-weight: 400; letter-spacing: 0.08em; color: var(--c-cream); white-space: nowrap; }
body .wv-logo span { color: var(--c-gold); }
body .wv-nav { display: flex; gap: 2rem; list-style: none; margin: 0px; padding: 0px; }
body .wv-nav a { font-size: 0.75rem; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: var(--c-muted); transition: color var(--t-fast); }
body .wv-nav a:hover { color: var(--c-cream); }
body .wv-header-actions { display: flex; align-items: center; gap: 1.25rem; }
body .wv-icon-btn { background: none; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; color: var(--c-muted); cursor: pointer; padding: 0.25rem; transition: color var(--t-fast); font-size: 1.1rem; line-height: 1; }
body .wv-icon-btn:hover { color: var(--c-cream); }
body .wv-hamburger { display: none; flex-direction: column; gap: 5px; background: none; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; cursor: pointer; padding: 4px; }
body .wv-hamburger span { display: block; width: 22px; height: 1px; background: var(--c-cream); transition: all var(--t-fast); }
body .wv-mobile-nav { display: none; position: fixed; inset: 0px; background: var(--c-bg); z-index: 201; flex-direction: column; justify-content: center; align-items: center; gap: 2.5rem; }
body .wv-mobile-nav.open { display: flex; }
body .wv-mobile-nav a { font-family: var(--f-display); font-size: 2.5rem; font-weight: 300; color: var(--c-cream); letter-spacing: 0.05em; }
body .wv-mobile-nav a:hover { color: var(--c-gold); }
body .wv-mobile-nav-close { position: absolute; top: 1.25rem; right: 1.25rem; background: none; border: 1px solid var(--c-border); color: var(--c-muted); font-size: 1.2rem; cursor: pointer; width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; z-index: 202; transition: color 0.18s, border-color 0.18s; }
body .wv-mobile-nav-close:hover { color: var(--c-cream); border-color: var(--c-gold); }
body .wv-footer { padding: 7rem 0px 3rem; border-top: 1px solid var(--c-border); }
body .wv-footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 3rem; margin-bottom: 4rem; }
body .wv-footer-brand .wv-logo { display: inline-block; margin-bottom: 1rem; }
body .wv-footer-brand p { font-size: 0.82rem; color: var(--c-muted); line-height: 1.7; max-width: 260px; margin-bottom: 1.5rem; }
body .wv-footer-social { display: flex; gap: 0.75rem; }
body .wv-social-link { width: 34px; height: 34px; border: 1px solid var(--c-border); display: flex; align-items: center; justify-content: center; font-size: 0.8rem; color: var(--c-muted); transition: all var(--t-fast); }
body .wv-social-link:hover { border-color: var(--c-gold); color: var(--c-gold); }
body .wv-footer-col h5 { font-size: 0.68rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--c-gold); margin-bottom: 1.25rem; }
body .wv-footer-col ul { list-style: none; margin: 0px; padding: 0px; }
body .wv-footer-col li { margin-bottom: 0.7rem; }
body .wv-footer-col a { font-size: 0.82rem; color: var(--c-muted); transition: color var(--t-fast); }
body .wv-footer-col a:hover { color: var(--c-cream); }
body .wv-footer-bottom { padding-top: 2rem; border-top: 1px solid var(--c-border); display: flex; justify-content: space-between; align-items: center; }
body .wv-footer-bottom p { font-size: 0.72rem; color: var(--c-subtle); }
@media (max-width: 1100px) {
body .wv-footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem; }
}
@media (max-width: 768px) {
body .wv-nav, body .wv-header-actions .wv-btn { display: none; }
body .wv-hamburger { display: flex; }
body .wv-footer-grid { grid-template-columns: 1fr; gap: 2rem; }
body .wv-footer-bottom { flex-direction: column; gap: 1rem; text-align: center; }
}

/* integrare cu Astra si WooCommerce */
body .wv-header { z-index: 1000; }
body:not(.wv-homepage) .wv-header { background: rgba(10,10,10,0.96); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-bottom-color: var(--c-border); }
body.admin-bar .wv-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .wv-header { top: 46px; } }
body:not(.wv-homepage) #content, body:not(.wv-homepage) .site-content { margin-top: 0 !important; padding-top: 88px; }
body .wv-header-actions { gap: 1rem; }
body .wv-hdr-btn { padding: 0.6rem 1.15rem; font-size: 0.68rem; line-height: 1.2; }
body .wv-cart-link { position: relative; display: inline-flex; align-items: center; }
body .wv-cart-count { position: absolute; top: -7px; right: -10px; min-width: 16px; height: 16px; padding: 0 4px; border-radius: 8px; background: var(--c-gold); color: #0A0A0A; font-family: var(--f-body); font-size: 0.58rem; font-weight: 600; display: flex; align-items: center; justify-content: center; }
body .wv-nav li { margin: 0; }
body .wv-footer-col h5 { font-family: var(--f-body); font-weight: 500; line-height: 1.4; }
body .wv-footer-col ul { margin: 0; padding: 0; }
body .wv-footer p { margin-top: 0; }
body .wv-footer-bottom p { margin: 0; }
body .wv-footer-bottom a { color: inherit; font-size: inherit; }
body .wv-footer-bottom a:hover, body .wv-footer-col a:hover { color: var(--c-cream); }
body .wv-footer a.wv-gold-link { color: var(--c-gold); }
body .wv-footer .wv-logo { font-size: 1.4rem; color: var(--c-cream); }
body .wv-mobile-nav .wv-btn { color: #0A0A0A; }
@media (max-width: 1100px) { body .wv-nav { gap: 1.25rem; } body .wv-hdr-btn.wv-btn-outline { display: none; } }

/* titluri pagini interioare */
body:not(.wv-homepage) .entry-header { margin-bottom: 2.5rem; }
body:not(.wv-homepage) .entry-title, body:not(.wv-homepage) .entry-title a { font-family: var(--f-display) !important; font-weight: 300 !important; font-size: clamp(2.2rem, 4vw, 3.2rem) !important; color: var(--c-cream) !important; letter-spacing: -0.01em; line-height: 1.1; }
body:not(.wv-homepage) .entry-header::after { content: ''; display: block; width: 40px; height: 1px; background: var(--c-gold); margin-top: 1.25rem; }
body:not(.wv-homepage) .ast-container { max-width: 1320px; padding-left: 2rem; padding-right: 2rem; }
@media (max-width: 768px) { body:not(.wv-homepage) .ast-container { padding-left: 1.25rem; padding-right: 1.25rem; } }
/* ===== /WV_GLOBAL_LAYOUT ===== */

/* ============================================================
   WOOCOMMERCE — SHOP / ARCHIVE
   ============================================================ */

/* Background pagina shop */
.woocommerce-page,
body.post-type-archive-product,
body.tax-product_cat {
  background-color: var(--wv-bg);
}

/* Titlu pagina shop */
.woocommerce-products-header__title,
h1.page-title {
  font-family: var(--wv-font-display) !important;
  font-size: clamp(2rem, 4vw, 3.5rem) !important;
  font-weight: 300 !important;
  color: var(--wv-cream) !important;
  letter-spacing: -0.02em !important;
}

/* Breadcrumb */
.woocommerce-breadcrumb {
  font-size: 0.72rem !important;
  color: var(--wv-muted) !important;
  letter-spacing: 0.06em !important;
  padding: 1rem 0 !important;
  border-bottom: 1px solid var(--wv-border) !important;
  margin-bottom: 2rem !important;
}
.woocommerce-breadcrumb a { color: var(--wv-muted) !important; }
.woocommerce-breadcrumb a:hover { color: var(--wv-gold) !important; }

/* Sortare / rezultate */
.woocommerce-result-count {
  font-size: 0.72rem !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: var(--wv-muted) !important;
}
.woocommerce-ordering select {
  background: var(--wv-card) !important;
  border: 1px solid var(--wv-border) !important;
  color: var(--wv-muted) !important;
  font-family: var(--wv-font-body) !important;
  font-size: 0.75rem !important;
  padding: 0.6rem 1rem !important;
  border-radius: 0 !important;
  appearance: none;
}

/* GRID PRODUSE */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 1.5rem !important;
  margin: 0 !important;
}

@media (max-width: 1100px) {
  .woocommerce ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 480px) {
  .woocommerce ul.products { grid-template-columns: 1fr !important; }
}

/* CARD PRODUS */
.woocommerce ul.products li.product {
  background: var(--wv-card) !important;
  border: 1px solid var(--wv-border) !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  transition: border-color var(--wv-t-med), transform var(--wv-t-med) !important;
  position: relative;
  overflow: hidden;
}
.woocommerce ul.products li.product:hover {
  border-color: var(--wv-gold-dim) !important;
  transform: translateY(-3px) !important;
}

/* Imaginea produsului */
.woocommerce ul.products li.product a img {
  width: 100% !important;
  height: 260px !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.5s ease !important;
  border-radius: 0 !important;
}
.woocommerce ul.products li.product:hover a img {
  transform: scale(1.04) !important;
}

/* Body card */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
  font-family: var(--wv-font-display) !important;
  font-size: 1.15rem !important;
  font-weight: 400 !important;
  color: var(--wv-cream) !important;
  padding: 1.25rem 1.25rem 0.25rem !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}

/* Preț card */
.woocommerce ul.products li.product .price {
  font-family: var(--wv-font-display) !important;
  font-size: 1.3rem !important;
  font-weight: 300 !important;
  color: var(--wv-cream) !important;
  padding: 0.5rem 1.25rem 1.25rem !important;
  display: block !important;
}
.woocommerce ul.products li.product .price ins {
  text-decoration: none !important;
}
.woocommerce ul.products li.product .price del {
  color: var(--wv-subtle) !important;
  font-size: 0.85rem !important;
}

/* Buton Add to Cart pe card */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button {
  background: var(--wv-gold) !important;
  color: #0A0A0A !important;
  font-family: var(--wv-font-body) !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  border: none !important;
  padding: 0.75rem 1.25rem !important;
  margin: 0 1.25rem 1.25rem !important;
  width: calc(100% - 2.5rem) !important;
  transition: background var(--wv-t-fast) !important;
}
.woocommerce ul.products li.product .button:hover {
  background: #e0bc66 !important;
}

/* Badge „Sale" → îl rescriem cu stilul nostru */
.woocommerce ul.products li.product .onsale {
  background: var(--wv-gold) !important;
  color: #0A0A0A !important;
  font-family: var(--wv-font-body) !important;
  font-size: 0.62rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  padding: 0.3rem 0.75rem !important;
  top: 1rem !important;
  left: 1rem !important;
  min-height: auto !important;
  min-width: auto !important;
  line-height: 1.4 !important;
}

/* ============================================================
   WOOCOMMERCE — SINGLE PRODUCT
   ============================================================ */
body.single-product {
  background-color: var(--wv-bg);
}

/* Layout principal — split stânga/dreapta */
.woocommerce div.product {
  display: grid !important;
  grid-template-columns: 1fr 420px !important;
  gap: 3.5rem !important;
  align-items: start !important;
  padding-top: 2rem !important;
}

@media (max-width: 1100px) {
  .woocommerce div.product {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }
}

/* Galerie foto */
.woocommerce div.product div.images {
  position: sticky !important;
  top: 90px !important;
}
.woocommerce div.product div.images img {
  border-radius: 0 !important;
  border: 1px solid var(--wv-border) !important;
}
.woocommerce div.product div.images .woocommerce-product-gallery__image {
  background: var(--wv-card) !important;
}

/* Thumbnails galerie */
.woocommerce div.product div.images .flex-control-thumbs {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 0.5rem !important;
  margin-top: 0.5rem !important;
}
.woocommerce div.product div.images .flex-control-thumbs li {
  margin: 0 !important;
}
.woocommerce div.product div.images .flex-control-thumbs li img {
  border: 1px solid var(--wv-border) !important;
  opacity: 0.7 !important;
  transition: opacity var(--wv-t-fast), border-color var(--wv-t-fast) !important;
  cursor: pointer !important;
  height: 70px !important;
  object-fit: cover !important;
}
.woocommerce div.product div.images .flex-control-thumbs li img:hover,
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active {
  opacity: 1 !important;
  border-color: var(--wv-gold) !important;
}

/* Summary / Action Box */
.woocommerce div.product div.summary {
  background: var(--wv-surface) !important;
  border: 1px solid var(--wv-border) !important;
  padding: 2rem !important;
}

/* Titlu produs */
.woocommerce div.product .product_title {
  font-family: var(--wv-font-display) !important;
  font-size: 1.9rem !important;
  font-weight: 300 !important;
  color: var(--wv-cream) !important;
  letter-spacing: -0.01em !important;
  line-height: 1.1 !important;
  margin-bottom: 0.5rem !important;
  padding-bottom: 1.5rem !important;
  border-bottom: 1px solid var(--wv-border) !important;
}

/* Preț produs */
.woocommerce div.product .price {
  font-family: var(--wv-font-display) !important;
  font-size: 2.6rem !important;
  font-weight: 300 !important;
  color: var(--wv-cream) !important;
  letter-spacing: -0.02em !important;
  display: block !important;
  margin: 1.5rem 0 0.5rem !important;
  line-height: 1 !important;
}

/* Descriere scurtă */
.woocommerce div.product .woocommerce-product-details__short-description {
  font-size: 0.82rem !important;
  color: var(--wv-muted) !important;
  line-height: 1.75 !important;
  margin: 1rem 0 !important;
  border-top: 1px solid var(--wv-border) !important;
  padding-top: 1rem !important;
}

/* Buton Add to Cart principal */
.woocommerce div.product form.cart .single_add_to_cart_button,
.woocommerce div.product .single_add_to_cart_button {
  background: var(--wv-gold) !important;
  color: #0A0A0A !important;
  font-family: var(--wv-font-body) !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  border: none !important;
  padding: 1.1rem !important;
  width: 100% !important;
  transition: background var(--wv-t-fast) !important;
  margin-top: 1.25rem !important;
}
.woocommerce div.product form.cart .single_add_to_cart_button:hover {
  background: #e0bc66 !important;
}

/* Quantity input — îl ascundem (fiecare ceas e unic) */
.woocommerce div.product form.cart .quantity {
  display: none !important;
}

/* Meta (SKU, categorie) */
.woocommerce div.product .product_meta {
  font-size: 0.72rem !important;
  color: var(--wv-muted) !important;
  letter-spacing: 0.08em !important;
  border-top: 1px solid var(--wv-border) !important;
  padding-top: 1rem !important;
  margin-top: 1rem !important;
}
.woocommerce div.product .product_meta span {
  display: block !important;
  margin-bottom: 0.35rem !important;
}
.woocommerce div.product .product_meta .sku {
  color: var(--wv-gold) !important;
  font-weight: 500 !important;
}

/* Tabs (Descriere, Specificații, Recenzii) */
.woocommerce div.product .woocommerce-tabs {
  grid-column: 1 / -1 !important;
  margin-top: 3rem !important;
  padding-top: 3rem !important;
  border-top: 1px solid var(--wv-border) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
  display: flex !important;
  gap: 0 !important;
  border-bottom: 1px solid var(--wv-border) !important;
  padding: 0 !important;
  margin: 0 0 2rem !important;
  background: transparent !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  background: transparent !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  font-family: var(--wv-font-body) !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--wv-muted) !important;
  padding: 1rem 1.5rem !important;
  display: block !important;
  background: transparent !important;
  transition: color var(--wv-t-fast) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li:hover a { color: var(--wv-cream) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  border-bottom-color: var(--wv-gold) !important;
  margin-bottom: -1px !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--wv-gold) !important; }

/* Conținut tab */
.woocommerce div.product .woocommerce-tabs .panel {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  color: var(--wv-muted) !important;
  font-size: 0.88rem !important;
  line-height: 1.8 !important;
}
.woocommerce div.product .woocommerce-tabs .panel h2 {
  font-family: var(--wv-font-display) !important;
  font-size: 1.5rem !important;
  font-weight: 300 !important;
  color: var(--wv-cream) !important;
  margin-bottom: 1rem !important;
}

/* Recenzii */
#reviews #comments ol.commentlist li {
  background: var(--wv-card) !important;
  border: 1px solid var(--wv-border) !important;
  border-radius: 0 !important;
  padding: 1.25rem !important;
  margin-bottom: 1rem !important;
}
#review_form_wrapper {
  background: var(--wv-surface) !important;
  border: 1px solid var(--wv-border) !important;
  padding: 1.5rem !important;
  margin-top: 1.5rem !important;
}

/* Produse similare */
.related.products > h2,
.upsells.products > h2 {
  font-family: var(--wv-font-display) !important;
  font-size: 2rem !important;
  font-weight: 300 !important;
  color: var(--wv-cream) !important;
  margin-bottom: 2rem !important;
  padding-top: 3rem !important;
  border-top: 1px solid var(--wv-border) !important;
}

/* ============================================================
   WOOCOMMERCE — CART & CHECKOUT
   ============================================================ */
body.woocommerce-cart,
body.woocommerce-checkout {
  background: var(--wv-bg);
}

/* Tabel cart */
.woocommerce table.shop_table {
  background: var(--wv-card) !important;
  border: 1px solid var(--wv-border) !important;
  border-collapse: separate !important;
}
.woocommerce table.shop_table th {
  background: var(--wv-surface) !important;
  color: var(--wv-muted) !important;
  font-size: 0.68rem !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  border-bottom: 1px solid var(--wv-border) !important;
  padding: 1rem !important;
}
.woocommerce table.shop_table td {
  color: var(--wv-cream) !important;
  border-bottom: 1px solid var(--wv-border) !important;
  padding: 1rem !important;
  vertical-align: middle !important;
}
.woocommerce table.shop_table .product-name a { color: var(--wv-cream) !important; }

/* Input-uri globale WooCommerce */
.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="password"],
.woocommerce input[type="number"],
.woocommerce textarea,
.woocommerce select {
  background: var(--wv-card) !important;
  border: 1px solid var(--wv-border) !important;
  color: var(--wv-cream) !important;
  font-family: var(--wv-font-body) !important;
  font-size: 0.88rem !important;
  padding: 0.85rem 1rem !important;
  border-radius: 0 !important;
  outline: none !important;
  transition: border-color var(--wv-t-fast) !important;
  width: 100% !important;
}
.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus {
  border-color: var(--wv-gold) !important;
  box-shadow: none !important;
}

/* Label-uri */
.woocommerce label,
.woocommerce-checkout label {
  font-size: 0.72rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: var(--wv-cream) !important;
  margin-bottom: 0.5rem !important;
}

/* Butonul Place Order */
.woocommerce #place_order,
.woocommerce .checkout-button {
  background: var(--wv-gold) !important;
  color: #0A0A0A !important;
  font-family: var(--wv-font-body) !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  border: none !important;
  padding: 1rem 2rem !important;
  width: 100% !important;
  transition: background var(--wv-t-fast) !important;
}
.woocommerce #place_order:hover { background: #e0bc66 !important; }

/* Order summary checkout */
.woocommerce-checkout-review-order-table {
  background: var(--wv-surface) !important;
  border: 1px solid var(--wv-border) !important;
}

/* ============================================================
   WOOCOMMERCE — MY ACCOUNT
   ============================================================ */
body.woocommerce-account { background: var(--wv-bg); }

/* Nav My Account */
.woocommerce-MyAccount-navigation {
  background: var(--wv-surface) !important;
  border: 1px solid var(--wv-border) !important;
  border-right: none !important;
  padding: 1.5rem 0 !important;
}
.woocommerce-MyAccount-navigation ul { list-style: none !important; padding: 0 !important; }
.woocommerce-MyAccount-navigation ul li a {
  display: block !important;
  padding: 0.75rem 1.5rem !important;
  font-size: 0.82rem !important;
  color: var(--wv-muted) !important;
  border-bottom: 1px solid var(--wv-border) !important;
  transition: background var(--wv-t-fast), color var(--wv-t-fast) !important;
}
.woocommerce-MyAccount-navigation ul li a:hover {
  background: var(--wv-card) !important;
  color: var(--wv-cream) !important;
}
.woocommerce-MyAccount-navigation ul li.is-active a {
  background: var(--wv-card) !important;
  color: var(--wv-gold) !important;
  border-left: 2px solid var(--wv-gold) !important;
}

/* Conținut My Account */
.woocommerce-MyAccount-content {
  background: transparent !important;
  padding: 0 0 0 2rem !important;
}
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
  font-family: var(--wv-font-display) !important;
  font-weight: 300 !important;
  color: var(--wv-cream) !important;
  border-bottom: 1px solid var(--wv-border) !important;
  padding-bottom: 1rem !important;
  margin-bottom: 1.5rem !important;
}

/* Tabel orders */
.woocommerce-orders-table td,
.woocommerce-orders-table th {
  background: var(--wv-card) !important;
  color: var(--wv-cream) !important;
  border: 1px solid var(--wv-border) !important;
  padding: 0.85rem 1rem !important;
  font-size: 0.82rem !important;
}
.woocommerce-orders-table th {
  background: var(--wv-surface) !important;
  color: var(--wv-muted) !important;
  font-size: 0.68rem !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

/* Butoane My Account */
.woocommerce-MyAccount-content .button,
.woocommerce-account .button {
  background: var(--wv-gold) !important;
  color: #0A0A0A !important;
  font-family: var(--wv-font-body) !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  border: none !important;
  padding: 0.75rem 1.5rem !important;
  transition: background var(--wv-t-fast) !important;
}
.woocommerce-account .button:hover { background: #e0bc66 !important; }

/* ============================================================
   NOTIFICĂRI & MESAJE WOOCOMMERCE
   ============================================================ */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  border-radius: 0 !important;
  border-top: none !important;
  padding: 1rem 1.25rem !important;
  font-size: 0.82rem !important;
}
.woocommerce-message {
  background: rgba(74, 222, 128, 0.08) !important;
  border-left: 3px solid var(--wv-green) !important;
  color: var(--wv-cream) !important;
}
.woocommerce-info {
  background: rgba(201, 168, 76, 0.08) !important;
  border-left: 3px solid var(--wv-gold) !important;
  color: var(--wv-cream) !important;
}
.woocommerce-error {
  background: rgba(248, 113, 113, 0.08) !important;
  border-left: 3px solid var(--wv-red) !important;
  color: var(--wv-cream) !important;
  list-style: none !important;
}

/* ============================================================
   PAGINI STATICE (Elementor widget HTML)
   ============================================================ */

/* Când Elementor redă widget HTML — fără padding extra */
.elementor-widget-html .elementor-widget-container {
  padding: 0 !important;
  margin: 0 !important;
}

/* Eliminăm padding-ul default Elementor pe secțiuni full-width */
.elementor-section.elementor-section-full_width .elementor-container {
  max-width: 100% !important;
  padding: 0 !important;
}

/* ============================================================
   UTILITY CLASSES — disponibile global
   ============================================================ */
.wv-gold   { color: var(--wv-gold) !important; }
.wv-muted  { color: var(--wv-muted) !important; }
.wv-cream  { color: var(--wv-cream) !important; }
.wv-border-gold { border-color: var(--wv-gold) !important; }

/* Butoane globale reutilizabile */
.wv-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--wv-gold);
  color: #0A0A0A;
  font-family: var(--wv-font-body);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 0.9rem 2rem;
  border: none;
  cursor: pointer;
  transition: background var(--wv-t-fast);
  text-decoration: none;
}
.wv-btn-primary:hover { background: #e0bc66; color: #0A0A0A; }

.wv-btn-outline {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: transparent;
  color: var(--wv-cream);
  font-family: var(--wv-font-body);
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 0.85rem 2rem;
  border: 1px solid var(--wv-border);
  cursor: pointer;
  transition: border-color var(--wv-t-fast), color var(--wv-t-fast);
  text-decoration: none;
}
.wv-btn-outline:hover { border-color: var(--wv-gold); color: var(--wv-gold); }

/* ============================================================
   RESPONSIVE GLOBAL
   ============================================================ */
@media (max-width: 768px) {
  .site-content, #content { margin-top: 57px; }
  .woocommerce div.product { grid-template-columns: 1fr !important; }
  .woocommerce div.product div.images { position: static !important; }
  .woocommerce-MyAccount-content { padding: 1.5rem 0 0 !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}

/* ===== WV_INNER — pagini interioare in stilul primei pagini ===== */
body:not(.wv-homepage) .site-content > .ast-container { max-width: 1320px !important; margin-left: auto !important; margin-right: auto !important; padding-left: 2rem !important; padding-right: 2rem !important; }
body:not(.wv-homepage) .site-content > .ast-container > #primary { margin-top: 2.5rem; margin-bottom: 5rem; padding-left: 0; padding-right: 0; }
@media (max-width: 768px) { body:not(.wv-homepage) .site-content > .ast-container { padding-left: 1.25rem !important; padding-right: 1.25rem !important; } }

/* Butoane WooCommerce = butoanele din prima pagina */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce-page .wp-element-button, .woocommerce .wc-block-components-button,
.woocommerce a.checkout-button, .woocommerce #place_order {
  background: var(--c-gold) !important; color: #0A0A0A !important; border: 1px solid var(--c-gold) !important; border-radius: 0 !important;
  font-family: var(--f-body) !important; font-size: 0.72rem !important; font-weight: 600 !important; letter-spacing: 0.15em !important;
  text-transform: uppercase !important; line-height: 1.2 !important; padding: 1rem 1.8rem !important; white-space: nowrap; box-shadow: none !important;
  transition: background var(--t-fast), transform var(--t-fast);
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover, .woocommerce a.checkout-button:hover, .woocommerce #place_order:hover { background: #E0BC66 !important; border-color: #E0BC66 !important; color: #0A0A0A !important; }
.woocommerce button.button[name="update_cart"], .woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled] {
  background: transparent !important; color: var(--c-cream) !important; border-color: var(--c-border) !important; opacity: 1 !important;
}
.woocommerce button.button[name="update_cart"]:disabled { color: var(--c-subtle) !important; }
.woocommerce .coupon .input-text { min-width: 180px; }

/* Tabele, totaluri, comanda */
.woocommerce table.shop_table, .woocommerce table.shop_table td, .woocommerce table.shop_table th { border-color: var(--c-border) !important; border-radius: 0 !important; }
.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review, .woocommerce-checkout #order_review_heading, .woocommerce-page.woocommerce-checkout form #order_review,
.woocommerce-page.woocommerce-checkout form #order_review_heading { background: var(--c-surface) !important; border-color: var(--c-border) !important; border-radius: 0 !important; }
.woocommerce .cart-collaterals .cart_totals > h2, .woocommerce-page .cart-collaterals .cart_totals > h2, .woocommerce-checkout h3, #order_review_heading {
  background: transparent !important; color: var(--c-cream) !important; font-family: var(--f-display) !important; font-weight: 300 !important;
  font-size: 1.6rem !important; border-color: var(--c-border) !important; letter-spacing: 0;
}
.woocommerce a.remove { color: var(--c-muted) !important; border: 1px solid var(--c-border); border-radius: 0; line-height: 1.05; }
.woocommerce a.remove:hover { color: #0A0A0A !important; background: var(--c-gold) !important; border-color: var(--c-gold); }

/* Notificari: fara iconita Astra (fontul ei nu se incarca) */
.woocommerce-info, .woocommerce-message, .woocommerce-error, .woocommerce-noreviews, p.no-comments {
  background: var(--c-surface) !important; color: var(--c-cream) !important; border: 1px solid var(--c-border) !important; border-left: 2px solid var(--c-gold) !important;
  border-radius: 0 !important; padding: 1rem 1.5rem !important; font-size: 0.85rem;
}
.woocommerce-error { border-left-color: #f87171 !important; }
.woocommerce-info::before, .woocommerce-message::before, .woocommerce-error::before { display: none !important; }
.woocommerce-info a, .woocommerce-message a { color: var(--c-gold) !important; }

/* Select tara/judet (select2) */
.select2-container--default .select2-selection--single { background: var(--c-card) !important; border: 1px solid var(--c-border) !important; border-radius: 0 !important; height: auto !important; min-height: 44px; display: flex; align-items: center; }
.select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--c-cream) !important; padding-left: 0.9rem !important; line-height: 1.4 !important; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 100% !important; }
.select2-dropdown { background: var(--c-card) !important; border-color: var(--c-border) !important; border-radius: 0 !important; color: var(--c-cream); }
.select2-search--dropdown .select2-search__field { background: var(--c-bg) !important; border: 1px solid var(--c-border) !important; color: var(--c-cream) !important; }
.select2-results__option { color: var(--c-cream); font-size: 0.85rem; }
.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected] { background: var(--c-gold) !important; color: #0A0A0A !important; }
.select2-container--default .select2-results__option[aria-selected=true] { background: var(--c-surface) !important; }

/* Contul meu */
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0 !important; padding: 0 !important; border: 1px solid var(--c-border) !important; background: var(--c-surface) !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li { margin: 0 !important; padding: 0 !important; border: 0 !important; border-bottom: 1px solid var(--c-border) !important; background: transparent !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child { border-bottom: 0 !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li a { display: block; padding: 0.95rem 1.25rem !important; border: 0 !important; border-left: 2px solid transparent !important; background: transparent !important;
  color: var(--c-muted) !important; font-family: var(--f-body); font-size: 0.78rem !important; letter-spacing: 0.06em; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover { color: var(--c-cream) !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a { color: var(--c-gold) !important; border-left-color: var(--c-gold) !important; background: rgba(201,168,76,0.05) !important; }
.wv-dashboard__stats { display: grid; grid-template-columns: repeat(2, minmax(0, 220px)); gap: 1rem; margin: 2rem 0; }
.wv-dash-stat { background: var(--c-card); border: 1px solid var(--c-border); padding: 1.25rem 1.5rem; }
.wv-dash-stat__val { font-family: var(--f-display); font-size: 2.4rem; font-weight: 300; color: var(--c-cream); line-height: 1; }
.wv-dash-stat__label { margin-top: 0.5rem; font-size: 0.65rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--c-muted); }
.wv-dashboard__actions { display: flex; gap: 1rem; flex-wrap: wrap; }
@media (max-width: 480px) { .wv-dashboard__stats { grid-template-columns: 1fr 1fr; } }
.woocommerce-account .woocommerce-MyAccount-navigation { padding: 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard:first-child:only-child a { color: var(--c-gold) !important; }
/* Magazin: aliniere cu header-ul + mobil */
body .wv-shop-page { padding-left: 0 !important; padding-right: 0 !important; max-width: none !important; }
@media (max-width: 768px) {
  body .wv-shop-header-inner { flex-direction: column !important; align-items: flex-start !important; gap: 0.75rem; }
  body .wv-shop-header-inner > div:first-child, body .wv-shop-count { width: 100% !important; text-align: left !important; }
  body .wv-shop-count .woocommerce-result-count { text-align: left !important; float: none !important; margin: 0; }
  body .wv-shop-body { grid-template-columns: minmax(0, 1fr) !important; }
  body .wv-shop-sidebar, body .wv-shop-main, body .wv-filter-group { min-width: 0 !important; max-width: 100% !important; }
  body .wv-shop-sidebar .wv-filter-list { max-width: 100%; flex-direction: row !important; flex-wrap: nowrap !important; overflow-x: auto; gap: 0.5rem; padding-bottom: 0.5rem; scrollbar-width: none; }
  body .wv-shop-sidebar .wv-filter-list::-webkit-scrollbar { display: none; }
  body .wv-shop-sidebar .wv-filter-list > * { white-space: nowrap; flex: 0 0 auto; border: 1px solid var(--c-border); padding: 0.45rem 0.85rem !important; margin: 0 !important; font-size: 0.78rem; }
}
/* Mobil: fara scroll orizontal */
html, body { overflow-x: clip; }
@media (max-width: 768px) {
  .woocommerce div.product .woocommerce-tabs ul.tabs { display: flex !important; flex-wrap: nowrap !important; overflow-x: auto; scrollbar-width: none; }
  .woocommerce div.product .woocommerce-tabs ul.tabs li { flex: 0 0 auto; white-space: nowrap; }
  .woocommerce table.shop_table td, .woocommerce table.shop_table th { padding: 0.75rem !important; }
  .woocommerce .cart .actions .coupon { display: flex !important; flex-direction: column; gap: 0.5rem; width: 100%; float: none !important; }
  .woocommerce .cart .actions .coupon .input-text { min-width: 0 !important; width: 100% !important; margin: 0 !important; }
  .woocommerce .cart .actions .button { width: 100% !important; white-space: normal; margin: 0.5rem 0 0 !important; }
}
body .wv-footer .wv-footer-text { font-size: 0.82rem; color: var(--c-muted); }
/* Pret in lei (curs BNR) */
body .wv-price-ron { display: block; font-family: var(--f-body) !important; font-size: 0.72rem !important; font-weight: 400 !important; letter-spacing: 0.02em; color: var(--c-muted) !important; margin-top: 0.2rem; line-height: 1.3; text-decoration: none !important; }
body .wv-card-price .wv-price-ron { font-size: 0.68rem !important; }
/* Header pe tableta */
body .wv-nav a, body .wv-hdr-btn { white-space: nowrap; }
@media (max-width: 1024px) {
  body .wv-nav { display: none !important; }
  body .wv-hamburger { display: flex !important; }
  body .wv-header-actions { margin-left: auto; }
}
@media (max-width: 560px) { body .wv-header-actions .wv-hdr-btn { display: none !important; } }
/* ===== /WV_INNER ===== */

/* ===== WV_BRAND_FILTER ===== */
body .wv-filter-count { opacity: .5; font-size: .85em; margin-left: 4px; }
body .wv-filter-more { margin-top: 6px; }
body .wv-filter-more summary { cursor: pointer; list-style: none; padding: 8px 0; color: var(--wv-gold, #c9a961); font-size: 13px; letter-spacing: .04em; }
body .wv-filter-more summary::-webkit-details-marker { display: none; }
body .wv-filter-more summary::after { content: ' +'; }
body .wv-filter-more[open] summary::after { content: ' –'; }
body .wv-filter-more[open] { max-height: 360px; overflow-y: auto; }
/* ===== /WV_BRAND_FILTER ===== */
