@view-transition{navigation:auto}
::view-transition-old(root){animation:vt-out .28s ease both}::view-transition-new(root){animation:vt-in .45s cubic-bezier(.2,.7,.2,1) both}
@keyframes vt-out{to{opacity:0;transform:translateY(-8px)}}@keyframes vt-in{from{opacity:0;transform:translateY(12px)}}
html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}
body:before{content:"";position:fixed;inset:-50%;z-index:9998;pointer-events:none;opacity:.07;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 1.2s steps(6) infinite}
@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0)}}
.hero canvas.fx{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:0;transition:opacity 1.2s ease;mix-blend-mode:screen;pointer-events:none}.hero canvas.fx.on{opacity:1}
.hero .bg img{will-change:transform}
.m .hero h1{opacity:0}.m .hero h1.kin{opacity:1}
.kin .w{display:inline-block;overflow:hidden;vertical-align:bottom;padding:0 .12em .1em 0;margin:0 -.12em -.1em 0}.kin .w>span{display:inline-block;transform:translateY(100%);opacity:0;filter:blur(6px);transition:transform 1.1s cubic-bezier(.16,1,.3,1),opacity .9s ease,filter .9s ease;transition-delay:calc(var(--i)*45ms + 150ms)}.kin.go .w>span{transform:none;opacity:1;filter:none}
.m .hero .lead,.m .hero .cta-row,.m .hero .note,.m .hero .eyebrow{opacity:0;transform:translateY(14px);transition:opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1)}.m .hero.go .eyebrow{transition-delay:.05s}.m .hero.go .lead{transition-delay:.55s}.m .hero.go .cta-row{transition-delay:.7s}.m .hero.go .note{transition-delay:.85s}.m .hero.go .lead,.m .hero.go .cta-row,.m .hero.go .note,.m .hero.go .eyebrow{opacity:1;transform:none}
/* buttons: glow + shimmer border */
@property --ang{syntax:"<angle>";initial-value:0deg;inherits:false}
.btn{position:relative;isolation:isolate;will-change:transform}
.btn:not(.ghost){box-shadow:0 0 0 0 rgba(224,164,106,0);transition:box-shadow .4s,transform .25s cubic-bezier(.2,.7,.2,1),background .3s}.btn:not(.ghost):hover{box-shadow:0 10px 40px -8px rgba(243,192,142,.55),0 0 0 1px rgba(243,192,142,.6)}
.btn.ghost:before,.shim:before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:conic-gradient(from var(--ang),transparent 0 70%,rgba(243,192,142,.95) 80%,transparent 90%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spin 4.5s linear infinite;pointer-events:none;z-index:1}
@keyframes spin{to{--ang:360deg}}
/* cards: spotlight + tilt */
.card{position:relative;overflow:hidden;transform-style:preserve-3d;will-change:transform}.card:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s;background:radial-gradient(380px circle at var(--cx,50%) var(--cy,50%),rgba(243,192,142,.14),transparent 60%)}.card:hover:after{opacity:1}
.card.tilt{transition:transform .5s cubic-bezier(.2,.7,.2,1),border-color .3s}
/* marquee */
.marq{border-block:1px solid var(--line);padding:26px 0;overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}.marq .lbl{text-align:center;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--mute);margin:0 0 18px}.marq .row{display:flex;width:max-content;animation:marq 38s linear infinite}.marq:hover .row{animation-play-state:paused}.marq ul{display:flex;gap:56px;padding:0 28px;margin:0;list-style:none}.marq li{font-family:"Geist",system-ui,sans-serif;font-size:clamp(24px,3vw,36px);color:#d9d2c6;white-space:nowrap;opacity:.75}.marq li:after{content:"✦";color:var(--amber);font-size:.5em;margin-left:56px;vertical-align:middle}
@keyframes marq{to{transform:translateX(-50%)}}
/* bars */
.bars{margin:34px 0 8px;display:grid;gap:18px}.bar{display:grid;grid-template-columns:minmax(150px,260px) 1fr;gap:18px;align-items:center}.bar .t{font-size:14px;color:#cfc9bf}.bar .tr{height:46px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid var(--line);overflow:hidden;position:relative}.bar .f{height:100%;width:var(--w);border-radius:inherit;background:linear-gradient(90deg,#6b4a2c,#e0a46a 70%,#f3c08e);transform-origin:left;transform:scaleX(0);transition:transform 1.6s cubic-bezier(.16,1,.3,1)}.bar.us .f{background:linear-gradient(90deg,#e0a46a,#fff1dc)}.bars.in .f{transform:scaleX(1)}.bar .v{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-family:"Geist",system-ui,sans-serif;font-size:22px;color:#fff6ea}
@media(max-width:640px){.bar{grid-template-columns:1fr;gap:8px}}
/* pinned story */
@media(min-width:900px) and (min-height:700px){.m .story{height:260vh;position:relative}.m .story .pin{position:sticky;top:0;height:100vh;display:grid;align-items:center;overflow:hidden}.m .story .pin>.blk{grid-area:1/1;border:0;transition:none;will-change:opacity,transform}.m .story .pin>.blk .rv{opacity:1;transform:none}.story .prog{position:absolute;left:50%;bottom:34px;width:160px;height:2px;margin-left:-80px;background:var(--line);border-radius:2px;overflow:hidden}.story .prog i{display:block;height:100%;background:var(--amber);transform-origin:left;transform:scaleX(var(--p,0))}}
.story .prog{display:none}.m .story .prog{display:block}
/* parallax */
.frame{overflow:hidden}.frame img{will-change:transform;transform:translateY(var(--py,0)) scale(1.08)}
@media(prefers-reduced-motion:reduce){body:before{animation:none}.btn.ghost:before,.shim:before{animation:none;opacity:.4}.marq .row{animation:none;flex-wrap:wrap;width:auto}.marq .row ul+ul{display:none}.bar .f{transition:none;transform:none}.frame img{transform:none}::view-transition-old(root),::view-transition-new(root){animation:none}}
.shim{position:relative}
/* v3 hero */
.hero.xl{min-height:100svh;align-items:center;padding:104px 0 40px}
.hero.xl .bg img{opacity:1;object-position:70% 50%}
.hero.xl .bg picture{display:block;width:100%;height:100%;animation:kb 26s ease-out both}
@keyframes kb{from{transform:scale(1.12)}to{transform:scale(1.02)}}
.hero.xl:after{background:linear-gradient(90deg,rgba(10,11,12,.96) 0%,rgba(10,11,12,.82) 38%,rgba(10,11,12,.25) 70%,rgba(10,11,12,.1)),linear-gradient(180deg,rgba(10,11,12,.55),transparent 25%,transparent 70%,var(--bg))}
.hero.xl h1{font-size:clamp(44px,min(5.3vw,9.2vh),84px);max-width:none;margin-bottom:0;letter-spacing:-.055em;font-weight:650}
.hero.xl .lead{max-width:600px;color:#e2ddd5;margin-top:22px}
.hero.xl .cta-row{margin-top:28px}
.hero .eyebrow .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#7ee2a8;box-shadow:0 0 0 0 rgba(126,226,168,.6);margin-right:10px;vertical-align:1px;animation:pulse 2.4s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(126,226,168,0)}100%{box-shadow:0 0 0 0 rgba(126,226,168,0)}}
.hstats{list-style:none;padding:0;margin:clamp(24px,4vh,44px) 0 0;display:flex;flex-wrap:wrap;gap:0;border-top:1px solid rgba(255,255,255,.12);max-width:720px}
.hstats li{flex:1 1 140px;padding:18px 22px 0 0}.hstats b{display:block;font-size:26px;font-weight:600;letter-spacing:-.03em;color:#fff}.hstats span{font-size:13px;color:var(--mute)}
.hero.xl .note{margin-top:22px;font-size:13px}
.m .hero .hstats{opacity:0;transform:translateY(14px);transition:opacity .9s ease 1s,transform .9s cubic-bezier(.16,1,.3,1) 1s}.m .hero.go .hstats{opacity:1;transform:none}
.marq li{font-weight:500;letter-spacing:-.02em}.bar .v{font-weight:600;letter-spacing:-.02em}
@media(max-width:760px){.hero.xl{min-height:auto;padding:120px 0 64px}.hero.xl:after{background:linear-gradient(180deg,rgba(10,11,12,.6),rgba(10,11,12,.88) 45%,var(--bg))}.hero.xl .bg img{object-position:78% 50%}.hstats{margin-top:40px}.hstats li{flex:1 1 45%;padding-bottom:4px}.hero.xl .cta-row .btn{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.hero.xl .bg picture,.hero .eyebrow .dot{animation:none}}

@media(min-width:761px){.hero.xl .eyebrow{margin-bottom:16px}.hero.xl .note{margin-top:14px}}
