/* Greeting, orange wipe, then a header landing. */
.sgi-intro-pending .sgi-intro{animation:intro-fail-open 0s 5.2s forwards}
.sgi-intro{position:fixed;inset:0;z-index:9999;display:block;background:transparent;pointer-events:none}
.sgi-intro::before{content:'';position:absolute;inset:0;background:#080808;transition:opacity .65s ease}
.sgi-intro.is-docking::before{opacity:0}
.sgi-intro-mark{position:absolute;left:50%;top:50%;display:block;width:max-content;opacity:1;transform:translate(-50%,-50%);transform-origin:0 0;animation:none;isolation:isolate}
.sgi-intro-mark .brand{display:block;position:relative;font-size:clamp(120px,19vw,240px);line-height:1;font-weight:500;letter-spacing:-.078em;padding-right:0;color:#eeede8;animation:intro-logo-reveal .35s 1.4s both}
.sgi-intro-mark .brand-dot{animation:none;color:var(--orange);opacity:1;transform:none}
.sgi-intro-mark .intro-ink{position:absolute;inset:0;color:#080808;clip-path:inset(0 0 0 100%);animation:intro-ink-wipe .65s 3.05s both;z-index:3}
.sgi-intro-mark .intro-ink .brand-dot{color:#080808;opacity:1}
.intro-greeting{position:absolute;inset:0;display:grid;place-items:center;color:#eeede8;font-size:clamp(48px,9vw,108px);letter-spacing:-.055em}
.intro-greeting span{grid-area:1/1;animation:intro-greeting .75s both}
.intro-greeting span+span{animation-delay:.75s}
.intro-wash{position:absolute;inset:-18% -12% -36%;background:var(--orange);z-index:-1;transform-origin:right center;animation:intro-orange-wipe .65s 3.05s both}
.sgi-intro.is-docking .intro-wash,.sgi-intro.is-docking .intro-ink{transition:opacity .3s .3s;opacity:0}
.sgi-intro.is-docking .brand-dot{opacity:1;transition:opacity .3s .3s}
@keyframes intro-greeting{0%{opacity:0;transform:translateY(10px)}20%,75%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-8px)}}
@keyframes intro-logo-reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes intro-orange-wipe{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes intro-ink-wipe{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(-30% -30% -45%)}}
@media(prefers-reduced-motion:reduce){.sgi-intro{display:none!important}}

.intro-progress{position:absolute;left:50%;bottom:9%;transform:translateX(-50%);width:120px;color:#fff;display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.02em;font-variant-numeric:tabular-nums}.intro-progress>span:first-child{height:1px;flex:1;background:#ffffff30}.intro-progress i{display:block;height:1px;background:#fff;transform:scaleX(0);transform-origin:left}.intro-progress>span:last-child{width:22px;text-align:right}
