:root{--ink:#101210;--muted:#676c68;--green:#2dcc64;--paper:#f5f7f4;--black:#080a09;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}.nav-wrap{position:fixed;z-index:40;top:14px;left:0;width:100%;padding:0 16px}.nav{width:min(1120px,100%);height:62px;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;border:1px solid rgba(255,255,255,.72);border-radius:22px;background:rgba(248,250,247,.76);box-shadow:0 16px 48px rgba(12,20,14,.07);backdrop-filter:blur(24px) saturate(1.25)}.brand{font-size:15px;font-weight:760;letter-spacing:.19em}.nav-links{display:flex;gap:30px;font-size:13px;color:#535854}.nav-links a{transition:.2s}.nav-links a:hover{color:#000}.hero{position:relative;min-height:100svh;padding:150px 24px 100px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:radial-gradient(circle at 50% 48%,#fff 0,#f6f8f5 50%,#e9f1e9 100%)}.orb{position:absolute;border-radius:50%;filter:blur(24px);opacity:.62;animation:float 10s ease-in-out infinite alternate}.orb-a{width:480px;height:480px;left:-210px;bottom:-60px;background:#d2f8dc}.orb-b{width:390px;height:390px;right:-150px;top:80px;background:#e8f0cf;animation-delay:-4s}@keyframes float{to{transform:translate3d(35px,-25px,0) scale(1.08)}}.kicker{position:relative;margin:0 0 22px;font-size:12px;font-weight:690;letter-spacing:.13em;text-transform:uppercase;color:#6b716c}.green{color:var(--green)}h1,h2,h3,p{position:relative}.hero h1{max-width:1050px;margin:0;font-size:clamp(64px,10vw,148px);font-weight:720;line-height:.88;letter-spacing:-.075em}.hero h1 span,.philosophy h2 span,.e-copy h2 span{color:#7b807c}.lead{max-width:680px;margin:40px auto 32px;color:var(--muted);font-size:clamp(19px,2vw,26px);line-height:1.48;letter-spacing:-.025em}.round-link{display:inline-flex;align-items:center;gap:14px;padding:14px 21px;border-radius:999px;background:#111;color:#fff;font-size:14px;font-weight:650;transition:.25s}.round-link:hover{transform:translateY(-2px);background:#2a2d2a}.scroll-hint{position:absolute;bottom:28px;color:#8c918d;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.e-intro{min-height:1000px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;background:#090b0a;color:#fff}.e-copy{padding:130px max(48px,8vw);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.app-icon{width:88px;height:88px;border-radius:22px;box-shadow:0 22px 60px rgba(0,0,0,.28);object-fit:cover}.e-copy .app-icon{margin-bottom:48px}.e-copy h2,.privacy-copy h2,.gallery h2,.philosophy h2,.coming-soon h2{margin:0;font-size:clamp(55px,6.5vw,98px);font-weight:700;line-height:.96;letter-spacing:-.065em}.e-copy>p:not(.kicker){max-width:580px;margin:30px 0;color:#a5aaa6;font-size:clamp(19px,1.8vw,24px);line-height:1.52}.traits{display:flex;flex-wrap:wrap;gap:9px}.traits span{padding:9px 13px;border:1px solid #303531;border-radius:999px;color:#c4c9c5;font-size:12px}.phone-stage{position:relative;display:flex;justify-content:center;align-items:flex-end;padding:110px 30px 0;background:linear-gradient(145deg,#183321,#0c120e 72%)}.phone-glow{position:absolute;width:560px;height:560px;border-radius:50%;background:rgba(47,216,100,.2);filter:blur(80px)}.phone{position:relative;width:min(76%,440px);max-height:880px;object-fit:cover;object-position:top;border-radius:58px 58px 0 0;box-shadow:0 50px 110px rgba(0,0,0,.58);transform:translateY(5%);transition:transform 1s cubic-bezier(.2,.8,.2,1)}.e-intro.in-view .phone{transform:translateY(0)}.story{height:300vh;background:#edf2ed}.story-sticky{position:sticky;top:0;height:100vh;display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.story-copy{position:relative}.story-step{position:absolute;inset:0;padding:14vh 7vw;display:flex;flex-direction:column;justify-content:center;opacity:0;transform:translateY(40px);transition:opacity .65s,transform .65s;pointer-events:none}.story-step.active{opacity:1;transform:none}.story-step h3{margin:0;max-width:650px;font-size:clamp(48px,6vw,88px);line-height:.97;letter-spacing:-.065em}.story-step>p:last-child{max-width:520px;margin-top:27px;color:var(--muted);font-size:20px;line-height:1.55}.device-deck{position:relative;display:grid;place-items:end center;padding-top:10vh;background:linear-gradient(145deg,#dcebdd,#f7faf7)}.device-screen{position:absolute;bottom:-9%;width:min(62%,410px);border-radius:52px;box-shadow:0 45px 95px rgba(22,42,28,.2);opacity:0;transform:translateY(60px) scale(.96);transition:opacity .7s,transform .8s cubic-bezier(.2,.8,.2,1)}.device-screen.visible{opacity:1;transform:none}.privacy-panel{min-height:900px;padding:100px max(28px,8vw);display:grid;grid-template-columns:1fr 1fr;align-items:center;background:#070908;color:white;overflow:hidden}.privacy-copy>p:last-child{max-width:580px;color:#9ca19d;font-size:21px;line-height:1.55}.privacy-rings{display:grid;place-items:center}.privacy-rings>div,.privacy-rings>div>div{display:grid;place-items:center;border:1px solid rgba(59,224,111,.28);border-radius:50%}.privacy-rings>div{width:min(42vw,560px);aspect-ratio:1;box-shadow:0 0 120px rgba(45,204,100,.12)}.privacy-rings>div>div{width:66%;aspect-ratio:1}.privacy-rings span{display:grid;place-items:center;width:54%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 30%,#3de075,#168b3d);font-size:clamp(20px,3vw,38px);font-weight:700;box-shadow:0 0 70px rgba(45,204,100,.28)}.gallery{padding:130px 0;background:#f8faf7;overflow:hidden}.gallery-heading{padding:0 7vw 65px}.gallery-track{display:flex;gap:28px;padding:0 7vw;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.gallery-track::-webkit-scrollbar{display:none}.gallery figure{flex:0 0 min(430px,76vw);margin:0;scroll-snap-align:center}.gallery figure img{display:block;width:100%;border-radius:42px;box-shadow:0 28px 70px rgba(22,31,24,.15)}.gallery figcaption{padding:20px 4px;color:#4f5550;font-size:17px;font-weight:600}.philosophy{min-height:840px;padding:120px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(150deg,#eef4ea,#fafbf9)}.philosophy>p:last-child{max-width:690px;margin:35px auto 0;color:var(--muted);font-size:22px;line-height:1.55}.coming-soon{min-height:760px;padding:110px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#090b0a;color:#fff}.coming-soon .app-icon{margin-bottom:38px}.coming-soon>p:not(.kicker){margin:25px 0;color:#9ca19d;font-size:20px}.store-placeholder{margin-top:12px;padding:13px 18px;border:1px solid #343936;border-radius:999px;color:#d4d8d4;font-size:13px}footer{padding:70px max(24px,7vw);display:grid;grid-template-columns:1fr auto;gap:34px;background:#050706;color:#fff}footer p,footer small{color:#7f8580}footer nav{display:flex;gap:25px;font-size:13px}footer small{grid-column:1/-1;font-size:11px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.8,.2,1)}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}@media(max-width:780px){.nav{height:57px;padding:0 18px}.nav-links{gap:17px}.nav-links a:nth-child(2){display:none}.hero{min-height:850px}.hero h1{font-size:clamp(59px,19vw,90px)}.lead{font-size:18px}.e-intro{grid-template-columns:1fr}.e-copy{padding:100px 28px 70px}.phone-stage{min-height:700px;padding-top:80px}.phone{width:min(83%,390px)}.story{height:330vh}.story-sticky{grid-template-columns:1fr;grid-template-rows:47% 53%}.story-step{padding:90px 28px 20px;justify-content:flex-end}.story-step h3{font-size:43px}.story-step>p:last-child{font-size:16px}.device-deck{padding-top:30px}.device-screen{width:min(68%,330px);bottom:-17%}.privacy-panel{grid-template-columns:1fr;padding:100px 28px;gap:70px}.privacy-rings>div{width:min(82vw,440px)}.gallery{padding-top:100px}.gallery-heading{padding-left:28px}.philosophy h2{font-size:58px}footer{grid-template-columns:1fr}footer nav{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orb{animation:none}.reveal,.phone,.story-step,.device-screen{transition:none}}

/* Cinematic scroll-linked scene transitions */
.hero-scene{height:165svh;position:relative;background:#e9f1e9}
.hero-scene .hero{--hero-exit:0;position:sticky;top:0;height:100svh;min-height:0}
.hero>.kicker,.hero>h1,.hero>.lead,.hero>.round-link{translate:0 calc(var(--hero-exit) * -90px);filter:blur(calc(var(--hero-exit) * 7px));opacity:calc(1 - var(--hero-exit));will-change:translate,filter,opacity}
.hero>.reveal.visible{opacity:calc(1 - var(--hero-exit))}
.hero .orb-a{translate:calc(var(--hero-exit) * -100px) calc(var(--hero-exit) * 80px)}
.hero .orb-b{translate:calc(var(--hero-exit) * 120px) calc(var(--hero-exit) * -50px)}
.e-intro{--e-progress:0;position:relative;z-index:2;margin-top:-58px;border-radius:58px 58px 0 0;box-shadow:0 -30px 90px rgba(14,31,18,.18)}
.e-intro .phone{transform:translateY(calc(14% - var(--e-progress) * 14%)) rotateX(calc((1 - var(--e-progress)) * 8deg)) scale(calc(.92 + var(--e-progress) * .08));transform-origin:bottom center;transition:none;will-change:transform}
.e-intro .e-copy{transform:translateX(calc((1 - var(--e-progress)) * -55px));opacity:calc(.25 + var(--e-progress) * .75);will-change:transform,opacity}
.story{position:relative;z-index:3;box-shadow:0 -24px 70px rgba(0,0,0,.08)}
.privacy-panel{position:relative;z-index:4;margin-top:-46px;border-radius:46px 46px 0 0;box-shadow:0 -30px 90px rgba(0,0,0,.2)}
.gallery{position:relative;z-index:5}.gallery figure{translate:0 var(--card-shift,0);will-change:translate}
@media(max-width:780px){.hero-scene{height:150svh}.hero-scene .hero{height:100svh}.e-intro{margin-top:-42px;border-radius:42px 42px 0 0}.privacy-panel{margin-top:-32px;border-radius:32px 32px 0 0}}

/* Genuine in-app dark-mode chapter, driven by scroll progress. */
.appearance-story{--appearance-progress:0;position:relative;height:230vh;background:#eef2ed;color:#111;z-index:3}
.appearance-sticky{position:sticky;top:0;height:100vh;display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;overflow:hidden;padding:8vh 6vw;background:rgb(calc(238 - var(--appearance-progress) * 230),calc(242 - var(--appearance-progress) * 233),calc(237 - var(--appearance-progress) * 228));color:rgb(calc(17 + var(--appearance-progress) * 238),calc(17 + var(--appearance-progress) * 238),calc(17 + var(--appearance-progress) * 238))}
.appearance-copy{position:relative;z-index:2;max-width:610px;transform:translateY(calc((.5 - var(--appearance-progress)) * 34px))}
.appearance-copy h2{margin:0;font-size:clamp(58px,7vw,108px);font-weight:710;line-height:.92;letter-spacing:-.07em}
.appearance-copy h2 span{color:rgb(calc(110 + var(--appearance-progress) * 45),calc(117 + var(--appearance-progress) * 42),calc(111 + var(--appearance-progress) * 46))}
.appearance-copy>p:last-child{max-width:520px;margin:30px 0 0;color:rgb(calc(92 + var(--appearance-progress) * 58),calc(98 + var(--appearance-progress) * 55),calc(93 + var(--appearance-progress) * 58));font-size:20px;line-height:1.55}
.dark-device-stage{position:relative;height:100%;display:grid;place-items:center;perspective:1500px}
.dark-glow{position:absolute;width:min(50vw,620px);aspect-ratio:1;border-radius:50%;background:rgba(45,204,100,calc(.08 + var(--appearance-progress) * .17));filter:blur(82px)}
.dark-device{position:absolute;width:min(43%,390px);border-radius:52px;box-shadow:0 45px 100px rgba(0,0,0,calc(.15 + var(--appearance-progress) * .5));will-change:transform,opacity}
.dark-device-record{transform:translateX(calc(-32% + var(--appearance-progress) * -15%)) translateY(calc(8% - var(--appearance-progress) * 8%)) rotateY(calc(8deg - var(--appearance-progress) * 8deg));opacity:calc(1 - var(--appearance-progress) * .72)}
.dark-device-reports{transform:translateX(calc(32% - var(--appearance-progress) * 15%)) translateY(calc(15% - var(--appearance-progress) * 15%)) rotateY(calc(-8deg + var(--appearance-progress) * 8deg));opacity:calc(.38 + var(--appearance-progress) * .62)}
.dark-gallery-card img{background:#000}
@media(max-width:780px){.appearance-story{height:210vh}.appearance-sticky{grid-template-columns:1fr;grid-template-rows:42% 58%;padding:82px 24px 0}.appearance-copy{align-self:end}.appearance-copy h2{font-size:50px}.appearance-copy>p:last-child{font-size:16px;margin-top:18px}.dark-device-stage{align-items:end}.dark-device{width:min(47%,255px);border-radius:34px}.dark-device-record{transform:translateX(-42%) translateY(8%)}.dark-device-reports{transform:translateX(42%) translateY(calc(14% - var(--appearance-progress) * 10%))}}
@media(prefers-reduced-motion:reduce){.appearance-story{height:auto}.appearance-sticky{position:relative;min-height:900px}.appearance-copy,.dark-device{transform:none}}
.coming-soon h2{word-spacing:.09em}

/* Gentle full-chapter snapping for the cinematic homepage. Long chapters remain
   freely scrollable between their leading and trailing snap points. */
@media (min-width: 900px) and (prefers-reduced-motion: no-preference) {
  html:has(.home-page) {
    scroll-snap-type: y mandatory;
    scroll-padding-top: 0;
  }

  .home-page .hero-scene,
  .home-page .e-intro,
  .home-page .story,
  .home-page .appearance-story,
  .home-page .privacy-panel,
  .home-page .gallery,
  .home-page .philosophy,
  .home-page .coming-soon,
  .home-page footer {
    scroll-snap-align: start;
    scroll-snap-stop: normal;
  }
}

/* Interior pages */
.subpage{background:#f5f7f4}.subpage .nav a[aria-current=page],.subpage footer a[aria-current=page]{color:var(--green)}
.page-hero{min-height:78svh;padding:180px max(28px,9vw) 100px;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 78% 28%,#dff7e4 0,transparent 34%),linear-gradient(145deg,#fafcf9,#edf3ed)}
.page-hero h1{max-width:1100px;margin:0;font-size:clamp(66px,10vw,142px);font-weight:720;line-height:.88;letter-spacing:-.075em}.page-hero h1 span{color:#7b807c}.page-hero>p:last-child{max-width:670px;margin:38px 0 0;color:var(--muted);font-size:clamp(19px,2vw,25px);line-height:1.5}
.page-content{padding:110px max(28px,9vw) 150px}.statement-card{padding:clamp(38px,6vw,80px);border-radius:42px;background:#090b0a;color:white}.statement-card h2,.contact-panel h2{margin:0;font-size:clamp(44px,6vw,82px);line-height:.98;letter-spacing:-.055em}.statement-card>p:last-child{max-width:800px;margin:34px 0 0;color:#a7aca8;font-size:20px;line-height:1.6}
.value-grid,.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:26px 0 58px}.value-grid article,.support-grid article{padding:34px;border:1px solid #dfe5df;border-radius:28px;background:white}.value-grid span{color:var(--green);font-size:12px;font-weight:750;letter-spacing:.12em}.value-grid h3,.support-grid h2{margin:34px 0 10px;font-size:25px;letter-spacing:-.035em}.value-grid p,.support-grid p{margin:0;color:var(--muted);font-size:16px;line-height:1.55}.support-grid{grid-template-columns:repeat(2,1fr);margin-top:0}.support-grid h2{margin-top:0}.support-grid a,.legal-content a{color:#168e40;text-decoration:underline;text-underline-offset:3px}
.legal-hero{min-height:70svh}.legal-content{width:min(840px,calc(100% - 48px));margin:0 auto;padding:110px 0 150px}.legal-lead{margin:0 0 80px;font-size:clamp(24px,3vw,36px);line-height:1.4;letter-spacing:-.03em}.legal-content article{padding:38px 0;border-top:1px solid #d8ded8}.legal-content h2{margin:0 0 16px;font-size:25px}.legal-content article p{margin:0;color:#575d58;font-size:17px;line-height:1.7}
.contact-panel{margin-top:58px;padding:55px;border-radius:34px;background:#e5f6e8;display:flex;align-items:center;justify-content:space-between;gap:35px}.contact-panel h2{font-size:clamp(38px,5vw,64px)}.contact-panel p:last-child{color:var(--muted);font-size:17px}.email-card{padding:clamp(38px,7vw,78px);border-radius:42px;background:#090b0a;color:white;display:flex;align-items:center;justify-content:space-between;gap:28px;transition:.25s}.email-card:hover{transform:translateY(-4px);box-shadow:0 30px 70px rgba(5,12,7,.18)}.email-card h2{margin:0;font-size:clamp(30px,5vw,68px);letter-spacing:-.05em;overflow-wrap:anywhere}.email-card p:last-child{color:#a7aca8;font-size:17px}.email-card>span{font-size:44px;color:var(--green)}.response-note{max-width:780px;margin:36px 0 0;color:var(--muted);font-size:15px;line-height:1.6}
@media(max-width:780px){.page-hero{min-height:680px;padding:140px 28px 80px}.page-hero h1{font-size:58px}.page-content{padding:70px 24px 100px}.value-grid,.support-grid{grid-template-columns:1fr}.contact-panel{padding:36px 28px;align-items:flex-start;flex-direction:column}.email-card{align-items:flex-start}.email-card>span{font-size:30px}.legal-content{padding:75px 0 100px}}

/* C: Commute */
.c-mark{width:clamp(180px,25vw,360px);aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:28%;background:#080a09;color:white;font-size:clamp(110px,18vw,250px);font-weight:850;letter-spacing:-.13em;line-height:1;box-shadow:0 40px 100px rgba(0,0,0,.28)}.c-mark span,.mini-c-mark span{color:#32d267;letter-spacing:0}
.c-teaser{min-height:880px;padding:110px max(28px,9vw);display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center;background:#070907;color:white}.c-teaser h2,.c-principle h2{margin:0;font-size:clamp(58px,7vw,106px);line-height:.92;letter-spacing:-.065em}.c-teaser h2 span,.c-principle h2 span{color:#838984}.c-teaser>div:last-child>p:not(.kicker){max-width:610px;margin:30px 0;color:#a2a7a3;font-size:21px;line-height:1.55}.c-link{background:#f5f7f4;color:#090b0a}
.c-page{background:#070907}.c-page .nav{background:rgba(18,21,19,.78);border-color:rgba(255,255,255,.12);color:white}.c-page .nav-links{color:#b5bab6}.c-page .nav-links a:hover{color:white}.c-hero{min-height:100svh;padding:150px max(28px,9vw) 100px;display:grid;grid-template-columns:1fr .75fr;align-content:center;column-gap:9vw;background:radial-gradient(circle at 72% 44%,rgba(50,210,103,.18),transparent 32%),#070907;color:white}.hero-c-mark{grid-column:2;grid-row:1/5;justify-self:center}.c-hero>.kicker,.c-hero>h1,.c-hero>p:last-child{grid-column:1}.c-hero h1{margin:0;font-size:clamp(78px,11vw,160px);line-height:.78;letter-spacing:-.08em}.c-hero h1 span{color:#32d267}.c-hero>p:last-child{max-width:620px;color:#a2a7a3;font-size:22px;line-height:1.55}
.c-modes{padding:120px max(28px,9vw);display:grid;grid-template-columns:1fr 1fr;gap:24px;background:#f1f5f0}.c-modes article{min-height:520px;padding:clamp(35px,5vw,68px);border-radius:40px;background:white;display:flex;flex-direction:column;justify-content:flex-end}.c-modes h2{margin:0;font-size:clamp(43px,5vw,72px);line-height:.98;letter-spacing:-.055em}.c-modes article>p:last-child{max-width:560px;color:var(--muted);font-size:18px;line-height:1.55}.c-modes .future-mode{grid-column:1/-1;min-height:420px;background:linear-gradient(135deg,#163520,#080a09);color:white}.c-modes .future-mode>p:last-child{color:#a5aaa6}.c-principle{min-height:820px;padding:120px max(28px,9vw);display:flex;flex-direction:column;justify-content:center;background:#070907;color:white}.c-principle .traits{margin-top:48px}.small-c-mark{width:112px;font-size:72px;border-radius:28px;margin-bottom:38px}.product-support-card{margin:24px 0 58px;padding:24px 28px;border-radius:26px;background:#090b0a;color:white;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px}.mini-c-mark{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:#181b19;font-size:31px;font-weight:850}.product-support-card span:nth-child(2){display:flex;flex-direction:column;gap:5px}.product-support-card small{color:#9ca19d}.product-support-card strong{font-size:25px;color:#32d267}
@media(max-width:780px){.nav-links{gap:13px}.c-teaser{grid-template-columns:1fr;min-height:920px;gap:65px}.c-mark{width:210px;font-size:145px}.c-teaser h2,.c-principle h2{font-size:52px}.c-hero{grid-template-columns:1fr;padding:130px 28px 90px}.hero-c-mark{grid-column:1;grid-row:auto;margin:0 0 65px}.c-hero>.kicker,.c-hero>h1,.c-hero>p:last-child{grid-column:1}.c-hero h1{font-size:78px}.c-modes{grid-template-columns:1fr;padding:80px 24px}.c-modes .future-mode{grid-column:auto}.c-modes article{min-height:440px}.small-c-mark{width:100px;font-size:68px}.product-support-card{padding:20px}}
