:root {
    color-scheme: dark;
    --bg: #05070b;
    --panel: rgba(9, 16, 26, 0.82);
    --line: rgba(255, 255, 255, 0.13);
    --text: #f6fbff;
    --muted: #aeb9c6;
    --cyan: #72deff;
    --gold: #f2c56b;
    --red: #ff5b68;
    --display: 'Barlow Condensed', 'Arial Narrow', sans-serif;
    --body-font: 'DM Sans', 'Outfit', Inter, sans-serif;
}

/* Cinematic relaunch: full-bleed chapters, pinned imagery and rising panels. */
body.aura-relaunch { background: #080914; }
body.aura-relaunch main { overflow: clip; }
.relaunch-nav { min-height: 88px; padding-inline: clamp(22px, 4vw, 56px); border: 0; background: linear-gradient(180deg, rgba(6,7,15,.7), transparent); backdrop-filter: none; }
.relaunch-nav.is-scrolled { background: rgba(8,9,20,.76); border-color: transparent; backdrop-filter: blur(18px); }
.relaunch-brand span { display: none; }
.relaunch-brand img { width: 48px; height: 48px; filter: drop-shadow(0 5px 18px rgba(0,0,0,.65)); }
.relaunch-menu-toggle { min-width: 48px; min-height: 48px; justify-content: center; padding: 0; border-radius: 50%; background: rgba(8,9,20,.54); }
.relaunch-menu-toggle > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.relaunch-menu-toggle i { width: 26px; gap: 7px; }
.relaunch-menu-toggle b { height: 3px; border-radius: 3px; }
.relaunch-nav-notification { position: absolute !important; top: -4px; right: -4px; width: 20px !important; height: 20px !important; display: grid !important; overflow: visible !important; clip-path: none !important; place-items: center; border: 2px solid #090914; border-radius: 50%; color: #10101d; background: #ef9bc9; font: 900 .62rem/1 var(--body-font); letter-spacing: 0; }
.relaunch-account-notification { display: inline-flex; margin-left: 10px; padding: 4px 7px; align-items: center; border-radius: 999px; color: #11101b; background: #ef9bc9; font: 900 .55rem/1 var(--body-font); letter-spacing: .04em; vertical-align: middle; }
.relaunch-response-notification { position: fixed; z-index: 90; top: 92px; right: clamp(16px,3vw,44px); width: min(410px,calc(100vw - 32px)); display: grid; gap: 9px; padding: 22px 54px 22px 22px; border: 1px solid rgba(99,221,255,.34); border-radius: 18px; color: #fff; background: linear-gradient(145deg,rgba(20,15,39,.98),rgba(6,10,22,.98)); box-shadow: 0 24px 70px rgba(0,0,0,.55),inset 3px 0 #63ddff; animation: relaunchNoticeIn .42s cubic-bezier(.2,.8,.2,1) both; }
.relaunch-launched-banner { position: fixed; z-index: 18; top: 88px; right: 0; left: 0; min-height: 48px; display: flex; padding: 8px clamp(18px,4vw,56px); align-items: center; justify-content: center; gap: clamp(12px,2vw,28px); border-block: 1px solid rgba(72,223,153,.22); color: #fff; background: linear-gradient(90deg,rgba(6,25,24,.96),rgba(21,17,39,.97),rgba(6,25,24,.96)); box-shadow: 0 12px 35px rgba(0,0,0,.26); backdrop-filter: blur(15px); }
.relaunch-launched-banner > span { display: flex; align-items: center; gap: 9px; color: #8ff0be; font-size: .58rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.relaunch-launched-banner > span i { width: 8px; height: 8px; border-radius: 50%; background: #48df99; box-shadow: 0 0 0 5px rgba(72,223,153,.1),0 0 16px rgba(72,223,153,.75); animation: relaunch-shop-live 1.5s ease-in-out infinite; }
.relaunch-launched-banner > strong { font: 800 1.05rem var(--display); letter-spacing: .04em; text-transform: uppercase; }
.relaunch-launched-banner > a { display: inline-flex; min-height: 32px; padding: 0 13px; align-items: center; gap: 12px; border-radius: 999px; color: #07111a; background: #48df99; font-size: .57rem; font-weight: 900; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.relaunch-launched-banner > a.is-shop { color: #fff; border: 1px solid rgba(239,155,201,.42); background: linear-gradient(135deg,rgba(239,155,201,.2),rgba(99,221,255,.13)); box-shadow: inset 0 1px rgba(255,255,255,.1); }
.relaunch-launched-banner > a b { transition: transform .2s ease; }
.relaunch-launched-banner > a:hover b,.relaunch-launched-banner > a:focus-visible b { transform: translateX(3px); }
.relaunch-response-notification[hidden] { display: none; }
.relaunch-response-notification.is-denied { border-color: rgba(255,103,130,.4); box-shadow: 0 24px 70px rgba(0,0,0,.55),inset 3px 0 #ff6782; }
.relaunch-response-notification.is-accepted { border-color: rgba(98,241,181,.4); box-shadow: 0 24px 70px rgba(0,0,0,.55),inset 3px 0 #62f1b5; }
.relaunch-response-notification > span { color: #63ddff; font-size: .6rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.relaunch-response-notification > strong { font: 800 1.55rem/1 var(--display); text-transform: uppercase; }
.relaunch-response-notification p { margin: 0; color: rgba(255,255,255,.7); font-size: .86rem; line-height: 1.55; }
.relaunch-response-dismiss { position: absolute; top: 13px; right: 13px; width: 30px; height: 30px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; color: #fff; background: rgba(255,255,255,.04); font-size: 1.2rem; cursor: pointer; }
.relaunch-response-open { width: max-content; display: inline-flex; margin-top: 5px; padding: 11px 15px; align-items: center; gap: 16px; border: 0; border-radius: 999px; color: #10101d; background: #ef9bc9; font: 900 .65rem var(--body-font); letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
@keyframes relaunchNoticeIn { from { opacity: 0; transform: translate3d(24px,-8px,0); } to { opacity: 1; transform: none; } }
.relaunch-discord-role-notice { display: flex; margin-bottom: 22px; padding: 18px 20px; align-items: center; justify-content: space-between; gap: 22px; border: 1px solid rgba(99,221,255,.25); border-radius: 16px; background: linear-gradient(110deg,rgba(99,221,255,.08),rgba(239,155,201,.05)); }
.relaunch-discord-role-notice > div { display: grid; gap: 5px; }
.relaunch-discord-role-notice > div > span { color: #63ddff; font-size: .58rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.relaunch-discord-role-notice strong { color: #fff; font: 800 1.15rem var(--display); text-transform: uppercase; }
.relaunch-discord-role-notice p,.application-success-discord { margin: 0; color: rgba(255,255,255,.62); font-size: .82rem; line-height: 1.5; }
.relaunch-discord-role-notice > a { flex: 0 0 auto; padding: 11px 15px; border-radius: 999px; color: #11101b; background: #63ddff; font-size: .65rem; font-weight: 900; text-decoration: none; text-transform: uppercase; }
.application-success-discord { margin-top: 18px; }
.status-application-response { grid-column: 1 / -1; margin-top: 14px; padding: 16px; border: 1px solid rgba(99,221,255,.18); border-radius: 12px; background: rgba(99,221,255,.05); }
.status-application-response b,.relaunch-account-decision > span { color: #63ddff; font-size: .58rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.status-application-response p { margin: 8px 0 0; color: rgba(255,255,255,.7); line-height: 1.55; }
.relaunch-account-decision { display: grid; gap: 8px; margin: 20px 0; padding: 18px; border: 1px solid rgba(99,221,255,.22); border-radius: 14px; background: rgba(99,221,255,.06); }
.relaunch-account-decision.is-denied { border-color: rgba(255,103,130,.3); background: rgba(255,103,130,.06); }
.relaunch-account-decision > strong { color: #fff; font: 800 1.35rem var(--display); text-transform: uppercase; }
.relaunch-account-decision p { margin: 0; color: rgba(255,255,255,.7); line-height: 1.6; }
@media (max-width: 680px) {
    .relaunch-response-notification { top: 76px; }
    .relaunch-launched-banner { top: 76px; min-height: 44px; padding-inline: 12px; gap: 10px; justify-content: space-between; }
    .relaunch-launched-banner > strong { display: none; }
    .relaunch-launched-banner > span { font-size: .52rem; }
    .relaunch-launched-banner > a { min-height: 30px; padding-inline: 10px; gap: 7px; font-size: .52rem; }
    .relaunch-discord-role-notice { align-items: stretch; flex-direction: column; }
    .relaunch-discord-role-notice > a { width: 100%; text-align: center; }
}
.relaunch-nav nav { position: fixed; top: 0; right: 0; width: min(520px, 100vw); max-height: none; height: 100svh; padding: 112px clamp(28px, 5vw, 62px) 34px; border: 0; background: linear-gradient(145deg, rgba(25,12,42,.985), rgba(8,9,20,.99) 62%); box-shadow: -30px 0 100px rgba(0,0,0,.55); transform: translateX(100%); opacity: 1; }
.relaunch-nav nav::before { content: 'AURA // MENU'; display: block; margin-bottom: 22px; color: #e89ac5; font-size: .67rem; font-weight: 900; letter-spacing: .22em; }
.relaunch-nav nav.is-open { transform: translateX(0); }
.relaunch-nav nav a { min-height: 64px; font-size: clamp(2rem, 5vh, 3.8rem); border-color: rgba(255,255,255,.12); }
.relaunch-nav nav a:hover, .relaunch-nav nav a:focus-visible { color: #f6b6d8; padding-left: 10px; outline: none; }
.relaunch-menu-close { top: 28px !important; right: 28px !important; min-height: 48px !important; }

.relaunch-hero { min-height: 100svh; padding: 0; display: block; background: #090a16; }
.relaunch-hero::before { z-index: 1; background: linear-gradient(180deg, rgba(7,8,18,.18), rgba(7,8,18,.02) 45%, rgba(7,8,18,.92)); }
.hero-topline { position: absolute; z-index: 4; top: 104px; left: clamp(22px, 5vw, 72px); right: clamp(22px, 5vw, 72px); }
body.has-launched .hero-topline { top: 152px; }
.relaunch-hero-art { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; border: 0; box-shadow: none; transform: none; transition: none; }
.relaunch-hero-art .hero-backdrop { width: 100%; height: 100%; object-fit: cover; object-position: 52% center; filter: saturate(1.07) contrast(1.04); }
.relaunch-hero-art::after { background: radial-gradient(circle at 52% 45%, transparent 10%, rgba(6,7,15,.18) 62%), linear-gradient(180deg, rgba(5,6,14,.08), rgba(5,6,14,.48)); }
.hero-art-shade { position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(7,8,18,.66), transparent 43%, rgba(7,8,18,.14)); }
.relaunch-hero-art .hero-keyart { position: absolute; z-index: 2; left: clamp(22px, 6vw, 92px); top: 50%; width: clamp(250px, 32vw, 490px); height: auto; object-fit: contain; transform: translateY(-53%); filter: drop-shadow(0 22px 55px rgba(0,0,0,.6)); }
.relaunch-hero.has-launched .hero-keyart { width: clamp(190px,25vw,370px); }
.hero-info { position: absolute; z-index: 4; left: clamp(22px, 6vw, 86px); right: clamp(22px, 6vw, 86px); bottom: 52px; grid-template-columns: 150px minmax(0, 1fr) 190px; }
.hero-copy { margin-inline: auto; padding: 22px 28px; border: 1px solid rgba(255,255,255,.18); border-radius: 24px; background: rgba(9,10,23,.58); backdrop-filter: blur(16px); }
.hero-copy h1 { margin: 7px 0 8px; font-size: clamp(2.8rem, 5vw, 5.8rem); text-transform: uppercase; }
.hero-copy p { margin: 0; max-width: 660px; font-size: clamp(.9rem, 1.15vw, 1.06rem); line-height: 1.55; }
.hero-actions a, .cinematic-button { min-height: 48px; padding: 0 24px; border: 0; border-radius: 999px; background: #ef9bc9; color: #15101d; transition: transform 220ms ease, background 220ms ease, box-shadow 220ms ease; }
.hero-actions a:not(:first-child) { border: 1px solid rgba(255,255,255,.28); background: rgba(9,10,23,.46); color: #fff; }
.hero-actions a:hover, .hero-actions a:focus-visible, .cinematic-button:hover, .cinematic-button:focus-visible { transform: translateY(-3px); box-shadow: 0 14px 40px rgba(232,154,197,.25); outline: none; }
.hero-scroll-cue { position: absolute; z-index: 5; left: 50%; bottom: 16px; transform: translateX(-50%); }

.cinematic-chapter { --chapter-progress: 0; --chapter-reveal: 0; position: relative; min-height: 175svh; background: #080914; }
.cinematic-chapter-sticky { position: sticky; top: 0; height: 100svh; overflow: hidden; }
.cinematic-chapter-sticky > img { width: 100%; height: 100%; display: block; object-fit: cover; transform: scale(calc(1.08 - var(--chapter-progress) * .05)); filter: saturate(calc(.72 + var(--chapter-progress) * .28)) brightness(calc(.72 + var(--chapter-progress) * .18)); will-change: transform, filter; }
.cinematic-chapter-wash { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(6,7,15,.08), rgba(6,7,15,.12) 45%, rgba(6,7,15,.78)), linear-gradient(90deg, rgba(6,7,15,.48), transparent 66%); }
.cinematic-chapter-alt .cinematic-chapter-wash { background: linear-gradient(90deg, rgba(6,7,15,.82), rgba(6,7,15,.08) 72%), linear-gradient(180deg, transparent 55%, rgba(6,7,15,.55)); }
.cinematic-panel { position: absolute; z-index: 2; left: clamp(18px, 6vw, 86px); bottom: clamp(24px, 7vh, 72px); width: min(620px, calc(100vw - 36px)); padding: clamp(26px, 4vw, 52px); border: 1px solid rgba(255,255,255,.18); border-radius: 28px; background: linear-gradient(145deg, rgba(31,14,48,.9), rgba(9,10,23,.92)); box-shadow: 0 30px 100px rgba(0,0,0,.5); backdrop-filter: blur(18px); opacity: calc(.05 + var(--chapter-reveal) * .95); transform: translateY(calc(110px - var(--chapter-reveal) * 110px)); will-change: transform, opacity; }
.cinematic-panel-wide { left: 50%; width: min(1080px, calc(100vw - 36px)); transform: translate(-50%, calc(110px - var(--chapter-reveal) * 110px)); }
.cinematic-panel h2 { margin: 12px 0 18px; max-width: 900px; color: #fff; font: 800 clamp(3rem, 7vw, 7.2rem)/.82 var(--display); text-transform: uppercase; }
.cinematic-panel p { max-width: 590px; color: rgba(246,251,255,.78); font-size: clamp(1rem, 1.4vw, 1.18rem); line-height: 1.65; }
.cinematic-card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; max-height: 42svh; margin-top: 26px; overflow-y: auto; overscroll-behavior: contain; border: 1px solid rgba(255,255,255,.14); border-radius: 18px; background: rgba(255,255,255,.14); }
.cinematic-card-grid > div { min-height: 150px; display: grid; align-content: end; gap: 8px; padding: 22px; background: rgba(9,10,23,.82); }
.cinematic-card-grid b { color: #ef9bc9; font: 800 .75rem var(--body-font); }
.cinematic-card-grid strong { color: #fff; font: 800 1.4rem var(--display); text-transform: uppercase; }
.cinematic-card-grid p { margin: 0; font-size: .84rem; line-height: 1.45; }
.cinematic-button { display: inline-flex; align-items: center; gap: 18px; margin-top: 20px; font-size: .76rem; font-weight: 900; text-decoration: none; text-transform: uppercase; }

.faq-grid { grid-template-columns: 1fr; max-width: 980px; gap: 10px; }
.faq-grid details { border: 1px solid rgba(255,255,255,.13); border-radius: 18px; background: rgba(255,255,255,.035); overflow: hidden; }
.faq-grid summary { min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 24px; color: #fff; cursor: pointer; list-style: none; font: 800 clamp(1.2rem, 2.2vw, 1.75rem) var(--display); text-transform: uppercase; }
.faq-grid summary::-webkit-details-marker { display: none; }
.faq-grid summary b { width: 38px; height: 38px; flex: 0 0 38px; display: grid; place-items: center; border-radius: 50%; background: #ef9bc9; color: #170d1b; font: 700 1.35rem var(--body-font); transition: transform 220ms ease; }
.faq-grid details[open] summary b { transform: rotate(45deg); }
.faq-grid details p { margin: 0; padding: 0 24px 24px; max-width: 780px; color: var(--muted); line-height: 1.7; }
.faq-empty-state { display: grid; min-height: 240px; padding: 30px; place-content: center; justify-items: center; gap: 9px; border: 1px dashed rgba(99,221,255,.24); border-radius: 18px; background: rgba(8,10,23,.66); text-align: center; }
.faq-empty-state > span { color: #63ddff; font-size: .58rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.faq-empty-state > strong { color: #fff; font: 800 clamp(1.5rem,3vw,2.4rem) var(--display); text-transform: uppercase; }
.faq-empty-state p { margin: 0; color: var(--muted); line-height: 1.6; }
.faq-empty-state a { margin-top: 7px; padding: 11px 16px; border-radius: 999px; color: #11101b; background: #63ddff; font-size: .65rem; font-weight: 900; text-decoration: none; text-transform: uppercase; }

.relaunch-application-form { border-radius: 28px; background: linear-gradient(145deg, rgba(30,14,47,.9), rgba(8,11,24,.94)); box-shadow: 0 40px 110px rgba(0,0,0,.44); }
.application-panel { min-height: 410px; padding: clamp(22px, 4vw, 48px); border: 1px solid rgba(255,255,255,.1); border-radius: 22px; background: rgba(255,255,255,.025); }
.application-question { position: relative; padding: 20px; border: 1px solid rgba(255,255,255,.11); border-radius: 16px; background: rgba(4,6,16,.32); }
.application-question input, .application-question select, .application-question textarea { min-height: 56px; border: 1px solid rgba(255,255,255,.18); border-radius: 12px; background-color: #0c0d1b; padding: 15px 18px; }
.application-question textarea { min-height: 190px; resize: vertical; }
.application-question select { appearance: none; padding-right: 54px; cursor: pointer; background-image: linear-gradient(45deg, transparent 50%, #ef9bc9 50%), linear-gradient(135deg, #ef9bc9 50%, transparent 50%); background-position: calc(100% - 23px) 24px, calc(100% - 17px) 24px; background-size: 6px 6px, 6px 6px; background-repeat: no-repeat; }
.application-question input:hover, .application-question select:hover, .application-question textarea:hover { border-color: rgba(239,155,201,.6); }
.application-question input:focus, .application-question select:focus, .application-question textarea:focus { border-color: #ef9bc9; outline: 3px solid rgba(239,155,201,.15); }
.application-question.is-verified-field { border-color: rgba(114,222,255,.2); background: rgba(114,222,255,.045); }
.application-question.is-verified-field input[readonly] { color: #ccefff; border-color: rgba(114,222,255,.2); background: rgba(7,20,34,.88); cursor: not-allowed; }
.application-question > em { color: var(--cyan); font-size: .65rem; font-style: normal; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.application-actions button { min-width: 132px; min-height: 52px; border-radius: 999px; border: 1px solid rgba(255,255,255,.22); background: transparent; text-transform: uppercase; letter-spacing: .08em; }
.application-actions .application-submit, .application-actions .application-next { min-width: 168px; background: #ef9bc9; color: #170d1b; }
.application-success { width: min(880px,100%); margin: 0 auto; display: grid; justify-items: center; padding: clamp(34px,6vw,70px); border: 1px solid rgba(114,222,255,.22); border-radius: 28px; background: radial-gradient(circle at 50% 0,rgba(114,222,255,.1),transparent 40%),linear-gradient(145deg,rgba(30,14,47,.94),rgba(8,11,24,.97)); box-shadow: 0 36px 100px rgba(0,0,0,.42); text-align: center; }
.application-success-mark { width: 78px; height: 78px; display: grid; place-items: center; margin-bottom: 24px; border: 1px solid rgba(114,222,255,.5); border-radius: 50%; background: rgba(114,222,255,.1); box-shadow: 0 0 0 12px rgba(114,222,255,.04),0 0 50px rgba(114,222,255,.15); }
.application-success-mark span { color: var(--cyan); font-size: 2rem; font-weight: 900; }
.application-success h2 { margin: 12px 0 16px; color: #fff; font: 800 clamp(3rem,7vw,6.6rem)/.84 var(--display); text-transform: uppercase; }
.application-success > p { max-width: 650px; margin: 0; color: var(--muted); font-size: 1.02rem; line-height: 1.7; }
.application-request-card { width: min(560px,100%); display: grid; justify-items: center; gap: 8px; margin-top: 34px; padding: 24px; border: 1px solid rgba(239,155,201,.3); border-radius: 18px; background: rgba(7,8,18,.62); }
.application-request-card > span { color: #ef9bc9; font-size: .7rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.application-request-card strong { color: #fff; font: 800 clamp(1.8rem,5vw,3.2rem) var(--display); letter-spacing: .08em; }
.application-request-card small { color: var(--muted); }
.application-request-card button { min-height: 40px; margin-top: 8px; padding: 0 17px; border: 1px solid rgba(114,222,255,.28); border-radius: 999px; color: var(--cyan); background: rgba(114,222,255,.08); font: 800 .68rem var(--body-font); letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.application-success-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 26px; }
.application-success-actions a { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; padding: 0 22px; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; color: #fff; text-decoration: none; font-size: .76rem; font-weight: 900; text-transform: uppercase; }
.application-success-actions a:first-child { border-color: transparent; color: #170d1b; background: #ef9bc9; }

@media (max-width: 900px) {
    .hero-topline { top: 94px; }
    .hero-topline span { display: none; }
    .relaunch-hero-art .hero-backdrop { object-position: 63% center; }
    .relaunch-hero-art .hero-keyart { left: 50%; top: 38%; width: min(72vw, 430px); transform: translate(-50%, -50%); }
    .hero-info { left: 16px; right: 16px; bottom: 48px; display: block; }
    .hero-date, .hero-platforms { display: none; }
    .hero-copy { padding: 20px; }
    .hero-copy p { display: none; }
    .hero-copy h1 { font-size: clamp(2.35rem, 10vw, 4rem); }
    .hero-actions { margin-top: 16px; }
    .hero-scroll-cue span { display: none; }
    .cinematic-chapter { min-height: 150svh; }
    .cinematic-panel, .cinematic-panel-wide { left: 16px; right: 16px; bottom: 18px; width: auto; padding: 24px 20px; transform: translateY(calc(90px - var(--chapter-reveal) * 90px)); }
    .cinematic-panel h2 { font-size: clamp(2.8rem, 13vw, 5rem); }
    .cinematic-card-grid { grid-template-columns: 1fr; max-height: 42svh; overflow-y: auto; }
    .cinematic-card-grid > div { min-height: 112px; }
    .cinematic-panel p { font-size: .92rem; }
    .application-panel { min-height: 0; padding: 22px 16px; }
    .application-question { padding: 16px; }
}

* { box-sizing: border-box; }

body.aura-relaunch {
    margin: 0;
    min-height: 100vh;
    font-family: var(--body-font);
    background: var(--bg);
    color: var(--text);
    letter-spacing: 0;
}

body.aura-relaunch.is-loading { overflow: hidden; }
.relaunch-loader { position: fixed; z-index: 100; inset: 0; display: grid; place-items: center; align-content: center; gap: 18px; background: radial-gradient(circle at 50% 42%, rgba(99, 221, 255, .08), transparent 25%), radial-gradient(circle at 50% 58%, rgba(239, 155, 201, .07), transparent 30%), #090914; color: #fff; transition: opacity 360ms ease, visibility 360ms ease; }
.relaunch-loader.is-complete { opacity: 0; visibility: hidden; pointer-events: none; }
.relaunch-loader-mark { width: min(180px, 42vw); animation: relaunch-loader-pulse 1.4s ease-in-out infinite; }
.relaunch-loader-mark img { width: 100%; height: auto; display: block; mix-blend-mode: screen; }
.relaunch-loader-line { width: min(240px, 54vw); height: 2px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.12); }
.relaunch-loader-line span { display: block; width: 42%; height: 100%; background: linear-gradient(90deg, #63ddff, #ef9bc9); box-shadow: 0 0 18px rgba(99, 221, 255, .45); transform: translateX(-120%); animation: relaunch-loader-line 1.05s ease-in-out infinite; }
.relaunch-loader-label { color: rgba(255,255,255,.62); font-size: .68rem; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; }
@keyframes relaunch-loader-pulse { 0%, 100% { opacity: .55; } 50% { opacity: 1; } }
@keyframes relaunch-loader-line { 0% { transform: translateX(-120%); } 100% { transform: translateX(360%); } }

body.aura-relaunch:not(.is-ready) .relaunch-hero-art,
body.aura-relaunch:not(.is-ready) .hero-info,
body.aura-relaunch:not(.is-ready) .hero-scroll-cue { opacity: 0; }
body.aura-relaunch.is-ready .relaunch-hero-art,
body.aura-relaunch.is-ready .hero-info,
body.aura-relaunch.is-ready .hero-scroll-cue { opacity: 1; transition: opacity 520ms ease; }

.relaunch-nav {
    position: fixed;
    z-index: 20;
    top: 0;
    left: 0;
    right: 0;
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 14px clamp(18px, 5vw, 72px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(17, 17, 23, 0.62);
    backdrop-filter: blur(16px);
    transition: background 240ms ease, border-color 240ms ease, transform 240ms ease;
}

.relaunch-nav.is-scrolled { background: rgba(3, 6, 11, 0.94); border-color: rgba(114, 222, 255, 0.22); }
.relaunch-nav-progress { position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; background: #e89ac5; transform: scaleX(0); transform-origin: left center; transition: transform 120ms linear; }

.relaunch-brand,
.relaunch-nav a {
    color: var(--text);
    text-decoration: none;
}

.relaunch-brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font: 700 1rem var(--display);
    letter-spacing: .08em;
    text-transform: uppercase;
}

.relaunch-brand img { width: 34px; height: 34px; object-fit: contain; }

.relaunch-nav nav {
    position: absolute;
    z-index: 1;
    top: calc(100% + 1px);
    right: clamp(18px, 5vw, 72px);
    left: auto;
    width: min(390px, calc(100vw - 36px));
    max-height: calc(100vh - 92px);
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
    overflow-y: auto;
    padding: 66px 22px 20px;
    border: 1px solid rgba(114,222,255,.22);
    border-top: 0;
    background: rgba(17, 17, 23, .98);
    box-shadow: 0 24px 60px rgba(0,0,0,.42);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-12px);
    transition: opacity 260ms ease, transform 260ms ease;
}

.relaunch-nav nav a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 54px;
    border-bottom: 1px solid rgba(255,255,255,.1);
    color: #fff;
    font: 800 clamp(1.45rem, 4vw, 2.2rem)/.9 var(--display);
    letter-spacing: .04em;
    font-weight: 800;
    text-transform: uppercase;
}
.relaunch-nav nav > a > span { display: inline-block; margin-left: 12px; color: #e89ac5; font: 500 .85em var(--body-font); opacity: 0; transform: translateX(-8px); transition: opacity 220ms ease, transform 220ms ease; }
.relaunch-nav nav > a:hover > span, .relaunch-nav nav > a:focus-visible > span { opacity: 1; transform: translateX(0); }
.relaunch-nav-limited { display: inline-flex; min-height: 22px; margin: 0 auto 0 10px; padding: 0 9px; align-items: center; border: 1px solid rgba(239,155,201,.42); border-radius: 999px; color: #ffd6ed; background: linear-gradient(135deg,rgba(239,155,201,.2),rgba(99,221,255,.1)); box-shadow: 0 0 18px rgba(239,155,201,.12); font: 900 .55rem/1 var(--body-font); font-style: normal; letter-spacing: .12em; text-transform: uppercase; }
.relaunch-nav-limited::before { width: 6px; height: 6px; margin-right: 6px; border-radius: 50%; background: #ef9bc9; box-shadow: 0 0 9px rgba(239,155,201,.8); content: ''; }
.relaunch-nav nav a.is-active { color: #e89ac5; }
.relaunch-nav nav.is-open { z-index: 1; opacity: 1; pointer-events: auto; transform: translateY(0); }
.relaunch-menu-account { margin-top: 18px; padding-top: 4px; }
.relaunch-menu-account a { display: grid; grid-template-columns: 1fr auto auto; gap: 16px; align-items: center; min-height: 58px; border: 1px solid rgba(242,197,107,.34); padding: 0 14px; color: var(--gold); background: rgba(242,197,107,.07); }
.relaunch-menu-account a > span:first-child { color: rgba(255,255,255,.5); font: 800 .6rem var(--body-font); letter-spacing: .12em; }
.relaunch-menu-account strong { font: 800 .78rem var(--body-font); letter-spacing: .1em; text-transform: uppercase; }
.relaunch-menu-account a > span:last-child { color: var(--gold); font: 500 1rem var(--body-font); }
.relaunch-menu-footer { margin-top: 20px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.42); font-size: .65rem; font-weight: 800; letter-spacing: .15em; }
.relaunch-nav nav .relaunch-menu-join { min-height: 68px; display: flex; margin-top: 10px; padding: 0 16px; align-items: center; justify-content: space-between; border: 1px solid rgba(99,221,255,.32); border-radius: 14px; color: #07111a; background: linear-gradient(115deg,#63ddff,#8edff0 42%,#ef9bc9); box-shadow: 0 14px 34px rgba(99,221,255,.12); text-decoration: none; }
.relaunch-menu-join > span { display: grid; gap: 4px; }
.relaunch-menu-join small { color: rgba(7,17,26,.6); font: 900 .52rem var(--body-font); letter-spacing: .12em; text-transform: uppercase; }
.relaunch-menu-join strong { color: #07111a; font: 800 1.15rem var(--display); letter-spacing: .04em; text-transform: uppercase; }
.relaunch-menu-join > b { padding: 8px 11px; border: 1px solid rgba(7,17,26,.15); border-radius: 999px; background: rgba(255,255,255,.22); font: 900 .57rem var(--body-font); letter-spacing: .08em; text-transform: uppercase; transition: transform .2s ease,background .2s ease; }
.relaunch-nav nav .relaunch-menu-join:hover,.relaunch-nav nav .relaunch-menu-join:focus-visible { color: #07111a; transform: translateY(-2px); box-shadow: 0 20px 42px rgba(99,221,255,.2); outline: none; }
.relaunch-menu-join:hover > b,.relaunch-menu-join:focus-visible > b { background: rgba(255,255,255,.42); transform: translateX(2px); }
@media (hover: hover) and (pointer: fine) {
    .relaunch-menu-join > b { max-width: 0; padding-inline: 0; overflow: hidden; border-color: transparent; opacity: 0; transform: translateX(-8px); white-space: nowrap; }
    .relaunch-menu-join:hover > b,.relaunch-menu-join:focus-visible > b { max-width: 120px; padding-inline: 11px; border-color: rgba(7,17,26,.15); opacity: 1; transform: translateX(0); }
}
.relaunch-menu-toggle { position: relative; z-index: 2; display: inline-flex; align-items: center; gap: 12px; border: 0; color: #fff; background: transparent; font: 800 .68rem var(--body-font); letter-spacing: .14em; text-transform: uppercase; cursor: pointer; }
.relaunch-menu-toggle.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }
.relaunch-menu-toggle i { display: grid; gap: 5px; width: 24px; }
.relaunch-menu-toggle b { display: block; height: 2px; background: #fff; transition: transform 220ms ease, opacity 220ms ease; }
.relaunch-menu-toggle.is-open b:first-child { transform: translateY(3.5px) rotate(45deg); }
.relaunch-menu-toggle.is-open b:last-child { transform: translateY(-3.5px) rotate(-45deg); }
.menu-open { overflow: hidden; }
.relaunch-menu-close { position: absolute; top: 24px; right: clamp(18px, 5vw, 72px); display: inline-flex; align-items: center; gap: 12px; border: 0; color: #fff; background: transparent; font: 800 .68rem var(--body-font); letter-spacing: .14em; text-transform: uppercase; cursor: pointer; }
.relaunch-nav nav .relaunch-menu-close { top: 18px; right: 20px; min-height: 28px; border: 0; }
.relaunch-menu-close i { display: grid; gap: 5px; width: 24px; }
.relaunch-menu-close b { display: block; height: 2px; background: #fff; }
.relaunch-menu-close b:first-child { transform: translateY(3.5px) rotate(45deg); }
.relaunch-menu-close b:last-child { transform: translateY(-3.5px) rotate(-45deg); }

.nav-admin,
.hero-actions a,
.relaunch-form button,
.community-cta,
.maintenance-panel a,
.preview-ribbon a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 18px;
    border: 1px solid rgba(114, 222, 255, 0.3);
    background: rgba(114, 222, 255, 0.11);
    color: #f9fdff;
    font-weight: 900;
    text-decoration: none;
}

.relaunch-hero {
    position: relative;
    min-height: 100svh;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto auto;
    gap: 20px;
    padding: 105px clamp(20px, 6vw, 86px) 42px;
    overflow: hidden;
    background: #111323;
}

.relaunch-hero::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 50% 16%, rgba(196, 112, 174, .12), transparent 34%), linear-gradient(180deg, transparent 42%, #111323 100%); pointer-events: none; }
.hero-topline, .hero-info, .hero-scroll-cue { position: relative; z-index: 2; }
.hero-topline { display: flex; align-items: center; justify-content: space-between; color: rgba(255,255,255,.76); font-size: .7rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.hero-topline strong { color: #fff; font: 800 1.45rem var(--display); letter-spacing: .02em; }
.relaunch-hero-art { position: relative; z-index: 1; width: min(62vh, 650px, 82vw); aspect-ratio: 1; height: auto; justify-self: center; align-self: center; border: 10px solid #28103f; box-shadow: 0 0 0 2px rgba(255,255,255,.06), 0 30px 100px rgba(0,0,0,.48); transform: perspective(1200px) rotateX(var(--hero-tilt, 0deg)) rotateY(var(--hero-pan, 0deg)); transition: transform 140ms ease-out; }
.relaunch-hero-art::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5,7,11,.05), rgba(5,7,11,.36)), linear-gradient(90deg, rgba(255,83,182,.08), transparent 45%, rgba(80,220,255,.1)); pointer-events: none; }
.relaunch-hero-art img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; filter: saturate(1.06) contrast(1.02); }
.hero-art-mark { position: absolute; inset: 0; z-index: 1; display: grid; place-items: center; color: rgba(255,255,255,.9); font: 800 clamp(3.5rem, 12vw, 9rem)/.8 var(--display); letter-spacing: .02em; text-shadow: 0 4px 30px rgba(0,0,0,.55); mix-blend-mode: screen; }
.hero-info { display: grid; grid-template-columns: 160px minmax(0, 1fr) 210px; gap: 28px; align-items: end; }
.hero-copy { max-width: 820px; }
.hero-date { display: grid; gap: 8px; align-self: end; color: #fff; text-transform: uppercase; }
.hero-date span { color: #e89ac5; font-size: .75rem; font-weight: 900; letter-spacing: .14em; }
.hero-date strong { font: 800 1.15rem/1.2 var(--display); letter-spacing: .04em; }
.hero-platforms { display: grid; gap: 10px; align-self: end; color: rgba(255,255,255,.58); text-align: right; text-transform: uppercase; }
.hero-platforms span { font-size: .65rem; font-weight: 800; letter-spacing: .1em; }
.hero-platforms strong { color: #fff; font: 800 1rem/1.35 var(--display); letter-spacing: .04em; }
.hero-scroll-cue { display: flex; align-items: center; justify-content: center; gap: 12px; color: rgba(255,255,255,.65); font-size: .7rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.hero-scroll-cue i { width: 16px; height: 16px; display: block; border-right: 2px solid #e89ac5; border-bottom: 2px solid #e89ac5; transform: rotate(45deg) translateY(-4px); animation: relaunch-scroll-cue 1.8s ease-in-out infinite; }
@keyframes relaunch-scroll-cue { 0%, 100% { opacity: .45; transform: rotate(45deg) translateY(-4px); } 50% { opacity: 1; transform: rotate(45deg) translateY(3px); } }

.relaunch-kicker,
.page-hero span,
.section-head span,
.maintenance-panel span {
    display: inline-flex;
    color: var(--cyan);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.hero-copy h1,
.page-hero h1 {
    margin: 16px 0;
    font-family: var(--display);
    font-size: clamp(2.5rem, 6vw, 6.5rem);
    line-height: 0.92;
    letter-spacing: 0;
}

.hero-copy p,
.page-hero p {
    max-width: 710px;
    color: #d8e1ec;
    font-size: clamp(1.02rem, 2vw, 1.28rem);
    line-height: 1.7;
}

.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }

.hero-actions a:first-child,
.relaunch-form button {
    background: linear-gradient(135deg, #72deff, #f2c56b);
    color: #061018;
    border-color: transparent;
}

.hero-status,
.feature-grid article,
.faq-grid article,
.player-card,
.profile-panel,
.relaunch-form,
.status-list article,
.media-tile {
    border: 1px solid var(--line);
    background: linear-gradient(180deg, rgba(13, 23, 36, 0.88), rgba(7, 11, 18, 0.78));
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.28);
}

.hero-status { padding: 28px; }
.hero-status span { color: var(--gold); font-weight: 900; text-transform: uppercase; }
.hero-status strong { display: block; margin: 12px 0; font-size: 1.35rem; }

.hero-status small,
.feature-grid p,
.faq-grid p,
.player-card small,
.profile-panel p,
.status-list small,
.media-tile span,
.relaunch-footer span {
    color: var(--muted);
    line-height: 1.65;
}

.relaunch-band,
.relaunch-page {
    padding: 84px clamp(20px, 6vw, 86px);
}

.relaunch-page { padding-top: 150px; }
.flush-band { padding-left: 0; padding-right: 0; }

.section-head,
.page-hero {
    max-width: 900px;
    margin-bottom: 34px;
}

.section-head h2,
.split-band h2 {
    margin: 10px 0 0;
    font-family: var(--display);
    font-size: clamp(2rem, 4vw, 4rem);
}

.feature-grid,
.faq-grid,
.roster-grid,
.media-grid,
.status-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.feature-grid article,
.faq-grid article,
.player-card,
.status-list article { padding: 26px; }

.feature-grid strong { color: var(--gold); font-size: 0.86rem; }

.feature-grid h3,
.faq-grid h3,
.player-card strong,
.status-list strong {
    display: block;
    margin: 10px 0;
    color: #fff;
    font-size: 1.25rem;
}

.feature-grid article { min-height: 220px; display: flex; flex-direction: column; justify-content: flex-end; position: relative; overflow: hidden; transition: transform 260ms ease, border-color 260ms ease, background 260ms ease; }
.feature-grid article::before { content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(114,222,255,.07), transparent 55%); opacity: 0; transition: opacity 260ms ease; pointer-events: none; }
.feature-grid article:hover { transform: translateY(-6px); border-color: rgba(114,222,255,.4); background: linear-gradient(180deg, rgba(18, 36, 53, .95), rgba(7, 11, 18, .86)); }
.feature-grid article:hover::before { opacity: 1; }
.city-story-band { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr); gap: clamp(28px, 6vw, 80px); align-items: center; padding-top: 22px; }
.city-story-image { position: relative; min-height: 480px; overflow: hidden; border: 1px solid rgba(255,255,255,.13); background: #111323; box-shadow: 0 26px 80px rgba(0,0,0,.34); }
.city-story-image::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, rgba(5,7,11,.84)); pointer-events: none; }
.city-story-image img { width: 100%; height: 100%; min-height: 480px; display: block; object-fit: cover; transition: transform 900ms cubic-bezier(.2,.8,.2,1); }
.city-story-band.is-visible .city-story-image img { transform: scale(1.04); }
.city-story-image span { position: absolute; z-index: 1; left: 22px; bottom: 20px; color: rgba(255,255,255,.74); font-size: .7rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.city-story-copy { max-width: 480px; }
.city-story-copy h2 { margin: 12px 0 18px; color: #fff; font: 700 clamp(2.5rem, 5vw, 5.3rem)/.9 var(--display); text-transform: uppercase; }
.city-story-copy p { max-width: 420px; color: var(--muted); font-size: 1.05rem; line-height: 1.8; }
.city-story-copy .text-link { margin-top: 18px; }
.feature-timeline { position: relative; max-width: 1120px; margin: 12px auto 0; padding: 22px 0 60px; }
.feature-timeline::before { content: ''; position: absolute; top: 0; bottom: 0; left: 38px; width: 1px; background: linear-gradient(var(--cyan), rgba(114,222,255,.12) 85%, transparent); }
.feature-timeline-item { position: relative; display: grid; grid-template-columns: 76px minmax(260px, .9fr) minmax(0, 1.1fr); gap: 26px; align-items: center; min-height: 310px; padding: 34px 0; opacity: 0; transform: translateY(28px); transition: opacity 720ms ease, transform 720ms cubic-bezier(.2,.8,.2,1); }
.feature-timeline-item.is-visible { opacity: 1; transform: translateY(0); transition-delay: calc(var(--feature-index, 0) * 100ms); }
.feature-timeline-marker { position: relative; z-index: 1; width: 76px; height: 76px; display: grid; place-items: center; border: 1px solid rgba(114,222,255,.58); border-radius: 50%; background: #07101a; color: var(--gold); font: 800 1rem var(--display); box-shadow: 0 0 0 9px rgba(7,16,26,.9), 0 0 30px rgba(114,222,255,.12); }
.feature-timeline-image { min-height: 260px; background: center / cover no-repeat; border: 1px solid var(--line); box-shadow: 0 20px 60px rgba(0,0,0,.3); transition: transform 700ms cubic-bezier(.2,.8,.2,1), filter 700ms ease; filter: saturate(.86); }
.feature-timeline-item:hover .feature-timeline-image { transform: scale(1.025); filter: saturate(1.08); }
.feature-timeline-copy > span { color: var(--cyan); font-size: .72rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.feature-timeline-copy h2 { margin: 10px 0 16px; color: #fff; font: 800 clamp(2.2rem, 4vw, 4.7rem)/.9 var(--display); text-transform: uppercase; }
.feature-timeline-copy p { max-width: 460px; color: var(--muted); font-size: 1rem; line-height: 1.75; }
.application-hero { max-width: 850px; }
.relaunch-application-form { display: block; max-width: 1080px; padding: clamp(22px, 4vw, 42px); }
.relaunch-application-gate { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 24px; align-items: start; max-width: 860px; margin: 0 auto; padding: clamp(26px, 5vw, 56px); border: 1px solid rgba(114,222,255,.24); background: linear-gradient(135deg, rgba(114,222,255,.1), rgba(255,255,255,.025)); }
.relaunch-application-gate-mark { color: var(--cyan); font: 800 clamp(2.8rem, 8vw, 5rem)/.8 var(--display); }
.relaunch-application-gate h2 { max-width: 650px; margin: 8px 0 12px; color: #fff; font: 800 clamp(2rem, 5vw, 4.4rem)/.9 var(--display); text-transform: uppercase; }
.relaunch-application-gate p { max-width: 620px; color: var(--muted); line-height: 1.7; }
.application-gate-action { display: inline-flex; gap: 16px; align-items: center; margin-top: 26px; padding: 14px 18px; color: #061018; background: linear-gradient(135deg, var(--cyan), var(--gold)); font: 800 .75rem var(--body-font); letter-spacing: .08em; text-transform: uppercase; }
.relaunch-application-identity { display: flex; align-items: center; gap: 14px; margin-bottom: 30px; padding: 12px; border: 1px solid rgba(255,255,255,.13); background: rgba(255,255,255,.035); }
.relaunch-application-identity img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; border: 2px solid var(--cyan); }
.relaunch-application-identity div { display: grid; gap: 2px; min-width: 0; }
.relaunch-application-identity span, .relaunch-application-identity small { color: var(--muted); font-size: .7rem; }
.relaunch-application-identity strong { color: #fff; font-size: .95rem; }
.relaunch-application-identity > b { margin-left: auto; color: var(--cyan); font: 800 .65rem var(--body-font); letter-spacing: .1em; text-transform: uppercase; }
.application-progress { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-bottom: 48px; }
.application-progress-line { position: absolute; left: 8%; right: 8%; top: 19px; height: 1px; background: rgba(255,255,255,.14); }
.application-progress-line span { display: block; width: 0; height: 100%; background: var(--cyan); transition: width 450ms cubic-bezier(.2,.8,.2,1); }
.application-step { position: relative; z-index: 1; display: grid; justify-items: center; gap: 8px; color: rgba(255,255,255,.4); font-size: .65rem; font-weight: 800; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.application-step b { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; background: #07101a; color: inherit; font: 700 .78rem var(--display); }
.application-step.is-current { color: #fff; }
.application-step.is-current b { border-color: var(--cyan); color: var(--cyan); box-shadow: 0 0 0 6px rgba(114,222,255,.08); }
.application-panel { display: none; max-width: 880px; margin: 0 auto; animation: application-panel-in 480ms cubic-bezier(.2,.8,.2,1); }
.application-panel.is-active { display: block; }
@keyframes application-panel-in { from { opacity: 0; transform: translateX(18px); } to { opacity: 1; transform: translateX(0); } }
.application-panel-index { color: var(--cyan); font-size: .72rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.application-panel h2 { margin: 10px 0 8px; color: #fff; font: 800 clamp(2.3rem, 5vw, 4.8rem)/.9 var(--display); text-transform: uppercase; }
.application-panel > p { max-width: 660px; color: var(--muted); line-height: 1.7; }
.application-question-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 32px; }
.application-question { display: grid; align-content: start; gap: 8px; }
.application-question.wide { grid-column: 1 / -1; }
.application-question > span { color: #fff; font-size: .9rem; font-weight: 800; }
.application-question > small { color: var(--muted); line-height: 1.45; }
.application-question input, .application-question select, .application-question textarea { width: 100%; margin-top: 4px; border: 1px solid var(--line); background: rgba(0,0,0,.24); color: #fff; padding: 14px; font: inherit; }
.application-question input:focus, .application-question select:focus, .application-question textarea:focus { border-color: var(--cyan); outline: 2px solid rgba(114,222,255,.16); }
.application-actions { display: flex; justify-content: space-between; gap: 12px; margin-top: 38px; }
.application-actions button { min-height: 46px; padding: 0 20px; border: 1px solid rgba(114,222,255,.36); color: #fff; background: rgba(114,222,255,.1); font: 800 .76rem var(--body-font); cursor: pointer; }
.application-actions .application-submit, .application-actions .application-next { border-color: transparent; color: #061018; background: linear-gradient(135deg, var(--cyan), var(--gold)); }
.application-actions button[hidden] { display: none; }
.application-review-list { display: grid; gap: 10px; margin-top: 28px; }
.application-review-item { display: grid; gap: 6px; padding: 15px 16px; border-left: 2px solid var(--cyan); background: rgba(114,222,255,.06); }
.application-review-item span { color: var(--cyan); font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.application-review-item strong { color: #fff; line-height: 1.6; white-space: pre-wrap; }
.launch-roadmap .section-head { max-width: 760px; }
.launch-roadmap .section-head p { max-width: 620px; color: var(--muted); font-size: 1.02rem; line-height: 1.7; }
.roadmap-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin-top: 36px; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.12); }
.roadmap-grid article { min-height: 220px; display: grid; align-content: space-between; gap: 20px; padding: 24px; background: #0b121c; transition: background 260ms ease, transform 260ms ease; }
.roadmap-grid article:hover { position: relative; z-index: 1; background: #111e2d; transform: translateY(-5px); }
.roadmap-grid article > span { color: var(--gold); font: 800 .8rem var(--display); }
.roadmap-grid strong { color: #fff; font: 800 clamp(1.7rem, 3vw, 2.8rem) var(--display); text-transform: uppercase; }
.roadmap-grid p { margin: 0; color: var(--muted); line-height: 1.65; }
.launch-roadmap-actions { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 24px; }

.split-band {
    display: grid;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
    gap: 30px;
    align-items: start;
}

.mini-roster { display: grid; gap: 12px; }

.mini-roster a {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 20px;
    color: #fff;
    text-decoration: none;
    border: 1px solid var(--line);
    background: rgba(255, 255, 255, 0.04);
    transition: transform 220ms ease, border-color 220ms ease, background 220ms ease;
}

.mini-roster a:hover { transform: translateX(8px); border-color: var(--cyan); background: rgba(114, 222, 255, 0.08); }
.mini-roster-card { align-items: center; }
.mini-roster-index { color: var(--gold); font: 800 0.74rem var(--display); }
.mini-roster-card strong { flex: 1; }

.player-card { height: 100%; color: #fff; text-decoration: none; padding: 0; overflow: hidden; border: 1px solid var(--line); background: rgba(10, 17, 27, 0.78); transition: transform 300ms cubic-bezier(.2,.8,.2,1), border-color 300ms ease, box-shadow 300ms ease; }
.player-card:hover, .player-card:focus-visible { transform: translateY(-8px); border-color: rgba(114, 222, 255, 0.72); box-shadow: 0 22px 64px rgba(0, 0, 0, 0.42); outline: none; }
.player-card-reveal-trigger { display: block; width: 100%; padding: 0; border: 0; color: inherit; background: transparent; text-align: left; cursor: pointer; }
.player-card-reveal-trigger:focus-visible { outline: 2px solid var(--cyan); outline-offset: -3px; }
.player-card-media { position: relative; width: 100%; height: clamp(320px, 30vw, 390px); min-height: 0; overflow: hidden; background: linear-gradient(145deg, rgba(114, 222, 255, 0.15), rgba(242, 197, 107, 0.06)); }
.player-card-media::before { content: ''; position: absolute; z-index: 5; inset: 0; background: linear-gradient(115deg, transparent 28%, rgba(255,255,255,.42) 48%, transparent 68%); transform: translateX(-140%); pointer-events: none; opacity: 0; }
.player-card-logo-placeholder { position: absolute; inset: 0; display: grid; place-items: center; opacity: .24; }
.player-card-logo-placeholder img { width: 96px; height: 96px; object-fit: contain; filter: grayscale(1) brightness(2); mix-blend-mode: screen; }
.player-card-topline { position: absolute; z-index: 4; top: 14px; left: 14px; right: auto; display: flex; justify-content: flex-start; align-items: center; color: rgba(255,255,255,.74); font: 800 .62rem var(--body-font); letter-spacing: .14em; text-transform: uppercase; }
.player-card-logo { width: 28px; height: 28px; min-height: 0; display: block; object-fit: contain; filter: drop-shadow(0 4px 12px rgba(0,0,0,.5)); mix-blend-mode: screen; opacity: .9; transform: none; }
.player-card-media::after { content: ''; position: absolute; inset: 42% 0 0; background: linear-gradient(transparent, rgba(3, 6, 11, 0.92)); pointer-events: none; }
.player-card-media > img { position: absolute; inset: 0; width: 100%; height: 100%; min-width: 100%; min-height: 0; display: block; object-fit: cover; object-position: center; filter: blur(18px) saturate(.2); opacity: .16; transform: scale(1.14); transition: transform 900ms cubic-bezier(.2,.8,.2,1), filter 900ms ease, opacity 700ms ease; }
.player-card-media .player-card-logo-placeholder img { width: 96px; height: 96px; min-height: 0; object-fit: contain; }
.player-card-sealed .player-card-logo-placeholder { filter: blur(2px); opacity: .24; transform: scale(.82); transition: filter 700ms ease, opacity 700ms ease, transform 700ms cubic-bezier(.2,.8,.2,1); }
.player-card-unavailable {
    position: absolute;
    z-index: 2;
    inset: 0;
    display: grid;
    padding: 30px;
    place-content: center;
    justify-items: center;
    color: #fff;
    text-align: center;
    opacity: 0;
    transform: translateY(12px);
    pointer-events: none;
    transition: opacity 520ms ease 160ms, transform 620ms cubic-bezier(.2,.8,.2,1) 120ms;
}
.player-card-unavailable::before {
    position: absolute;
    inset: 17% 9%;
    content: '';
    border: 1px solid rgba(99,221,255,.16);
    border-radius: 28px;
    background:
        radial-gradient(circle at 50% 24%, rgba(99,221,255,.18), transparent 42%),
        linear-gradient(180deg, rgba(10,15,29,.24), rgba(8,10,22,.58));
    box-shadow: inset 0 1px rgba(255,255,255,.05), 0 24px 70px rgba(0,0,0,.24);
    backdrop-filter: blur(3px);
}
.player-card-unavailable img {
    position: relative;
    width: 178px;
    height: 144px;
    min-height: 0;
    margin: -27px 0 -5px;
    object-fit: contain;
    filter: drop-shadow(0 0 30px rgba(99,221,255,.34));
}
.player-card-unavailable strong {
    position: relative;
    max-width: 270px;
    font: 900 clamp(1.48rem,2.2vw,1.78rem)/.92 'Barlow Condensed',sans-serif;
    letter-spacing: .025em;
    text-shadow: 0 6px 22px rgba(0,0,0,.66);
    text-transform: uppercase;
}
.player-card-unavailable span {
    position: relative;
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 12px;
    color: #82e5ff;
    font-size: .67rem;
    font-weight: 900;
    letter-spacing: .21em;
    text-shadow: 0 3px 16px rgba(0,0,0,.8);
    text-transform: uppercase;
}
.player-card-unavailable span::before,
.player-card-unavailable span::after {
    width: 21px;
    height: 1px;
    content: '';
    background: linear-gradient(90deg, transparent, rgba(99,221,255,.7));
}
.player-card-unavailable span::after { transform: scaleX(-1); }
.player-card-seal { position: absolute; z-index: 3; inset: 0; display: grid; place-items: center; align-content: center; gap: 10px; color: #fff; pointer-events: none; transition: opacity 380ms ease, transform 600ms cubic-bezier(.2,.8,.2,1); }
.player-card-seal b { width: 58px; height: 58px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; color: #fff; font: 700 2rem var(--display); background: rgba(5,7,11,.5); box-shadow: 0 0 0 9px rgba(255,255,255,.05), 0 12px 40px rgba(0,0,0,.4); }
.player-card-seal small { font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.player-card.is-revealed .player-card-media > img { filter: blur(0) saturate(1.08); opacity: 1; transform: scale(1.02); }
.player-card.is-revealed .player-card-unavailable { opacity: 1; transform: translateY(0); }
.player-card.is-revealed .player-card-sealed .player-card-logo-placeholder { filter: blur(8px); opacity: 0; transform: scale(1.18); }
.player-card.is-revealed .player-card-seal { opacity: 0; transform: scale(1.24); }
.player-card.is-revealed .player-card-media::before { animation: player-card-reveal-sweep 760ms cubic-bezier(.2,.8,.2,1) both; }
.player-card.is-revealed:hover .player-card-media > img, .player-card.is-revealed:focus-within .player-card-media > img { transform: scale(1.06); filter: saturate(1.1) contrast(1.04); }
.player-card-reveal { display: none; }
.player-card-copy { position: relative; z-index: 2; display: grid; gap: 6px; padding: 20px 22px 24px; }
.player-card-copy-revealed { display: none; }
.player-card.is-revealed .player-card-copy-sealed { display: none; }
.player-card.is-revealed .player-card-copy-revealed { display: grid; animation: player-card-copy-in 520ms cubic-bezier(.2,.8,.2,1) both; }
@keyframes player-card-copy-in { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes player-card-reveal-sweep { 0% { opacity: 0; transform: translateX(-140%); } 18% { opacity: 1; } 100% { opacity: 0; transform: translateX(140%); } }
.player-card-copy-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.player-card-copy-head > span { color: rgba(255,255,255,.32); font: 800 .7rem var(--display); letter-spacing: .12em; }
.player-card-copy small, .player-card-copy em { color: var(--cyan); font-size: .7rem; font-style: normal; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.player-card-copy strong { margin: 0; font-family: var(--display); font-size: 1.5rem; letter-spacing: .02em; }
.player-card-copy span { color: #fff; font-size: 1rem; }
.player-card-copy em { color: var(--muted); font-size: .72rem; }
.player-card-profile { display: flex; justify-content: space-between; gap: 12px; max-height: 0; overflow: hidden; padding: 0 22px; color: var(--gold); font-size: .74rem; font-weight: 800; text-decoration: none; opacity: 0; transition: max-height 420ms ease, padding 420ms ease, opacity 420ms ease; }
.player-card.is-revealed .player-card-profile { max-height: 60px; padding: 0 22px 22px; opacity: 1; }
.roster-hero { max-width: 1100px; }
.roster-collection { max-width: 1240px; padding-top: 14px; }
.roster-collection-head { display: flex; align-items: end; justify-content: space-between; gap: 32px; margin-bottom: 32px; }
.roster-collection-head h2 { margin: 10px 0 0; color: #fff; font: 800 clamp(2.2rem, 5vw, 4.4rem)/.9 var(--display); text-transform: uppercase; }
.roster-collection-head p { max-width: 380px; margin: 0; color: var(--muted); line-height: 1.65; }
.roster-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; align-items: stretch; }
.roster-toolbar { display: flex; align-items: end; gap: 20px; margin-top: 38px; }
.roster-search { display: grid; gap: 8px; width: min(460px, 100%); }
.roster-search span { color: var(--cyan); font-size: .72rem; font-weight: 800; text-transform: uppercase; }
.roster-search input { width: 100%; padding: 15px 16px; border: 1px solid var(--line); background: rgba(0,0,0,.28); color: #fff; font: inherit; }
.roster-search input:focus { border-color: var(--cyan); outline: 2px solid rgba(114,222,255,.18); }
.roster-count { color: var(--gold); font-size: .78rem; font-weight: 800; text-transform: uppercase; }
.roster-empty { grid-column: 1 / -1; padding: 40px 0; color: var(--muted); }
.reveal-card { opacity: 0; transform: translateY(20px); }
.reveal-card.is-visible { opacity: 1; transform: translateY(0); transition-delay: calc(var(--card-index, 0) * 45ms); }
.reveal-card[hidden] { display: none; }
.relaunch-band,
.page-hero,
.profile-panel,
.media-tile,
.feature-grid article,
.roadmap-grid article,
.faq-grid article,
.status-list article,
.city-story-band { opacity: 0; transform: translateY(28px); transition: opacity 700ms ease, transform 700ms cubic-bezier(.2,.8,.2,1); }
.relaunch-band.is-visible,
.page-hero.is-visible,
.profile-panel.is-visible,
.media-tile.is-visible,
.feature-grid article.is-visible,
.roadmap-grid article.is-visible,
.faq-grid article.is-visible,
.status-list article.is-visible,
.city-story-band.is-visible { opacity: 1; transform: translateY(0); }
.feature-grid article.is-visible:nth-child(2), .faq-grid article.is-visible:nth-child(2) { transition-delay: 80ms; }
.feature-grid article.is-visible:nth-child(3), .faq-grid article.is-visible:nth-child(3) { transition-delay: 160ms; }
.roadmap-grid article.is-visible:nth-child(2) { transition-delay: 80ms; }
.roadmap-grid article.is-visible:nth-child(3) { transition-delay: 160ms; }

.player-avatar {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    margin-bottom: 18px;
    border: 1px solid rgba(114, 222, 255, 0.28);
    background: rgba(114, 222, 255, 0.1);
    color: var(--cyan);
    font-weight: 900;
    font-size: 1.4rem;
}

.player-avatar.large {
    width: 132px;
    height: 132px;
    font-size: 4rem;
    margin: 0;
}

.profile-panel {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 34px;
    max-width: 920px;
    padding: 38px;
}

.profile-panel h1 {
    margin: 8px 0 2px;
    font-family: var(--display);
    font-size: clamp(2.2rem, 6vw, 5rem);
}

.profile-panel h2 { margin: 0 0 18px; color: var(--gold); }
.profile-media { min-height: 360px; width: 280px; overflow: hidden; background: rgba(114,222,255,.08); }
.profile-media img { width: 100%; height: 100%; min-height: 360px; object-fit: cover; display: block; }
.profile-copy { align-self: end; }
.profile-role { color: var(--cyan) !important; font-weight: 800; text-transform: uppercase; font-size: .76rem; }
.text-link { display: inline-flex; gap: 8px; margin-top: 14px; color: var(--gold); font-weight: 800; text-decoration: none; }

.relaunch-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    max-width: 980px;
    padding: 28px;
}

.relaunch-form label,
.relaunch-form span { display: grid; gap: 8px; }

.relaunch-form label span {
    color: var(--cyan);
    font-size: 0.76rem;
    font-weight: 900;
    text-transform: uppercase;
}

.relaunch-form input,
.relaunch-form select,
.relaunch-form textarea {
    width: 100%;
    border: 1px solid var(--line);
    background: rgba(0, 0, 0, 0.28);
    color: #fff;
    padding: 14px;
    font: inherit;
}

.relaunch-form .wide,
.relaunch-form button { grid-column: 1 / -1; }

.media-tile {
    min-height: 260px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 24px;
    background-size: cover;
    background-position: center;
}

.media-tile.hero-tile { grid-column: span 2; min-height: 420px; }
.media-tile.city-night-tile { min-height: 420px; }
.media-tile strong { font-size: 1.4rem; }

.preview-ribbon {
    position: fixed;
    z-index: 30;
    left: 50%;
    bottom: 22px;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 10px 12px 10px 18px;
    border: 1px solid rgba(242, 197, 107, 0.35);
    background: rgba(8, 12, 18, 0.92);
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.42);
}

.relaunch-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 28px clamp(20px, 6vw, 86px);
    border-top: 1px solid var(--line);
}

.relaunch-footer-brand {
    display: grid;
    gap: 5px;
}

.relaunch-footer-brand strong {
    font: 800 clamp(1rem, 1.5vw, 1.3rem)/1 var(--display);
    letter-spacing: .04em;
    text-transform: uppercase;
}

.relaunch-footer-brand span {
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.relaunch-footer-socials {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.relaunch-footer-socials a {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    min-width: 132px;
    min-height: 44px;
    gap: 24px;
    padding: 0 15px;
    border: 1px solid rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .035);
    color: #fff;
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-decoration: none;
    text-transform: uppercase;
    transition: border-color .2s ease, background .2s ease, transform .2s ease;
}

.relaunch-footer-socials a:hover,
.relaunch-footer-socials a:focus-visible {
    border-color: rgba(99, 221, 255, .6);
    background: rgba(99, 221, 255, .08);
    transform: translateY(-2px);
}

.relaunch-footer-socials span {
    color: #fff;
    line-height: 1;
}

.relaunch-footer-socials b {
    color: #63ddff;
    font-size: 1rem;
}

.relaunch-footer-socials a:last-child b {
    color: #ef9bc9;
}

.maintenance-body { display: grid; place-items: center; padding: 28px; }

.maintenance-panel {
    width: min(680px, 100%);
    padding: 42px;
    text-align: center;
    border: 1px solid var(--line);
    background: var(--panel);
}

.maintenance-panel img { width: 120px; margin-bottom: 22px; }

.maintenance-panel h1 {
    margin: 12px 0;
    font-family: var(--display);
    font-size: clamp(2.2rem, 7vw, 4.5rem);
}

.relaunch-roster-edit { width: 100%; display: grid; gap: 16px; }
.relaunch-roster-edit-head { display: flex; align-items: center; gap: 12px; }
.relaunch-roster-edit-head img, .relaunch-roster-edit-placeholder { width: 48px; height: 58px; flex: 0 0 48px; object-fit: cover; display: grid; place-items: center; border: 1px solid rgba(114,222,255,.28); background: rgba(114,222,255,.1); color: var(--cyan); font-weight: 900; }
.relaunch-roster-edit-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.relaunch-roster-edit-grid label { display: grid; gap: 6px; }
.relaunch-roster-edit-grid label span { color: var(--cyan); font-size: .68rem; font-weight: 800; text-transform: uppercase; }
.relaunch-roster-edit-grid input, .relaunch-roster-edit-grid textarea { width: 100%; padding: 10px; border: 1px solid var(--line); background: rgba(0,0,0,.2); color: #fff; font: inherit; }
.relaunch-roster-edit-grid .wide { grid-column: 1 / -1; }

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
    .reveal-card { opacity: 1; transform: none; }
    .relaunch-band, .page-hero, .profile-panel, .media-tile, .feature-grid article, .roadmap-grid article, .faq-grid article, .status-list article, .city-story-band, .feature-timeline-item { opacity: 1; transform: none; }
    body.aura-relaunch:not(.is-ready) .relaunch-hero-art,
    body.aura-relaunch:not(.is-ready) .hero-info,
    body.aura-relaunch:not(.is-ready) .hero-scroll-cue { opacity: 1; }
}

@media (max-width: 900px) {
    .relaunch-nav {
        position: fixed;
        flex-wrap: wrap;
    }

    .relaunch-nav nav {
        position: absolute;
        top: calc(100% + 1px);
        right: 18px;
        left: auto;
        width: min(400px, calc(100vw - 36px));
        max-height: calc(100svh - 92px);
        order: initial;
        overflow-y: auto;
        padding: 66px 22px 20px;
    }

    .relaunch-hero,
    .split-band,
    .profile-panel,
    .relaunch-form {
        grid-template-columns: 1fr;
    }

    .relaunch-hero { min-height: 100svh; grid-template-rows: auto minmax(300px, 1fr) auto auto; padding-top: 96px; }
    .relaunch-hero-art { width: min(100%, 620px); height: auto; aspect-ratio: 1; border-width: 7px; }
    .hero-info { grid-template-columns: 1fr 1fr; gap: 18px; }
    .hero-copy { grid-column: 1 / -1; grid-row: 1; }
    .hero-date { grid-column: 1; grid-row: 2; }
    .hero-platforms { grid-column: 2; grid-row: 2; }
    .hero-copy h1 { font-size: clamp(2.2rem, 10vw, 4.2rem); }
    .hero-scroll-cue { font-size: .6rem; }
    .city-story-band { grid-template-columns: 1fr; }
    .city-story-image, .city-story-image img { min-height: 360px; }
    .roadmap-grid { grid-template-columns: 1fr; }
    .feature-timeline::before { left: 23px; }
    .feature-timeline-item { grid-template-columns: 46px 1fr; gap: 16px; min-height: 0; padding: 24px 0 34px; }
    .feature-timeline-marker { width: 46px; height: 46px; font-size: .8rem; }
    .feature-timeline-image, .feature-timeline-copy { grid-column: 2; }
    .feature-timeline-image { min-height: 220px; }
    .feature-timeline-copy h2 { font-size: 2.7rem; }
    .application-progress { gap: 2px; margin-bottom: 34px; }
    .application-step span { max-width: 70px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .application-question-grid { grid-template-columns: 1fr; }
    .application-question.wide { grid-column: auto; }
    .relaunch-application-gate { grid-template-columns: 1fr; gap: 18px; }
    .relaunch-application-identity { align-items: flex-start; flex-wrap: wrap; }
    .relaunch-application-identity > b { width: 100%; margin-left: 66px; }

    .roster-toolbar { align-items: stretch; flex-direction: column; }
    .roster-collection-head { align-items: start; flex-direction: column; }
    .profile-media { width: 100%; }
    .relaunch-roster-edit-grid { grid-template-columns: 1fr; }
    .relaunch-roster-edit-grid .wide { grid-column: auto; }

    .roster-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

    .feature-grid,
    .faq-grid,
    .roster-grid,
    .media-grid,
    .status-list {
        grid-template-columns: 1fr;
    }

    .media-tile.hero-tile { grid-column: span 1; }
}

/* Keep the cinematic layer last so legacy relaunch rules cannot override it. */
body.aura-relaunch { background: #080914; }
body.aura-relaunch main { overflow: clip; }
.relaunch-nav { min-height: 88px; padding-inline: clamp(22px,4vw,56px); border: 0; background: linear-gradient(180deg,rgba(6,7,15,.7),transparent); backdrop-filter: none; }
.relaunch-nav.is-scrolled { background: rgba(8,9,20,.76); border-color: transparent; backdrop-filter: blur(18px); }
.relaunch-brand span { display: none; }
.relaunch-brand img { width: 48px; height: 48px; }
.relaunch-menu-toggle { min-width: 48px; min-height: 48px; justify-content: center; padding: 0; border-radius: 50%; background: rgba(8,9,20,.54); }
.relaunch-menu-toggle > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.relaunch-menu-toggle i { width: 26px; gap: 7px; }
.relaunch-menu-toggle b { height: 3px; border-radius: 3px; }
.relaunch-nav nav { position: fixed; top: 0; right: 0; left: auto; width: min(520px,100vw); max-height: none; height: 100svh; padding: 112px clamp(28px,5vw,62px) 34px; border: 0; background: linear-gradient(145deg,rgba(25,12,42,.985),rgba(8,9,20,.99) 62%); transform: translateX(100%); opacity: 1; }
.relaunch-nav nav.is-open { transform: translateX(0); }
.relaunch-nav nav a { min-height: 64px; font-size: clamp(2rem,5vh,3.8rem); }
.relaunch-hero { min-height: 100svh; padding: 0; display: block; background: #090a16; }
.relaunch-hero::before { z-index: 1; background: linear-gradient(180deg,rgba(7,8,18,.18),rgba(7,8,18,.02) 45%,rgba(7,8,18,.92)); }
.hero-topline { position: absolute; z-index: 4; top: 104px; left: clamp(22px,5vw,72px); right: clamp(22px,5vw,72px); }
.relaunch-hero-art { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; border: 0; box-shadow: none; transform: none; transition: none; }
.relaunch-hero-art .hero-backdrop { width: 100%; height: 100%; object-fit: cover; object-position: 52% center; }
.relaunch-hero-art .hero-keyart { position: absolute; z-index: 2; left: clamp(22px,6vw,92px); top: 50%; width: clamp(250px,32vw,490px); height: auto; object-fit: contain; transform: translateY(-53%); }
.hero-info { position: absolute; z-index: 4; left: clamp(22px,6vw,86px); right: clamp(22px,6vw,86px); bottom: 52px; grid-template-columns: 150px minmax(0,1fr) 190px; }
.hero-copy { margin-inline: auto; padding: 22px 28px; border: 1px solid rgba(255,255,255,.18); border-radius: 24px; background: rgba(9,10,23,.58); backdrop-filter: blur(16px); }
.hero-copy h1 { margin: 7px 0 8px; font-size: clamp(2.8rem,5vw,5.8rem); text-transform: uppercase; }
.hero-copy p { margin: 0; font-size: clamp(.9rem,1.15vw,1.06rem); line-height: 1.55; }
.hero-actions a,.cinematic-button { min-height: 48px; padding: 0 24px; border: 0; border-radius: 999px; background: #ef9bc9; color: #15101d; }
.hero-actions a:not(:first-child) { border: 1px solid rgba(255,255,255,.28); background: rgba(9,10,23,.46); color: #fff; }
.hero-scroll-cue { position: absolute; z-index: 5; left: 50%; bottom: 16px; transform: translateX(-50%); }
.faq-grid { grid-template-columns: 1fr; max-width: 980px; gap: 10px; }
.relaunch-application-form { display: block; max-width: 1080px; border-radius: 28px; background: linear-gradient(145deg,rgba(30,14,47,.9),rgba(8,11,24,.94)); }
.application-panel { min-height: 410px; padding: clamp(22px,4vw,48px); border: 1px solid rgba(255,255,255,.1); border-radius: 22px; background: rgba(255,255,255,.025); }
.application-question { position: relative; padding: 20px; border: 1px solid rgba(255,255,255,.11); border-radius: 16px; background: rgba(4,6,16,.32); }
.application-question input,.application-question select,.application-question textarea { min-height: 56px; border-radius: 12px; background-color: #0c0d1b; padding: 15px 18px; }
.application-question select { appearance: none; padding-right: 54px; background-image: linear-gradient(45deg,transparent 50%,#ef9bc9 50%),linear-gradient(135deg,#ef9bc9 50%,transparent 50%); background-position: calc(100% - 23px) 24px,calc(100% - 17px) 24px; background-size: 6px 6px; background-repeat: no-repeat; }
.application-actions button { min-width: 132px; min-height: 52px; border-radius: 999px; text-transform: uppercase; }
.application-actions .application-submit,.application-actions .application-next { min-width: 168px; background: #ef9bc9; color: #170d1b; }

@media (max-width:900px) {
    .relaunch-nav nav { position: fixed; top: 0; right: 0; width: 100vw; max-height: none; height: 100svh; padding: 104px 28px 30px; }
    .relaunch-hero { min-height: 100svh; padding: 0; display: block; }
    .relaunch-hero-art { width: 100%; height: 100%; aspect-ratio: auto; border: 0; }
    .relaunch-hero-art .hero-backdrop { object-position: 63% center; }
    .relaunch-hero-art .hero-keyart { left: 50%; top: 38%; width: min(72vw,430px); transform: translate(-50%,-50%); }
    .hero-info { left: 16px; right: 16px; bottom: 48px; display: block; }
    .hero-date,.hero-platforms { display: none; }
    .hero-copy { padding: 20px; }
    .hero-copy p { display: none; }
    .cinematic-panel,.cinematic-panel-wide { left: 16px; right: 16px; width: auto; transform: translateY(calc(90px - var(--chapter-reveal) * 90px)); }
    .cinematic-card-grid { grid-template-columns: 1fr; }
}

/* Scroll timeline: one fixed viewport with cross-fading scenes. */
.cinematic-sequence {
    position: relative;
    height: 900svh;
    background: #080914;
}

.cinematic-sequence-sticky {
    position: sticky;
    top: 0;
    width: 100%;
    height: 100svh;
    overflow: hidden;
    isolation: isolate;
}

.cinematic-sequence-slide {
    --slide-opacity: 0;
    position: absolute !important;
    inset: 0;
    width: 100%;
    height: 100svh;
    min-height: 0;
    opacity: var(--slide-opacity) !important;
    transform: none !important;
    pointer-events: none;
    will-change: opacity;
}

.cinematic-sequence-slide.is-active {
    pointer-events: auto;
}

.cinematic-sequence-slide:first-child {
    --slide-opacity: 1;
}

.cinematic-sequence .cinematic-chapter-sticky {
    position: absolute;
    inset: 0;
    height: 100%;
}

.cinematic-faq-slide {
    display: grid;
    align-content: center;
    padding-top: 110px;
    padding-bottom: 48px;
    overflow-y: auto;
    background:
        radial-gradient(circle at 82% 12%, rgba(232,154,197,.16), transparent 34%),
        linear-gradient(145deg, #151027, #080914 64%);
}

.cinematic-faq-slide .section-head,
.cinematic-faq-slide .faq-grid {
    width: min(980px, 100%);
    margin-inline: auto;
}

@media (prefers-reduced-motion: reduce) {
    .cinematic-sequence { height: auto; }
    .cinematic-sequence-sticky { position: static; height: auto; overflow: visible; }
    .cinematic-sequence-slide { position: relative !important; height: auto; min-height: 100svh; opacity: 1 !important; pointer-events: auto; }
    .cinematic-sequence .cinematic-chapter-sticky { position: relative; height: 100svh; }
}

@media (max-width: 900px) {
    .cinematic-sequence { height: 860svh; }
    .cinematic-faq-slide { padding: 100px 18px 34px; }
}

@media (max-width: 900px) and (prefers-reduced-motion: reduce) {
    .cinematic-sequence { height: auto; }
}

/* Unified relaunch route system ------------------------------------------------ */
.relaunch-page {
    --page-image: url('../images/backgroundimage1.webp');
    --page-code: 'AURA // 01';
    position: relative;
    z-index: 0;
    isolation: isolate;
    width: 100%;
    min-height: 100svh;
    padding: 132px clamp(18px, 5vw, 74px) 96px;
    overflow: clip;
}
body.has-launched .relaunch-page { padding-top: 180px; }

.relaunch-page::before,
.relaunch-page::after {
    position: fixed;
    inset: 0;
    z-index: -2;
    content: '';
    pointer-events: none;
}

.relaunch-page::before {
    background-image: var(--page-image);
    background-position: center;
    background-size: cover;
    filter: saturate(.8) contrast(1.04);
    opacity: .35;
    transform: scale(1.025);
}

.relaunch-page::after {
    z-index: -1;
    background:
        radial-gradient(circle at 78% 16%, rgba(239, 155, 201, .14), transparent 34%),
        linear-gradient(180deg, rgba(7, 8, 18, .46), #090914 54%, #080914 100%);
}

.relaunch-page--discover { --page-image: url('../images/backgroundimage3.webp'); --page-code: 'DISCOVER // 01'; }
.relaunch-page--roster { --page-code: 'ROSTER // 02'; }
.relaunch-page--profile { --page-image: url('../images/backgroundimage1.webp'); --page-code: 'PROFILE // 02'; }
.relaunch-page--apply { --page-code: 'APPLY // 03'; }
.relaunch-page--status { --page-image: url('../images/backgroundimage2.webp'); --page-code: 'STATUS // 03'; }
.relaunch-page--media { --page-image: url('../images/backgroundimage3.webp'); --page-code: 'MEDIA // 04'; }
.relaunch-page--rules { --page-image: url('../images/backgroundimage4.webp'); --page-code: 'RULES // 05'; }
.relaunch-page--faq { --page-image: url('../images/backgroundimage2.webp'); --page-code: 'FAQ // 05'; }
.relaunch-page--team { --page-image: url('../images/backgroundimage3.webp'); --page-code: 'TEAM // 01'; }
.relaunch-page--community { --page-code: 'COMMUNITY // 06'; }

.relaunch-page > .page-hero,
.relaunch-page > .feature-timeline,
.relaunch-page > .roster-collection,
.relaunch-page > .profile-panel,
.relaunch-page > .relaunch-application-gate,
.relaunch-page > .application-success,
.relaunch-page > .relaunch-form,
.relaunch-page > .status-list,
.relaunch-page > .media-grid,
.relaunch-page > .relaunch-rules-directory,
.relaunch-page > .relaunch-rules-empty,
.relaunch-page > .relaunch-rules-footer-note,
.relaunch-page > .faq-grid,
.relaunch-page > .community-grid {
    width: min(1180px, 100%);
    margin-inline: auto;
}

.relaunch-page .page-hero {
    position: relative;
    display: flex;
    min-height: clamp(390px, 56vh, 610px);
    max-width: none;
    margin-bottom: 26px;
    padding: clamp(30px, 6vw, 76px);
    align-items: flex-start;
    justify-content: flex-end;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 30px;
    background: linear-gradient(140deg, rgba(28, 15, 46, .72), rgba(8, 10, 24, .74) 64%);
    box-shadow: 0 34px 90px rgba(0, 0, 0, .34), inset 0 1px rgba(255, 255, 255, .08);
    backdrop-filter: blur(15px);
}

.relaunch-page .page-hero::before {
    position: absolute;
    inset: 0;
    content: '';
    background: linear-gradient(110deg, rgba(9, 9, 21, .12), transparent 58%), linear-gradient(0deg, rgba(8, 9, 20, .22), transparent 48%);
    pointer-events: none;
}

.relaunch-page .page-hero::after {
    position: absolute;
    top: 28px;
    right: 32px;
    content: var(--page-code);
    color: rgba(255, 255, 255, .48);
    font: 700 .68rem/1 'DM Sans', sans-serif;
    letter-spacing: .17em;
}

.relaunch-page .page-hero > * { position: relative; z-index: 1; }
.relaunch-page .page-hero > span {
    color: #63ddff;
    font: 700 .72rem/1.2 'DM Sans', sans-serif;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.relaunch-page .page-hero h1 {
    max-width: 930px;
    margin: 14px 0 15px;
    color: #fff;
    font: 800 clamp(3.2rem, 7vw, 7.3rem)/.84 'Barlow Condensed', sans-serif;
    letter-spacing: -.035em;
    text-transform: uppercase;
}

.relaunch-page .page-hero p {
    max-width: 700px;
    margin: 0;
    color: rgba(255, 255, 255, .72);
    font-size: clamp(.96rem, 1.35vw, 1.12rem);
    line-height: 1.7;
}

.relaunch-page .page-hero .community-cta,
.community-grid a,
.media-tile a {
    display: inline-flex;
    min-height: 48px;
    margin-top: 24px;
    padding: 0 23px;
    align-items: center;
    gap: 12px;
    border-radius: 999px;
    background: #ef9bc9;
    color: #160f1c;
    font: 700 .76rem/1 'DM Sans', sans-serif;
    letter-spacing: .08em;
    text-decoration: none;
    text-transform: uppercase;
    transition: transform .2s ease, background-color .2s ease;
}

.relaunch-page .page-hero .community-cta:hover,
.community-grid a:hover,
.media-tile a:hover { transform: translateY(-2px); background: #fff; }

/* Discover */
.relaunch-page .feature-timeline { padding: 0; }
.relaunch-page .feature-timeline::before { display: none; }
.relaunch-page .feature-timeline-item {
    display: grid;
    min-height: 410px;
    margin: 18px 0;
    padding: 18px;
    grid-template-columns: 68px minmax(0, 1.15fr) minmax(300px, .85fr);
    gap: 18px;
    align-items: stretch;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 26px;
    background: linear-gradient(145deg, rgba(29, 15, 46, .82), rgba(8, 10, 23, .9));
    box-shadow: 0 25px 60px rgba(0, 0, 0, .25);
}

.relaunch-page .feature-timeline-marker {
    width: 52px;
    height: 52px;
    margin: 8px auto 0;
    border-color: rgba(99, 221, 255, .46);
    background: rgba(7, 13, 24, .8);
    color: #63ddff;
}

.relaunch-page .feature-timeline-image {
    min-height: 360px;
    border-radius: 19px;
    background-color: rgba(255, 255, 255, .04);
    background-position: center;
    background-size: cover;
}

.relaunch-page .feature-timeline-copy {
    display: flex;
    padding: clamp(24px, 4vw, 52px);
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
}

.relaunch-page .feature-timeline-copy h2 {
    margin: 12px 0 16px;
    font-size: clamp(2.7rem, 5vw, 5rem);
    line-height: .9;
    text-transform: uppercase;
}

/* Roster, profile, applications, status */
.relaunch-page .roster-collection,
.relaunch-page .profile-panel,
.relaunch-page .relaunch-application-gate,
.relaunch-page .application-success,
.relaunch-page .relaunch-form,
.relaunch-page .status-list article {
    border-color: rgba(255, 255, 255, .11);
    background: linear-gradient(145deg, rgba(27, 14, 44, .9), rgba(8, 10, 23, .93));
    box-shadow: 0 26px 70px rgba(0, 0, 0, .26);
    backdrop-filter: blur(15px);
}

.relaunch-page .roster-collection { padding: clamp(24px, 4vw, 48px); border: 1px solid rgba(255,255,255,.1); border-radius: 28px; }
.relaunch-page .profile-panel { min-height: min(690px, 72vh); border-radius: 30px; overflow: hidden; }
.relaunch-page .relaunch-application-gate,
.relaunch-page .application-success,
.relaunch-page .relaunch-form { margin-top: 18px; border-radius: 28px; }

.relaunch-page .status-list {
    display: grid;
    padding: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.relaunch-page .status-list article {
    min-height: 190px;
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 22px;
}

/* Media */
.relaunch-page .media-grid { gap: 16px; }
.relaunch-page .media-tile {
    position: relative;
    display: flex;
    min-height: 360px;
    padding: 28px;
    align-items: flex-start;
    justify-content: flex-end;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 24px;
    background-color: #161224;
    background-position: center;
    background-size: cover;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .28);
}

.relaunch-page .media-tile::before {
    position: absolute;
    inset: 0;
    content: '';
    background: linear-gradient(180deg, transparent 24%, rgba(7, 8, 17, .92));
}

.relaunch-page .media-tile > * { position: relative; z-index: 1; }
.relaunch-page .media-tile small { margin-bottom: 10px; color: #63ddff; font-weight: 700; letter-spacing: .13em; }
.relaunch-page .media-tile strong { font: 800 clamp(2rem, 3vw, 3.4rem)/.92 'Barlow Condensed', sans-serif; text-transform: uppercase; }
.relaunch-page .media-tile span { margin-top: 9px; color: rgba(255,255,255,.68); }

/* Rules */
.relaunch-rules-hero { background: radial-gradient(circle at 82% 22%,rgba(99,221,255,.13),transparent 29%),linear-gradient(140deg,rgba(28,15,46,.8),rgba(8,10,24,.86) 64%) !important; }
.relaunch-rules-hero::before { background: linear-gradient(90deg,rgba(8,9,20,.08),rgba(8,9,20,.55)),url('../images/backgroundimage4.webp') center 34%/cover !important; opacity: .34; }
.relaunch-rules-hero-meta { width: min(720px,100%); display: grid; margin-top: 34px; grid-template-columns: repeat(3,minmax(0,1fr)); overflow: hidden; border: 1px solid rgba(255,255,255,.13); border-radius: 16px; background: rgba(7,9,21,.52); backdrop-filter: blur(12px); }
.relaunch-rules-hero-meta > span { min-height: 82px; display: grid; padding: 15px 18px; align-content: center; gap: 6px; }
.relaunch-rules-hero-meta > span + span { border-left: 1px solid rgba(255,255,255,.1); }
.relaunch-rules-hero-meta small { color: #63ddff; font-size: .52rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.relaunch-rules-hero-meta strong { color: #fff; font: 800 1.25rem/1 var(--display); text-transform: uppercase; }
.relaunch-rules-directory { padding: clamp(28px,5vw,58px); border: 1px solid rgba(255,255,255,.1); border-radius: 28px; background: linear-gradient(145deg,rgba(25,13,41,.91),rgba(7,9,21,.96)); box-shadow: 0 28px 75px rgba(0,0,0,.3); }
.relaunch-rules-directory > header { display: flex; margin-bottom: 30px; padding-bottom: 25px; align-items: end; justify-content: space-between; gap: 30px; border-bottom: 1px solid rgba(255,255,255,.1); }
.relaunch-rules-directory > header > div > span,.relaunch-rule-copy > span,.relaunch-rules-empty > span,.relaunch-rules-footer-note > span { color: #63ddff; font-size: .57rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.relaunch-rules-directory > header h2 { margin: 9px 0 0; color: #fff; font: 800 clamp(2.7rem,5vw,5rem)/.82 var(--display); text-transform: uppercase; }
.relaunch-rules-directory > header p { width: min(390px,100%); margin: 0; color: rgba(255,255,255,.5); font-size: .8rem; line-height: 1.65; text-align: right; }
.relaunch-rules-list { display: grid; gap: 12px; }
.relaunch-rule-card { position: relative; display: grid; min-height: 180px; padding: 25px clamp(22px,3.5vw,42px) 25px 0; grid-template-columns: clamp(82px,11vw,135px) minmax(0,1fr); overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 20px; background: linear-gradient(110deg,rgba(99,221,255,.035),rgba(255,255,255,.018) 36%,rgba(239,155,201,.025)); transition: border-color .25s ease,transform .25s ease,background .25s ease; }
.relaunch-rule-card:hover { border-color: rgba(99,221,255,.25); background: linear-gradient(110deg,rgba(99,221,255,.07),rgba(255,255,255,.025) 36%,rgba(239,155,201,.05)); transform: translateY(-2px); }
.relaunch-rule-number { display: grid; align-content: start; justify-items: center; gap: 7px; border-right: 1px solid rgba(255,255,255,.1); }
.relaunch-rule-number small { color: rgba(255,255,255,.38); font-size: .48rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.relaunch-rule-number strong { color: transparent; font: 800 clamp(2.7rem,5vw,4.8rem)/.82 var(--display); -webkit-text-stroke: 1px rgba(99,221,255,.62); }
.relaunch-rule-copy { padding-left: clamp(22px,3.5vw,42px); }
.relaunch-rule-copy > span { color: #ef9bc9; }
.relaunch-rule-copy h3 { margin: 10px 0 13px; color: #fff; font: 800 clamp(1.65rem,3vw,2.7rem)/.95 var(--display); letter-spacing: .01em; text-transform: uppercase; }
.relaunch-rule-copy p { max-width: 900px; margin: 0; color: rgba(255,255,255,.68); font-size: clamp(.9rem,1.15vw,1rem); line-height: 1.78; }
.relaunch-rule-card > i { position: absolute; top: 0; right: 0; width: 70px; height: 2px; background: linear-gradient(90deg,transparent,#63ddff); opacity: .72; }
.relaunch-rules-empty { min-height: 390px; display: grid; padding: clamp(30px,6vw,70px); align-content: center; justify-items: start; border: 1px solid rgba(255,255,255,.1); border-radius: 28px; background: linear-gradient(145deg,rgba(25,13,41,.92),rgba(7,9,21,.96)); }
.relaunch-rules-empty h2 { max-width: 720px; margin: 14px 0; color: #fff; font: 800 clamp(2.8rem,6vw,5.5rem)/.86 var(--display); text-transform: uppercase; }
.relaunch-rules-empty p { max-width: 620px; margin: 0; color: rgba(255,255,255,.6); line-height: 1.7; }
.relaunch-rules-empty a,.relaunch-rules-footer-note > a { display: inline-flex; min-height: 44px; margin-top: 24px; padding: 0 17px; align-items: center; gap: 16px; border-radius: 999px; color: #07111a; background: #63ddff; font-size: .62rem; font-weight: 900; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.relaunch-rules-footer-note { display: grid; margin-top: 16px; padding: clamp(24px,4vw,42px); grid-template-columns: .5fr 1.5fr auto; align-items: center; gap: clamp(22px,4vw,54px); border: 1px solid rgba(239,155,201,.2); border-radius: 22px; background: linear-gradient(120deg,rgba(239,155,201,.075),rgba(99,221,255,.035)); }
.relaunch-rules-footer-note > span { color: #ef9bc9; }
.relaunch-rules-footer-note > div strong { color: #fff; font: 800 1.65rem/1 var(--display); text-transform: uppercase; }
.relaunch-rules-footer-note > div p { margin: 7px 0 0; color: rgba(255,255,255,.56); font-size: .78rem; line-height: 1.6; }
.relaunch-rules-footer-note > a { margin: 0; background: #ef9bc9; }

/* FAQ and community */
.relaunch-page .faq-page-grid { max-width: 1180px; gap: 12px; }
.relaunch-page .faq-page-grid details {
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 18px;
    background: linear-gradient(145deg, rgba(27,14,44,.86), rgba(8,10,23,.9));
    backdrop-filter: blur(14px);
}

.community-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.community-grid article {
    position: relative;
    min-height: 370px;
    padding: clamp(24px, 3vw, 38px);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 24px;
    background: linear-gradient(145deg, rgba(29,15,46,.88), rgba(8,10,23,.94));
    box-shadow: 0 24px 60px rgba(0,0,0,.24);
}

.community-grid article > b { position: absolute; top: 20px; right: 24px; color: rgba(255,255,255,.15); font: 800 4.4rem/1 'Barlow Condensed',sans-serif; }
.community-grid article > span { color: #63ddff; font: 700 .68rem/1 'DM Sans',sans-serif; letter-spacing: .15em; text-transform: uppercase; }
.community-grid h2 { margin: 76px 0 14px; font: 800 clamp(2.4rem,4vw,4rem)/.9 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.community-grid p { color: rgba(255,255,255,.64); line-height: 1.65; }
.community-grid a { position: absolute; right: 30px; bottom: 30px; left: 30px; justify-content: space-between; }

.relaunch-nav nav a[aria-current='page']::before {
    width: 7px;
    height: 7px;
    margin-right: 13px;
    border-radius: 50%;
    background: #63ddff;
    box-shadow: 0 0 18px rgba(99,221,255,.8);
    content: '';
}

.relaunch-footer {
    position: relative;
    z-index: 2;
    border-top-color: rgba(255,255,255,.08);
    background: #080914;
}

@media (max-width: 900px) {
    .relaunch-page { padding: 104px 16px 68px; }
    body.has-launched .relaunch-page { padding-top: 150px; }
    .relaunch-footer { align-items: flex-start; flex-direction: column; }
    .relaunch-footer-socials { width: 100%; }
    .relaunch-footer-socials a { flex: 1 1 145px; }
    .relaunch-page .page-hero { min-height: 460px; padding: 28px 22px; border-radius: 22px; }
    .relaunch-page .page-hero::after { top: 20px; right: 20px; }
    .relaunch-page .page-hero h1 { font-size: clamp(3rem, 16vw, 5rem); }
    .relaunch-page .feature-timeline-item { grid-template-columns: 48px 1fr; padding: 12px; }
    .relaunch-page .feature-timeline-marker { width: 42px; height: 42px; }
    .relaunch-page .feature-timeline-image,
    .relaunch-page .feature-timeline-copy { grid-column: 2; }
    .relaunch-page .feature-timeline-image { min-height: 230px; }
    .relaunch-page .feature-timeline-copy { padding: 24px 8px 28px; }
    .relaunch-page .profile-panel { min-height: 0; }
    .relaunch-page .status-list,
    .community-grid { grid-template-columns: 1fr; }
    .relaunch-page .media-tile { min-height: 300px; }
    .relaunch-rules-directory { padding: 22px 14px; }
    .relaunch-rules-directory > header { align-items: flex-start; flex-direction: column; }
    .relaunch-rules-directory > header p { text-align: left; }
    .relaunch-rules-footer-note { grid-template-columns: 1fr; }
    .relaunch-rules-footer-note > a { width: max-content; }
    .community-grid article { min-height: 340px; }
}

@media (max-width: 600px) {
    .relaunch-rules-hero-meta { grid-template-columns: 1fr 1fr; }
    .relaunch-rules-hero-meta > span { min-height: 70px; }
    .relaunch-rules-hero-meta > span + span { border-left: 1px solid rgba(255,255,255,.1); }
    .relaunch-rules-hero-meta > span:last-child { grid-column: 1 / -1; border-top: 1px solid rgba(255,255,255,.1); border-left: 0; }
    .relaunch-rule-card { grid-template-columns: 68px minmax(0,1fr); padding: 20px 16px 20px 0; }
    .relaunch-rule-copy { padding-left: 17px; }
    .relaunch-rule-copy p { font-size: .88rem; line-height: 1.7; }
}

@media (prefers-reduced-motion: reduce) {
    .relaunch-page::before { transform: none; }
    .relaunch-page .page-hero .community-cta,
    .community-grid a,
    .media-tile a { transition: none; }
}

/* Scroll-directed image pullback --------------------------------------------- */
.relaunch-page { --page-scroll: 0; }
.relaunch-page::before {
    opacity: calc(.48 - (var(--page-scroll) * .32));
    transform: scale(calc(1.15 - (var(--page-scroll) * .15)));
    transform-origin: center center;
    will-change: transform, opacity;
}

.cinematic-sequence-slide .cinematic-chapter-sticky > img,
.cinematic-sequence-slide .hero-backdrop {
    opacity: calc(1 - (var(--image-progress, var(--chapter-progress)) * .18));
    transform: scale(calc(1.24 - (var(--image-progress, var(--chapter-progress)) * .24)));
    transform-origin: center center;
    will-change: transform, opacity, filter;
}

.cinematic-sequence-slide .cinematic-chapter-sticky > img {
    filter: saturate(calc(1.02 - (var(--image-progress, var(--chapter-progress)) * .16))) brightness(calc(.98 - (var(--image-progress, var(--chapter-progress)) * .1)));
}

@media (max-width: 900px) {
    .relaunch-page::before { transform: scale(calc(1.11 - (var(--page-scroll) * .11))); }
    .cinematic-sequence-slide .cinematic-chapter-sticky > img,
    .cinematic-sequence-slide .hero-backdrop { transform: scale(calc(1.16 - (var(--image-progress, var(--chapter-progress)) * .16))); }
}

@media (prefers-reduced-motion: reduce) {
    .relaunch-page::before { opacity: .35; transform: none; filter: none; }
    .cinematic-sequence-slide .cinematic-chapter-sticky > img,
    .cinematic-sequence-slide .hero-backdrop { opacity: 1; transform: none; filter: none; }
}

/* Hold the image before revealing each scene's interface. */
.cinematic-sequence .cinematic-panel {
    opacity: var(--chapter-reveal);
    pointer-events: none;
}

.cinematic-sequence-slide.has-content .cinematic-panel { pointer-events: auto; }

.cinematic-faq-slide .section-head,
.cinematic-faq-slide .faq-grid {
    opacity: var(--chapter-reveal);
    transform: translateY(calc(72px - (var(--chapter-reveal) * 72px)));
    will-change: transform, opacity;
}

.cinematic-faq-slide:not(.has-content) .section-head,
.cinematic-faq-slide:not(.has-content) .faq-grid { pointer-events: none; }

@media (prefers-reduced-motion: reduce) {
    .cinematic-sequence .cinematic-panel,
    .cinematic-faq-slide .section-head,
    .cinematic-faq-slide .faq-grid { opacity: 1; transform: none; pointer-events: auto; }
}

/* Character dossier modules -------------------------------------------------- */
.relaunch-page > .character-profile-modules { width: min(1180px,100%); margin: 18px auto 0; }
.profile-page .profile-panel { grid-template-columns: minmax(310px,.8fr) minmax(0,1.2fr); padding: 18px; }
.profile-page .profile-media { width: 100%; min-height: 560px; border-radius: 21px; }
.profile-page .profile-media img { min-height: 560px; }
.profile-page .profile-copy { padding: clamp(28px,5vw,68px); }
.profile-page .profile-copy > span { color: #63ddff; font-size: .67rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.profile-page .profile-copy h1 { margin: 13px 0 4px; font-size: clamp(4rem,8vw,8rem); line-height: .8; text-transform: uppercase; }
.profile-page .profile-copy h2 { color: #ef9bc9; font-size: clamp(1.3rem,2.6vw,2.2rem); text-transform: uppercase; }
.profile-page .profile-copy > p:not(.profile-role) { max-width: 680px; color: rgba(255,255,255,.68); font-size: 1rem; line-height: 1.75; }
.profile-page .profile-role { width: fit-content; padding: 7px 12px; border: 1px solid rgba(99,221,255,.24); border-radius: 999px; color: #bdefff; background: rgba(99,221,255,.07); font-size: .65rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.profile-copy-actions { margin-top: 26px; }

.character-profile-modules { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(360px,.95fr); gap: 16px; }
.character-profile-module { padding: clamp(26px,4vw,48px); border: 1px solid rgba(255,255,255,.1); border-radius: 25px; background: linear-gradient(145deg,rgba(28,14,45,.88),rgba(8,10,23,.94)); box-shadow: 0 26px 70px rgba(0,0,0,.24); backdrop-filter: blur(14px); }
.character-profile-module-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding-bottom: 17px; border-bottom: 1px solid rgba(255,255,255,.09); }
.character-profile-module-head span { color: #63ddff; font-size: .62rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.character-profile-module-head b { color: rgba(255,255,255,.42); font-size: .62rem; letter-spacing: .08em; text-transform: uppercase; }
.character-profile-story h2 { max-width: 620px; margin: clamp(42px,7vw,86px) 0 18px; font: 800 clamp(3.2rem,6vw,6.5rem)/.84 'Barlow Condensed',sans-serif; letter-spacing: -.03em; text-transform: uppercase; }
.character-profile-story > p { max-width: 700px; margin: 0; color: rgba(255,255,255,.69); font-size: clamp(.96rem,1.3vw,1.08rem); line-height: 1.8; }
.character-profile-detail-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; margin-top: 24px; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 15px; background: rgba(255,255,255,.1); }
.character-profile-detail-grid > div { display: grid; min-height: 112px; padding: 18px; align-content: end; gap: 7px; background: rgba(5,8,18,.76); }
.character-profile-detail-grid span { color: #63ddff; font-size: .58rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.character-profile-detail-grid strong { color: #f7f8fc; font: 700 1.15rem/1.15 'Barlow Condensed',sans-serif; overflow-wrap: anywhere; }

@media (max-width: 900px) {
    .profile-page .profile-panel,
    .character-profile-modules { grid-template-columns: 1fr; }
    .profile-page .profile-media,
    .profile-page .profile-media img { min-height: min(72svh,620px); }
    .profile-page .profile-copy { padding: 28px 20px 34px; }
}

@media (max-width: 560px) {
    .character-profile-detail-grid { grid-template-columns: 1fr; }
    .character-profile-module { padding: 22px 18px; border-radius: 20px; }
}

/* Extended cinematic hero --------------------------------------------------- */
.relaunch-hero .hero-topline,
.relaunch-hero .hero-info,
.relaunch-hero .hero-keyart,
.relaunch-hero .hero-scroll-cue {
    opacity: var(--hero-content-opacity, 1);
    will-change: opacity, transform;
}

.relaunch-hero:not(.has-hero-content) .hero-info,
.relaunch-hero:not(.has-hero-content) .hero-scroll-cue { pointer-events: none; }

.relaunch-hero .hero-info {
    bottom: clamp(54px, 7vh, 82px);
    grid-template-columns: minmax(118px, .24fr) minmax(480px, 1fr) minmax(150px, .28fr);
    gap: clamp(18px, 2.2vw, 34px);
    transform: translateY(calc(36px - (var(--hero-content-opacity, 1) * 36px)));
}

.relaunch-hero .hero-copy {
    width: min(780px, 100%);
    max-width: 780px;
    padding: clamp(24px, 3vw, 38px);
    border-color: rgba(255, 255, 255, .2);
    border-radius: 28px;
    background:
        linear-gradient(135deg, rgba(29, 14, 47, .78), rgba(8, 10, 23, .64)),
        rgba(8, 10, 23, .52);
    box-shadow: 0 28px 90px rgba(0, 0, 0, .38), inset 0 1px 0 rgba(255, 255, 255, .05);
    backdrop-filter: blur(20px) saturate(1.15);
}

.relaunch-hero .hero-copy h1 {
    max-width: 650px;
    margin: 10px 0 10px;
    font-size: clamp(3.2rem, 5.8vw, 6.6rem);
    line-height: .82;
    letter-spacing: -.035em;
}

.relaunch-hero .hero-copy > p {
    max-width: 620px;
    color: rgba(246, 251, 255, .78);
    font-size: clamp(.92rem, 1.15vw, 1.05rem);
}

.hero-signal-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    margin-top: clamp(18px, 2.4vh, 26px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 14px;
    background: rgba(255, 255, 255, .12);
}

.relaunch-countdown {
    display: grid;
    grid-template-columns: repeat(4, minmax(64px, 1fr));
    gap: 8px;
    margin-top: 18px;
}

.relaunch-countdown > span {
    display: grid;
    min-height: 66px;
    place-content: center;
    justify-items: center;
    border: 1px solid rgba(99, 221, 255, .24);
    border-radius: 12px;
    background: rgba(5, 8, 18, .56);
}

.relaunch-countdown strong { color: #fff; font: 800 clamp(1.35rem, 2vw, 1.85rem)/1 var(--display); font-variant-numeric: tabular-nums; }
.relaunch-countdown small { margin-top: 5px; color: #63ddff; font-size: .52rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.relaunch-countdown > p { grid-column: 1 / -1; margin: 0; color: rgba(255,255,255,.62); font-size: .66rem; font-weight: 700; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.relaunch-countdown.is-launched > span { border-color: rgba(72, 223, 153, .34); }
.relaunch-countdown.is-launched small,
.relaunch-countdown.is-launched > p { color: #72dfad; }
.relaunch-launched-connect { min-height: 82px; display: flex; margin-top: 18px; padding: 0 clamp(18px,2.5vw,27px); align-items: center; justify-content: space-between; gap: 20px; overflow: hidden; border: 1px solid rgba(72,223,153,.35); border-radius: 15px; color: #07111a; background: linear-gradient(115deg,#48df99,#72deff 55%,#ef9bc9); box-shadow: 0 18px 48px rgba(72,223,153,.15),inset 0 1px rgba(255,255,255,.58); text-decoration: none; transition: transform .22s ease,box-shadow .22s ease; }
.relaunch-launched-connect > span { display: grid; gap: 5px; }
.relaunch-launched-connect small { color: rgba(7,17,26,.6); font-size: .52rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.relaunch-launched-connect strong { color: #07111a; font: 800 clamp(1.55rem,2.7vw,2.35rem)/1 var(--display); letter-spacing: .03em; text-transform: uppercase; }
.relaunch-launched-connect > b { padding: 10px 13px; border: 1px solid rgba(7,17,26,.16); border-radius: 999px; background: rgba(255,255,255,.24); font-size: .58rem; letter-spacing: .07em; text-transform: uppercase; transition: transform .2s ease,background .2s ease; }
.relaunch-launched-connect:hover,.relaunch-launched-connect:focus-visible { transform: translateY(-3px); box-shadow: 0 24px 58px rgba(72,223,153,.22),0 12px 32px rgba(239,155,201,.12); outline: none; }
.relaunch-launched-connect:hover > b,.relaunch-launched-connect:focus-visible > b { background: rgba(255,255,255,.4); transform: translateX(3px); }

.hero-signal-grid > span {
    display: grid;
    min-height: 74px;
    padding: 15px 17px;
    align-content: center;
    gap: 6px;
    background: rgba(5, 8, 18, .62);
}

.hero-signal-grid small {
    color: #63ddff;
    font-size: .58rem;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.hero-signal-grid strong {
    color: #fff;
    font: 800 clamp(.98rem, 1.4vw, 1.2rem)/1 'Barlow Condensed', sans-serif;
    letter-spacing: .025em;
    text-transform: uppercase;
}

.relaunch-hero .hero-actions { margin-top: 20px; }
.relaunch-hero .hero-actions .hero-connect-action { color: #07111a; background: linear-gradient(115deg,#63ddff,#8edff0 42%,#ef9bc9); box-shadow: 0 12px 32px rgba(99,221,255,.16); }
.relaunch-hero .hero-actions .hero-connect-action span { margin-left: 10px; transition: transform .2s ease; }
.relaunch-hero .hero-actions .hero-connect-action:hover span,.relaunch-hero .hero-actions .hero-connect-action:focus-visible span { transform: translateX(3px); }
.relaunch-hero .hero-actions .hero-discord-action {
    border-color: rgba(99, 221, 255, .52);
    background: rgba(99, 221, 255, .09);
    color: #c9f5ff;
}
.relaunch-hero .hero-actions .hero-discord-action span {
    margin-left: 10px;
    color: #63ddff;
}
.relaunch-hero .hero-actions .hero-discord-action:hover,
.relaunch-hero .hero-actions .hero-discord-action:focus-visible {
    border-color: #63ddff;
    background: rgba(99, 221, 255, .16);
    box-shadow: 0 14px 40px rgba(99, 221, 255, .18);
}
.relaunch-hero .hero-scroll-cue { bottom: 18px; }

@media (max-width: 900px) {
    .relaunch-hero-art {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        aspect-ratio: auto;
    }

    .relaunch-hero .hero-info {
        left: 18px;
        right: 18px;
        bottom: 48px;
        display: block;
        transform: translateY(calc(24px - (var(--hero-content-opacity, 1) * 24px)));
    }

    .relaunch-hero .hero-date,
    .relaunch-hero .hero-platforms { display: none; }
    .relaunch-hero .hero-copy { padding: 22px; border-radius: 22px; }
    .relaunch-hero .hero-copy h1 { font-size: clamp(2.85rem, 12vw, 5rem); }
    .relaunch-hero .hero-keyart { width: clamp(210px, 54vw, 360px); opacity: calc(var(--hero-content-opacity, 1) * .82); }
}

@media (max-width: 560px) {
    .relaunch-countdown { gap: 5px; margin-top: 14px; }
    .relaunch-countdown > span { min-height: 54px; }
    .relaunch-countdown > p { display: block; font-size: .56rem; }
    .relaunch-launched-connect { min-height: 70px; }
    .relaunch-launched-connect > b { max-width: 105px; text-align: center; }
    .hero-signal-grid { grid-template-columns: 1fr 1fr; }
    .hero-signal-grid > span { min-height: 60px; padding: 11px 13px; }
    .hero-signal-grid > span:last-child { display: none; }
    .relaunch-hero .hero-copy > p { display: none; }
    .relaunch-hero .hero-actions { margin-top: 16px; }
    .relaunch-hero .hero-actions a { min-height: 44px; padding-inline: 18px; }
}

@media (max-height: 760px) and (min-width: 901px) {
    .relaunch-hero .hero-info { bottom: 44px; }
    .relaunch-hero .hero-copy { padding: 20px 26px; }
    .relaunch-hero .hero-copy h1 { font-size: clamp(3rem, 5vw, 5.3rem); }
    .hero-signal-grid { margin-top: 14px; }
    .hero-signal-grid > span { min-height: 62px; padding-block: 11px; }
    .relaunch-hero .hero-actions { margin-top: 14px; }
}

@media (prefers-reduced-motion: reduce) {
    .relaunch-hero .hero-topline,
    .relaunch-hero .hero-info,
    .relaunch-hero .hero-keyart,
    .relaunch-hero .hero-scroll-cue { opacity: 1; }
    .relaunch-hero .hero-info { transform: none; }
}

/* Discover feature showcase ------------------------------------------------- */
.relaunch-page--discover .feature-timeline {
    display: grid;
    max-width: 1220px;
    gap: 28px;
    padding-top: 28px;
}

.relaunch-page--discover .feature-timeline-head {
    display: flex;
    min-height: 170px;
    padding: clamp(26px, 4vw, 46px);
    align-items: flex-end;
    justify-content: space-between;
    gap: 30px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 28px;
    background:
        radial-gradient(circle at 88% 10%, rgba(99, 221, 255, .13), transparent 32%),
        linear-gradient(145deg, rgba(27, 14, 44, .86), rgba(8, 10, 23, .92));
    box-shadow: 0 25px 70px rgba(0, 0, 0, .22);
}

.relaunch-page--discover .feature-timeline-head > div > span,
.feature-timeline-empty > span {
    color: #63ddff;
    font-size: .65rem;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.relaunch-page--discover .feature-timeline-head h2 {
    max-width: 720px;
    margin: 12px 0 0;
    color: #fff;
    font: 800 clamp(2.8rem, 5.4vw, 5.8rem)/.84 'Barlow Condensed', sans-serif;
    letter-spacing: -.03em;
    text-transform: uppercase;
}

.relaunch-page--discover .feature-timeline-head > p {
    display: grid;
    min-width: 150px;
    margin: 0;
    justify-items: end;
    gap: 6px;
    color: rgba(255, 255, 255, .52);
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.relaunch-page--discover .feature-timeline-head > p strong {
    color: #ef9bc9;
    font: 800 clamp(3.2rem, 6vw, 5.4rem)/.72 'Barlow Condensed', sans-serif;
}

.relaunch-page--discover .feature-timeline-item {
    position: relative;
    display: grid;
    min-height: 350px;
    padding: 0;
    grid-template-columns: 1fr;
    gap: 0;
    align-items: stretch;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 32px;
    background:
        radial-gradient(circle at 92% 8%, rgba(99, 221, 255, .13), transparent 30%),
        radial-gradient(circle at 8% 92%, rgba(239, 155, 201, .11), transparent 32%),
        linear-gradient(145deg, rgba(27, 14, 44, .94), rgba(7, 9, 21, .96));
    box-shadow: 0 32px 90px rgba(0, 0, 0, .3);
    transition: opacity 620ms ease, transform 620ms cubic-bezier(.2, .8, .2, 1), border-color 220ms ease, box-shadow 220ms ease;
}

.relaunch-page--discover .feature-timeline-item.is-visible:hover {
    border-color: rgba(99, 221, 255, .24);
    box-shadow: 0 38px 110px rgba(0, 0, 0, .38);
    transform: translateY(-4px);
}

.relaunch-page--discover .feature-timeline-item:nth-of-type(even) .feature-timeline-image {
    grid-column: 2;
}

.relaunch-page--discover .feature-timeline-item:nth-of-type(even) .feature-timeline-copy {
    grid-column: 1;
    grid-row: 1;
}

.relaunch-page--discover .feature-timeline-marker {
    position: absolute;
    z-index: 4;
    top: 34px;
    left: 34px;
    width: auto;
    height: auto;
    min-width: 86px;
    padding: 11px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 11px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    background: rgba(7, 9, 21, .76);
    box-shadow: 0 12px 38px rgba(0, 0, 0, .28);
    backdrop-filter: blur(14px);
}

.relaunch-page--discover .feature-timeline-item:nth-of-type(even) .feature-timeline-marker {
    right: 34px;
    left: auto;
}

.relaunch-page--discover .feature-timeline-marker small {
    color: rgba(255, 255, 255, .58);
    font-size: .54rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.relaunch-page--discover .feature-timeline-marker span {
    color: #63ddff;
    font: 800 1.05rem/1 'Barlow Condensed', sans-serif;
}

.relaunch-page--discover .feature-timeline-image {
    position: relative;
    min-height: 440px;
    overflow: hidden;
    border: 0;
    border-radius: 22px;
    background-color: #151224;
    background-position: center;
    background-size: cover;
    box-shadow: none;
    filter: saturate(.92) contrast(1.04);
}

.relaunch-page--discover .feature-timeline-image::before,
.relaunch-page--discover .feature-timeline-image::after {
    position: absolute;
    inset: 0;
    content: '';
    pointer-events: none;
}

.relaunch-page--discover .feature-timeline-image::before {
    background: linear-gradient(180deg, rgba(6, 8, 18, .02) 38%, rgba(6, 8, 18, .82));
}

.relaunch-page--discover .feature-timeline-image::after {
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: inherit;
    box-shadow: inset 0 0 70px rgba(5, 6, 14, .18);
}

.relaunch-page--discover .feature-timeline-item:hover .feature-timeline-image {
    transform: none;
    filter: saturate(1.06) contrast(1.04);
}

.feature-timeline-image-meta {
    position: absolute;
    z-index: 2;
    right: 24px;
    bottom: 22px;
    left: 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    color: #fff;
    font-size: .6rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.feature-timeline-image-meta span { color: #ef9bc9; }
.feature-timeline-image-meta b { color: rgba(255, 255, 255, .68); }

.relaunch-page--discover .feature-timeline-copy {
    display: grid;
    min-width: 0;
    padding: clamp(72px, 7vw, 104px) clamp(34px, 6vw, 82px) clamp(38px, 5vw, 62px);
    grid-template-columns: minmax(260px, .9fr) minmax(300px, 1.1fr);
    grid-template-rows: auto 1fr auto;
    column-gap: clamp(44px, 7vw, 100px);
    align-items: start;
}

.relaunch-page--discover .feature-timeline-copy > span {
    grid-column: 1;
    grid-row: 1;
    color: #63ddff;
    font-size: .65rem;
    font-weight: 900;
    letter-spacing: .16em;
}

.relaunch-page--discover .feature-timeline-copy h2 {
    grid-column: 1;
    grid-row: 2;
    max-width: 640px;
    margin: 15px 0 20px;
    font-size: clamp(3rem, 5.4vw, 6rem);
    line-height: .82;
    letter-spacing: -.03em;
}

.relaunch-page--discover .feature-timeline-copy p {
    grid-column: 2;
    grid-row: 1 / 3;
    max-width: 620px;
    margin: 0;
    align-self: center;
    color: rgba(255, 255, 255, .68);
    font-size: clamp(.94rem, 1.2vw, 1.06rem);
    line-height: 1.75;
}

.relaunch-page--discover .feature-timeline-copy footer {
    grid-column: 1 / -1;
    grid-row: 3;
    display: flex;
    width: 100%;
    margin-top: 42px;
    padding-top: 24px;
    border-top: 1px solid rgba(255, 255, 255, .09);
    align-items: center;
    gap: 12px;
    color: rgba(255, 255, 255, .4);
    font-size: .56rem;
    font-weight: 900;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.relaunch-page--discover .feature-timeline-copy footer b {
    height: 1px;
    flex: 1;
    background: rgba(255, 255, 255, .12);
}

.relaunch-page--discover .feature-timeline-copy footer strong {
    color: #ef9bc9;
    font-size: inherit;
}

.feature-timeline-empty {
    padding: clamp(34px, 6vw, 72px);
    border: 1px dashed rgba(99, 221, 255, .24);
    border-radius: 28px;
    background: rgba(9, 10, 23, .68);
}

.feature-timeline-empty h2 {
    max-width: 720px;
    margin: 14px 0;
    font: 800 clamp(2.8rem, 5vw, 5.5rem)/.86 'Barlow Condensed', sans-serif;
    text-transform: uppercase;
}

.feature-timeline-empty p { max-width: 620px; color: rgba(255, 255, 255, .62); line-height: 1.7; }

@media (max-width: 900px) {
    .relaunch-page--discover .feature-timeline { gap: 18px; }
    .relaunch-page--discover .feature-timeline-head { min-height: 0; align-items: flex-start; flex-direction: column; }
    .relaunch-page--discover .feature-timeline-head > p { justify-items: start; }
    .relaunch-page--discover .feature-timeline-item {
        min-height: 0;
        padding: 0;
        grid-template-columns: 1fr;
        border-radius: 24px;
    }
    .relaunch-page--discover .feature-timeline-item .feature-timeline-image,
    .relaunch-page--discover .feature-timeline-item:nth-of-type(even) .feature-timeline-image {
        grid-column: 1;
        grid-row: 1;
        min-height: clamp(280px, 58vw, 430px);
        border-radius: 17px;
    }
    .relaunch-page--discover .feature-timeline-item .feature-timeline-copy,
    .relaunch-page--discover .feature-timeline-item:nth-of-type(even) .feature-timeline-copy {
        grid-column: 1;
        grid-row: 1;
        padding: 78px 24px 28px;
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        row-gap: 0;
    }
    .relaunch-page--discover .feature-timeline-item .feature-timeline-marker,
    .relaunch-page--discover .feature-timeline-item:nth-of-type(even) .feature-timeline-marker {
        top: 26px;
        right: auto;
        left: 26px;
    }
    .relaunch-page--discover .feature-timeline-copy > span,
    .relaunch-page--discover .feature-timeline-copy h2,
    .relaunch-page--discover .feature-timeline-copy p,
    .relaunch-page--discover .feature-timeline-copy footer {
        grid-column: 1;
        grid-row: auto;
    }
    .relaunch-page--discover .feature-timeline-copy p { margin-top: 4px; }
    .relaunch-page--discover .feature-timeline-copy footer { margin-top: 30px; }
    .relaunch-page--discover .feature-timeline-copy h2 { font-size: clamp(2.8rem, 13vw, 5rem); }
}

@media (max-width: 560px) {
    .relaunch-page--discover .feature-timeline-head { padding: 24px 20px; border-radius: 22px; }
    .relaunch-page--discover .feature-timeline-head > p { display: none; }
    .relaunch-page--discover .feature-timeline-copy footer { align-items: flex-start; flex-direction: column; }
    .relaunch-page--discover .feature-timeline-copy footer b { width: 100%; flex: none; }
}

@media (prefers-reduced-motion: reduce) {
    .relaunch-page--discover .feature-timeline-item,
    .relaunch-page--discover .feature-timeline-image { transition: none; }
    .relaunch-page--discover .feature-timeline-item.is-visible:hover { transform: none; }
}

/* Roster character dossier dialog ------------------------------------------ */
body.character-profile-open { overflow: hidden; }

.character-profile-dialog {
    width: min(1180px, calc(100vw - 32px));
    max-width: none;
    max-height: min(900px, calc(100svh - 32px));
    margin: auto;
    padding: 0;
    overflow: visible;
    border: 0;
    border-radius: 30px;
    color: #fff;
    background: transparent;
}

.character-profile-dialog[open] { animation: character-dialog-in 280ms cubic-bezier(.2, .8, .2, 1) both; }

.character-profile-dialog::backdrop {
    background: rgba(3, 4, 10, .84);
    backdrop-filter: blur(16px) saturate(.72);
}

.character-profile-dialog-shell {
    position: relative;
    display: grid;
    max-height: min(900px, calc(100svh - 32px));
    grid-template-columns: minmax(320px, .78fr) minmax(0, 1.22fr);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 30px;
    background:
        radial-gradient(circle at 92% 8%, rgba(99, 221, 255, .12), transparent 28%),
        linear-gradient(145deg, rgba(29, 14, 47, .99), rgba(7, 9, 21, .99));
    box-shadow: 0 48px 160px rgba(0, 0, 0, .68);
}

.character-profile-dialog-close {
    position: absolute;
    z-index: 5;
    top: 20px;
    right: 20px;
    width: 48px;
    height: 48px;
    display: grid;
    padding: 0;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 50%;
    color: #fff;
    background: rgba(7, 9, 21, .68);
    box-shadow: 0 10px 35px rgba(0, 0, 0, .28);
    cursor: pointer;
    backdrop-filter: blur(12px);
    transition: border-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.character-profile-dialog-close span { font: 300 1.8rem/1 'DM Sans', sans-serif; transform: translateY(-1px); }
.character-profile-dialog-close:hover,
.character-profile-dialog-close:focus-visible { border-color: #63ddff; color: #63ddff; outline: none; transform: rotate(8deg); }

.character-profile-dialog-media {
    position: relative;
    min-height: 680px;
    overflow: hidden;
    background: radial-gradient(circle at 50% 32%, rgba(99, 221, 255, .16), transparent 42%), #0a0c18;
}

.character-profile-dialog-media::after {
    position: absolute;
    inset: 30% 0 0;
    content: '';
    background: linear-gradient(transparent, rgba(6, 7, 16, .92));
    pointer-events: none;
}

.character-profile-dialog-media > img {
    width: 100%;
    height: 100%;
    min-height: 680px;
    display: block;
    object-fit: cover;
    object-position: center top;
}

.character-profile-dialog-placeholder {
    position: absolute;
    inset: 0;
    overflow: hidden;
    background: #070914;
}

.character-profile-dialog-placeholder .character-profile-placeholder-art {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 100%;
    object-fit: cover;
    opacity: .82;
    filter: saturate(.86) contrast(1.04);
}

.character-profile-dialog-placeholder::after {
    position: absolute;
    inset: 0;
    content: '';
    background: linear-gradient(180deg, rgba(5,7,16,.08), rgba(5,7,16,.22) 48%, rgba(5,7,16,.82));
}

.character-profile-placeholder-copy {
    position: absolute;
    z-index: 2;
    inset: 0;
    display: grid;
    padding: 38px;
    place-content: center;
    justify-items: center;
    text-align: center;
}

.character-profile-placeholder-copy img {
    width: min(260px, 62%);
    height: auto;
    margin: -42px 0 -12px;
    filter: drop-shadow(0 0 38px rgba(99,221,255,.38));
}

.character-profile-placeholder-copy strong {
    font: 900 clamp(1.9rem,3.4vw,3rem)/.92 'Barlow Condensed',sans-serif;
    letter-spacing: .025em;
    text-shadow: 0 8px 30px rgba(0,0,0,.72);
    text-transform: uppercase;
}

.character-profile-placeholder-copy span {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-top: 14px;
    color: #82e5ff;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .22em;
    text-shadow: 0 4px 18px rgba(0,0,0,.82);
    text-transform: uppercase;
}

.character-profile-placeholder-copy span::before,
.character-profile-placeholder-copy span::after {
    width: 28px;
    height: 1px;
    content: '';
    background: linear-gradient(90deg, transparent, rgba(99,221,255,.72));
}

.character-profile-placeholder-copy span::after { transform: scaleX(-1); }

.character-profile-dialog-media-meta {
    position: absolute;
    z-index: 2;
    right: 28px;
    bottom: 26px;
    left: 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    color: rgba(255, 255, 255, .58);
    font-size: .58rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.character-profile-dialog-media-meta span { color: #ef9bc9; }

.character-profile-dialog-content {
    width: 100%;
    min-width: 0;
    max-height: min(900px, calc(100svh - 32px));
    padding: clamp(44px, 6vw, 78px);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    scrollbar-width: thin;
    scrollbar-color: rgba(99, 221, 255, .72) rgba(7, 9, 21, .72);
}

.character-profile-dialog-content::-webkit-scrollbar,
.character-profile-dialog-shell::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

.character-profile-dialog-content::-webkit-scrollbar-track,
.character-profile-dialog-shell::-webkit-scrollbar-track {
    background: rgba(7, 9, 21, .78);
    border-left: 1px solid rgba(255, 255, 255, .06);
}

.character-profile-dialog-content::-webkit-scrollbar-thumb,
.character-profile-dialog-shell::-webkit-scrollbar-thumb {
    min-height: 72px;
    border: 2px solid rgba(7, 9, 21, .92);
    border-radius: 999px;
    background: linear-gradient(180deg, #63ddff, #8d8cff 52%, #ef9bc9);
}

.character-profile-dialog-content::-webkit-scrollbar-thumb:hover,
.character-profile-dialog-shell::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, #9aebff, #a8a7ff 52%, #ffc0e1);
}

.character-profile-dialog-content header > span,
.character-profile-dialog-story > span {
    color: #63ddff;
    font-size: .62rem;
    font-weight: 900;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.character-profile-dialog-content header h2 {
    width: 100%;
    max-width: 660px;
    margin: 15px 0 8px;
    color: #fff;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 800;
    line-height: .82;
    letter-spacing: -.035em;
    overflow-wrap: anywhere;
    text-wrap: balance;
    text-transform: uppercase;
}

.character-profile-dialog-content header h2.is-short { font-size: clamp(4.5rem, 7vw, 7rem); }
.character-profile-dialog-content header h2.is-medium { font-size: clamp(3.5rem, 5.2vw, 5rem); }
.character-profile-dialog-content header h2.is-long { font-size: clamp(2.9rem, 4.2vw, 4rem); }
.character-profile-dialog-content header h2.is-extra-long { font-size: clamp(2.35rem, 3.4vw, 3.25rem); }

.character-profile-dialog-content header p { margin: 0; color: rgba(255, 255, 255, .62); font-size: .9rem; }
.character-profile-dialog-content header p strong { color: #fff; }

.character-profile-dialog-content header em {
    display: inline-flex;
    margin-top: 16px;
    padding: 8px 12px;
    border: 1px solid rgba(239, 155, 201, .24);
    border-radius: 999px;
    color: #f4b5d7;
    background: rgba(239, 155, 201, .08);
    font-size: .62rem;
    font-style: normal;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.character-profile-dialog-story {
    margin-top: clamp(38px, 6vw, 66px);
    padding-top: 26px;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.character-profile-dialog-story p {
    max-width: 720px;
    margin: 14px 0 0;
    color: rgba(255, 255, 255, .68);
    font-size: clamp(.95rem, 1.2vw, 1.06rem);
    line-height: 1.75;
}

.character-profile-dialog-details {
    display: grid;
    margin-top: 32px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 17px;
    background: rgba(255, 255, 255, .1);
}

.character-profile-dialog-details > div {
    display: grid;
    min-height: 102px;
    padding: 17px;
    align-content: end;
    gap: 7px;
    background: rgba(5, 8, 18, .72);
}

.character-profile-dialog-details span {
    color: #63ddff;
    font-size: .55rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.character-profile-dialog-details strong {
    color: #fff;
    font: 700 1.08rem/1.15 'Barlow Condensed', sans-serif;
    overflow-wrap: anywhere;
}

@keyframes character-dialog-in {
    from { opacity: 0; transform: translateY(22px) scale(.985); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (max-width: 800px) {
    .character-profile-dialog { width: calc(100vw - 18px); max-height: calc(100svh - 18px); }
    .character-profile-dialog-shell {
        display: block;
        max-height: calc(100svh - 18px);
        overflow-x: hidden;
        overflow-y: auto;
        border-radius: 24px;
        scrollbar-width: thin;
        scrollbar-color: rgba(99, 221, 255, .72) rgba(7, 9, 21, .72);
    }
    .character-profile-dialog-media { min-height: min(58svh, 560px); }
    .character-profile-dialog-media > img { min-height: min(58svh, 560px); }
    .character-profile-dialog-content { max-height: none; padding: 36px 22px 30px; overflow: visible; }
    .character-profile-dialog-content header h2.is-short { font-size: clamp(3.7rem, 17vw, 5.8rem); }
    .character-profile-dialog-content header h2.is-medium { font-size: clamp(3rem, 13vw, 4.8rem); }
    .character-profile-dialog-content header h2.is-long { font-size: clamp(2.55rem, 10vw, 3.8rem); }
    .character-profile-dialog-content header h2.is-extra-long { font-size: clamp(2.15rem, 8.5vw, 3.15rem); }
}

@media (max-width: 520px) {
    .character-profile-dialog-details { grid-template-columns: 1fr; }
    .character-profile-dialog-media-meta { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
    .character-profile-dialog[open] { animation: none; }
    .character-profile-dialog-close { transition: none; }
}

/* Compact image-free feature cards ----------------------------------------- */
.relaunch-page--discover .feature-timeline {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.relaunch-page--discover .feature-timeline-head,
.relaunch-page--discover .feature-timeline-empty {
    grid-column: 1 / -1;
}

.relaunch-page--discover .feature-timeline-item {
    min-height: 0;
    display: block;
    padding: 0;
    isolation: isolate;
    border-radius: 25px;
    background:
        radial-gradient(circle at 100% 0, rgba(99, 221, 255, .12), transparent 35%),
        radial-gradient(circle at 0 100%, rgba(239, 155, 201, .1), transparent 38%),
        linear-gradient(145deg, rgba(25, 14, 42, .96), rgba(7, 9, 21, .98));
    box-shadow: 0 24px 65px rgba(0, 0, 0, .27);
}

.relaunch-page--discover .feature-timeline-item::before {
    position: absolute;
    z-index: 2;
    top: 24px;
    bottom: 24px;
    left: 0;
    width: 3px;
    border-radius: 0 4px 4px 0;
    background: linear-gradient(180deg, #63ddff, #ef9bc9);
    box-shadow: 0 0 24px rgba(99, 221, 255, .3);
    content: '';
}

.relaunch-page--discover .feature-timeline-item::after {
    position: absolute;
    z-index: -1;
    right: -36px;
    bottom: -58px;
    color: rgba(255, 255, 255, .025);
    content: 'A';
    font: 800 13rem/.8 'Barlow Condensed', sans-serif;
    pointer-events: none;
}

.relaunch-page--discover .feature-timeline-item:last-of-type:nth-child(even) {
    grid-column: 1 / -1;
}

.relaunch-page--discover .feature-timeline-item .feature-timeline-marker,
.relaunch-page--discover .feature-timeline-item:nth-of-type(even) .feature-timeline-marker {
    top: 26px;
    right: 26px;
    left: auto;
    min-width: 82px;
    padding: 9px 12px;
    background: rgba(7, 9, 21, .66);
}

.relaunch-page--discover .feature-timeline-item .feature-timeline-copy,
.relaunch-page--discover .feature-timeline-item:nth-of-type(even) .feature-timeline-copy {
    min-height: 290px;
    display: flex;
    padding: 34px 34px 28px;
    grid-column: auto;
    grid-row: auto;
    align-items: flex-start;
    flex-direction: column;
}

.relaunch-page--discover .feature-timeline-copy > span,
.relaunch-page--discover .feature-timeline-copy h2,
.relaunch-page--discover .feature-timeline-copy p,
.relaunch-page--discover .feature-timeline-copy footer {
    grid-column: auto;
    grid-row: auto;
}

.relaunch-page--discover .feature-timeline-copy > span {
    max-width: calc(100% - 112px);
    min-height: 30px;
}

.relaunch-page--discover .feature-timeline-copy h2 {
    max-width: 540px;
    margin: 20px 0 14px;
    font-size: clamp(2.7rem, 4.2vw, 4.7rem);
    line-height: .86;
}

.relaunch-page--discover .feature-timeline-copy p {
    max-width: 590px;
    margin: 0;
    align-self: auto;
    font-size: .96rem;
    line-height: 1.65;
}

.relaunch-page--discover .feature-timeline-copy footer {
    margin-top: auto;
    padding-top: 22px;
    border-top: 0;
}

.relaunch-page--discover .feature-timeline-copy footer b {
    background: linear-gradient(90deg, rgba(99, 221, 255, .22), rgba(255, 255, 255, .07));
}

.relaunch-page--discover .feature-timeline-item.is-visible:hover {
    border-color: rgba(99, 221, 255, .32);
    box-shadow: 0 32px 85px rgba(0, 0, 0, .35), 0 0 0 1px rgba(99, 221, 255, .06);
}

@media (max-width: 900px) {
    .relaunch-page--discover .feature-timeline { grid-template-columns: 1fr; }
    .relaunch-page--discover .feature-timeline-item:last-of-type:nth-child(even) { grid-column: auto; }
    .relaunch-page--discover .feature-timeline-item .feature-timeline-copy,
    .relaunch-page--discover .feature-timeline-item:nth-of-type(even) .feature-timeline-copy {
        min-height: 0;
        padding: 30px 24px 24px;
    }
    .relaunch-page--discover .feature-timeline-copy h2 {
        margin-top: 18px;
        font-size: clamp(2.7rem, 11vw, 4.4rem);
    }
    .relaunch-page--discover .feature-timeline-copy footer { margin-top: 28px; }
}

@media (max-width: 520px) {
    .relaunch-page--discover .feature-timeline-item .feature-timeline-marker,
    .relaunch-page--discover .feature-timeline-item:nth-of-type(even) .feature-timeline-marker {
        top: 22px;
        right: 20px;
    }
    .relaunch-page--discover .feature-timeline-copy > span { max-width: calc(100% - 96px); }
}

/* Compact feature card refinement ------------------------------------------ */
.relaunch-page--discover .feature-timeline {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.relaunch-page--discover .feature-timeline-item,
.relaunch-page--discover .feature-timeline-item:last-of-type:nth-child(even) {
    grid-column: auto;
}

.relaunch-page--discover .feature-timeline-item::after {
    right: -24px;
    bottom: -34px;
    font-size: 9rem;
}

.relaunch-page--discover .feature-timeline-item .feature-timeline-copy,
.relaunch-page--discover .feature-timeline-item:nth-of-type(even) .feature-timeline-copy {
    min-height: 310px;
    padding: 28px 26px 22px;
}

.relaunch-page--discover .feature-timeline-item .feature-timeline-marker,
.relaunch-page--discover .feature-timeline-item:nth-of-type(even) .feature-timeline-marker {
    top: 22px;
    right: 22px;
    min-width: 72px;
    padding: 8px 10px;
}

.relaunch-page--discover .feature-timeline-marker small { font-size: .49rem; }
.relaunch-page--discover .feature-timeline-marker span { font-size: .94rem; }

.relaunch-page--discover .feature-timeline-copy > span {
    min-height: 24px;
    max-width: calc(100% - 92px);
    font-size: .58rem;
    letter-spacing: .14em;
}

.relaunch-page--discover .feature-timeline-copy h2 {
    max-width: 100%;
    margin: 18px 0 17px;
    font-size: clamp(2.25rem, 3.25vw, 3.65rem);
    line-height: .88;
}

.feature-timeline-description {
    position: relative;
    width: 100%;
    padding: 15px 16px 16px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 13px;
    background: linear-gradient(135deg, rgba(99, 221, 255, .055), rgba(255, 255, 255, .025));
}

.feature-timeline-description::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 2px;
    background: linear-gradient(#63ddff, #ef9bc9);
    content: '';
}

.feature-timeline-description > span {
    display: block;
    margin-bottom: 8px;
    color: #63ddff;
    font-size: .51rem;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.relaunch-page--discover .feature-timeline-copy .feature-timeline-description p {
    max-width: none;
    margin: 0;
    color: rgba(255, 255, 255, .68);
    font-size: .86rem;
    line-height: 1.55;
}

.relaunch-page--discover .feature-timeline-copy footer {
    margin-top: auto;
    padding-top: 18px;
    font-size: .5rem;
}

@media (max-width: 1100px) {
    .relaunch-page--discover .feature-timeline { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
    .relaunch-page--discover .feature-timeline { grid-template-columns: 1fr; }
    .relaunch-page--discover .feature-timeline-item .feature-timeline-copy,
    .relaunch-page--discover .feature-timeline-item:nth-of-type(even) .feature-timeline-copy {
        min-height: 0;
        padding: 26px 22px 21px;
    }
    .relaunch-page--discover .feature-timeline-copy h2 { font-size: clamp(2.5rem, 12vw, 4rem); }
}

/* Main cinematic feature directory ---------------------------------------- */
.cinematic-panel-wide h2 {
    margin-bottom: 20px;
    font-size: clamp(2.8rem, 5.2vw, 5.8rem);
}

.cinematic-panel-wide .cinematic-card-grid {
    display: grid;
    max-height: min(43svh, 470px);
    margin-top: 0;
    padding: 0 10px 0 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: minmax(132px, auto);
    gap: 10px;
    overflow-y: auto;
    overscroll-behavior: contain;
    border: 0;
    border-radius: 0;
    background: transparent;
    scrollbar-color: #63ddff rgba(255, 255, 255, .07);
    scrollbar-gutter: stable;
    scrollbar-width: thin;
}

.cinematic-panel-wide .cinematic-card-grid::-webkit-scrollbar { width: 7px; }
.cinematic-panel-wide .cinematic-card-grid::-webkit-scrollbar-track {
    border-radius: 999px;
    background: rgba(255, 255, 255, .06);
}
.cinematic-panel-wide .cinematic-card-grid::-webkit-scrollbar-thumb {
    border: 1px solid rgba(8, 9, 20, .72);
    border-radius: 999px;
    background: linear-gradient(180deg, #63ddff, #ef9bc9);
}
.cinematic-panel-wide .cinematic-card-grid::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, #a8efff, #f6b8da);
}

.cinematic-panel-wide .cinematic-card-grid > div {
    position: relative;
    min-height: 132px;
    display: grid;
    padding: 18px 19px 17px 22px;
    grid-template-columns: 36px minmax(0, 1fr);
    grid-template-rows: auto 1fr;
    gap: 10px 12px;
    align-content: start;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 15px;
    background:
        radial-gradient(circle at 100% 0, rgba(99, 221, 255, .08), transparent 42%),
        linear-gradient(145deg, rgba(22, 13, 38, .9), rgba(7, 9, 21, .9));
}

.cinematic-panel-wide .cinematic-card-grid > div::before {
    position: absolute;
    top: 16px;
    bottom: 16px;
    left: 0;
    width: 2px;
    border-radius: 0 3px 3px 0;
    background: linear-gradient(#63ddff, #ef9bc9);
    content: '';
}

.cinematic-panel-wide .cinematic-card-grid b {
    width: 34px;
    height: 34px;
    display: grid;
    grid-column: 1;
    grid-row: 1;
    place-items: center;
    border: 1px solid rgba(99, 221, 255, .18);
    border-radius: 50%;
    color: #63ddff;
    background: rgba(99, 221, 255, .06);
    font: 800 .67rem/1 var(--body-font);
}

.cinematic-panel-wide .cinematic-card-grid strong {
    min-width: 0;
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    color: #fff;
    font: 800 clamp(1.25rem, 2vw, 1.7rem)/.95 var(--display);
    letter-spacing: .01em;
}

.cinematic-panel-wide .cinematic-card-grid p {
    max-width: none;
    margin: 0;
    grid-column: 1 / -1;
    grid-row: 2;
    color: rgba(255, 255, 255, .62);
    font-size: .79rem;
    line-height: 1.48;
}

@media (max-width: 900px) {
    .cinematic-panel-wide h2 { margin-bottom: 16px; font-size: clamp(2.55rem, 11vw, 4.4rem); }
    .cinematic-panel-wide .cinematic-card-grid {
        max-height: 44svh;
        grid-template-columns: 1fr;
        grid-auto-rows: minmax(112px, auto);
        gap: 8px;
    }
    .cinematic-panel-wide .cinematic-card-grid > div { min-height: 112px; padding: 15px 16px 14px 19px; }
}

/* Season One roster preview ------------------------------------------------- */
.relaunch-page--roster {
    --page-image: url('../images/backgroundimage4.webp');
}

.relaunch-page--roster .roster-hero {
    min-height: clamp(590px, 72vh, 760px);
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr);
    align-items: end;
    gap: clamp(34px, 6vw, 88px);
    padding: clamp(34px, 6vw, 78px);
    background:
        radial-gradient(circle at 84% 18%, rgba(99, 221, 255, .13), transparent 28%),
        linear-gradient(118deg, rgba(18, 9, 34, .92), rgba(7, 9, 21, .56) 58%, rgba(7, 9, 21, .88));
}

.relaunch-page--roster .roster-hero::before {
    background:
        linear-gradient(90deg, rgba(7, 8, 18, .14), transparent 55%),
        linear-gradient(0deg, rgba(7, 8, 18, .48), transparent 55%);
}

.roster-hero-copy {
    position: relative;
    z-index: 1;
    max-width: 700px;
}

.roster-hero-copy > span {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #63ddff;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .17em;
    text-transform: uppercase;
}

.roster-hero-copy > span::before {
    width: 24px;
    height: 1px;
    background: #63ddff;
    content: '';
}

.relaunch-page--roster .roster-hero h1 {
    max-width: 720px;
    margin: 20px 0 22px;
    font-size: clamp(5rem, 10vw, 10rem);
    line-height: .75;
    letter-spacing: -.045em;
}

.relaunch-page--roster .roster-hero-copy > p {
    max-width: 620px;
    margin: 0;
    color: rgba(255, 255, 255, .72);
    font-size: clamp(.98rem, 1.25vw, 1.1rem);
    line-height: 1.72;
}

.roster-command {
    position: relative;
    z-index: 1;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 22px;
    background: rgba(7, 9, 21, .72);
    box-shadow: 0 28px 75px rgba(0, 0, 0, .3);
    backdrop-filter: blur(18px);
}

.roster-command::before {
    display: block;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, #63ddff, #ef9bc9, transparent);
    content: '';
}

.roster-command-status {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.roster-command-status > span {
    min-width: 0;
    display: grid;
    gap: 8px;
    padding: 18px 16px;
}

.roster-command-status > span + span {
    border-left: 1px solid rgba(255, 255, 255, .1);
}

.roster-command-status small {
    color: rgba(255, 255, 255, .42);
    font-size: .52rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.roster-command-status strong {
    color: #fff;
    font: 800 clamp(.9rem, 1.25vw, 1.1rem)/1 var(--display);
    text-transform: uppercase;
}

.relaunch-page--roster .roster-toolbar {
    align-items: end;
    margin: 0;
    padding: 20px;
}

.relaunch-page--roster .roster-search {
    width: 100%;
}

.relaunch-page--roster .roster-search > span:first-child {
    color: rgba(255, 255, 255, .54);
    font-size: .59rem;
    letter-spacing: .12em;
}

.roster-search-field {
    position: relative;
    display: block;
}

.relaunch-page--roster .roster-search-field input {
    min-height: 54px;
    padding: 0 48px 0 17px;
    border-color: rgba(255, 255, 255, .14);
    border-radius: 13px;
    background: rgba(255, 255, 255, .045);
}

.roster-search-field b {
    position: absolute;
    top: 50%;
    right: 17px;
    color: #63ddff;
    font: 700 1.25rem/1 var(--body-font);
    transform: translateY(-50%);
    pointer-events: none;
}

.relaunch-page--roster .roster-count {
    flex: 0 0 auto;
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    padding-inline: 15px;
    border: 1px solid rgba(239, 155, 201, .22);
    border-radius: 13px;
    color: #ef9bc9;
    background: rgba(239, 155, 201, .06);
    white-space: nowrap;
}

.relaunch-page--roster .roster-collection {
    max-width: 1280px;
    margin-top: 18px;
    padding: clamp(24px, 4vw, 50px);
    border-radius: 30px;
    background:
        radial-gradient(circle at 92% 0, rgba(99, 221, 255, .08), transparent 28%),
        linear-gradient(145deg, rgba(25, 13, 42, .94), rgba(7, 9, 21, .96));
}

.relaunch-page--roster .roster-collection-head {
    padding-bottom: 28px;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.roster-collection-note {
    max-width: 410px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.roster-collection-note b {
    width: 8px;
    height: 8px;
    flex: 0 0 8px;
    margin-top: 8px;
    border-radius: 50%;
    background: #63ddff;
    box-shadow: 0 0 18px rgba(99, 221, 255, .7);
}

.relaunch-page--roster .roster-collection-note p {
    max-width: none;
    font-size: .88rem;
}

.relaunch-page--roster .roster-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.relaunch-page--roster .player-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    border-color: rgba(255, 255, 255, .11);
    border-radius: 19px;
    background: rgba(6, 8, 19, .82);
    box-shadow: 0 18px 50px rgba(0, 0, 0, .2);
}

.relaunch-page--roster .player-card-reveal-trigger {
    flex: 0 0 auto;
}

.relaunch-page--roster .player-card-media {
    height: auto;
    aspect-ratio: 4 / 4.15;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.relaunch-page--roster .player-card-copy {
    min-height: 134px;
    padding: 20px 21px;
    align-content: start;
}

.relaunch-page--roster .player-card-copy strong {
    font-size: clamp(1.55rem, 2.2vw, 2rem);
    line-height: 1;
    text-transform: uppercase;
}

.relaunch-page--roster .player-card-profile {
    margin-top: auto;
    border-top: 1px solid transparent;
}

.relaunch-page--roster .player-card.is-revealed .player-card-profile {
    min-height: 58px;
    align-items: center;
    padding: 0 21px;
    border-top-color: rgba(255, 255, 255, .09);
}

.relaunch-page--roster .roster-empty {
    min-height: 220px;
    margin: 0;
    place-content: center;
    border: 1px dashed rgba(255, 255, 255, .15);
    border-radius: 18px;
    text-align: center;
}

.relaunch-page--roster .roster-empty:not([hidden]) {
    display: grid;
}

@media (max-width: 1050px) {
    .relaunch-page--roster .roster-hero {
        min-height: 0;
        grid-template-columns: 1fr;
    }

    .relaunch-page--roster .roster-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 620px) {
    .relaunch-page--roster .roster-hero {
        gap: 28px;
        padding: 28px 20px 22px;
    }

    .relaunch-page--roster .roster-hero h1 {
        margin-top: 16px;
        font-size: clamp(4.3rem, 22vw, 6.6rem);
    }

    .roster-command-status {
        grid-template-columns: 1fr 1fr;
    }

    .roster-command-status > span:last-child {
        display: none;
    }

    .relaunch-page--roster .roster-toolbar {
        gap: 10px;
        padding: 15px;
    }

    .relaunch-page--roster .roster-count {
        min-height: 0;
        padding: 0;
        border: 0;
        background: transparent;
    }

    .relaunch-page--roster .roster-collection {
        padding: 21px 14px 14px;
        border-radius: 22px;
    }

    .relaunch-page--roster .roster-grid {
        grid-template-columns: 1fr;
    }

    .relaunch-page--roster .player-card-media {
        aspect-ratio: 4 / 4.4;
    }
}

/* Relaunch account and supporter experience -------------------------------- */
.relaunch-menu-account {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 9px;
}

.relaunch-menu-account .relaunch-menu-logout {
    min-width: 126px;
    grid-template-columns: 1fr auto;
    border-color: rgba(255, 255, 255, .13);
    color: #fff;
    background: rgba(255, 255, 255, .035);
}

.relaunch-menu-account .relaunch-menu-logout > span:first-child {
    display: none;
}

.relaunch-menu-account .relaunch-menu-logout:hover,
.relaunch-menu-account .relaunch-menu-logout:focus-visible {
    border-color: rgba(239, 155, 201, .55);
    color: #ef9bc9;
    outline: none;
}

.relaunch-page--account { --page-image: url('../images/backgroundimage4.webp'); --page-code: 'ACCOUNT // 07'; }
.relaunch-page--shop { --page-image: url('../images/backgroundimage3.webp'); --page-code: 'SHOP // 08'; }
.relaunch-page--join { --page-image: url('../images/backgroundimage1.webp'); --page-code: 'QUEUE // LIVE'; }
.relaunch-page--supporter { --page-image: url('../images/backgroundimage3.webp'); --page-code: 'SUPPORT // 09'; }

.relaunch-account-gate {
    width: min(920px, 100%);
    min-height: 560px;
    display: flex;
    margin: 0 auto;
    padding: clamp(34px, 7vw, 84px);
    align-items: flex-start;
    justify-content: flex-end;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 30px;
    background:
        radial-gradient(circle at 80% 18%, rgba(99, 221, 255, .13), transparent 30%),
        linear-gradient(145deg, rgba(29, 14, 47, .92), rgba(7, 9, 21, .95));
    box-shadow: 0 36px 100px rgba(0, 0, 0, .38);
}

.relaunch-account-gate > span {
    color: #63ddff;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.relaunch-account-gate h1,
.relaunch-account-gate h2 {
    max-width: 720px;
    margin: 18px 0;
    color: #fff;
    font: 800 clamp(4rem, 9vw, 8rem)/.8 var(--display);
    letter-spacing: -.035em;
    text-transform: uppercase;
}

.relaunch-account-gate p { max-width: 620px; margin: 0; color: rgba(255,255,255,.68); line-height: 1.7; }
.relaunch-account-gate > a {
    min-height: 50px;
    display: inline-flex;
    margin-top: 28px;
    padding: 0 22px;
    align-items: center;
    gap: 26px;
    border-radius: 999px;
    color: #170d1b;
    background: #ef9bc9;
    font-size: .73rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-decoration: none;
    text-transform: uppercase;
}

.relaunch-account-hero,
.relaunch-account-grid,
.relaunch-account-quicklinks,
.supporter-intro,
.supporter-product-grid,
.supporter-assurance {
    width: min(1240px, 100%);
    margin-inline: auto;
}

.relaunch-account-hero {
    position: relative;
    min-height: 360px;
    display: flex;
    padding: clamp(28px, 5vw, 58px);
    align-items: flex-end;
    justify-content: space-between;
    gap: 30px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 30px;
    background:
        radial-gradient(circle at 85% 10%, rgba(99, 221, 255, .15), transparent 28%),
        linear-gradient(125deg, rgba(31, 14, 49, .94), rgba(7, 9, 21, .9));
    box-shadow: 0 34px 100px rgba(0, 0, 0, .36);
}

.relaunch-account-hero::before {
    position: absolute;
    top: 0;
    right: 0;
    width: 42%;
    height: 2px;
    background: linear-gradient(90deg, transparent, #63ddff);
    content: '';
}

.relaunch-account-identity {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: clamp(20px, 3vw, 34px);
}

.relaunch-account-identity > img {
    width: clamp(92px, 12vw, 138px);
    height: clamp(92px, 12vw, 138px);
    flex: 0 0 auto;
    border: 2px solid rgba(99, 221, 255, .55);
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 0 0 10px rgba(99, 221, 255, .05), 0 22px 60px rgba(0, 0, 0, .4);
}

.relaunch-account-identity span {
    color: #63ddff;
    font-size: .64rem;
    font-weight: 900;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.relaunch-account-identity h1 {
    margin: 12px 0 8px;
    color: #fff;
    font: 800 clamp(3.8rem, 8vw, 7.6rem)/.78 var(--display);
    letter-spacing: -.035em;
    text-transform: uppercase;
}

.relaunch-account-identity p { margin: 0; color: rgba(255,255,255,.58); font-size: .85rem; }

.relaunch-account-hero-actions {
    position: relative;
    z-index: 1;
    min-width: min(310px, 100%);
    display: grid;
    gap: 10px;
}

.relaunch-account-hero-actions > span {
    display: grid;
    gap: 7px;
    padding: 18px 20px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 16px;
    background: rgba(5, 7, 17, .54);
}

.relaunch-account-hero-actions small,
.relaunch-role-primary small {
    color: rgba(255,255,255,.42);
    font-size: .57rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.relaunch-account-hero-actions strong { color: #fff; font: 800 1.65rem/1 var(--display); text-transform: uppercase; }
.relaunch-account-hero-actions > a {
    min-height: 52px;
    display: flex;
    padding: 0 19px;
    align-items: center;
    justify-content: space-between;
    border-radius: 15px;
    color: #170d1b;
    background: #ef9bc9;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-decoration: none;
    text-transform: uppercase;
}

.relaunch-account-grid {
    display: grid;
    margin-top: 18px;
    grid-template-columns: minmax(0, 1.35fr) minmax(310px, .65fr);
    gap: 18px;
}

.relaunch-account-module {
    padding: clamp(26px, 4vw, 46px);
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 26px;
    background: linear-gradient(145deg, rgba(26, 13, 43, .94), rgba(7, 9, 21, .96));
    box-shadow: 0 25px 70px rgba(0,0,0,.24);
}

.relaunch-account-module-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 23px;
    border-bottom: 1px solid rgba(255,255,255,.1);
}

.relaunch-account-module-head span { color: #63ddff; font-size: .6rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.relaunch-account-module-head h2 { margin: 10px 0 0; color: #fff; font: 800 clamp(2.1rem, 4vw, 3.7rem)/.86 var(--display); text-transform: uppercase; }
.application-state { padding: 8px 11px; border: 1px solid rgba(242,197,107,.3); border-radius: 999px; color: #f2c56b; background: rgba(242,197,107,.07); font-size: .59rem; letter-spacing: .09em; text-transform: uppercase; }
.application-state--accepted { border-color: rgba(99,221,255,.35); color: #63ddff; background: rgba(99,221,255,.08); }
.application-state--denied { border-color: rgba(255,91,104,.35); color: #ff8f98; background: rgba(255,91,104,.08); }

.relaunch-application-summary {
    display: grid;
    margin-top: 24px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 16px;
    background: rgba(255,255,255,.1);
}

.relaunch-application-summary > span { min-width: 0; display: grid; gap: 8px; padding: 19px; background: rgba(5,7,17,.72); }
.relaunch-application-summary small { color: rgba(255,255,255,.4); font-size: .55rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.relaunch-application-summary strong { color: #fff; font: 700 1.05rem/1.15 var(--display); overflow-wrap: anywhere; text-transform: uppercase; }

.relaunch-application-track {
    position: relative;
    display: grid;
    margin: 34px 0 28px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.relaunch-application-track::before { position: absolute; top: 6px; right: 12%; left: 12%; height: 1px; background: rgba(255,255,255,.14); content: ''; }
.relaunch-application-track > span { position: relative; display: grid; justify-items: center; gap: 9px; color: rgba(255,255,255,.36); font-size: .58rem; font-weight: 900; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.relaunch-application-track b { position: relative; z-index: 1; width: 13px; height: 13px; border: 3px solid #171726; border-radius: 50%; background: rgba(255,255,255,.22); }
.relaunch-application-track > span.is-complete { color: #fff; }
.relaunch-application-track > span.is-complete b { background: #63ddff; box-shadow: 0 0 18px rgba(99,221,255,.65); }
.relaunch-application-track[data-status="denied"] > span:last-child b { background: #ff5b68; box-shadow: 0 0 18px rgba(255,91,104,.6); }

.relaunch-account-text-link { display: inline-flex; align-items: center; gap: 20px; color: #ef9bc9; font-size: .68rem; font-weight: 900; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.relaunch-account-empty { min-height: 250px; display: grid; padding-top: 30px; align-content: center; justify-items: start; }
.relaunch-account-empty strong { color: #fff; font: 800 2.1rem var(--display); text-transform: uppercase; }
.relaunch-account-empty p { max-width: 520px; color: rgba(255,255,255,.58); line-height: 1.6; }
.relaunch-account-empty a { padding: 12px 18px; border-radius: 999px; color: #170d1b; background: #ef9bc9; font-size: .68rem; font-weight: 900; text-decoration: none; text-transform: uppercase; }

.relaunch-account-access { display: flex; flex-direction: column; }
.relaunch-role-primary { display: grid; gap: 8px; margin-top: 24px; padding: 22px; border: 1px solid rgba(99,221,255,.17); border-radius: 17px; background: rgba(99,221,255,.055); }
.relaunch-role-primary strong { color: #fff; font: 800 2.1rem/1 var(--display); text-transform: uppercase; }
.relaunch-role-primary > span { color: rgba(255,255,255,.54); font-size: .76rem; }
.relaunch-role-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 30px; }
.relaunch-role-list span { padding: 8px 11px; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; color: rgba(255,255,255,.7); background: rgba(255,255,255,.035); font-size: .6rem; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.relaunch-role-sync { min-height: 66px; display: flex; margin: 0 0 12px; padding: 11px 12px 11px 16px; align-items: center; justify-content: space-between; gap: 14px; border: 1px solid rgba(99,221,255,.22); border-radius: 15px; color: #fff; background: linear-gradient(120deg,rgba(99,221,255,.07),rgba(239,155,201,.035)); text-decoration: none; }
.relaunch-role-sync > span { min-width: 0; display: grid; gap: 5px; }
.relaunch-role-sync small { color: #63ddff; font-size: .52rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.relaunch-role-sync strong { overflow: hidden; color: rgba(255,255,255,.76); font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.relaunch-role-sync button { min-height: 38px; display: inline-flex; padding: 0 13px; flex: 0 0 auto; align-items: center; gap: 9px; border: 1px solid rgba(99,221,255,.28); border-radius: 999px; color: #07111a; background: linear-gradient(115deg,#63ddff,#ef9bc9); font: 900 .58rem var(--body-font); letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.relaunch-role-sync button b { font-size: 1rem; transition: transform .35s ease; }
.relaunch-role-sync button:hover b,.relaunch-role-sync button:focus-visible b { transform: rotate(180deg); }
.relaunch-role-sync button:disabled { opacity: .55; cursor: not-allowed; }
.relaunch-role-sync.is-disconnected > b { width: 34px; height: 34px; display: grid; flex: 0 0 auto; place-items: center; border-radius: 50%; color: #07111a; background: #63ddff; }
.relaunch-supporter-upgrade { min-height: 68px; display: flex; margin-top: auto; padding: 0 18px; align-items: center; justify-content: space-between; border: 1px solid rgba(239,155,201,.25); border-radius: 16px; color: #fff; background: rgba(239,155,201,.07); text-decoration: none; }
.relaunch-supporter-upgrade > span { display: grid; gap: 5px; }
.relaunch-supporter-upgrade small { color: #ef9bc9; font-size: .54rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.relaunch-supporter-upgrade strong { font: 800 1.25rem var(--display); text-transform: uppercase; }
.relaunch-supporter-upgrade > b { color: #ef9bc9; }

.relaunch-account-quicklinks { display: grid; margin-top: 18px; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.relaunch-account-quicklinks a { min-height: 100px; display: grid; padding: 20px; grid-template-columns: 1fr auto; align-content: center; gap: 6px 16px; border: 1px solid rgba(255,255,255,.1); border-radius: 18px; color: #fff; background: rgba(8,10,23,.82); text-decoration: none; transition: transform .2s ease, border-color .2s ease; }
.relaunch-account-quicklinks a:hover { transform: translateY(-3px); border-color: rgba(99,221,255,.45); }
.relaunch-account-quicklinks small { grid-column: 1; color: #63ddff; font-size: .56rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.relaunch-account-quicklinks strong { grid-column: 1; font: 800 1.35rem var(--display); text-transform: uppercase; }
.relaunch-account-quicklinks span { grid-column: 2; grid-row: 1 / 3; align-self: center; color: #ef9bc9; }

.supporter-hero { max-width: 1240px !important; }

/* Relaunch shop ------------------------------------------------------------- */
/* Relaunch web queue -------------------------------------------------------- */
.relaunch-queue-hero { display: grid; min-height: 430px; padding: clamp(38px,7vw,86px); grid-template-columns: minmax(0,1fr) minmax(220px,.34fr); align-items: end; gap: 40px; overflow: hidden; border: 1px solid rgba(99,221,255,.15); border-radius: 28px; background: linear-gradient(90deg,rgba(7,9,21,.94),rgba(7,9,21,.36)),url('../images/backgroundimage1.webp') center/cover; box-shadow: 0 32px 100px rgba(0,0,0,.3); }
.relaunch-queue-hero > div > span { color: #63ddff; font-size: .62rem; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.relaunch-queue-hero h1 { max-width: 850px; margin: 18px 0; color: #fff; font: 800 clamp(4.5rem,10vw,9rem)/.76 var(--display); letter-spacing: -.04em; text-transform: uppercase; }
.relaunch-queue-hero p { max-width: 680px; margin: 0; color: rgba(255,255,255,.68); font-size: clamp(.95rem,1.4vw,1.12rem); line-height: 1.7; }
.relaunch-queue-hero aside { display: grid; padding: 20px; gap: 7px; border: 1px solid rgba(99,221,255,.22); border-radius: 16px; background: rgba(7,9,21,.72); backdrop-filter: blur(12px); }
.relaunch-queue-hero aside small { color: rgba(255,255,255,.42); font-size: .54rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.relaunch-queue-hero aside strong { color: #fff; font: 800 1.4rem var(--display); text-transform: uppercase; }
.relaunch-queue-hero aside span { color: #63ddff; font-size: .64rem; font-weight: 800; text-transform: uppercase; }
.relaunch-queue-console { margin-top: 18px; overflow: hidden; border: 1px solid rgba(99,221,255,.14); border-radius: 25px; background: linear-gradient(145deg,rgba(18,15,35,.97),rgba(6,9,19,.98)); box-shadow: 0 30px 90px rgba(0,0,0,.28); }
.relaunch-queue-console > header { min-height: 88px; display: flex; padding: 18px 25px; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid rgba(255,255,255,.09); background: rgba(255,255,255,.025); }
.relaunch-queue-server-status { display: grid; grid-template-columns: 13px auto; align-items: center; column-gap: 10px; }
.relaunch-queue-server-status i { width: 9px; height: 9px; grid-row: 1 / 3; border-radius: 50%; background: #48df99; box-shadow: 0 0 0 6px rgba(72,223,153,.1),0 0 18px rgba(72,223,153,.55); }
.relaunch-queue-server-status span,.relaunch-queue-console > header > div:last-child small { color: rgba(255,255,255,.38); font-size: .52rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.relaunch-queue-server-status strong { color: #fff; font: 800 1.15rem var(--display); text-transform: uppercase; }
.relaunch-queue-console > header > div:last-child { display: grid; grid-template-columns: auto auto; align-items: baseline; column-gap: 9px; text-align: right; }
.relaunch-queue-console > header > div:last-child small { grid-column: 1 / -1; }
.relaunch-queue-console > header > div:last-child strong { color: #ef9bc9; font: 800 1.7rem var(--display); }
.relaunch-queue-console > header > div:last-child span { color: rgba(255,255,255,.45); font-size: .6rem; text-transform: uppercase; }
.relaunch-queue-console [data-queue-size-summary][hidden],.relaunch-queue-console [data-queue-size-stat][hidden] { display: none !important; }
.relaunch-queue-layout { display: grid; padding: clamp(16px,2.5vw,28px); grid-template-columns: minmax(0,1.08fr) minmax(340px,.92fr); gap: 16px; }
.relaunch-queue-city-card,.relaunch-queue-live-card { overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 20px; background: rgba(7,9,21,.74); }
.relaunch-queue-city-art { position: relative; height: 260px; overflow: hidden; }
.relaunch-queue-city-art::after { position: absolute; inset: 0; background: linear-gradient(180deg,transparent 45%,rgba(7,9,21,.9)); content: ''; }
.relaunch-queue-city-art img { width: 100%; height: 100%; object-fit: cover; }
.relaunch-queue-city-art span { position: absolute; z-index: 1; right: 20px; bottom: 17px; left: 20px; color: #63ddff; font-size: .56rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.relaunch-queue-city-card > div:nth-child(2) { padding: 25px; }
.relaunch-queue-city-card h2 { margin: 0 0 10px; color: #fff; font: 800 clamp(2.4rem,4vw,4.4rem)/.83 var(--display); text-transform: uppercase; }
.relaunch-queue-city-card p { margin: 0; color: rgba(255,255,255,.58); line-height: 1.65; }
.relaunch-queue-access { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid rgba(255,255,255,.09); }
.relaunch-queue-access > span { display: grid; padding: 18px 25px; gap: 6px; }
.relaunch-queue-access > span + span { border-left: 1px solid rgba(255,255,255,.09); }
.relaunch-queue-access small,.relaunch-queue-stats small { color: rgba(255,255,255,.38); font-size: .52rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.relaunch-queue-access strong { color: #48df99; font: 800 1rem var(--display); text-transform: uppercase; }
.relaunch-queue-live-card { display: flex; padding: clamp(25px,3.5vw,42px); flex-direction: column; }
.relaunch-queue-state { position: relative; display: grid; margin-top: 25px; padding: 23px; grid-template-columns: 12px 1fr; gap: 5px 12px; border: 1px solid rgba(99,221,255,.16); border-radius: 15px; background: rgba(99,221,255,.045); }
.relaunch-queue-state i { width: 9px; height: 9px; margin-top: 3px; grid-row: 1 / 4; border-radius: 50%; background: #63ddff; box-shadow: 0 0 14px rgba(99,221,255,.7); }
.relaunch-queue-state small { color: #63ddff; font-size: .52rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.relaunch-queue-state strong { color: #fff; font: 800 1.55rem var(--display); text-transform: uppercase; }
.relaunch-queue-state p { margin: 3px 0 0; color: rgba(255,255,255,.52); font-size: .76rem; line-height: 1.5; }
.relaunch-queue-state.is-ready { border-color: rgba(72,223,153,.35); background: rgba(72,223,153,.065); }
.relaunch-queue-state.is-ready i { background: #48df99; box-shadow: 0 0 18px rgba(72,223,153,.8); animation: relaunch-shop-live 1s ease-in-out infinite; }
.relaunch-queue-stats { display: grid; margin-top: 14px; grid-template-columns: repeat(3,1fr); gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,.09); border-radius: 14px; background: rgba(255,255,255,.09); }
.relaunch-queue-stats > span { min-height: 82px; display: grid; padding: 15px; align-content: end; gap: 7px; background: rgba(7,9,21,.92); }
.relaunch-queue-stats strong { color: #fff; font: 800 1.35rem var(--display); font-variant-numeric: tabular-nums; }
.relaunch-queue-actions { display: grid; margin-top: auto; padding-top: 24px; grid-template-columns: 1fr auto; gap: 9px; }
.relaunch-queue-actions button { min-height: 54px; padding: 0 20px; border: 1px solid rgba(99,221,255,.35); border-radius: 15px; color: #07111a; background: linear-gradient(115deg,#63ddff,#ef9bc9); font-size: .66rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; cursor: pointer; transition: transform .2s ease,box-shadow .2s ease; }
.relaunch-queue-actions button:first-child,.relaunch-queue-actions button[data-queue-connect] { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; }
.relaunch-queue-actions button[hidden] { display: none; }
.relaunch-queue-actions button:not(:disabled):hover,.relaunch-queue-actions button:not(:disabled):focus-visible { transform: translateY(-2px); box-shadow: 0 16px 38px rgba(99,221,255,.18); outline: none; }
.relaunch-queue-actions button.is-secondary { grid-column: 1 / -1; color: rgba(255,255,255,.65); background: rgba(255,255,255,.04); }
.relaunch-queue-actions button:disabled { grid-column: 1 / -1; color: rgba(255,255,255,.4); background: rgba(255,255,255,.04); cursor: not-allowed; }
.relaunch-queue-message { margin: 12px 0 0; padding: 11px 13px; border: 1px solid rgba(72,223,153,.22); border-radius: 10px; color: #9df1c6; background: rgba(72,223,153,.06); font-size: .72rem; }
.relaunch-queue-message.is-error { border-color: rgba(255,91,104,.25); color: #ff9ca4; background: rgba(255,91,104,.06); }
.relaunch-queue-console > footer { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; border-top: 1px solid rgba(255,255,255,.09); background: rgba(255,255,255,.08); }
.relaunch-queue-console > footer span { min-height: 54px; display: flex; padding: 0 20px; align-items: center; gap: 11px; color: rgba(255,255,255,.55); background: rgba(7,9,21,.94); font-size: .62rem; font-weight: 800; text-transform: uppercase; }
.relaunch-queue-console > footer b { color: #63ddff; }
.relaunch-queue-empty { min-height: 400px; display: flex; margin-top: 18px; padding: 45px; justify-content: flex-end; flex-direction: column; border: 1px solid rgba(255,255,255,.1); border-radius: 24px; background: rgba(7,9,21,.88); }
.relaunch-queue-empty > span { color: #ef9bc9; font-size: .6rem; font-weight: 900; text-transform: uppercase; }
.relaunch-queue-empty h2 { margin: 13px 0; color: #fff; font: 800 clamp(3rem,6vw,6rem)/.82 var(--display); text-transform: uppercase; }
.relaunch-queue-empty p { color: rgba(255,255,255,.58); }
@media (max-width: 900px) { .relaunch-queue-hero { min-height: 520px; grid-template-columns: 1fr; } .relaunch-queue-layout { grid-template-columns: 1fr; } .relaunch-queue-live-card { min-height: 480px; } }
@media (max-width: 600px) { .relaunch-queue-hero { min-height: 560px; padding: 30px 20px; } .relaunch-queue-hero h1 { font-size: clamp(4rem,20vw,6.4rem); } .relaunch-queue-console > header { align-items: flex-start; flex-direction: column; } .relaunch-queue-console > header > div:last-child { text-align: left; } .relaunch-queue-city-art { height: 220px; } .relaunch-queue-stats { grid-template-columns: 1fr; } .relaunch-queue-stats > span { min-height: 68px; } .relaunch-queue-console > footer { grid-template-columns: 1fr; } }

.relaunch-shop-release-bar { position: relative; display: flex; min-height: 76px; margin: 4px 0 28px; padding: 15px clamp(18px,3vw,30px); overflow: hidden; align-items: center; justify-content: space-between; gap: 24px; border: 1px solid rgba(239,155,201,.3); border-radius: 18px; background: radial-gradient(circle at 85% 0,rgba(239,155,201,.2),transparent 34%),linear-gradient(100deg,rgba(29,14,47,.98),rgba(8,10,23,.96)); box-shadow: 0 22px 70px rgba(0,0,0,.22); }
.relaunch-shop-release-bar::before { position: absolute; inset: 0 auto 0 0; width: 3px; background: linear-gradient(#63ddff,#ef9bc9); content: ''; }
.relaunch-shop-release-bar > div { display: grid; grid-template-columns: 12px auto; align-items: center; column-gap: 10px; }
.relaunch-shop-release-bar i { width: 9px; height: 9px; grid-row: 1 / 3; border-radius: 50%; background: #ef9bc9; box-shadow: 0 0 0 6px rgba(239,155,201,.1),0 0 22px rgba(239,155,201,.7); animation: relaunch-shop-live 1.8s ease-in-out infinite; }
.relaunch-shop-release-bar span { color: #ef9bc9; font-size: .54rem; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.relaunch-shop-release-bar strong { color: #fff; font: 800 clamp(1.1rem,2vw,1.45rem) var(--display); text-transform: uppercase; }
.relaunch-shop-release-bar p { margin: 0; color: rgba(255,255,255,.48); font-size: .58rem; font-weight: 900; letter-spacing: .11em; text-align: right; text-transform: uppercase; }
.relaunch-shop-release-bar p b { margin: 0 7px; color: #63ddff; }
@keyframes relaunch-shop-live { 50% { opacity: .55; transform: scale(.82); } }
.relaunch-shop-hero { max-width: 1180px !important; }
.relaunch-shop-account { width: fit-content; display: grid; gap: 5px; margin-top: 24px; padding: 13px 17px; border: 1px solid rgba(99,221,255,.22); border-radius: 13px; background: rgba(99,221,255,.055); }
.relaunch-shop-account small { color: rgba(255,255,255,.42); font-size: .54rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.relaunch-shop-account strong { color: #63ddff; font: 800 1.2rem var(--display); text-transform: uppercase; }
.relaunch-shop-purpose { display: grid; margin: 22px 0 28px; padding: clamp(26px,4vw,42px); grid-template-columns: minmax(220px,.75fr) minmax(300px,1.15fr) minmax(210px,.62fr); align-items: center; gap: clamp(22px,4vw,52px); border: 1px solid rgba(99,221,255,.16); border-radius: 22px; background: linear-gradient(120deg,rgba(99,221,255,.055),rgba(239,155,201,.04)),rgba(7,9,21,.82); }
.relaunch-shop-purpose > div span,.relaunch-shop-purpose aside small { color: #63ddff; font-size: .55rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.relaunch-shop-purpose h2 { margin: 10px 0 0; color: #fff; font: 800 clamp(2rem,3.5vw,3.7rem)/.85 var(--display); text-transform: uppercase; }
.relaunch-shop-purpose > p { margin: 0; color: rgba(255,255,255,.62); line-height: 1.75; }
.relaunch-shop-purpose aside { display: grid; padding: 18px; gap: 8px; border-left: 2px solid #ef9bc9; background: rgba(239,155,201,.06); }
.relaunch-shop-purpose aside small { color: #ef9bc9; }
.relaunch-shop-purpose aside strong { color: rgba(255,255,255,.82); font: 700 1rem/1.45 var(--display); text-transform: uppercase; }
.relaunch-shop-filters { display: flex; margin: 22px 0; padding-bottom: 5px; gap: 8px; overflow-x: auto; scrollbar-width: thin; }
.relaunch-shop-filters button { min-height: 42px; padding: 0 18px; flex: 0 0 auto; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; color: rgba(255,255,255,.62); background: rgba(7,9,21,.72); font: 800 .64rem var(--body); letter-spacing: .08em; text-transform: uppercase; cursor: pointer; transition: border-color .2s ease,color .2s ease,background .2s ease,transform .2s ease; }
.relaunch-shop-filters button:hover,.relaunch-shop-filters button:focus-visible,.relaunch-shop-filters button.is-active { border-color: #63ddff; color: #07111a; background: #63ddff; transform: translateY(-2px); outline: none; }
.relaunch-shop-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; }
.relaunch-shop-product { min-width: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.11); border-radius: 24px; background: linear-gradient(155deg,rgba(26,13,43,.96),rgba(7,9,21,.98)); box-shadow: 0 28px 80px rgba(0,0,0,.25); }
.relaunch-shop-product[hidden] { display: none; }
.relaunch-shop-product-media { position: relative; height: 250px; overflow: hidden; background: #080a17; }
.relaunch-shop-product-media::before { position: absolute; z-index: 1; inset: 0; border: 1px solid rgba(255,255,255,.07); content: ''; pointer-events: none; }
.relaunch-shop-product-media::after { position: absolute; inset: 0; background: linear-gradient(180deg,transparent 55%,rgba(7,9,21,.92)); content: ''; pointer-events: none; }
.relaunch-shop-product-media img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; transition: transform .5s ease,filter .5s ease; }
.relaunch-shop-product:hover .relaunch-shop-product-media img { transform: scale(1.04); }
.relaunch-shop-product-media > span { position: absolute; z-index: 1; right: 18px; bottom: 16px; left: 18px; color: #a8efff; font-size: .56rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.relaunch-shop-product-media > b { position: absolute; z-index: 2; top: 15px; right: 15px; padding: 7px 10px; border-radius: 999px; color: #160c19; background: #ef9bc9; font-size: .56rem; letter-spacing: .1em; text-transform: uppercase; }
.relaunch-shop-product-media > b.is-sold-out-badge { right: auto; left: 15px; color: #fff; background: rgba(8,10,23,.88); box-shadow: inset 0 0 0 1px rgba(255,255,255,.18); }
.relaunch-shop-product.is-sold-out .relaunch-shop-product-media img { filter: grayscale(.65) brightness(.58); }
.relaunch-shop-product-body { min-height: 390px; display: flex; padding: clamp(23px,2.5vw,32px); flex-direction: column; }
.relaunch-shop-product-body h2 { margin: 0 0 18px; color: #fff; font: 800 clamp(2rem,3vw,3.25rem)/.87 var(--display); overflow-wrap: anywhere; text-transform: uppercase; }
.relaunch-shop-price { display: flex; min-height: 56px; align-items: baseline; flex-wrap: wrap; gap: 8px; }
.relaunch-shop-price small { color: rgba(255,255,255,.35); text-decoration: line-through; }
.relaunch-shop-price strong { color: #ef9bc9; font: 800 2rem var(--display); }
.relaunch-shop-price span { color: rgba(255,255,255,.4); font-size: .54rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.relaunch-shop-stock { display: flex; min-height: 40px; margin: 7px 0 8px; padding: 0 12px; align-items: center; justify-content: space-between; gap: 10px; border: 1px solid rgba(99,221,255,.16); border-radius: 10px; background: rgba(99,221,255,.045); }
.relaunch-shop-stock > span { display: flex; align-items: center; gap: 7px; color: #a8efff; font-size: .62rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.relaunch-shop-stock i { width: 7px; height: 7px; border-radius: 50%; background: #63ddff; box-shadow: 0 0 10px rgba(99,221,255,.65); }
.relaunch-shop-stock small { color: rgba(255,255,255,.35); font-size: .54rem; text-transform: uppercase; }
.relaunch-shop-stock.is-empty { border-color: rgba(239,155,201,.2); background: rgba(239,155,201,.045); }
.relaunch-shop-stock.is-empty > span { color: #ef9bc9; }
.relaunch-shop-stock.is-empty i { background: #ef9bc9; box-shadow: 0 0 10px rgba(239,155,201,.6); }
.relaunch-shop-product-body ul { display: grid; margin: 15px 0 26px; padding: 0; gap: 9px; list-style: none; }
.relaunch-shop-product-body li { position: relative; padding-left: 18px; color: rgba(255,255,255,.65); font-size: .78rem; line-height: 1.5; }
.relaunch-shop-product-body li::before { position: absolute; top: .58em; left: 0; width: 7px; height: 7px; border-radius: 50%; background: #63ddff; content: ''; }
.relaunch-shop-product-body > p { margin: 14px 0 26px; color: rgba(255,255,255,.6); line-height: 1.65; }
.relaunch-shop-product-body form { margin-top: auto; }
.relaunch-shop-product-body button { width: 100%; min-height: 47px; margin-top: auto; border: 1px solid rgba(99,221,255,.38); border-radius: 999px; color: #07111a; background: linear-gradient(135deg,#63ddff,#ef9bc9); font-size: .65rem; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; cursor: pointer; transition: transform .2s ease,box-shadow .2s ease; }
.relaunch-shop-product-body button:not(:disabled):hover,.relaunch-shop-product-body button:not(:disabled):focus-visible { transform: translateY(-2px); box-shadow: 0 14px 36px rgba(99,221,255,.18); outline: none; }
.relaunch-shop-product-body button:disabled { color: rgba(255,255,255,.45); background: rgba(255,255,255,.05); cursor: not-allowed; }
.relaunch-shop-product-body .relaunch-shop-purchase-button { position: relative; min-height: 56px; display: flex; padding: 0 20px 0 24px; overflow: hidden; align-items: center; justify-content: space-between; border-color: rgba(255,255,255,.24); border-radius: 16px; color: #09101a; background: linear-gradient(115deg,#63ddff 0%,#8edff0 38%,#ef9bc9 100%); box-shadow: 0 14px 34px rgba(99,221,255,.12),inset 0 1px rgba(255,255,255,.65); font-size: .72rem; letter-spacing: .12em; isolation: isolate; }
.relaunch-shop-purchase-button::before { position: absolute; z-index: -1; inset: 0; background: linear-gradient(105deg,transparent 20%,rgba(255,255,255,.62) 46%,transparent 72%); content: ''; transform: translateX(-130%); transition: transform .65s ease; }
.relaunch-shop-purchase-button::after { position: absolute; z-index: -1; inset: 1px; border-radius: 15px; background: linear-gradient(180deg,rgba(255,255,255,.12),transparent 58%); content: ''; pointer-events: none; }
.relaunch-shop-purchase-button > span { position: relative; }
.relaunch-shop-purchase-button > b { width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid rgba(7,17,26,.16); border-radius: 50%; background: rgba(255,255,255,.23); font-size: .9rem; transition: transform .2s ease,background .2s ease; }
.relaunch-shop-product-body .relaunch-shop-purchase-button:not(:disabled):hover,.relaunch-shop-product-body .relaunch-shop-purchase-button:not(:disabled):focus-visible { transform: translateY(-3px); box-shadow: 0 20px 46px rgba(99,221,255,.22),0 10px 28px rgba(239,155,201,.14),inset 0 1px rgba(255,255,255,.7); }
.relaunch-shop-purchase-button:not(:disabled):hover::before,.relaunch-shop-purchase-button:not(:disabled):focus-visible::before { transform: translateX(130%); }
.relaunch-shop-purchase-button:not(:disabled):hover > b,.relaunch-shop-purchase-button:not(:disabled):focus-visible > b { background: rgba(255,255,255,.42); transform: translate(2px,-2px); }
.relaunch-shop-purchase-button:disabled { opacity: .48; }
@media (prefers-reduced-motion: reduce) { .relaunch-shop-release-bar i,.relaunch-launched-banner > span i { animation: none; } .relaunch-shop-purchase-button::before,.relaunch-shop-purchase-button > b,.relaunch-role-sync button b { transition: none; } }
.relaunch-shop-empty { min-height: 360px; display: flex; padding: clamp(30px,5vw,60px); justify-content: flex-end; flex-direction: column; border: 1px solid rgba(255,255,255,.11); border-radius: 24px; background: linear-gradient(145deg,rgba(26,13,43,.94),rgba(7,9,21,.96)); }
.relaunch-shop-empty[hidden] { display: none; }
.relaunch-shop-empty > span { color: #63ddff; font-size: .6rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.relaunch-shop-empty h2 { margin: 14px 0; color: #fff; font: 800 clamp(2.8rem,6vw,5.5rem)/.82 var(--display); text-transform: uppercase; }
.relaunch-shop-empty p { margin: 0; color: rgba(255,255,255,.6); }
.relaunch-shop-assurance { display: grid; margin-top: 16px; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 18px; background: rgba(255,255,255,.1); }
.relaunch-shop-assurance > span { display: grid; padding: 20px; gap: 7px; background: rgba(7,9,21,.94); }
.relaunch-shop-assurance small { color: #63ddff; font-size: .54rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.relaunch-shop-assurance strong { color: #fff; font: 700 1rem var(--display); text-transform: uppercase; }
.relaunch-purchase-dialog { width: min(620px,calc(100vw - 28px)); max-height: calc(100svh - 28px); padding: 0; overflow: visible; border: 1px solid rgba(99,221,255,.3); border-radius: 25px; color: #fff; background: transparent; box-shadow: 0 35px 120px rgba(0,0,0,.7); }
.relaunch-purchase-dialog::backdrop { background: rgba(3,4,11,.8); backdrop-filter: blur(10px); }
.relaunch-purchase-dialog > article { position: relative; padding: clamp(32px,6vw,56px); overflow: hidden; border-radius: inherit; background: radial-gradient(circle at 90% 0,rgba(99,221,255,.13),transparent 35%),linear-gradient(145deg,rgba(31,14,47,.99),rgba(7,9,21,.99)); }
.relaunch-purchase-dialog > article::before { position: absolute; top: 0; right: 0; left: 0; height: 2px; background: linear-gradient(90deg,#63ddff,#ef9bc9,transparent); content: ''; }
.relaunch-purchase-dialog > article > span { color: #63ddff; font-size: .59rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.relaunch-purchase-dialog h2 { max-width: 500px; margin: 17px 0; color: #fff; font: 800 clamp(2.8rem,7vw,5rem)/.82 var(--display); text-transform: uppercase; }
.relaunch-purchase-dialog p { margin: 0; color: rgba(255,255,255,.66); line-height: 1.75; }
.relaunch-purchase-dialog p strong { color: #ef9bc9; }
.relaunch-purchase-dialog-close { position: absolute; z-index: 2; top: 17px; right: 17px; width: 40px !important; min-height: 40px !important; margin: 0 !important; padding: 0; border: 1px solid rgba(255,255,255,.16) !important; border-radius: 50% !important; color: #fff !important; background: rgba(255,255,255,.055) !important; font-size: 1.3rem !important; cursor: pointer; }
.relaunch-purchase-dialog-actions { display: flex; margin-top: 30px; gap: 10px; }
.relaunch-purchase-dialog-actions a,.relaunch-purchase-dialog-actions button { min-height: 48px; display: inline-flex; padding: 0 22px; align-items: center; justify-content: center; border-radius: 999px; font-size: .65rem; font-weight: 900; letter-spacing: .07em; text-decoration: none; text-transform: uppercase; }
.relaunch-purchase-dialog-actions a { color: #07111a; background: linear-gradient(135deg,#63ddff,#ef9bc9); }
.relaunch-purchase-dialog-actions button { width: auto; margin: 0; border: 1px solid rgba(255,255,255,.16); color: rgba(255,255,255,.7); background: rgba(255,255,255,.04); }
body.purchase-dialog-open { overflow: hidden; }
@media (max-width: 1040px) { .relaunch-shop-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .relaunch-shop-purpose { grid-template-columns: 1fr 1.2fr; } .relaunch-shop-purpose aside { grid-column: 1 / -1; } }
@media (max-width: 650px) { .relaunch-shop-release-bar { align-items: flex-start; flex-direction: column; } .relaunch-shop-release-bar p { text-align: left; line-height: 1.7; } .relaunch-shop-purpose,.relaunch-shop-grid,.relaunch-shop-assurance { grid-template-columns: 1fr; } .relaunch-shop-purpose aside { grid-column: auto; } .relaunch-shop-product-media { height: 230px; } .relaunch-shop-product-body { min-height: 340px; } .relaunch-shop-stock { padding-block: 10px; align-items: flex-start; flex-direction: column; } .relaunch-purchase-dialog-actions { align-items: stretch; flex-direction: column; } .relaunch-purchase-dialog-actions a,.relaunch-purchase-dialog-actions button { width: 100%; } }

.supporter-hero .supporter-current-role { min-width: 200px; display: grid; gap: 7px; margin-top: 26px; padding: 15px 18px; border: 1px solid rgba(99,221,255,.2); border-radius: 14px; background: rgba(99,221,255,.055); }
.supporter-current-role small { color: rgba(255,255,255,.42); font-size: .55rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.supporter-current-role strong { color: #63ddff; font: 800 1.55rem var(--display); text-transform: uppercase; }
.supporter-login-gate { min-height: 440px; margin-top: 18px; }

.supporter-intro { display: flex; margin-top: 18px; padding: 34px 0 25px; align-items: end; justify-content: space-between; gap: 30px; }
.supporter-intro h2 { margin: 10px 0 0; color: #fff; font: 800 clamp(3rem,6vw,5.8rem)/.82 var(--display); text-transform: uppercase; }
.supporter-intro > p { max-width: 430px; margin: 0; color: rgba(255,255,255,.58); line-height: 1.65; }
.supporter-product-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.supporter-product { position: relative; min-height: 580px; display: flex; padding: clamp(24px,3vw,36px); flex-direction: column; overflow: hidden; border: 1px solid rgba(255,255,255,.11); border-radius: 24px; background: linear-gradient(150deg,rgba(27,14,44,.95),rgba(7,9,21,.97)); box-shadow: 0 25px 70px rgba(0,0,0,.24); }
.supporter-product::before { position: absolute; top: 0; right: 0; left: 0; height: 2px; background: linear-gradient(90deg,#63ddff,#ef9bc9,transparent); content: ''; }
.supporter-product--featured { border-color: rgba(239,155,201,.34); background: radial-gradient(circle at 80% 0,rgba(239,155,201,.12),transparent 30%),linear-gradient(150deg,rgba(35,15,48,.98),rgba(7,9,21,.98)); }
.supporter-product-topline { display: flex; align-items: center; justify-content: space-between; color: #63ddff; font-size: .59rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.supporter-product-topline b { color: rgba(255,255,255,.3); }
.supporter-product h3 { min-height: 1.7em; margin: 30px 0 20px; color: #fff; font: 800 clamp(2.7rem,4.5vw,4.8rem)/.82 var(--display); text-transform: uppercase; }
.supporter-product-price { display: flex; min-height: 70px; align-items: baseline; flex-wrap: wrap; gap: 8px; }
.supporter-product-price small { color: rgba(255,255,255,.35); text-decoration: line-through; }
.supporter-product-price strong { color: #ef9bc9; font: 800 2.3rem var(--display); }
.supporter-product-price span { color: rgba(255,255,255,.4); font-size: .57rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.supporter-product ul { display: grid; margin: 18px 0 28px; padding: 0; gap: 11px; list-style: none; }
.supporter-product li { position: relative; padding-left: 19px; color: rgba(255,255,255,.66); font-size: .82rem; line-height: 1.45; }
.supporter-product li::before { position: absolute; top: .6em; left: 0; width: 7px; height: 7px; border-radius: 50%; background: #63ddff; content: ''; }
.supporter-product > p { color: rgba(255,255,255,.6); line-height: 1.65; }
.supporter-paypal-button,
.supporter-preview-button { width: 100%; min-height: 46px; margin-top: auto; }
.supporter-preview-button { border: 1px solid rgba(255,255,255,.16); border-radius: 999px; color: rgba(255,255,255,.5); background: rgba(255,255,255,.04); font-size: .66rem; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.supporter-payment-message { margin: 12px 0 0; padding: 11px; border: 1px solid rgba(255,91,104,.25); border-radius: 10px; color: #ff9ca4; background: rgba(255,91,104,.07); font-size: .72rem; line-height: 1.5; }
.supporter-payment-message.is-success { border-color: rgba(99,221,255,.25); color: #a8efff; background: rgba(99,221,255,.07); }
.supporter-products-empty { min-height: 420px; display: flex; padding: clamp(30px,5vw,60px); grid-column: 1 / -1; align-items: flex-start; justify-content: flex-end; flex-direction: column; border: 1px solid rgba(255,255,255,.11); border-radius: 26px; background: linear-gradient(145deg,rgba(26,13,43,.94),rgba(7,9,21,.96)); }
.supporter-products-empty > span { color: #63ddff; font-size: .62rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.supporter-products-empty h3 { max-width: 700px; margin: 16px 0; color: #fff; font: 800 clamp(3rem,6vw,6rem)/.82 var(--display); text-transform: uppercase; }
.supporter-products-empty p { max-width: 660px; color: rgba(255,255,255,.6); line-height: 1.65; }
.supporter-products-empty a { color: #ef9bc9; font-size: .7rem; font-weight: 900; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.supporter-assurance { display: grid; margin-top: 16px; grid-template-columns: repeat(3,minmax(0,1fr)); overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 18px; background: rgba(255,255,255,.1); }
.supporter-assurance > span { display: grid; padding: 20px; gap: 7px; background: rgba(7,9,21,.94); }
.supporter-assurance small { color: #63ddff; font-size: .54rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.supporter-assurance strong { color: #fff; font: 700 1.05rem var(--display); text-transform: uppercase; }

@media (max-width: 980px) {
    .relaunch-account-hero { align-items: stretch; flex-direction: column; }
    .relaunch-account-hero-actions { min-width: 0; grid-template-columns: 1fr 1fr; }
    .relaunch-account-grid { grid-template-columns: 1fr; }
    .supporter-product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 680px) {
    .relaunch-menu-account { grid-template-columns: 1fr; }
    .relaunch-menu-account .relaunch-menu-logout { min-width: 0; }
    .relaunch-menu-account .relaunch-menu-logout > span:first-child { display: block; }
    .relaunch-account-identity { align-items: flex-start; flex-direction: column; }
    .relaunch-account-hero-actions { grid-template-columns: 1fr; }
    .relaunch-application-summary { grid-template-columns: 1fr; }
    .relaunch-account-module-head { flex-direction: column; }
    .relaunch-account-quicklinks,
    .supporter-product-grid,
    .supporter-assurance { grid-template-columns: 1fr; }
    .supporter-intro { align-items: flex-start; flex-direction: column; }
    .supporter-product { min-height: 520px; }
}

/* Custom-amount PayPal donation console ------------------------------------ */
.supporter-donation-layout {
    width: min(1240px, 100%);
    display: grid;
    margin-inline: auto;
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, .92fr);
    gap: 16px;
}

.supporter-donation-card,
.supporter-impact-card,
.supporter-history-card {
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 26px;
    background:
        radial-gradient(circle at 92% 0, rgba(99, 221, 255, .09), transparent 28%),
        linear-gradient(145deg, rgba(28, 14, 46, .96), rgba(7, 9, 21, .98));
    box-shadow: 0 28px 80px rgba(0, 0, 0, .28);
}

.supporter-donation-card {
    position: relative;
    padding: clamp(26px, 4.5vw, 54px);
    overflow: hidden;
}

.supporter-donation-card::before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 2px;
    background: linear-gradient(90deg, #63ddff, #ef9bc9, transparent 88%);
    content: '';
}

.supporter-donation-card-head {
    display: flex;
    padding-bottom: 28px;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    border-bottom: 1px solid rgba(255,255,255,.1);
}

.supporter-donation-card-head span,
.supporter-impact-card > span {
    color: #63ddff;
    font-size: .6rem;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.supporter-donation-card-head h2 {
    margin: 11px 0 0;
    color: #fff;
    font: 800 clamp(2.8rem, 5vw, 5rem)/.82 var(--display);
    text-transform: uppercase;
}

.supporter-donation-card-head > b {
    padding: 8px 10px;
    border: 1px solid rgba(239,155,201,.26);
    border-radius: 999px;
    color: #ef9bc9;
    background: rgba(239,155,201,.07);
    font-size: .58rem;
    letter-spacing: .09em;
}

.supporter-amount-field {
    display: grid;
    margin-top: 28px;
    gap: 10px;
}

.supporter-amount-field > span:first-child {
    color: rgba(255,255,255,.56);
    font-size: .6rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.supporter-amount-control {
    position: relative;
    display: flex;
    min-height: 98px;
    align-items: center;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 19px;
    background: rgba(4,6,16,.56);
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.supporter-amount-control:focus-within {
    border-color: rgba(99,221,255,.72);
    background: rgba(7,13,25,.76);
    box-shadow: 0 0 0 4px rgba(99,221,255,.09), 0 18px 45px rgba(0,0,0,.22);
}

.supporter-amount-control > b {
    padding-left: 24px;
    color: #63ddff;
    font: 700 clamp(2.1rem,4vw,3.4rem)/1 var(--display);
}

.supporter-amount-control input {
    min-width: 0;
    width: 100%;
    height: 96px;
    padding: 0 16px 0 9px;
    border: 0;
    outline: 0;
    color: #fff;
    background: transparent;
    font: 800 clamp(3.5rem,8vw,7rem)/1 var(--display);
    letter-spacing: -.025em;
    -moz-appearance: textfield;
}

.supporter-amount-control input::-webkit-inner-spin-button,
.supporter-amount-control input::-webkit-outer-spin-button { margin: 0; -webkit-appearance: none; }
.supporter-amount-control > small { padding-right: 22px; color: rgba(255,255,255,.4); font-size: .61rem; font-weight: 900; letter-spacing: .12em; }

.supporter-amount-suggestions {
    display: grid;
    margin-top: 12px;
    grid-template-columns: repeat(5, minmax(0,1fr));
    gap: 8px;
}

.supporter-amount-suggestions button {
    min-height: 43px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 12px;
    color: rgba(255,255,255,.68);
    background: rgba(255,255,255,.035);
    font: 800 .72rem var(--body-font);
    cursor: pointer;
    transition: border-color .18s ease, color .18s ease, background .18s ease, transform .18s ease;
}

.supporter-amount-suggestions button:hover,
.supporter-amount-suggestions button:focus-visible,
.supporter-amount-suggestions button.is-active {
    border-color: rgba(99,221,255,.5);
    color: #fff;
    background: rgba(99,221,255,.09);
    outline: none;
    transform: translateY(-2px);
}

.supporter-amount-help {
    margin: 12px 0 0;
    color: rgba(255,255,255,.43);
    font-size: .73rem;
    line-height: 1.55;
}

.supporter-donation-divider {
    display: flex;
    margin: 28px 0 20px;
    align-items: center;
    gap: 13px;
    color: rgba(255,255,255,.34);
    font-size: .54rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.supporter-donation-divider::before,
.supporter-donation-divider::after { height: 1px; flex: 1; background: rgba(255,255,255,.1); content: ''; }

.supporter-paypal-button--custom {
    position: relative;
    min-height: 52px;
    display: block;
    margin-top: 0;
    overflow: visible;
    border: 0;
    border-radius: 13px;
    background: transparent;
    box-shadow: none;
}

.supporter-paypal-loading {
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 13px;
    color: rgba(255,255,255,.58);
    background: rgba(255,255,255,.035);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.supporter-paypal-loading i {
    width: 15px;
    height: 15px;
    border: 2px solid rgba(99,221,255,.2);
    border-top-color: #63ddff;
    border-radius: 50%;
    animation: supporter-paypal-spin .75s linear infinite;
}

.supporter-paypal-button--custom.is-ready {
    padding: 4px;
    border: 1px solid rgba(255,255,255,.11);
    background: rgba(255,255,255,.025);
    box-shadow: 0 16px 38px rgba(0,0,0,.2);
}

.supporter-paypal-button--custom.is-unavailable {
    min-height: 52px;
    display: grid;
    padding: 11px 16px;
    place-items: center;
    border: 1px solid rgba(255,91,104,.25);
    color: #ff9ca4;
    background: rgba(255,91,104,.06);
    font-size: .7rem;
    line-height: 1.45;
    text-align: center;
}

@keyframes supporter-paypal-spin { to { transform: rotate(360deg); } }

.supporter-preview-button--large {
    min-height: 52px;
    margin-top: 0;
    border-color: rgba(255,196,57,.28);
    color: rgba(255,255,255,.58);
    background: rgba(255,196,57,.06);
}

.supporter-payment-trust {
    display: flex;
    margin-top: 17px;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px 22px;
}

.supporter-payment-trust span { color: rgba(255,255,255,.44); font-size: .63rem; }
.supporter-payment-trust b { color: #63ddff; }
.supporter-donation-aside { display: grid; gap: 16px; }
.supporter-impact-card { min-height: 430px; display: flex; padding: clamp(28px,4vw,48px); justify-content: flex-end; flex-direction: column; }
.supporter-impact-card h3 { max-width: 540px; margin: 16px 0; color: #fff; font: 800 clamp(3rem,5vw,5.6rem)/.8 var(--display); text-transform: uppercase; }
.supporter-impact-card > p { margin: 0; color: rgba(255,255,255,.6); line-height: 1.65; }
.supporter-impact-list { display: grid; margin-top: 28px; gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 14px; background: rgba(255,255,255,.1); }
.supporter-impact-list > span { display: grid; min-height: 52px; padding: 0 15px; grid-template-columns: 34px 1fr; align-items: center; gap: 10px; background: rgba(5,7,17,.78); }
.supporter-impact-list b { color: #63ddff; font-size: .6rem; }
.supporter-impact-list strong { color: rgba(255,255,255,.74); font: 700 .95rem var(--display); text-transform: uppercase; }
.supporter-history-card { display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; }
.supporter-history-card > span { min-height: 105px; display: grid; padding: 19px; align-content: end; gap: 7px; }
.supporter-history-card > span + span { border-left: 1px solid rgba(255,255,255,.1); }
.supporter-history-card small { color: rgba(255,255,255,.42); font-size: .53rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.supporter-history-card strong { color: #ef9bc9; font: 800 1.75rem var(--display); }

@media (max-width: 940px) {
    .supporter-donation-layout { grid-template-columns: 1fr; }
    .supporter-impact-card { min-height: 360px; }
}

@media (max-width: 560px) {
    .supporter-amount-suggestions { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .supporter-amount-control { min-height: 84px; }
    .supporter-amount-control input { height: 82px; font-size: clamp(3.25rem,17vw,5.2rem); }
    .supporter-payment-trust { align-items: flex-start; flex-direction: column; }
    .supporter-history-card { grid-template-columns: 1fr; }
    .supporter-history-card > span + span { border-top: 1px solid rgba(255,255,255,.1); border-left: 0; }
}

/* Relaunch Steam login ------------------------------------------------------- */
.relaunch-page--login {
    --page-image: url('../images/backgroundimage5.webp');
    --page-code: 'ACCESS // 09';
    display: grid;
    place-items: center;
}

.relaunch-login-shell {
    width: min(1240px, 100%);
    min-height: min(760px, calc(100svh - 170px));
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(380px, .8fr);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 30px;
    background: #090a16;
    box-shadow: 0 42px 130px rgba(0,0,0,.52), inset 0 1px rgba(255,255,255,.07);
}

.relaunch-login-visual {
    position: relative;
    min-height: 680px;
    display: flex;
    padding: clamp(28px,4vw,52px);
    align-items: flex-end;
    overflow: hidden;
}

.relaunch-login-visual > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 58% center;
    filter: saturate(.94) contrast(1.03) brightness(.85);
    transform: scale(1.03);
}

.relaunch-login-visual-wash {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(5,8,18,.12), rgba(5,8,18,.12) 42%, rgba(5,8,18,.9)),
        linear-gradient(90deg, rgba(7,8,18,.66), transparent 65%);
}

.relaunch-login-visual-topline {
    position: absolute;
    z-index: 1;
    top: 32px;
    right: 34px;
    left: 34px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    color: rgba(255,255,255,.75);
    font-size: .59rem;
    font-weight: 900;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.relaunch-login-visual-topline span { color: #63ddff; }
.relaunch-login-visual-topline b { font-weight: 900; }
.relaunch-login-visual-copy { position: relative; z-index: 1; width: 100%; max-width: 760px; }
.relaunch-login-visual-copy > span { color: #ef9bc9; font-size: .65rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.relaunch-login-visual-copy h1 {
    max-width: 720px;
    margin: 16px 0 18px;
    color: #fff;
    font: 800 clamp(4.6rem,8vw,8.6rem)/.76 var(--display);
    letter-spacing: -.045em;
    text-transform: uppercase;
    text-shadow: 0 16px 46px rgba(0,0,0,.46);
}
.relaunch-login-visual-copy > p { max-width: 620px; margin: 0; color: rgba(255,255,255,.72); font-size: .95rem; line-height: 1.7; }
.relaunch-login-signals { display: grid; margin-top: 30px; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,.14); border-radius: 16px; background: rgba(255,255,255,.12); backdrop-filter: blur(14px); }
.relaunch-login-signals > span { min-width: 0; display: grid; padding: 15px 17px; gap: 6px; background: rgba(7,9,21,.68); }
.relaunch-login-signals small { color: rgba(255,255,255,.42); font-size: .5rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.relaunch-login-signals strong { color: #fff; font: 800 1rem/1 var(--display); text-transform: uppercase; }

.relaunch-login-panel {
    position: relative;
    display: flex;
    padding: clamp(32px,5vw,64px);
    flex-direction: column;
    justify-content: center;
    border-left: 1px solid rgba(255,255,255,.1);
    background:
        radial-gradient(circle at 100% 0, rgba(99,221,255,.1), transparent 28%),
        linear-gradient(155deg, rgba(28,14,46,.98), rgba(7,9,21,.99));
}

.relaunch-login-panel::before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 2px;
    background: linear-gradient(90deg,#63ddff,#ef9bc9,transparent);
    content: '';
}

.relaunch-login-mark { width: 58px; height: 58px; display: block; margin-bottom: 44px; }
.relaunch-login-mark img { width: 100%; height: 100%; display: block; object-fit: contain; mix-blend-mode: screen; filter: drop-shadow(0 8px 24px rgba(99,221,255,.18)); }
.relaunch-login-panel-copy > span { color: #63ddff; font-size: .6rem; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.relaunch-login-panel-copy h2 { margin: 14px 0 16px; color: #fff; font: 800 clamp(3.3rem,5.5vw,5.5rem)/.78 var(--display); letter-spacing: -.035em; text-transform: uppercase; }
.relaunch-login-panel-copy p { margin: 0; color: rgba(255,255,255,.58); font-size: .88rem; line-height: 1.68; }

.relaunch-steam-login {
    min-height: 76px;
    display: grid;
    margin-top: 32px;
    padding: 10px 17px 10px 11px;
    grid-template-columns: 50px 1fr auto;
    align-items: center;
    gap: 14px;
    border: 1px solid rgba(99,221,255,.34);
    border-radius: 17px;
    color: #07101a;
    background: linear-gradient(135deg,#63ddff,#a8efff 58%,#ef9bc9);
    box-shadow: 0 18px 48px rgba(99,221,255,.12);
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease;
}
.relaunch-steam-login:hover,
.relaunch-steam-login:focus-visible { transform: translateY(-3px); box-shadow: 0 22px 55px rgba(99,221,255,.23); outline: none; }
.relaunch-steam-login.is-preview { cursor: default; }
.relaunch-steam-symbol { width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid rgba(5,12,22,.2); border-radius: 50%; color: #fff; background: #111827; font: 800 1.35rem var(--display); box-shadow: inset 0 1px rgba(255,255,255,.15); }
.relaunch-steam-login > span:nth-child(2) { display: grid; gap: 4px; }
.relaunch-steam-login small { color: rgba(5,12,22,.56); font-size: .52rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.relaunch-steam-login strong { color: #07101a; font: 800 1.25rem/1 var(--display); text-transform: uppercase; }
.relaunch-steam-login > b { font-size: 1.05rem; }

.relaunch-login-current { display: flex; margin-top: 26px; padding: 13px; align-items: center; gap: 13px; border: 1px solid rgba(255,255,255,.11); border-radius: 15px; background: rgba(255,255,255,.035); }
.relaunch-login-current img { width: 46px; height: 46px; border-radius: 50%; object-fit: cover; }
.relaunch-login-current span { display: grid; gap: 4px; }
.relaunch-login-current small { color: rgba(255,255,255,.42); font-size: .54rem; font-weight: 900; text-transform: uppercase; }
.relaunch-login-current strong { color: #fff; }

.relaunch-login-security { display: grid; margin-top: 18px; grid-template-columns: 1fr 1fr; gap: 8px; }
.relaunch-login-security > span { position: relative; min-height: 96px; display: grid; padding: 15px 14px 13px 38px; align-content: end; gap: 5px; border: 1px solid rgba(255,255,255,.09); border-radius: 13px; background: rgba(255,255,255,.025); }
.relaunch-login-security b { position: absolute; top: 14px; left: 14px; color: #63ddff; font-size: .75rem; }
.relaunch-login-security small { color: rgba(255,255,255,.38); font-size: .49rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.relaunch-login-security strong { color: rgba(255,255,255,.74); font: 700 .91rem/1.15 var(--display); text-transform: uppercase; }
.relaunch-login-disclaimer { margin: 17px 0 0; color: rgba(255,255,255,.38); font-size: .67rem; line-height: 1.55; }
.relaunch-login-links { display: flex; margin-top: 25px; padding-top: 20px; justify-content: space-between; gap: 18px; border-top: 1px solid rgba(255,255,255,.09); }
.relaunch-login-links a { color: rgba(255,255,255,.58); font-size: .62rem; font-weight: 900; letter-spacing: .07em; text-decoration: none; text-transform: uppercase; }
.relaunch-login-links a:hover { color: #63ddff; }

@media (max-width: 980px) {
    .relaunch-login-shell { grid-template-columns: 1fr; }
    .relaunch-login-visual { min-height: 580px; }
    .relaunch-login-panel { border-top: 1px solid rgba(255,255,255,.1); border-left: 0; }
}

@media (max-width: 600px) {
    .relaunch-page--login { padding-inline: 10px; }
    .relaunch-login-shell { border-radius: 22px; }
    .relaunch-login-visual { min-height: 500px; padding: 24px 20px; }
    .relaunch-login-visual-topline { top: 22px; right: 20px; left: 20px; }
    .relaunch-login-visual-copy h1 { font-size: clamp(4rem,19vw,6rem); }
    .relaunch-login-visual-copy > p { display: none; }
    .relaunch-login-signals { grid-template-columns: 1fr 1fr; margin-top: 20px; }
    .relaunch-login-signals > span:last-child { display: none; }
    .relaunch-login-panel { padding: 36px 20px 30px; }
    .relaunch-login-mark { margin-bottom: 30px; }
    .relaunch-login-security { grid-template-columns: 1fr; }
    .relaunch-login-security > span { min-height: 82px; }
}

/* Relaunch community applications ----------------------------------------- */
.relaunch-nav nav {
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(99,221,255,.58) transparent;
}
.relaunch-nav nav > a { min-height: clamp(48px,6.8vh,64px); font-size: clamp(1.7rem,4.4vh,3.25rem); }
.relaunch-nav nav::-webkit-scrollbar { width: 6px; }
.relaunch-nav nav::-webkit-scrollbar-thumb { border-radius: 999px; background: linear-gradient(#63ddff,#ef9bc9); }

.relaunch-page--applications,
.relaunch-page--department-application {
    min-height: 100svh;
    background:
        radial-gradient(circle at 86% 8%,rgba(99,221,255,.1),transparent 28%),
        radial-gradient(circle at 12% 38%,rgba(239,155,201,.08),transparent 25%),
        #070812;
}

.department-applications-hero {
    width: min(1320px,100%);
    min-height: min(74svh,760px);
    display: grid;
    margin: 0 auto;
    padding: clamp(132px,15vw,190px) clamp(22px,6vw,82px) clamp(74px,9vw,118px);
    grid-template-columns: minmax(0,1.35fr) minmax(310px,.65fr);
    align-items: end;
    gap: clamp(48px,8vw,120px);
    border-bottom: 1px solid rgba(255,255,255,.1);
}
.department-applications-hero > div > span,
.department-application-head > span {
    color: #63ddff;
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .18em;
    text-transform: uppercase;
}
.department-applications-hero h1 {
    max-width: 820px;
    margin: 18px 0 22px;
    font: 900 clamp(5.3rem,10vw,10rem)/.78 var(--display);
    letter-spacing: -.035em;
    text-transform: uppercase;
}
.department-applications-hero > div > p {
    max-width: 680px;
    margin: 0;
    color: rgba(255,255,255,.66);
    font-size: clamp(1rem,1.4vw,1.14rem);
    line-height: 1.75;
}
.department-applications-hero aside {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 22px;
    overflow: hidden;
    background: rgba(12,14,27,.72);
    box-shadow: 0 30px 80px rgba(0,0,0,.26);
    backdrop-filter: blur(18px);
}
.department-applications-hero aside > span { min-height: 138px; display: grid; padding: 23px; align-content: end; gap: 7px; }
.department-applications-hero aside > span + span { border-left: 1px solid rgba(255,255,255,.1); }
.department-applications-hero aside small { color: rgba(255,255,255,.42); font-size: .55rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.department-applications-hero aside strong { color: #fff; font: 800 2.7rem/1 var(--display); }
.department-applications-hero aside > b { grid-column: 1/-1; display: flex; padding: 17px 22px; align-items: center; gap: 10px; border-top: 1px solid rgba(255,255,255,.1); color: #8ceaff; font-size: .61rem; letter-spacing: .12em; text-transform: uppercase; }
.department-applications-hero aside i,
.department-opening-status i,
.department-application-head b i { width: 7px; height: 7px; border-radius: 50%; background: #63ddff; box-shadow: 0 0 16px #63ddff; }

.department-submissions,
.department-openings {
    width: min(1320px,100%);
    margin: 0 auto;
    padding: clamp(68px,8vw,108px) clamp(22px,6vw,82px);
}
.department-submissions { padding-bottom: 0; }
.department-section-heading { display: grid; margin-bottom: 34px; grid-template-columns: minmax(0,1fr) minmax(280px,.6fr); align-items: end; gap: 40px; }
.department-section-heading span { color: #ef9bc9; font-size: .61rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.department-section-heading h2 { margin: 10px 0 0; font: 900 clamp(3.4rem,6.5vw,6.8rem)/.82 var(--display); letter-spacing: -.025em; text-transform: uppercase; }
.department-section-heading p { margin: 0; color: rgba(255,255,255,.5); line-height: 1.65; }

.department-submission-list { display: grid; gap: 10px; }
.department-submission-card {
    display: grid;
    padding: 18px 20px;
    grid-template-columns: 120px minmax(0,1fr) auto;
    align-items: center;
    gap: 24px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 15px;
    background: rgba(255,255,255,.025);
}
.department-submission-card > span { color: rgba(255,255,255,.4); font-size: .64rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.department-submission-card > div { display: grid; gap: 5px; }
.department-submission-card small { color: #63ddff; font-size: .52rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.department-submission-card strong { color: #fff; font-size: .98rem; }
.department-submission-card > b { padding: 8px 12px; border: 1px solid rgba(99,221,255,.2); border-radius: 999px; color: #9decff; background: rgba(99,221,255,.06); font-size: .56rem; letter-spacing: .09em; text-transform: uppercase; }
.department-submission-card.is-approved > b { border-color: rgba(107,240,174,.24); color: #78efb2; background: rgba(107,240,174,.07); }
.department-submission-card.is-denied > b { border-color: rgba(255,121,149,.24); color: #ff9eb3; background: rgba(255,121,149,.07); }
.department-submission-card > p { grid-column: 2/-1; margin: 0; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.08); color: rgba(255,255,255,.58); line-height: 1.6; }

.department-opening-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.department-opening-card {
    position: relative;
    min-height: 410px;
    display: flex;
    padding: clamp(28px,4vw,48px);
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 26px;
    background:
        radial-gradient(circle at 94% 0,rgba(99,221,255,.1),transparent 35%),
        linear-gradient(145deg,rgba(27,14,44,.83),rgba(8,10,22,.94));
    transition: transform 240ms ease,border-color 240ms ease,box-shadow 240ms ease;
}
.department-opening-card:hover { transform: translateY(-5px); border-color: rgba(99,221,255,.38); box-shadow: 0 30px 80px rgba(0,0,0,.28); }
.department-opening-index { position: absolute; right: 28px; top: 22px; color: rgba(255,255,255,.06); font: 900 6.8rem/1 var(--display); }
.department-opening-status { position: relative; display: flex; align-items: center; gap: 9px; color: #8be8ff; font-size: .56rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.department-opening-card h3 { position: relative; max-width: 520px; margin: 62px 0 15px; font: 900 clamp(2.7rem,4.8vw,5rem)/.84 var(--display); letter-spacing: -.02em; text-transform: uppercase; }
.department-opening-card > p { position: relative; max-width: 590px; margin: 0; color: rgba(255,255,255,.6); line-height: 1.7; }
.department-opening-meta { position: relative; display: grid; margin-top: auto; padding: 28px 0 20px; grid-template-columns: 1fr 1fr; gap: 18px; }
.department-opening-meta > span { display: grid; gap: 5px; }
.department-opening-meta small { color: rgba(255,255,255,.36); font-size: .5rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.department-opening-meta strong { color: rgba(255,255,255,.8); font-size: .75rem; text-transform: uppercase; }
.department-opening-card > a,
.department-applications-empty a,
.department-application-unavailable a,
.department-application-state a {
    position: relative;
    display: flex;
    min-height: 54px;
    padding: 0 17px;
    align-items: center;
    justify-content: space-between;
    border: 1px solid rgba(99,221,255,.3);
    border-radius: 12px;
    color: #b9efff;
    background: rgba(99,221,255,.06);
    font-size: .67rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-decoration: none;
    text-transform: uppercase;
}
.department-opening-card > a:hover,
.department-application-state a:hover { border-color: #63ddff; background: rgba(99,221,255,.12); }
.department-applications-empty,
.department-application-unavailable { padding: clamp(50px,8vw,100px); border: 1px dashed rgba(255,255,255,.16); border-radius: 25px; text-align: center; background: rgba(255,255,255,.02); }
.department-applications-empty span,
.department-application-unavailable > span,
.department-application-state > span { color: #ef9bc9; font-size: .61rem; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.department-applications-empty h3,
.department-application-unavailable h1 { margin: 13px 0; font: 900 clamp(2.8rem,6vw,5.8rem)/.84 var(--display); text-transform: uppercase; }
.department-applications-empty p,
.department-application-unavailable p { color: rgba(255,255,255,.58); }
.department-applications-empty a,
.department-application-unavailable a { width: fit-content; margin: 28px auto 0; gap: 30px; }

.department-application-head {
    width: min(1120px,calc(100% - 44px));
    margin: 0 auto;
    padding: clamp(138px,16vw,210px) 0 clamp(60px,8vw,96px);
    border-bottom: 1px solid rgba(255,255,255,.1);
}
.department-application-head > a { display: block; width: fit-content; margin-bottom: 48px; color: rgba(255,255,255,.5); font-size: .63rem; font-weight: 900; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.department-application-head > a:hover { color: #63ddff; }
.department-application-head h1 { max-width: 980px; margin: 18px 0; font: 900 clamp(5rem,10vw,9.5rem)/.78 var(--display); letter-spacing: -.035em; text-transform: uppercase; overflow-wrap: anywhere; }
.department-application-head > p { max-width: 720px; margin: 0; color: rgba(255,255,255,.62); font-size: 1.05rem; line-height: 1.75; }
.department-application-head > div { display: flex; margin-top: 34px; flex-wrap: wrap; align-items: center; gap: 12px; }
.department-application-head > div > span,
.department-application-head > div > b { display: flex; min-height: 34px; padding: 0 12px; align-items: center; gap: 8px; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; color: rgba(255,255,255,.58); font-size: .55rem; letter-spacing: .08em; text-transform: uppercase; }
.department-application-head > div > b { color: #8ceaff; }

.department-application-state,
.department-questionnaire,
.department-application-unavailable {
    width: min(1120px,calc(100% - 44px));
    margin: clamp(46px,7vw,86px) auto;
}
.department-application-state { padding: clamp(48px,8vw,92px); border: 1px solid rgba(255,255,255,.11); border-radius: 27px; background: linear-gradient(145deg,rgba(27,14,44,.82),rgba(8,10,22,.94)); text-align: center; }
.department-state-mark { width: 74px; height: 74px; display: grid; margin: 0 auto 25px; place-items: center; border: 1px solid rgba(99,221,255,.3); border-radius: 50%; color: #8ceaff; background: rgba(99,221,255,.07); font: 800 1.25rem var(--display); box-shadow: 0 0 45px rgba(99,221,255,.1); }
.department-application-state h2 { margin: 16px 0; font: 900 clamp(3rem,6vw,6rem)/.83 var(--display); text-transform: uppercase; }
.department-application-state p { max-width: 650px; margin: 0 auto; color: rgba(255,255,255,.6); line-height: 1.7; }
.department-application-state a { width: min(380px,100%); margin: 30px auto 0; }

.department-questionnaire { overflow: hidden; border: 1px solid rgba(255,255,255,.11); border-radius: 28px; background: linear-gradient(155deg,rgba(25,13,42,.82),rgba(8,10,22,.96)); box-shadow: 0 35px 100px rgba(0,0,0,.3); }
.department-questionnaire-identity { display: grid; padding: 19px 22px; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px; border-bottom: 1px solid rgba(255,255,255,.1); background: rgba(255,255,255,.025); }
.department-questionnaire-identity img { width: 48px; height: 48px; border: 1px solid rgba(99,221,255,.32); border-radius: 50%; object-fit: cover; }
.department-questionnaire-identity > div { display: grid; gap: 3px; }
.department-questionnaire-identity small { color: #63ddff; font-size: .51rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.department-questionnaire-identity strong { color: #fff; }
.department-questionnaire-identity span { color: rgba(255,255,255,.43); font-size: .68rem; }
.department-questionnaire-identity > b { padding: 8px 11px; border: 1px solid rgba(107,240,174,.2); border-radius: 999px; color: #79eeb3; background: rgba(107,240,174,.05); font-size: .54rem; letter-spacing: .08em; text-transform: uppercase; }

.department-question-list { display: grid; padding: clamp(24px,5vw,58px); gap: 15px; }
.department-question { min-width: 0; margin: 0; padding: clamp(22px,4vw,38px); border: 1px solid rgba(255,255,255,.1); border-radius: 19px; background: rgba(5,8,18,.48); }
.department-question legend { width: 100%; display: grid; padding: 0 0 24px; grid-template-columns: auto minmax(0,1fr) auto; align-items: start; gap: 14px; }
.department-question legend > span { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid rgba(99,221,255,.22); border-radius: 50%; color: #76e1ff; font: 800 .64rem var(--display); background: rgba(99,221,255,.05); }
.department-question legend strong { padding-top: 5px; color: #fff; font-size: clamp(1rem,1.7vw,1.2rem); line-height: 1.45; }
.department-question legend small { padding: 8px 10px; border: 1px solid rgba(255,255,255,.09); border-radius: 999px; color: rgba(255,255,255,.38); font-size: .49rem; letter-spacing: .08em; text-transform: uppercase; }
.department-question input[type='text'],
.department-question textarea,
.department-question select { width: 100%; border: 1px solid rgba(255,255,255,.13); border-radius: 12px; color: #fff; background: rgba(4,7,16,.76); font: 500 .94rem/1.6 var(--body-font); outline: none; transition: border-color 180ms ease,box-shadow 180ms ease,background 180ms ease; }
.department-question input[type='text'],
.department-question select { min-height: 54px; padding: 0 16px; }
.department-question textarea { min-height: 180px; padding: 15px 16px; resize: vertical; }
.department-question input:focus,
.department-question textarea:focus,
.department-question select:focus { border-color: rgba(99,221,255,.65); background: rgba(7,12,24,.94); box-shadow: 0 0 0 3px rgba(99,221,255,.08); }
.department-select { display: grid; gap: 9px; }
.department-select > span { color: rgba(255,255,255,.45); font-size: .57rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.department-choice-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.department-choice-grid label { position: relative; cursor: pointer; }
.department-choice-grid input { position: absolute; opacity: 0; pointer-events: none; }
.department-choice-grid span { min-height: 56px; display: flex; padding: 12px 15px; align-items: center; border: 1px solid rgba(255,255,255,.11); border-radius: 11px; color: rgba(255,255,255,.68); background: rgba(255,255,255,.025); transition: border-color 180ms ease,color 180ms ease,background 180ms ease; }
.department-choice-grid input:checked + span { border-color: #63ddff; color: #fff; background: rgba(99,221,255,.1); box-shadow: inset 0 0 0 1px rgba(99,221,255,.16); }
.department-choice-grid input:focus-visible + span { outline: 2px solid #ef9bc9; outline-offset: 2px; }
.department-questionnaire-submit { display: flex; padding: 23px clamp(24px,5vw,58px); align-items: center; justify-content: space-between; gap: 28px; border-top: 1px solid rgba(255,255,255,.1); background: rgba(255,255,255,.025); }
.department-questionnaire-submit > div { display: grid; gap: 5px; }
.department-questionnaire-submit > div span { color: #ef9bc9; font-size: .55rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.department-questionnaire-submit p { margin: 0; color: rgba(255,255,255,.45); font-size: .76rem; }
.department-questionnaire-submit button { min-width: 220px; min-height: 56px; display: flex; padding: 0 17px; align-items: center; justify-content: space-between; border: 0; border-radius: 12px; color: #150b19; background: linear-gradient(135deg,#ef9bc9,#74dfff); font-size: .66rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.department-questionnaire-submit button:hover:not(:disabled) { filter: brightness(1.08); transform: translateY(-1px); }
.department-questionnaire-submit button:disabled { opacity: .48; cursor: not-allowed; }
.department-questionnaire-empty { margin: 0 clamp(24px,5vw,58px) clamp(24px,5vw,58px); padding: 26px; border: 1px dashed rgba(255,255,255,.14); border-radius: 15px; text-align: center; }
.department-questionnaire-empty span { color: #ef9bc9; font-size: .6rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.department-questionnaire-empty p { color: rgba(255,255,255,.5); }

@media (max-width: 900px) {
    .department-applications-hero { min-height: auto; grid-template-columns: 1fr; }
    .department-applications-hero aside { max-width: 560px; }
    .department-section-heading { grid-template-columns: 1fr; gap: 16px; }
    .department-opening-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
    .department-applications-hero { padding-inline: 20px; }
    .department-applications-hero h1 { font-size: clamp(4.3rem,21vw,6.5rem); }
    .department-submissions,.department-openings { padding-inline: 20px; }
    .department-submission-card { grid-template-columns: 1fr auto; gap: 12px; }
    .department-submission-card > span { grid-column: 1/-1; }
    .department-submission-card > p { grid-column: 1/-1; }
    .department-opening-card { min-height: 390px; padding: 26px 22px; }
    .department-opening-index { right: 18px; font-size: 5.3rem; }
    .department-opening-meta { gap: 10px; }
    .department-application-head,
    .department-application-state,
    .department-questionnaire,
    .department-application-unavailable { width: min(100% - 24px,1120px); }
    .department-application-head h1 { font-size: clamp(4rem,19vw,6rem); }
    .department-questionnaire { border-radius: 20px; }
    .department-questionnaire-identity { grid-template-columns: auto 1fr; }
    .department-questionnaire-identity > b { grid-column: 1/-1; width: fit-content; }
    .department-question-list { padding: 14px; }
    .department-question { padding: 21px 16px; }
    .department-question legend { grid-template-columns: auto minmax(0,1fr); }
    .department-question legend small { grid-column: 2; width: fit-content; }
    .department-choice-grid { grid-template-columns: 1fr; }
    .department-questionnaire-submit { align-items: stretch; flex-direction: column; }
    .department-questionnaire-submit button { width: 100%; }
}

/* Meet the Team */
body.team-profile-open { overflow: hidden; }
.relaunch-page--team { padding: 0; }
.team-hero { position: relative; z-index: 1; min-height: 580px; display: grid; padding: clamp(150px,17vw,220px) clamp(24px,7vw,110px) 80px; grid-template-columns: minmax(0,1.25fr) minmax(300px,.75fr); align-items: end; gap: 50px; overflow: hidden; }
.team-hero::before { position: absolute; z-index: -2; inset: 0; content: ""; background: linear-gradient(90deg,rgba(5,5,15,.94) 0%,rgba(5,5,15,.58) 48%,rgba(5,5,15,.72) 100%),url('../images/backgroundimage3.webp') center 42%/cover; transform: scale(1.04); }
.team-hero::after { position: absolute; z-index: -1; inset: auto 0 0; height: 42%; content: ""; background: linear-gradient(transparent,#070713); }
.team-hero > div > span,.team-division > header > div > span { color: #63ddff; font-size: .64rem; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.team-hero h1 { max-width: 820px; margin: 18px 0 20px; color: #fff; font: 800 clamp(4.5rem,9vw,8.5rem)/.76 var(--display); letter-spacing: -.045em; text-transform: uppercase; }
.team-hero > div > p { max-width: 680px; margin: 0; color: rgba(255,255,255,.7); font-size: clamp(.95rem,1.3vw,1.1rem); line-height: 1.7; }
.team-hero aside { display: grid; padding: 22px; grid-template-columns: 1fr 1fr; gap: 10px; border: 1px solid rgba(255,255,255,.12); border-radius: 20px; background: rgba(8,10,23,.72); backdrop-filter: blur(18px); }
.team-hero aside > span { display: grid; gap: 5px; padding: 16px; border-radius: 13px; background: rgba(255,255,255,.04); }
.team-hero aside small { color: rgba(255,255,255,.46); font-size: .56rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.team-hero aside strong { color: #fff; font: 800 2.2rem var(--display); }
.team-hero aside > b { grid-column: 1 / -1; display: flex; align-items: center; gap: 9px; padding: 10px 4px 0; color: #ef9bc9; font-size: .6rem; letter-spacing: .1em; text-transform: uppercase; }
.team-hero aside > b i { width: 7px; height: 7px; border-radius: 50%; background: #63ddff; box-shadow: 0 0 14px #63ddff; }
.team-division { padding-top: 50px; padding-bottom: 75px; }
.team-division > header { display: flex; margin-bottom: 26px; align-items: end; justify-content: space-between; gap: 30px; }
.team-division > header h2 { margin: 9px 0 0; color: #fff; font: 800 clamp(2.8rem,6vw,5.4rem)/.82 var(--display); text-transform: uppercase; }
.team-division > header > p { display: flex; margin: 0; align-items: baseline; gap: 8px; color: rgba(255,255,255,.45); text-transform: uppercase; }
.team-division > header > p strong { color: #ef9bc9; font: 800 2rem var(--display); }
.team-division > header > p span { font-size: .58rem; font-weight: 900; letter-spacing: .1em; }
.team-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(220px,270px)); justify-content: start; gap: 14px; }
.team-card { min-width: 0; border: 1px solid rgba(255,255,255,.11); border-radius: 22px; background: #090b18; overflow: hidden; transition: transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
.team-card:hover { transform: translateY(-6px); border-color: rgba(99,221,255,.42); box-shadow: 0 25px 65px rgba(0,0,0,.4); }
.team-card > button { width: 100%; display: grid; padding: 0; border: 0; color: inherit; background: transparent; text-align: left; cursor: pointer; }
.team-card-media { position: relative; aspect-ratio: 4 / 4.1; overflow: hidden; background: radial-gradient(circle at 50% 35%,rgba(99,221,255,.16),transparent 35%),linear-gradient(145deg,#11132a,#050611); }
.team-card-media > img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center top; transition: transform .55s ease; }
.team-card:hover .team-card-media > img { transform: scale(1.045); }
.team-card-placeholder { width: 100%; height: 100%; display: grid; place-content: center; justify-items: center; gap: 12px; background: linear-gradient(160deg,rgba(99,221,255,.08),transparent 45%),radial-gradient(circle at 70% 80%,rgba(239,155,201,.13),transparent 32%); }
.team-card-placeholder img { width: 82px; height: 82px; object-fit: contain; }
.team-card-placeholder span { color: #63ddff; font: 800 .63rem var(--body-font); letter-spacing: .16em; text-transform: uppercase; }
.team-card-position { position: absolute; right: 11px; bottom: 11px; left: 11px; padding: 9px 11px; border: 1px solid rgba(255,255,255,.15); border-radius: 9px; color: #fff; background: rgba(5,6,17,.76); backdrop-filter: blur(12px); font-size: .55rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.team-card-copy { display: grid; min-height: 205px; padding: 17px; align-content: start; }
.team-card-copy > span { color: #63ddff; font-size: .52rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.team-card-copy h3 { margin: 8px 0 5px; color: #fff; font: 800 clamp(1.65rem,2.5vw,2.25rem)/.86 var(--display); overflow-wrap: anywhere; text-transform: uppercase; }
.team-card-copy > p { margin: 0 0 12px; color: rgba(255,255,255,.54); font-size: .68rem; }
.team-card-copy > p strong { color: #fff; }
.team-card-copy dl { display: grid; margin: 3px 0 13px; gap: 5px; }
.team-card-copy dl > div { display: grid; padding: 7px 0; grid-template-columns: minmax(72px,.7fr) 1fr; gap: 8px; border-bottom: 1px solid rgba(255,255,255,.07); }
.team-card-copy dt { color: rgba(255,255,255,.38); font-size: .48rem; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.team-card-copy dd { margin: 0; color: rgba(255,255,255,.76); font-size: .62rem; overflow-wrap: anywhere; }
.team-card-copy footer { display: flex; margin-top: auto; padding-top: 12px; align-items: center; justify-content: space-between; border-top: 1px solid rgba(255,255,255,.08); color: #ef9bc9; font-size: .55rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.team-profile-dialog { width: min(1080px,calc(100vw - 34px)); max-width: none; max-height: calc(100svh - 34px); padding: 0; overflow: hidden; border: 1px solid rgba(99,221,255,.28); border-radius: 24px; color: #fff; background: #080918; box-shadow: 0 45px 150px rgba(0,0,0,.75); }
.team-profile-dialog::backdrop { background: rgba(2,3,10,.86); backdrop-filter: blur(10px); }
.team-profile-dialog > article { position: relative; display: grid; height: min(820px,calc(100svh - 36px)); grid-template-columns: minmax(330px,.78fr) minmax(0,1.22fr); overflow: hidden; }
.team-profile-close { position: absolute; z-index: 3; top: 18px; right: 18px; width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; color: #fff; background: rgba(7,8,20,.75); font-size: 1.5rem; cursor: pointer; }
.team-profile-close:hover { color: #11101b; background: #63ddff; }
.team-profile-media { position: relative; min-height: 0; background: linear-gradient(145deg,#11132a,#050611); overflow: hidden; }
.team-profile-media > img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.team-profile-media > span { position: absolute; right: 18px; bottom: 18px; left: 18px; display: grid; gap: 4px; padding: 15px; border: 1px solid rgba(255,255,255,.15); border-radius: 13px; background: rgba(5,6,17,.78); backdrop-filter: blur(12px); }
.team-profile-media small { color: #63ddff; font-size: .56rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.team-profile-media strong { font: 800 1.3rem var(--display); text-transform: uppercase; }
.team-profile-placeholder { width: 100%; height: 100%; display: grid; place-content: center; justify-items: center; gap: 15px; background: radial-gradient(circle at center,rgba(99,221,255,.12),transparent 32%),linear-gradient(150deg,#101329,#060711); }
.team-profile-placeholder img { width: 150px; }
.team-profile-placeholder span { color: #63ddff; font-size: .64rem; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.team-profile-content { min-width: 0; padding: clamp(70px,8vw,100px) clamp(28px,5vw,60px) 50px; overflow-y: auto; scrollbar-width: thin; scrollbar-color: #63ddff rgba(255,255,255,.06); }
.team-profile-content::-webkit-scrollbar { width: 9px; }
.team-profile-content::-webkit-scrollbar-track { background: rgba(255,255,255,.05); }
.team-profile-content::-webkit-scrollbar-thumb { border: 3px solid #080918; border-radius: 999px; background: #63ddff; }
.team-profile-content > header > span,.team-profile-content > section > span,.team-profile-sections section > span { color: #63ddff; font-size: .58rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.team-profile-content > header h2 { margin: 13px 0 10px; color: #fff; font: 800 clamp(3.4rem,7vw,6.4rem)/.77 var(--display); overflow-wrap: anywhere; text-transform: uppercase; }
.team-profile-content > header > strong { display: inline-flex; padding: 8px 12px; border: 1px solid rgba(239,155,201,.35); border-radius: 999px; color: #ef9bc9; font-size: .62rem; letter-spacing: .1em; text-transform: uppercase; }
.team-profile-content > header p { margin: 17px 0 0; color: rgba(255,255,255,.55); }
.team-profile-content > header p b { color: #fff; }
.team-profile-content > section { margin-top: 40px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.1); }
.team-profile-content > section p,.team-profile-sections section p { margin: 12px 0 0; color: rgba(255,255,255,.7); line-height: 1.7; }
.team-profile-sections { display: grid; margin-top: 24px; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.team-profile-sections section { min-width: 0; padding: 17px; border: 1px solid rgba(255,255,255,.09); border-radius: 13px; background: rgba(255,255,255,.025); }
.team-empty { display: grid; min-height: 480px; place-content: center; justify-items: center; text-align: center; }
.team-empty img { width: 130px; margin-bottom: 20px; }
.team-empty > span { color: #63ddff; font-size: .6rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.team-empty h2 { max-width: 700px; margin: 14px 0; color: #fff; font: 800 clamp(2.8rem,6vw,5rem)/.85 var(--display); text-transform: uppercase; }
.team-empty p { color: var(--muted); }
@media (max-width: 980px) {
    .team-hero { min-height: 0; grid-template-columns: 1fr; }
    .team-grid { grid-template-columns: repeat(auto-fill,minmax(220px,270px)); }
    .team-profile-dialog > article { grid-template-columns: minmax(260px,.7fr) minmax(0,1.3fr); }
}
@media (max-width: 680px) {
    .team-hero { padding-inline: 20px; }
    .team-hero h1 { font-size: clamp(3.6rem,19vw,5.6rem); }
    .team-division > header { align-items: flex-start; flex-direction: column; }
    .team-grid { grid-template-columns: minmax(0,330px); }
    .team-profile-dialog { width: 100vw; max-height: 100svh; border: 0; border-radius: 0; }
    .team-profile-dialog > article { height: 100svh; display: block; overflow-y: auto; }
    .team-profile-media { height: 48svh; min-height: 360px; }
    .team-profile-content { overflow: visible; }
    .team-profile-sections { grid-template-columns: 1fr; }
}
