:root{--red:#e52d31;--blue:#2460df;--gold:#d7a342;--ink:#090a0c;--paper:#eee9df}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;color:var(--paper);background:var(--ink);font-family:"DM Sans",sans-serif}a{color:inherit}
.site-header{position:fixed;z-index:20;top:0;left:0;width:100%;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,3vw,54px);background:rgba(5,6,8,.91);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(12px)}.site-logo img{display:block;width:clamp(150px,16vw,224px);height:auto}nav{display:flex;gap:clamp(20px,3vw,48px)}nav a{color:#d7d5d0;font:700 16px/1 "DM Sans",sans-serif;letter-spacing:.14em;text-decoration:none;text-transform:uppercase}nav a:hover,nav a:focus-visible{color:#fff;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:7px}.menu-toggle{display:none}
.atrium{--panel-width:min(360px,30vw);position:relative;min-height:100svh;padding-top:72px;overflow:hidden;background:#0a0807}.atrium__image{position:absolute;top:72px;right:0;bottom:0;left:var(--panel-width);width:calc(100% - var(--panel-width));height:calc(100% - 72px);object-fit:cover;object-position:right center}.atrium__shade{position:absolute;top:72px;right:0;bottom:0;left:var(--panel-width);background:linear-gradient(90deg,rgba(4,7,10,.25),transparent 25%,transparent 78%,rgba(6,6,7,.22)),linear-gradient(0deg,rgba(0,0,0,.22),transparent 42%)}.intro-panel{position:relative;z-index:2;width:var(--panel-width);min-height:calc(100svh - 72px);padding:clamp(30px,4vh,50px) clamp(24px,2.2vw,38px) 22px;display:flex;flex-direction:column;justify-content:center;background:rgba(151,170,187,.96);color:#090a0c}.floor-label,.section-kicker{margin:0;font-size:16px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.intro-rule{width:100%;height:1px;margin:15px 0 18px;background:#151719}h1{margin:0;font:clamp(48px,4vw,72px)/.88 "Archivo Black",sans-serif;letter-spacing:-.07em;text-transform:uppercase}h1 span{color:#f4bc3e}.intro-copy{max-width:28ch;margin:16px 0 20px;font:500 clamp(16px,1.1vw,17px)/1.42 Georgia,serif}.network-button{align-self:flex-start;padding:15px 19px;background:var(--red);color:#08090c;font-size:16px;font-weight:700;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.network-button span{margin-left:12px;font-size:18px}.network-button:hover,.network-button:focus-visible{background:#fff;outline:2px solid var(--red);outline-offset:3px}blockquote{margin:22px 0 18px;padding-top:18px;border-top:1px solid #151719;color:#174f9b;font:clamp(18px,1.8vw,27px)/1.05 "Archivo Black",sans-serif;letter-spacing:-.04em;text-transform:uppercase}
.level-card{margin-top:auto;min-height:82px;display:grid;grid-template-columns:38% 62%;border:1px solid #111}.level-card span{display:grid;place-items:center;border-right:1px solid #111;font:44px/.8 "Archivo Black",sans-serif}.level-card small{align-self:end;font:700 16px/1 "DM Sans",sans-serif;letter-spacing:.1em;text-transform:uppercase}.level-card strong{display:grid;place-items:center;color:#174f9b;font:700 18px/1 "DM Sans",sans-serif;letter-spacing:.06em;text-transform:uppercase}
.screen-menu{position:absolute;z-index:3;top:72px;right:0;bottom:0;left:var(--panel-width);width:calc(100% - var(--panel-width));height:calc(100% - 72px);overflow:visible;pointer-events:none}.screen{color:#f7f2e8;text-decoration:none;pointer-events:auto;cursor:pointer}.screen__glass{transition:filter .18s ease,opacity .18s ease}.screen--red .screen__glass{fill:#a7313a;opacity:.7}.screen--blue .screen__glass{fill:#1c59d7;opacity:.69}.screen--gold .screen__glass{fill:#a87838;opacity:.7}.screen--cream .screen__glass{fill:#d5cbb5;opacity:.76}.screen__gloss{fill:url(#screen-gloss);opacity:.9;pointer-events:none}.screen__scanlines{fill:url(#screen-scanlines);opacity:.34;pointer-events:none}.screen__vignette{fill:url(#screen-vignette);opacity:.78;pointer-events:none}.screen__noise{fill:#fff;opacity:.11;mix-blend-mode:screen;pointer-events:none}.screen__noise--a{animation:screenNoiseA .38s steps(1,end) infinite}.screen__noise--b{animation:screenNoiseB .38s steps(1,end) infinite}.screen__label{fill:currentColor;font:28px/1 "Archivo Black",sans-serif;letter-spacing:1.5px;text-transform:uppercase;text-shadow:0 2px 8px rgba(0,0,0,.9);pointer-events:none}.screen__detail{fill:currentColor;font:700 13px/1 "DM Sans",sans-serif;letter-spacing:1.2px;opacity:0;transition:opacity .18s ease}.screen--cream{color:#15130f}.screen:hover .screen__glass,.screen:focus .screen__glass{filter:brightness(1.22) saturate(1.08)}.screen:hover .screen__detail,.screen:focus .screen__detail{opacity:.78}.screen:focus{outline:none}.screen:focus .screen__vignette{stroke:#fff;stroke-width:5;filter:drop-shadow(0 0 12px rgba(64,112,255,.9))}@keyframes screenNoiseA{0%,46%{opacity:.06}47%,100%{opacity:.15}}@keyframes screenNoiseB{0%,46%{opacity:.15}47%,100%{opacity:.04}}
.site-map{padding:clamp(74px,10vw,150px) clamp(24px,7vw,120px);background:#0e1014}.site-map .section-kicker{color:var(--red)}.site-map h2{margin:12px 0 48px;font:clamp(48px,7vw,110px)/.9 "Archivo Black",sans-serif;letter-spacing:-.06em;text-transform:uppercase}.floor-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #444;border-left:1px solid #444}.floor-grid a{min-height:260px;padding:26px;border-right:1px solid #444;border-bottom:1px solid #444;text-decoration:none;transition:background .2s,color .2s}.floor-grid a:hover,.floor-grid a:focus-visible{color:#07080a;background:var(--paper);outline:none}.floor-grid small{color:var(--gold);font-weight:700}.floor-grid span{display:block;margin:55px 0 12px;font:clamp(22px,2vw,34px)/1 "Archivo Black",sans-serif;text-transform:uppercase}.floor-grid p{margin:0;color:#aaa;font-size:16px;line-height:1.5}.floor-grid a:hover p,.floor-grid a:focus-visible p{color:#333}footer{display:flex;align-items:center;gap:30px;padding:42px clamp(24px,7vw,120px);border-top:1px solid #292b30}footer img{width:135px}footer p{margin:0;color:#999}footer a{margin-left:auto;color:#fff;font-weight:700;text-underline-offset:5px}
@media(max-width:900px){.atrium{min-height:auto}.atrium__image{position:relative;inset:auto;display:block;width:100%;height:56vw;min-height:340px}.atrium__shade{inset:72px 0 auto;height:56vw;min-height:340px;background:linear-gradient(0deg,rgba(0,0,0,.6),transparent 60%)}.intro-panel{width:100%;min-height:0;padding:44px 24px}.intro-copy{max-width:42ch}.level-card{margin-top:30px;max-width:360px}.screen-menu{position:absolute;top:72px;right:0;bottom:auto;left:0;width:100%;height:max(56vw,340px)}.floor-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.site-header{height:64px}.site-logo img{width:146px}.menu-toggle{display:block;border:1px solid #777;padding:9px 11px;color:#fff;background:transparent;font:700 16px/1 "DM Sans",sans-serif;letter-spacing:.14em;text-transform:uppercase}nav{position:absolute;top:64px;left:0;right:0;display:none;flex-direction:column;gap:0;background:#08090b;border-top:1px solid #333}nav.is-open{display:flex}nav a{padding:18px 24px;border-bottom:1px solid #222}.atrium{padding-top:64px}.atrium__image{height:62vw;min-height:300px}.atrium__shade{inset:64px 0 auto;height:62vw;min-height:300px}.screen-menu{top:64px;height:max(62vw,300px)}.screen__detail{display:none}.floor-grid{grid-template-columns:1fr}.floor-grid a{min-height:210px}footer{align-items:flex-start;flex-direction:column;gap:18px}footer a{margin-left:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.screen__noise{animation:none!important}.screen__noise--b{display:none}}

/* Lobby content system */
.lobby-content {
  position: relative;
  overflow: hidden;
  border-top: 1px solid #333740;
  background:
    radial-gradient(circle at 78% 6%, rgba(36, 96, 223, .13), transparent 22%),
    linear-gradient(180deg, #0c0e13, #090a0d 42%, #0d0f14);
}

.lobby-content::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--red) 0 34%, var(--blue) 34% 68%, var(--gold) 68%);
}

.lobby-section {
  position: relative;
  width: min(100%, 1680px);
  margin: 0 auto;
  padding: clamp(64px, 7vw, 112px) clamp(28px, 6vw, 108px);
  border-bottom: 1px solid #292c33;
}

.lobby-section h2 {
  margin: 0;
  max-width: 13ch;
  font: clamp(38px, 4.65vw, 76px)/.94 "Archivo Black", sans-serif;
  letter-spacing: -.042em;
  text-transform: uppercase;
}

.lobby-section h2 span { color: var(--red); }

.lobby-kicker {
  margin: 0 0 20px;
  color: #e85b61;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.lobby-section__header {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  align-items: end;
  gap: clamp(42px, 7vw, 120px);
  margin-bottom: clamp(38px, 4.5vw, 64px);
}

.lobby-section__header > p {
  margin: 0 0 8px;
  max-width: 40ch;
  color: #b8bac1;
  font: 500 clamp(16px, 1.35vw, 21px)/1.58 Georgia, serif;
}

.lobby-welcome {
  display: grid;
  grid-template-columns: clamp(88px, 9vw, 132px) minmax(0, 1.15fr) minmax(320px, .85fr);
  align-items: center;
  gap: clamp(32px, 4vw, 70px);
}

.lobby-welcome__mark {
  position: relative;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  padding: clamp(14px, 1.7vw, 24px);
  border: 1px solid #3d424c;
  background: #11141b;
}

.lobby-welcome__mark::after {
  content: "";
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 28%;
  height: 3px;
  background: var(--blue);
}

.lobby-welcome__mark img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}

.lobby-welcome__copy h2 {
  max-width: 13ch;
  font-size: clamp(38px, 4.25vw, 68px);
}

.lobby-welcome__statement {
  padding: 10px 0 10px clamp(24px, 3vw, 46px);
  border-left: 2px solid var(--blue);
}

.lobby-welcome__statement p {
  margin: 0;
  color: #d8d7d3;
  font: 500 clamp(17px, 1.4vw, 23px)/1.55 Georgia, serif;
}

.lobby-welcome__statement p + p {
  margin-top: 24px;
  color: #9fa3ae;
}

.lobby-paths { background: rgba(15, 17, 23, .72); }

.path-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid #41444c;
  border-left: 1px solid #41444c;
}

.path-card {
  --path-accent: var(--red);
  position: relative;
  min-height: 300px;
  display: flex;
  flex-direction: column;
  padding: clamp(24px, 2.5vw, 38px);
  border-right: 1px solid #41444c;
  border-bottom: 1px solid #41444c;
  color: #f4f1eb;
  background: #111319;
  text-decoration: none;
  box-shadow: inset 0 4px 0 var(--path-accent);
  transition: color .22s ease, background .22s ease, transform .22s ease;
}

.path-card--listen { --path-accent: #2460df; }
.path-card--watch { --path-accent: #e52d31; }
.path-card--discover { --path-accent: #d7a342; }
.path-card--support { --path-accent: #d8d2c7; }

.path-card small {
  color: var(--path-accent);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.path-card strong {
  display: block;
  margin: clamp(38px, 3.8vw, 58px) 0 16px;
  font: clamp(21px, 1.65vw, 28px)/1 "Archivo Black", sans-serif;
  letter-spacing: -.025em;
  text-transform: uppercase;
}

.path-card p {
  margin: 0;
  color: #aeb1ba;
  font-size: 16px;
  line-height: 1.58;
}

.path-card > span {
  margin-top: auto;
  padding-top: 28px;
  color: var(--path-accent);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.path-card:hover,
.path-card:focus-visible {
  z-index: 1;
  color: #08090c;
  background: var(--path-accent);
  outline: 2px solid #fff;
  outline-offset: -2px;
  transform: translateY(-6px);
}

.path-card:hover small,
.path-card:hover p,
.path-card:hover > span,
.path-card:focus-visible small,
.path-card:focus-visible p,
.path-card:focus-visible > span { color: #08090c; }

.featured-world {
  display: grid;
  grid-template-columns: minmax(360px, .82fr) minmax(0, 1.18fr);
  padding: 0;
  background: #11141b;
}

.featured-world__art {
  position: relative;
  min-height: min(860px, 78vw);
  overflow: hidden;
  background: #12182d;
}

.featured-world__art::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(4, 6, 12, .48), transparent 42%);
  pointer-events: none;
}

.featured-world__art img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center 36%;
}

.featured-world__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(62px, 8vw, 132px) clamp(38px, 7vw, 118px);
  background:
    linear-gradient(45deg, rgba(255,255,255,.032) 1px, transparent 1px),
    linear-gradient(135deg, rgba(255,255,255,.032) 1px, transparent 1px),
    #11141b;
  background-size: 42px 42px;
}

.featured-world__copy h2 {
  max-width: 11ch;
  font-size: clamp(40px, 4.35vw, 70px);
}

.featured-world__copy > p {
  max-width: 42ch;
  margin: 20px 0 0;
  color: #aeb3bf;
  font-size: 16px;
  line-height: 1.65;
}

.featured-world__copy .featured-world__lead {
  margin-top: 34px;
  color: #f1ede5;
  font: 500 clamp(19px, 1.55vw, 25px)/1.5 Georgia, serif;
}

.featured-world__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 18px;
  margin-top: 40px;
}

.lobby-button {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 0 18px;
  border: 1px solid #666b76;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .1em;
  text-decoration: none;
  text-transform: uppercase;
}

.lobby-button--solid { border-color: var(--red); background: var(--red); }

.lobby-button:hover,
.lobby-button:focus-visible {
  color: #090a0c;
  border-color: #fff;
  background: #fff;
  outline: 2px solid var(--blue);
  outline-offset: 3px;
}

.lobby-text-link {
  color: #f2eee7;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .09em;
  text-decoration-color: var(--red);
  text-underline-offset: 6px;
  text-transform: uppercase;
}

.lobby-text-link:hover,
.lobby-text-link:focus-visible { color: #78a0ff; outline: none; }

.studio-work { background: #0a0b0e; }

.studio-rail {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  border-top: 1px solid #3c3f47;
  border-left: 1px solid #3c3f47;
}

.studio-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: 14px 14px 22px;
  border-right: 1px solid #3c3f47;
  border-bottom: 1px solid #3c3f47;
  color: #f2eee7;
  background: #101217;
  text-decoration: none;
  transition: background .2s ease, transform .2s ease;
}

.studio-card--wide { grid-column: span 2; }

.studio-card__image {
  height: clamp(112px, 10vw, 158px);
  overflow: hidden;
  background: #050608;
}

.studio-card__image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  filter: saturate(.83) contrast(1.05);
  transition: transform .35s ease, filter .35s ease;
}

.studio-card small {
  display: block;
  margin-top: 18px;
  color: #e85b61;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.studio-card strong {
  display: block;
  margin-top: 8px;
  font: clamp(16px, 1.15vw, 19px)/1.08 "Archivo Black", sans-serif;
  letter-spacing: -.015em;
  text-transform: uppercase;
}

.studio-card > span {
  display: block;
  margin-top: auto;
  padding-top: 18px;
  color: #8caeff;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.studio-card:hover,
.studio-card:focus-visible {
  background: #1a1e28;
  outline: 2px solid var(--blue);
  outline-offset: -2px;
  transform: translateY(-5px);
}

.studio-card:hover img,
.studio-card:focus-visible img { transform: scale(1.045); filter: saturate(1) contrast(1.04); }

.studio-work__more {
  display: inline-block;
  margin-top: 34px;
}

.lobby-collaboration {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr);
  gap: clamp(50px, 9vw, 150px);
  align-items: center;
  background: #111319;
}

.collaboration-manifesto h2 { max-width: 11ch; }

.collaboration-manifesto > p:not(.lobby-kicker) {
  max-width: 52ch;
  margin: 34px 0 30px;
  color: #b5b8c0;
  font-size: 16px;
  line-height: 1.7;
}

.collaboration-quote {
  position: relative;
  padding: clamp(36px, 5vw, 72px);
  border: 1px solid #50545d;
  background: linear-gradient(145deg, rgba(36,96,223,.13), rgba(229,45,49,.07));
}

.collaboration-quote::before {
  content: "\201C";
  position: absolute;
  top: 20px;
  right: 28px;
  color: rgba(36, 96, 223, .25);
  font: 120px/.8 Georgia, serif;
}

.collaboration-quote blockquote {
  position: relative;
  margin: 0;
  padding: 0;
  border: 0;
  color: #f1ede5;
  background: transparent;
  font: clamp(25px, 2.7vw, 44px)/1.13 "Archivo Black", sans-serif;
  letter-spacing: -.045em;
  text-transform: uppercase;
}

.collaboration-quote small {
  display: block;
  margin-top: 30px;
  color: #e85b61;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.lobby-contact {
  width: 100%;
  max-width: none;
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr);
  column-gap: clamp(40px, 8vw, 130px);
  align-items: end;
  color: #090a0c;
  background: var(--red);
}

.lobby-contact .lobby-kicker {
  grid-column: 1 / -1;
  color: #090a0c;
}

.lobby-contact h2 { max-width: 12ch; }
.lobby-contact h2 span { color: #fff; }

.lobby-contact > p:not(.lobby-kicker) {
  align-self: start;
  margin: 0;
  max-width: 50ch;
  color: #1a0a0b;
  font: 500 clamp(17px, 1.4vw, 22px)/1.55 Georgia, serif;
}

.lobby-button--light {
  grid-column: 2;
  justify-self: start;
  margin-top: -56px;
  color: #090a0c;
  border-color: #090a0c;
  background: #f2eee7;
}

@media (max-width: 1100px) {
  .lobby-welcome { grid-template-columns: 112px minmax(0, 1fr); }
  .lobby-welcome__statement { grid-column: 2; }
  .path-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .studio-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .studio-card--wide { grid-column: span 2; }
  .studio-card__image { height: auto; aspect-ratio: 16 / 9; }
  .studio-card strong { min-height: auto; }
}

@media (max-width: 800px) {
  .lobby-section { padding: 76px 24px; }
  .lobby-section__header { grid-template-columns: 1fr; gap: 28px; }
  .lobby-section__header > p { margin: 0; }
  .featured-world { grid-template-columns: 1fr; padding: 0; }
  .featured-world__art { min-height: 720px; }
  .featured-world__copy { padding: 72px 28px 82px; }
  .lobby-collaboration { grid-template-columns: 1fr; }
  .lobby-contact { grid-template-columns: 1fr; }
  .lobby-contact > p:not(.lobby-kicker) { margin-top: 32px; }
  .lobby-button--light { grid-column: 1; margin-top: 32px; }
}

@media (max-width: 560px) {
  .lobby-section h2 { font-size: clamp(36px, 10.5vw, 50px); }
  .lobby-welcome { grid-template-columns: 1fr; gap: 28px; }
  .lobby-welcome__mark { width: 92px; }
  .lobby-welcome__statement { grid-column: 1; }
  .path-grid { grid-template-columns: 1fr; }
  .path-card { min-height: 290px; }
  .featured-world__art { min-height: 620px; }
  .featured-world__actions { align-items: stretch; flex-direction: column; }
  .lobby-button { width: 100%; }
  .lobby-text-link { line-height: 1.5; }
  .studio-rail { grid-template-columns: 1fr; }
  .studio-card--wide { grid-column: span 1; }
  .collaboration-quote { padding: 36px 26px; }
}

/* Sound-reactive CRT signal */
.screen__label {
  transform-box: fill-box;
  transform-origin: center;
  transition: transform 42ms linear, filter 42ms linear;
}

.screen.is-signal-live .screen__glass {
  filter:
    brightness(var(--screen-brightness, 1.08))
    saturate(var(--screen-saturation, 1.04));
}

.screen.is-signal-live .screen__scanlines { opacity: .48; }

.screen.is-signal-peak .screen__label {
  transform:
    translate(var(--glitch-x, 0), var(--glitch-y, 0))
    skewX(var(--glitch-skew, 0));
  filter: brightness(1.45);
  text-shadow:
    -3px 0 rgba(239, 48, 56, .76),
    3px 0 rgba(25, 89, 226, .8),
    0 2px 8px rgba(0, 0, 0, .9);
}

@media (prefers-reduced-motion: reduce) {
  .screen__label { transition: none; }
  .screen.is-signal-peak .screen__label { transform: none; filter: none; }
}
