:root{
--ink:#16324F;--ink-soft:#4A6178;--paper:#FFF8EE;--butter:#FFEBC9;--coral:#FF6B4A;--coral-deep:#D6402A;
--tangerine:#FFB03B;--teal:#0F8C8C;--teal-soft:#D6F0EE;--blush:#FFDCD2;--gold:#C8922E;--toyota-red:#EB0A1E;--white:#FFFFFF;
--r-card:24px;--r-pill:999px;--r-sm:14px;
--sticker:5px 5px 0 var(--ink);--sticker-hi:8px 8px 0 var(--ink);--sticker-lo:2px 2px 0 var(--ink);
--soft:0 10px 24px rgba(22,50,79,.10);
--sand:#FBE7C6;--speck-a:rgba(198,160,102,.18);--speck-b:rgba(198,160,102,.11);--speck-c:rgba(198,160,102,.07);--speck-d:rgba(198,160,102,.14);--ripple:rgba(198,160,102,.34);
--s1:8px;--s2:16px;--s3:24px;--s4:40px;--s5:64px;--s6:96px;
--gutter:clamp(1.25rem,5vw,4rem);--ease-pop:cubic-bezier(.34,1.56,.64,1);--ease-settle:cubic-bezier(.22,1,.36,1);
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Nunito,system-ui,sans-serif;font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:Fraunces,Georgia,serif;margin:0}
p{margin:0}
a{color:var(--teal);text-decoration-thickness:2px;text-underline-offset:3px}
a:hover{color:var(--coral-deep)}
button{font-family:inherit}
:focus-visible{outline:3px solid var(--teal);outline-offset:2px;border-radius:4px}
@keyframes om-spin{to{transform:rotate(360deg)}}
@keyframes om-drift{0%{transform:translateX(0)}50%{transform:translateX(26px)}100%{transform:translateX(0)}}
@keyframes om-bob{0%{transform:translateY(0)}50%{transform:translateY(-12px)}100%{transform:translateY(0)}}
@keyframes om-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes om-wiggle{0%{transform:rotate(-3deg)}25%{transform:rotate(4deg)}50%{transform:rotate(-4deg)}75%{transform:rotate(2deg)}100%{transform:rotate(-3deg)}}
@keyframes om-glint{from{transform:translateX(-120%)}to{transform:translateX(220%)}}
@keyframes om-word{from{opacity:0;transform:translateY(18px) rotate(-3deg)}to{opacity:1;transform:none}}
@keyframes om-drawer{from{transform:translateX(100%)}to{transform:translateX(0)}}
@keyframes om-navlink{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
@keyframes om-confetti{from{opacity:1;transform:translate(0,0) rotate(0)}to{opacity:0;transform:translate(var(--cx),var(--cy)) rotate(320deg)}}
@keyframes om-wheel{to{transform:rotate(360deg)}}
/* Every phone override now lives in MOBILE_RULES in scripts/build.js, which
   generates assets/css/mobile.css with BOTH the @media (max-width:767px) copy
   and the [data-mode="mobile"] copy the CMS preview needs. Two hand-maintained
   copies used to live here and they drifted — one rule lost its prefix and
   shrank the step headings at desktop widths. Do not add phone rules here. */

@keyframes om-drive{0%{transform:translateX(-260px)}72%{transform:translateX(1560px)}100%{transform:translateX(1560px)}}
[data-hero-sun] svg{animation:om-spin 20s linear infinite}
main h1{font-size:clamp(1.9rem,4.7cqw + 1rem,4.75rem)!important;line-height:1.05!important}
@container (min-width:1080px){[data-stats]{grid-template-columns:repeat(4,minmax(0,1fr))}}
[data-stats]>div{max-width:none!important}
[data-steps]>article{display:flex!important;flex-direction:column}
[data-steps]>article>div:first-child{min-height:96px;align-items:center}
[data-steps]>article h3{margin-top:14px!important}
[data-steps]>article p{margin-top:10px!important}
[data-nav-link] [data-sq]{opacity:0;transition:opacity 200ms var(--ease-settle)}
[data-nav-link]:hover [data-sq],[data-nav-link]:focus-visible [data-sq]{opacity:1}
@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}[data-reveal]{opacity:1!important;transform:none!important}}
@media (max-width:1023px){[data-desktop-nav]{display:none!important}[data-burger]{display:inline-flex!important}[data-hide-sm]{display:none!important}}
@media (max-width:767px){[data-mbar]{display:flex!important}}
[data-mode="mobile"] [data-desktop-nav],[data-mode="tablet"] [data-desktop-nav]{display:none!important}
[data-mode="mobile"] [data-burger],[data-mode="tablet"] [data-burger]{display:inline-flex!important}
[data-mode="mobile"] [data-mbar]{display:flex!important}
[data-mode="tablet"] [data-mbar]{display:none!important}
[data-mode="mobile"] [data-hide-sm]{display:none!important}
[data-mode="wide"] [data-desktop-nav]{display:flex!important}
[data-mode="wide"] [data-burger]{display:none!important}
[data-mode="wide"] [data-mbar]{display:none!important}
