/* ===== games: screenshot gallery + features ===== */
.gallery .slides{position:absolute;inset:0;overflow:hidden;background:var(--ink)}
.gallery .slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity 1s ease,transform 6.5s linear}
.gallery .slide.on{opacity:1;transform:scale(1)}
.gal-ui{position:absolute;left:20px;right:20px;bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:2}
.game-media.gallery .gal-ui .cap{position:static}
.gal-ctrl{display:flex;align-items:center;gap:2px;background:rgba(10,12,12,.8)}
.gal-btn{width:38px;height:34px;display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--sage);cursor:pointer}
.gal-btn:hover,.gal-btn:focus-visible{background:var(--sage);color:var(--dg)}
.gal-count{font-size:11px;font-weight:600;letter-spacing:.2em;color:var(--sage);padding:0 6px;min-width:70px;text-align:center}
.gal-count b{color:var(--off);font-weight:600}
.gal-bar{position:absolute;left:0;right:0;bottom:0;height:2px;background:rgba(174,195,176,.18);z-index:2;overflow:hidden}
.gal-bar i{display:block;height:100%;width:100%;background:var(--red);transform:scaleX(0);transform-origin:left}
.gal-bar i.run{transform:scaleX(1);transition:transform var(--gal-t,6s) linear}
@media (max-width:720px){
  .gal-ui{left:12px;right:12px;bottom:12px;justify-content:flex-end}
  .game-media.gallery .gal-ui .cap{display:none}
}
@media (prefers-reduced-motion:reduce){ .gallery .slide{transform:none!important} }
/* slim info column: label, name, description, buttons, centred against the gallery */
.game-info{justify-content:center;gap:22px}
.game-info p{max-width:520px}
.game-ctas{margin-top:14px}

/* ===== every section fills the screen below the header (desktop) ===== */
@media (min-width:900px) and (min-height:560px){
  .games,.about,.press{min-height:calc(100vh - 83px);min-height:calc(100svh - 83px);display:flex;flex-direction:column;justify-content:center}
  .games > .wrap,.about > .wrap,.press > .wrap{width:100%}
  .games{padding-block:56px}
  .game-media{min-height:clamp(380px,calc(100svh - 360px),620px)}
  .about{padding-block:64px}
  .about .wrap{gap:40px}
}
/* ===== contact form feedback + press kit "soon" rows ===== */
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.form-note{grid-column:1 / -1;max-width:none!important;margin:0;padding:12px 14px;font-size:14px;line-height:1.5;border:1px solid rgba(174,195,176,.3);color:var(--off)}
.form-note[hidden]{display:none}
.form-note.ok{border-color:var(--sage);background:rgba(174,195,176,.1)}
.form-note.err{border-color:var(--red);background:rgba(229,30,14,.1)}
.form-note a{text-decoration:underline}
.form .actions .btn:disabled{opacity:.7;cursor:wait}
.prow.soon{pointer-events:none;opacity:.55}
.prow.soon .m::after{content:"SOON";margin-left:4px;font-size:10px;letter-spacing:.2em;color:var(--mid)}
.prow.soon .m svg{display:none}
.btn-d.soon{pointer-events:none;opacity:.55}
/* ===== hero: cleaner start (no stats row), smaller Scavland logo; header without Play now ===== */
.hud{display:none}
.hero-inner{gap:0}
.hero-logo img{width:clamp(225px,31.5vw,484px)}
@media (min-width:2200px){ .hero-logo img{width:540px} }
@media (max-width:720px){ .hero-logo img{width:min(262px,75%)} }
.head-right > .btn,.mobile-panel .row > .btn{display:none}
