/* Art direction: living botanical paper. Light palette, Frank Ruhl Libre display (variable weight), Assistant body. */
:root{--disp:'Frank Ruhl Libre','David Libre',Georgia,serif;--ui:'Assistant','Heebo',system-ui,sans-serif}
body{font-weight:400;font-size:19px;color:#2f3b47}
h1,h2,h3,.brand,.lead,.drop,blockquote,.tagline,.big-price,.chap .num,.mq-track span,.hero p.sub{font-family:var(--disp)}
.hero h1{font-weight:300;font-size:clamp(88px,26vw,210px);letter-spacing:-.03em;line-height:.95;white-space:nowrap}
.hero p.sub{font-weight:400;font-size:clamp(22px,3.6vw,32px);color:#3d4a57}
h2,.sec-head h2,#about h2{font-weight:300;letter-spacing:-.02em;font-size:clamp(52px,11vw,108px);line-height:1}
h3{font-weight:500}
.brand{font-weight:600;font-size:27px}
.lead{font-weight:500;color:#d9734f}
.drop{font-weight:400;font-size:clamp(23px,2.8vw,29px);line-height:1.55}
blockquote{font-weight:400;font-size:clamp(23px,2.6vw,29px);line-height:1.6;font-style:normal}
.chap h3{font-size:30px;font-weight:600}
.chap .num{font-weight:300;font-size:190px;opacity:.5}
.mq-track span{font-weight:400;font-size:clamp(34px,6vw,54px);letter-spacing:-.01em}
.mq{padding:10px 0}
.kicker,.kicker2,.chip,.btn,.stats span,.tags span,summary{font-family:var(--ui)}
.btn{font-weight:700;letter-spacing:.01em}
.sec-head p.lead-p,#taste .lead-p{font-size:clamp(20px,2.4vw,24px);color:#47566a}
.taste h3{font-weight:600;font-size:clamp(30px,3.4vw,40px)}
.buy .big-price{font-weight:300}
.foot-brand{font-weight:300!important}
summary{font-family:var(--disp);font-weight:600;font-size:23px}
details p{font-size:19px}

/* botanical layer */
.art-sprig{position:fixed;z-index:3;pointer-events:none;width:clamp(90px,22vw,200px);opacity:.34;will-change:transform}
.art-sprig.l{left:-18px;top:30vh}.art-sprig.r{right:-22px;top:62vh;width:clamp(80px,19vw,170px)}
.art-sprig path{fill:none;stroke:#6aa88a;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.art-sprig .lf{fill:#cfe9d9;stroke:#6aa88a}
.art-sprig .pk{fill:#fbd5c7;stroke:#e98a6b}
.hero-sprig{position:absolute;z-index:0;pointer-events:none;width:clamp(110px,20vw,240px);left:calc(50% - 60px);bottom:-4%;opacity:.9}
@media(max-width:700px){.hero-sprig{left:auto;right:-6%;bottom:14%;width:140px;opacity:.7}}
.hero-sprig path{fill:none;stroke:#6aa88a;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.hero-sprig .lf{fill:#cfe9d9}.hero-sprig .pk{fill:#fde4dc;stroke:#e98a6b}
.pollen{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.pollen i{position:absolute;bottom:-12px;width:7px;height:7px;border-radius:50%;background:#ffd9a0;opacity:0;animation:rise 9s linear infinite}
.pollen i:nth-child(3n){background:#bfe3ee;width:5px;height:5px}
.pollen i:nth-child(4n){background:#fbd5c7;width:9px;height:9px}
@keyframes rise{0%{transform:translate(0,0);opacity:0}12%{opacity:.8}100%{transform:translate(var(--dx,30px),-92vh);opacity:0}}
h2.art-h::after{content:"";display:block;width:min(220px,46%);height:18px;margin-top:.12em;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 18'><path d='M4 11c18-12 34 10 52 0s34-10 52 0 34 10 52 0 34-8 52 0' fill='none' stroke='%23e98a6b' stroke-width='3' stroke-linecap='round'/></svg>") no-repeat right center/100% 100%}
.sec-head h2.art-h::after{margin-inline:0}
.mot h2.art-h::after{transform:scaleX(0);transform-origin:right center;transition:transform 1.1s cubic-bezier(.22,.8,.3,1) .35s}
.mot h2.art-h.u-in::after{transform:scaleX(1)}
.wd{display:inline-block;will-change:transform}
.ripple{position:absolute;border-radius:50%;pointer-events:none;background:rgba(255,255,255,.55);transform:scale(0);animation:rp .7s cubic-bezier(.22,.8,.3,1) forwards}
.chap a .ripple,.taste a .ripple{background:rgba(255,255,255,.4)}
@keyframes rp{to{transform:scale(1);opacity:0}}
.glow{position:fixed;left:0;top:0;width:420px;height:420px;margin:-210px 0 0 -210px;border-radius:50%;pointer-events:none;z-index:1;background:radial-gradient(closest-side,rgba(255,214,190,.45),rgba(191,227,238,.22) 55%,transparent);mix-blend-mode:multiply;opacity:0;transition:opacity .4s}
.glow.on{opacity:1}
.taste a .ph img{transform:scale(1.18)}
.chap > *{will-change:transform}
@media(prefers-reduced-motion:reduce){.art-sprig{display:none}.pollen,.glow{display:none}.hero-sprig path,.art-sprig path{stroke-dashoffset:0!important}h2.art-h::after{transform:none!important}}
@media(max-width:380px){.brand{font-size:21px;padding-right:6px}.nav-links a:not(.btn),.back{padding:8px 7px;font-size:14px}.nav .wrap{padding-inline:10px}.nav-links{gap:2px}}
@media(max-width:380px){.nav-links .btn.sm{padding:9px 14px;font-size:15px}.brand svg{width:18px;height:18px}.nav-links a:not(.btn){padding:8px 5px;font-size:13.5px}}
@media(max-width:340px){.brand{font-size:18px;gap:5px}.nav-links a:not(.btn){padding:8px 3px;font-size:12.5px}.nav-links .btn.sm{padding:8px 11px;font-size:14px}.nav .wrap{padding-inline:8px}}
