/* ============================================================
   LATO — Default font for all UI text, nav, descriptions
   Rules: ONLY body text, nav, paragraphs, labels, buttons
   NEVER touch: h1, h2, h3, h4 — those stay Playfair Display
   ============================================================ */

/* ---- Base body font ------------------------------------- */
body,
p,
li,
td,
th,
span,
div,
label,
input,
select,
textarea,
button {
  font-family: 'Lato', 'Inter', system-ui, -apple-system, sans-serif;
}

/* ---- Navigation ----------------------------------------- */
.gn__links > li > a,
.gn__brandname,
.gn__cta,
.gn__links.mobile-open li a,
.mega__item__name,
.mega__item__count,
.mega__list-header,
.mega__all a,
.mega__preview__desc,
.mega__preview__stat-lbl,
.mega__preview__btn,
.mega__preview__link {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ---- Hero text (NOT the headline h1) -------------------- */
.rh__badge,
.rh__sub1,
.rh__sub2,
.rh__desc,
.rh__btn,
.rh__strip-label,
.rh__strip-value {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ---- Sections & Cards ----------------------------------- */
.tcol-item__label,
.tcol-item p,
.icon-feature__label,
.icon-feature p,
.shaping-label,
.shaping-right p,
.stat-b__label,
.stat-b__sub,
.section-label,
.sph-section-head p,
.sph-step p,
.sph-step h4,
.ip-section-header p,
.ip-section-header--center p {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ---- Cards body text ------------------------------------ */
.ip-card p,
.ip-card h4,
.ip-service-card p,
.ip-job-card__title,
.ip-job-card__meta span,
.ip-job-card__desc,
.ip-job-card__date,
.ip-step p,
.ip-step h4,
.ip-strength p,
.benefit-card p,
.benefit-card h3 {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ---- About, Mission, Testimonial body text -------------- */
.ip-about-intro__text p,
.ip-mv-card p,
.testimonial-quote,
.testimonial-cite__name,
.testimonial-cite__role,
.testimonial-stars,
.testimonial-label,
.team-intro p {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ---- Footer --------------------------------------------- */
.footer-brand p,
.footer-col a,
.footer-col h5,
.footer-contact-list li,
.footer-bottom p,
.footer-legal a,
.gn__logo .gn__brandname {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ---- Forms ---------------------------------------------- */
.ip-form-group label,
.ip-trust-note,
.ip-field-error,
.ip-submit-btn,
.ip-form-card h2,
.ip-success h3,
.ip-success p,
.ip-contact-info h2,
.ip-contact-details li,
.ip-alt-card p,
.ip-hero__sub,
.ip-hero__h1 em {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ---- Contact strip, buttons, badges -------------------- */
.rh__badge,
.ip-eyebrow,
.section-label,
.btn-link,
.btn-primary,
.btn-outline,
.btn-ghost-white,
.btn-white,
.btn-dark,
.gn__cta,
.nav-cta {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ---- Search bar & job filters --------------------------- */
.ip-search-input input,
.ip-search-select,
.ip-search-btn,
.ip-jobs-count,
.ip-pagination button {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ---- Three-col cards (homepage) ------------------------- */
.tcol-item p {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ---- Legal pages ---------------------------------------- */
.legal-section p,
.legal-section a {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ---- Portfolio cards ------------------------------------ */
.portfolio-card__tag,
.portfolio-card__sub,
.mega__preview__desc {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ---- Newsletter ----------------------------------------- */
.newsletter-text p,
.newsletter-form input,
.newsletter-form button {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ---- Topbar --------------------------------------------- */
.topbar,
.topbar a {
  font-family: 'Lato', 'Inter', system-ui, sans-serif;
}

/* ============================================================
   EXPLICITLY PRESERVE — Playfair Display stays on all headings
   (Listed here for clarity; these are NOT changed by Lato rules)
   ============================================================ */
h1, h2, h3,
.rh__h1,
.tcol-item h3,
.ip-section-header h2,
.ip-card h4,
.ip-about-intro__text h2,
.ip-mv-card h3,
.ip-strength h4,
.ip-service-card h3,
.portfolio-card__title,
.mega__preview__title,
.testimonial-body h2,
.team-intro h2,
.newsletter-text h3,
.footer-brand .gn__brandname,
.shaping-left h2,
.sph-section-head h2,
.stat-b__num,
.ip-stat-card__num,
.ip-hero__h1 {
  font-family: 'Playfair Display', Georgia, 'Times New Roman', serif;
}
