/* OpenSC2K Remaster story page. Uses the site's self-hosted fonts and palette. */
@font-face{font-family:'DM Sans';font-weight:400 700;font-display:swap;src:url(/assets/fonts/font-1.woff2) format('woff2')}
@font-face{font-family:'DM Serif Display';font-weight:400;font-display:swap;src:url(/assets/fonts/font-5.woff2) format('woff2')}
@font-face{font-family:'DM Serif Display';font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/font-3.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-weight:500;font-display:swap;src:url(/assets/fonts/font-15.woff2) format('woff2')}

:root{--bg:#f6f3ed;--paper:#fffcf6;--ink:#292b25;--muted:#62645d;--accent:#c34c32;--line:rgba(40,45,38,.18);--display:'DM Serif Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--mono:'IBM Plex Mono',monospace;color-scheme:light}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1.0625rem/1.6 var(--sans)}
img,video{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration-color:var(--accent);text-underline-offset:.2em}
a:focus-visible,summary:focus-visible,video:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
code{font:500 .85em var(--mono);overflow-wrap:anywhere}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--paper);padding:.5rem 1rem;z-index:2}

.top,.foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:72rem;margin:0 auto;padding:1.25rem 1.5rem}
.back{font:500 .8rem var(--mono);text-transform:uppercase;letter-spacing:.06em;text-decoration:none}
.back::before{content:'← '}
main{max-width:72rem;margin:0 auto;padding:0 1.5rem}
section{padding:3.5rem 0;border-top:1px solid var(--line)}
section.hero{border-top:0;padding-top:2.5rem}

.eyebrow,.label{font:500 .78rem/1.4 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0 0 1rem}
.label{display:flex;justify-content:space-between;gap:1rem}.label span:last-child{color:var(--muted);text-align:right}
h1,h2{font-family:var(--display);font-weight:400;line-height:1.05;margin:0 0 1.25rem}
h1{font-size:clamp(2.6rem,7vw,5.2rem);max-width:14ch}
h2{font-size:clamp(1.9rem,4vw,2.9rem)}
h1 em,h2 em{color:var(--accent)}
h3{font-size:1.15rem;margin:0 0 .75rem}
.lede{font-size:1.2rem;max-width:40rem;color:var(--muted)}
.actions,.files{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;margin:1.75rem 0}
.button{display:inline-block;background:var(--ink);color:var(--paper);padding:.8rem 1.2rem;border-radius:3px;text-decoration:none;font-weight:600}
.button:hover{background:var(--accent)}
.button.secondary{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.button.secondary:hover{background:var(--paper)}
.text-link{font-weight:600}

.film figure{margin:0}
.film video{width:100%;background:#181915;border-radius:3px}
.film figcaption{max-width:46rem;color:var(--muted);margin-top:1rem}
.beats{padding-left:1.25rem}.beats strong{color:var(--ink)}

.pair{margin:0 0 3rem}
.pair-grid{display:grid;grid-template-columns:1fr;gap:1rem}
.pair figure{margin:0}
.pair figcaption{font:500 .8rem var(--mono);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.4rem}
.pair img{width:100%;border-radius:3px;background:#181915}
.pair a.full{display:block;cursor:zoom-in;border-radius:3px}
.pair a.full:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.pair p{color:var(--muted);max-width:44rem}
@media (min-width:760px){.pair-grid{grid-template-columns:1fr 1fr}}

.changes dl{display:grid;gap:1.5rem 2.5rem;margin:0}
.changes dt{font-weight:650}.changes dd{margin:.25rem 0 0;color:var(--muted)}
@media (min-width:760px){.changes dl{grid-template-columns:1fr 1fr}}

.notice{background:var(--paper);border-left:3px solid var(--accent);padding:1rem 1.25rem;border-radius:3px;max-width:46rem}
.notice p{margin:0 0 .5rem}.notice ul{margin:0;padding-left:1.2rem}
.small{font-size:.92rem;color:var(--muted)}
.download ol{max-width:46rem;padding-left:1.25rem}
.download li{margin-bottom:.5rem}

.credit{font-family:var(--display);font-size:clamp(1.4rem,3vw,1.9rem);line-height:1.25;margin:0 0 .5rem}
.credits p:last-child{color:var(--muted);max-width:46rem;margin-top:1.5rem}
.foot{border-top:1px solid var(--line);color:var(--muted);font-size:.9rem}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
