@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Inter:wght@400;500;600;700&display=swap');
:root{--bg:#101010;--panel:#191918;--line:#32312e;--text:#eae4d8;--muted:#a49f96;--red:#9f242d;--gold:#b9a17b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.7 Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);background:#101010;gap:20px}.brand{display:flex;gap:12px;align-items:center;font-size:32px;color:var(--gold)}.brand span{font-family:Georgia,serif;font-size:24px;line-height:1.1;color:var(--text);letter-spacing:1px}.brand small{display:block;font:9px/2.4 Inter,Arial,sans-serif;letter-spacing:4px;color:var(--gold)}nav{display:flex;gap:32px;color:#c6c1b8;font-size:12px}nav a:hover,.text-link:hover{color:#e0b687}.saved-link{font-size:12px}.saved-link b{border:1px solid var(--line);padding:3px 7px;margin-left:7px;font-size:10px}.hero{height:630px;position:relative;overflow:hidden;background:#161418}.hero-art{position:absolute;inset:0;background-image:url('assets/top_chara_right_pc.webp');background-size:auto 125%;background-position:right 15%;background-repeat:no-repeat;filter:saturate(.55)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#111112 4%,#111112ee 22%,#11111250 57%,#11111200),linear-gradient(0deg,#101010,transparent 35%)}.hero-content{position:relative;padding:68px 6%;max-width:850px}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:600;color:var(--gold);text-transform:uppercase}.eyebrow span{display:inline-block;width:22px;height:1px;background:var(--red);vertical-align:middle;margin-right:10px}.overline{font:italic 19px Georgia,serif;color:#b6aea2;margin:34px 0 10px}h1{font:500 clamp(54px,5.8vw,83px)/.99 'Cormorant Garamond',Georgia,serif;letter-spacing:-2px;margin:0}h1 em{color:#c6b795;font-weight:400}.intro{color:#aaa59c;font-size:13px;line-height:1.9;margin:25px 0}.hero-actions{display:flex;align-items:center;gap:30px}.button{border:1px solid #494037;display:inline-flex;justify-content:center;gap:36px;padding:13px 24px;background:transparent;color:var(--text);font-size:12px}.red{background:var(--red);border-color:var(--red)}.red:hover{background:#bd2c37}.text-link{font-size:12px;border-bottom:1px solid #76624a;padding-bottom:7px}.hero-bottom{position:absolute;bottom:24px;left:6%;right:6%;display:flex;justify-content:space-between;color:#8b8378;font-size:9px;letter-spacing:2px}.hero-bottom i{padding:0 16px}.ticker{display:flex;justify-content:space-around;gap:24px;padding:19px 4%;font:11px Georgia,serif;letter-spacing:2px;border-block:1px solid var(--line);color:#8d8578;overflow:hidden;white-space:nowrap}.ticker i{color:var(--red)}.section{padding:76px 6%;max-width:1600px;margin:auto}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px}h2{font:500 45px/1.1 'Cormorant Garamond',Georgia,serif;margin:12px 0 0;letter-spacing:-.8px}.section-head p,.history p,.start>p{color:var(--muted);font-size:12px}.controls{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px;align-items:center}.tabs{display:flex;gap:21px;flex-wrap:wrap}.tabs button{background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);font-size:11px;padding:15px 0}.tabs .active{color:var(--text);border-color:var(--red)}.search{display:flex;align-items:center;gap:10px}.search span{font-size:25px;color:var(--muted)}input{width:200px;background:none;border:0;color:var(--text);font-size:11px;padding:12px 0;outline-offset:2px}.results-bar{display:flex;justify-content:space-between;margin:20px 0;color:#8e887e;font-size:10px}select{background:var(--bg);color:#bcb4a8;border:0;font-size:10px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.game{background:var(--panel);border:1px solid #2d2b27;position:relative}.game-image{height:185px;background:linear-gradient(135deg,#373129,#17191e);overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative}.game-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.game:hover img{transform:scale(1.05)}.game-image .roman{font:italic 75px Georgia,serif;color:#94816a;opacity:.55}.game:nth-child(3n+2) .game-image{background:linear-gradient(140deg,#2e2839,#151719)}.game:nth-child(3n+3) .game-image{background:linear-gradient(140deg,#47282a,#191615)}.badge{position:absolute;left:13px;top:13px;background:#121212d9;border:1px solid #655845;font-size:8px;letter-spacing:1px;padding:3px 7px}.favorite{position:absolute;right:12px;top:12px;border:1px solid #71675e;background:#141414ce;color:white;width:32px;height:32px;font-size:19px;z-index:2}.favorite[aria-pressed=true]{color:#f28a8a}.game-body{padding:20px}.meta{color:#9b8b73;font-size:9px;letter-spacing:1px}.game h3{font:500 24px/1.15 'Cormorant Garamond',Georgia,serif;margin:9px 0}.game p{color:var(--muted);font-size:11px;min-height:38px}.detail-button{border:0;border-top:1px solid var(--line);padding:13px 0 0;width:100%;background:none;color:#d2c6b5;display:flex;justify-content:space-between;font-size:10px}.more{display:flex;margin:30px auto 0;min-width:220px}.screen-section{background:#171615;max-width:none;border-block:1px solid var(--line)}.shows{display:grid;grid-template-columns:1fr 1fr;gap:24px}.show{padding:38px;border:1px solid #493731;background:radial-gradient(ellipse at top right,#5a2b2c88,transparent 65%);position:relative;overflow:hidden}.show h3{font:38px Georgia,serif;position:relative;margin:15px 0}.show p{color:var(--muted);max-width:360px;font-size:12px;position:relative}.show-number{position:absolute;right:10px;top:-80px;font:280px Georgia,serif;color:#8c74681c}.nocturne{background:radial-gradient(ellipse at top right,#41465c88,transparent 65%);border-color:#3c3d46}details{margin-top:20px;border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:15px 0;font-size:12px;list-style:none}summary span{float:right}details p{max-width:850px;color:var(--muted);font-size:12px}.lore-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.lore-card{text-align:left;background:none;color:var(--text);border:1px solid var(--line);padding:27px 22px}.lore-card:hover{background:#211c19;border-color:var(--gold)}.lore-card .sigil{font:45px Georgia,serif;color:var(--gold);display:block;margin-bottom:25px}.lore-card h3{font:25px Georgia,serif;margin:10px 0}.lore-card p{font-size:11px;color:var(--muted)}.lore-card small{color:var(--gold);font-size:10px}.history{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;border-block:1px solid var(--line)}.history .text-link{display:inline-block;margin-top:25px}.timeline article{display:flex;gap:34px;padding:0 0 25px;position:relative}.timeline article:not(:last-child):after{content:'';position:absolute;left:64px;top:9px;bottom:0;border-left:1px solid #594a37}.timeline b{font:25px Georgia,serif;color:var(--gold);min-width:65px}.timeline h3{font:22px Georgia,serif;margin:0}.timeline p{margin:7px 0}.start{text-align:center;background:radial-gradient(ellipse at bottom,#33211e,transparent 70%)}.start-options{display:flex;gap:20px;justify-content:center;margin-top:30px}.start-options button{background:#191614;color:var(--text);border:1px solid #514232;padding:17px 24px;font-size:12px}.start-options span{padding-left:30px}footer{border-top:1px solid var(--line);padding:40px 6%;display:flex;justify-content:space-between;gap:30px;align-items:center}footer p,footer small{font-size:10px;color:#8f887f}footer>div{display:flex;flex-direction:column;gap:7px;font-size:10px}dialog{background:#1d1b19;color:var(--text);border:1px solid #736047;max-width:620px;width:90%;padding:45px}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}dialog h2{font-size:38px;margin:15px 0}dialog p{color:#c0b8ac}.close{position:absolute;right:14px;top:10px;background:none;border:0;color:var(--text);font-size:28px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#d5c7ae;color:#17130f;padding:10px 22px;opacity:0;pointer-events:none;z-index:10;font-size:12px}.empty{grid-column:1/-1;text-align:center;padding:55px;color:var(--muted)}@media(min-width:1500px){.hero-content{padding-left:9%}.hero-art{background-position:90% 15%}}@media(max-width:900px){header{padding:15px 5%;height:auto;flex-wrap:wrap}nav{order:3;width:100%;justify-content:center;gap:25px}.hero-art{opacity:.6;background-position:75% center}.hero-shade{background:linear-gradient(90deg,#111112ee,#11111244)}.hero{height:620px}.hero-content{padding-top:65px}.grid{grid-template-columns:repeat(2,1fr)}.controls{flex-direction:column;align-items:stretch}.search{border-top:1px solid var(--line)}.search input{width:100%}.lore-grid{grid-template-columns:repeat(2,1fr)}.section-head p{display:none}.history{gap:30px}.start-options{flex-wrap:wrap}footer{flex-wrap:wrap}}@media(max-width:560px){.brand span{font-size:21px}.saved-link span{display:none}nav{font-size:11px}.hero{height:580px}.hero-content{padding:55px 6%}.hero h1{font-size:61px}.hero-art{background-position:60% center;background-size:auto 105%}.intro br{display:none}.intro{max-width:300px}.hero-actions{gap:22px}.hero-bottom{font-size:7px;letter-spacing:1px}.hero-bottom a{display:none}.section{padding:50px 6%}h2{font-size:36px}.grid,.shows,.history{grid-template-columns:1fr}.game-image{height:210px}.tabs{gap:17px}.tabs button{font-size:10px}.lore-card{padding:20px 14px}.lore-card h3{font-size:22px}.show{padding:27px}.show h3{font-size:31px}.start-options{flex-direction:column}.start-options button{display:flex;justify-content:space-between}footer{padding:35px 6%}.history{gap:35px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.brand img{display:block;width:285px;height:95px;object-fit:contain}header{height:116px}.film-guide{display:inline-block;margin-top:22px}.article-hero{padding:50px 6% 65px;background:radial-gradient(ellipse at 90% 20%,#402a2a 0,transparent 65%);border-bottom:1px solid var(--line)}.breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-bottom:45px}.breadcrumbs a{color:var(--gold)}.article-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:55px;align-items:center;max-width:1300px;margin:auto}.article-heading h1{font-size:clamp(42px,5vw,70px);line-height:1.08;margin:18px 0}.article-heading p{color:#bcb4a8;max-width:650px}.article-art{width:100%;max-height:300px;object-fit:contain}.article-mark{min-height:230px;display:flex;justify-content:center;align-items:center;border:1px solid #584336;background:radial-gradient(ellipse,#462b2b,transparent);font:100px Georgia,serif;color:var(--gold)}.article-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:70px}.article-copy h2{font-size:34px;margin:0 0 18px}.article-copy h2:not(:first-child){margin-top:42px}.article-copy p,.article-copy li{color:#bcb4a8;font-size:14px;line-height:1.95}.fact-panel{padding:28px;background:#1b1816;border:1px solid var(--line);align-self:start}.fact-panel h2{font-size:28px;margin:0 0 20px}.fact-panel dl{margin:0}.fact-panel dt{font-size:10px;letter-spacing:1.3px;color:var(--gold);text-transform:uppercase;margin-top:20px}.fact-panel dd{margin:5px 0 20px;font-size:13px}.fact-panel .button{width:100%;gap:10px}.related-links{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.related-links a{padding:24px;border:1px solid var(--line);font:23px Georgia,serif}.related-links a:hover{border-color:var(--gold)}.related-links small{display:block;font:10px Inter,Arial,sans-serif;color:var(--gold);margin-bottom:10px}.back-link{display:inline-block;margin-top:25px;color:var(--gold);font-size:12px}@media(max-width:900px){header{height:auto}.article-heading{grid-template-columns:1fr}.article-art,.article-mark{max-height:240px}.article-layout{gap:30px}.related-links{grid-template-columns:1fr}.brand img{width:250px;height:84px}}@media(max-width:560px){.brand img{width:235px;height:78px}.article-layout{grid-template-columns:1fr}.article-heading{gap:25px}.breadcrumbs{margin-bottom:28px}.article-hero{padding-top:25px}.article-heading h1{font-size:45px}}
