:root{
--bg:#0d0d16;--paper:#f2f0ea;--muted:#b8bdc8;--line:#45465d;
--acid:#f0b34e;--orange:#df672c;--gold:#f0b34e;--circuit:#4f4978;--max:1460px}
*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}
body{margin:0;color:var(--paper);font-family:Inter,system-ui,sans-serif;background:var(--bg);overflow-x:hidden}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.shell{width:min(calc(100% - 42px),var(--max));margin:auto}
.site-nav{height:72px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:50}
.brand{font-weight:950;letter-spacing:-.06em;font-size:1.05rem}.brand span{color:var(--acid)}
.nav-links{display:flex;gap:24px;text-transform:uppercase;font-size:.72rem;letter-spacing:.16em;color:#c4c2bc}
.nav-links a:hover{color:white}.kicker,.eyebrow{font-size:.68rem;text-transform:uppercase;letter-spacing:.21em;font-weight:850}
.kicker{color:var(--acid)}.btn{display:inline-flex;align-items:center;padding:13px 18px;border:1px solid var(--line);font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.13em;background:rgba(255,255,255,.03)}
.btn.primary{background:var(--paper);color:#080808;border-color:var(--paper)}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}

.home-hero{min-height:calc(100vh - 72px);position:relative;display:flex;align-items:end;padding:0 0 54px;border-bottom:1px solid var(--line);overflow:hidden}
.breach-field{position:absolute;inset:0;background:
radial-gradient(circle at 72% 34%,rgba(240,179,78,.17),transparent 16%),
radial-gradient(circle at 60% 52%,rgba(223,103,44,.14),transparent 23%),
linear-gradient(115deg,#090b0d 0%,#101417 48%,#050506 100%)}
.breach-field:before{content:"";position:absolute;inset:-25%;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:44px 44px;transform:perspective(700px) rotateX(61deg) translateY(19%);transform-origin:center bottom;mask-image:linear-gradient(transparent 8%,#000 55%)}
.breach-orbit{position:absolute;width:min(58vw,800px);aspect-ratio:1;border:1px solid rgba(240,179,78,.22);border-radius:50%;right:-8vw;top:9vh;box-shadow:0 0 100px rgba(240,179,78,.05)}
.breach-orbit:before,.breach-orbit:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.09);border-radius:50%}.breach-orbit:before{inset:14%}.breach-orbit:after{inset:31%}
.hero-copy{position:relative;z-index:3;width:min(970px,92%)}.hero-copy h1{font-size:clamp(5rem,14vw,13.5rem);line-height:.72;letter-spacing:-.085em;margin:14px 0 32px;text-transform:uppercase}
.hero-copy .lead{font-size:clamp(1rem,1.8vw,1.45rem);line-height:1.6;max-width:690px;color:#bbbdb7}
.hero-index{position:absolute;right:0;bottom:55px;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.18em;font-size:.62rem;color:#747873}
.hero-index b{color:var(--acid)}

.game-strip{padding:0;border-bottom:1px solid var(--line)}.strip-row{display:grid;grid-template-columns:140px 1fr auto;align-items:center;min-height:124px;border-top:1px solid var(--line);gap:28px;transition:.25s}
.strip-row:hover{padding-left:14px;background:rgba(255,255,255,.025)}
.strip-no{font-size:.67rem;color:#777;letter-spacing:.15em}.strip-title{font-size:clamp(2rem,5vw,5.3rem);font-weight:900;letter-spacing:-.065em;text-transform:uppercase}
.strip-meta{text-align:right;color:#9a9b95;font-size:.72rem;line-height:1.5;text-transform:uppercase;letter-spacing:.1em}
.strip-row.featured .strip-title{color:var(--acid)}

.showcase{padding:110px 0}.showcase-head{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:end;margin-bottom:42px}.showcase-head h2{font-size:clamp(3.2rem,8vw,8.5rem);line-height:.82;letter-spacing:-.075em;margin:0}.showcase-head p{color:#aaa;line-height:1.7;max-width:520px}
.editorial-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.editorial-card{position:relative;overflow:hidden;min-height:520px;border:1px solid var(--line);background:#101011}.editorial-card.wide{grid-column:span 7}.editorial-card.tall{grid-column:span 5}.editorial-card.half{grid-column:span 6;min-height:440px}
.card-media{position:absolute;inset:0}.card-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.86) contrast(1.08)}.card-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 34%,rgba(0,0,0,.9) 100%)}
.card-fallback{position:absolute;inset:0}
.drac-card{background:linear-gradient(150deg,#17090e 0%,#08080b 55%,#0d1118 100%)}.drac-card:before{content:"";position:absolute;width:42%;height:82%;left:55%;bottom:-15%;border:2px solid rgba(175,34,56,.25);border-bottom:0;border-radius:50% 50% 0 0}
.card-copy{position:absolute;z-index:2;left:28px;right:28px;bottom:26px}.card-copy h3{font-size:clamp(2.2rem,5vw,5.8rem);letter-spacing:-.065em;margin:4px 0 8px;text-transform:uppercase}.card-copy p{max-width:590px;color:#bbb;line-height:1.55;margin:0}.card-tag{font-size:.64rem;letter-spacing:.17em;text-transform:uppercase;color:var(--acid)}
.editorial-card:hover .card-media img{transform:scale(1.025)}.card-media img{transition:transform .5s ease}

.studio-break{padding:100px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:70px}.studio-break h2{font-size:clamp(2.7rem,6vw,6rem);line-height:.92;letter-spacing:-.065em;margin:0}.studio-break p{color:#aaa;line-height:1.75;font-size:1.04rem}
.page-hero{padding:110px 0 65px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(5rem,13vw,12rem);letter-spacing:-.085em;line-height:.74;margin:15px 0 30px;text-transform:uppercase}.page-hero p{max-width:720px;color:#aaa;line-height:1.65;font-size:1.1rem}
.catalog{padding:70px 0 110px}.catalog-stack{display:flex;flex-direction:column}.catalog-row{display:grid;grid-template-columns:90px minmax(0,1.2fr) minmax(260px,.8fr) auto;gap:28px;align-items:center;border-top:1px solid var(--line);padding:26px 0}.catalog-row:last-child{border-bottom:1px solid var(--line)}.catalog-name{font-size:clamp(2rem,5vw,5rem);font-weight:900;letter-spacing:-.06em;text-transform:uppercase}.catalog-desc{color:#9f9f99;line-height:1.55}.catalog-state{text-transform:uppercase;letter-spacing:.13em;font-size:.62rem;color:var(--acid)}

.game-title-block{padding:100px 0 42px}.game-title-block h1{font-size:clamp(4.7rem,13vw,12rem);letter-spacing:-.08em;line-height:.78;margin:15px 0 24px}.game-title-block p{max-width:760px;color:#aaa;line-height:1.65;font-size:1.12rem}
.game-page{padding:40px 0 110px}.game-page-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.game-pane{border-top:1px solid var(--line);padding:28px 0}.game-pane h2{font-size:2rem}.game-pane p,.game-pane li{color:#aaa;line-height:1.7}
footer{padding:36px 0 55px;border-top:1px solid var(--line);font-size:.75rem;color:#777}.footer-row{display:flex;justify-content:space-between;gap:20px}
@media(max-width:900px){.shell{width:min(calc(100% - 24px),var(--max))}.showcase-head,.studio-break,.game-page-grid{grid-template-columns:1fr}.editorial-card.wide,.editorial-card.tall,.editorial-card.half{grid-column:span 12;min-height:420px}.strip-row{grid-template-columns:52px 1fr}.strip-meta{display:none}.catalog-row{grid-template-columns:45px 1fr}.catalog-desc,.catalog-state{display:none}.hero-index{display:none}}
@media(max-width:620px){.nav-links a:nth-child(2),.nav-links a:nth-child(3){display:none}.home-hero{min-height:82vh}.hero-copy h1{font-size:20vw}.showcase{padding:75px 0}.studio-break{padding:75px 0}}
/* --- Title pages: individual game identity --- */
.title-page{position:relative}
.title-hero{position:relative;min-height:78vh;display:flex;align-items:end;overflow:hidden;border-bottom:1px solid var(--line);padding:0 0 52px}
.title-hero .title-copy{position:relative;z-index:5;width:min(900px,94%)}
.title-hero h1{font-size:clamp(5rem,14vw,13rem);line-height:.75;letter-spacing:-.085em;margin:12px 0 24px;text-transform:uppercase}
.title-hero p{max-width:710px;color:#c2c0ba;line-height:1.65;font-size:1.08rem}
.title-bg{position:absolute;inset:0}
.title-bg img{width:100%;height:100%;object-fit:cover}
.title-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,3,4,.96) 0%,rgba(3,3,4,.72) 38%,rgba(3,3,4,.08) 76%),linear-gradient(0deg,rgba(3,3,4,.76),transparent 45%)}
.title-info{padding:75px 0 105px}
.title-info-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}
.fact-list{display:grid;gap:0;border-top:1px solid var(--line)}
.fact{display:flex;justify-content:space-between;gap:30px;padding:16px 0;border-bottom:1px solid var(--line);font-size:.76rem;text-transform:uppercase;letter-spacing:.1em}
.fact span:first-child{color:#6f706d}.fact span:last-child{text-align:right}
.title-story h2{font-size:clamp(2.8rem,6vw,6rem);line-height:.92;letter-spacing:-.065em;margin:0 0 24px}
.title-story p{color:#aaa;line-height:1.75;max-width:760px}
.feature-list{margin-top:38px;display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.feature-list div{padding:16px 0;border-top:1px solid var(--line);color:#bab9b3}
.media-band{margin-top:70px;display:grid;grid-template-columns:1.35fr .65fr;gap:14px}.media-shot{min-height:390px;overflow:hidden;position:relative;background:#101010;border:1px solid var(--line)}.media-shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.media-shot.portrait{min-height:390px}
.breach-title .title-bg{background:radial-gradient(circle at 72% 34%,rgba(240,179,78,.2),transparent 14%),radial-gradient(circle at 62% 50%,rgba(223,103,44,.16),transparent 24%),linear-gradient(125deg,#10151a,#050506 64%)}
.breach-title .title-bg:before{content:"";position:absolute;right:4%;top:6%;width:min(61vw,820px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(240,179,78,.25);box-shadow:0 0 0 95px rgba(255,255,255,.018),0 0 0 190px rgba(255,255,255,.012)}
.breach-title .title-bg:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(transparent,#000 80%)}
.breach-title h1{color:#f3f2eb}.breach-title .kicker{color:var(--acid)}
.nova-title .title-shade{background:linear-gradient(90deg,rgba(7,5,5,.95),rgba(7,5,5,.45) 52%,rgba(7,5,5,.02)),linear-gradient(0deg,rgba(7,5,5,.75),transparent 60%)}
.nova-title .kicker{color:#f1b64c}
.nullborn-title .title-shade{background:linear-gradient(90deg,rgba(6,8,6,.96),rgba(6,8,6,.66) 47%,rgba(6,8,6,.1)),linear-gradient(0deg,rgba(6,8,6,.74),transparent 52%)}.nullborn-title .kicker{color:#abb59a}
.ashveil-title .title-shade{background:linear-gradient(90deg,rgba(8,5,5,.97),rgba(8,5,5,.55) 47%,rgba(8,5,5,.05)),linear-gradient(0deg,rgba(8,5,5,.78),transparent 58%)}.ashveil-title .kicker{color:#c96d50}
.ashveil-portrait{position:absolute;right:5%;bottom:-7%;height:82%;width:43%;object-fit:contain!important;object-position:bottom center!important;filter:drop-shadow(0 20px 50px rgba(0,0,0,.7))}
.drac-title .title-bg{background:linear-gradient(145deg,#190910,#060608 60%)}.drac-title .kicker{color:#c65064}
.drac-tower{position:absolute;right:2%;top:5%;height:92%;max-width:48%;object-fit:contain!important;object-position:right bottom!important;opacity:.8;filter:contrast(1.15) brightness(.72)}
.drac-parapet{position:absolute;right:0;left:40%;bottom:0;width:60%!important;height:auto!important;object-fit:cover!important;opacity:.92}
.game-cta{padding:70px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:35px;align-items:center}.game-cta h2{font-size:clamp(2.3rem,5vw,5rem);letter-spacing:-.06em;margin:0}.game-cta p{color:#999;max-width:520px;line-height:1.6}
@media(max-width:900px){.title-info-grid{grid-template-columns:1fr}.media-band{grid-template-columns:1fr}.feature-list{grid-template-columns:1fr}.ashveil-portrait{right:-14%;width:68%;opacity:.7}.drac-tower{right:-16%;max-width:72%}.drac-parapet{left:20%;width:80%!important}.game-cta{align-items:flex-start;flex-direction:column}}

/* --- Release polish / accessibility / editorial utility --- */
:focus-visible{outline:2px solid var(--acid);outline-offset:4px}
.skip-link{position:fixed;left:16px;top:12px;z-index:1000;padding:10px 14px;background:var(--paper);color:var(--bg);transform:translateY(-150%);transition:transform .2s}
.skip-link:focus{transform:translateY(0)}
.footer-links{display:flex;gap:18px;flex-wrap:wrap}
.footer-links a:hover{color:var(--paper)}
.news-list{padding:20px 0 110px}.news-item{display:grid;grid-template-columns:150px 1fr auto;gap:32px;align-items:start;border-top:1px solid var(--line);padding:30px 0}.news-item:last-child{border-bottom:1px solid var(--line)}.news-date{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:#9a9a9a}.news-tag{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--acid)}.news-item h2{font-size:clamp(1.8rem,4vw,4rem);letter-spacing:-.05em;margin:5px 0 10px}.news-item p{color:#999;line-height:1.6;max-width:760px;margin:0}.news-arrow{font-size:1.4rem;color:#888}
.article{max-width:930px;padding:90px 0 120px}.article-back{display:inline-block;margin-bottom:70px;color:#898984;font-size:.72rem;text-transform:uppercase;letter-spacing:.14em}.article h1{font-size:clamp(3.5rem,9vw,8.5rem);line-height:.86;letter-spacing:-.075em;margin:16px 0 30px}.article-lead{font-size:1.3rem;line-height:1.65;color:#c1c0bb;max-width:760px}.article-body{max-width:760px;margin-top:55px}.article-body p{color:#aaa;line-height:1.8;font-size:1.02rem}.article-body h2{font-size:2.1rem;letter-spacing:-.04em;margin:52px 0 14px}
.press-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:70px 0}.press-block{border-top:1px solid var(--line);padding-top:24px}.press-block h2,.press-games>h2,.press-assets h2{font-size:clamp(2rem,4vw,4rem);letter-spacing:-.05em;margin:0 0 24px}.press-block p{color:#aaa;line-height:1.75}.press-facts{margin:0}.press-facts div{display:grid;grid-template-columns:150px 1fr;border-top:1px solid var(--line);padding:14px 0}.press-facts div:last-child{border-bottom:1px solid var(--line)}.press-facts dt{color:#777;text-transform:uppercase;letter-spacing:.12em;font-size:.66rem}.press-facts dd{margin:0}.press-games{padding:40px 0 90px}.press-game{display:grid;grid-template-columns:minmax(180px,.55fr) 1fr;gap:30px;border-top:1px solid var(--line);padding:18px 0}.press-game:last-child{border-bottom:1px solid var(--line)}.press-game strong{font-size:1.15rem}.press-game span{color:#999}.press-assets{padding:80px 0 110px;border-top:1px solid var(--line)}.asset-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.asset-card{border:1px solid var(--line);background:#0d0d0e;overflow:hidden}.asset-card img{width:100%;aspect-ratio:16/9;object-fit:cover}.asset-card span{display:block;padding:14px 16px;color:#aaa;font-size:.75rem;text-transform:uppercase;letter-spacing:.11em}
.error-page{min-height:72vh;display:flex;flex-direction:column;justify-content:center}.error-page h1{font-size:clamp(3.5rem,10vw,9rem);line-height:.82;letter-spacing:-.075em;margin:16px 0 24px}.error-page p{color:#aaa;font-size:1.1rem}
.release-note{display:inline-flex;align-items:center;gap:8px;margin-top:18px;color:#8d8e89;font-size:.72rem;text-transform:uppercase;letter-spacing:.11em}.release-note:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--acid)}
@media(max-width:900px){.news-item{grid-template-columns:1fr}.news-date{order:-1}.news-arrow{display:none}.press-grid{grid-template-columns:1fr}.asset-grid{grid-template-columns:1fr}.press-game{grid-template-columns:1fr}.press-facts div{grid-template-columns:120px 1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
