:root {
    --purple: #742cf8;
    --violet: #a147ff;
    --blue: #00a9ec;
    --gold: #fec64c;
    --silver: #c2c2c2;
    --ink: #140e0c;
    --night: #09070d;
    --night-soft: #100c17;
    --white: #f7f4ff;
    --muted: #a69dae;
    --line: rgba(255, 255, 255, 0.12);
    --glass: rgba(255, 255, 255, 0.06);
    --shell: min(1440px, calc(100% - 8vw));
    --radius: 24px;
}

* { box-sizing: border-box; }
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
html { color-scheme: dark; scroll-behavior: smooth; }
body {
    margin: 0;
    min-height: 100vh;
    overflow-x: hidden;
    color: var(--white);
    background:
        radial-gradient(circle at 74% 20%, rgba(116, 44, 248, 0.15), transparent 27rem),
        radial-gradient(circle at 8% 72%, rgba(0, 169, 236, 0.08), transparent 34rem),
        var(--night);
    font-family: "Gotham", "Montserrat", Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
}

body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { color: inherit; font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; }
::selection { color: white; background: var(--purple); }

.skip-link {
    position: fixed; left: 16px; top: -80px; z-index: 100;
    padding: 12px 18px; color: white; background: var(--purple);
}
.skip-link:focus { top: 16px; }

.is-loading body,
body.is-transitioning { overflow: hidden; }
.site-preloader {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: grid;
    grid-template-rows: auto 1fr auto;
    overflow: hidden;
    padding: clamp(26px, 4vw, 66px);
    color: var(--white);
    background: #08070a;
    transition: clip-path .82s cubic-bezier(.76,0,.24,1), visibility .82s;
    clip-path: inset(0 0 0 0);
}
.site-preloader[hidden] { display: none; }
.site-preloader::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, transparent calc(50% - .5px), rgba(255,255,255,.07) 50%, transparent calc(50% + .5px)),
        linear-gradient(transparent calc(50% - .5px), rgba(255,255,255,.045) 50%, transparent calc(50% + .5px));
}
.site-preloader::after {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 11px;
    height: 1px;
    background: var(--purple);
    box-shadow: calc(100vw - 11px) 0 var(--blue);
}
.preloader-top {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255,255,255,.1);
}
.preloader-top img { width: 64px; height: 48px; object-fit: contain; }
.preloader-top span,
.preloader-bottom > span {
    color: #77717f;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: .2em;
}
.preloader-title {
    position: relative;
    z-index: 2;
    align-self: center;
    overflow: hidden;
}
.preloader-title span {
    display: block;
    margin: 0 0 clamp(10px, 1.4vw, 20px) .6vw;
    color: #8b8492;
    font-size: clamp(8px, .75vw, 12px);
    font-weight: 700;
    letter-spacing: .42em;
    animation: preloader-copy-in .65s .12s cubic-bezier(.2,.8,.2,1) both;
}
.preloader-title strong {
    display: block;
    color: transparent;
    font-size: clamp(4.2rem, 14.5vw, 15rem);
    font-weight: 800;
    line-height: .72;
    letter-spacing: -.085em;
    -webkit-text-stroke: 1px rgba(244,240,250,.76);
    text-shadow: 20px 20px 0 rgba(116,44,248,.035);
    animation: preloader-title-in .8s cubic-bezier(.16,.85,.23,1) both;
}
.preloader-bottom {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: auto minmax(120px, 1fr) 42px;
    align-items: center;
    gap: clamp(18px, 3vw, 48px);
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,.1);
}
.preloader-bottom b {
    justify-self: end;
    color: var(--white);
    font: 500 12px/1 "Roboto", sans-serif;
    letter-spacing: .08em;
}
.preloader-progress {
    position: relative;
    height: 1px;
    background: rgba(255,255,255,.12);
}
.preloader-progress i {
    position: relative;
    display: block;
    width: 100%;
    height: 1px;
    background: rgba(247,244,255,.88);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .12s linear;
}
.preloader-progress i::after {
    content: "";
    position: absolute;
    right: -2px;
    top: -2px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--purple);
}
.site-preloader.is-complete { clip-path: inset(0 0 100% 0); visibility: hidden; }

.maze-transition {
    position: fixed;
    inset: 0;
    z-index: 990;
    overflow: hidden;
    display: grid;
    place-items: center;
    color: white;
    background: #050408;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .18s ease, visibility .18s ease;
}
.maze-transition.is-active { opacity: 1; visibility: visible; pointer-events: auto; }
.maze-transition::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at center, rgba(116,44,248,.28), transparent 28%),
        repeating-conic-gradient(from 45deg at center, rgba(0,169,236,.06) 0 1deg, transparent 1deg 10deg);
    transform: scale(.3);
    opacity: 0;
}
.maze-transition.is-active::before { animation: transition-burst 1.3s cubic-bezier(.2,.8,.2,1) forwards; }
.transition-streaks {
    position: absolute;
    inset: -50%;
    background: repeating-conic-gradient(from 0deg at center, transparent 0 8deg, rgba(116,44,248,.17) 8.3deg 8.7deg, transparent 9deg 17deg, rgba(0,169,236,.12) 17.2deg 17.5deg);
    opacity: 0;
}
.maze-transition.is-active .transition-streaks { animation: transition-streaks 1.25s cubic-bezier(.2,.8,.2,1) forwards; }
.transition-depth { position: absolute; inset: 0; display: grid; place-items: center; perspective: 1200px; }
.transition-depth i {
    position: absolute;
    width: calc(92vmin - var(--layer) * 8vmin);
    aspect-ratio: .86;
    border: 1px solid rgba(255,255,255,calc(.34 - var(--layer) * .025));
    box-shadow: inset 0 0 26px rgba(116,44,248,.08);
    opacity: 0;
    transform: translateZ(calc(var(--layer) * -95px)) scale(.18);
}
.maze-transition.is-active .transition-depth i { animation: transition-frame-rush 1.05s cubic-bezier(.18,.78,.18,1) calc(var(--layer) * 32ms) forwards; }
.maze-transition > img {
    position: relative;
    z-index: 2;
    width: min(620px, 76vw);
    aspect-ratio: 1.5;
    object-fit: cover;
    opacity: 0;
    transform: scale(.12);
}
.maze-transition.is-active > img { animation: transition-logo-rush 1.28s cubic-bezier(.17,.84,.25,1) forwards; }
.transition-message { position: absolute; z-index: 3; left: 6vw; bottom: 6vh; }
.transition-message span { display: block; margin-bottom: 12px; color: #8f859a; font-size: 8px; letter-spacing: .2em; }
.transition-message strong { display: block; font-size: clamp(2.5rem, 7vw, 8rem); line-height: .76; letter-spacing: -.075em; opacity: 0; transform: translateY(35px); }
.maze-transition.is-active .transition-message strong { animation: transition-type .42s .18s cubic-bezier(.2,.8,.2,1) forwards; }

@keyframes preloader-title-in { from { opacity: .08; transform: translateY(110%); } to { opacity: 1; transform: translateY(0); } }
@keyframes preloader-copy-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@keyframes transition-burst { 0% { transform: scale(.15); opacity: 0; } 28% { opacity: 1; } 100% { transform: scale(3); opacity: 0; } }
@keyframes transition-streaks { 0% { transform: scale(.2); opacity: 0; } 35% { opacity: .8; } 100% { transform: scale(2.8); opacity: 0; } }
@keyframes transition-frame-rush { 0% { opacity: 0; transform: translateZ(calc(var(--layer) * -95px)) scale(.18); } 28% { opacity: .6; } 100% { opacity: 0; transform: translateZ(650px) scale(2.4); } }
@keyframes transition-logo-rush { 0% { opacity: 0; transform: scale(.12); } 20% { opacity: 1; } 64% { opacity: 1; transform: scale(.82); } 100% { opacity: 0; transform: scale(3.8); } }
@keyframes transition-type { to { opacity: 1; transform: translateY(0); } }
@keyframes depth-pane-float { from { margin-top: -8px; } to { margin-top: 10px; } }
@keyframes orbit-spin { to { rotate: 360deg; } }
@keyframes artifact-caption-float { to { translate: 0 -6px; } }
@keyframes artifact-axis-pulse { from { opacity: .45; } to { opacity: 1; border-color: rgba(255,255,255,.25); } }

.ambient {
    position: fixed; inset: 0; z-index: -2; pointer-events: none; opacity: .45;
    background-image:
        linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px);
    background-size: 54px 54px;
    mask-image: linear-gradient(to bottom, black, transparent 90%);
}
.ambient::after {
    content: ""; position: absolute; inset: 0;
    background: repeating-linear-gradient(115deg, transparent 0 160px, rgba(116,44,248,.025) 161px, transparent 162px 310px);
}
.cursor-glow {
    position: fixed; z-index: -1; width: 360px; height: 360px; margin: -180px 0 0 -180px;
    border-radius: 50%; pointer-events: none; opacity: .18; filter: blur(70px);
    background: radial-gradient(circle, var(--purple), transparent 66%);
    transform: translate3d(var(--cursor-x, -500px), var(--cursor-y, -500px), 0);
}
.section-shell { width: var(--shell); margin-inline: auto; }
.glass-panel {
    border: 1px solid var(--line);
    background: linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.025));
    box-shadow: inset 0 1px rgba(255,255,255,.1), 0 35px 90px rgba(0,0,0,.25);
    backdrop-filter: blur(24px);
}

.site-header {
    position: absolute; inset: 0 0 auto; z-index: 30;
    display: flex; align-items: center; justify-content: space-between;
    width: var(--shell); margin: auto; padding: 21px 0;
    border-bottom: 1px solid var(--line);
    transition: transform .35s ease, background .35s ease, padding .35s ease;
}
.site-header.is-fixed {
    position: fixed; width: 100%; padding: 12px 4vw;
    border-bottom-color: rgba(255,255,255,.09);
    background: rgba(9,7,13,.78); backdrop-filter: blur(24px);
    animation: header-in .35s ease;
}
.brand img { display: block; width: 72px; height: 55px; object-fit: contain; filter: drop-shadow(0 0 16px rgba(116,44,248,.15)); }
.site-header nav { display: flex; align-items: center; gap: clamp(20px, 3vw, 48px); font-size: 11px; font-weight: 700; letter-spacing: .1em; }
.site-header nav a { position: relative; transition: color .25s ease; }
.site-header nav > a:not(.nav-cta)::after {
    content: ""; position: absolute; left: 0; right: 100%; bottom: -9px; height: 1px;
    background: linear-gradient(90deg, var(--purple), var(--blue)); transition: right .25s ease;
}
.site-header nav a:hover, .site-header nav a.active { color: #d4c0ff; }
.site-header nav a:hover::after, .site-header nav a.active::after { right: 0; }
.nav-cta {
    padding: 13px 19px; border: 1px solid rgba(255,255,255,.24); border-radius: 999px;
    background: var(--glass); backdrop-filter: blur(18px);
}
.nav-cta:hover, .nav-cta.active { border-color: rgba(174,132,255,.65); background: rgba(116,44,248,.16); }
.menu-button { display: none; }

.eyebrow {
    display: flex; align-items: center; gap: 12px; margin: 0 0 24px;
    color: #d9ccef; font-size: 10px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase;
}
.eyebrow span { width: 34px; height: 1px; background: linear-gradient(90deg, var(--purple), var(--blue)); box-shadow: 0 0 12px var(--purple); }
h1, h2, h3, p { text-wrap: pretty; }
h1 { margin: 0; font-size: clamp(3.9rem, 7.2vw, 8.4rem); line-height: .82; letter-spacing: -.072em; font-weight: 800; text-transform: uppercase; }
h1 em, h2 em {
    color: transparent; font-style: normal; -webkit-text-stroke: 1px rgba(236, 227, 255, .62);
}
h2 { margin: 0; font-size: clamp(3rem, 6vw, 7.8rem); line-height: .88; letter-spacing: -.065em; text-transform: uppercase; }
h3 { margin: 0; }
.hero-lede, .large-copy { color: #bbb2c6; line-height: 1.75; }

.button {
    display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 24px;
    border: 1px solid transparent; border-radius: 999px; font-size: 11px; font-weight: 800; letter-spacing: .06em;
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease;
}
.button:hover { transform: translateY(-3px); }
.button-primary { background: linear-gradient(120deg, var(--purple), #9a45ff); box-shadow: 0 16px 44px rgba(116,44,248,.33), inset 0 1px rgba(255,255,255,.28); }
.button-primary:hover { box-shadow: 0 18px 60px rgba(116,44,248,.5); }
.button b { margin-left: 20px; font-size: 16px; }
.button-ghost { border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.03); backdrop-filter: blur(14px); }
.button-ghost:hover { border-color: rgba(255,255,255,.34); background: rgba(255,255,255,.07); }
.text-link { display: inline-flex; align-items: center; gap: 28px; padding-bottom: 8px; border-bottom: 1px solid rgba(255,255,255,.22); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.text-link:hover { color: #c8abff; border-color: #c8abff; }

.hero {
    position: relative; min-height: 100svh; display: grid; grid-template-columns: minmax(0, 1.04fr) minmax(340px, .96fr); align-items: center;
    width: var(--shell); margin: auto; padding: 130px 0 72px; isolation: isolate;
}
.home-hero {
    --hero-x: 0;
    --hero-y: 0;
    --depth-far-x: 0px;
    --depth-far-y: 0px;
    --depth-mid-x: 0px;
    --depth-mid-y: 0px;
    --depth-near-x: 0px;
    --depth-near-y: 0px;
    perspective: 1800px;
    transform-style: preserve-3d;
}
.home-hero::before {
    content: "";
    position: absolute;
    z-index: -1;
    right: -11vw;
    top: 8%;
    width: min(76vw, 1100px);
    aspect-ratio: 1;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(116,44,248,.17), rgba(0,169,236,.045) 35%, transparent 68%);
    filter: blur(18px);
    transform: translate3d(calc(var(--hero-x) * -22px), calc(var(--hero-y) * -15px), -80px);
    transition: transform .5s cubic-bezier(.2,.75,.2,1);
}
.home-hero::after {
    content: "";
    position: absolute;
    z-index: -1;
    right: 0;
    top: 16%;
    width: 45%;
    height: 68%;
    border-inline: 1px solid rgba(255,255,255,.035);
    transform: skewY(-11deg) translateZ(-120px);
}
.hero-copy {
    position: relative;
    z-index: 4;
}
.home-hero .hero-copy {
    transform: rotateY(calc(var(--hero-x) * 1.1deg)) rotateX(calc(var(--hero-y) * -1deg)) translateZ(54px);
    transform-style: preserve-3d;
    transition: transform .45s cubic-bezier(.2,.75,.2,1);
}
.home-hero h1 { text-shadow: 0 18px 55px rgba(0,0,0,.35); }
.home-hero h1 em { text-shadow: 12px 12px 0 rgba(116,44,248,.035); }
.hero-title-depth { transform-style: preserve-3d; }
.hero-title-depth > span {
    display: block;
    width: max-content;
    max-width: 100%;
    transform-style: preserve-3d;
    transition: transform .48s cubic-bezier(.2,.75,.2,1);
    will-change: transform;
}
.hero-title-depth > span:nth-child(1) { transform: translate3d(var(--depth-far-x), var(--depth-far-y), 10px); }
.hero-title-depth > span:nth-child(2) { transform: translate3d(var(--depth-mid-x), var(--depth-mid-y), 45px); }
.hero-title-depth > span:nth-child(3) { transform: translate3d(var(--depth-near-x), var(--depth-near-y), 78px); }
.hero-depth-field { position: absolute; inset: 9% -5% 7%; z-index: 3; pointer-events: none; perspective: 1400px; transform-style: preserve-3d; }
.hero-depth-field i {
    position: absolute;
    display: block;
    border: 1px solid rgba(255,255,255,.12);
    background: linear-gradient(145deg, rgba(255,255,255,.07), rgba(116,44,248,.025));
    box-shadow: inset 0 1px rgba(255,255,255,.07), 0 22px 60px rgba(0,0,0,.2);
    backdrop-filter: blur(8px);
    animation: depth-pane-float 5.8s ease-in-out infinite alternate;
}
.hero-depth-field i:nth-child(1) { left: 48%; top: 8%; width: 42px; height: 66px; translate: var(--depth-far-x) var(--depth-far-y); transform: rotate(-18deg) translateZ(-80px); opacity: .48; }
.hero-depth-field i:nth-child(2) { right: 3%; top: 33%; width: 28px; height: 28px; translate: var(--depth-near-x) var(--depth-near-y); transform: rotate(26deg) translateZ(105px); animation-delay: -1.6s; }
.hero-depth-field i:nth-child(3) { left: 38%; bottom: 12%; width: 20px; height: 48px; translate: var(--depth-mid-x) var(--depth-mid-y); transform: rotate(11deg) translateZ(56px); animation-delay: -2.8s; opacity: .6; }
.hero-depth-field i:nth-child(4) { right: 34%; top: 10%; width: 15px; height: 15px; translate: var(--depth-near-x) var(--depth-near-y); transform: rotate(45deg) translateZ(130px); border-color: rgba(0,169,236,.25); animation-delay: -.8s; }
.hero-depth-field i:nth-child(5) { left: 3%; bottom: 20%; width: 34px; height: 18px; translate: var(--depth-far-x) var(--depth-far-y); transform: rotate(-8deg) translateZ(-45px); animation-delay: -3.5s; opacity: .35; }
[data-depth-scroll] { translate: 0 var(--depth-scroll-shift, 0px); will-change: translate; }
.hero-lede { width: min(570px, 92%); margin: 31px 0 0; font-size: clamp(14px, 1.25vw, 18px); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 35px; }
.portal {
    position: relative; width: min(88%, 620px); aspect-ratio: 1; justify-self: end; perspective: 1100px;
    transform-style: preserve-3d; transition: transform .16s ease-out;
}
.portal::before {
    content: ""; position: absolute; inset: 12%; border-radius: 50%;
    background: radial-gradient(circle, rgba(0,169,236,.24), rgba(116,44,248,.13) 42%, transparent 68%);
    filter: blur(20px); animation: breathe 4s ease-in-out infinite;
}
.portal-rings { position: absolute; inset: 8%; transform: rotateX(58deg) rotateZ(45deg); transform-style: preserve-3d; }
.portal-rings span {
    position: absolute; inset: calc(var(--ring) * 4.5%);
    border: 2px solid color-mix(in srgb, var(--purple) calc(100% - var(--ring) * 7%), var(--blue));
    box-shadow: 0 0 18px rgba(116,44,248,.6), inset 0 0 18px rgba(0,169,236,.18);
    transform: translateZ(calc(var(--ring) * 17px));
    animation: tunnel 5s ease-in-out infinite alternate; animation-delay: calc(var(--ring) * -120ms);
}
.portal-core {
    position: absolute; top: 50%; left: 50%; z-index: 2; width: 31%; aspect-ratio: 1;
    display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 18px;
    transform: translate(-50%, -50%); border: 1px solid rgba(255,255,255,.22); border-radius: 22px;
    background: linear-gradient(145deg, rgba(18,12,28,.9), rgba(116,44,248,.17));
    box-shadow: 0 30px 80px rgba(0,0,0,.55), inset 0 1px rgba(255,255,255,.15); backdrop-filter: blur(22px);
}
.portal-core small { color: #bfb4d2; font-size: 8px; letter-spacing: .14em; text-transform: uppercase; }
.portal-core strong { margin: 7px 0; font-size: clamp(26px, 3vw, 50px); line-height: .75; letter-spacing: -.07em; text-align: center; }
.portal-core i { color: var(--gold); font-size: 9px; font-style: normal; font-weight: 800; text-transform: uppercase; }
.portal > p { position: absolute; right: 0; bottom: 8%; margin: 0; color: #91889f; font-size: 9px; letter-spacing: .18em; text-transform: uppercase; }
.hero-index { position: absolute; right: 0; top: 142px; color: rgba(255,255,255,.24); font: 500 9px/1 "Roboto", sans-serif; letter-spacing: .2em; }
.scroll-note {
    position: absolute; bottom: 28px; left: 0; display: flex; align-items: center; gap: 14px;
    color: #756d80; font-size: 8px; font-weight: 700; letter-spacing: .24em; writing-mode: vertical-rl;
}
.scroll-note span { width: 1px; height: 52px; background: linear-gradient(var(--purple), transparent); }

.signal-strip { min-height: 74px; overflow: hidden; border-block: 1px solid var(--line); background: rgba(255,255,255,.022); }
.signal-track {
    display: flex; align-items: center; gap: 28px; width: max-content; min-height: 74px;
    color: #91899e; font-size: 9px; font-weight: 700; letter-spacing: .19em; text-transform: uppercase;
    animation: marquee 24s linear infinite;
}
.signal-track span { min-width: max-content; }
.signal-track i { width: 5px; height: 5px; border-radius: 50%; background: var(--purple); box-shadow: 0 0 12px var(--purple); }

.manifesto { position: relative; display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr); gap: 8vw; align-items: end; padding-block: clamp(110px, 16vw, 240px); }
.section-number { position: absolute; right: 0; top: 9%; color: rgba(255,255,255,.025); font-size: clamp(13rem, 27vw, 30rem); font-weight: 900; line-height: 1; pointer-events: none; }
.manifesto-copy { position: relative; z-index: 1; }
.manifesto-copy h2 { max-width: 1000px; }
.manifesto-note { position: relative; z-index: 1; padding-bottom: 12px; }
.manifesto-note p { margin: 0 0 35px; color: var(--muted); font-size: 15px; line-height: 1.85; }

.maze-feature {
    display: grid; grid-template-columns: minmax(0, 1.07fr) minmax(360px, .73fr); gap: clamp(50px, 8vw, 130px); align-items: center;
    padding-block: clamp(70px, 10vw, 150px);
}
.maze-feature-visual { position: relative; min-height: 700px; display: grid; place-items: center; perspective: 1400px; }
.maze-feature-visual::before {
    content: ""; position: absolute; width: 78%; aspect-ratio: 1; border-radius: 50%;
    background: radial-gradient(circle, rgba(116,44,248,.27), rgba(0,169,236,.045) 46%, transparent 70%); filter: blur(36px);
}
.maze-artifact {
    position: relative;
    z-index: 2;
    width: min(100%, 720px);
    aspect-ratio: 1;
    transform-style: preserve-3d;
}
.maze-artifact::after {
    content: "";
    position: absolute;
    z-index: -1;
    left: 18%;
    right: 18%;
    bottom: 10%;
    height: 8%;
    border-radius: 50%;
    background: rgba(0,0,0,.7);
    filter: blur(24px);
}
.maze-artifact canvas { position: absolute; inset: 0; width: 100%; height: 100%; }
.artifact-caption {
    position: absolute;
    z-index: 3;
    left: 7%;
    right: 7%;
    bottom: 7%;
    display: flex;
    justify-content: space-between;
    padding-top: 13px;
    border-top: 1px solid rgba(255,255,255,.13);
    color: #746d7d;
    font-size: 7px;
    letter-spacing: .16em;
}
.artifact-caption b { color: #aca3b7; font-size: inherit; }
.artifact-axis { position: absolute; z-index: 3; right: 7%; top: 8%; display: flex; gap: 6px; }
.artifact-axis i {
    display: grid;
    place-items: center;
    width: 24px;
    height: 24px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 50%;
    color: #756e7e;
    font-size: 7px;
    font-style: normal;
}
.artifact-axis i:last-child { color: var(--gold); border-color: rgba(254,198,76,.28); }
.orbit { position: absolute; z-index: 0; width: 88%; aspect-ratio: 1; border: 1px solid rgba(116,44,248,.13); border-radius: 50%; transform: rotateX(72deg); }
.orbit::after { content: ""; position: absolute; top: 48%; left: -4px; width: 8px; height: 8px; border-radius: 50%; background: var(--blue); box-shadow: 0 0 15px var(--blue); }
.orbit-one { animation: orbit-spin 16s linear infinite; }
.orbit-two { width: 67%; transform: rotateX(78deg) rotateZ(53deg); border-color: rgba(0,169,236,.12); animation: orbit-spin 22s linear infinite reverse; }
.artifact-caption { animation: artifact-caption-float 4.6s ease-in-out infinite alternate; }
.artifact-axis i { animation: artifact-axis-pulse 3.2s ease-in-out infinite alternate; }
.artifact-axis i:nth-child(2) { animation-delay: -1.1s; }
.artifact-axis i:nth-child(3) { animation-delay: -2.2s; }
.maze-feature-copy h2 { margin-bottom: 28px; }
.maze-feature-copy .large-copy { margin: 0 0 34px; font-size: clamp(17px, 1.6vw, 23px); }
.feature-list { margin: 0 0 38px; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.feature-list li { display: flex; align-items: center; gap: 24px; padding: 16px 0; border-bottom: 1px solid var(--line); color: #ddd7e7; font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.feature-list span { color: var(--purple); font-size: 9px; }

.experience-preview { padding-block: clamp(100px, 14vw, 200px); }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 60px; margin-bottom: 70px; }
.section-heading h2 { font-size: clamp(3rem, 5.6vw, 7rem); }
.section-note { max-width: 430px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.8; }
.experience-grid { display: grid; grid-template-columns: 1.07fr .93fr; gap: 20px; perspective: 1600px; }
.experience-card {
    position: relative; min-height: 370px; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius);
    --card-x: 0px; --card-y: 0px; --card-light-x: 50%; --card-light-y: 50%;
    background: var(--night-soft); transform-style: preserve-3d; transition: transform .28s cubic-bezier(.2,.75,.2,1);
}
.experience-card-tall { grid-row: span 2; min-height: 760px; }
.experience-card img { width: 100%; height: 100%; object-fit: cover; opacity: .72; transform: translate3d(var(--card-x), var(--card-y), 24px) scale(1.06); transition: transform .38s cubic-bezier(.2,.75,.2,1), opacity .4s; }
.experience-card::after { content: ""; position: absolute; inset: 30% 0 0; background: linear-gradient(transparent, rgba(9,7,13,.9)); }
.experience-card > div { position: absolute; z-index: 2; left: 28px; right: 28px; bottom: 25px; transform: translateZ(46px); }
.experience-card span { color: var(--violet); font-size: 9px; letter-spacing: .15em; }
.experience-card h3 { margin: 7px 0; font-size: clamp(24px, 2.4vw, 42px); letter-spacing: -.04em; text-transform: uppercase; }
.experience-card p { margin: 0; color: #b3aabd; font-size: 12px; }
.experience-card:hover img { transform: translate3d(var(--card-x), var(--card-y), 32px) scale(1.1); opacity: .9; }
.quote-section { position: relative; display: grid; place-items: center; min-height: 700px; padding-block: 110px; text-align: center; }
.quote-section::before { content: ""; position: absolute; width: 50%; aspect-ratio: 1; border-radius: 50%; background: rgba(116,44,248,.14); filter: blur(100px); }
.quote-section > * { position: relative; z-index: 1; }
.quote-section > p { margin: 0 0 -20px; color: var(--purple); font: 900 120px/1 Georgia, serif; }
.quote-section blockquote { max-width: 1050px; margin: 0; font-size: clamp(2.2rem, 5vw, 6rem); font-weight: 700; line-height: .98; letter-spacing: -.06em; text-transform: uppercase; }
.quote-section span { margin-top: 36px; color: #847b8d; font-size: 9px; letter-spacing: .2em; }

/* Maze */
.maze-hero { position: relative; min-height: 100svh; overflow: hidden; isolation: isolate; }
.maze-atmosphere { position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; opacity: .62; }
.maze-hero::after {
    content: ""; position: absolute; z-index: -1; inset: 0;
    background: linear-gradient(to bottom, rgba(9,7,13,.12), var(--night) 97%), radial-gradient(circle at 68% 45%, transparent, rgba(9,7,13,.58) 55%);
}
.maze-hero-grid { min-height: 100svh; display: grid; grid-template-columns: .83fr 1.17fr; align-items: center; padding-top: 135px; padding-bottom: 70px; }
.maze-hero-copy { position: relative; z-index: 2; }
.maze-hero-copy h1 { font-size: clamp(5.2rem, 11vw, 13rem); }
.maze-hero-copy > p:not(.eyebrow) { max-width: 510px; margin: 30px 0; color: #bcb3c6; font-size: 16px; line-height: 1.8; }
.maze-tunnel { position: relative; width: min(65vw, 790px); aspect-ratio: 1; justify-self: end; perspective: 1100px; transform-style: preserve-3d; }
.maze-tunnel::before { content: ""; position: absolute; inset: 12%; border-radius: 50%; background: rgba(116,44,248,.19); filter: blur(70px); }
.maze-tunnel i {
    position: absolute; inset: calc(8% + var(--ring) * 2.65%); border: clamp(1px, .2vw, 3px) solid rgba(255,255,255,calc(.9 - var(--ring) * .055));
    box-shadow: 0 0 22px rgba(116,44,248,.35), inset 0 0 16px rgba(0,169,236,.12);
    transform: rotate(45deg) translateZ(calc(var(--ring) * 21px)); animation: maze-tunnel 4.5s ease-in-out infinite alternate;
    animation-delay: calc(var(--ring) * -110ms);
}
.maze-tunnel span { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); color: var(--gold); font-size: 9px; font-weight: 800; letter-spacing: .38em; }
.maze-specs { position: absolute; left: 4vw; right: 4vw; bottom: 24px; display: flex; width: fit-content; border-radius: 14px; overflow: hidden; }
.maze-specs div { min-width: 142px; padding: 12px 18px; border-right: 1px solid var(--line); }
.maze-specs div:last-child { border: 0; }
.maze-specs small { display: block; margin-bottom: 5px; color: #766d7f; font-size: 7px; letter-spacing: .16em; text-transform: uppercase; }
.maze-specs strong { color: #d9cee8; font-size: 9px; letter-spacing: .11em; }

.maze-intro { position: relative; display: grid; grid-template-columns: 1.1fr .9fr; gap: 10vw; align-items: end; padding-block: clamp(120px, 17vw, 240px); }
.maze-intro h2 { position: relative; z-index: 1; }
.maze-intro-copy { position: relative; z-index: 1; }
.maze-intro-copy > p { margin: 0 0 42px; color: var(--muted); font-size: 16px; line-height: 1.85; }
.micro-grid { display: grid; grid-template-columns: repeat(3,1fr); border-block: 1px solid var(--line); }
.micro-grid span { padding: 18px 10px 18px 0; color: #c8c1d1; font-size: 9px; letter-spacing: .08em; text-transform: uppercase; }
.micro-grid b { display: block; margin-bottom: 8px; color: var(--purple); font-size: 8px; }

.maze-game-section { position: relative; padding-block: clamp(100px, 12vw, 170px); background: linear-gradient(180deg, rgba(116,44,248,.055), transparent 33%); border-block: 1px solid rgba(255,255,255,.06); }
.maze-game-layout { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 20px; align-items: start; }
.maze-game-shell { border-radius: 22px; overflow: hidden; }
.game-toolbar { display: grid; grid-template-columns: 1fr 120px 120px auto; align-items: center; min-height: 74px; border-bottom: 1px solid var(--line); }
.game-toolbar > div { padding: 0 22px; border-right: 1px solid var(--line); }
.game-toolbar small { display: block; margin-bottom: 4px; color: #796f83; font-size: 7px; letter-spacing: .18em; }
.game-toolbar strong { font: 700 12px/1 "Roboto", sans-serif; letter-spacing: .08em; }
.game-toolbar button { align-self: stretch; padding: 0 24px; border: 0; background: rgba(255,255,255,.045); font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.game-toolbar button:hover { background: rgba(116,44,248,.2); }
.game-canvas-wrap { position: relative; aspect-ratio: 1; background: #08060c; }
.game-canvas-wrap::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(circle, transparent 45%, rgba(0,0,0,.38)); }
[data-game-canvas] { display: block; width: 100%; height: 100%; }
.game-start, .game-complete {
    position: absolute; inset: 0; z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: center;
    padding: 30px; text-align: center; background: rgba(9,7,13,.75); backdrop-filter: blur(18px);
}
.game-start[hidden], .game-complete[hidden] { display: none; }
.game-start::before, .game-complete::before { content: ""; position: absolute; width: 280px; aspect-ratio: 1; border: 1px solid rgba(116,44,248,.35); transform: rotate(45deg); box-shadow: inset 0 0 70px rgba(116,44,248,.12); }
.game-start > *, .game-complete > * { position: relative; z-index: 1; }
.game-start > span, .game-complete > span { color: var(--gold); font-size: 8px; font-weight: 800; letter-spacing: .26em; }
.game-start h3, .game-complete h3 { margin: 13px 0 25px; font-size: clamp(28px, 4vw, 56px); letter-spacing: -.05em; text-transform: uppercase; }
.game-start label { width: min(330px, 85%); margin-bottom: 8px; color: #807688; font-size: 8px; letter-spacing: .15em; text-align: left; }
.game-start input { width: min(330px, 85%); margin-bottom: 14px; padding: 15px; border: 1px solid rgba(255,255,255,.18); outline: 0; background: rgba(255,255,255,.065); text-align: center; text-transform: uppercase; }
.game-start input:focus { border-color: var(--purple); box-shadow: 0 0 20px rgba(116,44,248,.18); }
.game-start p, .game-complete small { min-height: 16px; color: #ef9eae; font-size: 10px; }
.game-complete p { margin: 0 0 25px; color: #b7aec2; font-size: 12px; }
.game-complete p strong { color: white; }
.game-controls { display: none; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); }
.game-controls button { min-height: 56px; border: 0; border-right: 1px solid var(--line); background: rgba(255,255,255,.04); font-size: 20px; }
.leaderboard { padding: 24px; border-radius: 22px; }
.leaderboard-head { display: flex; justify-content: space-between; align-items: flex-start; padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.leaderboard-head .eyebrow { margin: 0; font-size: 8px; }
.leaderboard-head > span { color: #665d6e; font-size: 7px; letter-spacing: .14em; text-transform: uppercase; }
.leaderboard ol { margin: 0; padding: 0; list-style: none; }
.leaderboard li { display: grid; grid-template-columns: 28px 1fr auto; align-items: center; min-height: 64px; border-bottom: 1px solid var(--line); }
.leaderboard li i { color: #675e70; font-size: 8px; font-style: normal; }
.leaderboard li > span { font-size: 10px; font-weight: 800; letter-spacing: .07em; }
.leaderboard li small { display: block; margin-top: 4px; color: #665e6c; font-size: 7px; font-weight: 500; }
.leaderboard li > b { color: var(--gold); font: 500 18px/1 "Roboto", sans-serif; }
.leaderboard .empty-score { display: flex; justify-content: space-between; }
.leaderboard > p { margin: 20px 0 0; color: #716878; font-size: 9px; line-height: 1.6; }

.mascot-section { padding-block: clamp(110px, 15vw, 220px); }
.mascot-tabs { border-top: 1px solid var(--line); }
.mascot-buttons { display: grid; grid-template-columns: repeat(3,1fr); }
.mascot-buttons button { padding: 22px; border: 0; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: transparent; color: #81778a; font-size: 13px; font-weight: 800; letter-spacing: .16em; }
.mascot-buttons button:last-child { border-right: 0; }
.mascot-buttons button span { margin-right: 18px; font-size: 8px; }
.mascot-buttons button.active { color: white; background: linear-gradient(90deg, rgba(116,44,248,.18), transparent); box-shadow: inset 0 -2px var(--purple); }
.mascot-stage { position: relative; min-height: 700px; }
.mascot-stage article { position: absolute; inset: 0; overflow: hidden; animation: panel-in .5s ease both; }
.mascot-stage article[hidden] { display: none; }
.mascot-stage img { width: 100%; height: 100%; object-fit: cover; opacity: .72; }
.mascot-stage article::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(9,7,13,.08), rgba(9,7,13,.12) 45%, rgba(9,7,13,.9)); }
.mascot-stage article > div { position: absolute; z-index: 2; right: 5%; top: 50%; width: min(36%, 430px); transform: translateY(-50%); }
.mascot-stage small { color: var(--violet); font-size: 8px; font-weight: 800; letter-spacing: .19em; }
.mascot-stage h3 { margin: 10px 0 22px; font-size: clamp(4rem, 9vw, 9rem); line-height: .8; letter-spacing: -.08em; }
.mascot-stage p { color: #b8afc1; font-size: 14px; line-height: 1.8; }

.activation-section { display: grid; grid-template-columns: .75fr 1.25fr; gap: 7vw; align-items: center; padding-bottom: clamp(120px, 16vw, 230px); }
.activation-copy p:not(.eyebrow) { margin: 28px 0 36px; color: var(--muted); font-size: 15px; line-height: 1.85; }
.activation-gallery { display: grid; grid-template-columns: .92fr 1.08fr; gap: 14px; transform: rotate(2deg); }
.activation-gallery img { width: 100%; height: 520px; object-fit: cover; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 30px 80px rgba(0,0,0,.35); }
.activation-gallery img:first-child { margin-top: 48px; }

/* Inner pages */
.inner-hero { position: relative; min-height: 100svh; display: flex; flex-direction: column; justify-content: center; padding-top: 135px; padding-bottom: 100px; }
.inner-hero::before { content: ""; position: absolute; right: 2%; top: 24%; width: 34vw; aspect-ratio: 1; border: 1px solid rgba(116,44,248,.16); transform: rotate(45deg); box-shadow: 0 0 80px rgba(116,44,248,.08), inset 0 0 90px rgba(0,169,236,.03); }
.inner-hero h1 { position: relative; z-index: 1; font-size: clamp(4rem, 9vw, 10rem); }
.inner-hero-note { position: absolute; z-index: 2; right: 0; bottom: 10%; width: min(390px, 34%); }
.inner-hero-note p { margin: 0 0 24px; color: var(--muted); font-size: 14px; line-height: 1.8; }
.inner-hero-note span { color: #675e70; font-size: 8px; letter-spacing: .18em; }
.services { padding-block: 90px 180px; }
.service-row {
    display: grid; grid-template-columns: 50px 1.1fr .8fr 50px; gap: 30px; align-items: center; min-height: 300px;
    border-top: 1px solid var(--line); transition: background .3s;
}
.service-row:last-child { border-bottom: 1px solid var(--line); }
.service-row > span { align-self: start; padding-top: 34px; color: var(--purple); font-size: 8px; }
.service-row h2 { font-size: clamp(2.5rem, 4vw, 5rem); }
.service-row p { max-width: 520px; margin: 18px 0 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.service-row figure { width: 280px; height: 190px; margin: 0; overflow: hidden; justify-self: end; border-radius: 14px; transform: rotate(-3deg); opacity: .72; transition: transform .4s, opacity .4s; }
.service-row img { width: 100%; height: 100%; object-fit: cover; }
.service-row > b { justify-self: end; color: #6f6678; font-size: 22px; }
.service-row:hover { background: linear-gradient(90deg, transparent, rgba(116,44,248,.055), transparent); }
.service-row:hover figure { opacity: 1; transform: rotate(0) scale(1.04); }
.process { padding-block: 100px 200px; }
.process-grid { display: grid; grid-template-columns: repeat(4,1fr); border-block: 1px solid var(--line); }
.process-grid article { min-height: 300px; padding: 30px; border-right: 1px solid var(--line); }
.process-grid article:last-child { border: 0; }
.process-grid span { color: var(--purple); font-size: 9px; }
.process-grid h3 { margin: 92px 0 20px; font-size: 28px; text-transform: uppercase; }
.process-grid p { color: var(--muted); font-size: 12px; line-height: 1.7; }
.wide-image { position: relative; height: min(70vw, 780px); margin-bottom: 170px; overflow: hidden; border-radius: 24px; }
.wide-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(transparent 42%, rgba(9,7,13,.92)); }
.wide-image img { width: 100%; height: 100%; object-fit: cover; }
.wide-image > div { position: absolute; z-index: 2; left: 4%; bottom: 7%; }
.wide-image span { color: var(--gold); font-size: 8px; letter-spacing: .2em; }
.wide-image p { margin: 12px 0 0; font-size: clamp(2rem, 5vw, 6rem); font-weight: 800; line-height: .9; letter-spacing: -.05em; text-transform: uppercase; }

.mission-vision { display: grid; grid-template-columns: 1fr 1fr; border-block: 1px solid var(--line); }
.mission-vision article { min-height: 600px; padding: clamp(40px, 6vw, 90px); }
.mission-vision article:first-child { border-right: 1px solid var(--line); }
.mission-vision span { color: var(--purple); font-size: 9px; font-weight: 800; letter-spacing: .18em; }
.mission-vision h2 { margin: 150px 0 30px; font-size: clamp(2.8rem, 4.5vw, 5.4rem); }
.mission-vision p { max-width: 520px; color: var(--muted); font-size: 14px; line-height: 1.85; }
.values { padding-block: 180px; }
.value-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.value-grid article { position: relative; min-height: 420px; padding: 30px; overflow: hidden; border: 1px solid var(--line); background: rgba(255,255,255,.025); }
.value-grid article > span { color: #736a7c; font-size: 8px; }
.value-grid i { position: absolute; right: -20%; top: 7%; width: 70%; aspect-ratio: 1; border: 1px solid rgba(116,44,248,.2); transform: rotate(45deg); transition: transform .5s, border-color .5s; }
.value-grid h3 { position: absolute; left: 30px; bottom: 115px; font-size: clamp(28px, 3vw, 50px); text-transform: uppercase; }
.value-grid p { position: absolute; left: 30px; right: 30px; bottom: 23px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.65; }
.value-grid article:hover i { transform: rotate(135deg) scale(.8); border-color: var(--purple); }
.voice-section { display: grid; grid-template-columns: .8fr 1.2fr; gap: 9vw; align-items: center; padding-bottom: 190px; }
.voice-copy p:not(.eyebrow) { color: var(--muted); line-height: 1.8; }
.voice-spectrum { padding: 20px 34px; border-radius: 20px; }
.voice-spectrum > div { display: grid; grid-template-columns: 100px 1fr 100px; gap: 20px; align-items: center; min-height: 70px; border-bottom: 1px solid var(--line); color: #9f96a8; font-size: 9px; font-weight: 700; text-transform: uppercase; }
.voice-spectrum > div:last-child { border: 0; }
.voice-spectrum > div span:last-child { text-align: right; }
.voice-spectrum i { position: relative; height: 1px; background: linear-gradient(90deg, var(--purple), rgba(255,255,255,.13)); }
.voice-spectrum i::after { content: ""; position: absolute; top: 50%; left: var(--position); width: 10px; height: 10px; border-radius: 50%; transform: translate(-50%,-50%); background: var(--purple); box-shadow: 0 0 14px var(--purple); }
.palette-section { display: grid; grid-template-columns: .45fr 1.55fr; gap: 60px; padding-bottom: 190px; }
.palette { display: grid; grid-template-columns: 2fr 1.25fr 1fr; grid-template-rows: 1fr 1fr; min-height: 620px; gap: 10px; }
.palette article { display: flex; flex-direction: column; justify-content: space-between; padding: 22px; background: var(--swatch); border-radius: 18px; color: white; }
.palette article:first-child { grid-row: span 2; }
.palette article:nth-child(2) { grid-row: span 2; }
.palette .dark-type { color: var(--ink); }
.palette span { font-size: 12px; font-weight: 800; }
.palette b { font-size: 10px; letter-spacing: .08em; }

/* Contact */
.contact-section { min-height: 100svh; display: grid; grid-template-columns: .9fr 1.1fr; gap: 7vw; align-items: center; padding-top: 150px; padding-bottom: 120px; }
.contact-copy h1 { font-size: clamp(3.8rem, 7vw, 8rem); }
.contact-copy > p:not(.eyebrow) { max-width: 530px; margin: 30px 0 50px; color: var(--muted); font-size: 15px; line-height: 1.8; }
.contact-social small { display: block; margin-bottom: 12px; color: #6f6677; font-size: 8px; letter-spacing: .18em; }
.contact-social a { display: inline-flex; gap: 35px; padding-bottom: 8px; border-bottom: 1px solid var(--line); font-size: 11px; font-weight: 800; }
.contact-form-wrap { min-height: 680px; padding: clamp(26px, 4vw, 56px); border-radius: 24px; }
.contact-form { display: grid; gap: 28px; }
.contact-form label { display: block; }
.contact-form label > span { display: flex; justify-content: space-between; margin-bottom: 9px; color: #81778a; font-size: 8px; font-weight: 800; letter-spacing: .14em; }
.contact-form label > span i { font-style: normal; color: #554d5c; }
.contact-form input, .contact-form select, .contact-form textarea {
    width: 100%; padding: 14px 0; border: 0; border-bottom: 1px solid rgba(255,255,255,.17); outline: 0;
    color: white; background: transparent; resize: vertical; border-radius: 0;
}
.contact-form input::placeholder, .contact-form textarea::placeholder { color: #5f5666; }
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus { border-color: var(--purple); box-shadow: 0 6px 9px -9px var(--purple); }
.contact-form select option { color: white; background: var(--night-soft); }
.contact-form label > small, .form-error { display: block; margin-top: 6px; color: #ff879f; font-size: 9px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.contact-form .button { justify-self: start; margin-top: 10px; }
.trap { position: absolute; left: -9999px; }
.form-error-wide { margin: 0; }
.form-success { min-height: 550px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
.form-success > span { display: grid; place-items: center; width: 62px; height: 62px; border: 1px solid var(--purple); border-radius: 50%; color: var(--gold); box-shadow: 0 0 30px rgba(116,44,248,.25); }
.form-success h2 { margin: 30px 0 18px; font-size: clamp(3rem, 5vw, 6rem); }
.form-success p { margin: 0 0 38px; color: var(--muted); }

/* Footer */
.site-footer { width: var(--shell); margin-inline: auto; padding-top: 120px; border-top: 1px solid var(--line); }
.footer-top { padding-bottom: 110px; }
.footer-call { position: relative; display: block; font-size: clamp(3.8rem, 9vw, 10rem); font-weight: 800; line-height: .8; letter-spacing: -.075em; text-transform: uppercase; }
.footer-call em { color: transparent; font-style: normal; -webkit-text-stroke: 1px rgba(255,255,255,.5); transition: color .35s, -webkit-text-stroke .35s; }
.footer-call b { position: absolute; right: 0; bottom: 0; display: grid; place-items: center; width: 80px; height: 80px; border: 1px solid var(--line); border-radius: 50%; font-size: 27px; font-weight: 400; }
.footer-call:hover em { color: var(--purple); -webkit-text-stroke-color: var(--purple); }
.footer-grid { display: grid; grid-template-columns: 1.4fr .7fr .7fr .8fr; gap: 40px; padding-block: 55px; border-block: 1px solid var(--line); }
.footer-grid > div:not(.footer-mark) { display: flex; flex-direction: column; align-items: flex-start; }
.footer-brand img { width: 82px; }
.footer-brand p { color: #756c7e; font-size: 11px; line-height: 1.7; }
.footer-grid small { margin-bottom: 18px; color: #675f70; font-size: 8px; letter-spacing: .17em; text-transform: uppercase; }
.footer-grid a { margin-bottom: 12px; color: #bbb3c3; font-size: 11px; }
.footer-grid a:hover { color: white; }
.footer-mark { justify-self: end; width: 200px; opacity: .45; filter: drop-shadow(0 0 20px rgba(116,44,248,.2)); }
.footer-bottom { display: flex; justify-content: space-between; padding: 24px 0 35px; color: #5d5564; font-size: 8px; letter-spacing: .13em; text-transform: uppercase; }

[data-reveal] { opacity: 0; transform: translateY(35px); transition: opacity .8s ease, transform .8s cubic-bezier(.2,.8,.2,1); }
[data-reveal].is-visible { opacity: 1; transform: translateY(0); }
.simple-hero { grid-template-columns: 1fr; }

@keyframes tunnel { to { transform: translateZ(calc(var(--ring) * 21px)) rotateZ(3deg); filter: hue-rotate(20deg); } }
@keyframes maze-tunnel { to { transform: rotate(47deg) translateZ(calc(var(--ring) * 28px)) scale(.98); border-color: rgba(0,169,236,calc(.65 - var(--ring) * .04)); } }
@keyframes breathe { 50% { transform: scale(1.12); opacity: .72; } }
@keyframes scan { 0%,100% { top: 9%; opacity: .1; } 50% { top: 91%; opacity: 1; } }
@keyframes marquee { to { transform: translateX(-50%); } }
@keyframes header-in { from { transform: translateY(-100%); } }
@keyframes panel-in { from { opacity: 0; transform: translateY(12px); } }

@media (max-width: 1100px) {
    .maze-game-layout { grid-template-columns: 1fr 280px; }
    .service-row { grid-template-columns: 40px 1fr 240px 30px; }
    .service-row figure { width: 220px; height: 160px; }
    .palette-section { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
    :root { --shell: calc(100% - 44px); }
    .cursor-glow { display: none; }
    .site-header nav {
        position: fixed; inset: 0; z-index: -1; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 26px;
        padding: 90px 7vw 40px; background: rgba(9,7,13,.97); backdrop-filter: blur(28px);
        opacity: 0; visibility: hidden; transform: translateY(-18px); transition: .3s ease;
    }
    .site-header nav a { font-size: clamp(28px, 7vw, 56px); letter-spacing: -.04em; text-transform: uppercase; }
    .site-header nav .nav-cta { margin-top: 15px; padding: 15px 22px; font-size: 13px; letter-spacing: .05em; }
    .site-header nav.open { opacity: 1; visibility: visible; transform: none; }
    .menu-button { display: grid; grid-template-columns: 22px auto; align-items: center; gap: 0 10px; padding: 10px 0; border: 0; background: transparent; }
    .menu-button span { grid-column: 1; display: block; width: 22px; height: 1px; margin: 2px 0; background: white; transition: .25s; }
    .menu-button b { grid-column: 2; grid-row: 1 / 4; font-size: 8px; letter-spacing: .16em; text-transform: uppercase; }
    .menu-button[aria-expanded="true"] span:first-child { transform: translateY(5px) rotate(45deg); }
    .menu-button[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
    .menu-button[aria-expanded="true"] span:nth-child(3) { transform: translateY(-5px) rotate(-45deg); }
    .hero { grid-template-columns: 1fr; gap: 20px; min-height: auto; padding-top: 150px; }
    .portal { justify-self: center; width: min(80vw, 560px); margin-top: -4vw; }
    .hero-index { display: none; }
    .manifesto, .maze-feature, .maze-intro, .activation-section, .voice-section, .contact-section { grid-template-columns: 1fr; }
    .manifesto { gap: 50px; }
    .maze-feature-visual { order: 2; min-height: 560px; }
    .experience-grid { grid-template-columns: 1fr; }
    .experience-card-tall { min-height: 620px; }
    .section-heading { align-items: flex-start; flex-direction: column; }
    .maze-hero-grid { grid-template-columns: 1fr; padding-top: 150px; }
    .maze-tunnel { position: absolute; right: -24%; top: 23%; width: 72vw; opacity: .54; }
    .maze-hero-copy { max-width: 650px; }
    .maze-specs { left: 22px; }
    .maze-game-layout { grid-template-columns: 1fr; }
    .leaderboard { order: 2; }
    .game-controls { display: grid; }
    .mascot-stage { min-height: 600px; }
    .mascot-stage article::after { background: linear-gradient(transparent 15%, rgba(9,7,13,.88) 72%); }
    .mascot-stage article > div { left: 28px; right: 28px; top: auto; bottom: 28px; width: auto; transform: none; }
    .mascot-stage h3 { font-size: 76px; }
    .activation-gallery img { height: 430px; }
    .inner-hero-note { position: relative; right: auto; bottom: auto; width: 70%; margin: 45px 0 0 auto; }
    .service-row { grid-template-columns: 35px 1fr 180px; }
    .service-row figure { width: 170px; height: 135px; }
    .service-row > b { display: none; }
    .process-grid { grid-template-columns: 1fr 1fr; }
    .process-grid article:nth-child(2) { border-right: 0; }
    .process-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
    .mission-vision { grid-template-columns: 1fr; }
    .mission-vision article:first-child { border-right: 0; border-bottom: 1px solid var(--line); }
    .value-grid { grid-template-columns: 1fr; }
    .voice-spectrum { order: 2; }
    .palette { min-height: 540px; }
    .contact-section { padding-top: 150px; }
    .footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 600px) {
    :root { --shell: calc(100% - 36px); --radius: 17px; }
    .site-header { width: calc(100% - 36px); }
    .site-header.is-fixed { width: 100%; padding-inline: 18px; }
    .brand img { width: 60px; height: 46px; }
    .hero { width: var(--shell); padding-top: 125px; padding-bottom: 55px; }
    h1 { font-size: clamp(3rem, 16.2vw, 5.2rem); }
    h2 { font-size: clamp(2.7rem, 13vw, 4.7rem); }
    .eyebrow { font-size: 8px; }
    .hero-lede { width: 100%; font-size: 14px; }
    .hero-actions { flex-direction: column; align-items: stretch; }
    .portal { width: 108%; left: 4%; margin-top: -35px; }
    .portal-core { border-radius: 16px; }
    .scroll-note { display: none; }
    .signal-track { animation-duration: 18s; }
    .manifesto { padding-block: 110px; }
    .maze-feature { padding-block: 60px 100px; }
    .maze-feature-visual { min-height: 460px; }
    .experience-preview { padding-block: 100px; }
    .section-heading { gap: 28px; margin-bottom: 45px; }
    .experience-card, .experience-card-tall { min-height: 460px; }
    .quote-section { min-height: 540px; padding-block: 80px; }
    .quote-section > p { font-size: 80px; }
    .maze-hero-grid { padding-top: 128px; }
    .maze-hero-copy h1 { font-size: 23vw; }
    .maze-hero-copy > p:not(.eyebrow) { font-size: 14px; }
    .maze-tunnel { right: -38%; top: 28%; width: 98vw; opacity: .34; }
    .maze-specs { left: 18px; right: 18px; width: auto; bottom: 15px; }
    .maze-specs div { min-width: 0; flex: 1; padding: 10px; }
    .maze-specs strong { font-size: 7px; }
    .maze-intro { padding-block: 110px; gap: 55px; }
    .maze-game-section { padding-block: 90px; }
    .game-toolbar { grid-template-columns: 1fr 82px 82px; }
    .game-toolbar > div { padding: 0 12px; }
    .game-toolbar > button { grid-column: 1 / -1; min-height: 44px; border-top: 1px solid var(--line); }
    .game-start::before, .game-complete::before { width: 190px; }
    .game-start h3, .game-complete h3 { font-size: 31px; }
    .game-start .button, .game-complete .button { min-height: 48px; padding: 0 18px; }
    .mascot-buttons button { padding: 17px 8px; font-size: 10px; }
    .mascot-buttons button span { display: none; }
    .mascot-stage { min-height: 490px; }
    .mascot-stage img { object-position: 32% center; }
    .mascot-stage h3 { font-size: 62px; }
    .mascot-stage p { font-size: 12px; }
    .activation-section { padding-bottom: 120px; }
    .activation-gallery { gap: 8px; margin-top: 10px; }
    .activation-gallery img { height: 290px; border-radius: 12px; }
    .inner-hero { min-height: 780px; padding-top: 130px; }
    .inner-hero h1 { font-size: 15vw; }
    .inner-hero-note { width: 92%; }
    .services { padding-block: 50px 120px; }
    .service-row { grid-template-columns: 28px 1fr; min-height: 310px; gap: 10px; }
    .service-row > span { padding-top: 26px; }
    .service-row h2 { font-size: 11vw; }
    .service-row figure { grid-column: 2; width: 100%; height: 150px; justify-self: stretch; }
    .process { padding-block: 80px 130px; }
    .process-grid { grid-template-columns: 1fr; }
    .process-grid article { min-height: 230px; border-right: 0; border-bottom: 1px solid var(--line); }
    .process-grid h3 { margin-top: 60px; }
    .wide-image { height: 110vw; margin-bottom: 120px; }
    .mission-vision article { min-height: 510px; padding: 45px 22px; }
    .mission-vision h2 { margin-top: 110px; }
    .values { padding-block: 120px; }
    .value-grid article { min-height: 370px; }
    .voice-section { padding-bottom: 130px; gap: 55px; }
    .voice-spectrum { padding: 8px 18px; }
    .voice-spectrum > div { grid-template-columns: 73px 1fr 73px; gap: 10px; font-size: 7px; }
    .palette-section { padding-bottom: 120px; }
    .palette { grid-template-columns: 1fr 1fr; grid-template-rows: 220px 150px 150px; min-height: 0; }
    .palette article:first-child, .palette article:nth-child(2) { grid-row: auto; }
    .palette article:last-child { grid-column: span 2; }
    .contact-section { padding-bottom: 95px; }
    .contact-copy h1 { font-size: 15vw; }
    .contact-form-wrap { min-height: 0; margin-top: 20px; padding: 28px 20px; }
    .form-row { grid-template-columns: 1fr; gap: 28px; }
    .footer-top { padding-bottom: 80px; }
    .footer-call { font-size: 16vw; }
    .footer-call b { width: 50px; height: 50px; font-size: 18px; }
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 35px 20px; }
    .footer-brand, .footer-mark { grid-column: span 2; }
    .footer-mark { justify-self: start; width: 130px; }
    .footer-bottom { flex-direction: column; gap: 8px; }
}

/* Premium glass material system */
.site-header.is-fixed {
    border-bottom-color: rgba(255,255,255,.11);
    background: linear-gradient(135deg, rgba(16,12,24,.76), rgba(7,6,10,.58));
    box-shadow: inset 0 1px rgba(255,255,255,.08), 0 16px 55px rgba(0,0,0,.26);
    backdrop-filter: blur(28px) saturate(145%);
}
.manifesto-note,
.maze-feature-copy {
    --glass-x: 20%;
    --glass-y: 0%;
    position: relative;
    overflow: hidden;
    padding: clamp(28px, 3.2vw, 48px);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 28px;
    background:
        linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.018)),
        radial-gradient(circle at 0 0, rgba(116,44,248,.11), transparent 42%);
    box-shadow: inset 0 1px rgba(255,255,255,.11), 0 35px 90px rgba(0,0,0,.22);
    backdrop-filter: blur(26px) saturate(130%);
}
.manifesto-note::before,
.maze-feature-copy::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    background:
        radial-gradient(circle at var(--glass-x) var(--glass-y), rgba(255,255,255,.12), transparent 25%),
        linear-gradient(120deg, rgba(255,255,255,.035), transparent 35%);
    transition: background .18s ease;
}
.feature-list {
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 16px;
    background: rgba(255,255,255,.025);
}
.feature-list li { padding-inline: 16px; }
.experience-card {
    border-color: rgba(255,255,255,.15);
    background: linear-gradient(145deg, rgba(255,255,255,.07), rgba(16,12,23,.84));
    box-shadow: inset 0 1px rgba(255,255,255,.09), 0 34px 80px rgba(0,0,0,.25);
    backdrop-filter: blur(20px);
}
.experience-card::before {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(circle at var(--card-light-x) var(--card-light-y), rgba(255,255,255,.16), transparent 24%),
        linear-gradient(118deg, rgba(255,255,255,.07), transparent 23%, transparent 72%, rgba(116,44,248,.08));
    transition: background .15s ease;
}
.section-heading > .text-link {
    padding: 13px 17px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 999px;
    background: rgba(255,255,255,.035);
    backdrop-filter: blur(16px);
}
.button-ghost,
.nav-cta {
    box-shadow: inset 0 1px rgba(255,255,255,.08), 0 12px 38px rgba(0,0,0,.14);
    backdrop-filter: blur(20px) saturate(135%);
}

/* Interactive 3D Maze upgrade */
.hero-3d {
    position: relative;
    width: min(112%, 760px);
    aspect-ratio: 1;
    justify-self: end;
    margin-right: -5vw;
    overflow: visible;
    color: var(--white);
    background: transparent;
    isolation: isolate;
    transform:
        perspective(1700px)
        rotateY(calc(var(--hero-x) * 1.5deg))
        rotateX(calc(var(--hero-y) * -1.5deg))
        translate3d(calc(var(--hero-x) * -7px), calc(var(--hero-y) * -6px), 34px);
    transform-style: preserve-3d;
    transition: transform .42s cubic-bezier(.2,.75,.2,1);
}
.hero-3d::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 12%;
    right: 8%;
    bottom: 9%;
    height: 13%;
    border-radius: 50%;
    background: rgba(0,0,0,.78);
    filter: blur(32px);
    transform: rotateX(72deg) translateZ(-40px);
    pointer-events: none;
}
.hero-3d::after {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 9%;
    border: 1px solid rgba(150,113,222,.09);
    border-radius: 50%;
    box-shadow: 0 0 90px rgba(116,44,248,.07);
    transform: rotateX(70deg) rotateZ(-11deg) translateZ(-55px);
    pointer-events: none;
}
.hero-3d:hover {
    transform:
        perspective(1700px)
        rotateY(calc(var(--hero-x) * 1.8deg))
        rotateX(calc(var(--hero-y) * -1.8deg))
        translate3d(calc(var(--hero-x) * -8px), calc(var(--hero-y) * -7px), 48px)
        scale(1.012);
}
.hero-3d canvas {
    position: absolute;
    inset: -4%;
    z-index: 1;
    display: block;
    width: 108%;
    height: 108%;
    filter: drop-shadow(0 45px 50px rgba(0,0,0,.34));
}
.hero-3d-fallback {
    position: absolute;
    inset: 20%;
    z-index: 0;
    transform: rotateX(62deg) rotateZ(45deg);
    transform-style: preserve-3d;
    transition: opacity .5s ease;
}
.hero-3d-fallback i {
    position: absolute;
    inset: calc(var(--ring) * 4.4%);
    border: 1px solid color-mix(in srgb, var(--purple) calc(100% - var(--ring) * 7%), var(--blue));
    box-shadow: 0 0 18px rgba(116,44,248,.32);
    transform: translateZ(calc(var(--ring) * 17px));
    animation: tunnel 5s ease-in-out infinite alternate;
    animation-delay: calc(var(--ring) * -120ms);
}
.hero-3d.scene-ready .hero-3d-fallback { opacity: 0; }
.hero-3d-copy {
    position: absolute;
    z-index: 4;
    left: 8%;
    bottom: 8%;
    display: grid;
    grid-template-columns: auto auto;
    align-items: end;
    gap: 8px 18px;
    pointer-events: none;
    transform: translateZ(90px);
}
.hero-3d-copy small {
    grid-column: 1 / -1;
    color: #777080;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: .18em;
}
.hero-3d-copy strong {
    font-size: clamp(1.8rem, 2.6vw, 3.4rem);
    line-height: .9;
    letter-spacing: -.065em;
    text-transform: uppercase;
    text-shadow: 0 13px 30px rgba(0,0,0,.55);
}
.hero-3d-copy span {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 104px;
    min-height: 38px;
    padding: 0 13px;
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 999px;
    background: rgba(10,8,14,.38);
    backdrop-filter: blur(16px);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.hero-3d-copy span b { color: var(--gold); font-size: 14px; }
.hero-3d-status {
    position: absolute;
    right: 8%;
    top: 10%;
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 8px;
    color: #81798b;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: .14em;
    pointer-events: none;
    transform: translateZ(70px);
}
.hero-3d-status i {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--blue);
    box-shadow: 0 0 12px var(--blue);
    animation: breathe 2s ease-in-out infinite;
}
.hero-coordinates {
    position: absolute;
    right: 8%;
    bottom: 9%;
    z-index: 4;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
    color: rgba(190,181,204,.36);
    font: 500 6px/1 "Roboto", sans-serif;
    letter-spacing: .14em;
    pointer-events: none;
    transform: translateZ(42px);
}
@media (max-width: 1100px) {
    .hero-3d { width: min(104%, 680px); margin-right: -3vw; }
}
@media (max-width: 900px) {
    .home-hero::after { display: none; }
    .home-hero .hero-copy { transform: translateZ(28px); }
    .hero-3d {
        justify-self: center;
        width: min(92vw, 680px);
        margin: -3vw auto 0;
    }
}
@media (max-width: 600px) {
    .home-hero::before { right: -45vw; top: 31%; width: 150vw; }
    .hero-3d { width: 112%; margin: -1vw 0 -4vw -6%; }
    .hero-3d-copy { left: 8%; bottom: 9%; gap: 7px 12px; }
    .hero-3d-copy strong { font-size: 1.8rem; }
    .hero-3d-copy span { width: 88px; min-height: 34px; padding-inline: 11px; font-size: 7px; }
    .hero-3d-status { right: 7%; top: 9%; }
    .hero-coordinates { display: none; }
    .maze-feature-visual { min-height: 520px; }
    .maze-artifact { width: 112%; }
    .artifact-caption { left: 10%; right: 10%; }
    .manifesto-note,
    .maze-feature-copy { padding: 23px; border-radius: 20px; }
    .site-preloader { padding: 22px 18px 26px; }
    .preloader-top img { width: 54px; height: 42px; }
    .preloader-top span { max-width: 150px; line-height: 1.55; text-align: right; }
    .preloader-title strong { font-size: clamp(4.1rem, 20vw, 6.6rem); }
    .preloader-bottom { grid-template-columns: 1fr 38px; gap: 16px; }
    .preloader-bottom > span { grid-column: 1 / -1; }
    .transition-message { left: 22px; bottom: 28px; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; }
    [data-reveal] { opacity: 1; transform: none; }
    .cursor-glow { display: none; }
}

/* Social-backed public pages */
.editorial-hero,.social-hero,.faq-hero { min-height: 88svh; display: grid; grid-template-columns: minmax(0,1.25fr) minmax(280px,.75fr); align-items: center; gap: clamp(40px,8vw,130px); padding-top: 170px; padding-bottom: 100px; }
.editorial-hero h1,.social-hero h1,.faq-hero h1 { margin: 18px 0 0; font-size: clamp(4rem,9.4vw,10.5rem); line-height: .76; letter-spacing: -.08em; }
.editorial-hero h1 em,.social-hero h1 em,.faq-hero h1 em { color: var(--purple); font-style: normal; }
.editorial-hero-note,.social-hero-stat { align-self: end; margin-bottom: 7vh; padding: clamp(25px,3vw,42px); }
.editorial-hero-note>span,.visit-signal>span { color: #7d7586; font-size: 8px; font-weight: 800; letter-spacing: .18em; }
.editorial-hero-note p,.social-hero-stat p { color: #b3abb9; font: 14px/1.85 "Roboto",sans-serif; }
.editorial-hero-note button { padding: 0 0 5px; border: 0; border-bottom: 1px solid var(--line); background: transparent; color: white; }
.inside-cinema { position: relative; min-height: min(76vw,930px); overflow: hidden; border: 1px solid var(--line); border-radius: 36px; background: #050407; }
.inside-cinema>img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: saturate(.6) contrast(1.08); transform: scale(1.03); transition: transform 1.4s cubic-bezier(.2,.8,.2,1),filter .8s ease; }
.inside-cinema:hover>img { transform: scale(1.08); filter: saturate(.92) contrast(1.08); }
.inside-cinema-shade { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(4,3,7,.93) 0,rgba(4,3,7,.58) 38%,rgba(4,3,7,.05) 75%),linear-gradient(0deg,rgba(4,3,7,.72),transparent 42%); }
.inside-cinema-copy { position: absolute; z-index: 2; left: 7%; bottom: 9%; width: min(610px,75%); }
.inside-cinema-copy small { color: var(--blue); font-size: 8px; font-weight: 800; letter-spacing: .2em; }
.inside-cinema-copy h2 { margin: 17px 0; font-size: clamp(3.8rem,8vw,9.2rem); line-height:.78; letter-spacing:-.075em; text-transform:uppercase; }
.inside-cinema-copy p { max-width: 460px; color:#c8c1ce; font:14px/1.75 "Roboto",sans-serif; }
.inside-cinema-orbit { position:absolute; right:-9%; top:7%; width:55%; aspect-ratio:1; border:1px solid rgba(116,44,248,.28); border-radius:50%; transform:rotateX(67deg); box-shadow:0 0 70px rgba(116,44,248,.08); }
.inside-principles { display:grid; grid-template-columns:repeat(3,1fr); gap:0; padding-top:130px; padding-bottom:160px; }
.inside-principles article { min-height:360px; padding:35px; border:1px solid var(--line); background:linear-gradient(145deg,rgba(255,255,255,.045),transparent); }
.inside-principles article:first-child { border-radius:25px 0 0 25px; }.inside-principles article:last-child{border-radius:0 25px 25px 0}
.inside-principles span { color:#7755a7; font-size:9px; }.inside-principles h2{margin:100px 0 18px;font-size:clamp(1.9rem,3vw,3.8rem);letter-spacing:-.055em}.inside-principles p{color:#948c9c;font:13px/1.7 "Roboto",sans-serif;max-width:300px}
.inside-maze-call { display:grid; grid-template-columns:1.3fr .7fr; gap:6vw; align-items:end; padding-bottom:160px; }.inside-maze-call h2{font-size:clamp(3rem,6vw,7.5rem);line-height:.82;letter-spacing:-.07em}.inside-maze-call h2 em{color:var(--purple);font-style:normal}.inside-maze-call>div:last-child p{color:#aaa1b1;font:14px/1.75 "Roboto",sans-serif;margin-bottom:28px}
.visit-signal { margin-bottom:140px; padding:clamp(30px,5vw,72px); text-align:center; }.visit-signal h2{margin:18px auto;font-size:clamp(2.4rem,5vw,6rem);line-height:.9;letter-spacing:-.06em}.visit-signal>p{max-width:660px;margin:0 auto 28px;color:#a69dad;font:14px/1.75 "Roboto",sans-serif}.visit-signal>div{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.social-hero-stat strong { display:block;color:transparent;font-size:clamp(4.8rem,9vw,9rem);line-height:.85;letter-spacing:-.08em;-webkit-text-stroke:1px rgba(255,255,255,.68) }.social-hero-stat>span{display:block;margin:12px 0 24px;color:var(--blue);font-size:8px;font-weight:800;letter-spacing:.18em}
.social-feed{padding-bottom:130px}.social-feed-head{display:flex;justify-content:space-between;gap:25px;padding:18px 0;border-top:1px solid var(--line);color:#797180;font-size:8px;letter-spacing:.13em}.social-feed-head p{margin:0}.social-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.social-card{display:block;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:rgba(255,255,255,.026);transition:border-color .3s ease}.social-card:hover{border-color:rgba(116,44,248,.46)}.social-card-featured{grid-column:1/-1;display:grid;grid-template-columns:1.22fr .78fr}.social-card-media{position:relative;overflow:hidden;aspect-ratio:1.35;background:#060509}.social-card-featured .social-card-media{aspect-ratio:1.9}.social-card-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.64);transition:.65s ease}.social-card:hover img{transform:scale(1.045);filter:saturate(1)}.social-card-media:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,3,7,.67),transparent 55%)}.social-card-media>span{position:absolute;z-index:2;left:20px;bottom:18px;padding:11px 14px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(5,4,8,.45);font-size:8px;font-weight:800;letter-spacing:.1em;backdrop-filter:blur(16px)}.social-card-media small{position:absolute;z-index:2;right:18px;top:18px;padding:8px 10px;border-radius:999px;background:rgba(8,6,11,.56);font-size:8px}.social-card-copy{padding:clamp(23px,3vw,44px)}.social-card-copy i{color:#7d5ab0;font-size:8px;font-style:normal}.social-card-copy h2{margin:30px 0 13px;font-size:clamp(1.7rem,3vw,3.8rem);line-height:.92;letter-spacing:-.055em;text-transform:uppercase}.social-card-copy p{color:#9f97a7;font:13px/1.7 "Roboto",sans-serif}.social-callout{text-align:center;padding-bottom:150px}.social-callout>p{color:#827987;font-size:9px;letter-spacing:.14em;text-transform:uppercase}.social-callout h2{font-size:clamp(3.4rem,7.4vw,8.5rem);line-height:.8;letter-spacing:-.075em}.social-callout h2 em{color:var(--purple);font-style:normal}.social-callout>div{display:flex;justify-content:center;gap:10px}
.faq-hero>p{align-self:end;margin:0 0 8vh;color:#a9a1af;font:14px/1.8 "Roboto",sans-serif}.faq-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:7vw;padding-bottom:150px}.faq-layout aside{position:sticky;top:130px;align-self:start}.faq-layout aside>span{color:#766e7e;font-size:8px;letter-spacing:.17em}.faq-layout aside h2{margin:18px 0 30px;font-size:3rem;line-height:.9;letter-spacing:-.055em}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item>button{display:grid;grid-template-columns:40px 1fr 30px;align-items:center;gap:15px;width:100%;min-height:96px;padding:10px 0;border:0;background:transparent;text-align:left}.faq-item>button i{color:#7755a7;font-size:8px;font-style:normal}.faq-item>button span{font-size:clamp(1rem,1.8vw,1.55rem);font-weight:700;letter-spacing:-.025em}.faq-item>button b{font-size:25px;font-weight:300;transition:transform .25s ease}.faq-item>button[aria-expanded="true"] b{transform:rotate(45deg);color:var(--purple)}.faq-item>div{padding:0 45px 28px 55px}.faq-item>div p{max-width:720px;color:#a69dad;font:14px/1.8 "Roboto",sans-serif;margin:0}

/* Contact channels */
.contact-options{display:grid;gap:7px;margin-top:35px}.contact-options>small{color:#6f6677;font-size:8px;letter-spacing:.18em;margin-bottom:4px}.contact-options>a,.contact-options>button{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:13px;width:100%;padding:13px 15px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.025);text-align:left;transition:.25s ease}.contact-options>a:hover,.contact-options>button:hover{background:rgba(255,255,255,.065);border-color:rgba(116,44,248,.38);transform:translateX(5px)}.contact-options i{width:6px;height:6px;border-radius:50%;background:#716a78;box-shadow:0 0 0 4px rgba(255,255,255,.025)}.contact-options button i{background:var(--blue);box-shadow:0 0 12px var(--blue)}.contact-options span{display:grid;gap:3px}.contact-options b{font-size:10px}.contact-options em{color:#756e7b;font-size:8px;font-style:normal}.contact-options strong{font-size:14px;font-weight:400}

/* Site-native live chat */
.chat-widget{position:fixed;z-index:930;right:clamp(15px,2.5vw,36px);bottom:clamp(15px,2.5vw,34px)}.chat-launcher{display:flex;align-items:center;gap:11px;min-width:164px;padding:10px 14px 10px 11px;border:1px solid rgba(255,255,255,.17);border-radius:999px;color:#fff;background:rgba(10,8,14,.72);box-shadow:0 20px 55px rgba(0,0,0,.35),inset 0 1px rgba(255,255,255,.09);backdrop-filter:blur(22px) saturate(140%)}.chat-launcher-icon{display:flex;align-items:flex-end;justify-content:center;gap:2px;width:31px;height:31px;padding:9px 8px;border-radius:50%;background:linear-gradient(135deg,var(--purple),#934dff);box-shadow:0 0 25px rgba(116,44,248,.3)}.chat-launcher-icon i{display:block;width:3px;border-radius:4px;background:#fff;animation:chat-wave 1.1s ease-in-out infinite alternate}.chat-launcher-icon i:nth-child(1){height:6px}.chat-launcher-icon i:nth-child(2){height:12px;animation-delay:-.4s}.chat-launcher-icon i:nth-child(3){height:8px;animation-delay:-.7s}.chat-launcher>span:nth-child(2){display:grid;text-align:left;gap:2px}.chat-launcher b{font-size:8px;letter-spacing:.12em}.chat-launcher small{color:#8f8798;font-size:8px}.chat-launcher em{position:absolute;right:-2px;top:-3px;display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:var(--blue);font-size:8px;font-style:normal}.chat-panel{position:absolute;right:0;bottom:62px;display:flex;flex-direction:column;width:min(390px,calc(100vw - 30px));height:min(620px,calc(100vh - 105px));overflow:hidden;border:1px solid rgba(255,255,255,.15);border-radius:25px;background:linear-gradient(150deg,rgba(25,20,34,.96),rgba(7,6,10,.97));box-shadow:0 35px 100px rgba(0,0,0,.55),inset 0 1px rgba(255,255,255,.1);backdrop-filter:blur(28px) saturate(135%);transform-origin:bottom right;animation:chat-panel-in .35s cubic-bezier(.2,.8,.2,1)}.chat-panel[hidden]{display:none}.chat-panel>header{display:flex;align-items:flex-start;justify-content:space-between;padding:22px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 20% 0,rgba(116,44,248,.16),transparent 60%)}.chat-panel>header span{color:#91899a;font-size:7px;font-weight:800;letter-spacing:.16em}.chat-panel>header span i{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--blue);box-shadow:0 0 10px var(--blue);margin-right:6px}.chat-panel h2{margin:9px 0 0;font-size:22px;letter-spacing:-.04em}.chat-panel>header button{width:29px;height:29px;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.03);font-size:19px;font-weight:300}.chat-transcript{flex:1;display:flex;flex-direction:column;gap:9px;overflow:auto;padding:18px}.chat-intro{padding:13px;border:1px dashed var(--line);border-radius:13px}.chat-intro span{color:#7c5dab;font-size:7px}.chat-intro p{color:#9b93a2;font:11px/1.6 "Roboto",sans-serif;margin:7px 0 0}.chat-message{max-width:83%;padding:10px 12px;border:1px solid var(--line);border-radius:14px 14px 14px 4px;background:rgba(255,255,255,.045)}.chat-message.visitor{align-self:flex-end;border-radius:14px 14px 4px 14px;background:rgba(116,44,248,.2);border-color:rgba(116,44,248,.25)}.chat-message.system{align-self:center;max-width:94%;background:transparent;border-style:dashed;text-align:center}.chat-message span{display:block;color:#827a89;font-size:7px;text-transform:uppercase;letter-spacing:.1em}.chat-message p{font:12px/1.5 "Roboto",sans-serif;margin:5px 0;white-space:pre-wrap}.chat-message time{display:block;color:#625c68;font:7px "Roboto",sans-serif}.chat-start{display:grid;gap:9px;padding:16px 18px;border-top:1px solid var(--line)}.chat-start label{display:grid;gap:5px}.chat-start label>span{color:#8d8594;font-size:7px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.chat-start label i{font-style:normal;color:#655e6b}.chat-start input,.chat-start textarea,.chat-compose textarea{width:100%;padding:10px 11px;border:1px solid var(--line);border-radius:9px;outline:0;background:rgba(0,0,0,.25);color:white;font-size:11px;resize:none}.chat-start input:focus,.chat-start textarea:focus,.chat-compose textarea:focus{border-color:rgba(116,44,248,.7)}.chat-start>button{min-height:39px;border:0;border-radius:10px;background:linear-gradient(120deg,var(--purple),#934dff);font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.chat-compose{display:grid;grid-template-columns:1fr 42px;gap:8px;padding:13px 15px;border-top:1px solid var(--line)}.chat-compose textarea{min-height:45px}.chat-compose button{border:0;border-radius:10px;background:var(--purple);font-size:18px}.chat-status{min-height:16px;margin:0;padding:0 18px 8px;color:#f0aeb8;font:8px/1.4 "Roboto",sans-serif}.chat-status.is-ok{color:#8fd8ee}
.chat-launcher em[hidden],.chat-start[hidden],.chat-compose[hidden]{display:none!important}
@keyframes chat-wave{to{height:3px;opacity:.55}}@keyframes chat-panel-in{from{opacity:0;transform:translateY(15px) scale(.95)}to{opacity:1;transform:none}}

/* Home social proof */
.home-social{padding-top:120px;padding-bottom:120px}.home-social-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.home-social-grid>a{padding:12px;border:1px solid var(--line);border-radius:19px;background:rgba(255,255,255,.025)}.home-social-grid>a>div{position:relative;overflow:hidden;aspect-ratio:1.28;border-radius:12px}.home-social-grid img{width:100%;height:100%;object-fit:cover;filter:saturate(.62);transition:.5s ease}.home-social-grid a:hover img{transform:scale(1.05);filter:saturate(1)}.home-social-grid div span{position:absolute;right:10px;top:10px;padding:7px 9px;border-radius:999px;background:rgba(5,4,8,.65);font-size:7px}.home-social-grid small{display:block;margin:15px 3px 9px;color:#71559a;font-size:7px;letter-spacing:.13em}.home-social-grid h3{margin:0 3px;font-size:clamp(1rem,1.8vw,1.6rem);line-height:.98;letter-spacing:-.04em;text-transform:uppercase}.home-social-grid p{margin:12px 3px 5px;color:#958d9d;font:11px/1.6 "Roboto",sans-serif}

@media(max-width:1200px){.site-header nav{gap:clamp(13px,1.6vw,22px)}.site-header nav a{font-size:9px}}
@media(max-width:900px){.editorial-hero,.social-hero,.faq-hero{grid-template-columns:1fr;min-height:auto;padding-top:165px}.editorial-hero-note,.social-hero-stat{margin:0}.inside-principles{grid-template-columns:1fr}.inside-principles article{min-height:260px;border-radius:0!important}.inside-principles h2{margin-top:70px}.inside-maze-call{grid-template-columns:1fr}.social-card-featured{display:block}.faq-layout{grid-template-columns:1fr}.faq-layout aside{position:relative;top:0}.home-social-grid{grid-template-columns:1fr}.chat-widget{z-index:980}}
@media(max-width:600px){.editorial-hero h1,.social-hero h1,.faq-hero h1{font-size:clamp(3.3rem,17vw,5.5rem)}.inside-cinema{min-height:680px;border-radius:20px}.inside-cinema-copy{left:24px;bottom:28px;width:calc(100% - 48px)}.inside-cinema-copy h2{font-size:3.4rem}.inside-principles{padding-top:80px;padding-bottom:100px}.inside-maze-call{padding-bottom:100px}.social-grid{grid-template-columns:1fr}.social-card-featured{grid-column:auto}.social-card-featured .social-card-media{aspect-ratio:1.3}.social-callout>div{flex-direction:column}.faq-item>button{grid-template-columns:30px 1fr 25px}.faq-item>div{padding-left:45px}.contact-section{gap:60px}.chat-launcher{min-width:54px;width:54px;height:54px;padding:10px}.chat-launcher>span:nth-child(2){display:none}.chat-panel{bottom:64px}.home-social{padding-top:80px}.visit-signal{margin-bottom:90px}}
@media(prefers-reduced-motion:reduce){.chat-launcher-icon i{animation:none}.chat-panel{animation:none}}

/* Scroll-directed hero story */
.hero-scroll-stage {
    position: relative;
    height: auto;
    background: radial-gradient(circle at 72% 14%, rgba(116,44,248,.08), transparent 31%);
}
.has-motion-js .hero-scroll-stage { height: 380svh; }
.hero-scroll-stage .home-hero {
    --story-progress: 0;
    --story-cycle: 0;
    --story-copy-out: 0;
    --story-late: 0;
    --story-outro: 0;
    --story-shift-x: 0px;
    --story-shift-y: 0px;
    --story-scale: 1;
    --story-scene-opacity: 1;
    position: sticky;
    top: 0;
    min-height: 100svh;
    max-height: 100svh;
    overflow: clip;
    margin-inline: auto;
}
.hero-scroll-stage .home-hero::before {
    opacity: calc(.72 + var(--story-late) * .28);
    scale: calc(1 + var(--story-late) * .32);
    filter: blur(calc(18px + var(--story-late) * 20px));
}
.hero-scroll-stage .home-hero .hero-copy {
    opacity: calc(1 - var(--story-copy-out));
    transform:
        rotateY(calc(var(--hero-x) * 1.1deg))
        rotateX(calc(var(--hero-y) * -1deg))
        translate3d(0, calc(var(--story-copy-out) * -50px), 54px)
        scale(calc(1 - var(--story-copy-out) * .045));
    will-change: opacity, transform;
}
.hero-scroll-stage .hero-3d,
.hero-scroll-stage .hero-3d:hover {
    opacity: var(--story-scene-opacity);
    transform:
        perspective(1700px)
        rotateY(calc(var(--hero-x) * 1.5deg))
        rotateX(calc(var(--hero-y) * -1.5deg))
        translate3d(calc(var(--hero-x) * -7px), calc(var(--hero-y) * -6px), 34px)
        translate3d(var(--story-shift-x), var(--story-shift-y), 0)
        scale(var(--story-scale));
    transition: transform .12s linear, opacity .12s linear;
    will-change: transform, opacity;
}
.hero-scroll-stage .hero-depth-field {
    opacity: calc(1 - var(--story-outro) * .8);
    scale: calc(1 + var(--story-late) * .16);
    rotate: calc(var(--story-cycle) * 8deg);
    transition: opacity .1s linear;
}
.home-hero[data-scroll-chapter="open"] .hero-3d-status i { background: var(--purple); box-shadow: 0 0 18px var(--purple); }
.home-hero[data-scroll-chapter="distort"] .hero-title-depth em { color: var(--blue); -webkit-text-stroke-color: var(--blue); text-shadow: 12px 0 rgba(116,44,248,.15), -8px 0 rgba(0,169,236,.15); }
.home-hero[data-scroll-chapter="distort"] .hero-3d canvas { filter: drop-shadow(0 45px 50px rgba(0,0,0,.34)) saturate(1.4) contrast(1.08); }
.hero-scroll-meter {
    position: absolute;
    z-index: 7;
    right: 0;
    bottom: 30px;
    display: grid;
    grid-template-columns: minmax(165px,240px) minmax(100px,220px) 42px;
    align-items: center;
    gap: 17px;
    color: #797180;
    pointer-events: none;
}
.hero-scroll-meter>div { display: flex; align-items: center; gap: 12px; }
.hero-scroll-meter span { color: var(--purple); font: 700 8px/1 "Roboto",sans-serif; }
.hero-scroll-meter b { font-size: 7px; letter-spacing: .16em; }
.hero-scroll-meter>i { position: relative; display: block; height: 1px; overflow: hidden; background: rgba(255,255,255,.12); }
.hero-scroll-meter>i em { display: block; width: 100%; height: 100%; background: linear-gradient(90deg,var(--purple),var(--blue),var(--gold)); transform: scaleX(0); transform-origin: left; box-shadow: 0 0 12px var(--purple); }
.hero-scroll-meter small { color: #9a919f; font: 500 8px/1 "Roboto",sans-serif; text-align: right; }
.scroll-note b { font: inherit; }
.hero-scroll-stage.is-complete .hero-scroll-meter b { color: var(--gold); }

/* Layered entrances across every page */
[data-reveal] {
    opacity: 0;
    filter: blur(10px);
    clip-path: inset(0 0 10% 0);
    transform: translateY(54px) scale(.985) rotateX(2deg);
    transform-origin: 50% 100%;
    transition:
        opacity .85s cubic-bezier(.2,.8,.2,1),
        filter .85s cubic-bezier(.2,.8,.2,1),
        clip-path 1s cubic-bezier(.18,.8,.2,1),
        transform 1s cubic-bezier(.16,.82,.22,1);
    transition-delay: calc(var(--reveal-order,0) * 55ms);
    will-change: opacity, filter, transform;
}
[data-reveal].is-visible {
    opacity: 1;
    filter: blur(0);
    clip-path: inset(0 0 0 0);
    transform: translateY(0) scale(1) rotateX(0);
}
[data-motion-child] {
    opacity: 0;
    translate: 0 28px;
    scale: .985;
    filter: blur(7px);
    transition:
        opacity .72s cubic-bezier(.2,.8,.2,1),
        translate .9s cubic-bezier(.16,.82,.22,1),
        scale .9s cubic-bezier(.16,.82,.22,1),
        filter .8s ease;
}
[data-reveal].is-visible [data-motion-child] {
    opacity: 1;
    translate: 0 0;
    scale: 1;
    filter: blur(0);
    transition-delay: calc(90ms + var(--motion-order,0) * 70ms);
}
.section-heading.is-visible .eyebrow span,
[data-reveal].is-visible>.eyebrow span { animation: motion-line-in .9s .18s cubic-bezier(.2,.8,.2,1) both; transform-origin: left; }
.wide-image[data-reveal],.inside-cinema[data-reveal] { clip-path: inset(8% 0 8% 0 round 28px); transform: translateY(55px) scale(.94); }
.wide-image[data-reveal].is-visible,.inside-cinema[data-reveal].is-visible { clip-path: inset(0 round 28px); transform: none; }
.service-row[data-reveal].is-visible figure img,.social-card[data-reveal].is-visible img,.experience-card[data-reveal].is-visible img { animation: motion-image-settle 1.25s .12s cubic-bezier(.18,.8,.2,1) backwards; }
.value-grid article[data-reveal].is-visible i,.process-grid article[data-reveal].is-visible span { animation: motion-mark-arrive .8s .24s cubic-bezier(.2,.8,.2,1) backwards; }
.site-header .brand,.site-header nav>a { opacity: 0; translate: 0 -14px; }
html:not(.is-loading) .site-header .brand,html:not(.is-loading) .site-header nav>a { animation: motion-header-arrive .75s cubic-bezier(.2,.8,.2,1) forwards; }
html:not(.is-loading) .site-header nav>a:nth-child(1){animation-delay:.08s}html:not(.is-loading) .site-header nav>a:nth-child(2){animation-delay:.13s}html:not(.is-loading) .site-header nav>a:nth-child(3){animation-delay:.18s}html:not(.is-loading) .site-header nav>a:nth-child(4){animation-delay:.23s}html:not(.is-loading) .site-header nav>a:nth-child(5){animation-delay:.28s}html:not(.is-loading) .site-header nav>a:nth-child(6){animation-delay:.33s}
.footer-grid>div.is-visible a { animation: motion-footer-link .55s both; }.footer-grid>div.is-visible a:nth-of-type(2){animation-delay:.08s}.footer-grid>div.is-visible a:nth-of-type(3){animation-delay:.16s}.footer-grid>div.is-visible a:nth-of-type(4){animation-delay:.24s}
@keyframes motion-line-in { from { opacity:0; transform:scaleX(0); } }
@keyframes motion-image-settle { from { opacity:.2; transform:scale(1.12) rotate(.7deg); filter:saturate(0) blur(8px); } to { opacity:1; transform:none; filter:none; } }
@keyframes motion-mark-arrive { from { opacity:0; transform:rotate(-35deg) scale(.6); } }
@keyframes motion-header-arrive { to { opacity:1; translate:0 0; } }
@keyframes motion-footer-link { from { opacity:0; translate:-10px 0; } to { opacity:1; translate:0 0; } }

@media(max-width:900px){
    .has-motion-js .hero-scroll-stage{height:340svh}
    .hero-scroll-stage .home-hero{display:block;width:100%;padding:0;}
    .hero-scroll-stage .home-hero .hero-copy{position:absolute;left:22px;top:130px;width:min(58%,620px)}
    .hero-scroll-stage .hero-3d{position:absolute;right:-8%;top:20%;width:min(68vw,650px);margin:0}
    .hero-scroll-meter{right:22px;bottom:24px;grid-template-columns:minmax(145px,1fr) minmax(80px,150px) 38px;width:min(520px,calc(100% - 44px))}
    .scroll-note{left:22px}
}
@media(max-width:600px){
    .has-motion-js .hero-scroll-stage{height:320svh}
    .hero-scroll-stage .home-hero .hero-copy{top:104px;left:18px;width:calc(100% - 36px)}
    .hero-scroll-stage .home-hero h1{font-size:clamp(2.75rem,14.5vw,5rem);max-width:94%}
    .hero-scroll-stage .hero-lede{width:82%;margin-top:17px;font-size:11px;line-height:1.55}
    .hero-scroll-stage .hero-actions{flex-direction:row;margin-top:18px;gap:8px}.hero-scroll-stage .hero-actions .button{min-height:43px;padding-inline:16px;font-size:8px}.hero-scroll-stage .hero-actions .button b{margin-left:10px}
    .hero-scroll-stage .hero-3d{top:43%;right:-16%;width:116vw;margin:0}
    .hero-scroll-stage .home-hero::before{top:34%;right:-65vw;width:165vw}
    .hero-scroll-meter{left:18px;right:18px;bottom:16px;width:auto;grid-template-columns:1fr 78px 34px;gap:9px}.hero-scroll-meter>div{gap:7px}.hero-scroll-meter b{font-size:6px}
}
@media(prefers-reduced-motion:reduce){
    .has-motion-js .hero-scroll-stage{height:auto}.hero-scroll-stage .home-hero{position:relative;min-height:100svh;max-height:none;overflow:visible}
    [data-reveal],[data-motion-child]{opacity:1!important;filter:none!important;clip-path:none!important;transform:none!important;translate:0 0!important;scale:1!important}
    .site-header .brand,.site-header nav>a{opacity:1;translate:0 0;animation:none!important}
}
