/* Complete brand choreography, a shorter final hold, then a headline-led reveal. */
html{scrollbar-gutter:stable}
html.intro-pending{overflow:hidden;overscroll-behavior:none;scroll-behavior:auto}
.brand-intro{position:fixed;inset:0;width:100%;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:var(--theme-bg,#17171C);color:var(--theme-fg,#F6F4EF);overflow:hidden;z-index:10000;display:none;isolation:isolate;opacity:1}
html.intro-pending .brand-intro,.brand-intro[open]{display:grid;place-items:center}
.brand-intro::backdrop{background:transparent;backdrop-filter:none}
.intro-backdrop{position:absolute;inset:0;background:var(--theme-bg,#17171C);pointer-events:none}
html.intro-pending:not(.intro-handoff) .site-home>#header,html.intro-pending:not(.intro-handoff) .site-home>#main,html.intro-pending:not(.intro-handoff) .site-home>.footer,html.intro-pending:not(.intro-handoff) .site-home>.skip-link{visibility:hidden;opacity:0;pointer-events:none}
.site-home.intro-open{overflow:hidden}
.intro-artwork{width:min(1360px,94vw);position:relative;margin-top:-2vh}
.intro-artwork svg{display:block;width:100%;height:auto;max-height:76vh;max-height:76dvh;overflow:visible}
.intro-artwork[hidden],.intro-message[hidden]{display:none!important}
.intro-tagline{position:absolute;top:88%;left:5%;right:5%;text-align:center;font-size:clamp(12px,1.25vw,18px);font-weight:400;letter-spacing:.12em;line-height:1.8;color:var(--theme-muted);opacity:0}
.intro-skip{position:absolute;right:32px;right:max(32px,env(safe-area-inset-right,0px));bottom:28px;bottom:max(28px,env(safe-area-inset-bottom,0px));display:inline-flex;align-items:center;gap:12px;min-height:46px;padding:11px 20px;border:1px solid var(--theme-line-strong);border-radius:999px;background:transparent;color:var(--theme-fg);font-size:12px;line-height:1.4;cursor:pointer;z-index:2;touch-action:manipulation}
.intro-skip small{font-family:var(--mono,monospace);font-size:10px;letter-spacing:.08em;color:var(--theme-muted)}
.intro-skip>span:last-child{font-size:18px}
.intro-skip:hover{background:var(--theme-hover);border-color:var(--theme-fg)}
.intro-skip:focus-visible{outline:2px solid var(--theme-focus);outline-offset:5px}
.brand-intro.is-handoff{background:transparent}
.is-handoff .intro-artwork{opacity:0;transition:opacity .275s ease}
.is-handoff .intro-backdrop{animation:intro-unveil 1.35s 1.55s cubic-bezier(.25,.46,.35,1) both}
.intro-message.opening-title{position:fixed;inset:auto;padding:0 5vw;visibility:visible!important;opacity:1!important;transform:none!important;z-index:1;will-change:auto}
.intro-message .opening-eyebrow{color:var(--theme-muted);animation:intro-words .95s both,intro-eyebrow-ink 1.8s 1.725s both}
.site-home .intro-message h1{color:var(--theme-fg);text-shadow:none;animation:intro-ink 1.8s 1.725s both}
.intro-message-line{display:block;animation:intro-words 1.2s cubic-bezier(.2,.65,.3,1) both}
.intro-message-line:nth-child(2){animation-delay:.3s}
html.intro-handoff .site-home #main .opening-title{visibility:hidden!important}
html.intro-handoff .site-home>#header{animation:intro-words 1.1s 1.9s both}
html.intro-handoff .site-home .opening-cue{animation:intro-words .9s 2.05s both}
.is-handoff.intro-direct-reveal .intro-backdrop{animation-delay:0s;animation-duration:1.4s}
.is-handoff.intro-direct-reveal~#header{animation-delay:.2s!important}
@keyframes intro-words{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes intro-unveil{from{opacity:1}to{opacity:0}}
@keyframes intro-ink{from{color:var(--theme-fg)}to{color:#F6F4EF}}
@keyframes intro-eyebrow-ink{from{color:var(--theme-muted)}to{color:#F6F4EFB3}}
.brand-intro #body-arc{stroke:var(--theme-fg)}
.brand-intro #person1 circle,.brand-intro #person2 circle,.brand-intro #char0 path,.brand-intro #char1 path,.brand-intro #char2 path,.brand-intro #char3 path,.brand-intro #english path{fill:var(--theme-fg)}
.brand-intro #human-label path,.brand-intro #machine-label path{fill:var(--theme-muted)}
@media(max-width:680px){.intro-artwork{width:100%;margin-top:-4vh}.intro-tagline{font-size:11px;letter-spacing:.04em;top:100%;left:7%;right:7%}.intro-skip{right:20px;right:max(20px,env(safe-area-inset-right,0px));bottom:22px;bottom:max(22px,env(safe-area-inset-bottom,0px));padding:11px 17px;gap:9px}.intro-message.opening-title{padding:0 7vw}}
@media(max-height:500px){.intro-artwork{width:min(900px,83vw)}.intro-skip{right:20px;bottom:16px}.intro-tagline{top:91%;font-size:11px}}
@media(prefers-reduced-motion:reduce){.is-handoff .intro-artwork{transition:none}.brand-intro *,html.intro-handoff .site-home>#header,html.intro-handoff .site-home .opening-cue{animation:none!important}}
