/* ============================================
   SIZZLERS WARDROBE DESIGN SYSTEM v4.0
   Clean rewrite - no conflicting overrides
   ============================================ */

/* ---------- CSS VARIABLES ---------- */
:root {
  --sw-burgundy: #3F0D0C;
  --sw-gold: #D9B061;
  --sw-sand: #D8D0C5;
  --sw-taupe: #D9C4A9;
  --sw-charcoal: #1A1A1A;
  --sw-cream: #F4F1ED;
}

/* ---------- FONTS ---------- */
@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Open+Sans:wght@300;400;500;600&family=DM+Mono:wght@300;400;500&display=swap");

body { font-family: "Open Sans", sans-serif !important; color: var(--sw-charcoal) !important; -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, h5, .elementor-heading-title { font-family: "Playfair Display", serif !important; }

/* ---------- SCROLLBAR + SELECTION ---------- */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--sw-sand); }
::-webkit-scrollbar-thumb { background: var(--sw-gold); border-radius: 4px; }
::selection { background: var(--sw-gold); color: white; }
html { scroll-behavior: smooth; }

/* ---------- NAVIGATION ---------- */
.jet-menu .jet-menu-item .jet-menu-link,
.elementor-nav-menu .elementor-item,
nav a, .menu-item a {
  font-family: "DM Mono", monospace !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
}
.jet-menu .jet-menu-item .jet-menu-link:hover,
.elementor-nav-menu .elementor-item:hover,
nav a:hover, .menu-item a:hover {
  color: var(--sw-burgundy) !important;
  text-decoration: underline !important;
  text-underline-offset: 4px !important;
  text-decoration-color: var(--sw-gold) !important;
}

/* ---------- BUTTONS: Design System ---------- */

/* PRIMARY: Burgundy filled (EXPLORE COLLECTION, ADD TO BAG, ADD TO CART) */
.elementor-element-4b5c6d7 .elementor-button,
.elementor-element-6d7e8f9 .elementor-button,
.woocommerce a.button.add_to_cart_button,
.single_add_to_cart_button,
.woocommerce a.button.product_type_simple,
.elementor-button.elementor-size-md,
.elementor-button.elementor-size-lg {
  background: var(--sw-burgundy) !important;
  color: white !important;
  border: none !important;
  border-radius: 0 !important;
  font-family: "DM Mono", monospace !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
  padding: 14px 32px !important;
}
.elementor-element-4b5c6d7 .elementor-button:hover,
.elementor-element-6d7e8f9 .elementor-button:hover,
.woocommerce a.button.add_to_cart_button:hover,
.elementor-button.elementor-size-md:hover,
.elementor-button.elementor-size-lg:hover {
  background: var(--sw-charcoal) !important;
}

/* SECONDARY: Gold outline (OUR STORY, VIEW ALL CATEGORIES, SHOP NOW, etc) */
.elementor-button.elementor-size-sm {
  background: transparent !important;
  border: 1px solid var(--sw-gold) !important;
  color: var(--sw-charcoal) !important;
  border-radius: 0 !important;
  font-family: "DM Mono", monospace !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  padding: 12px 28px !important;
}
.elementor-button.elementor-size-sm:hover {
  background: var(--sw-gold) !important;
  color: white !important;
}

/* OUR STORY: Dark outline */
.elementor-element-8e9f0a1 .elementor-button {
  border-color: var(--sw-charcoal) !important;
}

/* CUSTOM DESIGN EXPLORE: White on dark background */
.elementor-element-5e6f7b8 .elementor-button {
  border-color: white !important;
  color: white !important;
}
.elementor-element-5e6f7b8 .elementor-button:hover {
  background: white !important;
  color: var(--sw-charcoal) !important;
}

/* SUBSCRIBE: Gold filled */
.mc4wp-form button, .mc4wp-form input[type="submit"],
.elementor-field-type-submit button {
  background: var(--sw-gold) !important;
  color: var(--sw-charcoal) !important;
  border: none !important;
  border-radius: 0 !important;
  font-family: "DM Mono", monospace !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  padding: 14px 28px !important;
}

/* ---------- PRODUCT CARDS (Global) ---------- */
.woocommerce ul.products li.product {
  background: white !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06) !important;
  transition: all 0.35s ease !important;
  border-radius: 0 !important;
  overflow: hidden;
}
.woocommerce ul.products li.product:hover {
  box-shadow: 0 10px 25px rgba(0,0,0,0.12) !important;
  transform: translateY(-4px);
}
.woocommerce ul.products li.product img {
  transition: transform 0.7s ease !important;
}
.woocommerce ul.products li.product:hover img {
  transform: scale(1.08) !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: "Playfair Display", serif !important;
  font-size: 16px !important;
  color: var(--sw-charcoal) !important;
  text-align: center !important;
}
.woocommerce ul.products li.product:hover .woocommerce-loop-product__title {
  color: var(--sw-burgundy) !important;
}
.woocommerce ul.products li.product .price {
  font-family: "DM Mono", monospace !important;
  color: var(--sw-burgundy) !important;
  font-weight: 500 !important;
  text-align: center !important;
}
.woocommerce ul.products li.product .price del { color: #aaa !important; font-size: 12px !important; }
.woocommerce ul.products li.product .price ins { text-decoration: none !important; color: var(--sw-burgundy) !important; }

/* Product buttons - all types consistent */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button {
  background: var(--sw-burgundy) !important;
  color: white !important;
  font-family: "DM Mono", monospace !important;
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
  text-align: center !important;
  border: none !important;
  border-radius: 0 !important;
  text-decoration: none !important;
}
.woocommerce ul.products li.product .button:hover { background: var(--sw-charcoal) !important; }

/* Sale badge */
.woocommerce span.onsale {
  background: var(--sw-burgundy) !important;
  color: white !important;
  font-family: "DM Mono", monospace !important;
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  border-radius: 0 !important;
  padding: 4px 10px !important;
  min-height: auto !important;
  min-width: auto !important;
  line-height: 1.4 !important;
}

/* Star ratings */
.star-rating span::before, .star-rating::before { color: var(--sw-gold) !important; }

/* ---------- TRUST BADGES ---------- */
.elementor-icon-box-icon {
  width: 64px !important; height: 64px !important;
  background: var(--sw-cream) !important;
  border-radius: 50% !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  margin: 0 auto 24px !important;
}
.elementor-icon-box-icon i, .elementor-icon-box-icon svg { color: var(--sw-gold) !important; fill: var(--sw-gold) !important; }
.elementor-icon-box-title { font-family: "Playfair Display", serif !important; font-size: 20px !important; }
.elementor-icon-box-description { font-family: "Open Sans", sans-serif !important; font-size: 14px !important; color: #666 !important; }

/* ---------- FOOTER ---------- */
footer, .site-footer, .elementor-location-footer { border-top: 4px solid var(--sw-gold) !important; }
footer h3, footer h4, footer h5, .elementor-location-footer .elementor-heading-title {
  font-family: "DM Mono", monospace !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
}

/* ---------- WOOCOMMERCE SINGLE PRODUCT ---------- */
.woocommerce div.product .product_title { font-family: "Playfair Display", serif !important; }
.woocommerce div.product p.price { font-family: "DM Mono", monospace !important; color: var(--sw-burgundy) !important; }
.woocommerce .woocommerce-breadcrumb { font-family: "DM Mono", monospace !important; font-size: 11px !important; text-transform: uppercase !important; letter-spacing: 0.1em !important; }

/* ---------- SHOP PAGE ---------- */
/* Hide sidebar */
.elementor-element-1188396 { display: none !important; }
.elementor-element-00fb40d { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; }
/* Hide search bar */
.dgwt-wcas-search-wrapp, form.dgwt-wcas-search-form { display: none !important; }

/* Shop grid */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
  padding: 0 20px !important;
  max-width: 1400px !important;
  margin: 30px auto !important;
}
/* Remove clearfix pseudo-elements from grid */
.woocommerce ul.products::before,
.woocommerce ul.products::after {
  display: none !important;
  content: none !important;
}
/* JetWooBuilder product card fix */
.woocommerce ul.products li.product,
.jet-woo-builder-product {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
  margin: 0 !important;
  padding: 0 !important;
}
/* Shop product images */
.woocommerce ul.products li.product a img {
  width: 100% !important;
  height: 320px !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  margin: 0 !important;
}
.woocommerce ul.products li.product > a:first-of-type { display: block !important; overflow: hidden !important; }

/* Shop product title - 2 line max */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-size: 15px !important;
  padding: 14px 14px 4px !important;
  margin: 0 !important;
  min-height: 44px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
/* Shop price */
.woocommerce ul.products li.product .price {
  font-size: 13px !important;
  padding: 2px 14px 10px !important;
}
/* Shop buttons */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button {
  display: block !important;
  width: calc(100% - 28px) !important;
  margin: auto 14px 14px !important;
  padding: 11px 16px !important;
  line-height: 1.5 !important;
}
/* Shop pagination */
.woocommerce nav.woocommerce-pagination ul { display: inline-flex !important; gap: 6px !important; border: none !important; }
.woocommerce nav.woocommerce-pagination ul li { border: none !important; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  font-family: "DM Mono", monospace !important;
  font-size: 12px !important;
  padding: 10px 15px !important;
  border: 1px solid var(--sw-sand) !important;
  color: var(--sw-charcoal) !important;
  background: white !important;
  text-decoration: none !important;
}
.woocommerce nav.woocommerce-pagination ul li span.current {
  background: var(--sw-burgundy) !important;
  color: white !important;
  border-color: var(--sw-burgundy) !important;
}

/* ---------- RESPONSIVE: TABLET (1024px) ---------- */
@media (max-width: 1024px) {
  /* Shop grid: 3 columns */
  .woocommerce ul.products { grid-template-columns: repeat(3, 1fr) !important; }
}

/* ---------- RESPONSIVE: MOBILE (768px) ---------- */
@media (max-width: 768px) {
  /* Prevent horizontal scroll */
  body { overflow-x: hidden !important; }

  /* Shop grid: 2 columns */
  .woocommerce ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; padding: 0 12px !important; }
  .woocommerce ul.products li.product a img { height: 240px !important; }

  /* Featured product section overflow fix */
  .elementor-section .elementor-container { max-width: 100% !important; overflow-x: hidden !important; }
  .elementor-widget-wrap { padding-left: 15px !important; padding-right: 15px !important; }
  .elementor-heading-title { word-break: break-word !important; }

  /* Buttons: prevent overflow on mobile */
  .elementor-button { max-width: 100% !important; white-space: normal !important; box-sizing: border-box !important; }
  .elementor-button.elementor-size-md,
  .elementor-button.elementor-size-lg { padding: 12px 24px !important; font-size: 10px !important; }
  .elementor-button.elementor-size-sm { padding: 10px 20px !important; }

  /* Trust badges: tighter spacing */
  .elementor-icon-box-icon { width: 48px !important; height: 48px !important; margin: 0 auto 16px !important; }
  .elementor-icon-box-title { font-size: 17px !important; }
  .elementor-icon-box-description { font-size: 13px !important; }

  /* Newsletter: full-width stacked */
  .mc4wp-form input[type="email"],
  .elementor-form input[type="email"] { width: 100% !important; margin-bottom: 10px !important; }
  .mc4wp-form button, .mc4wp-form input[type="submit"],
  .elementor-field-type-submit button { width: 100% !important; padding: 12px 20px !important; }

  /* JetBlocks cart icon: constrain on mobile */
  .jet-blocks-cart__icon svg { width: 28px !important; height: 28px !important; }
  .jet-blocks-cart__heading-link { display: flex !important; align-items: center !important; gap: 6px !important; }
  .jet-blocks-cart__label-text { font-size: 12px !important; }
  .jet-blocks-cart__total-text { font-size: 12px !important; }

  /* Navigation text size */
  .jet-menu .jet-menu-item .jet-menu-link,
  .elementor-nav-menu .elementor-item,
  nav a, .menu-item a { font-size: 11px !important; letter-spacing: 0.1em !important; }

  /* Product title & price on cards */
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 13px !important; padding: 10px 10px 4px !important; min-height: 36px !important; }
  .woocommerce ul.products li.product .price { font-size: 12px !important; padding: 2px 10px 8px !important; }
  .woocommerce ul.products li.product .button { margin: auto 10px 10px !important; padding: 10px 12px !important; font-size: 9px !important; }

  /* Single product page */
  .woocommerce div.product .product_title { font-size: 22px !important; }
  .woocommerce div.product p.price { font-size: 16px !important; }
}

/* ---------- RESPONSIVE: SMALL MOBILE (480px) ---------- */
@media (max-width: 480px) {
  /* Shop grid: single column */
  .woocommerce ul.products { grid-template-columns: 1fr !important; gap: 16px !important; padding: 0 16px !important; }
  .woocommerce ul.products li.product a img { height: 300px !important; }

  /* JetBlocks cart icon sizing */
  .jet-blocks-cart__icon svg { width: 22px !important; height: 22px !important; }
  .jet-blocks-cart__heading-link { display: flex !important; align-items: center !important; gap: 6px !important; }
  .jet-blocks-cart__label-text { font-size: 11px !important; }
  .jet-blocks-cart__total-text { font-size: 11px !important; }

  /* Tighter button padding */
  .elementor-button.elementor-size-md,
  .elementor-button.elementor-size-lg { padding: 10px 20px !important; font-size: 10px !important; }

  /* Breadcrumb wrapping */
  .woocommerce .woocommerce-breadcrumb { font-size: 10px !important; word-break: break-all !important; }
}

/* ---------- NEWSLETTER FORM ---------- */
.mc4wp-form input[type="email"],
.elementor-form input[type="email"] {
  border: none !important;
  border-bottom: 1px solid rgba(217,176,97,0.5) !important;
  border-radius: 0 !important;
  font-family: "Open Sans", sans-serif !important;
}

/* ---------- CART & CHECKOUT ---------- */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  background: var(--sw-burgundy) !important;
  color: white !important;
  border-radius: 0 !important;
  font-family: "DM Mono", monospace !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
}
