:root{color-scheme:dark;--bg:#101e24;--ink:#eef5ef;--faint:#aac0bd;--mint:#b2e8c9;--line:#334a4d;--gold:#f1b666;font:16px/1.55 'Segoe UI',system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink)}.wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}a{color:inherit;text-underline-offset:4px}.mast{border-bottom:1px solid var(--line)}.mast-inner,.mast nav,.brand,.actions,.section-head,.player-foot,.card-view figcaption,.footer .wrap{display:flex;align-items:center}.mast-inner{height:76px;justify-content:space-between}.mast nav,.footer .wrap{gap:26px}.mast nav a,.brand{text-decoration:none}.mast nav a{font-size:.95rem;color:#dbe7df}.brand{gap:11px;font-size:1.28rem;font-weight:680;letter-spacing:-.04em}.hero{background:radial-gradient(ellipse at 84% 58%,#25464b 0,transparent 52%)}.eyebrow{font:600 .78rem/1.45 ui-monospace,Consolas,monospace;letter-spacing:.075em}.eyebrow{color:var(--mint);display:flex;align-items:center;gap:9px;margin:0 0 15px}.status{width:8px;height:8px;border-radius:50%;background:var(--mint)}.sep{color:#76928e}.intro h1{font-size:clamp(2.95rem,4.9vw,4.8rem);font-weight:660;line-height:1.04;letter-spacing:-.06em;margin:0}.lede{font-size:1.14rem;color:#c6d8d2;max-width:48ch;margin:22px 0 24px}.actions{gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;border-radius:7px;font-weight:650;padding:12px 18px;text-decoration:none}.primary{background:var(--mint);color:#10302a}.primary:hover{background:#d3f5df}.secondary{border:1px solid #607879;color:var(--ink)}.secondary:hover{background:#253b41}.release,.resources,.player-foot,.card-view figcaption{font-size:.88rem;color:var(--faint)}.release{margin:14px 0 0}.inventory{display:flex;gap:16px;border-left:4px solid #dfa044;background:#1a272b;padding:22px 26px}.inventory-mark,.inventory h2{color:var(--gold)}.inventory-mark{font-size:1.4rem}.inventory h2{font-size:1.06rem;line-height:1.5;margin:0}.inventory p{margin:.35em 0;color:#d8e3dd;max-width:90ch}.inventory a{font-size:.9rem;color:#e7c38d}.section-head{justify-content:space-between;gap:25px;align-items:end;margin:0 0 23px}h2{font-size:clamp(2rem,3.4vw,3.1rem);letter-spacing:-.045em;line-height:1.13;margin:0}.section-head p,.preview p:not(.eyebrow){color:var(--faint);max-width:76ch;margin:.6em 0 0}video{width:100%;height:auto;display:block;aspect-ratio:16/9;background:#0c171b;border:1px solid var(--line);border-radius:9px}.player-foot,.card-view figcaption{justify-content:space-between;gap:12px;margin:14px 0 0}.player-foot select{max-width:100%;font:inherit;background:#182c33;color:var(--ink);border:1px solid var(--line);border-radius:5px;padding:6px}.player-foot label{margin-right:6px}.gallery-section{background:#eef2ec;color:#162c31;padding-block:68px}.gallery-section .eyebrow,.gallery-section .section-head p,.resources{color:#40635b}.gallery{display:grid;grid-template-columns:.86fr 1.14fr;gap:34px;align-items:start}.topics{display:grid}.topics a{padding:14px 12px;text-decoration:none;border-bottom:1px solid #c6d4cc;display:flex;align-items:center;gap:18px;font-size:1.07rem;font-weight:550}.topics a span{font:500 .85rem/1 ui-monospace,Consolas,monospace;color:#516a60}.topics a[aria-current=true],.topics a:hover{background:#dce8dc}.topics a[aria-current=true]{border-left:4px solid #376a55;padding-left:8px}.card-view{margin:0;padding:20px;border-radius:10px;background:#dfe7df}.card-view img{display:block;width:auto;height:auto;max-width:100%;max-height:610px;margin:auto;box-shadow:0 4px 16px #28433c26}.card-view figcaption{color:#38534a}.resources{margin-block:20px 0}.preview{padding-block:65px}.preview .button{margin-top:20px}.footer{border-top:1px solid var(--line)}.footer .wrap{padding-block:25px}.footer .brand{margin-right:auto}.skip{position:absolute;left:12px;top:-80px;background:#fff;color:#111;padding:8px;z-index:2}.skip:focus{top:8px}a:focus-visible,select:focus-visible,video:focus-visible{outline:3px solid #ce963e;outline-offset:4px}
@media(max-width:850px){.gallery{grid-template-columns:1fr 1.15fr;gap:17px}.topics a{font-size:1rem;padding-block:12px}.section-head{align-items:start;flex-direction:column;gap:10px} .gallery-section,.preview{padding-block:48px}}
@media(max-width:600px){.wrap{width:calc(100% - 32px)}.mast-inner{height:auto;min-height:68px;gap:10px;flex-wrap:wrap;padding-block:9px}.mast nav,.footer .wrap{gap:13px}.mast nav a{font-size:.85rem}.brand{font-size:1.08rem}.brand img{width:27px;height:27px}.hero h1{font-size:clamp(2.6rem,10vw,3.55rem)}.lede{font-size:1rem}.button{padding:11px 13px;gap:8px}.inventory{padding:16px;gap:9px}.inventory-mark{display:none}.gallery{grid-template-columns:1fr}.topics{grid-template-columns:1fr 1fr;gap:0 8px}.topics a{font-size:.86rem;gap:7px;min-height:48px;line-height:1.25}.topics a span{font-size:.75rem}.player-foot{align-items:start;flex-direction:column}.player-foot label{display:block}.footer .wrap{flex-wrap:wrap;font-size:.87rem}.card-view{padding:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.hero-inner {
  display:grid; grid-template-columns:minmax(0, .72fr) minmax(0, 1.28fr);
  grid-template-areas:"intro film" "downloads film"; gap:22px clamp(24px,3vw,46px);
  padding-block:clamp(36px,5vw,74px);
}
.intro {grid-area:intro;align-self:end}
.intro h1 {font-size:clamp(2.7rem,4.2vw,4rem)}
.intro .lede {margin:18px 0 0;max-width:38ch}
.downloads {grid-area:downloads;align-self:start}
.hero-film {grid-area:film;min-width:0;align-self:center;scroll-margin-top:20px}
.film-frame {position:relative;box-shadow:0 18px 45px #07131855;border-radius:9px}
#play-guide:not([hidden]) {
  position:absolute;inset:0;display:flex;align-items:flex-end;padding:0 5.4% 9%;
  font:inherit;color:#173530;border:0;background:transparent;cursor:pointer;border-radius:9px;
}
.play-pill {
  display:inline-flex;align-items:center;gap:.65em;background:#d2f4d9;color:#173530;
  padding:.68em 1em;border-radius:99px;font-weight:660;line-height:1.25;
}
#play-guide:hover .play-pill {background:#effbf0}
#play-guide:focus-visible {outline:3px solid var(--gold);outline-offset:4px}
.runtime {font:600 .82em ui-monospace,Consolas,monospace;border-left:1px solid #64907c;padding-left:.72em}
.player-foot {flex-wrap:wrap}
.player-foot select {width:min(22ch,100%)}
.inventory {margin-bottom:clamp(36px,5vw,68px)}
@media(max-width:850px) {
  .hero-inner {grid-template-columns:1fr;grid-template-areas:"intro" "film" "downloads";gap:24px;padding-block:32px}
  .intro .lede {max-width:54ch}
}
@media(max-width:600px) {
  .intro h1 {font-size:clamp(2.6rem,10vw,3.55rem)}
  .play-pill {font-size:.9rem}
  .hero-film .player-foot {flex-direction:row;align-items:center;gap:8px}
  .player-foot a {margin-left:auto}
}
.card-stack {min-width:0}
.card-view {display:none;scroll-margin-block-start:16px}
.card-view[data-default], .card-view:target {display:block}
.card-view:target ~ .card-view[data-default] {display:none}
.card-view figcaption {align-items:baseline;margin:0 0 12px}
.card-view figcaption strong {font-size:1.1rem;color:#193a32}
.card-view figcaption span {white-space:nowrap;font:600 .85rem ui-monospace,Consolas,monospace}
.card-original {display:block;width:fit-content;max-width:100%;margin:auto;cursor:zoom-in}
.card-original img {height:auto;aspect-ratio:4/5}
.card-files {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;color:#38534a;font-size:.9rem}
.gallery:not(:has(.card-view:target)) .topics a[href="#card-01"],
.gallery:has(#card-01:target) .topics a[href="#card-01"],
.gallery:has(#card-02:target) .topics a[href="#card-02"],
.gallery:has(#card-03:target) .topics a[href="#card-03"],
.gallery:has(#card-04:target) .topics a[href="#card-04"],
.gallery:has(#card-05:target) .topics a[href="#card-05"],
.gallery:has(#card-06:target) .topics a[href="#card-06"],
.gallery:has(#card-07:target) .topics a[href="#card-07"],
.gallery:has(#card-08:target) .topics a[href="#card-08"],
.gallery:has(#card-09:target) .topics a[href="#card-09"] {background:#dce8dc;border-left:4px solid #376a55;padding-left:8px}
@media(max-width:760px) {
  .gallery {grid-template-columns:minmax(0,1fr);grid-template-areas:"topics" "card"}
  .card-stack {grid-area:card}
  .topics {grid-area:topics;grid-template-columns:1fr 1fr;gap:0 8px}
}
