/** Shopify CDN: Minification failed

Line 1674:2 Unexpected "100%"
Line 1675:0 Unexpected "}"
Line 1784:0 Unexpected "}"

**/

  /* Force price thin font load */
  /* Raleway loaded via link tag */

  @media (max-width: 768px) {
    .tp-divider { display: none !important; }
  }


  /* PAGINATION */
  .pagination-wrap {
    display: flex; align-items: center; justify-content: center;
    gap: 6px; padding: 20px 0; flex-wrap: wrap;
  }
  .pg-btn {
    width: 44px; height: 44px; border-radius: 6px;
    border: 1px solid #e0ddd6; background: #fff;
    font-family: 'Jost', sans-serif; font-size: 13px; font-weight: 400;
    color: #6b6455; cursor: pointer; display: flex;
    align-items: center; justify-content: center;
    transition: color .15s, border-color .15s, background .15s, opacity .15s;
  }
  .pg-btn:hover { border-color: #d4b85e; color: #d4b85e; }
  .pg-btn.active { background: #111; border-color: #111; color: #fff; font-weight: 600; }
  .pg-btn.pg-arrow { font-size: 16px; width: 40px; }
  .pg-btn.pg-arrow:disabled, .pg-btn.pg-arrow[disabled] { opacity: 0.3; cursor: not-allowed; }
  .pg-btn.pg-dots { border: none; background: none; cursor: default; color: #7a7068; }
  .pg-info {
    text-align: center; font-family: 'Jost', sans-serif;
    font-size: 12px; font-weight: 300; color: #7a7068;
    letter-spacing: 0.05em; padding: 4px 0 12px;
  }


/* ── HAMBURGER MENU ── */
.hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 44px;
  height: 44px;
  cursor: pointer;
  padding: 8px;
  border: none;
  background: none;
  z-index: 1001;
}
.hamburger span {
  display: block;
  height: 1.5px;
  width: 22px;
  background: #1e1c16;
  border-radius: 1px;
  transition: color 0.3s ease, border-color 0.3s ease, opacity 0.3s ease;
}
.hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.hamburger.open span:nth-child(2) { opacity: 0; }
.hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.mobile-nav-overlay {
  display: none;
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.7);
  z-index: 10000;
}
.mobile-nav-overlay.open { display: block; }

.mobile-nav {
  position: fixed;
  top: 0; right: -310px;
  width: 300px;
  height: 100%;
  background: #fff;
  z-index: 10001;
  padding: 80px 0 40px;
  transition: right 0.3s ease;
  box-shadow: -4px 0 20px rgba(0,0,0,0.15);
  overflow-y: auto;
}
.mobile-nav.open { right: 0; }

.mobile-nav a {
  display: block;
  padding: 16px 0px;
  font-family: 'Jost', sans-serif;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #1e1c16;
  text-decoration: none;
  border-bottom: 1px solid #f0ece4;
  transition: background 0.2s;
}
.mobile-nav a:hover { background: #faf8f4; color: #d4b85e; }
.mobile-nav .mobile-nav-cta {
  margin: 20px 24px 0;
  display: block;
  text-align: center;
  padding: 14px;
  background: #d4b85e;
  color: #000 !important;
  border-radius: 4px;
  font-weight: 600;
  border-bottom: none !important;
}
.mobile-nav .mobile-nav-phone {
  padding: 20px 28px 0;
  font-family: 'Jost', sans-serif;
  font-size: 12px;
  color: #7a7068;
  display: block;
}

/* old nav media - removed */

/* ── BACK TO TOP BUTTON ── */
#backToTop {
  position: fixed;
  bottom: 28px;
  right: 24px;
  width: 44px;
  height: 44px;
  background: #d4b85e;
  color: #000;
  border: none;
  border-radius: 50%;
  font-size: 18px;
  cursor: pointer;
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 998;
  box-shadow: 0 4px 16px rgba(212,184,94,0.4);
  transition: opacity 0.3s, transform 0.3s;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
#backToTop:hover { transform: translateY(-3px); }
#backToTop.visible { display: flex; }

/* ── SCROLL PROGRESS BAR ── */
#scrollProgress {
  position: fixed;
  top: 0; left: 0;
  height: 3px;
  width: 0%;
  background: linear-gradient(90deg, #d4b85e, #e8cf86);
  z-index: 9999;
  transition: width 0.1s;
}


/* ══════════════════════════════════════
   UI IMPROVEMENTS
══════════════════════════════════════ */

/* 2. Phone number auto-shrink on mobile */
@media (max-width: 480px) {
  .card-num {
    font-size: clamp(13px, 4vw, 18px) !important;
    letter-spacing: 1px !important;
  }
  .card-num-family {
    font-size: clamp(11px, 3vw, 15px) !important;
    line-height: 1.3 !important;
    letter-spacing: 0.5px !important;
  }
  .po-num {
    font-size: clamp(12px, 3.5vw, 15px) !important;
  }
}

/* 3. Search bar mobile fix */
@media (max-width: 480px) {
  .search-bar {
    flex-direction: column !important;
    border-radius: 8px !important;
  }
  .search-bar input {
    border-radius: 8px 8px 0 0 !important;
    font-size: 14px !important;
  }
  .search-btn {
    border-radius: 0 0 8px 8px !important;
    padding: 14px !important;
    font-size: 12px !important;
  }
  .search-divider { display: none !important; }
}

/* 4. Pagination buttons larger on mobile */
@media (max-width: 768px) {
  .pg-btn {
    width: 42px !important;
    height: 42px !important;
    font-size: 14px !important;
  }
  .pg-btn.pg-arrow {
    width: 46px !important;
  }
  .pagination-wrap {
    gap: 8px !important;
  }
}

/* 5. Unify ENQUIRE / BUY NOW buttons */
.card-buy {
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  padding: 9px 14px !important;
  background: #111 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  font-family: 'Jost', sans-serif !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}
.card-buy-now {
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  padding: 9px 14px !important;
  background: #d4b85e !important;
  color: #000 !important;
  border: none !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  font-family: 'Jost', sans-serif !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}
.btn-enquire {
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  padding: 9px 14px !important;
  background: #111 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  font-family: 'Jost', sans-serif !important;
}
.btn-buy {
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  padding: 9px 14px !important;
  background: #d4b85e !important;
  color: #000 !important;
  border: none !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  font-family: 'Jost', sans-serif !important;
}

/* 6. Pre-order grid uniform on desktop */
#poGrid {
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
}
@media (min-width: 1200px) {
  #poGrid {
    grid-template-columns: repeat(4, 1fr) !important;
  }
}
@media (max-width: 600px) {
  #poGrid {
    grid-template-columns: 1fr !important;
  }
}

/* 7. Footer responsive */
@media (max-width: 768px) {
  .footer-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 32px !important;
  }
}
@media (max-width: 480px) {
  .footer-grid {
    grid-template-columns: 1fr !important;
  }
  .footer-bottom-inner {
    flex-direction: column !important;
    gap: 12px !important;
    text-align: center !important;
  }
  .payment-icons {
    justify-content: center !important;
    flex-wrap: wrap !important;
  }
}

/* 8. Number card hover effect */
.num-card {
  transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s !important;
}
.num-card:hover {
  border-color: #d4b85e !important;
  box-shadow: 0 4px 20px rgba(212,184,94,0.12) !important;
  transform: translateY(-1px) !important;
}

/* 9. Card actions spacing */
.card-footer {
  gap: 8px !important;
}
@media (max-width: 400px) {
  .card-footer {
    flex-wrap: wrap !important;
  }
  .card-buy, .card-buy-now, .btn-enquire, .btn-buy {
    flex: 1 !important;
    padding: 10px 8px !important;
    font-size: 10px !important;
  }
}

/* Smooth scroll for whole page */
html { scroll-behavior: smooth; overflow-x: hidden; }

/* Better focus styles */
button:focus, a:focus {
  outline: 2px solid #d4b85e;
  outline-offset: 2px;
}


/* Hamburger visible on mobile */
@media (max-width: 768px) {
  .nav-left { width: 44px; }
  .nav-left .nav-links { display: none !important; }
  .hamburger { display: flex !important; }
  .nav-cta-pill { display: none !important; }
  .nav-icon-btn { display: flex !important; }
  .nav-whatsapp { display: flex !important; }
}
@media (min-width: 769px) {
  .hamburger { display: none !important; }
  .mobile-nav { display: none !important; }
  .mobile-nav-overlay { display: none !important; }
  .nav-left .nav-links { display: flex !important; }
  .nav-cta-pill { display: inline-flex !important; }
}


/* Last 6 Digit Sequence - force Trebuchet MS */
.acc-card .sb-opt,
.acc-card .sb-opt .sb-count {
  font-family: 'Trebuchet MS', Trebuchet, sans-serif !important;
  font-weight: 400 !important;
}


/* iOS momentum scrolling */
.sidebar, #esimModal > div, .mobile-nav, .acc-body {
  -webkit-overflow-scrolling: touch;
}
/* Nav explicit height */
nav {
  min-height: 56px;
}

@media (max-width: 768px) {
  
  .sidebar { display: none; }
  
}
/* Section padding on mobile */
@media (max-width: 480px) {
  section { padding-left: 16px !important; padding-right: 16px !important; }
  section[style*="padding:80px"] { padding-top: 48px !important; padding-bottom: 48px !important; }
}
/* Min font sizes on mobile */
@media (max-width: 480px) {
  .hc-label, .po-badge, .sb-title { font-size: 10px !important; }
  .card-buy, .card-buy-now { font-size: 10px !important; }
}
/* Overflow fix for wide elements */
@media (max-width: 768px) {
  .hero-stats { flex-wrap: wrap !important; gap: 8px !important; }
  .hstat { min-width: 70px !important; }
  .hc-badges { flex-wrap: wrap !important; }
  .po-card-top { flex-wrap: wrap !important; gap: 4px !important; }
}


.scarcity-badge{font-family:'Jost',sans-serif;font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;background:#fff3e0;color:#e65100;border:1px solid #ffcc80;padding:2px 8px;border-radius:10px;display:inline-block;margin-top:4px;}
.scarcity-diam{background:#f3e5f5;color:#6a1b9a;border-color:#ce93d8;}


/* Nav search overlay */
.nav-search-overlay{position:absolute;top:100%;left:0;width:100%;background:#fff;border-bottom:none;box-shadow:0 4px 20px rgba(0,0,0,0.12);padding:0;max-height:0;overflow:hidden;transition:max-height 0.3s ease,padding 0.3s ease;z-index:10000;}
.nav-search-overlay.open{max-height:72px;padding:14px 24px;}
.nav-search-overlay input{width:100%;border:none;outline:none;font-family:'Jost',sans-serif;font-size:16px;font-weight:300;color:#1e1c16;background:transparent;letter-spacing:0.5px;}
.nav-search-overlay input::placeholder{color:#9a9280;}
.nav-search-close{position:absolute;right:24px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#9a9280;font-size:20px;line-height:1;padding:4px 8px;}
.nav-search-close:hover{color:#d4b85e;}
/* Nav search dropdown */
.nav-search-dropdown{position:absolute;top:calc(100% + 72px);left:0;width:100%;background:#fff;border-bottom:none;box-shadow:0 8px 32px rgba(0,0,0,0.15);z-index:198;display:none;max-height:440px;overflow-y:auto;}
.nav-search-dropdown.open{display:block;}
.nsd-title{font-family:'Jost',sans-serif;font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#d4b85e;padding:10px 24px 6px;background:#faf8f4;border-bottom:1px solid #e8e4db;}
.nsd-item{display:flex;align-items:center;justify-content:space-between;padding:10px 24px;cursor:pointer;border-bottom:1px solid #f0ece4;}
.nsd-item:hover{background:#faf8f4;}
.nsd-num{font-family:'Trebuchet MS',sans-serif;font-size:15px;font-weight:700;color:#1e1c16;}
.nsd-right{display:flex;align-items:center;gap:8px;}
.nsd-price{font-family:'Trebuchet MS',sans-serif;font-size:13px;color:#d4b85e;}
.nsd-tier{font-family:'Jost',sans-serif;font-size:9px;font-weight:600;letter-spacing:1px;text-transform:uppercase;padding:2px 7px;border-radius:10px;}
.nsd-tier.tl-plat{background:#f3e5f5;color:#6a1b9a;}
.nsd-tier.tl-diam{background:#e8f5e9;color:#1b5e20;}
.nsd-tier.tl-gold{background:#fff8e1;color:#a8842f;}
.nsd-tier.tl-silv{background:#f5f5f5;color:#616161;}
.nsd-badge-po{font-family:'Jost',sans-serif;font-size:9px;font-weight:700;color:#a8842f;background:#d4b85e20;border:1px solid #d4b85e40;padding:2px 7px;border-radius:2px;letter-spacing:1px;text-transform:uppercase;}
.nsd-viewall{display:block;text-align:center;font-family:'Jost',sans-serif;font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:#d4b85e;padding:14px 24px;cursor:pointer;border-top:1px solid #e8e4db;}
.nsd-viewall:hover{background:#faf8f4;}
.nsd-empty{font-family:'Jost',sans-serif;font-size:13px;font-weight:300;color:#9a9280;padding:24px;text-align:center;}


/* Nav search highlight */
@keyframes cardHighlight {
  0%   { border-color: #e53e3e; background: #fffbe6; box-shadow: 0 0 0 3px rgba(229,62,62,0.3); }
  70%  { border-color: #e53e3e; background: #fffbe6; box-shadow: 0 0 0 3px rgba(229,62,62,0.3); }
  100% { border-color: var(--grey); background: var(--white); box-shadow: none; }
}
.card-highlight {
  animation: cardHighlight 2s ease forwards !important;
}


/* Plan A nav: Logo left, Links center, Icons right */
@media (max-width: 768px) {
  .nav-mid { display: none !important; }
  .nav-left .logo { display: none !important; }
  .nav-center-mobile { display: flex !important; align-items: center; justify-content: center; }
}
@media (min-width: 769px) {
  .hamburger { display: none !important; }
  .nav-mid { display: flex !important; justify-content: center; }
  .nav-center-mobile { display: none !important; }
}


/* Recently Viewed */
.rv-section{margin-top:16px;padding:16px;border-top:1px solid #e8e4db;display:none;}
.rv-section.has-items{display:block;}
.rv-title{font-family:'Jost',sans-serif;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#d4b85e;margin-bottom:10px;}
.rv-item{display:flex;align-items:center;justify-content:space-between;padding:7px 0;border-bottom:1px solid #f0ece4;cursor:pointer;}
.rv-item:last-child{border-bottom:none;}
.rv-item:hover{opacity:.75;}
.rv-num{font-family:'Trebuchet MS',sans-serif;font-size:13px;font-weight:700;color:#1e1c16;}
.rv-right{display:flex;align-items:center;gap:6px;}
.rv-price{font-family:'Trebuchet MS',sans-serif;font-size:11px;color:#d4b85e;}
.rv-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
.rv-badge{font-family:'Jost',sans-serif;font-size:8px;font-weight:700;color:#a8842f;background:#d4b85e20;border:1px solid #d4b85e40;padding:1px 5px;border-radius:2px;text-transform:uppercase;}
.rv-clear{font-family:'Jost',sans-serif;font-size:9px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#7a7068;cursor:pointer;margin-top:8px;display:block;text-align:right;}
.rv-clear:hover{color:#d4b85e;}


/* Networks row */
.networks-row { background: #faf8f4; border-top: 1px solid #e8e4db; padding: 20px 40px; }
.networks-inner { max-width: 1360px; margin: 0 auto; display: flex; align-items: center; justify-content: center; gap: 8px; flex-wrap: wrap; }
/* v154 Step C (2026-10-30): from 1320px the label and all networks fit on one line in Jost. Keep them on one line there even while the
   fallback font is showing, so the row does not paint as 2 lines and then jump to 1 when Jost arrives (homepage CLS at ~1335px). */
@media (min-width: 1320px) { .networks-inner { flex-wrap: nowrap; } }
/* v154 Step C2 (2026-10-30): until Jost has loaded, the network label and chips use a bold system font already on the visitor's
   device (no download), scaled to Jost 600's widths and line height. The chips then wrap exactly as they will in Jost, so the row
   does not re-flow when Jost arrives (homepage CLS at 1239-1319px). Once Jost loads these faces are no longer used. */
@font-face { font-family: 'Jost Net Fallback A'; src: local('Arial Bold'), local('Arial-BoldMT'), local('Helvetica Bold'), local('Helvetica-Bold'), local('Liberation Sans Bold'), local('LiberationSans-Bold'); font-weight: 100 900; size-adjust: 95.7%; ascent-override: 111.8%; descent-override: 39.18%; line-gap-override: 0%; unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Jost Net Fallback D'; src: local('DejaVu Sans Bold'), local('DejaVuSans-Bold'); font-weight: 100 900; size-adjust: 83.65%; ascent-override: 127.9%; descent-override: 44.83%; line-gap-override: 0%; unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
.networks-label { font-family: 'Jost', 'Jost Net Fallback A', 'Jost Net Fallback D', sans-serif; font-size: 10px; font-weight: 600; letter-spacing: 2px; text-transform: uppercase; color: #9a9280; margin-right: 8px; white-space: nowrap; }
.net-chip { display: flex; align-items: center; gap: 6px; padding: 6px 14px; border-radius: 20px; border: 1px solid #e8e4db; background: #fff; font-family: 'Jost', 'Jost Net Fallback A', 'Jost Net Fallback D', sans-serif; font-size: 11px; font-weight: 600; white-space: nowrap; }
.net-dot { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; }
@media (max-width: 600px) {
  .networks-row { padding: 16px 20px; }
  .networks-label { width: 100%; text-align: center; margin-right: 0; margin-bottom: 8px; }
  .networks-inner { gap: 6px; }
  .net-chip { font-size: 10px; padding: 5px 10px; }
}





/* === BLOCK SEPARATOR === */


/* ── RESET & BASE ── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 16px; }
body { font-family: 'Jost', sans-serif; background: #f7f5f0; color: #1e1c16; }
a { text-decoration: none; color: inherit; }
img { display: block; max-width: 100%; }

/* ── CSS VARS ── */
:root {
  --gold:      #d4b85e;
  --gold-lt:      #e8cf86;
  --gold-dk:      #a8842f;
  --black:     #0f0e0a;
  --charcoal:  #1e1c16;
  --cream:     #f7f5f0;
  --white:     #ffffff;
  --grey:      #e8e4db;
  --mid-grey:  #7a7068;
  --text:      #2c2a22;
  --radius:    4px;
}

/* ── ANNOUNCEMENT BAR ── */
.announce {
  background: var(--black);
  color: var(--gold);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 2.5px;
  text-align: center;
  padding: 10px 20px;
  text-transform: uppercase;
}

/* ── NAV - ROLEX/GOLDSMITHS STYLE ── */
header {
  position: sticky; top: 0; z-index: 200;
  background: #fff;
  border-bottom: 1px solid #e8e4db;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06);
  min-height: 56px;
}
nav {
  max-width: 1360px; margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  padding: 0 20px;
  height: 60px;
}
/* Desktop: logo center, links left, actions right */
.nav-left { display: flex; align-items: center; justify-content: flex-start; gap: 24px; }
.nav-center { display: flex; align-items: center; justify-content: center; }
.nav-right { display: flex; align-items: center; justify-content: flex-end; gap: 16px; }

/* Nav links desktop */
.nav-links {
  display: flex; align-items: center; gap: 4px;
  list-style: none; margin: 0; padding: 0;
}
.nav-links li a {
  font-family: 'Jost', sans-serif;
  font-size: 10px; font-weight: 500;
  letter-spacing: 2px; text-transform: uppercase;
  color: #4a4038; text-decoration: none;
  padding: 6px 10px; border-radius: 2px;
  transition: color .2s;
}
.nav-links li a:hover { color: #d4b85e; }

/* Nav icon buttons */
.nav-icon-btn {
  width: 36px; height: 36px;
  display: flex; align-items: center; justify-content: center;
  background: none; border: none; cursor: pointer;
  color: #1e1c16; font-size: 16px;
  border-radius: 50%; transition: background .15s;
}
.nav-icon-btn:hover { background: #f7f5f0; }

/* WhatsApp icon button */
.nav-whatsapp {
  display: flex; align-items: center; justify-content: center;
  width: 32px; height: 32px;
  background: #25D366; border-radius: 50%;
  color: #fff; font-size: 14px; text-decoration: none;
  transition: transform .2s, box-shadow .2s;
}
.nav-whatsapp:hover { transform: scale(1.1); box-shadow: 0 2px 8px rgba(37,211,102,0.4); }

/* Gold CTA pill */
.nav-cta-pill {
  font-family: 'Jost', sans-serif;
  font-size: 9px; font-weight: 700;
  letter-spacing: 2px; text-transform: uppercase;
  padding: 8px 16px;
  background: #d4b85e; color: #000;
  border: none; border-radius: 2px;
  cursor: pointer; text-decoration: none;
  white-space: nowrap;
  transition: background .15s;
}
.nav-cta-pill:hover { background: #b8982e; }

/* Mobile nav overrides */
@media (max-width: 768px) {
  nav {
    grid-template-columns: 44px 1fr 44px;
    height: 56px;
    padding: 0 12px;
  }
  .nav-left { display: flex !important; }
  .nav-left ul.nav-links { display: none !important; }
  .nav-right .nav-links { display: none !important; }
  .nav-right .nav-cta-pill { display: none !important; }
  .nav-right .nav-phone-text { display: none !important; }
  /* Show hamburger on left, logo center, whatsapp+search right */
}
@media (min-width: 769px) {
  .hamburger { display: none !important; }
  .mobile-nav { display: none !important; }
  .mobile-nav-overlay { display: none !important; }
}

/* ── LOGO ── */
.logo { display: flex; align-items: center; gap: 12px; }
.logo-badge {
  width: 46px; height: 46px; border-radius: 50%;
  background: var(--black);
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  border: 2px solid var(--gold);
  position: relative; overflow: hidden;
}
.logo-badge::after {
  content: '';
  position: absolute; inset: 3px;
  border-radius: 50%;
  border: 1px dashed var(--gold-dk);
  opacity: .5;
}
.logo-badge-vip {
  font-family: 'Cormorant Garamond', serif;
  font-size: 13px; font-weight: 700;
  background: linear-gradient(135deg, var(--gold-lt), var(--gold-dk));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  line-height: 1; position: relative; z-index: 1;
}
.logo-badge-num {
  font-size: 6px; font-weight: 700; letter-spacing: 1.5px;
  color: var(--gold); position: relative; z-index: 1;
}
.logo-words { line-height: 1; }
.logo-words .lw1 { font-size: 17px; font-weight: 800; color: var(--black); letter-spacing: .5px; }
.logo-words .lw2 { font-size: 9px; font-weight: 500; letter-spacing: 3px; color: var(--mid-grey); text-transform: uppercase; }

.nav-links { display: flex; gap: 32px; list-style: none; }
.nav-links a {
  font-size: 13px; font-weight: 500; color: var(--text);
  padding-bottom: 4px; border-bottom: 2px solid transparent;
  transition: color .2s, border-color .2s;
}
.nav-links a:hover { color: var(--gold-dk); border-color: var(--gold); }

.nav-actions { display: flex; align-items: center; gap: 12px; }
.nav-phone { font-size: 13px; font-weight: 600; color: var(--gold-dk); }
.btn { display: inline-flex; align-items: center; gap: 8px; font-family: 'Jost', sans-serif; font-size: 13px; font-weight: 600; letter-spacing: .5px; padding: 10px 22px; border-radius: var(--radius); border: none; cursor: pointer; transition: color .15s, border-color .15s, background .15s, opacity .15s; }
.btn-gold { background: var(--gold); color: var(--black); }
.btn-gold:hover { background: var(--gold-lt); }
.btn-outline { background: transparent; border: 1.5px solid var(--charcoal); color: var(--charcoal); }
.btn-outline:hover { background: var(--charcoal); color: var(--white); }
.btn-lg { font-size: 15px; padding: 14px 32px; }

/* ── HERO ── */
.hero {
  position: relative; overflow: hidden;
  min-height: 580px;
  background: var(--black);
  display: flex; align-items: center;
}
.hero-bg {
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse 55% 80% at 70% 50%, #2a200830 0%, transparent 65%),
    radial-gradient(ellipse 40% 60% at 15% 80%, #d4b85e12 0%, transparent 60%),
    linear-gradient(135deg, #0f0e0a 0%, #1e1c10 100%);
}
/* decorative gold lines */
.hero-lines {
  position: absolute; inset: 0; pointer-events: none;
  overflow: hidden;
}
.hero-lines::before {
  content: '';
  position: absolute;
  top: -100px; right: -100px;
  width: 600px; height: 600px;
  border-radius: 50%;
  border: 1px solid var(--gold);
  opacity: .08;
}
.hero-lines::after {
  content: '';
  position: absolute;
  top: -160px; right: -160px;
  width: 800px; height: 800px;
  border-radius: 50%;
  border: 1px dashed var(--gold-dk);
  opacity: .06;
  /* spin removed */
}


.hero-inner {
  max-width: 1280px; margin: 0 auto; padding: 44px 40px 64px;
  display: grid; grid-template-columns: 1fr 1fr; gap: 72px; align-items: center;
  position: relative; z-index: 1; width: 100%;
}
@media (max-width: 768px) {
  .hero-inner {
    grid-template-columns: 1fr;
    padding: 40px 20px;
    gap: 32px;
    text-align: center;
  }
  .hero-left { align-items: center !important; }
  .hero-actions { justify-content: center; }
  .hero-stats { justify-content: center; flex-wrap: wrap; gap: 16px; }
}
.hero-tag {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(212,184,94,.12); border: 1px solid rgba(212,184,94,.3);
  color: var(--gold); font-size: 11px; font-weight: 700; letter-spacing: 3px;
  text-transform: uppercase; padding: 6px 14px; border-radius: 2px; margin-bottom: 24px;
}
.hero h1 {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(30px, 4vw, 52px); font-weight: 700; line-height: 1.1;
  color: var(--white); margin-bottom: 20px;
}
.hero h1 em { font-style: italic; color: var(--gold); }
.hero-sub { font-size: 16px; font-weight: 300; color: #7a7068; line-height: 1.7; margin-bottom: 36px; max-width: 440px; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 48px; }

.hero-stats { display: flex; gap: 12px; justify-content: center; flex-wrap: nowrap; margin: 8px 0; }
.hstat { border-left: 1px solid var(--gold-dk); padding-left: 10px; }
.hstat .num { font-size: 26px; font-weight: 800; color: var(--gold); line-height: 1; }
.hstat .lbl { font-size: 9px; font-weight: 400; color: var(--mid-grey); margin-top: 2px; letter-spacing: 0.5px; }

/* Hero right -- featured number display */
.hero-card {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(212,184,94,.2);
  border-radius: 8px; padding: 36px 32px;
  /* backdrop-filter removed */
}
.hc-label { font-size: 10px; font-weight: 700; letter-spacing: 4px; text-transform: uppercase; color: var(--mid-grey); margin-bottom: 20px; }
.hc-number {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(24px, 5vw, 38px); font-weight: 700;
  background: linear-gradient(135deg, var(--gold-lt), var(--gold), var(--gold-dk));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  letter-spacing: 4px; margin-bottom: 8px;
  animation: num-swap 8s infinite;
  will-change: opacity;
}
@keyframes num-swap {
  0%,45%  { opacity: 1; }
  50%,95% { opacity: 0; }
  100%    { opacity: 1; }
}
.hc-number2 {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(24px, 5vw, 38px); font-weight: 700;
  background: linear-gradient(135deg, var(--gold-lt), var(--gold), var(--gold-dk));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  letter-spacing: 4px; margin-bottom: 8px;
  position: absolute; top: 0; left: 0; right: 0;
  text-align: center; width: 100%;
  animation: num-swap2 8s infinite;
  will-change: opacity;
}
@keyframes num-swap2 {
  0%,45%  { opacity: 0; }
  50%,95% { opacity: 1; }
  100%    { opacity: 0; }
}
.hc-number-wrap { position: relative; height: 56px; overflow: hidden; margin-bottom: 10px; text-align: center; }
.hc-type { font-size: 12px; color: var(--mid-grey); font-weight: 400; margin-bottom: 24px; }
.hc-divider { height: 1px; background: rgba(212,184,94,.2); margin: 20px 0; }
.hc-price-row { display: flex; align-items: center; justify-content: space-between; }
.hc-price { font-size: 28px; font-weight: 800; color: var(--white); }
.hc-price span { font-size: 13px; font-weight: 400; color: var(--mid-grey); }
.hc-mini-btn {
  font-size: 12px; font-weight: 700; letter-spacing: 1px;
  background: var(--gold); color: var(--black);
  padding: 11px 20px; border: none; border-radius: 3px; cursor: pointer;
  transition: background .15s;
}
.hc-mini-btn:hover { background: var(--gold-lt); }
.hc-badges { display: flex; gap: 8px; margin-top: 20px; flex-wrap: wrap; }
.hc-badge { font-size: 10px; font-weight: 600; letter-spacing: 1.5px; padding: 4px 10px; border-radius: 2px; }
.hcb-plat { background: rgba(255,255,255,.08); color: #ccc; border: 1px solid #444; }
.hcb-net  { background: rgba(212,184,94,.1); color: var(--gold); border: 1px solid rgba(212,184,94,.3); }

/* ── SEARCH BAR ── */
.search-section {
  background: var(--white);
  border-bottom: 1px solid var(--grey);
  padding: 28px 40px;
}
.search-inner { max-width: 1360px; margin: 0 auto; }
.search-label { font-size: 11px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: var(--mid-grey); margin-bottom: 14px; }
.search-bar {
  display: flex; gap: 0; border: 1.5px solid var(--grey); border-radius: var(--radius);
  overflow: hidden; background: var(--white);
  box-shadow: 0 2px 12px rgba(0,0,0,.05);
}
.search-bar input {
  flex: 1; padding: 14px 20px;
  font-family: 'Jost', sans-serif; font-size: 15px; font-weight: 400;
  border: none; outline: none; color: var(--text);
}
.search-bar input::placeholder { color: #bbb; }
.search-divider { width: 1px; background: var(--grey); }
.search-select {
  padding: 14px 18px; font-family: 'Jost', sans-serif; font-size: 14px;
  border: none; outline: none; background: transparent; color: var(--text); cursor: pointer;
  min-width: 150px;
}
.search-btn {
  background: var(--black); color: var(--white);
  font-family: 'Jost', sans-serif; font-size: 13px; font-weight: 700;
  letter-spacing: 1.5px; text-transform: uppercase;
  padding: 14px 28px; border: none; cursor: pointer;
  transition: background .15s;
}
.search-btn:hover { background: var(--gold-dk); }
.search-tags { display: flex; align-items: center; gap: 10px; margin-top: 14px; flex-wrap: wrap; }
.search-tags span { font-size: 12px; color: var(--mid-grey); }
.stag {
  font-size: 12px; font-weight: 500; padding: 5px 12px;
  border: 1px solid var(--grey); border-radius: 20px; color: var(--text);
  cursor: pointer; transition: color .15s, border-color .15s, background .15s, opacity .15s; background: var(--white);
}
.stag:hover { border-color: var(--gold); color: var(--gold-dk); }

/* ── MAIN LAYOUT ── */
.page-wrap { max-width: 1360px; margin: 0 auto; padding: 48px 40px; }

/* ── SIDEBAR ── */
.sidebar { position: sticky; top: 90px; align-self: start; min-width: 0; max-height: calc(100vh - 100px); overflow-y: auto; }
.sidebar-card { background: var(--white); border: 1px solid var(--grey); border-radius: 6px; padding: 20px; margin-bottom: 16px; overflow: hidden; box-sizing: border-box; }
.sb-title { font-size: 13px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--text); margin-bottom: 18px; padding-bottom: 12px; border-bottom: 1px solid var(--grey); }
.sb-options { display: flex; flex-direction: column; gap: 8px; }
.sb-opt {
  display: flex; align-items: center; justify-content: space-between;
  font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; font-weight: 400; color: var(--text);
  font-family: 'Trebuchet MS', Trebuchet, sans-serif !important;
  cursor: pointer; border-radius: 4px; padding: 8px 12px;
  transition: background .15s;
}
.sb-opt:hover, .sb-opt.active { background: #f0ece2; }
.sb-opt.active { font-weight: 600; color: var(--gold-dk); }
.sb-count { font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 11px; background: var(--grey); color: var(--mid-grey); padding: 2px 7px; border-radius: 10px; }
.price-range { display: flex; gap: 8px; margin-top: 4px; width: 100%; box-sizing: border-box; }
.price-input {
  flex: 1; min-width: 0; width: 0;
  padding: 9px 8px; border: 1px solid var(--grey); border-radius: 4px;
  font-family: 'Jost', sans-serif; font-size: 12px; outline: none;
  box-sizing: border-box;
}
.price-input:focus { border-color: var(--gold); }
.sb-apply { width: 100%; margin-top: 12px; }

/* ── PRODUCTS AREA ── */
.products-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px; flex-wrap: wrap; gap: 16px; }
.products-count { font-size: 14px; color: var(--mid-grey); }
.products-count strong { color: var(--text); }
.sort-bar { display: flex; align-items: center; gap: 10px; }
.sort-bar label { font-size: 13px; color: var(--mid-grey); }
.sort-select { padding: 8px 14px; border: 1px solid var(--grey); border-radius: 4px; font-family: 'Jost', sans-serif; font-size: 13px; outline: none; background: var(--white); cursor: pointer; }
.view-toggles { display: flex; gap: 4px; }
.vtog { width: 34px; height: 34px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--grey); border-radius: 4px; cursor: pointer; color: var(--mid-grey); font-size: 16px; transition: color .15s, border-color .15s, background .15s, opacity .15s; }
.vtog.active, .vtog:hover { border-color: var(--gold); color: var(--gold-dk); background: #faf7ee; }

/* ── NUMBER CARDS GRID ── */
.num-grid { display: flex; flex-direction: column; gap: 0; }

.num-card {
  background: var(--white);
  border: 1px solid var(--grey);
  display: flex; align-items: center;
  padding: 14px 20px; gap: 0;
  position: relative; cursor: pointer;
  transition: background .15s;
  margin-bottom: 3px;
  border-radius: 4px;
}
.num-card:hover { background: #faf8f3; border-color: var(--gold); }

.card-tier-strip { display: none; }
.tier-plat, .tier-gold, .tier-diam { display: none; }

.card-body { display: flex; align-items: center; gap: 16px; flex: 1; padding: 0; flex-wrap: wrap; }
.card-tier-label {
  display: none;
}
.tl-plat { background: #f0f0f0; color: #777; }
.tl-gold { background: #fef9ec; color: var(--gold-dk); border: 1px solid #e8d090; }
.tl-diam { background: #f0f9ff; color: #0369a1; border: 1px solid #bae6fd; }

.card-num {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(16px, 2.5vw, 24px); font-weight: 700; letter-spacing: 2px;
  color: var(--black); margin-bottom: 0;
  align-self: center; line-height: 1; padding-top: 9px;
}
.card-desc { display: none; }
.card-num-family {
  line-height: 1.35 !important;
}
.card-tags { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 16px; }
.ctag { font-size: 10px; font-weight: 500; padding: 3px 8px; background: var(--cream); border-radius: 2px; color: var(--mid-grey); }
.card-footer { display: flex; align-items: center; gap: 10px; border-top: none; padding-top: 0; flex-shrink: 0; margin-left: auto; }
.card-price-wrap { width: 90px; text-align: right; flex-shrink: 0; }
.card-price-wrap .price { font-size: 20px; font-weight: 800; color: var(--black); }
.card-price-wrap .vat  { font-size: 10px; color: var(--mid-grey); }
.card-buy {
  font-size: 10px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase;
  padding: 0; min-height: 44px; background: var(--black); color: var(--white);
  border: none; border-radius: 3px; cursor: pointer;
  transition: background .15s; white-space: nowrap;
  width: 76px; text-align: center; flex-shrink: 0;
  display: inline-flex; align-items: center; justify-content: center;
}
.card-buy:hover { background: #222; }
.card-buy-now {
  font-size: 10px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase;
  padding: 0; min-height: 44px; background: var(--gold); color: var(--black);
  border: none; border-radius: 3px; cursor: pointer;
  transition: all 0.2s ease !important; white-space: nowrap;
  width: 76px; text-align: center; flex-shrink: 0;
  display: inline-flex; align-items: center; justify-content: center;
}
.card-buy-now:hover {
  background: #e8cf86 !important;
  transform: scale(1.03) !important;
  box-shadow: 0 4px 16px rgba(212,184,94,0.4) !important;
}
.card-wishlist {
  width: 30px; height: 30px; border-radius: 50%;
  background: transparent; border: 1px solid var(--grey);
  display: flex; align-items: center; justify-content: center;
  font-size: 13px; cursor: pointer; transition: color .15s, border-color .15s, background .15s, opacity .15s;
  color: #ccc; flex-shrink: 0; min-width: 30px;
}
.card-wishlist:hover { color: #e53e3e; border-color: #e53e3e; }

/* SOLD overlay */
.sold-band {
  font-size: 9px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase;
  padding: 5px 12px; background: #e53e3e; color: #fff; border-radius: 2px;
  position: static; transform: none;
}

/* ── TRUST STRIP ── */
.trust-strip { background: var(--white); border-top: 1px solid var(--grey); border-bottom: 1px solid var(--grey); }
.trust-inner { max-width: 1360px; margin: 0 auto; padding: 28px 40px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.trust-item { display: flex; align-items: center; gap: 14px; }
.trust-icon { font-size: 28px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; }
.trust-item h4 { font-size: 13px; font-weight: 700; color: var(--text); }
.trust-item p  { font-size: 12px; color: var(--mid-grey); line-height: 1.4; }

/* ── HOW IT WORKS ── */
.hiw { background: var(--cream); padding: 20px 40px 48px; }
.hiw-inner { max-width: 1360px; margin: 0 auto; }
.section-eyebrow { font-size: 10px; font-weight: 700; letter-spacing: 4px; text-transform: uppercase; color: var(--gold-dk); margin-bottom: 10px; }
.section-h2 { font-family: 'Cormorant Garamond', serif; font-size: clamp(28px, 3.5vw, 44px); font-weight: 700; color: var(--black); margin-bottom: 16px; }
.section-sub { font-size: 15px; color: var(--mid-grey); max-width: 500px; line-height: 1.7; margin-bottom: 60px; }
.hiw-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2px; }
.hiw-step { background: var(--white); padding: 36px 28px; border: 1px solid var(--grey); position: relative; }
.hiw-step::before {
  content: attr(data-n);
  position: absolute; top: 20px; right: 20px;
  font-family: 'Cormorant Garamond', serif; font-size: 60px; font-weight: 700;
  color: var(--cream); line-height: 1;
}
.step-ico { font-size: 32px; margin-bottom: 16px; display: flex; align-items: center; }
.hiw-step h3 { font-size: 16px; font-weight: 700; color: var(--black); margin-bottom: 10px; }
.hiw-step p  { font-size: 13px; color: var(--mid-grey); line-height: 1.7; }

/* ── WHY US ── */
.why { background: var(--black); padding: 80px 40px; }
.why-inner { max-width: 1360px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
.why .section-h2 { color: var(--white); }
.why .section-eyebrow { color: var(--gold); }
.why .section-sub { color: #6b6455; }
.why-list { list-style: none; display: flex; flex-direction: column; gap: 0; }
.why-item { display: flex; gap: 18px; padding: 22px 0; border-bottom: 1px solid #2a2820; }
.why-item:first-child { border-top: 1px solid #2a2820; }
.wi-icon { font-size: 24px; flex-shrink: 0; display: flex; align-items: center; margin-top: 2px; }
.wi-text h4 { font-size: 15px; font-weight: 700; color: var(--white); margin-bottom: 5px; }
.wi-text p  { font-size: 13px; color: #6b6455; line-height: 1.6; }
.why-visual-side {
  background: rgba(255,255,255,.03); border: 1px solid #2a2820;
  border-radius: 8px; padding: 40px; display: flex; flex-direction: column; gap: 24px;
}
.wvs-stat { text-align: center; padding: 24px; border: 1px solid #2a2820; border-radius: 6px; }
.wvs-stat .big { font-family: 'Cormorant Garamond', serif; font-size: 48px; font-weight: 700; color: var(--gold); line-height: 1; }
.wvs-stat .sm { font-size: 12px; font-weight: 500; letter-spacing: 2px; text-transform: uppercase; color: #4a4535; margin-top: 6px; }
.wvs-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }

/* ── TESTIMONIALS ── */
.testi { background: var(--cream); padding: 80px 40px; }
.testi-inner { max-width: 1360px; margin: 0 auto; }
.testi-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 48px; }
.tcard { background: var(--white); border: 1px solid var(--grey); border-radius: 6px; padding: 32px 28px; }
.tcard-stars { color: var(--gold); font-size: 16px; letter-spacing: 2px; margin-bottom: 18px; }
.tcard-text { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 17px; color: var(--text); line-height: 1.6; margin-bottom: 24px; }
.tcard-author { display: flex; align-items: center; gap: 12px; }
.tca-avatar { width: 40px; height: 40px; border-radius: 50%; background: linear-gradient(135deg, var(--gold-dk), var(--gold)); display: flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 700; color: var(--black); }
.tca-name { font-size: 14px; font-weight: 700; color: var(--text); }
.tca-role { font-size: 12px; color: var(--mid-grey); }

/* ── NEWSLETTER / CTA ── */
.cta-band { background: var(--gold); padding: 64px 40px; }
.cta-band-inner { max-width: 800px; margin: 0 auto; text-align: center; }
.cta-band h2 { font-family: 'Cormorant Garamond', serif; font-size: clamp(26px, 3vw, 40px); font-weight: 700; color: var(--black); margin-bottom: 12px; }
.cta-band p  { font-size: 15px; color: rgba(0,0,0,.65); margin-bottom: 32px; }
.cta-band-form { display: flex; gap: 0; max-width: 480px; margin: 0 auto; box-shadow: 0 4px 20px rgba(0,0,0,.15); }
.cta-band-form input { flex: 1; padding: 16px 20px; border: none; outline: none; font-family: 'Jost', sans-serif; font-size: 14px; border-radius: 4px 0 0 4px; }
.cta-band-form button { padding: 16px 24px; background: var(--black); color: var(--white); font-family: 'Jost', sans-serif; font-size: 13px; font-weight: 700; letter-spacing: 1px; border: none; cursor: pointer; border-radius: 0 4px 4px 0; transition: background .15s; }
.cta-band-form button:hover { background: var(--charcoal); }

/* ── FOOTER ── */
footer { background: var(--black); color: #4a4535; padding: 64px 40px 28px; }
.footer-inner { max-width: 1360px; margin: 0 auto; }
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr 1fr; gap: 60px; margin-bottom: 56px; }
.footer-about p { font-size: 13px; line-height: 1.8; margin-top: 20px; color: #a09880; max-width: 280px; }
.footer-col h4 { font-size: 10px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: var(--gold); margin-bottom: 20px; }
.footer-col ul { list-style: none; display: flex; flex-direction: column; gap: 12px; }
.footer-col a { font-size: 13px; color: #a09880 !important; transition: color .2s; }
.footer-col a:hover { color: var(--gold); }
.footer-bottom { border-top: 1px solid #1e1c16; padding-top: 24px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; }
.footer-bottom p { font-size: 12px; color: #a09880; }
.footer-badges { display: flex; gap: 12px; }
.fbadge { font-size: 10px; font-weight: 600; letter-spacing: 1.5px; padding: 5px 12px; border: 1px solid #4a4535; color: #a09880; border-radius: 2px; }

/* ── RESPONSIVE ── */
@media (max-width: 1024px) {
  .hero-inner { grid-template-columns: 1fr; gap: 48px; }
  .hero-card { max-width: 440px; }
  .page-wrap { grid-template-columns: 1fr; }
  .sidebar { position: static; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; max-height: none; overflow-y: visible; }
  .hiw-grid { grid-template-columns: 1fr 1fr; }
  .why-inner { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .trust-inner { grid-template-columns: 1fr 1fr; }
  .testi-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
  nav { padding: 0 20px; }
  .nav-links, .nav-phone { display: none; }
  .page-wrap { padding: 32px 20px; }
  .hiw-grid, .testi-grid { grid-template-columns: 1fr; }
  .sidebar { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .trust-inner { grid-template-columns: 1fr 1fr; }
  .search-section { padding: 20px; }
  .hero-inner { padding: 60px 20px; }
}

/* ── LOAD ANIMATIONS ── */
@keyframes fadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }
.hero-tag   { animation: fadeUp .5s ease both; }
.hero h1    { animation: fadeUp .5s .1s ease both; }
.hero-sub   { animation: fadeUp .5s .2s ease both; }
.hero-actions { animation: fadeUp .5s .3s ease both; }
.hero-stats { animation: fadeUp .5s .4s ease both; }
.hero-card  { animation: fadeUp .6s .2s ease both; }

  /* ══ GOLDSMITHS LUXURY TYPOGRAPHY ══ */

  /* Body -- Jost Light, airy spacing */
  body {
    font-family: 'Jost', sans-serif !important;
    font-weight: 300 !important;
    letter-spacing: 0.03em !important;
  }

  /* All headings -- Cormorant Garamond high-contrast serif */
  .hero h1, .section-h2, .hiw-step h3,
  .wi-text h4, .card-num, .hc-number,
  .hc-number2, .tcard-text {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
  }

  /* Hero h1 -- editorial, generous size */
  .hero h1 {
    font-weight: 700 !important;
    line-height: 1.05 !important;
    letter-spacing: 0.01em !important;
  }

  /* Hero italic */
  .hero h1 em {
    font-style: italic !important;
    font-weight: 300 !important;
  }

  /* Testimonials -- Cormorant italic, classic jeweller feel */
  .tcard-text {
    font-style: italic !important;
    font-weight: 400 !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
  }

  /* Nav links -- Jost 200, ultra wide tracking */
  .nav-links a {
    font-family: 'Jost', sans-serif !important;
    font-weight: 300 !important;
    letter-spacing: 0.22em !important;
    font-size: 10px !important;
    text-transform: uppercase !important;
  }

  /* All small caps labels */
  .announce, .section-eyebrow, .hc-label,
  .search-label, .sb-title, .footer-col h4,
  .card-tier-label, .trust-item h4 {
    font-family: 'Jost', sans-serif !important;
    font-weight: 300 !important;
    letter-spacing: 0.28em !important;
    text-transform: uppercase !important;
    font-size: 10px !important;
  }

  /* Buttons -- refined, light weight */
  .btn, .btn-gold, .btn-outline,
  .card-buy, .search-btn, .hc-mini-btn,
  .save-btn, .filter-btn {
    font-family: 'Jost', sans-serif !important;
    font-weight: 400 !important;
    letter-spacing: 0.2em !important;
    font-size: 10px !important;
    text-transform: uppercase !important;
  }

  /* Number cards -- spaced elegant digits */
  .card-num {
    letter-spacing: 0.14em !important;
    font-size: 22px !important;
    font-weight: 500 !important;
  }

  /* Prices -- Cormorant numerals */
  .card-price-wrap .price, .hc-price, .hstat .num {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.05em !important;
  }

  /* Logo name */
  .logo-words .lw1 {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 21px !important;
    font-weight: 600 !important;
    letter-spacing: 0.1em !important;
  }
  .logo-words .lw2 {
    font-family: 'Jost', sans-serif !important;
    font-weight: 200 !important;
    letter-spacing: 0.4em !important;
    font-size: 8px !important;
  }

  /* Body copy -- generous breathing room */
  .hero-sub, .section-sub, .hiw-step p,
  .wi-text p, .trust-item p, .footer-about p,
  .card-desc, .footer-col a, .tca-role {
    font-family: 'Jost', sans-serif !important;
    font-weight: 300 !important;
    letter-spacing: 0.06em !important;
    line-height: 1.9 !important;
  }

  /* Announcement bar */
  .announce {
    font-size: 9px !important;
    letter-spacing: 0.35em !important;
  }

  /* Search input */
  .search-bar input, .search-select,
  .sort-select, .price-input {
    font-family: 'Jost', sans-serif !important;
    font-weight: 300 !important;
    letter-spacing: 0.08em !important;
  }

  /* Sidebar options */
  .sb-opt {
    font-family: 'Jost', sans-serif !important;
    font-weight: 300 !important;
    letter-spacing: 0.08em !important;
    font-size: 12px !important;
  }

  /* Step numbers (Cormorant for elegance) */
  .hiw-step::before {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 300 !important;
    opacity: 0.15 !important;
  }

  /* Stats */
  .wvs-stat .big {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 600 !important;
  }
  .hstat .num {
    font-size: 28px !important;
  }


  /* ══ NUMBER FONT -- Cormorant Garamond Elegant Serif ══ */

  /* Hero featured number */
  .hc-number, .hc-number2 {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 500 !important;
    font-size: 46px !important;
    letter-spacing: 0.12em !important;
    font-style: normal !important;
  }

  /* Product card numbers -- the main hero element */
  .card-num {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 500 !important;
    font-size: 26px !important;
    letter-spacing: 0.16em !important;
    line-height: 1.2 !important;
  }

  /* Ticker scrolling numbers */
  .ticker-inner span {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 400 !important;
    font-size: 13px !important;
    letter-spacing: 0.14em !important;
  }

  /* Ticker dots stay as is */
  .ticker-inner .dot {
    font-family: 'Jost', sans-serif !important;
  }

  /* Price numbers */
  .card-price-wrap .price {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 600 !important;
    font-size: 24px !important;
    letter-spacing: 0.06em !important;
  }

  /* VAT label under price */
  .card-price-wrap .vat {
    font-family: 'Jost', sans-serif !important;
    font-weight: 300 !important;
    font-size: 10px !important;
    letter-spacing: 0.15em !important;
  }

  /* Hero stat numbers */
  .hstat .num {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 500 !important;
    font-size: 30px !important;
    letter-spacing: 0.04em !important;
    line-height: 1 !important;
  }

  /* Why section big stats */
  .wvs-stat .big {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 500 !important;
    font-size: 52px !important;
    letter-spacing: 0.04em !important;
    line-height: 1 !important;
  }

  /* Hero price */
  .hc-price {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 500 !important;
    font-size: 32px !important;
    letter-spacing: 0.06em !important;
  }
  .hc-price span {
    font-family: 'Jost', sans-serif !important;
    font-weight: 300 !important;
    font-size: 12px !important;
    letter-spacing: 0.12em !important;
  }

  /* Number card pattern description */
  .card-desc { display: none; }
.card-num-family {
  line-height: 1.35 !important;
}

  /* Subtle gold underline on card numbers for jeweller feel */
  


  /* ══ VIPNUMBERS.CO.UK STYLE -- Bold System Sans Numbers ══ */

  /* Card numbers -- big bold direct like the product page h1 */
  .card-num {
    font-family: -apple-system, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 800 !important;
    font-size: 28px !important;
    letter-spacing: 0.08em !important;
    line-height: 1.1 !important;
    color: var(--black) !important;
    border-bottom: none !important;
    padding-bottom: 0 !important;
    margin-bottom: 10px !important;
  }

  /* Hero featured number */
  .hc-number, .hc-number2 {
    font-family: -apple-system, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 900 !important;
    font-size: 40px !important;
    letter-spacing: 0.06em !important;
  }

  /* Ticker numbers */
  .ticker-inner span {
    font-family: -apple-system, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 700 !important;
    font-size: 12px !important;
    letter-spacing: 0.1em !important;
  }

  /* Price -- bold like a retail product page */
  .card-price-wrap .price {
    font-family: -apple-system, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 700 !important;
    font-size: 22px !important;
    letter-spacing: 0.02em !important;
  }

  /* Hero stat numbers */
  .hstat .num {
    font-family: -apple-system, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 800 !important;
    font-size: 28px !important;
    letter-spacing: 0.02em !important;
    line-height: 1 !important;
  }

  /* Why section big stats */
  .wvs-stat .big {
    font-family: -apple-system, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 800 !important;
    font-size: 48px !important;
    letter-spacing: 0.01em !important;
    line-height: 1 !important;
  }

  /* Hero price */
  .hc-price {
    font-family: -apple-system, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 800 !important;
    font-size: 30px !important;
    letter-spacing: 0.02em !important;
  }

  /* Card description -- clean small caps */
  .card-desc { display: none; }
.card-num-family {
  line-height: 1.35 !important;
}


  /* ══ MOBILE RESPONSIVE ══ */
  @media (max-width: 768px) {

    /* Nav */
    nav { padding: 0 16px; height: 60px; }
    .nav-links { display: none; }
    .nav-phone { display: none; }
    .logo-words .lw1 { font-size: 16px !important; }
    .logo-badge { width: 36px; height: 36px; }

    /* Announce bar */
    .announce { font-size: 8px !important; padding: 8px 12px; }

    /* Hero */
    .hero-inner { grid-template-columns: 1fr !important; padding: 36px 20px 40px; gap: 32px; }
    .hero h1 { font-size: 36px !important; }
    .hero-sub { font-size: 14px !important; }
    .hero-stats { gap: 20px; }
    .hstat .num { font-size: 20px !important; }
    .hero-card { padding: 24px 20px; }
    .hc-number, .hc-number2 { font-size: 28px !important; }
    .hc-number-wrap { height: 40px; }
    .hero-actions { flex-direction: column; }
    .btn-lg { width: 100%; text-align: center; padding: 14px 20px; }

    /* Trust strip */
    .trust-inner { grid-template-columns: 1fr 1fr !important; gap: 16px; padding: 20px; }
    .trust-item p { font-size: 11px; }

    /* Search */
    .search-section { padding: 16px; }
    .search-bar { flex-direction: column; border-radius: 6px; }
    .search-bar input { padding: 12px 16px; font-size: 14px; border-bottom: 1px solid var(--grey); }
    .search-divider { display: none; }
    .search-select { padding: 10px 16px; border-bottom: 1px solid var(--grey); }
    .search-btn { padding: 12px; border-radius: 0 0 6px 6px; }
    .search-tags { gap: 6px; }
    .stag { font-size: 11px; padding: 4px 10px; }

    /* Page layout -- stack sidebar above */
    .page-wrap {
      grid-template-columns: 1fr !important;
      padding: 20px 16px !important;
      gap: 20px !important;
    }
    .sidebar {
      position: static !important;
      display: grid !important;
      grid-template-columns: 1fr 1fr !important;
      gap: 10px !important;
      max-height: none !important;
      overflow-y: visible !important;
    }
    .sidebar-card { padding: 14px; margin-bottom: 0; }
    .sb-title { font-size: 9px !important; margin-bottom: 10px; }
    .sb-opt { font-size: 11px !important; padding: 6px 8px; }
    .sb-count { font-size: 10px; }
    .price-range { gap: 6px; }
    .price-input { font-size: 12px !important; padding: 7px 8px; }

    /* Number list -- KEY FIX */
    .num-card {
      flex-wrap: nowrap !important;
      padding: 10px 12px !important;
      gap: 8px !important;
      align-items: center !important;
    }
    .card-num {
      font-family: 'Trebuchet MS', Trebuchet, sans-serif !important;
      font-size: 15px !important;
      white-space: nowrap !important;
      letter-spacing: 0.02em !important;
      word-spacing: 0.1em !important;
      flex: 1 !important;
      min-width: 0 !important;
      overflow: hidden !important;
      text-overflow: ellipsis !important;
      font-weight: 700 !important;
      color: #222 !important;
    }
    .card-footer {
      width: auto !important;
      flex-shrink: 0 !important;
      gap: 6px !important;
    }
    .card-price-wrap .price {
      font-size: 12px !important;
      width: 60px !important;
    }
    .card-buy {
      font-size: 9px !important;
      padding: 6px 0 !important;
      width: 60px !important;
      letter-spacing: 1px !important;
    }
    .card-buy-now {
      font-size: 9px !important;
      padding: 6px 0 !important;
      width: 60px !important;
      letter-spacing: 1px !important;
    }
    .card-wishlist { display: none !important; }

    /* List header */
    .products-header { flex-direction: row; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 12px; }
    .sort-bar { flex-wrap: wrap; gap: 6px; }
    .sort-select { font-size: 12px; padding: 6px 10px; }
    .view-toggles { display: none; }

    /* How it works */
    .hiw { padding: 48px 20px; }
    .hiw-grid { grid-template-columns: 1fr 1fr !important; gap: 2px; }
    .hiw-step { padding: 20px 16px; }
    .hiw-step h3 { font-size: 13px; }
    .hiw-step p  { font-size: 12px; }

    /* Why section */
    .why { padding: 48px 20px; }
    .why-inner { grid-template-columns: 1fr !important; gap: 32px; }
    .why-visual-side { display: none; }
    .wvs-row { grid-template-columns: 1fr 1fr; }

    /* Testimonials */
    .testi { padding: 48px 20px; }
    .testi-grid { grid-template-columns: 1fr !important; gap: 12px; }
    .tcard { padding: 24px 20px; }
    .tcard-text { font-size: 16px !important; }

    /* CTA band */
    .cta-band { padding: 48px 20px; }
    .cta-band-form { flex-direction: column; }
    .cta-band-form input { border-radius: 4px 4px 0 0; }
    .cta-band-form button { border-radius: 0 0 4px 4px; padding: 14px; }

    /* Footer */
    footer { padding: 40px 20px 20px; }
    .footer-grid { grid-template-columns: 1fr !important; gap: 0 !important; padding-bottom: 0 !important; margin-bottom: 0 !important; }
    .footer-about { display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:28px; }
  .footer-about .logo { flex-shrink:0; }
  .footer-about p { flex:1; min-width:200px; margin:0; font-size:12px; line-height:1.7; }
    .footer-bottom { flex-direction: column; align-items: flex-start; gap: 12px; }
    .footer-badges { flex-wrap: wrap; }
    .fbadge { font-size:8px; padding:6px 10px; letter-spacing:2px; }
  }

  /* List header + card mobile fixes */
  @media (max-width: 768px) {
    .list-header {
      display: grid !important;
      grid-template-columns: 1fr 60px 80px !important;
      gap: 0 6px !important;
      align-items: center !important;
      padding: 8px 12px !important;
    }
    .list-header span:nth-child(2) {
      width: auto !important;
      margin-right: 0 !important;
      text-align: right !important;
      flex-shrink: unset !important;
    }
    .list-header span:last-child {
      display: block !important;
      visibility: hidden !important;
    }
    .scarcity-badge { display: none !important; }
    .card-num { font-size: 14px !important; letter-spacing: 0.5px !important; white-space: nowrap !important; overflow: visible !important; text-overflow: unset !important; }
  }

  /* Extra small phones */
  @media (max-width: 400px) {
    .sidebar { grid-template-columns: 1fr !important; }
    .hiw-grid { grid-template-columns: 1fr !important; }
    .trust-inner { grid-template-columns: 1fr !important; }
    .footer-grid { grid-template-columns: 1fr !important; }
    .card-num { font-size: 10px !important; }
  }


  /* ══ ACCORDION SIDEBAR ══ */
  .acc-card { padding: 0 !important; overflow: hidden; }
  .acc-header {
    display: flex; align-items: center; justify-content: space-between;
    padding: 16px 20px; cursor: pointer;
    border-bottom: 1px solid var(--grey);
    user-select: none;
  }
  .acc-header .sb-title { margin-bottom: 0 !important; border-bottom: none !important; padding-bottom: 0 !important; }
  .acc-arrow {
    font-size: 10px; color: var(--mid-grey);
    transition: transform .25s ease;
    flex-shrink: 0;
  }
  .acc-card.collapsed .acc-arrow { transform: rotate(180deg); }
  .acc-body {
    padding: 14px 20px 18px;
    max-height: 1200px;
    overflow: hidden;
    transition: max-height .5s ease, padding .3s ease;
  }
  .acc-card.collapsed .acc-body {
    max-height: 0;
    padding-top: 0;
    padding-bottom: 0;
  }

  /* Mobile: stack all accordion cards full width */
  @media (max-width: 768px) {
    .sidebar {
      display: flex !important;
      flex-direction: column !important;
      gap: 0 !important;
      border: 1px solid var(--grey);
      border-radius: 6px;
      overflow: hidden;
    }
    .sidebar-card {
      border-radius: 0 !important;
      border: none !important;
      border-bottom: 1px solid var(--grey) !important;
      margin-bottom: 0 !important;
    }
    .sidebar-card:last-child { border-bottom: none !important; }
    .acc-header { padding: 14px 16px; }
    .acc-body { padding: 10px 16px 14px; }

    /* On mobile all collapsed by default except none */
    /* JS handles this */
  }


  @media (max-width: 768px) {
    .list-header {
      padding: 8px 12px !important;
    }
    .list-header > span:first-child { flex: 1; }
    .list-header > div {
      width: auto !important;
      gap: 6px !important;
    }
    .list-header > div span:first-child {
      width: 60px !important;
    }
    .list-header > div span:not(:first-child) {
      display: none !important;
    }
  }



/* === BLOCK SEPARATOR === */


.po-card {background:#111008;border:1px solid #2a2010;border-radius:6px;padding:16px;cursor:pointer;transition:border-color 0.2s, box-shadow 0.2s, transform 0.15s;}
.po-card:hover {background:#1a1a0a;}
.po-card-top {display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;}
.po-num {font-family:'Trebuchet MS',sans-serif;font-size:15px;font-weight:700;color:#fff;letter-spacing:0.5px;}
.po-badge {font-family:'Jost',sans-serif;font-size:7px;font-weight:700;letter-spacing:0;color:#a8842f;background:#d4b85e20;border:1px solid #d4b85e40;padding:2px 6px;border-radius:2px;}
.po-card-bottom {display:flex;justify-content:space-between;align-items:center;border-top:1px solid #1e1808;padding-top:10px;}
.po-price {font-family:'Trebuchet MS',sans-serif;font-size:13px;font-weight:600;color:#d4b85e;}
.po-enquire-btn {font-family:'Jost',sans-serif;font-size:8px;font-weight:600;letter-spacing:1px;text-transform:uppercase;padding:8px 16px;background:#d4b85e;color:#000;border:none;border-radius:3px;cursor:pointer;transition:all 0.2s ease;}
.po-enquire-btn:hover {background:#e8cf86 !important;transform:scale(1.03) !important;box-shadow:0 4px 16px rgba(212,184,94,0.4) !important;}
.po-info {font-family:'Jost',sans-serif;font-size:10px;font-weight:300;color:#7a6030;margin-top:8px;}


/* === BLOCK SEPARATOR === */


#waFloat { -webkit-transform: translateZ(0); transform: translateZ(0); will-change: transform; }
#waFloat::before {
  content: '';
  position: absolute;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: rgba(37,211,102,0.4);
  /* pulse removed */
}

  100% { transform: scale(1.8); opacity: 0; }
}
body.nav-open header { border-bottom-color: transparent; }

/* ════════════════════════════════════════════════════════
   DARK TOPBAR + UNIFIED GOLD  (added 2026-06 — logo refresh)
   Loaded last so it overrides the white-nav rules above.
   ════════════════════════════════════════════════════════ */

/* New gold tokens — keep old --gold name working, point it at the new value */
:root{
  --gold:     #d4b85e;   /* main gold (was #d4b85e) */
  --gold-lt:  #e8cf86;   /* highlight */
  --gold-dk:  #a8842f;   /* deep gold — gradients / hover */
  --vip-cream:#e8e2d2;   /* light text on dark bar */
}

/* --- Header: dark, single bar --- */
header{
  background:#0f0e0a !important;
  border-bottom:1px solid #2a2820 !important;
  box-shadow:0 1px 8px rgba(0,0,0,0.4) !important;
}

/* desktop nav links: light cream, gold on hover */
.nav-links li a,
.nav-mid .nav-links a{
  color:#e8e2d2 !important;
}
.nav-links li a:hover,
.nav-mid .nav-links a:hover{
  color:#d4b85e !important;
}

/* hamburger lines: gold (visible on dark bar) */
.hamburger span{
  background:#d4b85e !important;
}

/* cart icon + badge already set inline to gold in the liquid */

/* CTA pill: new gold, deep-gold hover */
.nav-cta-pill{
  background:#d4b85e !important;
  color:#000 !important;
}
.nav-cta-pill:hover{
  background:#a8842f !important;
}

/* announce bar text already #d4b85e in liquid */

/* keep the slide-out mobile drawer WHITE (independent panel) */

/* focus ring + scroll progress + back-to-top inherit the new gold via var/hex swap below */

/* --- topbar right-side icons: force gold on dark bar --- */
header .nav-right a[href="/cart"],
header .nav-right .nav-icon-btn,
header .nav-right .nav-icon-btn svg,
header .nav-icon-btn { color:#d4b85e !important; }
header .nav-icon-btn:hover { background:rgba(212,184,94,0.12) !important; }
header .nav-right a[href="/cart"] svg { stroke:#d4b85e !important; }

/* ── UNIFY ALL GOLD BUTTONS TO NEW GOLD #d4b85e (2026-06-27) ── */
.card-buy-now,
.btn-buy,
.po-enquire-btn,
.hc-mini-btn,
.nav-cta-pill,
.btn-gold,
.add-to-cart,
.cta-band,
#backToTop,
.mobile-nav .mobile-nav-cta {
  background: #d4b85e !important;
}
.card-buy-now:hover,
.btn-buy:hover,
.po-enquire-btn:hover,
.hc-mini-btn:hover,
.btn-gold:hover,
.add-to-cart:hover {
  background: #a8842f !important;
}
/* gold text / accents that used old gold */
.tcard-stars,
.section-eyebrow,
.hstat .num,
.hc-number, .hc-number2 {
  color: #d4b85e !important;
}
/* Logo blend mode — removes black background on dark topbar */
header .logo img,
.nav-center img,
.nav-center-mobile img,
.footer-about .logo img,
footer .logo img,
footer img[src*="vip-logo"] {
  mix-blend-mode: lighten;
}
/* === MOBILE NAV REDESIGN === */
.mobile-nav {
  background: #0f0e0a;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 24px 32px 32px;
  min-height: 100vh;
}
}

/* 顶部 logo + 品牌 */
.mobile-nav-header {
  display: flex !important;
  align-items: center;
  gap: 14px;
  margin-bottom: 24px;
  flex-direction: row !important;
}
.mobile-nav-logo {
  width: 20px !important;
  height: 20px !important;
  object-fit: contain;
  mix-blend-mode: lighten;
}
.mobile-nav-brand {
  display: flex;
  flex-direction: column;
}
.mobile-nav-brand-name {
  font-family: 'Cormorant Garamond', serif;
  font-size: 20px;
  color: #d4b85e;
  letter-spacing: 0.05em;
  line-height: 1.2;
}
.mobile-nav-brand-est {
  font-family: 'Jost', sans-serif;
  font-size: 11px;
  color: #888;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

/* 导航链接 */
.mobile-nav-links {
  flex: none;
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
  gap: 0;
  margin-bottom: 24px;
  align-items: flex-start;
  padding-left: 0 !important;
  margin-left: 0 !important;
}
.mobile-nav-links a {
  font-family: 'Cormorant Garamond', serif;
  font-size: 14px;
  color: #e8e2d2 !important;
  text-decoration: none;
  padding: 14px 0 !important;
  border-bottom: 1px solid #3a3a3a;
  letter-spacing: 0.03em;
  transition: color 0.2s;
  text-align: left;
  margin-left: 0 !important;
  width: 100% !important;
}
.mobile-nav-links a:hover {
  color: #d4b85e;
  background: transparent !important;
}
.mobile-nav-links a.mobile-nav-cta {
  color: #d4b85e !important;
  border-bottom: none;
  margin-top: 8px;
  background: transparent !important;
  padding-left: 0 !important;
  text-align: left !important;
}

/* 底部联系信息 */
.mobile-nav-footer {
  margin-top: 0;
  border-top: 1px solid #2a2a2a;
  padding-top: 24px;
  padding-left: 0;
}
.mobile-nav-contact-label {
  font-family: 'Jost', sans-serif;
  font-size: 11px;
  color: #d4b85e;
  letter-spacing: 0.15em;
  margin-bottom: 14px;
}
.mobile-nav-contact-item {
  display: block;
  font-family: 'Jost', sans-serif;
  font-size: 14px;
  color: #cccccc !important;
  text-decoration: none;
  margin-bottom: 8px;
  transition: color 0.2s;
  padding: 0 !important;
  border-bottom: none !important;
  text-transform: none !important;
}
.mobile-nav-contact-item:hover {
  color: #d4b85e;
}
.mobile-nav-copyright {
  font-family: 'Jost', sans-serif;
  font-size: 12px;
  color: #555;
  margin-top: 20px;
  letter-spacing: 0.08em;
}
/* === END MOBILE NAV REDESIGN === */
/* Wishlist Hero header icon - match nav icon style */
.wlh-header-wrap { display:flex; align-items:center; margin-left:-6px; }
.wishlist-hero-header-icon {
  display:flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  text-decoration:none;
}
.wishlist-hero-header-icon .wlh-svg-Icon {
  width:20px !important;
  height:20px !important;
  padding-top:0 !important;
  fill: var(--wlh-color, #d4b85e) !important;
  stroke: var(--wlh-color, #d4b85e) !important;
  stroke-width: 1.5px !important;
}
.wlh-mobile-only { display:flex; }
.wlh-desktop-only { display:none; }
@media (min-width: 769px) {
  .wlh-mobile-only { display:none !important; }
  .wlh-desktop-only { display:flex !important; }
}
.nav-right a[href="/cart"] svg,
.nav-right .nav-icon-btn svg {
  width: 20px !important;
  height: 20px !important;
}
.vip-wlh-preorder-btn {
  display: block !important;
  position: static !important;
  margin-top: 10px !important;
  width: 100% !important;
}
.wishlist-hero-header-icon [class*="count"] {
  position: absolute !important;
  top: -4px !important;
  right: -4px !important;
  background: #d4b85e !important;
  color: #000 !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  border-radius: 50% !important;
  padding: 0 !important;
}
.wishlist-hero-header-icon [class*="count"]:not(:empty) {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
/* Wishlist heart on product image */
.vip-pdp-img-side { position: relative; }
.vip-pdp-img-side .wishlist-hero-custom-button {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  z-index: 10 !important;
}
/* Hide the auto-inserted button in product info section */
.vip-pdp-info .wishlist-hero-custom-button {
  display: none !important;
}@media (max-width:768px){
  .vip-viewall-btn { font-size:10px !important; letter-spacing:1.5px !important; padding:14px 18px !important; white-space:nowrap; }
}
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
.hamburger:focus { outline: none; }
.hamburger:focus-visible { outline: none; }

/* === HERO BUY NOW BUTTON SIZE FIX (2026-08-25) === */
.hc-mini-btn {
  font-size: 14px !important;
  padding: 14px 26px !important;
  letter-spacing: 1.5px !important;
}

/* === FILTER DRAWER FLEXBOX HEIGHT FIX (2026-08-25) ===
   Bug: .filter-drawer-body lacked min-height:0, so on mobile it grew
   to fit all filter options instead of scrolling within its flex box,
   pushing the "SEE NUMBERS" apply footer off-screen (unreachable).
   Also switch height:100vh to 100dvh where supported, to avoid iOS
   Safari's address-bar viewport-height quirk clipping the drawer. */
.filter-drawer { height: 100vh; height: 100dvh; }
.filter-drawer-body { min-height: 0 !important; }
.filter-drawer-footer { flex-shrink: 0; }
