.nv-mm {
    --mm-bg: #071126;
    --mm-panel: rgba(9, 25, 57, 0.76);
    --mm-panel-strong: rgba(8, 19, 44, 0.92);
    --mm-line: rgba(95, 208, 255, 0.22);
    --mm-cyan: #57d9ff;
    --mm-cyan-soft: #9cecff;
    --mm-blue: #3b6dff;
    --mm-gold: #ffd04f;
    --mm-text: #eef7ff;
    --mm-muted: rgba(226, 241, 255, 0.78);
    --mm-shadow: 0 26px 80px rgba(0, 10, 36, 0.55);
    position: relative;
    overflow: clip;
    background:
        radial-gradient(circle at top left, rgba(57, 118, 255, 0.18), transparent 34%),
        radial-gradient(circle at top right, rgba(255, 208, 79, 0.12), transparent 30%),
        linear-gradient(180deg, #040b18 0%, #071126 38%, #08142c 100%);
    color: var(--mm-text);
}
.nv-mm__backdrop,.nv-mm__motes,.nv-mm__grid-glow,.nv-mm__orb{position:absolute;inset:0;pointer-events:none}
.nv-mm__shell{position:relative;z-index:1;width:min(1240px,calc(100% - 32px));margin:0 auto;padding:40px 0 120px}
.nv-mm__orb{filter:blur(30px);opacity:.65}.nv-mm__orb--cyan{inset:110px auto auto -120px;width:340px;height:340px;border-radius:999px;background:radial-gradient(circle,rgba(87,217,255,.32) 0%,rgba(87,217,255,0) 72%)}.nv-mm__orb--gold{inset:240px -110px auto auto;width:310px;height:310px;border-radius:999px;background:radial-gradient(circle,rgba(255,208,79,.26) 0%,rgba(255,208,79,0) 74%)}
.nv-mm__grid-glow{background:linear-gradient(rgba(86,217,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(86,217,255,.04) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(180deg,rgba(0,0,0,.9),transparent 82%);opacity:.35}
.nv-mm__breadcrumb{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin-bottom:24px;color:var(--mm-muted);font-size:.96rem}.nv-mm__breadcrumb a{display:inline-flex;align-items:center;gap:.45rem;color:var(--mm-cyan-soft);text-decoration:none}
.nv-mm-hero{position:relative;display:grid;grid-template-columns:minmax(0,390px) minmax(0,1fr);gap:32px;align-items:center;margin-bottom:68px}.nv-mm-hero__copy{position:relative;z-index:2}
.nv-mm-hero__eyebrow,.nv-mm-heading p,.nv-mm-experiment__label,.nv-mm-memory-card__topline span,.nv-mm-memory-card__topline small,.nv-mm-hero__chips span{letter-spacing:.18em;text-transform:uppercase}
.nv-mm-hero__eyebrow{margin:0 0 14px;color:var(--mm-gold);font-size:.78rem;font-weight:800}.nv-mm-hero h1{margin:0;font-size:clamp(3.2rem,6vw,5.6rem);line-height:.95;text-shadow:0 0 28px rgba(87,217,255,.18)}.nv-mm-hero__tagline{margin:16px 0 14px;max-width:28ch;font-size:clamp(1.18rem,2vw,1.45rem);color:var(--mm-cyan-soft)}.nv-mm-hero__aside{margin:0;color:var(--mm-muted);font-size:1rem;line-height:1.75}
.nv-mm-hero__chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.nv-mm-hero__chips span{padding:9px 14px;border-radius:999px;border:1px solid rgba(104,213,255,.24);background:rgba(6,18,41,.72);color:rgba(227,244,255,.9);font-size:.7rem;font-weight:700;box-shadow:0 14px 36px rgba(0,0,0,.24)}
.nv-mm-hero__actions,.nv-mm-finale__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}
.nv-mm-button,.nv-mm-inline-link{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:999px;border:1px solid rgba(122,217,255,.26);padding:.95rem 1.35rem;background:rgba(8,21,47,.84);color:var(--mm-text);font-weight:700;text-decoration:none;box-shadow:0 18px 44px rgba(0,5,22,.34);transition:transform 160ms ease,border-color 160ms ease,background 160ms ease}.nv-mm-button:hover,.nv-mm-button:focus-visible,.nv-mm-inline-link:hover,.nv-mm-inline-link:focus-visible{transform:translateY(-2px);border-color:rgba(255,208,79,.48);background:rgba(12,30,63,.9)}.nv-mm-button--primary{background:linear-gradient(135deg,rgba(55,110,255,.92),rgba(54,206,255,.88));border-color:rgba(120,228,255,.52);color:#fff}
.nv-mm-hero__stage{position:relative;min-height:760px;border-radius:34px;overflow:hidden;border:1px solid rgba(89,201,255,.2);background:radial-gradient(circle at 54% 10%,rgba(255,255,255,.28),transparent 22%),radial-gradient(circle at 24% 24%,rgba(61,136,255,.18),transparent 36%),linear-gradient(180deg,rgba(8,16,38,.9),rgba(4,12,30,.98));box-shadow:var(--mm-shadow)}
.nv-mm-hero__stage::before,.nv-mm-hero__stage::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:15}.nv-mm-hero__stage::before{background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 18%,transparent 82%,rgba(0,12,30,.25)),radial-gradient(circle at 50% 62%,rgba(255,255,255,.10),transparent 24%)}.nv-mm-hero__stage::after{box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),inset 0 -120px 120px rgba(2,8,24,.16)}
.nv-mm-scene__hud,.nv-mm-scene__scanlines,.nv-mm-scene__traffic,.nv-mm-scene__sparkles{position:absolute;inset:0;pointer-events:none}.nv-mm-scene__hud{z-index:14;background:radial-gradient(circle at 70% 18%,rgba(150,225,255,.10),transparent 28%),linear-gradient(180deg,rgba(255,255,255,.03),transparent 14%)}.nv-mm-scene__scanlines{z-index:14;opacity:.06;background:repeating-linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.09) 1px,transparent 1px,transparent 5px);mix-blend-mode:soft-light}
.nv-mm-scene__layer{position:absolute;will-change:transform}.nv-mm-scene__layer img{display:block;width:100%;height:auto}
.nv-mm-scene__layer--sky,.nv-mm-scene__layer--skyline,.nv-mm-scene__layer--roads,.nv-mm-scene__layer--platforms,.nv-mm-scene__layer--road-strip{inset:0;width:100%}
.nv-mm-scene__layer--sky{z-index:1}.nv-mm-scene__layer--skyline{z-index:2;opacity:.92}.nv-mm-scene__layer--platforms{z-index:4;opacity:.98}.nv-mm-scene__layer--roads{z-index:5}.nv-mm-scene__layer--fortress{right:2.8%;bottom:17.8%;width:28%;z-index:6;filter:drop-shadow(0 18px 36px rgba(0,18,44,.24))}.nv-mm-scene__layer--bee{right:6.8%;top:11.2%;width:15%;z-index:8;filter:drop-shadow(0 14px 26px rgba(0,0,0,.24));animation:nv-mm-bee-hover 5.5s ease-in-out infinite;transform-origin:center center}.nv-mm-scene__layer--road-strip{z-index:10}
.nv-mm-scene__traffic{z-index:11}.nv-mm-traffic__vehicle{position:absolute;left:110%;opacity:0;will-change:left,opacity;filter:drop-shadow(0 10px 18px rgba(0,0,0,.24))}.nv-mm-traffic__vehicle--microcar{width:14%;bottom:7.2%}.nv-mm-traffic__vehicle--utility{width:15.4%;bottom:7.05%}.nv-mm-traffic__vehicle--racer{width:15.2%;bottom:6.9%}
.nv-mm-scene__sparkles span,.nv-mm__motes span,.nv-mm-finale__motes span{position:absolute;display:block;width:5px;height:5px;border-radius:999px;background:radial-gradient(circle,rgba(255,255,255,1) 0%,rgba(255,255,255,0) 72%);opacity:.65;animation:nv-mm-pulse 3.8s ease-in-out infinite}
.nv-mm-hero__scroll{position:absolute;right:30px;bottom:24px;z-index:16;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:999px;color:#fff;text-decoration:none;background:rgba(9,24,52,.84);border:1px solid rgba(122,217,255,.22);box-shadow:0 12px 30px rgba(0,5,22,.28)}
.nv-mm-section,.nv-mm-finale{position:relative;margin-top:40px;padding:38px;border-radius:30px;border:1px solid rgba(87,217,255,.14);background:linear-gradient(180deg,rgba(9,22,49,.86),rgba(6,15,37,.94));box-shadow:var(--mm-shadow)}
.nv-mm-heading{margin-bottom:28px}.nv-mm-heading--center{text-align:center}.nv-mm-heading p{margin:0 0 10px;color:var(--mm-gold);font-size:.78rem;font-weight:800}.nv-mm-heading h2{margin:0;font-size:clamp(1.85rem,4vw,2.9rem)}.nv-mm-heading span{display:inline-block;margin-top:11px;color:var(--mm-muted);max-width:60ch;line-height:1.7}
.nv-mm-memory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.nv-mm-memory-card{position:relative;padding:20px 22px 22px;border-radius:22px;border:1px solid rgba(104,213,255,.18);background:linear-gradient(180deg,rgba(13,32,68,.96),rgba(8,20,44,.96)),radial-gradient(circle at top right,rgba(255,208,79,.18),transparent 36%);transform:rotate(var(--memory-rotation,0deg));box-shadow:0 18px 40px rgba(0,9,31,.3)}.nv-mm-memory-card__topline{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:14px}.nv-mm-memory-card__topline span{font-size:.68rem;font-weight:800;color:var(--mm-cyan-soft)}.nv-mm-memory-card__topline small{font-size:.62rem;color:rgba(255,208,79,.88);font-weight:800}.nv-mm-memory-card blockquote{margin:0;color:rgba(240,247,255,.92);line-height:1.8}.nv-mm-memory-card__dot{position:absolute;top:14px;right:14px;width:9px;height:9px;border-radius:999px;background:var(--mm-cyan);box-shadow:0 0 16px rgba(87,217,255,.72)}.nv-mm-inline-link{margin-top:22px;background:rgba(8,22,49,.72)}
.nv-mm-experiment{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;overflow:hidden}.nv-mm-experiment__panel{position:relative;padding:22px;min-height:170px;border-radius:22px;border:1px solid rgba(94,211,255,.16);background:linear-gradient(180deg,rgba(9,22,49,.92),rgba(10,24,52,.76)),radial-gradient(circle at top right,rgba(255,208,79,.14),transparent 42%)}.nv-mm-experiment__panel--wide{grid-column:span 2;min-height:190px}.nv-mm-experiment__label{display:inline-flex;margin-bottom:12px;color:var(--mm-cyan-soft);font-size:.7rem;font-weight:800}.nv-mm-experiment__panel strong{display:block;margin-bottom:10px;font-size:1.2rem}.nv-mm-experiment__panel p{margin:0;color:var(--mm-muted);line-height:1.7}.nv-mm-experiment__beam{position:absolute;inset:auto -12% -90px auto;width:340px;height:340px;border-radius:999px;background:radial-gradient(circle,rgba(87,217,255,.32) 0%,rgba(87,217,255,0) 72%);filter:blur(18px);opacity:.65}
.nv-mm-finale{text-align:center;overflow:hidden}.nv-mm-finale__copy>p{margin:0 0 10px;color:var(--mm-gold);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:.76rem}.nv-mm-finale h2{margin:0;font-size:clamp(2rem,4vw,3.2rem)}.nv-mm-finale small{display:inline-block;margin-top:18px;color:rgba(226,241,255,.68)}
[data-mm-reveal]{opacity:0;transform:translateY(18px);transition:opacity 560ms ease,transform 560ms ease}[data-mm-reveal].is-visible{opacity:1;transform:translateY(0)}
@keyframes nv-mm-pulse{0%,100%{transform:scale(.6);opacity:.2}50%{transform:scale(1);opacity:.72}}@keyframes nv-mm-bee-hover{0%,100%{transform:translate3d(0,0,0) rotate(0deg)}25%{transform:translate3d(6px,-10px,0) rotate(1.2deg)}50%{transform:translate3d(0,-16px,0) rotate(0deg)}75%{transform:translate3d(-7px,-8px,0) rotate(-1.2deg)}}
@media (max-width:1120px){.nv-mm-hero{grid-template-columns:1fr}.nv-mm-hero__stage{min-height:690px}.nv-mm-memory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nv-mm-scene__layer--fortress{width:31%;right:2.2%;bottom:18.1%}.nv-mm-scene__layer--bee{width:16.5%;right:7.2%}}
@media (max-width:760px){.nv-mm__shell{width:min(100% - 22px,100%);padding-top:28px;padding-bottom:84px}.nv-mm-hero__stage{min-height:500px;border-radius:24px}.nv-mm-hero__chips,.nv-mm-hero__actions,.nv-mm-finale__actions,.nv-mm-memory-grid,.nv-mm-experiment{grid-template-columns:1fr}.nv-mm-hero__actions,.nv-mm-finale__actions,.nv-mm-hero__chips{display:grid}.nv-mm-section,.nv-mm-finale{padding:24px 18px;border-radius:24px}.nv-mm-memory-card{transform:none}.nv-mm-experiment__panel--wide{grid-column:span 1}.nv-mm-scene__layer--fortress{width:40%;right:-1%;bottom:18.4%}.nv-mm-scene__layer--bee{width:21%;right:4%;top:9%}.nv-mm-traffic__vehicle--microcar{width:22%;bottom:5.7%}.nv-mm-traffic__vehicle--utility,.nv-mm-traffic__vehicle--racer{width:24%;bottom:5.55%}.nv-mm-hero__scroll{width:42px;height:42px;right:16px;bottom:14px}}

/* Update 29: lock the diorama back to the original 1672x941 coordinate system. */
.nv-mm-hero__stage {
    min-height: 0;
    aspect-ratio: 1672 / 941;
}

.nv-mm-scene__layer--sky,
.nv-mm-scene__layer--skyline,
.nv-mm-scene__layer--roads,
.nv-mm-scene__layer--platforms,
.nv-mm-scene__layer--road-strip {
    inset: 0;
    width: 100%;
    height: 100%;
}

.nv-mm-scene__layer--sky img,
.nv-mm-scene__layer--skyline img,
.nv-mm-scene__layer--roads img,
.nv-mm-scene__layer--platforms img,
.nv-mm-scene__layer--road-strip img {
    width: 100%;
    height: 100%;
    object-fit: fill;
}

.nv-mm-scene__layer--sky { z-index: 1; }
.nv-mm-scene__layer--skyline { z-index: 2; opacity: 0.92; }
.nv-mm-scene__layer--platforms { z-index: 3; opacity: 0.94; }

.nv-mm-scene__layer--fortress {
    right: 2.5%;
    bottom: 15.5%;
    width: 29%;
    z-index: 4;
}

.nv-mm-scene__layer--roads { z-index: 5; }

.nv-mm-scene__layer--bee {
    right: 7%;
    top: 10%;
    width: 15%;
    z-index: 8;
    animation: none;
}

.nv-mm-scene__layer--bee img {
    animation: nv-mm-bee-hover-image 5.5s ease-in-out infinite;
    transform-origin: center center;
}

.nv-mm-scene__layer--road-strip { z-index: 10; }

.nv-mm-scene__traffic { z-index: 11; }

.nv-mm-traffic__vehicle {
    left: 106%;
    bottom: 7%;
    opacity: 0;
    transform: none !important;
}

.nv-mm-traffic__vehicle--microcar { width: 13.5%; }
.nv-mm-traffic__vehicle--utility { width: 15%; }
.nv-mm-traffic__vehicle--racer { width: 14.5%; }

@keyframes nv-mm-bee-hover-image {
    0%, 100% { transform: translate3d(0, 0, 0) rotate(0deg); }
    25% { transform: translate3d(4px, -6px, 0) rotate(0.6deg); }
    50% { transform: translate3d(0, -10px, 0) rotate(0deg); }
    75% { transform: translate3d(-4px, -5px, 0) rotate(-0.6deg); }
}

@media (max-width: 1120px) {
    .nv-mm-hero__stage {
        min-height: 0;
        aspect-ratio: 1672 / 941;
    }

    .nv-mm-scene__layer--fortress {
        width: 30%;
        right: 2.3%;
        bottom: 15.8%;
    }
}

@media (max-width: 760px) {
    .nv-mm-hero__stage {
        min-height: 0;
        aspect-ratio: 1672 / 941;
    }

    .nv-mm-scene__layer--fortress {
        width: 31%;
        right: 1.5%;
        bottom: 16%;
    }

    .nv-mm-scene__layer--bee {
        width: 17%;
        right: 6%;
        top: 9%;
    }

    .nv-mm-traffic__vehicle--microcar { width: 16%; }
    .nv-mm-traffic__vehicle--utility { width: 17.5%; }
    .nv-mm-traffic__vehicle--racer { width: 17%; }
}


/* Update 30: hero stage full-width, copy below, stronger parallax, corrected traffic lane. */

.nv-mm-hero {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 18px;
}

.nv-mm-hero__stage {
    order: 1;
    width: 100%;
    margin: 0;
    min-height: 0;
    aspect-ratio: 1672 / 941;
}

.nv-mm-hero__copy {
    order: 2;
    max-width: none;
    padding: 10px 10px 0;
}

.nv-mm-hero__copy > * {
    max-width: 920px;
}

.nv-mm-hero__chips,
.nv-mm-hero__actions {
    max-width: 920px;
}

.nv-mm-hero__scroll {
    right: 18px;
    bottom: 18px;
    z-index: 15;
}

.nv-mm-scene__layer--sky { z-index: 1; }
.nv-mm-scene__layer--skyline { z-index: 2; opacity: .96; }
.nv-mm-scene__layer--fortress {z-index: 4;right: 2.8%;bottom: 16.1%;width: 26%;}
.nv-mm-scene__layer--roads { z-index: 4; }
.nv-mm-scene__layer--platforms {z-index: 5;opacity: 1;width: 70%;height: 70%;bottom: 0px;left: -220px;top: 80px;/* height: 10%; *//* bottom: 0px; */position: absolute;/* display: block; */}
.nv-mm-scene__layer--bee { z-index: 8; right: 6.2%; top: 9.2%; width: 14.5%; }
.nv-mm-scene__layer--road-strip {z-index: 10;top: 30px;}
.nv-mm-scene__traffic { z-index: 11; }

.nv-mm-traffic__vehicle {
    bottom: 5.2%;
    left: -28%;
    opacity: 0;
    will-change: left, opacity, transform;
}
.nv-mm-traffic__vehicle--microcar { width: 11.8%; }
.nv-mm-traffic__vehicle--utility { width: 13.1%; }
.nv-mm-traffic__vehicle--racer { width: 12.4%; }

@media (max-width: 1120px) {
    .nv-mm-hero { gap: 24px; padding: 16px; }
    .nv-mm-scene__layer--fortress { width: 28%; right: 2.2%; bottom: 16.2%; }
    .nv-mm-scene__layer--bee { width: 15.8%; right: 6%; top: 8.8%; }
}

@media (max-width: 760px) {
    .nv-mm-hero { padding: 14px; gap: 20px; }
    .nv-mm-hero__copy { padding: 2px 4px 0; }
    .nv-mm-scene__layer--fortress { width: 31%; right: 1.5%; bottom: 16.3%; }
    .nv-mm-scene__layer--bee { width: 18%; right: 4.5%; top: 8%; }
    .nv-mm-traffic__vehicle--microcar { width: 15.4%; }
    .nv-mm-traffic__vehicle--utility { width: 16.8%; }
    .nv-mm-traffic__vehicle--racer { width: 15.8%; }
}


/* Update 31: refine distant background composition and correct traffic lane/direction. */

.nv-mm-scene__layer--skyline {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: auto;
    opacity: .9;
}

.nv-mm-scene__layer--roads {
    left: -180px;
    right: 0;
    top: 70px;
    bottom: 0;
    width: 70%;
}

.nv-mm-scene__layer--fortress {
    right: -8.8%;
    bottom: 4.6%;
    width: 64.5%;
}

.nv-mm-scene__layer--bee {
    right: 5.4%;
    top: 8.6%;
    width: 13.8%;
}

.nv-mm-traffic__vehicle {
    left: 106%;
    bottom: 1.65%;
    opacity: 0;
}

.nv-mm-traffic__vehicle--microcar { width: 11.2%; bottom: 1.55%; }
.nv-mm-traffic__vehicle--utility { width: 12.5%; bottom: 1.5%; }
.nv-mm-traffic__vehicle--racer { width: 11.8%; bottom: 1.62%; }

@media (max-width: 1120px) {
    .nv-mm-scene__layer--skyline { top: 7.6%; bottom: -1.8%; }
    .nv-mm-scene__layer--fortress { width: 26%; right: .8%; bottom: 14.8%; }
    .nv-mm-scene__layer--bee { width: 15%; right: 4.8%; top: 8.4%; }
}

@media (max-width: 760px) {
    .nv-mm-scene__layer--skyline { top: 8%; bottom: -1%; }
    .nv-mm-scene__layer--fortress { width: 28.5%; right: .4%; bottom: 15%; }
    .nv-mm-scene__layer--bee { width: 16.8%; right: 4.2%; top: 8%; }
    .nv-mm-traffic__vehicle--microcar { width: 14.8%; bottom: 1.1%; }
    .nv-mm-traffic__vehicle--utility { width: 16.2%; bottom: 1.05%; }
    .nv-mm-traffic__vehicle--racer { width: 15%; bottom: 1.12%; }
}


/* Update 33: move traffic onto the actual grey roadway surface. */

.nv-mm-traffic__vehicle {
    bottom: 10.7%;
}

.nv-mm-traffic__vehicle--microcar { bottom: 10.58%; }
.nv-mm-traffic__vehicle--utility { bottom: 10.42%; }
.nv-mm-traffic__vehicle--racer { bottom: 10.5%; }

@media (max-width: 1120px) {
    .nv-mm-traffic__vehicle { bottom: 10.15%; }
    .nv-mm-traffic__vehicle--microcar { bottom: 10.02%; }
    .nv-mm-traffic__vehicle--utility { bottom: 9.92%; }
    .nv-mm-traffic__vehicle--racer { bottom: 9.98%; }
}

@media (max-width: 760px) {
    .nv-mm-traffic__vehicle { bottom: 9.2%; }
    .nv-mm-traffic__vehicle--microcar { bottom: 9.08%; }
    .nv-mm-traffic__vehicle--utility { bottom: 8.98%; }
    .nv-mm-traffic__vehicle--racer { bottom: 9.02%; }
}


/* Update 34: place vehicles on the top road deck, not on the front wall. */

.nv-mm-traffic__vehicle {
    bottom: 14.2%;
}

/* Individual tuning because each sprite has a different wheel/base silhouette. */
.nv-mm-traffic__vehicle--microcar {
    bottom: 14.05%;
}

.nv-mm-traffic__vehicle--utility {
    bottom: 13.88%;
}

.nv-mm-traffic__vehicle--racer {
    bottom: 14.32%;
}

@media (max-width: 1120px) {
    .nv-mm-traffic__vehicle {
        bottom: 13.5%;
    }

    .nv-mm-traffic__vehicle--microcar {
        bottom: 13.34%;
    }

    .nv-mm-traffic__vehicle--utility {
        bottom: 13.18%;
    }

    .nv-mm-traffic__vehicle--racer {
        bottom: 13.56%;
    }
}

@media (max-width: 760px) {
    .nv-mm-traffic__vehicle {
        bottom: 12.2%;
    }

    .nv-mm-traffic__vehicle--microcar {
        bottom: 12.08%;
    }

    .nv-mm-traffic__vehicle--utility {
        bottom: 11.92%;
    }

    .nv-mm-traffic__vehicle--racer {
        bottom: 12.16%;
    }
}

/* Update 35: Megaman canvas shooter. */
.nv-mm-section--game {
    overflow: hidden;
}

.nv-mm-game {
    position: relative;
    width: 100%;
    border-radius: 26px;
    overflow: hidden;
    border: 1px solid rgba(103, 221, 255, 0.28);
    background:
        radial-gradient(circle at 50% 18%, rgba(73, 157, 255, 0.16), transparent 40%),
        linear-gradient(180deg, #071b3d 0%, #06142f 100%);
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.03),
        0 30px 70px rgba(0, 7, 28, 0.38);
}

.nv-mm-game__hud-strip {
    position: absolute;
    z-index: 4;
    top: 14px;
    left: 18px;
    right: 18px;
    display: flex;
    justify-content: space-between;
    gap: 18px;
    pointer-events: none;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    color: rgba(220, 244, 255, 0.72);
    text-transform: uppercase;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.55);
}

.nv-mm-game__canvas {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    cursor: none;
    touch-action: none;
    user-select: none;
    background: transparent;
}

.nv-mm-game__start {
    position: absolute;
    z-index: 8;
    left: 50%;
    bottom: 30px;
    transform: translateX(-50%);
    min-width: 180px;
    padding: 0.95rem 1.55rem;
    border: 1px solid rgba(132, 231, 255, 0.5);
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(48, 105, 255, 0.96), rgba(55, 217, 255, 0.9));
    color: #fff;
    font: inherit;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    box-shadow:
        0 16px 38px rgba(0, 25, 80, 0.4),
        0 0 28px rgba(70, 213, 255, 0.2);
    transition: transform 160ms ease, filter 160ms ease, opacity 160ms ease;
}

.nv-mm-game__start:hover,
.nv-mm-game__start:focus-visible {
    transform: translateX(-50%) translateY(-2px);
    filter: brightness(1.08);
}

.nv-mm-game__start.is-hidden {
    opacity: 0;
    pointer-events: none;
}

.nv-mm-game__mobile-hint {
    display: none;
    margin: 0;
    padding: 12px 16px 14px;
    border-top: 1px solid rgba(103, 221, 255, 0.12);
    color: rgba(220, 241, 255, 0.72);
    background: rgba(4, 13, 32, 0.88);
    text-align: center;
    font-size: 0.84rem;
}

@media (max-width: 820px) and (orientation: portrait) {
    .nv-mm-game__mobile-hint {
        display: block;
    }

    .nv-mm-game__hud-strip {
        font-size: 0.58rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .nv-mm-game__start {
        transition: none;
    }
}
