:root{--ink:#17110f;--ink2:#201512;--ink3:#2b1b17;--paper:#eadfc9;--paper2:#d9c8a9;--white:#fff6e9;--muted:#b9a992;--red:#9e3e3c;--brass:#c59a5b;--brass-light:#e1b779;--violet:#9d72e6;--violet-glow:rgba(157,114,230,.22);--violet-line:rgba(157,114,230,.35);--line:rgba(224,194,151,.2);--line-bright:rgba(224,194,151,.45);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--white);font-family:Georgia,'Times New Roman',serif;font-size:18px;line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}a:focus-visible{outline:3px solid var(--brass);outline-offset:4px}button{font:inherit}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-weight:400;line-height:1.05}h1{font-size:clamp(3.8rem,8.5vw,8.8rem);letter-spacing:-.065em}h2{font-size:clamp(2.4rem,5.4vw,5.2rem);letter-spacing:-.055em}h3{font-size:clamp(1.5rem,2.4vw,2.3rem)}em{color:var(--brass);font-weight:400}.eyebrow,.site-nav,.button,.journal-label,.cast-copy span,.route-line,.link-list small,.site-footer,.shot figcaption,.post-date,.stat-label,.stat-number,.system-number,.chapter-chip,.faction-tag{font-family:Arial,Helvetica,sans-serif}.eyebrow{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:var(--brass)}.skip-link{position:absolute;z-index:100;left:1rem;top:-5rem;background:var(--paper);color:var(--ink);padding:.6rem 1rem}.skip-link:focus{top:1rem}.site-header{position:relative;z-index:10;background:#130e0c;border-bottom:1px solid var(--line)}.site-header__inner{min-height:78px;max-width:1500px;margin:auto;padding:0 clamp(20px,4.5vw,72px);display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{font-size:1.3rem;white-space:nowrap;letter-spacing:-.03em}.wordmark i{display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;margin-right:9px;border:1px solid var(--brass);color:var(--brass);font-size:.75rem;font-style:normal;vertical-align:middle}.site-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:clamp(15px,2vw,34px);font-size:.78rem;text-transform:uppercase;letter-spacing:.15em}.site-nav a{color:#dbd1c3}.site-nav a[aria-current=page],.site-nav a:hover{color:var(--brass)}.site-nav .age{color:var(--muted);border-left:1px solid var(--line);padding-left:20px}
.hero{min-height:690px;position:relative;overflow:hidden;display:grid;grid-template-columns:46% 54%;background:linear-gradient(90deg,rgba(14,9,9,.35),rgba(18,10,12,.97) 54%),url('img_gate.webp') center/cover no-repeat}.hero:after{content:'';position:absolute;inset:auto 0 0;height:90px;background:linear-gradient(transparent,var(--ink));pointer-events:none}.hero__art{position:relative;min-height:690px}.hero__art img{position:absolute;height:112%;width:auto;max-width:none;bottom:-12%;left:8%;filter:drop-shadow(0 26px 32px rgba(0,0,0,.6))}.hero__content{z-index:1;align-self:center;max-width:760px;padding:90px 7vw 100px 3vw}.hero h1{margin:24px 0 28px}.hero__line{color:var(--paper);font-size:clamp(1.35rem,2.2vw,2.25rem);font-style:italic;max-width:620px;line-height:1.25}.hero__intro{max-width:580px;margin-top:22px;color:#ded0c1;font-size:1.05rem;line-height:1.6}.hero__aside{margin-top:28px;color:var(--muted);font:700 .7rem Arial,Helvetica,sans-serif;letter-spacing:.2em;text-transform:uppercase}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:51px;padding:13px 22px;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700;transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}.button:hover{transform:translateY(-2px)}.button--gold{background:var(--brass);color:#1b100d}.button--gold:hover{background:var(--brass-light);box-shadow:0 6px 18px rgba(197,154,91,.35)}.button--plain{border:1px solid var(--line);color:var(--white)}.button--plain:hover,.button--outline:hover{background:rgba(255,255,255,.08);border-color:var(--brass)}.button--outline{border:1px solid var(--brass);color:var(--brass)}
.stats-band{background:#120d0b;border-bottom:1px solid var(--line);padding:clamp(28px,4vw,42px) clamp(22px,5vw,76px)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;max-width:1450px;margin:auto}.stat-card{border-left:2px solid var(--brass);padding:8px 0 8px 18px;display:flex;flex-direction:column;gap:4px}.stat-number{color:var(--brass);font-size:clamp(1.6rem,2.8vw,2.4rem);font-weight:700;line-height:1.1}.stat-label{color:var(--muted);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.paper-section,.feature-section,.journal-section,.cast-section,.route-section,.gallery-section,.links-section,.systems-section,.factions-section{padding:clamp(70px,9vw,130px) clamp(22px,5vw,76px)}.paper-section{background:var(--paper);color:var(--ink);position:relative}.paper-section:before{content:'';position:absolute;left:clamp(22px,5vw,76px);top:0;width:80px;height:7px;background:var(--red)}.paper-section .eyebrow,.route-section .eyebrow{color:#915d39}.section-head{display:flex;align-items:start;gap:20px;flex-direction:column;margin-bottom:48px}.section-head h2{max-width:940px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,100px);max-width:1240px}.intro-grid .large-copy{font-size:clamp(1.8rem,3.4vw,3.4rem);line-height:1.25;color:#5b3029}.intro-grid>div{max-width:520px}.intro-grid p+p{margin-top:16px}.text-link{display:inline-flex;align-items:center;gap:20px;margin-top:24px;padding-bottom:5px;border-bottom:1px solid currentColor;color:#b97262;font:700 .75rem Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.12em;transition:color .2s ease,border-color .2s ease}.text-link:hover{color:var(--brass);border-color:var(--brass)}.paper-section .text-link,.route-section .text-link{color:#7b2d2a}
.systems-section{background:var(--ink2)}.systems-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1450px;margin:auto}.system-card{background:var(--ink3);border:1px solid var(--line);padding:clamp(28px,3.5vw,44px);display:flex;flex-direction:column;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.system-card:hover{transform:translateY(-4px);border-color:var(--brass);box-shadow:0 14px 30px rgba(0,0,0,.5),0 0 20px var(--violet-glow)}.system-icon{font-size:2rem;color:var(--brass);margin-bottom:16px}.system-number{color:var(--violet);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700}.system-card h3{margin:10px 0 16px;font-size:clamp(1.4rem,2.1vw,1.9rem)}.system-card p{color:var(--paper2);font-size:.96rem;line-height:1.6}
.feature-section{background:#1b1210}.feature-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1450px;margin:auto}.feature-gallery .shot--featured{grid-column:span 2}.feature-footer{max-width:1450px;margin:32px auto 0;text-align:right}
.shot{background:#100c0b;border:1px solid var(--line);overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.shot:hover{border-color:var(--line-bright);box-shadow:0 10px 24px rgba(0,0,0,.4)}.shot img{width:100%;height:auto;display:block}.shot figcaption{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:15px 20px;color:var(--paper2);font-size:.78rem;letter-spacing:.05em;border-top:1px solid var(--line);background:#140e0c}.chapter-chip{display:inline-block;padding:3px 9px;background:rgba(197,154,91,.15);border:1px solid var(--brass);color:var(--brass);font-size:.65rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;border-radius:2px}
.gate-band{min-height:430px;display:flex;align-items:end;padding:65px clamp(22px,5vw,76px);background:linear-gradient(90deg,rgba(17,10,20,.94),rgba(17,10,20,.3)),url('img_gate.webp') center/cover no-repeat}.gate-band>div{max-width:760px}.gate-band h2{font-size:clamp(2.7rem,5vw,5rem);margin:15px 0}.gate-band p:last-child{color:var(--paper);font-size:1.1rem}
.factions-section{background:var(--ink2)}.factions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1450px;margin:auto}.faction-card{background:var(--ink3);border:1px solid var(--line);padding:32px 28px}.faction-tag{color:var(--brass);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700}.faction-card h3{margin:12px 0 16px;font-size:1.6rem}.faction-card p{color:var(--paper2);font-size:.96rem;line-height:1.6}
.cast-section{background:#231714}.cast-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px;max-width:1450px;margin:auto}.cast-card{min-width:0;background:var(--ink3);border:1px solid var(--line);display:flex;flex-direction:column}.cast-art{height:390px;overflow:hidden;background:radial-gradient(circle at 50% 25%,#6a3a2b,#1a0f0d 70%);display:flex;align-items:flex-start;justify-content:center}.cast-art img{height:145%;max-width:none;width:auto;object-fit:contain;margin-top:-15px}.cast-copy{padding:24px 26px 32px;display:flex;flex-direction:column;flex-grow:1}.cast-copy span{font-size:.67rem;text-transform:uppercase;letter-spacing:.17em;color:var(--brass);font-weight:700}.cast-copy h3{margin:10px 0 14px;font-size:1.5rem}.cast-copy p{color:var(--paper2);font-size:.94rem;line-height:1.55}
.route-section{background:var(--paper);color:var(--ink)}.route-section>p{max-width:850px;font-size:1.25rem;line-height:1.6}.route-line{margin-top:45px;display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:#af9c7e;border:1px solid #af9c7e}.route-line span{padding:18px 10px;background:var(--paper);color:#5c2a26;text-transform:uppercase;font-size:.73rem;letter-spacing:.1em;font-weight:700;text-align:center}
.story-end{padding:110px 5vw;background:linear-gradient(90deg,rgba(17,10,20,.94),rgba(17,10,20,.45)),url('img_gate.webp') center/cover;text-align:center}.story-end blockquote{max-width:960px;margin:20px auto 36px;font-size:clamp(2.4rem,5vw,4.8rem);line-height:1.15;color:var(--white)}
.gallery-section{background:#1a110f}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1450px;margin:auto}.gallery-grid .shot--wide{grid-column:span 2}
.journal-section{background:var(--ink2)}.journal-grid{display:grid;gap:22px;max-width:1450px;margin:auto}.journal-grid--triple{grid-template-columns:repeat(3,minmax(0,1fr))}.journal-card,.plan-card{border:1px solid var(--line);padding:clamp(26px,3.5vw,46px);background:rgba(255,255,255,.025);display:flex;flex-direction:column}.journal-card h3{margin:16px 0 18px;font-size:1.7rem}.journal-card>p:not(.journal-label){color:#d8c9b7;font-size:1.02rem;line-height:1.6;flex-grow:1}.plan-list{padding:0;margin:20px 0 16px;list-style:none;flex-grow:1}.plan-list li{position:relative;padding:8px 0 8px 28px;border-top:1px solid var(--line);font-size:.92rem;color:var(--paper);line-height:1.45}.plan-list li:before{content:'□';position:absolute;left:0;color:var(--brass);font-size:1rem}.plan-list li.done{color:var(--paper2)}.plan-list li.done:before{content:'✓';color:var(--brass)}.plan-list--done li{color:var(--paper2)}.plan-list--done li:before{content:'✓';color:var(--brass)}
.follow-band{padding:65px clamp(22px,5vw,76px);background:#381a17;display:flex;justify-content:space-between;align-items:center;gap:35px;border-top:1px solid var(--line)}.follow-band h2{font-size:clamp(2.6rem,4vw,4rem);margin-top:12px}.follow-band .actions{margin:0}
.site-footer{background:#100b0a;border-top:1px solid var(--line);color:var(--muted);padding:45px clamp(22px,5vw,76px);font-size:.76rem;letter-spacing:.03em}.site-footer__inner{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;max-width:1500px;margin:auto}.site-footer a:hover{color:var(--brass)}.site-footer__links{display:flex;flex-wrap:wrap;gap:22px}
.page-intro{padding:clamp(90px,12vw,165px) clamp(22px,5vw,76px) clamp(70px,9vw,125px);background:radial-gradient(circle at 78% 20%,#542a24 0,#1b1210 50%,#130d0c 100%);border-bottom:1px solid var(--line)}.page-intro h1{max-width:1150px;margin:24px 0 32px;font-size:clamp(3.6rem,8vw,8.4rem)}.page-intro>p:last-child{max-width:760px;color:var(--paper2);font-size:clamp(1.1rem,1.7vw,1.35rem);line-height:1.6}
.links-section{background:#231714}.links-section:nth-of-type(3){background:#19110f}.link-list{border-top:1px solid var(--line)}.link-list a{display:grid;grid-template-columns:1fr minmax(150px,30%) 25px;align-items:center;gap:20px;padding:22px 8px;border-bottom:1px solid var(--line);transition:background .2s ease}.link-list a:hover{background:#351f1b}.link-list span{font-size:clamp(1.25rem,2vw,1.9rem)}.link-list small{color:var(--muted);font-size:.78rem}.link-list b{color:var(--brass);font-weight:400}
.devlog-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:1450px;margin:auto}.devlog-list article{border:1px solid var(--line);padding:32px;background:rgba(255,255,255,.02)}.devlog-list h2{font-size:2.4rem;margin:15px 0}.devlog-list p{color:var(--paper2);line-height:1.6}.post-wrap{max-width:860px;margin:auto;padding:90px 24px 130px}.post-back{font:700 .75rem Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.14em;color:var(--brass)}.post-date{color:var(--brass);font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;margin:50px 0 16px}.post-wrap h1{font-size:clamp(3.4rem,7vw,5.8rem);margin-bottom:40px}.post-body{color:var(--paper);font-size:1.15rem;line-height:1.6}.post-body p{margin:0 0 22px}.post-body h2{font-size:2rem;margin:50px 0 20px;padding-top:24px;border-top:1px solid var(--line)}.post-body ul{padding-left:25px;margin:0 0 24px}.post-body li{margin:8px 0;line-height:1.5}.post-body li.done{color:var(--paper2)}.post-body li.done::marker{content:'✓  '}.post-body li.todo::marker{content:'□  '}
@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.systems-grid,.factions-grid,.journal-grid--triple{grid-template-columns:1fr 1fr}.journal-card:first-child{grid-column:span 2}.route-line{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.hero{grid-template-columns:42% 58%;min-height:610px}.hero__art{min-height:610px}.hero__art img{height:102%;bottom:-10%;left:-10%}.hero__content{padding:70px 5vw 80px 0}.cast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-gallery{grid-template-columns:1fr}.feature-gallery .shot--featured{grid-column:auto}.follow-band{align-items:flex-start;flex-direction:column}.site-header__inner{align-items:flex-start;flex-direction:column;padding-top:18px;padding-bottom:18px}.site-nav{justify-content:flex-start}}
@media(max-width:650px){body{font-size:16px}.site-header__inner{min-height:auto}.site-nav{gap:12px 16px;font-size:.67rem}.site-nav .age{padding-left:10px}.hero{display:flex;flex-direction:column;min-height:0;background:linear-gradient(180deg,rgba(17,9,11,.15),rgba(17,9,11,.98) 78%),url('img_gate.webp') center/cover}.hero__art{height:340px;min-height:0;overflow:hidden}.hero__art img{height:600px;left:50%;bottom:auto;top:0;transform:translateX(-50%)}.hero__content{padding:15px 22px 65px}.hero h1{font-size:clamp(4rem,16vw,5.8rem);margin:12px 0}.hero__line{font-size:1.45rem}.hero__intro{margin-top:16px}.actions{gap:10px}.button{width:100%;justify-content:space-between}.stats-grid,.systems-grid,.factions-grid,.intro-grid,.journal-grid--triple,.cast-grid,.gallery-grid,.devlog-list{grid-template-columns:1fr}.journal-card:first-child,.gallery-grid .shot--wide{grid-column:auto}.cast-art{height:355px}.route-line{grid-template-columns:repeat(2,1fr)}.gate-band{min-height:360px}.follow-band{padding:65px 22px}.follow-band .actions{width:100%}.page-intro{padding:85px 22px 75px}.page-intro h1{font-size:clamp(3.4rem,14vw,5.5rem)}.link-list a{grid-template-columns:1fr 25px;gap:8px}.link-list small{grid-column:1;grid-row:2}.link-list b{grid-column:2;grid-row:1 / span 2}.post-wrap{padding-top:65px}.site-footer__inner{flex-direction:column}}
@media(min-width:901px){.hero__art img{height:114%;top:0;bottom:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.shot,.system-card{transition:none}}
