/* Shared reading hierarchy. Keep browser text scaling and zoom available. */
body{font-size:clamp(1rem,.95rem + .15vw,1.0625rem);line-height:1.7}
input,textarea,select,button{font-family:var(--body)}
h1,h2,h3,h4{letter-spacing:-.025em}
h2{font-size:clamp(1.8rem,3.4vw,2.65rem);line-height:1.2;text-wrap:balance}
h3{line-height:1.3}
.page-hero h1{font-size:clamp(2.1rem,4.8vw,3.65rem);font-weight:600;line-height:1.16;letter-spacing:-.035em;text-wrap:balance}
.el-hero-grid h1{font-size:clamp(2.1rem,4vw,3.35rem)}
p{ text-wrap:pretty }
.lead{line-height:1.75}
.sec-head p,.case-story p,.faq details p{max-width:70ch}
.nav-links a{font-size:.875rem}
.hero3 h1{font-size:clamp(2.1rem,5.8vw,4.6rem);font-weight:600;line-height:1.13;letter-spacing:-.04em;max-width:24ch;text-wrap:balance}
.hero-intro{font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.75;max-width:66ch}
.hero3 .h3-eyebrow{font-size:.78rem;letter-spacing:.1em;line-height:1.6}
.hero3 .tagline{font-size:.85rem;line-height:1.6}
.hero-detail{font-size:.875rem;line-height:1.7;max-width:62ch}
.hero3 .agency-comparison{max-width:68ch;font-size:.875rem;line-height:1.7;margin:14px auto 0;color:#bbceca}
.zero-offer>strong{font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.055em}
.zero-offer small{font-size:.75rem;line-height:1.5}
.faq summary{line-height:1.55}
@media(max-width:760px){
  .page-hero h1,.el-hero-grid h1{font-size:clamp(2.1rem,6.5vw,3rem);line-height:1.18}
  .hero3 h1{font-size:clamp(2rem,7.7vw,3.3rem);line-height:1.15;letter-spacing:-.035em}
  .hero3 .tagline{font-size:.8rem}.hero-detail{font-size:.8rem}
  .hero3 .agency-comparison{font-size:.8rem;max-width:44ch}
  .zero-offer small{font-size:.65rem}.lead{font-size:1.0625rem}
}
