:root {
  --bg: #080b0c;
  --surface: #111618;
  --surface-2: #151b1d;
  --text: #f5f7f2;
  --muted: #9aa3a0;
  --line: rgba(245, 247, 242, 0.12);
  --line-strong: rgba(245, 247, 242, 0.22);
  --lime: #a8ff3e;
  --cyan: #52d9e8;
  --amber: #ffb455;
  --violet: #9c7cff;
  --danger: #ff6b7a;
  --content: 1240px;
  --display: "Space Grotesk", sans-serif;
  --body: "Manrope", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; color: var(--text); background: var(--bg); font-family: var(--body); }
a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
h1, h2, h3, h4, p { margin-top: 0; }
em { color: var(--lime); font-style: normal; }
::selection { color: #07100a; background: var(--lime); }

.skip-link { position: fixed; top: -80px; left: 20px; z-index: 100; padding: 12px 16px; color: #08100a; background: var(--lime); font-weight: 800; }
.skip-link:focus { top: 16px; }
.section-shell { width: min(calc(100% - 48px), var(--content)); margin-inline: auto; }
.section { padding-block: 120px; }
.section[id] { scroll-margin-top: 96px; }
.section-index, .section-kicker { display: block; margin-bottom: 22px; color: var(--lime); font-size: .73rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.section-heading { max-width: 850px; margin-bottom: 54px; }
.section-heading h2, .software-layout h2, .final-section h2 { margin-bottom: 22px; font: 600 clamp(2.3rem, 5vw, 4.8rem)/.98 var(--display); letter-spacing: -.035em; }
.section-heading > p, .split-heading > p, .software-layout > div > p { max-width: 60ch; color: var(--muted); font-size: 1.05rem; line-height: 1.75; }
.split-heading { display: grid; grid-template-columns: 1.35fr .65fr; gap: 60px; max-width: none; align-items: end; }
.split-heading h2 { margin-bottom: 0; }
.split-heading > p { margin-bottom: 3px; }

.shift-header { position: fixed; inset: 0 0 auto; z-index: 50; border-bottom: 1px solid transparent; transition: background .2s, border-color .2s; }
.shift-header.is-scrolled { border-color: var(--line); background: rgba(8, 11, 12, .9); backdrop-filter: blur(18px); }
.nav-shell { width: min(calc(100% - 48px), var(--content)); min-height: 78px; margin-inline: auto; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.shift-brand { font: 700 1.35rem/1 var(--display); letter-spacing: .08em; }
.shift-brand i { color: var(--lime); font-style: normal; }
.shift-nav { display: flex; align-items: center; gap: 30px; color: var(--muted); font-size: .82rem; font-weight: 700; }
.shift-nav a { min-height: 44px; display: inline-flex; align-items: center; transition: color .2s; }
.shift-nav a:hover, .shift-nav a:focus-visible { color: var(--text); }
.portfolio-link { padding: 0 16px; border: 1px solid var(--line); border-radius: 4px; color: var(--text); }
.nav-toggle { display: none; width: 44px; height: 44px; padding: 12px; border: 1px solid var(--line); background: transparent; }
.nav-toggle span { display: block; width: 100%; height: 1px; margin: 6px 0; background: currentColor; }

.shift-hero { min-height: 100vh; padding-top: 150px; padding-bottom: 90px; display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(430px, .94fr); gap: clamp(42px, 7vw, 100px); align-items: center; }
.shift-hero::before, .app-section::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .3; background-image: linear-gradient(rgba(245,247,242,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(245,247,242,.04) 1px, transparent 1px); background-size: 64px 64px; mask-image: linear-gradient(to bottom, black, transparent 90%); }
.shift-hero::before { height: 100vh; }
.status-line { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-bottom: 26px; }
.status-line .section-kicker { margin: 0; }
.status-pill { display: inline-flex; align-items: center; gap: 8px; padding: 7px 10px; border: 1px solid var(--line); border-radius: 999px; color: #c7cfcc; font-size: .72rem; }
.status-pill i { width: 7px; height: 7px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 12px rgba(168,255,62,.65); }
.shift-hero h1 { max-width: 10ch; margin-bottom: 28px; font: 600 clamp(3.4rem, 6.5vw, 7.2rem)/.89 var(--display); letter-spacing: -.05em; }
.shift-hero .hero-copy > p:not(.hero-principle) { max-width: 58ch; margin-bottom: 34px; color: var(--muted); font-size: clamp(1.05rem, 1.7vw, 1.3rem); line-height: 1.65; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.button { min-height: 52px; padding: 0 20px; display: inline-flex; align-items: center; justify-content: center; gap: 28px; border: 1px solid transparent; border-radius: 4px; font-size: .86rem; font-weight: 800; transition: transform .2s, border-color .2s, background .2s; }
.button:hover, .button:focus-visible { transform: translateY(-2px); }
.button-primary { color: #07100a; background: var(--lime); }
.button-quiet { border-color: var(--line-strong); background: rgba(255,255,255,.025); }
.hero-principle { display: flex; align-items: center; gap: 12px; margin-top: 30px; color: #c5ceca; font-size: .82rem; }
.hero-principle span { width: 32px; height: 1px; background: var(--lime); }

.system-visual { position: relative; min-width: 0; padding: 20px; border: 1px solid var(--line-strong); background: #0d1213; box-shadow: 0 30px 80px rgba(0,0,0,.36); }
.system-visual::before { content: ""; position: absolute; inset: 8px; pointer-events: none; border: 1px solid rgba(255,255,255,.045); }
.system-topline { display: flex; justify-content: space-between; align-items: center; padding: 4px 2px 16px; color: var(--muted); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.demo-label { display: inline-flex; width: max-content; padding: 5px 7px; border: 1px solid rgba(168,255,62,.22); color: var(--lime); background: rgba(168,255,62,.06); font-size: .58rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.route-map { position: relative; height: 210px; overflow: hidden; border: 1px solid var(--line); background: repeating-linear-gradient(0deg, transparent 0 31px, rgba(255,255,255,.035) 32px), repeating-linear-gradient(90deg, transparent 0 31px, rgba(255,255,255,.035) 32px); }
.route-map svg { position: absolute; inset: 10px 0 0; width: 100%; height: calc(100% - 10px); }
.map-road { fill: none; stroke: rgba(255,255,255,.11); stroke-width: 12; }
.map-route { fill: none; stroke: var(--cyan); stroke-width: 3; stroke-dasharray: 7 8; animation: route-flow 8s linear infinite; }
.route-map circle { fill: var(--cyan); }
.route-map .route-end { fill: var(--lime); stroke: rgba(168,255,62,.25); stroke-width: 12; }
.trip-signal { position: absolute; padding: 5px 7px; border: 1px solid var(--line); color: #ccd4d1; background: #111718; font-size: .58rem; font-weight: 700; }
.signal-one { top: 30px; left: 8%; }.signal-two { right: 8%; top: 28px; }.signal-three { bottom: 16px; left: 38%; }
.system-flow { display: grid; grid-template-columns: 1fr 22px 1fr 22px 1fr; gap: 4px; align-items: center; margin-block: 14px; }
.flow-node { min-width: 0; padding: 13px 10px; border: 1px solid var(--line); background: var(--surface); }
.flow-node small { display: block; margin-bottom: 14px; color: var(--muted); font-size: .56rem; }
.flow-node strong, .flow-node span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.flow-node strong { margin-bottom: 5px; font: 600 .75rem var(--display); }.flow-node span { color: var(--muted); font-size: .55rem; }
.flow-node.is-active { border-color: rgba(168,255,62,.4); }
.flow-connector { height: 1px; background: linear-gradient(90deg, var(--cyan), var(--lime)); }
.system-output { padding: 16px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px; color: #07100a; background: var(--lime); }
.system-output span, .system-output i { font-size: .58rem; font-style: normal; }.system-output strong { font: 700 .78rem var(--display); }.system-output i { justify-self: end; padding: 5px 7px; border: 1px solid rgba(7,16,10,.18); }

.problem-section { padding-top: 140px; }
.comparison-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.trip-case { padding: clamp(24px, 4vw, 42px); border: 1px solid var(--line); background: var(--surface); }
.case-top { display: flex; justify-content: space-between; color: var(--muted); font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; }.case-top strong { color: var(--text); font: 600 1.15rem var(--display); }
.case-line { height: 70px; display: flex; align-items: center; margin: 20px 0 26px; }.case-line > span { width: 14px; height: 14px; border: 2px solid currentColor; border-radius: 50%; }.case-line i { flex: 1; height: 2px; background: currentColor; opacity: .45; }.no-impact .case-line { color: var(--muted); }.has-impact .case-line { color: var(--lime); }
.trip-case h3 { margin-bottom: 8px; font: 600 clamp(1.35rem, 2.5vw, 2rem) var(--display); }.trip-case p { min-height: 3em; color: var(--muted); line-height: 1.6; }.case-result { margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--line); font-size: .78rem; font-weight: 800; }.no-impact .case-result { color: var(--muted); }.has-impact .case-result { color: var(--lime); }
.activity-statement { margin-top: 18px; padding: clamp(28px, 5vw, 60px); display: grid; grid-template-columns: auto auto auto 1fr; gap: 26px; align-items: center; border: 1px solid var(--line); background: #0b0f10; }
.activity-statement strong { font: 600 clamp(2.1rem, 5vw, 5rem) var(--display); }.activity-statement > span { color: var(--lime); font-size: 3rem; }.activity-statement p { max-width: 42ch; margin: 0 0 0 auto; color: var(--muted); line-height: 1.7; }

.formula-section, .business-section, .why-now-section, .roadmap-section { border-block: 1px solid var(--line); background: var(--surface); }
.formula { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; gap: 22px; align-items: stretch; }
.formula > div { min-height: 180px; padding: 26px; display: flex; flex-direction: column; justify-content: space-between; border: 1px solid var(--line); background: var(--bg); }.formula > b { align-self: center; color: var(--muted); font: 400 2rem var(--display); }.formula div span { color: var(--muted); font-size: .73rem; text-transform: uppercase; letter-spacing: .07em; }.formula div strong { font: 600 clamp(1.4rem, 3vw, 2.5rem)/1 var(--display); }.formula .formula-result { border-color: rgba(168,255,62,.4); background: var(--lime); color: #07100a; }.formula-result span { color: rgba(7,16,10,.65) !important; }
.impact-chain, .mode-track, .sponsor-flow { margin-top: 18px; padding: 22px; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 18px; border: 1px solid var(--line); color: #c3ccca; font-size: .76rem; }.impact-chain i, .mode-track i, .sponsor-flow i { color: var(--lime); font-style: normal; }.formula-note, .pass-through { margin: 22px 0 0; color: var(--muted); font-size: .78rem; text-align: center; }

.process-grid { position: relative; list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, 1fr); border: 1px solid var(--line); }
.process-grid li { position: relative; min-height: 270px; padding: 22px; border-right: 1px solid var(--line); background: var(--surface); }.process-grid li:last-child { border: 0; }.process-grid li > span { color: var(--muted); font-size: .64rem; }.process-icon { width: 46px; height: 46px; margin: 58px 0 28px; display: grid; place-items: center; border: 1px solid rgba(82,217,232,.45); color: var(--cyan); font: 600 .85rem var(--display); }.process-grid li:nth-child(3) .process-icon { border-color: rgba(156,124,255,.5); color: var(--violet); }.process-grid li:nth-child(4) .process-icon, .process-grid li:nth-child(5) .process-icon { border-color: rgba(168,255,62,.4); color: var(--lime); }.process-grid h3 { margin-bottom: 8px; font: 600 1.05rem var(--display); text-transform: uppercase; }.process-grid p { color: var(--muted); font-size: .78rem; line-height: 1.5; }

.app-section { position: relative; border-block: 1px solid var(--line); background: #0a0e0f; }
.phone-gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; align-items: start; }
.phone:nth-child(even) { margin-top: 54px; }.phone-frame { min-height: 580px; padding: 18px; overflow: hidden; border: 1px solid var(--line-strong); border-radius: 28px; background: var(--surface); box-shadow: 0 24px 60px rgba(0,0,0,.28); }.phone-status, .app-head { display: flex; align-items: center; justify-content: space-between; }.phone-status { margin-bottom: 24px; font-size: .58rem; }.phone-status i { width: 48px; height: 15px; border-radius: 20px; background: #070a0b; }.app-head { min-height: 30px; margin-bottom: 24px; }.app-head h3, .app-head strong { margin: 0; font: 600 1rem var(--display); }.mini-mark { color: var(--lime); font: 700 1rem var(--display); }.avatar { width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; font-size: .55rem; }.app-overline { margin-bottom: 5px; color: var(--muted); font-size: .65rem; }.phone-frame > h3 { margin-bottom: 10px; font: 600 1.3rem var(--display); }.impact-ring { width: 176px; aspect-ratio: 1; margin: 28px auto; padding: 13px; display: grid; place-items: center; border-radius: 50%; background: conic-gradient(var(--lime) 0 78%, #26302b 78%); }.impact-ring::before { content: ""; grid-area: 1/1; width: 100%; height: 100%; border-radius: 50%; background: var(--surface); }.impact-ring div { z-index: 1; grid-area: 1/1; text-align: center; }.impact-ring strong, .impact-ring span { display: block; }.impact-ring strong { font: 600 2.5rem var(--display); }.impact-ring span { color: var(--muted); font-size: .58rem; }.mini-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }.mini-metrics > div, .trend-card { padding: 12px; border: 1px solid var(--line); }.mini-metrics strong, .mini-metrics span { display: block; }.mini-metrics strong { font: 600 .9rem var(--display); }.mini-metrics span { margin-top: 4px; color: var(--muted); font-size: .52rem; }.active-trip { margin-top: 10px; padding: 12px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; color: #07100a; background: var(--lime); }.active-trip i, .qualified > i { width: 8px; height: 8px; border-radius: 50%; background: currentColor; }.active-trip strong, .active-trip span { display: block; }.active-trip strong { font-size: .65rem; }.active-trip span { margin-top: 3px; font-size: .5rem; }
.phone-caption { display: flex; justify-content: space-between; margin: 14px 4px 0; color: var(--muted); font-size: .68rem; text-transform: uppercase; letter-spacing: .08em; }.phone-caption span { color: var(--lime); }
.phone-map { height: 150px; margin-bottom: 12px; overflow: hidden; border: 1px solid var(--line); background: repeating-linear-gradient(0deg, transparent 0 24px, rgba(255,255,255,.04) 25px), repeating-linear-gradient(90deg, transparent 0 24px, rgba(255,255,255,.04) 25px); }.phone-map svg { width: 100%; height: 100%; }.phone-map path { fill: none; stroke: var(--cyan); stroke-width: 3; stroke-dasharray: 6 6; }.phone-map circle:first-of-type { fill: var(--cyan); }.phone-map circle:last-of-type { fill: var(--lime); }.qualified { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; padding: 12px; border: 1px solid rgba(168,255,62,.3); }.qualified > i { color: var(--lime); }.qualified strong, .qualified small { display: block; }.qualified strong { font-size: .7rem; }.qualified small { margin-top: 3px; color: var(--muted); font-size: .55rem; }.confidence { margin-top: 24px; }.confidence > div:first-child { display: flex; justify-content: space-between; align-items: end; }.confidence span { max-width: 12ch; color: var(--muted); font-size: .62rem; }.confidence strong { color: var(--lime); font: 600 1.8rem var(--display); }.meter { height: 6px; margin: 10px 0 20px; background: #27302d; }.meter i { display: block; width: 92%; height: 100%; background: var(--lime); }.integrity-row { padding: 14px 0; display: flex; justify-content: space-between; border-top: 1px solid var(--line); font-size: .65rem; }.integrity-row span { color: var(--muted); }
.week-metric { margin-block: 28px; }.week-metric strong, .week-metric span, .week-metric small { display: block; }.week-metric strong { font: 600 2.8rem var(--display); }.week-metric span { color: var(--muted); font-size: .63rem; }.week-metric small { margin-top: 8px; color: var(--lime); font-size: .54rem; }.chart { height: 150px; display: flex; align-items: end; gap: 7px; border-bottom: 1px solid var(--line); }.chart div { flex: 1; min-height: 4px; background: linear-gradient(to top, rgba(82,217,232,.2), var(--cyan)); }.chart-days { display: flex; justify-content: space-around; margin-top: 8px; color: var(--muted); font-size: .5rem; }.trend-card { margin-top: 24px; display: grid; grid-template-columns: 1fr auto; gap: 6px; }.trend-card span { color: var(--muted); font-size: .58rem; }.trend-card strong { font: 600 1.2rem var(--display); }.trend-card small { grid-column: 1/-1; color: var(--muted); font-size: .5rem; }
.reward-balance { margin: 28px 0; padding: 22px; color: #171006; background: var(--amber); }.reward-balance span, .reward-balance strong, .reward-balance small { display: block; }.reward-balance span { font-size: .6rem; }.reward-balance strong { margin: 10px 0; font: 600 2.4rem var(--display); }.reward-balance small { font-size: .5rem; }.phone-frame h4 { margin: 20px 0 10px; font: 600 .7rem var(--display); }.reward-options { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }.reward-options span { min-height: 50px; padding: 9px; display: flex; align-items: end; border: 1px solid var(--line); color: #c5cdca; font-size: .52rem; }.reward-history > div { padding: 10px 0; display: grid; grid-template-columns: auto 1fr auto; gap: 8px; align-items: center; border-top: 1px solid var(--line); }.reward-history i { width: 24px; height: 24px; border: 1px solid rgba(255,180,85,.4); }.reward-history strong, .reward-history small { display: block; }.reward-history strong, .reward-history b { font-size: .53rem; }.reward-history small { margin-top: 3px; color: var(--muted); font-size: .46rem; }.reward-history b { color: var(--amber); }

.mrv-equation { margin-bottom: 18px; padding: 24px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 14px; border: 1px solid var(--line); background: var(--surface); font-size: .73rem; }.mrv-equation b { color: var(--violet); }.mrv-equation strong { padding: 10px; color: #0d071c; background: var(--violet); }.mrv-grid, .customer-grid, .status-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }.mrv-grid article, .customer-grid article { min-height: 240px; padding: 24px; border: 1px solid var(--line); background: var(--surface); }.mrv-grid article > span, .customer-grid article > span { color: var(--violet); font-size: .65rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }.mrv-grid h3, .customer-grid h3 { margin: 76px 0 12px; font: 600 1.05rem var(--display); }.mrv-grid p, .customer-grid p { margin-bottom: 0; color: var(--muted); font-size: .76rem; line-height: 1.65; }.truth-note { margin: 18px 0 0; padding: clamp(30px, 5vw, 58px); border: 1px solid rgba(156,124,255,.3); color: #dad2ff; background: rgba(156,124,255,.07); font: 500 clamp(1.4rem, 3vw, 2.5rem)/1.25 var(--display); }.compliance-note { max-width: 90ch; margin: 20px 0 0; color: var(--muted); font-size: .72rem; line-height: 1.7; }

.software-section { border-block: 1px solid var(--line); background: #0b0f10; }.software-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; }.device-diagram { display: grid; grid-template-columns: .7fr 1.3fr; gap: 18px; align-items: center; }.device { position: relative; aspect-ratio: .58; max-width: 210px; width: 100%; justify-self: end; padding: 18px; display: flex; flex-direction: column; justify-content: center; align-items: center; border: 2px solid var(--line-strong); border-radius: 30px; background: var(--surface); box-shadow: inset 0 0 40px rgba(82,217,232,.05); }.device > span { position: absolute; top: 16px; left: 50%; width: 44px; height: 5px; transform: translateX(-50%); border-radius: 99px; background: #303738; }.device strong { color: var(--lime); font: 700 1.35rem var(--display); }.device small { margin-top: 7px; color: var(--muted); }.device-lines { display: grid; gap: 10px; }.device-lines span { position: relative; padding: 14px; border-left: 2px solid var(--cyan); color: #c7cecc; background: var(--surface); font-size: .68rem; }.software-callout { grid-column: 1/-1; margin: 0; padding-top: 34px; border-top: 1px solid var(--line); color: var(--text); font: 500 clamp(1.3rem, 3vw, 2.4rem) var(--display); text-align: center; }.software-callout span { color: var(--lime); }

.sponsor-flow { margin: 0 0 18px; }.sponsor-flow strong { padding: 10px 14px; color: #07100a; background: var(--lime); }.customer-grid article > span { color: var(--cyan); }.customer-grid h3 { margin-top: 62px; }
.business-grid { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--line); }.business-grid article { min-height: 210px; padding: 26px; border-right: 1px solid var(--line); }.business-grid article:last-child { border: 0; }.business-grid span { color: var(--lime); font-size: .65rem; }.business-grid h3 { margin: 70px 0 10px; font: 600 1.2rem var(--display); }.business-grid p { color: var(--muted); font-size: .78rem; }

.mode-track { justify-content: space-between; }.mode-track strong { padding: 10px 14px; color: #07100a; background: var(--lime); }.flywheel { position: relative; width: min(100%, 760px); aspect-ratio: 1.8; margin: 70px auto 0; }.flywheel::before { content: ""; position: absolute; inset: 8% 18%; border: 1px dashed rgba(168,255,62,.35); border-radius: 50%; }.flywheel-center { position: absolute; inset: 50% auto auto 50%; width: 160px; aspect-ratio: 1; transform: translate(-50%,-50%); display: grid; place-items: center; border-radius: 50%; color: #07100a; background: var(--lime); text-align: center; font: 600 1rem var(--display); }.flywheel-item { position: absolute; padding: 10px 12px; border: 1px solid var(--line); background: var(--surface); color: #c1cac6; font-size: .68rem; }.item-one { top: 0; left: 42%; }.item-two { top: 26%; right: 3%; }.item-three { right: 8%; bottom: 10%; }.item-four { bottom: 0; left: 19%; }.item-five { top: 32%; left: 0; }
.split-content { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; }.split-content h2 { font: 600 clamp(2.2rem, 4vw, 4rem)/1 var(--display); }.now-list p { margin: 0; padding: 18px 0 18px 26px; border-top: 1px solid var(--line); color: #c2cac7; position: relative; }.now-list p::before { content: ""; position: absolute; left: 0; top: 25px; width: 6px; height: 6px; background: var(--lime); }
.status-grid article { min-height: 180px; padding: 24px; display: flex; flex-direction: column; justify-content: space-between; border: 1px solid var(--line); background: var(--surface); }.status-grid span { color: var(--muted); font-size: .66rem; text-transform: uppercase; }.status-grid strong { font: 600 1.05rem/1.35 var(--display); }
.roadmap { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); }.roadmap li { position: relative; padding: 35px 24px 0 0; }.roadmap li::before { content: ""; position: absolute; top: -5px; width: 10px; height: 10px; background: var(--lime); }.roadmap span, .roadmap strong { display: block; }.roadmap span { margin-bottom: 36px; color: var(--lime); font-size: .68rem; }.roadmap strong { font: 600 1.15rem var(--display); }.roadmap p { color: var(--muted); font-size: .75rem; }
.founder-card { padding: clamp(28px, 6vw, 70px); display: grid; grid-template-columns: 260px 1fr; gap: 70px; align-items: center; border: 1px solid var(--line); background: var(--surface); }.founder-monogram { aspect-ratio: 1; display: grid; place-items: center; align-content: center; gap: 16px; border: 1px solid var(--line-strong); background: #0b1011; }.founder-monogram span { color: var(--lime); font: 600 4rem var(--display); }.founder-monogram i { color: var(--muted); font-size: .64rem; font-style: normal; text-transform: uppercase; letter-spacing: .1em; }.founder-card h2 { margin-bottom: 16px; font: 600 clamp(2rem,4vw,3.8rem) var(--display); }.founder-card p { max-width: 55ch; color: var(--muted); line-height: 1.7; }.text-link { display: inline-flex; gap: 20px; margin-top: 10px; color: var(--lime); font-weight: 800; }
.final-section { padding-block: 150px; text-align: center; border-block: 1px solid rgba(168,255,62,.3); background: linear-gradient(130deg, rgba(168,255,62,.08), transparent 55%), #0b1011; }.final-section .section-shell { display: grid; justify-items: center; }.final-section h2 { max-width: 19ch; }.final-section p { max-width: 64ch; color: var(--muted); line-height: 1.7; }.final-section .hero-actions { margin: 26px 0 42px; }.final-section small { color: var(--muted); }
.shift-footer { min-height: 170px; padding-block: 48px; display: grid; grid-template-columns: auto 1fr auto; gap: 34px; align-items: center; color: var(--muted); font-size: .75rem; }.shift-footer p { margin: 0; }.shift-footer > div { display: flex; gap: 24px; }.shift-footer a:hover { color: var(--text); }.shift-footer small { grid-column: 1/-1; padding-top: 24px; border-top: 1px solid var(--line); }

.js .reveal { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s ease; }.js .reveal.is-visible { opacity: 1; transform: none; }
@keyframes route-flow { to { stroke-dashoffset: -120; } }

@media (max-width: 1050px) {
  .shift-hero { grid-template-columns: 1fr; min-height: auto; padding-top: 150px; }.shift-hero h1 { max-width: 12ch; }.system-visual { max-width: 700px; }
  .phone-gallery { grid-template-columns: 1fr 1fr; gap: 40px 18px; }.phone { width: min(100%, 330px); justify-self: center; }.phone:nth-child(even) { margin-top: 0; }
  .process-grid { grid-template-columns: repeat(3, 1fr); }.process-grid li:nth-child(3) { border-right: 0; }.process-grid li:nth-child(-n+3) { border-bottom: 1px solid var(--line); }
  .mrv-grid, .customer-grid, .status-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 760px) {
  .section-shell, .nav-shell { width: min(calc(100% - 28px), var(--content)); }.section { padding-block: 88px; }
  .shift-header { background: rgba(8,11,12,.94); border-bottom-color: var(--line); }.nav-shell { min-height: 68px; }.nav-toggle { display: block; }.shift-nav { position: absolute; top: 68px; left: 0; right: 0; display: none; padding: 14px; background: #0b0f10; border-bottom: 1px solid var(--line); }.shift-nav.is-open { display: grid; }.shift-nav a { padding: 0 10px; border-bottom: 1px solid var(--line); }.shift-nav .portfolio-link { margin-top: 6px; border: 1px solid var(--line); }
  .shift-hero { min-height: 100svh; padding-top: 112px; padding-bottom: 70px; gap: 54px; }.shift-hero h1 { font-size: clamp(3rem, 15vw, 5rem); }.button { width: 100%; }.hero-principle { align-items: flex-start; line-height: 1.5; }
  .system-visual { padding: 12px; }.route-map { height: 170px; }.system-flow { grid-template-columns: 1fr; }.flow-connector { width: 1px; height: 14px; margin-left: 24px; }.system-output { grid-template-columns: 1fr auto; }.system-output span { grid-column: 1/-1; }.flow-node strong, .flow-node span { white-space: normal; }
  .split-heading, .comparison-grid, .software-layout, .split-content, .founder-card { grid-template-columns: 1fr; gap: 28px; }.split-heading { align-items: start; }
  .activity-statement { grid-template-columns: auto auto auto; gap: 12px; }.activity-statement p { grid-column: 1/-1; margin: 12px 0 0; }.activity-statement strong { font-size: clamp(1.8rem, 10vw, 3.2rem); }
  .formula { grid-template-columns: 1fr; }.formula > div { min-height: 130px; }.formula > b { transform: rotate(90deg); }.impact-chain { flex-direction: column; align-items: flex-start; }.impact-chain i { transform: rotate(90deg); align-self: center; }
  .process-grid { grid-template-columns: 1fr; }.process-grid li { min-height: 180px; border-right: 0; border-bottom: 1px solid var(--line); }.process-grid li:nth-child(3) { border-bottom: 1px solid var(--line); }.process-icon { margin: 28px 0 20px; }
  .phone-gallery { grid-template-columns: 1fr; }.phone { width: min(100%, 350px); }.phone-frame { min-height: 600px; }
  .mrv-grid, .customer-grid, .status-grid, .business-grid { grid-template-columns: 1fr; }.business-grid article { min-height: 170px; border-right: 0; border-bottom: 1px solid var(--line); }.business-grid h3 { margin-top: 42px; }.mrv-grid article, .customer-grid article { min-height: 200px; }.mrv-grid h3, .customer-grid h3 { margin-top: 48px; }
  .mrv-equation, .sponsor-flow, .mode-track { flex-direction: column; align-items: stretch; text-align: center; }.mrv-equation b, .sponsor-flow i, .mode-track i { transform: rotate(90deg); align-self: center; }.mrv-equation strong { overflow-wrap: anywhere; }
  .device-diagram { grid-template-columns: 1fr; }.device { justify-self: center; }.device-lines span { min-height: 48px; }.software-callout { text-align: left; }
  .flywheel { aspect-ratio: 1; margin-top: 50px; }.flywheel::before { inset: 14%; }.flywheel-center { width: 120px; }.flywheel-item { padding: 7px; font-size: .56rem; }.item-one { left: 36%; }.item-two { right: 0; }.item-three { right: 1%; bottom: 8%; }.item-four { left: 7%; }.item-five { left: 0; }
  .roadmap { grid-template-columns: 1fr; border-top: 0; border-left: 1px solid var(--line); margin-left: 5px; }.roadmap li { padding: 0 0 38px 28px; }.roadmap li::before { left: -5px; top: 4px; }.roadmap span { margin-bottom: 12px; }.founder-monogram { width: min(100%, 260px); }.final-section { padding-block: 100px; }.shift-footer { grid-template-columns: 1fr; gap: 18px; }.shift-footer small { grid-column: auto; }
}

@media (max-width: 390px) {
  .section-shell, .nav-shell { width: min(calc(100% - 20px), var(--content)); }.shift-hero h1 { font-size: 2.85rem; }.phone-frame { padding: 15px; }.formula > div { padding: 20px; }.status-line { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }.reveal { opacity: 1; transform: none; }
}

:focus-visible { outline: 2px solid var(--lime); outline-offset: 4px; }
