:root{--black:#111114;--cream:#ffffff;--gold:#c9a86a;--line:rgba(255,255,255,.14);--aka:#e60012;--aka-deep:#b0000e;--washi:#ffffff;--cursor-bottle:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Crect x='11' y='2' width='10' height='5' rx='1.5' fill='%23f5f3ee'/%3E%3Crect x='13.5' y='7' width='5' height='3' fill='%23f5f3ee'/%3E%3Crect x='8' y='10' width='16' height='19' rx='4' fill='%23111114' stroke='%23f5f3ee' stroke-width='2'/%3E%3Crect x='11' y='18' width='10' height='8' rx='2' fill='%23e60012'/%3E%3C/svg%3E") 7 2;--cursor-bottle-hover:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='32' viewBox='0 0 36 32'%3E%3Cg transform='rotate(-12 16 17)'%3E%3Crect x='9' y='2' width='10' height='5' rx='1.5' fill='%23e60012'/%3E%3Crect x='11.5' y='7' width='5' height='3' fill='%23e60012'/%3E%3Crect x='6' y='10' width='16' height='19' rx='4' fill='%23111114' stroke='%23e60012' stroke-width='2'/%3E%3Crect x='9' y='18' width='10' height='8' rx='2' fill='%23f5f3ee'/%3E%3C/g%3E%3Ccircle cx='28' cy='8' r='1.6' fill='%23e60012'/%3E%3Ccircle cx='31' cy='13' r='1.6' fill='%23e60012'/%3E%3Ccircle cx='28' cy='18' r='1.6' fill='%23e60012'/%3E%3C/svg%3E") 7 2}
body{cursor:auto}
a,button,select,label,.card,[role="button"]{cursor:pointer}
input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="number"],textarea{cursor:text}
@media(pointer:coarse){body,a,button,select,label,.card,[role="button"]{cursor:auto}}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,'Inter','Noto Sans JP','Hiragino Kaku Gothic ProN','Helvetica Neue',Arial,sans-serif;background:#070708;color:#f5f3ee;-webkit-font-smoothing:antialiased;position:relative}
.site-bg{position:fixed;inset:0;z-index:-2;background:#fff;filter:none;transform:none}
.site-bg:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,7,8,.55),rgba(7,7,8,.82))}
main{position:relative;z-index:1}
.section-sub{color:#a8a29a}
h1,h2{font-family:inherit;line-height:1.05;font-weight:600;letter-spacing:-.03em}
h2{font-size:clamp(32px,4.5vw,56px)}
.jp,.jp-head,.jp-side,.hanko{display:none}
.shop{position:relative;overflow:hidden}
.bg-sun{position:absolute;width:420px;height:420px;border-radius:50%;background:var(--aka);opacity:.1;top:-120px;right:-120px;pointer-events:none}
.bg-sun.small{width:300px;height:300px;top:-100px;left:-100px;right:auto;opacity:.12}
.bg-ring{position:absolute;width:520px;height:520px;border-radius:50%;border:2px solid var(--aka);opacity:.18;bottom:-260px;left:-180px;pointer-events:none}
.bg-lines{position:absolute;top:0;bottom:0;left:50%;width:1px;background:repeating-linear-gradient(180deg,var(--aka) 0 8px,transparent 8px 22px);opacity:.14;pointer-events:none}
.announce{background:var(--black);color:var(--cream);font-size:10px;letter-spacing:.2em;text-align:center;padding:10px}
.announce .jp{margin:0 10px;letter-spacing:.3em}
.seal{display:inline-block;background:var(--aka);color:#fff;font-size:.68em;line-height:1;padding:.35em .45em;border-radius:6px;margin:0 18px;transform:rotate(-4deg);font-weight:800;letter-spacing:.05em}
.proof{position:relative;overflow:hidden;background:#0e0e10;color:#fff;border-radius:28px;max-width:1280px}
.proof .section-sub{color:#b9b4a8}
.proof .underline{border-color:#fff}
.proof-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:26px}
.proof-main{margin:0;position:relative;border-radius:20px;overflow:hidden;min-height:560px;display:flex;align-items:flex-end;border:2px solid rgba(255,255,255,.14)}
.proof-main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.85) contrast(1.08)}
.proof-main figcaption{position:relative;padding:26px;display:grid;gap:4px;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.proof-main strong{font-size:22px;letter-spacing:-.01em}
.proof-main span{font-size:13px;color:#d8d2c4}
.proof-side{display:grid;gap:16px}
.proof-card{margin:0;position:relative;border-radius:18px;overflow:hidden;min-height:220px;display:flex;align-items:flex-end;border:2px solid rgba(255,255,255,.14)}
.proof-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.85) contrast(1.08)}
.proof-card figcaption{position:relative;padding:18px;display:grid;gap:2px;background:linear-gradient(transparent,rgba(0,0,0,.7))}
.proof-card strong{font-size:16px}
.proof-card span{font-size:12px;color:#d8d2c4}
.proof-quote{background:var(--aka);border-radius:18px;padding:26px;display:grid;gap:8px;color:#fff;min-height:236px;align-content:start}
.proof-quote .stars{letter-spacing:.2em;font-size:13px}
.proof-quote p{font-size:20px;line-height:1.35;font-weight:600;letter-spacing:-.01em}
.proof-quote cite{font-style:normal;font-size:13px;opacity:.85}
.proof-quote p,.proof-quote cite{transform-origin:50% 0;backface-visibility:hidden}
.proof-quote.quote-flipping p,.proof-quote.quote-flipping cite{animation:quoteVerticalFlip .72s ease both}
@keyframes quoteVerticalFlip{0%{opacity:1;transform:perspective(500px) rotateX(0)}45%{opacity:0;transform:perspective(500px) rotateX(-90deg)}55%{opacity:0;transform:perspective(500px) rotateX(90deg)}100%{opacity:1;transform:perspective(500px) rotateX(0)}}
.proof-btn{margin-top:10px;background:#fff;color:#111;border-radius:10px;padding:14px;text-align:center;font-weight:800;font-size:13px;letter-spacing:.06em}
.bestseller-banner{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;margin-top:26px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:20px;overflow:hidden}.bestseller-banner img{display:block;width:100%;height:360px;object-fit:cover}.bestseller-banner>div{padding:28px}.bestseller-banner h3{font-size:clamp(28px,4vw,48px);margin:8px 0}.bestseller-banner p{color:#d8d2c4;line-height:1.5}.reviews-section{background:#f3eee4;color:#141414}.reviews-section .section-sub{color:#675f54}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px}.review-card{display:grid;grid-template-rows:auto 1fr;min-width:0;background:#fff;border-radius:18px;overflow:hidden;color:inherit;border:1px solid rgba(20,20,20,.12)}.review-card img{display:block;width:100%;height:clamp(180px,24vw,240px);object-fit:cover}.review-card>div{padding:20px}.review-card p{font-size:18px;line-height:1.35;font-weight:600}.review-card strong{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#756d62}.review-card .stars{color:var(--aka);letter-spacing:.15em}
@media(max-width:900px){.proof-grid{grid-template-columns:1fr}.proof-main{min-height:420px}}
@media(max-width:700px){.bestseller-banner{grid-template-columns:1fr}.bestseller-banner img{height:240px}.bestseller-banner>div{padding:22px}.review-grid{grid-template-columns:1fr}.review-card img{height:220px}}

/* Homepage feature cards: keep the CTA contained and reveal reviews one at a time. */
.bestseller-banner>div{min-width:0}
.bestseller-banner h3{line-height:1.05}
.bestseller-banner .proof-btn{display:inline-block;max-width:100%;white-space:normal}
.review-grid{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:8px}
.review-grid::-webkit-scrollbar{display:none}
.review-card{flex:0 0 min(680px,100%);min-width:0;scroll-snap-align:start}
@media(max-width:700px){.review-card{flex-basis:100%}}
.review-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.72);opacity:0;visibility:hidden;pointer-events:none;transition:.25s}.review-modal.show,.review-modal.open{opacity:1;visibility:visible;pointer-events:auto}.review-modal-box{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);width:min(900px,100%);max-height:min(720px,92vh);overflow:auto;background:#f3eee4;color:#141414;border-radius:22px}.review-modal-box>img{width:100%;height:100%;min-height:360px;object-fit:cover}.review-modal-copy{padding:clamp(24px,5vw,52px);align-self:center}.review-modal-copy .stars{color:var(--aka);letter-spacing:.15em}.review-modal-copy h2{font-size:clamp(28px,4vw,48px);margin:14px 0}.review-modal-copy p{font-size:20px;line-height:1.45;margin-bottom:18px}.review-modal-copy strong{display:block;color:#756d62;text-transform:uppercase;letter-spacing:.1em;font-size:12px;margin-bottom:24px}.review-modal-close{position:absolute;right:14px;top:10px;border:0;background:#fff;border-radius:50%;width:38px;height:38px;font-size:26px;z-index:1}@media(max-width:700px){.review-modal-box{grid-template-columns:1fr;max-height:90vh}.review-modal-box>img{height:260px;min-height:0}.review-modal-copy{padding:24px}.review-modal-copy p{font-size:17px}}
.jp-head{display:none}
.jp-side{display:none}
.shop{position:relative}
/* brush stroke divider */
.section-head{border-top:5px solid var(--sumi);padding-top:18px;position:relative}
.section-head:after{content:'';position:absolute;top:-5px;left:0;width:120px;height:5px;background:var(--aka)}
h1,h2{font-family:inherit;line-height:1.05;font-weight:600;letter-spacing:-.03em}
h1{font-size:clamp(44px,7vw,96px);color:#fff}
h1 em,h2 em{font-family:inherit;font-style:normal;font-weight:600;letter-spacing:inherit}
h2{font-size:clamp(32px,4.5vw,56px)}
a{color:inherit;text-decoration:none}
.card-img img{width:100%;height:100%;object-fit:cover;display:block;filter:sepia(.5) contrast(1.05) brightness(.92);transition:transform .8s ease,filter .5s ease}
.card:hover .card-img img{transform:scale(1.05);filter:sepia(.3) contrast(1.06) brightness(.96)}
.card-img:after{content:'';position:absolute;inset:10px;border:1px solid rgba(255,255,255,.55);border-radius:10px;pointer-events:none}
.story-img img,.insta-grid img{filter:sepia(.5) contrast(1.04) brightness(.93)}
.eyebrow{font-size:11px;letter-spacing:.25em;font-weight:600;color:var(--gold)}
.eyebrow.dark{color:#9a7d45}
.announce{background:var(--black);color:var(--cream);font-size:10px;letter-spacing:.2em;text-align:center;padding:10px}
header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;padding:12px 32px;background:linear-gradient(180deg,rgba(8,8,10,.92),rgba(8,8,10,.72));-webkit-backdrop-filter:saturate(180%) blur(24px);backdrop-filter:saturate(180%) blur(24px);border-bottom:1px solid rgba(255,255,255,.12);color:#fff;transition:background .3s ease,box-shadow .3s ease}
header.scrolled{background:rgba(8,8,10,.94);box-shadow:0 10px 34px rgba(0,0,0,.5)}
.logo-img img{height:40px;width:auto;object-fit:contain;filter:drop-shadow(0 2px 10px rgba(0,0,0,.5))}
.section-head{border-top:5px solid #fff;padding-top:18px;position:relative}
.logo{font-weight:700;font-size:17px;letter-spacing:-.01em}
.logo-img{display:flex;align-items:center}
.nav-left{display:flex;gap:34px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.nav-left a{position:relative;color:rgba(255,255,255,.82);text-decoration:none;padding:10px 2px;transition:color .2s ease}
.nav-left a::after{content:'';position:absolute;left:0;right:0;bottom:3px;height:2px;background:var(--aka);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.nav-left a:hover{color:#fff}
.nav-left a:hover::after{transform:scaleX(1)}
.nav-left a[aria-current="page"]{color:#fff}
.nav-left a[aria-current="page"]::after{transform:scaleX(1)}
.nav-right{display:flex;gap:10px;align-items:center}
.nav-right::before{content:'';width:1px;height:24px;background:rgba(255,255,255,.14);margin:0 6px 0 2px}
.link-btn{background:none;border:0;color:rgba(255,255,255,.9);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:11px 18px;border-radius:100px;border:1px solid transparent;transition:background .2s ease,color .2s ease,border-color .2s ease}
.link-btn:hover{background:rgba(255,255,255,.09);color:#fff}
#finderOpen{border-color:rgba(255,255,255,.22)}
#finderOpen:hover{border-color:rgba(230,0,18,.75);background:rgba(230,0,18,.14);color:#fff}
#cartOpen{border-color:#fff;background:#fff;color:#111114;font-weight:800}
#cartOpen:hover{background:var(--aka);border-color:var(--aka);color:#fff}
#cartOpen #cartCount.empty{background:rgba(0,0,0,.12);color:rgba(0,0,0,.55)}
#cartOpen:hover #cartCount.empty{background:rgba(255,255,255,.22);color:#fff}
.menu-btn{display:none;background:none;border:0;flex-direction:column;gap:6px;cursor:pointer}
.menu-btn span{display:block;width:24px;height:2px;background:#fff}
.link-btn{display:inline-flex;align-items:center;gap:6px}
.bag-icon{display:none}
#cartCount{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--aka);color:#fff;font-size:11px;font-weight:700;letter-spacing:.02em;transition:background .2s,transform .2s}
#cartCount.empty{background:rgba(255,255,255,.12);color:rgba(255,255,255,.4)}
#cartCount.flash{animation:cartFlash .6s ease}
@keyframes cartFlash{0%{transform:scale(1)}30%{transform:scale(1.35);background:#e60012}70%{transform:scale(1.2)}100%{transform:scale(1);background:var(--aka)}}
.menu-btn span{display:block;width:24px;height:2px;background:#fff}
@media(max-width:900px){header{padding:10px 18px;min-height:64px}.logo-img img{height:34px}}
/* Keep the full navigation balanced on tablets before switching to the
   compact mobile header. */
@media (min-width:901px) and (max-width:1040px){
  header{gap:12px;padding-left:20px;padding-right:20px}
  .nav-left{gap:20px}
  .nav-right{gap:6px}
  .link-btn{padding-left:12px;padding-right:12px}
  .logo-img img{height:34px}
}

.hero{position:relative;min-height:92vh;display:flex;flex-direction:column;justify-content:flex-end;background:var(--black);color:#fff;overflow:hidden}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;background:#000}
.hero{background:#000}
.hero-conversion{position:absolute;z-index:2;left:clamp(24px,7vw,96px);right:clamp(24px,7vw,96px);bottom:clamp(92px,14vh,150px);max-width:680px;color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.45)}
.hero-conversion-kicker{margin:0 0 14px;font-size:11px;font-weight:700;letter-spacing:.2em;color:rgba(255,255,255,.8)}
.hero-conversion h1{max-width:650px;margin:0;font-size:clamp(34px,5.2vw,72px);line-height:.98;letter-spacing:-.045em;font-weight:700}
.hero-conversion-copy{margin:18px 0 24px;font-size:clamp(16px,2vw,22px);color:rgba(255,255,255,.88)}
.hero-conversion-actions{display:flex;gap:10px;flex-wrap:wrap;text-shadow:none}
.hero-conversion-actions a{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:14px 20px;border-radius:7px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;transition:transform .2s ease,background .2s ease}
.hero-conversion-actions a:hover{transform:translateY(-2px)}
.hero-conversion-primary{background:var(--aka);color:#fff}
.hero-conversion-primary:hover{background:#ff1528}
.hero-conversion-secondary{border:1px solid rgba(255,255,255,.75);background:rgba(0,0,0,.25);backdrop-filter:blur(8px);color:#fff}
.hero-conversion-secondary:hover{background:rgba(255,255,255,.14)}
.hero-video-only{min-height:0;aspect-ratio:21/9}
.hero-sound-btn{position:absolute;z-index:3;right:24px;bottom:24px;margin:0}
.hero-foot-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.55))}
.intro.minimal{padding:120px 24px 100px;text-align:left;max-width:1280px;margin:0 auto}
.intro-kicker{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#9a7d45;margin-bottom:28px}
.intro.minimal .intro-title{color:var(--black);font-size:clamp(40px,6vw,84px);font-weight:600;letter-spacing:-.03em;line-height:1.05}
.intro-rule{width:44px;height:1px;background:var(--gold);margin:36px 0 28px}
.intro.minimal .intro-sub{margin:0 0 36px;color:#6b675f;font-size:17px;max-width:420px;line-height:1.6}
.minimal-links{display:flex;gap:32px;align-items:center;font-size:14px}
.minimal-links a{border-bottom:1px solid var(--black);padding-bottom:3px}
.minimal-links button{background:none;border:0;border-bottom:1px solid #bbb;padding-bottom:3px;color:#777;cursor:pointer;font-size:14px}
.intro-split{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.intro-media{margin:0;border-radius:20px;overflow:hidden;aspect-ratio:4/5;background:#f5f5f7}
.intro-media img{width:100%;height:100%;object-fit:cover}
@media(max-width:900px){.intro-split{grid-template-columns:1fr;gap:32px}.intro-media{aspect-ratio:4/3}}
.btn-outline{background:transparent;color:var(--black);padding:15px 28px;border-radius:100px;font-size:12px;border:1px solid #00000033;cursor:pointer;letter-spacing:.12em;text-transform:uppercase}
.intro-meta{display:flex;gap:20px;justify-content:center;margin-top:26px;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#8b867c}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,.75))}
.hero-content{position:relative;padding:40px 24px 20px;max-width:1100px}
.hero-sub{max-width:480px;margin:16px 0 24px;color:#e9e2d5;line-height:1.6}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap}
.btn-light{background:var(--aka);color:#fff;padding:15px 28px;border-radius:10px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;border:2px solid var(--aka)}
.btn-ghost{background:transparent;color:#fff;padding:15px 28px;border-radius:100px;font-size:12px;border:1px solid #ffffff88;cursor:pointer}
.hero-foot{position:relative;display:flex;justify-content:space-between;padding:20px 24px;border-top:1px solid #ffffff33;font-size:11px;letter-spacing:.15em;text-transform:uppercase}
.marquee{background:#000;color:#fff;overflow:hidden;white-space:nowrap;padding:18px 0;font-weight:800;font-size:26px;letter-spacing:.05em;border-top:4px solid var(--aka);border-bottom:4px solid var(--aka)}
.marquee i{font-style:normal;color:var(--aka);margin:0 18px}
.hanko{display:inline-block;background:var(--aka);color:#fff;font-size:.72em;line-height:1;padding:.32em .42em;border-radius:6px;margin:0 18px;transform:rotate(-4deg);font-weight:900;font-family:'Zen Kaku Gothic New','Noto Sans JP',sans-serif}
.marquee-track{display:inline-flex;animation:sl 18s linear infinite}
@keyframes sl{to{transform:translateX(-50%)}}
.home-trust-marquee{overflow:hidden;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);background:#0b0d0f;color:#f5f3ee;padding:18px 0}
.home-trust-track{display:flex;width:max-content;animation:homeTrustScroll 28s linear infinite}
.home-trust-group{display:flex;flex-shrink:0}
.home-trust-item{display:flex;align-items:center;justify-content:center;gap:12px;min-width:220px;padding:0 30px;color:#f5f3ee;font-size:10px;line-height:1.3;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.home-trust-item svg{width:34px;height:34px;flex:0 0 34px;fill:none;stroke:currentColor;stroke-width:1.6}
.home-trust-item span{display:block}
/* Homepage ticker order: trust proof follows the hero; brand message closes the page. */
body.homepage main{display:flex;flex-direction:column}
body.homepage main>.hero{order:0}
body.homepage main>.home-trust-marquee{order:1}
body.homepage main>#shop{order:2}
body.homepage main>.bestseller-feature{order:3}
body.homepage main>.reviews-section{order:4}
body.homepage main>.marquee{order:5}
body.homepage main>.cta-jp{order:6}
@keyframes homeTrustScroll{to{transform:translateX(-50%)}}
@media(max-width:700px){.home-trust-marquee{padding:14px 0}.home-trust-track{animation-duration:22s}.home-trust-item{min-width:176px;padding:0 20px;gap:9px;font-size:9px}.home-trust-item svg{width:30px;height:30px;flex-basis:30px}}
@media(prefers-reduced-motion:reduce){.home-trust-track{animation:none}}

/* Portrait campaigns: matching panels, with product links overlaid at the bottom. */
body.homepage main>.model-feature{order:2;width:100%;padding-top:0;padding-bottom:24px}
body.homepage main>.home-features-strip{order:2;align-self:center;width:min(100%,1280px);max-width:1280px;margin:0 auto;padding:0 clamp(20px,5vw,80px);background:#fff}
.home-features-strip img{display:block;width:100%;max-width:100%;height:auto;margin:0}
@media(max-width:700px){body.homepage main>.home-features-strip{padding-inline:20px}}
.model-feature-heading{margin-bottom:24px}
body.homepage .model-feature-heading h2{margin:0;color:#151515;font-size:clamp(32px,4vw,52px);font-weight:600;line-height:1.1;letter-spacing:-.05em}
.model-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.model-feature-card{display:block;position:relative;aspect-ratio:2/3;overflow:hidden;background:#fff;color:#fff;text-decoration:none}
.model-feature-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .6s ease}
.model-feature-card:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.68));pointer-events:none}
.model-feature-caption{position:absolute;z-index:1;bottom:0;left:0;right:0;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:28px;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.4)}
body.homepage .model-feature-caption h3{margin:0;color:#fff;font-size:clamp(26px,3vw,40px);font-weight:500;line-height:1.1;letter-spacing:-.025em}
.model-feature-caption span{flex:none;font-size:11px;font-weight:500;line-height:1.5;border-bottom:1px solid rgba(255,255,255,.75);padding-bottom:3px}
.model-feature-card:focus-visible{outline:3px solid #e60012;outline-offset:4px}
@media(hover:hover) and (pointer:fine){.model-feature-card:hover img{transform:scale(1.035)}}
.model-feature-card:focus-visible img{transform:scale(1.035)}
@media(prefers-reduced-motion:reduce){.model-feature-card img{transition:none}.model-feature-card:hover img,.model-feature-card:focus-visible img{transform:none}}
@media(max-width:900px){.model-feature-caption{padding:20px;flex-direction:column;align-items:flex-start;gap:10px}}
@media(max-width:600px){.model-feature-grid{grid-template-columns:1fr;gap:0}.model-feature-heading{margin-bottom:20px}.model-feature-caption{padding:24px;flex-direction:row;align-items:flex-end}.model-feature-caption h3{font-size:30px}}

/* Most Loved: larger bottles, a tighter grid, and consistent product details. */
body.homepage #shop.section{width:100%;max-width:none;margin-inline:0;padding-inline:clamp(20px,3vw,64px)}
:is(body.homepage #shop,body.product-page .pdp-related) .light-products{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 12px}
:is(body.homepage #shop,body.product-page .pdp-related) .section-sub{margin-bottom:20px}
:is(body.homepage #shop,body.product-page .pdp-related) .light-card{min-width:0}
:is(body.homepage #shop,body.product-page .pdp-related) .card-img{aspect-ratio:1/1.15;background:#fff;border-radius:12px}
:is(body.homepage #shop,body.product-page .pdp-related) .card-img img:not(.card-hover-img){object-fit:contain;transform:scale(1.22);transition:transform .35s ease}
:is(body.homepage #shop,body.product-page .pdp-related) .card-link:hover .card-img img:not(.card-hover-img){transform:scale(1.25)}
:is(body.homepage #shop,body.product-page .pdp-related) .card-img .card-hover-img{object-fit:cover}
:is(body.homepage #shop,body.product-page .pdp-related) .flag{top:10px;left:10px;padding:6px 10px;font-size:10px}
:is(body.homepage #shop,body.product-page .pdp-related) .card-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 8px;margin:6px 6px 0;padding:12px 0 0;border-top:1px solid #e8e8e8}
:is(body.homepage #shop,body.product-page .pdp-related) .card-meta>div{grid-column:1/-1;min-width:0}
:is(body.homepage #shop,body.product-page .pdp-related) .card-meta h3{margin:0;font-size:21px;font-weight:500;line-height:1.35;letter-spacing:-.01em}
:is(body.homepage #shop,body.product-page .pdp-related) .card-meta p{margin:3px 0 0;font-size:12px;line-height:1.4;color:#777}
:is(body.homepage #shop,body.product-page .pdp-related) .card-meta .price{margin:0;font-size:17px;font-weight:600;line-height:1.3;white-space:nowrap}
:is(body.homepage #shop,body.product-page .pdp-related) .price small{display:inline;font-size:10px;font-weight:400;color:#777}
:is(body.homepage #shop,body.product-page .pdp-related) .price .was{display:block;font-size:11px}
:is(body.homepage #shop,body.product-page .pdp-related) .card-meta:after{content:'View scent ↗';color:#e60012;font-size:11px;font-weight:600;white-space:nowrap;border-bottom:1px solid #e60012;padding-bottom:3px}
:is(body.homepage #shop,body.product-page .pdp-related) .card-link:focus-visible{outline:2px solid #e60012;outline-offset:4px;border-radius:12px}
:is(body.homepage #shop,body.product-page .pdp-related) .card-meta:has(.card-sizes){display:grid;grid-template-columns:1fr;gap:16px;padding-top:18px}
:is(body.homepage #shop,body.product-page .pdp-related) .card-meta:has(.card-sizes):after{content:none}
:is(body.homepage #shop,body.product-page .pdp-related) .card-title-link{color:inherit;text-decoration:none}
:is(body.homepage #shop,body.product-page .pdp-related) .card-sizes{display:flex;gap:8px}
:is(body.homepage #shop,body.product-page .pdp-related) .card-size{flex:1;min-width:0;min-height:44px;background:#fff;border:1px solid #ddd;border-radius:10px;font:inherit;font-size:12px;letter-spacing:.08em;color:#151515;cursor:pointer}
:is(body.homepage #shop,body.product-page .pdp-related) .card-size[aria-pressed=true]{border:2px solid #151515;background:#f6f4f1}
:is(body.homepage #shop,body.product-page .pdp-related) .card-size:disabled{opacity:.4;cursor:not-allowed}
:is(body.homepage #shop,body.product-page .pdp-related) .card-purchase{display:flex;align-items:center;justify-content:space-between;gap:12px}
:is(body.homepage #shop,body.product-page .pdp-related) .card-purchase .price{font-size:24px;font-weight:700}
:is(body.homepage #shop,body.product-page .pdp-related) .card-add{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 22px;background:#e60012;border:1px solid #e60012;border-radius:10px;font:inherit;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;cursor:pointer}
:is(body.homepage #shop,body.product-page .pdp-related) .card-add:before{content:'+';font-size:20px;font-weight:400}
:is(body.homepage #shop,body.product-page .pdp-related) .card-add:hover{background:#b0000e}
:is(body.homepage #shop,body.product-page .pdp-related) .card-add:disabled{opacity:.5;cursor:not-allowed}
:is(body.homepage #shop,body.product-page .pdp-related) .card-size:focus-visible,:is(body.homepage #shop,body.product-page .pdp-related) .card-add:focus-visible{outline:2px solid #e60012;outline-offset:3px}
:is(body.homepage #shop,body.product-page .pdp-related) .card-purchase-status:empty{display:none}
:is(body.homepage #shop,body.product-page .pdp-related) .card-purchase-status{margin:0;font-size:11px}
@media(max-width:900px){
  :is(body.homepage #shop,body.product-page .pdp-related) .light-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 10px}
}
@media(max-width:560px){
  :is(body.homepage #shop,body.product-page .pdp-related) .section-sub{margin-bottom:16px}
  :is(body.homepage #shop,body.product-page .pdp-related) .light-products{gap:22px 8px}
  :is(body.homepage #shop,body.product-page .pdp-related) .card-meta{gap:8px 6px;margin:6px 2px 0;padding:10px 0 0}
  :is(body.homepage #shop,body.product-page .pdp-related) .card-meta h3{font-size:17px}
  :is(body.homepage #shop,body.product-page .pdp-related) .card-meta p{font-size:11px}
  :is(body.homepage #shop,body.product-page .pdp-related) .card-meta .price{font-size:16px}
  :is(body.homepage #shop,body.product-page .pdp-related) .card-meta:after{content:'View ↗';font-size:10px}
  :is(body.homepage #shop,body.product-page .pdp-related) .flag{top:7px;left:6px;font-size:9px;padding:5px 8px}
}
@media(prefers-reduced-motion:reduce){
  :is(body.homepage #shop,body.product-page .pdp-related) .card-img img:not(.card-hover-img){transition:none}
  :is(body.homepage #shop,body.product-page .pdp-related) .card-link:hover .card-img img:not(.card-hover-img){transform:scale(1.22)}
}
.kicker{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--aka);font-weight:800;margin-bottom:10px}
.section{padding:80px 24px;max-width:1280px;margin:0 auto;position:relative}
.shop-head{align-items:flex-start}
.light-products{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.light-card .card-img{border:0;border-radius:22px;overflow:hidden;background:#1c1c1f;aspect-ratio:3/4;position:relative}
.light-card .card-img:after{display:none}
.light-card .card-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:none}
.light-card:hover .card-img img{filter:none}
.light-card .card-hover-img{display:block!important;opacity:0;z-index:1;transition:opacity .35s ease,transform .4s ease}
.light-card:hover .card-hover-img{opacity:1}
.light-card .quick-add{position:absolute;left:12px;right:12px;bottom:12px;background:#111;color:#fff;border:0;border-radius:14px;padding:12px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease;z-index:5}
.light-card:hover .quick-add{opacity:1;transform:none}
.light-card .quick-add:hover{background:var(--aka)}
.light-card .card-meta{display:flex;justify-content:space-between;align-items:flex-start;padding:14px 4px 0;gap:10px;flex-wrap:wrap}
.card-meta .price{font-size:12px;font-weight:600;margin-top:2px}
.card-quick-add{
  background:var(--aka);
  color:#fff;
  border:0;
  border-radius:8px;
  padding:7px 12px;
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
  opacity:0;
  transform:translateY(6px);
  transition:background .2s, transform .15s, opacity .2s;
  flex-shrink:0;
}
.light-card:hover .card-quick-add,.light-card:focus-within .card-quick-add,.card-quick-add:focus,.card-quick-add:focus-visible{opacity:1!important;transform:none!important}
.card-quick-add:hover{background:#a3000d;transform:translateY(-1px)}
.card-quick-add:active{transform:none}
@media(hover:none){.card-quick-add{opacity:1;transform:none}}
.card-link{display:block;text-decoration:none;color:inherit}
.card-link .quick-add{position:relative;z-index:5}
.card-link .card-img img{transition:transform .4s ease}
.card-link:hover .card-img img{transform:scale(1.03)}
.light-card .card-meta h3{color:#fff;font-size:17px}
.light-card .card-meta p{color:#a8a29a;font-size:13px;margin-top:4px}
.light-card .price{color:#fff;font-weight:700;font-size:17px}
.light-card .price small{color:#a8a29a;font-size:10px;font-weight:400}
.light-card .flag{position:absolute;top:14px;left:14px;background:#111;color:#fff;font-size:11px;font-weight:700;padding:7px 12px;border-radius:100px;z-index:2}
.story-dark{background:rgba(14,14,16,.55);-webkit-backdrop-filter:blur(28px) saturate(140%);backdrop-filter:blur(28px) saturate(140%);border:1px solid rgba(255,255,255,.12)}
main .section{width:100%;margin-top:0}
main .section:first-of-type{margin-top:0}
footer{color:#a8a29a}
/* logo is the pure-white asset; no invert needed */
/* story dark */
.story-dark{position:relative;overflow:hidden;background:#0e0e10;color:#fff;border-radius:28px;max-width:1280px;margin-top:16px}
.story-dark .story-grid{padding:56px 28px}
.story-main{margin:0;position:relative;border-radius:20px;overflow:hidden;min-height:520px;display:flex;align-items:flex-end;border:2px solid rgba(255,255,255,.14)}
.story-main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.08)}
.story-main figcaption{position:relative;padding:26px;display:grid;gap:4px;background:linear-gradient(transparent,rgba(0,0,0,.72));width:100%}
.story-main strong{font-size:22px;color:#fff}
.story-main span{font-size:13px;color:#d8d2c4}
.story-dark .body{color:#b9b4a8}
.story-stats{display:flex;gap:28px;margin:26px 0 6px}
.story-stats div{display:grid;gap:2px}
.story-stats strong{font-size:28px;letter-spacing:-.02em;color:#fff}
.story-stats strong:after{content:'';display:block;width:24px;height:3px;background:var(--aka);margin-top:6px}
.story-stats span{font-size:12px;color:#8f8a7e}
.btn-red{background:var(--aka);color:#fff;padding:15px 30px;border-radius:10px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;display:inline-block;margin-top:22px;font-weight:800}
@media(max-width:900px){.dark-products{grid-template-columns:repeat(2,1fr)}}
.minimal-card .card-img{border:0;border-radius:18px;background:#f4f4f5}
.minimal-card .card-img:after{display:none}
.minimal-card .card-img img{filter:saturate(.9) contrast(1.05) brightness(1)}
.minimal-card:hover .card-img img{transform:scale(1.04);filter:saturate(1) contrast(1.05) brightness(1)}
.minimal-card .idx{position:absolute;top:14px;left:16px;font-size:11px;letter-spacing:.2em;color:#fff;background:rgba(0,0,0,.45);backdrop-filter:blur(8px);padding:6px 10px;border-radius:100px;z-index:2}
.minimal-card .card-meta{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 4px 0;border-top:2px solid var(--black);margin-top:14px}
.minimal-card .price{font-weight:700;font-size:15px}
.minimal-card .quick-add{border-radius:12px;left:10px;right:10px;bottom:10px}
.section-head{display:flex;justify-content:space-between;align-items:end}
.section-sub{color:#6b675f;margin:8px 0 30px}
.products{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.card-meta{padding:14px 4px}
.card-meta h3{font-weight:600;font-size:17px;letter-spacing:-.01em}
.card-meta p{font-size:12px;color:#777;margin:4px 0}
.card-img{position:relative;aspect-ratio:3/4;border-radius:14px;overflow:hidden;background:#111;border:2px solid var(--black)}
.underline{border-bottom:1px solid var(--black);font-size:13px}
.story{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.story-grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:70px 24px}
.story-img{border-radius:20px;overflow:hidden;aspect-ratio:4/5}
.story-text h2{margin:12px 0 14px}
.story-text .body{line-height:1.7;color:#444;max-width:460px}
.btn-dark{background:var(--black);color:#fff;padding:15px 28px;border-radius:10px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;display:inline-block;margin-top:20px;border:2px solid var(--black);box-shadow:4px 4px 0 var(--aka)}
.btn-dark.full{width:100%;text-align:center;cursor:pointer}
.mood-duo{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:8px 0 16px}
.mood-hero{margin:0;position:relative;border-radius:22px;overflow:hidden;min-height:440px;display:flex;align-items:flex-end}
.mood-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.05) contrast(1.05);transition:transform .8s ease}
.mood-hero:hover img{transform:scale(1.05)}
.mood-hero figcaption{position:relative;padding:26px;display:grid;gap:4px;background:linear-gradient(transparent,rgba(0,0,0,.7));width:100%;color:#fff}
.mood-hero figcaption span{font-size:11px;letter-spacing:.25em;font-weight:800;color:#fff;background:var(--aka);display:inline-block;padding:6px 12px;border-radius:100px;width:max-content}
.mood-hero figcaption strong{font-size:clamp(22px,3vw,34px);letter-spacing:-.02em}
.mood-pills{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.pill{display:flex;align-items:center;gap:12px;background:#fff;border:1.5px solid #111;border-radius:100px;padding:8px 18px 8px 8px;box-shadow:4px 4px 0 #111}
.pill img{width:52px;height:52px;border-radius:50%;object-fit:cover;flex-shrink:0}
.pill span{display:grid;line-height:1.2}
.pill strong{font-size:20px;color:#111;font-weight:800;line-height:1}
.pill em{color:#555}
.pill b{margin-left:auto;font-size:18px}
.pill-red{background:#fff;border-color:var(--aka);color:#111;box-shadow:4px 4px 0 #111}
.pill-red:hover{background:var(--aka);color:#fff}
.pill-red:hover strong{color:#fff}
.pill-red em{color:#555}
.pill-red:hover em{color:#fff}
.pill:not(.pill-red):hover{background:var(--aka);color:#fff}
.pill:not(.pill-red):hover strong{color:#fff}
.pill:not(.pill-red):hover em{color:#fff}
@media(max-width:900px){.mood-duo{grid-template-columns:1fr}.mood-hero{min-height:340px}.mood-pills{grid-template-columns:repeat(2,1fr)}}
.notes-sea{position:relative;border-radius:28px;overflow:hidden;padding:40px 28px;background:#f5f1eb;isolation:isolate}
.notes-sea:before{content:'';position:absolute;inset:0;z-index:0;background:inherit;background:rgba(255,255,255,.25);backdrop-filter:grayscale(1)}
.notes-sea:after{content:'';position:absolute;inset:0;z-index:0;background:#f5f1eb;filter:none}
.note-glass{background:rgba(255,255,255,.6);min-height:230px}
.note-glass.dark-note{background:rgba(10,10,10,.55);color:#fff}
.note-body{display:flex;flex-direction:column;gap:8px;padding:26px;height:100%}
.note-body .go{margin-top:auto}
.note{border:2px solid var(--black);border-radius:24px;padding:0;min-height:210px;display:flex;flex-direction:column;gap:0;background:rgba(255,255,255,.6);-webkit-backdrop-filter:saturate(160%) blur(18px);backdrop-filter:saturate(160%) blur(18px);box-shadow:6px 6px 0 var(--aka);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.note:hover{transform:translate(-2px,-2px);box-shadow:10px 10px 0 var(--aka)}
.mood-banner{margin:6px 0 26px;border-radius:28px;overflow:hidden;position:relative;min-height:340px;display:flex;align-items:flex-end}
.mood-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.12) brightness(.82)}
.mood-banner figcaption{position:relative;padding:34px;color:#fff;display:grid;gap:8px}
.mood-banner figcaption span{font-size:11px;letter-spacing:.25em;color:#e8dcc3}
.mood-banner figcaption strong{font-size:clamp(24px,4vw,44px);font-weight:600;letter-spacing:-.02em;line-height:1.05;max-width:520px}
.note .num{font-size:11px;color:var(--aka);letter-spacing:.22em;font-weight:800}
.note h3{font-weight:600;font-size:22px;letter-spacing:-.02em}
.note p{font-size:12px;color:#777}
.note-card{padding:0;overflow:hidden;display:flex;flex-direction:column;gap:0}
.note-img{display:block;aspect-ratio:4/3;overflow:hidden}
.note-img img{width:100%;height:100%;object-fit:cover;display:block;filter:sepia(.45) contrast(1.02) brightness(.94);transition:transform .8s ease,filter .5s ease}
.note-card:hover .note-img img{transform:scale(1.05);filter:sepia(.25) contrast(1.05) brightness(.98)}
.note-body{display:flex;flex-direction:column;gap:8px;padding:22px}
.note .go{font-size:13px;font-weight:600;letter-spacing:.06em}
.dark-note{background:var(--black);color:var(--cream);border-color:var(--black)}
.dark-note p{color:#b9b2a4}
.insta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.insta-grid img{aspect-ratio:3/4;border-radius:14px}
.hash{text-align:center;margin-top:18px;letter-spacing:.25em;font-size:11px;color:#9a7d45;font-weight:600}
.cta{background:var(--black);color:var(--cream);text-align:center;padding:100px 20px;border-radius:24px;margin:16px}
.cta-jp{position:relative;overflow:hidden;border:3px solid var(--aka);background:radial-gradient(circle at 50% 120%,var(--aka) 0%,transparent 55%),var(--black)}
.cta-jp:before{content:'●';position:absolute;font-size:480px;color:var(--aka);opacity:.9;left:50%;top:58%;transform:translate(-50%,-50%);line-height:1;pointer-events:none}
.cta-jp h2,.cta-jp p,.cta-jp .hero-ctas{position:relative;z-index:1}
.eyebrow-aka{color:#fff;background:var(--aka);display:inline-block;padding:8px 18px;border-radius:4px;letter-spacing:.2em}
.jp-side-light{display:none}
.cta h2{font-size:clamp(36px,5.5vw,72px);font-weight:600;letter-spacing:-.03em;line-height:1.05}
.cta p{color:#c9c2b3;margin:16px auto 26px}
.center{justify-content:center}
footer{padding:36px 24px;display:grid;gap:14px}
.foot-top{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;align-items:center}
.foot-links{display:flex;gap:16px;font-size:12px;text-transform:uppercase}
.fine{font-size:12px;color:#8b867c}
.drawer{position:fixed;top:0;right:-420px;width:400px;max-width:92vw;height:100dvh;background:var(--cream);z-index:100;display:flex;flex-direction:column;transition:right .3s;border-left:1px solid var(--line)}
.drawer.open{right:0}
.drawer-head,.drawer-foot{padding:20px;border-bottom:1px solid var(--line)}
.drawer-foot{border:0;border-top:1px solid var(--line);display:grid;gap:10px}
.drawer-head{display:flex;justify-content:space-between;align-items:center}
.cart-items{flex:1;overflow:auto;padding:20px;display:grid;gap:10px;align-content:start}
.cart-items{overflow:hidden;grid-auto-rows:min-content}
.cart-row{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid #e8e8e8;border-radius:14px;padding:12px;min-width:0;overflow:hidden}
.cart-img{width:56px;height:70px;border-radius:10px;overflow:hidden;flex:0 0 56px;background:#f4f4f5}
.cart-img img{width:100%;height:100%;object-fit:cover}
.cart-info{flex:1;min-width:0;overflow:hidden}
.cart-info strong{font-size:13px;font-weight:600;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.cart-size{font-size:11px;color:#888;display:block;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.cart-qty{display:flex;align-items:center;gap:6px}
.qty-btn{width:26px;height:26px;border-radius:50%;border:1px solid #ddd;background:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}
.qty-btn:hover{background:#f4f4f5;border-color:#bbb}
.qty-num{font-size:13px;font-weight:600;min-width:18px;text-align:center}
.cart-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:0 0 auto}
.cart-price{font-size:13px;font-weight:600;white-space:nowrap}
.cart-more{font-size:12px;color:#666;text-align:center;padding:4px 0 0;margin:0}
.cart-note{font-size:11px;color:#8a8a8a;text-align:center;margin:0;line-height:1.5}
.gift-box{display:flex;gap:10px;align-items:center;background:#fafafa;border:1px dashed #cfcfcf;border-radius:12px;padding:10px 12px}
.gift-img{width:44px;height:54px;border-radius:8px;overflow:hidden;flex:0 0 44px;background:#f1f1f2;display:flex;align-items:center;justify-content:center}
.gift-img img{width:100%;height:100%;object-fit:cover;display:block}
.gift-info{flex:1;min-width:0}
.gift-title{font-size:12px;font-weight:700;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gift-msg{font-size:11px;color:#8a8a8a;margin:2px 0 0;line-height:1.5}
.gift-box.locked .gift-img img{filter:grayscale(1) brightness(.92);opacity:.6}
.gift-box.unlocked{border-style:solid;border-color:var(--aka);background:#fff}
.gift-box.unlocked .gift-msg{color:var(--aka);font-weight:600}
.cart-remove{background:none;border:0;font-size:16px;color:#999;cursor:pointer;padding:2px 4px;transition:color .15s}
.cart-remove:hover{color:var(--aka)}
.row{display:flex;justify-content:space-between;font-weight:600}
@media(max-width:900px){.nav-left{display:none}.menu-btn{display:flex}.products,.notes-grid,.insta-grid{grid-template-columns:repeat(2,1fr)}.story-grid{grid-template-columns:1fr;gap:22px}.mobile-menu{position:fixed;inset:0;background:var(--black);color:#fff;z-index:120;display:flex;flex-direction:column;gap:10px;padding:70px 26px;font-weight:600;font-size:32px;letter-spacing:-.02em;transform:translateY(-100%);transition:.35s}.mobile-menu.open{transform:none}.mobile-menu a{color:#fff}}
.scrim{position:fixed;inset:0;background:rgba(0,0,0,.4);opacity:0;pointer-events:none;z-index:90}
.scrim.show{opacity:1;pointer-events:auto}
.modal{position:fixed;inset:0;display:grid;place-items:center;z-index:110;pointer-events:none}
.modal-box{background:#fff;border-radius:20px;padding:28px;width:420px;max-width:92vw;display:grid;gap:12px;opacity:0;position:relative}
.modal.show{pointer-events:auto}
.modal.show .modal-box{opacity:1}
.options{display:grid;gap:8px}
.options button{border:1px solid var(--line);background:#f5f5f7;border-radius:100px;padding:13px;cursor:pointer}
.finder-question{font-size:18px;font-weight:600;line-height:1.35;margin-bottom:4px}
.finder-choice{transition:border-color .2s ease,background .2s ease,transform .15s ease}
.finder-choice:hover{border-color:var(--aka);background:#fff}
.finder-choice:active{transform:scale(.98)}
.finder-back{background:none;border:0;color:#8a8a8a;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;padding:0;justify-self:start}
.finder-back:hover{color:var(--aka)}
.finder-back[hidden]{display:none}
.finder-dots{display:flex;gap:6px;justify-content:center;margin:2px 0 4px}
.finder-dots[hidden]{display:none}
.finder-dots span{width:22px;height:4px;border-radius:4px;background:#e4e4e7}
.finder-dots span.done{background:#19191c}
.finder-dots span.on{background:var(--aka)}
.finder-result-link{display:block;background:var(--aka);color:#fff;border-radius:10px;padding:13px;text-align:center;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-top:4px;text-decoration:none}
.finder-result-link:hover{background:var(--aka-deep,#b0000e)}
.finder-restart{background:none;border:0;color:#8a8a8a;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;padding:6px}
.finder-restart:hover{color:var(--aka)}
.mobile-menu{display:none}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
/* Embedded browsers can delay scripts; never hide the core storefront cards while that happens. */
body.homepage .light-products .reveal{opacity:1;transform:none}
body.homepage .reviews-v2 .review-card{visibility:visible;opacity:1}
@media(max-width:900px){.reveal{transform:translateY(16px)}}
.tag{position:absolute;top:12px;left:12px;background:var(--aka);color:#fff;font-size:10px;padding:6px 11px;border-radius:4px;font-weight:800;letter-spacing:.1em}
.tag.gold{background:var(--black);color:#fff}
.quick-add{position:absolute;bottom:12px;left:12px;right:12px;background:var(--aka);color:#fff;border:0;border-radius:10px;padding:12px;font-weight:800;cursor:pointer;letter-spacing:.06em}
.sound-btn{background:transparent;border:1px solid #ffffff55;color:#fff;border-radius:100px;padding:6px 14px;font-size:10px;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;margin-left:10px}
.sound-btn:hover{background:#fff;color:#000}
.foot-right{display:flex;align-items:center}

/* Shared navigation and shopping overlays. */
.link-btn{color:inherit}
.menu-btn span{background:currentColor}
.menu-btn{color:inherit}
.drawer,.modal-box{color:#19191c}
.drawer{visibility:hidden}
.drawer.open{visibility:visible}
.drawer-head h2,.drawer-head h3{font-size:18px;font-weight:700;margin:0;letter-spacing:-.01em}
.drawer-head button,#finderClose,#menuClose{width:auto;height:auto;border:0;border-radius:0;background:none;color:#19191c;font-size:22px;line-height:1;padding:6px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color .15s,transform .15s}
#cartClose svg{display:block}
.drawer-head button:hover,#finderClose:hover{color:var(--aka);transform:rotate(90deg)}
.drawer-head button:focus-visible,#finderClose:focus-visible,#menuClose:focus-visible{outline:2px solid var(--aka);outline-offset:2px}
#finderClose{position:absolute;top:16px;right:16px}
#menuClose{display:none}
.drawer .empty{font-size:14px;color:#666;line-height:1.7}
.drawer-foot .btn-dark:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
.drawer-head,.drawer-foot{border-color:#dedede}
.modal:not(.show){visibility:hidden}
.mobile-menu:not(.open){visibility:hidden}
@media(max-width:900px){
  .mobile-menu{display:flex}
  .mobile-menu.open{visibility:visible}
  #menuClose{display:inline-flex;position:absolute;right:24px;top:20px;background:none;color:#fff;border:0;font-size:24px}
  #menuClose:hover{background:none;border:0;color:var(--aka);transform:rotate(90deg)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.marquee-track{animation:none}}
.review-modal{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;transform:none!important;z-index:2147483000!important}
.trybuy-layout{display:grid;grid-template-columns:1fr 1.25fr;min-height:430px;margin-top:26px;border:1px solid rgba(255,255,255,.18);border-radius:24px;overflow:hidden;background:#e60012;color:#fff}.trybuy-copy{position:relative;padding:clamp(26px,4vw,56px);display:flex;flex-direction:column;align-items:flex-start}.trybuy-copy h2{font-size:clamp(48px,7vw,88px);line-height:.9;margin:16px 0}.trybuy-copy h2 em{font-style:normal;color:#ffd5d5}.trybuy-copy .body{max-width:420px;color:#fff;font-size:18px;line-height:1.45;margin-bottom:28px}.trybuy-badge{font-size:11px;letter-spacing:.12em;font-weight:800;border:1px solid rgba(255,255,255,.6);border-radius:999px;padding:8px 12px}.trybuy-btn{margin-top:auto;background:#111114;color:#fff;border-radius:10px;padding:15px 20px;font-size:13px;font-weight:800;letter-spacing:.06em}.trybuy-image{position:relative;background:#111114;min-height:430px}.trybuy-image img{display:block;width:100%;height:100%;object-fit:cover}.trybuy-image span{position:absolute;right:20px;bottom:18px;background:#fff;color:#111;padding:8px 12px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.1em}@media(max-width:700px){.trybuy-layout{grid-template-columns:1fr}.trybuy-image{min-height:280px;order:-1}.trybuy-copy{min-height:390px}}
.trybuy-layout{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);align-items:stretch}.trybuy-image{height:430px;min-height:0}.trybuy-image img{height:100%;object-fit:cover}@media(max-width:700px){.trybuy-layout{grid-template-columns:1fr}.trybuy-image{height:280px;min-height:0}}
.trybuy-layout{width:100%;max-width:none;margin-left:0;margin-right:0}
@media(min-width:901px){main .section{padding-top:56px;padding-bottom:56px}.section + .section{margin-top:0}}
@media(min-width:701px){.review-card{flex:0 0 calc((100% - 48px)/3.5)}.review-card img{height:clamp(180px,18vw,260px)}}
@media(min-width:701px){.review-grid{align-items:center;gap:24px;padding:28px 8px}.review-card{position:relative;display:block;flex-basis:220px;height:300px;border:0;border-radius:22px;background:#fff;overflow:hidden;animation:reviewFloat 5s ease-in-out infinite}.review-card:nth-child(2n){animation-delay:-1.8s;transform:translateY(12px)}.review-card:nth-child(3n){animation-delay:-3.2s;transform:translateY(-8px)}.review-card:hover{animation-play-state:paused;transform:translateY(-10px) scale(1.03);z-index:2}.review-card img{width:100%;height:100%;object-fit:cover}.review-card>div{position:absolute;inset:auto 0 0;padding:18px 16px;background:linear-gradient(transparent,rgba(0,0,0,.9));color:#fff;opacity:0;transform:translateY(12px);transition:.25s}.review-card:hover>div{opacity:1;transform:none}.review-card p{font-size:15px;margin:8px 0}.review-card strong{color:#fff}.review-card .stars{color:#fff}@keyframes reviewFloat{0%,100%{translate:0 0}50%{translate:0 -9px}}}
@media(pointer:coarse){.review-card>div{position:relative;inset:auto;padding:18px 16px;background:#fff;color:#141414;opacity:1;transform:none}.review-card .stars{color:var(--aka)}.review-card strong{color:#756d62}.review-card p{margin:8px 0;font-size:15px}}
.reviews-section{background:transparent;color:#fff}.reviews-section .section-head h2{color:#fff}.reviews-section .section-sub{color:#b9b4a8}
.cursor-on-light .bp-cursor-dot{background:#111;mix-blend-mode:normal}.cursor-on-light .bp-cursor-ring{border-color:#111;mix-blend-mode:normal}.cursor-on-light .bp-cursor.is-link .bp-cursor-ring{border-color:#111;background:rgba(17,17,20,.16)}.cursor-on-light .bp-cursor.is-labelled .bp-cursor-ring{background:#111;border-color:#111}
.reviews-section .section-head{border-top:0;padding-top:0}.reviews-section .section-head:after{display:none}
.reviews-heading{display:flex;align-items:end;justify-content:space-between;gap:24px}.reviews-heading h2{font-size:clamp(36px,6vw,82px);letter-spacing:-.07em;max-width:700px}.review-controls{display:flex;gap:10px}.review-controls button{width:44px;height:44px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:transparent;color:#fff;font-size:20px}.review-controls button:hover{background:#fff;color:#111}.reviews-section .review-grid{gap:18px;padding:42px 0 10px}.reviews-section .review-card{flex:0 0 min(520px,78vw);height:auto;display:grid;grid-template-columns:1fr 1fr;gap:0;background:#f3eee4;border:0;border-radius:0;overflow:hidden;scroll-snap-align:start;animation:none;transform:none;color:#141414}.review-card-image{position:relative;min-height:300px;background:#e3ded4}.review-card-image img{width:100%;height:100%;object-fit:cover;display:block}.review-eye{position:absolute;left:18px;bottom:18px;width:48px;height:48px;border:0;border-radius:10px;background:#111;color:#fff;font-size:22px;line-height:1}.review-copy{padding:28px 24px;display:flex;flex-direction:column;justify-content:center;gap:16px}.review-copy strong{font-size:clamp(22px,2.4vw,32px);line-height:1.12;letter-spacing:-.04em}.review-copy .stars{color:#111;letter-spacing:.12em}.review-copy small{color:#756d62;letter-spacing:.1em;text-transform:uppercase}.quick-shop-modal{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:stretch;background:rgba(0,0,0,.72);opacity:0;visibility:hidden;pointer-events:none;transition:.25s}.quick-shop-modal.open{opacity:1;visibility:visible;pointer-events:auto}.quick-shop-box{position:absolute;right:0;top:0;height:100%;width:min(720px,100%);display:grid;grid-template-columns:1fr 1fr;background:#f3eee4;color:#141414;overflow:auto;transform:translateX(100%);transition:transform .3s ease}.quick-shop-modal.open .quick-shop-box{transform:none}.quick-shop-close{position:absolute;z-index:1;top:20px;left:20px;width:42px;height:42px;border:1px solid #111;border-radius:50%;background:#f3eee4;color:#111;font-size:28px}.quick-shop-image{background:#e6e1d7;min-height:100%;display:grid;place-items:center}.quick-shop-image img{width:100%;height:100%;object-fit:cover}.quick-shop-copy{padding:68px 34px 34px;display:flex;flex-direction:column;gap:18px}.quick-shop-copy h2{font-size:clamp(34px,5vw,58px);letter-spacing:-.07em}.quick-shop-price{display:flex;align-items:center;justify-content:space-between;font-size:18px}.quick-shop-price strong{font-size:22px}.quick-shop-price span{font-size:14px}.quick-shop-copy>p:not(.kicker){font-size:16px;line-height:1.5;color:#5c5751}.quick-shop-field{display:grid;gap:9px;margin-top:8px}.quick-shop-field>span{font-size:11px;font-weight:700;letter-spacing:.15em}.quick-shop-sizes{display:flex;gap:8px;flex-wrap:wrap}.quick-shop-sizes button{padding:12px 16px;border:1px solid #8b867d;border-radius:8px;background:transparent;color:#111}.quick-shop-sizes button.selected{border:2px solid #111;padding:11px 15px}.quick-shop-quantity{width:max-content;display:grid;grid-template-columns:42px 42px 42px;border:1px solid #8b867d}.quick-shop-quantity button,.quick-shop-quantity output{height:40px;display:grid;place-items:center;border:0;background:transparent;color:#111;font-size:18px}.quick-shop-add{margin-top:auto;padding:16px;border:0;border-radius:4px;background:#111;color:#fff;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.quick-shop-view{text-align:center;color:#111;font-size:12px;text-decoration:underline;text-underline-offset:5px}@media(max-width:700px){.reviews-heading{align-items:start}.reviews-heading h2{font-size:42px}.reviews-section .review-card{flex-basis:88vw;grid-template-columns:1fr}.review-card-image{min-height:250px;height:62vw}.review-copy{padding:22px;min-height:210px}.quick-shop-box{grid-template-columns:1fr;width:100%;overflow:auto}.quick-shop-image{height:42vh;min-height:250px}.quick-shop-copy{padding:28px 22px 22px;min-height:58vh}.quick-shop-add{margin-top:12px}}
.trybuy-image{height:auto;min-height:100%;align-self:stretch}.trybuy-image img{height:100%;min-height:100%}@media(max-width:700px){.trybuy-image{height:280px;min-height:0}.trybuy-image img{min-height:0}}
@media(min-width:701px){.trybuy-layout{min-height:300px}.trybuy-copy{padding:30px 38px}.trybuy-copy h2{font-size:clamp(42px,5vw,64px);margin:10px 0}.trybuy-copy .body{font-size:16px;margin-bottom:16px}.trybuy-image{height:330px}}

/* Toast notification */
.toast{position:fixed;top:24px;right:24px;background:#111;color:#fff;padding:14px 20px;border-radius:12px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:10px;z-index:9999;opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .3s ease,transform .3s ease}
.toast.show{opacity:1;transform:none}
.toast-icon{background:#44cc66;color:#fff;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}
.toast-text{white-space:nowrap}
.review-eye svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.reviews-section .review-card:hover{transform:none;z-index:auto}
.reviews-section .review-card>.review-card-image{position:relative;inset:auto;padding:0;background:#e3ded4;opacity:1;transform:none}
.reviews-section .review-card>.review-copy{position:relative;inset:auto;padding:28px 24px;background:#f3eee4;color:#141414;opacity:1;transform:none}
.story-dark{max-width:none;margin-top:0;border:0;border-radius:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.story-dark .story-grid{max-width:1280px;margin:0 auto}
.reviews-section{max-width:1280px;margin:16px auto;background:#fff;color:#111;padding-left:24px;padding-right:24px;border-radius:28px}.reviews-heading h2{font-size:clamp(30px,4vw,54px);letter-spacing:-.04em;color:#111}.reviews-section .review-grid{padding-top:38px;gap:26px}.reviews-section .review-card{flex:0 0 calc((100% - 26px)/2);grid-template-columns:1fr 1.14fr;background:#fff;color:#111}.reviews-section .review-card>.review-card-image{min-height:360px;background:#fff}.reviews-section .review-card>.review-card-image img{object-fit:contain;padding:20px 16px 64px}.reviews-section .review-card>.review-copy{justify-content:center;padding:34px 34px;background:#fff;color:#111;gap:18px}.reviews-section .review-copy strong{font-size:clamp(21px,2vw,30px);font-weight:600;color:#111}.reviews-section .review-copy .stars{font-size:16px}.reviews-section .review-copy small{font-size:12px;color:#777}.review-controls button{border-color:#222;color:#111}.review-controls button:hover{background:#111;color:#fff}@media(max-width:700px){.reviews-section{margin:16px 20px;padding:34px 16px 38px;border-radius:20px}.reviews-heading{gap:16px}.reviews-heading h2{font-size:32px}.review-controls{gap:7px}.review-controls button{width:38px;height:38px;font-size:17px}.reviews-section .review-grid{padding-top:22px;gap:16px}.reviews-section .review-card{flex-basis:100%;grid-template-columns:1fr}.reviews-section .review-card>.review-card-image{min-height:0;height:190px}.reviews-section .review-card>.review-copy{min-height:150px;padding:20px;gap:10px}.reviews-section .review-copy strong{font-size:20px;line-height:1.16}.reviews-section .review-copy .stars{font-size:14px}.reviews-section .review-copy small{font-size:10px}.reviews-section .review-card>.review-card-image img{padding:12px 10px 42px}}

/* Cart badge flash */
.cart-count{display:inline-block;min-width:20px;text-align:center;transition:transform .2s ease}
.cart-flash{animation:cartFlash .6s ease}
@keyframes cartFlash{0%,100%{transform:scale(1)}50%{transform:scale(1.3);background:var(--aka);color:#fff;border-radius:4px;padding:0 6px}}

/* Collections page */
.collections-page{background:#070708;color:#f5f3ee}
.collections-main{position:relative;z-index:1}
.collection-hero{max-width:1280px;margin:0 auto;padding:130px 24px 110px;border-bottom:1px solid rgba(255,255,255,.14)}
.collection-hero h1{max-width:850px;margin:18px 0 24px;font-size:clamp(52px,8vw,116px);font-weight:600;line-height:.95;letter-spacing:-.065em}
.collection-hero h1 em,.collection-band h2 em,.collection-end h2 em{color:var(--aka);font-style:normal}
.collection-hero>p:not(.kicker){max-width:470px;color:#aaa5a0;font-size:15px;line-height:1.7}
.collection-hero-links{display:flex;gap:24px;flex-wrap:wrap;margin-top:34px}
.collection-hero-links a{font-size:11px;letter-spacing:.13em;text-transform:uppercase;border-bottom:1px solid #777;padding-bottom:7px}
.collection-band{max-width:1280px;margin:0 auto;padding:90px 24px 100px}
.collection-band+.collection-band{border-top:1px solid rgba(255,255,255,.14)}
.originals-band{background:#f5f3ee;color:#111114;max-width:none;padding-left:max(24px,calc((100% - 1280px)/2 + 24px));padding-right:max(24px,calc((100% - 1280px)/2 + 24px))}
.collection-band-head{display:grid;grid-template-columns:1fr  minmax(260px,390px);gap:70px;align-items:end;margin-bottom:42px}
.collection-band h2{font-size:clamp(38px,5vw,70px);font-weight:500;letter-spacing:-.06em;line-height:.98}
.collection-band-head>p{color:#aaa5a0;font-size:13px;line-height:1.7;margin-bottom:4px}
.originals-band .collection-band-head>p{color:#65615d}
.collection-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.collection-product{display:grid;grid-template-columns:1fr auto;gap:14px;color:inherit}
.collection-product-image{grid-column:1/-1;aspect-ratio:1/1.16;background:#1a1a1d;border-radius:4px;overflow:hidden}
.originals-band .collection-product-image{background:#e8e4dc}
.collection-product-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.collection-product:hover .collection-product-image img{transform:scale(1.04)}
.collection-product div:nth-child(2){min-width:0}
.collection-product div:nth-child(2) span{font-size:9px;color:#8c8883;letter-spacing:.16em}
.collection-product h3{font-size:17px;font-weight:500;margin-top:7px;letter-spacing:-.02em}
.collection-product p{font-size:11px;color:#aaa5a0;margin-top:5px}
.originals-band .collection-product p{color:#706c67}
.collection-product>b{font-size:11px;font-weight:500;align-self:end;white-space:nowrap}
.collection-end{max-width:1280px;margin:0 auto;padding:110px 24px 130px;border-top:1px solid rgba(255,255,255,.14)}
.collection-end h2{font-size:clamp(42px,6vw,84px);font-weight:500;letter-spacing:-.06em;line-height:.98;margin-bottom:30px}
@media(max-width:900px){.collection-hero{padding:100px 24px 80px}.collection-band{padding-top:70px;padding-bottom:80px}.collection-band-head{grid-template-columns:1fr;gap:22px}.collection-products{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:35px}.collection-end{padding-top:80px;padding-bottom:100px}}
@media(max-width:560px){.collection-hero h1{font-size:clamp(48px,15vw,76px)}.collection-hero-links{display:grid;gap:16px}.collection-product h3{font-size:15px}.collection-product p{font-size:10px}.collection-product>b{font-size:10px}.collection-end h2{font-size:46px}}
.collection-choices{max-width:1280px;margin:0 auto;padding:0 24px 120px;display:grid;grid-template-columns:1fr;gap:18px}
.collection-choice{min-height:430px;padding:30px;display:flex;flex-direction:column;justify-content:space-between;border-radius:4px;position:relative;overflow:hidden;color:#f5f3ee;border:1px solid rgba(255,255,255,.2);transition:transform .3s ease,border-color .3s ease}
.collection-choice:hover{transform:translateY(-6px);border-color:var(--aka)}
.collection-choice:after{content:'';position:absolute;inset:0;background:rgba(8,8,10,.42);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);pointer-events:none}
.collection-choice-image{position:absolute;inset:-18px;width:calc(100% + 36px);height:calc(100% + 36px);object-fit:cover;filter:grayscale(1) blur(12px) contrast(1.05);opacity:.72;transform:scale(1.06);transition:filter .4s ease,opacity .4s ease}
.collection-choice:hover .collection-choice-image{filter:grayscale(1) blur(8px) contrast(1.05);opacity:.85}
.inspired-choice{background:#29201e}
.originals-choice{background:#6e625a;color:#fff}
.originals-choice:after{background:rgba(20,16,14,.36)}
.collection-choice-number{font-size:10px;letter-spacing:.2em;color:#aaa5a0}
.originals-choice .collection-choice-number{color:#e2dcd5}
.collection-choice-number,.collection-choice>div,.collection-choice-arrow{position:relative;z-index:1}
.collection-choice .kicker{margin:0 0 18px}
.collection-choice h2{font-size:clamp(36px,4.2vw,62px);font-weight:500;letter-spacing:-.06em;line-height:.98}
.collection-choice h2 em{color:var(--aka);font-style:normal}
.collection-choice div>p:last-child{color:#aaa5a0;font-size:13px;line-height:1.6;margin-top:24px;max-width:260px}
.originals-choice div>p:last-child{color:#e2dcd5}
.collection-choice-arrow{align-self:flex-end;width:48px;height:48px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:25px;transition:background .2s,color .2s}
.collection-choice:hover .collection-choice-arrow{background:var(--aka);border-color:var(--aka);color:#fff}
.collection-detail-main{min-height:calc(100vh - 180px);max-width:1280px;margin:0 auto;padding:34px 24px 100px}
.collection-back{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#aaa5a0}
.collection-detail-hero{max-width:850px;padding:130px 0 20px}
.collection-detail-hero h1{font-size:clamp(64px,11vw,150px);font-weight:500;letter-spacing:-.08em;line-height:.9;margin:22px 0 28px}
.collection-detail-hero>p:not(.kicker):not(.collection-coming){max-width:520px;color:#aaa5a0;font-size:16px;line-height:1.7}
.collection-detail-rule{width:100%;height:1px;background:rgba(255,255,255,.18);margin:60px 0 24px}
.collection-coming{color:#aaa5a0;font-size:13px;line-height:1.7;margin-bottom:28px}
.collection-catalog{border-top:1px solid rgba(255,255,255,.14);padding:70px 0 110px}
.collection-catalog[hidden]{display:none}
.collection-catalog-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}
.collection-catalog-head .kicker{margin:0}
.collection-catalog-head>p:last-child{font-size:12px;color:#aaa5a0}
.collection-tools{display:flex;justify-content:flex-end;gap:12px;margin:-8px 0 28px}
.collection-tools label{display:flex;align-items:center;gap:8px;color:#aaa5a0;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.collection-tools select{appearance:none;background:#171719;color:#f5f3ee;border:1px solid #3b3b40;border-radius:3px;padding:10px 28px 10px 11px;font:inherit;font-size:10px;letter-spacing:.04em;cursor:pointer}
.collection-tools select:disabled{opacity:.5;cursor:not-allowed}
.collection-empty{padding:90px 0;color:#aaa5a0;font-size:18px;text-align:center;border-top:1px solid rgba(255,255,255,.14)}
.collection-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 18px}
.collection-card{color:#f5f3ee;min-width:0}
.collection-card>div{aspect-ratio:3/4;background:#19191b;border-radius:4px;overflow:hidden;margin-bottom:14px}
.collection-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.collection-card:hover img{transform:scale(1.04)}
.collection-card>span{font-size:9px;color:#8c8883;letter-spacing:.16em}
.collection-card>small{display:block;font-size:9px;color:#8c8883;letter-spacing:.13em;margin-top:8px}
.collection-card h3{font-size:17px;font-weight:500;margin-top:7px;letter-spacing:-.02em}
.collection-card p{font-size:11px;color:#aaa5a0;margin-top:5px}
@media(max-width:900px){.collection-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}}
@media(max-width:560px){.collection-tools{justify-content:stretch;flex-direction:column;margin:0 0 24px}.collection-tools label{justify-content:space-between}.collection-tools select{flex:1}}
.all-products-main{max-width:1280px;margin:0 auto;padding:34px 24px 100px}
.all-products-hero{padding:110px 0 70px}
.all-products-hero h1{font-size:clamp(58px,9vw,120px);font-weight:500;letter-spacing:-.08em;line-height:.9;margin:20px 0 24px}
.all-products-hero>p:last-child{color:#aaa5a0;font-size:15px}
.all-products-catalog{border-top:1px solid rgba(255,255,255,.14);padding-top:38px}
@media(max-width:700px){.collection-choices{grid-template-columns:1fr;padding-bottom:80px}.collection-choice{min-height:350px}.collection-detail-hero{padding:100px 0 60px}.collection-detail-hero h1{font-size:80px}}
/* Bestseller Set FREE badge in navigation. */
.nav-free{display:inline-block;background:var(--aka);color:#fff;font-size:9px;font-weight:800;letter-spacing:.1em;padding:3px 7px;border-radius:30px;margin-left:7px;vertical-align:2px}
.mobile-menu .nav-free{font-size:11px;letter-spacing:.1em;padding:5px 10px;vertical-align:6px}

/* ——— Sales & coupons (added with discount management) ——— */
.flag.flag-sale{left:auto;right:10px;background:var(--aka);color:#fff;border-color:var(--aka)}
.price s.was{color:#8a8887;font-weight:400;margin-left:8px;font-size:.82em}
.collection-card.on-sale > div{position:relative}
.card-sale-chip{position:absolute;top:10px;right:10px;background:var(--aka);color:#fff;font-size:9px;font-weight:800;letter-spacing:.1em;padding:4px 8px;border-radius:30px;z-index:2}
.announce.announce-sale{background:var(--aka);color:#fff;font-weight:700}
.cart-price s.was{display:block;color:#8a8887;font-weight:400;font-size:11px;margin-top:2px}
.pdp-price-row s.was{color:#8a8887;font-size:.6em;margin-left:10px;font-weight:400}
.pdp-sale-badge{display:inline-block;background:var(--aka);color:#fff;font-size:10px;font-weight:800;letter-spacing:.08em;padding:5px 10px;border-radius:30px;margin-left:10px;vertical-align:3px}
.size-option b s.was{display:block;color:#8a8887;font-weight:400;font-size:11px}

/* ═══════════════════════════════════════════════════════════════════════
   Mobile — phones and small tablets. Same design, laid out for a narrow
   screen: no sideways scroll, one column where four made no sense,
   finger-sized controls, readable type.
   ═══════════════════════════════════════════════════════════════════════ */
@media(max-width:900px){
  /* — header: hamburger · logo · search · account · bag, all on one line — */
  header{gap:8px;padding:10px 14px}
  .nav-right{gap:4px;flex:none}
  .nav-right::before{display:none}
  .link-btn{padding:9px 11px;font-size:11px;letter-spacing:.08em}
  /* "Find your scent" becomes an icon button; the label stays for screen readers */
  #finderOpen{font-size:0;width:40px;height:40px;padding:0;justify-content:center;border-radius:50%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='M20 20l-4.2-4.2'/%3E%3C/svg%3E");background-size:17px;background-repeat:no-repeat;background-position:center}
  /* bag becomes an icon button on mobile; the "Bag" label stays for screen readers */
  #cartOpen{font-size:0;gap:0;width:40px;height:40px;padding:0;justify-content:center;border-radius:50%;position:relative}
  #cartOpen .bag-icon{display:block;width:19px;height:19px;flex:none}
  /* fallback: a page served from an older cached copy has no inline SVG, so paint
     the same bag glyph from CSS — the button must never be an empty circle */
  #cartOpen:not(:has(.bag-icon)){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111114' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.5 8h13l1.3 12.2a1 1 0 0 1-1 1.05H5.2a1 1 0 0 1-1-1.05L5.5 8Z'/%3E%3Cpath d='M9 10V6a3 3 0 0 1 6 0v4'/%3E%3C/svg%3E");background-size:19px;background-repeat:no-repeat;background-position:center}
  #cartOpen #cartCount{position:absolute;top:-3px;right:-3px;min-width:16px;height:16px;padding:0 4px;font-size:9px;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,.3)}
  #cartOpen #cartCount.empty{display:none}
  .menu-btn{padding:10px;margin:-10px -4px -10px -10px;min-width:44px;min-height:44px;justify-content:center}
  .logo-img img{height:30px}

  /* — footer links wrap instead of running off the edge — */
  .foot-top{flex-direction:column;align-items:flex-start;gap:18px}
  .foot-links{flex-wrap:wrap;gap:12px 18px;line-height:1.4}
  .foot-links a{padding:6px 0}

  /* — story block: the image track was forcing the grid past the viewport — */
  .story-grid{grid-template-columns:minmax(0,1fr);padding:56px 20px}
  .story-main{min-height:0;aspect-ratio:4/5}

  /* — sections breathe less on a phone — */
  .section{width:100%;padding:56px 20px}
  main .section{margin-top:16px}
  .cta{padding:70px 20px;margin:12px}
  .hero-foot{padding:14px 16px;font-size:10px}
  .hero{min-height:82svh}

  /* — bag drawer: full width, comfortable tap targets — */
  .drawer{width:100vw;max-width:100vw}
  .qty-btn{width:34px;height:34px}
  .cart-remove{min-width:34px;min-height:34px}

  /* — toast sits above the thumb, not the corner — */
  .toast{left:16px;right:16px;top:auto;bottom:24px;justify-content:center}
}

@media(max-width:560px){
  /* Mobile hero follows the reference flow: image, copy, then actions. */
  .hero.hero-video-only{display:block;min-height:0;aspect-ratio:auto;background:#f5f1eb;color:#111114;overflow:hidden}
  .hero-image{position:relative;inset:auto;display:block;width:calc(100% - 20px);height:auto;aspect-ratio:4/3;margin:10px 10px 0;border-radius:10px;object-position:68% center}
  .hero-conversion{position:relative;left:auto;right:auto;bottom:auto;max-width:none;padding:26px 20px 28px;color:#111114;text-shadow:none}
  .hero-conversion-kicker{margin-bottom:13px;color:#6a6259;font-size:10px}
  .hero-conversion h1{max-width:520px;color:#111114;font-size:clamp(32px,9.5vw,46px);line-height:1.02}
  .hero-conversion-copy{margin:12px 0 20px;color:#3d3935;font-size:17px}
  .hero-conversion-actions{gap:8px}
  .hero-conversion-actions a{flex:1;min-width:0;padding:14px 10px;border-radius:28px;font-size:9px;letter-spacing:.08em}
  .hero-conversion-primary{background:#111114;color:#fff}
  .hero-conversion-primary:hover{background:#29282a}
  .hero-conversion-secondary{border-color:#111114;background:transparent;color:#111114;backdrop-filter:none}
  .hero-conversion-secondary:hover{background:#e8e1d9}
  .hero-foot-overlay{position:relative;bottom:auto;left:auto;right:auto;background:#f5f1eb;color:#6a6259;border-top:1px solid rgba(17,17,20,.12)}
  .announce{font-size:9px;letter-spacing:.14em;padding:9px 12px;line-height:1.4}
  .products,.light-products,.dark-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .card-meta{flex-direction:column;align-items:flex-start;gap:4px}
  .card-meta h3{font-size:14px}
  .card-meta p{font-size:11px}
  .section-head{flex-wrap:wrap;gap:10px}
  h1{font-size:clamp(36px,11vw,56px)}
  h2{font-size:clamp(28px,8vw,40px)}
  .cta h2{font-size:clamp(30px,9vw,48px)}
  .section-sub{font-size:14px;margin-bottom:22px}
  .story-text h2{font-size:clamp(28px,8vw,38px)}
  .story-stats{gap:14px}
  .btn-red,.btn-dark,.btn-light{width:100%;text-align:center;padding:16px 20px}
  .hero-ctas{flex-direction:column}
  .marquee{font-size:18px;padding:14px 0}
  .proof{border-radius:18px}
  .proof-main{min-height:340px}
  .proof-main strong{font-size:18px}
  .modal-box{padding:22px 18px;border-radius:16px}
  .collection-choice{padding:22px;min-height:300px}
  .collection-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}
  .collection-card h3{font-size:14px}
  .collection-card p,.collection-card small{font-size:10px}
  .collection-detail-hero h1{font-size:clamp(44px,14vw,64px)}
  .collection-hero{padding:70px 20px 56px}
  .collection-end{padding:60px 20px 70px}
  .collection-end h2{font-size:clamp(30px,9vw,40px)}
  .all-products-hero,.collection-detail-hero{padding-left:0;padding-right:0}
}

/* Touch devices: no hover-only affordances, comfortable hit areas */
@media(hover:none){
  .card-hover-img{display:none}
  a,button{-webkit-tap-highlight-color:rgba(230,0,18,.18)}
}

/* — wordmark may shrink so the header never squeezes it against the buttons — */
@media(max-width:900px){
  .logo-img{min-width:0;flex:1 1 auto;display:flex;justify-content:center}
  .logo-img img{max-width:100%;height:34px}
  footer .logo-img{justify-content:flex-start}
  footer .logo-img img{height:32px}
}

/* Mobile navigation keeps the controls easy to tap while showing the glyphs
   directly. The wordmark is centered against the viewport, independently of
   the menu and utility controls. */
@media(max-width:900px){
  header{position:sticky;isolation:isolate}
  header>.logo-img{position:absolute;left:50%;top:50%;z-index:1;flex:none;transform:translate(-50%,-50%)}
  header>.logo-img img{display:block}
  header .nav-right{position:relative;z-index:2;pointer-events:none}
  /* The utility controls paint above the centred wordmark, but their empty box
     must not swallow taps meant for the logo underneath. Only the buttons and
     links themselves stay clickable, so the logo link stays reachable on grid
     headers (the product page) where the box spans the middle of the bar. */
  header .nav-right>*{pointer-events:auto}
  header #finderOpen,
  header #cartOpen{
    border-color:transparent!important;
    background-color:transparent!important;
    box-shadow:none!important;
  }
  header #finderOpen:hover,
  header #finderOpen:focus-visible,
  header #cartOpen:hover,
  header #cartOpen:focus-visible{
    border-color:transparent!important;
    background-color:transparent!important;
  }
  header #cartOpen{color:#fff}
}
@media(max-width:560px){
  /* sale chip drops to the bottom of the image so it never collides with the category flag */
  .card-img .flag.flag-sale{top:auto;bottom:10px;left:10px;right:auto}
  .card-sale-chip{top:auto;bottom:10px;left:10px;right:auto}
  /* iOS zooms into any field under 16px — keep form text at 16px on phones */
  input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],select,textarea{font-size:16px!important}
}

/* — homepage cards on phones: price sits directly under the name — */
@media(max-width:560px){
  .light-card .card-meta{gap:0;padding-top:10px}
  .light-card .card-meta p{margin:1px 0 0}
  .light-card .card-meta .price{margin-top:3px}
}

/* ——— Filter / Sort controls: an icon in front of each label ——— */
.collection-tools label::before{content:'';width:14px;height:14px;flex:none;opacity:.75;background-repeat:no-repeat;background-position:center;background-size:contain}
/* funnel for Filter / Family */
.collection-tools label:has(#allProductFilter)::before,
.collection-tools label:has(#collectionFilter)::before,
.collection-tools label:has(#familyFilter)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5f3ee' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5h18l-7 8.5V19l-4 2v-7.5z'/%3E%3C/svg%3E")}
/* up/down arrows for Sort by */
.collection-tools label:has(#allProductSort)::before,
.collection-tools label:has(#collectionSort)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5f3ee' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 4v16M3 8l4-4 4 4M17 20V4M13 16l4 4 4-4'/%3E%3C/svg%3E")}
/* the select itself gets a chevron so it reads as a dropdown */
.collection-tools select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5l3.5 3.5 3.5-3.5' stroke='%23aaa5a0' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}

/* ═══════════════════════════════════════════════════════════════════════
   Interactive cursor (desktop, fine pointer only — see assets/js/cursor.js)
   ═══════════════════════════════════════════════════════════════════════ */
/* Only ever active when cursor.js has confirmed a fine pointer and added .has-cursor. */
  /* the native arrow steps aside; text fields keep the I-beam for usability */
  .has-cursor,.has-cursor *{cursor:none!important}
  .has-cursor input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=file]),
  .has-cursor textarea{cursor:text!important}
  .has-cursor iframe{cursor:auto!important}

  .has-cursor .bp-cursor{position:fixed;inset:0;z-index:2147483647;pointer-events:none;opacity:1;transition:opacity .25s ease}
  .has-cursor .bp-cursor.is-hidden{opacity:0}
  .has-cursor .bp-cursor-dot,.has-cursor .bp-cursor-ring{position:absolute;top:0;left:0;border-radius:50%;will-change:transform}
  .has-cursor .bp-cursor-dot{width:6px;height:6px;margin:-3px 0 0 -3px;background:#fff;mix-blend-mode:difference;transition:width .18s ease,height .18s ease,margin .18s ease,opacity .18s ease}
  .has-cursor .bp-cursor-ring{width:34px;height:34px;margin:-17px 0 0 -17px;border:1.5px solid rgba(255,255,255,.85);mix-blend-mode:difference;display:grid;place-items:center;transition:width .28s cubic-bezier(.2,.8,.2,1),height .28s cubic-bezier(.2,.8,.2,1),margin .28s cubic-bezier(.2,.8,.2,1),border-color .2s ease,background-color .2s ease,border-radius .2s ease}
  .has-cursor .bp-cursor-label{font:800 9px/1 -apple-system,BlinkMacSystemFont,'Inter','Helvetica Neue',Arial,sans-serif;letter-spacing:.18em;color:#fff;opacity:0;transform:scale(.6);transition:opacity .2s ease,transform .25s cubic-bezier(.2,.8,.2,1);white-space:nowrap}

  /* over anything clickable: the ring swells, goes brand-red, the dot recedes */
  .has-cursor .bp-cursor.is-link .bp-cursor-ring{width:56px;height:56px;margin:-28px 0 0 -28px;border-color:var(--aka);background:rgba(230,0,18,.22);mix-blend-mode:normal}
  .has-cursor .bp-cursor.is-link .bp-cursor-dot{width:0;height:0;margin:0}
  .has-cursor .bp-cursor.is-labelled .bp-cursor-ring{width:64px;height:64px;margin:-32px 0 0 -32px;background:var(--aka);border-color:var(--aka)}
  .has-cursor .bp-cursor.is-labelled .bp-cursor-label{opacity:1;transform:scale(1)}

  /* over a text field: a slim bar, the dot hides — the native I-beam does the work */
  .has-cursor .bp-cursor.is-text .bp-cursor-ring{width:3px;height:26px;margin:-13px 0 0 -1.5px;border-radius:2px;border-color:rgba(255,255,255,.55)}
  .has-cursor .bp-cursor.is-text .bp-cursor-dot{opacity:0}

  /* press */
  .has-cursor .bp-cursor.is-down .bp-cursor-ring{width:26px;height:26px;margin:-13px 0 0 -13px}
  .has-cursor .bp-cursor.is-link.is-down .bp-cursor-ring{width:46px;height:46px;margin:-23px 0 0 -23px}
  .has-cursor .bp-cursor.is-labelled.is-down .bp-cursor-ring{width:54px;height:54px;margin:-27px 0 0 -27px}
  .has-cursor .bp-cursor.on-light .bp-cursor-dot{background:#111;mix-blend-mode:normal}
  .has-cursor .bp-cursor.on-light .bp-cursor-ring{border-color:#111;mix-blend-mode:normal}
  .has-cursor .bp-cursor.on-light.is-link .bp-cursor-ring{border-color:#111;background:rgba(17,17,20,.14)}
  .has-cursor .bp-cursor.on-light.is-labelled .bp-cursor-ring{background:#111;border-color:#111}
  .has-cursor .bp-cursor.on-light.is-text .bp-cursor-ring{border-color:#111}
}

/* Trust strip shared by product and set pages. */
.pdp-trust{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:10px auto 0;padding:28px 24px;max-width:1280px;color:#f5f3ee}.trust-item{display:flex;align-items:center;justify-content:center;gap:14px;padding:4px 18px;min-height:72px;min-width:0;font-size:12px;line-height:1.35;letter-spacing:.08em;text-transform:uppercase}.trust-item svg{width:48px;height:48px;flex:0 0 48px;fill:none;stroke:currentColor;stroke-width:1.6}.trust-item>span:first-child{font-size:30px;line-height:1;flex:0 0 48px;text-align:center}.trust-item span{white-space:normal}@media(max-width:900px){.pdp-trust{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px 12px}.trust-item{padding:8px 6px;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:104px;font-size:10px;text-align:center}.trust-item span{text-align:center}.trust-item:last-child{grid-column:1/-1;justify-content:center}}
.discovery-page .pdp-trust{width:100%;max-width:1280px;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center}
@media(max-width:900px){.discovery-page .pdp-trust{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Slightly larger brand mark across all header breakpoints. */
header .logo-img img{height:44px}
@media(max-width:900px){header .logo-img img{height:38px}}

/* The image itself is the quick-shop trigger; keep only the eye visible. */
.reviews-section .review-card-image{cursor:pointer}
.reviews-section .review-eye{left:18px;right:auto;bottom:18px;width:42px;height:42px;padding:0;border:0;border-radius:0;background:transparent;color:#111;box-shadow:none}
.reviews-section .review-eye:hover{background:transparent;color:#111;transform:scale(1.08)}

/* Keep quick-shop imagery compact and group the purchase details together. */
.quick-shop-image{padding:42px 30px}
.quick-shop-image img{object-fit:contain;max-height:76vh}
.quick-shop-copy{padding:56px 34px 28px;gap:14px;overflow:auto}
.quick-shop-copy h2{line-height:.98;margin:0}
.quick-shop-copy>p:not(.kicker){margin:0}
.quick-shop-field{margin-top:4px}
.quick-shop-add{margin-top:12px}
.quick-shop-box{top:50%;height:min(760px,54vh);border-radius:28px 0 0 28px;overflow:hidden;transform:translate(100%,-50%)}
.quick-shop-modal.open .quick-shop-box{transform:translate(0,-50%)}
.quick-shop-image{align-items:start;padding:28px 30px 18px}
.quick-shop-image img{width:88%;height:86%;align-self:start}
@media(max-width:700px){
  .quick-shop-box{top:auto;bottom:0;height:min(78vh,720px);border-radius:26px 26px 0 0;transform:translateY(100%)}
  .quick-shop-modal.open .quick-shop-box{transform:translateY(0)}
  .quick-shop-image{height:34vh;min-height:210px;padding:18px 22px}
  .quick-shop-image img{width:88%;height:88%;max-height:100%;align-self:start}
  .quick-shop-copy{padding:28px 22px 22px;min-height:0}
}

/* Mobile testimonials: let the customer image lead and keep the quote compact. */
@media(max-width:700px){
  .reviews-section .review-card>.review-card-image{height:min(82vw,340px)}
  .reviews-section .review-card>.review-copy{min-height:0;padding:18px 22px 26px;gap:10px}
  .reviews-section .review-copy strong{font-size:18px;line-height:1.18}
  .reviews-section .review-copy .stars{font-size:13px}
  .reviews-section .review-copy small{font-size:10px}
}

/* Quick shop finish: pure white surface and full-height product imagery. */
.quick-shop-box{background:#fff}
.quick-shop-image{background:#fff;padding:0}
.quick-shop-image img{width:100%;height:100%;max-height:none;object-fit:cover}
.quick-shop-copy{background:#fff}
.quick-shop-close{background:#fff}
@media(max-width:700px){
  .quick-shop-image{padding:0}
}

/* Final mobile testimonial proportions. */
@media(max-width:700px){
  .reviews-section{padding-top:28px;padding-bottom:26px}
  .reviews-section .review-grid{padding-top:16px;gap:10px}
  .reviews-section .review-card>.review-card-image{height:200px}
  .reviews-section .review-card>.review-card-image img{padding:8px 8px 32px}
  .reviews-section .review-eye{left:14px;bottom:12px}
  .reviews-section .review-card>.review-copy{padding:14px 20px 20px;gap:8px}
  .reviews-section .review-copy strong{font-size:17px;line-height:1.18}
}

/* Homepage testimonial redesign: dark, compact, and native to the Bare Proof theme. */
.reviews-v2{position:relative;isolation:isolate;max-width:none;margin:0;padding:clamp(72px,9vw,132px) clamp(20px,5vw,80px);background:#0b0d0f;color:#f7f5f0;overflow:hidden}
.reviews-v2:before{display:none}
.reviews-v2 .reviews-shell{position:relative;max-width:1280px;margin:0 auto}
.reviews-v2 .reviews-heading{align-items:end;gap:32px}
.reviews-v2 .reviews-heading .kicker{margin:0 0 18px;color:#ed0015;font-size:11px;font-weight:800;letter-spacing:.25em;text-transform:uppercase}
.reviews-v2 .reviews-heading h2{max-width:none;margin:0;font-size:clamp(48px,7vw,96px);line-height:.88;letter-spacing:-.075em;color:#f7f5f0}
.reviews-v2 .reviews-heading h2 em{font-style:normal;color:#ed0015}
.reviews-v2 .review-controls{gap:8px}
.reviews-v2 .review-controls button{width:48px;height:48px;border-color:rgba(247,245,240,.45);color:#f7f5f0}
.reviews-v2 .review-controls button:hover{background:#f7f5f0;color:#111}
.reviews-v2 .reviews-intro{max-width:360px;margin:26px 0 0;color:#aaa9a5;font-size:15px;line-height:1.45}
.reviews-v2 .review-grid{display:flex;gap:20px;margin:0;padding:42px 0 12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.reviews-v2 .review-grid::-webkit-scrollbar{display:none}
.reviews-v2 .review-card{position:relative;flex:0 0 min(620px,78vw);height:340px;min-height:0;display:grid;grid-template-columns:44% 56%;background:#f3eee4;border:1px solid rgba(255,255,255,.12);border-radius:24px;overflow:hidden;color:#111;scroll-snap-align:start;transform:none;animation:none}
.reviews-v2 .review-card:hover{transform:translateY(-4px);box-shadow:none}
.reviews-v2 .review-card>.review-card-image{height:100%;min-height:0;background:#d9d4ca;cursor:pointer}
.reviews-v2 .review-card>.review-card-image img{width:100%;height:100%;padding:0;object-fit:cover;display:block}
.reviews-v2 .review-eye{left:18px;right:auto;bottom:18px;width:42px;height:42px;padding:0;border:0;border-radius:0;background:transparent;color:#fff;box-shadow:none;mix-blend-mode:difference}
.reviews-v2 .review-eye:hover{background:transparent;color:#fff;transform:scale(1.1)}
.reviews-v2 .review-card>.review-copy{justify-content:center;padding:34px 30px;background:#f3eee4;color:#111;gap:16px}
.reviews-v2 .review-copy strong{font-size:clamp(22px,2.3vw,32px);line-height:1.05;letter-spacing:-.055em;color:#111}
.reviews-v2 .review-copy .stars{font-size:15px;letter-spacing:.14em;color:#111}
.reviews-v2 .review-copy small{font-size:11px;color:#77716a;letter-spacing:.13em;text-transform:uppercase}
@media(max-width:700px){
  .reviews-v2{padding:64px 16px 72px}
  .reviews-v2 .reviews-heading{align-items:end;gap:14px}
  .reviews-v2 .reviews-heading .kicker{margin-bottom:14px;font-size:9px;letter-spacing:.2em}
  .reviews-v2 .reviews-heading h2{font-size:52px;line-height:.9}
  .reviews-v2 .review-controls{flex:0 0 auto;gap:6px}
  .reviews-v2 .review-controls button{width:38px;height:38px;font-size:17px}
  .reviews-v2 .reviews-intro{margin-top:20px;font-size:13px}
  .reviews-v2 .review-grid{gap:0;padding-top:28px;padding-bottom:8px;scroll-padding-inline:0}
  .reviews-v2 .review-card{flex:0 0 100%;width:100%;box-sizing:border-box;height:auto;grid-template-columns:1fr;border-radius:20px}
  .reviews-v2 .review-card>.review-card-image{height:250px}
  .reviews-v2 .review-eye{left:16px;bottom:14px}
  .reviews-v2 .review-card>.review-copy{padding:22px 20px 24px;gap:10px}
  .reviews-v2 .review-copy strong{font-size:21px;line-height:1.08}
  .reviews-v2 .review-copy .stars{font-size:13px}
  .reviews-v2 .review-copy small{font-size:10px}
}

/* Let testimonial content sit on the section canvas without a card box. */
.reviews-v2 .review-card{background:transparent;border:0;border-radius:0;overflow:visible}
.reviews-v2 .review-card>.review-card-image{border-radius:22px;overflow:hidden}
.reviews-v2 .review-card>.review-copy{background:transparent;color:#f7f5f0}
.reviews-v2 .review-copy strong{color:#f7f5f0}
.reviews-v2 .review-copy .stars{color:#ed0015}
.reviews-v2 .review-copy small{color:#aaa9a5}
@media(max-width:700px){
  .reviews-v2 .review-card>.review-card-image{border-radius:18px}
  .reviews-v2 .review-card>.review-copy{padding:18px 4px 24px}
}

/* Homepage canvas: one continuous background behind every section. */
body.homepage{background:#0b0d0f}
body.homepage .site-bg{background:#0b0d0f;filter:none;transform:none}
body.homepage .site-bg:after{background:#0b0d0f}
body.homepage main .section,
body.homepage .shop,
body.homepage .story-dark,
body.homepage .bestseller-feature,
body.homepage .reviews-section,
body.homepage .cta,
body.homepage footer{background:transparent}
body.homepage .hero,
body.homepage .marquee{background:#0b0d0f}
body.homepage .cta-jp{border-left:0;border-right:0;border-radius:0;background:radial-gradient(circle at 50% 120%,rgba(230,0,18,.78) 0%,transparent 55%),#0b0d0f}

/* Keep the mobile hero offer legible on the shared dark homepage canvas. */
@media(max-width:700px){
  body.homepage .hero-conversion{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.45)}
  body.homepage .hero-conversion-kicker{color:#bdb8af}
  body.homepage .hero-conversion h1{color:#fff}
  body.homepage .hero-conversion-copy{color:#e5e1da}
  body.homepage .hero-conversion-primary{background:#e60012;color:#fff}
  body.homepage .hero-conversion-secondary{border-color:rgba(255,255,255,.72);background:transparent;color:#fff}
  body.homepage .hero-conversion-secondary:hover{background:rgba(255,255,255,.12)}
}

/* Homepage section headings share the scale used by “Our Most Loved”. */
body.homepage .shop .section-head h2,
body.homepage .story-text h2,
body.homepage .trybuy-copy h2,
body.homepage .trybuy-proof h2,
body.homepage .reviews-v2 .reviews-heading h2{font-size:clamp(32px,4.5vw,56px);line-height:1.05;letter-spacing:-.03em}
@media(max-width:700px){
  body.homepage .shop .section-head h2,
  body.homepage .story-text h2,
  body.homepage .trybuy-copy h2,
  body.homepage .trybuy-proof h2,
  body.homepage .reviews-v2 .reviews-heading h2{font-size:clamp(32px,8vw,40px);line-height:1.02}
}

/* Homepage layout rhythm: shared width, spacing, and type scale. */
body.homepage main > .section {
  width: min(100%, 1280px);
  max-width: 1280px;
  margin: 0 auto;
  padding: clamp(48px, 5vw, 72px) clamp(20px, 5vw, 80px);
}
body.homepage main > .section + .section { margin-top: 0; }
body.homepage .story-grid {
  max-width: none;
  padding: 0;
  gap: clamp(32px, 4vw, 56px);
}
body.homepage .story-dark { margin-top: 0; }
body.homepage .trybuy-layout { margin-top: 0; }
body.homepage .reviews-v2 {
  width: 100%;
  max-width: 1280px;
  padding: clamp(48px, 5vw, 72px) clamp(20px, 5vw, 80px);
}
body.homepage .reviews-v2 .reviews-shell { max-width: none; }
body.homepage .reviews-v2 .reviews-heading h2,
body.homepage .story-text h2,
body.homepage .trybuy-copy h2,
body.homepage .trybuy-proof h2,
body.homepage .shop-head h2 {
  font-size: clamp(36px, 4.5vw, 56px);
  line-height: 1;
  letter-spacing: -.04em;
}
body.homepage .section-sub,
body.homepage .story-text .body,
body.homepage .reviews-intro {
  font-size: 15px;
  line-height: 1.55;
}
@media (max-width: 700px) {
  body.homepage main > .section {
    padding: 44px 20px;
  }
  body.homepage .reviews-v2 {
    padding: 44px 20px 52px;
  }
  body.homepage .reviews-v2 .reviews-heading h2,
  body.homepage .story-text h2,
  body.homepage .trybuy-copy h2,
  body.homepage .trybuy-proof h2,
  body.homepage .shop-head h2 {
    font-size: clamp(32px, 8vw, 40px);
    line-height: 1.02;
  }
}

/* Avoid showing fallback homepage cards before the live catalogue is ready. */
html:not(.homepage-hydrated) body.homepage .light-products,
html:not(.homepage-hydrated) body.homepage .review-grid {
  visibility: hidden;
}

/* Avoid flashing stale server-rendered catalog cards before live API hydration. */
html:not(.catalogue-hydrated) body.collection-detail-page .collection-product-grid,
html:not(.catalogue-hydrated) body.all-products-page .collection-product-grid {
  visibility: hidden;
}



/* Keep the homepage hero video at its natural aspect ratio across desktop and mobile. */
.hero.hero-video-only{aspect-ratio:auto;min-height:0;}
.hero.hero-video-only .hero-image{position:relative;inset:auto;display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center;}
@media(min-width:561px){.hero.hero-video-only .hero-conversion{position:absolute;bottom:clamp(92px,14vh,150px);}}
@media(max-width:560px){.hero.hero-video-only .hero-image{width:100%;height:clamp(380px,112.5vw,520px);aspect-ratio:auto;margin:0;border-radius:0;object-fit:cover;object-position:center;}.hero.hero-video-only .hero-conversion{position:relative;left:auto;right:auto;bottom:auto;padding:26px 20px 28px;}}
@media(max-width:560px){.hero-sound-btn{right:14px;bottom:14px}}


/* Tablet hero: keep media, copy, and actions in separate rows to prevent overlap. */
@media (min-width:561px) and (max-width:900px){.hero.hero-video-only{display:block;min-height:0;aspect-ratio:auto;background:#0b0d0f;overflow:hidden}.hero.hero-video-only .hero-image{position:relative;inset:auto;display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center}.hero.hero-video-only .hero-conversion{position:relative;left:auto;right:auto;bottom:auto;max-width:none;padding:32px clamp(28px,6vw,72px) 40px;color:#fff;text-shadow:none}.hero.hero-video-only .hero-conversion-actions a{flex:0 1 auto}}

/* Homepage white + red theme. Scoped to the homepage so inner pages keep their current design. */
body.homepage{background:#fff;color:#151515}
body.homepage .site-bg{background:#fff;filter:none;transform:none}
body.homepage .site-bg:after{background:#fff}
body.homepage .announce{background:#e60012;color:#fff}
body.homepage header{background:rgba(255,255,255,.96);color:#151515;border-bottom-color:rgba(230,0,18,.18);box-shadow:0 8px 24px rgba(17,17,20,.08)}
body.homepage header.scrolled{background:#fff;box-shadow:0 10px 28px rgba(17,17,20,.12)}
body.homepage header .logo-img img{filter:invert(1)}
body.homepage .nav-left a,body.homepage .link-btn{color:#151515}
body.homepage .nav-left a:hover{color:#e60012}
body.homepage .nav-left a::after{background:#e60012}
body.homepage #finderOpen{border-color:rgba(21,21,21,.22)}
body.homepage #finderOpen:hover{border-color:#e60012;background:rgba(230,0,18,.08);color:#e60012}
body.homepage #cartOpen{background:#e60012;border-color:#e60012;color:#fff}
body.homepage #cartOpen:hover{background:#b0000e;border-color:#b0000e}
body.homepage .hero{background:#fff;color:#151515}
body.homepage .hero-conversion{background:rgba(255,255,255,.94);border-left:4px solid #e60012;padding:26px 30px;box-shadow:0 16px 40px rgba(17,17,20,.16);text-shadow:none;color:#151515}
body.homepage .hero-conversion-kicker{color:#e60012}
body.homepage .hero-conversion h1{color:#151515}
body.homepage .hero-conversion-copy{color:#4d4a47}
body.homepage .hero-conversion-primary{background:#e60012;color:#fff}
body.homepage .hero-conversion-primary:hover{background:#b0000e}
body.homepage .hero-conversion-secondary{border-color:#151515;background:#fff;color:#151515;backdrop-filter:none}
body.homepage .hero-conversion-secondary:hover{background:#151515;color:#fff}
body.homepage .marquee{background:#e60012;color:#fff;border-color:#e60012}
body.homepage .marquee i{color:#fff}
body.homepage main .section,body.homepage .shop,body.homepage .story-dark,body.homepage .bestseller-feature,body.homepage .reviews-section,body.homepage .cta,body.homepage footer{background:#fff;color:#151515}
body.homepage .section-head{border-top-color:#151515}
body.homepage .section-head:after{background:#e60012}
body.homepage .kicker{color:#e60012}
body.homepage .section-head h2,body.homepage .section-sub{color:#151515}
body.homepage .underline{border-color:#151515}
body.homepage .light-card .card-img{background:#f4f1ed;border:1px solid #e5dfd7}
body.homepage .light-card .card-meta h3,body.homepage .light-card .price{color:#151515}
body.homepage .light-card .card-meta p,body.homepage .light-card .price small{color:#6c6761}
body.homepage .light-card .flag{background:#e60012;color:#fff}
body.homepage .bestseller-feature{border-top:1px solid #eee7df;border-bottom:1px solid #eee7df}
body.homepage .trybuy-layout{background:#fff;border-top:0;border-bottom:0}
body.homepage .bestseller-feature{padding-left:0;padding-right:0}
body.homepage .trybuy-layout{max-width:none;margin-left:0;margin-right:0;border-left:0;border-right:0;border-radius:0}
body.homepage .trybuy-content{background:#fff;color:#151515}
body.homepage .trybuy-kicker{color:#e60012}
body.homepage .trybuy-proof h2,body.homepage .trybuy-proof h2 em{color:#151515}
body.homepage .trybuy-lead{color:#4d4a47}
body.homepage .trybuy-steps{border-top-color:#e5dfd7}
body.homepage .trybuy-steps>div{border-bottom-color:#e5dfd7}
body.homepage .trybuy-steps>div:before{color:#e60012}
body.homepage .trybuy-steps h3{color:#151515}
body.homepage .trybuy-steps p,body.homepage .trybuy-cta-row span{color:#6c6761}
body.homepage .trybuy-cta-row .trybuy-btn{background:#e60012;color:#fff}
body.homepage .trybuy-cta-row .trybuy-btn:hover{background:#b0000e}
body.homepage .reviews-v2{background:#fff;color:#151515}
body.homepage .reviews-v2:before{background:rgba(230,0,18,.12)}
body.homepage .reviews-v2 .reviews-heading h2{color:#151515}
body.homepage .reviews-v2 .reviews-heading h2 em,body.homepage .reviews-v2 .reviews-heading .kicker{color:#e60012}
body.homepage .reviews-v2 .reviews-intro{color:#6c6761}
body.homepage .reviews-v2 .review-controls button{border-color:#151515;color:#151515}
body.homepage .reviews-v2 .review-controls button:hover{background:#e60012;border-color:#e60012;color:#fff}
body.homepage .reviews-v2 .review-card>.review-card-image{border:1px solid #e5dfd7;background:#f4f1ed}
body.homepage .reviews-v2 .review-card>.review-copy{color:#151515}
body.homepage .reviews-v2 .review-copy strong{color:#151515}
body.homepage .reviews-v2 .review-copy .stars{color:#e60012}
body.homepage .reviews-v2 .review-copy small{color:#6c6761}
body.homepage .home-trust-marquee{background:#fff;color:#151515;border-color:#e60012}
body.homepage .home-trust-item{color:#151515}
body.homepage .home-trust-item svg{color:#e60012}
body.homepage .cta-jp{border-top:3px solid #e60012;border-bottom:3px solid #e60012;border-left:0;border-right:0;border-radius:0;background:radial-gradient(circle at 50% 120%,rgba(230,0,18,.18) 0%,transparent 55%),#fff;color:#151515}
body.homepage .cta-jp:before{color:rgba(230,0,18,.1)}
body.homepage .cta-jp h2{color:#151515}
body.homepage .cta-jp h2 em{color:#e60012}
body.homepage footer{border-top:1px solid #eee7df}
body.homepage footer,body.homepage footer a,body.homepage .fine{color:#151515}
body.homepage footer .logo-img img,body:not(.homepage) footer .logo-img img{filter:invert(1) drop-shadow(0 2px 10px rgba(0,0,0,.12))}
@media(max-width:700px){
  body.homepage .hero-conversion{background:#fff;border-left:0;border-top:4px solid #e60012;padding:24px 20px 28px;box-shadow:none}
  body.homepage .hero-conversion h1,body.homepage .hero-conversion-copy{color:#151515}
  body.homepage .hero-conversion-kicker{color:#e60012}
  body.homepage .hero-conversion-primary{background:#e60012;color:#fff}
  body.homepage .hero-conversion-secondary{border-color:#151515;background:#fff;color:#151515}
  body.homepage .hero-conversion-secondary:hover{background:#151515;color:#fff}
}

/* Site-wide white + red theme for inner pages. */
body:not(.homepage){background:#fff;color:#151515}
body:not(.homepage) .site-bg{background:#fff;filter:none;transform:none}
body:not(.homepage) .site-bg:after{background:#fff}
body:not(.homepage) .announce{background:#e60012;color:#fff}
body:not(.homepage) header{background:rgba(255,255,255,.96);color:#151515;border-bottom-color:rgba(230,0,18,.18);box-shadow:0 8px 24px rgba(17,17,20,.08)}
body:not(.homepage) header.scrolled{background:#fff;box-shadow:0 10px 28px rgba(17,17,20,.12)}
body:not(.homepage) header .logo-img img{filter:invert(1)}
body:not(.homepage) .nav-left a,body:not(.homepage) .link-btn{color:#151515}
body:not(.homepage) .nav-left a:hover{color:#e60012}
body:not(.homepage) .nav-left a::after{background:#e60012}
body:not(.homepage) #finderOpen{border-color:rgba(21,21,21,.22)}
body:not(.homepage) #finderOpen:hover{border-color:#e60012;background:rgba(230,0,18,.08);color:#e60012}
body:not(.homepage) #cartOpen{background:#e60012;border-color:#e60012;color:#fff}
body:not(.homepage) #cartOpen:hover{background:#b0000e;border-color:#b0000e}
body:not(.homepage) main,body:not(.homepage) main>.section,body:not(.homepage) .section,body:not(.homepage) .collection-main,body:not(.homepage) .collection-detail-main,body:not(.homepage) .all-products-main,body:not(.homepage) footer{background:#fff;color:#151515}
body:not(.homepage) h1,body:not(.homepage) h2,body:not(.homepage) h3,body:not(.homepage) strong{color:#151515}
body:not(.homepage) .kicker,body:not(.homepage) .eyebrow,body:not(.homepage) .collection-hero h1 em,body:not(.homepage) .collection-band h2 em,body:not(.homepage) .collection-end h2 em{color:#e60012}
body:not(.homepage) .section-head{border-top-color:#151515}
body:not(.homepage) .section-head:after{background:#e60012}
body:not(.homepage) .section-sub,body:not(.homepage) .collection-hero>p:not(.kicker),body:not(.homepage) .collection-band-head>p,body:not(.homepage) .collection-product p,body:not(.homepage) .collection-card p,body:not(.homepage) .collection-card>small,body:not(.homepage) .fine{color:#6c6761}
body:not(.homepage) .underline,body:not(.homepage) .collection-hero-links a{border-color:#151515}
body:not(.homepage) .collection-hero,body:not(.homepage) .collection-band+.collection-band,body:not(.homepage) .collection-end,body:not(.homepage) .all-products-catalog{border-color:#e5dfd7}
body:not(.homepage) .collection-product-image,body:not(.homepage) .collection-card>div,body:not(.homepage) .card-img{background:#f4f1ed;border-color:#e5dfd7}
body:not(.homepage) .collection-choice{border-color:#e5dfd7}
body:not(.homepage) .collection-choice:hover{border-color:#e60012}
body:not(.homepage) .collection-choice:after{background:rgba(255,255,255,.72)}
body:not(.homepage) .collection-choice h2,body:not(.homepage) .collection-choice div>p:last-child{color:#151515}
body:not(.homepage) .collection-choice .kicker,body:not(.homepage) .collection-choice h2 em{color:#e60012}
body:not(.homepage) .collection-choice-arrow{border-color:#151515;color:#151515}
body:not(.homepage) .collection-choice:hover .collection-choice-arrow{background:#e60012;border-color:#e60012;color:#fff}
body:not(.homepage) .originals-band{background:#fff;color:#151515}
body:not(.homepage) .originals-choice{background:#f4f1ed;color:#151515}
body:not(.homepage) .originals-choice:after{background:rgba(255,255,255,.72)}
body:not(.homepage) .originals-choice .collection-choice-number,body:not(.homepage) .originals-choice div>p:last-child{color:#6c6761}
body:not(.homepage) .products .card,body:not(.homepage) .collection-card,body:not(.homepage) .collection-product{color:#151515}
body:not(.homepage) .card-meta h3,body:not(.homepage) .card-meta .price,body:not(.homepage) .collection-product h3,body:not(.homepage) .collection-card h3{color:#151515}
body:not(.homepage) .card-meta p,body:not(.homepage) .price small{color:#6c6761}
body:not(.homepage) .flag,body:not(.homepage) .tag,body:not(.homepage) .tag.gold,body:not(.homepage) .card-quick-add,body:not(.homepage) .quick-add{background:#e60012;color:#fff}
body:not(.homepage) .btn-red,body:not(.homepage) .btn-light,body:not(.homepage) .btn-dark,body:not(.homepage) .proof-btn{background:#e60012;color:#fff;border-color:#e60012;box-shadow:none}
body:not(.homepage) .btn-red:hover,body:not(.homepage) .btn-light:hover,body:not(.homepage) .btn-dark:hover,body:not(.homepage) .proof-btn:hover{background:#b0000e;border-color:#b0000e}
body:not(.homepage) .btn-outline,body:not(.homepage) .btn-ghost{border-color:#151515;color:#151515}
body:not(.homepage) .proof,body:not(.homepage) .story-dark,body:not(.homepage) .reviews-section,body:not(.homepage) .bestseller-feature,body:not(.homepage) .trybuy-layout{background:#fff;color:#151515;border-color:#e5dfd7}
body:not(.homepage) .proof-main,body:not(.homepage) .proof-card,body:not(.homepage) .story-main{border-color:#e5dfd7}
body:not(.homepage) .proof-main figcaption,body:not(.homepage) .proof-card figcaption,body:not(.homepage) .story-main figcaption{background:linear-gradient(transparent,rgba(255,255,255,.94));color:#151515}
body:not(.homepage) .proof-main span,body:not(.homepage) .proof-card span{color:#6c6761}
body:not(.homepage) .proof-quote{background:#e60012;color:#fff}
body:not(.homepage) .bestseller-banner{background:#fff;border-color:#e5dfd7}
body:not(.homepage) .story-text .body,body:not(.homepage) .trybuy-copy .body{color:#6c6761}
body:not(.homepage) .drawer,body:not(.homepage) .modal-box,body:not(.homepage) .quick-shop-box{background:#fff;color:#151515}
body:not(.homepage) .drawer-head,body:not(.homepage) .drawer-foot,body:not(.homepage) .cart-row,body:not(.homepage) .quick-shop-field,body:not(.homepage) .quick-shop-sizes button{border-color:#e5dfd7}
body:not(.homepage) .drawer .empty,body:not(.homepage) .cart-note,body:not(.homepage) .gift-msg,body:not(.homepage) .quick-shop-copy>p:not(.kicker){color:#6c6761}
body:not(.homepage) footer{border-top:1px solid #e5dfd7}
body:not(.homepage) footer,body:not(.homepage) footer a{color:#151515}

/* Collections dropdown shared by desktop and mobile navigation. */
.nav-dropdown{position:relative;border:0;margin:0;padding:0;background:transparent;color:inherit}
.nav-dropdown summary{list-style:none;cursor:pointer;color:inherit;padding:10px 2px;position:relative;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
.nav-dropdown summary::-webkit-details-marker{display:none}
.nav-dropdown summary:after{content:'⌄';display:inline-block;margin-left:7px;font-size:13px;transition:transform .2s ease}
.nav-dropdown[open] summary:after{transform:rotate(180deg)}
.nav-dropdown summary[aria-current="page"]{color:#e60012}
.nav-dropdown-menu{position:absolute;top:calc(100% + 12px);left:-14px;z-index:80;display:grid;min-width:170px;padding:8px;background:#fff;border:1px solid #e5dfd7;border-top:3px solid #e60012;box-shadow:0 16px 34px rgba(17,17,20,.14)}
.nav-dropdown-menu a{display:block!important;padding:11px 12px!important;color:#151515!important;font-size:11px!important;letter-spacing:.12em!important;text-transform:uppercase}
.nav-dropdown-menu a:hover{background:#fff1f1;color:#e60012!important}
.mobile-menu .nav-dropdown{display:block;color:#fff}
.mobile-menu .nav-dropdown summary{padding:10px 0;font-size:32px;letter-spacing:-.02em}
.mobile-menu .nav-dropdown summary[aria-current="page"]{color:#fff}
.mobile-menu .nav-dropdown-menu{position:static;min-width:0;padding:4px 0 8px;border:0;box-shadow:none;background:transparent}
.mobile-menu .nav-dropdown-menu a{padding:8px 0 8px 18px!important;color:#fff!important;font-size:20px!important;letter-spacing:.02em!important;text-transform:none}
.mobile-menu .nav-dropdown-menu a:hover{background:transparent;color:#e60012!important}
@media(max-width:900px){.nav-left .nav-dropdown{display:none}}

/* Desktop hover dropdown: editorial white panel with a red accent, while mobile remains tap-first. */
@media(min-width:901px){
  .nav-dropdown-menu{top:calc(100% + 6px);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
  .nav-dropdown[open]>.nav-dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
  .nav-dropdown:hover>summary,.nav-dropdown[open]>summary{color:#e60012}
  .nav-dropdown-menu a{display:flex!important;align-items:center;gap:9px;border-bottom:1px solid #f0e8e3}
  .nav-dropdown-menu a:last-child{border-bottom:0}
  .nav-dropdown-menu a::before{content:'↳';color:#e60012;font-size:13px;line-height:1}
}

/* Keep the product artwork flush with the card so there is no second, narrower grid inside it. */
body.all-products-page .collection-card>div,
body.collection-detail-page .collection-card>div{padding:0}
body.all-products-page .collection-card img,
body.collection-detail-page .collection-card img{padding:0;display:block}
body.homepage .light-card .card-img img{padding:0}

/* Explicit cursor contrast states: never rely on blend mode alone. */
.has-cursor .bp-cursor.on-light .bp-cursor-dot{background:#151515!important;mix-blend-mode:normal!important}
.has-cursor .bp-cursor.on-light .bp-cursor-ring{border-color:#151515!important;mix-blend-mode:normal!important}
.has-cursor .bp-cursor.on-light.is-link .bp-cursor-ring{border-color:#e60012!important;background:rgba(230,0,18,.18)!important}
.has-cursor .bp-cursor.on-light.is-labelled .bp-cursor-ring{background:#e60012!important;border-color:#e60012!important}
.has-cursor .bp-cursor.on-dark .bp-cursor-dot{background:#fff!important;mix-blend-mode:normal!important}
.has-cursor .bp-cursor.on-dark .bp-cursor-ring{border-color:#fff!important;mix-blend-mode:normal!important}
.has-cursor .bp-cursor.on-dark.is-link .bp-cursor-ring{border-color:#ff3345!important;background:rgba(230,0,18,.28)!important}
.has-cursor .bp-cursor.on-dark.is-labelled .bp-cursor-ring{background:#e60012!important;border-color:#e60012!important}
.has-cursor .bp-cursor.is-labelled .bp-cursor-label{color:#fff!important}

/* Collections mega-menu: full-width card treatment with no hover gap. */
@media(min-width:901px){
  .nav-dropdown-menu{top:100%;left:-24px;width:min(620px,calc(100vw - 40px));grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;border-top-width:3px}
  .nav-dropdown-menu a{position:relative;display:flex!important;min-height:184px;justify-content:flex-end;overflow:hidden;padding:116px 16px 16px!important;border:1px solid #e5dfd7;border-radius:10px;background:linear-gradient(145deg,#fff8f5,#f7e7e3);color:#fff!important;font-size:18px!important;font-weight:700;letter-spacing:-.02em!important;text-transform:none!important;text-shadow:0 2px 12px rgba(0,0,0,.62);isolation:isolate;box-shadow:0 4px 12px rgba(17,17,20,.04);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
  .nav-dropdown-menu a,.nav-dropdown-menu a:hover{border-bottom:0!important;text-decoration:none!important}
  .nav-dropdown-menu a::before{content:'';position:absolute;z-index:-1;inset:0;width:100%;height:100%;margin:0;background-image:linear-gradient(180deg,rgba(17,17,20,.04) 18%,rgba(17,17,20,.7) 100%),var(--collection-menu-image,url('../img/bottle.webp'));background-repeat:no-repeat;background-position:center;background-size:cover;opacity:.98;transition:transform .3s ease}
  .nav-dropdown-menu a::after,.nav-dropdown-menu a:hover::after{content:none!important}
  .nav-dropdown-menu a[href*="originals"]{background:linear-gradient(145deg,#211719,#5d1118);border-color:#7e3138;color:#fff!important}
  .nav-dropdown-menu a[href*="originals"]::before{background-image:linear-gradient(180deg,rgba(17,17,20,.12) 18%,rgba(17,17,20,.76) 100%),var(--collection-menu-image,url('../img/bottle.webp'));filter:brightness(.82) contrast(1.08)}
  .nav-dropdown-menu a:hover{border-color:#e60012;background:linear-gradient(145deg,#fff1ee,#ffe1dd);box-shadow:0 12px 22px rgba(230,0,18,.14);transform:translateY(-2px);color:#fff!important}
  .nav-dropdown-menu a[href*="originals"]:hover{background:linear-gradient(145deg,#351b1e,#78151e);border-color:#ff3345;color:#fff!important}
  .nav-dropdown-menu a:hover::before{transform:scale(1.06)}
}

/* Catalog refinement for the white + red theme. */
body.all-products-page .all-products-main,
body.collection-detail-page .collection-detail-main{max-width:1360px}
body.all-products-page .all-products-hero{padding:82px 0 48px}
body.collection-detail-page .collection-detail-hero{padding:82px 0 48px}
body.all-products-page .all-products-catalog{padding-top:30px}
body.collection-detail-page .collection-catalog{padding:42px 0 96px}
body.all-products-page .collection-tools,
body.collection-detail-page .collection-tools{justify-content:flex-start;gap:12px;margin:0 0 26px;padding:12px 0;border-top:1px solid #e5dfd7;border-bottom:1px solid #e5dfd7}
body.all-products-page .collection-tools label,
body.collection-detail-page .collection-tools label{color:#6c6761;font-size:10px;font-weight:700;letter-spacing:.11em}
body.all-products-page .collection-tools label::before,
body.collection-detail-page .collection-tools label::before{opacity:1;filter:brightness(0) saturate(100%) invert(13%) sepia(97%) saturate(4520%) hue-rotate(349deg) brightness(91%) contrast(113%)}
body.all-products-page .collection-tools select,
body.collection-detail-page .collection-tools select{min-width:142px;background-color:#fff;color:#151515;border:1px solid #d9d0c8;border-radius:6px;padding:10px 32px 10px 12px;font-size:11px;font-weight:600;box-shadow:0 3px 10px rgba(17,17,20,.04)}
body.all-products-page .collection-tools select option,
body.collection-detail-page .collection-tools select option{background:#fff;color:#151515}
body.all-products-page .collection-tools select:focus,
body.collection-detail-page .collection-tools select:focus{outline:2px solid rgba(230,0,18,.2);outline-offset:2px;border-color:#e60012}
body.all-products-page .collection-product-grid,
body.collection-detail-page .collection-product-grid{gap:38px 20px}
body.all-products-page .collection-card,
body.collection-detail-page .collection-card{color:#151515}
body.all-products-page .collection-card>div,
body.collection-detail-page .collection-card>div{aspect-ratio:1/1.08;background:#f8f6f3;border:1px solid #e5dfd7;border-radius:14px;margin-bottom:15px;padding:0;display:grid;place-items:center;overflow:hidden}
body.all-products-page .collection-card img,
body.collection-detail-page .collection-card img{width:100%;height:100%;object-fit:contain;padding:0;transition:transform .4s ease}
body.all-products-page .collection-card:hover img,
body.collection-detail-page .collection-card:hover img{transform:scale(1.035)}
body.all-products-page .collection-card>span,
body.collection-detail-page .collection-card>span{color:#e60012;font-weight:700}
body.all-products-page .collection-card>small,
body.collection-detail-page .collection-card>small{color:#8a8179;margin-top:7px}
body.all-products-page .collection-card h3,
body.collection-detail-page .collection-card h3{color:#151515;font-size:18px;margin-top:6px}
body.all-products-page .collection-card p,
body.collection-detail-page .collection-card p{color:#6c6761;margin-top:4px}
body.homepage .light-products{gap:22px}
body.homepage .light-card .card-img{aspect-ratio:1/1.08;background:#f8f6f3;border:1px solid #e5dfd7;border-radius:14px}
body.homepage .light-card .card-img img{object-fit:contain;padding:8%}
@media(max-width:900px){
  body.all-products-page .collection-product-grid,
  body.collection-detail-page .collection-product-grid{gap:28px 14px}
}
@media(max-width:560px){
  body.all-products-page .all-products-hero,
  body.collection-detail-page .collection-detail-hero{padding:58px 0 34px}
  body.all-products-page .collection-tools,
  body.collection-detail-page .collection-tools{align-items:stretch;gap:10px;padding:14px 0;margin-bottom:22px}
  body.all-products-page .collection-tools label,
  body.collection-detail-page .collection-tools label{justify-content:space-between;width:100%}
  body.all-products-page .collection-tools select,
  body.collection-detail-page .collection-tools select{flex:1;min-width:0}
  body.all-products-page .collection-card>div,
  body.collection-detail-page .collection-card>div{padding:0}
}

/* Keep every product image flush with its card; no beige inset frame. */
body.all-products-page .collection-card>div,
body.collection-detail-page .collection-card>div,
body:not(.homepage) .collection-product-image,
body:not(.homepage) .card-img,
body.homepage .light-card .card-img{
  background:#fff;
  border:0;
  box-shadow:none;
}
body.all-products-page .collection-card img,
body.collection-detail-page .collection-card img,
body:not(.homepage) .collection-product-image img,
body:not(.homepage) .card-img img,
body.homepage .light-card .card-img img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:0;
}

/* Keep the testimonial canvas and cards shadow-free in every state. */
.reviews-v2:before,
body.homepage .reviews-v2:before{display:none}
.reviews-v2 .review-card,
.reviews-v2 .review-card:hover{box-shadow:none}


/* Keep the empty bag count readable and the mobile bag glyph visible. */
#cartOpen #cartCount.empty{
  background:rgba(255,255,255,.22);
  color:#fff;
}
@media(max-width:900px){
  header #cartOpen{color:#151515!important}
}

/* Mobile navigation follows the white + red theme, including Collections. */
@media(max-width:900px){
  body.homepage .mobile-menu,
  body:not(.homepage) .mobile-menu{
    background:#fff;
    color:#151515;
  }
  body.homepage .mobile-menu a,
  body:not(.homepage) .mobile-menu a,
  body.homepage .mobile-menu .nav-dropdown,
  body:not(.homepage) .mobile-menu .nav-dropdown,
  body.homepage .mobile-menu .nav-dropdown summary,
  body:not(.homepage) .mobile-menu .nav-dropdown summary{
    color:#151515!important;
  }
  body.homepage .mobile-menu .nav-dropdown-menu,
  body:not(.homepage) .mobile-menu .nav-dropdown-menu{
    background:#fff;
  }
  body.homepage #menuClose,
  body:not(.homepage) #menuClose{
    color:#151515;
  }
  body.homepage .mobile-menu .nav-dropdown-menu a:hover,
  body:not(.homepage) .mobile-menu .nav-dropdown-menu a:hover{
    color:#e60012!important;
  }
}


/* Collections stays a dropdown, but without the extra chevron indicator. */
.nav-dropdown summary::after{content:none!important;display:none!important}

/* Make the homepage Shop all action read as a clear button. */
body.homepage .shop-all-btn{display:inline-flex;align-items:center;gap:10px;padding:13px 18px;border:1px solid #e60012;border-radius:999px;background:#e60012;color:#fff;font-size:11px;font-weight:800;letter-spacing:.12em;text-decoration:none;text-transform:uppercase;white-space:nowrap;transition:background .2s ease,border-color .2s ease,transform .2s ease}
body.homepage .shop-all-btn:hover{background:#b0000e;border-color:#b0000e;color:#fff;transform:translateY(-1px)}
body.homepage .shop-all-btn:focus-visible{outline:2px solid #151515;outline-offset:4px}
body.homepage .shop-all-btn span{font-size:16px;line-height:1;letter-spacing:0}
@media(max-width:560px){body.homepage .shop-all-btn{padding:11px 14px;font-size:10px}.shop-head{align-items:center}}

/* Homepage brand proof section: a four-point story directly below the Discovery Set. */
.home-brand-proof{position:relative;isolation:isolate;overflow:hidden;width:100%;box-sizing:border-box;padding:clamp(56px,7vw,88px) clamp(20px,5vw,80px);background:#fff;color:#151515}
body.homepage main>.home-brand-proof{order:4}
body.homepage main>.reviews-section{order:5}
body.homepage main>.marquee{order:6}
body.homepage main>.cta-jp{order:7}
.home-brand-proof:before{display:none}
/* Match the inner content width of the testimonials section below. */
.home-brand-proof-shell{position:relative;width:100%;max-width:1120px;margin:0 auto}
.home-brand-proof-intro{margin:0 auto 28px;max-width:1280px}
.home-brand-proof-intro .kicker{margin-bottom:12px;color:#e60012}
.home-brand-proof-intro h2{margin:0;color:#151515;font-size:clamp(32px,3.4vw,52px);font-weight:600;letter-spacing:-.06em;line-height:1}
.home-brand-proof-intro h2 em{font-style:normal;color:#e60012}
.home-brand-proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;background:transparent}
.home-brand-proof-card{position:relative;display:flex;min-height:250px;flex-direction:column;align-items:flex-start;overflow:hidden;padding:26px 24px 24px;border:1px solid #e5dfd7;border-top:3px solid #e60012;border-radius:14px;background:#fff;transition:border-color .2s ease,transform .2s ease}
.home-brand-proof-card:hover{border-color:#e60012;transform:translateY(-3px)}
.home-brand-proof-card svg{width:34px;height:34px;margin-bottom:28px;fill:none;stroke:#e60012;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.home-brand-proof-card h3{position:relative;z-index:1;max-width:12ch;margin:0;color:#151515;font-size:clamp(22px,1.8vw,29px);font-weight:600;letter-spacing:-.055em;line-height:1.02}
.home-brand-proof-card p{position:relative;z-index:1;max-width:25ch;margin:18px 0 0;color:#6c6761;font-size:13px;line-height:1.5}
.home-brand-proof-number{position:absolute;top:25px;right:24px;color:#e60012;font-size:11px;font-weight:800;letter-spacing:.12em;line-height:1;pointer-events:none}
@media(max-width:900px){
  .home-brand-proof{padding:62px 20px}
  .home-brand-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-brand-proof-card:nth-child(2){border-right:1px solid #e5dfd7}
  .home-brand-proof-card:nth-child(-n+2){border-bottom:1px solid #e5dfd7}
  .home-brand-proof-card{min-height:235px;padding:22px 20px}
  .home-brand-proof-card svg{margin-bottom:22px}
}
@media(max-width:560px){
  .home-brand-proof{padding:52px 16px}
  .home-brand-proof-intro{margin-bottom:22px}
  .home-brand-proof-intro h2{font-size:38px}
  .home-brand-proof-grid{grid-template-columns:1fr}
  .home-brand-proof-card,.home-brand-proof-card:nth-child(2){min-height:220px;border-right:0;border-bottom:1px solid #e5dfd7}
  .home-brand-proof-card:last-child{border-bottom:0}
  .home-brand-proof-card h3{font-size:27px}
  .home-brand-proof-card p{margin-top:18px;font-size:13px}
}
@media(prefers-reduced-motion:reduce){.home-brand-proof:before{filter:none}}

/* Homepage layout polish: consistent rhythm without changing checkout or catalogue data. */
body.homepage main>.section:not(#shop){padding-inline:clamp(20px,3vw,40px);padding-block:56px}
body.homepage main>.model-feature{padding-top:16px;padding-bottom:24px}
body.homepage .model-feature-card{aspect-ratio:4/5}
body.homepage .model-feature-heading{margin-bottom:24px}
body.homepage main>.home-features-strip{padding-inline:clamp(20px,3vw,40px);margin-block:8px 24px}
body.homepage #shop{scroll-margin-top:110px;padding-block:56px}
body.homepage #shop .card-meta>div:first-child{min-height:58px}
body.homepage #shop .card-meta:has(.card-sizes){gap:12px}
body.homepage #shop .card-meta p{line-height:1.5}
body.homepage .bestseller-feature{border:0}
body.homepage .trybuy-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:0;margin-top:0}
body.homepage .trybuy-image,body.homepage .trybuy-image img{min-height:0}
body.homepage .trybuy-image img{object-fit:contain}
body.homepage .trybuy-content{padding:32px}
body.homepage .home-brand-proof{padding:56px clamp(20px,3vw,40px)}
body.homepage .home-brand-proof-shell{max-width:1200px}
body.homepage .home-brand-proof-card{min-height:230px;padding:24px 20px}
body.homepage .reviews-v2 .reviews-intro{margin-top:18px}
body.homepage .reviews-v2 .review-grid{padding-top:28px}
.home-benefits-mobile{display:none}
body.homepage .home-inspiration-links{position:relative;z-index:1;display:flex;align-items:center;gap:32px;max-width:100%;overflow-x:auto;padding:18px clamp(20px,3vw,40px);background:#fff;color:#151515;border-block:1px solid #eee7df;font-size:12px;line-height:1.5;scrollbar-width:thin}
body.homepage .home-inspiration-links[hidden]{display:none}
.home-inspiration-links>span{flex:none;white-space:nowrap}
.home-inspiration-links a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.home-inspiration-links a:hover{color:#e60012}
.home-inspiration-links a:focus-visible{outline:2px solid #e60012;outline-offset:4px}
@media(max-width:900px){
  body.homepage .trybuy-layout{grid-template-columns:1fr}
  body.homepage .trybuy-image{height:320px}
  body.homepage .trybuy-content{padding:28px 20px}
}
@media(max-width:700px){
  body.homepage main>.section:not(#shop){padding:40px 20px}
  body.homepage main>.model-feature{padding-top:12px;padding-bottom:16px}
  body.homepage #shop{padding:40px 20px;scroll-margin-top:80px}
  body.homepage #shop .shop-head{flex-wrap:wrap;gap:16px}
  body.homepage #shop .shop-head>div{flex:1 1 100%}
  body.homepage #shop .shop-all-btn{padding:10px 16px}
  body.homepage #shop .card-meta>div:first-child{min-height:72px}
  body.homepage #shop .card-add{padding-inline:14px}
  body.homepage main>.home-features-strip{padding-inline:20px;margin-block:12px 20px}
  body.homepage .home-features-strip>img{display:none}
  .home-benefits-mobile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .home-benefits-mobile article{padding:20px 16px;background:#faf9f6;border:1px solid #eee7df;border-radius:12px}
  .home-benefits-mobile article:last-child{grid-column:1/-1}
  .home-benefits-mobile svg{display:block;width:32px;height:32px;margin-bottom:16px;fill:none;stroke:#e60012;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .home-benefits-mobile h3{font-size:16px;line-height:1.25;font-weight:600;letter-spacing:-.02em;margin:0 0 8px}
  .home-benefits-mobile p{font-size:12px;line-height:1.5;color:#6c6761;margin:0}
  body.homepage .trybuy-image{height:280px}
  body.homepage .trybuy-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
  body.homepage .trybuy-steps>div{grid-template-columns:1fr;gap:8px}
  body.homepage .trybuy-steps>div:before{grid-row:auto;padding:0}
  body.homepage .trybuy-steps p{grid-column:1}
  body.homepage .trybuy-steps h3{font-size:15px}
  body.homepage .trybuy-lead{margin-bottom:24px}
  body.homepage .home-brand-proof{padding:40px 20px}
  body.homepage .home-brand-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  body.homepage .home-brand-proof-card{min-height:0;padding:20px 16px;border:1px solid #e5dfd7;border-top:3px solid #e60012}
  body.homepage .home-brand-proof-card:last-child{border-bottom:1px solid #e5dfd7}
  body.homepage .home-brand-proof-card svg{width:28px;height:28px;margin-bottom:24px}
  body.homepage .home-brand-proof-card h3{font-size:20px;line-height:1.15}
  body.homepage .home-brand-proof-card p{font-size:12px;margin-top:12px;line-height:1.5}
  body.homepage .home-brand-proof-number{top:20px;right:16px;font-size:9px}
  body.homepage .reviews-v2 .reviews-heading h2{font-size:36px;line-height:1.05}
}
