/* Woven red ribbon with a perspective curtain of light; no media dependencies. */
.intro{overflow:hidden;isolation:isolate;background:#000;pointer-events:auto;contain:strict}
.intro canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.intro-ribbons{z-index:1}.intro-optics{z-index:3;mix-blend-mode:screen}
.intro-emblem{position:absolute;z-index:2;width:180px;height:auto;overflow:visible;opacity:0;transform-origin:22.3077% center;will-change:transform,opacity}
.ribbon-arm{will-change:opacity}
.ribbon-weave{opacity:0}
.intro .intro-wordmark{position:absolute;z-index:4;font-size:clamp(80px,15vw,218px);letter-spacing:-2px;line-height:1.1;transform-origin:center;opacity:0;animation:none;text-shadow:none;white-space:nowrap;will-change:opacity,transform}
.intro .intro-wordmark .lower{letter-spacing:-1px}
.intro-vignette{position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,#0002,transparent 15%,transparent 85%,#0002)}
.intro-skip{position:absolute;right:4%;bottom:5%;z-index:5;border:1px solid #ffffff55;border-radius:3px;background:#0006;padding:8px 14px;color:#fff;font-size:12px;opacity:0;transition:opacity .2s}
.intro:hover .intro-skip,.intro-skip:focus-visible{opacity:1}
.intro-reduced .intro-emblem,.intro-reduced canvas{display:none}
.intro-reduced .intro-wordmark{opacity:1;transform:scaleX(.84)}
@media(prefers-reduced-motion:reduce){.intro .intro-wordmark{opacity:1;transform:scaleX(.84)}.intro-emblem,.intro canvas{display:none}}
