
:root{
  --black:#090909;
  --black2:#101010;
  --cream:#f3efe5;
  --off:#efeee8;
  --yellow:#ffd400;
  --line:rgba(255,255,255,.18);
  --muted:#9a9a92;
  --sans:Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
  --mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:#fff;font-family:var(--sans);overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,textarea{font:inherit}
::selection{background:var(--yellow);color:#000}

.page-progress{position:fixed;z-index:200;top:0;left:0;height:2px;background:var(--yellow);width:0}
.cursor,.cursor-dot{position:fixed;pointer-events:none;z-index:9999;border-radius:50%;transform:translate(-50%,-50%);mix-blend-mode:difference}
.cursor{width:34px;height:34px;border:1px solid #fff;transition:width .2s,height .2s}
.cursor-dot{width:4px;height:4px;background:#fff}
body.cursor-grow .cursor{width:64px;height:64px}
@media (pointer:coarse){.cursor,.cursor-dot{display:none}}

.nav{position:fixed;z-index:150;top:0;left:0;width:100%;height:86px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;transition:.4s;background:linear-gradient(to bottom,rgba(0,0,0,.55),transparent)}
.nav.scrolled{height:70px;background:rgba(9,9,9,.86);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}
.brand{display:inline-flex;align-items:center;gap:12px;font-weight:700}
.brand-mark{display:grid;place-items:center;width:36px;height:36px;background:var(--yellow);color:#000;font-size:13px;letter-spacing:-.05em}
.brand-name{font-size:20px;letter-spacing:-.04em}
.desktop-nav{display:flex;align-items:center;gap:32px;font-size:13px}
.desktop-nav a:not(.nav-cta){opacity:.72;transition:.2s}
.desktop-nav a:not(.nav-cta):hover{opacity:1}
.nav-cta{border:1px solid rgba(255,255,255,.35);padding:11px 16px}
.menu-button{display:none;background:none;border:0;width:42px;height:42px;position:relative}
.menu-button span{position:absolute;left:8px;width:26px;height:1px;background:#fff;transition:.35s}
.menu-button span:first-child{top:16px}.menu-button span:last-child{top:25px}
.menu-button.active span:first-child{transform:translateY(4px) rotate(45deg)}
.menu-button.active span:last-child{transform:translateY(-5px) rotate(-45deg)}
.mobile-menu{position:fixed;z-index:140;inset:0;background:#0b0b0b;transform:translateY(-100%);transition:.65s cubic-bezier(.7,0,.2,1)}
.mobile-menu.open{transform:translateY(0)}
.mobile-menu-inner{height:100%;padding:130px 8vw 48px;display:flex;flex-direction:column;justify-content:center;gap:6px}
.mobile-menu a{font-size:clamp(42px,11vw,72px);letter-spacing:-.055em;font-weight:600;border-bottom:1px solid rgba(255,255,255,.12);padding:8px 0}
.mobile-meta{margin-top:auto;font:11px var(--mono);color:#777;letter-spacing:.12em}

.hero{position:relative;height:100svh;min-height:720px;overflow:hidden;background:#000}
.hero-media{position:absolute;inset:0}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 53%;transform:scale(1.035);filter:saturate(.74) contrast(1.07) brightness(.68)}
.hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.8) 0%,rgba(0,0,0,.2) 52%,rgba(0,0,0,.35) 100%),linear-gradient(0deg,rgba(0,0,0,.82) 0%,transparent 44%)}
.hero-grid{position:relative;z-index:2;height:100%;padding:140px 7vw 6vh;display:grid;grid-template-rows:auto 1fr auto}
.eyebrow,.micro-label,.section-index{font:11px var(--mono);letter-spacing:.15em;text-transform:uppercase}
.eyebrow{color:rgba(255,255,255,.7)}
.hero-title{align-self:center;margin:0;font-size:clamp(74px,11.5vw,190px);line-height:.76;letter-spacing:-.075em;font-weight:650;text-transform:uppercase}
.hero-title .line{display:block;overflow:hidden}
.hero-title .line span{display:block;transform:translateY(110%);animation:titleIn 1.1s cubic-bezier(.2,.75,.2,1) forwards}
.hero-title .line:nth-child(2) span{animation-delay:.08s}
.hero-title .line:nth-child(3) span{animation-delay:.16s}
.hero-title .accent{color:var(--yellow)}
@keyframes titleIn{to{transform:translateY(0)}}
.hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:40px}
.hero-copy{max-width:560px;font-size:18px;line-height:1.55;color:rgba(255,255,255,.74)}
.round-link{width:118px;height:118px;border:1px solid rgba(255,255,255,.5);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;font-size:12px;text-transform:uppercase;letter-spacing:.12em;transition:.25s}
.round-link svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.5}
.round-link:hover{background:var(--yellow);color:#000;border-color:var(--yellow)}
.hero-side-caption{position:absolute;z-index:3;right:2.1vw;top:50%;transform:rotate(90deg) translateX(50%);transform-origin:right top;font:10px var(--mono);letter-spacing:.18em;color:rgba(255,255,255,.52)}

.marquee{height:86px;display:flex;align-items:center;overflow:hidden;background:var(--yellow);color:#000}
.marquee-track{display:flex;align-items:center;gap:25px;white-space:nowrap;min-width:max-content;animation:marquee 18s linear infinite;font-size:36px;font-weight:700;letter-spacing:-.04em}
.marquee-track i{width:8px;height:8px;border-radius:50%;background:#000}
@keyframes marquee{to{transform:translateX(-50%)}}

.section-pad{padding:120px 7vw}
.section-index{color:#73736d;margin-bottom:55px}
.display{margin:0;font-size:clamp(48px,7vw,108px);line-height:.9;letter-spacing:-.065em;font-weight:600}
.display em{font-style:normal;color:var(--yellow)}
.statement{background:var(--cream);color:#111}
.statement-grid{display:grid;grid-template-columns:1.7fr .7fr;gap:8vw;align-items:end}
.statement-copy{font-size:18px;line-height:1.55;color:#4f4f49}
.statement-copy p{margin:0 0 22px}

.experiences{background:#111}
.experiences-head{background:#111}
.experience-head-grid{display:grid;grid-template-columns:1.5fr .55fr;gap:8vw;align-items:end}
.experience-head-grid p{color:#9b9b93;line-height:1.55;font-size:18px}
.experience{min-height:860px;padding:100px 7vw;display:grid;grid-template-columns:80px 1fr 1.05fr;gap:5vw;align-items:center;position:relative;overflow:hidden;border-top:1px solid rgba(255,255,255,.1)}
.experience-number{align-self:start;font:12px var(--mono);opacity:.45}
.experience-copy h3{font-size:clamp(62px,7vw,116px);line-height:.83;letter-spacing:-.065em;margin:24px 0 34px;font-weight:600}
.experience-copy p{max-width:540px;font-size:18px;line-height:1.6;opacity:.68}
.lesson{margin-top:52px;font:11px var(--mono);letter-spacing:.13em}
.lesson span{margin:0 12px}
.experience-visual{min-height:570px;position:relative}
.exp-dark{background:#0d0d0d;color:#fff}
.exp-light{background:#e8e6df;color:#0a0a0a}
.exp-yellow{background:var(--yellow);color:#0a0a0a}
.exp-cream{background:#f6f0e5;color:#0a0a0a}
.convincer-visual{display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 50%,#2a2a2a 0,#111 62%,#090909 100%)}
.convincer-visual img{width:95%;max-height:650px;object-fit:contain;filter:drop-shadow(0 26px 60px rgba(0,0,0,.45))}
.visual-tag{position:absolute;bottom:18px;left:18px;font:10px var(--mono);letter-spacing:.12em;color:#888}
.digital-visual{display:grid;place-items:center;background:linear-gradient(135deg,#171717,#020202);overflow:hidden}
.digital-visual:before{content:"";position:absolute;width:700px;height:700px;border-radius:50%;border:1px solid rgba(255,212,0,.18);box-shadow:0 0 0 80px rgba(255,212,0,.025),0 0 0 160px rgba(255,212,0,.018)}
.risk-ui{position:relative;z-index:1;width:82%;padding:36px;background:rgba(12,12,12,.78);border:1px solid rgba(255,255,255,.15);box-shadow:0 40px 80px rgba(0,0,0,.4);color:#fff}
.risk-top{display:flex;justify-content:space-between;font:10px var(--mono);letter-spacing:.12em;color:#8a8a8a}
.status-dot{color:#ddd}.status-dot:before{content:"";display:inline-block;width:6px;height:6px;background:var(--yellow);border-radius:50%;margin-right:7px}
.risk-score{font-size:104px;letter-spacing:-.08em;margin-top:46px;font-weight:650}.risk-score span{font-size:24px;color:#777;margin-left:8px}
.risk-caption{font:10px var(--mono);letter-spacing:.15em;color:#777;margin-bottom:46px}
.risk-bars>div{display:grid;grid-template-columns:120px 1fr;gap:18px;align-items:center;margin:16px 0;font-size:11px;color:#aaa}
.risk-bars b{display:block;width:var(--w);height:2px;background:var(--yellow)}
.risk-footer{margin-top:40px;padding-top:18px;border-top:1px solid #333;font:10px var(--mono);letter-spacing:.12em;color:#686868}
.moto-visual{background:#0d0d0d;color:#fff;display:grid;place-items:center;overflow:hidden}
.moto-ring{position:absolute;width:440px;height:440px;border:1px solid rgba(255,212,0,.55);border-radius:50%;box-shadow:0 0 0 90px rgba(255,212,0,.04),0 0 0 180px rgba(255,212,0,.02)}
.moto-copy{position:relative;z-index:1;font-size:70px;line-height:.82;letter-spacing:-.055em;font-weight:600}.moto-copy strong{color:var(--yellow)}
.moto-speed{position:absolute;right:26px;bottom:18px;font-size:56px;letter-spacing:-.06em}.moto-speed span{font-size:12px;margin-left:5px;color:#777}
.passenger-visual{background:#171717;color:#fff;padding:54px;display:flex;flex-direction:column;justify-content:space-between}
.quote-mark{font-size:140px;color:var(--yellow);line-height:.5}
.passenger-copy{font-size:72px;line-height:.9;letter-spacing:-.055em;font-weight:600}
.yes-no{display:flex;gap:10px}.yes-no span{flex:1;border:1px solid #444;padding:22px 24px;font:12px var(--mono);letter-spacing:.12em}.yes-no span:first-child{background:var(--yellow);color:#000;border-color:var(--yellow)}

.journey{background:#0b0b0b;overflow:hidden}
.journey-wrap{margin-top:20px}
.journey-word{font-size:clamp(72px,13vw,220px);line-height:.76;letter-spacing:-.075em;font-weight:650;color:#171717;text-shadow:0 0 0 #171717;transition:.5s;white-space:nowrap}
.journey-word.active{color:#fff}
.journey-word.yellow.active{color:var(--yellow)}
.journey-note{margin-top:60px;margin-left:auto;max-width:500px;color:#888;font-size:16px;line-height:1.55}

.impact{background:#eeeae0;color:#0b0b0b}
.impact-grid{display:grid;grid-template-columns:1.5fr .55fr;gap:8vw;align-items:end}
.impact-grid p{font-size:18px;line-height:1.55;color:#60605a}
.dashboard-wrap{padding:0 7vw 120px}
.dashboard{background:#101010;color:#fff;padding:42px;border-radius:2px;box-shadow:0 50px 120px rgba(0,0,0,.22)}
.dash-head{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:34px;border-bottom:1px solid #2a2a2a}
.dash-head h3{font-size:34px;letter-spacing:-.04em;margin:8px 0 0}
.dash-status{font:10px var(--mono);letter-spacing:.12em;color:#777}.dash-status i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--yellow);margin-right:8px}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #2a2a2a}
.metric{padding:34px 26px;border-right:1px solid #2a2a2a}.metric:last-child{border-right:0}
.metric span{display:block;font-size:12px;color:#888}.metric strong{display:block;font-size:60px;letter-spacing:-.06em;margin:18px 0 7px}.metric small{font:9px var(--mono);letter-spacing:.11em;color:#5d5d5d}
.dash-body{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;padding:34px 0}
.chart-panel{border:1px solid #2a2a2a;padding:26px}
.panel-title{font:10px var(--mono);letter-spacing:.12em;color:#818181;margin-bottom:28px}
.bars>div{display:grid;grid-template-columns:1fr 2fr 45px;gap:15px;align-items:center;margin:20px 0;font-size:11px;color:#aaa}.bars>div>div{height:2px;background:#2b2b2b}.bars b{display:block;height:100%;width:var(--v);background:var(--yellow)}.bars em{font-style:normal;text-align:right}
.signal-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#2a2a2a}.signal-grid div{background:#101010;padding:23px}.signal-grid strong{display:block;font-size:28px}.signal-grid span{font-size:10px;color:#777}
.dash-foot{padding-top:18px;border-top:1px solid #2a2a2a;display:flex;gap:28px;font:9px var(--mono);letter-spacing:.13em;color:#555}

.why{background:#0c0c0c}
.why-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:8vw}
.why-list{padding-top:15px}
.why-item{display:grid;grid-template-columns:50px 180px 1fr;gap:20px;padding:28px 0;border-top:1px solid #2a2a2a}
.why-item span{font:10px var(--mono);color:#666}.why-item h4{margin:0;font-size:20px}.why-item p{margin:0;color:#888;line-height:1.55;font-size:14px}

.about{background:#111}
.about-panel{background:var(--yellow);color:#080808}
.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:9vw}
.about-grid .display em{color:#000;text-decoration:underline;text-decoration-thickness:.06em;text-underline-offset:.08em}
.about-copy{font-size:18px;line-height:1.55}
.founder{margin-top:60px;padding-top:34px;border-top:1px solid rgba(0,0,0,.2);display:grid;grid-template-columns:74px 1fr;gap:22px}
.founder-monogram{width:74px;height:74px;border-radius:50%;border:1px solid rgba(0,0,0,.35);display:grid;place-items:center;font:14px var(--mono)}
.founder strong{font-size:22px;display:block}.founder span{display:block;font-size:12px;margin-top:3px;opacity:.6}.founder p{font-size:14px;max-width:500px;opacity:.7;margin-bottom:0}

.contact{background:#090909}
.contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:9vw;align-items:start}
.contact-title{font-size:clamp(58px,8vw,126px);line-height:.82;letter-spacing:-.07em;margin:0}.contact-title span{color:var(--yellow)}
.contact-grid>div>p{max-width:520px;color:#777;font-size:17px;line-height:1.55;margin-top:35px}
.contact-form{display:grid;gap:24px}
.contact-form label{display:block;border-bottom:1px solid #343434;padding-bottom:10px}
.contact-form label span{display:block;font:10px var(--mono);letter-spacing:.12em;color:#6e6e6e;margin-bottom:12px}
.contact-form input,.contact-form textarea{width:100%;border:0;background:transparent;color:#fff;outline:none;font-size:18px;resize:none}
.submit{margin-top:10px;width:100%;border:0;background:var(--yellow);color:#000;padding:20px 22px;text-align:left;display:flex;justify-content:space-between;font-weight:650;cursor:pointer}
footer{margin-top:120px;padding-top:34px;border-top:1px solid #242424;display:grid;grid-template-columns:1fr 1.3fr .7fr;align-items:end;gap:20px}
.footer-links{display:flex;gap:22px;flex-wrap:wrap;color:#777;font-size:12px}.footer-note{color:#555;font-size:11px;text-align:right}

.reveal-up{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.65,.2,1)}
.reveal-up.visible{opacity:1;transform:none}
.reveal-text{opacity:.12;transition:opacity .9s}
.reveal-text.visible{opacity:1}

@media(max-width:900px){
  .desktop-nav{display:none}.menu-button{display:block}
  .nav{height:70px;padding:0 6vw}
  .hero{min-height:690px}
  .hero-grid{padding:115px 6vw 5vh}
  .hero-title{font-size:clamp(68px,22vw,112px);line-height:.78}
  .hero-bottom{align-items:flex-end}
  .hero-copy{font-size:15px;max-width:68%}
  .round-link{width:88px;height:88px}
  .hero-side-caption{display:none}
  .section-pad{padding:90px 6vw}
  .statement-grid,.experience-head-grid,.impact-grid,.why-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:48px}
  .statement-copy,.experience-head-grid p,.impact-grid p{max-width:600px}
  .experience{min-height:auto;padding:86px 6vw;grid-template-columns:40px 1fr}
  .experience-copy{grid-column:2}
  .experience-visual{grid-column:1/-1;min-height:430px;margin-top:24px}
  .experience-copy h3{font-size:clamp(58px,16vw,96px)}
  .metrics{grid-template-columns:1fr 1fr}
  .metric:nth-child(2){border-right:0}.metric:nth-child(-n+2){border-bottom:1px solid #2a2a2a}
  .dash-body{grid-template-columns:1fr}
  .why-item{grid-template-columns:40px 1fr}.why-item p{grid-column:2}
  footer{grid-template-columns:1fr;gap:26px}.footer-note{text-align:left}
}
@media(max-width:560px){
  .hero-grid{padding-top:100px}
  .hero-title{font-size:21vw}
  .hero-bottom{gap:20px}.hero-copy{max-width:72%;font-size:13px}
  .round-link{width:78px;height:78px;font-size:9px}
  .marquee{height:66px}.marquee-track{font-size:28px}
  .section-index{margin-bottom:34px}
  .display{font-size:15.5vw}
  .experience{padding:72px 6vw}
  .experience-number{grid-column:1}
  .experience-copy{grid-column:1/-1}
  .experience-copy h3{font-size:16vw}
  .experience-copy p{font-size:15px}
  .experience-visual{min-height:360px}
  .risk-ui{width:92%;padding:22px}.risk-score{font-size:76px}.risk-bars>div{grid-template-columns:100px 1fr}
  .moto-copy{font-size:55px}.moto-ring{width:300px;height:300px}
  .passenger-copy{font-size:50px}
  .dashboard-wrap{padding:0 4vw 80px}.dashboard{padding:22px}
  .dash-head{gap:20px}.dash-head h3{font-size:26px}
  .metrics{grid-template-columns:1fr}.metric{border-right:0!important;border-bottom:1px solid #2a2a2a!important}.metric:last-child{border-bottom:0!important}
  .metric strong{font-size:48px}
  .bars>div{grid-template-columns:1fr 70px}.bars>div>div{grid-column:1/-1;grid-row:2}.bars em{grid-column:2;grid-row:1}
  .signal-grid{grid-template-columns:1fr 1fr}.signal-grid strong{font-size:22px}
  .dash-foot{gap:12px;flex-wrap:wrap}
  .founder{grid-template-columns:58px 1fr}.founder-monogram{width:58px;height:58px}
  .contact-title{font-size:17vw}
  .footer-links{flex-direction:column;gap:8px}
}


/* v2 mobile QA fixes */
.brand-logo{
  width:40px;
  height:40px;
  object-fit:contain;
  flex:0 0 auto;
}
.footer-brand .brand-logo{width:42px;height:42px}
.brand-name{white-space:nowrap}

.moto-copy{
  max-width:88%;
  overflow-wrap:normal;
  word-break:normal;
}
.moto-speed{
  display:flex;
  align-items:baseline;
  gap:8px;
  white-space:nowrap;
}
.moto-speed strong{font:inherit}
.moto-speed span{position:static!important;display:inline-block!important}

.contact-title{
  overflow-wrap:normal;
  word-break:normal;
}
.contact-title span{display:block}

@media(max-width:900px){
  .brand-logo{width:38px;height:38px}
  .experience{overflow:hidden}
  .experience-visual{width:100%;max-width:100%}
  .moto-visual{padding:36px 24px}
  .moto-copy{
    width:100%;
    max-width:100%;
    font-size:clamp(48px,12vw,72px);
    line-height:.88;
  }
  .moto-speed{right:24px;bottom:20px}
  .passenger-visual{padding:48px 9vw}
  .passenger-copy{
    max-width:100%;
    font-size:clamp(48px,11.5vw,72px);
    line-height:.9;
    overflow-wrap:normal;
  }
  .contact-grid{min-width:0}
  .contact-grid>div,.contact-form{min-width:0}
  .contact-title{
    max-width:100%;
    font-size:clamp(54px,14vw,100px);
    line-height:.84;
  }
  .contact-grid>div>p{max-width:100%}
}
@media(max-width:560px){
  .brand-logo{width:34px;height:34px}
  .brand-name{font-size:19px}
  .moto-visual{min-height:430px;padding:34px 26px}
  .moto-copy{
    font-size:13.2vw;
    line-height:.86;
    letter-spacing:-.055em;
  }
  .moto-ring{width:270px;height:270px}
  .moto-speed{right:26px;bottom:22px;font-size:46px}
  .moto-speed span{font-size:11px!important;margin-left:0!important}
  .passenger-visual{min-height:470px;padding:42px 10vw}
  .quote-mark{font-size:110px}
  .passenger-copy{font-size:12vw;line-height:.9}
  .yes-no span{padding:18px}
  .contact-title{
    font-size:13.6vw;
    line-height:.86;
    letter-spacing:-.065em;
  }
  .contact-grid>div>p{font-size:15px}
  .contact-form input,.contact-form textarea{font-size:16px}
}
