:root {
  --ink: #15191d;
  --muted: #5f6872;
  --line: #d9dee4;
  --panel: #ffffff;
  --soft: #f4f6f8;
  --route: #16bda0;
  --route-dark: #087b69;
  --sky: #2f80d9;
  --caution: #f4a022;
  --danger: #c93f45;
  --max: 1120px;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--ink);
  background: var(--soft);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.65;
}

a {
  color: var(--route-dark);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

a:hover {
  color: #055e51;
}

a:focus-visible,
button:focus-visible,
summary:focus-visible {
  outline: 3px solid var(--sky);
  outline-offset: 3px;
}

img {
  display: block;
  max-width: 100%;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  border-bottom: 1px solid rgba(217, 222, 228, 0.9);
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(14px);
}

.header-inner {
  width: min(calc(100% - 32px), var(--max));
  min-height: 70px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  color: var(--ink);
  font-weight: 750;
  line-height: 1.2;
  text-decoration: none;
}

.brand img {
  width: 42px;
  height: 42px;
  border-radius: 8px;
}

.site-nav {
  display: flex;
  align-items: center;
  gap: 22px;
}

.site-nav a {
  color: var(--ink);
  font-size: 0.94rem;
  font-weight: 650;
  text-decoration: none;
}

.site-nav a[aria-current="page"] {
  color: var(--route-dark);
}

.page-shell {
  width: min(calc(100% - 32px), var(--max));
  margin: 0 auto;
}

.intro {
  padding: 72px 0 54px;
}

.eyebrow {
  margin: 0 0 10px;
  color: var(--route-dark);
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

h1,
h2,
h3 {
  margin-top: 0;
  line-height: 1.18;
  letter-spacing: 0;
}

h1 {
  max-width: 820px;
  margin-bottom: 18px;
  font-size: 3.5rem;
}

h2 {
  margin-bottom: 16px;
  font-size: 2rem;
}

h3 {
  margin-bottom: 8px;
  font-size: 1.08rem;
}

.lede {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
  font-size: 1.14rem;
}

.actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.button {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border: 1px solid var(--route-dark);
  border-radius: 8px;
  background: var(--route);
  color: #071a17;
  font-weight: 750;
  text-decoration: none;
}

.button:hover {
  background: #23cdb0;
  color: #071a17;
}

.button.secondary {
  border-color: var(--line);
  background: var(--panel);
  color: var(--ink);
}

.band {
  margin-inline: calc(50% - 50vw);
  padding: 56px max(16px, calc((100vw - var(--max)) / 2));
  border-top: 1px solid var(--line);
  background: var(--panel);
}

.band.soft {
  background: var(--soft);
}

.cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.card {
  min-height: 176px;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
}

.card p {
  margin: 0 0 16px;
  color: var(--muted);
}

.card a {
  font-weight: 750;
}

.product-view {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  align-items: center;
  gap: 56px;
}

.product-view img {
  width: 260px;
  margin-inline: auto;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: 0 18px 48px rgba(21, 25, 29, 0.16);
}

.plain-list {
  margin: 20px 0 0;
  padding: 0;
  list-style: none;
}

.plain-list li {
  position: relative;
  padding: 12px 0 12px 30px;
  border-bottom: 1px solid var(--line);
}

.plain-list li::before {
  position: absolute;
  left: 0;
  color: var(--route-dark);
  content: "\2713";
  font-weight: 900;
}

.legal-wrap {
  display: grid;
  grid-template-columns: 235px minmax(0, 760px);
  justify-content: space-between;
  gap: 56px;
  padding-bottom: 80px;
}

.toc {
  position: sticky;
  top: 96px;
  align-self: start;
  padding: 18px;
  border-left: 3px solid var(--route);
  background: var(--panel);
}

.toc strong {
  display: block;
  margin-bottom: 8px;
}

.toc a {
  display: block;
  padding: 4px 0;
  color: var(--muted);
  font-size: 0.9rem;
  text-decoration: none;
}

.legal-content section {
  scroll-margin-top: 96px;
  padding: 28px 0;
  border-top: 1px solid var(--line);
}

.legal-content section:first-child {
  padding-top: 0;
  border-top: 0;
}

.legal-content p,
.legal-content li {
  color: #343b42;
}

.legal-content table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.94rem;
}

.legal-content th,
.legal-content td {
  padding: 13px 12px;
  border: 1px solid var(--line);
  text-align: left;
  vertical-align: top;
}

.legal-content th {
  background: #eaf7f4;
}

.notice {
  margin: 24px 0;
  padding: 16px 18px;
  border-left: 4px solid var(--caution);
  background: #fff8e9;
}

.notice.danger {
  border-left-color: var(--danger);
  background: #fff1f2;
}

.faq {
  border-top: 1px solid var(--line);
}

.faq details {
  border-bottom: 1px solid var(--line);
  background: var(--panel);
}

.faq summary {
  padding: 18px 4px;
  cursor: pointer;
  font-weight: 750;
}

.faq details p {
  max-width: 760px;
  margin: 0;
  padding: 0 4px 20px;
  color: var(--muted);
}

.meta {
  margin-top: 16px;
  color: var(--muted);
  font-size: 0.9rem;
}

.site-footer {
  border-top: 1px solid var(--line);
  background: #20262b;
  color: #e7edf1;
}

.footer-inner {
  width: min(calc(100% - 32px), var(--max));
  margin: 0 auto;
  padding: 38px 0;
  display: grid;
  grid-template-columns: minmax(220px, 1fr) 2fr;
  gap: 40px;
}

.footer-inner p {
  margin: 8px 0 0;
  color: #b9c3ca;
}

.footer-links {
  display: flex;
  flex-wrap: wrap;
  align-content: start;
  justify-content: flex-end;
  gap: 10px 22px;
}

.footer-links a {
  color: #e7edf1;
}

@media (max-width: 820px) {
  .header-inner {
    min-height: 64px;
  }

  .brand span {
    max-width: 190px;
    font-size: 0.9rem;
  }

  .site-nav a:not(:last-child) {
    display: none;
  }

  .intro {
    padding: 48px 0 40px;
  }

  h1 {
    font-size: 2.4rem;
  }

  h2 {
    font-size: 1.65rem;
  }

  .cards,
  .product-view,
  .legal-wrap,
  .footer-inner {
    grid-template-columns: 1fr;
  }

  .product-view {
    gap: 32px;
  }

  .cards {
    gap: 10px;
  }

  .card {
    min-height: 0;
  }

  .toc {
    position: static;
  }

  .legal-content table,
  .legal-content thead,
  .legal-content tbody,
  .legal-content th,
  .legal-content td,
  .legal-content tr {
    display: block;
  }

  .legal-content thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
  }

  .legal-content td {
    border-top: 0;
  }

  .legal-content td:first-child {
    border-top: 1px solid var(--line);
    background: #eaf7f4;
    font-weight: 750;
  }

  .footer-links {
    justify-content: flex-start;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

/* Product homepage */
.home-page{--forest:#073f3a;--forest-2:#0c5149;--mint:#1bc2a4;--cream:#f7f4ec;--lime:#d9f3a8;overflow-x:hidden;background:var(--cream);color:#102622;line-height:1.5}
.home-page .home-header{position:absolute;width:100%;border:0;background:transparent;backdrop-filter:none}
.home-page .header-inner{width:min(calc(100% - 48px),1240px);min-height:94px}
.home-page .brand{color:var(--forest);font-size:.98rem;letter-spacing:-.015em}.home-page .brand small{color:#54716c;font-size:.78rem;font-weight:650}.home-page .brand img{width:46px;height:46px;border-radius:12px;box-shadow:0 5px 18px #073f3a1f}
.home-nav{gap:32px}.home-page .home-nav a{color:var(--forest);font-size:.88rem}.home-page .home-nav .nav-cta{padding:11px 17px;border:1px solid #073f3a33;border-radius:999px;background:#ffffff75}
.home-hero{position:relative;min-height:790px;padding:150px max(24px,calc((100vw - 1240px)/2)) 90px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(430px,.85fr);align-items:center;gap:70px;overflow:hidden;background:radial-gradient(circle at 77% 37%,#d9f3a8d9 0 12%,transparent 38%),linear-gradient(122deg,#f8f5ed 0 54%,#e7f1d6 100%)}
.home-hero:before{position:absolute;top:118px;right:-100px;width:470px;height:470px;border:1px solid #073f3a1a;border-radius:50%;content:""}.hero-copy{position:relative;z-index:2;max-width:660px}
.home-kicker{display:flex;align-items:center;gap:10px;margin:0 0 20px;color:#49716a;font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.home-kicker span{width:25px;height:2px;background:var(--mint)}.home-kicker.centred{justify-content:center}
.home-hero h1{max-width:none;margin:0 0 24px;color:var(--forest);font-size:clamp(3.9rem,6vw,6.4rem);font-weight:760;letter-spacing:-.07em;line-height:.91}.home-hero h1 em{color:var(--mint);font-family:Georgia,serif;font-weight:500;letter-spacing:-.055em}.hero-lede{max-width:580px;margin:0;color:#49635e;font-size:clamp(1.08rem,1.6vw,1.28rem);line-height:1.7}
.hero-actions{display:flex;align-items:center;gap:25px;margin-top:34px}.hero-offer{display:flex;align-items:flex-start;flex-direction:column;gap:10px}.hero-offer small{color:#49635e;font-size:.88rem;font-weight:700}.home-button{display:inline-flex;min-height:54px;align-items:center;gap:38px;padding:12px 20px 12px 22px;border-radius:7px;background:var(--forest);color:#fff;font-size:.92rem;font-weight:750;text-decoration:none;box-shadow:0 12px 28px #073f3a26}.home-button span{color:var(--mint);font-size:1.2rem}.home-button:hover{background:var(--forest-2);color:#fff}.text-link{color:#59706c;font-size:.87rem;text-decoration:none}.text-link strong{color:var(--forest);text-decoration:underline;text-underline-offset:4px}
.trust-row{display:flex;flex-wrap:wrap;gap:18px 28px;margin-top:44px;padding-top:23px;border-top:1px solid #073f3a1c;color:#49635e;font-size:.78rem;font-weight:650}.trust-row b{display:inline-grid;width:19px;height:19px;margin-right:6px;place-items:center;border-radius:50%;background:#1bc2a424;color:#0a987f}
.hero-visual{position:relative;z-index:2;height:600px}.route-halo{position:absolute;inset:2% -4% -6% 7%;border-radius:50% 46% 48% 50%;background:linear-gradient(145deg,#d9f3a8e6,#1bc2a421);transform:rotate(-8deg)}
.phone{position:absolute;overflow:hidden;padding:9px;border:1px solid #ffffff8c;border-radius:38px;background:#132e2a;box-shadow:0 38px 70px #073f3a45,inset 0 0 0 1px #ffffff29}.phone-main{top:2px;left:21%;width:300px;transform:rotate(4deg)}.phone-screen{overflow:hidden;aspect-ratio:1284/2778;border-radius:30px;background:#edf3e5}.phone-screen img{width:100%;height:100%;object-fit:cover}.phone:after{position:absolute;top:17px;left:50%;width:72px;height:18px;border-radius:20px;background:#132e2a;content:"";transform:translateX(-50%)}
.floating-card{position:absolute;display:flex;align-items:center;gap:12px;min-width:174px;padding:13px 16px;border:1px solid #073f3a14;border-radius:12px;background:#fffffff0;box-shadow:0 18px 45px #073f3a29;backdrop-filter:blur(9px)}.floating-card small,.floating-card strong{display:block}.floating-card small{color:#78908b;font-size:.65rem}.floating-card strong{color:var(--forest);font-size:.84rem}.vehicle-card{top:116px;left:0}.traffic-card{right:-7px;bottom:125px}.float-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:9px;background:#e1f7f1}.float-icon svg{width:24px;fill:none;stroke:#0ca88d;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.pulse{width:12px;height:12px;border:3px solid #cff2eb;border-radius:50%;background:var(--mint);box-shadow:0 0 0 5px #effaf7}
.confidence-strip{min-height:105px;padding:25px max(24px,calc((100vw - 1240px)/2));display:flex;align-items:center;justify-content:space-between;gap:35px;background:var(--forest);color:#fff}.confidence-strip p{margin:0;color:#a7c8c1;font-family:Georgia,serif;font-size:1.15rem;font-style:italic}.confidence-strip>div{display:flex;flex-wrap:wrap;gap:35px}.confidence-strip span{display:inline-flex;align-items:center;gap:9px;font-size:.82rem;font-weight:700}.confidence-strip svg{width:25px;fill:none;stroke:var(--mint);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.demo-section{padding:105px max(24px,calc((100vw - 1240px)/2));display:grid;grid-template-columns:minmax(300px,.72fr) minmax(420px,1.28fr);align-items:center;gap:70px;background:#eef4e5}.demo-copy h2{margin:0;color:var(--forest);font-size:clamp(2.5rem,4vw,4rem);letter-spacing:-.055em;line-height:1}.demo-copy>p:not(.home-kicker){margin:24px 0 30px;color:#5c706b;line-height:1.75}.demo-copy>small{display:block;margin-top:13px;color:#657873;font-size:.72rem}.demo-video-wrap{overflow:hidden;border:1px solid #073f3a1f;border-radius:18px;background:#052f2b;box-shadow:0 28px 65px #073f3a2b}.demo-video-wrap video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#052f2b}
.screen-showcase{padding:110px max(24px,calc((100vw - 1240px)/2)) 120px;background:#fffdfa}.screen-showcase-heading{display:grid;grid-template-columns:1fr .65fr;align-items:end;gap:70px;margin-bottom:52px}.screen-showcase-heading h2{max-width:700px;margin:0;color:var(--forest);font-size:clamp(2.6rem,4vw,4.1rem);letter-spacing:-.055em;line-height:1}.screen-showcase-heading>p{margin:0 0 5px;color:#62736f;font-size:.95rem;line-height:1.75}.screen-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.screen-grid figure{margin:0;overflow:hidden;border:1px solid #dfe5dc;border-radius:17px;background:#f3f6ef;box-shadow:0 16px 35px #073f3a12}.screen-grid img{width:100%;height:auto;background:#f3f6ef}.screen-grid figcaption{padding:18px 16px 20px}.screen-grid figcaption strong,.screen-grid figcaption span{display:block}.screen-grid figcaption strong{color:var(--forest);font-size:.88rem}.screen-grid figcaption span{margin-top:5px;color:#6c7f7a;font-size:.7rem;line-height:1.5}
.feature-intro{padding:110px max(24px,calc((100vw - 1240px)/2)) 120px;text-align:center;background:#fffdfa}.feature-intro>h2,.journey-heading h2,.availability h2{margin:0;color:var(--forest);font-size:clamp(2.6rem,4vw,4.1rem);letter-spacing:-.055em}.feature-intro>p:not(.home-kicker){margin:15px 0 50px;color:#71837f;font-family:Georgia,serif;font-size:1.1rem;font-style:italic}
.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;text-align:left}.feature-card{position:relative;overflow:hidden;min-height:350px;padding:36px;border:1px solid #e6e7df;border-radius:16px;background:#f5f5f0}.feature-card .number{display:inline-block;margin-bottom:38px;color:#91a49f;font-family:Georgia,serif;font-size:.83rem;font-style:italic}.feature-card h3{max-width:370px;margin-bottom:15px;color:var(--forest);font-size:1.65rem;letter-spacing:-.035em}.feature-card p{max-width:450px;margin:0;color:#62736f;font-size:.93rem;line-height:1.7}
.feature-primary{grid-column:1/-1;min-height:490px;padding:55px;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:70px;background:#edf5e2}.feature-primary .number{margin-bottom:60px}.feature-primary h3{font-size:2.3rem}.feature-primary ul{display:grid;gap:11px;margin:26px 0 0;padding:0;list-style:none;color:#4c6660;font-size:.86rem}.feature-primary li:before{margin-right:9px;color:var(--mint);content:"✓";font-weight:900}
.profile-demo{max-width:555px;margin-left:auto;padding:25px;border-radius:22px;background:#fff;box-shadow:0 20px 55px #073f3a1c;transform:rotate(1.4deg)}.demo-title{display:flex;justify-content:space-between;margin-bottom:18px;color:var(--forest);font-size:1.1rem;font-weight:800}.demo-title b{color:var(--mint);font-size:.78rem}.vehicle-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:17px;padding:6px;border-radius:12px;background:#f1f2f3;color:#73807e;font-size:.62rem;font-weight:750;text-align:center}.vehicle-tabs span{padding:13px 4px;border-radius:8px}.vehicle-tabs .active{background:var(--mint);color:#fff}.profile-demo dl{margin:0}.profile-demo dl div{padding:13px 6px;display:flex;justify-content:space-between;border-bottom:1px solid #e6e8e7}.profile-demo dl div:last-child{border:0}.profile-demo dt,.profile-demo dd{margin:0;color:#273b37;font-size:.83rem}.profile-demo dd{font-weight:700}.profile-demo dd small{color:#87938f;font-weight:500}
.compact-card{padding-right:45%}.mini-icon{position:absolute;right:40px;bottom:45px;width:150px;height:130px}.traffic-lines i{position:absolute;right:0;width:125px;height:16px;border-radius:20px;background:#bcd3cd;transform:rotate(-13deg)}.traffic-lines i:first-child{top:15px;width:94px;background:var(--mint)}.traffic-lines i:nth-child(2){top:54px}.traffic-lines i:nth-child(3){top:93px;width:72px;background:#ef9e2b}.dark-card{border-color:var(--forest);background:var(--forest)}.dark-card h3{color:#fff}.dark-card p,.dark-card .number{color:#a6c4be}.mini-route{position:absolute;right:35px;bottom:40px;width:150px;height:170px}.mini-route i{position:absolute;inset:2px 51px 15px 56px;border:solid var(--mint);border-width:0 0 0 9px;border-radius:50%;transform:rotate(12deg)}.mini-route i:after{position:absolute;bottom:-3px;left:-19px;width:28px;height:28px;border:6px solid #fff;border-radius:50%;background:var(--mint);content:""}.mini-route b{position:absolute;top:0;left:42px;width:38px;height:38px;border:8px solid var(--forest);border-radius:50%;background:#fff;box-shadow:0 0 0 2px var(--mint)}
.journey-section{padding:115px max(24px,calc((100vw - 1240px)/2));background:var(--cream)}.journey-heading{display:grid;grid-template-columns:1fr .7fr;align-items:end;gap:80px;margin-bottom:60px}.journey-heading>p{margin:0 0 7px;color:#62736f;font-size:.95rem;line-height:1.75}.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.journey-grid article{position:relative}.journey-grid .step{position:absolute;z-index:2;top:17px;left:17px;display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:#fff;color:var(--forest);font-family:Georgia,serif;font-size:.8rem;font-style:italic;box-shadow:0 5px 16px #073f3a1f}.journey-art{position:relative;height:310px;margin-bottom:26px;overflow:hidden;border-radius:14px;background:#dceec4}.journey-grid h3{margin:0 0 7px;color:var(--forest);font-size:1.25rem}.journey-grid article>p{margin:0;color:#74847f;font-size:.86rem}
.search-art{padding:70px 28px 20px;background:linear-gradient(160deg,#e4f5ce,#aedc86)}.search-art>span{position:absolute;top:71px;left:40px;z-index:2;color:#819676;font-size:1.6rem}.search-art>p{margin:0 0 18px;padding:15px 18px 15px 49px;border-radius:10px;background:#ffffffd6;color:#172a26;font-weight:700}.search-art i{display:block;margin-left:18px;padding:13px;border-bottom:1px solid #073f3a1a;background:#ffffffab;color:#49655f;font-size:.69rem;font-style:normal}.preview-art{background:linear-gradient(140deg,#c8eda5 0 33%,#ecf1e5 34% 39%,#b9df8f 40% 100%)}.map-line{position:absolute;top:-20px;left:50%;width:10px;height:250px;border-radius:20px;background:var(--mint);transform:rotate(-35deg);box-shadow:0 0 0 3px #fff}.preview-sheet{position:absolute;inset:auto 18px 18px;padding:20px;border-radius:11px;background:#f7fcf0f0}.preview-sheet b,.preview-sheet span{display:block}.preview-sheet b{color:#142923;font-size:.9rem}.preview-sheet span{color:#70836b;font-size:.65rem}.preview-sheet em{position:absolute;top:18px;right:17px;padding:8px 11px;border-radius:6px;background:var(--mint);color:#fff;font-size:.7rem;font-style:normal;font-weight:800}.drive-art{background:linear-gradient(160deg,#eceee8,#d8e6d2)}.turn{position:absolute;z-index:2;inset:24px 18px auto;padding:15px;display:flex;align-items:center;gap:12px;border-radius:11px;background:#fffffff0;color:var(--mint);font-size:2rem;font-weight:800}.turn span{color:#20322e;font-size:.7rem}.turn b{display:block;font-size:.88rem}.drive-line{position:absolute;top:95px;left:55%;width:12px;height:250px;border-radius:20px;background:var(--mint);transform:rotate(17deg);box-shadow:0 0 0 3px #fff}.drive-art>i{position:absolute;z-index:2;bottom:26px;left:24px;display:grid;width:52px;height:52px;place-items:center;border:6px solid #ef4646;border-radius:50%;background:#fff;color:#172a26;font-style:normal;font-weight:900}
.touring-quote{padding:105px max(24px,calc((100vw - 940px)/2));text-align:center;background:#e1f0c8}.quote-mark{height:55px;color:var(--mint);font-family:Georgia,serif;font-size:5.5rem;line-height:1}.touring-quote blockquote{margin:18px 0 26px;color:var(--forest);font-size:clamp(2.15rem,4vw,3.8rem);font-weight:750;letter-spacing:-.05em;line-height:1.12}.touring-quote blockquote em{font-family:Georgia,serif;font-weight:500}.touring-quote p{max-width:680px;margin:auto;color:#55716a;font-size:.93rem;line-height:1.75}
.home-faq{padding:105px max(24px,calc((100vw - 900px)/2));background:#fffdfa}.home-faq-heading{text-align:center}.home-faq-heading h2{margin:0 0 48px;color:var(--forest);font-size:clamp(2.6rem,4vw,4.1rem);letter-spacing:-.055em}.home-faq-list{border-color:#dfe5dc}.home-faq-list details{background:transparent;border-color:#dfe5dc}.home-faq-list summary{position:relative;padding:23px 44px 23px 5px;color:var(--forest);font-size:1.05rem;list-style:none}.home-faq-list summary::-webkit-details-marker{display:none}.home-faq-list summary:after{position:absolute;right:7px;color:var(--mint);content:"+";font-size:1.55rem;font-weight:500;line-height:1}.home-faq-list details[open] summary:after{content:"−"}.home-faq-list details p{max-width:800px;padding:0 44px 24px 5px;color:#5c706b;line-height:1.75}.home-faq-more{margin:25px 0 0;color:#6c7f7a;font-size:.86rem;text-align:center}.home-faq-more a{font-weight:750}
.guide-promo{padding:105px max(24px,calc((100vw - 1240px)/2));background:#eef4e5}.guide-promo-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:45px}.guide-promo-heading h2{max-width:750px;margin:0;color:var(--forest);font-size:clamp(2.6rem,4vw,4.1rem);letter-spacing:-.055em;line-height:1}.guide-promo-heading>a{flex:0 0 auto;color:var(--forest);font-size:.9rem;font-weight:800;text-decoration:none}.guide-promo-heading>a span{margin-left:8px;color:var(--mint)}.guide-promo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.guide-promo-grid a{min-height:220px;padding:28px;display:flex;align-items:flex-start;flex-direction:column;border:1px solid #073f3a16;border-radius:15px;background:#fffdfa;color:var(--forest);text-decoration:none;box-shadow:0 15px 35px #073f3a0c;transition:transform .2s ease,box-shadow .2s ease}.guide-promo-grid a:hover{color:var(--forest);transform:translateY(-3px);box-shadow:0 20px 42px #073f3a18}.guide-promo-grid span{margin-bottom:auto;color:#0a8f79;font-size:.7rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.guide-promo-grid strong{margin-top:35px;font-size:1.2rem;line-height:1.25}.guide-promo-grid small{margin-top:10px;color:#6a7c77;font-size:.76rem;line-height:1.55}
.availability{padding:100px max(24px,calc((100vw - 1240px)/2));display:grid;grid-template-columns:1fr auto;align-items:end;gap:60px;background:var(--forest)}.home-kicker.light{color:#9fc2bb}.availability h2{color:#fff}.availability>div>p:last-child{max-width:580px;margin:25px 0 0;color:#9fc2bb;font-size:.92rem;line-height:1.7}.availability-update-link{display:inline-block;margin-top:9px;color:#fff;font-weight:750;text-underline-offset:4px}.availability-update-link:hover{color:#d9f3a8}.availability-actions{display:flex;align-items:center;gap:24px}.availability-actions>a:last-child{color:#fff;font-size:.86rem;font-weight:700;text-underline-offset:4px}.light-button{background:var(--mint);color:var(--forest);box-shadow:none}.light-button span{color:var(--forest)}.light-button:hover{background:#39d0b5;color:var(--forest)}
.home-footer{background:#052f2b}.home-footer .footer-inner{width:min(calc(100% - 48px),1240px);align-items:center;padding:45px 0}.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand img{border-radius:11px}.footer-brand p{margin:2px 0 0;font-size:.76rem}.home-footer .footer-links{gap:25px}.home-footer .footer-links a{color:#c7d8d4;font-size:.78rem;text-decoration:none}.footer-base{width:min(calc(100% - 48px),1240px);margin:auto;padding:18px 0 25px;display:flex;justify-content:space-between;border-top:1px solid #ffffff1a;color:#789b94;font-size:.7rem}
@media(max-width:920px){.home-page .home-header{position:relative;background:#f8f5ed}.home-page .header-inner{min-height:76px}.home-nav a:not(.nav-cta){display:none}.home-hero{min-height:auto;padding-top:70px;grid-template-columns:1fr;gap:20px}.hero-copy{max-width:720px}.hero-visual{width:min(100%,580px);margin:auto}.phone-main{left:27%}.confidence-strip,.availability{align-items:flex-start}.confidence-strip{flex-direction:column}.demo-section{grid-template-columns:1fr;gap:42px}.screen-showcase-heading{grid-template-columns:1fr;gap:24px}.screen-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.guide-promo-grid{grid-template-columns:repeat(2,1fr)}.feature-primary{grid-template-columns:1fr 1fr;gap:35px;padding:40px}.compact-card{padding-right:36px}.mini-icon,.mini-route{opacity:.25}.journey-heading{grid-template-columns:1fr;gap:25px}.availability{grid-template-columns:1fr}}
@media(max-width:660px){.home-page .header-inner{width:min(calc(100% - 30px),1240px)}.home-page .brand img{width:40px;height:40px}.home-page .brand{font-size:.82rem}.home-nav .nav-cta{display:none}.home-hero{padding:60px 20px 65px}.home-hero h1{font-size:clamp(3.25rem,16vw,4.8rem)}.hero-actions{align-items:flex-start;flex-direction:column}.trust-row{gap:12px 17px}.hero-visual{height:530px}.phone-main{left:50%;width:260px;transform:translateX(-50%) rotate(3deg)}.vehicle-card{top:90px;left:-5px}.traffic-card{right:-4px;bottom:80px}.floating-card{min-width:145px;padding:10px}.confidence-strip{padding-block:35px}.confidence-strip>div{gap:18px}.demo-section,.screen-showcase,.feature-intro,.journey-section,.touring-quote,.home-faq,.guide-promo,.availability{padding-block:75px}.demo-section,.screen-showcase,.home-faq,.guide-promo{padding-inline:20px}.demo-copy h2,.screen-showcase-heading h2,.feature-intro>h2,.journey-heading h2,.home-faq-heading h2,.guide-promo-heading h2,.availability h2{font-size:2.55rem}.screen-grid{margin-inline:-20px;padding:0 20px 18px;display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory}.screen-grid figure{flex:0 0 min(73vw,290px);scroll-snap-align:start}.guide-promo-heading{align-items:flex-start;flex-direction:column}.guide-promo-grid{grid-template-columns:1fr}.guide-promo-grid a{min-height:190px}.feature-grid,.journey-grid{grid-template-columns:1fr}.feature-primary{grid-template-columns:1fr;padding:30px}.feature-primary .number{margin-bottom:30px}.profile-demo{margin:10px 0 0;padding:17px;transform:none}.compact-card{padding:30px}.journey-art{height:285px}.availability-actions{align-items:flex-start;flex-direction:column}.home-footer .footer-inner{grid-template-columns:1fr}.footer-base{align-items:flex-start;flex-direction:column;gap:5px}}

/* Touring guides */
.guide-page{--forest:#073f3a;--forest-2:#0c5149;--mint:#1bc2a4;background:#f7f4ec;color:#102622}.guide-page .site-header{background:#fffdf9f5}.guide-page .brand small{color:#607872}.guide-page .nav-cta{padding:9px 15px;border-radius:999px;background:#073f3a;color:#fff}.guide-page .nav-cta:hover{background:#0c5149;color:#fff}.guide-shell{width:min(calc(100% - 40px),1120px);margin:0 auto}.guide-breadcrumbs{padding:30px 0 0;color:#71837f;font-size:.78rem}.guide-breadcrumbs a{color:#496b64;text-decoration:none}.guide-hero{padding:55px 0 70px;display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,.68fr);align-items:center;gap:70px}.guide-hero-copy .eyebrow{color:#0a8f79;letter-spacing:.12em}.guide-hero h1{max-width:760px;margin-bottom:24px;color:#073f3a;font-size:clamp(3rem,5vw,5.2rem);letter-spacing:-.06em;line-height:.95}.guide-hero .lede{color:#58716b;line-height:1.7}.guide-meta{margin:22px 0 0;color:#71837f;font-size:.76rem}.guide-hero-media{display:flex;justify-content:center}.guide-hero-media img{max-height:610px;width:auto;border:1px solid #073f3a1a;border-radius:25px;box-shadow:0 26px 60px #073f3a24}.guide-hero-media.wide img{width:100%;height:auto;max-height:none;border-radius:18px}.guide-body-wrap{background:#fff}.guide-body{width:min(calc(100% - 40px),820px);margin:0 auto;padding:75px 0 95px}.guide-body h2{margin:55px 0 17px;color:#073f3a;font-size:2rem;letter-spacing:-.035em}.guide-body h2:first-child{margin-top:0}.guide-body h3{margin:30px 0 10px;color:#073f3a;font-size:1.18rem}.guide-body p,.guide-body li{color:#405852;line-height:1.78}.guide-body ul,.guide-body ol{padding-left:23px}.guide-body li+li{margin-top:9px}.guide-note{margin:30px 0;padding:20px 22px;border-left:4px solid #1bc2a4;background:#eff8e8;color:#38534c}.guide-figure{margin:36px auto;text-align:center}.guide-figure img{max-height:680px;width:auto;margin:auto;border:1px solid #dde4dc;border-radius:20px;box-shadow:0 18px 45px #073f3a18}.guide-figure.wide img{width:100%;height:auto;max-height:none}.guide-figure figcaption{max-width:640px;margin:12px auto 0;color:#71837f;font-size:.75rem}.guide-cta{margin-top:60px;padding:35px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-radius:18px;background:#073f3a;color:#fff}.guide-cta h2{margin:0 0 8px;color:#fff;font-size:1.8rem}.guide-cta p{margin:0;color:#a7c8c1;font-size:.88rem}.guide-cta .home-button{flex:0 0 auto;background:#1bc2a4;color:#073f3a;box-shadow:none}.guide-cta .home-button span{color:#073f3a}.guide-index-hero{padding:75px 0 55px}.guide-index-hero h1{max-width:850px;color:#073f3a;font-size:clamp(3.4rem,6vw,6rem);letter-spacing:-.065em;line-height:.95}.guide-index-hero .lede{max-width:720px}.guide-index{padding:0 0 100px;display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.guide-index article{overflow:hidden;border:1px solid #dfe5dc;border-radius:18px;background:#fff;box-shadow:0 18px 44px #073f3a0e}.guide-index img{width:100%;height:310px;object-fit:cover;object-position:center}.guide-index .portrait{object-position:center 23%}.guide-index-copy{padding:30px}.guide-index-copy span{color:#0a8f79;font-size:.7rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.guide-index-copy h2{margin:12px 0;color:#073f3a;font-size:1.7rem;letter-spacing:-.035em}.guide-index-copy p{margin:0;color:#62736f}.guide-index-copy a{display:inline-block;margin-top:22px;font-weight:800;text-decoration:none}.guide-page .home-footer{background:#052f2b}
@media(max-width:760px){.guide-hero{padding-top:38px;grid-template-columns:1fr;gap:35px}.guide-hero h1{font-size:3.25rem}.guide-hero-media{justify-content:flex-start}.guide-hero-media img{max-height:530px}.guide-index{grid-template-columns:1fr}.guide-index img{height:260px}.guide-body{padding-block:55px}.guide-cta{align-items:flex-start;flex-direction:column}.guide-page .footer-inner{grid-template-columns:1fr}.guide-page .footer-links{justify-content:flex-start}}

/* App download landing page */
.download-page{min-height:100svh;display:flex;flex-direction:column;overflow-x:hidden;background:#f7f4ec;color:#102622}
.download-header{width:min(calc(100% - 48px),1120px);min-height:88px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.download-header .brand{color:#073f3a}.download-header .brand small{color:#54716c}.download-header .brand img{border-radius:12px;box-shadow:0 5px 18px #073f3a1f}
.download-home-link{color:#526d67;font-size:.86rem;font-weight:700;text-decoration:none}.download-home-link:hover{color:#073f3a}
.download-main{position:relative;flex:1;padding:38px 24px 70px;display:grid;place-items:center;overflow:hidden}
.download-main:before,.download-main:after{position:absolute;border-radius:50%;content:"";pointer-events:none}.download-main:before{top:2%;left:-140px;width:420px;height:420px;background:#d9f3a88f;filter:blur(2px)}.download-main:after{right:-170px;bottom:-150px;width:470px;height:470px;background:#1bc2a423}
.download-panel{position:relative;z-index:1;width:min(100%,680px);padding:52px 56px 46px;border:1px solid #073f3a13;border-radius:28px;background:#fffdf9e8;text-align:center;box-shadow:0 30px 80px #073f3a17;backdrop-filter:blur(12px)}
.download-glow{position:absolute;z-index:-1;top:-54px;left:50%;width:230px;height:230px;border-radius:50%;background:#d9f3a8b3;filter:blur(45px);transform:translateX(-50%)}
.download-icon{width:124px;height:124px;margin:0 auto 25px;border-radius:27px;box-shadow:0 18px 40px #073f3a30}
.download-kicker{margin:0 0 13px;color:#0a8f79;font-size:.73rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.download-panel h1{max-width:none;margin:0;color:#073f3a;font-size:clamp(2.45rem,5vw,4.05rem);font-weight:780;letter-spacing:-.055em;line-height:1.02}
.download-lede{max-width:540px;margin:22px auto 0;color:#58716b;font-size:1rem;line-height:1.7}
.download-offer{margin:14px auto 0;color:#294b44;font-size:.83rem}.download-offer strong,.download-offer span{display:block}.download-offer span{margin-top:2px;color:#70837e;font-size:.7rem}
.platform-note{min-height:24px;margin:19px 0 22px;color:#294b44;font-size:.86rem;font-weight:750}
.store-options{display:grid;gap:12px;max-width:460px;margin:0 auto}
.store-button{position:relative;min-height:76px;padding:12px 18px;display:flex;align-items:center;gap:15px;border-radius:14px;text-align:left;text-decoration:none}
.store-button svg{flex:0 0 auto;width:35px;height:35px;fill:currentColor}.store-button span:not(.store-arrow):not(.pending-pill){display:flex;flex-direction:column}.store-button small{font-size:.68rem;line-height:1.1}.store-button strong{font-size:1.3rem;line-height:1.25;letter-spacing:-.02em}
.apple-store{background:#111;color:#fff;box-shadow:0 12px 28px #0002}.apple-store:hover{background:#282828;color:#fff}.store-arrow{margin-left:auto;color:#8fe6d6;font-size:1.45rem}
.google-store{border:1px solid #ccd8d5;background:#f1f4f3;color:#63726f}.pending-pill{margin-left:auto;padding:5px 8px;border-radius:999px;background:#dfe7e5;color:#536561;font-size:.62rem;font-weight:800;white-space:nowrap}
.download-smallprint{max-width:500px;margin:24px auto 0;color:#7a8d88;font-size:.72rem;line-height:1.6}
.download-footer{width:min(calc(100% - 48px),1120px);margin:0 auto;padding:23px 0;display:flex;justify-content:space-between;gap:22px;border-top:1px solid #073f3a16;color:#6f837e;font-size:.72rem}.download-footer nav{display:flex;flex-wrap:wrap;gap:20px}.download-footer a{color:#526d67;text-decoration:none}
.download-page[data-platform="apple"] .apple-store{outline:3px solid #1bc2a4;outline-offset:4px}.download-page[data-platform="android"] .google-store{border-color:#8da29d;background:#e9efed}
@media(max-width:600px){.download-header{width:calc(100% - 32px);min-height:72px}.download-header .brand{font-size:.82rem}.download-header .brand img{width:40px;height:40px}.download-home-link{font-size:.75rem}.download-main{padding:26px 14px 45px;place-items:start center}.download-panel{padding:38px 18px 32px;border-radius:22px}.download-icon{width:100px;height:100px;margin-bottom:22px;border-radius:22px}.download-panel h1{font-size:clamp(2.3rem,11.5vw,3.2rem)}.download-lede{font-size:.91rem}.platform-note{margin-bottom:18px}.store-button{min-height:72px;padding:11px 14px}.store-button svg{width:31px;height:31px}.store-button strong{font-size:1.15rem}.pending-pill{font-size:.56rem}.download-footer{width:calc(100% - 32px);align-items:flex-start;flex-direction:column;gap:10px}.download-footer nav{gap:16px}}

/* First-party backend integrations */
.store-button[aria-disabled="true"]{cursor:not-allowed}
.support-form{max-width:820px;margin-top:28px;padding:28px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form-field{margin-bottom:18px}
.form-field label{display:block;margin-bottom:6px;font-weight:750}
.form-field input,.form-field select,.form-field textarea{width:100%;padding:11px 12px;border:1px solid #aab4bc;border-radius:7px;background:#fff;color:var(--ink);font:inherit}
.form-field textarea{resize:vertical}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--sky);outline:3px solid #2f80d926}
.form-field input[aria-invalid="true"],.form-field select[aria-invalid="true"],.form-field textarea[aria-invalid="true"]{border-color:var(--danger)}
.form-honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
.form-actions{display:flex;align-items:center;gap:18px}
.form-actions button{border:0;font:inherit;cursor:pointer}
.form-actions button:disabled{cursor:wait;opacity:.7}
.form-status{margin:0;color:var(--muted);font-weight:650}
.form-status.success{color:var(--route-dark)}
.form-status.error{color:var(--danger)}
@media(max-width:680px){.support-form{padding:20px}.form-grid{grid-template-columns:1fr}.form-actions{align-items:flex-start;flex-direction:column;gap:10px}}

/* Header social links remain visible on mobile. */
.header-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:16px}
.header-social{display:flex;align-items:center;gap:4px;flex-shrink:0}
.header-social a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;color:#073f3a;text-decoration:none}
.header-social a:hover{background:#073f3a10}
.header-social a:focus-visible{outline:2px solid #0a8f79;outline-offset:2px}
.header-social svg{display:block;flex-shrink:0}
.header-inner,.download-header{flex-wrap:wrap;padding-block:10px;gap:12px 20px}
@media(max-width:660px){.header-actions{gap:8px}.header-social{gap:0}.header-inner,.download-header{column-gap:12px}.header-actions{margin-left:auto}}

/* Keep the descriptive homepage heading readable across screen sizes. */
.home-hero h1{font-size:clamp(2.8rem,4.5vw,4.8rem);line-height:1.04;overflow-wrap:break-word}
@media(max-width:660px){.home-hero h1{font-size:clamp(2.25rem,10vw,3.8rem)}}

/* Facebook timeline and its optional loading controls. */
.facebook-section{padding:90px max(20px,calc((100vw - 1120px)/2));display:grid;grid-template-columns:minmax(0,1fr) minmax(0,500px);gap:60px;align-items:start;background:#f8f5ed}
.facebook-copy h2{margin:0 0 24px;color:#073f3a;font-size:clamp(2.4rem,4vw,3.6rem);line-height:1.06;letter-spacing:-.045em}
.facebook-copy p,.facebook-panel p{color:#49635e;line-height:1.7}
.facebook-panel{min-width:0;width:100%;max-width:500px;border-radius:16px;background:#fff;box-shadow:0 12px 36px #073f3a12;overflow:hidden}
#facebook-placeholder{padding:28px}#facebook-placeholder h3{margin-top:0;color:#073f3a}
#facebook-feed iframe{display:block;width:100%;height:620px;border:0}
.facebook-fallback{padding:0 20px 16px;font-size:.85rem}
.facebook-hide{margin:16px 20px;background:none;border:0;text-decoration:underline;color:#073f3a;cursor:pointer;font:inherit}
.facebook-panel [hidden]{display:none!important}
@media(max-width:760px){.facebook-section{grid-template-columns:1fr;gap:30px;padding-block:60px}.facebook-panel{justify-self:center}}

/* Touring product discovery and comparison content. */
.touring-paths{padding:65px max(20px,calc((100vw - 1120px)/2));background:#fffdf9}
.touring-paths h2{color:#073f3a;font-size:clamp(2rem,3vw,3rem);line-height:1.1;letter-spacing:-.04em}
.touring-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:30px}
.touring-path-grid article{padding:25px;border:1px solid #dfe5dc;border-radius:16px;background:#f7f4ec}
.touring-path-grid h3{font-size:1.4rem;margin-top:0}.touring-path-grid p{color:#49635e;line-height:1.7}
.comparison-scroll{overflow-x:auto;margin:28px 0}.touring-comparison{width:100%;border-collapse:collapse;font-size:.95rem}
.touring-comparison caption{text-align:left;font-weight:700;padding:0 0 14px;color:#073f3a}
.touring-comparison th,.touring-comparison td{padding:16px;text-align:left;vertical-align:top;border:1px solid #dfe5dc;line-height:1.65}
.touring-comparison thead{background:#073f3a;color:#fff}.touring-comparison tbody th{min-width:130px;background:#f7f4ec}
.guide-hero h1{overflow-wrap:break-word}
@media(max-width:760px){.touring-path-grid{grid-template-columns:1fr}.touring-paths{padding-block:45px}.touring-comparison th,.touring-comparison td{padding:10px}}
