:root{
  --bg:#05060b;--panel:#0b0f19;--panel2:#101727;--text:#eef2ff;--muted:#aab4ca;--line:rgba(190,220,255,.16);--cyan:#80f1ff;--violet:#a58bff;--pink:#ff5e8c;--glass:rgba(10,14,24,.74);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 74% 2%,#1b1a35 0,#070913 35%,#020309 100%);color:var(--text);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;line-height:1.85;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.noise,.scan{position:fixed;inset:0;pointer-events:none}.noise{z-index:60;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.scan{z-index:61;opacity:.16;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.06) 0 1px,transparent 1px 5px);mix-blend-mode:overlay}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:16px clamp(16px,4vw,56px);background:linear-gradient(to bottom,rgba(2,3,9,.88),rgba(2,3,9,.42));border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(14px)}.brand{display:flex;align-items:baseline;gap:10px;letter-spacing:.08em}.brand strong{font:30px/1 Georgia,serif;text-shadow:0 0 18px var(--violet)}.brand span{font:12px/1 "Courier New",monospace;color:var(--cyan);text-transform:uppercase}.nav{display:flex;gap:20px;align-items:center;font:12px/1 "Courier New",monospace;text-transform:uppercase;letter-spacing:.14em;color:#d7e3f7}.nav a{opacity:.78}.nav a:hover,.nav-pill{opacity:1;color:var(--cyan)}.nav-pill{border:1px solid rgba(128,241,255,.35);padding:8px 11px;border-radius:999px;background:rgba(128,241,255,.06)}.nav-toggle{display:none;background:rgba(255,255,255,.04);border:1px solid var(--line);color:var(--text);padding:8px 10px;border-radius:8px}
.hero{min-height:100svh;position:relative;display:grid;place-items:center;overflow:hidden;padding:96px 18px 48px}.hero-bg{position:absolute;inset:0}.hero-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,3,9,.86),rgba(2,3,9,.43),rgba(2,3,9,.82)),radial-gradient(circle at 50% 45%,transparent 0,rgba(0,0,0,.70) 78%)}.hero-bg img{width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(1.05);transform:scale(1.02)}.hero-panel{position:relative;width:min(1040px,94vw);padding:clamp(24px,5vw,56px);border:1px solid rgba(255,255,255,.13);background:linear-gradient(135deg,rgba(6,9,18,.86),rgba(7,11,22,.62));box-shadow:0 40px 140px rgba(0,0,0,.62);backdrop-filter:blur(8px)}.pre-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:26px}.notice-link{display:grid;gap:2px;padding:13px 15px;border:1px solid rgba(128,241,255,.24);background:rgba(128,241,255,.055);border-radius:14px}.notice-link small,.kicker{font:12px/1.4 "Courier New",monospace;letter-spacing:.20em;color:var(--cyan);text-transform:uppercase}.notice-link b{font-size:18px}.notice-link span{font-size:13px;color:var(--muted)}h1,h2,h3,p{margin-top:0}.hero h1{font:clamp(48px,9vw,116px)/.95 Georgia,"Times New Roman",serif;font-weight:400;margin:16px 0;text-shadow:0 0 22px rgba(165,139,255,.65),0 0 48px rgba(128,241,255,.20)}.tagline{font-size:clamp(22px,3vw,38px);letter-spacing:.10em;margin:0 0 16px}.lead{max-width:760px;color:#d6deef;font-size:17px}.hero-actions,.notice-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid var(--line);background:rgba(255,255,255,.05);border-radius:999px;font-weight:700;letter-spacing:.04em}.btn:hover{border-color:rgba(128,241,255,.65);box-shadow:0 0 22px rgba(128,241,255,.12)}.btn.primary{background:linear-gradient(135deg,rgba(128,241,255,.20),rgba(165,139,255,.20));border-color:rgba(128,241,255,.55)}.btn.muted{color:#cbd5e7}.btn.big{margin-top:24px}.status-card{position:absolute;right:clamp(16px,4vw,56px);bottom:32px;display:flex;gap:8px;flex-direction:column;font:11px/1 "Courier New",monospace;color:#c4fff6}.status-card span{padding:8px 10px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.36);border-radius:8px}.glitch{position:relative}.glitch:before,.glitch:after{content:attr(data-text);position:absolute;inset:0;pointer-events:none;opacity:.35}.glitch:before{color:#68e8ff;transform:translate(2px,-1px);clip-path:inset(0 0 58% 0)}.glitch:after{color:#ff5e8c;transform:translate(-2px,1px);clip-path:inset(58% 0 0 0)}
.quick-links{width:min(1180px,94vw);margin:-28px auto 0;position:relative;z-index:5;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.quick-links a{padding:18px;border:1px solid var(--line);background:rgba(10,14,24,.86);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.25)}.quick-links small{display:block;font:11px "Courier New",monospace;color:var(--cyan);text-transform:uppercase;letter-spacing:.16em}.quick-links b{display:block;font-size:20px;margin:6px 0}.quick-links span{font-size:13px;color:var(--muted)}.section{width:min(1120px,92vw);margin:0 auto;padding:92px 0}.section-head{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr);gap:34px;align-items:end;margin-bottom:28px}.section-head h2{font-size:clamp(30px,4.4vw,56px);line-height:1.18;margin:6px 0 0}.section-head p:last-child{color:var(--muted)}.video-shell{position:relative;overflow:hidden;border:1px solid rgba(128,241,255,.25);border-radius:22px;background:#000;box-shadow:0 30px 90px rgba(0,0,0,.45)}.video-shell:before{content:"TEASER_PV / SIGNAL_FOUND";display:block;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.1);font:12px "Courier New",monospace;color:#b8fff6;letter-spacing:.14em}.video-shell iframe{display:block;width:100%;aspect-ratio:16/9;border:0}.about-grid{display:grid;grid-template-columns:.8fr 1.1fr;gap:36px}.about-grid .section-head{display:block;margin:0}.text-block{color:#d8deec;font-size:17px}.text-block h2{font-size:clamp(30px,4vw,52px);line-height:1.2}.fact-list{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.fact-list div{background:rgba(10,14,24,.92);padding:20px}.fact-list small,.support-stats small{display:block;font:11px "Courier New",monospace;color:var(--cyan);text-transform:uppercase;letter-spacing:.14em}.fact-list b{display:block;margin-top:7px}.story-layout{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.terminal{border:1px solid rgba(128,241,255,.26);background:rgba(1,3,8,.82);border-radius:18px;box-shadow:inset 0 0 48px rgba(128,241,255,.06),0 24px 80px rgba(0,0,0,.35)}.terminal pre{margin:0;padding:28px;overflow:auto;color:#b8ffcd;text-shadow:0 0 10px rgba(184,255,205,.45);font:14px/1.7 "Courier New",monospace}.feature-strip{display:grid;grid-template-columns:1.25fr .85fr .85fr;gap:12px;margin-bottom:14px}.feature-strip img{width:100%;height:300px;object-fit:cover;border:1px solid var(--line);border-radius:18px;filter:saturate(.78)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#000;min-height:190px}.gallery-card:nth-child(1),.gallery-card:nth-child(2){grid-column:span 2;min-height:280px}.gallery-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.72);transition:.35s}.gallery-card:hover img{transform:scale(1.04);filter:saturate(.95)}.gallery-card span,.thumb-grid span{position:absolute;left:10px;bottom:8px;font:11px "Courier New",monospace;color:#cafff8;background:rgba(0,0,0,.42);padding:4px 7px;border-radius:999px}.all-gallery{margin-top:18px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.035);overflow:hidden}.all-gallery summary{cursor:pointer;padding:16px 18px;font-weight:700;color:#eaf7ff}.thumb-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;padding:0 14px 14px}.thumb-grid a{position:relative;overflow:hidden;border-radius:10px;background:#000}.thumb-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;filter:saturate(.7)}.themes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.theme-card{padding:28px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border-radius:20px}.theme-card span{font:28px Georgia,serif;color:var(--violet)}.theme-card h3{font-size:24px;margin:16px 0 8px}.theme-card p{color:#cbd4e7}.character-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.character-grid article{overflow:hidden;border:1px solid var(--line);background:rgba(255,255,255,.04);border-radius:22px}.character-grid img{width:100%;aspect-ratio:16/9;object-fit:cover;filter:saturate(.78)}.character-grid div{padding:24px}.character-grid h3{font-size:26px;margin-bottom:8px}.character-grid p{color:#cbd4e7}.support-section{position:relative;padding:104px 18px;background:linear-gradient(180deg,rgba(128,241,255,.04),rgba(165,139,255,.08)),url('assets/scene37.jpg') center/cover fixed}.support-panel{width:min(960px,100%);margin:0 auto;padding:clamp(28px,5vw,58px);border:1px solid rgba(255,255,255,.16);border-radius:28px;background:rgba(4,7,16,.80);backdrop-filter:blur(12px);box-shadow:0 40px 120px rgba(0,0,0,.55)}.support-panel h2,.notice-box h2{font-size:clamp(30px,4.2vw,54px);line-height:1.18}.support-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:26px 0}.support-stats div{padding:16px;border:1px solid var(--line);background:rgba(255,255,255,.04);border-radius:16px}.support-stats b{display:block;font-size:20px;margin-top:5px}.returns{display:flex;flex-wrap:wrap;gap:9px}.returns span{padding:7px 11px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.05);color:#d9e2ef;font-size:13px}.notice-box{padding:clamp(24px,4vw,48px);border:1px solid rgba(128,241,255,.24);background:rgba(10,14,24,.72);border-radius:24px}.notice-box p{color:#cfd8e9}.footer{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:32px clamp(16px,4vw,56px);border-top:1px solid var(--line);background:#020309;color:#cbd6e7}.footer b{display:block;font:26px Georgia,serif}.footer span{font:12px "Courier New",monospace;color:var(--cyan)}.footer nav{display:flex;gap:16px;flex-wrap:wrap;font:12px "Courier New",monospace;color:#b8fff6}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.visible,.reveal.now{opacity:1;transform:none}
@media(max-width:900px){.nav-toggle{display:block}.nav{position:absolute;top:68px;right:16px;display:none;flex-direction:column;align-items:flex-start;min-width:230px;padding:18px;border:1px solid var(--line);border-radius:16px;background:rgba(4,7,16,.96)}.nav.open{display:flex}.pre-links,.quick-links,.about-grid,.story-layout,.section-head,.themes,.character-grid,.support-stats{grid-template-columns:1fr}.quick-links{margin-top:12px}.fact-list{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-card:nth-child(1),.gallery-card:nth-child(2){grid-column:span 1;min-height:210px}.feature-strip{grid-template-columns:1fr}.feature-strip img{height:220px}.thumb-grid{grid-template-columns:repeat(4,1fr)}.status-card{display:none}.section{padding:70px 0}.footer{display:block}.footer nav{margin-top:18px}}
@media(max-width:520px){.hero{padding-inline:12px}.hero-panel{padding:22px}.hero-actions .btn{width:100%}.fact-list,.gallery-grid{grid-template-columns:1fr}.thumb-grid{grid-template-columns:repeat(2,1fr)}.site-header{padding:12px 14px}.brand strong{font-size:24px}.quick-links a{padding:14px}}


/* Boot logo splash */
body.booting{overflow:hidden;}
.boot-splash{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:#010207;overflow:hidden;transition:opacity .75s ease,visibility .75s ease;}
.boot-splash.is-hidden{opacity:0;visibility:hidden;pointer-events:none;}
.boot-noise{position:absolute;inset:-20%;opacity:.23;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:noiseDrift .16s steps(2,end) infinite;}
.boot-splash:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.12) 0 1px,transparent 1px 4px),radial-gradient(circle at 50% 44%,rgba(128,241,255,.12),transparent 42%);mix-blend-mode:screen;opacity:.35;}
.boot-splash:after{content:"SIGNAL FOUND  /  PRESENT DAY PRESENT TIME  /  LOADING...";position:absolute;left:22px;right:22px;bottom:20px;font:12px/1.4 "Courier New",monospace;letter-spacing:.16em;color:rgba(184,255,246,.72);white-space:nowrap;overflow:hidden;animation:bootTicker 2.6s steps(30,end) infinite;}
.boot-logo{position:relative;text-align:center;padding:28px;width:min(920px,92vw);filter:drop-shadow(0 0 28px rgba(128,241,255,.16));animation:bootIn 1.1s steps(9,end) both;}
.boot-kicker,.boot-sub{font:12px/1.5 "Courier New",monospace;letter-spacing:.24em;color:var(--cyan);text-transform:uppercase;}
.boot-glitch{position:relative;margin:10px 0 12px;font:clamp(48px,10vw,122px)/.9 Georgia,"Times New Roman",serif;font-weight:400;text-shadow:0 0 18px rgba(165,139,255,.7),0 0 48px rgba(128,241,255,.26);animation:logoJitter 1.7s steps(2,end) infinite;}
.boot-glitch:before,.boot-glitch:after{content:attr(data-text);position:absolute;inset:0;opacity:.42;pointer-events:none;}
.boot-glitch:before{color:#80f1ff;transform:translate(3px,-2px);clip-path:inset(0 0 52% 0);}
.boot-glitch:after{color:#ff5e8c;transform:translate(-3px,2px);clip-path:inset(52% 0 0 0);}
.boot-enter{margin-top:22px;color:#dffcff;background:rgba(128,241,255,.08);border:1px solid rgba(128,241,255,.35);border-radius:999px;padding:11px 18px;font:12px/1 "Courier New",monospace;letter-spacing:.18em;cursor:pointer;}
.boot-enter:hover{background:rgba(128,241,255,.16);box-shadow:0 0 24px rgba(128,241,255,.16);}
@keyframes noiseDrift{0%{transform:translate(0,0)}25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}
@keyframes bootIn{0%{opacity:0;transform:scale(1.03);clip-path:inset(45% 0 45% 0)}30%{opacity:1;clip-path:inset(0 0 0 0)}42%{transform:translateX(-12px)}48%{transform:translateX(9px)}56%,100%{transform:none}}
@keyframes logoJitter{0%,88%,100%{transform:none}90%{transform:translate(-2px,1px)}94%{transform:translate(2px,-1px)}}
@keyframes bootTicker{0%{clip-path:inset(0 100% 0 0)}70%,100%{clip-path:inset(0 0 0 0)}}

.synopsis-card{grid-column:1 / -1;border:1px solid rgba(128,241,255,.24);border-radius:22px;background:linear-gradient(135deg,rgba(128,241,255,.075),rgba(165,139,255,.055));padding:clamp(22px,4vw,38px);box-shadow:0 24px 80px rgba(0,0,0,.25);}
.synopsis-card h2{font-size:clamp(26px,3.5vw,42px);line-height:1.25;margin:8px 0 14px;}
.synopsis-card p{color:#d5deee;max-width:920px;}
.support-subtle{padding:68px 18px;background:linear-gradient(180deg,rgba(8,12,22,.72),rgba(5,7,13,.92)),url('assets/scene37.jpg') center/cover fixed;}
.support-subtle .support-panel{width:min(860px,100%);padding:clamp(24px,4vw,42px);border-radius:22px;background:rgba(5,8,16,.72);box-shadow:0 22px 80px rgba(0,0,0,.38);}
.support-subtle .support-panel h2{font-size:clamp(26px,3.4vw,42px);}
.support-subtle .support-stats b{font-size:18px;}
.support-subtle .returns{opacity:.82;}
.support-subtle .btn.big{margin-top:18px;}
