.arcade-cache__title {
    margin-bottom: 0.35rem;
    color: var(--accent-strong);
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.arcade-cache__hint {
    font-size: 0.98rem;
}

.arcade-cache__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 0.9rem;
}

.arcade-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.68rem 0.95rem;
    border-radius: var(--radius-pill);
    border: 1px solid rgba(23, 33, 29, 0.1);
    background: rgba(48, 71, 55, 0.06);
    color: var(--ink);
    font: inherit;
    font-weight: 700;
    transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1), background-color 0.35s ease, border-color 0.35s ease;
}

.faq-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.faq-item {
    padding: 1.35rem;
    border-radius: 24px;
    transition: transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.45s ease;
}

.faq-item p {
    margin-top: 0.6rem;
}

.closing-panel {
    padding: clamp(1.8rem, 3vw, 2.4rem);
    border-radius: 36px;
    background:
        radial-gradient(circle at 100% 0%, rgba(197, 109, 54, 0.2), transparent 24%),
        linear-gradient(135deg, #222920 0%, #161712 100%);
    box-shadow: var(--shadow-md);
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) auto;
    gap: 1.2rem;
    align-items: end;
}

.closing-panel .eyebrow,
.closing-panel .section-title,
.closing-panel .section-description {
    color: #fff;
}

.closing-panel .eyebrow {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.14);
}

.closing-panel__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.8rem;
}

.closing-panel__lanes {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 0.3rem;
}

.closing-panel__lanes span {
    display: inline-flex;
    align-items: center;
    gap: 0.48rem;
    padding: 0.62rem 0.9rem;
    border-radius: var(--radius-pill);
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #fff;
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.closing-panel__lanes span::before {
    content: '';
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(255, 233, 204, 0.88);
}


.revealable {
    opacity: 0;
    transform: translate3d(0, calc(32px + var(--parallax-y, 0px)), 0) scale(0.985);
    transition:
        opacity 0.85s cubic-bezier(0.2, 0.8, 0.2, 1) var(--reveal-delay, 0ms),
        transform 0.85s cubic-bezier(0.2, 0.8, 0.2, 1) var(--reveal-delay, 0ms),
        filter 0.85s ease var(--reveal-delay, 0ms),
        clip-path 0.95s cubic-bezier(0.2, 0.8, 0.2, 1) var(--reveal-delay, 0ms);
    filter: blur(6px);
    clip-path: inset(0 0 0 0 round 0);
}

.revealable.is-visible {
    opacity: 1;
    transform: translate3d(0, var(--parallax-y, 0px), 0) scale(1);
    filter: blur(0);
    clip-path: inset(0 0 0 0 round 0);
}

.revealable[data-reveal='slide-left'] {
    transform: translate3d(44px, calc(24px + var(--parallax-y, 0px)), 0) scale(0.985);
}

.revealable[data-reveal='slide-right'] {
    transform: translate3d(-44px, calc(24px + var(--parallax-y, 0px)), 0) scale(0.985);
}

.revealable[data-reveal='pop'] {
    transform: translate3d(0, calc(20px + var(--parallax-y, 0px)), 0) scale(0.94);
}

.revealable[data-reveal='lift'] {
    transform: translate3d(0, calc(36px + var(--parallax-y, 0px)), 0) scale(1);
}

.revealable[data-reveal='mask-right'] {
    transform: translate3d(-30px, calc(28px + var(--parallax-y, 0px)), 0) scale(0.992);
    clip-path: inset(0 100% 0 0 round 28px);
}

.revealable[data-reveal='mask-left'] {
    transform: translate3d(30px, calc(28px + var(--parallax-y, 0px)), 0) scale(0.992);
    clip-path: inset(0 0 0 100% round 28px);
}

.revealable[data-reveal='mask-rise'] {
    transform: translate3d(0, calc(44px + var(--parallax-y, 0px)), 0) scale(0.975);
    clip-path: inset(12% 0 0 0 round 28px);
}

.revealable.is-visible[data-reveal] {
    transform: translate3d(0, var(--parallax-y, 0px), 0) scale(1);
    clip-path: inset(0 0 0 0 round 28px);
}

.page-enter {
    opacity: 0;
    transform: translate3d(var(--page-enter-x, 0), calc(var(--page-enter-y, 28px) + var(--parallax-y, 0px)), 0) scale(var(--page-enter-scale, 0.985));
    filter: blur(var(--page-enter-blur, 10px));
    will-change: transform, opacity, filter;
}

.page-enter[data-page-enter='left'] {
    --page-enter-x: 40px;
    --page-enter-y: 24px;
}

.page-enter[data-page-enter='right'] {
    --page-enter-x: -40px;
    --page-enter-y: 24px;
}

.page-enter[data-page-enter='pop'] {
    --page-enter-y: 18px;
    --page-enter-scale: 0.94;
}

.project-selector__scene.page-enter {
    --page-enter-y: 16px;
    --page-enter-scale: 0.972;
    --page-enter-blur: 0px;
    --page-enter-duration: 1.05s;
}

.page-enter.is-entered {
    opacity: 1;
    transform: translate3d(0, var(--parallax-y, 0px), 0) scale(1);
    filter: blur(0);
    transition:
        opacity var(--page-enter-duration, 0.92s) cubic-bezier(0.2, 0.8, 0.2, 1) var(--page-enter-delay, 0ms),
        transform var(--page-enter-duration, 0.92s) cubic-bezier(0.2, 0.8, 0.2, 1) var(--page-enter-delay, 0ms),
        filter var(--page-enter-duration, 0.92s) ease var(--page-enter-delay, 0ms);
}

.parallax-layer {
    --parallax-y: 0px;
    will-change: transform;
}

.page-enter-media {
    animation: heroMediaIn 1.3s cubic-bezier(0.2, 0.8, 0.2, 1) both;
}

.page-enter-glow {
    animation: introGlowIn 1.25s ease both;
}

.hero-stage__pillars li:hover,
.hero-education-card:hover,
.story-card:hover,
.eva-node:hover,
.trust-badges li:hover,
.content-block:hover,
.stats-card:hover,
.area-card:hover,
.feature-project:hover,
.project-shot:hover,
.project-note:hover,
.studio-capability:hover,
.join-team-image-link:hover,
.arcade-chip:hover,
.faq-item:hover,
.manifesto-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 26px 50px rgba(27, 33, 28, 0.14);
}

.stats-card:hover {
    background: rgba(255, 255, 255, 0.12);
}

.arcade-chip:hover {
    background: rgba(48, 71, 55, 0.1);
    border-color: rgba(48, 71, 55, 0.2);
}

.marquee:hover .marquee__track {
    animation-play-state: paused;
}

@keyframes marqueeForward {
    from {
        transform: translate3d(0, 0, 0);
    }
    to {
        transform: translate3d(-50%, 0, 0);
    }
}

@keyframes marqueeReverse {
    from {
        transform: translate3d(-50%, 0, 0);
    }
    to {
        transform: translate3d(0, 0, 0);
    }
}

@keyframes titleLineIn {
    from {
        opacity: 0;
        transform: translate3d(0, 22px, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes auroraPulse {
    0% {
        transform: scale(1) translate3d(0, 0, 0);
        opacity: 0.82;
    }
    100% {
        transform: scale(1.06) translate3d(0, -1.5%, 0);
        opacity: 1;
    }
}

@keyframes heroParticleFloat {
    0% {
        transform: translate3d(0, 0, 0) scale(0.7);
    }
    50% {
        transform: translate3d(calc(var(--drift) * 0.45), calc(var(--drift) * -1), 0) scale(1);
    }
    100% {
        transform: translate3d(calc(var(--drift) * -0.35), calc(var(--drift) * -1.75), 0) scale(0.78);
    }
}

@keyframes heroParticleBlink {
    0%, 100% {
        opacity: 0;
    }
    20%, 72% {
        opacity: 0.88;
    }
}

@keyframes heroCometSweep {
    0% {
        transform: translate3d(0, 0, 0) rotate(-14deg) scaleX(0.72);
        opacity: 0;
    }
    10% {
        opacity: 0.95;
    }
    48% {
        opacity: 0.55;
    }
    65%, 100% {
        transform: translate3d(140vw, 11vh, 0) rotate(-14deg) scaleX(1);
        opacity: 0;
    }
}

@keyframes pillBreath {
    0%, 100% {
        transform: translate3d(0, 0, 0);
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
    }
    50% {
        transform: translate3d(0, -2px, 0);
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12), 0 10px 20px rgba(18, 24, 21, 0.16);
    }
}

@keyframes ambientOrbFloat {
    0% {
        transform: translate3d(-8px, 0, 0) scale(0.88);
    }
    50% {
        transform: translate3d(18px, -22px, 0) scale(1.05);
    }
    100% {
        transform: translate3d(-14px, -34px, 0) scale(0.92);
    }
}

@keyframes sectionGlowPulse {
    0%, 100% {
        transform: scale(0.92);
        opacity: 0.55;
    }
    50% {
        transform: scale(1.08);
        opacity: 0.9;
    }
}

@keyframes heroLift {
    from {
        opacity: 0;
        transform: translate3d(0, 32px, 0) scale(0.985);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0) scale(1);
    }
}

@keyframes heroMediaIn {
    from {
        transform: scale(1.1);
        filter: saturate(0.9) contrast(0.98) brightness(0.58);
    }
    to {
        transform: scale(1.04);
        filter: saturate(1.02) contrast(1.04) brightness(0.68);
    }
}

@keyframes introGlowIn {
    from {
        opacity: 0;
        transform: scale(0.88);
        filter: blur(40px);
    }
    to {
        opacity: 1;
        transform: scale(1);
        filter: blur(28px);
    }
}

@keyframes orbitFloat {
    0%,
    100% {
        transform: translate3d(0, 0, 0) scale(1);
    }
    50% {
        transform: translate3d(-20px, 14px, 0) scale(1.04);
    }
}

@keyframes mediaDrift {
    0%,
    100% {
        transform: scale(1.02) translate3d(0, 0, 0);
    }
    50% {
        transform: scale(1.05) translate3d(0, -8px, 0);
    }
}

@media (max-width: 1180px) {
    .hero-cinematic {
        min-height: auto;
    }

    .hero-cinematic__grid {
        width: min(94%, 1320px);
        grid-template-columns: 1fr;
    }

    .hero-cinematic__title {
        max-width: 11ch;
    }

    .hero-stage {
        grid-template-columns: 1fr;
    }

    .hero-stage__visual {
        min-height: 560px;
    }

    .hero-stage__education-grid {
        grid-template-columns: 1fr 1fr;
    }

    .closing-panel {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .site-intro__title {
        max-width: 12ch;
    }

    .closing-panel__actions {
        justify-content: flex-start;
    }

    .content-block,
    .content-block.reverse-on-mobile {
        grid-template-columns: 1fr;
    }

    .content-block.reverse-on-mobile > .image-content,
    .content-block.reverse-on-mobile > .text-content {
        order: initial;
    }

    .manifesto-grid,
    .storyline,
    .areas-grid,
    .stats-cards-grid,
    .faq-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .area-card--featured {
        grid-column: auto;
    }

    .feature-project,
    .feature-project--reverse {
        grid-template-columns: 1fr;
    }

    .feature-project--reverse .feature-project__media,
    .feature-project--reverse .feature-project__content {
        order: initial;
    }

    .projects-showcase__header {
        grid-template-columns: 1fr;
    }

    .project-mosaic {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .project-shot:last-child {
        grid-column: 1 / -1;
        min-height: 280px;
    }

    .project-details__grid,
    .project-details__grid--three,
    .related-projects__grid,
    .partners-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .project-hero__layout,
    .project-story-grid,
    .project-proof-grid,
    .project-gallery__grid,
    .project-impact__grid,
    .cdpw-commerce__strip,
    .cdpw-purchase-layout,
    .site-sentinel-checkout-controls,
    .site-sentinel-pricing__grid,
    .site-sentinel-offer-band,
    .project-tail-cta,
    .project-final-stage__content,
    .press-articles--feature {
        grid-template-columns: 1fr;
    }

    .project-band__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .project-hub__layout {
        grid-template-columns: 1fr;
    }

    .project-selector {
        width: min(96vw, 1280px);
        margin: 0 auto;
        display: grid;
        grid-template-columns: 1fr;
    }

    .project-selector__top {
        width: 100%;
        grid-template-columns: 1fr;
    }

    .project-selector__scene {
        min-height: 980px;
        border-radius: 36px;
        border-left: 1px solid rgba(23, 33, 29, 0.08);
        border-right: 1px solid rgba(23, 33, 29, 0.08);
    }

    .project-selector__mission {
        width: min(360px, 56%);
    }

    .project-selector__status {
        right: 3.5%;
    }

    .project-selector__aside {
        min-height: auto;
        z-index: auto;
        backdrop-filter: none;
    }

    .project-selector__callout--brand {
        right: 10%;
    }

    .project-selector__callout--platform {
        left: 30%;
    }

    .project-selector__core {
        left: 44%;
    }

    .project-atlas__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .project-quick-nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-signal {
        grid-template-columns: 1fr;
    }

    .home-signal__grid,
    .partner-lanes {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .legal-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tools-summary,
    .tools-showcase__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tool-card--feature {
        grid-column: 1 / -1;
    }

    .legal-layout {
        grid-template-columns: 1fr;
    }

    .legal-toc {
        position: relative;
        top: auto;
    }

    .project-directory__lead {
        grid-template-columns: 1fr;
    }

    .project-family__header {
        grid-template-columns: 1fr;
    }

    .project-family__index {
        width: 64px;
        height: 64px;
        border-radius: 20px;
    }

    .project-family__cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .project-family__card,
    .project-family__card--featured {
        grid-column: span 1;
    }

    .project-atlas__card,
    .project-atlas__card--wide {
        grid-column: span 1;
    }

    .project-atlas__card--wide,
    .project-atlas__card--tall {
        min-height: 320px;
    }

    .project-atlas__card--tall {
        grid-column: span 1;
        grid-row: span 1;
    }

    .trust-badges {
        grid-template-columns: 1fr;
    }

    .studio-capabilities__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 920px) {
    .navbar {
        display: flex;
        flex-wrap: wrap;
    }

    .hamburger {
        display: inline-flex;
        margin-left: auto;
        order: 2;
    }

    .nav-rail {
        order: 3;
        width: 100%;
        display: none;
        flex-direction: column;
        align-items: stretch;
    }

    .navbar-brand {
        order: 1;
        grid-column: auto;
        grid-row: auto;
        justify-self: auto;
        margin-right: auto;
    }

    .nav-rail.is-open,
    .nav-links,
    .nav-actions {
        display: flex;
        flex-direction: column;
        align-items: stretch;
    }

    .nav-links,
    .nav-actions {
        width: 100%;
    }

    .nav-rail {
        margin-top: 0.8rem;
        padding: 0.85rem;
        border-radius: 18px;
        background: rgba(7, 12, 10, 0.68);
        border: 1px solid rgba(255, 255, 255, 0.1);
        backdrop-filter: blur(18px);
    }

    .nav-links,
    .nav-actions {
        gap: 0.55rem;
    }

    .hero-cinematic {
        width: 100%;
        min-height: auto;
        border-radius: 0 0 32px 32px;
    }

    .hero-cinematic__grid {
        width: 94%;
        padding: 8.2rem 0 1rem;
    }

    .hero-cinematic__title {
        max-width: none;
        font-size: clamp(2.8rem, 8vw, 4.5rem);
    }

    .hero-cinematic__metrics,
    .hero-cinematic__card-grid,
    .contact-modal__grid,
    .contact-metrics,
    .contact-form__row,
    .contact-cta-grid,
    .eva-journey,
    .eva-journey__path {
        grid-template-columns: 1fr;
    }

    .hero-cinematic__spotlight {
        min-height: 360px;
    }

    .project-hero {
        min-height: 0;
        padding: 9rem 0 1.8rem;
    }

    .project-hero h1,
    .project-final-stage__copy h2 {
        max-width: none;
    }

    .project-hero p,
    .project-final-stage__copy p {
        max-width: none;
        font-size: 1rem;
    }

    .project-hero h1 {
        font-size: clamp(2.8rem, 8vw, 4.6rem);
    }

    .project-hero__lead {
        padding-top: 2.8rem;
    }

    .project-hero__meta span {
        width: 100%;
        justify-content: flex-start;
    }

    .project-hero__aside {
        justify-self: stretch;
        width: 100%;
        padding: 1rem;
    }

    .project-card,
    .related-project-card,
    .project-band__item,
    .project-impact__card,
    .project-story-card,
    .project-proof,
    .project-tail-cta {
        padding: 1.05rem;
        border-radius: 24px;
    }

    .project-gallery__card {
        min-height: 240px;
    }

    .project-final-stage {
        min-height: 60svh;
    }

    .project-video-bubble {
        right: 14px !important;
        bottom: 14px !important;
        width: min(320px, calc(100vw - 28px)) !important;
    }

    .project-video-bubble--left {
        left: 14px;
        right: auto !important;
    }

    .project-selector__scene {
        min-height: 930px;
    }

    .project-selector__mission {
        width: min(320px, 66%);
        top: 4.5%;
    }

    .project-selector__status {
        display: none;
    }

    .project-selector__hud-copy strong {
        font-size: clamp(1.45rem, 3.8vw, 2rem);
    }

    .project-selector__hud-meta {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .project-selector__marker,
    .project-selector__callout {
        display: none;
    }

    .project-selector__districts {
        left: 5%;
        right: 5%;
        bottom: 8%;
    }

    .project-selector__district {
        min-width: 0;
        flex: 0 1 auto;
        letter-spacing: 0.12em;
    }

    .project-selector__core {
        top: 42%;
        left: 46%;
        width: 150px;
        height: 150px;
    }

    .iso-card--kedge {
        top: 18%;
        left: 6%;
    }

    .iso-card--campus {
        top: 10%;
        left: 30%;
        width: 262px;
    }

    .iso-card--minecraft {
        top: 33%;
        left: 24%;
        width: 286px;
    }

    .iso-card--beats {
        top: 29%;
        left: 58%;
    }

    .iso-card--fallen {
        top: 14%;
        left: 57%;
    }

    .iso-card--metamorph {
        top: 59%;
        left: 14%;
    }

    .iso-card--roblox {
        top: 50%;
        left: 6%;
    }

    .iso-card--fortnite {
        top: 52%;
        left: 57%;
    }

    .iso-card--community {
        top: 65%;
        left: 28%;
    }

    .iso-card--soon {
        top: 66%;
        left: 56%;
    }

    .project-hub__feature {
        min-height: 460px;
    }

    .project-selector__aside-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .project-selector__aside-actions > * {
        width: 100%;
        justify-content: center;
    }

    .hero-stage {
        width: 94%;
        border-radius: 32px;
    }

    .hero-stage__title {
        max-width: none;
        font-size: clamp(2.4rem, 8vw, 3.8rem);
    }

    .hero-stage__education-grid,
    .hero-stage__facts {
        grid-template-columns: 1fr;
    }

    .hero-stage__visual {
        grid-template-columns: 1fr;
        min-height: auto;
    }

    .marquee__track span {
        font-size: 1rem;
    }

    .site-intro__content {
        width: 94%;
    }

    .hero-stage__aside {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: auto auto;
    }

    .hero-stage__note {
        grid-column: 1 / -1;
    }

    .block-image,
    .card-image,
    .join-team-image {
        height: auto;
        min-height: 0;
    }

    .projects-showcase {
        padding: 1.2rem;
        border-radius: 30px;
    }

    .projects-showcase__panel {
        padding: 1.15rem;
    }

    .feature-project {
        padding: 1rem;
        border-radius: 28px;
    }

    .feature-project__media img {
        min-height: 360px;
    }
}
