/* Hallmark · macrostructure: scene-to-field-notes · tone: midnight mythic editorial · anchor hue: warm gold */
/* Hallmark · pre-emit critique: P4 H4 E4 S5 R4 V4 */
@import url("tokens.css");
*,*::before,*::after{box-sizing:border-box}html,body{margin:0;overflow-x:clip}html{scroll-behavior:smooth;scroll-padding-top:84px}body{background:var(--color-ink);color:var(--color-ink);font:16px/1.75 var(--font-body)}a{color:inherit}button{font:inherit}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-display);font-style:normal;line-height:1.24;overflow-wrap:anywhere;min-width:0}h2{font-size:clamp(1.85rem,3.3vw,3.2rem)}h3{font-size:clamp(1.35rem,2vw,1.75rem)}p{max-width:66ch}main{min-height:60vh}.skip{position:absolute;left:12px;top:-100px;z-index:30;background:var(--color-gold);padding:8px 12px}.skip:focus{top:12px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--color-gold);outline-offset:3px}.mast{position:sticky;top:0;z-index:20;background:var(--color-ink);color:var(--color-paper);border-bottom:1px solid var(--color-gold-dark)}.mast-inner{max-width:1260px;margin:auto;min-height:72px;padding:8px 24px;display:flex;align-items:center;gap:24px}.site-name{text-decoration:none;font:700 1.45rem/1 var(--font-display);white-space:nowrap}.site-name span{color:var(--color-gold)}.site-name small{display:block;font:11px/1.3 var(--font-body);color:var(--color-paper-dim);margin-top:4px}.nav{margin-left:auto;display:flex;align-items:center;gap:20px}.nav a{text-decoration:none;font-size:.9rem;white-space:nowrap}.nav a:hover,.nav a[aria-current=page]{color:var(--color-gold)}.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:48px;padding:10px 20px;background:var(--color-gold);color:var(--color-ink)!important;border:2px solid var(--color-gold);box-shadow:5px 5px 0 var(--color-wine);text-decoration:none;font-weight:800;white-space:nowrap;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.button:hover{background:var(--color-paper);transform:none;box-shadow:5px 5px 0 var(--color-wine)}.button:active{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--color-wine)}.button[aria-disabled=true]{opacity:.5;pointer-events:none}.button[data-state=loading]{opacity:.7;cursor:progress}.button[data-state=error]{background:var(--color-wine);color:var(--color-paper)!important}.button[data-state=success]{background:var(--color-paper)}.button.quiet{background:transparent;border-color:var(--color-paper);box-shadow:none;color:var(--color-paper)!important}.button.quiet:hover{background:var(--color-paper);color:var(--color-ink)!important}.nav-cta{min-height:38px;padding:4px 13px;font-size:.82rem;box-shadow:3px 3px 0 var(--color-wine)}.hero{position:relative;min-height:min(850px,calc(100svh - 72px));color:var(--color-paper);display:grid;align-items:end;overflow:hidden}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.66)}.hero-shade{background:linear-gradient(90deg,var(--color-ink) 0%,var(--color-overlay-strong) 22%,var(--color-overlay-soft) 72%,var(--color-overlay-light)),linear-gradient(0deg,var(--color-ink) 0%,transparent 65%)}.hero-inner{position:relative;z-index:1;width:min(1260px,100%);margin:auto;padding:64px 24px 76px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:end;gap:48px}.hero-copy{max-width:720px}.eyebrow,.marker{font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--color-gold)}.hero h1{font-size:var(--text-display);margin:0 0 18px;letter-spacing:-.05em}.hero h1 small{display:block;font:400 clamp(.86rem,1.5vw,1.1rem)/1.5 var(--font-body);letter-spacing:0;color:var(--color-paper-dim);margin-top:10px}.real-game-logo{max-width:240px!important;max-height:280px!important;object-position:left center!important;margin-bottom:12px!important}.hero-lede{font-size:clamp(1rem,1.6vw,1.22rem);max-width:38em;line-height:1.85}.hero-tags{display:flex;flex-wrap:wrap;gap:7px;margin:24px 0}.hero-tags span{border:1px solid var(--color-gold-dark);background:var(--color-ink-soft);padding:2px 10px;font-size:.8rem}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-note{font-size:.75rem;color:var(--color-paper-dim);margin:20px 0 0}.hero-ticket{max-width:380px;justify-self:end;transform:rotate(2deg);background:var(--color-paper);color:var(--color-ink);padding:10px;box-shadow:10px 12px 0 var(--color-wine)}.hero-ticket img{display:block;width:100%}.hero-ticket span{display:block;padding:8px 4px 2px;font:700 .84rem var(--font-display)}.paper{max-width:1130px;margin:0 auto;background:var(--color-paper);box-shadow:0 0 0 1px var(--color-gold-dark)}.paper>section:not(.facts){padding:72px 64px;border-bottom:1px solid var(--color-rule)}.facts{padding:30px 64px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;background:var(--color-paper-dim);border-bottom:4px solid var(--color-wine)}.facts>div{border-left:3px solid var(--color-wine);padding-left:14px}.facts dt,.req-grid dt{font-size:.75rem;font-weight:800;color:var(--color-muted)}.facts dd,.req-grid dd{margin:4px 0 0;font-weight:700}.section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.75fr);gap:50px;align-items:end;margin-bottom:28px}.section-head h2{margin:0}.section-head>p{margin:0}.story{background:linear-gradient(110deg,var(--color-paper),var(--color-paper-dim))}.story-body{max-width:720px;padding-left:24px;border-left:4px solid var(--color-gold-dark)}.textlink{display:inline-block;margin-top:16px;color:var(--color-wine);font-weight:800;text-decoration-thickness:2px;text-underline-offset:2px}.textlink:hover{color:var(--color-gold-dark)}.mechanics .feature{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:34px;align-items:center;padding:40px 0;border-top:1px solid var(--color-rule)}.feature.reverse>div{order:2}.feature.reverse figure{order:1}.feature h3{margin:12px 0}.feature figure,.home-gallery figure,.gallery-grid figure,.guide-section figure{margin:0;min-width:0}.feature figure img,.gallery-lead img,.thumbs img,.gallery-grid img,.guide-section figure img{display:block;width:100%;height:auto;border:1px solid var(--color-rule)}figure a{display:block;cursor:zoom-in}figure a:hover img{filter:brightness(.95)}figcaption{font-size:.78rem;color:var(--color-muted);padding-top:8px}.gallery-lead{margin:18px 0}.thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.download-panel,.download-hero{background:var(--color-ink)!important;color:var(--color-paper);display:flex;align-items:center;justify-content:space-between;gap:24px}.download-panel p,.download-hero p{max-width:540px}.download-panel .textlink{color:var(--color-gold)}.fit>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.fit article{border:1px solid var(--color-rule);padding:24px;background:var(--color-paper-dim)}.faq details{border-top:1px solid var(--color-rule);padding:0 4px}.faq details:last-child{border-bottom:1px solid var(--color-rule)}.faq summary{cursor:pointer;font-weight:800;padding:18px 26px 18px 0;position:relative}.faq summary::marker{color:var(--color-wine)}.faq .answer{padding:0 0 18px;max-width:70ch}.end{background:var(--color-wine);color:var(--color-paper);display:flex;align-items:center;justify-content:space-between;gap:28px}.end h2{font-size:clamp(1.8rem,3vw,2.7rem)}.end small{color:var(--color-paper-dim)}.subhead{max-width:1130px;margin:0 auto;padding:70px 64px 56px;background:var(--color-ink-soft);color:var(--color-paper);border-bottom:4px solid var(--color-gold)}.subhead h1{font-size:clamp(2.4rem,4vw,4rem);margin:8px 0 18px}.subhead>p:last-child{max-width:680px}.breadcrumbs{display:flex;gap:10px;font-size:.8rem;margin-bottom:30px}.breadcrumbs a{color:var(--color-gold)}.page-paper{padding:56px 64px 72px}.page-paper>section{padding:36px 0;border-bottom:1px solid var(--color-rule)}.page-paper>section:last-of-type{border-bottom:0}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.filters button,.lightbox button{cursor:pointer;border:1px solid var(--color-wine);background:var(--color-paper);color:var(--color-ink);padding:8px 16px;white-space:nowrap}.filters button[aria-pressed=true],.filters button:hover{background:var(--color-wine);color:var(--color-paper)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.gallery-grid figure[hidden]{display:none}.filter-status{min-height:1.4em;color:var(--color-muted);font-size:.84rem}.toc{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px}.toc a{border:1px solid var(--color-rule);text-decoration:none;padding:7px 13px;white-space:nowrap}.toc a:hover{background:var(--color-paper-dim)}.guide-section h2{margin:10px 0 16px}.guide-section ol{padding-left:1.3em;max-width:76ch}.guide-section li{margin:10px 0}.guide-section figure{max-width:850px;margin:24px 0}.guide-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.requirements p{color:var(--color-muted)}.req-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.req-grid article{border:1px solid var(--color-rule);padding:24px}.req-grid dl{margin:0}.req-grid dl>div{display:grid;grid-template-columns:minmax(0,.37fr) minmax(0,.63fr);gap:10px;padding:10px 0;border-top:1px solid var(--color-rule)}.req-grid dd{margin:0;font-weight:500}.next{display:flex;gap:18px;flex-wrap:wrap;margin-top:40px}.next a{color:var(--color-wine);font-weight:800}.footer{background:var(--color-ink);color:var(--color-paper);padding:60px 24px 100px}.footer-inner,.legal{max-width:1130px;margin:auto}.footer-inner{display:grid;grid-template-columns:1.3fr .6fr 1fr;gap:48px}.footer-inner b{font-family:var(--font-display);font-size:1.25rem}.footer-inner nav,.related{display:flex;flex-direction:column;align-items:start;gap:6px}.footer a{text-decoration:none;color:var(--color-paper-dim);white-space:nowrap}.footer a:hover{color:var(--color-gold)}.legal{border-top:1px solid var(--color-gold-dark);padding-top:24px;margin-top:44px;color:var(--color-paper-dim);font-size:.8rem}.sticky{display:none}.lightbox{max-width:none;max-height:none;width:100vw;height:100dvh;margin:0;padding:16px;background:var(--color-ink);border:0;color:var(--color-paper)}.lightbox::backdrop{background:var(--color-ink)}.lightbox[open]{display:flex;flex-direction:column}.lightbox-bar,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:1440px;width:100%;margin:auto}.lightbox img{display:block;max-width:100%;max-height:calc(100dvh - 155px);width:auto;height:auto;object-fit:contain;margin:auto}.lightbox-bottom [data-caption]{text-align:center}.lightbox button:hover{background:var(--color-gold)}[hidden]{display:none!important}
@media(max-width:900px){.mast-inner{gap:12px}.nav{gap:10px}.nav-cta{display:none}.hero-inner{gap:20px}.hero-ticket{max-width:270px}.facts{grid-template-columns:repeat(2,minmax(0,1fr))}.paper>section:not(.facts),.page-paper{padding:50px 36px}.subhead{padding:56px 36px}.footer-inner{grid-template-columns:1fr 1fr}.related{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.related b{grid-column:1/-1}}
@media(max-width:640px){.mast-inner{min-height:64px;padding:7px 16px;display:block}.site-name{display:block;font-size:1.18rem}.site-name small{font-size:9px}.nav{margin:8px 0 0;overflow-x:auto;gap:16px;padding-bottom:2px}.nav a{font-size:.8rem}.hero{min-height:auto}.hero-shade{background:linear-gradient(0deg,var(--color-ink) 0%,var(--color-overlay-medium) 68%,var(--color-overlay-soft))}.hero-inner{display:flex;flex-direction:column;align-items:stretch;padding:35px 20px 44px}.hero h1{font-size:clamp(2.35rem,10vw,3.4rem)}.real-game-logo{max-width:128px!important;max-height:195px!important}.hero-ticket{display:none}.hero-tags{margin:16px 0}.hero-actions{gap:10px}.hero-actions .button{flex:1;padding:8px 9px;font-size:.8rem}.paper>section:not(.facts),.page-paper{padding:42px 20px}.facts{padding:25px 20px;gap:20px 12px}.section-head{grid-template-columns:minmax(0,1fr);gap:10px}.mechanics .feature,.feature.reverse{display:flex;flex-direction:column;align-items:stretch;gap:14px}.feature.reverse>div,.feature.reverse figure{order:initial}.thumbs{grid-template-columns:repeat(2,minmax(0,1fr))}.fit>div,.req-grid,.guide-pair{grid-template-columns:minmax(0,1fr)}.download-panel,.download-hero,.end{display:block}.download-panel .button,.download-hero .button,.end .button{margin-top:18px}.subhead{padding:45px 20px 35px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.footer{padding:48px 20px 116px}.footer-inner{display:block}.footer-inner nav,.related{margin-top:24px;display:flex;flex-direction:row;flex-wrap:wrap;gap:8px 16px}.related b{width:100%}.sticky{display:flex;position:fixed;z-index:19;bottom:0;left:0;right:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--color-ink);color:var(--color-paper);align-items:center;justify-content:space-between;gap:10px;box-shadow:0 -3px 10px var(--color-shadow)}.sticky span{font-size:.8rem;font-weight:700}.sticky .button{font-size:.8rem;min-height:42px;padding:6px 12px}.lightbox-bottom [data-caption]{font-size:.75rem}.lightbox button{font-size:.75rem;padding:8px}}
@media(max-width:360px){.hero-actions .button{font-size:.75rem}.sticky span{display:none}.sticky .button{width:100%}.gallery-grid{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.hero-ticket{transform:none}}
.updates .update-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.update-list article{border-top:3px solid var(--color-gold-dark);padding:20px;background:var(--color-paper-dim)}.update-list time{font-size:.78rem;color:var(--color-muted);font-weight:800}.update-list h3{margin:8px 0}.update-list p{margin:0}@media(max-width:640px){.updates .update-list{grid-template-columns:minmax(0,1fr)}}

button:active{transform:translateY(1px)}button:disabled,button[aria-disabled=true]{opacity:.55;cursor:not-allowed}button[data-state=loading]{cursor:progress;opacity:.7}button[data-state=error]{border-color:var(--color-wine)}button[data-state=success]{border-color:var(--color-gold-dark)}
