/* Shared typography. Loaded after component styles; no third-party font request. */
:root{--vf-font:Arial,"Helvetica Neue",Helvetica,sans-serif;--vf-text:16px;--vf-small:14px;--vf-h1:clamp(30px,4vw,42px);--vf-h2:clamp(26px,3vw,32px);--vf-h3:clamp(20px,2vw,24px)}
body{font-family:var(--vf-font);font-size:var(--vf-text);font-weight:400;line-height:1.65;letter-spacing:normal}
h1,h2,h3,h4,h5,h6,p,a,li,label,summary,table,figcaption,dialog,button,input,select,textarea{font-family:var(--vf-font)}
h1,h2,h3,h4,h5,h6{font-weight:700;letter-spacing:normal;line-height:1.3}
h1,.detail-grid h1,.section-head h1{font-size:var(--vf-h1);line-height:1.25}
h2,.section-head h2,.vehicle-expanded .section-head h2,.vehicle-prose h2,.sales-editorial h2,.lead-grid h2,.group-title h2{font-size:var(--vf-h2);line-height:1.3;letter-spacing:normal}
h3,.feature-row h3,.sales-editorial h3,.calculator-result h3,.detail-contact h3,.experience-card h3{font-size:var(--vf-h3);line-height:1.35}
.vehicle-copy h3,.news-grid h3,.ownership-grid h3{font-size:20px;line-height:1.4}
.trust-grid h3,.footer-grid h3{font-size:18px;line-height:1.4}
.sales-editorial p,.vehicle-prose p,.entry-content li{font-size:var(--vf-text);font-weight:400;line-height:1.75}
strong,b,.primary-nav a,.btn,.quick-nav a,.vehicle-copy p,.vehicle-copy span,.experience-card a,.news-grid span,.floating-actions a,.detail-nav a,.faq summary,.editorial-faq summary{font-weight:700}
.btn,.quick-nav a,.floating-actions a{font-size:14px;line-height:1.45;letter-spacing:normal}
.primary-nav a,.detail-nav a{font-size:15px;line-height:1.5}
.eyebrow,.group-title span,.feature-number{font-weight:700;letter-spacing:.06em}
.eyebrow{font-size:13px;line-height:1.5}
.lead-form label,.calculator-fields label{font-size:14px;font-weight:700;line-height:1.5}
button,input,select,textarea{font-family:var(--vf-font);letter-spacing:normal}
.lead-form input:not([type=checkbox]),.lead-form select,.lead-form textarea,.calculator-fields input,.calculator-fields select{font-family:var(--vf-font);font-size:16px;font-weight:400;line-height:1.5}
input::placeholder,textarea::placeholder{font-family:var(--vf-font);font-size:inherit;font-weight:400;opacity:1;color:#667085}
.lead-form .consent{font-size:13px;font-weight:400;line-height:1.6}
.fineprint,.source-note,.sales-editorial .source-note,.form-message,.copyright,.vehicle-prose figcaption,.detail-gallery span,.trust-grid p{font-size:13px;font-weight:400;line-height:1.65}
.price-table th,.price-table td,.calculator-result [data-calculator-result] p{font-size:14px;line-height:1.6}
.detail-price{font-size:26px;font-weight:700;line-height:1.4}
.detail-price,.vehicle-copy p,.price-table,.calculator-result{font-variant-numeric:tabular-nums}
.quote-dialog-header h2{font-size:20px;font-weight:700;line-height:1.4;letter-spacing:normal;text-wrap:balance}
.quote-dialog .lead-form label{font-size:14px;font-weight:700;line-height:1.5}
.quote-dialog .lead-form .consent{font-size:13px;font-weight:400;line-height:1.6}
.quote-dialog .btn-block{font-size:14px;font-weight:700;line-height:1.45}
@media(max-width:600px){.vehicle-copy h3{font-size:17px}.vehicle-copy p{font-size:14px}.vehicle-copy span{font-size:12px}.quick-nav a{font-size:13px}.quote-dialog-header h2{font-size:18px}.detail-price{font-size:24px}}
