/* welcome/welcome.css — the welcome page. One stacking context: canvas (0) < copy/labels (2) < brand bar (3). Nothing else. */
body.welcome-active{margin:0;background:#03050a;overflow:hidden;color:#f4f1ff;font-family:Inter,system-ui,sans-serif}
body.welcome-active main.wl-main{margin:0;padding:0;max-width:none;min-height:0;position:fixed;inset:0}
body.welcome-active:not(.has-audio) #unified-player,body.welcome-active .player{display:none}
.wl-stage{position:absolute;inset:0;overflow:hidden;isolation:isolate;background:#03050a;contain:layout paint}
.wl-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0;touch-action:none;outline:0}
.wl-brand{position:absolute;inset:0 0 auto;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:clamp(14px,2.4vw,30px) clamp(16px,3.4vw,52px);pointer-events:none}
.wl-brand>*{pointer-events:auto}
.wl-brand a:first-child{display:flex;align-items:center;gap:10px;font-size:clamp(1rem,1.3vw,1.3rem);letter-spacing:-.05em;color:#fff}
.wl-brand svg{width:40px;height:34px}.wl-brand strong{font-weight:760}
.wl-links{display:flex;gap:clamp(12px,2vw,30px);font-size:.86rem;letter-spacing:.02em}
.wl-links a{color:#c9c3dd;padding:8px 2px;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.wl-links a:hover,.wl-links a:focus-visible{color:#fff;border-color:#b9a4ff}
.wl-copy{position:absolute;z-index:2;left:0;right:0;top:clamp(74px,12vh,150px);text-align:center;padding:0 6vw;pointer-events:none}
.wl-copy::before{content:'';position:absolute;inset:-5vh -8vw -4vh;z-index:-1;background:radial-gradient(closest-side,#03050ad9 0%,#03050a99 55%,#03050a00 100%)}
.wl-kicker{margin:0 0 clamp(10px,2vh,20px);font-size:.7rem;letter-spacing:.34em;text-transform:uppercase;color:#a99fc8}
.wl-copy h1{margin:0 auto;max-width:17ch;font-size:clamp(2rem,4.6vw,4.4rem);font-weight:430;letter-spacing:-.055em;line-height:1.03;text-wrap:balance;text-shadow:0 2px 40px #03050acc}
.wl-copy h1 em{font-style:normal;background:linear-gradient(100deg,#59ffe0,#8f9cff 45%,#ff7fd0);-webkit-background-clip:text;background-clip:text;color:transparent}
.wl-sub{margin:clamp(10px,2vh,20px) auto 0;max-width:46ch;font-size:clamp(.92rem,1.15vw,1.08rem);line-height:1.6;color:#d3cee8;text-shadow:0 1px 18px #03050a}
.wl-doors{position:absolute;inset:0;z-index:2;pointer-events:none}
.wl-door{position:absolute;left:0;top:0;display:grid;gap:4px;justify-items:center;text-align:center;min-width:180px;min-height:48px;padding:12px 26px;border:0;border-radius:20px;background:radial-gradient(closest-side,#03050ae6 0%,#03050a99 62%,#03050a00 100%);color:#fff;cursor:pointer;pointer-events:auto;will-change:transform,opacity;transition:opacity .2s}
.wl-door strong{font-size:clamp(1.05rem,1.6vw,1.5rem);font-weight:560;letter-spacing:-.03em;text-shadow:0 2px 24px #000c}
.wl-door small{font-size:.86rem;color:#b9b2d4;text-shadow:0 1px 14px #000c}
.wl-door:focus-visible{outline:2px solid #b9a4ff;outline-offset:4px;background:#ffffff10}
.wl-door-static{position:relative;display:inline-grid;margin:8px;padding:22px 30px;border:1px solid #b9a4ff55;border-radius:18px;background:#ffffff0d;text-decoration:none}
.wl-stage[data-scene-state=unavailable] .wl-doors{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;align-content:center;pointer-events:auto}
.wl-foot{position:absolute;inset:auto 0 0;z-index:3;display:flex;justify-content:space-between;gap:16px;padding:clamp(12px,2vw,24px) clamp(16px,3.4vw,52px);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:#7f789b;pointer-events:none}
.wl-noscript{position:fixed;inset:auto 0 20px;z-index:9;text-align:center;color:#ddd}
@media (max-width:760px){
  .wl-links a:not(:last-child){display:none}
  .wl-copy{top:clamp(64px,10vh,110px)}
  .wl-foot{display:none}
  .wl-door{min-width:150px}
}
@media (prefers-reduced-motion:reduce){.wl-door{transition:none}}
