/* EXXA immersive system — one WebGL renderer, semantic fallbacks, nine case languages */

:root {
    --immersive-ease: cubic-bezier(.16, 1, .3, 1);
    --immersive-spring: cubic-bezier(.16, 1.4, .3, 1);
}

.loader__logo {
    width: 76px;
    height: 76px;
    filter: drop-shadow(0 0 28px rgba(158, 255, 161, .2));
    animation: immersive-loader 1.8s var(--immersive-ease) infinite alternate;
}

@keyframes immersive-loader {
    to { transform: perspective(600px) rotateY(22deg) rotateX(-8deg) scale(.92); }
}

.footer--compact .footer__bottom > a {
    display: grid;
    place-items: center;
}

.footer--compact .footer__bottom > a img {
    width: 42px;
    height: 42px;
}

/* Homepage: galaxy → robotic mind → circuitry */
.journey {
    position: relative;
    height: 620vh;
    min-height: 3800px;
    color: #f6f4f8;
    background: #020205;
}

.journey__sticky {
    position: sticky;
    top: 0;
    height: 100svh;
    min-height: 650px;
    overflow: hidden;
    isolation: isolate;
    background: #020205;
    --journey-progress: 0;
}

.journey__backdrops,
.journey__backdrop,
.journey__canvas,
.journey__veil,
.journey__noise {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.journey__backdrops {
    z-index: -5;
    overflow: hidden;
}

.journey__backdrop {
    object-fit: cover;
    opacity: 0;
    transform: scale(1.08);
    filter: saturate(1.06) contrast(1.08) brightness(.72);
    transition: opacity 1.1s var(--immersive-ease), transform 3s var(--immersive-ease), filter 1.1s ease;
}

.journey__backdrop.is-active {
    opacity: 1;
    transform: scale(1.015);
    filter: saturate(1.08) contrast(1.08) brightness(.82);
}

.journey__backdrop--cosmos { object-position: center; }
.journey__backdrop--brain { object-position: center; }
.journey__backdrop--circuit { object-position: center; }

.journey__canvas {
    z-index: -3;
    pointer-events: none;
    mix-blend-mode: screen;
    opacity: .66;
}

/* The poster is the loading/failure safety net. Once WebGL paints its first
   frame, the renderer becomes the world instead of a glow over a photograph. */
html.journey-running .journey__canvas[data-journey-ready="true"] {
    z-index: -3;
    opacity: 1;
    mix-blend-mode: normal;
    filter: saturate(1.08) contrast(1.035);
}

html.journey-running .journey__backdrops {
    opacity: .035;
    transition: opacity 1.2s var(--immersive-ease);
}

[data-exxa-journey][data-journey-assets="ready"] .journey__backdrops {
    opacity: 0;
}

.journey__veil {
    z-index: -2;
    background:
        radial-gradient(circle at 52% 48%, transparent 0 22%, rgba(2, 2, 5, .12) 58%, rgba(2, 2, 5, .7) 100%),
        linear-gradient(90deg, rgba(2, 2, 5, .84) 0%, rgba(2, 2, 5, .42) 38%, transparent 68%),
        linear-gradient(0deg, rgba(2, 2, 5, .9), transparent 22%, transparent 80%, rgba(2, 2, 5, .55));
    pointer-events: none;
}

[dir="rtl"] .journey__veil {
    background:
        radial-gradient(circle at 48% 48%, transparent 0 22%, rgba(2, 2, 5, .12) 58%, rgba(2, 2, 5, .7) 100%),
        linear-gradient(-90deg, rgba(2, 2, 5, .84) 0%, rgba(2, 2, 5, .42) 38%, transparent 68%),
        linear-gradient(0deg, rgba(2, 2, 5, .9), transparent 22%, transparent 80%, rgba(2, 2, 5, .55));
}

.journey__noise {
    z-index: -1;
    opacity: .16;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255, 255, 255, .04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .025) 1px, transparent 1px);
    background-size: 7.5vw 7.5vw;
    mask-image: linear-gradient(90deg, #000, transparent 68%);
}

.journey__hud {
    position: absolute;
    z-index: 8;
    inset: calc(var(--header-h) + 1.1rem) 4vw auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    color: rgba(255, 255, 255, .56);
    direction: ltr;
    font-size: .56rem;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.journey__mode {
    display: inline-flex;
    align-items: center;
    gap: .75rem;
}

.journey__mode::before {
    content: "";
    width: 7px;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #9effa1;
    box-shadow: 0 0 20px #9effa1;
}

.journey__controls {
    display: flex;
    gap: .6rem;
    align-items: center;
}

.journey__controls button,
.journey__controls a {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    border: 1px solid rgba(255, 255, 255, .15);
    background: rgba(4, 4, 8, .34);
    padding: .55rem .75rem;
    color: rgba(255, 255, 255, .76);
    font: inherit;
    letter-spacing: inherit;
    backdrop-filter: blur(16px);
    cursor: pointer;
}

.journey__controls button:hover,
.journey__controls a:hover {
    border-color: rgba(158, 255, 161, .55);
    color: white;
}

.journey__controls button i {
    width: 8px;
    height: 10px;
    border-inline: 2px solid currentColor;
}

.journey__controls button[aria-pressed="true"] i {
    width: 0;
    height: 0;
    border: 0;
    border-block: 5px solid transparent;
    border-inline-start: 8px solid currentColor;
}

.journey__intro {
    position: absolute;
    z-index: 5;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-block-start: 5vh;
    opacity: clamp(0, calc(1 - var(--journey-progress) * 7), 1);
    transform: translate3d(0, calc(var(--journey-progress) * -18vh), 0) scale(calc(1 - var(--journey-progress) * .1));
    transform-origin: 35% 50%;
    pointer-events: auto;
}

[dir="rtl"] .journey__intro { transform-origin: 65% 50%; }

.journey__intro .eyebrow {
    max-width: 46rem;
    margin-block-end: 1.2rem;
    color: rgba(255, 255, 255, .66);
}

.journey__intro h1 {
    max-width: 10ch;
    margin: 0;
    color: white;
    font-size: clamp(4.5rem, 10.5vw, 11rem);
    font-weight: 760;
    line-height: .8;
    letter-spacing: -.09em;
}

[dir="rtl"] .journey__intro h1 {
    max-width: 9ch;
    font-size: clamp(4rem, 8.8vw, 9.5rem);
    line-height: 1.04;
    letter-spacing: 0;
}

.journey__intro h1 span,
.journey__intro h1 strong {
    display: block;
}

.journey__intro h1 strong {
    color: transparent;
    font-weight: inherit;
    -webkit-text-stroke: 1.2px rgba(255, 255, 255, .82);
    text-shadow: 0 0 40px rgba(158, 255, 161, .12);
}

.journey__intro-bottom {
    width: min(770px, 64vw);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 3rem;
    margin-block-start: 2.4rem;
}

.journey__intro-bottom > p {
    max-width: 40rem;
    margin: 0;
    color: rgba(255, 255, 255, .68);
    font-size: clamp(.9rem, 1.05vw, 1.08rem);
}

.journey__intro .orb-button {
    flex: 0 0 auto;
    color: white;
    border-color: rgba(255, 255, 255, .34);
    background: rgba(4, 4, 8, .28);
    backdrop-filter: blur(16px);
}

.journey__chapters {
    position: absolute;
    z-index: 6;
    inset: 0;
    pointer-events: none;
}

.journey__chapters li {
    position: absolute;
    inset-block-start: 50%;
    inset-inline-start: 0;
    width: min(720px, 58vw);
    display: grid;
    grid-template-columns: 64px 1fr;
    gap: 1.2rem;
    align-items: start;
    margin: 0;
    opacity: 0;
    visibility: hidden;
    transform: translate3d(0, 60px, 0) rotateX(-10deg);
    transition: opacity .7s ease, transform .9s var(--immersive-ease), visibility .7s;
}

.journey__chapters li.is-active {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, -50%, 0) rotateX(0);
}

.journey__chapters li > span {
    padding-block-start: .8rem;
    color: #9effa1;
    font-size: .62rem;
    letter-spacing: .18em;
}

.journey__chapters h2 {
    max-width: 9ch;
    margin: 0;
    color: white;
    font-size: clamp(3.7rem, 8.6vw, 9.4rem);
    line-height: .86;
    letter-spacing: -.075em;
}

[dir="rtl"] .journey__chapters h2 {
    max-width: 10ch;
    line-height: 1.08;
    letter-spacing: 0;
}

.journey__chapters p {
    max-width: 38rem;
    margin: 1.4rem 0 0;
    color: rgba(255, 255, 255, .66);
    font-size: clamp(.92rem, 1.1vw, 1.1rem);
}

.journey__rail {
    position: absolute;
    z-index: 7;
    inset: auto 4vw 2.2rem;
    display: grid;
    grid-template-columns: auto minmax(100px, 260px) auto;
    gap: 1rem;
    align-items: center;
    direction: ltr;
    color: rgba(255, 255, 255, .58);
    font-size: .55rem;
    letter-spacing: .14em;
}

.journey__rail i {
    position: relative;
    height: 1px;
    overflow: hidden;
    background: rgba(255, 255, 255, .18);
}

.journey__rail b {
    position: absolute;
    inset: 0;
    display: block;
    background: linear-gradient(90deg, #61d8ff, #9effa1);
    transform: scaleX(0);
    transform-origin: left;
}

.journey__rail em { font-style: normal; }

.journey__probe-label {
    position: absolute;
    z-index: 7;
    inset: auto 4vw 5rem auto;
    display: flex;
    align-items: center;
    gap: .65rem;
    direction: ltr;
    color: rgba(255, 255, 255, .45);
    font-size: .5rem;
    letter-spacing: .16em;
}

.journey__probe-label i {
    width: 22px;
    height: 1px;
    background: #9effa1;
    box-shadow: 0 0 16px #9effa1;
}

.journey__scroll {
    position: absolute;
    z-index: 7;
    inset: auto auto 2rem 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .5rem;
    transform: translateX(-50%);
    color: rgba(255, 255, 255, .48);
    font-size: .52rem;
    letter-spacing: .12em;
}

.journey__scroll i {
    width: 1px;
    height: 42px;
    background: linear-gradient(180deg, transparent, #9effa1);
    animation: journey-scroll 1.7s ease-in-out infinite;
}

@keyframes journey-scroll {
    50% { transform: scaleY(.45); transform-origin: bottom; opacity: .45; }
}

/* 3D depth on archive cards without extra WebGL contexts */
.project-card__depth {
    position: absolute;
    z-index: 2;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
    perspective: 1000px;
    transform-style: preserve-3d;
}

.project-card__depth i {
    position: absolute;
    inset: 18%;
    border: 1px solid color-mix(in srgb, var(--accent) 52%, transparent);
    border-radius: 50%;
    transform: rotateX(64deg) rotateZ(calc(var(--i, 1) * 18deg));
    box-shadow: 0 0 34px color-mix(in srgb, var(--accent) 16%, transparent);
}

.project-card__depth i:nth-child(2) { inset: 29%; --i: 2; border-style: dashed; }
.project-card__depth i:nth-child(3) { inset: 39%; --i: 3; }
.project-card__depth span {
    position: absolute;
    width: 9px;
    aspect-ratio: 1;
    inset: 31% auto auto 68%;
    border-radius: 50%;
    background: var(--accent);
    box-shadow: 0 0 28px var(--accent);
}

.project-card__depth--adas i { border-radius: 0; transform: perspective(800px) rotateX(72deg) rotateZ(0); }
.project-card__depth--satellite i { border-radius: 0; transform: rotateX(62deg) rotateZ(-18deg); }
.project-card__depth--identity i { transform: rotateX(75deg) rotateZ(22deg); }
.project-card__depth--robotics i { border-radius: 0; transform: rotateX(68deg) rotateZ(45deg); }
.project-card__depth--voice i { inset-block: 42%; border-radius: 0; transform: none; }
.project-card__depth--medical i { border-radius: 18px; transform: perspective(900px) rotateY(-24deg); }
.project-card__depth--access i { border-radius: 0; transform: perspective(900px) rotateY(54deg); }
.project-card__depth--football i { transform: rotateX(72deg); border-width: 2px; }
.project-card__depth--anesthesia i { border-radius: 42% 58% 55% 45%; transform: rotateX(68deg) rotateZ(12deg); }

/* Shared case experience primitives */
.immersive-case {
    position: relative;
    overflow: clip;
    min-height: 100vh;
    background: #07070a;
    color: #f7f5f8;
    --case-line: rgba(255, 255, 255, .14);
    --case-muted: rgba(255, 255, 255, .64);
}

.immersive-case *,
.immersive-case *::before,
.immersive-case *::after {
    box-sizing: border-box;
}

.immersive-case h1,
.immersive-case h2,
.immersive-case h3,
.immersive-case p { position: relative; z-index: 1; }

.immersive-case h1 {
    margin: 0;
    font-size: clamp(4rem, 9vw, 10rem);
    line-height: .84;
    letter-spacing: -.075em;
}

[dir="rtl"] .immersive-case h1 {
    line-height: 1.08;
    letter-spacing: 0;
}

.case-webgl {
    position: absolute;
    z-index: 2;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    mix-blend-mode: screen;
    opacity: .46;
}

.football-case .case-webgl,
.anesthesia-case .case-webgl { opacity: .28; }

.experience-back {
    position: relative;
    z-index: 8;
    width: max-content;
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    margin-block-end: clamp(2rem, 8vh, 6rem);
    color: inherit;
    font-size: .66rem;
    letter-spacing: .07em;
    opacity: .7;
}

.experience-back:hover { opacity: 1; }

.case-direction-nav {
    position: fixed;
    z-index: 88;
    inset: 50% clamp(.65rem, 1.35vw, 1.35rem) auto;
    height: 0;
    transform: translateY(-50%);
    pointer-events: none;
}
.case-direction-nav__link {
    position: absolute;
    top: 0;
    width: 56px;
    min-height: 56px;
    display: grid;
    align-items: center;
    gap: .65rem;
    overflow: hidden;
    padding: .35rem .4rem;
    border: 1px solid color-mix(in srgb,var(--case-nav-accent) 46%,rgba(255,255,255,.18));
    border-radius: 999px;
    background: rgba(5,5,9,.7);
    color: white;
    box-shadow: 0 18px 60px rgba(0,0,0,.34);
    backdrop-filter: blur(18px) saturate(1.18);
    pointer-events: auto;
    transition: width .45s var(--immersive-spring), transform .3s var(--immersive-spring), border-color .3s, background .3s;
}
.case-direction-nav__link--previous {
    inset-inline-start: 0;
    grid-template-columns: 44px 0;
    grid-template-areas: "icon copy";
}
.case-direction-nav__link--next {
    inset-inline-end: 0;
    grid-template-columns: 0 44px;
    grid-template-areas: "copy icon";
    text-align: end;
}
[dir="rtl"] .case-direction-nav__link--previous {
    grid-template-columns: 0 44px;
    grid-template-areas: "copy icon";
}
[dir="rtl"] .case-direction-nav__link--next {
    grid-template-columns: 44px 0;
    grid-template-areas: "icon copy";
}
.case-direction-nav__link:hover,
.case-direction-nav__link:focus-visible {
    width: min(300px, 40vw);
    transform: translateY(-2px);
    border-color: var(--case-nav-accent);
    background: rgba(8,8,13,.91);
}
.case-direction-nav__link--previous:hover,
.case-direction-nav__link--previous:focus-visible { grid-template-columns: 44px minmax(0,1fr); }
.case-direction-nav__link--next:hover,
.case-direction-nav__link--next:focus-visible { grid-template-columns: minmax(0,1fr) 44px; }
[dir="rtl"] .case-direction-nav__link--previous:hover,
[dir="rtl"] .case-direction-nav__link--previous:focus-visible { grid-template-columns: minmax(0,1fr) 44px; }
[dir="rtl"] .case-direction-nav__link--next:hover,
[dir="rtl"] .case-direction-nav__link--next:focus-visible { grid-template-columns: 44px minmax(0,1fr); }
.case-direction-nav__icon { grid-area: icon; width: 44px; aspect-ratio: 1; display: grid; place-items: center; border-radius: 50%; background: var(--case-nav-accent); color: #050508; font-size: 1rem; }
.case-direction-nav__copy { grid-area: copy; min-width: 0; display: grid; gap: .2rem; opacity: 0; transition: opacity .2s ease .08s; }
.case-direction-nav__link:hover .case-direction-nav__copy,
.case-direction-nav__link:focus-visible .case-direction-nav__copy { opacity: 1; }
.case-direction-nav__copy small { color: rgba(255,255,255,.58); font-size: .55rem; letter-spacing: .08em; }
.case-direction-nav__copy strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .74rem; font-weight: 650; }
[dir="rtl"] .case-direction-nav__copy { direction: rtl; }
@media (max-width:760px) {
    .case-direction-nav {
        inset: auto .65rem max(.65rem,env(safe-area-inset-bottom));
        height: auto;
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: end;
        transform: none;
    }
    .case-direction-nav__link,
    .case-direction-nav__link:hover,
    .case-direction-nav__link:focus-visible {
        position: static;
        width: min(150px, 44vw);
        min-height: 52px;
        transform: none;
        padding: .3rem .4rem;
    }
    .case-direction-nav__link--previous,
    .case-direction-nav__link--previous:hover,
    .case-direction-nav__link--previous:focus-visible {
        grid-column: 1;
        justify-self: start;
        grid-template-columns: 40px minmax(0,1fr);
        grid-template-areas: "icon copy";
    }
    .case-direction-nav__link--next,
    .case-direction-nav__link--next:hover,
    .case-direction-nav__link--next:focus-visible {
        grid-column: 2;
        justify-self: end;
        grid-template-columns: minmax(0,1fr) 40px;
        grid-template-areas: "copy icon";
    }
    [dir="rtl"] .case-direction-nav__link--previous,
    [dir="rtl"] .case-direction-nav__link--previous:hover,
    [dir="rtl"] .case-direction-nav__link--previous:focus-visible {
        grid-column: 2;
        grid-template-columns: minmax(0,1fr) 40px;
        grid-template-areas: "copy icon";
    }
    [dir="rtl"] .case-direction-nav__link--next,
    [dir="rtl"] .case-direction-nav__link--next:hover,
    [dir="rtl"] .case-direction-nav__link--next:focus-visible {
        grid-column: 1;
        grid-template-columns: 40px minmax(0,1fr);
        grid-template-areas: "icon copy";
    }
    .case-direction-nav__icon { width: 40px; }
    .case-direction-nav__copy { opacity: 1; }
    .case-direction-nav__copy strong { display: none; }
}

.experience-stack {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-block-start: 3.5rem;
    padding-block-start: 1.2rem;
    border-block-start: 1px solid currentColor;
    border-color: color-mix(in srgb, currentColor 18%, transparent);
}

.experience-stack > div { min-width: 0; }
.experience-stack > div > span {
    display: block;
    margin-block-end: .8rem;
    color: currentColor;
    opacity: .56;
    font-size: .6rem;
    letter-spacing: .12em;
}

.experience-stack p {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin: 0;
}

.experience-stack p i {
    padding: .36rem .65rem;
    border: 1px solid currentColor;
    border-color: color-mix(in srgb, currentColor 20%, transparent);
    border-radius: 999px;
    font-size: .62rem;
    font-style: normal;
    opacity: .72;
}

.experience-stack > a {
    flex: 0 0 auto;
    min-width: 170px;
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .8rem 1rem;
    border: 1px solid currentColor;
    border-color: color-mix(in srgb, currentColor 25%, transparent);
    background: color-mix(in srgb, var(--accent) 10%, transparent);
    transition: transform .35s var(--immersive-spring), background .35s;
}

.experience-stack > a:hover {
    transform: translateY(-4px);
    background: color-mix(in srgb, var(--accent) 22%, transparent);
}

.experience-stack > a span { font-size: .7rem; }
.experience-stack > a b { color: var(--accent); font-size: 1.2rem; }

.experience-media {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.experience-media__item {
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--case-line);
    background: #0a090d;
}

.experience-media__item--wide { grid-column: 1 / -1; }
.experience-media__item img,
.experience-media__item video {
    display: block;
    width: 100%;
    height: clamp(300px, 50vw, 720px);
    object-fit: cover;
}

.experience-media__item figcaption {
    display: flex;
    gap: 1rem;
    padding: 1rem;
    color: var(--case-muted);
    font-size: .7rem;
}

.experience-media__item figcaption span { color: var(--accent); }

.experience-media__video-launch {
    position: relative;
    display: block;
    min-height: 300px;
    color: #fff;
}
.experience-media__video-launch > span {
    position: absolute;
    z-index: 3;
    inset: 50% auto auto 50%;
    min-width: 190px;
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .75rem;
    padding: .75rem 1rem;
    border: 1px solid color-mix(in srgb, var(--accent) 58%, white 42%);
    background: rgba(4, 5, 8, .74);
    font-size: .56rem;
    letter-spacing: .12em;
    transform: translate(-50%, -50%);
    backdrop-filter: blur(16px);
    transition: transform .35s var(--immersive-spring), background .3s;
}
.experience-media__video-launch > span i { color: var(--accent); font-style: normal; }
.experience-media__video-launch:hover > span { background: rgba(4, 5, 8, .92); transform: translate(-50%, -50%) scale(1.04); }

.experience-next {
    position: relative;
    min-height: 72vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    text-align: center;
    color: white;
    isolation: isolate;
}

.experience-next > img,
.experience-next__shade {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
}

.experience-next > img {
    object-fit: cover;
    filter: saturate(.9) brightness(.42);
    transform: scale(1.02);
    transition: transform 1.2s var(--immersive-ease), filter .7s;
}

.experience-next__shade {
    z-index: -1;
    background:
        radial-gradient(circle at center, color-mix(in srgb, var(--next-accent) 28%, transparent), transparent 40%),
        linear-gradient(0deg, rgba(4, 4, 8, .8), rgba(4, 4, 8, .18), rgba(4, 4, 8, .7));
}

.experience-next__label {
    color: rgba(255, 255, 255, .62);
    font-size: .65rem;
    letter-spacing: .1em;
}

.experience-next strong {
    max-width: 12ch;
    margin: 1.4rem 0;
    font-size: clamp(3.7rem, 10vw, 10rem);
    line-height: .9;
    letter-spacing: -.075em;
}

[dir="rtl"] .experience-next strong { line-height: 1.1; letter-spacing: 0; }

.experience-next > i {
    width: 58px;
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--next-accent);
    color: #050508;
    font-style: normal;
    transition: transform .45s var(--immersive-spring);
}

.experience-next:hover > img { transform: scale(1.08); filter: saturate(1.1) brightness(.54); }
.experience-next:hover > i { transform: rotate(45deg) scale(1.12); }

.default-case-hero {
    position: relative;
    min-height: 100svh;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.default-case-hero > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(.55);
}

.default-case-hero .wrap { position: relative; z-index: 3; }
.default-case-hero .wrap > p:last-child { max-width: 44rem; color: var(--case-muted); }
.default-case-story { background: #f2f0f3; color: #09080b; }
.default-case-story h2 { max-width: 13ch; font-size: clamp(3rem, 7vw, 7rem); }
.default-case-story > .wrap > p { max-width: 60rem; font-size: 1rem; }

/* Traffic Sign Recognition — a night drive, not a case-study grid */
.road-case {
    --case-muted: #c7bea7;
    background: #090906;
    color: #fff8e7;
}

.road-hero {
    position: relative;
    min-height: 100svh;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
    background: #080806;
}

.road-hero__world {
    position: absolute;
    inset: -3%;
    z-index: -4;
    width: 106%;
    height: 106%;
    object-fit: cover;
    object-position: center bottom;
    filter: saturate(1.18) contrast(1.12) brightness(.62);
}

.road-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(90deg, rgba(8, 8, 6, .92), rgba(8, 8, 6, .54) 42%, rgba(8, 8, 6, .08) 76%),
        linear-gradient(0deg, #080806, transparent 34%, rgba(8, 8, 6, .34));
}

[dir="rtl"] .road-hero::after {
    background:
        linear-gradient(-90deg, rgba(8, 8, 6, .92), rgba(8, 8, 6, .54) 42%, rgba(8, 8, 6, .08) 76%),
        linear-gradient(0deg, #080806, transparent 34%, rgba(8, 8, 6, .34));
}

.road-hero__weather {
    position: absolute;
    inset: 0;
    z-index: 3;
    opacity: .22;
    pointer-events: none;
    background-image: repeating-linear-gradient(104deg, transparent 0 22px, rgba(255, 255, 255, .46) 23px, transparent 24px 52px);
    background-size: 130% 130%;
    animation: road-rain 1.8s linear infinite;
}

@keyframes road-rain { to { background-position: -120px 240px; } }

.road-hero__lanes {
    position: absolute;
    z-index: 3;
    inset: auto 0 0;
    height: 52%;
    pointer-events: none;
    clip-path: polygon(37% 0, 63% 0, 100% 100%, 0 100%);
    background:
        linear-gradient(108deg, transparent 42.5%, rgba(255, 216, 91, .42) 43% 43.35%, transparent 44%),
        linear-gradient(72deg, transparent 42.5%, rgba(97, 216, 255, .28) 43% 43.35%, transparent 44%);
}

.road-hero__lanes i {
    position: absolute;
    inset: 0 auto 0 50%;
    width: 2px;
    background: linear-gradient(0deg, rgba(255, 216, 91, .92), transparent 82%);
    transform-origin: bottom;
}

.road-hero__lanes i:first-child { transform: rotate(19deg); }
.road-hero__lanes i:nth-child(2) { transform: rotate(-19deg); }
.road-hero__lanes span {
    position: absolute;
    left: 16%;
    right: 16%;
    top: 12%;
    height: 1px;
    background: linear-gradient(90deg, transparent, #ffda63, transparent);
    box-shadow: 0 0 35px rgba(255, 218, 99, .66);
}

.road-hero__content {
    position: relative;
    z-index: 4;
    padding-block-start: var(--header-h);
}

.road-hero__content h1 { max-width: 10ch; }
.road-hero__content > p:not(.eyebrow) {
    max-width: 42rem;
    margin: 1.8rem 0 0;
    color: var(--case-muted);
    font-size: 1rem;
}

.road-hero__chips {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-block-start: 2rem;
    direction: ltr;
}

.road-hero__chips span {
    padding: .38rem .62rem;
    border: 1px solid rgba(255, 220, 112, .28);
    background: rgba(8, 8, 6, .42);
    color: #ffdc70;
    font-size: .54rem;
    letter-spacing: .14em;
    backdrop-filter: blur(10px);
}

.road-hero__hud {
    position: absolute;
    z-index: 5;
    inset: calc(var(--header-h) + 2rem) 3vw auto;
    display: flex;
    justify-content: space-between;
    direction: ltr;
    color: rgba(255, 244, 213, .5);
    font-size: .52rem;
    letter-spacing: .17em;
}

.road-hero__distance {
    position: absolute;
    z-index: 5;
    inset: auto 3vw 2rem auto;
    direction: ltr;
    color: rgba(255, 244, 213, .48);
    font-size: .52rem;
    letter-spacing: .16em;
}

.road-drive {
    min-height: 180vh;
    padding-block: 20vh;
    background:
        repeating-linear-gradient(90deg, transparent 0 99px, rgba(255, 220, 112, .035) 100px),
        #0d0c09;
}

.road-drive__sticky {
    position: sticky;
    top: 15vh;
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(300px, .7fr);
    gap: clamp(2rem, 5vw, 6rem);
    align-items: center;
}

.road-drive__screen {
    position: relative;
    min-height: min(64vh, 700px);
    overflow: hidden;
    border: 1px solid rgba(255, 220, 112, .28);
    clip-path: polygon(4% 0, 100% 6%, 96% 100%, 0 92%);
    background: #030303;
    box-shadow: 0 45px 120px rgba(0, 0, 0, .5);
}

.road-drive__screen video,
.road-drive__screen img {
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    filter: contrast(1.12) saturate(.9) brightness(.82);
}

.road-drive__boxes i {
    position: absolute;
    border: 2px solid #ffdc70;
    box-shadow: 0 0 24px rgba(255, 220, 112, .22);
}

.road-drive__boxes i:nth-child(1) { width: 11%; height: 18%; left: 19%; top: 31%; }
.road-drive__boxes i:nth-child(2) { width: 8%; height: 14%; right: 26%; top: 22%; border-color: #61d8ff; }
.road-drive__boxes i:nth-child(3) { width: 6%; height: 11%; right: 13%; top: 42%; }
.road-drive__boxes span {
    position: absolute;
    left: 19%;
    top: 27%;
    color: #ffdc70;
    font-size: .56rem;
}

.road-drive__scan {
    position: absolute;
    inset: 0 0 auto;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(255, 220, 112, .92), transparent);
    box-shadow: 0 0 25px rgba(255, 220, 112, .55);
    animation: road-scan 3.4s ease-in-out infinite;
}

@keyframes road-scan { 50% { transform: translateY(58vh); opacity: .4; } }

.road-drive__copy > span,
.road-system__head > span {
    color: #ffdc70;
    font-size: .6rem;
    letter-spacing: .16em;
}

.road-drive__copy h2 {
    margin: 1rem 0 1.5rem;
    font-size: clamp(2.8rem, 5.6vw, 6.4rem);
    line-height: .98;
}

[dir="rtl"] .road-drive__copy h2 { line-height: 1.18; }
.road-drive__copy p { color: var(--case-muted); }

.road-proof {
    background: #f0e9d8;
    color: #15120b;
}

.road-proof__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(1rem, 2vw, 2rem);
}

.road-sign-card {
    min-height: 420px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 2rem;
    border: 2px solid #15120b;
    clip-path: polygon(12% 0, 88% 0, 100% 12%, 100% 88%, 88% 100%, 12% 100%, 0 88%, 0 12%);
    background: rgba(255, 255, 255, .28);
}

.road-sign-card > span { margin-block-end: auto; color: #9b6b00; font-size: .62rem; }
.road-sign-card strong { font-size: clamp(3rem, 5.5vw, 6rem); line-height: .85; }
.road-sign-card h2 { margin: 1.4rem 0 .5rem; font-size: 1rem; }
.road-sign-card p { margin: 0; color: #5b5140; font-size: .78rem; }

.road-story {
    min-height: 90vh;
    background: #131109;
}

.road-story__grid {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 8vw;
}

.road-story__grid h2 { max-width: 10ch; margin: 0; font-size: clamp(3rem, 6vw, 6.5rem); line-height: 1; }
[dir="rtl"] .road-story__grid h2 { line-height: 1.2; }
.road-story__body { margin: 0; color: var(--case-muted); font-size: clamp(1rem, 1.35vw, 1.25rem); }

.road-story__route {
    width: min(88vw, 1400px);
    display: flex;
    align-items: center;
    gap: 1rem;
    margin: 6rem auto 0;
    direction: ltr;
    color: rgba(255, 220, 112, .72);
    font-size: .56rem;
    letter-spacing: .15em;
}

.road-story__route i {
    flex: 1;
    height: 2px;
    background: linear-gradient(90deg, transparent, #ffdc70);
}

.road-story__route span { padding: .5rem .7rem; border: 1px solid rgba(255, 220, 112, .24); }

.road-system {
    background:
        linear-gradient(0deg, rgba(255, 220, 112, .05), transparent 40%),
        #080806;
}

.road-system__head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 3rem;
    margin-block-end: 4rem;
}

.road-system__head h2 { max-width: 10ch; margin: 0; font-size: clamp(3rem, 6vw, 6rem); }
.road-system__rail {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-block-start: 1px solid rgba(255, 220, 112, .24);
}

.road-system__rail article {
    min-height: 360px;
    padding: 1.5rem;
    border-inline-end: 1px solid rgba(255, 220, 112, .18);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.road-system__rail article:first-child { border-inline-start: 1px solid rgba(255, 220, 112, .18); }
.road-system__rail article > span { margin-block-end: auto; color: #ffdc70; font-size: .62rem; }
.road-system__rail h3 { margin: 0 0 .8rem; font-size: clamp(1.6rem, 2.6vw, 2.8rem); }
.road-system__rail p { margin: 0; color: var(--case-muted); font-size: .8rem; }
.road-media-section { background: #080806; }

.road-drive__video-launch {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    min-height: inherit;
    color: #fff8e7;
}
.road-drive__video-launch > span {
    position: absolute;
    z-index: 7;
    inset: 50% auto auto 50%;
    min-width: 190px;
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .8rem;
    padding: .8rem 1rem;
    border: 1px solid rgba(255, 220, 112, .52);
    background: rgba(7, 8, 6, .72);
    font-size: .58rem;
    letter-spacing: .13em;
    transform: translate(-50%, -50%);
    backdrop-filter: blur(16px);
    transition: background .3s, transform .35s var(--immersive-spring);
}
.road-drive__video-launch > span i {
    color: #ffdc70;
    font-style: normal;
}
.road-drive__video-launch:hover > span { background: rgba(7, 8, 6, .9); transform: translate(-50%, -50%) scale(1.04); }

/* SCA-Net — orbital bitemporal map */
.satellite-case {
    --case-muted: #a9c4d3;
    background: #06131d;
    color: #eaf9ff;
}

.satellite-hero {
    position: relative;
    height: 100svh;
    min-height: 700px;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
}

.satellite-hero__frames,
.satellite-hero__frames figure {
    position: absolute;
    inset: 0;
    margin: 0;
}

.satellite-hero__frames { z-index: -3; }
.satellite-hero__frames figure { overflow: hidden; }
.satellite-hero__frames figure:first-child { clip-path: polygon(0 0, 58% 0, 42% 100%, 0 100%); }
.satellite-hero__frames figure:nth-child(2) { clip-path: polygon(58% 0, 100% 0, 100% 100%, 42% 100%); }
.satellite-hero__frames img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.94) contrast(1.08) brightness(.58); }
.satellite-hero__frames figure:nth-child(2) img { filter: hue-rotate(22deg) saturate(1.2) contrast(1.08) brightness(.68); transform: scale(1.05); }
.satellite-hero__frames figure span {
    position: absolute;
    inset: auto auto 2rem 3vw;
    color: rgba(255, 255, 255, .52);
    font-size: .52rem;
    letter-spacing: .17em;
}
.satellite-hero__frames figure:nth-child(2) span { left: auto; right: 3vw; }
.satellite-hero__frames > i {
    position: absolute;
    inset: -12% auto -12% 50%;
    width: 2px;
    background: linear-gradient(180deg, transparent, #61d8ff, #ff72c0, transparent);
    transform: rotate(9deg);
    box-shadow: 0 0 30px rgba(97, 216, 255, .6);
}

.satellite-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(90deg, rgba(6, 19, 29, .94), rgba(6, 19, 29, .58) 44%, rgba(6, 19, 29, .14) 78%),
        linear-gradient(0deg, #06131d, transparent 34%);
}

[dir="rtl"] .satellite-hero::after {
    background:
        linear-gradient(-90deg, rgba(6, 19, 29, .94), rgba(6, 19, 29, .58) 44%, rgba(6, 19, 29, .14) 78%),
        linear-gradient(0deg, #06131d, transparent 34%);
}

.satellite-hero__grid {
    position: absolute;
    inset: 0;
    opacity: .26;
    pointer-events: none;
    background:
        repeating-linear-gradient(0deg, rgba(97, 216, 255, .14) 0 1px, transparent 1px 62px),
        repeating-linear-gradient(90deg, rgba(97, 216, 255, .12) 0 1px, transparent 1px 62px);
}

.satellite-hero__content { position: relative; z-index: 4; }
.satellite-hero__content h1 { max-width: 8ch; }
.satellite-hero__content > p:last-child { max-width: 39rem; color: var(--case-muted); }
.satellite-hero__coordinates {
    position: absolute;
    z-index: 4;
    inset: auto 3vw 2rem;
    display: flex;
    justify-content: space-between;
    direction: ltr;
    color: rgba(220, 247, 255, .48);
    font-size: .52rem;
    letter-spacing: .16em;
}

.satellite-metrics { border-block: 1px solid rgba(97, 216, 255, .2); background: #06111a; }
.satellite-metrics__grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.satellite-metrics article {
    min-height: 280px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.5rem;
    border-inline-end: 1px solid rgba(97, 216, 255, .16);
}
.satellite-metrics article:first-child { border-inline-start: 1px solid rgba(97, 216, 255, .16); }
.satellite-metrics article > span { margin-block-end: auto; color: #61d8ff; font-size: .6rem; }
.satellite-metrics strong { font-size: clamp(3.2rem, 6vw, 6.8rem); line-height: .84; }
.satellite-metrics h2 { margin: 1rem 0 .4rem; font-size: 1rem; }
.satellite-metrics p { margin: 0; color: var(--case-muted); font-size: .72rem; }

.satellite-architecture {
    background: #eef8fc;
    color: #07131c;
}

.satellite-architecture__head {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 6vw;
    align-items: end;
    margin-block-end: 4rem;
}

.satellite-architecture__head h2 { max-width: 11ch; margin: 0; font-size: clamp(3rem, 6vw, 6.8rem); line-height: .98; }
[dir="rtl"] .satellite-architecture__head h2 { line-height: 1.16; }
.satellite-architecture__head > p { margin: 0; color: #49616e; }
.satellite-architecture__map {
    position: relative;
    min-height: 620px;
    overflow: hidden;
    border: 1px solid rgba(7, 19, 28, .18);
    background: white;
    box-shadow: 0 45px 110px rgba(16, 70, 96, .12);
}
.satellite-architecture__map > img { width: 100%; height: 100%; min-height: inherit; object-fit: contain; padding: 2rem; }
.satellite-architecture__scan {
    position: absolute;
    inset: 0 auto 0 0;
    width: 2px;
    background: linear-gradient(180deg, transparent, #61d8ff, #ff72c0, transparent);
    box-shadow: 0 0 34px #61d8ff;
    animation: satellite-scan 5s ease-in-out infinite;
}
@keyframes satellite-scan { 50% { transform: translateX(min(84vw, 1320px)); } }
.satellite-architecture__legend {
    position: absolute;
    inset: auto 1rem 1rem;
    display: flex;
    gap: .5rem;
    direction: ltr;
}
.satellite-architecture__legend span { padding: .4rem .6rem; background: #07131c; color: white; font-size: .5rem; letter-spacing: .12em; }

.satellite-story { background: #06131d; }
.satellite-story__grid { display: grid; grid-template-columns: minmax(260px, .55fr) 1.45fr; gap: 8vw; }
.satellite-story aside {
    min-height: 480px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 1.5rem;
    border: 1px solid rgba(97, 216, 255, .22);
    background: linear-gradient(145deg, rgba(97, 216, 255, .1), transparent 55%);
}
.satellite-story aside > span { color: #61d8ff; font-size: .58rem; letter-spacing: .15em; }
.satellite-story aside strong { color: rgba(97, 216, 255, .16); font-size: clamp(8rem, 18vw, 18rem); line-height: .7; }
.satellite-story aside p { color: #dff6ff; font-size: 1rem; }
.satellite-story__lead { margin: 0; color: var(--case-muted); font-size: clamp(1.05rem, 1.45vw, 1.35rem); }

.satellite-layers {
    color: #07131c;
    background:
        repeating-linear-gradient(0deg, rgba(7, 19, 28, .06) 0 1px, transparent 1px 56px),
        repeating-linear-gradient(90deg, rgba(7, 19, 28, .055) 0 1px, transparent 1px 56px),
        #dff1f8;
}
.satellite-layers__heading { margin-block-end: 4rem; }
.satellite-layers__heading h2 { max-width: 10ch; margin: 0; font-size: clamp(3rem, 6vw, 6.5rem); }
.satellite-layers__orbit { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.satellite-layers__orbit article {
    position: relative;
    min-height: 380px;
    overflow: hidden;
    padding: 1.5rem;
    border: 1px solid rgba(7, 19, 28, .16);
    background: rgba(255, 255, 255, .38);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.satellite-layers__orbit article > span { margin-block-end: auto; color: #057eaa; font-size: .62rem; }
.satellite-layers__orbit h3 { margin: 0 0 .8rem; font-size: clamp(1.6rem, 2.4vw, 2.5rem); }
.satellite-layers__orbit p { margin: 0; color: #49616e; font-size: .8rem; }
.satellite-layers__orbit i {
    position: absolute;
    width: 230px;
    aspect-ratio: 1;
    inset: -70px -70px auto auto;
    border: 1px solid rgba(97, 216, 255, .42);
    border-radius: 50%;
}
.satellite-gallery { background: #06131d; }

/* Generative Face Aging — a quiet identity chamber */
.aging-case {
    --case-muted: #d1b9cb;
    background: #0d0712;
    color: #fff3fb;
}

.aging-hero {
    position: relative;
    min-height: 100svh;
    display: grid;
    place-items: center;
    overflow: hidden;
    text-align: center;
    isolation: isolate;
}

.aging-hero__world {
    position: absolute;
    inset: 0;
    z-index: -4;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(1.08) contrast(1.05) brightness(.58);
}

.aging-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(circle at center, transparent 10%, rgba(13, 7, 18, .18) 40%, rgba(13, 7, 18, .92) 84%),
        linear-gradient(0deg, #0d0712, transparent 36%, rgba(13, 7, 18, .6));
}

.aging-hero__content { position: relative; z-index: 4; padding-block-start: var(--header-h); }
.aging-hero__content .experience-back { margin-inline: auto; }
.aging-hero__content h1 { max-width: 9ch; margin-inline: auto; font-size: clamp(4rem, 9vw, 9rem); }
.aging-hero__content > p:last-of-type { max-width: 43rem; margin: 1.6rem auto 0; color: var(--case-muted); }

.aging-hero__rings {
    position: absolute;
    z-index: 3;
    inset: 50% auto auto 50%;
    width: min(64vw, 760px);
    aspect-ratio: 1;
    transform: translate(-50%, -50%);
    pointer-events: none;
}
.aging-hero__rings i {
    position: absolute;
    inset: 0;
    border: 1px solid rgba(255, 126, 192, .34);
    border-radius: 50%;
    animation: aging-ring 24s linear infinite;
}
.aging-hero__rings i:nth-child(2) { inset: 12%; border-style: dashed; border-color: rgba(97, 216, 255, .3); animation-direction: reverse; animation-duration: 17s; }
.aging-hero__rings i:nth-child(3) { inset: 26%; animation-duration: 11s; }
.aging-hero__rings span {
    position: absolute;
    inset: 11% auto auto 78%;
    color: rgba(255, 255, 255, .48);
    font-size: .5rem;
    letter-spacing: .14em;
}
@keyframes aging-ring { to { transform: rotate(360deg); } }

.aging-hero__ages {
    position: absolute;
    z-index: 4;
    inset: auto 5vw 2rem;
    display: flex;
    justify-content: space-between;
    direction: ltr;
    color: rgba(255, 255, 255, .45);
    font-size: .58rem;
}
.aging-hero__ages::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 126, 192, .5), rgba(97, 216, 255, .5), transparent);
}
.aging-hero__ages span { position: relative; padding: .25rem; background: #0d0712; }

.aging-timeline { background: #f6edf4; color: #170c16; }
.aging-timeline__intro { max-width: 1050px; text-align: center; }
.aging-timeline__intro h2 { max-width: 12ch; margin: 0 auto; font-size: clamp(3rem, 6.5vw, 7rem); line-height: .98; }
[dir="rtl"] .aging-timeline__intro h2 { line-height: 1.18; }
.aging-timeline__intro > p:last-child { max-width: 50rem; margin: 1.5rem auto 0; color: #685262; }
.aging-timeline__stage { margin-block-start: 5rem; }
.aging-timeline__portraits {
    position: relative;
    width: min(980px, 100%);
    min-height: 560px;
    margin-inline: auto;
    overflow: hidden;
    border-radius: 48% 52% 46% 54%;
    background: #150c17;
    box-shadow: 0 50px 120px rgba(91, 39, 76, .2);
}
.aging-timeline__portraits img { width: 100%; height: 100%; min-height: inherit; object-fit: cover; filter: saturate(.9) contrast(1.03); }
.aging-timeline__portraits i {
    position: absolute;
    inset: 0 50% 0 auto;
    width: 2px;
    background: linear-gradient(180deg, transparent, #fff, transparent);
    box-shadow: 0 0 36px rgba(255, 126, 192, .8);
}
.aging-timeline__rail {
    position: relative;
    width: min(850px, 86%);
    height: 1px;
    margin: 3rem auto 0;
    direction: ltr;
    background: rgba(23, 12, 22, .18);
}
.aging-timeline__rail span { position: absolute; inset: 0 50% 0 0; background: #ff6fae; }
.aging-timeline__rail b { position: absolute; width: 18px; aspect-ratio: 1; left: 50%; top: 50%; border: 4px solid white; border-radius: 50%; background: #ff6fae; transform: translate(-50%, -50%); box-shadow: 0 0 0 1px #ff6fae; }
.aging-timeline__rail em { position: absolute; top: 1rem; left: 50%; transform: translateX(-50%); font-size: .52rem; font-style: normal; letter-spacing: .14em; white-space: nowrap; }

.aging-identity { padding-block: clamp(6rem, 12vw, 12rem); background: #100815; }
.aging-identity__grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 8vw; }
.aging-identity blockquote { margin: 0; color: #ffb4d6; font-size: clamp(2.5rem, 5vw, 5.4rem); line-height: 1.05; }
[dir="rtl"] .aging-identity blockquote { line-height: 1.26; }
.aging-identity__grid > div > p { margin: 0; color: var(--case-muted); font-size: 1rem; }

.aging-proof { background: radial-gradient(circle at center, rgba(255, 111, 174, .1), transparent 48%), #0d0712; }
.aging-proof__dial { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
.aging-proof__dial article {
    position: relative;
    min-height: 390px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 2rem;
    text-align: center;
}
.aging-proof__dial article i {
    position: absolute;
    inset: 0;
    border: 1px solid rgba(255, 126, 192, .26);
    border-radius: 50%;
}
.aging-proof__dial article:nth-child(2) i { border-style: dashed; border-color: rgba(97, 216, 255, .34); }
.aging-proof__dial strong { font-size: clamp(3.4rem, 6vw, 6.8rem); }
.aging-proof__dial h2 { margin: .6rem 0 .4rem; font-size: 1rem; }
.aging-proof__dial p { max-width: 15rem; margin: 0; color: var(--case-muted); font-size: .72rem; }

.aging-method { background: #f6edf4; color: #170c16; }
.aging-method__head { display: flex; align-items: end; justify-content: space-between; gap: 3rem; margin-block-end: 4rem; }
.aging-method__head > span { color: #a63f74; font-size: .58rem; letter-spacing: .16em; }
.aging-method__head h2 { max-width: 9ch; margin: 0; font-size: clamp(3rem, 6vw, 6rem); }
.aging-method__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; perspective: 1100px; }
.aging-method__cards article {
    min-height: 390px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.6rem;
    border: 1px solid rgba(23, 12, 22, .14);
    background: rgba(255, 255, 255, .55);
    box-shadow: 0 30px 70px rgba(92, 40, 75, .08);
}
.aging-method__cards article:nth-child(1) { transform: rotateY(7deg); }
.aging-method__cards article:nth-child(3) { transform: rotateY(-7deg); }
.aging-method__cards article > span { margin-block-end: auto; color: #b23775; font-size: .6rem; }
.aging-method__cards h3 { margin: 0 0 .8rem; font-size: clamp(1.6rem, 2.6vw, 2.8rem); }
.aging-method__cards p { margin: 0; color: #6b5264; font-size: .8rem; }
.aging-gallery { background: #0d0712; }

/* ROS Navigation — live robot console */
.ros-case {
    --case-muted: #abc7b4;
    background: #06120c;
    color: #effff3;
}

.ros-hero {
    min-height: 100svh;
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(360px, .65fr);
    overflow: hidden;
    background: #06120c;
}

.ros-hero__map {
    position: relative;
    min-height: 100svh;
    overflow: hidden;
    isolation: isolate;
}

.ros-hero__map > img {
    position: absolute;
    inset: 0;
    z-index: -3;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(1.22) contrast(1.1) brightness(.58);
}

.ros-hero__map::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        repeating-linear-gradient(0deg, rgba(117, 255, 130, .08) 0 1px, transparent 1px 44px),
        repeating-linear-gradient(90deg, rgba(117, 255, 130, .07) 0 1px, transparent 1px 44px),
        linear-gradient(90deg, transparent, rgba(6, 18, 12, .74));
}

.ros-hero__console {
    position: relative;
    z-index: 5;
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: calc(var(--header-h) + 2rem) clamp(2rem, 4vw, 5rem) 3rem;
    border-inline-start: 1px solid rgba(117, 255, 130, .18);
    background:
        linear-gradient(180deg, rgba(117, 255, 130, .045), transparent 34%),
        rgba(5, 15, 10, .94);
}

.ros-hero__console .experience-back { margin-block-end: 5vh; }
.ros-hero__status {
    display: flex;
    align-items: center;
    gap: .6rem;
    margin-block-end: 1.5rem;
    color: #75ff82;
    direction: ltr;
    font-size: .54rem;
    letter-spacing: .15em;
}
.ros-hero__status i { width: 7px; aspect-ratio: 1; border-radius: 50%; background: #75ff82; box-shadow: 0 0 18px #75ff82; }
.ros-hero__console h1 { max-width: 7ch; font-size: clamp(3.4rem, 6.4vw, 7.2rem); }
.ros-hero__console > p:not(.eyebrow) { color: var(--case-muted); }
.ros-hero__readouts {
    display: grid;
    grid-template-columns: 1fr;
    gap: .5rem;
    margin-block-start: 2rem;
}
.ros-hero__readouts span {
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .7rem .8rem;
    border: 1px solid rgba(117, 255, 130, .16);
    background: rgba(117, 255, 130, .035);
}
.ros-hero__readouts b { color: #75ff82; font-size: .9rem; }
.ros-hero__readouts em { color: rgba(255, 255, 255, .56); font-size: .6rem; font-style: normal; }

.ros-hero__lidar {
    position: absolute;
    z-index: 4;
    width: min(62vw, 760px);
    aspect-ratio: 1;
    inset: 50% auto auto 48%;
    transform: translate(-50%, -50%) perspective(1000px) rotateX(68deg);
}
.ros-hero__lidar i {
    position: absolute;
    inset: 0;
    border: 1px solid rgba(117, 255, 130, .42);
    border-radius: 50%;
}
.ros-hero__lidar i:nth-child(2) { inset: 18%; border-style: dashed; }
.ros-hero__lidar i:nth-child(3) { inset: 37%; border-color: rgba(97, 216, 255, .45); }
.ros-hero__lidar span {
    position: absolute;
    inset: 50% auto auto 50%;
    width: 50%;
    height: 2px;
    background: linear-gradient(90deg, #75ff82, transparent);
    transform-origin: left;
    animation: lidar-sweep 3s linear infinite;
}
@keyframes lidar-sweep { to { transform: rotate(360deg); } }

.ros-hero__route b {
    position: absolute;
    z-index: 4;
    width: 16px;
    aspect-ratio: 1;
    border: 2px solid #75ff82;
    background: rgba(117, 255, 130, .16);
    box-shadow: 0 0 22px rgba(117, 255, 130, .5);
}
.ros-hero__route b:nth-child(1) { left: 18%; top: 62%; }
.ros-hero__route b:nth-child(2) { left: 49%; top: 43%; }
.ros-hero__route b:nth-child(3) { right: 14%; top: 27%; border-color: #61d8ff; }

.ros-mission {
    color: #07110c;
    background: #eaf4ed;
}
.ros-mission__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; align-items: center; }
.ros-mission__copy h2 { max-width: 11ch; margin: 0; font-size: clamp(3rem, 6vw, 6.3rem); line-height: 1; }
[dir="rtl"] .ros-mission__copy h2 { line-height: 1.2; }
.ros-mission__copy > p:last-of-type { color: #496055; }
.ros-mission__terminal {
    position: relative;
    min-height: 520px;
    overflow: hidden;
    border: 1px solid rgba(7, 17, 12, .18);
    background: #07110c;
    color: #b9ffc0;
    box-shadow: 0 40px 100px rgba(16, 70, 38, .16);
    direction: ltr;
}
.ros-mission__terminal header {
    height: 52px;
    display: flex;
    align-items: center;
    gap: .45rem;
    padding: 0 1rem;
    border-block-end: 1px solid rgba(117, 255, 130, .18);
    font-size: .56rem;
    letter-spacing: .14em;
}
.ros-mission__terminal header span { margin-inline-end: auto; }
.ros-mission__terminal header i { width: 8px; aspect-ratio: 1; border-radius: 50%; background: #75ff82; opacity: .45; }
.ros-mission__terminal > div { padding: 2rem; }
.ros-mission__terminal p { margin: 0 0 1.5rem; color: #b9ffc0; font-family: monospace; font-size: .85rem; }
.ros-mission__terminal p b { display: inline-block; width: 2.4rem; color: #61d8ff; }
.ros-mission__cursor { position: absolute; left: 2rem; bottom: 2rem; animation: terminal-cursor .8s steps(1) infinite; }
@keyframes terminal-cursor { 50% { opacity: 0; } }

.ros-map-section {
    position: relative;
    min-height: 110vh;
    overflow: hidden;
    padding-block: clamp(7rem, 12vw, 12rem);
    background: #06120c;
}
.ros-map-section__grid {
    position: absolute;
    inset: 0;
    opacity: .38;
    background:
        repeating-linear-gradient(0deg, rgba(117, 255, 130, .1) 0 1px, transparent 1px 38px),
        repeating-linear-gradient(90deg, rgba(117, 255, 130, .08) 0 1px, transparent 1px 38px);
    transform: perspective(800px) rotateX(55deg) scale(1.5);
    transform-origin: center bottom;
}
.ros-map-section__head { position: relative; z-index: 2; max-width: 900px; }
.ros-map-section__head > span { color: #75ff82; font-size: .58rem; letter-spacing: .15em; }
.ros-map-section__head h2 { margin: 1rem 0; font-size: clamp(3rem, 6vw, 6.5rem); }
.ros-map-section__head p { color: var(--case-muted); }
.ros-map-section__nodes {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 3rem;
    margin-block-start: 7rem;
}
.ros-map-section__nodes article {
    position: relative;
    min-height: 300px;
    padding: 1.5rem;
    border: 1px solid rgba(117, 255, 130, .24);
    background: rgba(6, 18, 12, .72);
    backdrop-filter: blur(16px);
}
.ros-map-section__nodes article > span { color: #75ff82; font-size: .6rem; }
.ros-map-section__nodes article > i { display: block; width: 58px; aspect-ratio: 1; margin: 3rem 0; border: 1px solid #75ff82; transform: rotate(45deg); }
.ros-map-section__nodes h3 { margin: 0 0 .7rem; font-size: 1.5rem; }
.ros-map-section__nodes p { margin: 0; color: var(--case-muted); font-size: .78rem; }
.ros-map-section__bot { position: absolute; z-index: 2; width: 80px; height: 48px; inset: auto 14% 14%; border: 1px solid #75ff82; background: #0a2414; box-shadow: 0 0 35px rgba(117, 255, 130, .35); }
.ros-map-section__bot span { position: absolute; width: 26px; aspect-ratio: 1; left: 50%; top: -18px; border: 1px solid #61d8ff; border-radius: 50%; transform: translateX(-50%); }
.ros-map-section__bot i { position: absolute; left: -180px; right: 100%; top: 50%; height: 2px; background: linear-gradient(90deg, transparent, #75ff82); }
.ros-takeaway { background: #75ff82; color: #06120c; text-align: center; }
.ros-takeaway span { font-size: .58rem; letter-spacing: .16em; }
.ros-takeaway h2 { max-width: 15ch; margin: 1rem auto 0; font-size: clamp(3rem, 6vw, 6.2rem); }

/* Speaker Recognition — compressed signal tunnel */
.voice-case {
    --case-muted: #bfb1df;
    background: #080713;
    color: #f7f2ff;
}

.voice-hero {
    position: relative;
    min-height: 100svh;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
}
.voice-hero__world {
    position: absolute;
    inset: 0;
    z-index: -4;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(1.2) contrast(1.08) brightness(.55);
}
.voice-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(90deg, rgba(8, 7, 19, .94), rgba(8, 7, 19, .54) 48%, rgba(8, 7, 19, .14)),
        linear-gradient(0deg, #080713, transparent 34%, rgba(8, 7, 19, .5));
}
[dir="rtl"] .voice-hero::after {
    background:
        linear-gradient(-90deg, rgba(8, 7, 19, .94), rgba(8, 7, 19, .54) 48%, rgba(8, 7, 19, .14)),
        linear-gradient(0deg, #080713, transparent 34%, rgba(8, 7, 19, .5));
}
.voice-hero__content { position: relative; z-index: 5; }
.voice-hero__content h1 { max-width: 9ch; }
.voice-hero__content > p:not(.eyebrow) { max-width: 40rem; color: var(--case-muted); }
.voice-hero__listen {
    display: flex;
    align-items: center;
    gap: .8rem;
    margin-block-start: 2rem;
    direction: ltr;
    color: #cbb9ff;
    font-size: .55rem;
    letter-spacing: .15em;
}
.voice-hero__listen i { width: 10px; aspect-ratio: 1; border-radius: 50%; background: #b6a1ff; box-shadow: 0 0 24px #b6a1ff; animation: voice-pulse 1.2s ease infinite; }
@keyframes voice-pulse { 50% { transform: scale(.45); opacity: .45; } }
.voice-hero__spectrum {
    position: absolute;
    z-index: 3;
    inset: 18% 3vw 14% auto;
    width: 44vw;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.2%;
    opacity: .48;
}
.voice-hero__spectrum i {
    width: 2px;
    height: calc(8% + (var(--i) * 6%));
    background: linear-gradient(180deg, #61d8ff, #b6a1ff, transparent);
    box-shadow: 0 0 16px rgba(182, 161, 255, .5);
    animation: spectrum-jump calc(.7s + var(--i) * .06s) ease-in-out infinite alternate;
}
@keyframes spectrum-jump { to { transform: scaleY(.32); opacity: .35; } }
.voice-hero__wave {
    position: absolute;
    z-index: 4;
    inset: auto 0 8%;
    height: 180px;
    opacity: .7;
}
.voice-hero__wave svg { width: 100%; height: 100%; overflow: visible; }
.voice-hero__wave path { fill: none; stroke: url("#none"); stroke: #b6a1ff; stroke-width: 2; filter: drop-shadow(0 0 12px #b6a1ff); vector-effect: non-scaling-stroke; }

.voice-fingerprint { background: #f0edf8; color: #100d1d; }
.voice-fingerprint__head { display: grid; grid-template-columns: 1.2fr .8fr; gap: 7vw; align-items: end; }
.voice-fingerprint__head h2 { max-width: 11ch; margin: 0; font-size: clamp(3rem, 6vw, 6.5rem); line-height: 1; }
[dir="rtl"] .voice-fingerprint__head h2 { line-height: 1.2; }
.voice-fingerprint__head > p { color: #655d79; }
.voice-fingerprint__tunnel {
    position: relative;
    min-height: 560px;
    margin-block-start: 5rem;
    overflow: hidden;
    perspective: 1000px;
    background: radial-gradient(circle at center, rgba(182, 161, 255, .28), transparent 34%), #0a0812;
}
.voice-fingerprint__tunnel i {
    position: absolute;
    inset: calc(var(--ring, 0) * 8%);
    border: 1px solid rgba(182, 161, 255, .28);
    clip-path: polygon(0 45%, 12% 36%, 20% 58%, 31% 28%, 42% 66%, 52% 32%, 64% 58%, 74% 38%, 86% 54%, 100% 46%, 100% 54%, 86% 62%, 74% 46%, 64% 67%, 52% 41%, 42% 74%, 31% 36%, 20% 66%, 12% 44%, 0 55%);
}
.voice-fingerprint__tunnel i:nth-child(2) { --ring: 1; }
.voice-fingerprint__tunnel i:nth-child(3) { --ring: 2; }
.voice-fingerprint__tunnel i:nth-child(4) { --ring: 3; }
.voice-fingerprint__tunnel i:nth-child(5) { --ring: 4; }
.voice-fingerprint__tunnel i:nth-child(6) { --ring: 5; }
.voice-fingerprint__tunnel span { position: absolute; inset: 50% auto auto 50%; transform: translate(-50%, -50%); color: rgba(255, 255, 255, .14); font-size: clamp(7rem, 18vw, 18rem); font-weight: 800; }

.voice-story { padding-block: clamp(7rem, 12vw, 12rem); background: #080713; }
.voice-story__grid { display: grid; grid-template-columns: .6fr 1.4fr; gap: 8vw; }
.voice-story aside { display: flex; flex-direction: column; gap: 1rem; }
.voice-story aside > span { color: #b6a1ff; font-size: .58rem; letter-spacing: .15em; }
.voice-story aside strong { font-size: clamp(4rem, 9vw, 9rem); line-height: .8; direction: ltr; }
.voice-story aside i { height: 2px; background: linear-gradient(90deg, #b6a1ff, transparent); }
.voice-story h2 { max-width: 13ch; margin: 0 0 2rem; font-size: clamp(2.8rem, 5vw, 5.6rem); line-height: 1; }
[dir="rtl"] .voice-story h2 { line-height: 1.22; }
.voice-story__grid > div > p { color: var(--case-muted); }

.voice-bands {
    background:
        repeating-linear-gradient(90deg, rgba(182, 161, 255, .06) 0 2px, transparent 2px 26px),
        #0c0918;
}
.voice-bands__stats,
.voice-bands__methods { display: grid; grid-template-columns: repeat(3, 1fr); }
.voice-bands__stats { margin-block-end: 6rem; }
.voice-bands__stats article {
    position: relative;
    min-height: 300px;
    padding: 1.5rem;
    border: 1px solid rgba(182, 161, 255, .18);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden;
}
.voice-bands__stats article > span { margin-block-end: auto; color: #b6a1ff; font-size: .6rem; }
.voice-bands__stats strong { font-size: clamp(2.8rem, 5vw, 5.5rem); line-height: .85; }
.voice-bands__stats h2 { margin: 1rem 0 .4rem; font-size: 1rem; }
.voice-bands__stats p { margin: 0; color: var(--case-muted); font-size: .72rem; }
.voice-bands__stats i { position: absolute; inset: auto 0 0; height: 1px; background: #b6a1ff; box-shadow: 0 -18px 30px rgba(182, 161, 255, .28); }
.voice-bands__methods { gap: 1rem; }
.voice-bands__methods article { min-height: 340px; padding: 1.5rem; background: rgba(182, 161, 255, .055); display: flex; flex-direction: column; justify-content: flex-end; }
.voice-bands__methods article > span { margin-block-end: auto; color: #61d8ff; font-size: .6rem; }
.voice-bands__methods h3 { margin: 0 0 .8rem; font-size: clamp(1.6rem, 2.5vw, 2.7rem); }
.voice-bands__methods p { margin: 0; color: var(--case-muted); font-size: .8rem; }

/* Medical Records — bright document intelligence */
.records-case {
    --case-muted: #43574f;
    background: #eef7f3;
    color: #07130f;
}

.records-hero {
    min-height: 100svh;
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    overflow: hidden;
    background: #eef7f3;
}
.records-hero__visual { position: relative; min-height: 100svh; overflow: hidden; isolation: isolate; }
.records-hero__visual > img { position: absolute; inset: 0; z-index: -3; width: 100%; height: 100%; object-fit: cover; filter: saturate(.96) brightness(.72); }
.records-hero__visual::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg, transparent 52%, #eef7f3), linear-gradient(0deg, rgba(7, 19, 15, .7), transparent 44%);
}
.records-hero__copy {
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: calc(var(--header-h) + 2rem) clamp(2rem, 5vw, 6rem) 3rem;
}
.records-hero__copy .experience-back { color: #07130f; }
.records-hero__copy h1 { max-width: 8ch; font-size: clamp(3.3rem, 6.2vw, 7rem); }
.records-hero__copy > p:not(.eyebrow) { color: var(--case-muted); }
.records-hero__note {
    width: max-content;
    margin-block-start: 2rem;
    padding: .55rem .7rem;
    border: 1px solid rgba(7, 19, 15, .16);
    color: #087462;
    direction: ltr;
    font-size: .52rem;
    letter-spacing: .13em;
}
.records-hero__documents i {
    position: absolute;
    z-index: 4;
    width: 210px;
    height: 280px;
    border: 1px solid rgba(77, 225, 193, .52);
    background: rgba(7, 19, 15, .34);
    box-shadow: 0 30px 70px rgba(0, 0, 0, .22);
    backdrop-filter: blur(14px);
}
.records-hero__documents i:nth-child(1) { left: 12%; top: 24%; transform: rotate(-11deg); }
.records-hero__documents i:nth-child(2) { left: 42%; top: 36%; transform: rotate(7deg); }
.records-hero__documents i:nth-child(3) { right: 10%; top: 18%; transform: rotate(-4deg); }
.records-hero__documents span { position: absolute; z-index: 5; left: 48%; top: 47%; color: rgba(255, 255, 255, .75); font-size: 2rem; font-weight: 800; }

.records-transform { background: #f8fbf9; }
.records-transform__heading { max-width: 980px; text-align: center; }
.records-transform__heading > span { color: #087462; font-size: .58rem; letter-spacing: .15em; }
.records-transform__heading h2 { max-width: 11ch; margin: 1rem auto; font-size: clamp(3rem, 6vw, 6.6rem); line-height: 1; }
[dir="rtl"] .records-transform__heading h2 { line-height: 1.2; }
.records-transform__heading p { max-width: 52rem; margin-inline: auto; color: #52665e; }
.records-transform__desk {
    min-height: 600px;
    display: grid;
    grid-template-columns: 1fr 150px 1fr;
    gap: 2rem;
    align-items: center;
    margin-block-start: 5rem;
    padding: clamp(2rem, 5vw, 5rem);
    border: 1px solid rgba(7, 19, 15, .12);
    background:
        linear-gradient(90deg, rgba(77, 225, 193, .08), transparent 48%, rgba(255, 174, 91, .07)),
        #eaf4ef;
}
.records-transform__raw { position: relative; min-height: 440px; }
.records-transform__raw article {
    position: absolute;
    width: 64%;
    min-height: 270px;
    padding: 1.4rem;
    border: 1px solid rgba(7, 19, 15, .14);
    background: rgba(255, 255, 255, .84);
    box-shadow: 0 25px 60px rgba(20, 50, 36, .08);
}
.records-transform__raw article:nth-child(1) { left: 4%; top: 2%; transform: rotate(-7deg); }
.records-transform__raw article:nth-child(2) { right: 2%; top: 20%; transform: rotate(6deg); }
.records-transform__raw article:nth-child(3) { left: 18%; bottom: 0; transform: rotate(-2deg); }
.records-transform__raw i { display: block; height: 7px; margin-block-end: .8rem; background: #cad7d0; }
.records-transform__raw i:nth-child(odd) { width: 72%; }
.records-transform__flow { display: flex; align-items: center; gap: .6rem; direction: ltr; }
.records-transform__flow span { flex: 1; height: 1px; background: linear-gradient(90deg, transparent, #087462); }
.records-transform__flow span:last-child { transform: rotate(180deg); }
.records-transform__flow b { width: 56px; aspect-ratio: 1; display: grid; place-items: center; border-radius: 50%; background: #07130f; color: #4de1c1; font-size: .8rem; }
.records-transform__structured {
    overflow: hidden;
    border: 1px solid rgba(7, 19, 15, .16);
    background: white;
    box-shadow: 0 35px 80px rgba(20, 50, 36, .12);
}
.records-transform__structured header { min-height: 58px; display: flex; align-items: center; justify-content: space-between; padding: 1rem; background: #07130f; color: white; font-size: .55rem; letter-spacing: .13em; }
.records-transform__structured header i { width: 8px; aspect-ratio: 1; border-radius: 50%; background: #4de1c1; box-shadow: 0 0 18px #4de1c1; }
.records-transform__structured > div { min-height: 100px; display: grid; grid-template-columns: 40px 1fr .6fr; gap: 1rem; align-items: center; padding: 1rem; border-block-end: 1px solid rgba(7, 19, 15, .1); }
.records-transform__structured b { color: #087462; font-size: .6rem; }
.records-transform__structured span { height: 7px; background: #dce8e2; }

.records-story { background: #07130f; color: #effbf6; }
.records-story__grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8vw; }
.records-story h2 { max-width: 11ch; margin: 0; font-size: clamp(3rem, 6vw, 6.2rem); line-height: 1; }
[dir="rtl"] .records-story h2 { line-height: 1.2; }
.records-story__grid > div:last-child > p { color: #b7ccc3; }
.records-story blockquote { margin: 3rem 0 0; padding: 1rem; border-inline-start: 2px solid #4de1c1; color: #89e8d4; direction: ltr; font-size: .62rem; letter-spacing: .13em; }

.records-proof { border-block: 1px solid rgba(77, 225, 193, .18); background: #091a14; color: #effbf6; }
.records-proof__grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.records-proof article { min-height: 290px; padding: 1.5rem; border-inline-end: 1px solid rgba(77, 225, 193, .14); display: flex; flex-direction: column; justify-content: flex-end; }
.records-proof article:first-child { border-inline-start: 1px solid rgba(77, 225, 193, .14); }
.records-proof article > span { margin-block-end: auto; color: #4de1c1; font-size: .6rem; }
.records-proof strong { font-size: clamp(2.8rem, 5vw, 5.7rem); line-height: .85; }
.records-proof h2 { margin: 1rem 0 .4rem; font-size: 1rem; }
.records-proof p { margin: 0; color: #b7ccc3; font-size: .72rem; }

.records-system { background: #eaf4ef; }
.records-system__head { display: flex; justify-content: space-between; align-items: end; gap: 3rem; margin-block-end: 4rem; }
.records-system__head > span { color: #087462; font-size: .58rem; letter-spacing: .15em; }
.records-system__head h2 { max-width: 10ch; margin: 0; font-size: clamp(3rem, 6vw, 6rem); }
.records-system__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.records-system__cards article { position: relative; min-height: 380px; overflow: hidden; padding: 1.5rem; border: 1px solid rgba(7, 19, 15, .13); background: rgba(255, 255, 255, .56); display: flex; flex-direction: column; justify-content: flex-end; }
.records-system__cards article > span { margin-block-end: auto; color: #087462; font-size: .6rem; }
.records-system__cards h3 { margin: 0 0 .8rem; font-size: clamp(1.6rem, 2.5vw, 2.7rem); }
.records-system__cards p { margin: 0; color: #52665e; font-size: .8rem; }
.records-system__cards i { position: absolute; width: 160px; aspect-ratio: 1; top: -60px; right: -60px; border: 1px solid rgba(77, 225, 193, .28); border-radius: 50%; }

/* Face Attendance — a physical identity gate */
.access-case {
    --case-muted: #cebdae;
    background: #100b09;
    color: #fff5ec;
}

.access-hero {
    position: relative;
    min-height: 100svh;
    display: grid;
    place-items: center;
    overflow: hidden;
    text-align: center;
    isolation: isolate;
}
.access-hero__world {
    position: absolute;
    inset: 0;
    z-index: -4;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(1.14) contrast(1.08) brightness(.52);
}
.access-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(circle at center, transparent 16%, rgba(16, 11, 9, .3) 54%, #100b09 92%),
        linear-gradient(0deg, #100b09, transparent 40%, rgba(16, 11, 9, .58));
}
.access-hero__content { position: relative; z-index: 5; padding-block-start: var(--header-h); }
.access-hero__content .experience-back { margin-inline: auto; }
.access-hero__content h1 { max-width: 9ch; margin-inline: auto; }
.access-hero__content > p:last-of-type { max-width: 42rem; margin: 1.6rem auto 0; color: var(--case-muted); }
.access-hero__gates {
    position: absolute;
    z-index: 3;
    inset: 8% 12%;
    pointer-events: none;
    perspective: 1000px;
}
.access-hero__gates i {
    position: absolute;
    inset: calc(var(--gate, 0) * 9%);
    border: 1px solid rgba(255, 129, 102, .36);
    clip-path: polygon(18% 0, 82% 0, 100% 100%, 0 100%);
    transform: translateZ(calc(var(--gate, 0) * -120px));
}
.access-hero__gates i:nth-child(2) { --gate: 1; border-color: rgba(111, 255, 148, .32); }
.access-hero__gates i:nth-child(3) { --gate: 2; border-color: rgba(97, 216, 255, .3); }
.access-hero__gates span {
    position: absolute;
    left: 50%;
    top: 8%;
    width: 2px;
    height: 82%;
    background: linear-gradient(180deg, transparent, #ff8166, #6fff94, transparent);
    box-shadow: 0 0 32px rgba(255, 129, 102, .6);
}
.access-hero__scan {
    position: absolute;
    z-index: 4;
    inset: 10% 0 auto;
    height: 3px;
    background: linear-gradient(90deg, transparent, #ff8166, #6fff94, transparent);
    box-shadow: 0 0 30px rgba(255, 129, 102, .6);
    animation: access-scan 4s ease-in-out infinite;
}
@keyframes access-scan { 50% { transform: translateY(72vh); opacity: .4; } }
.access-hero__identity {
    position: absolute;
    z-index: 5;
    width: 170px;
    min-height: 230px;
    inset: auto 4vw 4rem auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    padding: 1rem;
    border: 1px solid rgba(255, 255, 255, .2);
    background: rgba(16, 11, 9, .44);
    backdrop-filter: blur(18px);
    direction: ltr;
}
.access-hero__identity > span,
.access-hero__identity em { font-size: .48rem; font-style: normal; letter-spacing: .13em; }
.access-hero__identity i { width: 72px; height: 96px; border: 1px solid rgba(255, 129, 102, .72); border-radius: 50% 50% 44% 44%; }
.access-hero__identity b { font-size: 1.4rem; }
.access-hero__identity em { color: #6fff94; }

.access-ledger { background: #f1e9e2; color: #1b110d; }
.access-ledger__head { display: grid; grid-template-columns: 1.1fr .9fr; gap: 7vw; align-items: end; }
.access-ledger__head h2 { max-width: 11ch; margin: 0; font-size: clamp(3rem, 6vw, 6.5rem); line-height: 1; }
[dir="rtl"] .access-ledger__head h2 { line-height: 1.2; }
.access-ledger__head > p { color: #6b594f; }
.access-ledger__table {
    position: relative;
    margin-block-start: 5rem;
    overflow: hidden;
    border: 1px solid rgba(27, 17, 13, .16);
    background: rgba(255, 255, 255, .46);
    direction: ltr;
}
.access-ledger__table header,
.access-ledger__table > div {
    min-height: 82px;
    display: grid;
    grid-template-columns: 1fr 1fr .7fr .7fr;
    gap: 1rem;
    align-items: center;
    padding: 1rem 1.3rem;
    border-block-end: 1px solid rgba(27, 17, 13, .1);
}
.access-ledger__table header { min-height: 54px; background: #1b110d; color: white; font-size: .5rem; letter-spacing: .14em; }
.access-ledger__table > div { font-size: .72rem; }
.access-ledger__table > div b { color: #0a8054; }
.access-ledger__table > i {
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: linear-gradient(180deg, transparent, #ff8166, #6fff94, transparent);
    animation: ledger-scan 5s ease-in-out infinite;
}
@keyframes ledger-scan { 50% { transform: translateX(min(85vw, 1300px)); } }

.access-story { padding-block: clamp(7rem, 12vw, 12rem); background: #100b09; }
.access-story__grid { display: grid; grid-template-columns: .7fr 1.3fr; gap: 8vw; }
.access-story aside { min-height: 420px; display: flex; flex-direction: column; justify-content: space-between; padding: 1.5rem; border: 1px solid rgba(255, 129, 102, .24); background: linear-gradient(145deg, rgba(255, 129, 102, .1), transparent); }
.access-story aside > span { color: #ff8166; font-size: .6rem; }
.access-story aside strong { font-size: clamp(3.6rem, 7vw, 7rem); line-height: .8; direction: ltr; }
.access-story aside p { color: #ffd5c6; }
.access-story__grid > div > p { margin: 0; color: var(--case-muted); font-size: 1rem; }

.access-proof { background: #1a0f0b; }
.access-proof__gates { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.access-proof__gates article {
    position: relative;
    min-height: 440px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.5rem;
    border: 1px solid rgba(255, 129, 102, .2);
}
.access-proof__gates article > i { position: absolute; inset: 8%; border: 1px solid rgba(255, 129, 102, .28); clip-path: polygon(20% 0, 80% 0, 100% 100%, 0 100%); }
.access-proof__gates article:nth-child(2) > i { border-color: rgba(111, 255, 148, .3); }
.access-proof__gates article:nth-child(3) > i { border-color: rgba(97, 216, 255, .3); }
.access-proof__gates article > span { margin-block-end: auto; color: #ff8166; font-size: .6rem; }
.access-proof__gates strong { font-size: clamp(3rem, 5vw, 5.6rem); line-height: .85; }
.access-proof__gates h2 { margin: 1rem 0 .4rem; font-size: 1rem; }
.access-proof__gates p { margin: 0; color: var(--case-muted); font-size: .72rem; }

.access-zones { background: #efe4dc; color: #1b110d; }
.access-zones__head { display: flex; justify-content: space-between; align-items: end; gap: 3rem; margin-block-end: 4rem; }
.access-zones__head > span { color: #a9472f; font-size: .58rem; letter-spacing: .15em; }
.access-zones__head h2 { max-width: 10ch; margin: 0; font-size: clamp(3rem, 6vw, 6rem); }
.access-zones__grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.access-zones__grid article { min-height: 370px; padding: 1.5rem; border: 1px solid rgba(27, 17, 13, .14); display: flex; flex-direction: column; justify-content: flex-end; }
.access-zones__grid article > span { margin-block-end: auto; color: #a9472f; font-size: .58rem; letter-spacing: .12em; }
.access-zones__grid h3 { margin: 0 0 .8rem; font-size: clamp(1.6rem, 2.5vw, 2.7rem); }
.access-zones__grid p { margin: 0; color: #6b594f; font-size: .8rem; }

/* BazarFootball — stadium transfer exchange */
.football-case {
    --case-muted: #adbcaf;
    background: #06100a;
    color: #f5fff6;
}

.football-hero {
    position: relative;
    min-height: 100svh;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
}
.football-hero__world {
    position: absolute;
    inset: 0;
    z-index: -4;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: saturate(1.1) contrast(1.08) brightness(.68);
}
.football-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(90deg, rgba(4, 12, 7, .38), rgba(4, 12, 7, .1) 48%, rgba(3, 8, 5, .92)),
        linear-gradient(0deg, #06100a, transparent 38%, rgba(4, 12, 7, .26));
}
[dir="rtl"] .football-hero::after {
    background:
        linear-gradient(-90deg, rgba(4, 12, 7, .38), rgba(4, 12, 7, .1) 48%, rgba(3, 8, 5, .92)),
        linear-gradient(0deg, #06100a, transparent 38%, rgba(4, 12, 7, .26));
}
.football-hero__content {
    position: relative;
    z-index: 5;
    width: min(88vw, 1400px);
    margin-inline: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    text-align: end;
    padding-block-start: var(--header-h);
}
[dir="rtl"] .football-hero__content { align-items: flex-start; text-align: start; }
.football-hero__content h1 { max-width: 8ch; font-size: clamp(4.5rem, 10vw, 10rem); }
.football-hero__content > p:not(.eyebrow) { max-width: 39rem; color: var(--case-muted); }
.football-hero__content .experience-back { margin-inline-end: auto; }
[dir="rtl"] .football-hero__content .experience-back { margin-inline: 0 auto; }
.football-hero__cta {
    min-width: 190px;
    min-height: 58px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-block-start: 2rem;
    padding: .9rem 1rem;
    border: 1px solid rgba(109, 255, 138, .45);
    background: rgba(6, 16, 10, .54);
    backdrop-filter: blur(16px);
}
.football-hero__cta i { color: #6dff8a; font-style: normal; }
.football-hero__floodlights i { position: absolute; z-index: 3; width: 42vw; height: 2px; top: 12%; background: linear-gradient(90deg, transparent, white, transparent); filter: drop-shadow(0 0 22px white); transform: rotate(8deg); }
.football-hero__floodlights i:first-child { left: -5%; }
.football-hero__floodlights i:last-child { right: -5%; transform: rotate(-8deg); }
.football-hero__tunnel { position: absolute; z-index: 3; inset: 0; pointer-events: none; box-shadow: inset 0 0 180px 70px rgba(0, 0, 0, .64); }
.football-hero__score {
    position: absolute;
    z-index: 5;
    inset: auto auto 2rem 50%;
    min-width: 230px;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 1rem;
    align-items: center;
    transform: translateX(-50%);
    direction: ltr;
    color: rgba(255, 255, 255, .52);
    font-size: .5rem;
    letter-spacing: .12em;
}
.football-hero__score b { padding: .45rem .65rem; background: #6dff8a; color: #06100a; font-size: .7rem; }

.football-market { background: #07140c; }
.football-market__head { display: grid; grid-template-columns: 1.1fr .9fr; gap: 7vw; align-items: end; }
.football-market__head h2 { max-width: 12ch; margin: 0; font-size: clamp(3rem, 6vw, 6.5rem); line-height: 1; }
[dir="rtl"] .football-market__head h2 { line-height: 1.2; }
.football-market__head > p { color: var(--case-muted); }
.football-market__stage {
    position: relative;
    min-height: 650px;
    margin-block-start: 5rem;
    overflow: hidden;
    border: 1px solid rgba(109, 255, 138, .22);
    background: #030805;
    box-shadow: 0 45px 120px rgba(0, 0, 0, .36);
}
.football-market__stage > img { width: 100%; height: 100%; min-height: inherit; object-fit: cover; filter: saturate(1.08) brightness(.78); }
.football-market__stage::after { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at center, transparent 20%, rgba(3, 8, 5, .62)); pointer-events: none; }
.football-market__orbit { position: absolute; z-index: 3; inset: 0; pointer-events: none; }
.football-market__orbit > i { position: absolute; inset: 14%; border: 1px solid rgba(109, 255, 138, .36); border-radius: 50%; transform: perspective(900px) rotateX(68deg); }
.football-market__orbit > i:nth-child(2) { inset: 26%; border-style: dashed; border-color: rgba(255, 201, 94, .44); }
.football-market__orbit > i:nth-child(3) { inset: 38%; border-color: rgba(97, 216, 255, .4); }
.football-profile {
    position: absolute;
    width: 76px;
    aspect-ratio: .72;
    display: grid;
    place-items: center;
    border: 1px solid rgba(109, 255, 138, .58);
    background: rgba(5, 15, 9, .66);
    color: white;
    font-size: .62rem;
    backdrop-filter: blur(12px);
    box-shadow: 0 15px 45px rgba(0, 0, 0, .3);
}
.football-profile--a { left: 18%; top: 22%; }
.football-profile--b { right: 19%; top: 27%; border-color: rgba(97, 216, 255, .62); }
.football-profile--c { left: 36%; bottom: 14%; border-color: rgba(255, 201, 94, .65); }
.football-profile--d { right: 34%; bottom: 18%; }

.football-roles { overflow: hidden; border-block: 1px solid rgba(109, 255, 138, .18); background: #6dff8a; color: #06100a; direction: ltr; }
.football-roles > div { width: max-content; display: flex; align-items: center; padding-block: .85rem; animation: football-marquee 22s linear infinite; }
.football-roles span { margin-inline: 1.4rem; font-size: .66rem; letter-spacing: .14em; }
.football-roles i { margin-inline-start: 1rem; font-style: normal; }
@keyframes football-marquee { to { transform: translateX(-50%); } }

.football-story { background: #eef5ef; color: #07120b; }
.football-story__grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 8vw; }
.football-story aside { min-height: 500px; display: flex; flex-direction: column; justify-content: space-between; padding: 1.5rem; border: 1px solid rgba(7, 18, 11, .16); background: rgba(255, 255, 255, .45); }
.football-story aside > span { color: #08713b; font-size: .58rem; letter-spacing: .14em; }
.football-story aside h2 { max-width: 10ch; margin: 0; font-size: clamp(2.3rem, 4.2vw, 4.6rem); line-height: 1.05; }
[dir="rtl"] .football-story aside h2 { line-height: 1.25; }
.football-story__ball { position: relative; width: 160px; aspect-ratio: 1; align-self: center; border: 1px solid #07120b; border-radius: 50%; }
.football-story__ball::before,
.football-story__ball::after,
.football-story__ball i { content: ""; position: absolute; inset: 28%; border: 1px solid #07120b; transform: rotate(45deg); }
.football-story__ball::after { inset: 12% 38%; transform: rotate(24deg); }
.football-story__ball i { inset: 38% 12%; transform: rotate(-24deg); }
.football-story__grid > div > p { margin: 0; color: #516056; font-size: 1rem; }

.football-proof { background: #06100a; }
.football-proof__grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.football-proof article { min-height: 310px; padding: 1.5rem; border-inline-end: 1px solid rgba(109, 255, 138, .16); display: flex; flex-direction: column; justify-content: flex-end; }
.football-proof article:first-child { border-inline-start: 1px solid rgba(109, 255, 138, .16); }
.football-proof article > span { margin-block-end: auto; color: #6dff8a; font-size: .6rem; }
.football-proof strong { font-size: clamp(3rem, 5vw, 5.8rem); line-height: .85; }
.football-proof h2 { margin: 1rem 0 .4rem; font-size: 1rem; }
.football-proof p { margin: 0; color: var(--case-muted); font-size: .72rem; }

.football-flow {
    color: #07120b;
    background:
        linear-gradient(rgba(7, 18, 11, .08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(7, 18, 11, .08) 1px, transparent 1px),
        #dfeadf;
    background-size: 84px 84px;
}
.football-flow__head { display: flex; justify-content: space-between; align-items: end; gap: 3rem; margin-block-end: 4rem; }
.football-flow__head > span { color: #08713b; font-size: .58rem; letter-spacing: .14em; }
.football-flow__head h2 { max-width: 10ch; margin: 0; font-size: clamp(3rem, 6vw, 6rem); }
.football-flow__pitch { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.football-flow__pitch::before { content: ""; position: absolute; inset: 8% -3%; border: 1px solid rgba(7, 18, 11, .14); border-radius: 50%; pointer-events: none; }
.football-flow__pitch article { position: relative; z-index: 1; min-height: 390px; padding: 1.5rem; border: 1px solid rgba(7, 18, 11, .15); background: rgba(239, 247, 239, .84); display: flex; flex-direction: column; justify-content: flex-end; }
.football-flow__pitch article > span { margin-block-end: auto; color: #08713b; font-size: .6rem; }
.football-flow__pitch article > i { width: 18px; aspect-ratio: 1; margin-block-end: 2rem; border-radius: 50%; background: #6dff8a; box-shadow: 0 0 0 9px rgba(109, 255, 138, .22); }
.football-flow__pitch h3 { margin: 0 0 .8rem; font-size: clamp(1.6rem, 2.5vw, 2.7rem); }
.football-flow__pitch p { margin: 0; color: #516056; font-size: .8rem; }

/* Anesthesia Assistant — calm specialist cockpit */
.anesthesia-case {
    --case-muted: #b8d0ca;
    background: #061513;
    color: #effefa;
}

.anesthesia-hero {
    position: relative;
    min-height: 100svh;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
}
.anesthesia-hero__world {
    position: absolute;
    inset: 0;
    z-index: -4;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(.98) contrast(1.02) brightness(.84);
}
.anesthesia-hero__wash {
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(90deg, rgba(4, 25, 28, .94), rgba(4, 25, 28, .76) 36%, rgba(4, 25, 28, .12) 68%),
        linear-gradient(0deg, #061513, transparent 38%, rgba(4, 25, 28, .3));
}
[dir="rtl"] .anesthesia-hero__wash {
    background:
        linear-gradient(-90deg, rgba(4, 25, 28, .94), rgba(4, 25, 28, .76) 36%, rgba(4, 25, 28, .12) 68%),
        linear-gradient(0deg, #061513, transparent 38%, rgba(4, 25, 28, .3));
}
.anesthesia-hero__content { position: relative; z-index: 5; padding-block-start: var(--header-h); }
.anesthesia-hero__content h1 { max-width: 9ch; font-size: clamp(3.8rem, 8vw, 8.6rem); }
.anesthesia-hero__content > p:not(.eyebrow) { max-width: 41rem; color: var(--case-muted); }
.anesthesia-hero__support {
    display: flex;
    align-items: center;
    gap: .7rem;
    margin-block-start: 2rem;
    color: #82f1dc;
    direction: ltr;
    font-size: .52rem;
    letter-spacing: .14em;
}
.anesthesia-hero__support i { width: 7px; aspect-ratio: 1; border-radius: 50%; background: #82f1dc; box-shadow: 0 0 18px #82f1dc; }
.anesthesia-hero__vitals {
    position: absolute;
    z-index: 4;
    inset: auto 0 6%;
    height: 110px;
    opacity: .58;
}
.anesthesia-hero__vitals svg { width: 100%; height: 100%; }
.anesthesia-hero__vitals path { fill: none; stroke: #82f1dc; stroke-width: 2; vector-effect: non-scaling-stroke; filter: drop-shadow(0 0 10px #82f1dc); }
.anesthesia-hero__readout {
    position: absolute;
    z-index: 5;
    inset: calc(var(--header-h) + 2rem) 3vw auto auto;
    display: flex;
    gap: .55rem;
    direction: ltr;
}
.anesthesia-hero__readout span {
    min-width: 92px;
    padding: .7rem;
    border: 1px solid rgba(130, 241, 220, .2);
    background: rgba(4, 25, 28, .4);
    color: rgba(255, 255, 255, .58);
    font-size: .52rem;
    backdrop-filter: blur(14px);
}
.anesthesia-hero__readout b { display: block; margin-block-start: .4rem; color: #82f1dc; font-size: 1.2rem; }

.anesthesia-path { background: #f2f8f6; color: #071713; }
.anesthesia-path__head { max-width: 1050px; text-align: center; }
.anesthesia-path__head > span { color: #087668; font-size: .58rem; letter-spacing: .14em; }
.anesthesia-path__head h2 { max-width: 12ch; margin: 1rem auto; font-size: clamp(3rem, 6vw, 6.5rem); line-height: 1; }
[dir="rtl"] .anesthesia-path__head h2 { line-height: 1.2; }
.anesthesia-path__head p { max-width: 54rem; margin-inline: auto; color: #50655f; }
.anesthesia-path__rooms { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-block-start: 5rem; }
.anesthesia-path__rooms article { min-height: 450px; padding: 1.5rem; border: 1px solid rgba(7, 23, 19, .14); background: rgba(255, 255, 255, .58); display: flex; flex-direction: column; justify-content: flex-end; }
.anesthesia-path__rooms article > span { margin-block-end: auto; color: #087668; font-size: .6rem; }
.anesthesia-path__wave { height: 80px; display: flex; align-items: center; gap: 8px; margin-block-end: 2rem; }
.anesthesia-path__wave i { flex: 1; height: 2px; background: #67e8d1; box-shadow: 0 0 12px rgba(103, 232, 209, .5); }
.anesthesia-path__wave i:nth-child(2) { transform: skewY(-36deg); }
.anesthesia-path__rooms strong { font-size: clamp(2.8rem, 5vw, 5.3rem); line-height: .85; }
.anesthesia-path__rooms h3 { margin: 1rem 0 .5rem; font-size: 1rem; }
.anesthesia-path__rooms p { margin: 0; color: #50655f; font-size: .76rem; }

.anesthesia-airway {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 1.25fr .75fr;
    background: #061513;
}
.anesthesia-airway__visual { position: relative; min-height: 100vh; overflow: hidden; }
.anesthesia-airway__visual img { width: 100%; height: 100%; min-height: inherit; object-fit: cover; filter: saturate(.94) brightness(.8); }
.anesthesia-airway__visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 58%, #061513); }
.anesthesia-airway__pulse { position: absolute; inset: 50% auto auto 0; width: 45%; height: 3px; background: linear-gradient(90deg, transparent, #67e8d1); box-shadow: 0 0 25px #67e8d1; animation: airway-pulse 3s ease-in-out infinite; }
@keyframes airway-pulse { 50% { transform: translateX(26vw); opacity: .4; } }
.anesthesia-airway__copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(3rem, 6vw, 7rem); }
.anesthesia-airway__copy h2 { margin: 0 0 1.4rem; font-size: clamp(3rem, 6vw, 6rem); line-height: 1; }
[dir="rtl"] .anesthesia-airway__copy h2 { line-height: 1.2; }
.anesthesia-airway__copy > p:last-child { color: var(--case-muted); }

.anesthesia-story { background: #e8f2ef; color: #071713; }
.anesthesia-story__grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 8vw; }
.anesthesia-story aside { min-height: 440px; display: flex; flex-direction: column; justify-content: space-between; padding: 1.5rem; border: 1px solid rgba(7, 23, 19, .14); background: rgba(255, 255, 255, .5); }
.anesthesia-story aside > span { color: #087668; font-size: .58rem; letter-spacing: .14em; }
.anesthesia-story blockquote { margin: 0; color: #0b6559; font-size: clamp(2.2rem, 4.2vw, 4.5rem); line-height: 1.08; }
[dir="rtl"] .anesthesia-story blockquote { line-height: 1.28; }
.anesthesia-story aside > p { color: #087668; direction: ltr; font-size: .54rem; letter-spacing: .13em; }
.anesthesia-story__grid > div > p { margin: 0; color: #50655f; font-size: 1rem; }

.anesthesia-system {
    background:
        repeating-linear-gradient(0deg, rgba(103, 232, 209, .05) 0 1px, transparent 1px 48px),
        #061513;
}
.anesthesia-system__head { display: flex; justify-content: space-between; align-items: end; gap: 3rem; margin-block-end: 4rem; }
.anesthesia-system__head > span { color: #67e8d1; font-size: .58rem; letter-spacing: .14em; }
.anesthesia-system__head h2 { max-width: 13ch; margin: 0; font-size: clamp(3rem, 6vw, 6rem); }
.anesthesia-system__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.anesthesia-system__cards article { position: relative; min-height: 400px; overflow: hidden; padding: 1.5rem; border: 1px solid rgba(103, 232, 209, .18); background: rgba(103, 232, 209, .035); display: flex; flex-direction: column; justify-content: flex-end; }
.anesthesia-system__cards article > span { margin-block-end: auto; color: #67e8d1; font-size: .6rem; }
.anesthesia-system__cards article > i { width: 70px; height: 2px; margin-block-end: 2rem; background: linear-gradient(90deg, #67e8d1, #ffb45b, transparent); box-shadow: 0 0 18px rgba(103, 232, 209, .45); }
.anesthesia-system__cards h3 { margin: 0 0 .8rem; font-size: clamp(1.6rem, 2.5vw, 2.7rem); }
.anesthesia-system__cards p { margin: 0; color: var(--case-muted); font-size: .8rem; }

@media (max-width: 1180px) {
    .journey__chapters li { width: min(760px, 78vw); }
    .journey__probe-label { display: none; }

    .road-drive__sticky { grid-template-columns: 1fr; }
    .road-drive__copy { max-width: 780px; }
    .road-drive { min-height: 210vh; }
    .road-proof__grid,
    .road-system__rail,
    .satellite-layers__orbit,
    .aging-proof__dial,
    .aging-method__cards,
    .ros-map-section__nodes,
    .voice-bands__stats,
    .voice-bands__methods,
    .records-proof__grid,
    .records-system__cards,
    .access-proof__gates,
    .access-zones__grid,
    .football-proof__grid,
    .football-flow__pitch,
    .anesthesia-path__rooms,
    .anesthesia-system__cards {
        grid-template-columns: 1fr 1fr;
    }

    .ros-hero { grid-template-columns: 1fr; }
    .ros-hero__map { min-height: 62svh; }
    .ros-hero__console { min-height: auto; padding-block: 6rem; }
    .ros-hero__console h1 { max-width: 10ch; }
    .ros-hero__readouts { grid-template-columns: repeat(3, 1fr); }
    .ros-hero__readouts span { display: block; }

    .records-hero { grid-template-columns: 1fr; }
    .records-hero__visual { min-height: 62svh; }
    .records-hero__copy { min-height: auto; padding-block: 7rem; }
    .records-hero__visual::after { background: linear-gradient(0deg, #eef7f3, transparent 36%); }

    .anesthesia-airway { grid-template-columns: 1fr; }
    .anesthesia-airway__visual { min-height: 65svh; }
    .anesthesia-airway__visual::after { background: linear-gradient(0deg, #061513, transparent 34%); }
}

@media (max-width: 760px) {
    .loader__logo { width: 58px; height: 58px; }

    .journey {
        height: 470vh;
        min-height: 2900px;
    }
    .journey__sticky { min-height: 620px; }
    .journey__backdrop { object-position: 58% center; }
    [dir="rtl"] .journey__backdrop { object-position: 42% center; }
    .journey__canvas { opacity: .4; }
    .journey__veil,
    [dir="rtl"] .journey__veil {
        background:
            linear-gradient(0deg, rgba(2, 2, 5, .92), rgba(2, 2, 5, .46) 58%, rgba(2, 2, 5, .44)),
            radial-gradient(circle at 50% 36%, transparent, rgba(2, 2, 5, .45) 74%);
    }
    .journey__hud {
        inset: auto 6vw 4.7rem;
        justify-content: flex-end;
        align-items: center;
    }
    .journey__mode,
    .journey__controls button { display: none; }
    .journey__controls a { min-height: 32px; max-width: none; padding: .4rem .55rem; text-align: center; line-height: 1.3; }
    .journey__intro {
        width: min(88vw, 620px);
        justify-content: flex-end;
        padding-block-end: 8rem;
        text-align: center;
        transform-origin: center bottom;
    }
    .journey__intro .eyebrow { margin-inline: auto; }
    .journey__intro h1 {
        max-width: 9ch;
        margin-inline: auto;
        font-size: clamp(3rem, 13vw, 5.2rem);
        line-height: 1;
    }
    [dir="rtl"] .journey__intro h1 {
        max-width: 9.5ch;
        font-size: clamp(2.7rem, 11.5vw, 4.4rem);
        line-height: 1.16;
    }
    .journey__intro-bottom {
        width: 100%;
        display: block;
        margin-block-start: 1.5rem;
    }
    .journey__intro-bottom > p { font-size: .84rem; }
    .journey__intro .orb-button { margin: 1.3rem auto 0; }
    .journey__chapters li {
        inset-block-start: auto;
        inset-block-end: 7.5rem;
        width: 100%;
        grid-template-columns: 34px 1fr;
        text-align: start;
    }
    .journey__chapters li.is-active { transform: none; }
    .journey__chapters h2,
    [dir="rtl"] .journey__chapters h2 {
        max-width: 9ch;
        font-size: clamp(3rem, 15vw, 5.5rem);
    }
    .journey__chapters p { font-size: .82rem; }
    .journey__rail { inset: auto 6vw 2rem; grid-template-columns: auto 1fr auto; }
    .journey__scroll { display: none; }

    .immersive-case h1 {
        width: 100%;
        max-width: 100% !important;
        font-size: clamp(2.7rem, 11.5vw, 4.6rem);
        overflow-wrap: normal;
    }
    [dir="rtl"] .immersive-case h1 { text-align: right; }
    .case-webgl { opacity: .16 !important; }
    .experience-back { margin-block-end: 4vh; }
    .experience-stack { display: block; margin-block-start: 2.5rem; }
    .experience-stack > a { margin-block-start: 1.5rem; }
    .experience-media { grid-template-columns: 1fr; }
    .experience-media__item--wide { grid-column: auto; }
    .experience-media__item img,
    .experience-media__item video { height: 300px; min-height: 0; }
    .experience-next { min-height: 55vh; }
    .experience-next strong { font-size: clamp(3.1rem, 15vw, 6rem); }

    .road-hero,
    .satellite-hero,
    .aging-hero,
    .voice-hero,
    .access-hero,
    .football-hero,
    .anesthesia-hero { min-height: 100svh; }
    .road-hero__hud,
    .road-hero__weather,
    .road-hero__distance,
    .satellite-hero__coordinates,
    .aging-hero__ages,
    .access-hero__identity,
    .anesthesia-hero__readout { display: none; }
    .road-hero__content,
    .satellite-hero__content,
    .aging-hero__content,
    .voice-hero__content,
    .access-hero__content,
    .football-hero__content,
    .anesthesia-hero__content {
        width: min(88vw, 620px);
        align-self: end;
        padding-block: 0 7.5rem;
    }
    .road-hero__content h1,
    .satellite-hero__content h1,
    .aging-hero__content h1,
    .voice-hero__content h1,
    .access-hero__content h1,
    .football-hero__content h1,
    .anesthesia-hero__content h1 { max-width: 10ch; }

    .road-drive { min-height: auto; padding-block: 7rem; }
    .road-drive__sticky { position: relative; top: auto; }
    .road-drive__screen { min-height: 360px; clip-path: none; }
    .road-drive__copy h2 { font-size: 2.8rem; }
    .road-proof__grid,
    .road-system__rail,
    .satellite-metrics__grid,
    .satellite-layers__orbit,
    .aging-proof__dial,
    .aging-method__cards,
    .ros-hero__readouts,
    .ros-map-section__nodes,
    .voice-bands__stats,
    .voice-bands__methods,
    .records-proof__grid,
    .records-system__cards,
    .access-proof__gates,
    .access-zones__grid,
    .football-proof__grid,
    .football-flow__pitch,
    .anesthesia-path__rooms,
    .anesthesia-system__cards {
        grid-template-columns: 1fr;
    }
    .road-sign-card,
    .road-system__rail article,
    .satellite-layers__orbit article,
    .aging-method__cards article,
    .ros-map-section__nodes article,
    .voice-bands__methods article,
    .records-system__cards article,
    .access-zones__grid article,
    .football-flow__pitch article,
    .anesthesia-system__cards article { min-height: 290px; transform: none !important; }
    .road-story__grid,
    .satellite-architecture__head,
    .satellite-story__grid,
    .aging-identity__grid,
    .ros-mission__grid,
    .voice-fingerprint__head,
    .voice-story__grid,
    .records-story__grid,
    .access-ledger__head,
    .access-story__grid,
    .football-market__head,
    .football-story__grid,
    .anesthesia-story__grid {
        grid-template-columns: 1fr;
    }
    .road-system__head,
    .aging-method__head,
    .records-system__head,
    .access-zones__head,
    .football-flow__head,
    .anesthesia-system__head { display: block; }
    .road-system__head h2,
    .aging-method__head h2,
    .records-system__head h2,
    .access-zones__head h2,
    .football-flow__head h2,
    .anesthesia-system__head h2 { margin-block-start: 1rem; }

    .satellite-hero__frames figure:first-child { clip-path: polygon(0 0, 68% 0, 48% 100%, 0 100%); }
    .satellite-hero__frames figure:nth-child(2) { clip-path: polygon(68% 0, 100% 0, 100% 100%, 48% 100%); }
    .satellite-architecture__map { min-height: 370px; }
    .satellite-architecture__map > img { padding: .7rem; }
    .satellite-story aside,
    .access-story aside,
    .football-story aside,
    .anesthesia-story aside { min-height: 330px; }

    .aging-hero__rings { width: 115vw; }
    .aging-timeline__portraits { min-height: 360px; border-radius: 44% 56% 48% 52%; }
    .aging-proof__dial article { min-height: 300px; }

    .ros-hero__map { min-height: 58svh; }
    .ros-hero__console { padding: 4rem 6vw 6rem; }
    .ros-mission__terminal { min-height: 400px; }
    .ros-map-section__bot { display: none; }

    .voice-hero__spectrum { inset: 12% 0 auto; width: 100%; height: 35%; }
    .voice-hero__wave { bottom: 2%; opacity: .42; }
    .voice-fingerprint__tunnel { min-height: 360px; }

    .records-hero__visual { min-height: 56svh; }
    .records-hero__copy { padding: 4rem 6vw 6rem; }
    .records-transform__desk { min-height: auto; grid-template-columns: 1fr; padding: 1rem; }
    .records-transform__raw { min-height: 390px; }
    .records-transform__flow { transform: rotate(90deg); width: 120px; margin: 1rem auto; }
    .records-hero__documents i { width: 130px; height: 180px; }

    .access-ledger__table { overflow-x: auto; }
    .access-ledger__table header,
    .access-ledger__table > div { min-width: 650px; }
    .access-hero__gates { inset: 15% -24%; }

    .football-hero__content,
    [dir="rtl"] .football-hero__content { align-items: flex-start; text-align: start; }
    .football-hero__content .experience-back,
    [dir="rtl"] .football-hero__content .experience-back { margin-inline: 0; }
    .football-hero__score { display: none; }
    .football-market__stage { min-height: 430px; }
    .football-profile { width: 54px; }
    .football-flow__pitch::before { display: none; }

    .anesthesia-hero__vitals { bottom: 1%; opacity: .35; }
    .anesthesia-airway__visual { min-height: 54svh; }
    .anesthesia-airway__copy { padding: 5rem 6vw; }
}

@media (max-width: 420px) {
    .journey__controls a { font-size: .48rem; }
    .journey__chapters p { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
    .road-hero__chips span:nth-child(n+4) { display: none; }
    .football-market__orbit { display: none; }
}

html.motion-paused *,
html.motion-paused *::before,
html.motion-paused *::after {
    animation-play-state: paused !important;
}

html.motion-paused .journey__canvas { opacity: .15; }

@media (prefers-reduced-motion: reduce) {
    .journey {
        height: 100svh;
        min-height: 680px;
    }
    .journey__sticky { position: relative; }
    .journey__backdrop { display: none; }
    .journey__backdrop--cosmos { display: block; opacity: 1; transform: none; }
    .journey__canvas,
    .journey__chapters,
    .journey__rail,
    .journey__probe-label,
    .journey__scroll,
    .journey__controls button { display: none; }
    .journey__intro { opacity: 1; transform: none; }
    .road-hero__weather,
    .road-drive__scan,
    .satellite-architecture__scan,
    .aging-hero__rings,
    .ros-hero__lidar span,
    .voice-hero__spectrum,
    .access-hero__scan,
    .access-ledger__table > i,
    .football-roles > div,
    .anesthesia-airway__pulse { animation: none !important; }
}

@media (forced-colors: active) {
    .case-webgl,
    .journey__canvas,
    .journey__noise { display: none; }
    .experience-back,
    .journey__controls a,
    .journey__controls button,
    .experience-stack > a { border: 1px solid CanvasText; }
}

/* EXXA 2026 brand lockup + first-person journey orchestration */
.brand__lockup {
    display: block;
    width: clamp(116px, 9.5vw, 148px);
    height: auto;
    filter: drop-shadow(0 0 22px rgba(124, 255, 202, .14));
}

.journey { height: 600vh; min-height: 3600px; }

.journey__mantra {
    width: max-content;
    margin: 0 0 1rem;
    padding: .42rem .62rem;
    border: 1px solid rgba(158, 255, 161, .32);
    background: rgba(5, 7, 10, .34);
    color: #dffff0;
    direction: ltr;
    font-size: .56rem;
    font-weight: 720;
    letter-spacing: .2em;
    line-height: 1;
    backdrop-filter: blur(14px);
}

[dir="rtl"] .journey__mantra { margin-inline-start: auto; }

html,
body { max-width: 100%; overflow-x: hidden; }

@supports (overflow: clip) {
    html,
    body { overflow-x: clip; }
}

:where(a, button, input, textarea, select, [tabindex]):focus-visible {
    outline: 2px solid #9effa1;
    outline-offset: 4px;
    box-shadow: 0 0 0 5px rgba(5, 7, 10, .76), 0 0 28px rgba(158, 255, 161, .3);
}

#case-content { scroll-margin-top: var(--header-h); }

.case-journey {
    --case-progress: 0;
    --case-journey-height: 340vh;
    position: relative;
    height: var(--case-journey-height);
    min-height: 2100px;
    overflow: visible;
    background: inherit;
}

.road-case .case-journey { --case-journey-height: 400vh; }
.football-case .case-journey { --case-journey-height: 360vh; }
.satellite-case .case-journey { --case-journey-height: 370vh; }
.aging-case .case-journey { --case-journey-height: 320vh; }
.ros-case .case-journey { --case-journey-height: 380vh; }
.voice-case .case-journey { --case-journey-height: 330vh; }
.records-case .case-journey { --case-journey-height: 340vh; }
.access-case .case-journey { --case-journey-height: 320vh; }
.anesthesia-case .case-journey { --case-journey-height: 390vh; }

.case-journey__sticky {
    position: sticky;
    top: 0;
    width: 100%;
    height: 100svh;
    min-height: 650px;
    overflow: hidden;
    isolation: isolate;
    background: inherit;
}

.case-journey__sticky > header {
    width: 100%;
    height: 100%;
    min-height: 100%;
    max-height: 100%;
}

.case-journey .case-webgl {
    width: 100%;
    height: 100%;
    opacity: .56;
    mix-blend-mode: screen;
}

html.journey-running .case-journey .case-webgl[data-journey-ready="true"] {
    opacity: 1;
    mix-blend-mode: normal;
    filter: saturate(1.06) contrast(1.035);
}

/* Project posters stay available for no-JS/WebGL fallback, then dissolve
   behind the rendered world instead of flattening it. */
html.journey-running .case-journey :is(
    .road-hero__world,
    .football-hero__world,
    .satellite-hero__frames,
    .aging-hero__world,
    .ros-hero__map > img,
    .voice-hero__world,
    .records-hero__visual > img,
    .access-hero__world,
    .anesthesia-hero__world,
    .default-case-hero > img
) {
    opacity: .035;
    transition: opacity 1.2s var(--immersive-ease);
}

/* :has() ties the dissolve to the renderer that actually painted this case,
   rather than to a global class which could be left behind after navigation. */
.case-journey:has(.case-webgl[data-journey-ready="true"]) :is(
    .road-hero__world,
    .football-hero__world,
    .satellite-hero__frames,
    .aging-hero__world,
    .ros-hero__map > img,
    .voice-hero__world,
    .records-hero__visual > img,
    .access-hero__world,
    .anesthesia-hero__world,
    .default-case-hero > img
),
.case-journey[data-journey-assets="ready"] :is(
    .road-hero__world,
    .football-hero__world,
    .satellite-hero__frames,
    .aging-hero__world,
    .ros-hero__map > img,
    .voice-hero__world,
    .records-hero__visual > img,
    .access-hero__world,
    .anesthesia-hero__world,
    .default-case-hero > img
) { opacity: 0; }

.case-journey__sticky::before,
.case-journey__sticky::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 4;
    pointer-events: none;
}

.case-journey__sticky::after {
    background:
        linear-gradient(0deg, rgba(3, 4, 7, .76), transparent 20%, transparent 76%, rgba(3, 4, 7, .34)),
        radial-gradient(circle at center, transparent 24%, rgba(2, 3, 6, .13) 58%, rgba(2, 3, 6, .6) 118%);
}

.road-case .case-journey__sticky::before {
    box-shadow: inset 0 -15vh 9vh rgba(2, 3, 3, .84), inset 0 0 12vw 3vw rgba(0, 0, 0, .56);
    clip-path: polygon(3% 5%, 97% 5%, 100% 100%, 0 100%);
    border: 1px solid rgba(223, 245, 255, .08);
}

.football-case .case-journey__sticky::before {
    background:
        linear-gradient(112deg, rgba(3, 8, 5, .78) 0 4%, transparent 4% 28%, rgba(109, 255, 138, .08) 28% 28.2%, transparent 28.2%),
        linear-gradient(-112deg, rgba(3, 8, 5, .78) 0 4%, transparent 4% 28%, rgba(109, 255, 138, .08) 28% 28.2%, transparent 28.2%);
    box-shadow: inset 0 0 16vw 3vw rgba(0, 0, 0, .58);
}

.satellite-case .case-journey__sticky::before {
    opacity: .35;
    background:
        repeating-linear-gradient(0deg, transparent 0 63px, rgba(97, 216, 255, .12) 64px),
        repeating-linear-gradient(90deg, transparent 0 63px, rgba(97, 216, 255, .1) 64px);
    mask-image: radial-gradient(circle, black, transparent 74%);
}

.aging-case .case-journey__sticky::before {
    inset: 7%;
    border: 1px solid rgba(255, 126, 192, .2);
    border-radius: 50%;
    box-shadow: inset 0 0 110px rgba(255, 126, 192, .08), 0 0 90px rgba(97, 216, 255, .06);
}

.ros-case .case-journey__sticky::before {
    opacity: .34;
    background: repeating-linear-gradient(0deg, transparent 0 4px, rgba(117, 255, 130, .08) 5px);
    mix-blend-mode: screen;
}

.voice-case .case-journey__sticky::before {
    background: repeating-radial-gradient(ellipse at 72% 50%, transparent 0 5.5%, rgba(182, 161, 255, .08) 5.65% 5.78%, transparent 5.9% 9%);
    opacity: .6;
}

.records-case .case-journey__sticky::before {
    background: linear-gradient(90deg, rgba(3, 15, 12, .18), transparent 44%, rgba(238, 247, 243, .12));
    box-shadow: inset 0 0 9vw rgba(7, 19, 15, .18);
}

.access-case .case-journey__sticky::before {
    inset: 6% 8%;
    border: 1px solid rgba(255, 129, 102, .2);
    clip-path: polygon(14% 0, 86% 0, 100% 100%, 0 100%);
    box-shadow: inset 0 0 90px rgba(111, 255, 148, .06);
}

.anesthesia-case .case-journey__sticky::before {
    opacity: .3;
    background:
        linear-gradient(90deg, transparent 0 8%, rgba(130, 241, 220, .22) 8.1% 8.2%, transparent 8.3% 92%, rgba(130, 241, 220, .18) 92.1% 92.2%, transparent 92.3%),
        linear-gradient(0deg, transparent 0 12%, rgba(130, 241, 220, .14) 12.1% 12.2%, transparent 12.3%);
}

.case-journey :is(
    .road-hero__content,
    .satellite-hero__content,
    .aging-hero__content,
    .ros-hero__console,
    .voice-hero__content,
    .records-hero__copy,
    .access-hero__content,
    .football-hero__content,
    .anesthesia-hero__content,
    .default-case-hero > .wrap
) {
    opacity: clamp(0, calc(1 - (var(--case-progress) * 5)), 1);
    transform: translate3d(0, calc(var(--case-progress) * -7vh), 0) scale(calc(1 - var(--case-progress) * .035));
    filter: blur(calc(var(--case-progress) * 2px));
    transform-origin: center;
    pointer-events: none;
    transition: opacity .12s linear;
}

.case-journey .experience-back { pointer-events: auto; }

.case-journey__hud {
    position: absolute;
    z-index: 30;
    inset: calc(var(--header-h) + .9rem) 4vw auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    direction: ltr;
    color: rgba(255, 255, 255, .8);
    font-size: .54rem;
    letter-spacing: .14em;
    text-transform: uppercase;
    pointer-events: none;
}

.case-journey__mode,
.case-journey__controls,
.case-journey__controls :is(button, a) {
    display: flex;
    align-items: center;
}

.case-journey__mode { gap: .7rem; }
.case-journey__mode i {
    width: 7px;
    aspect-ratio: 1;
    border-radius: 50%;
    background: var(--accent, #9effa1);
    box-shadow: 0 0 18px var(--accent, #9effa1);
}
.case-journey__mode em {
    max-width: 32vw;
    overflow: hidden;
    color: rgba(255, 255, 255, .46);
    font-style: normal;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.case-journey__controls { gap: .5rem; pointer-events: auto; }
[dir="rtl"] .case-journey__controls { direction: rtl; }
.case-journey__controls :is(button, a) {
    min-width: 44px;
    min-height: 44px;
    gap: .55rem;
    padding: .56rem .76rem;
    border: 1px solid rgba(255, 255, 255, .2);
    background: rgba(3, 5, 8, .58);
    color: #fff;
    font: inherit;
    letter-spacing: inherit;
    cursor: pointer;
    backdrop-filter: blur(18px);
    transition: color .25s, border-color .25s, background .25s;
}
.case-journey__controls :is(button, a):hover {
    border-color: color-mix(in srgb, var(--accent) 68%, white 32%);
    background: rgba(3, 5, 8, .82);
}
.case-journey__controls :is(button, a):active { transform: translateY(1px); }
.case-journey[data-journey-state="paused"] .case-journey__controls button[aria-pressed="true"] {
    border-color: var(--accent, #9effa1);
    background: color-mix(in srgb, var(--accent, #9effa1) 18%, rgba(3,5,8,.9));
}
.case-journey__controls button > i {
    width: 8px;
    height: 10px;
    border-inline: 2px solid currentColor;
}
.case-journey__controls button[aria-pressed="true"] > i {
    width: 0;
    height: 0;
    border: 0;
    border-block: 5px solid transparent;
    border-inline-start: 8px solid currentColor;
}
.case-journey__controls a > i { color: var(--accent); font-style: normal; }

.case-journey__rail {
    position: absolute;
    z-index: 30;
    inset: auto 4vw 1.6rem;
    display: grid;
    grid-template-columns: auto minmax(100px, 1fr) auto;
    align-items: center;
    gap: 1rem;
    direction: ltr;
    color: rgba(255, 255, 255, .5);
    font-size: .5rem;
    letter-spacing: .14em;
    pointer-events: none;
}
.case-journey__rail > i {
    position: relative;
    height: 1px;
    overflow: hidden;
    background: rgba(255, 255, 255, .2);
}
.case-journey__rail b {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, #61d8ff, var(--accent, #9effa1));
    box-shadow: 0 0 18px var(--accent, #9effa1);
    transform: scaleX(var(--case-progress));
    transform-origin: left;
}
.case-journey__rail em { font-style: normal; }

.webgl-failed :is(.case-webgl, .journey__canvas),
.is-lite :is(.case-webgl, .journey__canvas) { display: none !important; }

.webgl-failed .case-journey,
.is-lite .case-journey,
.no-js .case-journey {
    height: 100svh;
    min-height: 680px;
}

.webgl-failed .case-journey__sticky,
.is-lite .case-journey__sticky,
.no-js .case-journey__sticky { position: relative; }

.webgl-failed .case-journey__hud,
.webgl-failed .case-journey__rail,
.is-lite .case-journey__hud,
.is-lite .case-journey__rail,
.no-js .case-journey__hud,
.no-js .case-journey__rail { display: none; }

.webgl-failed .case-journey :is(
    .road-hero__content, .satellite-hero__content, .aging-hero__content,
    .ros-hero__console, .voice-hero__content, .records-hero__copy,
    .access-hero__content, .football-hero__content, .anesthesia-hero__content
),
.is-lite .case-journey :is(
    .road-hero__content, .satellite-hero__content, .aging-hero__content,
    .ros-hero__console, .voice-hero__content, .records-hero__copy,
    .access-hero__content, .football-hero__content, .anesthesia-hero__content
) { opacity: 1; }

@media (max-width: 1000px) {
    .case-journey .ros-hero,
    .case-journey .records-hero { position: relative; display: block; }

    .case-journey .ros-hero__map,
    .case-journey .records-hero__visual {
        position: absolute;
        inset: 0;
        min-height: 100%;
    }

    .case-journey .ros-hero__console,
    .case-journey .records-hero__copy {
        position: relative;
        z-index: 6;
        width: min(100%, 680px);
        min-height: 100%;
        padding: calc(var(--header-h) + 3rem) 6vw 6rem;
    }

    .case-journey .records-hero__copy {
        margin-inline-end: auto;
        color: #f2fff9;
        background: linear-gradient(90deg, rgba(4, 20, 15, .96), rgba(4, 20, 15, .68) 70%, transparent);
    }
    [dir="rtl"] .case-journey .records-hero__copy {
        background: linear-gradient(-90deg, rgba(4, 20, 15, .96), rgba(4, 20, 15, .68) 70%, transparent);
    }
    .case-journey .records-hero__copy .experience-back,
    .case-journey .records-hero__copy > p:not(.eyebrow) { color: inherit; }
}

@media (max-width: 760px) {
    .brand__lockup { width: 104px; }
    .journey { height: 600vh; min-height: 3500px; }
    .journey__mantra { margin-inline: auto; font-size: .5rem; }

    .case-journey { min-height: 1800px; }
    .case-journey__sticky { min-height: 600px; }
    .case-journey__sticky > header { height: 100%; min-height: 100%; }

    .case-journey__hud {
        inset: calc(var(--header-h) + .35rem) 6vw auto;
        align-items: flex-start;
    }
    .case-journey__mode em { display: none; }
    .case-journey__controls :is(button, a) {
        min-width: 44px;
        min-height: 44px;
        padding: .48rem .58rem;
        font-size: .48rem;
    }
    .case-journey__rail {
        inset: auto 6vw 1.15rem;
        grid-template-columns: auto 1fr;
    }
    .case-journey__rail em { display: none; }

    .case-journey .ros-hero__console,
    .case-journey .records-hero__copy { padding-block: calc(var(--header-h) + 3rem) 6rem; }
    .case-journey .ros-hero__readouts { display: none; }
    .case-journey .records-hero__note { color: #82f1dc; border-color: rgba(130, 241, 220, .28); }
}

@media (max-width: 420px) {
    .case-journey__mode span { display: none; }
    .case-journey__controls { margin-inline-start: auto; }
    .case-journey__controls button span,
    .journey__controls button span {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        clip-path: inset(50%);
        white-space: nowrap;
    }
    .case-journey__controls button { width: 44px; justify-content: center; padding: 0; }
    .case-direction-nav__link,
    .case-direction-nav__link:hover,
    .case-direction-nav__link:focus-visible { width: 48px; min-height: 48px; }
    .case-direction-nav__link--previous,
    .case-direction-nav__link--previous:hover,
    .case-direction-nav__link--previous:focus-visible,
    [dir="rtl"] .case-direction-nav__link--next,
    [dir="rtl"] .case-direction-nav__link--next:hover,
    [dir="rtl"] .case-direction-nav__link--next:focus-visible {
        grid-template-columns: 40px 0;
    }
    .case-direction-nav__link--next,
    .case-direction-nav__link--next:hover,
    .case-direction-nav__link--next:focus-visible,
    [dir="rtl"] .case-direction-nav__link--previous,
    [dir="rtl"] .case-direction-nav__link--previous:hover,
    [dir="rtl"] .case-direction-nav__link--previous:focus-visible {
        grid-template-columns: 0 40px;
    }
    .case-direction-nav__copy { opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto !important; }
    .journey {
        height: 100svh !important;
        min-height: 680px !important;
    }
    .journey__sticky { position: relative; }
    .case-journey {
        height: auto !important;
        min-height: 680px;
    }
    .case-journey__sticky { position: relative; }
    .case-journey .case-webgl,
    .case-journey__hud,
    .case-journey__rail { display: none !important; }
    .case-journey :is(
        .road-hero__content, .satellite-hero__content, .aging-hero__content,
        .ros-hero__console, .voice-hero__content, .records-hero__copy,
        .access-hero__content, .football-hero__content, .anesthesia-hero__content,
        .default-case-hero > .wrap
    ) { opacity: 1; }
    .case-journey :is(
        .road-hero__world, .football-hero__world, .satellite-hero__frames,
        .aging-hero__world, .ros-hero__map > img, .voice-hero__world,
        .records-hero__visual > img, .access-hero__world,
        .anesthesia-hero__world, .default-case-hero > img
    ) { opacity: 1 !important; transition: none !important; }
    .case-direction-nav__link,
    .journey__controls :is(button, a),
    .case-journey__controls :is(button, a) { transition: none !important; }
}

@media (forced-colors: active) {
    .case-journey__sticky::before,
    .case-journey__sticky::after { display: none; }
    .case-journey__controls :is(button, a) { border: 1px solid CanvasText; }
}

/* Pausing freezes the current first-person frame; it must not make the world
   appear to fail or reveal the fallback poster beneath it. */
html.motion-paused .journey__canvas[data-journey-ready="true"],
html.motion-paused .case-webgl[data-journey-ready="true"] { opacity: 1; }

/* Pause remains reachable on touch devices. The label is visually hidden only
   on the narrowest screens, while still supplying the accessible name. */
@media (max-width: 760px) {
    .journey__controls button {
        min-width: 44px;
        min-height: 44px;
        display: inline-flex;
        justify-content: center;
    }
    .journey__hud { pointer-events: none; }
    .journey__controls { pointer-events: auto; }
}

@media (max-width: 760px) and (prefers-reduced-motion: reduce) {
    .journey__controls button { display: none; }
}

/* Visibility pass
   Keep the cinematic contrast, but preserve mid-tones on real laptop and
   mobile displays throughout every scroll-driven world. */
.journey__backdrop,
.journey__backdrop.is-active {
    filter: saturate(1.12) contrast(1.025) brightness(1.12);
}

html.journey-running .journey__canvas[data-journey-ready="true"],
html.journey-running .case-journey .case-webgl[data-journey-ready="true"] {
    opacity: 1 !important;
    filter: saturate(1.1) contrast(1.015) brightness(1.1);
}

.journey__veil,
[dir="rtl"] .journey__veil {
    background:
        radial-gradient(circle at 50% 48%, transparent 0 28%, rgba(2,2,5,.06) 65%, rgba(2,2,5,.35) 110%),
        linear-gradient(0deg, rgba(2,2,5,.58), transparent 25%, transparent 84%, rgba(2,2,5,.24));
}

.case-journey__sticky::after {
    background:
        linear-gradient(0deg, rgba(3,4,7,.48), transparent 19%, transparent 82%, rgba(3,4,7,.18)),
        radial-gradient(circle at center, transparent 34%, rgba(2,3,6,.06) 70%, rgba(2,3,6,.3) 125%);
}

.case-journey :is(
    .road-hero__world,
    .football-hero__world,
    .satellite-hero__frames img,
    .aging-hero__world,
    .ros-hero__map > img,
    .voice-hero__world,
    .records-hero__visual > img,
    .access-hero__world,
    .anesthesia-hero__world,
    .default-case-hero > img
) {
    filter: saturate(1.08) contrast(1.025) brightness(1.08);
}

.project-card__world,
.project-card.is-active .project-card__world,
.case-generated-shot__stage > img,
.experience-media__item :is(img, video),
.experience-next > img {
    filter: saturate(1.1) contrast(1.03) brightness(1.04);
}

@media (max-width: 760px) {
    .journey__canvas,
    .case-webgl,
    .case-journey .case-webgl {
        opacity: .88 !important;
    }

    html.journey-running .journey__canvas[data-journey-ready="true"],
    html.journey-running .case-journey .case-webgl[data-journey-ready="true"] {
        opacity: 1 !important;
        filter: saturate(1.08) contrast(1.01) brightness(1.16);
    }

    .journey__veil,
    [dir="rtl"] .journey__veil {
        background:
            linear-gradient(0deg, rgba(2,2,5,.62), rgba(2,2,5,.15) 56%, rgba(2,2,5,.12)),
            radial-gradient(circle at 50% 38%, transparent 20%, rgba(2,2,5,.2) 92%);
    }

    .case-journey__sticky::after {
        background: linear-gradient(0deg, rgba(3,4,7,.46), transparent 26%, transparent 88%, rgba(3,4,7,.14));
    }
}

/* Mobile-first type system
   The phone layout is the primary reading experience: restrained display
   scale, generous Persian leading, readable body copy, and compact rhythm. */
@media (max-width: 760px) {
    html { font-size: 16px; }
    body {
        font-size: 1rem;
        line-height: 1.82;
    }
    [lang="fa"] body { letter-spacing: 0; }

    .wrap { width: min(90vw, 620px); }
    .section { padding-block: 5.5rem; }
    .section-label {
        gap: .75rem;
        margin-block-end: 1.35rem;
        font-size: .72rem;
        line-height: 1.5;
    }
    .section-label::after { opacity: .7; }
    .eyebrow {
        margin-block-end: 1rem;
        font-size: .72rem;
        line-height: 1.75;
        letter-spacing: .025em;
    }
    .display-title,
    [dir="rtl"] .display-title {
        font-size: clamp(2.25rem, 10vw, 3.25rem);
        line-height: 1.25;
        letter-spacing: -.025em;
        font-weight: 650;
    }

    .site-header { min-height: 72px; }
    .brand__lockup { width: 96px; }
    .mobile-menu { padding: calc(var(--header-h) + 1.5rem) 7vw 2rem; }
    .mobile-menu a {
        padding-block: .65rem;
        font-size: clamp(1.8rem, 8.5vw, 2.6rem);
        line-height: 1.35;
    }

    .journey__intro {
        width: min(90vw, 620px);
        padding-block-end: 7.2rem;
    }
    .journey__intro h1,
    [dir="rtl"] .journey__intro h1 {
        width: 100%;
        max-width: 100%;
        font-size: clamp(1.95rem, 8.3vw, 2.65rem);
        line-height: 1.18;
        letter-spacing: -.025em;
        font-weight: 680;
    }
    .journey__intro h1 span,
    .journey__intro h1 strong {
        width: 100%;
        max-width: 100%;
        margin-inline: auto;
        white-space: normal;
        overflow-wrap: normal;
        text-wrap: balance;
    }
    .journey__intro-bottom { margin-block-start: 1.15rem; }
    .journey__intro-bottom > p {
        max-width: 34ch;
        margin-inline: auto;
        font-size: .92rem;
        line-height: 1.9;
    }
    .journey__intro .orb-button {
        width: min(100%, 230px);
        height: 54px;
        margin-block-start: 1.15rem;
        font-size: .76rem;
    }
    .journey__chapters li {
        inset-block-end: 7rem;
        grid-template-columns: 28px 1fr;
        gap: .55rem;
    }
    .journey__chapters h2,
    [dir="rtl"] .journey__chapters h2 {
        max-width: 11ch;
        font-size: clamp(2.35rem, 10vw, 3.25rem);
        line-height: 1.18;
        letter-spacing: -.02em;
    }
    .journey__chapters p {
        max-width: 34ch;
        font-size: .88rem;
        line-height: 1.85;
    }
    .journey__hud {
        inset: auto 5vw 4.4rem;
        justify-content: center;
    }
    .journey__controls {
        width: 100%;
        justify-content: center;
        gap: .55rem;
    }
    .journey__controls button {
        width: 44px;
        min-width: 44px;
        padding: 0;
    }
    .journey__controls button span {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
    }
    .journey__controls a {
        max-width: calc(100vw - 6rem);
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        padding: .5rem .75rem;
        font-size: .58rem;
    }

    .manifesto__support { margin-block-start: 2.25rem; }
    .manifesto__support > p {
        margin-block-end: 2.25rem;
        font-size: .96rem;
        line-height: 1.95;
    }
    .capability-list span {
        padding-block: .95rem;
        font-size: .9rem;
    }
    .lab__statement {
        margin-block-start: 2.3rem;
        font-size: clamp(1.65rem, 7.4vw, 2.15rem);
        line-height: 1.55;
        letter-spacing: -.02em;
    }

    .work { padding-block-end: 5rem; }
    .project-deck__rail { gap: 4vw; padding-inline: 5vw; }
    .project-card {
        flex-basis: 90vw;
        min-height: 590px;
    }
    .project-card__visual { min-height: 320px; }
    .project-card__content {
        min-height: 270px;
        padding: 1.35rem 1.25rem 1.5rem;
    }
    .project-card h3,
    [dir="rtl"] .project-card h3 {
        margin: .35rem 0 .65rem;
        font-size: clamp(1.85rem, 8.2vw, 2.35rem);
        line-height: 1.25;
        letter-spacing: -.02em;
    }
    .project-card__summary {
        display: -webkit-box;
        font-size: .92rem;
        line-height: 1.8;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
    .project-card__meta p { font-size: .66rem; line-height: 1.6; }
    .text-link { margin-block-start: 1rem; font-size: .74rem; }

    .force-grid { margin-block-start: 3rem; }
    .force-card { min-height: 280px; padding: 1.25rem; }
    .force-card__glyph { height: 125px; }
    .force-card h3 {
        margin-block-end: .55rem;
        font-size: 1.65rem;
        line-height: 1.3;
    }
    .force-card p { font-size: .9rem; line-height: 1.8; }

    .founder__grid { gap: 3rem; }
    .founder__copy .display-title {
        font-size: clamp(2.25rem, 10vw, 3.2rem);
        line-height: 1.28;
    }
    .founder__identity {
        display: block;
        margin-block-start: 2rem;
    }
    .founder__identity h3 { font-size: 1.35rem; }
    .founder__identity span {
        display: block;
        margin-block-start: .45rem;
        font-size: .76rem;
        line-height: 1.65;
    }
    .founder__bio {
        font-size: .94rem;
        line-height: 1.95;
    }
    .founder__stats strong { font-size: 2rem; }
    .founder__skillwall article { min-height: auto; }
    .founder__skillwall h3 { font-size: .92rem; }
    .founder__skillwall p { font-size: .76rem; line-height: 1.9; }
    .founder blockquote { font-size: 1rem; line-height: 1.9; }

    .contact__copy .display-title {
        max-width: 11ch;
        font-size: clamp(2.3rem, 10.2vw, 3.25rem);
        line-height: 1.28;
    }
    .contact__copy > p {
        max-width: 35ch;
        font-size: .95rem;
        line-height: 1.95;
    }
    .contact__intro .contact-channels { margin-block-start: 2.25rem; }
    .contact-channel {
        min-height: 76px;
        padding: .85rem 1rem;
    }
    .contact-channel strong { font-size: 1rem; }
    .contact-form { margin-block-start: 3rem; padding: 1.25rem; }
    .contact-form__head { margin-block-end: 1.5rem; padding-block-end: 1.15rem; }
    .contact-form__head > strong {
        max-width: 100%;
        font-size: 1.25rem;
        line-height: 1.55;
    }
    .contact-form label { margin-block-end: 1.35rem; }
    .contact-form label > span { font-size: .74rem; }
    .contact-form input,
    .contact-form textarea {
        min-height: 46px;
        font-size: 1rem;
        line-height: 1.75;
    }
    .contact-form textarea { min-height: 112px; }
    .contact-form__footer p { font-size: .7rem; line-height: 1.75; }
    .contact-form__submit { min-height: 54px; font-size: .82rem; }
    .footer { padding-block-start: 5rem; }
    .footer__bottom { font-size: .68rem; }

    /* Shared project pages */
    .immersive-case h1,
    [dir="rtl"] .immersive-case h1 {
        width: 100%;
        max-width: 100% !important;
        font-size: clamp(2rem, 8.6vw, 2.75rem);
        line-height: 1.25;
        letter-spacing: -.02em;
        font-weight: 680;
    }
    .road-hero__content,
    .satellite-hero__content,
    .aging-hero__content,
    .voice-hero__content,
    .access-hero__content,
    .football-hero__content,
    .anesthesia-hero__content {
        width: min(90vw, 620px);
        align-items: stretch !important;
        text-align: start;
        padding-block-end: 6.5rem;
        overflow: hidden;
    }
    .case-journey :is(
        .road-hero__content, .satellite-hero__content, .aging-hero__content,
        .voice-hero__content, .access-hero__content, .football-hero__content,
        .anesthesia-hero__content
    ) > :is(h1, p) {
        width: 100%;
        max-width: 100% !important;
    }
    .case-journey :is(.football-hero__cta, .experience-back) {
        width: fit-content;
        max-width: 100%;
    }
    .case-journey :is(
        .road-hero__content, .satellite-hero__content, .aging-hero__content,
        .voice-hero__content, .access-hero__content, .football-hero__content,
        .anesthesia-hero__content, .ros-hero__console, .records-hero__copy
    ) > p:not(.eyebrow) {
        max-width: 36ch;
        font-size: .94rem;
        line-height: 1.9;
    }
    .immersive-case :is(
        .road-drive__copy, .road-story__body, .satellite-story__lead,
        .aging-identity__grid, .ros-mission__copy, .voice-story__grid,
        .records-story__grid, .access-story__grid, .football-story__grid,
        .anesthesia-story__grid, .anesthesia-airway__copy
    ) :is(p, blockquote) {
        font-size: .94rem;
        line-height: 1.95;
    }
    .immersive-case :is(
        .road-drive__copy, .road-system__head, .satellite-architecture__head,
        .satellite-layers__heading, .aging-timeline__intro, .aging-method__head,
        .ros-mission__copy, .ros-map-section__head, .voice-fingerprint__head,
        .records-transform__heading, .records-system__head, .access-ledger__head,
        .access-zones__head, .football-market__head, .football-flow__head,
        .anesthesia-path__head, .anesthesia-system__head, .anesthesia-airway__copy
    ) h2 {
        font-size: clamp(2rem, 9vw, 2.85rem);
        line-height: 1.3;
        letter-spacing: -.02em;
    }
    .immersive-case article h3 {
        font-size: clamp(1.25rem, 5.8vw, 1.65rem);
        line-height: 1.45;
    }
    .immersive-case article p {
        font-size: .88rem;
        line-height: 1.85;
    }
    .road-sign-card,
    .road-system__rail article,
    .satellite-layers__orbit article,
    .aging-method__cards article,
    .ros-map-section__nodes article,
    .voice-bands__methods article,
    .records-system__cards article,
    .access-zones__grid article,
    .football-flow__pitch article,
    .anesthesia-system__cards article {
        min-height: 240px;
    }
    .experience-stack { margin-block-start: 2rem; }
    .experience-stack p { font-size: .82rem; line-height: 1.8; }
    .experience-next { min-height: 46vh; }
    .experience-next strong {
        max-width: 11ch;
        font-size: clamp(2.4rem, 10.5vw, 3.5rem);
        line-height: 1.25;
    }
}

/* Contact — editorial rebuild */
.contact {
    min-height: auto;
    padding-block: clamp(6rem, 10vw, 10rem);
    overflow: hidden;
    background: #efeee9;
    color: #111113;
}
.contact::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(17,17,19,.055) 1px, transparent 1px),
        linear-gradient(0deg, rgba(17,17,19,.04) 1px, transparent 1px);
    background-size: 80px 80px;
    mask-image: linear-gradient(90deg, transparent, #000 18%, #000 82%, transparent);
}
.contact-v2 { position: relative; z-index: 1; }
.contact-v2__head {
    display: grid;
    grid-template-columns: minmax(180px, .28fr) 1fr;
    gap: clamp(2rem, 5vw, 6rem);
    align-items: start;
    padding-block-end: clamp(3rem, 6vw, 6rem);
}
.contact .section-label { color: #6d6a65; }
.contact .section-label span { color: #111113; }
.contact .section-label::after { background: rgba(17,17,19,.16); }
.contact-v2__headline {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .35fr);
    gap: clamp(2rem, 5vw, 6rem);
    align-items: end;
}
.contact-v2__headline .display-title {
    max-width: 780px;
    color: #111113;
    font-size: clamp(3.7rem, 7.2vw, 7.7rem);
    line-height: 1.08;
    letter-spacing: -.055em;
    font-weight: 680;
}
[dir="rtl"] .contact-v2__headline .display-title {
    line-height: 1.25;
    letter-spacing: -.035em;
}
.contact-v2__headline > p {
    max-width: 400px;
    margin: 0;
    color: #5f5c57;
    font-size: .96rem;
    line-height: 1.95;
}
.contact-v2__body {
    display: grid;
    grid-template-columns: minmax(330px, .72fr) minmax(480px, 1.28fr);
    border-block-start: 1px solid rgba(17,17,19,.18);
}

.direct-card {
    min-height: 610px;
    padding: clamp(1.5rem, 3vw, 2.7rem);
    display: flex;
    flex-direction: column;
    background: #111113;
    color: #f6f5ef;
}
.direct-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #aaa8a0;
    font-family: "Manrope EXXA", sans-serif;
    font-size: .58rem;
    letter-spacing: .14em;
}
.direct-card__top i {
    width: 9px;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #9effa1;
    box-shadow: 0 0 0 7px rgba(158,255,161,.1);
}
.direct-card__number {
    margin-block: auto 1rem;
    color: #f6f5ef;
    font-family: "Manrope EXXA", sans-serif;
    font-size: clamp(2.15rem, 3.6vw, 4.1rem);
    line-height: 1;
    letter-spacing: -.045em;
    white-space: nowrap;
}
.direct-card > p {
    max-width: 31ch;
    margin: 0 0 2rem;
    color: #aaa8a0;
    font-size: .78rem;
    line-height: 1.85;
}
.direct-card__apps {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .7rem;
}
.direct-app {
    min-height: 84px;
    padding: .8rem;
    display: grid;
    grid-template-columns: 34px 1fr auto;
    gap: .7rem;
    align-items: center;
    border: 1px solid rgba(255,255,255,.17);
    background: rgba(255,255,255,.045);
    transition: color .25s, background .25s, border-color .25s;
}
.direct-app > span {
    width: 34px;
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    border: 1px solid currentColor;
    border-radius: 50%;
    font-family: "Manrope EXXA", sans-serif;
    font-size: .54rem;
}
.direct-app strong { font-size: .82rem; font-weight: 600; }
.direct-app i { font-size: .85rem; font-style: normal; }
.direct-app--telegram:hover { color: #78dcff; border-color: #78dcff; background: rgba(120,220,255,.08); }
.direct-app--bale:hover { color: #9effa1; border-color: #9effa1; background: rgba(158,255,161,.08); }
.direct-card__note {
    margin-block-start: 1.5rem;
    padding-block-start: 1.15rem;
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    border-block-start: 1px solid rgba(255,255,255,.12);
    font-size: .62rem;
}
.direct-card__note span { color: #77756f; }
.direct-card__note strong { font-weight: 500; }

.project-form {
    padding: clamp(2rem, 4.5vw, 5rem);
    border-inline-end: 1px solid rgba(17,17,19,.18);
    background: rgba(255,255,255,.34);
}
.project-form__head {
    margin-block-end: clamp(2.6rem, 5vw, 4.5rem);
}
.project-form__head > span {
    display: block;
    margin-block-end: .8rem;
    color: #797670;
    font-family: "Manrope EXXA", sans-serif;
    font-size: .58rem;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.project-form__head h3 {
    max-width: 560px;
    margin: 0;
    font-size: clamp(1.75rem, 3.2vw, 3.2rem);
    line-height: 1.35;
    letter-spacing: -.035em;
    font-weight: 650;
}
.project-field {
    position: relative;
    padding-block: 0 1.2rem;
    margin-block-end: 1.6rem;
    border-block-end: 1px solid rgba(17,17,19,.22);
}
.project-field:focus-within { border-color: #111113; }
.project-field label {
    display: flex;
    align-items: center;
    gap: .75rem;
    color: #68655f;
    font-size: .72rem;
}
.project-field label span {
    color: #a29f98;
    font-family: "Manrope EXXA", sans-serif;
    font-size: .55rem;
}
.project-field input,
.project-field textarea {
    width: 100%;
    min-height: 54px;
    padding: .5rem 0 0;
    border: 0;
    outline: 0;
    resize: none;
    border-radius: 0;
    background: transparent;
    color: #111113;
    font-size: 1.12rem;
    line-height: 1.8;
}
.project-field textarea { min-height: 118px; }
.project-field small {
    display: block;
    margin-block-start: .5rem;
    color: #ae321f;
    font-size: .68rem;
}
.project-form__honeypot {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
}
.project-form__footer {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 2rem;
    align-items: center;
    margin-block-start: 2.5rem;
}
.project-form__footer p {
    max-width: 330px;
    margin: 0;
    color: #797670;
    font-size: .66rem;
    line-height: 1.8;
}
.project-form__submit {
    min-width: 210px;
    min-height: 58px;
    padding: .55rem .6rem .55rem 1.2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    background: #111113;
    color: #f6f5ef;
    font-size: .78rem;
}
[dir="rtl"] .project-form__submit { padding: .55rem 1.2rem .55rem .6rem; }
.project-form__submit i {
    width: 42px;
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    background: #9effa1;
    color: #111113;
    font-size: 1rem;
    font-style: normal;
    transition: transform .3s var(--immersive-spring);
}
.project-form__submit:hover i { transform: rotate(45deg); }

@media (max-width: 980px) {
    .contact-v2__head,
    .contact-v2__headline { grid-template-columns: 1fr; }
    .contact-v2__body { grid-template-columns: 1fr; }
    .direct-card { min-height: 520px; }
    .project-form { border-inline-start: 1px solid rgba(17,17,19,.18); }
}

@media (max-width: 760px) {
    .contact { padding-block: 5rem; }
    .contact::before { background-size: 56px 56px; }
    .contact-v2__head {
        gap: .4rem;
        padding-block-end: 2.75rem;
    }
    .contact-v2__headline { gap: 1.2rem; }
    .contact-v2__headline .display-title,
    [dir="rtl"] .contact-v2__headline .display-title {
        max-width: 11ch;
        font-size: clamp(2.25rem, 10.5vw, 3.15rem);
        line-height: 1.28;
        letter-spacing: -.025em;
    }
    .contact-v2__headline > p {
        max-width: 35ch;
        font-size: .94rem;
        line-height: 1.95;
    }
    .contact-v2__body { border-block-start: 0; gap: .9rem; }
    .direct-card {
        min-height: 390px;
        padding: 1.25rem;
    }
    .direct-card__number {
        font-size: clamp(2rem, 10vw, 2.7rem);
        letter-spacing: -.035em;
    }
    .direct-card > p { margin-block-end: 1.4rem; font-size: .75rem; }
    .direct-app { min-height: 70px; grid-template-columns: 30px 1fr auto; padding: .65rem; }
    .direct-app > span { width: 30px; }
    .direct-card__note { font-size: .6rem; }
    .project-form {
        padding: 1.35rem;
        border: 1px solid rgba(17,17,19,.18);
    }
    .project-form__head { margin-block-end: 2.5rem; }
    .project-form__head h3 {
        font-size: 1.65rem;
        line-height: 1.45;
    }
    .project-field { margin-block-end: 1.35rem; padding-block-end: .8rem; }
    .project-field input,
    .project-field textarea {
        min-height: 48px;
        font-size: 1rem;
    }
    .project-field textarea { min-height: 104px; }
    .project-form__footer {
        grid-template-columns: 1fr;
        gap: 1.2rem;
        margin-block-start: 1.8rem;
    }
    .project-form__submit {
        width: 100%;
        min-width: 0;
        min-height: 56px;
    }
}

/* Contact — restore the original dark world; refine only the form */
.contact.contact--classic {
    min-height: 850px;
    padding-block: clamp(7rem, 11vw, 11rem);
    display: grid;
    align-items: center;
    overflow: hidden;
    background: #0b0910;
    color: #f4f2f6;
}
.contact.contact--classic::before {
    background:
        radial-gradient(circle at 12% 18%, rgba(139,92,246,.11), transparent 28%),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: auto, 96px 96px;
    mask-image: linear-gradient(90deg, #000, transparent 80%);
    opacity: 1;
}
[dir="rtl"] .contact.contact--classic::before {
    background:
        radial-gradient(circle at 88% 18%, rgba(139,92,246,.11), transparent 28%),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: auto, 96px 96px;
    mask-image: linear-gradient(-90deg, #000, transparent 80%);
}
.contact--classic__glow {
    position: absolute;
    width: min(62vw, 820px);
    aspect-ratio: 1;
    inset: 50% auto auto -30vw;
    transform: translateY(-50%);
    border: 1px solid rgba(139,92,246,.12);
    border-radius: 50%;
    box-shadow: inset 0 0 120px rgba(139,92,246,.05);
    pointer-events: none;
}
[dir="rtl"] .contact--classic__glow { left: auto; right: -30vw; }
.contact-classic {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(320px, .82fr) minmax(520px, 1.18fr);
    gap: clamp(4rem, 8vw, 9rem);
    align-items: center;
}
.contact--classic .section-label { color: #99939f; }
.contact--classic .section-label span { color: #9effa1; }
.contact--classic .section-label::after { background: rgba(255,255,255,.12); }
.contact-classic__intro .display-title {
    max-width: 720px;
    margin-block: 2rem 1.6rem;
    color: #f4f2f6;
    font-size: clamp(3.7rem, 7vw, 7.2rem);
    line-height: 1.08;
    letter-spacing: -.055em;
}
[dir="rtl"] .contact-classic__intro .display-title {
    max-width: 8ch;
    line-height: 1.26;
    letter-spacing: -.035em;
}
.contact-classic__lead {
    max-width: 550px;
    margin: 0;
    color: #aaa4b0;
    font-size: .98rem;
    line-height: 1.95;
}
.contact-classic__direct {
    margin-block-start: clamp(3rem, 6vw, 5rem);
    padding-block-start: 1.2rem;
    border-block-start: 1px solid rgba(255,255,255,.14);
}
.contact-classic__direct > span {
    display: block;
    margin-block-end: .5rem;
    color: #77717d;
    font-size: .62rem;
}
.contact-classic__direct > strong {
    display: block;
    color: #f4f2f6;
    font-family: "Manrope EXXA", sans-serif;
    font-size: clamp(1.8rem, 3vw, 3.2rem);
    line-height: 1.2;
    letter-spacing: -.035em;
    font-weight: 580;
}
.contact-classic__channels {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    margin-block-start: 1.35rem;
}
.contact-classic__channels a {
    min-width: 132px;
    min-height: 46px;
    padding: .55rem .75rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border: 1px solid rgba(255,255,255,.15);
    background: rgba(255,255,255,.025);
    color: #c7c2cb;
    font-size: .72rem;
    transition: color .25s, border-color .25s, background .25s;
}
.contact-classic__channels a:hover {
    color: #9effa1;
    border-color: rgba(158,255,161,.5);
    background: rgba(158,255,161,.055);
}
.contact-classic__channels i { font-style: normal; }

.brief-form {
    padding: clamp(1.6rem, 3.4vw, 3.6rem);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.1rem;
    border: 1px solid rgba(255,255,255,.14);
    background:
        linear-gradient(145deg, rgba(255,255,255,.065), rgba(255,255,255,.018)),
        rgba(9,8,13,.72);
    box-shadow: 0 34px 100px rgba(0,0,0,.28);
    backdrop-filter: blur(18px);
}
.brief-form__head {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: .45rem 2rem;
    align-items: end;
    margin-block-end: 1.4rem;
    padding-block-end: 1.5rem;
    border-block-end: 1px solid rgba(255,255,255,.12);
}
.brief-form__head > span {
    grid-column: 1 / -1;
    color: #9effa1;
    font-size: .58rem;
    letter-spacing: .08em;
}
.brief-form__head h3 {
    margin: 0;
    font-size: clamp(1.45rem, 2.4vw, 2.25rem);
    line-height: 1.45;
    letter-spacing: -.025em;
    font-weight: 620;
}
.brief-form__head p {
    max-width: 190px;
    margin: 0;
    color: #77717d;
    font-size: .62rem;
    line-height: 1.7;
    text-align: end;
}
.brief-field {
    min-width: 0;
    padding: .85rem 1rem .75rem;
    border: 1px solid rgba(255,255,255,.13);
    background: rgba(255,255,255,.025);
    transition: border-color .25s, background .25s;
}
.brief-field:focus-within {
    border-color: rgba(158,255,161,.5);
    background: rgba(158,255,161,.035);
}
.brief-field--message { grid-column: 1 / -1; }
.brief-field label {
    display: block;
    color: #8e8894;
    font-size: .66rem;
}
.brief-field input,
.brief-field textarea {
    width: 100%;
    min-height: 44px;
    padding: .45rem 0 0;
    border: 0;
    outline: 0;
    resize: none;
    border-radius: 0;
    background: transparent;
    color: #f4f2f6;
    font-size: .98rem;
    line-height: 1.75;
}
.brief-field textarea { min-height: 112px; }
.brief-field small {
    display: block;
    margin-block-start: .4rem;
    color: #ff9a86;
    font-size: .64rem;
}
.brief-form__honeypot {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
}
.brief-form__footer {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 1.5rem;
    align-items: center;
    margin-block-start: .5rem;
}
.brief-form__footer p {
    max-width: 310px;
    margin: 0;
    color: #77717d;
    font-size: .62rem;
    line-height: 1.75;
}
.brief-form__submit {
    min-width: 205px;
    min-height: 56px;
    padding: .55rem .6rem .55rem 1.15rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.2rem;
    background: #f4f2f6;
    color: #0b0910;
    font-size: .76rem;
    font-weight: 650;
}
[dir="rtl"] .brief-form__submit { padding: .55rem 1.15rem .55rem .6rem; }
.brief-form__submit i {
    width: 40px;
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    background: #0b0910;
    color: #9effa1;
    font-size: 1rem;
    font-style: normal;
    transition: transform .3s var(--immersive-spring);
}
.brief-form__submit:hover i { transform: rotate(45deg); }

@media (max-width: 1050px) {
    .contact-classic { grid-template-columns: 1fr; gap: 4rem; }
    .contact-classic__intro { max-width: 780px; }
    .brief-form { max-width: 780px; }
}

@media (max-width: 760px) {
    .contact.contact--classic {
        min-height: auto;
        padding-block: 5.5rem;
    }
    .contact.contact--classic::before { background-size: auto, 64px 64px; }
    .contact-classic { gap: 3rem; }
    .contact-classic__intro .display-title,
    [dir="rtl"] .contact-classic__intro .display-title {
        max-width: 10ch;
        margin-block: 1.3rem 1rem;
        font-size: clamp(2.35rem, 10.5vw, 3.25rem);
        line-height: 1.28;
        letter-spacing: -.025em;
    }
    .contact-classic__lead {
        max-width: 35ch;
        font-size: .94rem;
        line-height: 1.95;
    }
    .contact-classic__direct { margin-block-start: 2.5rem; }
    .contact-classic__direct > strong { font-size: clamp(2rem, 9vw, 2.7rem); }
    .contact-classic__channels { display: grid; grid-template-columns: 1fr 1fr; }
    .contact-classic__channels a { min-width: 0; }
    .brief-form {
        grid-template-columns: 1fr;
        gap: .8rem;
        padding: 1.1rem;
    }
    .brief-form__head {
        grid-column: 1;
        grid-template-columns: 1fr;
        gap: .45rem;
        margin-block-end: .9rem;
        padding: .35rem .2rem 1.2rem;
    }
    .brief-form__head h3 { font-size: 1.5rem; line-height: 1.5; }
    .brief-form__head p { max-width: none; text-align: start; }
    .brief-field,
    .brief-field--message { grid-column: 1; padding: .75rem .85rem .65rem; }
    .brief-field input,
    .brief-field textarea { font-size: 1rem; }
    .brief-field textarea { min-height: 100px; }
    .brief-form__footer {
        grid-column: 1;
        grid-template-columns: 1fr;
        gap: 1rem;
        margin-block-start: .7rem;
    }
    .brief-form__submit { width: 100%; min-width: 0; }
}

/* Contact v4 — high-contrast project intake, mobile first */
.contact.contact--classic {
    min-height: 900px;
    padding-block: clamp(7rem, 10vw, 10rem);
    isolation: isolate;
    background:
        radial-gradient(circle at 82% 15%, rgba(158,255,161,.075), transparent 24rem),
        radial-gradient(circle at 8% 88%, rgba(125,72,255,.11), transparent 28rem),
        #08070b;
    border-block-start: 1px solid rgba(255,255,255,.08);
    color: #f7f5f8;
}
.contact.contact--classic::before,
[dir="rtl"] .contact.contact--classic::before {
    inset: 0;
    background:
        linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px);
    background-size: 80px 80px;
    mask-image: linear-gradient(to bottom, rgba(0,0,0,.85), transparent 88%);
    opacity: .62;
}
.contact--classic__glow {
    inset: auto auto -40vw -34vw;
    width: min(76vw, 980px);
    border-color: rgba(125,72,255,.16);
    box-shadow:
        inset 0 0 160px rgba(125,72,255,.065),
        0 0 0 80px rgba(125,72,255,.018);
    transform: none;
}
[dir="rtl"] .contact--classic__glow {
    inset: auto -34vw -40vw auto;
}
.contact--classic__orbit {
    position: absolute;
    z-index: 0;
    inset: 9% 4% auto auto;
    width: clamp(180px, 21vw, 360px);
    aspect-ratio: 1;
    border: 1px solid rgba(255,255,255,.065);
    border-radius: 50%;
    pointer-events: none;
}
[dir="rtl"] .contact--classic__orbit {
    right: auto;
    left: 4%;
}
.contact--classic__orbit::before,
.contact--classic__orbit::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(255,255,255,.05);
    border-radius: inherit;
}
.contact--classic__orbit::before { inset: 16%; }
.contact--classic__orbit::after { inset: 33%; }
.contact--classic__orbit i {
    position: absolute;
    width: 7px;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #9effa1;
    box-shadow: 0 0 22px rgba(158,255,161,.8);
}
.contact--classic__orbit i:first-child { inset: 14% auto auto 13%; }
.contact--classic__orbit i:last-child {
    inset: auto 17% 10% auto;
    width: 4px;
    background: #8061ff;
    box-shadow: 0 0 18px rgba(128,97,255,.9);
}

.contact-classic {
    z-index: 2;
    grid-template-columns: minmax(330px, .86fr) minmax(540px, 1.14fr);
    gap: clamp(4rem, 8vw, 9rem);
    align-items: center;
}
.contact--classic .section-label {
    color: #8b8790;
    font-size: .64rem;
}
.contact--classic .section-label span { color: #9effa1; }
.contact--classic .section-label::after {
    background: linear-gradient(90deg, rgba(158,255,161,.32), rgba(255,255,255,.05));
}
[dir="rtl"] .contact--classic .section-label::after {
    background: linear-gradient(-90deg, rgba(158,255,161,.32), rgba(255,255,255,.05));
}
.contact-classic__intro .display-title,
[dir="rtl"] .contact-classic__intro .display-title {
    max-width: 8.5ch;
    margin-block: clamp(1.75rem, 3vw, 2.7rem) 1.35rem;
    color: #f8f6f9;
    font-size: clamp(3.5rem, 6.4vw, 6.8rem);
    line-height: 1.19;
    letter-spacing: -.048em;
    text-wrap: balance;
}
.contact-classic__lead {
    max-width: 48ch;
    color: #aaa6af;
    font-size: clamp(.92rem, 1.05vw, 1.02rem);
    line-height: 2;
}
.contact-classic__direct {
    position: relative;
    margin-block-start: clamp(2.8rem, 5vw, 4.6rem);
    padding: 1.25rem 0 0;
    border-block-start: 1px solid rgba(255,255,255,.15);
}
.contact-classic__direct::before {
    content: "";
    position: absolute;
    inset: -1px 0 auto auto;
    width: 68px;
    height: 1px;
    background: #9effa1;
    box-shadow: 0 0 14px rgba(158,255,161,.45);
}
[dir="rtl"] .contact-classic__direct::before {
    right: auto;
    left: 0;
}
.contact-classic__direct-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-block-end: 1.25rem;
}
.contact-classic__direct-head > span {
    color: #8d8992;
    font-size: .62rem;
}
.contact-classic__direct-head em {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: #a6a2aa;
    font-size: .58rem;
    font-style: normal;
}
.contact-classic__direct-head em i {
    width: 6px;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #9effa1;
    box-shadow: 0 0 0 5px rgba(158,255,161,.09), 0 0 12px rgba(158,255,161,.55);
}
.contact-classic__phone {
    display: block;
    width: max-content;
    max-width: 100%;
    color: #f8f6f9;
    font-family: "Manrope EXXA", sans-serif;
    font-size: clamp(2.25rem, 3.5vw, 3.75rem);
    font-weight: 540;
    line-height: 1;
    letter-spacing: -.052em;
    white-space: nowrap;
    transition: color .25s ease;
}
.contact-classic__phone:hover { color: #9effa1; }
.contact-classic__channels {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .65rem;
    margin-block-start: 1.6rem;
}
.contact-classic__channels a {
    min-width: 0;
    min-height: 54px;
    padding: .6rem .8rem;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: .8rem;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.13);
    background: rgba(255,255,255,.025);
    color: #d0ccd4;
    font-size: .7rem;
}
.contact-classic__channels a::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(100deg, rgba(158,255,161,.1), transparent 62%);
    opacity: 0;
    transition: opacity .25s ease;
}
.contact-classic__channels a:hover::before { opacity: 1; }
.contact-classic__channels a:hover {
    color: #f8f6f9;
    border-color: rgba(158,255,161,.46);
    background: rgba(158,255,161,.035);
}
.contact-classic__channels a i,
.contact-classic__channels a b {
    position: relative;
    z-index: 1;
    font-family: "Manrope EXXA", sans-serif;
    font-size: .54rem;
    font-style: normal;
    font-weight: 500;
}
.contact-classic__channels a i { color: #716d76; }
.contact-classic__channels a b {
    width: 28px;
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,.06);
    color: #9effa1;
    transition: transform .25s ease, background .25s ease;
}
.contact-classic__channels a span { position: relative; z-index: 1; }
.contact-classic__channels a:hover b {
    transform: rotate(45deg);
    background: #9effa1;
    color: #08070b;
}

.brief-form {
    position: relative;
    padding: clamp(1.5rem, 3.2vw, 3.25rem);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .8rem;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 0;
    background:
        linear-gradient(145deg, rgba(255,255,255,.067), rgba(255,255,255,.012) 55%),
        rgba(10,9,14,.92);
    box-shadow:
        0 42px 120px rgba(0,0,0,.38),
        inset 0 1px rgba(255,255,255,.025);
    backdrop-filter: blur(24px);
}
.brief-form::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 2px;
    background: linear-gradient(90deg, #8061ff, #9effa1 45%, transparent 82%);
}
[dir="rtl"] .brief-form::before {
    background: linear-gradient(-90deg, #8061ff, #9effa1 45%, transparent 82%);
}
.brief-form::after {
    content: "EXXA / START";
    position: absolute;
    inset: auto auto 1.1rem 1.25rem;
    color: rgba(255,255,255,.12);
    font-family: "Manrope EXXA", sans-serif;
    font-size: .48rem;
    letter-spacing: .12em;
    pointer-events: none;
}
[dir="rtl"] .brief-form::after {
    right: 1.25rem;
    left: auto;
}
.brief-form__head {
    grid-column: 1 / -1;
    display: block;
    margin-block-end: 1.1rem;
    padding-block-end: 1.55rem;
    border-block-end: 1px solid rgba(255,255,255,.11);
}
.brief-form__head > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-block-end: 1.2rem;
}
.brief-form__head > div span {
    color: #9effa1;
    font-size: .6rem;
}
.brief-form__head > div em {
    color: #65616a;
    font-family: "Manrope EXXA", sans-serif;
    font-size: .5rem;
    font-style: normal;
    letter-spacing: .12em;
    direction: ltr;
}
.brief-form__head h3 {
    max-width: 17ch;
    margin: 0 0 .55rem;
    color: #f6f4f7;
    font-size: clamp(1.65rem, 2.35vw, 2.35rem);
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: -.03em;
}
.brief-form__head p {
    max-width: none;
    margin: 0;
    color: #7f7a84;
    font-size: .65rem;
    line-height: 1.8;
    text-align: start;
}
.brief-field {
    min-width: 0;
    min-height: 106px;
    padding: 1rem 1rem .8rem;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .85rem;
    align-items: start;
    border: 1px solid rgba(255,255,255,.105);
    background: rgba(255,255,255,.018);
    transition: border-color .25s ease, background .25s ease, transform .25s ease;
}
.brief-field:focus-within {
    transform: translateY(-2px);
    border-color: rgba(158,255,161,.48);
    background: rgba(158,255,161,.03);
}
.brief-field--message {
    grid-column: 1 / -1;
    min-height: 166px;
}
.brief-field__index {
    padding-block-start: .1rem;
    color: #66616b;
    font-family: "Manrope EXXA", sans-serif;
    font-size: .53rem;
}
.brief-field > div { min-width: 0; }
.brief-field label {
    display: block;
    color: #a29da7;
    font-size: .64rem;
    line-height: 1.4;
}
.brief-field input,
.brief-field textarea {
    width: 100%;
    min-height: 52px;
    padding: .5rem 0 0;
    border: 0;
    outline: 0;
    border-radius: 0;
    background: transparent;
    color: #f8f6f9;
    caret-color: #9effa1;
    font-size: 1rem;
    line-height: 1.7;
}
.brief-field textarea {
    min-height: 104px;
    resize: vertical;
}
.brief-field input:-webkit-autofill,
.brief-field textarea:-webkit-autofill {
    -webkit-text-fill-color: #f8f6f9;
    box-shadow: 0 0 0 1000px #111016 inset;
}
.brief-field small {
    display: block;
    color: #ff9c89;
    font-size: .62rem;
}
.brief-form__footer {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(215px, auto);
    gap: 1.25rem;
    align-items: center;
    margin-block-start: .65rem;
}
.brief-form__footer p {
    max-width: 34ch;
    margin: 0;
    display: flex;
    align-items: flex-start;
    gap: .55rem;
    color: #77727d;
    font-size: .6rem;
    line-height: 1.8;
}
.brief-form__footer p i {
    flex: 0 0 auto;
    width: 18px;
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    margin-block-start: .1rem;
    border: 1px solid rgba(158,255,161,.32);
    border-radius: 50%;
    color: #9effa1;
    font-size: .55rem;
    font-style: normal;
}
.brief-form__submit {
    min-width: 215px;
    min-height: 62px;
    padding: .6rem .65rem .6rem 1.2rem;
    border: 1px solid #eeecef;
    background: #f5f3f6;
    color: #09080c;
    font-size: .73rem;
    font-weight: 670;
    transition: background .25s ease, border-color .25s ease;
}
[dir="rtl"] .brief-form__submit {
    padding: .6rem 1.2rem .6rem .65rem;
}
.brief-form__submit i {
    width: 42px;
    background: #09080c;
    color: #9effa1;
}
.brief-form__submit:hover {
    border-color: #9effa1;
    background: #9effa1;
}

@media (max-width: 1080px) {
    .contact-classic {
        grid-template-columns: 1fr;
        gap: 4rem;
    }
    .contact-classic__intro,
    .brief-form { max-width: 820px; }
    .contact--classic__orbit { opacity: .55; }
}

@media (max-width: 760px) {
    .contact.contact--classic {
        min-height: auto;
        padding-block: 5rem 5.5rem;
        background:
            radial-gradient(circle at 100% 6%, rgba(158,255,161,.07), transparent 18rem),
            radial-gradient(circle at 0 92%, rgba(125,72,255,.12), transparent 20rem),
            #08070b;
    }
    .contact.contact--classic::before,
    [dir="rtl"] .contact.contact--classic::before {
        background-size: 54px 54px;
        opacity: .42;
    }
    .contact--classic__orbit {
        inset: 3.5rem -5.5rem auto auto;
        width: 200px;
        opacity: .38;
    }
    [dir="rtl"] .contact--classic__orbit {
        right: auto;
        left: -5.5rem;
    }
    .contact-classic { gap: 3.15rem; }
    .contact--classic .section-label { position: relative; z-index: 2; }
    .contact-classic__intro .display-title,
    [dir="rtl"] .contact-classic__intro .display-title {
        max-width: 9ch;
        margin-block: 1.45rem .95rem;
        font-size: clamp(2.55rem, 12vw, 3.45rem);
        line-height: 1.25;
        letter-spacing: -.035em;
    }
    .contact-classic__lead {
        max-width: 34ch;
        font-size: .92rem;
        line-height: 1.95;
    }
    .contact-classic__direct {
        margin-block-start: 2.5rem;
        padding-block-start: 1.1rem;
    }
    .contact-classic__direct-head { margin-block-end: 1.15rem; }
    .contact-classic__phone {
        font-size: clamp(2rem, 10.4vw, 2.75rem);
        letter-spacing: -.045em;
    }
    .contact-classic__channels {
        gap: .55rem;
        margin-block-start: 1.35rem;
    }
    .contact-classic__channels a {
        min-height: 52px;
        padding: .55rem .65rem;
        gap: .55rem;
    }
    .contact-classic__channels a b { width: 26px; }
    .brief-form {
        width: 100%;
        max-width: none;
        padding: 1.15rem;
        grid-template-columns: 1fr;
        gap: .65rem;
        box-shadow: 0 30px 80px rgba(0,0,0,.3);
    }
    .brief-form::after { display: none; }
    .brief-form__head {
        grid-column: 1;
        margin-block-end: .55rem;
        padding: .35rem .15rem 1.2rem;
    }
    .brief-form__head > div { margin-block-end: 1rem; }
    .brief-form__head h3 {
        max-width: 15ch;
        margin-block-end: .45rem;
        font-size: 1.55rem;
        line-height: 1.55;
    }
    .brief-field,
    .brief-field--message {
        grid-column: 1;
        min-height: 96px;
        padding: .9rem .8rem .65rem;
        gap: .7rem;
    }
    .brief-field--message { min-height: 154px; }
    .brief-field:focus-within { transform: none; }
    .brief-field input,
    .brief-field textarea {
        min-height: 48px;
        padding-block-start: .35rem;
        font-size: 1rem;
    }
    .brief-field textarea { min-height: 92px; }
    .brief-form__footer {
        grid-column: 1;
        grid-template-columns: 1fr;
        gap: 1rem;
        margin-block-start: .7rem;
    }
    .brief-form__footer p { max-width: 38ch; }
    .brief-form__submit {
        width: 100%;
        min-width: 0;
        min-height: 60px;
    }
}

@media (max-width: 370px) {
    .contact-classic__direct-head em { display: none; }
    .contact-classic__channels a i { display: none; }
    .contact-classic__channels a { grid-template-columns: 1fr auto; }
    .brief-form { padding: .9rem; }
}
