.gaming-page {
    --parts-navy:#243348;
    --parts-blue:#51438d;
    --parts-amber:#e96549;
    --parts-ink:#1d2634;
    --parts-muted:#596477;
    --parts-paper:#eef1f5;
    --parts-warm:#f8f9fb;
    --parts-line:#cbd2dc;
    background:#eef1f5;
}

.gaming-page .parts-hero {
    position:relative;
    overflow:hidden;
    background:#243348;
}
.gaming-page .parts-hero::after {
    position:absolute;
    right:-8rem;
    bottom:-12rem;
    width:34rem;
    height:34rem;
    content:"";
    border:6rem solid rgba(119,105,187,.16);
    border-radius:50%;
    pointer-events:none;
}
.gaming-page .parts-hero-grid { position:relative; z-index:1; grid-template-columns:minmax(0,.92fr) minmax(430px,1.08fr); }
.gaming-page .parts-kicker { color:#f5a38e; font-family:"IBM Plex Sans",sans-serif; letter-spacing:.13em; }
.gaming-page .parts-hero h1 { max-width:11ch; font-family:"Sora",sans-serif; font-size:clamp(2.75rem,5.3vw,4.8rem); font-weight:700; letter-spacing:-.045em; line-height:.98; }
.gaming-page .parts-hero-copy { color:#dbe2ec; }
.gaming-page .parts-search { border-radius:12px; }
.gaming-page .parts-search input { border-radius:9px 0 0 9px; }
.gaming-page .parts-search button,
.gaming-page .parts-button { color:#fff; background:#c94b32; border-color:#a73c28; border-radius:8px; }
.gaming-page .parts-search button:hover,
.gaming-page .parts-button:hover { background:#b8442f; }

.game-rail {
    display:grid;
    grid-template-columns:1.15fr .85fr;
    grid-template-rows:1fr 1fr;
    gap:.75rem;
    min-height:31rem;
    padding:.75rem;
    background:rgba(238,241,245,.1);
    border:1px solid rgba(238,241,245,.24);
    border-radius:24px;
    box-shadow:0 28px 70px rgba(8,14,24,.3);
    backdrop-filter:blur(12px);
}
.game-rail figure { position:relative; min-width:0; margin:0; overflow:hidden; background:#151b27; border-radius:16px; }
.game-rail figure:first-child { grid-row:1 / 3; }
.game-rail img { width:100%; height:100%; object-fit:cover; }
.game-rail figure:first-child img { object-position:54% 66%; }
.game-rail figure:nth-child(2) img { object-position:center; }
.game-rail figure:nth-child(3) img { object-position:center; }
.game-slot {
    position:absolute;
    left:.65rem;
    bottom:.65rem;
    padding:.35rem .55rem;
    color:#fff;
    background:rgba(18,24,35,.82);
    border:1px solid rgba(255,255,255,.22);
    border-radius:999px;
    font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;
    font-size:.7rem;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.gaming-page .parts-safety { background:#f8f9fb; border-color:#cbd2dc; }
.gaming-page .parts-safety-mark { background:#51438d; border-radius:50%; }
.gaming-page .parts-safety-link,
.gaming-page .parts-card-action,
.gaming-page .parts-grid-state a { color:#433676; }
.gaming-page .parts-section { border-color:#cbd2dc; }
.gaming-page .parts-index { color:#6b3f92; font-family:ui-monospace,"SFMono-Regular",Consolas,monospace; letter-spacing:.1em; }
.gaming-page .parts-section-head h2,
.gaming-page .parts-missing h2,
.gaming-page .parts-step h3 { font-family:"Sora",sans-serif; letter-spacing:-.03em; }
.gaming-page .parts-section-head h2 { font-size:clamp(2rem,4vw,3.5rem); }
.gaming-page .parts-card { border-radius:14px; box-shadow:0 12px 28px rgba(36,51,72,.06); }
.gaming-page .parts-card-media { background:#dde2e9; }
.gaming-page .parts-card-badge { background:#51438d; border-radius:999px; }
.gaming-page .parts-card-action::after { color:#e96549; }

.game-platform-strip { color:#fff; background:#51438d; }
.game-platform-strip .makes-inner { align-items:center; }
.game-platform-strip .make-chip { color:#fff; border-color:rgba(255,255,255,.45); border-radius:999px; }
.game-platform-strip .make-chip:hover { color:#243348; background:#fff; border-color:#fff; }
.gaming-page .parts-process { background:#e1e5eb; }
.gaming-page .parts-process-layout { grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr); }
.gaming-page .parts-process-photo { border:0; border-radius:24px; box-shadow:12px 12px 0 #51438d; }
.gaming-page .parts-process-photo img { object-position:center; }
.gaming-page .parts-step span {
    display:grid;
    grid-row:1 / span 2;
    width:2.2rem;
    height:2.2rem;
    place-items:center;
    align-self:start;
    color:#fff;
    background:#51438d;
    border-radius:50%;
}
.gaming-page .parts-missing { background:#243348; border-radius:20px; }
.gaming-page .parts-missing .parts-button { color:#243348; background:#fff; border-color:#fff; }
.gaming-page .parts-missing .parts-button:hover { color:#fff; background:#51438d; border-color:#51438d; }

.gaming-boundary {
    margin-top:1rem;
    padding:.9rem 1rem;
    color:#414d60;
    background:#e1e5eb;
    border-left:4px solid #51438d;
    border-radius:0 8px 8px 0;
    font-size:.9rem;
    line-height:1.55;
}

@media (max-width:900px) {
    .gaming-page .parts-hero-grid { grid-template-columns:1fr; }
    .game-rail { min-height:26rem; }
}
@media (max-width:560px) {
    .game-rail { grid-template-columns:1fr 1fr; grid-template-rows:17rem 10rem; min-height:0; padding:.5rem; border-radius:18px; }
    .game-rail figure { border-radius:12px; }
    .game-rail figure:first-child { grid-column:1 / 3; grid-row:auto; }
    .gaming-page .parts-hero h1 { font-size:clamp(2.55rem,13vw,3.7rem); }
}

@media (prefers-reduced-motion:reduce) {
    .gaming-page .parts-card { transition:none; }
}
