/* =====================================================================
   Pooja Model Public School - one typography system for every template
   Family : DM Sans (text)  +  Playfair Display italic (green accent words only)
   Scale  : h1 52 / h2 40 / h3 20 / lead 17-18 / body 16 / small 14-15
   Weights: headings 800 (h3 700) / body 400 / labels & buttons 700
   Loaded last, so it applies to Home and all inner pages alike.
   ===================================================================== */
:root {
    --ff-sans: "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    --ff-serif: "Playfair Display", Georgia, "Times New Roman", serif;
    --fs-h1: clamp(30px, 3.7vw, 52px);
    --fs-h2: clamp(28px, 3vw, 40px);
    --fs-h3: 20px;
    --fs-lead: 17px;
    --fs-body: 16px;
    --fs-small: 14.5px;
    --lh-body: 1.8;
    --fw-head: 800;
    --fw-sub: 700;
    --fw-body: 400;
}

/* ---- family: body, form controls and headings all DM Sans ---- */
body { font-family: var(--ff-sans); font-size: var(--fs-body); font-weight: var(--fw-body); }
button, input, select, textarea, optgroup { font-family: inherit; }
h1, h2, h3, h4, h5, h6 { font-family: var(--ff-sans) !important; }
/* green accent words inside headings: Playfair italic everywhere */
h1 em, h2 em, h3 em, h1 span.ac, h2 span, h1 span.ac,
.sec-head-v2 h2 span, .abh h2 em, .ax-head h2 span, .ax-title em {
    font-family: var(--ff-serif) !important; font-style: italic; font-weight: 700;
}

/* ---- headings ---- */
h1 { font-weight: var(--fw-head); letter-spacing: -.02em; line-height: 1.12; }
section h2, .sec-head-v2 h2, .mv-content h2, .why-v2 h2, .faq-v4 h2, .abh h2, .ax-head h2, .ax-title,
.inner-page .section-title h2, .inner-page .post-entry h2, .inner-page .page-services h2 {
    font-size: var(--fs-h2) !important; font-weight: var(--fw-head) !important; line-height: 1.15 !important; letter-spacing: -.02em !important;
}
/* second-level headings inside inner pages */
.inner-page .section-title h2 + h2, .inner-page .page-services .col-lg-6 h2, .inner-page .about-owner-info h2,
.inner-page .section-title h2[style*="30px"], .inner-page .section-title h2[style*="29px"] {
    font-size: clamp(22px, 2.2vw, 26px) !important; font-weight: var(--fw-head) !important;
}
section h3, .inner-page h3, .site-footer h4 { font-weight: var(--fw-sub); }
section h3, .inner-page .post-entry h3, .about-us-content h3 { font-size: var(--fs-h3) !important; font-weight: var(--fw-sub) !important; line-height: 1.3; }

/* ---- body copy ---- */
section p, .inner-page .page-about-us p, .inner-page .post-entry p, .inner-page .page-services p, .inner-page .about-owner-info p {
    font-size: var(--fs-body) !important; line-height: var(--lh-body) !important; font-weight: var(--fw-body);
}
section li { line-height: 1.7; }
/* lead paragraph under a heading */
.sec-head-v2 p, .ax-head p, .abh-lead, .ax-story-lead, .inner-page .page-about-us .sec-kick + h2 + p, .ph-lead, .ax-hero-lead {
    font-size: var(--fs-lead) !important; line-height: 1.7 !important;
}
.abh-lead, .inner-page .page-about-us .sec-kick + h2 + p { font-size: 18px !important; font-weight: 500 !important; }

/* ---- labels (kickers), chips and buttons ---- */
.sec-kicker, .abh-kicker, .ax-kicker, .sec-kick, .ph-kicker, .ax-hero-kicker { font-family: var(--ff-sans); font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.btn-default, .ax-btn, .ph-btn, .abh-btn, .about-v3-btn, .btn-v2, .readmore-btn { font-family: var(--ff-sans); font-size: 15px; font-weight: 700; }

/* ---- tables ---- */
.inner-tbl th, .inner-tbl td { font-family: var(--ff-sans) !important; font-size: 15px !important; }
.inner-tbl th { font-weight: 700 !important; }

/* ---- header & footer ---- */
.navbar .nav-link, .main-menu a { font-family: var(--ff-sans); font-size: 15px; font-weight: 500; }
.site-footer, .site-footer a, .site-footer li, .site-footer p { font-family: var(--ff-sans); }
.site-footer li, .site-footer a, .site-footer p { font-size: 15px; }
.site-footer h4 { font-size: 19px; }

/* small print on phones */
@media (max-width: 575px) { :root { --fs-body: 15.5px; --fs-lead: 16px; } .abh-lead, .inner-page .page-about-us .sec-kick + h2 + p { font-size: 16.5px !important; } }
