 :root {
    --cream: #FAF7F2;
    --deep: #1A1208;
    --gold: #B8882E;
    --gold-light: #E8D5A3;
    --blush: #E8D5C4;
    --maroon: #5C1A1A;
    --sage: #8A9E8A;
    --text: #231910;
    --muted: #554636;
    --border: rgba(184,136,46,0.2);
    /* Homepage rk2 (index-2) palette */
    --ivory: #fbf8f1;
    --sand: #efe4d3;
    --ink: #1a1208;
    --wine: #4b1212;
    --line: rgba(26,18,8,0.12);
    --rk2-gold-light: #e7c37b;
    --rk2-muted: #7a6b58;
  }
  * { margin:0; padding:0; box-sizing:border-box; }
  html { scroll-behavior:smooth; }
  body { background:var(--cream); color:var(--text); font-family:'Jost',sans-serif; font-weight:400; line-height:1.65; overflow-x:hidden; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; }
  ::-webkit-scrollbar { width:4px; }
  ::-webkit-scrollbar-track { background:var(--cream); }
  ::-webkit-scrollbar-thumb { background:var(--gold); }
  a:-webkit-any-link:focus-visible { outline-offset: inherit; outline: none;}

  /* NAV (site header only — not account sidebar; not index-2 hero nav .rk2-nav) */
  nav:not(.ep-sidebar-nav):not(.rk2-nav) {
    position:relative; top:0; left:0; right:0; z-index:200;
    display:flex; align-items:center; justify-content:space-between;
    padding:0.8rem 4rem;
    background:rgba(250,247,242,0.97); backdrop-filter:blur(16px);
    border-bottom:1px solid var(--border);
  }
  .nav-logo { font-family:'Cormorant Garamond',serif; font-size:2.2rem; font-weight:600; letter-spacing:0.05em; color:var(--deep); text-decoration:none; position:relative; z-index:210; display:flex; align-items:center; }
  .nav-logo span { color:var(--gold); }
  .header-logo-img { max-height: 45px; width: auto; object-fit: contain; }
  .nav-links { display:flex; gap:2.5rem; list-style:none; margin:0; padding:0; align-items: center; }
  .nav-links > li { position: relative; padding: 1rem 0; }
  .nav-links a { font-size:0.8rem; font-weight:600; letter-spacing:0.15em; text-transform:uppercase; color:var(--text); text-decoration:none; transition:color 0.2s; opacity:0.88; }
  .nav-links a:hover, .nav-links a.active, .nav-links .current-menu-item > a, .nav-links .current_page_item > a { color:var(--gold); opacity:1; }

  /* Submenu / Dropdown */
  .nav-links .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 200px;
    background: #fff;
    list-style: none;
    padding: 1rem 0;
    margin: 0;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.3s ease;
    z-index: 1000;
    border-top: 2px solid var(--gold);
  }
  .nav-links li:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
  .nav-links .sub-menu li {
    padding: 0;
  }
  .nav-links .sub-menu a {
    display: block;
    padding: 0.7rem 1.5rem;
    font-size: 0.72rem;
    color: var(--deep);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    opacity: 0.7;
  }
  .nav-links .sub-menu a:hover {
    opacity: 1;
    background: #f9f6f2;
    color: var(--gold);
  }
  /* Bestsellers "HOT" badge */
  .nav-has-badge > a { position:relative; }
  .nav-has-badge > a::after { content:'HOT'; position:absolute; top:-8px; right:-28px; background:var(--maroon); color:#fff; font-size:0.5rem; font-weight:700; letter-spacing:0.06em; padding:1px 4px; border-radius:2px; line-height:1.5; }
  .nav-actions { display:flex; align-items:center; gap:1.2rem; position:relative; z-index:210; }
  /* Icon wrappers with label */
  .nav-icon-link, .nav-icon-btn { display:flex; flex-direction:column; align-items:center; gap:3px; color:inherit; text-decoration:none; background:none; border:none; padding:0; cursor:pointer; }
  .nav-label { font-family:'Jost',sans-serif; font-size:0.58rem; font-weight:500; letter-spacing:0.08em; text-transform:uppercase; color:var(--text); line-height:1; white-space:nowrap; transition:color 0.2s; }
  .nav-icon-link:hover .nav-label, .nav-icon-btn:hover .nav-label { color:var(--gold); }
  /* Cart */
  .nav-icon-wrap { position:relative; display:flex; }
  .nav-cart-link { display:flex; flex-direction:column; align-items:center; gap:3px; text-decoration:none; color:inherit; }
  .cart-badge {
    position:absolute; top:-7px; right:-10px; min-width:17px; height:17px; padding:0 5px; box-sizing:border-box;
    border-radius:999px; background:var(--maroon); color:#fff; font-family:'Jost',sans-serif; font-size:0.61rem;
    font-weight:600; line-height:17px; text-align:center; letter-spacing:0; pointer-events:none;
    box-shadow:0 1px 4px rgba(26,18,8,0.22);
  }
  .cart-badge[hidden] { display:none !important; }
  .nav-icon { width:20px; height:20px; cursor:pointer; color:var(--text); transition:color 0.2s; flex-shrink:0; display:block; }
  .nav-icon:hover { color:var(--gold); }
  /* Account dropdown */
  .nav-account-wrap { position:relative; }
  .account-dropdown {
    position:absolute; top:calc(100% + 10px); right:-10px;
    width:260px; background:white;
    border:1px solid var(--border); box-shadow:0 12px 32px rgba(26,18,8,0.1);
    opacity:0; visibility:hidden; transform:translateY(-6px);
    transition:opacity 0.2s, transform 0.2s, visibility 0.2s;
    z-index:300; border-radius: 4px; padding: 1rem 0;
  }
  .nav-account-wrap:hover .account-dropdown { opacity:1; visibility:visible; transform:translateY(0); }
  
  .acdd-guest-header { padding: 0.5rem 1.25rem 1rem; border-bottom: 1px solid var(--border); margin-bottom: 1rem; }
  .acdd-auth-buttons { padding: 0 1.25rem 0.5rem; display: flex; flex-direction: column; gap: 0.75rem; }
  .acdd-btn-login { display: block; width: 100%; background: var(--deep); color: #fff; text-align: center; padding: 0.75rem; font-size: 0.72rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; text-decoration: none; border-radius: 2px; }
  .acdd-btn-signup { display: block; width: 100%; border: 1px solid var(--border); color: var(--deep); text-align: center; padding: 0.75rem; font-size: 0.72rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; text-decoration: none; border-radius: 2px; }
  .acdd-btn-login:hover { background: var(--gold); color: #fff; }
  .acdd-btn-signup:hover { border-color: var(--gold); color: var(--gold); }

  .acdd-login { display:flex; align-items:center; gap:0.75rem; padding:0 1.25rem 1rem; text-decoration:none; border-bottom:1px solid var(--border); transition:background 0.15s; margin-bottom: 0.5rem; }
  .acdd-login:hover { background:rgba(184,136,46,0.05); }
  .acdd-login svg:first-child { color:var(--deep); flex-shrink:0; }
  .acdd-login-text { flex:1; display:flex; flex-direction:column; gap:2px; }
  .acdd-login-title { font-family:'Jost',sans-serif; font-size:0.78rem; font-weight:600; color:var(--deep); letter-spacing:0.04em; }
  .acdd-login-sub { font-size:0.66rem; color:var(--muted); letter-spacing:0.04em; }
  .acdd-arrow { color:var(--gold); flex-shrink:0; }
  .acdd-divider { height:1px; background:var(--border); margin:0.25rem 0; }
  .acdd-item { display:flex; align-items:center; gap:0.6rem; padding:0.62rem 1.25rem; font-family:'Jost',sans-serif; font-size:0.76rem; font-weight:400; color:var(--text); text-decoration:none; letter-spacing:0.04em; transition:background 0.15s, color 0.15s; }
  .acdd-item svg { color:var(--muted); flex-shrink:0; transition:color 0.15s; }
  .acdd-item:hover { background:rgba(184,136,46,0.06); color:var(--gold); }
  .acdd-item:hover svg { color:var(--gold); }
  .acdd-logout { color:var(--maroon); }
  .acdd-logout svg { color:var(--maroon); opacity:0.7; }
  .acdd-logout:hover { background:rgba(92,26,26,0.05); color:var(--maroon); }
  /* LOGIN PAGE - Guest only */
  body.woocommerce-account:not(.logged-in) .woocommerce { max-width: 480px; margin: 5rem auto; padding: 0 1.5rem; }
  body.woocommerce-account:not(.logged-in) .woocommerce h2 { font-family: 'Cormorant Garamond', serif; font-size: 2.2rem; font-weight: 500; text-align: center; margin-bottom: 2rem; color: var(--deep); }
  body.woocommerce-account:not(.logged-in) .woocommerce form.login { background: #fff; border: 1px solid var(--border); padding: 2.5rem; border-radius: 4px; box-shadow: 0 10px 40px rgba(0,0,0,0.03); }
  body.woocommerce-account:not(.logged-in) .woocommerce form.login label { display: block; font-size: 0.72rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; margin-bottom: 0.5rem; color: var(--text); }
  body.woocommerce-account:not(.logged-in) .woocommerce form.login .input-text { width: 100%; padding: 0.85rem 1rem; border: 1px solid var(--border); border-radius: 2px; font-family: inherit; font-size: 0.88rem; background: #fff; margin-bottom: 1.25rem; color: var(--text); }
  body.woocommerce-account:not(.logged-in) .woocommerce form.login .input-text:focus { border-color: var(--gold); outline: none; }
  body.woocommerce-account:not(.logged-in) .woocommerce form.login .woocommerce-button { width: 100%; background: var(--deep); color: #fff; border: none; padding: 1.1rem; font-size: 0.78rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.12em; cursor: pointer; transition: background 0.3s; margin-top: 0.5rem; border-radius: 2px; }
  body.woocommerce-account:not(.logged-in) .woocommerce form.login .woocommerce-button:hover { background: var(--gold); }
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme { display: flex; align-items: center; gap: 0.5rem; margin-top: 0.75rem; margin-bottom: 1rem; }
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme span { font-size: 0.8rem; font-weight: 400; text-transform: none; letter-spacing: 0; color: var(--text); opacity: 0.8; }
  body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword { text-align: center; margin-top: 1.25rem; font-size: 0.8rem; }
  body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword a { color: var(--text); opacity: 0.6; text-decoration: none; }
  body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword a:hover { color: var(--gold); opacity: 1; }
  .custom-auth-page { display: flex; align-items: center; justify-content: center; min-height: 80vh; padding: 4rem 1rem; background: var(--cream); }
  .auth-container { max-width: 480px; width: 100%; background: #fff; padding: 3rem 2.5rem; border-radius: 4px; box-shadow: 0 10px 40px rgba(0,0,0,0.04); border: 1px solid var(--border); }
  .auth-title { font-family: 'Cormorant Garamond', serif; font-size: 2.2rem; font-weight: 500; text-align: center; color: var(--deep); margin-bottom: 0.5rem; }
  .auth-subtitle { text-align: center; font-size: 0.85rem; color: var(--text); opacity: 0.7; margin-bottom: 2rem; }
  .auth-error { background: #feebeb; color: var(--maroon); border-left: 3px solid var(--maroon); padding: 1rem; font-size: 0.85rem; margin-bottom: 2rem; border-radius: 2px; }
  .auth-form .form-row { margin-bottom: 1.5rem; }
  .auth-form label { display: block; font-size: 0.72rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; color: var(--text); margin-bottom: 0.5rem; }
  .auth-form label .required { color: var(--maroon); }
  .auth-form input[type="text"], .auth-form input[type="email"], .auth-form input[type="tel"], .auth-form input[type="password"] { width: 100%; padding: 0.85rem 1rem; border: 1px solid var(--border); border-radius: 2px; font-family: inherit; font-size: 0.88rem; background: #fff; color: var(--text); outline: none; transition: border-color 0.2s; }
  .auth-form input:focus { border-color: var(--gold); }
  .auth-submit-btn { width: 100%; background: var(--deep); color: #fff; border: none; padding: 1.1rem; font-size: 0.78rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.12em; cursor: pointer; transition: background 0.3s; margin-top: 0.5rem; border-radius: 2px; }
  .auth-submit-btn:hover { background: var(--gold); }
  .auth-toggle { margin-top: 2rem; text-align: center; font-size: 0.85rem; color: var(--text); opacity: 0.8; }
  .auth-toggle a { color: var(--gold); font-weight: 600; text-decoration: none; opacity: 1; }
  .auth-toggle a:hover { text-decoration: underline; }


  .search-overlay { position:fixed; inset:0; background:rgba(14,10,5,0.55); z-index:700; display:none; align-items:flex-start; justify-content:center; padding-top:8rem; }
  .search-overlay.open { display:flex; }
  .search-modal { width:min(700px, calc(100vw - 2rem)); background:var(--cream); border:1px solid var(--border); box-shadow:0 20px 50px rgba(0,0,0,0.25); }
  .search-head { display:flex; align-items:center; justify-content:space-between; gap:0.8rem; padding:0.9rem 1rem; border-bottom:1px solid var(--border); }
  .search-input { flex:1; border:1px solid rgba(184,136,46,0.35); background:#fff; padding:0.7rem 0.85rem; font-family:'Jost',sans-serif; font-size:0.84rem; color:var(--text); outline:none; }
  .search-close { border:none; background:transparent; color:var(--text); font-size:1.2rem; cursor:pointer; line-height:1; opacity:0.75; }
  .search-suggestions { padding:0.8rem 0; max-height:52vh; overflow:auto; }
  .search-item { display:block; padding:0.62rem 1rem; text-decoration:none; color:var(--text); border-top:1px solid transparent; border-bottom:1px solid transparent; }
  .search-item:hover { background:rgba(184,136,46,0.08); border-color:var(--border); }
  .search-item strong { font-family:'Cormorant Garamond',serif; font-weight:500; font-size:1.1rem; }
  .search-item span { display:block; font-size:0.72rem; letter-spacing:0.08em; color:var(--muted); text-transform:uppercase; margin-top:0.1rem; }
  .search-empty { padding:0.9rem 1rem; color:var(--muted); font-size:0.8rem; }

  /* HAMBURGER */
  .hamburger { display:none; flex-direction:column; justify-content:center; gap:5px; cursor:pointer; background:none; border:none; padding:4px; width:32px; height:32px; }
  .hamburger span { display:block; width:22px; height:1.5px; background:var(--text); border-radius:2px; transition:all 0.3s ease; transform-origin:center; }
  .hamburger.open span:nth-child(1) { transform:translateY(6.5px) rotate(45deg); }
  .hamburger.open span:nth-child(2) { opacity:0; transform:scaleX(0); }
  .hamburger.open span:nth-child(3) { transform:translateY(-6.5px) rotate(-45deg); }

  /* MOBILE MENU */
  .mobile-menu { position:fixed; inset:0; background:var(--cream); z-index:2000; display:flex; flex-direction:column; opacity:0; pointer-events:none; transition:opacity 0.35s ease; padding: 0; }
  .mobile-menu.open { opacity:1; pointer-events:all; }
  .mobile-menu-header { display: flex; justify-content: space-between; align-items: center; padding: 1.5rem 2rem; border-bottom: 1px solid var(--border); }
  .mobile-menu-close { background: none; border: none; font-size: 2rem; color: var(--deep); cursor: pointer; padding: 0.5rem; }
  .mobile-menu-links { list-style: none; padding: 1.5rem 0; margin: 0; flex: 1; overflow-y: auto; }
  .mobile-menu-links li { border-bottom: 1px solid rgba(0,0,0,0.03); }
  .mobile-menu-links a { display: block; padding: 1rem 2rem; font-family:'Cormorant Garamond',serif; font-size:1.6rem; font-weight:500; letter-spacing:0.04em; color:var(--deep); text-decoration:none; transition:color 0.2s; }
  .mobile-menu-links .sub-menu { list-style: none; padding: 0 0 1rem 0; background: rgba(0,0,0,0.02); }
  .mobile-menu-links .sub-menu a { font-size: 1rem; padding: 0.6rem 3rem; font-family: 'Jost', sans-serif; text-transform: uppercase; letter-spacing: 0.1em; opacity: 0.8; }
  .mobile-menu-tagline { padding: 2rem; font-size:0.72rem; font-weight:500; letter-spacing:0.2em; text-transform:uppercase; color:var(--text); opacity:0.72; text-align: center; }
  .mobile-menu-extra { display: block; padding: 0.8rem 2rem; font-size: 0.9rem; color: var(--deep); text-decoration: none; border-top: 1px solid var(--border); }

  /* HERO */
  .hero { min-height:100vh; display:grid; grid-template-columns:1fr 1fr; padding:80px 0 0; overflow:hidden; }
  .hero-left { display:flex; flex-direction:column; justify-content:center; padding:8rem 5rem 1rem 6rem; }
  .hero-eyebrow { font-size:0.84rem; font-weight: 600;; letter-spacing:0.38em; text-transform:uppercase; color:var(--gold); margin-bottom:2rem; display:flex; align-items:center; gap:1.2rem; }
  .hero-eyebrow::before { content:''; display:inline-block; width:40px; height:1px; background:var(--gold); flex-shrink:0; }
  .hero-title { font-family:'Cormorant Garamond',serif; font-size:clamp(3.5rem,5.5vw,6.5rem); font-weight:400; line-height:1.04; color:var(--deep); margin-bottom:2.5rem; letter-spacing:-0.01em; }
  .hero-title em { font-style:italic; color:var(--gold); }
  .hero-desc { font-size:0.9rem; font-weight:400; line-height:1.95; color:var(--muted); max-width:380px; margin-bottom:3.5rem; }
  .hero-ctas { display:flex; gap:1rem; align-items:center; }
  .btn-primary { background:var(--deep); color:var(--cream); padding:0.9rem 2.2rem; font-size:0.78rem; font-weight:500; letter-spacing:0.15em; text-transform:uppercase; border:none; cursor:pointer; transition:background 0.3s; text-decoration:none; display:inline-block; font-family:'Jost',sans-serif; }
  .btn-primary:hover { background:var(--maroon); color:white; }
  .btn-outline { color:var(--text); font-size:0.88rem; font-weight:500; letter-spacing:0.1em; text-decoration:none; border-bottom:1px solid var(--gold); padding-bottom:2px; transition:color 0.2s; }
  .btn-outline:hover { color:var(--gold); }
  .hero-stats { display:flex; gap:3rem; margin-top: 3rem; padding-top: 1.5rem; border-top:1px solid var(--border); }
  .hero-stat-num { font-family:'Cormorant Garamond',serif; font-size:2.4rem; font-weight:400; color:var(--deep); letter-spacing:-0.02em; }
  .hero-stat-label { font-size:0.72rem; font-weight:500; letter-spacing:0.1em; color:var(--muted); text-transform:uppercase; margin-top:0.2rem; }
  .hero-right { position:relative; overflow:hidden; }
  .hero-img-wrap { width:100%; height:100%; position:relative; }
  .hero-img-wrap img { width:100%; height:940px; object-fit: cover; object-position: 0 0; display:block; }
  .hero-badge { position:absolute; bottom:3rem; right:3rem; background:rgba(250,247,242,0.96); padding:1.5rem 1.8rem; border-left:2px solid var(--gold); backdrop-filter:blur(8px); }
  .hero-badge-text { font-family:'Cormorant Garamond',serif; font-size:1.3rem; font-style:italic; color:var(--deep); }
  .hero-badge-sub { font-size:0.65rem; letter-spacing:0.22em; color:var(--muted); text-transform:uppercase; margin-top:0.4rem; }

  /* MARQUEE */
  .marquee-bar { background:var(--deep); color:var(--gold-light); padding:0.75rem 0; overflow:hidden; white-space:nowrap; }
  .marquee-inner { display:inline-flex; gap:3rem; animation:marquee 22s linear infinite; }
  .marquee-item { font-size:0.78rem; font-weight: 500; letter-spacing:0.2em; text-transform:uppercase; display:inline-flex; align-items:center; gap:1rem; }
  .marquee-dot { width:4px; height:4px; background:var(--gold); border-radius:50%; display:inline-block; }
  @keyframes marquee { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

  /* SECTIONS */
  section { padding:8rem 6rem; }
  .section-tag { font-size:0.78rem; font-weight:600; letter-spacing:0.38em; text-transform:uppercase; color:var(--gold); margin-bottom:1.2rem; display:flex; align-items:center; gap:1.2rem; }
  .section-tag::before { content:''; display:inline-block; width:36px; height:1px; background:var(--gold); flex-shrink:0; }
  .section-title { font-family:'Cormorant Garamond',serif; font-size:clamp(2.2rem,4vw,4.2rem); font-weight:600; line-height:1.1; color:var(--deep); letter-spacing:-0.01em; }
  .section-link { margin-bottom:0.5rem; }
  .gold-italic { font-style:italic; color:var(--gold); }
  .story-cta-btn { background:var(--gold); color:var(--deep); }
  .section-tag-centered { justify-content:center; text-align:center; }
  .insta-cta-wrap { margin-top:3.5rem; }
  .insta-cta-btn { display:inline-block; }

  /* MANIFESTO */
  .manifesto { background:var(--deep); padding:8rem 6rem; text-align:center; }
  .manifesto-deco { display:flex; align-items:center; justify-content:center; gap:2rem; margin-bottom:3rem; }
  .manifesto-line { display:block; width:80px; height:1px; background:var(--gold); opacity:0.4; }
  .manifesto-gem { color:var(--gold); font-size:0.85rem; opacity:0.65; letter-spacing:0; }
  .manifesto-eyebrow { font-size:0.8rem; font-weight: 500; letter-spacing:0.38em; text-transform:uppercase; color:var(--gold); margin-bottom:2.5rem; opacity:0.85; }
  .manifesto-quote { font-family:'Cormorant Garamond',serif; font-size:clamp(1.4rem,3vw,3rem); font-weight:400; font-style:italic; color:var(--cream); line-height:1.4; max-width:920px; margin:0 auto; letter-spacing:0.01em; }
  .manifesto-quote strong { font-weight:400; font-style:normal; color:var(--gold-light); }

  /* HOMEPAGE — EDITORIAL STORY */
  .heritage-journal { background:#f7f2ea; border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding:7rem 6rem; }
  .journal-grid { display:grid; grid-template-columns:minmax(0, 1.2fr) minmax(0, 0.9fr); gap:2.2rem; align-items:start; }
  .journal-feature { background:white; border:1px solid var(--border); padding:2.2rem 2.4rem; }
  .journal-copy { font-size:0.9rem; font-weight:400; line-height:1.9; color:var(--muted); margin:1.1rem 0 0; max-width:42rem; }
  .journal-notes { display:flex; flex-direction:column; gap:0.9rem; }
  .journal-note { background:linear-gradient(135deg, #1a1208 0%, #2a1d10 100%); border:1px solid rgba(184,136,46,0.28); padding:1.2rem 1.3rem; }
  .journal-note-label { font-size:0.8rem; font-weight:500; letter-spacing:0.18em; text-transform:uppercase; color:var(--gold); margin-bottom:0.55rem; }
  .journal-note-text { font-size:0.84rem; font-weight:400; line-height:1.75; color:rgba(250,247,242,0.88); }

  /* CATEGORIES */
  .categories {
    background:linear-gradient(180deg, #faf9f6 0%, #f3f1ec 100%);
    border-top:1px solid #eee8dc;
    border-bottom:1px solid #eee8dc;
  }
  .cat-header { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:3.5rem; }
  .cat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem; }
  .cat-grid-promos {
    gap:1.05rem;
    padding:1rem;
    background:#f7f4ee;
    border:1px solid #e9e2d6;
  }
  .cat-card { position:relative; overflow:hidden; aspect-ratio:3/4; cursor:pointer; text-decoration:none; border:1px solid #d9d3c8; background:#f2ece2; }
  .cat-card img { width:100%; height:100%; display:block; transition:transform 0.65s ease; }
  .cat-card:hover img { transform:scale(1.04); }
  .cat-overlay { position:absolute; inset:0; background:linear-gradient(to top, rgb(49 25 6 / 60%) 0%, rgb(22 11 3 / 24%) 43%, rgba(10, 5, 0, 0.08) 100%); transition:background 0.35s ease; }
  .cat-card:hover .cat-overlay { background:linear-gradient(to top, rgba(49,25,6,0.9) 0%, rgba(22,11,3,0.45) 48%, rgba(10,5,0,0.12) 100%); }
  .cat-arrow { position:absolute; top:1.2rem; right:1.2rem; width:34px; height:34px; background:rgba(255,255,255,0.12); border:1px solid rgba(255,255,255,0.3); display:flex; align-items:center; justify-content:center; color:white; font-size:1rem; opacity:0; transition:opacity 0.3s; }
  .cat-card:hover .cat-arrow { opacity:1; }
  .cat-label { 
    position: absolute;
    bottom: 8px;
    left: 0;
    right: 0;
    padding: 2.2rem 0.95rem 0.85rem;
    text-align: center;
    background: rgb(142 18 18 / 67%);
    max-width: 290px;
    margin: 0 auto;
   }
  .cat-name { font-family:'Cormorant Garamond',serif; font-size:1.42rem; font-weight:600; color:#FAF7F2; display:block; letter-spacing:0.01em; line-height:1.15; text-shadow:0 2px 10px rgba(0,0,0,0.35); }
  .cat-offer { margin-top:0.28rem; font-family:'Cormorant Garamond',serif; font-size:1.7rem; font-weight:700; line-height:1.02; color:#FFF3DA; text-shadow:0 2px 12px rgba(0,0,0,0.4); }
  .cat-cta { display:block; margin-top:0.38rem; font-size:0.9rem; font-weight:500; letter-spacing:0.06em; text-transform:uppercase; color:#fff; }
  .cat-count { font-size:0.8rem; font-weight:500; letter-spacing:0.1em; color:rgba(255,255,255,0.82); text-transform:uppercase; margin-top:0.25rem; }

  /* PRODUCTS */
  .products { background:var(--cream); }
  .prod-header { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:3.5rem; }
  .prod-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:2.5rem; }
  .prod-card { cursor:pointer; }
  .prod-img { position:relative; aspect-ratio:2.2/3; overflow:hidden; margin-bottom:1rem; }
  .prod-img img { width:100%; height:100%; display:block; transition:transform 0.65s ease; }
  .prod-card:hover .prod-img img { transform:scale(1.05); }
  .prod-actions { position:absolute; bottom:1rem; left:50%; transform:translateX(-50%) translateY(10px); opacity:0; transition:all 0.3s; white-space:nowrap; }
  .prod-card:hover .prod-actions { opacity:1; transform:translateX(-50%) translateY(0); }
  .prod-action-btn { background:var(--deep); color:var(--cream); border:none; padding:0.6rem 1.5rem; font-family:'Jost',sans-serif; font-size:0.72rem; font-weight:500; letter-spacing:0.12em; text-transform:uppercase; cursor:pointer; transition:background 0.2s; text-decoration:none; display:inline-block; }
  .prod-action-btn:hover { background:var(--maroon); }
  .prod-badge { position:absolute; top:1rem; left:1rem; background:var(--maroon); color:white; font-size:0.65rem; letter-spacing:0.12em; text-transform:uppercase; padding:0.3rem 0.7rem; }
  .prod-name { font-family:'Cormorant Garamond',serif; font-size:1.32rem; font-weight:700; color:var(--deep); margin-bottom:0.4rem; }
  .prod-fabric { font-size:0.76rem; font-weight:500; color:var(--muted); letter-spacing:0.05em; margin-bottom:0.5rem; }
  .prod-price-row { display:flex; align-items:center; gap:0.8rem; }
  .prod-price { font-size:1rem; font-weight:500; color:var(--deep); }
  .prod-price-old { font-size:0.85rem; color:var(--muted); text-decoration:line-through; }
  .prod-price-save { font-size:0.72rem; color:var(--sage); letter-spacing:0.05em; }

  /* STORY */
  .story { background:var(--deep); color:var(--cream); display:grid; grid-template-columns:1fr 1fr; gap:7rem; align-items:center; padding:9rem 6rem; }
  .story-img { aspect-ratio:3.5/5; position:relative; overflow:hidden; }
  .story-img img { width:100%; height:100%; display:block; }
  .story-img-deco { position:absolute; top:-1.5rem; left:-1.5rem; right:1.5rem; bottom:1.5rem; border:1px solid rgba(184,136,46,0.3); pointer-events:none; }
  .story-quote { position:absolute; bottom:2.5rem; right:2.5rem; background:var(--gold); color:var(--deep); padding:1.8rem 2rem; max-width:240px; }
  .story-quote-text { font-family:'Cormorant Garamond',serif; font-size:1.15rem; font-weight: 600; font-style:italic; line-height:1.6; }
  .story-right .section-tag { color:var(--gold); }
  .story-right .section-tag::before { background:var(--gold); }
  .story-right .section-title { color:var(--cream); }
  .story-body { font-size:0.92rem; font-weight:400; line-height:2; color:rgba(250,247,242,0.78); margin-top:2rem; margin-bottom:3rem; }
  .story-values { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; margin-top:2rem; }
  .story-value { border-left:2px solid var(--gold); padding-left:1rem; }
  .story-value-title { font-family:'Cormorant Garamond',serif; font-size:1.4rem; color:var(--gold-light); margin-bottom:0.3rem; }
  .story-value-text { font-size:0.9rem; font-weight:400; line-height:1.65; color:rgba(250,247,242,0.72); }

  /* CRAFT PROMISE */
  .craft-promise { background:var(--cream); border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding:4.5rem 6rem; }
  .promise-grid { display:grid; grid-template-columns:1fr auto 1fr auto 1fr auto 1fr; align-items:center; gap:0; }
  .promise-divider { width:1px; height:70px; background:var(--border); margin:0 3rem; }
  .promise-item { text-align:center; padding:1rem; }
  .promise-icon { display:flex; align-items:center; justify-content:center; width:52px; height:52px; border:1px solid var(--border); border-radius:50%; margin:0 auto 1.2rem; color:var(--gold); }
  .promise-title { font-family:'Cormorant Garamond',serif; font-size:1.15rem; font-weight:800; color:var(--deep); margin-bottom:0.5rem; letter-spacing:0.01em; }
  .promise-text { font-size:0.8rem; font-weight:400; line-height:1.75; color:var(--muted); max-width:190px; margin:0 auto; }

  /* INSTAGRAM */
  .instagram { background:white; text-align:center; padding:8rem 6rem; }
  .insta-header { margin-bottom:4rem; }
  .insta-handle { display:inline-flex; align-items:center; gap:0.5rem; background:linear-gradient(90deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-size:0.85rem; letter-spacing:0.1em; margin-top:0.8rem; }
  .insta-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:0.5rem; }
  .insta-item { aspect-ratio:1; overflow:hidden; cursor:pointer; position:relative; }
  .insta-item img { width:100%; height:100%; display:block; object-fit: cover; object-position: top; transition:transform 0.4s ease; }
  .insta-item:hover img { transform:scale(1.08); }
  .insta-overlay { position:absolute; inset:0; background:rgba(0,0,0,0.35); opacity:0; display:flex; align-items:center; justify-content:center; transition:opacity 0.3s; color:white; font-size:1.4rem; }
  .insta-overlay svg { width:20px; height:20px; }
  .insta-item:hover .insta-overlay { opacity:1; }

  /* FOOTER */
  footer { background:#0E0A05; color:rgba(250,247,242,0.88); padding:5rem 5rem 3rem; }
  .footer-top { display:grid; grid-template-columns:2fr 1fr 1fr 1.5fr; gap:4rem; margin-bottom:2rem; padding-bottom:2rem; border-bottom:1px solid rgba(184,136,46,0.2); }
  .footer-brand-name { font-family:'Cormorant Garamond',serif; font-size:2.2rem; font-weight:500; color:var(--cream); margin-bottom:1rem; }
  .footer-brand-tagline { font-size:0.7rem; font-weight:500; letter-spacing:0.1em; color:var(--gold); text-transform:uppercase; margin-bottom:1.2rem; }
  .footer-desc { font-size:0.86rem; font-weight:400; line-height:1.8; color: rgba(250,247,242,0.78); margin-bottom:2rem; }
  .footer-socials { display:flex; gap:1rem; }
  .social-icon { width:36px; height:36px; border:1px solid rgba(184,136,46,0.3); display:flex; align-items:center; justify-content:center; color:var(--gold); font-size:0.9rem; cursor:pointer; transition:all 0.2s; text-decoration:none; }
  .social-icon:hover { background:var(--gold); color:var(--deep); border-color:var(--gold); }
  .footer-col-title { font-size:0.75rem; font-weight:600; letter-spacing:0.2em; text-transform:uppercase; color:var(--cream); margin-bottom:1.5rem; }
  .footer-links { list-style:none; display:flex; flex-direction:column; gap:0.8rem; }
  .footer-links a { font-size: 0.86rem; font-weight: 400; color: rgb(250 247 242 / 89%); text-decoration: none; transition: color 0.2s; }
  .footer-links a:hover { color:var(--gold); }
  .newsletter-form { display:flex; margin-top:0.5rem; }
  .newsletter-input { flex:1; background:rgba(255,255,255,0.06); border:1px solid rgba(184,136,46,0.2); border-right:none; padding:0.7rem 1rem; color:var(--cream); font-family:'Jost',sans-serif; font-size:0.8rem; outline:none; }
  .newsletter-input::placeholder { color:rgba(250,247,242,0.5); }
  .newsletter-btn { background:var(--gold); color:var(--deep); border:none; padding:0.7rem 1.2rem; font-family:'Jost',sans-serif; font-size:0.72rem; letter-spacing:0.1em; text-transform:uppercase; cursor:pointer; font-weight:500; }
  .footer-contact-item { display:flex; align-items:flex-start; gap:0.7rem; margin-bottom:0.9rem; font-size:0.86rem; font-weight:400; color:rgba(250,247,242,0.82); }
  .contact-icon { color:var(--gold); flex-shrink:0; margin-top:2px; }
  .footer-bottom { display:flex; justify-content:space-between; align-items:center; font-size:0.8rem; font-weight:500; color:rgba(250,247,242,0.74); }
  .footer-bottom-links { display:flex; gap:2rem; }
  .footer-bottom a { color:rgba(250,247,242,0.74); text-decoration:none; font-weight:500; }
  .footer-bottom a:hover { color:var(--gold); }
  .footer-bottom a:hover { color:var(--gold); }

  .float-wa { position:fixed; bottom:2rem; right:2rem; width:56px; height:56px; background:#25D366; border-radius:50%; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 20px rgba(37,211,102,0.4); z-index:300; cursor:pointer; transition:transform 0.2s; text-decoration:none; }
  .float-wa:hover { transform:scale(1.1); }

  @keyframes fadeUp { from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} }
  @keyframes fadeIn { from{opacity:0} to{opacity:1} }
  @keyframes fadeSlideRight { from{opacity:0;transform:translateX(-24px)} to{opacity:1;transform:translateX(0)} }

  .hero-left > * { animation:fadeUp 0.8s ease both; }
  .hero-eyebrow{animation-delay:0.1s} .hero-title{animation-delay:0.2s} .hero-desc{animation-delay:0.3s} .hero-ctas{animation-delay:0.4s} .hero-stats{animation-delay:0.5s}

  .hero-right { animation:fadeIn 1s ease 0.35s both; }
  .hero-img-wrap img { animation:fadeUp 1s ease 0.45s both; }

  /* SCROLL REVEAL — triggered by JS IntersectionObserver */
  .reveal {
    opacity: 0;
    transform: translateY(32px);
    transition: opacity 0.9s ease, transform 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
  .reveal.slide-left {
    transform: translateX(-28px);
  }
  .reveal.visible {
    opacity: 1;
    transform: translate(0, 0);
  }
  .reveal[data-delay="1"] { transition-delay: 0.08s; }
  .reveal[data-delay="2"] { transition-delay: 0.16s; }
  .reveal[data-delay="3"] { transition-delay: 0.24s; }
  .reveal[data-delay="4"] { transition-delay: 0.32s; }
  .reveal[data-delay="5"] { transition-delay: 0.40s; }
  .reveal[data-delay="6"] { transition-delay: 0.48s; }

  @media (max-width:900px) {
    nav:not(.ep-sidebar-nav):not(.rk2-nav) { padding:0.9rem 1.5rem; }
    .nav-links { display:none; }
    .hamburger { display:flex; }
    .nav-label { display:none; }
    .account-dropdown { display:none !important; }
    section { padding:5rem 1.5rem; }
    .hero { grid-template-columns:1fr; }
    .hero-left { padding:3rem 1.5rem 2.5rem; }
    .hero-right { height:80vw; min-height:300px; }
    .hero-stats { gap:2rem; }
    .hero-badge { bottom:1.5rem; right:1.5rem; padding:1rem 1.2rem; }
    .cat-header { flex-direction:column; align-items:flex-start; gap:1rem; }
    .cat-grid { grid-template-columns:1fr 1fr; gap:0.8rem; }
    .prod-header { flex-direction:column; align-items:flex-start; gap:1rem; }
    .prod-grid { grid-template-columns:1fr 1fr; gap:1rem; }
    .manifesto { padding:5rem 1.5rem; }
    .heritage-journal { padding:4rem 1.5rem; }
    .journal-grid { grid-template-columns:1fr; }
    .journal-feature { padding:1.4rem 1.3rem; }
    .story { grid-template-columns:1fr; padding:5rem 1.5rem; gap:2.5rem; }
    .story-img { display:none; }
    .story-values { grid-template-columns:1fr; }
    .insta-grid { grid-template-columns:repeat(3,1fr); }
    .footer-top { grid-template-columns:1fr; gap:2.5rem; }
    .footer-bottom { flex-direction:column; gap:1rem; text-align:center; }
    footer { padding:4rem 1.5rem 2rem; }
  }
  @media (max-width:480px) {
    .prod-grid { grid-template-columns:1fr 1fr; }
    .insta-grid { grid-template-columns:repeat(2,1fr); }
  }

  /* =========================
     PRODUCTS PAGE STYLES
     ========================= */
  .products-page .breadcrumb {
    padding:1rem 5rem; display:flex; align-items:center; gap:0.6rem;
    font-size:0.76rem; font-weight:500; letter-spacing:0.08em; color:var(--muted);
    border-bottom:1px solid var(--border); background:white;
  }
  .products-page .breadcrumb a { color:var(--muted); text-decoration:none; transition:color 0.2s; }
  .products-page .breadcrumb a:hover { color:var(--gold); }
  .products-page .breadcrumb-sep { color:rgba(184,136,46,0.35); }
  .products-page .breadcrumb-current { color:var(--text); }
  .products-page .page-header { background:white; padding:1.4rem 5rem 1.4rem; border-bottom:1px solid var(--border); }
  .products-page .page-header-inner { display:flex; align-items:flex-end; justify-content:space-between; }
  .products-page .page-title { font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,3vw,3rem); font-weight:500; color:var(--deep); line-height:1.1; }
  .products-page .page-title span { font-style:italic; color:var(--gold); }
  .products-page .page-count { font-size:0.8rem; font-weight:500; letter-spacing:0.1em; color:var(--muted); margin-top:0.4rem; }
  .products-page .page-sort { display:flex; align-items:center; gap:0.8rem; font-size:0.76rem; font-weight:500; letter-spacing:0.1em; color:var(--muted); }
  .products-page .sort-select {
    appearance:none; background:transparent; border:1px solid rgba(184,136,46,0.35);
    padding:0.5rem 2rem 0.5rem 0.8rem; font-family:'Jost',sans-serif; font-size:0.75rem; color:var(--text);
    cursor:pointer; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23B8882E'/%3E%3C/svg%3E");
    background-repeat:no-repeat; background-position:right 0.6rem center; outline:none;
  }
  .products-page .shop-layout { display:grid; grid-template-columns:260px 1fr; min-height:calc(100vh - 200px); }
  .products-page .sidebar { background:white; border-right:1px solid var(--border); padding:0; position:sticky; top:80px; height:calc(100vh - 80px); overflow:hidden; scrollbar-width:none; display:flex; flex-direction:column; }
  .products-page .sidebar::-webkit-scrollbar { display:none; }
  .products-page .filter-scroll { flex:1 1 auto; min-height:0; overflow-y:auto; padding:2rem 0 0; scrollbar-width:none; }
  .products-page .filter-scroll::-webkit-scrollbar { display:none; }
  .products-page .filter-group { padding:1.2rem 1.8rem; border-bottom:1px solid var(--border); }
  .products-page .filter-title { font-size:0.7rem; letter-spacing:0.25em; text-transform:uppercase; color:var(--text); font-weight:500; margin-bottom:1rem; display:flex; align-items:center; justify-content:space-between; cursor:pointer; user-select:none; }
  .products-page .filter-search-input { width:100%; min-height:36px; border:1px solid rgba(184,136,46,0.28); background:#fff; color:var(--text); font-family:'Jost',sans-serif; font-size:0.76rem; padding:0 0.65rem; margin:0 0 0.8rem; outline:none; }
  .products-page .filter-search-input:focus { border-color:var(--gold); }
  .products-page .filter-chevron { font-size:0.6rem; color:var(--gold); transition:transform 0.2s; }
  .products-page .filter-chevron.open { transform:rotate(180deg); }
  .products-page .filter-options { display:flex; flex-direction:column; gap:0.55rem; }
  .products-page .filter-option { display:flex; align-items:center; gap:0.7rem; font-size:0.84rem; font-weight:500; color:var(--text); opacity:0.85; cursor:pointer; transition:color 0.2s, opacity 0.2s; }
  .products-page .filter-option input[type="checkbox"] { display:none; }
  .products-page .filter-check { width:14px; height:14px; border:1px solid rgba(184,136,46,0.35); display:flex; align-items:center; justify-content:center; }
  .products-page .filter-option input:checked ~ .filter-check { background:var(--gold); border-color:var(--gold); }
  .products-page .filter-check-tick { width:7px; height:5px; border-left:1.5px solid white; border-bottom:1.5px solid white; transform:rotate(-45deg) translateY(-1px); display:none; }
  .products-page .filter-option input:checked ~ .filter-check .filter-check-tick { display:block; }
  .products-page .price-range { display:flex; flex-direction:column; gap:0.8rem; }
  .products-page .price-slider-wrap { position:relative; height:24px; display:flex; align-items:center; }
  .products-page .price-slider-wrap::before {
    content:'';
    position:absolute;
    left:0;
    right:0;
    top:50%;
    height:2px;
    transform:translateY(-50%);
    background:linear-gradient(to right, rgba(184,136,46,0.25) 0%, rgba(184,136,46,0.25) var(--price-min, 0%), var(--gold) var(--price-min, 0%), var(--gold) var(--price-max, 100%), rgba(184,136,46,0.25) var(--price-max, 100%), rgba(184,136,46,0.25) 100%);
  }
  .products-page .price-inputs { display:grid; grid-template-columns:1fr 1fr; gap:0.6rem; }
  .products-page .price-input { border:1px solid rgba(184,136,46,0.35); padding:0.45rem 0.6rem; font-family:'Jost',sans-serif; font-size:0.78rem; color:var(--text); background:transparent; width:100%; }
  .products-page .price-slider { appearance:none; position:absolute; inset:0; width:100%; height:24px; background:transparent; pointer-events:none; }
  .products-page .price-slider::-webkit-slider-thumb { appearance:none; width:16px; height:16px; border-radius:50%; background:var(--gold); border:2px solid #fff; box-shadow:0 1px 5px rgba(26,18,8,0.2); pointer-events:auto; cursor:pointer; }
  .products-page .price-slider::-moz-range-thumb { width:16px; height:16px; border-radius:50%; background:var(--gold); border:2px solid #fff; box-shadow:0 1px 5px rgba(26,18,8,0.2); pointer-events:auto; cursor:pointer; }
  .products-page .price-apply { width:100%; border:1px solid var(--deep); background:var(--deep); color:#fff; min-height:38px; font-family:'Jost',sans-serif; font-size:0.7rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; cursor:pointer; }
  .products-page .filter-apply-bar { flex:0 0 auto; width:100%; box-sizing:border-box; padding:1rem 1.8rem 1.2rem; background:linear-gradient(to bottom, rgba(255,255,255,0.92), #fff 30%); border-top:1px solid var(--border); box-shadow:0 -12px 24px rgba(26,18,8,0.06); }
  .products-page .filter-apply-btn { width:100%; min-height:44px; border:1px solid var(--deep); background:var(--deep); color:var(--cream); font-family:'Jost',sans-serif; font-size:0.72rem; font-weight:600; letter-spacing:0.16em; text-transform:uppercase; cursor:pointer; transition:background 0.2s, border-color 0.2s, color 0.2s, opacity 0.2s; }
  .products-page .filter-apply-btn:hover:not(:disabled) { background:#000; border-color:#000; color:#fff; }
  .products-page .filter-apply-btn:disabled { background:#f3eee7; border-color:rgba(184,136,46,0.25); color:rgba(82,69,58,0.42); cursor:not-allowed; }
  .products-page .filter-more-btn { margin-top:0.75rem; border:0; background:transparent; color:var(--gold); padding:0; font-family:'Jost',sans-serif; font-size:0.68rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; cursor:pointer; }
  .products-page .color-swatches { display:flex; flex-wrap:wrap; gap:0.5rem; }
  .products-page .color-swatch { width:22px; height:22px; border-radius:50%; cursor:pointer; border:2px solid transparent; }
  .products-page .color-swatch.active { border-color:var(--gold); }
  .products-page .clear-filters { display:flex; align-items:center; gap:0.5rem; font-size:0.72rem; letter-spacing:0.1em; color:var(--gold); cursor:pointer; padding:1rem 1.8rem 0; text-transform:uppercase; background:none; border:none; font-family:'Jost',sans-serif; }
  .products-page .products-area { background:var(--cream); padding:2rem 3rem; }
  .products-page .active-filters { display:flex; flex-wrap:wrap; gap:0.5rem; margin-bottom:1.5rem; align-items:center; }
  .products-page .active-filters-label { font-size:0.72rem; font-weight:600; letter-spacing:0.1em; color:var(--text); opacity:0.75; text-transform:uppercase; }
  .products-page .filter-tag { display:flex; align-items:center; gap:0.4rem; background:white; border:1px solid rgba(184,136,46,0.35); padding:0.3rem 0.7rem; font-size:0.72rem; letter-spacing:0.05em; color:var(--text); }
  .products-page .prod-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.8rem; }
  .products-page .prod-grid.cols-2 { grid-template-columns:repeat(2,1fr); }
  .products-page .prod-grid .prod-card.reveal:nth-child(1) { transition-delay:0.06s; }
  .products-page .prod-grid .prod-card.reveal:nth-child(2) { transition-delay:0.1s; }
  .products-page .prod-grid .prod-card.reveal:nth-child(3) { transition-delay:0.14s; }
  .products-page .prod-grid .prod-card.reveal:nth-child(4) { transition-delay:0.18s; }
  .products-page .prod-grid .prod-card.reveal:nth-child(5) { transition-delay:0.22s; }
  .products-page .prod-grid .prod-card.reveal:nth-child(6) { transition-delay:0.26s; }
  .products-page .prod-grid .prod-card.reveal:nth-child(7) { transition-delay:0.3s; }
  .products-page .prod-grid .prod-card.reveal:nth-child(8) { transition-delay:0.34s; }
  .products-page .prod-grid .prod-card.reveal:nth-child(n+9) { transition-delay:0.38s; }
  .products-page .prod-card { cursor:pointer; }
  .products-page .prod-img { position:relative; aspect-ratio:2.2/3; overflow:hidden; margin-bottom:0.9rem; background:#ede5d8; }
  .products-page .prod-img img { width:100%; height:100%; display:block; transition:transform 0.55s ease; }
  .products-page .prod-card:hover .prod-img img { transform:scale(1.04); }
  .products-page .prod-hover { position:absolute; bottom:0; left:0; right:0; background:rgba(26,18,8,0.85); padding:0.9rem; transform:translateY(100%); transition:transform 0.3s ease; display:flex; flex-direction:column; gap:0.5rem; }
  .products-page .prod-card:hover .prod-hover { transform:translateY(0); }
  .products-page .prod-sizes { display:flex; gap:0.4rem; justify-content:center; }
  .products-page .prod-size-btn { width:30px; height:30px; background:rgba(255,255,255,0.1); border:1px solid rgba(255,255,255,0.3); color:white; font-size:0.68rem; cursor:pointer; }
  .products-page .prod-add-btn { background:var(--cream); color:var(--deep); border:none; padding:0.6rem; font-family:'Jost',sans-serif; font-size:0.72rem; letter-spacing:0.12em; text-transform:uppercase; width:100%; display:block; text-align:center; text-decoration:none; }
  .products-page .prod-badge { position:absolute; top:0.9rem; left:0.9rem; background:var(--maroon); color:white; font-size:0.62rem; letter-spacing:0.12em; text-transform:uppercase; padding:0.25rem 0.6rem; }
  .products-page .prod-wishlist { position:absolute; top:0.9rem; right:0.9rem; width:30px; height:30px; background:rgba(250,247,242,0.9); border-radius:50%; display:flex; align-items:center; justify-content:center; opacity:0; transition:opacity 0.2s; cursor:pointer; }
  .products-page .prod-wishlist svg { width:16px; height:16px; fill:var(--cream); }
  .products-page .prod-card:hover .prod-wishlist { opacity:1; }
  .products-page .prod-name { font-family:'Cormorant Garamond',serif; font-size:1.32rem; font-weight:700; color:var(--deep); margin-bottom:0.2rem; }
  .products-page .prod-fabric { font-size:0.78rem; font-weight:400; color:var(--muted); letter-spacing:0.05em; margin-bottom:0.45rem; }
  .products-page .prod-price-row { display:flex; align-items:center; gap:0.7rem; }
  .products-page .prod-price { font-size:0.95rem; font-weight:500; color:var(--deep); }
  .products-page .prod-price-old { font-size:0.8rem; color:var(--muted); text-decoration:line-through; }
  .products-page .prod-price-save { font-size:0.68rem; color:var(--sage); letter-spacing:0.05em; }
  .products-page .pagination { display:flex; align-items:center; justify-content:center; gap:0.4rem; padding:3rem 0 2rem; }
  .products-page .page-btn { width:38px; height:38px; border:1px solid var(--border); background:white; display:flex; align-items:center; justify-content:center; font-size:0.82rem; color:var(--muted); text-decoration:none; }
  .products-page .page-btn.active { background:var(--deep); border-color:var(--deep); color:var(--cream); }
  .products-page .sidebar-close-row, .products-page .sidebar-overlay { display:none; }
  .products-page .mobile-filter-btn { align-items:center; gap:0.5rem; background:white; border:1px solid rgba(184,136,46,0.35); padding:0.5rem 1rem; font-size:0.75rem; letter-spacing:0.1em; text-transform:uppercase; color:var(--text); cursor:pointer; margin-bottom:1rem; }

  /* =========================
     PRODUCT DETAILS STYLES
     ========================= */
  .product-details-page .breadcrumb {
    margin-top:80px; padding:1rem 5rem; display:flex; align-items:center; gap:0.6rem;
    font-size:0.76rem; font-weight:500; letter-spacing:0.08em; color:var(--muted); border-bottom:1px solid var(--border); background:white;
  }
  .product-details-page .breadcrumb a { color:var(--muted); text-decoration:none; transition:color 0.2s; }
  .product-details-page .breadcrumb a:hover { color:var(--gold); }
  .product-details-page .breadcrumb-sep { color:rgba(184,136,46,0.35); }
  .product-details-page .product-wrap { display:grid; grid-template-columns:1.05fr 1fr; gap:3rem; padding:2.5rem 5rem 5rem; background:white; }
  .product-details-page .gallery { display:grid; grid-template-columns:88px 1fr; gap:1rem; padding: 0;}
  .product-details-page .gallery-details {padding: 0;}
  .product-details-page .thumbs { display:flex; flex-direction:column; gap:0.7rem; }
  .product-details-page .thumb { width:88px; aspect-ratio:2.2/3; border:1px solid var(--border); cursor:pointer; overflow:hidden; background:#efe7db; }
  .product-details-page .thumb.active { border-color:var(--gold); }
  .product-details-page .thumb img { width:100%; height:100%; object-fit:cover; display:block; }
  .product-details-page .main-img { aspect-ratio:2.2/3; overflow:hidden; background:#ede5d8; border:1px solid var(--border); }
  .product-details-page .main-img img { width:100%; height:100%; object-fit:cover; display:block; }
  .product-details-page .main-img { position:relative; cursor:zoom-in; }
  .product-details-page .gallery-badge { position:absolute; top:1rem; left:1rem; background:var(--maroon); color:white; font-size:0.62rem; letter-spacing:0.12em; text-transform:uppercase; padding:0.28rem 0.6rem; }
  .product-details-page .gallery-arrows { position:absolute; top:50%; transform:translateY(-50%); width:100%; display:flex; justify-content:space-between; padding:0 0.6rem; pointer-events:none; }
  .product-details-page .garrow { width:32px; height:32px; background:rgba(250,247,242,0.9); border:none; display:flex; align-items:center; justify-content:center; cursor:pointer; pointer-events:all; font-size:1rem; color:var(--text); }
  .product-details-page .zoom-hint { position:absolute; bottom:0.8rem; right:0.8rem; background:rgba(26,18,8,0.68); color:rgba(250,247,242,0.92); font-size:0.68rem; letter-spacing:0.1em; text-transform:uppercase; padding:0.3rem 0.6rem; pointer-events:none; transition:opacity 0.3s; }
  .product-details-page .prod-tag { font-size:0.78rem; font-weight: 600; letter-spacing:0.15em; text-transform:uppercase; color:var(--gold); margin-bottom:0.8rem; }
  .product-details-page .prod-title { font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,3.4vw,3rem); font-weight:500; line-height:1.08; color:var(--deep); }
  .product-details-page .prod-sub { margin-top:0.5rem; font-size:0.85rem; color:var(--muted); letter-spacing:0.04em; }
  .product-details-page .rating-row { display:flex; align-items:center; gap:0.8rem; margin-top:1rem; padding-bottom:1.2rem; border-bottom:1px solid var(--border); }
  .product-details-page .stars { display:flex; gap:2px; }
  .product-details-page .star, .product-details-page .star-half { color:var(--gold); font-size:0.85rem; }
  .product-details-page .star-half::before { content:'★'; background:linear-gradient(to right, var(--gold) 60%, rgba(26,18,8,0.15) 60%); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
  .product-details-page .rating-num { font-size:0.82rem; color:var(--text); font-weight:500; }
  .product-details-page .rating-count { font-size:0.78rem; font-weight:500; color:var(--muted); background:none; border:none; padding:0; cursor:pointer; font-family:'Jost',sans-serif; text-decoration:underline; text-underline-offset:2px; transition:color 0.2s; }
  .product-details-page .rating-count:hover { color:var(--gold); }
  .product-details-page .rating-pipe { width:1px; height:13px; background:rgba(184,136,46,0.35); }
  .product-details-page .verified { font-size:0.72rem; font-weight:500; color:var(--sage); letter-spacing:0.06em; }
  .product-details-page .price-row { display:flex; align-items:center; gap:0.8rem; margin-top:1.4rem; }
  .product-details-page .price { font-size:1.5rem; font-weight:500; color:var(--deep); }
  .product-details-page .price-old { font-size:1rem; color:var(--muted); text-decoration:line-through; }
  .product-details-page .price-save { font-size:0.78rem; font-weight:500; color:var(--sage); letter-spacing:0.08em; text-transform:uppercase; }
  .product-details-page .tax-note { margin-top:0.5rem; font-size:0.78rem; font-weight:400; color:var(--muted); }
  .product-details-page .detail-box { border-top:1px solid var(--border); padding-top:1.3rem; margin-top:1.3rem; }
  .product-details-page .box-label { font-size:0.74rem; font-weight:500; letter-spacing:0.14em; text-transform:uppercase; color:var(--muted); margin-bottom:0.8rem; }
  .product-details-page .box-label-val { font-weight:500; color:var(--gold); text-transform:none; letter-spacing:0.04em; }
  .product-details-page .color-dots { display:flex; gap:0.55rem; flex-wrap:wrap; }
  .product-details-page .cdot { width:26px; height:26px; border-radius:50%; cursor:pointer; border:2px solid transparent; outline:2px solid transparent; outline-offset:2px; transition:outline-color 0.2s; }
  .product-details-page .cdot.active { outline-color:var(--gold); }
  .product-details-page .size-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:0.8rem; }
  .product-details-page .size-guide-btn { font-size:0.72rem; letter-spacing:0.06em; color:var(--gold); background:none; border:none; cursor:pointer; font-family:'Jost',sans-serif; text-decoration:underline; text-underline-offset:3px; }
  .product-details-page .size-list { display:flex; gap:0.5rem; flex-wrap:wrap; }
  .product-details-page .size-btn { min-width:42px; height:38px; border:1px solid rgba(184,136,46,0.35); background:transparent; color:var(--text); font-size:0.74rem; cursor:pointer; }
  .product-details-page .size-btn.active, .product-details-page .size-btn:hover { border-color:var(--gold); color:var(--gold); }
  .product-details-page .size-btn.soldout { opacity:0.32; cursor:not-allowed; text-decoration:line-through; }
  .product-details-page .qty-row { display:flex; align-items:center; gap:0.8rem; }
  .product-details-page .qty-wrap { display:inline-flex; align-items:center; border:1px solid rgba(184,136,46,0.35); }
  .product-details-page .qty-btn { width:36px; height:36px; border:none; background:transparent; color:var(--text); cursor:pointer; font-size:1rem; }
  .product-details-page .qty-value { width:42px; text-align:center; font-size:0.85rem; }
  .product-details-page .stock-note { font-size:0.75rem; color:var(--sage); letter-spacing:0.08em; text-transform:uppercase; }
  .product-details-page .cta-row { display:grid; grid-template-columns:1fr 1fr; gap:0.8rem; margin-top:1.3rem; }
  .product-details-page .btn-main, .product-details-page .btn-alt { border:none; padding:0.9rem 1rem; font-size:0.75rem; letter-spacing:0.14em; text-transform:uppercase; cursor:pointer; }
  .product-details-page .btn-main { background:var(--deep); color:var(--cream); }
  .product-details-page .btn-alt { background:var(--gold); color:var(--deep); }
  .product-details-page .btn-wa { display:flex; align-items:center; justify-content:center; gap:0.55rem; width:100%; background:#25D366; color:white; border:none; padding:0.85rem 1rem; font-family:'Jost',sans-serif; font-size:0.75rem; letter-spacing:0.12em; text-transform:uppercase; cursor:pointer; text-decoration:none; margin-top:0.8rem; transition:opacity 0.2s; }
  .product-details-page .btn-wa svg { width:16px; height:16px; flex-shrink:0; }
  .product-details-page .btn-wa:hover { opacity:0.88; }
  .product-details-page .btn-wishlist { display:flex; align-items:center; justify-content:center; gap:0.5rem; width:100%; background:transparent; color:var(--text); border:1px solid rgba(184,136,46,0.35); padding:0.75rem 1rem; font-family:'Jost',sans-serif; font-size:0.75rem; letter-spacing:0.12em; text-transform:uppercase; cursor:pointer; margin-top:0.6rem; transition:all 0.2s; }
  .product-details-page .btn-wishlist:hover { border-color:var(--gold); color:var(--gold); }
  .product-details-page .trust-row { display:grid; grid-template-columns:repeat(3,1fr); gap:0.5rem; margin-top:1.4rem; padding:1rem 0; border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
  .product-details-page .trust-item { display:flex; flex-direction:column; align-items:center; gap:0.3rem; text-align:center; }
  .product-details-page .trust-label { font-size:0.68rem; font-weight:500; letter-spacing:0.06em; text-transform:uppercase; color:var(--muted); line-height:1.45; }
  .product-details-page .copy { margin-top:1.2rem; font-size:0.86rem; line-height:1.85; color:var(--muted); }
  .product-details-page .bullet-list { margin-top:0.8rem; list-style:none; display:flex; flex-direction:column; gap:0.5rem; }
  .product-details-page .bullet-list li { font-size:0.82rem; color:var(--text); position:relative; padding-left:1rem; }
  .product-details-page .bullet-list li::before { content:"•"; color:var(--gold); position:absolute; left:0; top:0; }
  .product-details-page .accordion { border-top:1px solid var(--border); margin-top:1.4rem; }
  .product-details-page .acc-item { border-bottom:1px solid var(--border); }
  .product-details-page .acc-header { display:flex; align-items:center; justify-content:space-between; padding:0.95rem 0; cursor:pointer; font-size:0.72rem; letter-spacing:0.18em; text-transform:uppercase; color:var(--text); font-weight:500; background:none; border:none; width:100%; text-align:left; font-family:'Jost',sans-serif; }
  .product-details-page .acc-chev { font-size:0.6rem; color:var(--gold); transition:transform 0.25s; }
  .product-details-page .acc-chev.open { transform:rotate(180deg); }
  .product-details-page .acc-body { display:none; padding-bottom:1.1rem; }
  .product-details-page .acc-body.open { display:block; }
  .product-details-page .fabric-table { width:100%; }
  .product-details-page .fabric-table tr { border-bottom:1px solid var(--border); }
  .product-details-page .fabric-table td { padding:0.5rem 0; font-size:0.8rem; }
  .product-details-page .fabric-table td:first-child { color:var(--muted); width:44%; }
  .product-details-page .sg-table { width:100%; border-collapse:collapse; font-size:0.76rem; margin-bottom:0.8rem; }
  .product-details-page .sg-table th { background:var(--deep); color:var(--cream); padding:0.45rem 0.7rem; font-weight:400; letter-spacing:0.06em; text-align:left; }
  .product-details-page .sg-table td { padding:0.45rem 0.7rem; border-bottom:1px solid var(--border); }
  .product-details-page .sg-note { font-size:0.76rem; font-weight:400; color:var(--muted); line-height:1.65; }
  .product-details-page .modal-overlay { position:fixed; inset:0; background:rgba(0,0,0,0.5); z-index:500; display:none; align-items:center; justify-content:center; padding:2rem; }
  .product-details-page .modal-overlay.open { display:flex; }
  .product-details-page .modal { background:var(--cream); max-width:580px; width:100%; max-height:85vh; overflow-y:auto; }
  .product-details-page .modal-hd { display:flex; align-items:center; justify-content:space-between; padding:1.4rem 2rem; border-bottom:1px solid var(--border); position:sticky; top:0; background:var(--cream); z-index:1; }
  .product-details-page .modal-hd h3 { font-family:'Cormorant Garamond',serif; font-size:1.4rem; font-weight:400; color:var(--deep); }
  .product-details-page .modal-close { background:none; border:none; font-size:1.4rem; color:var(--muted); cursor:pointer; }
  .product-details-page .modal-body { padding:1.8rem 2rem; }
  .product-details-page .modal-body p { font-size:0.86rem; font-weight:400; color:var(--muted); line-height:1.8; margin-bottom:1.2rem; }
  /* ── Reviews modal ── */
  .product-details-page .reviews-modal { max-width:800px; }
  .product-details-page .reviews-body { padding:0; }
  .product-details-page .reviews-summary { display:grid; grid-template-columns:auto 1fr; gap:2.5rem; padding:2rem 2rem 1.8rem; align-items:center; border-bottom:1px solid var(--border); }
  .product-details-page .reviews-score { display:flex; flex-direction:column; align-items:center; gap:0.4rem; padding-right:2.5rem; border-right:1px solid var(--border); }
  .product-details-page .reviews-big-num { font-family:'Cormorant Garamond',serif; font-size:3.8rem; font-weight:400; color:var(--deep); line-height:1; }
  .product-details-page .reviews-stars-sm { display:flex; gap:2px; font-size:0.88rem; color:var(--gold); }
  .product-details-page .reviews-total { font-size:0.72rem; color:var(--muted); letter-spacing:0.06em; text-align:center; white-space:nowrap; }
  .product-details-page .reviews-bars { display:flex; flex-direction:column; gap:0.6rem; }
  .product-details-page .bar-row { display:flex; align-items:center; gap:0.7rem; }
  .product-details-page .bar-label { font-size:0.72rem; color:var(--muted); min-width:20px; text-align:right; }
  .product-details-page .bar-track { flex:1; height:5px; background:rgba(184,136,46,0.12); }
  .product-details-page .bar-fill { height:100%; background:var(--gold); }
  .product-details-page .bar-count { font-size:0.7rem; color:var(--muted); min-width:20px; }
  .product-details-page .reviews-write-row { display:flex; align-items:center; justify-content:space-between; padding:1.2rem 2rem; border-bottom:1px solid var(--border); }
  .product-details-page .reviews-showing { font-size:0.74rem; color:var(--muted); letter-spacing:0.06em; }
  .product-details-page .reviews-write-btn { background:none; border:1px solid rgba(184,136,46,0.45); padding:0.55rem 1.1rem; font-family:'Jost',sans-serif; font-size:0.7rem; font-weight:500; letter-spacing:0.14em; text-transform:uppercase; color:var(--deep); cursor:pointer; transition:all 0.2s; }
  .product-details-page .reviews-write-btn:hover { background:var(--gold); color:white; border-color:var(--gold); }
  .product-details-page .reviews-modal--write .reviews-summary { display:none; }
  .product-details-page .reviews-modal--write .reviews-list { display:none; }
  .product-details-page .reviews-modal--write .reviews-showing { display:none; }
  .product-details-page .reviews-modal--write .reviews-write-row { justify-content:flex-end; border-bottom:none; padding-bottom:0.6rem; }
  .product-details-page .reviews-write-panel { display:none; padding:0 2rem 2rem; border-bottom:1px solid var(--border); }
  .product-details-page .reviews-modal--write .reviews-write-panel { display:block; }
  .product-details-page .reviews-write-intro { font-size:0.8rem; color:var(--muted); line-height:1.65; margin:0 0 1.4rem; }
  .product-details-page .reviews-write-form { display:flex; flex-direction:column; gap:1.1rem; }
  .product-details-page .rw-field { display:flex; flex-direction:column; gap:0.45rem; }
  .product-details-page .rw-label { font-size:0.72rem; font-weight:500; letter-spacing:0.1em; text-transform:uppercase; color:var(--deep); }
  .product-details-page .rw-req { color:var(--maroon); }
  .product-details-page .rw-opt { text-transform:none; letter-spacing:0.04em; font-size:0.7rem; color:var(--muted); font-weight:400; }
  .product-details-page .rw-input, .product-details-page .rw-textarea {
    width:100%; padding:0.65rem 0.85rem; border:1px solid var(--border); background:white; font-family:'Jost',sans-serif;
    font-size:0.86rem; color:var(--text); border-radius:0; transition:border-color 0.2s, box-shadow 0.2s;
  }
  .product-details-page .rw-input:focus, .product-details-page .rw-textarea:focus {
    outline:none; border-color:var(--gold); box-shadow:0 0 0 1px rgba(184,136,46,0.25);
  }
  .product-details-page .rw-textarea { resize:vertical; min-height:120px; line-height:1.65; }
  .product-details-page .rw-hint { font-size:0.74rem; color:var(--muted); margin:0; min-height:1.2em; }
  .product-details-page .rw-hint.rw-hint-err { color:var(--maroon); }
  .product-details-page .rw-stars { display:flex; gap:0.35rem; }
  .product-details-page .rw-star {
    width:2.25rem; height:2.25rem; padding:0; border:1px solid rgba(184,136,46,0.35); background:var(--cream);
    color:rgba(184,136,46,0.35); font-size:1.15rem; line-height:1; cursor:pointer; transition:color 0.15s, background 0.15s, border-color 0.15s;
  }
  .product-details-page .rw-star.filled { color:var(--gold); border-color:var(--gold); background:rgba(184,136,46,0.08); }
  .product-details-page .rw-star:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }
  .product-details-page .rw-row2 { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
  .product-details-page .rw-check { display:flex; align-items:flex-start; gap:0.5rem; font-size:0.8rem; color:var(--text); cursor:pointer; line-height:1.5; }
  .product-details-page .rw-check input { margin-top:0.25rem; accent-color:var(--gold); }
  .product-details-page .rw-actions { display:flex; flex-wrap:wrap; gap:0.75rem; justify-content:flex-end; margin-top:0.5rem; }
  .product-details-page .rw-btn-primary {
    background:var(--deep); color:var(--cream); border:none; padding:0.65rem 1.5rem; font-family:'Jost',sans-serif;
    font-size:0.72rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; cursor:pointer; transition:background 0.2s;
  }
  .product-details-page .rw-btn-primary:hover { background:var(--gold); color:var(--deep); }
  .product-details-page .rw-btn-secondary {
    background:none; border:1px solid rgba(184,136,46,0.45); padding:0.65rem 1.2rem; font-family:'Jost',sans-serif;
    font-size:0.72rem; font-weight:500; letter-spacing:0.12em; text-transform:uppercase; color:var(--deep); cursor:pointer; transition:all 0.2s;
  }
  .product-details-page .rw-btn-secondary:hover { border-color:var(--gold); color:var(--gold); }
  @media (max-width:640px) {
    .product-details-page .rw-row2 { grid-template-columns:1fr; }
  }
  .product-details-page .reviews-list { padding:1.8rem 2rem 2rem; display:flex; flex-direction:column; gap:1.6rem; }
  .product-details-page .review-card { padding-bottom:1.6rem; border-bottom:1px solid var(--border); }
  .product-details-page .review-card:last-child { border-bottom:none; padding-bottom:0; }
  .product-details-page .review-top { display:flex; align-items:center; gap:0.75rem; margin-bottom:0.6rem; }
  .product-details-page .review-avatar { width:38px; height:38px; border-radius:50%; background:var(--blush); color:var(--deep); font-size:0.7rem; font-weight:500; display:flex; align-items:center; justify-content:center; letter-spacing:0.05em; flex-shrink:0; font-family:'Jost',sans-serif; }
  .product-details-page .review-info { flex:1; }
  .product-details-page .review-name-row { display:flex; align-items:center; gap:0.5rem; }
  .product-details-page .review-name { font-size:0.82rem; font-weight:500; color:var(--deep); }
  .product-details-page .review-verified { font-size:0.68rem; color:#4A7C4A; letter-spacing:0.06em; }
  .product-details-page .review-date { font-size:0.7rem; color:var(--muted); margin-top:0.15rem; }
  .product-details-page .review-stars { font-size:0.78rem; color:var(--gold); margin-bottom:0.4rem; letter-spacing:1px; }
  .product-details-page .review-title { font-size:0.86rem; font-weight:500; color:var(--deep); margin-bottom:0.35rem; font-family:'Cormorant Garamond',serif; }
  .product-details-page .review-text { font-size:0.81rem; color:var(--text); line-height:1.8; }
  .product-details-page .zoom-overlay { position:fixed; inset:0; background:rgba(0,0,0,0.92); z-index:650; display:none; align-items:center; justify-content:center; padding:2rem 4.5rem; }
  .product-details-page .zoom-overlay.open { display:flex; }
  .product-details-page .zoom-stage { width:100%; max-width:1000px; max-height:90vh; display:flex; align-items:center; justify-content:center; overflow:hidden; cursor:zoom-in; }
  .product-details-page .zoom-stage img { max-width:100%; max-height:90vh; object-fit:contain; box-shadow:0 8px 30px rgba(0,0,0,0.28); transform:scale(1); transform-origin:50% 50%; transition:transform 0.15s ease-out; will-change:transform, transform-origin; }
  .product-details-page .zoom-stage.active { cursor:zoom-out; }
  .product-details-page .zoom-stage.active img { transform:scale(2.15); }
  .product-details-page .zoom-close { position:absolute; top:1.2rem; right:1.2rem; width:40px; height:40px; border:none; border-radius:50%; background:rgba(255,255,255,0.16); color:#fff; font-size:1.1rem; cursor:pointer; }
  .product-details-page .zoom-nav { position:absolute; top:50%; transform:translateY(-50%); width:46px; height:46px; border:none; border-radius:50%; background:rgba(255,255,255,0.16); color:#fff; font-size:1.8rem; line-height:1; cursor:pointer; display:flex; align-items:center; justify-content:center; }
  .product-details-page .zoom-nav.prev { left:1.4rem; }
  .product-details-page .zoom-nav.next { right:1.4rem; }
  .product-details-page .related { background:var(--cream); padding:4.2rem 5rem 5rem; }
  .product-details-page .related-head { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:2rem; }
  .product-details-page .related-title { font-family:'Cormorant Garamond',serif; font-size:2.1rem; font-weight:400; color:var(--deep); }
  .product-details-page .related-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.4rem; }
  .product-details-page .related .prod-card { text-decoration:none; color:inherit; }
  .product-details-page .related .prod-img { aspect-ratio:2.2/3; overflow:hidden; background:#ede5d8; margin-bottom:0.8rem; }
  .product-details-page .related .prod-img img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .4s ease; }
  .product-details-page .related .prod-card:hover .prod-img img { transform:scale(1.04); }
  .product-details-page .related .prod-name { font-family:'Cormorant Garamond',serif; font-size:1.32rem; font-weight:700; color:var(--deep); margin-bottom:0.2rem; }
  .product-details-page .related .prod-fabric { font-size:0.75rem; color:var(--muted); }
  .product-details-page .related .prod-price { margin-top:0.4rem; font-size:0.95rem; font-weight:500; color:var(--deep); }
  .product-details-page .related-grid .prod-card.reveal:nth-child(1) { transition-delay:0.08s; }
  .product-details-page .related-grid .prod-card.reveal:nth-child(2) { transition-delay:0.12s; }
  .product-details-page .related-grid .prod-card.reveal:nth-child(3) { transition-delay:0.16s; }
  .product-details-page .related-grid .prod-card.reveal:nth-child(4) { transition-delay:0.2s; }

  .category-page .cat-page { margin-top:80px; padding:2rem 5rem 4rem; }
  .category-page .cat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.4rem; margin-top:1.5rem; }
  .category-page .cat-card { text-decoration:none; color:inherit; position:static; overflow:visible; aspect-ratio:auto; cursor:pointer; }
  .category-page .cat-card img { width:100%; aspect-ratio:2.2/3; object-fit:cover; display:block; background:#ede5d8; transition:transform 0.45s ease; }
  .category-page .cat-name { font-family:'Cormorant Garamond',serif; font-size:1.15rem; margin-top:0.6rem; color:var(--deep); }
  .category-page .cat-meta { font-size:0.75rem; color:var(--muted); }
  .category-page .cat-page > .section-tag { animation:fadeUp 0.75s ease both; animation-delay:0.05s; }
  .category-page .cat-page > .section-title { animation:fadeUp 0.75s ease both; animation-delay:0.1s; }
  .category-page .cat-grid .cat-card { animation:fadeUp 0.75s ease both; }
  .category-page .cat-grid .cat-card:nth-child(1) { animation-delay:0.12s; }
  .category-page .cat-grid .cat-card:nth-child(2) { animation-delay:0.16s; }
  .category-page .cat-grid .cat-card:nth-child(3) { animation-delay:0.2s; }
  .category-page .cat-grid .cat-card:nth-child(4) { animation-delay:0.24s; }
  .category-page .cat-card:hover img { transform:scale(1.03); }

  .size-guide-page .guide { margin-top:80px; padding:2rem 5rem 4rem; }
  .size-guide-page .table { width:100%; border-collapse:collapse; margin-top:1.5rem; background:white; }
  .size-guide-page .table th, .size-guide-page .table td { border:1px solid var(--border); padding:0.8rem; text-align:left; font-size:0.82rem; }
  .size-guide-page .table th { letter-spacing:0.1em; text-transform:uppercase; font-size:0.72rem; color:var(--muted); }
  .size-guide-page .guide > .section-tag { animation:fadeUp 0.75s ease both; animation-delay:0.05s; }
  .size-guide-page .guide > .section-title { animation:fadeUp 0.75s ease both; animation-delay:0.1s; }
  .size-guide-page .table { animation:fadeUp 0.75s ease both; animation-delay:0.16s; }

  .wishlist-page .breadcrumb, .cart-page .breadcrumb, .checkout-page .breadcrumb, .account-page .breadcrumb { margin-top:80px; padding:1rem 5rem; background:#fff; border-bottom:1px solid var(--border); font-size:0.76rem; font-weight:500; color:var(--muted); letter-spacing:0.08em; }
  .wishlist-page .breadcrumb a { color:var(--muted); text-decoration:none; transition:color 0.2s; }
  .wishlist-page .breadcrumb a:hover { color:var(--gold); }
  .wishlist-page .breadcrumb-sep { color:rgba(184,136,46,0.35); }
  .wishlist-page .breadcrumb-current { color:var(--text); }
  .wishlist-page .breadcrumb { animation:fadeUp 0.65s ease both; }
  .wishlist-page .page { padding:2rem 5rem 5rem; }
  .wishlist-page .page-title { font-family:'Cormorant Garamond',serif; font-size:2.4rem; font-weight:500; margin-bottom:1.4rem; animation:fadeUp 0.75s ease both; animation-delay:0.06s; }
  .wishlist-page .grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem; }
  .wishlist-page .grid .card { animation:fadeUp 0.75s ease both; }
  .wishlist-page .grid .card:nth-child(1) { animation-delay:0.1s; }
  .wishlist-page .grid .card:nth-child(2) { animation-delay:0.14s; }
  .wishlist-page .grid .card:nth-child(3) { animation-delay:0.18s; }
  .wishlist-page .grid .card:nth-child(4) { animation-delay:0.22s; }
  .wishlist-page .card { background:#fff; border:1px solid var(--border); padding:1rem; transition:box-shadow 0.3s ease, transform 0.35s ease; }
  .wishlist-page .card:hover { box-shadow:0 12px 32px rgba(26,18,8,0.08); transform:translateY(-3px); }
  .wishlist-page .card img { width:100%; aspect-ratio:2.2/3; object-fit:cover; display:block; background:#ede5d8; }
  .wishlist-page .name { font-family:'Cormorant Garamond',serif; font-size:1.2rem; font-weight:500; margin:0.8rem 0 0.2rem; }
  .wishlist-page .meta { font-size:0.78rem; font-weight:500; color:var(--muted); }
  .wishlist-page .price { font-size:0.95rem; font-weight:500; margin:0.45rem 0 0.9rem; }
  .wishlist-page .row { display:grid; grid-template-columns:1fr 1fr; gap:0.6rem; }

  .wishlist-page .btn, .cart-page .btn, .checkout-page .btn, .account-page .btn { border:none; padding:0.75rem 0.8rem; font-size:0.72rem; letter-spacing:0.12em; text-transform:uppercase; font-family:'Jost',sans-serif; cursor:pointer; text-decoration:none; text-align:center; }
  .wishlist-page .btn-main, .cart-page .btn-main { background:var(--deep); color:var(--cream); }
  .wishlist-page .btn-sub, .cart-page .btn-sub { background:transparent; border:1px solid rgba(184,136,46,0.35); color:var(--text); }
  .wishlist-page .btn-remove { width:100%; margin-top:0.45rem; font-size:0.68rem; font-weight:500; letter-spacing:0.1em; padding:0.55rem 0.6rem; }
  .wishlist-page .btn-remove:hover { border-color:var(--maroon); color:var(--maroon); }

  .cart-page .wrap, .checkout-page .wrap { padding:2rem 5rem 5rem; display:grid; grid-template-columns:1.6fr 1fr; gap:1.5rem; }
  .cart-page .list, .cart-page .summary, .checkout-page .panel { background:#fff; border:1px solid var(--border); }
  .cart-page .list { padding:1rem; }
  .cart-page .item { display:grid; grid-template-columns:110px 1fr auto; gap:1rem; padding:1rem 0; border-bottom:1px solid var(--border); }
  .cart-page .item:last-child { border-bottom:none; }
  .cart-page .item img { width:100%; aspect-ratio:2.2/3; object-fit:cover; background:#ede5d8; }
  .cart-page .name { font-family:'Cormorant Garamond',serif; font-size:1.2rem; }
  .cart-page .meta { font-size:0.78rem; font-weight:500; color:var(--muted); margin:0.3rem 0; }
  .cart-page .price { font-weight:500; }
  .cart-page .item-actions { display:flex; flex-direction:column; gap:0.45rem; align-items:stretch; min-width:180px; }
  .cart-page .qty-control { display:inline-flex; align-items:center; border:1px solid rgba(184,136,46,0.35); margin:0.2rem 0 0.5rem; }
  .cart-page .qty-btn { width:30px; height:30px; border:none; background:transparent; color:var(--text); cursor:pointer; font-size:1rem; }
  .cart-page .qty-value { width:34px; text-align:center; font-size:0.8rem; }
  .cart-page .summary { padding:1rem 1.2rem; height:max-content; }
  .cart-page .summary h2, .checkout-page h2 { font-family:'Cormorant Garamond',serif; font-size:1.6rem; margin-bottom:1rem; font-weight:500; }
  .cart-page .line, .checkout-page .line { display:flex; justify-content:space-between; font-size:0.85rem; padding:0.45rem 0; }
  .cart-page .total, .checkout-page .total { border-top:1px solid var(--border); margin-top:0.5rem; padding-top:0.6rem; font-weight:500; }
  .cart-page .btn { display:block; }
  .cart-page .btn-main { margin-top:1rem; }
  .cart-page .btn-sub { margin-top:0.6rem; }
  .cart-page .btn-small { font-size:0.68rem; font-weight:500; letter-spacing:0.1em; padding:0.55rem 0.65rem; margin-top:0; }
  .cart-page .btn-remove:hover { border-color:var(--maroon); color:var(--maroon); }

  .checkout-page .panel { padding:1rem 1.2rem; }
  .checkout-page h1 { font-family:'Cormorant Garamond',serif; font-size:2rem; font-weight:500; margin-bottom:1rem; }
  .checkout-page h2 { font-size: 1.4rem; margin: 0 0 0.8rem; font-weight: 700; }
  .checkout-page .grid { display:grid; grid-template-columns:1fr 1fr; gap:0.8rem; }
  .checkout-page input, .checkout-page select, .account-page input { width:100%; border:1px solid rgba(184,136,46,0.35); padding:0.65rem 0.75rem; font-family:'Jost',sans-serif; font-size:0.82rem; }
  .checkout-page .full { grid-column:1/-1; }
  .checkout-page .btn { display:block; width:100%; padding:0.9rem 1rem; background:var(--deep); color:var(--cream); margin-top:1rem; }

  /* ── Account / Login-Register page ── */
  .account-page .breadcrumb a { color:var(--muted); text-decoration:none; transition:color 0.2s; }
  .account-page .breadcrumb a:hover { color:var(--gold); }
  .account-page .breadcrumb-sep { color:rgba(184,136,46,0.35); }
  .account-page .breadcrumb-current { color:var(--text); }

  .account-page .wrap { padding:0; display:grid; grid-template-columns:1fr 1fr; min-height:calc(100vh - 80px); }

  /* ── Benefits Panel ── */
  .account-page .card-benefits {
    background:linear-gradient(160deg, #1A1208 0%, #2C1F0E 60%, #3D2B14 100%);
    padding:6rem 3rem 3rem;
    display:flex; flex-direction:column; justify-content:space-between;
    position:relative; overflow:hidden;
  }
  .account-page .card-benefits::before {
    content:''; position:absolute; top:-80px; right:-80px;
    width:320px; height:320px; border-radius:50%;
    background:radial-gradient(circle, rgba(184,136,46,0.1) 0%, transparent 65%);
  }
  .account-page .card-benefits::after {
    content:''; position:absolute; bottom:-60px; left:-60px;
    width:220px; height:220px; border-radius:50%;
    background:radial-gradient(circle, rgba(184,136,46,0.07) 0%, transparent 65%);
  }
  .account-page .benefits-inner { position:relative; z-index:1; }
  .account-page .benefits-brand {
    font-family:'Cormorant Garamond',serif; font-size:1.6rem; font-weight:500;
    color:#FAF7F2; margin-bottom:0.4rem; letter-spacing:0.02em;
  }
  .account-page .benefits-brand span { color:var(--gold); }
  .account-page .benefits-tagline {
    font-size:0.68rem; font-weight:500; letter-spacing:0.2em; text-transform:uppercase;
    color:rgba(184,136,46,0.7); margin-bottom:2.4rem;
  }
  .account-page .benefits-divider { width:36px; height:1px; background:var(--gold); opacity:0.45; margin-bottom:2rem; }
  .account-page h1 {
    font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,3.5vw,2.8rem);
    font-weight:500; line-height:1.2; color:#FAF7F2; margin-bottom:0.8rem;
  }
  .account-page .benefit-copy { font-size:0.88rem; font-weight:400; line-height:1.85; color:rgba(250,247,242,0.84); max-width:380px; }
  .account-page .benefits-list { margin-top:2rem; list-style:none; display:flex; flex-direction:column; gap:1rem; }
  .account-page .benefits-list li {
    display:flex; align-items:flex-start; gap:0.75rem;
    font-size:0.86rem; font-weight:400; color:rgba(250,247,242,0.92); line-height:1.6;
  }
  .account-page .benefits-list li::before {
    content:""; display:inline-block; width:16px; height:16px; flex-shrink:0; margin-top:1px;
    background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23B8882E' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
    background-repeat:no-repeat; background-size:contain;
  }
  .account-page .benefits-footer { position:relative; z-index:1; margin-top:3rem; }
  .account-page .benefits-quote {
    font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.05rem; font-weight:400;
    color:rgba(250,247,242,0.72); line-height:1.65; border-left:2px solid rgba(184,136,46,0.35);
    padding-left:1rem;
  }

  /* ── Auth Card ── */
  .account-page .card-auth {
    background:#FAF7F2; padding:6rem 3rem 3.5rem;
    display:flex; flex-direction:column; justify-content:center;
    border-left:1px solid rgba(184,136,46,0.12);
  }
  .account-page .auth-head { margin-bottom:2rem; }
  .account-page .auth-head-tag {
    font-size:0.68rem; font-weight:500; letter-spacing:0.2em; text-transform:uppercase;
    color:var(--gold); margin-bottom:0.5rem;
  }
  .account-page .auth-head h2 {
    font-family:'Cormorant Garamond',serif; font-size:1.8rem; font-weight:500;
    color:var(--deep); margin:0;
  }
  .account-page .auth-divider { width:28px; height:1px; background:var(--gold); opacity:0.45; margin:0.7rem 0; }

  /* Tabs */
  .account-page .tabs {
    display:flex; border-bottom:1px solid var(--border); margin-bottom:1.8rem; gap:0;
  }
  .account-page .tab {
    flex:1; background:transparent; border:none; border-bottom:2px solid transparent;
    padding:0.8rem 0.5rem; font-size:0.7rem; font-weight:500; letter-spacing:0.15em; text-transform:uppercase;
    font-family:'Jost',sans-serif; cursor:pointer; color:var(--muted);
    transition:color 0.2s, border-color 0.2s; margin-bottom:-1px;
  }
  .account-page .tab:hover { color:var(--text); }
  .account-page .tab.active { color:var(--deep); border-bottom-color:var(--gold); font-weight:500; }
  .account-page .panel { display:none; }
  .account-page .panel.active { display:block; }

  /* Social buttons */
  .account-page .social-row { display:grid; grid-template-columns:1fr 1fr; gap:0.65rem; margin-bottom:1rem; }
  .account-page .social-btn {
    display:flex; align-items:center; justify-content:center; gap:0.55rem;
    border:1px solid var(--border); background:white; color:var(--text);
    padding:0.7rem 0.5rem; font-size:0.7rem; letter-spacing:0.08em; text-transform:uppercase;
    font-family:'Jost',sans-serif; cursor:pointer; transition:border-color 0.2s, background 0.2s;
  }
  .account-page .social-btn:hover { border-color:var(--gold); background:#FDFBF8; }
  .account-page .social-btn svg { flex-shrink:0; }

  /* Divider */
  .account-page .divider {
    display:flex; align-items:center; gap:0.7rem;
    font-size:0.68rem; font-weight:500; text-transform:uppercase; letter-spacing:0.14em; color:var(--muted); margin:1rem 0;
  }
  .account-page .divider::before, .account-page .divider::after { content:""; height:1px; background:var(--border); flex:1; }
  .account-page .divider span { white-space:nowrap; }

  /* Form fields */
  .account-page .field { display:flex; flex-direction:column; gap:0.3rem; margin-bottom:0.85rem; }
  .account-page .field label {
    font-size:0.68rem; font-weight:500; letter-spacing:0.12em; text-transform:uppercase; color:var(--muted);
  }
  .account-page .field-wrap { position:relative; }
  .account-page input {
    width:100%; border:1px solid var(--border); padding:0.72rem 0.9rem;
    font-family:'Jost',sans-serif; font-size:0.85rem; color:var(--deep);
    background:white; outline:none; transition:border-color 0.2s; box-sizing:border-box;
  }
  .account-page input::placeholder { color:#C0AE97; }
  .account-page input:focus { border-color:var(--gold); }
  .account-page .pw-toggle {
    position:absolute; right:0.8rem; top:50%; transform:translateY(-50%);
    background:none; border:none; cursor:pointer; color:var(--muted); padding:0;
    display:flex; align-items:center; transition:color 0.2s;
  }
  .account-page .pw-toggle:hover { color:var(--gold); }

  /* Helper row */
  .account-page .helper-row { display:flex; align-items:center; justify-content:space-between; gap:0.5rem; margin:-0.2rem 0 1rem; }
  .account-page .helper-row a { font-size:0.72rem; color:var(--gold); text-decoration:none; transition:opacity 0.2s; }
  .account-page .helper-row a:hover { opacity:0.75; }
  .account-page .check { display:flex; align-items:flex-start; gap:0.45rem; font-size:0.74rem; font-weight:500; color:var(--muted); line-height:1.55; margin-bottom:1rem; }
  .account-page .check input { margin:0.15rem 0 0; width:auto; accent-color:var(--gold); flex-shrink:0; }
  .account-page .check a { color:var(--gold); text-decoration:none; }

  /* Submit button */
  .account-page .btn {
    width:100%; background:var(--deep); color:var(--cream); border:none;
    padding:0.9rem 1rem; font-family:'Jost',sans-serif; font-size:0.74rem;
    letter-spacing:0.16em; text-transform:uppercase; cursor:pointer; transition:background 0.25s;
  }
  .account-page .btn:hover { background:var(--maroon); }

  /* Sign-in link at bottom of register panel */
  .account-page .switch-prompt {
    margin-top:1rem; font-size:0.78rem; font-weight:500; color:var(--muted); text-align:center;
  }
  .account-page .switch-prompt button {
    background:none; border:none; color:var(--gold); font-family:'Jost',sans-serif;
    font-size:0.75rem; cursor:pointer; text-decoration:underline; padding:0;
  }

  .cart-page .breadcrumb, .checkout-page .breadcrumb { animation:fadeUp 0.65s ease both; }
  .cart-page .wrap > .list, .cart-page .wrap > .summary { animation:fadeUp 0.75s ease both; }
  .cart-page .wrap > .list { animation-delay:0.08s; }
  .cart-page .wrap > .summary { animation-delay:0.14s; }
  .checkout-page .wrap > .panel { animation:fadeUp 0.75s ease both; }
  .checkout-page .wrap > section.panel { animation-delay:0.08s; }
  .checkout-page .wrap > aside.panel { animation-delay:0.14s; }
  .account-page .breadcrumb { animation:fadeUp 0.65s ease both; }
  .account-page .wrap > .card { animation:fadeUp 0.75s ease both; }
  .account-page .wrap > .card:nth-child(1) { animation-delay:0.08s; }
  .account-page .wrap > .card:nth-child(2) { animation-delay:0.14s; }

  /* ── Account page — minimal auth bar (replaces full nav/footer) ── */
  .auth-bar {
    position: fixed;
    top: 0; left: 0; right: 0;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 2rem;
    background: var(--cream);
    border-bottom: 1px solid rgba(184,136,46,0.15);
    z-index: 100;
  }
  .auth-bar-back {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    font-family: 'Jost', sans-serif;
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--deep);
    opacity: 0.7;
    text-decoration: none;
    transition: opacity 0.2s;
    min-width: 80px;
  }
  .auth-bar-back svg { width: 16px; height: 16px; stroke-width: 2.5; }
  .auth-bar-back:hover { opacity: 1; }
  .auth-bar-logo {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.8rem;
    font-weight: 500;
    color: var(--deep);
    text-decoration: none;
    letter-spacing: 0.03em;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
  .auth-bar-logo span { color: var(--gold); }
  .auth-bar-spacer { min-width: 80px; }
  html.account-page body { padding-top: 60px; }
  .account-page .wrap { min-height: calc(100vh - 60px); }

  /* ── Our Story page ── */
  .our-story-page .breadcrumb {
    margin-top:80px; padding:1rem 5rem; display:flex; align-items:center; gap:0.6rem;
    font-size:0.76rem; font-weight:500; letter-spacing:0.08em; color:var(--muted);
    border-bottom:1px solid var(--border); background:white;
  }
  .our-story-page .breadcrumb a { color:var(--muted); text-decoration:none; transition:color 0.2s; }
  .our-story-page .breadcrumb a:hover { color:var(--gold); }
  .our-story-page .breadcrumb-sep { color:rgba(184,136,46,0.35); }
  .our-story-page .breadcrumb-current { color:var(--text); }

  /* Hero */
  .our-story-page .story-hero {
    display:grid; grid-template-columns:1.1fr 1fr; min-height:min(82vh, 760px);
    background:var(--cream); position:relative; overflow:hidden;
  }
  .our-story-page .story-hero-img { position:relative; min-height:360px; animation:fadeIn 1s ease both; }
  .our-story-page .story-hero-img img { width:100%; height:100%; object-fit:cover; display:block; }
  .our-story-page .story-hero-img::after {
    content:''; position:absolute; inset:0;
    background:linear-gradient(to right, transparent 60%, rgba(250,247,242,0.15));
  }
  .our-story-page .story-hero-copy {
    display:flex; flex-direction:column; justify-content:center;
    padding:3.5rem 4rem 3.5rem 3.2rem;
    border-left:1px solid var(--border); background:white; position:relative;
  }
  .our-story-page .story-hero-title {
    font-family:'Cormorant Garamond',serif; font-size:clamp(2.2rem, 3.5vw, 3.4rem);
    font-weight:500; line-height:1.12; color:var(--deep); margin-top:1.6rem;
  }
  .our-story-page .story-hero-title em { font-style:italic; color:var(--gold); }
  .our-story-page .story-hero-lead { margin-top:1.3rem; font-size:0.92rem; font-weight:400; line-height:1.85; color:var(--muted); max-width:34rem; }
  .our-story-page .story-hero-copy .btn-primary { margin-top:2rem; align-self:flex-start; }

  /* Stats strip */
  .our-story-page .story-stats {
    background:var(--deep); display:grid; grid-template-columns:repeat(4,1fr);
    border-top:1px solid rgba(184,136,46,0.2);
  }
  .our-story-page .story-stat {
    padding:1.6rem 2rem; border-right:1px solid rgba(184,136,46,0.15); text-align:center;
  }
  .our-story-page .story-stat:last-child { border-right:none; }
  .our-story-page .story-stat-num {
    font-family:'Cormorant Garamond',serif; font-size:2.2rem; font-weight:400;
    color:#FAF7F2; line-height:1; margin-bottom:0.3rem;
  }
  .our-story-page .story-stat-num span { color:var(--gold); }
  .our-story-page .story-stat-label {
    font-size:0.68rem; font-weight:600; letter-spacing:0.15em; text-transform:uppercase;
    color:rgba(250,247,242,0.72);
  }

  /* Sections */
  .our-story-page .story-main { background:var(--cream); }
  .our-story-page .story-section { padding:4.5rem 5rem; }
  .our-story-page .story-section-inner { max-width:740px; margin:0 auto; }
  .our-story-page .story-section-light { background:white; border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
  .our-story-page .story-prose { margin-top:1.1rem; font-size:0.92rem; font-weight:400; line-height:1.9; color:var(--muted); }
  .our-story-page .story-prose + .story-prose { margin-top:1rem; }

  /* Pillars */
  .our-story-page .story-pillars { background:var(--cream); }
  .our-story-page .story-pillar-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:1px; margin-top:2.5rem; background:var(--border); border:1px solid var(--border); }
  .our-story-page .story-pillar { background:white; padding:1.6rem 1.4rem; position:relative; border-top:3px solid transparent; transition:border-color 0.25s, box-shadow 0.25s; }
  .our-story-page .story-pillar:hover { border-top-color:var(--gold); box-shadow:0 6px 24px rgba(26,18,8,0.07); }
  .our-story-page .story-pillar-num {
    font-family:'Cormorant Garamond',serif; font-size:2.2rem; font-weight:400;
    color:rgba(184,136,46,0.32); line-height:1; margin-bottom:0.9rem;
  }
  .our-story-page .story-pillar h3 {
    font-family:'Cormorant Garamond',serif; font-size:1.2rem; font-weight:500; color:var(--deep); margin-bottom:0.6rem;
  }
  .our-story-page .story-pillar p { font-size:0.84rem; font-weight:400; line-height:1.75; color:var(--muted); }

  /* Quote block */
  .our-story-page .story-quote-block {
    background:linear-gradient(135deg, #1A1208, #2C1F0E 60%, #3D2B14);
    padding:5rem 5rem; position:relative; overflow:hidden;
  }
  .our-story-page .story-quote-block::before {
    content:'\201C'; font-family:'Cormorant Garamond',serif; font-size:18rem; font-weight:300; line-height:1;
    color:rgba(184,136,46,0.07); position:absolute; top:-3rem; left:3rem; pointer-events:none;
  }
  .our-story-page .story-blockquote { max-width:680px; margin:0 auto; text-align:center; border:none; position:relative; z-index:1; }
  .our-story-page .story-blockquote p {
    font-family:'Cormorant Garamond',serif; font-size:clamp(1.5rem, 2.5vw, 2rem); font-style:italic; color:#FAF7F2; line-height:1.6;
  }
  .our-story-page .story-quote-divider { width:36px; height:1px; background:var(--gold); opacity:0.4; margin:1.4rem auto; }
  .our-story-page .story-blockquote cite { display:block; font-size:0.72rem; font-weight:500; letter-spacing:0.18em; text-transform:uppercase; color:rgba(250,247,242,0.68); font-style:normal; }

  /* Split section — How we choose */
  .our-story-page .story-split {
    max-width:1040px; margin:0 auto; display:grid; grid-template-columns:1fr 0.85fr; gap:3.5rem; align-items:center;
  }
  .our-story-page .story-steps { margin-top:1.6rem; list-style:none; padding:0; display:flex; flex-direction:column; gap:1.1rem; }
  .our-story-page .story-steps li {
    display:flex; gap:1.1rem; align-items:flex-start;
    font-size:0.9rem; font-weight:400; line-height:1.75; color:var(--muted);
  }
  .our-story-page .story-step-num {
        flex-shrink: 0;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px solid rgb(184 136 46 / 46%);
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Cormorant Garamond', serif;
    font-size: 1rem;
    line-height: 1;
    color: var(--gold);
    margin-top: 1px;
    font-weight: 600;
  }
  .our-story-page .story-steps strong { color:var(--deep); display:block; font-size:0.92rem; letter-spacing:0.04em; margin-bottom:0.2rem; }
  .our-story-page .story-split-img { aspect-ratio:4/5; overflow:hidden; border:1px solid var(--border); }
  .our-story-page .story-split-img img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.6s ease; }
  .our-story-page .story-split-img:hover img { transform:scale(1.03); }

  /* CTA */
  .our-story-page .story-cta {
    background:linear-gradient(135deg, #1A1208, #2C1F0E);
    padding:5rem 5rem; text-align:center; position:relative; overflow:hidden;
  }
  .our-story-page .story-cta::before {
    content:''; position:absolute; top:-80px; right:-80px;
    width:300px; height:300px; border-radius:50%;
    background:radial-gradient(circle, rgba(184,136,46,0.1) 0%, transparent 65%);
  }
  .our-story-page .story-cta-inner { max-width:560px; margin:0 auto; position:relative; z-index:1; }
  .our-story-page .story-cta-tag {
    font-size:0.68rem; font-weight:500; letter-spacing:0.22em; text-transform:uppercase;
    color:var(--gold); margin-bottom:1rem;
  }
  .our-story-page .story-cta .section-title { color:#FAF7F2; font-weight:500; }
  .our-story-page .story-cta-divider { width:32px; height:1px; background:var(--gold); opacity:0.4; margin:1rem auto; }
  .our-story-page .story-cta-text { margin-top:0.6rem; font-size:0.92rem; font-weight:400; color:rgba(250,247,242,0.82); line-height:1.85; }
  .our-story-page .story-cta-btns { margin-top:2rem; display:flex; flex-wrap:wrap; gap:0.8rem; justify-content:center; align-items:center; }
  .our-story-page .story-cta-btns .btn-primary { background:#FAF7F2; color:var(--deep); }
  .our-story-page .story-cta-btns .btn-primary:hover { background:var(--gold); color:white; }
  .our-story-page .story-cta-btns .btn-outline { color:rgb(250 247 242 / 76%); border-bottom-color:rgba(184,136,46,0.5); }
  .our-story-page .story-cta-btns .btn-outline:hover { color:var(--gold); }

  .policy-page .breadcrumb, .contact-page .breadcrumb {
    margin-top:80px; padding:1rem 5rem; display:flex; align-items:center; gap:0.6rem;
    font-size:0.76rem; font-weight:500; letter-spacing:0.08em; color:var(--muted); border-bottom:1px solid var(--border); background:white;
  }
  .policy-page .breadcrumb a, .contact-page .breadcrumb a { color:var(--muted); text-decoration:none; transition:color 0.2s; }
  .policy-page .breadcrumb a:hover, .contact-page .breadcrumb a:hover { color:var(--gold); }
  .policy-page .breadcrumb-sep, .contact-page .breadcrumb-sep { color:rgba(184,136,46,0.35); }
  .policy-page .breadcrumb-current, .contact-page .breadcrumb-current { color:var(--text); }

  .policy-page .policy-hero {
    background:linear-gradient(135deg, #1A1208 0%, #2C1F0E 60%, #3D2B14 100%);
    padding:7rem 5rem 2.5rem; position:relative; overflow:hidden;
  }
  .policy-page .policy-hero::before {
    content:''; position:absolute; top:-60px; right:-60px; width:300px; height:300px; border-radius:50%;
    background:radial-gradient(circle, rgba(184,136,46,0.1) 0%, transparent 65%);
  }
  .policy-page .policy-hero-inner { position:relative; z-index:1; max-width:640px; }
  .policy-page .policy-hero-tag { font-size:0.7rem; font-weight:500; letter-spacing:0.2em; text-transform:uppercase; color:var(--gold); margin-bottom:1rem; }
  .policy-page .policy-hero h1 { font-family:'Cormorant Garamond',serif; font-size:clamp(2.2rem,4.5vw,3.2rem); font-weight:500; color:#FAF7F2; margin:0 0 1rem; line-height:1.2; }
  .policy-page .policy-hero p { font-weight:400; color:rgba(250,247,242,0.82); line-height:1.85; }
  .policy-page .policy-hero-divider { width:40px; height:1px; background:var(--gold); opacity:0.55; margin:1.2rem 0; }
  .policy-page .policy-tab-nav { background:white; border-bottom:1px solid var(--border); display:flex; overflow-x:auto; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
  .policy-page .policy-tab-nav::-webkit-scrollbar { display:none; }
  .policy-page .policy-tab-btn {
    flex-shrink:0; font-size:0.75rem; font-weight:500; letter-spacing:0.12em; text-transform:uppercase; color:var(--muted);
    padding:1rem 1.6rem; border:none; border-bottom:2px solid transparent; background:none; cursor:pointer; transition:color 0.2s,border-color 0.2s; white-space:nowrap;
  }
  .policy-page .policy-tab-btn:hover { color:var(--text); }
  .policy-page .policy-tab-btn.active { color:var(--gold); border-bottom-color:var(--gold); }
  .policy-page .policy-body { min-height:60vh; background:var(--cream); }
  .policy-page .policy-content { padding:3rem 4rem 4rem; }
  .policy-page .policy-section-block { display:none; }
  .policy-page .policy-section-block.active { display:block; }
  .policy-page .pol-header { margin-bottom:2rem; }
  .policy-page .pol-header-tag { font-size:0.68rem; font-weight:500; letter-spacing:0.2em; text-transform:uppercase; color:var(--gold); margin-bottom:0.6rem; }
  .policy-page .pol-header h2 { font-family:'Cormorant Garamond',serif; font-size:2.1rem; font-weight:500; color:var(--deep); margin:0 0 0.6rem; }
  .policy-page .pol-header-divider { width:36px; height:1px; background:var(--gold); opacity:0.45; margin:0.8rem 0 1rem; }
  .policy-page .pol-header p { font-size:0.9rem; font-weight:400; color:var(--muted); line-height:1.85; max-width:600px; }
  .policy-page .pol-updated { font-size:0.8rem; font-weight:500; color:rgba(122,106,85,0.72); margin-top:0.5rem; }
  .policy-page .pol-body { display:flex; flex-direction:column; gap:1.8rem; }
  .policy-page .pol-card { background:white; border:1px solid var(--border); padding:1.6rem 1.8rem; }
  .policy-page .pol-card h3 { font-family:'Cormorant Garamond',serif; font-size:1.25rem; font-weight:500; color:var(--deep); margin:0 0 0.8rem; }
  .policy-page .pol-card p, .policy-page .pol-card li { font-size:0.88rem; font-weight:400; color:var(--muted); line-height:1.85; }
  .policy-page .pol-card ul, .policy-page .pol-card ol { margin:0.5rem 0 0 1.1rem; display:flex; flex-direction:column; gap:0.3rem; }
  .policy-page .pol-card li::marker { color:var(--gold); }
  .policy-page .pol-card p + p { margin-top:0.6rem; }
  .policy-page .pol-highlight {
    background:linear-gradient(135deg, rgba(184,136,46,0.08), rgba(184,136,46,0.04));
    border:1px solid rgba(184,136,46,0.25); border-left:3px solid var(--gold); padding:1rem 1.4rem; font-size:0.84rem; color:var(--text); line-height:1.7; margin-top:0.5rem;
  }
  .policy-page .pol-steps { display:flex; flex-direction:column; gap:0.9rem; }
  .policy-page .pol-step { display:flex; gap:1rem; align-items:flex-start; }
  .policy-page .pol-step-num {
    width:28px; height:28px; border-radius:50%; border:1px solid var(--border); background:white; display:flex; align-items:center; justify-content:center;
    font-size:0.72rem; font-weight:500; color:var(--gold); flex-shrink:0;
  }
  .policy-page .pol-step-text { font-size:0.84rem; color:var(--muted); line-height:1.7; padding-top:3px; }
  .policy-page .pol-grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
  .policy-page .care-chip { background:var(--cream); border:1px solid var(--border); padding:1rem 1.2rem; display:flex; align-items:flex-start; gap:0.8rem; }
  .policy-page .care-chip-icon { font-size:1.2rem; line-height:1; flex-shrink:0; margin-top:1px; }
  .policy-page .care-chip h4 { font-size:0.78rem; font-weight:500; color:var(--text); margin:0 0 0.25rem; }
  .policy-page .care-chip p { font-size:0.78rem; color:var(--muted); line-height:1.6; margin:0; }
  .policy-page .pol-cta { background:var(--deep); padding:1.8rem; display:flex; align-items:center; justify-content:space-between; gap:1.5rem; flex-wrap:wrap; }
  .policy-page .pol-cta p { font-size:0.84rem; color:rgba(250,247,242,0.7); line-height:1.65; margin:0; }
  .policy-page .pol-cta strong { color:#FAF7F2; }
  .policy-page .pol-cta-btn {
    flex-shrink:0; font-size:0.74rem; font-weight:500; letter-spacing:0.14em; text-transform:uppercase; color:var(--deep); background:#FAF7F2; padding:0.7rem 1.4rem; text-decoration:none; transition:background 0.2s; white-space:nowrap;
  }
  .policy-page .pol-cta-btn:hover { background:var(--gold); color:white; }

  .contact-page .contact-hero {
    background:linear-gradient(135deg, #1A1208 0%, #2C1F0E 50%, #3D2B14 100%);
    padding:4rem 5rem 3rem; position:relative; overflow:hidden;
  }
  .contact-page .contact-hero::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at 70% 50%, rgba(184,136,46,0.12) 0%, transparent 65%); }
  .contact-page .contact-hero-inner { max-width:680px; position:relative; z-index:1; }
  .contact-page .contact-hero-tag { font-size:0.72rem; font-weight:500; letter-spacing:0.2em; text-transform:uppercase; color:var(--gold); margin-bottom:1rem; }
  .contact-page .contact-hero h1 { font-family:'Cormorant Garamond',serif; font-size:clamp(2.4rem,5vw,3.6rem); font-weight:500; color:#FAF7F2; line-height:1.15; margin:0 0 1.2rem; }
  .contact-page .contact-hero p { font-weight:400; color:rgba(250,247,242,0.84); line-height:1.85; max-width:520px; }
  .contact-page .contact-hero-divider { width:48px; height:1px; background:var(--gold); margin:1.4rem 0; opacity:0.6; }
  .contact-page .contact-info-strip { background:white; display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid var(--border); }
  .contact-page .contact-info-item { display:flex; align-items:flex-start; gap:1rem; padding:2rem 2.5rem; border-right:1px solid var(--border); transition:background 0.2s; }
  .contact-page .contact-info-item:last-child { border-right:none; }
  .contact-page .contact-info-item:hover { background:#FDFBF8; }
  .contact-page .contact-info-icon { width:44px; height:44px; border-radius:50%; background:linear-gradient(135deg, rgba(184,136,46,0.1), rgba(184,136,46,0.06)); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .contact-page .contact-info-icon svg { color:var(--gold); }
  .contact-page .contact-info-label { font-size:0.68rem; font-weight:500; letter-spacing:0.15em; text-transform:uppercase; color:var(--muted); margin-bottom:0.3rem; }
  .contact-page .contact-info-value { font-size:0.88rem; color:var(--text); line-height:1.5; }
  .contact-page .contact-info-value a { color:var(--text); text-decoration:none; transition:color 0.2s; }
  .contact-page .contact-info-value a:hover { color:var(--gold); }
  .contact-page .contact-body { display:grid; grid-template-columns:1fr 420px; background:var(--cream); padding:3.5rem 5rem; gap:3rem; }
  .contact-page .contact-form-panel h2 { font-family:'Cormorant Garamond',serif; font-size:1.9rem; font-weight:400; color:var(--deep); margin:0 0 0.4rem; }
  .contact-page .contact-form-panel > p { font-size:0.85rem; color:var(--muted); line-height:1.7; margin-bottom:2rem; }
  .contact-page .form-divider { width:36px; height:1px; background:var(--gold); opacity:0.5; margin:0.7rem 0 1.6rem; }
  .contact-page .inquiry-form { display:flex; flex-direction:column; gap:1rem; }
  .contact-page .form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
  .contact-page .form-group { display:flex; flex-direction:column; gap:0.35rem; }
  .contact-page .form-group label { font-size:0.72rem; font-weight:500; letter-spacing:0.1em; text-transform:uppercase; color:var(--muted); }
  .contact-page .form-group input, .contact-page .form-group select, .contact-page .form-group textarea {
    font-family:'Jost',sans-serif; font-size:0.87rem; color:var(--deep); background:white; border:1px solid var(--border); padding:0.75rem 1rem; outline:none; transition:border-color 0.2s; appearance:none; -webkit-appearance:none;
  }
  .contact-page .form-group input::placeholder, .contact-page .form-group textarea::placeholder { color:#C0AE97; }
  .contact-page .form-group input:focus, .contact-page .form-group select:focus, .contact-page .form-group textarea:focus { border-color:var(--gold); }
  .contact-page .form-group textarea { resize:vertical; min-height:120px; }
  .contact-page .select-wrap { position:relative; }
  .contact-page .select-wrap::after { content:''; position:absolute; right:1rem; top:50%; transform:translateY(-50%); width:0; height:0; border-left:4px solid transparent; border-right:4px solid transparent; border-top:5px solid var(--muted); pointer-events:none; }
  .contact-page .form-submit { font-size:0.78rem; font-weight:500; letter-spacing:0.15em; text-transform:uppercase; color:white; background:var(--deep); border:none; padding:0.95rem 2.4rem; cursor:pointer; transition:background 0.2s; align-self:flex-start; margin-top:0.4rem; }
  .contact-page .form-submit:hover { background:var(--maroon); }
  .contact-page .contact-side-panel { display:flex; flex-direction:column; gap:1.5rem; }
  .contact-page .track-card { background:white; border:1px solid var(--border); padding:1.8rem; }
  .contact-page .track-card h3 { font-family:'Cormorant Garamond',serif; font-size:1.35rem; font-weight:400; color:var(--deep); margin:0 0 0.3rem; }
  .contact-page .track-card > p { font-size:0.82rem; color:var(--muted); line-height:1.65; margin-bottom:1.2rem; }
  .contact-page .track-form { display:flex; flex-direction:column; gap:0.75rem; }
  .contact-page .track-form input { font-size:0.84rem; color:var(--deep); background:var(--cream); border:1px solid var(--border); padding:0.7rem 0.9rem; outline:none; transition:border-color 0.2s; }
  .contact-page .track-form input::placeholder { color:#C0AE97; }
  .contact-page .track-form input:focus { border-color:var(--gold); background:white; }
  .contact-page .track-form button { font-size:0.75rem; font-weight:500; letter-spacing:0.14em; text-transform:uppercase; color:white; background:var(--deep); border:none; padding:0.8rem 1.2rem; cursor:pointer; transition:background 0.2s; }
  .contact-page .track-form button:hover { background:var(--maroon); }
  .contact-page .whatsapp-card { background:linear-gradient(135deg, #1A1208, #2C1F0E); padding:1.8rem; position:relative; overflow:hidden; }
  .contact-page .whatsapp-card::before { content:''; position:absolute; bottom:-30px; right:-30px; width:120px; height:120px; border-radius:50%; background:rgba(184,136,46,0.08); }
  .contact-page .whatsapp-card h3 { font-family:'Cormorant Garamond',serif; font-size:1.3rem; font-weight:400; color:#FAF7F2; margin:0 0 0.5rem; }
  .contact-page .whatsapp-card p { font-size:0.86rem; font-weight:400; color:rgba(250,247,242,0.82); line-height:1.75; margin-bottom:1.3rem; }
  .contact-page .whatsapp-btn { display:inline-flex; align-items:center; gap:0.6rem; font-size:0.76rem; font-weight:500; letter-spacing:0.14em; text-transform:uppercase; color:var(--deep); background:#FAF7F2; padding:0.75rem 1.3rem; text-decoration:none; transition:background 0.2s; }
  .contact-page .whatsapp-btn:hover { background:#25D366; color:white; }
  .contact-page .whatsapp-btn svg { color:#25D366; flex-shrink:0; }
  .contact-page .whatsapp-btn:hover svg { color:white; }
  .contact-page .faq-strip { background:white; border:1px solid var(--border); }
  .contact-page .faq-strip-head { padding:1.4rem 1.8rem 1rem; border-bottom:1px solid var(--border); }
  .contact-page .faq-strip-head h3 { font-family:'Cormorant Garamond',serif; font-size:1.2rem; font-weight:400; color:var(--deep); margin:0; }
  .contact-page .faq-item { border-bottom:1px solid var(--border); }
  .contact-page .faq-item:last-child { border-bottom:none; }
  .contact-page .faq-q { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1rem 1.8rem; cursor:pointer; font-size:0.84rem; color:var(--text); transition:color 0.2s; user-select:none; }
  .contact-page .faq-q:hover { color:var(--gold); }
  .contact-page .faq-q-icon { width:18px; height:18px; flex-shrink:0; transition:transform 0.25s; }
  .contact-page .faq-item.open .faq-q-icon { transform:rotate(45deg); }
  .contact-page .faq-a { display:none; padding:0 1.8rem 1rem; font-size:0.82rem; color:var(--muted); line-height:1.7; }
  .contact-page .faq-item.open .faq-a { display:block; }
  .contact-page .track-order-link {
    display:flex; align-items:center; gap:1rem; background:white; border:1px solid var(--border);
    padding:1.3rem 1.5rem; text-decoration:none; transition:border-color 0.2s, background 0.2s;
  }
  .contact-page .track-order-link:hover { border-color:var(--gold); background:#FDFBF8; }
  .contact-page .track-order-link-icon {
    width:44px; height:44px; border-radius:50%; border:1px solid var(--border);
    background:rgba(184,136,46,0.06); display:flex; align-items:center; justify-content:center; flex-shrink:0; color:var(--gold);
    transition:background 0.2s;
  }
  .contact-page .track-order-link:hover .track-order-link-icon { background:rgba(184,136,46,0.12); }
  .contact-page .track-order-link-title { font-size:0.87rem; font-weight:500; color:var(--text); margin:0 0 0.15rem; }
  .contact-page .track-order-link-sub { font-size:0.78rem; color:var(--gold); margin:0; }

  .track-page .breadcrumb {
    margin-top:80px; padding:0.85rem 5rem; background:white; border-bottom:1px solid var(--border);
    display:flex; align-items:center;
  }
  .track-page .breadcrumb a { font-size:0.78rem; font-weight:500; color:var(--muted); text-decoration:none; }
  .track-page .breadcrumb-sep { margin:0 0.5rem; color:rgba(184,136,46,0.4); }
  .track-page .breadcrumb-current { font-size:0.78rem; font-weight:500; color:var(--text); }
  .track-page .track-hero {
    background:linear-gradient(135deg, #1A1208 0%, #2C1F0E 55%, #3D2B14 100%);
    padding:5rem 5rem 4rem; text-align:center; position:relative; overflow:hidden;
  }
  .track-page .track-hero::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at 50% 80%, rgba(184,136,46,0.1) 0%, transparent 65%); }
  .track-page .track-hero-inner { position:relative; z-index:1; }
  .track-page .track-hero-icon {
    width:64px; height:64px; border-radius:50%; border:1px solid rgba(184,136,46,0.3); background:rgba(184,136,46,0.08);
    display:flex; align-items:center; justify-content:center; margin:0 auto 1.5rem;
  }
  .track-page .track-hero-icon svg { color:var(--gold); }
  .track-page .track-hero-tag { font-size:0.7rem; font-weight:500; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold); margin-bottom:0.9rem; }
  .track-page .track-hero h1 { font-family:'Cormorant Garamond',serif; font-size:clamp(2.2rem,5vw,3.4rem); font-weight:500; color:#FAF7F2; margin:0 0 1rem; line-height:1.2; }
  .track-page .track-hero p { font-weight:400; color:rgba(250,247,242,0.82); line-height:1.85; max-width:480px; margin:0 auto; }
  .track-page .track-hero-divider { width:36px; height:1px; background:var(--gold); opacity:0.5; margin:1.2rem auto; }
  .track-page .track-form-section { background:var(--cream); padding:3.5rem 5rem 2rem; display:flex; justify-content:center; }
  .track-page .track-form-card {
    background:white; border:1px solid var(--border); padding:2.4rem 2.6rem; width:100%; max-width:560px; box-shadow:0 4px 24px rgba(26,18,8,0.05);
  }
  .track-page .track-form-card h2 { font-family:'Cormorant Garamond',serif; font-size:1.65rem; font-weight:500; color:var(--deep); margin:0 0 0.3rem; }
  .track-page .track-form-card > p { font-size:0.88rem; font-weight:400; color:var(--muted); line-height:1.8; margin-bottom:1.8rem; }
  .track-page .tform-divider { width:32px; height:1px; background:var(--gold); opacity:0.4; margin:0.7rem 0 1.4rem; }
  .track-page .tform { display:flex; flex-direction:column; gap:1rem; }
  .track-page .tform-group { display:flex; flex-direction:column; gap:0.35rem; }
  .track-page .tform-group label { font-size:0.7rem; font-weight:500; letter-spacing:0.12em; text-transform:uppercase; color:var(--muted); }
  .track-page .tform-group input {
    font-size:0.88rem; color:var(--deep); background:var(--cream); border:1px solid var(--border); padding:0.82rem 1rem; outline:none; transition:border-color 0.2s, background 0.2s;
  }
  .track-page .tform-group input::placeholder { color:#C0AE97; }
  .track-page .tform-group input:focus { border-color:var(--gold); background:white; }
  .track-page .tform-hint { font-size:0.78rem; font-weight:500; color:rgba(122,106,85,0.72); margin-top:0.1rem; }
  .track-page .tform-submit {
    font-size:0.78rem; font-weight:500; letter-spacing:0.16em; text-transform:uppercase; color:white; background:var(--deep); border:none;
    padding:1rem 2rem; cursor:pointer; transition:background 0.25s; margin-top:0.4rem; display:flex; align-items:center; justify-content:center; gap:0.6rem;
  }
  .track-page .tform-submit:hover { background:var(--maroon); }
  .track-page .tform-submit svg { transition:transform 0.2s; }
  .track-page .tform-submit:hover svg { transform:translateX(3px); }
  .track-page .track-result { display:none; margin-top:1.5rem; border:1px solid var(--border); background:#FDFBF8; padding:1.4rem 1.6rem; }
  .track-page .track-result.visible { display:block; }
  .track-page .track-result-label { font-size:0.72rem; font-weight:600; letter-spacing:0.16em; text-transform:uppercase; color:var(--muted); margin-bottom:0.6rem; }
  .track-page .track-result-status { font-family:'Cormorant Garamond',serif; font-size:1.35rem; font-weight:500; color:var(--deep); margin-bottom:0.4rem; }
  .track-page .track-result-sub { font-size:0.86rem; font-weight:400; color:var(--muted); line-height:1.7; }
  .track-page .track-steps-section { background:var(--cream); padding:1rem 5rem 4rem; display:flex; justify-content:center; }
  .track-page .track-steps-inner { max-width:560px; width:100%; }
  .track-page .track-steps-inner h3 { font-family:'Cormorant Garamond',serif; font-size:1.35rem; font-weight:500; color:var(--deep); margin:0 0 1.4rem; }
  .track-page .track-steps-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--border); border:1px solid var(--border); }
  .track-page .track-step-box { background:white; padding:1.4rem 1.2rem; text-align:center; }
  .track-page .track-step-num { font-family:'Cormorant Garamond',serif; font-size:2rem; font-weight:400; color:rgba(184,136,46,0.48); line-height:1; margin-bottom:0.6rem; }
  .track-page .track-step-title { font-size:0.8rem; font-weight:500; color:var(--text); margin-bottom:0.35rem; }
  .track-page .track-step-desc { font-size:0.8rem; font-weight:400; color:var(--muted); line-height:1.65; }
  .track-page .track-help-strip {
    background:white; border-top:1px solid var(--border); border-bottom:1px solid var(--border); display:grid; grid-template-columns:1fr 1fr;
    max-width:560px; width:calc(100% - 10rem); margin:0 auto 3.5rem;
  }
  .track-page .track-help-item {
    padding:1.5rem 1.8rem; display:flex; align-items:center; gap:1rem; border-right:1px solid var(--border); text-decoration:none; transition:background 0.2s;
  }
  .track-page .track-help-item:last-child { border-right:none; }
  .track-page .track-help-item:hover { background:#FDFBF8; }
  .track-page .track-help-icon {
    width:40px; height:40px; border-radius:50%; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; flex-shrink:0; color:var(--gold);
  }
  .track-page .track-help-label { font-size:0.72rem; font-weight:500; letter-spacing:0.1em; text-transform:uppercase; color:var(--muted); margin-bottom:0.2rem; }
  .track-page .track-help-desc { font-size:0.8rem; color:var(--text); }
  .policy-page .breadcrumb, .policy-page .policy-hero-inner, .policy-page .policy-tab-nav { animation:fadeUp 0.7s ease both; }
  .policy-page .policy-hero-inner { animation-delay:0.08s; }
  .policy-page .policy-tab-nav { animation-delay:0.14s; }
  .policy-page .policy-section-block.active .pol-header,
  .policy-page .policy-section-block.active .pol-body > * { animation:fadeUp 0.7s ease both; }
  .policy-page .policy-section-block.active .pol-body > *:nth-child(1) { animation-delay:0.06s; }
  .policy-page .policy-section-block.active .pol-body > *:nth-child(2) { animation-delay:0.12s; }
  .policy-page .policy-section-block.active .pol-body > *:nth-child(3) { animation-delay:0.18s; }
  .policy-page .policy-section-block.active .pol-body > *:nth-child(4) { animation-delay:0.24s; }
  .contact-page .breadcrumb, .contact-page .contact-hero-inner, .contact-page .contact-info-item,
  .contact-page .contact-body > * { animation:fadeUp 0.72s ease both; }
  .contact-page .contact-hero-inner { animation-delay:0.08s; }
  .contact-page .contact-info-item:nth-child(1) { animation-delay:0.12s; }
  .contact-page .contact-info-item:nth-child(2) { animation-delay:0.16s; }
  .contact-page .contact-info-item:nth-child(3) { animation-delay:0.2s; }
  .contact-page .contact-body > *:nth-child(1) { animation-delay:0.24s; }
  .contact-page .contact-body > *:nth-child(2) { animation-delay:0.3s; }
  .contact-page .contact-side-panel > * { animation:fadeUp 0.72s ease both; }
  .contact-page .contact-side-panel > *:nth-child(1) { animation-delay:0.34s; }
  .contact-page .contact-side-panel > *:nth-child(2) { animation-delay:0.38s; }
  .contact-page .contact-side-panel > *:nth-child(3) { animation-delay:0.42s; }
  .track-page .breadcrumb, .track-page .track-hero-inner, .track-page .track-form-card,
  .track-page .track-steps-inner, .track-page .track-help-strip { animation:fadeUp 0.72s ease both; }
  .track-page .track-hero-inner { animation-delay:0.08s; }
  .track-page .track-form-card { animation-delay:0.14s; }
  .track-page .track-steps-inner { animation-delay:0.2s; }
  .track-page .track-help-strip { animation-delay:0.26s; }
  .heritage-journal .journal-grid > * { animation:fadeUp 0.8s ease both; }
  .heritage-journal .journal-grid > *:nth-child(1) { animation-delay:0.08s; }
  .heritage-journal .journal-grid > *:nth-child(2) { animation-delay:0.16s; }

  /* ── Order History page ── */
  .orders-page .oh-breadcrumb { margin-top:80px; padding:0.85rem 5rem; background:white; border-bottom:1px solid var(--border); display:flex; align-items:center; gap:0; font-size:0.78rem; }
  .orders-page .oh-breadcrumb a { color:var(--muted); text-decoration:none; transition:color 0.2s; }
  .orders-page .oh-breadcrumb a:hover { color:var(--gold); }
  .orders-page .breadcrumb-sep { margin:0 0.5rem; color:rgba(184,136,46,0.4); }
  .orders-page .breadcrumb-current { color:var(--text); font-weight:500; }

  .orders-page .oh-header { background:white; border-bottom:1px solid var(--border); padding:2rem 5rem; }
  .orders-page .oh-header-inner { display:flex; align-items:flex-end; justify-content:space-between; max-width:900px; }
  .orders-page .oh-header-tag { font-size:0.68rem; font-weight:500; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold); margin-bottom:0.5rem; }
  .orders-page .oh-title { font-family:'Cormorant Garamond',serif; font-size:2.2rem; font-weight:500; color:var(--deep); line-height:1; }
  .orders-page .oh-shop-link { font-size:0.76rem; font-weight:500; letter-spacing:0.08em; color:var(--muted); text-decoration:none; transition:color 0.2s; padding-bottom:0.2rem; }
  .orders-page .oh-shop-link:hover { color:var(--gold); }

  .orders-page .oh-wrap { max-width:900px; margin:0 auto; padding:2rem 2rem 4rem; }

  .orders-page .oh-tabs-row { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1.8rem; flex-wrap:wrap; }
  .orders-page .oh-tabs { display:flex; border-bottom:2px solid var(--border); gap:0; flex-wrap:wrap; }
  .orders-page .oh-tab { background:none; border:none; padding:0.65rem 1rem; font-family:'Jost',sans-serif; font-size:0.74rem; font-weight:500; letter-spacing:0.08em; color:var(--muted); cursor:pointer; position:relative; bottom:-2px; border-bottom:2px solid transparent; transition:color 0.2s, border-color 0.2s; white-space:nowrap; }
  .orders-page .oh-tab:hover { color:var(--text); }
  .orders-page .oh-tab.active { color:var(--deep); border-bottom-color:var(--gold); }
  .orders-page .oh-tab-count { display:inline-flex; align-items:center; justify-content:center; background:rgba(184,136,46,0.15); color:var(--gold); font-size:0.62rem; font-weight:600; min-width:18px; height:18px; border-radius:999px; padding:0 4px; margin-left:5px; }
  .orders-page .oh-search-wrap { display:flex; align-items:center; gap:0.5rem; border:1px solid rgba(184,136,46,0.3); padding:0.5rem 0.75rem; background:white; }
  .orders-page .oh-search-wrap svg { color:var(--muted); flex-shrink:0; }
  .orders-page .oh-search { border:none; outline:none; font-family:'Jost',sans-serif; font-size:0.78rem; color:var(--text); width:200px; background:transparent; }
  .orders-page .oh-search::placeholder { color:var(--muted); }

  .orders-page .oh-list { display:flex; flex-direction:column; gap:1.2rem; }
  .orders-page .order-card { background:white; border:1px solid var(--border); }

  .orders-page .order-hd { display:flex; align-items:flex-start; justify-content:space-between; padding:1.1rem 1.4rem; border-bottom:1px solid var(--border); gap:1rem; }
  .orders-page .order-hd-left { display:flex; flex-direction:column; gap:0.3rem; }
  .orders-page .order-num { font-family:'Jost',sans-serif; font-size:0.82rem; font-weight:600; color:var(--deep); letter-spacing:0.04em; }
  .orders-page .order-date { font-size:0.72rem; color:var(--muted); }
  .orders-page .order-hd-right { display:flex; flex-direction:column; align-items:flex-end; gap:0.3rem; flex-shrink:0; }
  .orders-page .order-status { display:inline-flex; align-items:center; gap:0.35rem; font-size:0.68rem; font-weight:600; letter-spacing:0.08em; text-transform:uppercase; padding:0.28rem 0.7rem; border-radius:2px; }
  .orders-page .status-delivered { background:rgba(60,120,60,0.1); color:#2D6A2D; }
  .orders-page .status-shipped { background:rgba(30,80,160,0.1); color:#1E50A0; }
  .orders-page .status-processing { background:rgba(184,120,0,0.1); color:#B87800; }
  .orders-page .status-cancelled { background:rgba(140,30,30,0.08); color:var(--maroon); }
  .orders-page .order-eta { font-size:0.7rem; color:var(--muted); }

  /* Mini tracking bar (shown on shipped orders) */
  .orders-page .order-track-bar { display:flex; align-items:center; padding:1rem 1.4rem; background:#FDFBF8; border-bottom:1px solid var(--border); gap:0; overflow-x:auto; }
  .orders-page .otb-step { display:flex; flex-direction:column; align-items:center; gap:0.35rem; flex-shrink:0; }
  .orders-page .otb-dot { width:10px; height:10px; border-radius:50%; border:2px solid var(--border); background:white; transition:all 0.2s; }
  .orders-page .otb-step.done .otb-dot { background:var(--gold); border-color:var(--gold); }
  .orders-page .otb-step.active .otb-dot { background:white; border-color:var(--gold); box-shadow:0 0 0 3px rgba(184,136,46,0.2); }
  .orders-page .otb-step span { font-size:0.62rem; font-weight:500; letter-spacing:0.05em; color:var(--muted); white-space:nowrap; text-align:center; }
  .orders-page .otb-step.done span, .orders-page .otb-step.active span { color:var(--deep); }
  .orders-page .otb-line { flex:1; height:2px; background:var(--border); min-width:28px; }
  .orders-page .otb-line.done { background:var(--gold); }

  .orders-page .order-items { padding:0 1.4rem; }
  .orders-page .order-item { display:flex; align-items:center; gap:1rem; padding:1.1rem 0; border-bottom:1px solid var(--border); }
  .orders-page .order-item:last-child { border-bottom:none; }
  .orders-page .order-item-img { width:72px; height:88px; flex-shrink:0; overflow:hidden; display:block; }
  .orders-page .order-item-img img { width:100%; height:100%; object-fit:cover; }
  .orders-page .order-item-info { flex:1; min-width:0; }
  .orders-page .oi-name { font-family:'Cormorant Garamond',serif; font-size:1.02rem; font-weight:500; color:var(--deep); text-decoration:none; display:block; margin-bottom:0.3rem; }
  .orders-page a.oi-name:hover { color:var(--gold); }
  .orders-page .oi-meta { font-size:0.74rem; color:var(--muted); margin-bottom:0.4rem; }
  .orders-page .oi-price { font-size:0.86rem; font-weight:500; color:var(--deep); }
  .orders-page .order-item-actions { flex-shrink:0; }
  .orders-page .oia-btn { background:none; border:1px solid rgba(184,136,46,0.35); padding:0.42rem 0.8rem; font-family:'Jost',sans-serif; font-size:0.68rem; font-weight:500; letter-spacing:0.1em; text-transform:uppercase; color:var(--deep); cursor:pointer; transition:all 0.2s; white-space:nowrap; }
  .orders-page .oia-btn:hover { border-color:var(--gold); color:var(--gold); }

  .orders-page .order-ft { display:flex; align-items:center; justify-content:space-between; padding:0.9rem 1.4rem; border-top:1px solid var(--border); background:#FDFBF8; gap:1rem; flex-wrap:wrap; }
  .orders-page .order-total { display:flex; align-items:center; gap:0.6rem; }
  .orders-page .ot-label { font-size:0.72rem; color:var(--muted); letter-spacing:0.06em; }
  .orders-page .ot-value { font-family:'Cormorant Garamond',serif; font-size:1.15rem; font-weight:500; color:var(--deep); }
  .orders-page .order-actions { display:flex; align-items:center; gap:0.5rem; flex-wrap:wrap; }
  .orders-page .oa-btn { display:inline-flex; align-items:center; gap:0.4rem; padding:0.5rem 0.9rem; font-family:'Jost',sans-serif; font-size:0.7rem; font-weight:500; letter-spacing:0.1em; text-transform:uppercase; cursor:pointer; text-decoration:none; border:1px solid transparent; transition:all 0.2s; white-space:nowrap; }
  .orders-page .oa-btn-primary { background:var(--deep); color:var(--cream); border-color:var(--deep); }
  .orders-page .oa-btn-primary:hover { background:#2E1F0A; }
  .orders-page .oa-btn-ghost { background:white; color:var(--text); border-color:var(--border); }
  .orders-page .oa-btn-ghost:hover { border-color:var(--gold); color:var(--gold); }
  .orders-page .oa-btn-outline { background:transparent; color:var(--muted); border-color:rgba(184,136,46,0.25); }
  .orders-page .oa-btn-outline:hover { border-color:var(--maroon); color:var(--maroon); }

  .orders-page .oh-empty { text-align:center; padding:5rem 2rem; }
  .orders-page .oh-empty-icon { width:72px; height:72px; border-radius:50%; background:rgba(184,136,46,0.08); display:flex; align-items:center; justify-content:center; margin:0 auto 1.5rem; color:var(--gold); }
  .orders-page .oh-empty-title { font-family:'Cormorant Garamond',serif; font-size:1.5rem; font-weight:600; color:var(--deep); margin-bottom:0.5rem; }
  .orders-page .oh-empty-sub { font-size:0.82rem; color:var(--muted); line-height:1.7; margin-bottom:1.5rem; }
  .orders-page .oh-empty-cta { display:inline-block; font-size:0.76rem; font-weight:500; letter-spacing:0.1em; text-transform:uppercase; color:var(--gold); text-decoration:none; border-bottom:1px solid rgba(184,136,46,0.4); padding-bottom:0.2rem; transition:border-color 0.2s; }
  .orders-page .oh-empty-cta:hover { border-color:var(--gold); }

  .orders-page .oh-header, .orders-page .oh-tabs-row, .orders-page .order-card { animation:fadeUp 0.6s ease both; }
  .orders-page .order-card:nth-child(1) { animation-delay:0.08s; }
  .orders-page .order-card:nth-child(2) { animation-delay:0.14s; }
  .orders-page .order-card:nth-child(3) { animation-delay:0.2s; }

  /* ── Edit Profile page ── */
  .profile-page .ep-breadcrumb { margin-top:80px; padding:0.85rem 5rem; background:white; border-bottom:1px solid var(--border); display:flex; align-items:center; font-size:0.78rem; }
  .profile-page .ep-breadcrumb a { color:var(--muted); text-decoration:none; transition:color 0.2s; }
  .profile-page .ep-breadcrumb a:hover { color:var(--gold); }
  .profile-page .breadcrumb-sep { margin:0 0.5rem; color:rgba(184,136,46,0.4); }
  .profile-page .breadcrumb-current { color:var(--text); font-weight:500; }

  .profile-page .ep-page-wrap { display:grid; grid-template-columns:240px 1fr; gap:0; max-width:1020px; margin:0 auto; padding:2.5rem 2rem 5rem; align-items:start; }

  /* Sidebar */
  .profile-page .ep-sidebar { background:white; border:1px solid var(--border); position:sticky; top:90px; }
  .profile-page .ep-sidebar-avatar { display:flex; flex-direction:column; align-items:center; padding:2rem 1.5rem 1.5rem; border-bottom:1px solid var(--border); text-align:center; }
  .profile-page .ep-avatar-circle { width:80px; height:80px; border-radius:50%; background:var(--blush); display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden; cursor:pointer; margin-bottom:0.9rem; flex-shrink:0; }
  .profile-page .ep-avatar-initials { font-family:'Cormorant Garamond',serif; font-size:2rem; font-weight:500; color:var(--deep); user-select:none; }
  .profile-page .ep-avatar-overlay { position:absolute; inset:0; background:rgba(26,18,8,0.45); display:flex; align-items:center; justify-content:center; opacity:0; transition:opacity 0.2s; cursor:pointer; color:white; }
  .profile-page .ep-avatar-circle:hover .ep-avatar-overlay { opacity:1; }
  .profile-page .ep-sidebar-name { font-family:'Cormorant Garamond',serif; font-size:1.1rem; font-weight:500; color:var(--deep); margin-bottom:0.2rem; }
  .profile-page .ep-sidebar-since { font-size:0.68rem; color:var(--muted); letter-spacing:0.06em; }
  .profile-page .ep-sidebar-nav {
    display:flex;
    flex-direction:column;
    width:100%;
    padding:0.5rem 0;
  }
  .profile-page .ep-sidebar-link { display:flex; align-items:center; gap:0.65rem; padding:0.72rem 1.3rem; font-family:'Jost',sans-serif; font-size:0.76rem; font-weight:400; color:var(--text); text-decoration:none; letter-spacing:0.04em; transition:background 0.15s, color 0.15s; }
  .profile-page .ep-sidebar-link svg { color:var(--muted); flex-shrink:0; transition:color 0.15s; }
  .profile-page .ep-sidebar-link:hover { background:rgba(184,136,46,0.05); color:var(--gold); }
  .profile-page .ep-sidebar-link:hover svg { color:var(--gold); }
  .profile-page .ep-sidebar-link.active { background:rgba(184,136,46,0.07); color:var(--deep); font-weight:500; border-left:2px solid var(--gold); }
  .profile-page .ep-sidebar-link.active svg { color:var(--gold); }
  .profile-page .ep-sidebar-divider { height:1px; background:var(--border); margin:0.3rem 0; }
  .profile-page .ep-sidebar-logout { color:var(--maroon); }
  .profile-page .ep-sidebar-logout svg { color:var(--maroon); opacity:0.7; }
  .profile-page .ep-sidebar-logout:hover { background:rgba(92,26,26,0.05); color:var(--maroon); }

  /* Main content */
  .profile-page .ep-content { padding-left:2.5rem; }
  .profile-page .ep-content-inner { background:white; border:1px solid var(--border); padding:2rem 2.2rem 2.5rem; }
  .profile-page .ep-tab-panel[hidden] { display:none !important; }
  .profile-page .ep-content-hd { margin-bottom:2rem; padding-bottom:1.2rem; border-bottom:1px solid var(--border); }
  .profile-page .ep-content-title { font-family:'Cormorant Garamond',serif; font-size:1.9rem; font-weight:500; color:var(--deep); margin-bottom:0.3rem; }
  .profile-page .ep-content-sub { font-size:0.8rem; color:var(--muted); line-height:1.6; }

  /* Form sections */
  .profile-page .ep-section { padding-top: 0.2rem; padding-left: 0.2rem; padding-right: 0.2rem; padding-bottom:1.8rem; margin-bottom:1.8rem; border-bottom:1px solid var(--border); }
  .profile-page .ep-section:last-of-type { border-bottom:none; }
  .profile-page .ep-section-label { font-size:0.68rem; font-weight:600; letter-spacing:0.2em; text-transform:uppercase; color:var(--gold); margin-bottom:1.2rem; }
  .profile-page .ep-fields { display:grid; grid-template-columns:1fr 1fr; gap:1rem 1.2rem; }
  .profile-page .ep-field { display:flex; flex-direction:column; gap:0.4rem; grid-column:1/-1; }
  .profile-page .ep-field.ep-field-half { grid-column:span 1; }
  .profile-page .ep-label { font-size:0.72rem; font-weight:500; letter-spacing:0.08em; text-transform:uppercase; color:var(--muted); display:flex; align-items:center; gap:0.5rem; }
  .profile-page .ep-label-note { font-size:0.66rem; font-weight:400; letter-spacing:0.04em; text-transform:none; color:var(--muted); opacity:0.7; }
  .profile-page .ep-verified { display:inline-flex; align-items:center; gap:0.25rem; font-size:0.62rem; font-weight:600; color:#2D7A2D; letter-spacing:0.06em; background:rgba(45,122,45,0.1); padding:2px 6px; border-radius:2px; }
  .profile-page .ep-input { border:1px solid rgba(184,136,46,0.3); background:white; padding:0.65rem 0.8rem; font-family:'Jost',sans-serif; font-size:0.82rem; color:var(--text); outline:none; transition:border-color 0.2s; }
  .profile-page .ep-input:focus { border-color:var(--gold); }
  .profile-page .ep-phone-wrap { display:flex; border:1px solid rgba(184,136,46,0.3); background:white; transition:border-color 0.2s; }
  .profile-page .ep-phone-wrap:focus-within { border-color:var(--gold); }
  .profile-page .ep-phone-prefix { padding:0.65rem 0.75rem; font-size:0.82rem; color:var(--muted); border-right:1px solid rgba(184,136,46,0.2); background:#FDFBF8; flex-shrink:0; }
  .profile-page .ep-input-phone { border:none; flex:1; padding:0.65rem 0.8rem; font-family:'Jost',sans-serif; font-size:0.82rem; color:var(--text); outline:none; background:transparent; }
  .profile-page .ep-hint { font-size:0.68rem; color:var(--muted); }
  .profile-page .ep-select { border:1px solid rgba(184,136,46,0.3); background:white; padding:0.62rem 0.75rem; font-family:'Jost',sans-serif; font-size:0.8rem; color:var(--text); outline:none; appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23B8882E' opacity='.5'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 0.7rem center; padding-right:2rem; cursor:pointer; flex:1; }
  .profile-page .ep-select:focus { border-color:var(--gold); }
  .profile-page .ep-dob-row { display:flex; gap:0.6rem; }

  /* Gender & size toggle buttons */
  .profile-page .ep-gender-group, .profile-page .ep-size-group { display:flex; gap:0.5rem; flex-wrap:wrap; }
  .profile-page .ep-gender-btn, .profile-page .ep-size-btn { background:white; border:1px solid rgba(184,136,46,0.3); padding:0.5rem 1rem; font-family:'Jost',sans-serif; font-size:0.74rem; font-weight:400; letter-spacing:0.06em; color:var(--text); cursor:pointer; transition:all 0.18s; }
  .profile-page .ep-size-btn { min-width:44px; padding:0.5rem 0.6rem; text-align:center; }
  .profile-page .ep-gender-btn:hover, .profile-page .ep-size-btn:hover { border-color:var(--gold); color:var(--gold); }
  .profile-page .ep-gender-btn.active, .profile-page .ep-size-btn.active { background:var(--deep); color:var(--cream); border-color:var(--deep); }

  /* Checkboxes */
  .profile-page .ep-check-label { display:flex; align-items:flex-start; gap:0.75rem; cursor:pointer; }
  .profile-page .ep-checkbox { width:16px; height:16px; flex-shrink:0; accent-color:var(--gold); margin-top:2px; cursor:pointer; }
  .profile-page .ep-check-title { display:block; font-size:0.8rem; font-weight:500; color:var(--text); margin-bottom:0.15rem; }
  .profile-page .ep-check-sub { display:block; font-size:0.72rem; color:var(--muted); line-height:1.5; }

  /* Actions */
  .profile-page .ep-form-actions { display:flex; align-items:center; gap:0.8rem; padding-top:0.5rem; }
  .profile-page .ep-save-btn { background:var(--deep); color:var(--cream); border:none; padding:0.8rem 2rem; font-family:'Jost',sans-serif; font-size:0.75rem; font-weight:500; letter-spacing:0.14em; text-transform:uppercase; cursor:pointer; transition:background 0.2s; }
  .profile-page .ep-save-btn:hover { background:#2E1F0A; }
  .profile-page .ep-save-btn:disabled { opacity:0.7; cursor:wait; }
  .profile-page .ep-cancel-btn { background:transparent; border:1px solid var(--border); color:var(--muted); padding:0.8rem 1.4rem; font-family:'Jost',sans-serif; font-size:0.75rem; letter-spacing:0.1em; text-transform:uppercase; cursor:pointer; transition:all 0.2s; }
  .profile-page .ep-cancel-btn:hover { border-color:var(--gold); color:var(--gold); }

  /* Danger zone */
  .profile-page .ep-danger-zone { margin-top:2.5rem; padding-top:1.5rem; border-top:1px solid var(--border); display:flex; align-items:center; justify-content:space-between; }
  .profile-page .ep-danger-label { font-size:0.68rem; font-weight:600; letter-spacing:0.18em; text-transform:uppercase; color:var(--muted); }
  .profile-page .ep-danger-btn { background:none; border:none; font-family:'Jost',sans-serif; font-size:0.74rem; color:var(--maroon); cursor:pointer; letter-spacing:0.06em; text-decoration:underline; text-underline-offset:3px; opacity:0.7; transition:opacity 0.2s; padding:0; }
  .profile-page .ep-danger-btn:hover { opacity:1; }

  /* Saved addresses */
  .profile-page .addr-toolbar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1.5rem; }
  .profile-page .addr-add-btn {
    display:inline-flex; align-items:center; justify-content:center; gap:0.4rem;
    background:var(--deep); color:var(--cream); border:none; padding:0.65rem 1.25rem;
    font-family:'Jost',sans-serif; font-size:0.72rem; font-weight:500; letter-spacing:0.12em; text-transform:uppercase;
    cursor:pointer; transition:background 0.2s; text-decoration:none;
  }
  .profile-page .addr-add-btn:hover { background:var(--gold); color:var(--deep); }
  .profile-page .addr-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:1rem; }
  .profile-page .addr-card {
    position:relative; border:1px solid var(--border); padding:1.15rem 1.25rem 1.2rem; background:#FDFBF8;
    display:grid; grid-template-columns:1fr auto; gap:0.75rem 1rem; align-items:start;
  }
  .profile-page .addr-card-main { min-width:0; }
  .profile-page .addr-badge {
    display:inline-block; font-size:0.58rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase;
    color:var(--deep); background:rgba(184,136,46,0.18); padding:3px 8px; margin-bottom:0.5rem;
  }
  .profile-page .addr-name { font-family:'Cormorant Garamond',serif; font-size:1.05rem; font-weight:600; color:var(--deep); margin:0 0 0.35rem; }
  .profile-page .addr-lines { margin:0; font-size:0.82rem; line-height:1.65; color:var(--text); }
  .profile-page .addr-phone { margin:0.5rem 0 0; font-size:0.8rem; color:var(--muted); }
  .profile-page .addr-actions { display:flex; flex-wrap:wrap; gap:0.5rem 1rem; justify-content:flex-end; align-self:center; }
  .profile-page .addr-link {
    background:none; border:none; padding:0; font-family:'Jost',sans-serif; font-size:0.74rem; color:var(--gold);
    cursor:pointer; text-decoration:underline; text-underline-offset:3px; letter-spacing:0.04em;
  }
  .profile-page .addr-link:hover { color:var(--deep); }
  .profile-page .addr-link-muted { color:var(--muted); text-decoration:none; }
  .profile-page .addr-link-muted:hover { color:var(--maroon); text-decoration:underline; }
  @media (max-width:640px) {
    .profile-page .addr-card { grid-template-columns:1fr; }
    .profile-page .addr-actions { justify-content:flex-start; }
  }

  .profile-page .ep-sidebar, .profile-page .ep-content { animation:fadeUp 0.65s ease both; }
  .profile-page .ep-content { animation-delay:0.08s; }

  @media (prefers-reduced-motion: reduce) {
    .category-page .cat-page > .section-tag, .category-page .cat-page > .section-title, .category-page .cat-grid .cat-card,
    .size-guide-page .guide > .section-tag, .size-guide-page .guide > .section-title, .size-guide-page .table,
    .wishlist-page .breadcrumb, .wishlist-page .page-title, .wishlist-page .grid .card,
    .products-page .breadcrumb, .products-page .page-header-inner, .products-page .prod-grid .prod-card, .products-page .pagination,
    .product-details-page .breadcrumb, .product-details-page .product-wrap .gallery, .product-details-page .product-wrap .gallery-details,
    .product-details-page .related-head, .product-details-page .related-grid .prod-card,
    .cart-page .breadcrumb, .checkout-page .breadcrumb, .cart-page .wrap > .list, .cart-page .wrap > .summary,
    .checkout-page .wrap > .panel, .account-page .breadcrumb, .account-page .wrap > .card,
    .our-story-page .breadcrumb, .our-story-page .story-hero-img, .our-story-page .story-hero-copy > *,
    .our-story-page .story-section-inner > *, .our-story-page .story-pillar-grid .story-pillar, .our-story-page .story-blockquote,
    .our-story-page .story-split > *, .our-story-page .story-cta-inner > *,
    .policy-page .breadcrumb, .policy-page .policy-hero-inner, .policy-page .policy-tab-nav,
    .policy-page .policy-section-block.active .pol-header, .policy-page .policy-section-block.active .pol-body > *,
    .contact-page .breadcrumb, .contact-page .contact-hero-inner, .contact-page .contact-info-item,
    .contact-page .contact-body > *, .contact-page .contact-side-panel > *,
    .track-page .breadcrumb, .track-page .track-hero-inner, .track-page .track-form-card,
    .track-page .track-steps-inner, .track-page .track-help-strip,
    .heritage-journal .journal-grid > *,
    .instagram .btn-primary, .instagram .insta-grid .insta-item,
    .hero-left > *, .hero-img-wrap, .hero-badge,
    .categories .cat-header > *, .categories .cat-grid .cat-card,
    .products .prod-header > *, .products .prod-grid .prod-card,
    .story .story-inner > *, .story .story-img,
    .instagram .insta-header > * {
      animation:none !important;
      opacity:1 !important;
      transform:none !important;
    }
    .wishlist-page .card:hover { transform:none; box-shadow:none; }
    .category-page .cat-card:hover img, .products-page .prod-card:hover .prod-img img { transform:none; }
  }

  @media (max-width:1100px) {
    .products-page .prod-grid { grid-template-columns:repeat(2,1fr); }
  }
  @media (max-width:900px) {
    .products-page .breadcrumb, .product-details-page .breadcrumb { padding:0.8rem 1.5rem; }
    .products-page .page-header { padding:1.5rem 1.5rem 1rem; }
    .products-page .shop-layout { grid-template-columns:1fr; }
    .products-page .sidebar { display:none; }
    .products-page .products-area { padding:1.5rem; }
    .products-page .prod-grid { grid-template-columns:repeat(2,1fr); gap:1rem; }
    .products-page .mobile-filter-btn { display:flex; }
    .products-page .filter-apply-bar { width:100%; }
    .product-details-page .product-wrap { grid-template-columns:1fr; padding:1.5rem; gap:1.6rem; }
    .product-details-page .gallery { grid-template-columns:1fr; }
    .product-details-page .thumbs { flex-direction:row; order:2; }
    .product-details-page .thumb { width:64px; }
    .product-details-page .cta-row { grid-template-columns:1fr; }
    .product-details-page .related { padding:3rem 1.5rem; }
    .product-details-page .related-grid { grid-template-columns:1fr 1fr; gap:1rem; }
    .product-details-page .zoom-overlay { padding:1rem 0.8rem; }
    .product-details-page .zoom-nav { width:40px; height:40px; font-size:1.45rem; }
    .product-details-page .zoom-nav.prev { left:0.6rem; }
    .product-details-page .zoom-nav.next { right:0.6rem; }
    .product-details-page .zoom-close { top:0.7rem; right:0.7rem; }
    .category-page .cat-page, .size-guide-page .guide, .wishlist-page .breadcrumb, .wishlist-page .page, .cart-page .breadcrumb, .cart-page .wrap, .checkout-page .breadcrumb, .checkout-page .wrap, .account-page .breadcrumb, .account-page .wrap, .our-story-page .breadcrumb, .our-story-page .story-section, .our-story-page .story-quote-block, .our-story-page .story-cta, .policy-page .breadcrumb, .policy-page .policy-wrap, .contact-page .breadcrumb, .contact-page .contact-wrap { padding:1rem 1.5rem; }
    .our-story-page .story-hero { grid-template-columns:1fr; min-height:0; }
    .our-story-page .story-hero-copy { border-left:none; border-top:1px solid var(--border); padding:2.5rem 1.5rem; }
    .our-story-page .story-stats { grid-template-columns:1fr 1fr; }
    .our-story-page .story-stat { border-bottom:1px solid rgba(184,136,46,0.15); }
    .our-story-page .story-stat:nth-child(2n) { border-right:none; }
    .our-story-page .story-pillar-grid { grid-template-columns:1fr 1fr; }
    .our-story-page .story-split { grid-template-columns:1fr; gap:2rem; }
    .our-story-page .story-split-img { aspect-ratio:3/2; }
    .our-story-page .story-quote-block { padding:3.5rem 1.5rem; }
    .our-story-page .story-cta { padding:3.5rem 1.5rem; }
    .policy-page .policy-hero { padding:3rem 1.5rem 2.5rem; }
    .policy-page .policy-content { padding:1.5rem; }
    .policy-page .pol-grid-2 { grid-template-columns:1fr; }
    .policy-page .pol-cta { flex-direction:column; }
    .contact-page .contact-hero { padding:3rem 1.5rem 2.5rem; }
    .contact-page .contact-info-strip { grid-template-columns:1fr; }
    .contact-page .contact-info-item { border-right:none; border-bottom:1px solid var(--border); padding:1.4rem 1.5rem; }
    .contact-page .contact-info-item:last-child { border-bottom:none; }
    .contact-page .contact-body { grid-template-columns:1fr; padding:2rem 1.5rem; gap:2rem; }
    .contact-page .form-row { grid-template-columns:1fr; }
    .contact-page .contact-grid { grid-template-columns:1fr; }
    .track-page .track-hero { padding:3rem 1.5rem 2.5rem; }
    .track-page .track-form-section, .track-page .track-steps-section { padding-left:1.5rem; padding-right:1.5rem; }
    .track-page .track-form-card { padding:1.8rem 1.5rem; }
    .track-page .track-steps-grid { grid-template-columns:1fr; }
    .track-page .track-help-strip { grid-template-columns:1fr; width:calc(100% - 3rem); }
    .track-page .track-help-item { border-right:none; border-bottom:1px solid var(--border); }
    .track-page .track-help-item:last-child { border-bottom:none; }
    .orders-page .oh-breadcrumb, .orders-page .oh-header { padding-left:1.5rem; padding-right:1.5rem; }
    .orders-page .oh-header-inner { flex-direction:column; align-items:flex-start; gap:0.8rem; }
    .orders-page .oh-wrap { padding:1.2rem 1rem 3rem; }
    .orders-page .oh-tabs-row { flex-direction:column; align-items:stretch; gap:0.8rem; }
    .orders-page .oh-search-wrap { width:100%; box-sizing:border-box; }
    .orders-page .oh-search { width:100%; }
    .orders-page .order-hd { flex-direction:column; gap:0.6rem; }
    .orders-page .order-hd-right { align-items:flex-start; }
    .orders-page .order-ft { flex-direction:column; align-items:flex-start; gap:0.8rem; }
    .orders-page .order-item { gap:0.75rem; }
    .orders-page .order-item-img { width:60px; height:74px; }
    .orders-page .order-item-actions { display:none; }
    .profile-page .ep-breadcrumb { padding-left:1.5rem; padding-right:1.5rem; }
    .profile-page .ep-page-wrap { grid-template-columns:1fr; padding:1.5rem 1rem 3rem; }
    .profile-page .ep-sidebar { position:static; display:flex; flex-direction:column; }
    .profile-page .ep-sidebar-avatar { flex-direction:row; text-align:left; gap:1rem; padding:1.2rem; }
    .profile-page .ep-avatar-circle { width:60px; height:60px; margin-bottom:0; }
    .profile-page .ep-avatar-initials { font-size:1.5rem; }
    .profile-page .ep-sidebar-nav { display:none; }
    .profile-page .ep-content { padding-left:0; margin-top:1.5rem; }
    .profile-page .ep-fields { grid-template-columns:1fr; }
    .profile-page .ep-field.ep-field-half { grid-column:1/-1; }
    .profile-page .ep-dob-row { flex-direction:column; }
    .category-page .cat-grid, .wishlist-page .grid { grid-template-columns:1fr 1fr; gap:1rem; }
    .cart-page .wrap, .checkout-page .wrap { grid-template-columns:1fr; }
    .checkout-page .grid { grid-template-columns:1fr; }
    .cart-page .item { grid-template-columns:90px 1fr; }
    .cart-page .item-actions { grid-column:1/-1; flex-direction:row; min-width:0; }
    .cart-page .item-actions .btn { flex:1; }
    .account-page .wrap { grid-template-columns:1fr; }
    .account-page .card-benefits { padding:2.5rem 1.5rem; min-height:auto; }
    .account-page .card-auth { padding:2rem 1.5rem; }
    .account-page .social-row { grid-template-columns:1fr; }
    .account-page footer { padding:4rem 1.5rem 2rem; }
    .account-page .footer-top { grid-template-columns:1fr; gap:2rem; }
    .account-page .footer-bottom { flex-direction:column; gap:1rem; text-align:center; }
    .search-overlay { padding-top:5.5rem; }
    .search-modal { width:calc(100vw - 1rem); }
  }
  @media (hover:none) {
    .product-details-page .zoom-stage { cursor:default; }
    .product-details-page .zoom-stage.active img { transform:scale(1); }
  }
  @media (min-width:900px) {
    .products-page .mobile-filter-btn { display:none; }
  }  /* --- Homepage rk2 (index-2) --- */
  body:has(> .rk2-top-strip) {
    background: var(--ivory);
    color: var(--ink);
  }

/* --- TOP STRIP (solid, like index-1) --- */
.rk2-top-strip {
  position:fixed;
  top:0; left:0; right:0;
  z-index:1200;
  display:flex;
  justify-content:center;
  gap:2rem;
  background:#15110f;
  color:#fff8ec;
  padding:0.45rem 1rem;
  font-size:0.68rem;
  font-weight:500;
  letter-spacing:0.18em;
  text-transform:uppercase;
}

/* --- NAV: transparent over video, solid + thinner on scroll --- */
.rk2-nav {
  position:fixed;
  top:30px;
  left:0; right:0;
  z-index:1100;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:0.95rem 4rem;
  background:transparent;
  border-bottom:1px solid rgba(255,248,236,0.18);
  transition:padding 0.3s ease, background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

body.is-scrolled .rk2-nav {
  padding:0.45rem 4rem;
  background:rgba(251,248,241,0.97);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(20px);
  box-shadow:0 8px 30px rgba(26,18,8,0.06);
}

.rk2-nav .nav-logo {
  font-family:"Cormorant Garamond", serif;
  font-size:1.8rem;
  font-weight:600;
  letter-spacing:0.05em;
  color:#ffffff;
  text-decoration:none;
  transition:color 0.3s ease, font-size 0.3s ease;
}
.rk2-nav .nav-logo span { color:var(--rk2-gold-light); transition:color 0.3s ease; }

body.is-scrolled .rk2-nav .nav-logo {
  color:var(--ink);
  font-size:1.55rem;
}
body.is-scrolled .rk2-nav .nav-logo span { color:var(--gold); }

.rk2-nav .nav-links {
  display:flex;
  gap:2.2rem;
  list-style:none;
  margin:0;
  padding:0;
}

.rk2-nav .nav-links a {
  color:#ffffff;
  font-size:0.74rem;
  font-weight:600;
  letter-spacing:0.2em;
  text-transform:uppercase;
  text-decoration:none;
  transition:color 0.25s ease;
  text-shadow:0 1px 12px rgba(0,0,0,0.18);
}
.rk2-nav .nav-links a:hover, .rk2-nav .nav-links .current-menu-item > a, .rk2-nav .nav-links .current_page_item > a { color:var(--rk2-gold-light); }
body.is-scrolled .rk2-nav .nav-links a {
  color:var(--ink);
  text-shadow:none;
}
body.is-scrolled .rk2-nav .nav-links a:hover, body.is-scrolled .rk2-nav .nav-links .current-menu-item > a, body.is-scrolled .rk2-nav .nav-links .current_page_item > a { color:var(--gold); }

.rk2-nav .nav-has-badge { margin-right:1.4rem; }
.rk2-nav .nav-has-badge > a { position:relative; }
.rk2-nav .nav-has-badge > a::after {
  content:'HOT';
  position:absolute;
  top:-8px;
  right:-28px;
  background:var(--wine);
  color:#fff;
  font-size:0.5rem;
  font-weight:700;
  letter-spacing:0.06em;
  padding:1px 4px;
  border-radius:2px;
  line-height:1.5;
}

.rk2-nav .nav-actions {
  display:flex;
  align-items:center;
  gap:1.4rem;
}

.rk2-nav .nav-icon-link,
.rk2-nav .nav-icon-btn {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:3px;
  background:none;
  border:none;
  cursor:pointer;
  color:#ffffff;
  text-decoration:none;
  transition:color 0.25s ease;
  filter:drop-shadow(0 1px 6px rgba(0,0,0,0.25));
}
.rk2-nav .nav-icon-link:hover,
.rk2-nav .nav-icon-btn:hover { color:var(--rk2-gold-light); }

.rk2-nav .nav-icon-link .nav-icon,
.rk2-nav .nav-icon-btn .nav-icon {
  width:20px;
  height:20px;
  color:#ffffff;
  stroke:#ffffff;
  stroke-width:1.7;
  transition:color 0.25s ease, stroke 0.25s ease;
}
.rk2-nav .nav-icon-link:hover .nav-icon,
.rk2-nav .nav-icon-btn:hover .nav-icon {
  color:var(--rk2-gold-light);
  stroke:var(--rk2-gold-light);
}

.rk2-nav .nav-label {
  font-family:"Jost", sans-serif;
  font-size:0.58rem;
  font-weight:500;
  letter-spacing:0.08em;
  text-transform:uppercase;
  line-height:1;
  white-space:nowrap;
  color:#ffffff;
  transition:color 0.25s ease;
}
.rk2-nav .nav-icon-link:hover .nav-label,
.rk2-nav .nav-icon-btn:hover .nav-label { color:var(--rk2-gold-light); }

body.is-scrolled .rk2-nav .nav-icon-link,
body.is-scrolled .rk2-nav .nav-icon-btn {
  color:var(--ink);
  filter:none;
}
body.is-scrolled .rk2-nav .nav-icon-link .nav-icon,
body.is-scrolled .rk2-nav .nav-icon-btn .nav-icon {
  color:var(--ink);
  stroke:var(--ink);
}
body.is-scrolled .rk2-nav .nav-label { color:var(--ink); }
body.is-scrolled .rk2-nav .nav-icon-link:hover,
body.is-scrolled .rk2-nav .nav-icon-btn:hover { color:var(--gold); }
body.is-scrolled .rk2-nav .nav-icon-link:hover .nav-icon,
body.is-scrolled .rk2-nav .nav-icon-btn:hover .nav-icon {
  color:var(--gold);
  stroke:var(--gold);
}
body.is-scrolled .rk2-nav .nav-icon-link:hover .nav-label,
body.is-scrolled .rk2-nav .nav-icon-btn:hover .nav-label { color:var(--gold); }

.rk2-nav .nav-icon-wrap { position:relative; }
.rk2-nav .nav-account-wrap { position:relative; }

.rk2-nav .hamburger {
  background:none;
  border:none;
  width:28px;
  height:22px;
  display:none;
  flex-direction:column;
  justify-content:space-between;
  cursor:pointer;
}
.rk2-nav .hamburger span {
  display:block;
  height:2px;
  background:#fff8ec;
  width:100%;
  transition:background 0.25s ease;
}
body.is-scrolled .rk2-nav .hamburger span { background:var(--ink); }

/* --- HERO (cinematic centered) --- */
.rk2-hero {
  position:relative;
  min-height:100vh;
  overflow:hidden;
  background:#120b07;
}
.rk2-hero-video {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.rk2-hero::after {
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(18,11,7,0.55) 0%, rgba(18,11,7,0.18) 35%, rgba(18,11,7,0.7) 100%);
}
.rk2-hero-content {
  position:relative;
  z-index:2;
  min-height:100vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:9rem 2rem 6rem;
  color:#fff8ec;
}
.rk2-hero-eyebrow {
  margin:0 0 1.6rem;
  font-size:0.72rem;
  font-weight:600;
  letter-spacing:0.46em;
  text-transform:uppercase;
  color:var(--rk2-gold-light);
}
.rk2-hero-title {
  margin:0;
  font-family:"Cormorant Garamond", serif;
  font-size:clamp(3.5rem, 9vw, 9.5rem);
  font-weight:400;
  line-height:0.92;
  letter-spacing:-0.04em;
  max-width:1100px;
}
.rk2-hero-title em { color:var(--rk2-gold-light); font-style:italic; }
.rk2-hero-copy {
  margin:2rem auto 2.5rem;
  max-width:560px;
  color:rgba(255,248,236,0.82);
  font-size:1rem;
  line-height:1.9;
}
.rk2-hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:1.2rem;
  justify-content:center;
  align-items:center;
}
.rk2-btn-light {
  display:inline-block;
  background:#fff8ec;
  color:var(--ink);
  padding:1rem 2.6rem;
  text-decoration:none;
  font-size:0.74rem;
  font-weight:600;
  letter-spacing:0.18em;
  text-transform:uppercase;
  transition:background 0.25s ease;
}
.rk2-btn-light:hover { background:var(--rk2-gold-light); }
.rk2-link-light {
  color:#fff8ec;
  text-decoration:none;
  border-bottom:1px solid var(--rk2-gold-light);
  padding-bottom:0.2rem;
  font-size:0.78rem;
  font-weight:500;
  letter-spacing:0.16em;
  text-transform:uppercase;
}

.rk2-hero-scroll {
  position:absolute;
  bottom:2.4rem;
  left:50%;
  transform:translateX(-50%);
  z-index:2;
  color:rgba(255,248,236,0.7);
  font-size:0.62rem;
  font-weight:600;
  letter-spacing:0.32em;
  text-transform:uppercase;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:0.6rem;
}
.rk2-hero-scroll::after {
  content:"";
  width:1px;
  height:36px;
  background:rgba(255,248,236,0.6);
  animation:scroll-pulse 1.8s ease-in-out infinite;
}
@keyframes scroll-pulse {
  0%,100% { transform:scaleY(1); opacity:0.6; }
  50% { transform:scaleY(0.4); opacity:1; }
}

/* --- SECTION COMMON --- */
.rk2-section { padding:7rem 6rem; }
.rk2-section-head {
  text-align:center;
  margin-bottom:4rem;
}
.rk2-section-kicker {
  margin:0 0 0.8rem;
  color:var(--gold);
  font-size:0.72rem;
  font-weight:600;
  letter-spacing:0.34em;
  text-transform:uppercase;
}
.rk2-section-title {
  margin:0;
  font-family:"Cormorant Garamond", serif;
  font-size:clamp(2.4rem, 4.2vw, 4.8rem);
  font-weight:400;
  line-height:1;
  letter-spacing:-0.02em;
}
.rk2-section-sub {
  margin:1.4rem auto 0;
  max-width:600px;
  color:var(--rk2-muted);
  font-size:0.95rem;
  line-height:1.9;
}

/* --- SHOP CIRCLES --- */
.rk2-circles {
  display:grid;
  grid-template-columns:repeat(8, minmax(0, 1fr));
  gap:1.4rem;
}
.rk2-circle {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:0.9rem;
  text-decoration:none;
  color:var(--ink);
}
.rk2-circle-img {
  width:140px;
  height:140px;
  border-radius:50%;
  overflow:hidden;
  border:1px solid var(--line);
  background:var(--sand);
  transition:transform 0.4s ease, box-shadow 0.4s ease;
}
.rk2-circle-img img { width:100%; height:100%; object-fit:cover; display:block; }
.rk2-circle:hover .rk2-circle-img {
  transform:translateY(-4px) scale(1.04);
  box-shadow:0 18px 40px rgba(26,18,8,0.18);
}
.rk2-circle strong {
  font-family:"Cormorant Garamond", serif;
  font-size:1.1rem;
  font-weight:600;
  letter-spacing:0.02em;
}
.rk2-circle span {
  font-size:0.62rem;
  font-weight:600;
  letter-spacing:0.18em;
  color:var(--rk2-muted);
  text-transform:uppercase;
}

/* --- FULL-BLEED EDITORIAL BANNER --- */
.rk2-banner {
  position:relative;
  width:100%;
  min-height:80vh;
  overflow:hidden;
  color:#fff8ec;
  display:flex;
  align-items:center;
}
.rk2-banner-bg {
  position:absolute;
  inset:0;
  z-index:0;
}
.rk2-banner-bg img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform 1.4s ease;
}
.rk2-banner:hover .rk2-banner-bg img { transform:scale(1.04); }
.rk2-banner::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg, rgba(18,11,7,0.7) 0%, rgba(18,11,7,0.32) 55%, rgba(18,11,7,0.06) 100%);
}
.rk2-banner.right::after {
  background:linear-gradient(-90deg, rgba(18,11,7,0.7) 0%, rgba(18,11,7,0.32) 55%, rgba(18,11,7,0.06) 100%);
}
.rk2-banner-copy {
  position:relative;
  z-index:2;
  padding:7rem 6rem;
  max-width:600px;
}
.rk2-banner.right .rk2-banner-copy { margin-left:auto; }
.rk2-banner-copy .rk2-section-kicker { color:var(--rk2-gold-light); }
.rk2-banner-copy h2 {
  margin:0;
  font-family:"Cormorant Garamond", serif;
  font-size:clamp(2.6rem, 4.2vw, 4.8rem);
  font-weight:400;
  line-height:1;
  letter-spacing:-0.02em;
  color:#fff8ec;
}
.rk2-banner-copy h2 em { color:var(--rk2-gold-light); font-style:italic; }
.rk2-banner-copy p {
  margin:1.6rem 0 2.2rem;
  max-width:460px;
  color:rgba(255,248,236,0.85);
  line-height:1.9;
}

/* --- ASYMMETRIC MOSAIC --- */
.rk2-mosaic {
  display:grid;
  grid-template-columns:1.3fr 1fr 1fr 1fr;
  grid-template-rows:repeat(2, 320px);
  gap:1rem;
}
.rk2-mosaic-card {
  position:relative;
  overflow:hidden;
  text-decoration:none;
  color:#fff8ec;
  background:#21140e;
}
.rk2-mosaic-card.tall { grid-row:span 2; }
.rk2-mosaic-card.wide { grid-column:span 2; }
.rk2-mosaic-card img {
  width:100%; height:100%;
  object-fit:cover;
  display:block;
  opacity:0.86;
  transition:transform 0.7s ease, opacity 0.3s ease;
}
.rk2-mosaic-card:hover img {
  transform:scale(1.06);
  opacity:0.74;
}
.rk2-mosaic-label {
  position:absolute;
  left:1.6rem;
  bottom:1.6rem;
  right:1.6rem;
  padding-left:0.9rem;
  border-left:2px solid var(--rk2-gold-light);
}
.rk2-mosaic-label strong {
  display:block;
  font-family:"Cormorant Garamond", serif;
  font-size:1.85rem;
  font-weight:500;
  line-height:1;
}
.rk2-mosaic-label span {
  display:block;
  margin-top:0.45rem;
  color:rgba(255,248,236,0.82);
  font-size:0.66rem;
  font-weight:600;
  letter-spacing:0.18em;
  text-transform:uppercase;
}

/* --- PRODUCTS (3 col larger) --- */
.rk2-products-strip { background:#f4eadc; }
.rk2-product-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:1.6rem;
}
.rk2-product { color:var(--ink); text-decoration:none; }
.rk2-product-media {
  position:relative;
  overflow:hidden;
  aspect-ratio:3/4;
  background:var(--sand);
}
.rk2-product-media img {
  width:100%; height:100%;
  object-fit:cover;
  display:block;
  transition:transform 0.65s ease;
}
.rk2-product:hover img { transform:scale(1.05); }
.rk2-product-quick {
  position:absolute;
  left:0; right:0; bottom:0;
  transform:translateY(100%);
  background:rgba(26,18,8,0.92);
  color:#fff8ec;
  padding:0.95rem;
  font-size:0.72rem;
  font-weight:600;
  letter-spacing:0.18em;
  text-transform:uppercase;
  text-align:center;
  transition:transform 0.35s ease;
}
.rk2-product:hover .rk2-product-quick { transform:translateY(0); }
.rk2-product-badge {
  position:absolute;
  top:0.9rem;
  left:0.9rem;
  background:#fff8ec;
  color:var(--wine);
  padding:0.4rem 0.7rem;
  font-size:0.62rem;
  font-weight:600;
  letter-spacing:0.14em;
  text-transform:uppercase;
}
.rk2-product-name {
  margin:1.1rem 0 0.4rem;
  font-family:"Cormorant Garamond", serif;
  font-size:1.55rem;
  font-weight:600;
}
.rk2-product-meta {
  margin:0;
  color:var(--rk2-muted);
  font-size:0.84rem;
}
.rk2-product-price {
  margin:0.55rem 0 0;
  font-size:0.86rem;
  font-weight:600;
  letter-spacing:0.08em;
}

/* --- PRESS / AS SEEN IN --- */
.rk2-press {
  background:var(--ink);
  color:#fff8ec;
  padding:4.5rem 6rem;
  text-align:center;
}
.rk2-press p {
  margin:0 0 2.2rem;
  color:var(--rk2-gold-light);
  font-size:0.7rem;
  font-weight:600;
  letter-spacing:0.4em;
  text-transform:uppercase;
}
.rk2-press-row {
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:3.5rem;
}
.rk2-press-row span {
  font-family:"Cormorant Garamond", serif;
  font-size:1.6rem;
  font-style:italic;
  color:rgba(255,248,236,0.72);
  letter-spacing:0.04em;
}

/* --- LOOKBOOK STACKED --- */
.rk2-lookbook {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
  padding:1rem;
  background:var(--ink);
}
.rk2-lookbook figure {
  position:relative;
  margin:0;
  overflow:hidden;
  min-height:520px;
}
.rk2-lookbook figure.tall { grid-row:span 2; min-height:1060px; }
.rk2-lookbook img {
  width:100%; height:100%;
  object-fit:cover;
  opacity:0.84;
  display:block;
}
.rk2-lookbook figcaption {
  position:absolute;
  left:1.6rem;
  bottom:1.6rem;
  right:1.6rem;
  color:#fff8ec;
}
.rk2-lookbook figcaption strong {
  display:block;
  font-family:"Cormorant Garamond", serif;
  font-size:2.2rem;
  line-height:1;
}
.rk2-lookbook figcaption span {
  display:block;
  margin-top:0.4rem;
  font-size:0.68rem;
  font-weight:600;
  letter-spacing:0.2em;
  text-transform:uppercase;
  color:rgba(255,248,236,0.74);
}

/* --- SERVICE ROW --- */
.rk2-service-row {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  padding:0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#fffaf1;
}
.rk2-service { padding:1rem 2rem; border-right:1px solid var(--line); text-align:center; }
.rk2-service:last-child { border-right:0; }
.rk2-service strong {
  display:block;
  margin-bottom:0.45rem;
  font-size:0.75rem;
  font-weight:600;
  letter-spacing:0.18em;
  text-transform:uppercase;
}
.rk2-service span {
  color:var(--rk2-muted);
  font-size:0.78rem;
  line-height:1.45;
}

.rk2-footer-note {
  color:rgba(250,247,242,0.78);
  font-size:0.8rem;
  line-height:1.7;
}

/* --- RESPONSIVE --- */
@media (max-width:1100px) {
  .rk2-nav { padding:1.4rem 2rem; }
  body.is-scrolled .rk2-nav { padding:0.7rem 2rem; }
  .rk2-nav .nav-links { gap:1rem; }
  .rk2-nav .nav-links a { font-size:0.7rem; letter-spacing:0.14em; }

  .rk2-circles { grid-template-columns:repeat(4, minmax(0, 1fr)); }
  .rk2-product-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .rk2-mosaic {
    grid-template-columns:1fr 1fr;
    grid-template-rows:repeat(3, 280px);
  }
  .rk2-mosaic-card.tall,
  .rk2-mosaic-card.wide { grid-row:auto; grid-column:auto; }
  .rk2-banner-copy { padding:5rem 3rem; }
  .rk2-service-row { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}

@media (max-width:900px) {
  .rk2-top-strip {
    gap:1rem;
    font-size:0.6rem;
    flex-wrap:wrap;
    text-align:center;
  }

  .rk2-nav .nav-links { display:none; }
  .rk2-nav .hamburger { display:flex; }

  .rk2-section { padding:4.5rem 1.5rem; }
  .rk2-press { padding:3.5rem 1.5rem; }
  .rk2-press-row { gap:2rem; }

  .rk2-banner { min-height:auto; }
  .rk2-banner-copy { padding:4rem 1.5rem; max-width:none; }
  .rk2-banner.right .rk2-banner-copy { margin-left:0; }
  .rk2-banner::after,
  .rk2-banner.right::after {
    background:linear-gradient(0deg, rgba(18,11,7,0.78) 0%, rgba(18,11,7,0.25) 60%);
  }

  .rk2-lookbook {
    grid-template-columns:1fr;
  }
  .rk2-lookbook figure.tall { grid-row:auto; min-height:420px; }

  .rk2-circle-img { width:110px; height:110px; }
}

@media (max-width:620px) {
  .rk2-hero-content { padding:7rem 1.2rem 4rem; }
  .rk2-circles { grid-template-columns:repeat(3, minmax(0, 1fr)); gap:1rem; }
  .rk2-product-grid { grid-template-columns:1fr; }
  .rk2-mosaic { grid-template-columns:1fr; grid-template-rows:repeat(6, 260px); }
  .rk2-service-row { grid-template-columns:1fr; }
}

.nav-actions { gap:0.95rem; }
.nav-account-trigger .nav-label { max-width:92px; overflow:hidden; text-overflow:ellipsis; }
.nav-wishlist-link .nav-icon { stroke-width:1.45; }
.mobile-menu-extra {
  font-family:'Jost',sans-serif;
  font-size:0.78rem;
  font-weight:600;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:var(--text);
  text-decoration:none;
  padding:0.7rem 2rem;
}

.search-modal { width:min(780px, calc(100vw - 2rem)); background:#fffdf9; border-color:rgba(184,136,46,0.28); }
.search-head { padding:1rem; }
.search-input { height:48px; border-color:rgba(184,136,46,0.42); font-size:0.9rem; }
.search-suggestions { padding:0.45rem; max-height:64vh; }
.search-item {
  display:grid;
  grid-template-columns:58px minmax(0, 1fr) auto;
  align-items:center;
  gap:0.95rem;
  padding:0.72rem;
  border:1px solid transparent;
}
.search-item:hover { border-color:rgba(184,136,46,0.26); background:#fbf7ef; }
.search-thumb {
  width:58px;
  height:72px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f4efe7;
  color:var(--gold);
  overflow:hidden;
  font-family:'Cormorant Garamond',serif;
  font-size:1.45rem;
}
.search-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.search-copy { min-width:0; display:flex; flex-direction:column; gap:0.18rem; }
.search-type {
  width:max-content;
  font-size:0.58rem;
  font-weight:600;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:var(--gold);
}
.search-item strong {
  font-size:1.18rem;
  line-height:1.1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.search-copy em {
  font-style:normal;
  color:var(--muted);
  font-size:0.72rem;
  letter-spacing:0.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.search-price {
  font-family:'Jost',sans-serif;
  font-weight:600;
  color:var(--deep);
  white-space:nowrap;
  font-size:0.86rem;
}
.search-empty {
  display:flex;
  flex-direction:column;
  gap:0.25rem;
  padding:1.2rem;
  color:var(--muted);
}
.search-empty strong { color:var(--deep); font-family:'Cormorant Garamond',serif; font-size:1.35rem; font-weight:500; }
.search-empty span { font-size:0.78rem; letter-spacing:0.04em; }
.search-start {
  min-height:120px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:var(--muted);
  font-family:'Jost',sans-serif;
  font-size:0.78rem;
  letter-spacing:0.08em;
}
.search-loading {
  min-height:120px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0.75rem;
  color:var(--text);
  font-family:'Jost',sans-serif;
  font-size:0.78rem;
  font-weight:500;
  letter-spacing:0.12em;
  text-transform:uppercase;
}
.search-loading i {
  width:18px;
  height:18px;
  border:2px solid rgba(184,136,46,0.24);
  border-top-color:var(--gold);
  border-radius:50%;
  animation:anaishaSearchSpin 0.75s linear infinite;
}
@keyframes anaishaSearchSpin {
  to { transform:rotate(360deg); }
}

.products-page .brand-filter-option { gap:0.55rem; }
.products-page .filter-brand-img {
  width:28px;
  height:34px;
  flex:0 0 28px;
  overflow:hidden;
  background:#f4efe7;
  border:1px solid rgba(184,136,46,0.18);
}
.products-page .filter-brand-img img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.product-details-page .anaisha-ti-wishlist { margin-top:0.6rem; }
.product-details-page .anaisha-ti-wishlist .tinv-wraper { width:100%; margin:0; }
.product-details-page .anaisha-ti-wishlist .tinvwl-tooltip,
.product-details-page .anaisha-ti-wishlist .tinv-wishlist-clear { display:none !important; }
.product-details-page .anaisha-ti-wishlist a.tinvwl_add_to_wishlist_button {
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:0.5rem;
  width:100%;
  min-height:48px;
  box-sizing:border-box;
  background:transparent;
  color:var(--text) !important;
  border:1px solid rgba(184,136,46,0.35);
  padding:0.75rem 1rem;
  font-family:'Jost',sans-serif;
  font-size:0.75rem;
  font-weight:500;
  letter-spacing:0.12em;
  text-transform:uppercase;
  text-decoration:none !important;
  transition:all 0.2s;
}
.product-details-page .anaisha-ti-wishlist a.tinvwl_add_to_wishlist_button:hover {
  border-color:var(--gold);
  color:var(--gold) !important;
}
.product-details-page .anaisha-ti-wishlist .tinvwl_add_to_wishlist-text,
.product-details-page .anaisha-ti-wishlist .tinvwl_remove_from_wishlist-text,
.product-details-page .anaisha-ti-wishlist .tinvwl_already_on_wishlist-text {
  letter-spacing:0.12em;
}

.wishlist-page .breadcrumb {
  margin-top:0;
  padding:1.1rem 5rem;
  background:#fffdf9;
  border-bottom:1px solid var(--border);
}
.wishlist-shell {
  max-width:1240px;
  margin:0 auto;
  padding:4rem 2rem 6rem;
}
.wishlist-hero {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:2rem;
  padding: 0 0 1.8rem;
  border-bottom:1px solid var(--border);
}
.wishlist-kicker {
  display:block;
  margin-bottom:0.45rem;
  font-size:0.76rem;
  font-weight:600;
  letter-spacing:0.2em;
  text-transform:uppercase;
  color:var(--gold);
}
.wishlist-hero h1 {
  margin:0;
  font-family: 'Cormorant Garamond', serif;
  font-size: 2.4rem;
  font-weight: 500;
  color:var(--deep);
}  
.wishlist-shop-link {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 1.4rem;
  border:1px solid rgba(184,136,46,0.45);
  color:var(--text);
  text-decoration:none;
  font-size:0.76rem;
  font-weight:600;
  letter-spacing:0.14em;
  text-transform:uppercase;
}
.wishlist-shop-link:hover { border-color:var(--gold); color:var(--gold); }
.wishlist-board {
  margin-top:2rem;
  background:#fffdf9;
  border:1px solid rgba(184,136,46,0.18);
  padding:1rem;
}
.wishlist-board .tinv-wishlist { margin:0; }
.wishlist-board .tinv-header {
    display: none;
}
.wishlist-board .tinv-header h2 {
  margin:0 0 1.1rem;
  color:var(--deep);
  font-family:'Cormorant Garamond',serif;
  font-size:2rem;
  font-weight:500;
}
.wishlist-board table {
  width:100%;
  border-collapse:collapse;
  background:transparent;
}
.wishlist-board table th {
  padding:1rem 0.8rem;
  color:var(--muted);
  font-size:0.68rem;
  font-weight:600;
  letter-spacing:0.16em;
  text-transform:uppercase;
  border-bottom:1px solid var(--border);
}
.wishlist-board table td {
  padding:1rem 0.8rem;
  border-bottom:1px solid rgba(184,136,46,0.16);
  vertical-align:middle;
}
.wishlist-board .product-name a {
  color:var(--deep);
  font-family:'Cormorant Garamond',serif;
  font-size:1.35rem;
  text-decoration:none;
}
.wishlist-board .product-price,
.wishlist-board .product-stock {
  font-family:'Jost',sans-serif;
  color:var(--text);
}
.wishlist-board .product-action button,
.wishlist-board .product-action a,
.wishlist-board .tinvwl-to-left button,
.wishlist-board .button {
  min-height:42px;
  border:0 !important;
  background:var(--deep) !important;
  color:#fff !important;
  padding:0 1.15rem !important;
  font-family:'Jost',sans-serif !important;
  font-size:0.72rem !important;
  font-weight:600 !important;
  letter-spacing:0.13em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  border-radius:0 !important;
}
.wishlist-board .tinvwl-input-group .form-control {
  min-height:42px;
  border:1px solid rgba(184,136,46,0.32);
  background:#fff;
  font-family:'Jost',sans-serif;
}
.wishlist-board .tinvwl-empty,
.wishlist-board .wishlist-empty,
.wishlist-board .cart-empty {
  margin:0;
  padding:3rem 1rem;
  text-align:center;
  color:var(--muted);
  background:#fbf7ef;
  border:1px solid rgba(184,136,46,0.18);
}
.wishlist-board .return-to-shop {
  margin:1rem 0 0;
  text-align:center;
}
.wishlist-board .return-to-shop .button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

@media (max-width:900px) {
  .nav-actions { gap:0.75rem; }
  .search-item { grid-template-columns:48px minmax(0, 1fr); }
  .search-thumb { width:48px; height:60px; }
  .search-price { grid-column:2; }
  .wishlist-page .breadcrumb { padding:1rem 1.5rem; }
  .wishlist-shell { padding:3rem 1.2rem 5rem; }
  .wishlist-hero { align-items:flex-start; flex-direction:column; }
  .wishlist-board { padding:0.85rem; overflow-x:auto; }
}
