/* Original game covers: illustration and name, with no extra labels. */
.game-grid{gap:16px;grid-template-columns:repeat(5,minmax(0,1fr))}.game-card{display:block;padding:0;aspect-ratio:.76;border:0;border-radius:9px;isolation:isolate;overflow:hidden;background:#192d40}
.game-card .artwork{position:absolute;inset:-2% -5% 13%;display:flex;align-items:center;justify-content:center;width:auto;height:auto;margin:0}
.game-card .artwork .game-emblem,.game-card.pilkki .game-emblem{width:100%;height:100%;max-width:none;max-height:none;padding:0;object-fit:contain;filter:none;transform:none;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.game-card:hover .artwork .game-emblem{transform:scale(1.035)}
.game-card .card-title{position:absolute;left:8px;right:8px;bottom:0;min-height:18%;margin:0;display:flex;align-items:center;justify-content:center;z-index:2;pointer-events:none}
.game-card .card-title h3{font-family:Manrope,Arial,sans-serif;text-align:center;font-size:clamp(19px,2.15vw,34px);font-weight:800;letter-spacing:-1.1px;line-height:1.1;text-transform:uppercase;margin:0;color:#f3f8ff}
.game-card.limbo .artwork{inset:-7% -3% 14%}.game-card.pilkki .artwork{inset:-1% -3% 16%}
@media(max-width:1150px){.game-grid{gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.game-card .card-title h3{font-size:24px}}
@media(max-width:900px){.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.game-card{aspect-ratio:.8}.game-card .card-title h3{font-size:30px}}
@media(max-width:650px){.game-grid{gap:12px}.game-card{aspect-ratio:.76;border-radius:7px}.game-card .card-title h3{font-size:23px;letter-spacing:-.8px}.game-card .card-title{min-height:19%}}

/* Northern night: a quiet, short arrival through aurora and fractured ice. */
#site-loader{background:#070f1a;isolation:isolate;transition:opacity .52s ease,visibility .52s ease;overflow:hidden}
#site-loader.leaving{opacity:0;visibility:hidden;transform:none;filter:none}
.northern-sky{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.northern-aurora{position:absolute;left:-20%;top:-18%;width:140%;height:63%;filter:blur(28px);opacity:0;transform-origin:center;will-change:transform,opacity;mix-blend-mode:screen;animation:northern-light 8s ease-in-out infinite alternate}
.aurora-a{background:linear-gradient(115deg,transparent 12%,#1585bd16 30%,#3be5e957 47%,#1689ff20 60%,transparent 76%);clip-path:polygon(0 20%,18% 0,44% 33%,69% 8%,100% 32%,100% 55%,69% 27%,44% 56%,18% 23%,0 42%)}
.aurora-b{top:-5%;left:-15%;background:linear-gradient(105deg,transparent 16%,#36b8cf30 39%,#5d8aff3d 56%,transparent 82%);clip-path:polygon(0 11%,30% 32%,61% 1%,100% 40%,100% 57%,61% 20%,30% 49%,0 27%);animation-delay:-2s;animation-duration:10s}
.aurora-c{top:-30%;background:linear-gradient(100deg,transparent 25%,#8be6e029 50%,#2c95fa18 67%,transparent 85%);clip-path:polygon(0 40%,33% 14%,68% 32%,100% 5%,100% 24%,68% 46%,33% 34%,0 60%);animation-delay:-4s}
.northern-sky .northern-aurora{clip-path:none;border-radius:50%;filter:blur(48px);mask-image:linear-gradient(transparent,#000 35%,#000 65%,transparent)}
.northern-stars{position:absolute;inset:0 0 32%;opacity:.55;background-image:radial-gradient(circle at 13% 23%,#b7dcff 0 1px,transparent 1.5px),radial-gradient(circle at 78% 18%,#d7eaff 0 1px,transparent 1.6px),radial-gradient(circle at 34% 36%,#86a4c3 0 .8px,transparent 1.3px),radial-gradient(circle at 62% 31%,#8bb0ca 0 .8px,transparent 1.4px),radial-gradient(circle at 89% 46%,#8bb0ca 0 1px,transparent 1.6px),radial-gradient(circle at 5% 55%,#d7eaff 0 .7px,transparent 1.3px)}
.northern-mountains{position:absolute;left:0;bottom:0;width:100%;height:64%;stroke:none;stroke-width:0;animation:northern-land 1.3s cubic-bezier(.16,1,.3,1) both}
.northern-frost{position:absolute;bottom:0;left:0;right:0;height:18%;background:#0b1a29;border-top:1px solid #1b3d51;transform:skewY(-2deg);transform-origin:bottom right;opacity:.65}
.northern-crack{position:absolute;left:0;bottom:7%;width:100%;height:80px;stroke:#5ba9cb;stroke-width:1;fill:none;opacity:.35;stroke-dasharray:1400;stroke-dashoffset:1400;animation:northern-ice 1.9s .2s cubic-bezier(.3,.6,.3,1) forwards}
.northern-snow{position:absolute;top:-10px;left:var(--x);width:var(--size);height:var(--size);background:#d1e9f5;border-radius:50%;opacity:.22;animation:northern-drift var(--duration) var(--delay) linear infinite}
.northern-brand{position:absolute;left:50%;top:43%;width:min(300px,65vw);transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;z-index:2}
.northern-emblem{width:110px;height:70px;margin-bottom:22px;animation:northern-brand-in .85s ease-out both}.northern-emblem svg{display:block;width:100%;height:100%;fill:none;stroke:#84c9ed;stroke-width:2.5;stroke-linejoin:round}.north-outline{stroke-dasharray:620;stroke-dashoffset:620;animation:northern-mark 1.2s .1s ease forwards}.northern-emblem .north-snowcap{fill:#c0edff;stroke:none;opacity:0;animation:northern-brand-in .5s .6s forwards}
.northern-logo{width:100%;height:auto;display:block;mix-blend-mode:screen;animation:northern-brand-in .75s .2s both}
.northern-progress{width:110px;height:2px;margin-top:31px;background:#1b3246;overflow:hidden;border-radius:1px}.northern-progress>span{height:100%;display:block;width:100%;transform:scaleX(.02);transform-origin:left;background:#8dd9ff;animation:northern-progress 1.6s cubic-bezier(.2,.6,.3,1) forwards}
#site-loader #skip-loader{bottom:30px;padding:10px 15px;background:transparent;border:1px solid #294458;border-radius:5px;color:#8ba9be;font-size:10px;letter-spacing:.2px;z-index:3;transition:color .2s,border-color .2s}
#site-loader #skip-loader:hover{color:#d5f0ff;border-color:#5d99b9}
@keyframes northern-light{0%{opacity:.35;transform:translate(-2%,0) rotate(-5deg) scale(1)}100%{opacity:.85;transform:translate(3%,7%) rotate(4deg) scale(1.09)}}
@keyframes northern-land{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes northern-mark{to{stroke-dashoffset:0}}
@keyframes northern-brand-in{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@keyframes northern-ice{to{stroke-dashoffset:0}}
@keyframes northern-drift{to{transform:translate(65px,110vh)}}
@keyframes northern-progress{to{transform:scaleX(1)}}
@media(max-width:650px){.northern-brand{top:42%;width:230px}.northern-emblem{width:90px;height:60px;margin-bottom:19px}.northern-mountains{width:200%;left:-50%;height:56%}.northern-aurora{filter:blur(18px);height:56%;width:180%;left:-40%}.northern-crack{bottom:9%;height:60px}}
@media(prefers-reduced-motion:reduce){.northern-sky *,.northern-brand *{animation:none!important}.northern-aurora{opacity:.45}.north-outline,.northern-crack{stroke-dashoffset:0}.northern-emblem .north-snowcap{opacity:1}.northern-progress>span{transform:none}.northern-snow{display:none}#site-loader{transition:none}}
