:root {
  --vt-black: #03070d;
  --vt-obsidian: #06101b;
  --vt-midnight: #081a2d;
  --vt-electric: #0e3f64;
  --vt-marble: #f1eee6;
  --vt-marble-deep: #dcd4c6;
  --vt-gold: #d8ad50;
  --vt-gold-light: #f4dc96;
  --vt-gold-dark: #8b6324;
  --vt-white: #f5f7f8;
  --vt-muted: #95a2af;
  --vt-shell: min(1500px, calc(100vw - 96px));
  --vt-serif: "Cormorant Garamond", Georgia, serif;
  --vt-sans: "Manrope", Arial, sans-serif;
}

[hidden] { display: none !important; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.vt-shell { width: var(--vt-shell); margin-inline: auto; }
.modal-open { overflow: hidden; }

/* Navigation: thin orbital command bar, not a traditional panel header. */
.topbar {
  top: 0;
  width: 100%;
  min-height: 92px;
  padding: 0 clamp(24px, 4vw, 74px);
  border: 0;
  border-bottom: 1px solid rgba(216, 173, 80, 0.14);
  background: linear-gradient(180deg, rgba(3, 7, 13, 0.9), rgba(3, 7, 13, 0.52));
  backdrop-filter: blur(24px) saturate(120%);
}
.topbar.scrolled { top: 0; width: 100%; min-height: 76px; background: rgba(3, 7, 13, 0.94); box-shadow: 0 18px 50px rgba(0, 0, 0, 0.22); }
.topbar::after { position: absolute; right: 4vw; bottom: -1px; left: 4vw; height: 1px; content: ""; background: linear-gradient(90deg, transparent, rgba(216, 173, 80, 0.65), transparent); transform: scaleX(0.36); transition: transform 450ms ease; }
.topbar.scrolled::after { transform: scaleX(1); }
.topbar .brand .mark { position: relative; width: 46px; height: 46px; border: 1px solid rgba(216, 173, 80, 0.72); border-radius: 0; background: rgba(216, 173, 80, 0.05); clip-path: polygon(50% 0, 92% 23%, 92% 77%, 50% 100%, 8% 77%, 8% 23%); }
.topbar .brand b { color: #fff; font-size: 24px; }
.topbar .brand small { color: rgba(244, 220, 150, 0.55); }
.topbar nav a, .topbar nav li a, .topbar .login { position: relative; color: rgba(236, 241, 244, 0.65); }
.topbar nav a::after, .topbar nav li a::after { position: absolute; right: 0; bottom: -9px; left: 0; height: 1px; content: ""; background: var(--vt-gold); transform: scaleX(0); transition: transform 200ms ease; }
.topbar nav a:hover::after, .topbar nav li a:hover::after { transform: scaleX(1); }
.topbar .btn.gold { overflow: hidden; border-color: rgba(244, 220, 150, 0.65); background: transparent; color: var(--vt-gold-light); }
.topbar .btn.gold::before { position: absolute; inset: 0; content: ""; background: linear-gradient(110deg, transparent 20%, rgba(244, 220, 150, 0.18), transparent 80%); transform: translateX(-120%); transition: transform 500ms ease; }
.topbar .btn.gold:hover::before { transform: translateX(120%); }

/* Public experience */
.vt-hero { position: relative; min-height: max(860px, 100svh); overflow: hidden; isolation: isolate; background: var(--vt-black); }
.vt-hero-media { position: absolute; z-index: -5; inset: -8%; transform: translate3d(var(--parallax-x, 0), var(--parallax-y, 0), 0) scale(1.08); will-change: transform; }
.vt-hero-media video { width: 100%; height: 100%; object-fit: cover; opacity: 0.34; filter: saturate(0.76) contrast(1.12) hue-rotate(-4deg); }
.vt-hero-veil { position: absolute; z-index: -4; inset: 0; background: radial-gradient(circle at 78% 39%, rgba(34, 89, 128, 0.12), transparent 28%), linear-gradient(90deg, rgba(3, 7, 13, 0.99) 0%, rgba(3, 8, 15, 0.87) 45%, rgba(3, 8, 15, 0.43) 100%), linear-gradient(0deg, #03070d 0%, transparent 42%); }
.vt-grid-horizon { position: absolute; z-index: -2; right: -20%; bottom: -37%; left: -20%; height: 66%; opacity: 0.23; background-image: linear-gradient(rgba(216, 173, 80, 0.22) 1px, transparent 1px), linear-gradient(90deg, rgba(216, 173, 80, 0.2) 1px, transparent 1px); background-size: 72px 52px; transform: perspective(500px) rotateX(64deg); transform-origin: center top; mask-image: linear-gradient(transparent 0%, #000 30%, #000 100%); animation: vt-horizon 8s linear infinite; }
.vt-star-field { position: absolute; z-index: -1; inset: 0; opacity: 0.52; background-image: radial-gradient(circle, var(--vt-gold-light) 0 1px, transparent 1.5px), radial-gradient(circle, #fff 0 1px, transparent 1.4px); background-position: 0 0, 90px 70px; background-size: 230px 230px, 310px 310px; animation: vt-stars 22s linear infinite; mask-image: radial-gradient(circle at 70% 34%, #000, transparent 68%); }
.vt-orbit-system { position: absolute; z-index: -1; top: 10%; right: -5%; width: min(57vw, 850px); aspect-ratio: 1; transform: translate3d(var(--parallax-x, 0), var(--parallax-y, 0), 0); will-change: transform; }
.vt-orbit { position: absolute; border: 1px solid rgba(216, 173, 80, 0.2); border-radius: 50%; animation: vt-orbit 22s linear infinite; }
.vt-orbit i { position: absolute; top: 50%; right: -5px; width: 9px; height: 9px; border-radius: 50%; background: var(--vt-gold-light); box-shadow: 0 0 18px var(--vt-gold); }
.vt-orbit-one { inset: 7%; transform: rotate(18deg); }
.vt-orbit-two { inset: 20%; border-color: rgba(163, 208, 234, 0.18); animation-duration: 16s; animation-direction: reverse; }
.vt-orbit-three { inset: 33%; animation-duration: 11s; }
.vt-sun-core { position: absolute; inset: 40%; border: 1px solid rgba(244, 220, 150, 0.6); border-radius: 50%; background: radial-gradient(circle at 35% 32%, #fff3bf, var(--vt-gold) 26%, #8e5f1f 58%, rgba(71, 39, 8, 0.45) 70%); box-shadow: 0 0 80px rgba(216, 173, 80, 0.3), 0 0 180px rgba(216, 173, 80, 0.15); animation: vt-breathe 4s ease-in-out infinite; }
.vt-monument { position: absolute; z-index: -1; right: 5%; bottom: -3px; display: flex; width: min(43vw, 680px); height: 33%; align-items: flex-end; justify-content: center; opacity: 0.14; transform: translate3d(var(--parallax-x, 0), var(--parallax-y, 0), 0); gap: 7%; }
.vt-monument i { width: 9%; height: 80%; border: 1px solid var(--vt-gold-light); border-block-width: 12px; }
.vt-monument i:nth-child(2), .vt-monument i:nth-child(3) { height: 94%; }
.vt-monument span { position: absolute; right: 5%; bottom: 0; left: 5%; height: 22px; border-block: 1px solid var(--vt-gold-light); }
.vt-hero-layout { position: relative; z-index: 2; display: grid; min-height: max(860px, 100svh); padding: 180px 0 120px; align-items: center; grid-template-columns: minmax(0, 1.15fr) minmax(340px, 0.55fr); gap: clamp(55px, 8vw, 145px); }
.vt-overline { display: flex; margin: 0 0 25px; align-items: center; color: var(--vt-gold-light); font-size: 9px; font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase; gap: 14px; }
.vt-overline > span { width: 42px; height: 1px; background: currentColor; }
.vt-overline-dark { color: var(--vt-gold-dark); }
.vt-hero h1 { max-width: 900px; margin: 0; color: var(--vt-white); font-family: var(--vt-serif); font-size: clamp(76px, 8.5vw, 150px); font-weight: 500; line-height: 0.74; letter-spacing: -0.065em; }
.vt-hero h1 em { display: block; color: var(--vt-gold-light); font-weight: 500; }
.vt-hero-lede { max-width: 720px; margin: 38px 0 0; color: rgba(225, 232, 237, 0.66); font-size: clamp(13px, 1.05vw, 16px); line-height: 1.85; }
.vt-hero-capture { display: grid; max-width: 700px; margin-top: 42px; padding: 7px; border: 1px solid rgba(216, 173, 80, 0.34); background: rgba(7, 19, 32, 0.72); backdrop-filter: blur(15px); grid-template-columns: 1fr auto; }
.vt-hero-capture:focus-within { border-color: var(--vt-gold-light); box-shadow: 0 0 45px rgba(216, 173, 80, 0.12); }
.vt-hero-capture input { min-width: 0; padding: 0 22px; border: 0; outline: 0; background: transparent; color: #fff; font-size: 13px; }
.vt-hero-capture input::placeholder { color: rgba(222, 229, 234, 0.44); }
.vt-hero-capture button { min-height: 58px; padding: 0 24px; border: 0; background: linear-gradient(135deg, var(--vt-gold-light), #bd8932); color: #15100a; font-size: 9px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; cursor: pointer; transition: transform 200ms ease, box-shadow 200ms ease; }
.vt-hero-capture button span { margin-left: 18px; font-size: 15px; }
.vt-hero-capture button:hover { transform: translateY(-2px); box-shadow: 0 14px 35px rgba(216, 173, 80, 0.24); }
.vt-hero-assurances { display: flex; margin-top: 22px; color: rgba(222, 229, 234, 0.52); font-size: 8px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; gap: 24px; }
.vt-hero-assurances span { display: flex; align-items: center; gap: 8px; }
.vt-hero-assurances i { width: 5px; height: 5px; border-radius: 50%; background: var(--vt-gold); box-shadow: 0 0 10px var(--vt-gold); }
.vt-signal-console { position: relative; align-self: end; margin-bottom: 4vh; border: 1px solid rgba(216, 173, 80, 0.24); background: linear-gradient(145deg, rgba(8, 25, 42, 0.82), rgba(3, 10, 18, 0.72)); box-shadow: 0 40px 120px rgba(0, 0, 0, 0.4); backdrop-filter: blur(20px); transform: translate3d(var(--parallax-x, 0), var(--parallax-y, 0), 0); }
.vt-signal-console::before, .vt-signal-console::after { position: absolute; width: 24px; height: 24px; content: ""; border-color: var(--vt-gold); opacity: 0.7; }
.vt-signal-console::before { top: -1px; left: -1px; border-top: 2px solid; border-left: 2px solid; }
.vt-signal-console::after { right: -1px; bottom: -1px; border-right: 2px solid; border-bottom: 2px solid; }
.vt-console-head { display: flex; padding: 16px 19px; justify-content: space-between; border-bottom: 1px solid rgba(216, 173, 80, 0.15); color: rgba(225, 232, 237, 0.55); font-size: 8px; letter-spacing: 0.15em; text-transform: uppercase; }
.vt-console-head span i { display: inline-block; width: 6px; height: 6px; margin-right: 8px; border-radius: 50%; background: #60e59a; box-shadow: 0 0 12px #60e59a; }
.vt-console-head b { color: var(--vt-gold-light); }
.vt-console-visual { position: relative; display: grid; min-height: 310px; overflow: hidden; place-items: center; }
.vt-signal-ring { display: grid; width: 150px; height: 150px; border: 1px solid rgba(216, 173, 80, 0.25); border-radius: 50%; place-items: center; animation: vt-breathe 4s ease-in-out infinite; }
.vt-signal-ring::before, .vt-signal-ring::after { position: absolute; width: 205px; height: 205px; content: ""; border: 1px dashed rgba(216, 173, 80, 0.18); border-radius: 50%; animation: vt-orbit 18s linear infinite; }
.vt-signal-ring::after { width: 255px; height: 255px; border-style: solid; border-color: rgba(146, 196, 225, 0.12); animation-direction: reverse; }
.vt-signal-ring span { color: var(--vt-gold-light); font-family: var(--vt-serif); font-size: 58px; }
.vt-console-visual svg { position: absolute; right: 0; bottom: 0; left: 0; width: 100%; opacity: 0.35; }
.vt-console-visual path { fill: none; stroke: var(--vt-gold); stroke-width: 1; stroke-dasharray: 6 9; animation: vt-dash 8s linear infinite; }
.vt-console-visual path:last-child { stroke: #77acd0; animation-direction: reverse; }
.vt-console-data { display: grid; border-top: 1px solid rgba(216, 173, 80, 0.15); grid-template-columns: repeat(3, 1fr); }
.vt-console-data > div { padding: 16px 14px; border-right: 1px solid rgba(216, 173, 80, 0.12); }
.vt-console-data > div:last-child { border-right: 0; }
.vt-console-data small, .vt-console-data strong { display: block; }
.vt-console-data small { color: rgba(225, 232, 237, 0.4); font-size: 6px; letter-spacing: 0.14em; text-transform: uppercase; }
.vt-console-data strong { margin-top: 5px; color: #c7d0d7; font-size: 8px; font-weight: 600; }
.vt-scroll-mark { position: absolute; z-index: 3; bottom: 30px; left: 50%; display: flex; align-items: center; color: rgba(225, 232, 237, 0.4); font-size: 7px; letter-spacing: 0.18em; text-transform: uppercase; gap: 14px; transform: translateX(-50%); }
.vt-scroll-mark i { display: block; width: 1px; height: 42px; background: linear-gradient(var(--vt-gold), transparent); animation: vt-scroll 2s ease-in-out infinite; }

[data-reveal] { opacity: 0; transform: translateY(34px); transition: opacity 850ms cubic-bezier(0.22, 1, 0.36, 1), transform 850ms cubic-bezier(0.22, 1, 0.36, 1); }
[data-reveal].is-revealed { opacity: 1; transform: translateY(0); }

/* Marble manifesto */
.vt-philosophy { position: relative; overflow: hidden; padding: 155px 0 220px; color: #132132; background: radial-gradient(circle at 12% 4%, rgba(216, 173, 80, 0.17), transparent 27%), linear-gradient(125deg, rgba(255, 255, 255, 0.72), transparent 54%), var(--vt-marble); }
.vt-philosophy::before { position: absolute; inset: 0; content: ""; opacity: 0.18; background: repeating-linear-gradient(112deg, transparent 0 78px, rgba(14, 40, 61, 0.18) 79px, transparent 80px 160px); mask-image: linear-gradient(90deg, #000, transparent 60%); }
.vt-philosophy-grid { position: relative; display: grid; grid-template-columns: 0.25fr 1.15fr 0.6fr; gap: clamp(40px, 6vw, 100px); }
.vt-section-index span { display: block; color: var(--vt-gold-dark); font-family: var(--vt-serif); font-size: 58px; }
.vt-section-index p { color: #6c7782; font-size: 8px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; writing-mode: vertical-rl; }
.vt-philosophy h2 { margin: 0; font-family: var(--vt-serif); font-size: clamp(58px, 6vw, 98px); font-weight: 500; line-height: 0.88; letter-spacing: -0.045em; }
.vt-philosophy h2 em { color: var(--vt-gold-dark); font-weight: 500; }
.vt-philosophy-detail { align-self: end; }
.vt-philosophy-detail p { color: #596777; font-size: 14px; line-height: 1.85; }
.vt-text-action { display: inline-flex; margin-top: 22px; padding: 12px 0; align-items: center; border: 0; border-bottom: 1px solid var(--vt-gold-dark); background: transparent; color: #1a2a3a; font-size: 9px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; cursor: pointer; gap: 40px; }
.vt-marble-ribbon { position: absolute; right: -10%; bottom: 34px; left: -10%; display: flex; padding-block: 15px; overflow: hidden; border-block: 1px solid rgba(14, 40, 61, 0.12); color: rgba(16, 39, 58, 0.17); font-family: var(--vt-serif); font-size: 62px; letter-spacing: 0.12em; white-space: nowrap; gap: 80px; transform: rotate(-2deg); }

/* Platform constellation */
.vt-constellation { position: relative; min-height: 1100px; padding: 160px 0 180px; overflow: hidden; background: radial-gradient(circle at 50% 58%, #0d2940, #04101c 42%, #02070d 78%); }
.vt-constellation::before { position: absolute; inset: 0; content: ""; opacity: 0.27; background-image: radial-gradient(circle, rgba(244, 220, 150, 0.8) 0 1px, transparent 1.5px); background-size: 170px 170px; }
.vt-constellation-glow { position: absolute; top: 34%; left: 50%; width: 560px; height: 560px; border-radius: 50%; background: rgba(31, 97, 137, 0.13); filter: blur(50px); transform: translate3d(calc(-50% + var(--parallax-x, 0)), var(--parallax-y, 0), 0); }
.vt-section-heading { position: relative; z-index: 2; display: grid; grid-template-columns: 1.1fr 0.9fr; }
.vt-section-heading .vt-overline { grid-column: 1 / -1; }
.vt-section-heading h2 { margin: 0; color: #fff; font-family: var(--vt-serif); font-size: clamp(63px, 6.5vw, 105px); font-weight: 500; line-height: 0.84; letter-spacing: -0.05em; }
.vt-section-heading h2 em { color: var(--vt-gold-light); font-weight: 500; }
.vt-section-heading > p:last-child { max-width: 560px; align-self: end; justify-self: end; color: rgba(224, 232, 237, 0.55); font-size: 14px; line-height: 1.8; }
.vt-orbit-map { position: relative; min-height: 680px; margin-top: 80px; }
.vt-map-rings { position: absolute; top: 50%; left: 50%; width: min(62vw, 790px); aspect-ratio: 1; transform: translate(-50%, -50%); }
.vt-map-rings i { position: absolute; border: 1px solid rgba(216, 173, 80, 0.15); border-radius: 50%; animation: vt-orbit 36s linear infinite; }
.vt-map-rings i:first-child { inset: 0; border-style: dashed; }
.vt-map-rings i:nth-child(2) { inset: 18%; border-color: rgba(130, 188, 221, 0.13); animation-duration: 25s; animation-direction: reverse; }
.vt-map-rings i:last-child { inset: 36%; animation-duration: 16s; }
.vt-map-core { position: absolute; top: 50%; left: 50%; display: grid; width: 130px; height: 130px; border: 1px solid rgba(216, 173, 80, 0.55); border-radius: 50%; background: rgba(6, 19, 32, 0.85); box-shadow: 0 0 80px rgba(216, 173, 80, 0.13); place-items: center; transform: translate(-50%, -50%); }
.vt-map-core span { color: var(--vt-gold-light); font-family: var(--vt-serif); font-size: 46px; line-height: 1; }
.vt-map-core small { margin-top: -31px; color: #758696; font-size: 6px; letter-spacing: 0.12em; text-transform: uppercase; }
.vt-arena { position: absolute; display: grid; width: min(35vw, 470px); min-height: 230px; padding: 30px; border: 1px solid rgba(216, 173, 80, 0.18); background: linear-gradient(145deg, rgba(12, 39, 61, 0.72), rgba(3, 12, 21, 0.78)); backdrop-filter: blur(14px); grid-template-columns: auto 1fr auto; gap: 24px; transition: border-color 250ms ease, transform 250ms ease, box-shadow 250ms ease; }
.vt-arena:hover { border-color: rgba(244, 220, 150, 0.55); box-shadow: 0 25px 75px rgba(0, 0, 0, 0.28); transform: translateY(-8px); }
.vt-arena-youtube { top: 2%; left: 4%; }
.vt-arena-instagram { top: 24%; right: 0; }
.vt-arena-spotify { bottom: 0; left: 15%; }
.vt-arena-code { color: var(--vt-gold); font-size: 8px; letter-spacing: 0.15em; writing-mode: vertical-rl; }
.vt-arena small { color: #718495; font-size: 7px; letter-spacing: 0.14em; text-transform: uppercase; }
.vt-arena h3 { margin: 4px 0 12px; color: #fff; font-family: var(--vt-serif); font-size: 46px; font-weight: 500; }
.vt-arena p { margin: 0; color: rgba(222, 230, 236, 0.55); font-size: 11px; line-height: 1.75; }
.vt-arena button { align-self: start; width: 44px; height: 44px; border: 1px solid rgba(216, 173, 80, 0.35); background: transparent; color: var(--vt-gold-light); cursor: pointer; transition: 200ms ease; }
.vt-arena button:hover { background: var(--vt-gold); color: #111; transform: rotate(45deg); }

/* YouTube observatory */
.vt-observatory { position: relative; padding: 165px 0; color: #172536; background: linear-gradient(130deg, rgba(255, 255, 255, 0.7), transparent 55%), var(--vt-marble); }
.vt-observatory::before { position: absolute; top: 0; right: 0; left: 0; height: 12px; content: ""; opacity: 0.42; background: repeating-linear-gradient(90deg, transparent 0 22px, var(--vt-gold-dark) 22px 29px, transparent 29px 38px, var(--vt-gold-dark) 38px 45px, transparent 45px 67px); }
.vt-observatory-head { display: grid; grid-template-columns: 1fr 0.75fr; gap: 90px; }
.vt-observatory-head h2 { margin: 0; font-family: var(--vt-serif); font-size: clamp(60px, 6vw, 98px); font-weight: 500; line-height: 0.88; letter-spacing: -0.045em; }
.vt-observatory-head h2 em { color: var(--vt-gold-dark); font-weight: 500; }
.vt-observatory-head > p { align-self: end; color: #5c6976; font-size: 14px; line-height: 1.85; }
.vt-threshold-stage { display: grid; margin-top: 80px; border-top: 1px solid rgba(13, 39, 59, 0.16); border-left: 1px solid rgba(13, 39, 59, 0.16); grid-template-columns: 1fr 1fr 0.55fr; }
.vt-threshold-stage > div { min-height: 530px; padding: clamp(30px, 4vw, 58px); border-right: 1px solid rgba(13, 39, 59, 0.16); border-bottom: 1px solid rgba(13, 39, 59, 0.16); }
.vt-threshold-axis > span { color: var(--vt-gold-dark); font-size: 8px; font-weight: 800; letter-spacing: 0.16em; text-transform: uppercase; }
.vt-threshold-axis > b { display: block; margin: 42px 0 0; color: #122235; font-family: var(--vt-serif); font-size: 100px; font-weight: 500; line-height: 0.75; }
.vt-threshold-axis > small { color: #6a7784; font-size: 8px; letter-spacing: 0.12em; text-transform: uppercase; }
.vt-threshold-axis > div { display: grid; margin-top: 55px; padding-top: 32px; align-items: center; border-top: 1px solid rgba(13, 39, 59, 0.13); grid-template-columns: 0.65fr 1fr auto 0.65fr 1fr; gap: 13px; }
.vt-threshold-axis strong { color: #17334d; font-family: var(--vt-serif); font-size: 35px; }
.vt-threshold-axis p { margin: 0; color: #687583; font-size: 9px; line-height: 1.45; }
.vt-threshold-axis i { color: var(--vt-gold-dark); font-family: var(--vt-serif); }
.vt-threshold-axis-gold { background: #0a1c2f; }
.vt-threshold-axis-gold > b { color: var(--vt-gold-light); }
.vt-threshold-axis-gold > small, .vt-threshold-axis-gold p { color: rgba(225, 232, 237, 0.55); }
.vt-threshold-axis-gold strong { color: #fff; }
.vt-threshold-axis-gold > div { border-color: rgba(216, 173, 80, 0.2); }
.vt-policy-seal { display: flex; flex-direction: column; justify-content: space-between; background: rgba(255, 255, 255, 0.32); }
.vt-policy-seal span { display: grid; width: 90px; height: 90px; border: 1px solid var(--vt-gold-dark); border-radius: 50%; color: var(--vt-gold-dark); font-family: var(--vt-serif); font-size: 45px; place-items: center; }
.vt-policy-seal p { color: #596674; font-size: 11px; line-height: 1.8; }

/* Account ascent */
.vt-ascent { position: relative; padding: 165px 0 180px; overflow: hidden; background: #03080e; }
.vt-ascent-line { position: absolute; top: 0; bottom: 0; left: 50%; width: 1px; background: linear-gradient(transparent, rgba(216, 173, 80, 0.25), transparent); }
.vt-section-heading-centered { display: block; text-align: center; }
.vt-section-heading-centered .vt-overline { justify-content: center; }
.vt-ascent-steps { position: relative; z-index: 2; display: grid; margin-top: 90px; grid-template-columns: repeat(4, 1fr); }
.vt-ascent-steps article { position: relative; min-height: 430px; padding: 38px; border: 1px solid rgba(216, 173, 80, 0.15); border-right: 0; background: rgba(6, 18, 30, 0.52); }
.vt-ascent-steps article:last-child { border-right: 1px solid rgba(216, 173, 80, 0.15); }
.vt-ascent-steps article:nth-child(even) { margin-top: 45px; }
.vt-ascent-steps article > span { color: #667788; font-size: 8px; letter-spacing: 0.18em; }
.vt-ascent-steps article > i { display: block; margin: 52px 0 70px; color: var(--vt-gold-light); font-family: var(--vt-serif); font-size: 64px; font-style: normal; }
.vt-ascent-steps h3 { margin: 0 0 15px; color: #fff; font-family: var(--vt-serif); font-size: 39px; font-weight: 500; }
.vt-ascent-steps p { color: #7f8e9b; font-size: 11px; line-height: 1.75; }

/* Final gateway */
.vt-final-gateway { position: relative; display: flex; min-height: 900px; padding: 145px 0; align-items: center; overflow: hidden; isolation: isolate; background: radial-gradient(circle at 50% 38%, #173d5d, #071727 38%, #02060c 75%); }
.vt-final-gateway::before { position: absolute; z-index: -2; inset: 0; content: ""; opacity: 0.25; background: url("../media/titan-poster.webp") center / cover; mix-blend-mode: luminosity; }
.vt-gateway-light { position: absolute; z-index: -1; top: -25%; left: 50%; width: 620px; height: 620px; border-radius: 50%; background: radial-gradient(circle, rgba(244, 220, 150, 0.6), rgba(216, 173, 80, 0.12) 35%, transparent 70%); filter: blur(10px); transform: translate3d(calc(-50% + var(--parallax-x, 0)), var(--parallax-y, 0), 0); }
.vt-gateway-columns { position: absolute; z-index: -1; right: 4%; bottom: -1px; left: 4%; display: flex; height: 60%; align-items: end; justify-content: space-around; opacity: 0.15; }
.vt-gateway-columns i { width: 7%; height: 75%; border: 1px solid var(--vt-gold-light); border-block-width: 20px; }
.vt-gateway-columns i:nth-child(2), .vt-gateway-columns i:nth-child(4) { height: 90%; }
.vt-gateway-columns i:nth-child(3) { height: 100%; }
.vt-gateway-content { max-width: 950px; text-align: center; }
.vt-gateway-content .vt-overline { justify-content: center; }
.vt-gateway-mark { display: grid; width: 85px; height: 85px; margin: 0 auto 38px; border: 1px solid var(--vt-gold); border-radius: 50%; color: var(--vt-gold-light); font-family: var(--vt-serif); font-size: 45px; place-items: center; box-shadow: 0 0 60px rgba(216, 173, 80, 0.15); }
.vt-gateway-content h2 { margin: 0; color: #fff; font-family: var(--vt-serif); font-size: clamp(65px, 7vw, 115px); font-weight: 500; line-height: 0.8; letter-spacing: -0.05em; }
.vt-gateway-content h2 em { color: var(--vt-gold-light); font-weight: 500; }
.vt-gateway-content > p { max-width: 660px; margin: 32px auto; color: rgba(225, 232, 237, 0.58); }
.vt-gateway-button { display: inline-flex; min-width: min(100%, 510px); min-height: 72px; margin-top: 12px; padding: 0 11px 0 28px; align-items: center; justify-content: space-between; border: 1px solid rgba(244, 220, 150, 0.6); background: rgba(216, 173, 80, 0.08); color: var(--vt-gold-light); cursor: pointer; backdrop-filter: blur(12px); }
.vt-gateway-button span { font-size: 9px; font-weight: 800; letter-spacing: 0.13em; text-transform: uppercase; }
.vt-gateway-button b { display: grid; width: 50px; height: 50px; background: var(--vt-gold); color: #111; font-size: 17px; place-items: center; transition: transform 220ms ease; }
.vt-gateway-button:hover b { transform: rotate(45deg); }
.vt-gateway-content > small { display: block; margin-top: 25px; color: #71808d; font-size: 9px; }
.vt-gateway-content > small a { color: var(--vt-gold-light); }

/* AJAX signup gateway */
.vt-signup-modal { position: fixed; z-index: 10000; inset: 0; display: grid; padding: 25px; place-items: center; }
.vt-modal-backdrop { position: absolute; inset: 0; background: rgba(1, 4, 8, 0.8); opacity: 0; backdrop-filter: blur(10px); transition: opacity 350ms ease; }
.vt-modal-panel { position: relative; z-index: 2; display: grid; width: min(1080px, calc(100vw - 40px)); max-height: calc(100svh - 40px); overflow: auto; border: 1px solid rgba(216, 173, 80, 0.38); background: var(--vt-marble); box-shadow: 0 45px 140px rgba(0, 0, 0, 0.58); grid-template-columns: 0.75fr 1.25fr; opacity: 0; transform: translateY(30px) scale(0.975); transition: opacity 350ms ease, transform 350ms cubic-bezier(0.22, 1, 0.36, 1); }
.vt-signup-modal.is-open .vt-modal-backdrop { opacity: 1; }
.vt-signup-modal.is-open .vt-modal-panel { opacity: 1; transform: translateY(0) scale(1); }
.vt-modal-close { position: absolute; z-index: 4; top: 16px; right: 16px; display: grid; width: 42px; height: 42px; border: 1px solid rgba(13, 39, 59, 0.18); background: rgba(255, 255, 255, 0.4); color: #172638; font-size: 24px; cursor: pointer; place-items: center; }
.vt-modal-art { position: relative; display: flex; min-height: 640px; padding: 35px; align-items: center; justify-content: center; overflow: hidden; background: radial-gradient(circle at 50% 45%, #174568, #081a2d 42%, #03080e 78%); }
.vt-modal-art::before { position: absolute; inset: 0; content: ""; opacity: 0.25; background-image: linear-gradient(rgba(216, 173, 80, 0.12) 1px, transparent 1px), linear-gradient(90deg, rgba(216, 173, 80, 0.12) 1px, transparent 1px); background-size: 42px 42px; mask-image: radial-gradient(#000, transparent 70%); }
.vt-modal-art > p { position: absolute; bottom: 24px; left: 28px; color: rgba(244, 220, 150, 0.45); font-size: 7px; letter-spacing: 0.2em; }
.vt-modal-orbits { position: relative; display: grid; width: 230px; height: 230px; border: 1px solid rgba(216, 173, 80, 0.32); border-radius: 50%; place-items: center; }
.vt-modal-orbits i { position: absolute; border: 1px solid rgba(216, 173, 80, 0.2); border-radius: 50%; animation: vt-orbit 17s linear infinite; }
.vt-modal-orbits i:first-child { inset: -40px; border-style: dashed; }
.vt-modal-orbits i:nth-child(2) { inset: 30px; border-color: rgba(137, 197, 228, 0.25); animation-direction: reverse; }
.vt-modal-orbits i:nth-child(3) { inset: 65px; animation-duration: 9s; }
.vt-modal-orbits span { color: var(--vt-gold-light); font-family: var(--vt-serif); font-size: 74px; }
.vt-modal-form-wrap { padding: clamp(45px, 6vw, 80px); color: #172638; }
.vt-modal-form-wrap h2 { margin: 0; font-family: var(--vt-serif); font-size: clamp(52px, 5vw, 78px); font-weight: 500; line-height: 0.88; letter-spacing: -0.04em; }
.vt-modal-form-wrap > p:not(.vt-overline) { max-width: 570px; margin: 20px 0 35px; color: #64717e; font-size: 12px; }
.vt-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.vt-modal-form-wrap label { position: relative; display: block; margin-bottom: 16px; color: #4b5967; font-size: 8px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.vt-modal-form-wrap input[type="text"], .vt-modal-form-wrap input[type="email"], .vt-modal-form-wrap input[type="password"] { width: 100%; height: 55px; margin-top: 8px; padding: 0 15px; border: 1px solid rgba(13, 39, 59, 0.18); outline: 0; background: rgba(255, 255, 255, 0.55); color: #142333; font-size: 13px; text-transform: none; transition: border 180ms ease, box-shadow 180ms ease; }
.vt-modal-form-wrap input:focus { border-color: var(--vt-gold-dark); box-shadow: 0 0 0 3px rgba(139, 99, 36, 0.08); }
.vt-modal-form-wrap label small { position: absolute; right: 9px; bottom: 8px; color: #8a949d; font-size: 7px; font-weight: 500; letter-spacing: 0; text-transform: none; }
.vt-honeypot { position: absolute !important; left: -9999px !important; }
.vt-consent { display: flex !important; margin: 5px 0 18px !important; align-items: flex-start; color: #63707d !important; font-size: 9px !important; font-weight: 500 !important; letter-spacing: 0 !important; text-transform: none !important; gap: 10px; }
.vt-consent input { margin-top: 3px; accent-color: var(--vt-gold-dark); }
.vt-consent a { color: var(--vt-gold-dark); text-decoration: underline; }
.vt-form-message { min-height: 22px; margin-bottom: 8px; font-size: 10px; }
.vt-form-message.is-error { color: #9c2e2e; }
.vt-form-message.is-working { color: #6c5426; }
.vt-form-message.is-success { color: #28764d; }
.vt-submit-account { display: flex; width: 100%; min-height: 62px; padding: 0 10px 0 20px; align-items: center; justify-content: space-between; border: 0; background: #071a2d; color: #fff; cursor: pointer; }
.vt-submit-account span { font-size: 9px; font-weight: 800; letter-spacing: 0.13em; text-transform: uppercase; }
.vt-submit-account b { display: grid; width: 44px; height: 44px; background: var(--vt-gold); color: #111; place-items: center; }
.vt-signup-modal form.is-loading .vt-submit-account { opacity: 0.65; pointer-events: none; }
.vt-signup-modal form.is-loading .vt-submit-account b { border: 2px solid rgba(0, 0, 0, 0.25); border-top-color: #111; border-radius: 50%; background: transparent; color: transparent; animation: vt-orbit 0.8s linear infinite; }
.vt-login-prompt { margin: 17px 0 0 !important; color: #7c8791 !important; font-size: 9px !important; text-align: center; }
.vt-login-prompt a { color: var(--vt-gold-dark); }

/* Signed-in homepage command dashboard */
body.home.logged-in .topbar, body.home.logged-in .site-footer, body.views-titan-authenticated .topbar, body.views-titan-authenticated .site-footer { display: none; }
.vt-auth-transition #views-titan-app { opacity: 0; transform: scale(0.99); }
#views-titan-app { transition: opacity 420ms ease, transform 420ms ease; }
.vt-dashboard { position: relative; display: grid; min-height: 100svh; overflow: hidden; color: #eef3f6; background: radial-gradient(circle at 76% 10%, #133b5b, transparent 32%), #03080e; grid-template-columns: 108px 1fr; opacity: 0; transition: opacity 600ms ease; }
.vt-dashboard.is-ready, body.home.logged-in .vt-dashboard { opacity: 1; }
.vt-dash-ambient { position: absolute; inset: 0; pointer-events: none; }
.vt-dash-ambient i { position: absolute; border: 1px solid rgba(216, 173, 80, 0.08); border-radius: 50%; }
.vt-dash-ambient i:first-child { top: -25vw; right: -12vw; width: 70vw; height: 70vw; }
.vt-dash-ambient i:nth-child(2) { top: -12vw; right: 2vw; width: 42vw; height: 42vw; }
.vt-dash-ambient i:last-child { right: 17vw; bottom: -17vw; width: 35vw; height: 35vw; border-style: dashed; animation: vt-orbit 40s linear infinite; }
.vt-dash-rail { position: relative; z-index: 3; display: flex; padding: 28px 16px; align-items: center; flex-direction: column; border-right: 1px solid rgba(216, 173, 80, 0.14); background: rgba(3, 9, 16, 0.72); backdrop-filter: blur(16px); }
.vt-dash-logo { display: grid; text-align: center; }
.vt-dash-logo > span { display: grid; width: 54px; height: 54px; border: 1px solid var(--vt-gold); border-radius: 50%; color: var(--vt-gold-light); font-family: var(--vt-serif); font-size: 29px; place-items: center; }
.vt-dash-logo small { margin-top: 8px; color: #687886; font-size: 6px; letter-spacing: 0.16em; text-transform: uppercase; }
.vt-dash-rail nav { display: grid; width: 100%; margin: auto 0; gap: 10px; }
.vt-dash-rail nav a, .vt-dash-logout { display: grid; min-height: 66px; padding: 8px; place-items: center; color: #687987; text-align: center; transition: 180ms ease; }
.vt-dash-rail nav a i, .vt-dash-logout i { font-size: 18px; font-style: normal; }
.vt-dash-rail nav a span, .vt-dash-logout span { font-size: 6px; letter-spacing: 0.1em; text-transform: uppercase; }
.vt-dash-rail nav a:hover, .vt-dash-rail nav a.active, .vt-dash-logout:hover { color: var(--vt-gold-light); background: rgba(216, 173, 80, 0.07); }
.vt-dash-main { position: relative; z-index: 2; width: min(1520px, calc(100vw - 108px)); margin-inline: auto; padding: 0 clamp(28px, 4vw, 70px) 65px; }
.vt-dash-header { display: flex; min-height: 105px; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(216, 173, 80, 0.13); }
.vt-dash-header > div:first-child > p { margin: 0; color: #667785; font-size: 7px; letter-spacing: 0.16em; text-transform: uppercase; }
.vt-dash-header > div:first-child > span { color: #81909c; font-size: 7px; letter-spacing: 0.1em; text-transform: uppercase; }
.vt-dash-header > div:first-child i { display: inline-block; width: 6px; height: 6px; margin-right: 7px; border-radius: 50%; background: #5ee095; box-shadow: 0 0 10px #5ee095; }
.vt-dash-user { display: flex; align-items: center; gap: 12px; }
.vt-dash-user > span { display: grid; width: 43px; height: 43px; border: 1px solid rgba(216, 173, 80, 0.45); border-radius: 50%; color: var(--vt-gold-light); place-items: center; }
.vt-dash-user strong, .vt-dash-user small { display: block; }
.vt-dash-user strong { color: #e7edf1; font-size: 10px; }
.vt-dash-user small { color: #657683; font-size: 7px; }
.vt-dash-welcome { position: relative; display: grid; min-height: 470px; padding: clamp(55px, 6vw, 95px); align-items: center; overflow: hidden; border-bottom: 1px solid rgba(216, 173, 80, 0.16); grid-template-columns: 1.15fr 0.55fr; }
.vt-dash-welcome h1 { margin: 0; color: #fff; font-family: var(--vt-serif); font-size: clamp(68px, 7vw, 116px); font-weight: 500; line-height: 0.8; letter-spacing: -0.055em; }
.vt-dash-welcome > div:first-child > p:not(.vt-overline) { max-width: 640px; color: #82919d; font-size: 12px; }
.vt-dash-primary { display: inline-flex; min-width: 310px; min-height: 58px; margin-top: 23px; padding: 0 9px 0 20px; align-items: center; justify-content: space-between; border: 1px solid rgba(216, 173, 80, 0.5); color: var(--vt-gold-light); }
.vt-dash-primary span { font-size: 8px; font-weight: 800; letter-spacing: 0.13em; text-transform: uppercase; }
.vt-dash-primary b { display: grid; width: 40px; height: 40px; background: var(--vt-gold); color: #111; place-items: center; }
.vt-dash-sigil { position: relative; display: grid; width: min(25vw, 310px); aspect-ratio: 1; justify-self: end; border: 1px solid rgba(216, 173, 80, 0.18); border-radius: 50%; place-items: center; }
.vt-dash-sigil i { position: absolute; border: 1px solid rgba(216, 173, 80, 0.13); border-radius: 50%; animation: vt-orbit 24s linear infinite; }
.vt-dash-sigil i:first-child { inset: -34px; border-style: dashed; }
.vt-dash-sigil i:nth-child(2) { inset: 30px; border-color: rgba(127, 187, 219, 0.17); animation-direction: reverse; }
.vt-dash-sigil i:nth-child(3) { inset: 67px; animation-duration: 11s; }
.vt-dash-sigil span { color: var(--vt-gold-light); font-family: var(--vt-serif); font-size: 90px; }
.vt-dash-status-grid { display: grid; border-bottom: 1px solid rgba(216, 173, 80, 0.14); grid-template-columns: repeat(3, 1fr); }
.vt-dash-status-grid article { min-height: 230px; padding: 35px; border-right: 1px solid rgba(216, 173, 80, 0.13); }
.vt-dash-status-grid article:last-child { border-right: 0; }
.vt-dash-status-grid article > span { float: right; color: #405462; font-family: var(--vt-serif); font-size: 25px; }
.vt-dash-status-grid small { color: var(--vt-gold); font-size: 7px; letter-spacing: 0.14em; text-transform: uppercase; }
.vt-dash-status-grid h2 { margin: 30px 0 12px; color: #fff; font-family: var(--vt-serif); font-size: 44px; font-weight: 500; }
.vt-dash-status-grid p { max-width: 310px; color: #6f808d; font-size: 10px; }
.vt-dash-lower { display: grid; margin-top: 40px; grid-template-columns: 1.35fr 0.65fr; gap: 22px; }
.vt-dash-path, .vt-dash-support { border: 1px solid rgba(216, 173, 80, 0.14); background: rgba(6, 18, 30, 0.55); }
.vt-dash-path > header { display: flex; padding: 30px 35px; align-items: flex-start; justify-content: space-between; border-bottom: 1px solid rgba(216, 173, 80, 0.13); }
.vt-dash-path header p { margin: 0; color: var(--vt-gold); font-size: 7px; letter-spacing: 0.13em; text-transform: uppercase; }
.vt-dash-path header h2 { margin: 6px 0 0; color: #fff; font-family: var(--vt-serif); font-size: 34px; font-weight: 500; }
.vt-dash-path header > span { padding: 7px 11px; border: 1px solid rgba(216, 173, 80, 0.25); color: #82909b; font-size: 6px; letter-spacing: 0.12em; text-transform: uppercase; }
.vt-dash-path ol { margin: 0; padding: 0 35px; list-style: none; }
.vt-dash-path li { display: grid; min-height: 90px; align-items: center; border-bottom: 1px solid rgba(216, 173, 80, 0.1); grid-template-columns: 45px 1fr auto; gap: 15px; }
.vt-dash-path li > b { color: #50616e; font-family: var(--vt-serif); font-size: 24px; }
.vt-dash-path li strong, .vt-dash-path li small { display: block; }
.vt-dash-path li strong { color: #ccd5dc; font-size: 10px; }
.vt-dash-path li small { color: #647582; font-size: 8px; }
.vt-dash-path li > i, .vt-dash-path li > a { color: var(--vt-gold-light); font-style: normal; }
.vt-dash-path li.complete > i { display: grid; width: 25px; height: 25px; border: 1px solid rgba(92, 222, 146, 0.35); border-radius: 50%; color: #5cde92; font-size: 10px; place-items: center; }
.vt-dash-support { display: flex; padding: 38px; flex-direction: column; background: linear-gradient(150deg, rgba(216, 173, 80, 0.11), rgba(5, 17, 29, 0.55)); }
.vt-dash-support > span { display: grid; width: 65px; height: 65px; border: 1px solid rgba(216, 173, 80, 0.5); border-radius: 50%; color: var(--vt-gold-light); font-family: var(--vt-serif); font-size: 34px; place-items: center; }
.vt-dash-support > p { margin: auto 0 5px; color: var(--vt-gold); font-size: 7px; letter-spacing: 0.14em; text-transform: uppercase; }
.vt-dash-support h2 { margin: 0 0 24px; color: #fff; font-family: var(--vt-serif); font-size: 37px; font-weight: 500; line-height: 0.95; }
.vt-dash-support a { display: flex; padding: 14px 0; justify-content: space-between; border-top: 1px solid rgba(216, 173, 80, 0.13); color: #8796a1; font-size: 8px; }
.vt-dash-support a b { color: var(--vt-gold-light); }

.vt-cursor-aura { position: fixed; z-index: 9998; top: 0; left: 0; width: 22px; height: 22px; border: 1px solid rgba(244, 220, 150, 0.7); border-radius: 50%; pointer-events: none; opacity: 0; transform: translate3d(calc(var(--cursor-x, -100px) - 11px), calc(var(--cursor-y, -100px) - 11px), 0); transition: width 180ms ease, height 180ms ease, opacity 180ms ease, margin 180ms ease, background 180ms ease; mix-blend-mode: difference; }
.vt-cursor-aura.is-visible { opacity: 1; }
.vt-cursor-aura.is-active { width: 46px; height: 46px; margin: -12px; background: rgba(244, 220, 150, 0.12); }

@keyframes vt-orbit { to { transform: rotate(360deg); } }
@keyframes vt-breathe { 50% { transform: scale(1.045); filter: brightness(1.12); } }
@keyframes vt-horizon { to { background-position: 0 52px, 72px 0; } }
@keyframes vt-stars { to { background-position: 230px 230px, -220px 380px; } }
@keyframes vt-dash { to { stroke-dashoffset: -120; } }
@keyframes vt-scroll { 50% { transform: scaleY(0.55); transform-origin: top; opacity: 0.5; } }

@media (max-width: 1200px) {
  :root { --vt-shell: min(100% - 54px, 1120px); }
  .vt-hero-layout { grid-template-columns: 1fr 0.5fr; gap: 45px; }
  .vt-signal-console { max-width: 400px; }
  .vt-philosophy-grid { grid-template-columns: 0.2fr 1fr; }
  .vt-philosophy-detail { grid-column: 2; }
  .vt-threshold-stage { grid-template-columns: 1fr 1fr; }
  .vt-policy-seal { min-height: 260px !important; grid-column: 1 / -1; }
  .vt-ascent-steps { grid-template-columns: 1fr 1fr; }
  .vt-ascent-steps article:nth-child(even) { margin-top: 0; }
  .vt-dashboard { grid-template-columns: 90px 1fr; }
  .vt-dash-main { width: calc(100vw - 90px); }
}

@media (max-width: 1000px) {
  .topbar { grid-template-columns: 1fr auto; }
  .topbar .actions { display: flex; margin-left: auto; }
  .topbar .menu { display: grid; width: 45px; height: 45px; margin-left: 12px; place-content: center; gap: 6px; }
  .topbar .menu i { display: block; width: 20px; height: 1px; background: var(--vt-gold-light); }
  .topbar nav { display: flex; }
  .topbar nav:not(.open) { display: none; }
  .topbar nav.open { top: 76px; padding: 35px; }
  .vt-hero-layout { padding-top: 150px; grid-template-columns: 1fr; }
  .vt-hero-copy { max-width: 830px; }
  .vt-signal-console { display: none; }
  .vt-orbit-system { right: -20%; width: 80vw; opacity: 0.72; }
  .vt-section-heading, .vt-observatory-head { grid-template-columns: 1fr; gap: 35px; }
  .vt-section-heading > p:last-child { justify-self: start; }
  .vt-orbit-map { min-height: 830px; }
  .vt-arena { width: min(56vw, 520px); }
  .vt-arena-youtube { left: 0; }
  .vt-arena-instagram { top: 34%; }
  .vt-arena-spotify { left: 6%; }
  .vt-modal-panel { grid-template-columns: 0.52fr 1.48fr; }
  .vt-modal-art { min-height: 620px; }
  .vt-dash-welcome { grid-template-columns: 1fr; }
  .vt-dash-sigil { position: absolute; right: 5%; opacity: 0.5; }
  .vt-dash-lower { grid-template-columns: 1fr; }
  .vt-dash-support { min-height: 330px; }
}

@media (max-width: 760px) {
  :root { --vt-shell: calc(100% - 32px); }
  .topbar { min-height: 72px; padding-inline: 14px; }
  .topbar .brand .mark { width: 41px; height: 41px; }
  .topbar .brand b { font-size: 20px; }
  .topbar .brand small, .topbar .actions .login { display: none; }
  .topbar .btn.small { min-height: 40px; padding-inline: 12px; }
  .topbar .btn.small span { display: none; }
  .vt-hero { min-height: 820px; }
  .vt-hero-layout { min-height: 820px; padding: 128px 0 85px; }
  .vt-hero h1 { font-size: clamp(64px, 18vw, 88px); }
  .vt-hero-lede { margin-top: 28px; font-size: 12px; }
  .vt-hero-capture { grid-template-columns: 1fr; }
  .vt-hero-capture input { height: 54px; }
  .vt-hero-assurances { align-items: flex-start; flex-direction: column; gap: 8px; }
  .vt-orbit-system { top: 27%; right: -48%; width: 130vw; opacity: 0.44; }
  .vt-monument { right: -15%; width: 95vw; }
  .vt-scroll-mark { display: none; }
  .vt-philosophy { padding: 95px 0 170px; }
  .vt-philosophy-grid { grid-template-columns: 1fr; gap: 30px; }
  .vt-section-index { display: none; }
  .vt-philosophy-detail { grid-column: auto; }
  .vt-philosophy h2, .vt-section-heading h2, .vt-observatory-head h2 { font-size: clamp(52px, 15vw, 72px); }
  .vt-marble-ribbon { font-size: 40px; }
  .vt-constellation { min-height: auto; padding: 100px 0; }
  .vt-orbit-map { display: grid; min-height: 0; margin-top: 55px; grid-template-columns: 1fr; gap: 14px; }
  .vt-map-rings, .vt-map-core { display: none; }
  .vt-arena { position: relative; top: auto; right: auto; bottom: auto; left: auto; width: 100%; min-height: 215px; }
  .vt-observatory { padding: 100px 0; }
  .vt-threshold-stage { margin-top: 55px; grid-template-columns: 1fr; }
  .vt-threshold-stage > div { min-height: 440px; }
  .vt-threshold-axis > div { grid-template-columns: 1fr 1.4fr; }
  .vt-threshold-axis > div i { display: none; }
  .vt-policy-seal { grid-column: auto; }
  .vt-ascent { padding: 100px 0; }
  .vt-ascent-steps { margin-top: 55px; grid-template-columns: 1fr; }
  .vt-ascent-steps article { min-height: 310px; border-right: 1px solid rgba(216, 173, 80, 0.15); }
  .vt-ascent-steps article > i { margin: 35px 0; }
  .vt-final-gateway { min-height: 740px; padding: 100px 0; }
  .vt-gateway-content h2 { font-size: clamp(59px, 17vw, 80px); }
  .vt-gateway-button { min-width: 100%; }
  .vt-gateway-columns { display: none; }
  .vt-signup-modal { padding: 10px; }
  .vt-modal-panel { width: 100%; max-height: calc(100svh - 20px); grid-template-columns: 1fr; }
  .vt-modal-art { min-height: 190px; }
  .vt-modal-orbits { width: 110px; height: 110px; }
  .vt-modal-orbits i:first-child { inset: -20px; }
  .vt-modal-orbits span { font-size: 48px; }
  .vt-modal-form-wrap { padding: 38px 22px; }
  .vt-modal-form-wrap h2 { font-size: 52px; }
  .vt-form-row { grid-template-columns: 1fr; gap: 0; }
  .vt-dashboard { display: block; padding-bottom: 76px; }
  .vt-dash-rail { position: fixed; z-index: 50; right: 0; bottom: 0; left: 0; display: grid; height: 76px; padding: 8px 12px; border-top: 1px solid rgba(216, 173, 80, 0.2); border-right: 0; grid-template-columns: 0.55fr 3fr 0.55fr; }
  .vt-dash-logo > small, .vt-dash-logout span { display: none; }
  .vt-dash-logo > span { width: 45px; height: 45px; font-size: 24px; }
  .vt-dash-rail nav { display: grid; margin: 0; grid-template-columns: repeat(4, 1fr); }
  .vt-dash-rail nav a, .vt-dash-logout { min-height: 58px; }
  .vt-dash-main { width: 100%; padding: 0 16px 36px; }
  .vt-dash-header { min-height: 86px; }
  .vt-dash-header > div:first-child { display: none; }
  .vt-dash-header { justify-content: flex-end; }
  .vt-dash-welcome { min-height: 520px; padding: 55px 20px; }
  .vt-dash-welcome h1 { font-size: 67px; }
  .vt-dash-sigil { right: -14%; width: 260px; opacity: 0.18; }
  .vt-dash-primary { min-width: 100%; }
  .vt-dash-status-grid { grid-template-columns: 1fr; }
  .vt-dash-status-grid article { min-height: 175px; border-right: 0; border-bottom: 1px solid rgba(216, 173, 80, 0.13); }
  .vt-dash-path > header { padding: 25px 20px; }
  .vt-dash-path header > span { display: none; }
  .vt-dash-path ol { padding-inline: 20px; }
  .vt-dash-support { padding: 30px 22px; }
}

@media (prefers-reduced-motion: reduce) {
  .vt-hero-media video { display: none; }
  .vt-hero-media { background: url("../media/titan-poster.webp") center / cover; }
  [data-reveal] { opacity: 1; transform: none; }
  [data-parallax-layer] { transform: none !important; }
  .vt-orbit, .vt-map-rings i, .vt-signal-ring::before, .vt-signal-ring::after, .vt-modal-orbits i, .vt-dash-sigil i, .vt-dash-ambient i, .vt-grid-horizon, .vt-star-field { animation: none !important; }
  .vt-cursor-aura { display: none; }
}
