/* Keep the supplied artwork intact; animation belongs to the surrounding layout. */
#brandIntro[hidden]{display:none!important}.intro-open{overflow:hidden!important}
#brandIntro{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;background:#fafcfb;color:#072142;padding:36px;isolation:isolate;overflow:hidden;opacity:1;transition:opacity .45s ease,visibility .45s ease}
#brandIntro::before{content:'';position:absolute;inset:-10%;z-index:-2;background-image:linear-gradient(#0055ff09 1px,transparent 1px),linear-gradient(90deg,#0055ff09 1px,transparent 1px);background-size:54px 54px;mask-image:radial-gradient(ellipse at center,black,transparent 75%);animation:intro-grid 4.8s ease-out both}
#brandIntro::after{content:'';position:absolute;width:min(72vw,830px);aspect-ratio:1;border:1px solid #0055ff0d;border-radius:50%;z-index:-1;box-shadow:0 0 0 90px #0055ff04,0 0 0 180px #0055ff03;animation:intro-orbit 4.8s ease-out both}
.intro-frame{width:min(1120px,94vw);text-align:center}.intro-kicker{font:600 12px/1.4 'DM Sans',sans-serif;letter-spacing:.24em;text-transform:uppercase;color:#406184;animation:intro-rise .8s .05s both}.intro-art{width:100%;height:auto;display:block;margin:8px auto;animation:intro-logo 1.4s .15s cubic-bezier(.18,.7,.2,1) both;filter:drop-shadow(0 16px 24px #0055ff0a)}.intro-tagline{font:500 clamp(16px,2vw,22px)/1.5 'DM Sans',sans-serif;color:#223c5a;margin:6px 0 24px;animation:intro-rise .8s .6s both}.intro-trace{width:170px;height:3px;margin:auto;background:#dce7f5;border-radius:4px;overflow:hidden}.intro-trace span{display:block;width:100%;height:100%;background:#0055ff;transform-origin:left;animation:intro-progress 4.2s linear both}.intro-meta{position:absolute;left:36px;bottom:30px;font:500 11px/1.5 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#506782}.intro-enter{position:absolute;right:32px;bottom:24px;background:transparent;border:1px solid #b9cbe0;border-radius:30px;padding:12px 20px;color:#123259;font:600 14px 'DM Sans',sans-serif}.intro-enter:hover{background:#eaf1ff}.intro-enter:focus-visible{outline:3px solid #0055ff;outline-offset:4px}#brandIntro.intro-leaving{opacity:0;visibility:hidden;pointer-events:none}.steve-brand .brand.brand-artwork{display:block;width:300px;max-width:100%;background:#fafcfb;border-radius:9px;padding:3px 10px;line-height:0}.brand-artwork img{display:block;width:100%;height:auto}#replayIntro{font-size:12px}
@keyframes intro-logo{from{opacity:1;transform:translateY(18px) scale(.96);filter:blur(0)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes intro-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes intro-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes intro-grid{from{opacity:0;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}@keyframes intro-orbit{from{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}
@media(max-width:600px){#brandIntro{padding:18px}.intro-frame{width:100%}.intro-kicker{font-size:10px;letter-spacing:.17em}.intro-art{margin:26px auto}.intro-tagline{font-size:16px;margin-top:16px}.intro-meta{bottom:87px;left:0;width:100%;text-align:center;font-size:9px}.intro-enter{right:50%;transform:translateX(50%);bottom:25px;white-space:nowrap}.steve-brand .brand.brand-artwork{width:260px}.intro-trace{width:130px}}
@media(prefers-reduced-motion:reduce){#brandIntro,#brandIntro::before,#brandIntro::after,.intro-art,.intro-kicker,.intro-tagline,.intro-trace span{animation:none!important;transition:none!important}.intro-trace span{transform:scaleX(1)}}
main h1[tabindex="-1"]:focus{outline:none}
