/* v31 outro — films & lab · end card · footer · keep scrolling */
/* ══ LAB ══ */
.lab{position:relative;background:var(--stage);color:#fff;border-radius:0 0 28px 28px;overflow:clip}
.lab__pin{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;gap:clamp(1.4rem,3.6vh,2.4rem);padding:clamp(6.5rem,15vh,8rem) 0 clamp(1.6rem,5vh,3.4rem)}
.lab__head{display:grid;grid-template-columns:auto 1fr auto;align-items:end;column-gap:clamp(1.5rem,4vw,4rem);row-gap:.9rem;padding:0 var(--pad)}
.lab__k{grid-column:1/-1;color:rgba(255,255,255,.55)}
.lab__h{font-weight:400;font-size:clamp(3rem,min(7vw,11vh),7.5rem);letter-spacing:-.055em;line-height:.86;white-space:nowrap}
.lab__head p{max-width:32ch;color:rgba(255,255,255,.6);font-size:1rem;line-height:1.4}
.lab__count{display:flex;flex-direction:column;align-items:flex-end;gap:.55rem}
.lab__num{display:inline-flex;align-items:flex-start;gap:.2rem;line-height:.82}
.lab__num b{font-weight:400;font-size:clamp(2.4rem,4vw,4rem);letter-spacing:-.05em;font-variant-numeric:tabular-nums;color:#fff}
.lab__num sup{font-size:.72rem;color:var(--acid2);padding-top:.35em;vertical-align:baseline;font-variant-numeric:tabular-nums}
.lab__hint{display:inline-flex;align-items:center;gap:.5rem;color:rgba(255,255,255,.62)}
.lab__hint::before{content:'';width:22px;height:1px;background:currentColor;animation:hintx 2.4s var(--ease) infinite}
@keyframes hintx{0%{transform:scaleX(0);transform-origin:left}45%{transform:scaleX(1);transform-origin:left}55%{transform:scaleX(1);transform-origin:right}100%{transform:scaleX(0);transform-origin:right}}
.lab__track{display:flex;align-items:flex-end;gap:clamp(.9rem,1.6vw,1.6rem);padding:0 var(--pad);width:max-content;will-change:transform;user-select:none;-webkit-user-select:none}
.lab.is-drag .lab__track{cursor:grabbing}
.xp{flex:none;cursor:pointer;transform-origin:50% 60%;will-change:transform,opacity;outline:0}
.xp__m{position:relative;height:clamp(200px,calc(100svh - 28rem),440px);aspect-ratio:var(--ar,1.7778);border-radius:18px;overflow:hidden;background:#15161d;isolation:isolate;box-shadow:0 0 0 1px rgba(255,255,255,.06);transition:box-shadow .5s var(--ease),border-radius .6s var(--ease)}
.xp__in{position:absolute;inset:0;will-change:transform}
.xp__m video{width:100%;height:100%;object-fit:cover;transform:scale(1.12);transition:transform 1.2s var(--ease),filter .6s}
.xp__m::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,13,18,.35),transparent 30%,transparent 70%,rgba(12,13,18,.45));pointer-events:none;z-index:1}
.xp:hover .xp__m,.xp:focus-visible .xp__m{box-shadow:0 0 0 2px var(--acid),0 30px 60px -30px rgba(47,69,255,.55);border-radius:24px}
.xp:hover .xp__m video,.xp:focus-visible .xp__m video{transform:scale(1.2)}
.xp--ui .xp__m video{transform:none}.xp--ui:hover .xp__m video,.xp--ui:focus-visible .xp__m video{transform:scale(1.03)}
/* UI films carry their own edge labels: no crop, and the pills move out of the frame into the caption row */
.xp--ui .xp__m{overflow:visible}.xp--ui .xp__in,.xp--ui .xp__m::after{border-radius:inherit;overflow:hidden}
.xp--ui .xp__n{display:none}
.xp--ui .xp__live,.xp--ui .xp__snd{top:calc(100% + .78rem);bottom:auto;right:0}
.xp--ui .xp__live{background:transparent;color:var(--acid2);padding-right:0}
.xp--ui:has(.xp__snd) .xp__live{right:4.4rem;font-size:0}.xp--ui:has(.xp__snd) .xp__live i:nth-child(3){margin-right:0}
/* solid chips: a backdrop blur here would be recomputed on every video frame */
.xp__n,.xp__live,.xp__snd{position:absolute;z-index:2;padding:.32rem .58rem;border-radius:99px;background:rgba(12,13,18,.62);color:#fff;font-size:.6rem;line-height:1}
.xp__n{left:.75rem;top:.75rem;font-variant-numeric:tabular-nums}
.xp__snd{right:.75rem;bottom:.75rem;background:var(--acid)}
.xp__live{right:.75rem;top:.75rem;display:inline-flex;align-items:flex-end;gap:2px;opacity:0;transform:translateY(-4px);transition:opacity .4s,transform .5s var(--ease)}
.xp__live i{width:2px;height:8px;margin-right:0;border-radius:1px;background:var(--acid2);transform-origin:bottom;animation:xpeq 1s ease-in-out infinite}
.xp__live i:nth-child(2){animation-delay:-.35s}.xp__live i:nth-child(3){animation-delay:-.7s;margin-right:.35rem}
@keyframes xpeq{0%,100%{transform:scaleY(.3)}50%{transform:scaleY(1)}}
.xp.is-on.is-focus .xp__live{opacity:1;transform:none}
.xp__play{position:absolute;left:50%;top:50%;z-index:2;width:4.2rem;height:4.2rem;margin:-2.1rem 0 0 -2.1rem;border-radius:50%;background:rgba(12,13,18,.62);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);display:grid;place-items:center;opacity:0;transform:scale(.7);transition:opacity .4s,transform .6s var(--ease)}
.xp__play svg{width:1.3rem;height:1.3rem;fill:#fff;margin-left:3px}
.xp:focus-visible .xp__play{opacity:1;transform:none}
body.touch .xp__play{opacity:1;transform:scale(.8)}
.xp__meta{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;padding-top:.9rem;width:0;min-width:100%}
.xp__meta b{font-weight:400;font-size:1.02rem;letter-spacing:-.02em;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.xp__meta .mono{color:rgba(255,255,255,.72);font-size:.7rem}
.xp.is-focus .xp__meta .mono{color:var(--acid2)}
.lab__prog{margin:0 var(--pad);height:2px;background:rgba(255,255,255,.12);border-radius:2px;overflow:hidden}
.lab__prog i{display:block;height:100%;background:linear-gradient(90deg,var(--acid),var(--acid2));transform-origin:left;transform:scaleX(0)}
@media(max-height:700px) and (min-width:760px){.lab__head p{display:none}.lab__pin{padding-top:5.5rem}.xp__m{height:clamp(170px,calc(100svh - 22.5rem),440px)}}
@media(max-width:1000px) and (min-width:760px){.lab__head{grid-template-columns:auto 1fr}.lab__head p{display:none}}
@media(max-width:759px){
  .lab{height:auto!important;border-radius:0 0 22px 22px}.lab__pin{position:relative;height:auto;padding:6rem 0 3.5rem;gap:1.8rem}
  .lab__head{grid-template-columns:1fr auto;align-items:end}.lab__h{font-size:clamp(2.6rem,12.5vw,4rem)}.lab__head p{grid-column:1/-1;grid-row:3}
  .lab__count{grid-column:2;grid-row:2}.lab__num b{font-size:2.4rem}
  .lab__track{width:auto;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);transform:none!important;padding:0 var(--pad) .4rem;scrollbar-width:none;align-items:flex-end}
  .lab__track::-webkit-scrollbar{display:none}
  .lab__track::after{content:'';flex:none;width:1px}
  .xp{scroll-snap-align:start;transform:none!important;opacity:1!important}
  .xp__m{height:auto;width:min(84vw,calc(58svh * var(--ar,1.7778)))}
  .xp--tall .xp__m{width:min(50vw,240px)}
  .xp__in{transform:none!important}
  .lab__hint{display:none}
}

/* ══ END — let's make it real ══ */
/* the lab lands as a rounded stage; a deliberate light pause, then the card steps into the light (scale/radius scrubbed in v31-outro.js) */
.end{position:relative;background:var(--bg);padding:clamp(8rem,18vh,12rem) var(--pad) clamp(1.5rem,4vh,2.6rem)}
.end__card{--mx:50%;--my:50%;--ce:0;position:relative;background:var(--stage);color:#fff;border-radius:28px;min-height:calc(100vh - 12.2rem);min-height:calc(100svh - 12.2rem);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(1.4rem,3.4vh,2.2rem);padding:5rem var(--pad) 5.5rem;overflow:hidden;isolation:isolate;transform-origin:50% 0;will-change:transform}
.end__card::before{content:'';position:absolute;inset:-20%;z-index:-2;background:radial-gradient(42% 34% at 50% 88%,rgba(36,56,245,.5),transparent 70%),radial-gradient(30% 30% at 15% -10%,rgba(125,139,255,.16),transparent 70%);animation:endbreath 9s ease-in-out infinite alternate}
@keyframes endbreath{to{transform:translate3d(0,-3%,0) scale(1.06)}}
.end__card::after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(420px circle at var(--mx) var(--my),rgba(47,69,255,.3),transparent 70%);opacity:0;transition:opacity .4s}
.end__card.is-hot::after{opacity:1}
.end__grid{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.35;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(360px circle at var(--mx) var(--my),#000,transparent 75%);mask-image:radial-gradient(360px circle at var(--mx) var(--my),#000,transparent 75%)}
.end__sub{position:relative;z-index:1;color:var(--acid2)}
/* particle headline (v31-endcard.js): the canvas draws the letters, the DOM text stays as the accessible link + fallback */
.end__dust{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:0;transition:opacity 1.4s var(--ease)}
.end__card.is-dust{cursor:pointer}
.end__card.is-dust .end__dust{opacity:1}
.end__card.is-dust .end__big{position:relative;z-index:1}
.end__card.is-dust .end__big .end__ch{color:transparent!important}
.end__card.is-dust .end__corner,.end__card.is-dust .end__foot{z-index:1}
.end__big{display:flex;flex-direction:column;align-items:center;font-weight:500;font-size:clamp(3.2rem,11vw,11rem);letter-spacing:-.065em;line-height:.9;text-align:center;outline:0}
.end__line{display:block;white-space:nowrap}
.end__w{display:inline-block;white-space:nowrap}
.end__ch--p{margin-left:.045em}
.end__ch{display:inline-block;transition:color .5s var(--ease);will-change:transform}
.end__big:hover .end__ch,.end__big:focus-visible .end__ch{color:var(--acidsoft)}
.end__big:hover .end__line:last-child .end__ch:last-child{color:var(--acid2)}
/* CTA pills: a visible action on touch, where the cursor label never shows */
.end__cta{position:relative;z-index:2;display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem}
.end__pill{position:relative;display:inline-flex;align-items:center;gap:.6rem;height:48px;padding:0 1.35rem;border-radius:99px;font-size:.95rem;letter-spacing:-.01em;white-space:nowrap;transition:background .35s,color .35s,box-shadow .35s,transform .5s var(--ease)}
.end__pill i{font-style:normal;transition:transform .5s var(--ease)}
.end__pill svg{width:.95rem;height:.95rem;fill:none;stroke:currentColor;stroke-width:1.6;flex:none}
.end__pill--w{background:#fff;color:var(--ink)}
.end__pill--w:hover,.end__pill--w:focus-visible{background:var(--acid);color:#fff}.end__pill--w:hover i{transform:translateX(3px)}
.end__pill--g{color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.26)}
.end__pill--g:hover,.end__pill--g:focus-visible{box-shadow:inset 0 0 0 1px var(--acid2);background:rgba(47,69,255,.16)}
.end__pill:focus-visible{outline:2px solid var(--acid2);outline-offset:3px}
.end__pill-ok{position:absolute;left:1.35rem;opacity:0;transform:translateY(6px);transition:opacity .3s,transform .5s var(--ease);color:var(--acidsoft)}
.end__pill-t{transition:opacity .3s,transform .5s var(--ease)}
.end__pill--g.is-ok .end__pill-t{opacity:0;transform:translateY(-6px)}.end__pill--g.is-ok .end__pill-ok{opacity:1;transform:none}
.end__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
/* brackets: pushed out while the card steps in (--ce 1 → 0), locked at the end of the entrance */
.end__corner{position:absolute;width:28px;height:28px;border:2px solid rgba(255,255,255,.5);opacity:calc(1 - var(--ce) * 1.3);transition:transform .6s var(--ease),border-color .4s,width .6s var(--ease),height .6s var(--ease)}
.end__corner--tl{left:22px;top:22px;border-right:0;border-bottom:0;translate:calc(var(--ce) * -26px) calc(var(--ce) * -26px)}.end__corner--tr{right:22px;top:22px;border-left:0;border-bottom:0;translate:calc(var(--ce) * 26px) calc(var(--ce) * -26px)}
.end__corner--bl{left:22px;bottom:22px;border-right:0;border-top:0;translate:calc(var(--ce) * -26px) calc(var(--ce) * 26px)}.end__corner--br{right:22px;bottom:22px;border-left:0;border-top:0;translate:calc(var(--ce) * 26px) calc(var(--ce) * 26px)}
.end__card.is-set .end__corner{border-color:rgba(255,255,255,.85)}
.end__card.is-lock .end__corner{border-color:var(--acid2);width:40px;height:40px}
.end__card.is-lock .end__corner--tl{transform:translate(10px,10px)}.end__card.is-lock .end__corner--tr{transform:translate(-10px,10px)}
.end__card.is-lock .end__corner--bl{transform:translate(10px,-10px)}.end__card.is-lock .end__corner--br{transform:translate(-10px,-10px)}
.end__foot{position:absolute;left:clamp(3.5rem,6vw,5rem);right:clamp(3.5rem,6vw,5rem);bottom:26px;display:flex;justify-content:space-between;gap:1rem;color:rgba(255,255,255,.5)}
.end__foot b{font-weight:400;color:#fff}
.end__rec{display:inline-flex;align-items:center;gap:.5rem}
.end__rec i{width:7px;height:7px;border-radius:50%;background:var(--acid);box-shadow:0 0 0 0 rgba(47,69,255,.6);animation:rec 2s ease-out infinite}
@keyframes rec{0%{box-shadow:0 0 0 0 rgba(47,69,255,.7)}100%{box-shadow:0 0 0 10px rgba(47,69,255,0)}}
.end__more{display:flex;justify-content:center;align-items:center;gap:.9rem;padding-top:1.4rem;color:var(--ink2)}
.end__more i{font-style:normal;color:var(--acid2);animation:bob 1.6s ease-in-out infinite}
.end__more i:last-child{animation-delay:-.8s}
@keyframes bob{50%{transform:translateY(4px)}}
@media(max-width:759px){.end__card{padding:3.6rem 1rem 6.4rem;border-radius:22px}.end__big{font-size:21vw;letter-spacing:-.06em;line-height:.88}.end__sub{font-size:.62rem;text-align:center}.end__pill{padding:0 1.1rem;font-size:.9rem}.end__pill--g .end__pill-t{max-width:52vw;overflow:hidden;text-overflow:ellipsis}.end__foot{left:2.4rem;right:2.4rem;bottom:1.5rem;font-size:.6rem;flex-direction:column;align-items:center;gap:.4rem;text-align:center}.end__corner{width:20px;height:20px}.end__corner--tl,.end__corner--bl{left:14px}.end__corner--tr,.end__corner--br{right:14px}.end__corner--tl,.end__corner--tr{top:14px}.end__corner--bl,.end__corner--br{bottom:14px}}

/* ══ KEEP SCROLLING → ARCHIVE ══ */
/* a rising sheet over the footer (mirrors reel → work): overlaps the footer's reserved bottom band */
.snav{position:relative;z-index:4;height:250vh;margin-top:-28vh;background:var(--stage);color:#fff;border-radius:28px 28px 0 0;box-shadow:0 -40px 80px -30px rgba(12,13,18,.45)}
.snav__pin{border-radius:inherit}
.snav__pin{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:grid;place-items:center;padding:0 var(--pad)}
.snav__deck{position:absolute;left:50%;top:60%;width:0;height:0}
.snav__c{position:absolute;left:0;top:0;width:clamp(130px,16vw,250px);aspect-ratio:4/3;margin:0;border-radius:18px;overflow:hidden;background:#1a1b22;box-shadow:0 30px 60px -20px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.06);translate:-50% -50%;opacity:0;will-change:transform,opacity}
.snav__c img{width:100%;height:100%;object-fit:cover;filter:brightness(.82) saturate(.95)}
.snav__top{position:absolute;left:var(--pad);right:var(--pad);top:clamp(6rem,14vh,8rem);display:flex;justify-content:space-between;gap:1rem;z-index:3}
.snav__sub{color:rgba(255,255,255,.55);line-height:1.6}
.snav__idx{color:rgba(255,255,255,.4);text-align:right}
.snav__word{position:relative;z-index:2;font-weight:500;font-size:clamp(4rem,17vw,17rem);letter-spacing:-.07em;line-height:.8;color:#fff;text-shadow:0 12px 50px rgba(12,13,18,.55);will-change:transform;padding:0 .05em;translate:0 -4vh}
.snav__next{position:absolute;left:var(--pad);right:var(--pad);bottom:clamp(1.6rem,6vh,3rem);z-index:3;display:flex;align-items:center;gap:1rem}
.snav__next>.mono:first-child{color:var(--acid2);font-variant-numeric:tabular-nums;min-width:3.2em}
.snav__bar{display:block;flex:1;height:2px;background:rgba(255,255,255,.14);overflow:hidden;border-radius:2px}
.snav__bar b{display:block;height:100%;background:linear-gradient(90deg,var(--acid),var(--acid2));transform-origin:left;transform:scaleX(0)}
.snav__arr{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);color:var(--acid2);font-size:1rem;animation:bob 1.6s ease-in-out infinite}
.snav__sheet{position:absolute;left:0;right:0;bottom:0;height:100%;z-index:4;background:var(--w,#fff);border-radius:28px 28px 0 0;transform:translate3d(0,100%,0);pointer-events:none}
@media(max-width:759px){.snav{height:220vh;margin-top:-18vh;border-radius:22px 22px 0 0}.snav__deck{top:52%}.snav__c{width:38vw;border-radius:12px}.snav__top{flex-direction:column}.snav__idx{text-align:left}}

/* ══ CONTACT / FOOTER ══ */
.ft{position:relative;background:var(--bg);padding:clamp(6rem,14vh,9rem) var(--pad) calc(var(--pad) + 28vh);overflow:hidden}
.ft__top{display:flex;justify-content:space-between;gap:1rem;color:var(--ink2);padding-bottom:1.4rem;border-bottom:1px solid var(--line)}
.ft__main{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:3rem;padding-top:clamp(2.4rem,6vh,4rem)}
.ft__l{grid-column:1/8;display:flex;flex-direction:column;align-items:flex-start}
.ft__r{grid-column:9/13;display:flex;flex-direction:column;align-items:flex-start}
.ft__lbl{display:block;color:var(--ink2);margin-bottom:1rem}
.ft__avail{display:inline-flex;align-items:center;gap:.6rem;margin:-.2rem 0 1.1rem;color:var(--ink)}
.ft__avail i{width:8px;height:8px;border-radius:50%;background:#4f66ff;box-shadow:0 0 0 0 rgba(79,102,255,.55);animation:ftAvail 2.8s ease-out infinite}
@keyframes ftAvail{0%{box-shadow:0 0 0 0 rgba(79,102,255,.55)}70%,100%{box-shadow:0 0 0 9px rgba(79,102,255,0)}}
.ft__h{font-weight:400;font-size:clamp(1.9rem,4.1vw,4.2rem);letter-spacing:-.05em;line-height:1;margin:0 0 1.3rem;max-width:100%;overflow-wrap:anywhere}
.ft__mail{background:linear-gradient(var(--acidsoft),var(--acidsoft)) no-repeat 0 90%/0% 36%;transition:background-size .7s var(--ease)}
.ft__mail:hover,.ft__mail:focus-visible{background-size:100% 36%}
.ft__copy{display:inline-flex;align-items:center;gap:.5rem;height:48px;padding:0 1.1rem;border-radius:99px;box-shadow:inset 0 0 0 1px var(--line);transition:background .3s,color .3s}
.ft__copy:hover,.ft__copy:focus-visible{background:var(--ink);color:#fff}
.ft__copy svg{width:.9rem;height:.9rem;fill:none;stroke:currentColor;stroke-width:1.6}
#copied{opacity:0;transform:translateX(-6px);transition:opacity .3s,transform .5s var(--ease);color:var(--acid)}#copied.on{opacity:1;transform:none}
/* brief builder: chips → a filled-in email */
.bf{width:min(100%,620px);margin-top:clamp(1.8rem,5vh,3rem);outline:0}
.bf__row{display:grid;grid-template-columns:5.2rem 1fr;align-items:start;gap:.8rem;padding:.7rem 0;border-top:1px solid var(--line)}
.bf__q{padding-top:.95rem;color:var(--ink2)}.bf__q em{display:block;font-style:normal;color:var(--mute);font-size:.85em;margin-top:.2rem}
.bf__chips{display:flex;flex-wrap:wrap;gap:.45rem}
.bf__chip{min-height:44px;padding:0 1rem;border-radius:99px;box-shadow:inset 0 0 0 1px var(--line);font-size:.92rem;letter-spacing:-.01em;color:var(--ink);background:transparent;transition:background .3s,color .3s,box-shadow .3s,transform .4s var(--ease)}
.bf__chip:hover{box-shadow:inset 0 0 0 1px var(--acid)}
.bf__chip:active{transform:scale(.97)}
.bf__chip:focus-visible{outline:2px solid var(--acid);outline-offset:2px}
.bf__chip[aria-pressed="true"]{background:#2f45ff;color:#fff;box-shadow:inset 0 0 0 1px #2f45ff}
.bf__go{display:flex;align-items:center;flex-wrap:wrap;gap:.7rem;padding-top:1.2rem;border-top:1px solid var(--line)}
.bf__send{display:inline-flex;align-items:center;gap:.6rem;height:48px;padding:0 1.4rem;border-radius:99px;background:var(--ink);color:#fff;font-size:.95rem;transition:background .35s,transform .5s var(--ease)}
.bf__send i{font-style:normal;transition:transform .5s var(--ease)}
.bf__send:hover,.bf__send:focus-visible,.bf.is-ready .bf__send{background:#2f45ff}.bf__send:hover i{transform:translateX(3px)}
.bf__send:focus-visible{outline:2px solid var(--acid);outline-offset:3px}
.bf__note{margin-top:.9rem;color:var(--ink2);line-height:1.5}
.ft__clock{display:flex;align-items:flex-start;gap:.35rem;font-weight:400;font-size:clamp(2.4rem,5vw,5rem);letter-spacing:-.05em;line-height:.9;font-variant-numeric:tabular-nums}
.ft__clock b{font-weight:400}
.ft__sec{display:inline-flex;font-size:.75rem;letter-spacing:.04em;color:var(--acid);padding-top:.5em;min-width:2ch}
.odo{display:inline-block;height:1.2em;line-height:1.2em;overflow:hidden}
.odo__s{display:flex;flex-direction:column;transition:transform .45s var(--ease)}
.odo__s i{font-style:normal;height:1.2em}
.odo__s.is-go{transform:translateY(-50%)}.odo__s.is-snap{transition:none}
.ft__where{margin:1rem 0 2.2rem;font-size:1rem;line-height:1.55;color:var(--ink)}
.ft__where span{color:var(--ink2)}
.ft__soc{display:flex;flex-wrap:wrap;gap:.5rem}
.ft__pill{display:inline-flex;align-items:center;gap:.55rem;padding:.7rem 1rem;border-radius:99px;box-shadow:inset 0 0 0 1px var(--line);font-size:.9rem;transition:background .35s,color .35s}
.ft__pill i{font-style:normal;transition:transform .5s var(--ease)}
.ft__pill:hover{background:var(--acid);color:#fff}.ft__pill:hover i{transform:translate(2px,-2px) rotate(45deg)}
/* MUSTAFA® — word + the M as its ® span pad to pad (font-size solved in v31-outro-ft.js → --ftfs) */
.ft__mark{--ftfs:22vw;display:flex;align-items:flex-start;gap:calc(var(--ftfs) * .015);margin-top:clamp(4rem,10vh,7rem)}
.ft__word{flex:none;display:flex;overflow:hidden;font-weight:500;font-size:var(--ftfs);letter-spacing:-.07em;line-height:.8;padding:.14em .1em .04em 0;margin-top:-.14em;will-change:transform,opacity}
.ft__word span{display:inline-block;padding:0 .06em;margin:0 -.06em;transform-origin:50% 100%;will-change:transform}
/* measured synchronously by fit(): never let the global reduced-motion transition rule delay font-size */
.ft__word,.ft__word span{transition:none}
.ft__m3d{position:relative;flex:none;width:calc(var(--ftfs) * .22);aspect-ratio:1/1.1;margin-top:calc(var(--ftfs) * -.02)}
.ft__m3d img{width:100%;height:100%;object-fit:contain}
.ft__m3d.is-3d img{display:none}
.ft__m3d canvas{position:absolute;inset:0;width:100%!important;height:100%!important}
.ft__legal{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding-top:1.4rem;margin-top:1.4rem;border-top:1px solid var(--line);font-size:.85rem;color:var(--ink2)}
.ft__cred{font-size:.78rem;line-height:1.5}
.ft__keep{display:inline-flex;align-items:center;gap:.55rem;min-height:44px;padding:0 1.1rem;border-radius:99px;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line);transition:background .35s,color .35s}
.ft__keep i{font-style:normal;color:var(--acid);animation:bob 1.6s ease-in-out infinite}
.ft__keep:hover,.ft__keep:focus-visible{background:var(--ink);color:#fff}.ft__keep:hover i{color:var(--acid2)}
.ft__legal button{justify-self:end;display:inline-flex;align-items:center;gap:.5rem}
@media(max-width:900px){.ft__l,.ft__r{grid-column:1/-1}}
@media(max-width:759px){.ft{padding-bottom:calc(var(--pad) + 18vh)}.ft__h{font-size:7vw}.ft__top>:last-child{display:none}.bf__row{grid-template-columns:1fr;gap:.35rem}.bf__q{padding-top:.2rem}.bf__q em{display:inline;margin-left:.4rem}.ft__legal{grid-template-columns:1fr;justify-items:start}.ft__keep{order:-1;justify-self:stretch;justify-content:center}.ft__legal button{justify-self:start}}
@media(prefers-reduced-motion:reduce){.lab__hint::before,.end__card::before,.end__rec i,.end__more i,.snav__arr,.xp__live i,.ft__avail i,.ft__keep i{animation:none}.end__card{transform:none!important}}
