/* Shared homepage typography for blog and location pages. */
:root{ --fl-font-body:Inter,"Aptos","Segoe UI Variable","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif; --fl-font-display:"Aptos Display","Segoe UI Variable Display",Inter,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif; --fl-reading-width:70ch; --fl-type-ink:#0a1931; --fl-type-copy:#33465f; --fl-type-soft:#64748b; } body.fl-redesign-v2{ font-family:var(--fl-font-body)!important; font-size:16px; line-height:1.66; letter-spacing:-.006em; font-kerning:normal; font-optical-sizing:auto; font-synthesis:none; font-feature-settings:"kern" 1,"liga" 1,"calt" 1; } body.fl-redesign-v2 :where(button,input,select,textarea){font-family:inherit!important} body.fl-redesign-v2 :where(h1,h2,h3,h4,h5,h6,.s-title,.service-title,.compare-title){ font-family:var(--fl-font-display)!important; font-kerning:normal; font-optical-sizing:auto; } body.fl-redesign-v2 :where(h1){font-weight:850!important;line-height:1.025!important;letter-spacing:-.048em!important} body.fl-redesign-v2 :where(h2){font-weight:820!important;line-height:1.14!important;letter-spacing:-.034em!important} body.fl-redesign-v2 :where(h3){font-weight:780!important;line-height:1.25!important;letter-spacing:-.019em!important} body.fl-redesign-v2 :where(h4,h5,h6){font-weight:760!important;line-height:1.32!important;letter-spacing:-.012em!important} body.fl-redesign-v2 :where(p,li,dd){line-height:1.72} body.fl-redesign-v2 :where(strong,b){font-weight:760} body.fl-redesign-v2 :where(small,.muted,.s-sub){letter-spacing:.004em} body.fl-redesign-v2 main h1{font-size:clamp(2rem,4vw,3.45rem)!important} body.fl-redesign-v2 :where(.hero h1,.kp-hero h1,.la-hero h1){ max-width:22ch; font-size:clamp(2.15rem,4.4vw,3.5rem)!important; line-height:1.02!important; letter-spacing:-.049em!important; text-wrap:balance; } body.fl-redesign-v2 :where(.hero-sub,.hero>p,.hero-copy>p:last-child,.kp-hero>div>p){ max-width:62ch; font-size:clamp(1rem,1.25vw,1.18rem)!important; line-height:1.68!important; letter-spacing:-.012em!important; } body.fl-redesign-v2 :where(.s-title,.service-title,#why-title,#referral-title){ font-size:clamp(1.75rem,3vw,2.7rem)!important; line-height:1.1!important; letter-spacing:-.04em!important; } body.fl-redesign-v2 :where(.sh .eyebrow,.hero-tag,.kp-label,.service-cat,.blog-guides-eyebrow,.fl-prefooter-kicker){ font-family:var(--fl-font-body)!important; font-size:.72rem!important; font-weight:820!important; line-height:1.25!important; letter-spacing:.105em!important; text-transform:uppercase!important; } body.fl-redesign-v2 :where(.article p,.article li,.kp-content p,.kp-content li,.content-section p,.content-section li){ color:var(--fl-type-copy); font-size:clamp(1rem,.25vw + .95rem,1.075rem); line-height:1.78!important; } body.fl-redesign-v2 :where(.article-inner>p,.kp-content>p,.content-section>p){max-width:var(--fl-reading-width)} body.fl-redesign-v2 :where(.article .lead,.kp-content>p:first-of-type){ max-width:64ch; font-size:clamp(1.08rem,.45vw + 1rem,1.22rem)!important; line-height:1.72!important; letter-spacing:-.012em; } body.fl-redesign-v2 :where(.article h2,.kp-content h2,.content-section h2){ margin-top:1.65em; font-size:clamp(1.45rem,2.2vw,2rem)!important; line-height:1.2!important; letter-spacing:-.032em!important; } body.fl-redesign-v2 :where(.article h3,.kp-content h3,.content-section h3){ font-size:clamp(1.17rem,1.4vw,1.42rem)!important; line-height:1.28!important; letter-spacing:-.022em!important; } body.fl-redesign-v2 :where(.article a,.kp-content a,.content-section a){ text-decoration-thickness:.08em; text-underline-offset:.17em; } body.fl-redesign-v2 :where(.fl-nav-links a,.fl-location-nav>summary,.fl-mobile-card a,.btn,.fl-header-call,.fl-header-cta,.fl-pay-renew-btn,.plan-btn,.pc-cta){ font-weight:760!important; letter-spacing:.006em!important; } body.fl-redesign-v2 :where(.fl-brand-copy strong,.logo-name,.brand-copy strong){ font-family:var(--fl-font-display)!important; font-weight:850!important; letter-spacing:-.032em!important; } body.fl-redesign-v2 :where(.fl-brand-copy small,.logo-tag,.brand-copy small,.connection-label,.stage-label){ font-weight:780!important; letter-spacing:.13em!important; } body.fl-redesign-v2 :where(.price,.plan-price,.pc-price,.plan-spd,.hero-num .n,.stat,.metric-value,.live-value){ font-family:var(--fl-font-display)!important; font-variant-numeric:tabular-nums lining-nums; letter-spacing:-.045em!important; } body.fl-redesign-v2 :where(table,.kp-meta,.post-meta,.badge){font-variant-numeric:tabular-nums lining-nums} body.fl-redesign-v2 :where(.fl-footer-title,.side-card h3,.kp-side-card h2){letter-spacing:-.012em!important} @media(max-width:720px){ body.fl-redesign-v2{font-size:15.5px;line-height:1.64} body.fl-redesign-v2 :where(.hero h1,.kp-hero h1,.la-hero h1){font-size:clamp(1.95rem,8.4vw,2.65rem)!important;line-height:1.04!important;letter-spacing:-.043em!important} body.fl-redesign-v2 :where(.s-title,.service-title,#why-title,#referral-title){font-size:clamp(1.65rem,7vw,2.15rem)!important;line-height:1.12!important} body.fl-redesign-v2 :where(.article p,.article li,.kp-content p,.kp-content li,.content-section p,.content-section li){font-size:1rem;line-height:1.74!important} }
/* Explicit scope wins over older article and archive rules. */
body.fl-type-match .hero h1,body.fl-type-match .kp-hero h1,body.fl-type-match .la-hero h1{font-size:clamp(2.15rem,4.4vw,3.5rem)!important;line-height:1.02!important}
body.fl-type-match .hero p,body.fl-type-match .kp-hero p,body.fl-type-match .la-hero p{font-size:clamp(1rem,1.25vw,1.18rem)!important;line-height:1.68!important}
body.fl-type-match .article p,body.fl-type-match .article li,body.fl-type-match .kp-content p,body.fl-type-match .kp-content li{font-size:clamp(1rem,.25vw + .95rem,1.075rem);line-height:1.78!important}
body.fl-type-match .article h2,body.fl-type-match .kp-content h2{font-size:clamp(1.45rem,2.2vw,2rem)!important;line-height:1.2!important}
body.fl-type-match .article h3,body.fl-type-match .kp-content h3{font-size:clamp(1.17rem,1.4vw,1.42rem)!important;line-height:1.28!important}
body.fl-type-match .blog-visual-intro h2,body.fl-type-match .fl-guide-collection>h2{font-size:clamp(1.75rem,3vw,2.7rem)!important;line-height:1.1!important}
body.fl-type-match .post-card h2,body.fl-type-match .fl-guide-card h3,body.fl-type-match .la-card h2{font-size:18px!important;line-height:1.35!important;letter-spacing:-.18px!important}
body.fl-type-match .post-card p,body.fl-type-match .fl-guide-card p,body.fl-type-match .la-card p{font-size:13px!important;line-height:1.65!important}
body.fl-type-match .post-card .k,body.fl-type-match .fl-guide-tag,body.fl-type-match .la-card-badge{font-size:12px!important;line-height:1.35!important}
body.fl-type-match .post-card .read,body.fl-type-match .fl-guide-read,body.fl-type-match .la-card-link{font-size:14px!important;line-height:1.5!important}
body.fl-type-match .la-card-media img{width:100%;height:100%;aspect-ratio:16/9;object-fit:cover}
@media(max-width:720px){
body.fl-type-match .hero h1,body.fl-type-match .kp-hero h1,body.fl-type-match .la-hero h1{font-size:clamp(1.95rem,8.4vw,2.65rem)!important;line-height:1.04!important}
body.fl-type-match .article p,body.fl-type-match .article li,body.fl-type-match .kp-content p,body.fl-type-match .kp-content li{font-size:1rem;line-height:1.74!important}
body.fl-type-match .blog-visual-intro h2,body.fl-type-match .fl-guide-collection>h2{font-size:clamp(1.65rem,7vw,2.15rem)!important}
}
