/* Typography probe; candidate font integration follows a real visual comparison. */
@media(min-width:761px){.hero{width:55%;top:17.5%}.hero h1{font-size:clamp(54px,6vw,106px);line-height:.98;margin-top:24px}.hero-bottom{margin-top:30px}.hero-bottom p{font-size:clamp(16px,1.25vw,20px)}}
@media(max-width:760px){.hero h1{font-size:clamp(43px,12.3vw,75px);line-height:1.01}.hero-bottom p{font-size:14px}}
@media(max-width:360px){.hero h1{font-size:12.1vw}}



html[data-font="road30"]{--display-font:RoadJost}
html[data-font] :is(.hero h1,.choices h2,.setup h2,.journey .section-heading h2,.car-editorial-copy h2,.support-heading h2,.terms h2,.owner-heading h2,.faq h2,.contact h2){font-family:var(--display-font),sans-serif;font-synthesis:none}
html[data-font] :is(body,p,button,input,select,textarea,small,address,.eyebrow,.path-name,.brand-copy,.step-order,.topic-body){font-family:RoadOnest,sans-serif;font-synthesis:none}
html[data-font="road30"] :is(.hero h1,.choices h2,.setup h2,.journey .section-heading h2,.car-editorial-copy h2,.support-heading h2,.terms h2,.owner-heading h2,.faq h2,.contact h2){font-weight:600;letter-spacing:-.055em}
@media(min-width:761px){html[data-font="road30"] .hero h1{font-size:clamp(46px,5vw,90px)}}
@media(max-width:760px){html[data-font="road30"] .hero h1{font-size:clamp(37px,10.5vw,62px)}}
@media(min-width:761px){html[data-font="road30"] .support-heading h2{font-size:clamp(38px,4.1vw,65px);line-height:1.08}}
@media(max-width:760px){html[data-font="road30"] .support-heading h2{font-size:clamp(32px,8vw,54px);line-height:1.1}}

/* Selected system: display headlines, human-scale editorial text and controls. */

html[data-font="road30"] :is(.choices h2,.setup h2,.journey .section-heading h2,.car-editorial-copy h2,.support-heading h2,.terms h2,.owner-heading h2,.faq h2,.contact h2){font-weight:500;letter-spacing:-.025em;line-height:1.12}
html[data-font="road30"] .hero h1{font-weight:600;letter-spacing:-.03em}
html[data-font="road30"] .choices h2{font-size:clamp(32px,3.3vw,55px)}
html[data-font="road30"] .setup h2{font-size:clamp(32px,3.1vw,52px)}
html[data-font="road30"] .journey .section-heading h2{font-size:clamp(40px,4.2vw,68px)}
html[data-font="road30"] .car-editorial-copy h2{font-size:clamp(38px,4.1vw,68px)}
html[data-font="road30"] .terms h2{font-size:clamp(36px,3.8vw,62px)}
html[data-font="road30"] .owner-heading h2{font-size:clamp(45px,5vw,80px)}
html[data-font="road30"] .faq h2{font-size:clamp(35px,3.8vw,62px)}
html[data-font="road30"] .contact h2{font-size:clamp(40px,4.6vw,76px)}
html[data-font="road30"] :is(.journey-step h3,.terms-sequence h3,.request-form h3){font-weight:500;letter-spacing:-.025em;line-height:1.2}
html[data-font="road30"] :is(.faq-item>summary,.partners>summary,.owner-choices button,.fan-label){font-weight:500;letter-spacing:-.018em}
html[data-font="road30"] :is(.eyebrow,.step-order,.owner-kicker){letter-spacing:.12em}
html[data-font="road30"] .contact-heading>p:not(.eyebrow){color:#b9b6ac}
html[data-font="road30"] .office small{color:#aaa79d}
@media(max-width:760px){
 html[data-font="road30"] .choices h2{font-size:clamp(30px,8vw,48px)}
 html[data-font="road30"] :is(.setup h2,.terms h2,.faq h2){font-size:clamp(29px,7.6vw,48px)}
 html[data-font="road30"] :is(.journey .section-heading h2,.car-editorial-copy h2,.contact h2){font-size:clamp(30px,8vw,51px)}
 html[data-font="road30"] .owner-heading h2{font-size:clamp(30px,8vw,50px)}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 html[data-font="road30"] :is(.faq-item>summary,.partners>summary){transition:color .25s ease}
 html[data-font="road30"] :is(.faq-item>summary,.partners>summary):hover{color:#8d7510}
 html[data-font="road30"] :is(.yellow-link,.dark-link,.hero-car-link){transition:border-color .28s ease,color .28s ease}
 html[data-font="road30"] :is(.yellow-link,.dark-link,.hero-car-link):hover{border-color:currentColor}
}

html[data-font="road30"] :is(.support-topic summary i,.topic-num,.terms-sequence li>span){font-family:RoadOnest,Arial,sans-serif;font-synthesis:none}
html[data-font="road30"] .support-topic summary i{font-weight:400}

/* Readability: essential labels remain legible on small screens. */
.terms-sequence p,.terms-sequence-heading>p:last-child{color:#4f5148}
@media(max-width:760px){
 .hero-car-link{font-size:15px;line-height:1.35;color:#f1e8c6;padding:10px 0;margin-top:4px;border-color:#a69c795f}
 .car-image-label small{font-size:13px;line-height:1.45;color:#e3dfd1;max-width:34em}
 .support-portrait small{font-size:12px;line-height:1.4;color:#f2efe4;left:0;bottom:4%;max-width:90%;text-shadow:0 1px 5px #000,0 1px 10px #000}
 #step-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px}
 #step-nav .step-progress{font-size:12px;line-height:1.25;color:#bdbab0;padding:6px 1px;overflow-wrap:normal}
 #step-nav .step-progress>span{display:inline;font-size:11px;margin:0 7px 0 0}
 #step-nav .step-progress[aria-current="step"]{color:#ffd326}
 .journey-note{font-size:12px;line-height:1.4;color:#c7c4ba;margin-top:10px}
 .journey-step{scroll-margin-top:285px}
 .terms-sequence p,.terms-sequence-heading>p:last-child{font-size:16px;line-height:1.55;color:#4f5148}
}

