/** Shopify CDN: Minification failed

Line 1666:2 Unexpected "100%"
Line 1667:0 Unexpected "}"
Line 1776: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; }
.networks-label { font-family: 'Jost', 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', 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; }
