/* ═══════════════════════════════════════
   BRAND SYSTEM — AVM REVERIA
   BG: #F5F0E1  |  Orange: #C26E35
   Coral: #FF5E57  |  Navy: #0E042D
   NO BLACK BACKGROUNDS
═══════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:        #F5F0E1;
  --bg-card:   #EDE8D5;
  --bg-section:#E8E2CE;
  --orange:    #C26E35;
  --coral:     #FF5E57;
  --mint:      #A8E6CF;
  --navy:      #0E042D;
  --ink:       #1a1410;
  --ink-soft:  #5a5248;
  --ink-muted: #9a9080;
  --font-display: 'EB Garamond', serif;
  --font-body:    'Montserrat', sans-serif;
}
html{overflow-x:hidden;scroll-behavior:smooth;padding-right:0 !important;}
body{font-family:var(--font-body);background:var(--bg);color:var(--ink);overflow-x:hidden;cursor:none;padding-right:0 !important;}

/* ── CURSOR ──
   S20 FIX: The cursor was off-center on hover.
   Root cause: JS was using translate(clientX - 4, clientY - 4) to position
   the cursor. The -4 is half of 9px (the dot size). But on hover the element
   expands to 38px — the transform no longer centers it.
   FIX: position via left/top (set by JS), center with transform:translate(-50%,-50%).
   This way the center point is ALWAYS at the mouse position regardless of size.
── */
#cur{
  width:9px;height:9px;
  background:var(--ink);border-radius:50%;
  position:fixed;top:0;left:0;
  pointer-events:none;z-index:9999;
  /* translate(-50%,-50%) keeps the CENTER at the left/top coords set by JS */
  transform:translate(-50%,-50%);
  transition:width .25s,height .25s,background .2s,border-radius .25s;
  will-change:left,top;
}
#cur.h{
  width:38px;height:38px;
  background:transparent;
  border:1.5px solid var(--orange);
  border-radius:50%;
}

/* ── TOAST ── */
.toast{position:fixed;bottom:2.5rem;left:50%;transform:translateX(-50%) translateY(20px);background:var(--ink);color:var(--bg);font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;padding:12px 28px;z-index:9000;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;}
.toast.on{opacity:1;transform:translateX(-50%) translateY(0)}

/* ══════════════════════════════════════
   NAV
══════════════════════════════════════ */
#avm-nav{position:fixed;top:0;left:0;right:0;z-index:900;background:var(--bg);border-bottom:1px solid rgba(26,20,16,.09);height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 3rem;transition:box-shadow .3s;}
#avm-nav.scrolled{box-shadow:0 2px 24px rgba(14,4,45,.06)}
.nav-left{display:flex;gap:2.5rem;list-style:none;position:relative;z-index:1;}
.nav-left a{font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);text-decoration:none;cursor:none;transition:color .2s;}
.nav-left a:hover{color:var(--orange)}
.nav-logo-wrap{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;pointer-events:auto;}
.nav-logo-link{display:flex;align-items:center;text-decoration:none;cursor:none}
.nav-logo-img{height:52px;width:auto;display:block;object-fit:contain;}
.nav-right{display:flex;align-items:center;justify-content:flex-end;gap:1rem;position:relative;z-index:1;}
.nav-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:4px;cursor:pointer;z-index:1;flex-shrink:0;position:relative;}
.nav-hamburger span{display:block;width:22px;height:1.5px;background:var(--ink);transition:transform .3s,opacity .3s;transform-origin:center;}
.nav-hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nav-hamburger.open span:nth-child(2){opacity:0}
.nav-hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.cart-btn{position:relative;font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);background:none;border:1px solid rgba(26,20,16,.25);padding:8px 20px;cursor:none;transition:background .2s,color .2s,border-color .2s;}
.cart-btn:hover{background:var(--orange);color:var(--bg);border-color:var(--orange)}
.cart-badge{position:absolute;top:-7px;right:-7px;background:var(--coral);color:#fff;font-size:8px;font-weight:600;width:17px;height:17px;border-radius:50%;display:flex;align-items:center;justify-content:center;}

/* ════════════════════════════════════════
   HERO — MINIMAL EDITORIAL
════════════════════════════════════════ */
.hero{position:relative;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.hero-slides{position:absolute;inset:0}
.hslide{position:absolute;inset:0;opacity:0;transition:opacity 1.8s cubic-bezier(.4,0,.2,1);background-size:cover;background-position:center center;}
.hslide.active{opacity:1}
.hero-film{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(14,4,45,.08) 0%,rgba(14,4,45,.18) 50%,rgba(14,4,45,.55) 100%);}
.hero-inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;width:100%;height:100%;padding-bottom:10vh;text-align:center;}
.hero-minimal{display:flex;flex-direction:column;align-items:center;gap:1.6rem;}
.hero-drop-label{font-family:var(--font-body);font-size:9px;font-weight:500;letter-spacing:.5em;text-transform:uppercase;color:rgba(245,240,225,.65);display:block;}
.hero-cta{display:inline-block;font-family:var(--font-body);font-size:9px;font-weight:500;letter-spacing:.35em;text-transform:uppercase;color:var(--bg);background:transparent;border:1px solid rgba(245,240,225,.5);padding:13px 44px;text-decoration:none;cursor:none;transition:background .25s,border-color .25s,color .25s;}
.hero-cta:hover{background:var(--bg);color:var(--ink);border-color:var(--bg);}
.hero-dots{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;gap:8px;align-items:center;z-index:3;}
.sindot{height:2px;background:rgba(245,240,225,.3);cursor:none;transition:width .35s,background .25s;width:20px;}
.sindot.act{width:44px;background:rgba(245,240,225,.85)}

/* ── TICKER ── */
.ticker{background:var(--navy);padding:11px 0;overflow:hidden}
.ticker-track{display:flex;white-space:nowrap;animation:ticker 24s linear infinite;}
@keyframes ticker{to{transform:translateX(-50%)}}
.ticker-item{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--bg);padding:0 3rem;flex-shrink:0;opacity:.85;}
.ticker-item.accent{color:var(--coral);opacity:1}

/* ── SECTION BASE ── */
section{padding:8rem 3rem}
.s-label{font-family:var(--font-body);font-size:9px;font-weight:500;letter-spacing:.38em;text-transform:uppercase;color:var(--orange);display:block;margin-bottom:.7rem;}
.s-title{font-family:var(--font-display);font-size:clamp(36px,5.5vw,76px);font-weight:500;letter-spacing:-.01em;line-height:1;color:var(--ink);margin-bottom:3.5rem;}
.s-title.light{color:var(--bg)}
.hr{height:1px;background:rgba(26,20,16,.08);margin:0 3rem}

/* ── NEW IN ── */
.new-in{background:var(--bg);padding:5rem 3rem 8rem}
.ni-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:2rem}
.ni-card{position:relative;overflow:hidden;cursor:none;background:var(--bg-card);transition:background .25s;}
.ni-card:hover{background:var(--bg-section)}
.ni-img{width:100%;aspect-ratio:3/4;overflow:hidden}
.ni-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s cubic-bezier(.16,1,.3,1);}
.ni-card:hover .ni-img img{transform:scale(1.05)}
.ni-tag{position:absolute;top:.9rem;left:.9rem;font-family:var(--font-body);font-size:8px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;padding:4px 10px;}
.ni-tag.new-tag{background:var(--coral);color:#fff}
.ni-tag.best{background:var(--navy);color:var(--bg)}
.ni-overlay{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;padding-bottom:1.5rem;opacity:0;background:rgba(14,4,45,.25);transition:opacity .3s;}
.ni-card:hover .ni-overlay{opacity:1}
.qadd{font-family:var(--font-body);font-size:9px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;background:var(--bg);color:var(--ink);border:none;padding:10px 24px;cursor:none;transform:translateY(10px);transition:transform .3s,background .2s,color .2s;display:inline-flex;align-items:center;justify-content:center;text-align:center;}
.ni-card:hover .qadd{transform:translateY(0)}
.qadd:hover{background:var(--orange);color:var(--bg)}
.ni-info{padding:1rem .9rem}
.ni-name{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.07em;color:var(--ink);margin-bottom:4px;}
.ni-price{font-family:var(--font-display);font-size:17px;font-style:italic;color:var(--ink-soft);}
.va-wrap{text-align:center;margin-top:3.5rem}
.va-link{font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);text-decoration:none;cursor:none;border-bottom:1px solid rgba(26,20,16,.2);padding-bottom:3px;transition:color .2s,border-color .2s;}
.va-link:hover{color:var(--orange);border-color:var(--orange)}

/* ── FEATURED ── */
.featured{background:var(--navy);padding:8rem 3rem}
.feat-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:3.5rem;}
.feat-link{font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:rgba(245,240,225,.45);text-decoration:none;cursor:none;border-bottom:1px solid rgba(245,240,225,.2);padding-bottom:2px;transition:color .2s,border-color .2s;}
.feat-link:hover{color:var(--bg);border-color:var(--bg)}
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px}
.pgrid .pc:first-child,.pc.pc-wide{grid-row:span 2}
.pc{position:relative;overflow:hidden;cursor:none;background:#0a0220}
.pc-img{width:100%;aspect-ratio:3/4;overflow:hidden;position:relative}
.pc.pc-wide .pc-img,.pgrid .pc:first-child .pc-img{aspect-ratio:auto;height:100%}
.pc-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.16,1,.3,1);}
.pc:hover .pc-img img{transform:scale(1.06)}
.pc-tag{position:absolute;top:.9rem;left:.9rem;font-family:var(--font-body);font-size:8px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;padding:4px 10px;}
.pc-tag.n{background:var(--orange);color:var(--bg)}
.pc-tag.b{background:var(--coral);color:#fff}
.pc-overlay{position:absolute;inset:0;opacity:0;background:rgba(14,4,45,.4);display:flex;align-items:flex-end;justify-content:center;padding-bottom:1.5rem;transition:opacity .3s;}
.pc:hover .pc-overlay{opacity:1}
.qadd-l{font-family:var(--font-body);font-size:9px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;background:var(--bg);color:var(--ink);border:none;padding:10px 24px;cursor:none;transform:translateY(12px);transition:transform .3s,background .2s,color .2s;display:inline-flex;align-items:center;justify-content:center;text-align:center;}
.pc:hover .qadd-l{transform:translateY(0)}
.qadd-l:hover{background:var(--orange);color:var(--bg)}
.pc-info{padding:1.2rem 1.1rem;background:var(--navy)}
.pc-name{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.07em;color:var(--bg);margin-bottom:3px;}
.pc-sub{font-family:var(--font-display);font-size:13px;font-style:italic;color:rgba(245,240,225,.45);margin-bottom:4px;}
.pc-price{font-family:var(--font-display);font-size:17px;font-style:italic;color:rgba(245,240,225,.7);}
.pc-price ins{text-decoration:none}
.pc-price del{opacity:.5;font-size:13px;margin-right:6px}

/* ── ABOUT ── */
.about-pg{background:var(--bg)}
.about-hero{height:72vh;display:flex;align-items:flex-end;padding:5rem 3rem;position:relative;overflow:hidden;}
.about-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center}
.about-hero::before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(14,4,45,.88) 0%,rgba(14,4,45,.3) 60%,rgba(14,4,45,.1) 100%);}
.about-hero-text{position:relative;z-index:2}
.about-hero h1{font-family:var(--font-display);font-size:clamp(52px,9vw,116px);font-weight:500;letter-spacing:-.01em;line-height:.9;color:var(--bg);margin-bottom:.8rem;}
.about-hero p{font-family:var(--font-display);font-size:19px;font-style:italic;color:rgba(245,240,225,.55);}
.about-blocks{max-width:960px;padding:0 3rem}
.ab{display:grid;grid-template-columns:180px 1fr;gap:4rem;padding:5.5rem 0;border-top:1px solid rgba(26,20,16,.08);}
.ab-label{font-family:var(--font-body);font-size:9px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--orange);padding-top:6px;}
.ab-text{font-family:var(--font-display);font-size:clamp(20px,2.5vw,30px);font-weight:400;line-height:1.72;color:var(--ink);}
.ab-text em{font-style:italic;color:var(--ink-soft)}
.about-vals{padding:7rem 3rem;background:var(--bg-section)}
.vals-g{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:3rem}
.val{padding:3rem;background:var(--bg)}
.val-n{font-family:var(--font-display);font-size:80px;font-weight:400;color:rgba(26,20,16,.05);line-height:1;margin-bottom:.8rem;}
.val-t{font-family:var(--font-display);font-size:26px;font-weight:500;letter-spacing:.02em;color:var(--ink);margin-bottom:.8rem;}
.val-d{font-family:var(--font-body);font-size:12px;line-height:1.85;color:var(--ink-muted)}

/* ── CONTACT ── */
.contact-pg{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;padding-top:72px;background:var(--bg);}
.contact-l{background:var(--bg-card);padding:7rem 4rem;border-right:1px solid rgba(26,20,16,.07);display:flex;flex-direction:column;justify-content:center;}
.contact-l h1{font-family:var(--font-display);font-size:clamp(48px,6.5vw,92px);font-weight:500;letter-spacing:-.01em;line-height:.92;color:var(--ink);margin-bottom:2rem;}
.contact-l>p{font-family:var(--font-display);font-size:18px;font-style:italic;color:var(--ink-soft);line-height:1.7;margin-bottom:3rem;}
.ci{margin-bottom:1.5rem}
.ci span{font-family:var(--font-body);font-size:8px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--orange);display:block;margin-bottom:3px;}
.ci a,.ci p{font-family:var(--font-body);font-size:13px;letter-spacing:.06em;color:var(--ink-muted);text-decoration:none}
.socials{display:flex;gap:1.5rem;margin-top:2.5rem}
.soc{font-family:var(--font-body);font-size:9px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-muted);text-decoration:none;cursor:none;border-bottom:1px solid transparent;padding-bottom:2px;transition:color .2s,border-color .2s;}
.soc:hover{color:var(--orange);border-color:var(--orange)}
.contact-r{background:var(--bg);padding:7rem 4rem;display:flex;flex-direction:column;justify-content:center;}
.cf{display:flex;flex-direction:column;gap:2rem}
.ff{display:flex;flex-direction:column;gap:7px;border-bottom:1px solid rgba(26,20,16,.1);padding-bottom:.8rem}
.ff label{font-family:var(--font-body);font-size:8px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--orange)}
.ff input,.ff textarea{background:transparent;border:none;color:var(--ink);font-family:var(--font-body);font-size:13px;letter-spacing:.06em;outline:none;resize:none}
.ff input::placeholder,.ff textarea::placeholder{color:var(--ink-muted)}
.cf-submit{margin-top:.5rem;padding:17px 44px;align-self:flex-start;background:var(--ink);color:var(--bg);border:none;font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;cursor:none;transition:background .2s,transform .1s;}
.cf-submit:hover{background:var(--orange);transform:translateY(-1px)}

/* ── CART DRAWER ── */
.cart-veil{position:fixed;inset:0;background:rgba(14,4,45,.35);z-index:1000;display:none;backdrop-filter:blur(6px)}
.cart-veil.on{display:block}
.cart-drawer{position:fixed;top:0;right:0;width:min(420px,100vw);height:100vh;background:var(--bg);z-index:1100;transform:translateX(100%);transition:transform .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;border-left:1px solid rgba(26,20,16,.1);will-change:transform;}
.cart-drawer.on{transform:translateX(0)}
.cd-hdr{display:flex;align-items:center;justify-content:space-between;padding:1.8rem 1.8rem 1.4rem;border-bottom:1px solid rgba(26,20,16,.08);flex-shrink:0;}
.cd-title{font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--ink)}
.cd-close{font-size:22px;background:none;border:none;color:var(--ink-muted);cursor:none;line-height:1;transition:color .2s;display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;}
.cd-close:hover{color:var(--ink)}
.cd-items{flex:1;overflow-y:auto;padding:.4rem 0}
.cd-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem}
.cd-empty-mark{font-family:var(--font-display);font-size:48px;font-weight:500;color:rgba(26,20,16,.06);letter-spacing:.08em}
.cd-empty p{font-family:var(--font-body);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-muted)}
.cd-item{display:grid;grid-template-columns:80px 1fr 28px;gap:1rem;padding:1.2rem 1.8rem;border-bottom:1px solid rgba(26,20,16,.06);align-items:start}
.cd-item-img-wrap{display:block;flex-shrink:0}
.cd-item-img{width:80px;height:106px;object-fit:cover;display:block}
.cd-item-info{display:flex;flex-direction:column;gap:4px}
.cd-item-name{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.06em;color:var(--ink)}
.cd-item-sz{font-family:var(--font-body);font-size:10px;letter-spacing:.06em;color:var(--ink-muted)}
.cd-item-price{font-family:var(--font-display);font-size:16px;font-style:italic;color:var(--ink-soft)}
.cd-qty-ctrl{display:flex;align-items:center;gap:10px;margin-top:8px}
.cd-qty-btn{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(26,20,16,.18);background:transparent;color:var(--ink);font-size:16px;cursor:none;transition:background .2s,color .2s;line-height:1;}
.cd-qty-btn:hover{background:var(--ink);color:var(--bg)}
.cd-qty-val{font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:.06em;color:var(--ink);min-width:16px;text-align:center}
.cd-item-rm{background:none;border:none;font-size:20px;color:var(--ink-muted);cursor:none;line-height:1;align-self:start;transition:color .2s;padding-top:2px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;}
.cd-item-rm:hover{color:var(--coral)}
.cd-foot{border-top:1px solid rgba(26,20,16,.1);padding:1.6rem 1.8rem;flex-shrink:0}
.cd-total-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.2rem}
.cd-total-label{font-family:var(--font-body);font-size:9px;font-weight:500;letter-spacing:.25em;text-transform:uppercase;color:var(--ink-muted)}
.cd-total-val{font-family:var(--font-display);font-size:24px;font-style:italic;color:var(--ink)}
.cd-checkout{display:flex;width:100%;padding:16px;background:var(--ink);color:var(--bg);font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;text-align:center;text-decoration:none;cursor:none;transition:background .2s,transform .1s;margin-bottom:.7rem;align-items:center;justify-content:center;border:none;}
.cd-checkout:hover{background:var(--orange);transform:translateY(-1px)}
.cd-checkout:disabled,.cd-checkout[disabled],.cd-checkout.disabled{background:var(--ink-muted);color:rgba(245,240,225,.5);cursor:not-allowed;transform:none;pointer-events:none;opacity:.6;}
.cd-continue{display:flex;width:100%;padding:13px;background:transparent;color:var(--ink-muted);border:1px solid rgba(26,20,16,.14);font-family:var(--font-body);font-size:9px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;cursor:none;transition:color .2s,border-color .2s;align-items:center;justify-content:center;}
.cd-continue:hover{color:var(--ink);border-color:var(--ink)}

/* ── SIZE MODAL ── */
.sz-modal-veil{position:fixed;inset:0;background:rgba(14,4,45,.4);z-index:1200;display:none;backdrop-filter:blur(4px)}
.sz-modal-veil.on{display:block}
.sz-modal{position:fixed;bottom:-100%;left:50%;transform:translateX(-50%);width:min(480px,90vw);background:var(--bg);z-index:1300;padding:2rem 2rem 2.5rem;border-top:3px solid var(--orange);transition:bottom .4s cubic-bezier(.16,1,.3,1);}
.sz-modal.on{bottom:0}
.sz-modal-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}
.sz-modal-title{font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--ink)}
.sz-modal-close{font-size:22px;background:none;border:none;color:var(--ink-muted);cursor:none;transition:color .2s;display:flex;align-items:center;justify-content:center;width:32px;height:32px;}
.sz-modal-close:hover{color:var(--ink)}
.sz-modal-product{font-family:var(--font-display);font-size:18px;font-style:italic;color:var(--ink-soft);margin-bottom:1.2rem}
.sz-modal .sz-grid{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:1.8rem}
.sz-modal-add{width:100%;padding:16px;background:var(--ink);color:var(--bg);border:none;font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;cursor:none;transition:background .2s;display:flex;align-items:center;justify-content:center;}
.sz-modal-add:hover{background:var(--orange)}

/* ── SIZE BUTTONS ── */
.sz-label{font-family:var(--font-body);font-size:9px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-muted);display:block;margin-bottom:.9rem}
.sz-grid{display:flex;gap:7px;margin-bottom:2.5rem;flex-wrap:wrap}
.sz-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(26,20,16,.18);background:transparent;color:var(--ink-muted);font-family:var(--font-body);font-size:11px;cursor:none;transition:all .2s}
.sz-btn:hover{border-color:var(--ink);color:var(--ink)}
.sz-btn.act{background:var(--ink);color:var(--bg);border-color:var(--ink)}

/* ── FOOTER ── */
.site-footer{background:var(--navy);padding:6rem 3rem 2rem}
.ft-top{display:grid;grid-template-columns:280px 1fr;gap:6rem;margin-bottom:4rem;border-bottom:1px solid rgba(245,240,225,.08);padding-bottom:4rem}
.ft-logo{font-family:var(--font-display);font-size:28px;font-weight:500;letter-spacing:.06em;color:var(--bg);margin-bottom:1rem}
.ft-tagline{font-family:var(--font-display);font-size:15px;font-style:italic;color:rgba(245,240,225,.4);line-height:1.7}
.ft-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}
.ft-col-title{font-family:var(--font-body);font-size:9px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:rgba(245,240,225,.4);margin-bottom:1.2rem}
.ft-col ul{list-style:none}
.ft-col li{margin-bottom:.7rem}
.ft-col a{font-family:var(--font-body);font-size:12px;letter-spacing:.06em;color:rgba(245,240,225,.6);text-decoration:none;cursor:none;transition:color .2s}
.ft-col a:hover{color:var(--bg)}
.ft-nl-desc{font-family:var(--font-body);font-size:11px;line-height:1.7;color:rgba(245,240,225,.4);margin-bottom:1rem}
.ft-nl{display:flex;border-bottom:1px solid rgba(245,240,225,.2);padding-bottom:.5rem}
.ft-nl input{flex:1;background:transparent;border:none;font-family:var(--font-body);font-size:12px;color:var(--bg);outline:none;letter-spacing:.05em}
.ft-nl input::placeholder{color:rgba(245,240,225,.3)}
.ft-nl button{background:none;border:none;color:rgba(245,240,225,.5);font-size:18px;cursor:none;transition:color .2s}
.ft-nl button:hover{color:var(--orange)}
.ft-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:1.5rem}
.ft-bottom p{font-family:var(--font-body);font-size:10px;letter-spacing:.1em;color:rgba(245,240,225,.25)}
.ft-socials{display:flex;gap:1.5rem}

/* ── SCROLLBAR ── */
::-webkit-scrollbar{width:4px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:rgba(26,20,16,.15);border-radius:2px}

/* ── WooCommerce overrides ── */
.woocommerce-notices-wrapper{display:none}
.woocommerce form .form-row{margin-bottom:1.5rem}
.woocommerce-page a.button,.woocommerce a.button{font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;background:var(--ink);color:var(--bg);padding:14px 32px;border-radius:0;cursor:none;transition:background .2s}
.woocommerce-page a.button:hover,.woocommerce a.button:hover{background:var(--orange)}

/* ── S19: Size grid shake animation ── */
@keyframes sz-shake {
  0%,100% { transform: translateX(0); }
  20%     { transform: translateX(-6px); }
  40%     { transform: translateX(6px); }
  60%     { transform: translateX(-4px); }
  80%     { transform: translateX(4px); }
}
.sz-shake { animation: sz-shake .45s ease; }
