@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;700;800&family=Inter:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#07090e;--surface:#10141d;--text:#f3f0e9;--muted:#9da5b5;--accent:#d19b45;--line:#ffffff1c;font:16px/1.6 Inter,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);background-image:radial-gradient(circle at 70% 5%,#15233b 0,transparent 38%)}body.theme-forever{--accent:#d9a24a;background-image:radial-gradient(circle at 30% 5%,#402914 0,transparent 42%)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.topbar{height:76px;padding:0 clamp(1.2rem,5vw,5rem);display:flex;align-items:center;gap:2rem;border-bottom:1px solid var(--line);background:#07090ee8;backdrop-filter:blur(18px);position:sticky;top:0;z-index:20}.brand{font:800 1.4rem Cinzel,serif;letter-spacing:.18em;color:var(--accent)}nav{display:flex;gap:1.7rem;margin:auto;font-size:.86rem;color:#d6dae3}nav a:hover{color:var(--accent)}.switch{border:1px solid var(--line);padding:.45rem .8rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}.portal-hero{text-align:center;padding:11vh 1.5rem 7vh}.portal-hero h1,.hero h1,.page-head h1{font:800 clamp(3rem,8vw,7.5rem)/.98 Cinzel,serif;letter-spacing:-.045em;margin:.18em 0}.portal-hero em{color:var(--accent);font-style:normal}.kicker{font-size:.72rem;letter-spacing:.27em;color:var(--accent);font-weight:700;text-transform:uppercase}.world-grid{max-width:1280px;margin:0 auto 8rem;padding:0 2rem;display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.world-card{min-height:440px;padding:2.5rem;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid var(--line);box-shadow:0 30px 70px #0008;transition:.3s}.world-card:hover{transform:translateY(-7px);border-color:#ffffff70}.world-card.retail{background:linear-gradient(0deg,#07101bea,#07101b11),radial-gradient(circle at 65% 20%,#2278ad,#142435 52%,#080b10)}.world-card.forever{background:linear-gradient(0deg,#160f07ee,#160f0711),radial-gradient(circle at 35% 20%,#ba7624,#422b13 50%,#090704)}.world-card h2{font:700 clamp(2.4rem,5vw,4.6rem) Cinzel;margin:.1em 0}.world-card>span{letter-spacing:.2em;font-size:.7rem}.hero{min-height:76vh;display:flex;align-items:center;padding:8vw;background:linear-gradient(90deg,#07090ef2 20%,transparent),radial-gradient(circle at 75% 45%,#1a6089,#111b2b 35%,#07090e 70%)}.theme-forever .hero{background:linear-gradient(90deg,#07090ef2 15%,transparent),radial-gradient(circle at 72% 45%,#926022,#39250f 35%,#07090e 72%)}.hero>div{max-width:760px}.hero p:not(.kicker){max-width:620px;color:#c1c7d1;font-size:1.15rem}.cta{display:inline-block;background:var(--accent);color:#100d08;padding:.85rem 1.35rem;border:0;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-top:1.2rem;cursor:pointer}.section,.roster-grid,.progress-list,.recruit-layout,.article{max-width:1180px;margin:0 auto;padding:5rem 2rem}.section-title h2,.section h2{font:700 clamp(2rem,4vw,3.5rem) Cinzel;margin:.1em 0 1em}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.card{background:var(--surface);border:1px solid var(--line);padding:1.6rem}.card h2,.card h3{font-family:Cinzel;margin:.2em 0}.card p{color:var(--muted)}.meta{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)!important}.panel{background:#0d1119;border:1px solid var(--line);margin-bottom:5rem}.chips{display:flex;gap:.7rem;flex-wrap:wrap}.chips span{border:1px solid var(--line);padding:.5rem .8rem}.page-head{padding:9rem max(2rem,calc((100vw - 1140px)/2));border-bottom:1px solid var(--line)}.page-head h1{font-size:clamp(3rem,7vw,6rem)}.article{max-width:880px}.article>h1{font:700 clamp(2.7rem,6vw,5.5rem)/1.05 Cinzel}.prose{margin-top:3rem;font-size:1.08rem;color:#d4d7dd}.prose h2,.prose h3{font-family:Cinzel;color:white;margin-top:2em}.prose a{color:var(--accent);text-decoration:underline}.prose img{height:auto;margin:2rem auto}.roster-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.member{display:flex;align-items:center;gap:1rem;background:var(--surface);border:1px solid var(--line);padding:1rem}.member img{width:76px;height:76px;object-fit:cover;border-radius:2px}.member h2{font:700 1.25rem Cinzel;margin:0}.member p,.member small{margin:0;color:var(--muted)}.progress-list{display:grid;gap:.7rem}.boss{display:flex;justify-content:space-between;align-items:center;background:var(--surface);border-left:3px solid #464d59;padding:1.2rem 1.5rem}.boss.down{border-color:#4eae78}.boss h2{font:600 1.25rem Cinzel;margin:.15rem 0}.boss small{color:var(--muted)}.boss strong{color:var(--accent)}.recruit-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:5rem}.needs{display:grid;gap:.7rem}.needs>div{padding:1rem;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.needs span{color:var(--muted);font-size:.85rem}.application-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;background:var(--surface);border:1px solid var(--line);padding:2rem}.application-form label{display:grid;gap:.35rem;font-size:.8rem;color:var(--muted)}.application-form label:last-of-type,.application-form .success,.application-form button{grid-column:1/-1}.application-form input,.application-form select,.application-form textarea{width:100%;background:#080a10;color:white;border:1px solid #ffffff2a;padding:.8rem;font:inherit}.honeypot{position:absolute;left:-9999px}.success{padding:1rem;background:#163625;color:#8ee8b5}footer{border-top:1px solid var(--line);padding:2rem 5vw;display:flex;gap:2rem;color:var(--muted);font-size:.8rem}footer span{margin-right:auto}@media(max-width:850px){nav{display:none}.topbar{gap:1rem}.switch{margin-left:auto}.world-grid,.cards,.roster-grid,.recruit-layout{grid-template-columns:1fr}.world-card{min-height:360px}.hero{min-height:68vh;padding:4rem 1.5rem}.recruit-layout{gap:2rem}.application-form{grid-template-columns:1fr}.application-form label{grid-column:1}.needs>div{display:grid}.page-head{padding:6rem 1.5rem}.section,.roster-grid,.progress-list,.recruit-layout,.article{padding:3rem 1.5rem}}
