/* Public homepage only: editorial riding imagery and numbered chapters. */
.landing-redesign { --ink:#141416; --panel:#1d1d20; --orange:#f3953d; background:var(--ink); color:#fff; overflow:clip; font-family:Arial,Helvetica,sans-serif; }
.landing-redesign *, .landing-redesign *::before, .landing-redesign *::after { box-sizing:border-box; }
.landing-redesign .header { padding:18px 5%; background:rgba(20,20,22,.9); border-bottom:1px solid #ffffff16; backdrop-filter:blur(18px); box-shadow:none; }
.landing-redesign .heading { gap:5px; }
.landing-redesign .heading-text { font-size:23px; letter-spacing:-1px; }
.landing-redesign .logo { width:35px; height:35px; }
.landing-redesign .header-buttons { gap:26px; }
.landing-redesign .btn-primary-nav { background:transparent; border:0; padding:8px 0!important; font-size:14px!important; box-shadow:none; }
.landing-redesign .btn-outline { border-radius:4px; font-size:13px; padding:12px 20px; }
.landing-redesign .hero-fullscreen { min-height:850px; height:100svh; max-height:1150px; align-items:stretch; }
.landing-redesign .hero-fullscreen > .hero-navigation-background { height:100%; object-fit:cover; object-position:65% center; opacity:.72; animation:landscape-enter 1.6s ease-out both; }
.landing-redesign .hero-fullscreen > .hero-navigation-overlay { background:linear-gradient(90deg,rgba(13,14,16,.94),rgba(13,14,16,.5) 50%,rgba(13,14,16,.12)),linear-gradient(0deg,#141416,transparent 35%); }
.landing-redesign .hero-content { max-width:1600px; padding:145px 6% 80px; justify-content:space-between; }
.landing-redesign .hero-main-wrapper { display:grid; grid-template-columns:minmax(0,1fr) 260px; align-items:end; gap:30px; min-height:0; margin:0; flex:1; padding-bottom:58px; }
.landing-redesign .hero-left-section { max-width:900px; }
.landing-redesign .hero-left-section::before { content:'01 /'; display:block; color:var(--orange); font-size:13px; letter-spacing:3px; margin-bottom:24px; }
.landing-redesign .hero-title { font-size:clamp(48px,5.9vw,94px); font-weight:800; line-height:1.02; letter-spacing:-.065em; margin:0 0 26px; text-shadow:none; }
.landing-redesign .hero-title span { display:block; }
.landing-redesign .hero-subtitle { font-size:18px; max-width:410px; line-height:1.6; margin:0 0 26px; color:#d6d6d8; }
.landing-redesign .hero-cta { margin:0; }
.landing-redesign .download-btn { border-radius:5px; background:#171719; border:1px solid #ffffff55; box-shadow:none; padding:12px 20px; }
.landing-redesign .hero-right-section { height:auto; display:block; }
.landing-redesign .hero-right-section-inner { position:static; gap:0; }
.landing-redesign .hero-variant-card { border:0; border-top:1px solid #ffffff50; border-radius:0; background:transparent; padding:18px 0; max-height:none; }
.landing-redesign .hero-variant-title { font-size:16px; }
.landing-redesign .hero-feature-bar { border:0; border-top:1px solid #ffffff30; border-radius:0; background:transparent; box-shadow:none; padding:25px 0 0; margin:0; justify-content:space-between; }
.landing-redesign .hero-feature-item { gap:12px; }
.landing-redesign .hero-feature-icon { background:none; border:0; color:var(--orange); }
.landing-redesign .hero-feature-text { font-size:13px; text-align:left; }
.landing-redesign .scroll-indicator { bottom:20px; font-size:10px; letter-spacing:3px; text-transform:uppercase; }
.landing-redesign .tracker-sales-section { padding:90px 6%; background:#1b1b1e; }
.landing-redesign .tracker-sales-wrap { gap:32px; }
.landing-redesign .tracker-card { border:0; border-top:2px solid #f3953d; border-radius:0; padding:28px 8px 0; background:transparent; box-shadow:none; }
.landing-redesign .tracker-card-title { font-size:24px; letter-spacing:-.8px; }
.landing-redesign .tracker-card-button,.landing-redesign .btn-primary { border-radius:4px; box-shadow:none; }
.landing-redesign .app-preview-section { display:flex!important; padding:120px 6%!important; background:var(--ink)!important; }
.landing-redesign .app-preview-section h2,.landing-redesign .story-section h2,.landing-redesign #features h2 { font-size:clamp(36px,4.6vw,70px)!important; letter-spacing:-.05em; line-height:1.05!important; }
.landing-redesign .app-preview-section img { border-radius:0!important; }
.landing-redesign .story-section { padding:100px 6%; max-width:none; background:#1b1b1e; }
.landing-redesign .story-section > p { max-width:760px; margin:24px auto 55px; color:#b9b9be; }
.landing-redesign .story-grid { max-width:1300px; margin:auto; gap:36px; }
.landing-redesign .story-card { text-align:left; border:0; border-top:1px solid #ffffff30; border-radius:0; padding:28px 0; background:transparent; box-shadow:none; }
.landing-redesign .story-card h3 { font-size:23px; color:white; letter-spacing:-.6px; }
.landing-redesign .story-card p { color:#b9b9be; font-size:16px; }
.landing-redesign .hero-navigation { height:auto; min-height:650px; border-radius:0; margin:0; }
.landing-redesign .hero-navigation h2 { font-size:clamp(42px,5.8vw,84px); letter-spacing:-.055em; line-height:1.02; }
.landing-redesign #features { background:var(--ink)!important; padding:110px 0 0!important; counter-reset:chapter 1; }
.landing-redesign .feature-section { position:relative; min-height:650px; padding:85px 7%; margin:0; gap:10%; border-top:1px solid #ffffff19; counter-increment:chapter; background:radial-gradient(ellipse at 25% 50%,#2e2922 0,transparent 55%)!important; }
.landing-redesign .feature-section.reverse { background:radial-gradient(ellipse at 75% 50%,#26282c 0,transparent 55%)!important; }
.landing-redesign .feature-content { min-width:0; }
.landing-redesign .feature-content::before { content:counter(chapter,decimal-leading-zero) ' /'; display:block; color:var(--orange); font-size:14px; letter-spacing:3px; margin-bottom:32px; }
.landing-redesign .feature-content li { font-size:clamp(19px,2.1vw,30px); line-height:1.35; letter-spacing:-.025em; padding-left:1.4em; margin:20px 0; }
.landing-redesign .feature-section > .feature-image { max-width:45%; max-height:580px; object-fit:contain; box-shadow:none; }
.landing-redesign .feature-multi-image { max-width:48%; min-width:0; }
.landing-redesign .feature-section.collective { flex-direction:column; }
.landing-redesign .feature-section.collective > .feature-image { max-width:100%; }
.landing-redesign .video-section { background:#1b1b1e; padding:90px 6%; }
.landing-redesign .reveal { opacity:0; translate:0 36px; transition:opacity .8s ease,translate .8s cubic-bezier(.2,.7,.2,1); }
.landing-redesign .reveal.is-visible { opacity:1; translate:0 0; }
.landing-redesign a { transition:background .2s, color .2s, transform .2s; }
.landing-redesign a:focus-visible,.landing-redesign button:focus-visible { outline:2px solid var(--orange); outline-offset:5px; }
@keyframes landscape-enter { from { transform:scale(1.06); } to { transform:scale(1); } }
@media(min-width:901px) { .landing-redesign .hero-left-section { animation:land-copy .9s ease-out both; } @keyframes land-copy { from { opacity:0; transform:translateY(25px); } to { opacity:1; transform:none; } } }
@media(max-width:900px) {
 .landing-redesign .hero-fullscreen { min-height:850px; height:auto; max-height:none; }
 .landing-redesign .hero-content { padding:135px 6% 70px; }
 .landing-redesign .hero-main-wrapper { grid-template-columns:1fr; gap:24px; padding-bottom:30px; }
 .landing-redesign .hero-title { font-size:clamp(44px,8.7vw,72px); }
 .landing-redesign .hero-right-section-inner { flex-direction:row; gap:25px; }
 .landing-redesign .hero-variant-card { flex:1; }
 .landing-redesign .hero-feature-bar { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
 .landing-redesign .tracker-sales-wrap { grid-template-columns:1fr; }
 .landing-redesign .tracker-card { padding:28px 0; }
 .landing-redesign .app-preview-section > div { flex-direction:column; gap:40px!important; }
 .landing-redesign .app-preview-section { padding:75px 6%!important; }
 .landing-redesign .story-grid { grid-template-columns:repeat(2,1fr); }
 .landing-redesign .feature-section,.landing-redesign .feature-section.reverse { flex-direction:column; min-height:0; padding:65px 7%; gap:35px; }
 .landing-redesign .feature-section > .feature-image { max-width:85%; max-height:480px; }
 .landing-redesign .feature-multi-image { max-width:100%; width:100%; height:520px; flex:auto; }
 .landing-redesign .feature-content { width:100%; }
 .landing-redesign .hero-navigation { min-height:600px; }
}
@media(max-width:520px) {
 .landing-redesign .header { padding:15px 6%; }
 .landing-redesign .hero-title { font-size:clamp(37px,9.4vw,49px); }
 .landing-redesign .hero-subtitle { font-size:16px; }
 .landing-redesign .hero-variant-icon { display:none; }
 .landing-redesign .hero-variant-subtitle { font-size:11px; }
 .landing-redesign .hero-feature-item { flex-direction:column; align-items:flex-start; gap:0; }
 .landing-redesign .hero-feature-text { font-size:11px; }
 .landing-redesign .story-grid { grid-template-columns:1fr; gap:8px; }
 .landing-redesign .story-section { padding:65px 6%; }
 .landing-redesign .feature-multi-image { height:440px; }
 .landing-redesign .video-title { font-size:34px!important; }
}
@media(prefers-reduced-motion:reduce) {
 .landing-redesign *, .landing-redesign *::before, .landing-redesign *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
 .landing-redesign .reveal { opacity:1; translate:none; }
}
.landing-redesign .hero-title .accent { font-size:inherit; line-height:inherit; margin-top:0; }
.landing-redesign .hero-right-section { position:relative; bottom:auto; right:auto; width:auto; }
.landing-redesign .hero-right-section-inner { max-width:none; width:100%; }
.landing-redesign .hero-fullscreen { padding-top:0; }
.landing-redesign .hero-left-section { text-align:left; }
.landing-redesign .download-btn-primary { background:var(--orange); color:#141416; }
.landing-redesign .closing-cta { background:#202023!important; padding:100px 6%!important; }
.landing-redesign .closing-cta h2,.landing-redesign .rider-faq h2 { font-size:clamp(34px,5vw,68px)!important; letter-spacing:-.05em; }
.landing-redesign .closing-cta p { font-size:18px!important; }
.landing-redesign .rider-faq { padding:0 6%!important; }
.landing-redesign .rider-faq details { border-radius:0!important; border:0!important; border-top:1px solid #ffffff30!important; background:transparent!important; }
@media(max-width:900px) { .landing-redesign .hero-content { min-height:0; } .landing-redesign .hero-main-wrapper { flex:none; } }

/* A scroll-drawn route connects each feature chapter. */
.landing-redesign .hero-fullscreen > .hero-navigation-background { opacity:1; }
.landing-redesign .hero-fullscreen > .hero-navigation-overlay {
  background:linear-gradient(90deg,rgba(13,14,16,.55),rgba(13,14,16,.14) 58%,transparent),linear-gradient(0deg,#141416,transparent 24%);
}
.landing-redesign .hero-title { text-shadow:0 2px 24px #0005; }
.landing-redesign #features { position:relative; isolation:isolate; }
.landing-redesign .feature-route { position:absolute; inset:0; width:100%; height:100%; z-index:2; pointer-events:none; overflow:visible; }
.landing-redesign .feature-route-track { fill:none; stroke:#f3953d; stroke-opacity:.13; stroke-width:2; }
.landing-redesign .feature-route-progress { fill:none; stroke:#ffa34f; stroke-width:2.5; stroke-linecap:round; filter:drop-shadow(0 0 5px #f3953dbb); }
.landing-redesign .feature-route-stop { fill:#171719; stroke:#7c5838; stroke-width:2; transition:fill .25s,stroke .25s; }
.landing-redesign .feature-route-stop.reached { fill:#ffa34f; stroke:#ffc28a; }
.landing-redesign .feature-route-head { fill:#ffe7cb; stroke:#f3953d; stroke-width:4; filter:drop-shadow(0 0 8px #f3953d); }
.landing-redesign .feature-section { scroll-margin-top:90px; }
@media(max-width:900px) {
 .landing-redesign .feature-route-progress { stroke-width:2; }
 .landing-redesign .hero-fullscreen > .hero-navigation-overlay { background:linear-gradient(90deg,#0d0e1055,#0d0e1010),linear-gradient(0deg,#141416,transparent 35%); }
}

/* Reserve a fixed marker column so wrapped feature text stays aligned. */
.landing-redesign .feature-content li::before { width:.8em; font-size:1.1em; line-height:1.35; top:0; }
