/* Hallmark · macrostructure: Photographic · theme: custom · tone: village mystery · anchor hue: cyan
 * H6 scene fold · E8 original game screenshots · N6 compact masthead · Ft4 dense colophon
 * paper: oklch(16.6% .016 278) · accent: oklch(90.5% .155 195) · display: Oswald · body: Noto Sans SC
 * axes: dark / condensed-sans / cool · user-provided palette and compact retail layout
 * Hallmark · pre-emit critique: P4 H4 E4 S5 R4 V4 */
@import url('tokens.css?v=1');
@import url('fonts.css?v=1');
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip;scroll-padding-top:132px}body{margin:0;overflow-x:clip;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-body);line-height:1.8;padding-bottom:84px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}a:active,button:active{transform:translateY(1px)}button:disabled,[aria-disabled=true]{opacity:.5;cursor:not-allowed}button[data-state=loading]{cursor:progress}button[data-state=error]{border-color:var(--color-error)}button[data-state=success]{border-color:var(--color-success)}img{display:block;width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.35;font-style:normal;overflow-wrap:anywhere;min-width:0}h2{font-size:var(--text-title);letter-spacing:-.04em}h3{font-size:1.125rem}p{color:var(--color-muted)}.wrap{width:min(1224px,calc(100% - 36px));margin-inline:auto}.skip{position:fixed;top:-100px;left:20px;z-index:var(--z-modal);background:var(--color-accent);color:var(--color-accent-ink);padding:12px}.skip:focus{top:8px}.site-header{position:sticky;top:0;z-index:var(--z-sticky);background:var(--color-paper)}.mast-top{display:flex;align-items:center;justify-content:space-between;height:68px;border-bottom:1px solid var(--color-rule);gap:12px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:17px;line-height:1.25;white-space:nowrap}.brand small{display:block;font-family:var(--font-display);font-size:10px;letter-spacing:.12em;margin-top:5px;font-weight:400}.brand-mark{border:1px solid var(--color-accent);color:var(--color-accent);font-size:23px;padding:2px 9px;font-weight:500}.mast-note{display:none}.nav-download{color:var(--color-accent);font-size:14px;font-weight:700;white-space:nowrap;padding:12px 0}.main-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.main-nav a{padding:12px 0;text-align:center;font-size:13px;white-space:nowrap;border-bottom:2px solid transparent;min-height:48px}.main-nav [aria-current=page]{color:var(--color-accent);border-color:var(--color-accent)}.hero{position:relative;min-height:610px;display:flex;align-items:flex-end;isolation:isolate;background:var(--color-panel)}.hero-image{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:63% top;z-index:-3}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(to top,var(--color-paper),color-mix(in oklch,var(--color-paper) 6%,transparent))}.hero-content{padding-block:176px 40px;display:flex;justify-content:space-between;align-items:flex-end}.hero-copy{max-width:720px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.tags span{font-size:12px;line-height:1.5;padding:5px 10px;background:var(--color-panel);color:var(--color-accent)}.hero h1{font-size:clamp(3rem,7vw,6rem);line-height:1.1;letter-spacing:-.035em;font-weight:800}.hero h1 span{display:block;font-family:var(--font-display);font-size:clamp(1.5rem,3.5vw,2.65rem);font-weight:400;letter-spacing:.025em;text-transform:uppercase;margin-top:8px}.hero-subtitle{color:var(--color-ink);font-size:16px;letter-spacing:.3em;margin-top:17px}.hero-lead{color:var(--color-ink);font-size:15px;line-height:1.8;margin-top:20px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;padding:12px 22px;border:1px solid var(--color-rule);font-weight:700;font-size:14px;white-space:nowrap;border-radius:var(--radius-sm);position:relative;overflow:clip;transition:transform var(--dur-micro) var(--ease-out)}.primary{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.primary::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent,color-mix(in oklch,var(--color-ink) 65%,transparent),transparent);transform:translateX(-110%);pointer-events:none}.secondary{background:color-mix(in oklch,var(--color-paper) 85%,transparent);color:var(--color-ink)}.download-note{display:block;color:var(--color-muted);font-size:12px;margin-top:14px}.hero-caption{display:none}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding-block:24px;border-bottom:1px solid var(--color-rule);row-gap:24px}.facts div{display:flex;flex-direction:column;border-left:1px solid var(--color-rule);padding-left:16px}.facts div:nth-child(odd){padding-left:0;border-left:0}.facts span{font-size:12px;color:var(--color-muted)}.facts strong{font-size:15px;margin-top:5px;font-weight:500}.story{display:grid;gap:32px;padding-block:56px}.story h2{margin-bottom:24px}.story p{margin-bottom:20px}.text-link{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap;color:var(--color-accent);font-size:14px;border-bottom:1px solid var(--color-accent)}.story-aside{background:var(--color-panel);padding:28px}.story-aside h3{color:var(--color-accent)}dl{margin:0}dt,dd{margin:0}.story-aside dl div{margin-top:22px}.story-aside dt{font-weight:700;margin-bottom:5px}.story-aside dd{font-size:14px;color:var(--color-muted)}.characters{background:var(--color-panel);padding-block:44px}.section-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:28px}.section-head p{margin-top:10px;font-size:15px}.character-layout{display:grid;gap:28px}.character-layout figure img{aspect-ratio:16/9;object-fit:cover}.character-layout figcaption{font-size:12px;color:var(--color-muted);padding-top:10px}.character-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.character-list h3{font-size:16px}.character-list span{display:block;font-size:12px;color:var(--color-accent);margin:5px 0}.character-list p{font-size:14px;line-height:1.8}.section{padding-block:48px}.gallery-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}.image-button{display:block;position:relative;width:100%;border:0;padding:0;background:var(--color-panel);overflow:clip;text-align:left}.image-button img{aspect-ratio:16/9;object-fit:cover;transition:transform var(--dur-short) var(--ease-out)}.image-plus{position:absolute;right:12px;bottom:12px;background:var(--color-paper);width:32px;height:32px;text-align:center;line-height:32px;color:var(--color-accent)}figcaption{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:14px;padding-top:12px}figcaption small{color:var(--color-muted);font-size:12px;white-space:nowrap}.audience{display:grid;gap:24px;border-block:1px solid var(--color-rule);padding-block:36px}.audience h2{font-size:26px}.audience article+article{margin-top:20px}.audience p{font-size:15px;margin-top:8px}.faq{border-top:1px solid var(--color-rule)}details{border-bottom:1px solid var(--color-rule)}summary{list-style:none;position:relative;cursor:pointer;padding:20px 34px 20px 0;font-size:16px;font-weight:500;line-height:1.8}summary::-webkit-details-marker{display:none}summary::after{content:'＋';position:absolute;right:0;top:20px;color:var(--color-accent);font-size:18px}details[open] summary::after{content:'−'}details[open] summary{color:var(--color-accent)}details p{padding:0 34px 24px 0;max-width:950px;line-height:1.9;font-size:15px}.final-cta{padding-block:36px;margin-block:20px 56px;border-top:2px solid var(--color-accent);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px}.final-cta h2{font-size:26px}.final-cta p{font-size:14px;margin-top:12px}.site-footer{background:var(--color-panel);padding-block:40px}.footer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.footer-head strong{font-size:26px;line-height:1.4}.footer-head strong span{display:block;font-family:var(--font-display);font-size:15px;font-weight:400;letter-spacing:.07em}.footer-head a{font-size:13px;white-space:nowrap;min-height:44px;padding-top:6px}.site-footer p{font-size:13px;margin-top:20px}.footer-links,.related-links{display:flex;flex-wrap:wrap;gap:0 24px;margin-top:14px}.footer-links a,.related-links a{font-size:13px;white-space:nowrap;min-height:44px;display:flex;align-items:center}.site-footer .related-label{color:var(--color-ink);font-size:14px;margin-top:24px}.related-links{margin-top:4px}.copyright{border-top:1px solid var(--color-rule);padding-top:22px;line-height:1.8}.mobile-cta{position:fixed;z-index:var(--z-sticky);bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:12px 18px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--color-rule);background:var(--color-paper);gap:12px}.mobile-cta>span{font-size:14px;line-height:1.5}.mobile-cta small{display:block;font-size:11px;color:var(--color-muted)}.mobile-cta .btn{min-height:46px;padding:10px 22px}.page-title{padding-block:36px 40px}.back{display:inline-flex;min-height:44px;align-items:center;font-size:13px;color:var(--color-accent);white-space:nowrap}.page-title h1{font-size:clamp(2rem,4.5vw,3.75rem);letter-spacing:-.035em;margin-top:16px}.page-title p{font-size:16px;margin-top:18px;max-width:760px}.filter-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-bottom:24px}.filter{min-height:44px;border:1px solid var(--color-rule);background:var(--color-paper);padding:8px 16px;white-space:nowrap;font-size:14px}.filter[aria-pressed=true]{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}#filter-count{font-size:12px;color:var(--color-muted);margin-left:auto}.gallery-section{padding-bottom:36px}.shot[hidden]{display:none}.download-panel{display:grid;gap:28px;padding-block:24px 32px;border-block:1px solid var(--color-rule)}.download-panel>img{align-self:center;aspect-ratio:460/215;object-fit:contain}.download-panel h2{margin-bottom:12px}.download-panel .btn{margin-top:24px}.small{font-size:13px;margin-top:18px}.steps{list-style:none;counter-reset:steps;display:grid;gap:28px;padding:0;margin:0}.steps li{counter-increment:steps;position:relative;padding-top:50px}.steps li::before{content:'0' counter(steps);position:absolute;top:0;font-family:var(--font-display);color:var(--color-accent);font-size:30px;line-height:1}.steps strong{font-size:18px}.steps p{font-size:15px;margin-top:12px}.spec-grid{display:grid;gap:24px}.spec-grid article{background:var(--color-panel);padding:24px}.spec-grid h3{font-size:22px;color:var(--color-accent);margin-bottom:24px}.spec-grid dl div{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;border-top:1px solid var(--color-rule);padding-block:14px;font-size:14px}.spec-grid dt{color:var(--color-muted)}.spec-grid dd{font-variant-numeric:tabular-nums}.guide-layout{display:grid;gap:32px;padding-bottom:56px}.guide-toc{background:var(--color-panel);padding:24px;align-self:start}.guide-toc strong{font-size:14px;color:var(--color-accent);display:block;margin-bottom:12px}.guide-toc a{display:block;font-size:13px;white-space:nowrap;padding-block:12px;border-top:1px solid var(--color-rule)}.guide-body section,.text-article section{margin-bottom:44px;scroll-margin-top:140px}.guide-body h2,.text-article h2{font-size:26px;margin-bottom:20px}.guide-body p,.text-article p{margin-bottom:18px;line-height:2;font-size:16px}.guide-body img{margin-top:24px}.article-end{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:20px;border-top:1px solid var(--color-rule)}.article-end a{font-size:14px;color:var(--color-accent);min-height:44px;white-space:nowrap;display:flex;align-items:center}.text-article{max-width:900px;padding-bottom:30px}.lightbox{position:fixed;inset:0;margin:auto;width:min(1320px,calc(100% - 24px));max-width:calc(100% - 24px);max-height:calc(100dvh - 32px);height:fit-content;background:var(--color-paper);color:var(--color-ink);border:1px solid var(--color-rule);padding:12px;overflow:auto}.lightbox::backdrop{background:color-mix(in oklch,var(--color-paper) 94%,transparent)}.lightbox-top,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px}.lightbox-top p{font-size:13px;color:var(--color-ink)}.lightbox button{background:var(--color-panel);border:1px solid var(--color-rule);padding:8px 12px;min-height:44px;font-size:13px;white-space:nowrap}.lightbox-media{position:relative;min-height:100px}.lightbox-media img{max-height:calc(100dvh - 180px);width:100%;object-fit:contain}.lightbox-media[data-state=loading] img{opacity:.35}.image-status{position:absolute;inset:40% 12px auto;text-align:center;background:var(--color-paper);font-size:14px}.image-status:empty{display:none}#image-count{font-size:12px;color:var(--color-muted)}
@media(hover:hover){.main-nav a:hover,.footer-links a:hover,.related-links a:hover,.guide-toc a:hover{color:var(--color-accent)}.btn:hover{transform:translateY(-2px)}.primary:hover::after{transform:translateX(110%);transition:transform 500ms var(--ease-out)}.image-button:hover img{transform:scale(1.035)}summary:hover{color:var(--color-accent)}.filter:hover{border-color:var(--color-accent)}}
@media(min-width:640px){.wrap{width:min(1224px,calc(100% - 64px))}.hero{min-height:630px}.hero-content{padding-block:180px 48px}.hero-lead{font-size:17px}.hero-subtitle{font-size:18px}.btn{font-size:15px;min-height:56px;padding-inline:26px}.mast-note{display:block;font-size:12px;letter-spacing:.16em;color:var(--color-muted)}.main-nav{display:flex;gap:36px}.main-nav a{font-size:14px;padding-inline:4px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.facts{grid-template-columns:repeat(3,minmax(0,1fr))}.facts div:nth-child(odd){padding-left:16px;border-left:1px solid var(--color-rule)}.facts div:nth-child(3n+1){padding-left:0;border-left:0}.spec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.character-list{gap:28px}.download-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.page-title{padding-block:48px}.story{padding-block:72px}.section{padding-block:64px}.section-head{flex-wrap:nowrap}.hero-copy{max-width:760px}.hero-shade{background:linear-gradient(90deg,color-mix(in oklch,var(--color-paper) 94%,transparent),color-mix(in oklch,var(--color-paper) 6%,transparent))}.hero-shade::after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(to top,var(--color-paper),transparent)}}
@media(min-width:768px){.mast-top{height:72px}.hero-caption{display:block;writing-mode:vertical-rl;letter-spacing:.2em;font-size:14px;color:var(--color-ink);border-left:1px solid var(--color-accent);padding-left:16px}.hero-caption span{font-family:var(--font-display);font-size:12px;letter-spacing:.15em;margin-top:16px}.story{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:56px}.hero{min-height:650px}.hero-content{padding-top:170px}.audience{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:48px}.full-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.guide-layout{grid-template-columns:270px minmax(0,1fr);gap:44px}.guide-toc{position:sticky;top:144px}.mobile-cta{display:none}body{padding-bottom:0}.brand{font-size:20px}.brand small{font-size:11px}}
@media(min-width:1024px){.hero{min-height:min(720px,calc(100svh - 120px))}.hero-content{padding-block:100px 52px}.hero h1{font-size:88px}.hero-image{object-position:center 36%}.hero-shade{background:linear-gradient(90deg,color-mix(in oklch,var(--color-paper) 90%,transparent),transparent 80%)}.facts{grid-template-columns:repeat(6,minmax(0,1fr));padding-block:28px}.facts div:nth-child(3n+1){padding-left:16px;border-left:1px solid var(--color-rule)}.facts div:first-child{padding-left:0;border-left:0}.character-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:center}.preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.characters{padding-block:56px}.download-panel{grid-template-columns:460px minmax(0,1fr);gap:56px}.guide-layout{gap:72px}.story{gap:100px}.story-main{max-width:700px}.main-nav{gap:44px}.main-nav a{padding-block:11px}.section{padding-block:72px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}a:active,button:active,.btn:hover,.image-button:hover img{transform:none}}

.actions{align-items:center}.hero-subtitle{margin-top:var(--space-md)}summary:active{color:var(--color-accent)}@media(min-width:1024px){.hero-content{padding-block:32px 52px}}
