:root {
  color-scheme: light;
  --green: #174a35;
  --green-dark: #123b2d;
  --green-deep: #0d3025;
  --lime: #d9ed78;
  --paper: #f7f8f2;
  --white: #fff;
  --ink: #19251f;
  --muted: #727d74;
  --line: #dce2d8;
  --sans: "Aptos", "Segoe UI", Arial, sans-serif;
  --mono: "Cascadia Mono", Consolas, monospace;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--sans); }
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
.site-header { width: min(1320px, 100%); height: 84px; margin: auto; padding: 0 42px; display: flex; justify-content: space-between; align-items: center; }
.brand { display: inline-flex; align-items: center; gap: 11px; flex-shrink: 0; }
.brand-mark { width: 38px; height: 38px; display: grid; place-items: center; background: var(--green); color: var(--lime); font: 700 12px var(--mono); letter-spacing: -.08em; }
.brand-name { font-size: 15px; font-weight: 600; letter-spacing: -.04em; line-height: 1; }
.brand-name b { font-weight: 800; }
.brand-name small { display: block; margin-top: 5px; color: var(--muted); font: 8px var(--mono); letter-spacing: .13em; }
.main-nav { display: flex; align-items: center; gap: 34px; }
.main-nav a { color: #49584e; font-size: 12px; font-weight: 600; }
.main-nav a:hover, .footer-email:hover { color: #729138; }
.main-nav .nav-cta { padding: 13px 17px; background: var(--green); color: var(--white); }
.nav-cta span, .button span { margin-left: 12px; }
.menu-toggle { display: none; }
.hero { width: min(1320px, 100%); min-height: 625px; margin: auto; padding: 47px 42px 68px; display: grid; grid-template-columns: .92fr 1.08fr; align-items: center; gap: 36px; }
.hero-copy { position: relative; z-index: 1; padding: 15px 0 0; }
.eyebrow { display: flex; align-items: center; gap: 10px; margin: 0; color: var(--green); font: 10px var(--mono); letter-spacing: .13em; text-transform: uppercase; }
.eyebrow-line { width: 24px; height: 1px; background: currentColor; }
.hero h1 { margin: 28px 0 24px; font-size: clamp(58px, 6.9vw, 91px); font-weight: 600; letter-spacing: -.085em; line-height: .91; }
.hero h1 em, .section-heading h2 em, .why-title h2 em, .closing-cta h2 em { color: #668d3d; font-style: normal; }
.hero-lede { max-width: 470px; margin: 0; color: #66736a; font-size: 15px; line-height: 1.8; }
.hero-actions { display: flex; align-items: center; gap: 27px; margin-top: 31px; }
.button { min-height: 49px; padding: 0 19px; display: inline-flex; justify-content: center; align-items: center; border: 0; font: 10px var(--mono); letter-spacing: .035em; text-transform: uppercase; transition: transform .18s ease, background .18s ease; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--green); color: var(--white); }
.button-primary:hover { background: #236345; }
.quiet-link { padding-bottom: 5px; border-bottom: 1px solid #758078; font-size: 12px; font-weight: 600; }
.quiet-link span { margin-left: 6px; }
.hero-note { max-width: 410px; margin-top: 39px; padding-top: 16px; display: flex; align-items: center; gap: 10px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; line-height: 1.55; }
.note-check { width: 19px; height: 19px; display: grid; flex: 0 0 auto; place-items: center; border-radius: 50%; background: #e5eddb; color: var(--green); font-size: 11px; }
.hero-art { min-height: 465px; position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; background: #e4ecdf; }
.hero-art::before, .hero-art::after { position: absolute; content: ""; border: 1px solid rgba(23, 74, 53, .11); border-radius: 50%; }
.hero-art::before { width: 390px; height: 390px; }
.hero-art::after { width: 300px; height: 300px; }
.art-sun { position: absolute; top: 57px; right: 104px; width: 78px; height: 78px; border-radius: 50%; background: #d9ed78; }
.car-illustration { position: relative; z-index: 1; width: min(100%, 645px); margin-top: 45px; }
.art-stamp { position: absolute; top: 43px; left: 39px; z-index: 2; color: #496953; font: 10px/1.5 var(--mono); letter-spacing: .08em; }
.art-caption, .art-index { position: absolute; z-index: 2; color: #526c58; font: 9px var(--mono); letter-spacing: .12em; }
.art-caption { bottom: 23px; left: 25px; display: flex; align-items: center; gap: 8px; }
.caption-dot { width: 7px; height: 7px; border-radius: 50%; background: #83a853; }
.art-index { right: 25px; bottom: 23px; }
.request-section { padding: 78px max(42px, calc((100vw - 1236px) / 2)); display: grid; grid-template-columns: .8fr 1.2fr; gap: 85px; background: var(--green-dark); color: var(--white); }
.eyebrow-light { color: #c5d88a; }
.request-intro h2 { margin: 20px 0 17px; font-size: clamp(41px, 4.4vw, 58px); font-weight: 500; letter-spacing: -.07em; line-height: .98; }
.request-intro>p:not(.eyebrow) { max-width: 360px; color: #c3cdc4; font-size: 13px; line-height: 1.75; }
.request-email { display: inline-block; margin-top: 30px; color: #c3cdc4; font-size: 11px; }
.request-email strong { display: inline-block; margin-left: 4px; color: var(--lime); }
.request-email span { margin-left: 4px; color: var(--lime); }
.request-form { display: flex; flex-direction: column; gap: 17px; }
.form-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.request-form label { display: flex; flex-direction: column; gap: 8px; color: #d9e1d8; font: 9px var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.request-form input, .request-form select { width: 100%; height: 46px; padding: 0 12px; border: 1px solid rgba(255,255,255,.24); border-radius: 0; outline: 0; background: rgba(255,255,255,.07); color: var(--white); font: 12px var(--sans); color-scheme: dark; }
.request-form input::placeholder { color: #aab9ad; }
.request-form input:focus, .request-form select:focus { border-color: var(--lime); box-shadow: 0 0 0 2px rgba(217,237,120,.15); }
.request-form select option { color: var(--ink); background: var(--white); }
.button-lime { align-self: flex-start; margin-top: 1px; background: var(--lime); color: var(--green-deep); cursor: pointer; }
.button-lime:hover { background: #e6f59f; }
.form-disclaimer { max-width: 510px; margin: -5px 0 0; color: #b7c5b9; font-size: 10px; line-height: 1.6; }
.form-status { margin: 0; color: var(--lime); font-size: 12px; line-height: 1.6; }
.form-status a { text-decoration: underline; }
.section { width: min(1320px, 100%); margin: auto; padding: 100px 42px 92px; }
.section-heading { margin-bottom: 47px; display: flex; align-items: end; justify-content: space-between; gap: 32px; }
.section-heading h2 { margin: 18px 0 0; font-size: clamp(43px, 5.2vw, 65px); font-weight: 500; letter-spacing: -.08em; line-height: .96; }
.section-heading>p { max-width: 330px; margin: 0 0 4px; color: var(--muted); font-size: 13px; line-height: 1.7; }
.vehicle-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.vehicle-card { min-height: 333px; padding: 22px 23px 21px; display: flex; flex-direction: column; align-items: flex-start; background: #eef1e9; }
.vehicle-card-featured { background: #e3ebdc; }
.vehicle-number { width: 100%; display: flex; justify-content: space-between; color: var(--green); font: 10px var(--mono); }
.vehicle-number span { color: #738174; font-size: 8px; letter-spacing: .1em; }
.vehicle-icon { height: 89px; width: 150px; position: relative; margin: 19px 0 8px; }
.vehicle-icon::before { position: absolute; bottom: 19px; left: 14px; width: 119px; height: 36px; content: ""; border-radius: 25px 34px 11px 10px; background: #739768; }
.vehicle-icon::after { position: absolute; bottom: 45px; left: 43px; width: 67px; height: 31px; content: ""; clip-path: polygon(21% 0, 74% 0, 100% 100%, 0 100%); background: #739768; }
.vehicle-icon span::before, .vehicle-icon span::after { position: absolute; z-index: 1; bottom: 6px; width: 27px; height: 27px; content: ""; border: 6px solid #233b2e; border-radius: 50%; background: #e5e9df; }
.vehicle-icon span::before { left: 30px; }
.vehicle-icon span::after { left: 101px; }
.sedan-icon { transform: scale(.96); transform-origin: left center; }
.sedan-icon::before { left: 7px; width: 133px; height: 31px; border-radius: 23px 37px 9px 9px; background: #517a5c; }
.sedan-icon::after { left: 43px; width: 65px; height: 32px; background: #517a5c; }
.suv-icon::before { left: 8px; width: 132px; height: 44px; border-radius: 13px 17px 10px 10px; background: #315b47; }
.suv-icon::after { left: 37px; bottom: 49px; width: 83px; height: 35px; clip-path: polygon(13% 0, 88% 0, 100% 100%, 0 100%); background: #315b47; }
.suv-icon span::before { left: 25px; }
.suv-icon span::after { left: 106px; }
.vehicle-card h3 { margin: 2px 0 8px; font-size: 23px; font-weight: 600; letter-spacing: -.055em; }
.vehicle-card p { max-width: 285px; margin: 0; color: #69756b; font-size: 12px; line-height: 1.7; }
.vehicle-card>a { margin-top: auto; padding-top: 20px; color: var(--green); font: 9px var(--mono); text-transform: uppercase; }
.vehicle-card>a span { margin-left: 5px; }
.vehicle-disclaimer { margin: 16px 0 0; color: var(--muted); font-size: 10px; line-height: 1.6; }
.why-section { background: #e6eddf; }
.why-inner { width: min(1236px, 100%); margin: auto; padding: 83px 42px 91px; display: grid; grid-template-columns: .8fr 1.2fr; gap: 78px; }
.why-title h2 { margin: 19px 0 0; font-size: clamp(48px, 5.2vw, 68px); font-weight: 500; letter-spacing: -.085em; line-height: .94; }
.why-points { border-top: 1px solid #cad5c8; }
.why-points article { min-height: 97px; padding: 20px 0; display: grid; grid-template-columns: 45px 1fr; gap: 13px; border-bottom: 1px solid #cad5c8; }
.why-points article>span { color: #698b48; font: 10px var(--mono); }
.why-points h3 { margin: 0 0 6px; font-size: 17px; font-weight: 600; letter-spacing: -.035em; }
.why-points p { max-width: 430px; margin: 0; color: #66736a; font-size: 12px; line-height: 1.6; }
.closing-cta { padding: 72px 20px 78px; display: flex; flex-direction: column; align-items: center; text-align: center; }
.closing-cta h2 { margin: 17px 0 25px; font-size: clamp(50px, 6vw, 75px); font-weight: 500; letter-spacing: -.085em; line-height: .9; }
.site-footer { min-height: 91px; padding: 18px max(42px, calc((100vw - 1236px) / 2)); display: flex; justify-content: space-between; align-items: center; gap: 20px; border-top: 1px solid var(--line); }
.footer-brand .brand-mark { width: 34px; height: 34px; }
.footer-brand .brand-name { font-size: 13px; }
.footer-brand .brand-name small { font-size: 7px; }
.footer-email, .site-footer>p { color: var(--muted); font-size: 10px; }
.site-footer>p { margin: 0; font-family: var(--mono); }

@media (min-width: 1500px) {
  .hero { min-height: 665px; }
}
@media (max-width: 900px) {
  .site-header { height: 74px; padding: 0 24px; }
  .menu-toggle { width: 40px; height: 40px; padding: 10px 7px; display: flex; flex-direction: column; justify-content: center; gap: 6px; border: 0; background: transparent; cursor: pointer; }
  .menu-toggle span { width: 25px; height: 2px; display: block; background: var(--green-dark); }
  .main-nav { position: absolute; top: 74px; left: 0; right: 0; z-index: 5; padding: 8px 24px 24px; display: none; align-items: stretch; flex-direction: column; gap: 0; background: var(--paper); box-shadow: 0 14px 18px rgba(18,59,45,.08); }
  .main-nav.is-open { display: flex; }
  .main-nav a { padding: 14px 0; border-bottom: 1px solid var(--line); }
  .main-nav .nav-cta { margin-top: 12px; padding: 15px; text-align: center; border: 0; }
  .hero { min-height: auto; padding: 46px 24px 58px; gap: 20px; }
  .hero-art { min-height: 390px; }
  .request-section { padding: 66px 24px; gap: 45px; }
  .section { padding: 78px 24px; }
  .why-inner { padding: 70px 24px; gap: 38px; }
  .site-footer { padding: 18px 24px; }
}
@media (max-width: 640px) {
  html { scroll-padding-top: 70px; }
  .hero { padding-top: 39px; display: flex; flex-direction: column; align-items: stretch; }
  .hero h1 { margin-top: 24px; font-size: clamp(56px, 15vw, 76px); }
  .hero-lede { font-size: 14px; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 19px; }
  .hero-art { min-height: 315px; margin-top: 18px; }
  .hero-art::before { width: 280px; height: 280px; }
  .hero-art::after { width: 215px; height: 215px; }
  .art-sun { top: 38px; right: 58px; width: 54px; height: 54px; }
  .art-stamp { top: 27px; left: 22px; font-size: 8px; }
  .car-illustration { width: 118%; max-width: none; margin-top: 32px; }
  .request-section { padding: 55px 22px; display: block; }
  .request-intro h2 { font-size: 48px; }
  .request-email { margin: 12px 0 27px; }
  .form-row { grid-template-columns: 1fr; gap: 17px; }
  .request-form { gap: 16px; }
  .button-lime { width: 100%; }
  .section { padding: 68px 22px; }
  .section-heading { margin-bottom: 32px; display: block; }
  .section-heading h2 { font-size: 45px; }
  .section-heading>p { margin-top: 18px; }
  .vehicle-grid { grid-template-columns: 1fr; gap: 11px; }
  .vehicle-card { min-height: 305px; }
  .why-inner { padding: 62px 22px; display: block; }
  .why-title h2 { font-size: 55px; }
  .why-points { margin-top: 40px; }
  .closing-cta { padding: 60px 20px; }
  .site-footer { padding: 23px 22px; flex-wrap: wrap; }
  .site-footer>p { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
