.games-section.games-projects{display:block}
.games-projects .game-heading{margin-bottom:40px}
.games-projects .game-heading h2{font-size:3.5rem;letter-spacing:0}
.game-project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:28px}
.game-card{display:block;border:1px solid var(--border);border-radius:4px;overflow:hidden;background:var(--card);transition:transform .3s,border-color .3s,box-shadow .3s}
.game-card-art{display:block;position:relative;aspect-ratio:4/5;overflow:hidden;background:#000}
.game-card-art>img{width:100%;height:100%;object-fit:contain;transition:transform .5s}
.game-card-arrow{position:absolute;top:16px;right:16px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#0b1419e8;border:1px solid #ffffff40;border-radius:4px;transition:color .3s,transform .3s}
.game-card-copy{display:block;padding:26px}
.game-card h3{font-size:1.9rem;letter-spacing:0;line-height:1.2}
.game-card-meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.8rem;color:var(--muted-foreground);margin-top:16px}
.game-card-meta>span{border:1px solid #56747a;border-radius:3px;padding:3px 8px}
@media(hover:hover){a.game-card:hover{transform:translateY(-6px);border-color:#78e4de80;box-shadow:0 16px 32px #0003}a.game-card:hover .game-card-art>img{transform:scale(1.025)}a.game-card:hover .game-card-arrow{color:var(--primary);transform:translate(2px,-2px)}}
.game-card-teaser .game-card-art{display:flex;align-items:center;justify-content:center;background:var(--card)}
.game-card-teaser .game-card-art>img{width:65%;height:65%;opacity:.75}
.game-card:focus-visible{border-color:var(--primary)}
.game-project-page .eyebrow{letter-spacing:0}
.game-opening{padding-block:58px 36px;display:flex;align-items:end;justify-content:space-between;gap:30px}
.game-opening h1{font-size:3.5rem;letter-spacing:0;max-width:760px;margin-top:20px}
.game-opening .article-back{margin-bottom:24px}
.game-opening .button{flex-shrink:0;gap:12px;white-space:nowrap}
.media-gallery{margin-bottom:65px}
.gallery-stage{height:520px;display:flex;align-items:center;justify-content:center;background:#030606;border:1px solid var(--border);border-radius:4px;overflow:hidden;touch-action:pan-y pinch-zoom}
.media-slide{width:100%;height:100%;margin:0;display:flex;align-items:center;justify-content:center}
.media-slide[hidden]{display:none}
.media-image-link{display:flex;align-items:center;justify-content:center;max-width:100%;height:100%;cursor:zoom-in}
.media-slide img,.media-slide video{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.media-slide video{width:100%;height:100%}
.gallery-toolbar{display:flex;align-items:center;gap:12px;padding-block:16px;min-height:76px}
.gallery-caption{flex:1;min-width:0;font-size:.9rem;color:#bac7cb;line-height:1.4}
.gallery-count{font-size:.8rem;white-space:nowrap;color:#adb9bd;font-variant-numeric:tabular-nums}
.gallery-icon-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:42px;height:42px;padding:0;background:transparent;border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:color .2s,border-color .2s,background .2s}
.gallery-icon-button:hover{color:var(--primary);border-color:#78e4de80;background:#ffffff08}
.gallery-icon-button:disabled{opacity:.35;cursor:default}
.gallery-icon-button svg{width:20px;height:20px}
.gallery-thumbnails{display:flex;position:relative;gap:10px;overflow-x:auto;padding:4px 2px 12px;scrollbar-width:thin;scrollbar-color:#456067 transparent}
.gallery-thumbnail{position:relative;display:flex;align-items:center;justify-content:center;flex:0 0 70px;width:70px;height:86px;padding:3px;background:#030606;border:1px solid var(--border);border-radius:3px;cursor:pointer}
.gallery-thumbnail img{width:100%;height:100%;object-fit:contain}
.gallery-thumbnail[aria-current="true"]{border:2px solid var(--primary);background:#17272e}
.gallery-thumbnail:hover{border-color:var(--primary)}
.gallery-thumbnail:focus-visible{outline-offset:0}
.video-thumbnail svg{position:absolute;width:24px;height:24px;filter:drop-shadow(0 1px 4px #000)}
.media-lightbox{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:60px 76px 18px;border:0;background:transparent;color:var(--foreground);overflow:hidden}
.media-lightbox::backdrop{background:#000e}
.lightbox-content{height:100%}
.media-lightbox .gallery-viewer{height:100%;display:flex;flex-direction:column}
.media-lightbox .gallery-stage{flex:1;min-height:0;height:auto;background:transparent;border:0;overflow:visible}
.media-lightbox .media-image-link{cursor:default}
.media-lightbox .gallery-toolbar{flex-shrink:0;padding-block:12px;min-height:66px}
.media-lightbox [data-media-expand]{display:none}
.lightbox-close{position:absolute;top:14px;right:20px;background:#0b1419}
.game-about{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:80px;padding-bottom:85px}
.game-about h2{font-size:2rem;letter-spacing:0;margin-bottom:24px}
.game-description{max-width:760px;color:#bac7cb;font-size:1.0625rem;line-height:1.9}
.game-facts{margin:0;border-top:1px solid var(--border)}
.game-facts>div{display:flex;justify-content:space-between;gap:16px;padding-block:14px;border-bottom:1px solid var(--border);font-size:.875rem}
.game-facts dt{color:#a9b9bd}.game-facts dd{margin:0;text-align:right}
.game-related{margin-top:30px}
.game-related .text-link{margin-left:0}
@media(min-width:1700px){.gallery-stage{height:600px}}
@media(max-width:1000px){.game-opening{align-items:start;flex-direction:column}.game-about{gap:40px;grid-template-columns:minmax(0,1fr) 240px}}
@media(max-width:650px){.games-projects .game-heading h2{font-size:2.6rem}.game-opening{padding-block:36px 28px;gap:24px}.game-opening h1{font-size:2.6rem}.gallery-stage{height:340px}.gallery-toolbar{gap:8px;flex-wrap:nowrap}.gallery-thumbnail{flex-basis:60px;width:60px;height:76px}.media-gallery{margin-bottom:44px}.game-about{grid-template-columns:1fr;gap:36px;padding-bottom:60px}.game-description{font-size:1rem}.media-lightbox{padding:60px 12px 12px}.media-lightbox .gallery-toolbar{flex-wrap:nowrap}.media-lightbox .gallery-caption{flex-basis:auto;order:0}.media-lightbox .gallery-count{order:1}.media-lightbox .gallery-icon-button{order:2}.media-lightbox .gallery-caption{font-size:.8rem}.lightbox-close{right:12px}}
@media(max-width:360px){.game-opening h1{font-size:2.2rem}.gallery-stage{height:300px}.media-lightbox .gallery-caption{display:none}}
@media(prefers-reduced-motion:reduce){.game-card,.game-card-art>img,.game-card-arrow{transition:none}.game-card:hover,.game-card:hover .game-card-art>img,.game-card:hover .game-card-arrow{transform:none}}
