:root {
  --bg:#080d14; --panel:#101820; --ink:#f5f7f9; --muted:#a4b0ba; --faint:#6c7d8c;
  --line:rgba(157,181,197,.19); --line-strong:rgba(157,181,197,.34);
  --red:#b32e3c; --red-light:#ed5260; --cyan:#66d4e3; --gold:#d9b76d;
  --display:'Exo 2','Arial Narrow',Arial,sans-serif;
  --body:'Manrope',Arial,sans-serif;
  --mono:'Roboto Mono',Consolas,monospace;
}
*,*::before,*::after {box-sizing:border-box}
html {scroll-behavior:smooth;scroll-padding-top:87px}
body {margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-kerning:normal}
body.menu-open {overflow:hidden}
button,input {font:inherit}
button,a { -webkit-tap-highlight-color:transparent }
button {cursor:pointer}
a {color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible {outline:2px solid #d2e5f1;outline-offset:4px}
img,svg {display:block}
p,h1,h2,h3 {margin-top:0}
.site-shell {overflow:clip;min-width:320px}
.container {width:min(calc(100% - 100px),1512px);margin-inline:auto}
.skip-link {position:absolute;z-index:9999;left:20px;top:12px;transform:translateY(-175%);background:var(--red);color:white;padding:12px 17px;border-radius:3px}
.skip-link:focus {transform:translateY(0)}
/* HEADER / NO ICON LOGO */
.site-header {position:sticky;top:0;z-index:100;background:rgba(8,14,21,.9);border-bottom:1px solid rgba(156,181,198,.22);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.header-inner {height:75px;display:flex;align-items:center;gap:32px}
.brand {flex:0 0 auto;display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:223px}
.brand__name {color:#f0f3f6;font:800 26px/1 var(--display);letter-spacing:.19em}
.brand__tagline {color:#91a0ae;font:600 9px/1.4 var(--mono);letter-spacing:.335em;white-space:nowrap}
.main-nav {display:flex;justify-content:center;align-items:center;gap:clamp(20px,2.4vw,42px);margin:auto}
.main-nav a {position:relative;display:inline-flex;align-items:center;height:75px;white-space:nowrap;color:#c0c8d0;font:800 12px var(--body);transition:color .2s}
.main-nav a::after {content:"";position:absolute;bottom:-1px;left:50%;width:0;height:2px;background:#b9cbd6;transform:translateX(-50%);transition:width .2s}
.main-nav a:hover,.main-nav a.is-active {color:white}
.main-nav a:hover::after,.main-nav a.is-active::after {width:28px}
.header-connect {flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:21px;min-height:39px;padding:8px 16px 8px 20px;border:1px solid #cc4854;border-radius:3px;background:linear-gradient(180deg,rgba(146,35,45,.75),rgba(85,18,29,.82));box-shadow:inset 0 1px 0 rgba(255,219,220,.13),0 3px 16px rgba(159,22,37,.12);font:800 11px var(--body);color:#fff;white-space:nowrap;transition:background .2s,border-color .2s,transform .2s}
.header-connect:hover {background:linear-gradient(180deg,#be3442,#861d2a);border-color:#f07882;transform:translateY(-1px)}
.header-connect svg {width:18px;height:18px;stroke-linecap:round;stroke-linejoin:round}
.header-connect__short {display:none}
.menu-toggle {display:none;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:43px;height:41px;background:#0f1922;border:1px solid var(--line-strong);border-radius:3px;color:white}
.menu-toggle span {width:19px;height:2px;background:#dce6ec;transition:transform .2s,opacity .2s}
/* HERO */
.hero {position:relative;min-height:585px;background:#080e15;isolation:isolate}
.hero__atmosphere {position:absolute;inset:0;overflow:hidden;z-index:-1;background:radial-gradient(ellipse at 77% 38%,rgba(25,106,123,.11),transparent 41%),radial-gradient(ellipse at 21% 65%,rgba(125,30,53,.12),transparent 41%),linear-gradient(110deg,#0c121b 6%,#0a1019 48%,#070d15 100%)}
.hero__atmosphere::after {content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(7,13,19,.50),transparent 56%),repeating-linear-gradient(90deg,transparent 0,transparent 88px,rgba(160,194,215,.025) 89px,transparent 90px),repeating-linear-gradient(0deg,transparent 0,transparent 88px,rgba(160,194,215,.023) 89px,transparent 90px)}
.hero__planet {position:absolute;top:-625px;left:-185px;width:940px;height:940px;border-radius:50%;border:2px solid rgba(233,103,127,.46);box-shadow:0 0 24px rgba(232,65,91,.40),0 0 100px rgba(167,40,64,.23),inset 0 0 80px rgba(239,65,81,.2);background:radial-gradient(ellipse at 63% 73%,#622c3f 0%,#342531 24%,#191d2a 51%,#090e16 76%);opacity:.84}
.hero__planet::before {content:"";position:absolute;inset:13px;border-radius:50%;background:repeating-radial-gradient(ellipse at 35% 65%,transparent 0,transparent 49px,rgba(255,175,184,.055) 50px,transparent 52px)}
.hero__orbit {position:absolute;width:900px;height:900px;left:19%;top:-150px;border:1px solid rgba(130,153,168,.12);border-radius:50%;transform:rotate(-24deg) scaleX(1.15)}
.hero__orbit::after {content:"";position:absolute;inset:95px;border:1px solid rgba(151,87,100,.15);border-radius:50%}
.hero__horizon {position:absolute;right:-180px;bottom:-360px;width:900px;height:470px;border-radius:50%;transform:rotate(-17deg);background:radial-gradient(ellipse at 38% 10%,rgba(91,134,159,.38),#1a2a39 15%,#07101a 45%,#03080e 80%);box-shadow:0 -7px 23px rgba(88,150,178,.18);border-top:2px solid rgba(154,210,235,.35);opacity:.75}
.hero__stars {position:absolute;inset:0;pointer-events:none}
.star {position:absolute;width:var(--s);height:var(--s);border-radius:50%;background:rgba(221,235,247,var(--o));box-shadow:0 0 6px rgba(224,235,245,.28);animation:twinkle var(--d) ease-in-out var(--delay) infinite alternate}
@keyframes twinkle {to {opacity:.3}}
.hero__layout {position:relative;display:grid;grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr);gap:clamp(35px,4.3vw,76px);align-items:center;padding-top:61px;padding-bottom:61px}
.hero__intro {min-width:0;max-width:665px}
.eyebrow {display:flex;align-items:center;gap:15px;margin-bottom:24px;color:#d1dce5;font:700 10px/1.3 var(--mono);letter-spacing:.33em;white-space:nowrap}
.eyebrow > span {width:37px;height:3px;background:var(--red-light);box-shadow:0 0 10px rgba(255,69,90,.5)}
.hero__title {font:900 clamp(40px,3.85vw,68px)/1.07 var(--display);letter-spacing:-.012em;white-space:nowrap;text-shadow:0 4px 30px rgba(0,0,0,.3);margin:0 0 25px}
.hero__title em {font-style:normal;color:#c6d0da}
.hero__title em span,.red-stop {color:#f34b5a!important}
.hero__narrow-break {display:none}
.hero__description {max-width:565px;margin:0;color:#b1bdc7;font:500 clamp(12px,1vw,14px)/1.85 var(--body)}
.hero__description strong {color:#e6eaee;font-weight:700}
.hero__buttons {display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}
.button {display:inline-flex;justify-content:center;align-items:center;gap:13px;min-height:49px;padding:12px 21px;border:1px solid transparent;border-radius:3px;white-space:nowrap;font:800 12px var(--body);transition:border-color .2s,transform .2s,background .2s,box-shadow .2s}
.button:hover {transform:translateY(-2px)}
.button svg {width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.button--red {border-color:#e34b59;background:linear-gradient(180deg,#b93543,#7f1b2a);box-shadow:inset 0 1px 0 rgba(255,223,227,.2),0 10px 24px rgba(70,5,19,.25);color:#fff}
.button--red:hover {border-color:#ff7882;background:linear-gradient(180deg,#d54654,#9e2634);box-shadow:0 10px 32px rgba(185,46,65,.28)}
.button--outline {border-color:rgba(188,206,218,.46);background:rgba(7,12,18,.54);color:#e4eaf0}
.button--outline:hover {border-color:#b8c5d0;background:rgba(39,54,65,.68)}
.button .discord-svg {width:20px;height:20px;stroke:none}
.button__external {font-size:17px;font-weight:400;margin-left:2px}
.server-strip {margin-top:25px;min-height:44px;display:flex;align-items:center;gap:12px;max-width:580px;padding-top:11px;border-top:1px solid rgba(168,191,208,.21)}
.server-strip__dot {width:12px;height:12px;border-radius:50%;background:#59c9d4;border:4px solid #182f37;outline:1px solid rgba(115,204,215,.45);box-shadow:0 0 16px rgba(88,194,213,.28);flex:0 0 auto}
.server-strip__label {font:700 9px var(--mono);color:#91a1ad;white-space:nowrap;letter-spacing:.06em}
.server-strip__ip {font:700 clamp(12px,1.14vw,16px)/1.3 var(--mono);color:#f0f5f7;white-space:nowrap;letter-spacing:0}
.server-strip__copy {background:transparent;border:0;border-left:1px solid rgba(171,191,204,.28);padding:6px 0 6px 13px;display:flex;align-items:center;gap:7px;color:#afbec9;white-space:nowrap;font:700 9px var(--mono);letter-spacing:.025em}
.server-strip__copy svg {width:15px;height:15px}
.server-strip__copy:hover {color:white}
.server-strip__note {margin:5px 0 0;color:#72818e;font:500 9px/1.5 var(--body)}
/* HERO PORTAL CARDS */
.hero-worlds {min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;align-items:stretch}
.hero-world {position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-width:0;min-height:417px;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 65%,#1e2530);border-radius:5px;background:#101a24;box-shadow:0 22px 35px rgba(0,0,0,.28),0 0 22px color-mix(in srgb,var(--accent) 8%,transparent);transition:transform .27s,border-color .27s,box-shadow .27s}
.hero-world:hover,.hero-world:focus-visible {transform:translateY(-7px);border-color:var(--accent);box-shadow:0 20px 50px rgba(0,0,0,.48),0 0 25px color-mix(in srgb,var(--accent) 18%,transparent)}
.hero-world::before {content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent);box-shadow:0 0 18px color-mix(in srgb,var(--accent) 60%,transparent);z-index:2}
.hero-world::after {content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(6,10,18,.3) 0%,rgba(6,10,18,.08) 39%,rgba(5,10,16,.08) 56%,rgba(3,8,14,.92) 100%)}
.hero-world > img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .5s ease}
.hero-world:hover > img {transform:scale(1.052)}
.hero-world--imperial {--accent:#f34d5f}
.hero-world--halo {--accent:#68d9e0}
.hero-world--warhammer {--accent:#e0b76b}
.hero-world__top {padding:19px 18px 0}
.world-status {display:inline-flex;align-items:center;gap:8px;max-width:100%;border:1px solid color-mix(in srgb,var(--accent) 68%,transparent);background:rgba(5,10,17,.67);border-radius:3px;padding:6px 9px;color:#eef3f5;font:800 9px/1 var(--mono);white-space:nowrap;letter-spacing:.035em}
.world-status i {width:5px;height:5px;flex:0 0 auto;background:var(--accent);box-shadow:0 0 7px var(--accent)}
.hero-world h2 {margin:20px 0 0;font:900 clamp(21px,2vw,31px)/1.07 var(--display);letter-spacing:0;text-shadow:0 4px 12px rgba(0,0,0,.52);overflow-wrap:normal;word-break:normal}
.hero-world--warhammer h2 {font-size:clamp(20px,1.65vw,27px)}
.hero-world__bottom {display:flex;align-items:flex-end;gap:4px;padding:0 16px 18px 18px}
.hero-world__bottom p {margin:0;color:#d6e0e6;font:500 clamp(11px,.84vw,13px)/1.67 var(--body)}
.hero-world__bottom > span {color:var(--accent);font:400 30px/1 var(--display);margin-left:auto;flex:0 0 auto}
.hero__lower-rule {height:1px;background:linear-gradient(90deg,transparent,rgba(166,185,201,.25) 15%,rgba(166,185,201,.25) 85%,transparent)}
/* HOW TO START */
.start-section {background:radial-gradient(ellipse at 15% 100%,rgba(100,33,52,.09),transparent 40%),linear-gradient(110deg,#0d141d,#0a1118 68%,#0b121b);border-bottom:1px solid var(--line)}
.start-section__layout {display:grid;grid-template-columns:minmax(0,.99fr) minmax(0,1.36fr) minmax(0,1.06fr);gap:clamp(25px,3vw,48px);align-items:center;padding-top:38px;padding-bottom:38px}
.section-kicker {display:flex;align-items:center;gap:12px;color:#c4d2dc;font:700 10px/1.3 var(--mono);letter-spacing:.2em;white-space:nowrap}
.section-kicker i {width:27px;height:2px;background:#ed4c5b;box-shadow:0 0 10px rgba(240,64,83,.4)}
.start-section__intro h2 {margin:16px 0 12px;font:900 clamp(31px,3vw,48px)/1.07 var(--display);letter-spacing:-.01em}
.start-section__intro h2 > span {color:#b9c5d0}
.start-section__intro p {margin:0;max-width:390px;color:#9dabb6;font:500 12px/1.7 var(--body)}
.steps {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.step {min-width:0}
.step__icon {position:relative;display:flex;align-items:center;justify-content:center;width:49px;height:49px;margin:0 0 17px;border:1px solid rgba(173,191,204,.47);border-radius:8px;background:rgba(6,13,20,.5);color:#e7edf3}
.step__icon svg {width:28px;height:28px}
.step__icon b {position:absolute;top:-9px;right:-10px;width:20px;height:20px;display:grid;place-items:center;border:1px solid #ea5965;border-radius:5px;background:#b63242;color:white;font:800 11px var(--mono)}
.step h3 {margin:0 0 6px;font:900 13px/1.3 var(--display);letter-spacing:.025em;white-space:nowrap}
.step p {max-width:175px;margin:0;color:#aab7c1;font:500 10px/1.6 var(--body)}
.connect-card {min-width:0;padding-left:clamp(18px,2.5vw,42px);border-left:1px solid var(--line-strong)}
.connect-card__top {display:flex;align-items:center;justify-content:space-between;gap:12px;background:rgba(4,10,16,.6);color:#8999a5;font:600 9px var(--mono);padding:12px 15px;border:1px solid var(--line-strong);border-bottom:0;letter-spacing:.04em}
.connect-card__top span:first-child {color:#e1ebf0;font-weight:800}
.connect-card__top i {display:inline-block;vertical-align:middle;width:5px;height:5px;margin-right:7px;background:var(--red-light);box-shadow:0 0 9px var(--red-light)}
.connect-card__body {padding:19px 15px 16px;border:1px solid var(--line-strong);background:rgba(7,13,20,.62)}
.connect-card__label {font:700 9px var(--mono);color:#91a0ac;letter-spacing:.12em}
.connect-card__ip {display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 0 12px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.connect-card__ip code {font:800 clamp(13px,1.25vw,18px) var(--mono);color:#f2f5f7;letter-spacing:-.01em;white-space:nowrap}
.connect-card__ip button {display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid var(--line-strong);border-radius:3px;background:#17222d;color:#d2e1e9}
.connect-card__ip button:hover {border-color:#c8d8df}
.connect-card__ip svg {width:15px;height:15px}
.connect-card__button {width:100%;min-height:42px;gap:13px;padding:11px 12px;font:800 10px var(--mono);letter-spacing:.02em}
.connect-card__button svg {width:17px;height:17px}
/* LONG-FORM CONTENT */
.section {position:relative;padding:108px 0;border-bottom:1px solid var(--line)}
.section-heading h2 {margin:17px 0 0;font:900 clamp(34px,3.55vw,56px)/1.07 var(--display);letter-spacing:-.01em}
.section-heading h2 span {color:#aebbc7}
.section-heading--row {display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:34px}
.section-heading--row > p {max-width:320px;margin:0 0 5px;color:#91a1ae;font:500 12px/1.8 var(--body)}
.about-section {background:radial-gradient(ellipse at 0% 50%,rgba(151,53,69,.07),transparent 48%),#0a1119}
.about-section__layout {display:grid;grid-template-columns:1fr .8fr;gap:13%;align-items:center}
.about-section__text {padding-left:42px;border-left:1px solid var(--line-strong)}
.about-section__text p {font:500 13px/1.9 var(--body);color:#95a6b3}
.about-section__text .lead-text {font-weight:800;color:#edf0f4;font-size:16px;line-height:1.7}
.text-link {display:inline-flex;align-items:center;gap:22px;margin-top:12px;font:700 10px var(--mono);letter-spacing:.07em;color:#cbdbe4;transition:color .2s}
.text-link span {font-size:22px;color:#f26370}
.text-link:hover {color:#fff}
.features-section {background:#090f16}
.features-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line-strong)}
.feature {position:relative;min-height:268px;padding:28px 31px 32px;background:linear-gradient(135deg,rgba(29,40,52,.35),rgba(11,19,27,.65))}
.feature + .feature {border-left:1px solid var(--line-strong)}
.feature__id {font:700 9px var(--mono);color:#899eae;letter-spacing:.18em}
.feature__icon {height:60px;display:flex;align-items:center;color:#c7d8e1;font:300 47px var(--display)}
.feature h3 {font:900 20px/1.22 var(--display);letter-spacing:0;margin:9px 0 10px}
.feature p {font:500 12px/1.8 var(--body);color:#99aab5;max-width:330px;margin:0}
/* ================== UNIVERSE SHOWCASE / REDESIGNED ================== */
.universes-section {
  --u-outline: rgba(156,184,205,.19);
  isolation:isolate;
  position:relative;
  overflow:hidden;
  padding-top:100px;
  padding-bottom:82px;
  background:radial-gradient(ellipse 43% 44% at 1% 2%,rgba(156,42,64,.13),transparent 82%),
    radial-gradient(ellipse 36% 60% at 94% 58%,rgba(30,100,129,.13),transparent 80%),
    linear-gradient(180deg,#0b111a 0%,#080f18 100%);
}
.universes-section__backdrop {
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.7;
  background:repeating-linear-gradient(90deg,transparent 0,transparent 97px,rgba(155,193,213,.03) 98px,transparent 99px),
    repeating-linear-gradient(0deg,transparent 0,transparent 97px,rgba(155,193,213,.025) 98px,transparent 99px);
}
.universes-section__backdrop::before {
  content:"";
  position:absolute;
  width:min(64vw,910px);
  aspect-ratio:1;
  left:-29%;top:-560px;
  border-radius:50%;
  border:1px solid rgba(226,93,113,.28);
  box-shadow:0 0 40px rgba(205,54,76,.09),inset 0 0 55px rgba(158,48,70,.06);
  transform:rotate(-28deg) scaleX(1.2);
}
.universes-section__backdrop::after {
  content:"";
  position:absolute;
  width:min(78vw,1200px);
  height:360px;
  bottom:-295px;
  right:-15%;
  transform:rotate(-8deg);
  border-radius:50%;
  border-top:1px solid rgba(141,211,236,.4);
  box-shadow:0 -10px 65px rgba(40,112,144,.13);
  background:radial-gradient(ellipse at 50% 8%,rgba(71,110,137,.23),rgba(14,29,44,.1) 30%,transparent 64%);
}
.universes-section__inner {position:relative}
.universe-heading {margin-bottom:36px;gap:28px}
.universe-heading h2 {line-height:1.12;letter-spacing:0}
.universe-heading__dot {color:#ee4f5e !important}
.universe-heading > p {
  align-self:center;
  max-width:360px;
  margin:5px 0 0;
  padding:2px 0 2px 23px;
  border-left:1px solid rgba(177,201,217,.45);
  color:#a8b9c5;
  font:500 13px/1.8 var(--body);
}
.universe-heading > p strong {color:#e8f0f4;font-weight:800}
.projects-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.project-card {
  --accent:#ed6470;
  --accent-rgb:237,100,112;
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:522px;
  overflow:hidden;
  padding:24px 24px 20px;
  border:1px solid rgba(var(--accent-rgb),.78);
  border-radius:12px;
  background:#0b1420;
  box-shadow:0 18px 38px rgba(0,0,0,.25),inset 0 0 0 1px rgba(255,255,255,.025);
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;
}
.project-card--imperial {--accent:#ee6674;--accent-rgb:238,102,116}
.project-card--halo {--accent:#69dde4;--accent-rgb:105,221,228}
.project-card--warhammer {--accent:#e0b978;--accent-rgb:224,185,120}
.project-card:hover {
  transform:translateY(-5px);
  border-color:var(--accent);
  box-shadow:0 25px 50px rgba(0,0,0,.42),0 0 28px rgba(var(--accent-rgb),.12);
}
.project-card::before {
  content:"";
  position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(7,14,21,.35) 0%,rgba(7,14,21,.02) 41%,rgba(5,10,16,.28) 70%,rgba(5,10,16,.82) 100%),
    linear-gradient(90deg,rgba(6,11,18,.38),transparent 82%);
}
.project-card::after {
  content:"";
  position:absolute;
  top:0;left:20px;right:20px;height:2px;
  background:linear-gradient(90deg,transparent,rgba(var(--accent-rgb),.92),transparent);
  box-shadow:0 0 18px rgba(var(--accent-rgb),.45);
  pointer-events:none;
}
.project-card__art {position:absolute;inset:0;z-index:-2;pointer-events:none;overflow:hidden}
.project-card__art img {width:100%;height:100%;object-fit:cover;object-position:center 50%;opacity:.85;transition:transform .45s ease,opacity .45s ease}
.project-card:hover .project-card__art img {transform:scale(1.045);opacity:.96}
.project-card__art::after {content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,10,15,.21),rgba(3,9,15,.08) 48%,rgba(3,9,15,.35) 85%,rgba(3,9,15,.7))}
.project-card__top {display:flex;gap:8px;flex-wrap:wrap;align-items:center;min-height:28px;z-index:1}
.project-card__id,.project-card__phase {display:inline-flex;align-items:center;gap:8px;min-height:28px;padding:5px 10px;border:1px solid rgba(var(--accent-rgb),.34);border-radius:4px;background:rgba(4,12,18,.69);color:#eaf1f4;font:700 9px/1.25 var(--mono);letter-spacing:.025em;white-space:nowrap;backdrop-filter:blur(5px)}
.project-card__id i {flex:0 0 auto;width:6px;height:6px;background:var(--accent);box-shadow:0 0 8px rgba(var(--accent-rgb),.48)}
.project-card__phase {color:var(--accent);border-color:rgba(var(--accent-rgb),.52);background:rgba(6,13,20,.76)}
.project-card__content {position:relative;z-index:1;flex:1;display:flex;flex-direction:column;align-items:flex-start;padding-top:25px}
.project-card h3 {
  max-width:100%;
  margin:0;
  color:#f4f7fa;
  font:900 clamp(33px,2.95vw,49px)/1.02 var(--display);
  letter-spacing:0;
  text-shadow:0 3px 24px rgba(0,0,0,.37);
  overflow-wrap:normal;
}
.project-card--warhammer h3 {font-size:clamp(31px,2.66vw,44px)}
.project-card__line {display:block;width:43px;height:3px;margin:24px 0 20px;background:var(--accent);box-shadow:0 0 14px rgba(var(--accent-rgb),.65)}
.project-card p {max-width:235px;margin:0;color:#d1dbe2;font:600 13px/1.67 var(--body);text-shadow:0 2px 15px rgba(0,0,0,.52)}
.project-card__action {
  position:relative;z-index:1;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  min-height:56px;
  margin-top:28px;
  padding:13px 18px;
  border:1px solid rgba(var(--accent-rgb),.7);
  border-radius:5px;
  background:linear-gradient(180deg,rgba(var(--accent-rgb),.3),rgba(var(--accent-rgb),.09)),rgba(5,12,18,.84);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 8px 25px rgba(0,0,0,.18);
  color:#f5f8fb;
  font:800 11px/1.2 var(--mono);
  letter-spacing:.075em;
  transition:background .2s,box-shadow .2s,transform .2s;
}
.project-card--imperial .project-card__action {background:linear-gradient(180deg,rgba(179,42,58,.92),rgba(94,20,35,.92))}
.project-card__action[href]:hover {transform:translateY(-2px);background:linear-gradient(180deg,#c13c4d,#8f2533);box-shadow:0 9px 20px rgba(var(--accent-rgb),.22)}
.project-card__arrow {font:400 25px/1 var(--body)}
.project-card__action--pending {opacity:.79;color:#d3e1e6;cursor:default;background:linear-gradient(180deg,rgba(var(--accent-rgb),.14),rgba(var(--accent-rgb),.04)),rgba(5,12,18,.91)}
.project-card__pending-icon {font-size:16px;color:var(--accent)}
.universes-section__end {display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:40px;margin-top:22px}
.universes-section__notice {display:flex;align-items:center;gap:12px;color:#879dab;font:600 9px/1.75 var(--mono);letter-spacing:.035em}
.universes-section__info {display:grid;place-items:center;flex:0 0 19px;width:19px;height:19px;border:1px solid rgba(168,190,204,.55);border-radius:50%;font:700 11px/1 var(--mono);color:#b8cad5}
.universes-section__end .text-link {margin-top:0;white-space:nowrap}
/* ========================================================================= */
/* FOOTER */
.footer {background:#080d14}
.footer__main {display:flex;align-items:center;justify-content:space-between;gap:36px;min-height:100px;border-bottom:1px solid var(--line)}
.brand--footer {min-width:0}
.brand--footer .brand__name {font-size:22px}
.brand--footer .brand__tagline {font-size:8px}
.footer__nav {display:flex;align-items:center;gap:clamp(17px,2.4vw,43px);flex-wrap:wrap}
.footer__nav a,.footer__discord {color:#aab7c0;font:700 11px var(--body);white-space:nowrap;transition:color .2s}
.footer__nav a:hover,.footer__discord:hover {color:white}
.footer__bottom {display:flex;gap:25px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-block:17px 22px;color:#667684;font:600 9px/1.7 var(--mono);letter-spacing:.04em}
.footer__bottom a {color:#97a6b2;white-space:nowrap}
.toast {position:fixed;z-index:300;bottom:25px;right:24px;max-width:min(420px,calc(100% - 40px));padding:14px 20px;background:#17232b;color:#f2f5f7;border:1px solid rgba(156,191,207,.54);box-shadow:0 10px 35px rgba(0,0,0,.4);font:700 12px var(--body);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .2s,transform .2s}
.toast.is-visible {opacity:1;transform:translateY(0)}
.js .reveal {opacity:0;transform:translateY(16px);transition:opacity .65s ease,transform .65s ease}
.js .reveal.is-visible {opacity:1;transform:none}
/* RESPONSIVE */
@media(max-width:1450px) {
  .container {width:calc(100% - 76px)}
  .hero__layout {gap:32px;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr)}
  .hero__title {font-size:clamp(43px,4.1vw,65px)}
  .hero-worlds {gap:10px}
  .hero-world {min-height:385px}
  .hero-world__top {padding:16px 12px 0}
  .hero-world__bottom {padding:0 11px 15px 12px}
  .hero-world h2 {font-size:clamp(21px,2.15vw,29px)}
  .hero-world--warhammer h2 {font-size:clamp(19px,1.58vw,23px)}
  .world-status {font-size:8px;padding:6px}
  .header-inner {gap:23px}
  .brand {min-width:200px}
  .start-section__layout {gap:22px;grid-template-columns:minmax(0,.92fr) minmax(0,1.27fr) minmax(0,1.08fr)}
  .connect-card {padding-left:21px}
  .step h3 {font-size:12px}
}
@media(max-width:1160px) {
  .container {width:calc(100% - 68px)}
  .brand {min-width:170px}
  .brand__name {font-size:23px}
  .brand__tagline {font-size:8px}
  .main-nav {gap:17px}
  .main-nav a {font-size:11px}
  .header-connect {gap:10px;padding:8px 13px}
  .header-connect__full {display:none}
  .header-connect__short {display:inline}
  .hero__layout {grid-template-columns:1fr;gap:31px;padding-top:65px;padding-bottom:57px}
  .hero__intro {max-width:720px}
  .hero__title {font-size:clamp(50px,6.6vw,79px)}
  .hero__description {font-size:14px}
  .hero-worlds {max-width:100%;gap:15px}
  .hero-world {min-height:375px}
  .hero-world h2 {font-size:clamp(28px,3.7vw,40px)}
  .hero-world__top {padding:20px 20px 0}
  .hero-world--warhammer h2 {font-size:clamp(26px,3.2vw,35px)}
  .hero-world__bottom {padding:0 20px 21px}
  .hero-world__bottom p {font-size:12px}
  .start-section__layout {grid-template-columns:1fr 1.6fr;align-items:start;padding-top:45px;padding-bottom:48px;row-gap:34px}
  .steps {align-self:center}
  .connect-card {grid-column:1/-1;padding-left:0;border-left:0;max-width:500px;width:100%}
  .connect-card__ip code {font-size:18px}
}
@media(max-width:790px) {
  .container {width:calc(100% - 44px)}
  .header-inner {height:67px;gap:12px}
  .brand {min-width:0;margin-right:auto}
  .brand__name {font-size:20px;letter-spacing:.13em}
  .brand__tagline {font-size:7px;letter-spacing:.28em}
  .main-nav {display:none;position:absolute;top:67px;left:0;right:0;margin:0;padding:14px 22px 20px;background:rgba(7,13,20,.99);box-shadow:0 15px 35px rgba(0,0,0,.48);border-bottom:1px solid var(--line-strong);flex-direction:column;align-items:stretch;gap:0}
  .main-nav.is-open {display:flex}
  .main-nav a {height:51px;font-size:13px;border-bottom:1px solid var(--line)}
  .main-nav a::after {display:none}
  .header-connect {min-height:35px;font-size:10px;padding:6px 9px 6px 12px;gap:6px}
  .header-connect svg {width:15px;height:15px}
  .menu-toggle {display:flex}
  .menu-toggle[aria-expanded=true] span:nth-child(1) {transform:translateY(7px) rotate(45deg)}
  .menu-toggle[aria-expanded=true] span:nth-child(2) {opacity:0}
  .menu-toggle[aria-expanded=true] span:nth-child(3) {transform:translateY(-7px) rotate(-45deg)}
  .hero__planet {left:-350px;top:-660px}
  .hero__layout {padding-top:52px;padding-bottom:50px}
  .hero__title {font-size:clamp(41px,8vw,67px)}
  .hero-worlds {gap:10px}
  .hero-world {min-height:320px}
  .hero-world h2 {font-size:clamp(21px,3.8vw,30px)}
  .hero-world__top {padding:13px 12px 0}
  .hero-world--warhammer h2 {font-size:clamp(19px,3.45vw,27px)}
  .hero-world__bottom {padding:0 12px 14px}
  .hero-world__bottom p {font-size:10px}
  .world-status {font-size:8px;letter-spacing:0}
  .hero-world__bottom > span {font-size:25px}
  .start-section__layout {grid-template-columns:1fr;row-gap:32px}
  .steps {max-width:670px;align-self:start}
  .start-section__intro h2 {font-size:44px}
  .connect-card {grid-column:auto}
  .section {padding:79px 0}
  .about-section__layout {grid-template-columns:1fr;gap:30px}
  .about-section__text {padding-left:22px}
  .section-heading--row {align-items:start;flex-direction:column;gap:12px}
  .features-grid,.projects-grid {grid-template-columns:1fr}
  .feature + .feature {border-left:0;border-top:1px solid var(--line-strong)}
  .feature {min-height:200px}
  .projects-grid {gap:13px}
  .project-card {min-height:300px}
  .project-card__content {max-width:430px}
  .footer__main {padding:31px 0;align-items:start;flex-wrap:wrap}
  .footer__nav {gap:17px 25px}
}
@media(max-width:560px) {
  .container {width:calc(100% - 34px)}
  .header-connect {font-size:9px;padding:6px 9px}
  .menu-toggle {width:38px;height:38px}
  .brand__name {font-size:18px}
  .brand__tagline {font-size:6px;letter-spacing:.24em}
  .hero__layout {padding-top:45px;gap:31px}
  .eyebrow {font-size:9px;gap:10px;margin-bottom:16px}
  .eyebrow > span {width:25px}
  .hero__title {font-size:clamp(40px,10vw,56px);line-height:1.07;white-space:normal;letter-spacing:-.008em;margin-bottom:20px}
  .hero__narrow-break {display:none}
  .hero__description {font-size:12px;line-height:1.8}
  .hero__buttons {gap:9px;margin-top:23px}
  .button {min-height:46px;font-size:11px;padding:11px 13px;gap:8px}
  .button svg {width:15px;height:15px}
  .button .discord-svg {width:17px;height:17px}
  .server-strip {flex-wrap:wrap;gap:10px;margin-top:17px;padding-top:14px}
  .server-strip__ip {font-size:14px}
  .server-strip__copy {padding-left:9px}
  .server-strip__copy span {display:none}
  .server-strip__note {font-size:9px}
  .hero-worlds {display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:14px;margin-right:-17px;scrollbar-width:thin;scrollbar-color:#556773 transparent}
  .hero-world {scroll-snap-align:start;flex:0 0 min(78vw,280px);min-height:375px}
  .hero-world h2 {font-size:34px}
  .hero-world__top {padding:17px 15px 0}
  .hero-world--warhammer h2 {font-size:28px}
  .hero-world__bottom {padding:0 15px 19px}
  .hero-world__bottom p {font-size:12px}
  .world-status {font-size:9px}
  .start-section__layout {padding:43px 0}
  .start-section__intro h2 {font-size:40px}
  .steps {grid-template-columns:1fr;gap:18px}
  .step {display:grid;grid-template-columns:57px 1fr;grid-template-rows:auto auto;column-gap:15px;align-items:center}
  .step__icon {grid-row:1/3;grid-column:1;margin:0;width:43px;height:43px}
  .step__icon svg {width:24px;height:24px}
  .step h3 {font-size:15px;margin:0}
  .step p {max-width:initial;margin:4px 0 0;font-size:11px}
  .connect-card__top {font-size:8px}
  .connect-card__ip code {font-size:clamp(12px,4vw,17px)}
  .section {padding:65px 0}
  .section-heading h2 {font-size:clamp(31px,8.2vw,45px)}
  .feature {padding:25px 22px}
  .feature h3 {font-size:18px}
  .project-card {padding:22px;min-height:350px}
  .project-card h3 {font-size:34px}
  .universes-section__end {flex-direction:column;align-items:start}
  .footer__main {gap:25px}
  .footer__nav {width:100%;display:grid;grid-template-columns:repeat(2,1fr)}
  .footer__bottom {flex-direction:column;align-items:start;gap:9px;font-size:8px}
}
@media(max-width:355px){.hero__buttons .button {width:100%}.brand__name {font-size:16px}.header-connect {padding:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}}

/* Universe showcase responsive adjustments; no changes to other sections */
@media (max-width: 1450px) {
  .project-card {padding:20px 20px 18px;min-height:492px}
  .project-card h3 {font-size:clamp(30px,2.8vw,41px)}
  .project-card--warhammer h3 {font-size:clamp(28px,2.55vw,38px)}
  .project-card__id,.project-card__phase {font-size:8px;padding:5px 7px}
  .project-card p {font-size:12px;max-width:210px}
  .project-card__action {font-size:10px;letter-spacing:.035em}
}
@media (max-width: 1120px) {
  .projects-grid {gap:14px}
  .project-card {padding:17px;min-height:465px}
  .project-card__top {align-items:flex-start;flex-direction:column;gap:6px}
  .project-card__content {padding-top:17px}
  .project-card h3 {font-size:clamp(27px,3vw,35px)}
  .project-card--warhammer h3 {font-size:clamp(25px,2.8vw,33px)}
  .project-card__line {margin:18px 0 13px}
  .project-card p {font-size:11px;max-width:200px}
  .project-card__action {min-height:50px;padding:10px 11px;font-size:9px}
}
@media (max-width: 900px) {
  .universe-heading {gap:19px;margin-bottom:25px}
  .universe-heading > p {max-width:410px;margin:0}
  .projects-grid {grid-template-columns:1fr;gap:14px}
  .project-card {min-height:352px;padding:24px;max-width:100%}
  .project-card__top {flex-direction:row;gap:9px}
  .project-card__art img {position:absolute;right:0;left:auto;top:0;height:100%;width:55%;object-fit:cover;object-position:center 55%}
  .project-card__art {background:linear-gradient(100deg,rgba(10,18,28,.95) 0%,rgba(13,24,32,.82) 55%,transparent 100%)}
  .project-card h3,.project-card--warhammer h3 {font-size:44px}
  .project-card__content {padding-top:18px}
  .project-card__line {margin:13px 0 12px}
  .project-card p {max-width:330px;font-size:12px}
  .project-card__action {max-width:400px;width:100%;min-height:48px;margin-top:16px;font-size:11px}
  .universes-section__end {align-items:flex-start}
}
@media (max-width: 620px) {
  .universes-section {padding-top:72px;padding-bottom:60px}
  .universe-heading {gap:17px}
  .universe-heading > p {padding-left:16px;font-size:12px}
  .project-card {padding:18px;min-height:435px;border-radius:9px}
  .project-card__top {gap:6px;flex-wrap:wrap}
  .project-card__id,.project-card__phase {font-size:8px;min-height:25px}
  .project-card h3 {font-size:39px}
  .project-card--warhammer h3 {font-size:clamp(29px,8.4vw,39px)}
  .project-card__art {background:transparent}
  .project-card__art img {width:100%;height:100%;object-fit:cover;object-position:center 52%;opacity:.75}
  .project-card::before {background:linear-gradient(180deg,rgba(4,10,17,.39),rgba(5,11,18,.33) 40%,rgba(3,9,14,.36) 75%,rgba(5,10,16,.85)),linear-gradient(90deg,rgba(5,11,17,.49),rgba(5,11,17,.04))}
  .project-card__content {padding-top:21px}
  .project-card p {max-width:245px;font-size:12px;line-height:1.65}
  .project-card__line {margin:16px 0 13px}
  .project-card__action {max-width:none;min-height:52px;padding:12px 14px}
  .universes-section__end {gap:14px;flex-direction:column}
  .universes-section__notice {font-size:9px}
}
@media (max-width: 360px) {
  .project-card {padding:15px;min-height:445px}
  .project-card h3 {font-size:35px}
  .project-card--warhammer h3 {font-size:29px}
  .project-card__id,.project-card__phase {font-size:7px}
  .project-card__action {font-size:9px}
}

/* Global network notice (v5.4) */
.zc-global-notice{position:relative;z-index:40;border-bottom:1px solid rgba(199,82,92,.42);background:#271820;color:#ffdee1;font:700 12px/1.6 var(--body);padding:11px 0;text-align:center;overflow-wrap:anywhere}
.zc-global-register-notice{padding:13px 17px;border:1px solid #ac4855;background:#281923;color:#ffd4d6;font:700 12px/1.7 var(--body)}

/* v5.8 — site-wide authenticated notifications indicator */
.zc-notification-bell{position:relative;width:36px;min-width:36px;height:36px;border:1px solid rgba(149,171,189,.35);border-radius:5px;display:inline-flex;align-items:center;justify-content:center;color:#bacbda;background:rgba(18,28,39,.8);transition:color .2s,border-color .2s}
.zc-notification-bell:hover{border-color:#a7c1d1;color:#fff}
.zc-notification-bell svg{width:19px;height:19px;stroke-linecap:round;stroke-linejoin:round}
.zc-notification-bell__count{position:absolute;top:-8px;right:-9px;min-width:18px;padding:2px 4px;border-radius:8px;background:#d14152;color:white;text-align:center;font:800 10px/1.25 var(--mono);box-shadow:0 3px 12px #0a0e16}
.zc-notification-bell__count[hidden]{display:none}
@media(max-width:1020px){.zc-notification-bell{width:32px;min-width:32px;height:32px}}
@media(max-width:520px){.zc-notification-bell{width:30px;min-width:30px;height:30px}.zc-notification-bell svg{width:17px;height:17px}}

/* v5.11 — keyboard navigation + reduced-motion support across the existing site */
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid #e78191;outline-offset:3px}
@media (prefers-reduced-motion:reduce){
  html:focus-within{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1!important;transform:none!important}
}
