:root {
  --bg:#111713; --ink:#eceddf; --muted:#c3c9b9; --green:#a5e66b;
  --gold:#ead480; --line:#c9d6ad38; --mono:'Roboto Mono',monospace;
  --display:'Russo One',sans-serif; color-scheme:dark;
  font-size:100%; scroll-behavior:smooth; scroll-padding-top:calc(var(--header-height,6rem) + 1rem);
}
*{box-sizing:border-box}
body{margin:0;isolation:isolate;color:var(--ink);background:var(--bg);font:1.0625rem/1.75 Arial,sans-serif}
body::before{content:'';position:fixed;inset:0;z-index:-1;background:linear-gradient(#10191459,#0d140e70),url('/index/city_aband.jpg') center/cover no-repeat;pointer-events:none}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}
a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:.125rem solid var(--gold);outline-offset:.35rem}
img{display:block;max-width:100%}
p,h1,h2,h3,h4{margin:0}
p{color:var(--muted)}
h1,h2,h3,h4{font-weight:400}
h2,h3{font-family:var(--display);line-height:1.22}
h2{font-size:clamp(2rem,1.5rem + 1.9vw,3.25rem);color:var(--gold);text-shadow:0 .1rem .25rem #000}
h3{font-size:clamp(1.35rem,1.05rem + .8vw,2rem)}
.shell{width:min(81rem,calc(100% - 6rem));margin-inline:auto}
.icon{width:1.2em;height:1.2em;flex-shrink:0;vertical-align:middle}
.eyebrow{font:clamp(.8rem,.7rem + .2vw,.95rem)/1.5 var(--mono);color:var(--green);letter-spacing:.04em}
/* The header keeps the original insignia. All other identity is typography. */
.site-header{position:fixed;z-index:30;top:0;left:50%;transform:translateX(-50%);width:min(94rem,calc(100% - 3rem));min-height:5.6rem;display:flex;align-items:center;gap:1.5rem;padding:.65rem 1rem;background:#10181170;border-bottom:1px solid #afc29155;backdrop-filter:blur(8px);transition:background .2s,border-color .2s,box-shadow .2s}
.site-header.is-scrolled{background:#0d160feb;border-color:#afc29170;box-shadow:0 .5rem 1.5rem #030a0740}
.brand{display:flex;align-items:center;gap:.55rem;flex-shrink:0}
.brand img{width:3.7rem;height:3.7rem;object-fit:contain;border:0;box-shadow:none}
.brand-type{display:flex;flex-direction:column;font-family:var(--display);line-height:.95;text-shadow:0 2px 4px #000}
.brand-type>span{color:var(--gold);font-size:1.5rem;letter-spacing:-.04em}
.brand-type strong{font-size:1rem;color:var(--green);font-weight:400;white-space:nowrap}
.site-header nav{display:flex;justify-content:center;gap:.8rem;flex:1;min-width:0}
.site-header nav a{font:clamp(1rem,.8rem + .35vw,1.17rem)/1.4 var(--display);white-space:nowrap;padding:.6rem .55rem;color:#e2e6d3}
.site-header nav .nav-support{color:var(--gold)}
.header-actions{display:flex;align-items:center;gap:1.5rem}
.language{font:.85rem var(--mono);white-space:nowrap;color:var(--ink)}
.language span{color:#a9b79b}
.small-cta{font:1.1rem var(--display);color:var(--green);padding:.65rem .9rem;white-space:nowrap}
/* Client menu buttons: transparent when idle, original animated grid on hover. */
.button,.small-cta,.site-header nav a,.trailer-link,.text-link{position:relative;isolation:isolate;transition:color .14s,text-shadow .14s}
.button::before,.small-cta::before,.site-header nav a::before,.trailer-link::before,.text-link::before{content:'';position:absolute;inset:0 -.45rem;z-index:-1;background-image:var(--client-frame,url('/assets/ui/login-button/DI_RDBT_00.png'));background-repeat:no-repeat;background-position:center;background-size:100% 100%;opacity:0;pointer-events:none}
.button{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;min-height:3.5rem;padding:.85rem 1.2rem;font:clamp(1.1rem,.9rem + .6vw,1.45rem)/1.4 var(--display);text-align:center;border:0;border-radius:0;background:none;box-shadow:none;clip-path:none}
.menu-label{display:inline-block}
.primary{color:#aff272;text-shadow:0 0 .9rem #7ed24655,0 2px 5px #000}
.secondary{color:var(--gold);text-shadow:0 2px 5px #000}
.actions{display:flex;justify-content:center;align-items:center;gap:2rem;flex-wrap:wrap;margin-top:2rem}
.button:active,.small-cta:active,.site-header nav a:active,.trailer-link:active,.text-link:active{color:#f28b53;text-shadow:0 0 .5rem #c54928;transform:translate(2px,2px)}
.button:focus-visible::before,.small-cta:focus-visible::before,.site-header nav a:focus-visible::before,.trailer-link:focus-visible::before,.text-link:focus-visible::before{opacity:1}
.button:active::before,.small-cta:active::before,.site-header nav a:active::before,.trailer-link:active::before,.text-link:active::before{opacity:1}
@media(hover:hover) and (pointer:fine){
 .button:hover,.small-cta:hover,.site-header nav a:hover,.trailer-link:hover,.text-link:hover{color:#e8f3a4;text-shadow:0 0 .65rem #a2ea6c88}
 .button:hover>.menu-label,.small-cta:hover>.menu-label,.site-header nav a:hover>.menu-label,.trailer-link:hover>.menu-label,.text-link:hover>.menu-label{transform:translate(2px,2px)}
 .button:hover::before,.small-cta:hover::before,.site-header nav a:hover::before,.trailer-link:hover::before,.text-link:hover::before{opacity:1}
}
.hero{position:relative;isolation:isolate;min-height:45rem;height:max(46rem,93svh);max-height:65rem;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#101811;border-bottom:1px solid #b2c59744}
.hero-media{position:absolute;inset:-7rem 0;z-index:-2;transform:translate3d(0,var(--depth-shift,0px),0)}
.hero-media img,.hero-media video{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.78)}
.hero-media video{opacity:0;transition:opacity 1.1s}.hero-media video.playing{opacity:1}
.hero-media::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0a120c35,#0a120c30 35%,#07120be0),linear-gradient(90deg,#0b140b80,transparent 40%,transparent 60%,#0b140b80)}
.hero-content{padding:8rem 0 5rem;text-align:center}
.hero-identity{display:flex;justify-content:center}
.hero h1{display:flex;flex-direction:column;align-items:flex-start;width:fit-content;font-family:var(--display);text-shadow:0 3px 3px #0b160a,0 0 2.5rem #071107b3}
.hero-fonline{font-size:clamp(2.7rem,2rem + 3.3vw,5.8rem);line-height:.9;letter-spacing:-.045em;color:var(--gold)}
.hero-name{font-size:clamp(3.1rem,1.7rem + 6.2vw,7.8rem);line-height:.98;letter-spacing:-.05em;color:#b4ed7b;white-space:nowrap}
.hero-tagline{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-top:2.2rem}
.hero-tagline h2{font-size:clamp(1.5rem,1.1rem + 1vw,2.2rem);color:#e9db9d}
.hero-tagline>span{width:4rem;height:1px;background:linear-gradient(90deg,transparent,#cfcb9455)}
.hero-tagline>span:last-child{transform:rotate(180deg)}
.hero-intro{font-size:clamp(1rem,.9rem + .25vw,1.2rem);max-width:40rem;margin:1.25rem auto 0;color:#e0e6d2;text-shadow:0 2px 4px #000}
.hero-info{display:flex;justify-content:center;gap:1.2rem;align-items:center;flex-wrap:wrap;margin-top:1.5rem;color:#bdc8af;font:.75rem var(--mono)}
.hero-info .status{color:var(--green);display:flex;gap:.6rem;align-items:center}
.status i{display:inline-block;width:.35rem;height:.35rem;background:var(--green);box-shadow:0 0 .5rem var(--green);border-radius:50%}
.hero-info>span+span::before{content:'·';margin-right:1.2rem;color:#79906b}
.trailer-link{display:inline-flex;align-items:center;gap:.75rem;color:#dfd8ae;font:1rem var(--display);margin-top:2.1rem;padding:.6rem 1rem}
.play-icon{display:grid;place-items:center;width:1.25rem;height:1.25rem;border:0;border-radius:0;background:none;box-shadow:none}
.hero-bottom{display:flex;justify-content:space-between;align-items:center;position:absolute;bottom:1.1rem;left:0;right:0;color:#c7cfba;font:.8rem var(--mono)}
.hero-bottom a{display:flex;gap:.7rem;align-items:center}.hero-bottom .icon{transform:rotate(90deg)}
.motion-toggle{font:inherit;color:inherit;padding:.3rem}
/* The city remains visible through the content, as on the original site. */
.news-section{position:relative;padding:3.5rem 0 4rem;background:#1017117a;border-bottom:1px solid var(--line);backdrop-filter:contrast(.9)}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:2rem}
.section-heading h2 svg,.section-heading h1 svg{width:.8em;height:.8em;vertical-align:-.05em;margin-right:.4rem}
.text-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--green);font:1rem var(--display);padding:.45rem .25rem}
.news-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:1.5rem}
.news-story{position:relative;display:flex;flex-direction:column;background:#0a120c66;border:0;border-bottom:1px solid #b2ce8e55;box-shadow:none;overflow:hidden}
.news-image{overflow:hidden;position:relative}.news-image::after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 2rem #0b150b33;pointer-events:none}
.news-image img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .8s cubic-bezier(.2,.65,.2,1),filter .5s}
.news-copy{display:flex;flex-direction:column;flex:1;padding:1.5rem 1.1rem 1.6rem;position:relative}
.news-copy h3{font-size:clamp(1.3rem,1.1rem + .5vw,1.7rem);color:#e3dfb6;transition:color .2s;text-shadow:0 2px 3px #000;margin:.6rem 0 .9rem}
.news-copy p{font-size:1rem}.news-copy .text-link{align-self:start;margin-top:1.3rem}
.news-meta{display:flex;gap:1rem;flex-wrap:wrap;color:#b1c19d;font:.75rem var(--mono)}
.news-empty{padding:2rem 0;min-height:10rem;display:flex;flex-direction:column;justify-content:center;border-block:1px solid #aac28a33;background:none;box-shadow:none}
.news-empty h3{font-size:1.5rem;color:#dce8b7;margin-bottom:.6rem}.news-empty p{font-size:1rem}
.news-links{display:flex;gap:1.6rem;flex-wrap:wrap;margin-top:1.5rem;color:#b4c5a4;font-size:.95rem}
.preview-note{display:block;font:.72rem/1.6 var(--mono);color:#d1c48c;margin-top:auto;padding-top:1.3rem}
@media(hover:hover){.news-story:hover img{transform:scale(1.04);filter:brightness(1.12)}.news-story:hover h3{color:var(--green)}.news-links a:hover,.social a:hover{color:var(--gold)}}
.next-section{padding:5rem 0;background:linear-gradient(#111a1166,#111a1199)}
.section-intro{text-align:center;max-width:58rem;margin:0 auto 3.5rem}
.section-intro h2{margin:1rem 0 1.5rem}.section-intro>p:last-child{max-width:46rem;margin:auto;font-size:1.1rem}
.feature{display:grid;grid-template-columns:1.55fr 1fr;gap:3.5rem;align-items:center;margin-top:4rem}
.feature-image{position:relative;background:#131a12;outline:0;border:1px solid #bad59155;box-shadow:0 1rem 2rem #0004;overflow:hidden}
.feature-image img{width:100%;aspect-ratio:16/10;object-fit:cover}
.feature-copy{max-width:32rem;text-shadow:0 2px 3px #000}
.feature-copy h3{margin:1rem 0 1.2rem;color:#e3e6d0}.feature-copy p{font-size:1.06rem}
.image-controls{position:absolute;top:1rem;left:1rem;display:flex;gap:1.2rem;padding:0;background:none;border:0;box-shadow:none}
.image-controls button{position:relative;display:inline-flex;align-items:center;gap:.45rem;min-height:2.75rem;padding:.35rem .1rem;font:clamp(.85rem,.75rem + .2vw,1rem)/1.4 var(--display);color:#d9ded0;background:none;border:0;box-shadow:none;text-shadow:0 1px 4px #000,0 2px 9px #000;transition:color .2s}
.image-controls button svg{width:1.2em;height:1.2em;filter:drop-shadow(0 1px 3px #000);transition:transform .25s}
.image-controls button::after{content:'';position:absolute;bottom:.15rem;left:0;right:0;height:2px;background:currentColor;transform:scaleX(0);transform-origin:center;transition:transform .2s;box-shadow:0 1px 4px #0008}
.image-controls button[aria-pressed=true]{color:#f3dc8a;background:none;box-shadow:none}
.image-controls button[aria-pressed=true]::after{transform:scaleX(1)}
.image-controls [data-scene=day][aria-pressed=true] svg{transform:rotate(45deg)}
.image-controls [data-scene=night][aria-pressed=true] svg{transform:rotate(-12deg)}
@media(hover:hover){.image-controls button:hover{color:#fff3be}.image-controls button:hover::after{transform:scaleX(1)}}
.weather-feature video{width:100%;display:block;aspect-ratio:16/10;object-fit:cover;background:#11170f}
.weather-caption{display:block;padding:.6rem .9rem;color:#cbd8bc;font:.7rem/1.5 var(--mono)}
.image-caption{position:absolute;bottom:0;left:0;right:0;padding:.65rem 1rem;background:#07110d99;color:#cbd8bc;font:.7rem/1.5 var(--mono)}
.scene-layer{position:absolute;inset:0;z-index:1;opacity:0;transition:opacity .65s ease;pointer-events:none}
.scene-layer.visible{opacity:1}.image-controls,.image-caption{z-index:2}
.reverse{grid-template-columns:1fr 1.55fr;margin-top:5rem}.reverse .feature-image{order:2}
.equipment-panel{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center;margin-top:5rem;padding:0;background:none;border:0;box-shadow:none}
.equipment-panel>img{width:100%;border:1px solid #b2cb8d55}.equipment-panel h3{margin-bottom:1.2rem}
.equipment-panel p{font-size:1.05rem}.sound-note{margin-top:1.8rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.sound-note>.icon{color:var(--gold);width:1.5rem;height:1.5rem}.sound-note h4{font:1.2rem var(--display);margin:.65rem 0;color:#e1e4c9}.sound-note p{font-size:1rem}.sound-note .text-link{margin-top:.8rem}
.world-section{position:relative;isolation:isolate;overflow:clip;padding:5rem 0;background:#0c170d66;border-block:1px solid var(--line)}
.world-art{position:absolute;inset:-6rem 0;z-index:-1;pointer-events:none;background:linear-gradient(#0c170da6,#0c170d75),url('/index/city_aband.jpg') center/cover no-repeat;opacity:.28;transform:translate3d(0,var(--depth-shift,0px),0)}.world-list{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.world-card{position:relative;isolation:isolate;padding:1.6rem 1.25rem;background:#0a120d73;border:0;border-bottom:1px solid #a7c38555;box-shadow:none;overflow:hidden}
.world-card::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#10181088,#0b140cdc),var(--card-art) center/cover;opacity:.75;transition:opacity .4s,scale .7s}
.world-card:nth-child(1){--card-art:url('/index/arts/squad.jpeg')}.world-card:nth-child(2){--card-art:url('/index/arts/pa_warrior.jpeg')}.world-card:nth-child(3){--card-art:url('/index/arts/blueprint2.jpg')}.world-card:nth-child(4){--card-art:url('/index/arts/art1.jpeg')}.world-card:nth-child(5){--card-art:url('/index/arts/tower.jpeg')}.world-card:nth-child(6){--card-art:url('/index/arts/art2.jpeg')}.world-card:nth-child(7){--card-art:url('/index/arts/squad.jpeg')}.world-card:nth-child(8){--card-art:url('/index/arts/blueprint2.jpg')}
.world-card .eyebrow{font-size:.8rem;color:#ccdcaf}.world-card h3{font-size:1.4rem;margin:.9rem 0 1rem;color:var(--gold);text-shadow:0 2px 3px #000}.world-card p{font-size:1rem;color:#d0d8c8;text-shadow:0 2px 3px #000}
@media(hover:hover){.world-card:hover::before{opacity:1;scale:1.03}}
/* Different depths, with stable text, captions and controls. */
.has-parallax .feature-image:has(#lighting-image)>img{transform:translate3d(0,var(--image-shift,0px),0) scale(1.06)}
.has-parallax .world-card::before{inset:-1.3rem;transform:translate3d(0,var(--card-shift,0px),0)}
.has-parallax .hero.is-parallax-visible .hero-media,.has-parallax .world-section.is-parallax-visible .world-art,.has-parallax .feature-image.is-parallax-visible:has(#lighting-image)>img,.has-parallax .world-card.is-parallax-visible::before{will-change:transform}
.transfer-note{font:.8rem/1.8 var(--mono);padding:1rem 0;color:#afc49d;margin-top:1.8rem;max-width:62rem}
.start-section{padding:5rem 0;background:#08140c80;border-bottom:1px solid var(--line)}
.entry-options{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:67rem;margin:auto}
.entry-options>div{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem 1.5rem;background:#14201566;border:1px solid #9fbd783d;box-shadow:none}
.entry-symbol{color:var(--green);font-size:1.8rem}.entry-options h3{margin:1rem 0;color:#e7e2be}.entry-options p{max-width:27rem;font-size:1rem;flex:1;margin-bottom:1.4rem}
.faq{display:grid;grid-template-columns:1fr 2fr;gap:4rem;margin-top:4rem}.faq>h3{color:var(--gold)}
.faq details{border-bottom:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;padding:1.1rem 0;display:flex;justify-content:space-between;gap:1rem;font-size:1.05rem}.faq summary::-webkit-details-marker{display:none}.faq summary span{color:var(--green);font-size:1.3rem}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{padding:0 2rem 1.4rem 0;font-size:1rem}
.community-section{padding:3.5rem 0;background:#16211566}.community-inner{display:grid;grid-template-columns:1.5fr 1fr;gap:4rem;align-items:start}.community-inner h2{font-size:2rem;margin-bottom:1rem}.community-inner .actions{justify-content:start;gap:1.5rem}.support-note{border-left:1px solid var(--line);padding-left:2.5rem}.support-note h3{color:var(--gold);margin-bottom:1rem;font-size:1.5rem}.community-inner p{font-size:1rem}
.footer{padding:2.5rem 0;background:#0c140cc2;border-top:1px solid var(--line)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem}.footer-brand{display:flex;align-items:center;gap:1rem}.footer-brand img{width:3rem;height:3rem;object-fit:contain}.footer-logo{font:1.15rem var(--display);color:var(--green)}.footer p{font-size:.8rem;margin-top:.4rem}.footer-version{font-family:var(--mono)}.social{display:flex;gap:1.2rem;flex-wrap:wrap;max-width:27rem;font-size:.9rem}.archive{color:#b1bea1}
dialog{width:min(74rem,95vw);max-height:94svh;padding:1.1rem;background:#10180ff5;border:1px solid #9db77a88;color:var(--ink)}dialog::backdrop{background:#040a06eb;backdrop-filter:blur(6px)}dialog form{text-align:right;height:2.3rem}.close-video{font-size:1.8rem;line-height:1}.close-video:hover{color:var(--gold)}dialog video{display:block;width:100%;max-height:77svh;background:#000}dialog p{font:.75rem var(--mono);margin-top:.8rem}
.skip{position:fixed;top:-10rem;left:1rem;z-index:100;padding:.8rem 1rem;background:#a6dd6a;color:#142009}.skip:focus{top:1rem}
.js-motion .reveal{opacity:0;transform:translateY(1.8rem);transition:opacity .7s,transform .8s cubic-bezier(.2,.65,.2,1)}.js-motion .reveal.visible{opacity:1;transform:none}
.language-suggestion{position:fixed;bottom:1rem;right:1rem;z-index:40;display:flex;align-items:center;gap:1rem;padding:.8rem 1rem;background:#142014f2;color:#e7dda9;border:1px solid #8d9562;font-size:1rem;max-width:calc(100vw - 2rem)}.language-suggestion button{font-size:1.5rem}
.news-archive{padding-top:calc(var(--header-height,6rem) + 2rem);min-height:75svh}.news-archive .news-section{background:#1017117a}.news-archive .section-heading h1{font-family:var(--display);font-size:clamp(1.8rem,4vw,3rem);color:var(--gold)}
.article{padding-top:9rem;padding-bottom:5rem;max-width:67rem}.article h1{font:clamp(2rem,5vw,4rem)/1.15 var(--display);margin:1.5rem 0}.article-lead{font-size:1.25rem}.article-cover{width:100%;margin-top:2rem}.article-body{max-width:45rem;margin:3rem auto}.article-body section{margin:2rem 0}.article-body h2{font-size:1.8rem;margin-bottom:1rem}
::selection{background:#a7de6b;color:#14200e}
@media(min-width:100rem){.hero-content{padding-top:7rem}}
@media(max-width:75rem){.site-header{gap:1rem}.site-header nav{gap:.3rem}.header-actions{gap:.8rem}.brand-type>span{font-size:1.3rem}.brand-type strong{font-size:.85rem}.world-list{grid-template-columns:repeat(2,1fr)}.feature,.reverse{gap:2rem}}
@media(max-width:60rem){.site-header{flex-wrap:wrap;justify-content:space-between;padding:.5rem .8rem}.site-header nav{order:3;flex-basis:100%;justify-content:start;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#88a56333 transparent;gap:.7rem}.site-header nav a{font-size:1rem;padding:.6rem .35rem}.brand img{width:3rem;height:3rem}.hero-content{padding-top:11rem}.hero{height:auto;min-height:48rem}.news-grid{grid-template-columns:1fr 1fr}.news-story:first-child{grid-column:span 2;display:grid;grid-template-columns:1.2fr 1fr}.news-story:first-child .news-image img{height:100%;aspect-ratio:auto}.feature,.reverse{grid-template-columns:1fr;gap:1.8rem}.reverse .feature-image{order:initial}.feature-copy{max-width:45rem}.equipment-panel{grid-template-columns:1fr;gap:2rem}.faq{grid-template-columns:1fr;gap:1.5rem}.community-inner{grid-template-columns:1fr;gap:2rem}.support-note{border-left:0;border-top:1px solid var(--line);padding:1.5rem 0 0}.footer-inner{align-items:start}.news-archive,.article{padding-top:11rem}}
@media(max-width:40rem){
 .shell{width:calc(100% - 2.25rem)}.site-header{top:0;width:100%;min-height:7rem}.brand-type>span{font-size:1.3rem}.brand-type strong{font-size:.85rem}.header-actions{gap:.6rem}.language{font-size:.75rem}.small-cta{font-size:1rem;padding:.55rem}.hero{min-height:43rem;max-height:none}.hero-content{padding:11rem 0 5.5rem}.hero-fonline{font-size:clamp(2.8rem,11vw,4rem)}.hero-name{font-size:clamp(2rem,8.9vw,3.5rem)}.hero-tagline{margin-top:1.8rem}.hero-tagline h2{font-size:1.5rem}.hero-tagline>span{display:none}.hero-intro{font-size:1.05rem;max-width:24rem;margin-top:1rem}.hero .actions{flex-direction:column;gap:.6rem;margin-top:1.3rem}.hero .button{font-size:1.2rem;min-height:3.3rem;width:100%;max-width:23rem;padding:.8rem .5rem}.hero-info{font-size:.67rem;gap:.65rem;margin-top:1.3rem}.hero-info>span+span::before{margin-right:.65rem}.hero-info>span:last-child{flex-basis:100%}.hero-info>span:last-child::before{display:none}.trailer-link{font-size:.95rem;margin-top:1.5rem}.hero-bottom{font-size:.7rem}.news-section{padding:2.5rem 0}.section-heading{gap:.8rem;align-items:start}.section-heading h2{font-size:1.65rem}.section-heading>.text-link{font-size:.8rem;white-space:nowrap;padding-top:.4rem}.news-grid{grid-template-columns:1fr}.news-story:first-child{grid-column:auto;display:flex}.news-story:first-child .news-image img{aspect-ratio:16/10}.news-copy{padding:1.3rem 1rem}.news-copy h3{font-size:1.5rem}.news-links{font-size:.85rem;gap:1rem}.next-section,.world-section,.start-section{padding:3.5rem 0}.section-intro{margin-bottom:2.5rem}.section-intro h2{font-size:2rem}.section-intro>p:last-child{font-size:1rem}.feature{margin-top:2.5rem}.feature-copy h3{font-size:1.8rem}.feature-copy p{font-size:1rem}.image-controls{top:.6rem;left:.6rem}.image-controls button{font-size:.8rem;padding:.5rem .8rem}.image-caption{font-size:.65rem;padding:.5rem .7rem}.equipment-panel{margin-top:3rem}.world-list{grid-template-columns:1fr;gap:1rem}.world-card{padding:1.4rem}.world-card h3{font-size:1.5rem}.transfer-note{font-size:.75rem}.entry-options{grid-template-columns:1fr;gap:1.5rem}.entry-options>div{padding:1.6rem 1rem}.entry-options h3{font-size:1.6rem}.faq{margin-top:3rem}.faq summary{font-size:1rem}.community-section{padding:3rem 0}.community-inner h2{font-size:1.8rem}.footer-inner{flex-direction:column}.footer-logo{font-size:1rem}.social{font-size:.85rem}
}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-media{transform:none;will-change:auto}.js-motion .reveal{opacity:1;transform:none}.button:active,.small-cta:active,.site-header nav a:active,.trailer-link:active,.text-link:active{transform:none}}
@media(prefers-reduced-motion:reduce){.menu-label{transform:none!important}.world-card::before{scale:1}}
.world-frame+.world-frame{margin-top:1.5rem}
/* A strip of screen-sized frames. The browser owns wheel, touch and keyboard scrolling. */
@media(min-width:60.01rem) and (min-height:44rem) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  html:has(.filmstrip){scroll-snap-type:y proximity;scroll-padding-top:var(--header-height,6rem)}
  .filmstrip{--film-height:calc(100svh - var(--header-height,6rem));padding-top:var(--header-height,6rem)}
  .filmstrip .film-frame{position:relative;min-height:var(--film-height);scroll-snap-align:start;box-shadow:inset 0 1px #c9d6ad12}
  .js-motion .filmstrip .film-frame.reveal{opacity:1;transform:none;transition:none}
  .filmstrip>.hero{height:auto;max-height:none;min-height:var(--film-height)}
  .filmstrip .hero-content{padding:1rem 0 3.7rem}
  .filmstrip .hero-fonline{font-size:clamp(2.7rem,8svh,5.8rem)}
  .filmstrip .hero-name{font-size:clamp(3.1rem,min(1.7rem + 6.2vw,13svh),7.8rem)}
  .filmstrip .hero-tagline{margin-top:clamp(1rem,2.5svh,2rem)}
  .filmstrip .hero-intro{margin-top:.75rem}
  .filmstrip .hero .actions{margin-top:1.25rem}
  .filmstrip .hero-info{margin-top:1rem}
  .filmstrip .trailer-link{margin-top:.75rem}
  .filmstrip>.news-section,.filmstrip>.community-section{display:grid;align-content:center;padding-block:2.5rem}
  .filmstrip .next-section,.filmstrip .world-section,.filmstrip .start-section{padding-block:0}
  .filmstrip .next-section>.shell{width:100%}
  .filmstrip .feature-intro{display:flex;flex-direction:column;justify-content:center;width:min(58rem,calc(100% - 6rem));margin:0 auto;padding:3rem 0}
  .filmstrip .feature-intro h2{font-size:clamp(2rem,4vw,4rem)}
  .filmstrip .feature-intro>p:last-child{margin:0 auto}
  .filmstrip .feature.film-frame,.filmstrip .equipment-panel.film-frame{width:min(81rem,calc(100% - 6rem));margin:0 auto;padding:3rem 0}
  .filmstrip .world-intro{display:grid;align-content:center;padding:3rem 0}
  .filmstrip .world-intro .section-intro{margin-bottom:0}
  .filmstrip .world-frame{display:flex;flex-direction:column;justify-content:center;gap:1.5rem;margin-top:0;padding:3rem 0}
  .filmstrip .world-frame .world-list{width:100%}
  .filmstrip .world-frame .transfer-note{margin-top:0;padding:0}
  .filmstrip .world-frame>.text-link{align-self:start}
  .filmstrip .entry-frame{display:flex;flex-direction:column;justify-content:center;padding:2rem 0}
  .filmstrip .entry-frame .section-intro{margin-bottom:1.5rem}
  .filmstrip .entry-options{width:100%;gap:2rem}
  .filmstrip .entry-options>div{padding:1.4rem 1.5rem}
  .filmstrip .faq.film-frame{margin-top:0;padding:3rem 0;align-content:center;align-items:start}
  .filmstrip>.community-section{min-height:max(20rem,calc(var(--film-height) - var(--footer-height,10rem)))}
  .filmstrip+.footer{scroll-snap-align:end}
}
