/* EasyRiyada shared readable typography */
html { font-size: 16px; }
body { font-size: 16px; line-height: 1.65; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
p, li { line-height: 1.8; }
small { font-size: 12px !important; line-height: 1.55; }
button, input, select, textarea { font-family: inherit; font-size: 14px; line-height: 1.45; }
.primary, .outline, .large, .profile, .message { font-size: 14px !important; }
nav a, .header nav a, .nav-link, .header-actions, .breadcrumbs, .trust { font-size: 14px !important; }
.eyebrow, .badge, .chip, .filter-chip, .filter-chips button, .filter-chips label { font-size: 13px !important; }
.section-head p, .hero-copy > p, .hero p, .intro p, .subtitle { font-size: 16px !important; }
.section-head h2 { font-size: clamp(30px, 4vw, 42px) !important; line-height: 1.3; }
.type-grid h3, .feature-grid h3, .service-card h3, .card h3 { font-size: 18px !important; }
.type-grid p, .feature-grid p, .service-card p, .card p, .bio, .steps p, .roles p, .how p { font-size: 14px !important; }
.type-grid span, .type-grid button, .card-actions button, .rating, .tags span, .available span, .available b { font-size: 12px !important; }
.name h3, .coach-name, .profile-name { font-size: 18px !important; }
.name p, .results-head p, .search-bar input, .search-bar select, .search-bar label > small { font-size: 13px !important; }
.results-head h3, .panel h2 { font-size: 18px !important; }
.steps h3 { font-size: 18px !important; }
.steps article > b { font-size: 14px !important; }
.footer-grid p, .footer-grid a, .footer-grid span, footer p, footer a, footer small, .copyright { font-size: 13px !important; }
.booking-modal form > p, .booking-modal label, .booking-modal input, .booking-modal select, .booking-modal textarea, .future-note, .toast { font-size: 14px !important; }
.smart-assistant-link { display:block; margin:12px 8px; padding:11px 13px; border-radius:9px; background:#e5f6ef; color:#00845a; text-decoration:none; font-size:14px; font-weight:800; }
@media (max-width: 580px) {
  html, body { font-size: 16px; }
  nav a, .header nav a { font-size: 15px !important; }
  button, input, select, textarea { min-height: 42px; }
}
