/* One hero concept per page. Brand stays fixed; each scene is its own idea. */
:root{--acc:var(--tom);--accfg:#fff}
.th-tom{--acc:#E0482B;--accfg:#fff}.th-butter{--acc:#c98d00;--accfg:#17110f}.th-coral{--acc:#d9603f;--accfg:#fff}.th-ox{--acc:#7A2414;--accfg:#fff}.th-ink{--acc:#17110f;--accfg:#F6C85F}
.page h2 em,.sh h2 em{color:var(--acc)}ul.ck li:before{background:var(--acc)}ol.st li:before{color:var(--acc)}.note{border-left-color:var(--acc)}.card:after{color:var(--acc)}summary::after{color:var(--acc)}
.band{background:var(--acc);color:var(--accfg)}.band h2,.band p{color:var(--accfg)}.band .b{background:var(--accfg);color:var(--acc)}.th-ink .band .b{background:#F6C85F;color:#17110f}.th-butter .band .b{background:#17110f;color:#F6C85F}
.hero.t-butter{background:radial-gradient(1100px 650px at 85% 0,rgba(246,200,95,.5),transparent 60%),radial-gradient(800px 500px at 0 100%,rgba(224,72,43,.3),transparent 55%),#17110f}
.hero.t-coral{background:radial-gradient(1000px 600px at 80% 0,rgba(242,154,126,.55),transparent 60%),radial-gradient(800px 500px at 0 100%,rgba(122,36,20,.8),transparent 60%),#17110f}
.hero.t-ox{background:linear-gradient(135deg,#4a150a 0,#241008 55%,#17110f 100%)}
.hero.t-ink{background:radial-gradient(900px 500px at 90% 100%,rgba(246,200,95,.14),transparent 60%),#0e0a09}
.hero.t-tom{background:radial-gradient(1200px 700px at 80% -10%,rgba(224,72,43,.7),transparent 60%),#17110f}
.hero.al-c .hgrid{text-align:center}.hero.al-c .ht{margin:0 auto;max-width:880px}.hero.al-c .sub{margin:0 auto}.hero.al-c .cta{justify-content:center}.hero.al-c .bleed:after{background:radial-gradient(ellipse at center,rgba(23,17,15,.82) 0,rgba(23,17,15,.55) 45%,rgba(23,17,15,.2) 100%),linear-gradient(0deg,rgba(23,17,15,.85) 0,transparent 22%)}
.hero.al-c h1{font-size:clamp(40px,7vw,104px)}
.hero.light{background:var(--cr);color:var(--ink);min-height:0;padding:120px 0 40px}.hero.light:before{display:none}.hero.light h1{color:var(--ink)}.hero.light h1 em{color:var(--tom)}.hero.light .sub{color:var(--mu)}.hero.light .crumb,.hero.light .crumb a{color:var(--mu)}
.sc-tap img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.sc-tap .af{animation:tf 10s ease-in-out infinite}
@keyframes tf{0%,48%{opacity:0}56%,92%{opacity:1}100%{opacity:0}}
.sc-tap .rg{position:absolute;left:52%;top:36%;width:140px;height:140px;margin:-70px;border:5px solid var(--but);border-radius:50%;animation:tr 10s infinite;box-shadow:0 0 40px rgba(246,200,95,.6)}
@keyframes tr{0%,16%{opacity:0;transform:scale(2)}26%,44%{opacity:1;transform:scale(1)}50%{opacity:0;transform:scale(.8)}100%{opacity:0}}
.sc-tap .cu{position:absolute;left:52%;top:36%;width:44px;height:44px;animation:tc 10s infinite;filter:drop-shadow(0 6px 10px rgba(0,0,0,.6))}
@keyframes tc{0%{opacity:0;transform:translate(300px,260px)}8%{opacity:1}24%,44%{opacity:1;transform:translate(0,0) scale(1)}28%{transform:translate(0,0) scale(.85)}50%,100%{opacity:0;transform:translate(0,0)}}
.sc-tap .lb{position:absolute;right:6%;bottom:9%;font:800 clamp(16px,2vw,26px) Inter;letter-spacing:.14em;text-transform:uppercase;color:#fff;text-shadow:0 4px 24px rgba(0,0,0,.9);z-index:3}.sc-tap .lb span{position:absolute;right:0;white-space:nowrap}.sc-tap .l1{animation:tl1 10s infinite}.sc-tap .l2{color:var(--but);animation:tl2 10s infinite}
@keyframes tl1{0%,12%{opacity:0}18%,46%{opacity:1}52%,100%{opacity:0}}@keyframes tl2{0%,54%{opacity:0}60%,92%{opacity:1}98%,100%{opacity:0}}
.sc-eq{display:flex;align-items:flex-end;gap:7px;padding:0 3%;height:100%}.sc-eq i{flex:1;height:78%;background:linear-gradient(0deg,var(--tom),var(--but));border-radius:8px 8px 0 0;transform-origin:bottom;animation:eq var(--t) ease-in-out infinite;animation-delay:var(--d);opacity:.9}
@keyframes eq{0%,100%{transform:scaleY(var(--lo))}50%{transform:scaleY(var(--hi))}}
.sc-eq .nt{position:absolute;font-size:44px;color:var(--but);animation:rise 7s linear infinite;opacity:0}@keyframes rise{0%{transform:translateY(0);opacity:0}15%{opacity:.9}100%{transform:translateY(-70vh) rotate(18deg);opacity:0}}
.sc-type{display:flex;flex-direction:column;justify-content:center;gap:6px}.sc-type .r{white-space:nowrap;font:700 clamp(70px,11vw,170px)/1 Fraunces,serif;letter-spacing:-.03em;color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.24);width:max-content;animation:rw 46s linear infinite}.sc-type .r:nth-child(2){animation-direction:reverse;-webkit-text-stroke-color:rgba(246,200,95,.5);animation-duration:58s}.sc-type .r:nth-child(3){animation-duration:52s}
@keyframes rw{to{transform:translateX(-50%)}}
.sc-ribbon{transform:rotate(-7deg) scale(1.25);display:flex;flex-direction:column;justify-content:center;gap:16px}.sc-ribbon .rw{display:flex;gap:16px;width:max-content;animation:rw 60s linear infinite}.sc-ribbon .rw:nth-child(2){animation-direction:reverse;animation-duration:70s}.sc-ribbon img{width:clamp(180px,22vw,320px);aspect-ratio:1;object-fit:cover;border-radius:16px}
.sc-pole .st{position:absolute;right:-4%;top:-25%;width:46%;height:150%;transform:rotate(16deg);border-radius:90px;background:repeating-linear-gradient(0deg,#E0482B 0 46px,#F6F1EA 46px 92px,#17110f 92px 138px);background-size:100% 276px;animation:pl 5s linear infinite;box-shadow:inset -30px 0 60px rgba(0,0,0,.35),inset 24px 0 40px rgba(255,255,255,.18)}@keyframes pl{to{background-position:0 276px}}
.sc-pole .st2{right:30%;width:12%;opacity:.5;animation-duration:9s;filter:blur(2px)}
.sc-blue{background-image:linear-gradient(rgba(246,200,95,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(246,200,95,.1) 1px,transparent 1px);background-size:52px 52px}.sc-blue svg{position:absolute;right:2%;top:50%;width:min(58vw,820px);transform:translateY(-50%)}
.sc-blue path,.sc-blue line,.sc-blue rect{fill:none;stroke:#F6C85F;stroke-width:3;stroke-dasharray:1200;stroke-dashoffset:1200;animation:dr 9s ease-in-out infinite}.sc-blue .dm{stroke:#F29A7E;stroke-width:2;animation-delay:2s}.sc-blue text{fill:#F29A7E;font:600 22px Inter;animation:tx 9s infinite}
@keyframes dr{0%{stroke-dashoffset:1200}45%,80%{stroke-dashoffset:0}100%{stroke-dashoffset:-1200}}@keyframes tx{0%,40%{opacity:0}55%,80%{opacity:1}100%{opacity:0}}
.sc-plate .pl{position:absolute;right:-9%;top:50%;width:min(62vw,760px);aspect-ratio:1;margin-top:calc(min(62vw,760px)/-2);border-radius:50%;background:url(/anim/b.jpg) center/cover;box-shadow:0 0 0 22px rgba(255,255,255,.07),0 0 0 54px rgba(255,255,255,.035),0 40px 100px rgba(0,0,0,.6);animation:spn 90s linear infinite}
.sc-plate .rg2{position:absolute;right:-17%;top:50%;width:min(80vw,980px);aspect-ratio:1;margin-top:calc(min(80vw,980px)/-2);animation:spn 40s linear infinite reverse}.sc-plate .rg2 text{font:700 40px Fraunces,serif;letter-spacing:.3em;fill:var(--but)}@keyframes spn{to{transform:rotate(360deg)}}
.sc-rep{display:flex;align-items:center;justify-content:flex-end;padding-right:6%}.sc-rep svg.rn{width:min(48vw,640px);transform:rotate(-90deg)}.sc-rep circle{fill:none;stroke-width:16}.sc-rep .bg{stroke:rgba(255,255,255,.12)}.sc-rep .fg{stroke:var(--tom);stroke-linecap:round;stroke-dasharray:880;stroke-dashoffset:880;animation:rp 6s ease-in-out infinite}@keyframes rp{0%{stroke-dashoffset:880}80%,100%{stroke-dashoffset:0}}
.sc-rep .n{position:absolute;right:calc(6% + min(48vw,640px)/2 - 90px);font:700 clamp(120px,18vw,260px)/1 Fraunces,serif;color:#fff;letter-spacing:-.05em;font-variant-numeric:tabular-nums}.sc-rep .u{position:absolute;right:calc(6% + min(48vw,640px)/2 - 70px);bottom:24%;font:800 18px Inter;letter-spacing:.2em;color:var(--but)}
.sc-rep .ekg{position:absolute;left:0;bottom:6%;width:200%;height:90px;animation:rw 9s linear infinite}.sc-rep .ekg path{fill:none;stroke:var(--but);stroke-width:3}
.sc-orbs .o{position:absolute;border-radius:50%;filter:blur(46px);animation:dft 14s ease-in-out infinite}.sc-orbs .o1{width:46vw;height:46vw;right:-6%;top:-12%;background:radial-gradient(circle,#F29A7E,transparent 65%)}.sc-orbs .o2{width:38vw;height:38vw;right:20%;bottom:-18%;background:radial-gradient(circle,#F6C85F,transparent 65%);animation-delay:-5s}.sc-orbs .o3{width:34vw;height:34vw;right:-4%;bottom:6%;background:radial-gradient(circle,#F8D5C8,transparent 65%);animation-delay:-9s;opacity:.7}
@keyframes dft{50%{transform:translate(-60px,50px) scale(1.2)}}.sc-orbs .ln{position:absolute;right:8%;top:50%;border:1px solid rgba(255,255,255,.18);border-radius:50%;animation:pu2 7s ease-in-out infinite}@keyframes pu2{50%{transform:scale(1.08);opacity:.4}}
.sc-leaves{background:linear-gradient(180deg,rgba(224,72,43,.0),rgba(246,200,95,.12))}.sc-leaves i{position:absolute;top:-12%;left:var(--x);width:var(--s);height:var(--s);background:var(--c);border-radius:0 100% 0 100%;opacity:.9;animation:fall var(--t) linear infinite;animation-delay:var(--d)}
@keyframes fall{0%{transform:translateY(0) translateX(0) rotate(0)}50%{transform:translateY(60vh) translateX(40px) rotate(180deg)}100%{transform:translateY(125vh) translateX(-30px) rotate(360deg)}}
.sc-tw{display:flex;align-items:flex-end;justify-content:flex-end;padding:0 4% 8%}.sc-tw .t{font:700 clamp(44px,8vw,128px)/1 Fraunces,serif;color:rgba(255,255,255,.16);text-align:right;max-width:70%;letter-spacing:-.03em}.sc-tw .t:after{content:"";display:inline-block;width:.06em;height:.8em;background:var(--but);margin-left:.1em;animation:bk 1s steps(1) infinite}@keyframes bk{50%{opacity:0}}
.sc-step{display:flex;align-items:center;justify-content:flex-end;gap:2vw;padding-right:4%}.sc-step .s{font:700 clamp(100px,15vw,230px)/1 Fraunces,serif;color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.3);animation:sf 12.5s infinite;animation-delay:calc(var(--i)*2.5s);position:relative}.sc-step .s small{position:absolute;left:0;bottom:-6px;font:800 13px Inter;letter-spacing:.14em;text-transform:uppercase;-webkit-text-stroke:0;color:var(--but)}
@keyframes sf{0%,18%{color:var(--but);-webkit-text-stroke-color:var(--but);transform:translateY(-14px)}22%,100%{color:transparent;-webkit-text-stroke-color:rgba(255,255,255,.3);transform:none}}
.sc-tl{display:flex;flex-direction:column;justify-content:center;padding:0 5%}.sc-tl .fs{display:flex;gap:6px;height:clamp(90px,14vw,170px);position:relative;margin-left:auto;width:min(66%,900px)}.sc-tl .fs img{flex:1;min-width:0;height:100%;object-fit:cover;border-radius:8px}.sc-tl .sel{position:absolute;top:-8px;bottom:-8px;border:4px solid var(--but);border-radius:12px;box-shadow:0 0 0 100vmax rgba(23,17,15,.72);animation:sl 9s ease-in-out infinite}@keyframes sl{0%,12%{left:0;right:0}45%,75%{left:34%;right:30%}100%{left:0;right:0}}
.sc-tl .tm{margin:22px 0 0 auto;width:min(66%,900px);font:700 clamp(44px,7vw,100px)/1 Fraunces,serif;color:var(--but);text-align:right}.sc-tl .tm:after{content:"0:30";animation:tmx 9s steps(1) infinite}@keyframes tmx{0%,44%{content:"0:30"}45%,75%{content:"0:10"}76%,100%{content:"0:30"}}
.sc-face{display:flex;align-items:center;justify-content:flex-end;padding-right:8%}.sc-face .fc{width:min(30vw,400px);aspect-ratio:3/4;background:url(/scene-example/face.jpg) center/cover;border-radius:50%;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.6)}.sc-face .ov{position:absolute;inset:-6%;border:3px dashed var(--but);border-radius:50%;animation:spn 40s linear infinite}
.sc-face .tk{position:absolute;right:calc(8% + min(30vw,400px) + 30px);top:50%;transform:translateY(-50%);display:grid;gap:18px}.sc-face .tk b{font:700 clamp(18px,2.2vw,30px) Fraunces,serif;color:#fff;opacity:0;animation:tkk 9s infinite;animation-delay:calc(var(--i)*1.6s)}.sc-face .tk b:before{content:"\2713 ";color:#5be18a}@keyframes tkk{0%{opacity:0;transform:translateX(24px)}8%,70%{opacity:1;transform:none}85%,100%{opacity:0}}
.sc-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:clamp(8px,1.2vw,18px);position:absolute;right:4%;top:14%;width:min(52vw,720px)}.sc-cal i{aspect-ratio:1;border-radius:50%;display:grid;place-items:center;font:700 clamp(14px,1.6vw,22px) Inter;color:rgba(255,255,255,.35);border:2px solid rgba(255,255,255,.12);animation:cl 13s infinite;animation-delay:calc(var(--i)*.28s)}.sc-cal i.p{border-color:rgba(246,200,95,.5)}
@keyframes cl{0%,3%{background:transparent;color:rgba(255,255,255,.35)}6%,80%{background:var(--but);color:#17110f;border-color:var(--but)}95%,100%{background:transparent;color:rgba(255,255,255,.35)}}
.sc-vf{display:flex;align-items:center;justify-content:flex-end;padding-right:8%}.sc-vf svg{width:min(44vw,600px);transform:rotate(-90deg)}.sc-vf circle{fill:none;stroke-width:14}.sc-vf .bg{stroke:rgba(255,255,255,.12)}.sc-vf .fg{stroke:var(--but);stroke-linecap:round;stroke-dasharray:880;stroke-dashoffset:880;animation:rp 15s linear infinite}
.sc-vf .n{position:absolute;right:calc(8% + min(44vw,600px)/2 - 110px);top:34%;font:700 clamp(100px,15vw,200px)/1 Fraunces,serif;color:#fff;font-variant-numeric:tabular-nums}.sc-vf .ph{position:absolute;right:calc(8% + min(44vw,600px)/2 - 100px);top:66%;font:800 20px Inter;letter-spacing:.2em;text-transform:uppercase;color:var(--but)}
.sc-ck{display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:26px;padding-right:7%}.sc-ck b{font:700 clamp(30px,5vw,72px)/1 Fraunces,serif;color:#fff;opacity:0;animation:tkk 10s infinite;animation-delay:calc(var(--i)*2.2s)}.sc-ck b:before{content:"\2713";display:inline-grid;place-items:center;width:1.1em;height:1.1em;border-radius:50%;background:#5be18a;color:#17110f;margin-right:.3em;font-size:.8em;vertical-align:.06em}
.sc-sh{display:flex;align-items:center;justify-content:flex-end;padding-right:12%}.sc-sh i{position:absolute;right:14%;width:min(26vw,340px);aspect-ratio:3/4;background:#F6F1EA;border-radius:10px;box-shadow:0 24px 60px rgba(0,0,0,.5);animation:shf 9s ease-in-out infinite;display:flex;align-items:flex-end;padding:20px;font:700 22px Fraunces,serif;color:#17110f;font-style:normal;background-image:repeating-linear-gradient(0deg,transparent 0 22px,rgba(23,17,15,.07) 22px 24px);background-size:100% 100%}
.sc-sh i:nth-child(1){transform:rotate(-12deg);animation-delay:0s}.sc-sh i:nth-child(2){transform:rotate(-4deg);animation-delay:-1.5s;background-color:#F8D5C8}.sc-sh i:nth-child(3){transform:rotate(5deg);animation-delay:-3s;background-color:#F6C85F}.sc-sh i:nth-child(4){transform:rotate(13deg);animation-delay:-4.5s}
@keyframes shf{50%{transform:translate(-30px,-26px) rotate(var(--r,0deg))}}
.sc-dial{position:absolute;right:6%;top:50%;width:min(50vw,640px);aspect-ratio:1;margin-top:calc(min(50vw,640px)/-2)}.sc-dial i{position:absolute;left:50%;top:50%;width:14px;height:14px;margin:-7px;border-radius:50%;background:rgba(255,255,255,.18);transform:rotate(calc(var(--i)*12deg)) translateY(calc(min(50vw,640px)/-2 + 10px));animation:dl 12s infinite;animation-delay:calc(var(--i)*.3s)}@keyframes dl{0%,3%{background:rgba(255,255,255,.18);scale:1}6%,85%{background:var(--but);scale:1.5}95%,100%{background:rgba(255,255,255,.18);scale:1}}
.sc-dial .dn{position:absolute;inset:0;display:grid;place-items:center;font:700 clamp(110px,16vw,230px)/1 Fraunces,serif;color:#fff;letter-spacing:-.05em;font-variant-numeric:tabular-nums}.sc-dial .dn small{display:block;font:800 18px Inter;letter-spacing:.24em;color:var(--but);text-align:center;margin-top:-30px}
@media(max-width:900px){.sc-step{opacity:.4}.sc-cal,.sc-dial,.sc-vf,.sc-face,.sc-sh,.sc-rep{opacity:.35}.sc-tap .lb,.sc-face .tk{display:none}.sc-ck{opacity:.5;align-items:flex-start;padding-left:6%}.sc-tw .t{max-width:100%;opacity:.7}.hero.al-c h1{font-size:clamp(36px,10vw,56px)}}
@media(prefers-reduced-motion:reduce){.sc-step .s,.sc-cal i,.sc-dial i{color:var(--but)}}

.sc-feed{position:absolute;left:44%;right:0;top:0;bottom:0;overflow:hidden}
.sc-feed .belt{position:absolute;inset:0}
.sc-feed .cd{position:absolute;left:0;top:0;width:112px;height:199px;border-radius:12px;overflow:hidden;box-shadow:0 14px 34px rgba(0,0,0,.55);border:2px solid rgba(255,255,255,.14);will-change:transform}
.sc-feed .cd video,.sc-feed .cd img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.sc-feed .cd span{position:absolute;inset:auto 0 0 0;padding:6px;text-align:center;font:800 11px Inter;letter-spacing:.06em;text-transform:uppercase;background:#5be18a;color:#0e0a09;opacity:0;transition:opacity .3s}.sc-feed .cd.ps span{opacity:1}
.sc-feed .pn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);height:min(80vh,680px);aspect-ratio:9/19;border-radius:46px;background:#0b0807;padding:10px;box-shadow:0 0 0 2px #3a2f2b,0 40px 100px rgba(0,0,0,.75),0 0 120px rgba(224,72,43,.35);z-index:4}
.sc-feed .pn:before{content:"";position:absolute;top:18px;left:50%;width:30%;height:22px;margin-left:-15%;background:#000;border-radius:20px;z-index:3}
.sc-feed .scr{position:relative;width:100%;height:100%;border-radius:36px;overflow:hidden;background:#000}
.sc-feed .scr video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.sc-feed .scr video.sw{animation:swp .7s cubic-bezier(.65,0,.25,1)}@keyframes swp{from{transform:translateY(-100%)}to{transform:none}}
.sc-feed .ui{position:absolute;left:0;right:0;bottom:0;padding:40px 18px 20px;display:flex;justify-content:space-between;font:600 13px Inter;color:#fff;background:linear-gradient(0deg,rgba(0,0,0,.75),transparent)}
@media(max-width:900px){.sc-feed{left:0;opacity:.75}.sc-feed .pn{height:56vh}}

.bgv{position:absolute;inset:0;display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:50%;opacity:.42;filter:saturate(.8) blur(1px)}
.bgv video{width:100%;height:100%;object-fit:cover;display:block}

.bgd{position:absolute;inset:0;z-index:0;background:
radial-gradient(520px 620px at 72% 50%,rgba(246,200,95,.28),transparent 70%),
radial-gradient(900px 700px at 72% 50%,rgba(224,72,43,.38),transparent 72%),
repeating-radial-gradient(circle at 72% 50%,transparent 0 58px,rgba(255,255,255,.045) 58px 60px),
linear-gradient(115deg,#0e0a09 0,#1e100b 55%,#2a120a 100%)}
.bgd:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");opacity:.13;mix-blend-mode:overlay}
.bgd:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 72% 50%,transparent 40%,rgba(0,0,0,.65) 100%)}
.sc-feed{z-index:1}
@media(max-width:700px){.nr.page,.nr{padding-left:20px;padding-right:20px;box-sizing:border-box}.hero .w{padding-left:20px;padding-right:20px;box-sizing:border-box}}
