/* Readability layer — scalable typography and stronger contrast. */
:root { --muted: #526177; }
body { font-size: 17px; line-height: 1.68; }
.lead, .hero-intro, .hero-services { color: #344860; }
.hero-intro { font-size: clamp(16px, 1.15vw, 18px); line-height: 1.75; }
.hero-services { font-size: clamp(17px, 1.28vw, 20px); line-height: 1.6; }
.card p, .case p, .steps p, .timeline p { font-size: 16px; color: #465870; line-height: 1.7; }
.eyebrow, .hero-note, .note { font-size: 14px; }
.stats span { font-size: 14px; color: #d3def0; }
.pill-label, .workflow-hint { font-size: 12px; letter-spacing: .075em; }
.industry-intro { color: #42546c; }
.result span { color: #4d6078; font-size: 17px; }
.form-desc { font-size: 16px !important; color: #4d5f76; }
.form-kicker { font-size: 12px !important; }
.lead-form label { font-size: 15px; }
.lead-form input:not([type=checkbox]), .lead-form textarea { font-size: 16px; }
.lead-form .consent { font-size: 14px; color: #40516a; }
.field-error { font-size: 14px; }
.form-status { font-size: 15px; }
.contact-options a { font-size: 20px; }
.prose, .prose p, .prose li { font-size: 17px; line-height: 1.75; }
.tags span { font-size: 14px; }
.footer-nav a, .footer-policy a { font-size: 14px; color: #dde6f3; }
.footer-business { font-size: 14px; color: #d5e0ef; }
.footer-business strong { font-size: 15px; }
.footer-copyright { color: #bfccdd; font-size: 13px; }
.footer-contact-card strong { font-size: 16px; }
.footer-contact-card small { font-size: 13px; color: #c6d4e7; }
.footer-coverage { font-size: 13px; }
.max-nudge { font-size: 14px; }
.max-nudge strong { font-size: 15px; }
.max-nudge span { color: #4b5b73; }
body.redesigned>header nav a { font-size: 14px; color: #263a52; }
body.redesigned>header .brand small { font-size: 10px; color: #526178; letter-spacing: 1.8px; }
body.redesigned>header .header-phone strong,
body.redesigned>header .header-email strong { font-size: 14px; }
body.redesigned>header .header-phone small,
body.redesigned>header .header-email small { font-size: 12px; color: #596b80; }
body.redesigned>header .header-max { font-size: 13px; }
body.redesigned>header .header-cta { font-size: 13px; }
@media(max-width:1100px) { body.redesigned>header nav a { font-size: 16px; } }
@media(max-width:760px) {
  body { font-size: 16px; }
  .card p, .case p { font-size: 16px; }
  .hero-intro { font-size: 17px; }
  .hero-services { font-size: 17px; }
  .prose, .prose p, .prose li { font-size: 16px; }
  .stats span { font-size: 14px; }
  body.redesigned>header .brand small { font-size: 9px; letter-spacing: 1px; }
}
