/*
 * global-fonts.css
 * Single source of truth for typography across ALL pages.
 *
 * Rule:
 *   Headings  (h1–h6)  → Playfair Display (serif, premium feel)
 *   Everything else    → Poppins (clean, modern sans-serif)
 *
 * Included on: every public page, every SEO page, admin panel.
 */

/* ── Font variables ─────────────────────────────────────────────────────────── */
:root {
  --font-heading: 'Playfair Display', Georgia, 'Times New Roman', serif;
  --font-body:    'Poppins', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

/* ── Base: everything uses Poppins ──────────────────────────────────────────── */
*,
*::before,
*::after {
  font-family: var(--font-body);
}

html,
body {
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* ── Headings: Playfair Display ─────────────────────────────────────────────── */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--font-heading) !important;
  line-height: 1.2;
  font-weight: 700;
}

/* ── Body elements: Poppins ─────────────────────────────────────────────────── */
p, li, td, th, label, input, textarea, select, button,
blockquote, figcaption, caption, legend, dt, dd,
.btn, .badge, .nav-link, .navbar-brand,
.form-control, .form-select, .form-label,
code, pre, kbd, samp {
  font-family: var(--font-body);
}

/* ── Specific weight assignments ────────────────────────────────────────────── */
h1 { font-weight: 800; }
h2 { font-weight: 700; }
h3 { font-weight: 700; }
h4 { font-weight: 600; }
h5 { font-weight: 600; }
h6 { font-weight: 600; }

p  { font-weight: 400; }
li { font-weight: 400; }

/* ── Admin panel: Poppins everywhere (no serif in dashboards) ───────────────── */
.admin-panel h1,
.admin-panel h2,
.admin-panel h3,
.admin-panel h4,
.admin-panel h5,
.admin-panel h6,
.sidebar h1,
.sidebar h2,
.sidebar h3,
.main-wrap h1,
.main-wrap h2,
.main-wrap h3,
.main-wrap h4,
.main-wrap h5,
.main-wrap h6,
.ent-header h1,
.ent-header h2,
.ent-header h3,
.pa-topbar h1,
.pa-topbar h2,
.pa-topbar h3,
.section-wrap h5,
.pc-head span {
  font-family: var(--font-body) !important;
  font-weight: 700;
}

/* ── SEO pages: enforce heading font ────────────────────────────────────────── */
.pg-hero h1,
.seo-hero h1,
.svc-hero h1,
.svc-hero h2,
.pg-hero h2 {
  font-family: var(--font-heading) !important;
}

/* ── Navigation: always Poppins ─────────────────────────────────────────────── */
header,
header *,
.navbar,
.navbar *,
.offcanvas,
.offcanvas * {
  font-family: var(--font-body) !important;
}

/* ── Footer headings: Playfair ──────────────────────────────────────────────── */
footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6 {
  font-family: var(--font-heading) !important;
}

/* ── Blog: headings serif, body sans ────────────────────────────────────────── */
.blg-hero-h1,
.blg-post-title,
.bp-title {
  font-family: var(--font-heading) !important;
}

/* ── Modals & dropdowns: Poppins ────────────────────────────────────────────── */
.modal,
.modal *,
.dropdown-menu,
.dropdown-menu * {
  font-family: var(--font-body);
}
