.brand-intro{position:fixed;inset:0;z-index:1000;background-color:rgb(10,11,13);background-image:url("intro-starfield.jpg");background-size:cover;background-position:center;background-repeat:no-repeat;color:#e8cb87;transition:opacity .35s;isolation:isolate}
.brand-intro[hidden]{display:none}
.brand-intro.is-leaving{opacity:0;pointer-events:none}
.brand-intro canvas{display:block;width:100%;height:100%}
.brand-intro video{position:absolute;z-index:1;left:50%;top:50%;display:block;width:min(100vw,177.7778vh);max-width:100%;max-height:100%;height:auto;aspect-ratio:16/9;transform:translate(-50%,-50%);object-fit:contain;background:transparent;--intro-edge-feather:clamp(14px,3vw,28px);-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 var(--intro-edge-feather),#000 calc(100% - var(--intro-edge-feather)),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 var(--intro-edge-feather),#000 calc(100% - var(--intro-edge-feather)),transparent 100%)}
.intro-start,.intro-skip{z-index:2}
.intro-start{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:14px 24px;border:1px solid #c7a15a;background:#111d;color:#eed6a4;font:inherit;cursor:pointer}
.intro-start[hidden]{display:none}
.intro-start:focus-visible{outline:3px solid #d5a542;outline-offset:5px}
.intro-skip{position:absolute;right:clamp(20px,4vw,64px);bottom:28px;top:auto;border:1px solid #a98c544d;background:#1118;color:#e8cb87;padding:10px 18px;border-radius:2px;font-size:13px;letter-spacing:2px;cursor:pointer}
.intro-skip:focus-visible,.intro-replay:focus-visible{outline:3px solid #d5a542;outline-offset:5px}
.intro-caption{position:absolute;bottom:48px;left:0;right:0;text-align:center;font:11px Arial,sans-serif;letter-spacing:5px;color:#b69c6a;pointer-events:none}
.intro-progress{position:absolute;bottom:0;left:0;height:2px;background:#c7a15a;width:100%;transform:scaleX(0);transform-origin:left}
.intro-replay{display:block;margin:20px auto 8px;padding:9px 20px;border:1px solid #b8a276;color:#66542f;background:white;cursor:pointer;letter-spacing:2px}
.intro-replay[hidden]{display:none}
.home-logo{display:block;width:min(62vw,520px);height:auto;margin:45px auto}
html.intro-playing,html.intro-playing body{overflow:hidden}
@media(max-width:600px){.intro-caption{bottom:32px;font-size:9px;letter-spacing:3px}.intro-skip{right:20px;bottom:20px}.home-logo{width:78vw;margin:32px auto}nav{display:flex;flex-wrap:wrap;justify-content:center}nav a{margin:2px;padding:9px;font-size:14px}}
@media(prefers-reduced-motion:reduce){.brand-intro{transition:none}}
