/*
 * FORCE_READABILITY.css — v5.0 FINAL
 * Fixes ALL text visibility on dark/coloured backgrounds.
 * IMPORTANT: Buttons/CTAs on dark backgrounds get their OWN colour — never inherit white.
 */

/* ─── GLOBAL PROFESSIONAL FONT ───────────────────────────── */
html, body, * {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
}

/* Preserve Font Awesome icon font to prevent square/tofu boxes */
i.fas, i.fa-solid,
i.far, i.fa-regular,
i.fab, i.fa-brands,
.fas, .fa-solid,
.far, .fa-regular,
.fab, .fa-brands {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands" !important;
}

i.fas, i.fa-solid,
i.far, i.fa-regular {
    font-weight: 900 !important;
}

/* ─── SEO TYPOGRAPHY SYSTEM (SITE-WIDE) ──────────────────── */
html {
    font-size: 16px !important;
}

body {
    font-size: 16px !important;
    line-height: 1.7 !important;
    color: #1f2937 !important;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

h1, .hero-title {
    font-size: clamp(1.8rem, 2.8vw, 2.8rem) !important;
    line-height: 1.25 !important;
    letter-spacing: -0.02em !important;
    margin-bottom: 0.85rem !important;
}

h2 {
    font-size: clamp(1.5rem, 2.1vw, 2.1rem) !important;
    line-height: 1.3 !important;
    margin-bottom: 0.75rem !important;
}

h3 {
    font-size: clamp(1.2rem, 1.6vw, 1.5rem) !important;
    line-height: 1.35 !important;
    margin-bottom: 0.65rem !important;
}

h4 {
    font-size: clamp(1.05rem, 1.3vw, 1.2rem) !important;
    line-height: 1.4 !important;
    margin-bottom: 0.5rem !important;
}

p, li {
    font-size: 1rem !important;
    line-height: 1.8 !important;
    margin-bottom: 0.85rem !important;
}

.hero-subtitle,
.ba-hero-desc,
.legal-text,
.footer-links a {
    font-size: 0.98rem !important;
}

/* Guide CTA heading visibility + spacing consistency */
.cta-box h3,
.cta-box .ba-h3,
.sidebar-cta-card h3,
.sidebar-cta-card .ba-h3 {
    color: #ffffff !important;
    text-align: center !important;
    margin-bottom: 1rem !important;
    line-height: 1.35 !important;
}

/* Keep small line under CTA button lower and clearer */
.cta-box a + p,
.cta-box .elementor-button + p {
    margin-top: 1.4rem !important;
    margin-bottom: 0 !important;
    line-height: 1.8 !important;
}

/* Extra spacing only for Emergency/Urgent/Routine headings blocks */
.ba-section div[style*="border-left: 5px solid"] h4 {
    margin-bottom: 0.95rem !important;
    line-height: 1.5 !important;
    letter-spacing: 0.01em !important;
}

@media (max-width: 768px) {
    body {
        font-size: 15px !important;
        line-height: 1.7 !important;
    }

    p, li {
        font-size: 0.98rem !important;
        line-height: 1.75 !important;
        margin-bottom: 0.75rem !important;
    }
}

/* ABSOLUTE FINAL TYPOGRAPHY OVERRIDE (SEO + UX) */
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(h1, h2, h3, h4) {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -0.01em !important;
    color: #0f172a !important;
}
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h1 { font-size: clamp(2.05rem, 3.4vw, 2.85rem) !important; line-height: 1.24 !important; }
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h2 { font-size: clamp(1.62rem, 2.55vw, 2.15rem) !important; line-height: 1.3 !important; }
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h3 { font-size: clamp(1.3rem, 1.95vw, 1.62rem) !important; line-height: 1.36 !important; }
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h4 { font-size: clamp(1.12rem, 1.58vw, 1.32rem) !important; line-height: 1.42 !important; }
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(p, li) {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 1.06rem !important;
    line-height: 1.78 !important;
    font-weight: 400 !important;
    text-align: left !important;
    text-align-last: left !important;
    text-justify: auto !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
    hyphens: none !important;
}
@media (max-width: 768px) {
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h1 { font-size: 1.65rem !important; }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h2 { font-size: 1.38rem !important; }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h3 { font-size: 1.18rem !important; }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h4 { font-size: 1.05rem !important; }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(p, li) { font-size: 1rem !important; line-height: 1.72 !important; }
}

/* Normalize inline-sized text inside content areas */
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(p, li, span, a, strong, em)[style*="font-size"] {
    font-size: 1.06rem !important;
    line-height: 1.78 !important;
}
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(h1, h2, h3, h4)[style*="font-size"] {
    font-size: inherit !important;
}

@media (max-width: 768px) {
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(p, li, span, a, strong, em)[style*="font-size"] {
        font-size: 1rem !important;
        line-height: 1.72 !important;
    }
}

/* ABSOLUTE FINAL CONSISTENT TYPOGRAPHY (ALL PAGE CONTENT SECTIONS) */
:root {
    --seo-h1-size: 2.5rem;
    --seo-h2-size: 2rem;
    --seo-h3-size: 1.55rem;
    --seo-h4-size: 1.25rem;
    --seo-body-size: 1.06rem;
    --seo-body-line: 1.78;
}

body :where(main, article, section, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap)
:where(h1, h2, h3, h4, p, li) {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    text-align: left !important;
    text-align-last: left !important;
    text-justify: auto !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
    hyphens: none !important;
}

/* ─── HUB HERO H1 CENTER OVERRIDE ───────────────────────── */
/* Must come AFTER the generic :where() left-align rule above. */
/* Higher specificity than body :where(...) :where(h1) */
body section.hub-hero h1,
body section.hub-hero h1[style],
body section.hub-hero .container h1,
body section.hub-hero .container h1[style],
.hub-hero,
.hub-hero h1,
.hub-hero h1[style],
.hub-hero .container,
.hub-hero .container h1,
.hub-hero .container h1[style] {
    text-align: center !important;
    text-align-last: center !important;
}
body section.hub-hero h1 span,
body section.hub-hero h1[style] span,
.hub-hero h1 span,
.hub-hero h1[style] span {
    text-align: center !important;
}

body :where(main, article, section, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h1 {
    font-size: var(--seo-h1-size) !important;
    line-height: 1.24 !important;
    font-weight: 800 !important;
}
body :where(main, article, section, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h2 {
    font-size: var(--seo-h2-size) !important;
    line-height: 1.3 !important;
    font-weight: 800 !important;
}
body :where(main, article, section, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h3 {
    font-size: var(--seo-h3-size) !important;
    line-height: 1.36 !important;
    font-weight: 800 !important;
}
body :where(main, article, section, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h4 {
    font-size: var(--seo-h4-size) !important;
    line-height: 1.42 !important;
    font-weight: 800 !important;
}
body :where(main, article, section, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(p, li) {
    font-size: var(--seo-body-size) !important;
    line-height: var(--seo-body-line) !important;
    font-weight: 400 !important;
}

@media (max-width: 768px) {
    :root {
        --seo-h1-size: 1.65rem;
        --seo-h2-size: 1.38rem;
        --seo-h3-size: 1.18rem;
        --seo-h4-size: 1.05rem;
        --seo-body-size: 1rem;
        --seo-body-line: 1.72;
    }
}

/* GLOBAL SIZE LOCK — final consistent heading/content scale */
:root {
    --global-h1: clamp(2rem, 3.3vw, 2.8rem);
    --global-h2: clamp(1.6rem, 2.5vw, 2.15rem);
    --global-h3: clamp(1.28rem, 1.9vw, 1.62rem);
    --global-h4: clamp(1.1rem, 1.5vw, 1.32rem);
    --global-body: 1.06rem;
    --global-line: 1.76;
}

body :where(h1) { font-size: var(--global-h1) !important; line-height: 1.24 !important; }
body :where(h2) { font-size: var(--global-h2) !important; line-height: 1.3 !important; }
body :where(h3) { font-size: var(--global-h3) !important; line-height: 1.36 !important; }
body :where(h4) { font-size: var(--global-h4) !important; line-height: 1.42 !important; }
body :where(p, li) { font-size: var(--global-body) !important; line-height: var(--global-line) !important; }

/* Keep form/help text readable and consistent */
body :where(label, input, textarea, select, .radio-option, .check-list li, .legal-text) {
    font-size: 1rem !important;
    line-height: 1.7 !important;
}

@media (max-width: 768px) {
    :root {
        --global-h1: 1.65rem;
        --global-h2: 1.38rem;
        --global-h3: 1.18rem;
        --global-h4: 1.05rem;
        --global-body: 1rem;
        --global-line: 1.72;
    }
}

/* ABSOLUTE FINAL TYPOGRAPHY OVERRIDE (DO NOT PLACE RULES AFTER THIS) */
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(h1, h2, h3, h4) {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -0.01em !important;
    color: #0f172a !important;
}

body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h1 { font-size: clamp(1.95rem, 3.2vw, 2.7rem) !important; line-height: 1.24 !important; }
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h2 { font-size: clamp(1.52rem, 2.4vw, 2.05rem) !important; line-height: 1.3 !important; }
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h3 { font-size: clamp(1.24rem, 1.85vw, 1.55rem) !important; line-height: 1.36 !important; }
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h4 { font-size: clamp(1.08rem, 1.5vw, 1.28rem) !important; line-height: 1.42 !important; }

body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(p, li) {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 1rem !important;
    line-height: 1.75 !important;
    font-weight: 400 !important;
    text-align: left !important;
    text-align-last: left !important;
    text-justify: auto !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
    hyphens: none !important;
}

@media (max-width: 768px) {
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h1 { font-size: 1.55rem !important; }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h2 { font-size: 1.3rem !important; }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h3 { font-size: 1.12rem !important; }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h4 { font-size: 1.02rem !important; }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(p, li) { font-size: 0.98rem !important; line-height: 1.72 !important; }
}

/* ─── UNIVERSAL CTA BOX FIX FOR ALL GUIDE ARTICLES ───── */
/* Center the CTA box heading */
.cta-box h3.ba-h3,
.guide-content .cta-box h3,
.blog-content .cta-box h3,
.main-article-content .cta-box h3,
article .cta-box h3 {
    text-align: center !important;
    display: block !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    color: #ffffff !important;
}

/* Keep main paragraph left-aligned */
.cta-box > p:first-of-type,
.guide-content .cta-box > p:first-of-type,
.blog-content .cta-box > p:first-of-type {
    text-align: left !important;
    color: #ffffff !important;
}

/* Center the bottom line (second paragraph) */
.cta-box > p:nth-of-type(2),
.guide-content .cta-box > p:nth-of-type(2),
.blog-content .cta-box > p:nth-of-type(2) {
    text-align: center !important;
    color: rgba(255,255,255,0.9) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Hide the reviews line in CTA boxes */
.cta-box > div:last-child,
.cta-box > div:last-of-type,
.guide-content .cta-box > div:last-child,
.blog-content .cta-box > div:last-child {
    display: none !important;
}

/* Ensure CTA box container is centered */
.cta-box,
.guide-content .cta-box,
.blog-content .cta-box,
.main-article-content .cta-box {
    text-align: center !important;
}

/* Center the button */
.cta-box a,
.guide-content .cta-box a,
.blog-content .cta-box a {
    display: inline-block !important;
}

/* FINAL: force CTA heading center in guide/blog article boxes */
body :where(.guide-content, .blog-content) .cta-box :where(h3, .ba-h3, h2, .ba-h2) {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    display: block !important;
}

/* ABSOLUTE LAST RULE: keep article CTA headings centered on desktop + mobile */
article.guide-content.blog-article .cta-box h3,
article.guide-content.blog-article .cta-box .ba-h3,
.guide-content .cta-box h3,
.guide-content .cta-box .ba-h3,
.blog-content .cta-box h3,
.blog-content .cta-box .ba-h3 {
    text-align: center !important;
    margin: 0 auto 1rem auto !important;
    width: 100% !important;
    display: block !important;
}

/* CENTER ALL CTA BOX TEXT */
.cta-box,
.cta-box[style],
.guide-content .cta-box,
.blog-content .cta-box,
article .cta-box,
.main-article-content .cta-box {
    text-align: center !important;
}
.cta-box p,
.cta-box p[style],
.guide-content .cta-box p,
.blog-content .cta-box p,
article .cta-box p,
.main-article-content .cta-box p {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.cta-box a,
.cta-box a[style],
.guide-content .cta-box a,
.blog-content .cta-box a,
article .cta-box a,
.main-article-content .cta-box a {
    display: inline-block !important;
}
.cta-box h3,
.cta-box h3[style],
.cta-box .ba-h3,
.guide-content .cta-box h3,
.blog-content .cta-box h3,
article .cta-box h3,
.main-article-content .cta-box h3 {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
}
/* Center the last line in CTA box */
.cta-box > p:last-of-type,
.cta-box > p:last-child,
.guide-content .cta-box > p:last-of-type,
.blog-content .cta-box > p:last-of-type {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* OVERRIDE layout-unified.css left alignment in CTA boxes */
.guide-content .cta-box p,
.main-article-content .cta-box p,
.blog-content .cta-box p,
.article-wrap .cta-box p,
.guide-layout-wrapper .cta-box p,
.cta-box p,
.cta-box p[style] {
    text-align: center !important;
}

/* Center CTA box heading */
.cta-box h3,
.cta-box h3[style],
.cta-box .ba-h3,
.guide-content .cta-box h3,
.main-article-content .cta-box h3,
.blog-content .cta-box h3 {
    text-align: center !important;
    display: block !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Center entire CTA box container */
.cta-box,
.cta-box[style],
div.cta-box {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* GUIDE ARTICLE HERO - left aligned (not centered) */
.ba-hero h1,
.ba-hero h1[style] {
    text-align: left !important;
}
.ba-hero {
    text-align: left !important;
}
.ba-hero-desc {
    text-align: left !important;
}

/* HERO HEADING FIX (desktop + mobile) */
.hero-section .hero-title,
.hero-section h1 {
    font-size: clamp(1.9rem, 4.3vw, 3.35rem) !important;
    line-height: 1.12 !important;
    letter-spacing: -0.02em !important;
    max-width: 18ch;
    margin-left: auto !important;
    margin-right: auto !important;
    text-wrap: balance;
}

.hero-section p {
    font-size: clamp(1.05rem, 1.5vw, 1.28rem) !important;
    line-height: 1.6 !important;
    max-width: 62ch;
    margin-left: auto !important;
    margin-right: auto !important;
}

@media (max-width: 768px) {
    .hero-section .hero-title,
    .hero-section h1 {
        font-size: 1.58rem !important;
        line-height: 1.2 !important;
        max-width: 100%;
        text-wrap: pretty;
    }

    .hero-section p {
        font-size: 1rem !important;
        line-height: 1.62 !important;
        max-width: 100%;
    }
}

/* ABSOLUTE FINAL CONTENT SIZE NORMALIZER (SEO READABILITY) */
:root {
    --seo-content-h1: clamp(1.8rem, 2.8vw, 2.35rem);
    --seo-content-h2: clamp(1.45rem, 2.15vw, 1.9rem);
    --seo-content-h3: clamp(1.2rem, 1.65vw, 1.45rem);
    --seo-content-h4: clamp(1.05rem, 1.35vw, 1.22rem);
    --seo-content-body: 1rem;
    --seo-content-line: 1.72;
}

body :where(main, article, section, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h1 { font-size: var(--seo-content-h1) !important; line-height: 1.24 !important; }
body :where(main, article, section, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h2 { font-size: var(--seo-content-h2) !important; line-height: 1.3 !important; }
body :where(main, article, section, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h3 { font-size: var(--seo-content-h3) !important; line-height: 1.36 !important; }
body :where(main, article, section, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h4 { font-size: var(--seo-content-h4) !important; line-height: 1.42 !important; }
body :where(main, article, section, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(p, li, span, label) {
    font-size: var(--seo-content-body) !important;
    line-height: var(--seo-content-line) !important;
}

/* Neutralize oversized inline text declarations in content */
body :where(main, article, section, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap)
:where(h1, h2, h3, h4, p, li, span, label, small, strong, em)[style*="font-size"] {
    font-size: inherit !important;
}

/* Keep interactive controls/icons untouched */
body :where(.elementor-button, .hero-btn, .sticky-cta-button, .fa, .fas, .far, .fab, i)[style*="font-size"] {
    font-size: revert !important;
}

@media (max-width: 768px) {
    :root {
        --seo-content-h1: 1.55rem;
        --seo-content-h2: 1.32rem;
        --seo-content-h3: 1.14rem;
        --seo-content-h4: 1.02rem;
        --seo-content-body: 0.98rem;
        --seo-content-line: 1.68;
    }
}

/* County/area claim pages: enforce comfortable readable sizes */
.comprehensive-info-section h2 {
    font-size: clamp(1.7rem, 2.45vw, 2.2rem) !important;
    line-height: 1.28 !important;
}

.comprehensive-info-section h3 {
    font-size: clamp(1.35rem, 1.95vw, 1.75rem) !important;
    line-height: 1.34 !important;
}

.comprehensive-info-section h4 {
    font-size: clamp(1.15rem, 1.55vw, 1.4rem) !important;
    line-height: 1.4 !important;
}

.comprehensive-info-section p,
.comprehensive-info-section li {
    font-size: 1.08rem !important;
    line-height: 1.78 !important;
}

.hero-features-list li {
    font-size: 1rem !important;
    line-height: 1.55 !important;
}

@media (max-width: 768px) {
    .comprehensive-info-section h2 { font-size: 1.38rem !important; }
    .comprehensive-info-section h3 { font-size: 1.16rem !important; }
    .comprehensive-info-section h4 { font-size: 1.04rem !important; }
    .comprehensive-info-section p,
    .comprehensive-info-section li {
        font-size: 1rem !important;
        line-height: 1.7 !important;
    }
}

/* FINAL TYPOGRAPHY OVERRIDE (SEO + UX CONSISTENT) */
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(h1, h2, h3, h4) {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -0.01em !important;
    color: #0f172a !important;
}

body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h1 {
    font-size: clamp(1.95rem, 3.2vw, 2.7rem) !important;
    line-height: 1.24 !important;
}

body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h2 {
    font-size: clamp(1.52rem, 2.4vw, 2.05rem) !important;
    line-height: 1.3 !important;
}

body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h3 {
    font-size: clamp(1.24rem, 1.85vw, 1.55rem) !important;
    line-height: 1.36 !important;
}

body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h4 {
    font-size: clamp(1.08rem, 1.5vw, 1.28rem) !important;
    line-height: 1.42 !important;
}

body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(p, li) {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 1rem !important;
    line-height: 1.75 !important;
    font-weight: 400 !important;
    text-align: left !important;
    text-align-last: left !important;
    text-justify: auto !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
    hyphens: none !important;
}

@media (max-width: 768px) {
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h1 {
        font-size: 1.55rem !important;
    }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h2 {
        font-size: 1.3rem !important;
    }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h3 {
        font-size: 1.12rem !important;
    }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h4 {
        font-size: 1.02rem !important;
    }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(p, li) {
        font-size: 0.98rem !important;
        line-height: 1.72 !important;
    }
}

/* ─── FINAL TYPOGRAPHY LOCK (SITE-WIDE CONSISTENCY) ───────── */
body {
    font-size: 16px !important;
    line-height: 1.72 !important;
    font-weight: 400 !important;
}

h1, h2, h3, h4 {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -0.01em !important;
}

h1 { font-size: clamp(1.9rem, 3.1vw, 2.7rem) !important; line-height: 1.24 !important; }
h2 { font-size: clamp(1.5rem, 2.35vw, 2.05rem) !important; line-height: 1.3 !important; }
h3 { font-size: clamp(1.24rem, 1.85vw, 1.55rem) !important; line-height: 1.36 !important; }
h4 { font-size: clamp(1.08rem, 1.5vw, 1.28rem) !important; line-height: 1.42 !important; }

p, li, td, th, label, input, textarea, select {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 1rem !important;
    line-height: 1.75 !important;
    font-weight: 400 !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
}

@media (max-width: 768px) {
    h1 { font-size: 1.55rem !important; }
    h2 { font-size: 1.3rem !important; }
    h3 { font-size: 1.12rem !important; }
    h4 { font-size: 1.02rem !important; }

    p, li, td, th, label, input, textarea, select {
        font-size: 0.98rem !important;
        line-height: 1.72 !important;
    }
}

/* ─── 1. CLASS-BASED DARK CONTAINERS ─────────────────────── */
.site-footer,
.site-footer *,
.cta-box,
.cta-box *,
.stats-bar,
.stats-bar *,
.sticky-cta-button {
    color: #ffffff !important;
}

/* ─── HEADER TEXT VISIBILITY ─────────────────────────────── */
.elementor-location-header,
.elementor-location-header * {
    color: #1a1a2e !important;
}
.elementor-location-header a,
.elementor-location-header a * {
    color: #532EAA !important;
}
.elementor-location-header a:hover,
.elementor-location-header a:hover * {
    color: #1a1a2e !important;
}
.elementor-location-header .logo span,
.elementor-location-header .logo span * {
    color: #532EAA !important;
}

/* Restore anchor colour in footer */
.site-footer a       { color: rgba(255,255,255,0.85) !important; }
.site-footer a:hover { color: #ffffff !important; }

/* ─── 2. HERO SECTION — text white, but NOT buttons ─────── */
.hero-section p,
.hero-section p[style],
.hero-section h1,
.hero-section h1[style],
.hero-section h2,
.hero-section span:not(.hero-btn):not(.elementor-button),
.hero-section li {
    color: #ffffff !important;
}

/* Hero buttons stay their original colours — white bg + purple text */
.hero-section .hero-btn,
.hero-section .hero-btn * {
    color: #532EAA !important;
    background: #ffffff !important;
}

.hero-section .elementor-button,
.hero-section .elementor-button * {
    color: #ffffff !important;
}

/* Blog article hero button */
.ba-hero-cta,
.ba-hero-cta * {
    color: #ffffff !important;
    background: #1a1a2e !important;
}

/* ─── 2b. BLOG ARTICLE HERO (ba-hero) ───────────────────── */
.ba-hero h1,
.ba-hero h1[style] {
    color: #ffffff !important;
}
.ba-hero-desc,
.ba-hero-desc[style] {
    color: rgba(255,255,255,0.92) !important;
}
.ba-hero-desc a,
.ba-hero-desc a[style] {
    color: #ffffff !important;
    font-weight: 700;
    text-decoration: underline;
}
.ba-tag {
    color: #CECBF6 !important;
}
.ba-hero-cta,
.ba-hero-cta * {
    color: #534AB7 !important;
    background: #ffffff !important;
}

/* ─── 3. INLINE STYLE — PURPLE BACKGROUNDS ───────────────── */
[style*="background: #532EAA"],
[style*="background:#532EAA"],
[style*="background: linear-gradient(135deg, #532EAA"],
[style*="background: linear-gradient(135deg, #3d1f8a"],
[style*="background: linear-gradient(135deg, #764ba2"] {
    color: #ffffff !important;
}
[style*="background: #532EAA"] *,
[style*="background:#532EAA"] *,
[style*="background: linear-gradient(135deg, #532EAA"] *,
[style*="background: linear-gradient(135deg, #3d1f8a"] *,
[style*="background: linear-gradient(135deg, #764ba2"] * {
    color: #ffffff !important;
}

/* ─── 4. INLINE STYLE — GREEN BACKGROUNDS ────────────────── */
[style*="background: #10B981"],
[style*="background:#10B981"],
[style*="background: linear-gradient(135deg, #10B981"],
[style*="background: linear-gradient(135deg, #059669"] {
    color: #ffffff !important;
}
[style*="background: #10B981"] *,
[style*="background:#10B981"] *,
[style*="background: linear-gradient(135deg, #10B981"] *,
[style*="background: linear-gradient(135deg, #059669"] * {
    color: #ffffff !important;
}

/* Green bg — buttons inside keep white text */
[style*="background: #10B981"] .hero-btn,
[style*="background: linear-gradient(135deg, #10B981"] .hero-btn {
    color: #532EAA !important;
    background: #ffffff !important;
}

/* ─── 5. INLINE STYLE — DARK/BLACK BACKGROUNDS ───────────── */
[style*="background: linear-gradient(135deg, #0E1311"],
[style*="background: linear-gradient(135deg, #1a1f1d"],
[style*="background: #0E1311"],
[style*="background: #1C1C1E"],
[style*="background:#1C1C1E"],
[style*="background:#0E1311"] {
    color: #ffffff !important;
}
[style*="background: linear-gradient(135deg, #0E1311"] *,
[style*="background: linear-gradient(135deg, #1a1f1d"] *,
[style*="background: #0E1311"] *,
[style*="background: #1C1C1E"] *,
[style*="background:#1C1C1E"] *,
[style*="background:#0E1311"] * {
    color: #ffffff !important;
}

/* ─── 6. STATS BAR ────────────────────────────────────────── */
.stat-item h3,
.stat-item p {
    color: #ffffff !important;
}

/* ─── 7. LIGHT BACKGROUND COLUMNS — force dark text ──────── */
/* Compensation & Benefits section has light green/purple backgrounds */
[style*="background: linear-gradient(135deg, #F0FDF4"],
[style*="background: linear-gradient(135deg, #DCFCE7"],
[style*="background: linear-gradient(135deg, #F8F5FF"],
[style*="background: linear-gradient(135deg, #F0EBFF"] {
    color: #0E1311 !important;
}
[style*="background: linear-gradient(135deg, #F0FDF4"] *,
[style*="background: linear-gradient(135deg, #DCFCE7"] *,
[style*="background: linear-gradient(135deg, #F8F5FF"] *,
[style*="background: linear-gradient(135deg, #F0EBFF"] * {
    color: #0E1311 !important;
}
/* Keep green/purple headings in those boxes */
[style*="background: linear-gradient(135deg, #F0FDF4"] h3[style*="color: #065F46"],
[style*="background: linear-gradient(135deg, #DCFCE7"] h3[style*="color: #065F46"],
[style*="background: linear-gradient(135deg, #F8F5FF"] h3[style*="color: #532EAA"],
[style*="background: linear-gradient(135deg, #F0EBFF"] h3[style*="color: #532EAA"] {
    color: #065F46 !important;
}
[style*="background: linear-gradient(135deg, #F8F5FF"] h3[style*="color: #532EAA"],
[style*="background: linear-gradient(135deg, #F0EBFF"] h3[style*="color: #532EAA"] {
    color: #532EAA !important;
}

/* ─── 8. PROTECT BUTTONS/LINKS WITH OWN COLOURS ──────────── */
/* Buttons that have explicit white bg must show their own text colour */
.hero-btn { color: #532EAA !important; }
a.hero-btn { color: #532EAA !important; }

/* elementor-button on dark bg = white text */
.elementor-button { color: #ffffff !important; }

/* Green CTA sections often use white buttons; keep label visible */
[style*="background: #10B981"] .elementor-button,
[style*="background:#10B981"] .elementor-button,
[style*="background: linear-gradient(135deg, #10B981"] .elementor-button {
    color: #10B981 !important;
    font-weight: 800 !important;
}

/* Links inside purple boxes that set their own color inline — preserve */
[style*="color: #532EAA"] { color: #532EAA !important; }
[style*="color:#532EAA"]  { color: #532EAA !important; }

/* Inputs — always dark text on white */
input, textarea, select {
    color: #0E1311 !important;
}
input::placeholder, textarea::placeholder {
    color: #888 !important;
    opacity: 1 !important;
}

/* ─── FINAL PROFESSIONAL MOBILE OVERRIDE (ALL PAGES) ─────── */
@media (max-width: 768px) {
    html, body {
        overflow-x: hidden !important;
    }

    .container {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    h1, h2, h3, h4 {
        word-break: break-word !important;
        overflow-wrap: anywhere !important;
        margin-top: 0 !important;
    }

    h1 { font-size: 1.55rem !important; line-height: 1.28 !important; margin-bottom: 0.8rem !important; }
    h2 { font-size: 1.3rem !important; line-height: 1.35 !important; margin-bottom: 0.75rem !important; }
    h3 { font-size: 1.12rem !important; line-height: 1.4 !important; margin-bottom: 0.65rem !important; }
    h4 { font-size: 1rem !important; line-height: 1.45 !important; margin-bottom: 0.6rem !important; }

    p, li {
        font-size: 1rem !important;
        line-height: 1.72 !important;
        text-align: left !important;
        word-spacing: normal !important;
        letter-spacing: normal !important;
        hyphens: none !important;
    }

    section, .hero-section, .guide-content, .blog-content, .main-content, .main-article-content {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    .elementor-button,
    .hero-btn,
    .ba-hero-cta {
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}

@media (max-width: 480px) {
    .container {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    h1 { font-size: 1.35rem !important; }
    h2 { font-size: 1.16rem !important; }
    p, li { font-size: 0.98rem !important; line-height: 1.68 !important; }
}

/* ─── GUIDE ARTICLE HARD OVERRIDE (CONFLICT-PROOF) ────────── */
@media (max-width: 900px) {
    body.is-guide-article .guide-content,
    body.is-guide-article .guide-content.blog-article,
    body.is-guide-article .blog-article,
    body.is-guide-article .main-article-content,
    body.is-guide-article .article-wrap {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 14px 10px 22px !important;
        box-sizing: border-box !important;
        overflow-x: hidden !important;
    }

    body.is-guide-article .ba-hero {
        width: 100% !important;
        max-width: 100% !important;
        margin: 8px 0 14px !important;
        padding: 1.15rem 0.85rem !important;
        border-radius: 12px !important;
    }

    body.is-guide-article .ba-tag {
        margin: 0 auto 0.7rem !important;
        font-size: 0.62rem !important;
        padding: 5px 10px !important;
    }

    body.is-guide-article .ba-hero h1 {
        font-size: 1.34rem !important;
        line-height: 1.25 !important;
        margin-bottom: 0.72rem !important;
        letter-spacing: -0.01em !important;
        text-align: center !important;
    }

    body.is-guide-article .ba-hero-desc,
    body.is-guide-article .ba-hero-desc[style],
    body.is-guide-article .ba-hero-desc a {
        font-size: 0.96rem !important;
        line-height: 1.62 !important;
        margin-bottom: 0.8rem !important;
        text-align: center !important;
    }

    body.is-guide-article .ba-hero-cta,
    body.is-guide-article .ba-hero-cta[style] {
        width: 100% !important;
        max-width: 280px !important;
        margin: 0 auto 0.9rem !important;
        padding: 0.75rem 0.95rem !important;
        font-size: 0.92rem !important;
    }

    body.is-guide-article .guide-content h1,
    body.is-guide-article .guide-content h2,
    body.is-guide-article .guide-content h3,
    body.is-guide-article .guide-content h4,
    body.is-guide-article .main-article-content h1,
    body.is-guide-article .main-article-content h2,
    body.is-guide-article .main-article-content h3,
    body.is-guide-article .main-article-content h4 {
        text-align: left !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        overflow-wrap: anywhere !important;
        word-break: break-word !important;
    }

    body.is-guide-article .guide-content h2,
    body.is-guide-article .main-article-content h2,
    body.is-guide-article .ba-h2 {
        font-size: 1.18rem !important;
        line-height: 1.34 !important;
        margin-top: 1.2rem !important;
        margin-bottom: 0.72rem !important;
        padding-bottom: 0.46rem !important;
    }

    body.is-guide-article .guide-content h3,
    body.is-guide-article .main-article-content h3,
    body.is-guide-article .ba-h3 {
        font-size: 1.04rem !important;
        line-height: 1.38 !important;
        margin-top: 0.8rem !important;
        margin-bottom: 0.52rem !important;
    }

    body.is-guide-article .guide-content h4,
    body.is-guide-article .main-article-content h4,
    body.is-guide-article .ba-section h4 {
        font-size: 0.98rem !important;
        line-height: 1.4 !important;
        margin-top: 0.62rem !important;
        margin-bottom: 0.52rem !important;
    }

    body.is-guide-article .guide-content p,
    body.is-guide-article .guide-content li,
    body.is-guide-article .main-article-content p,
    body.is-guide-article .main-article-content li,
    body.is-guide-article .ba-p,
    body.is-guide-article .ba-section p,
    body.is-guide-article .ba-section li {
        font-size: 0.97rem !important;
        line-height: 1.66 !important;
        margin-bottom: 0.82rem !important;
        text-align: left !important;
        word-spacing: normal !important;
        letter-spacing: normal !important;
        hyphens: none !important;
    }

    body.is-guide-article .emergency-box,
    body.is-guide-article .step-card,
    body.is-guide-article .ba-toc,
    body.is-guide-article .ba-highlight,
    body.is-guide-article .ba-claim-cta,
    body.is-guide-article .cta-box {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0.9rem !important;
        border-radius: 12px !important;
        box-sizing: border-box !important;
    }

    body.is-guide-article .emergency-box [style*="display: flex"][style*="justify-content: space-between"] {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;
    }

    body.is-guide-article .emergency-box a,
    body.is-guide-article .cta-box a,
    body.is-guide-article a[style*="padding: 20px 50px"] {
        width: 100% !important;
        max-width: 260px !important;
        text-align: center !important;
        padding: 10px 14px !important;
        font-size: 0.9rem !important;
        border-radius: 10px !important;
    }

    body.is-guide-article .cta-box,
    body.is-guide-article .ba-claim-cta,
    body.is-guide-article .sidebar-cta-card {
        text-align: center !important;
    }

    body.is-guide-article .cta-box h3,
    body.is-guide-article .cta-box p,
    body.is-guide-article .ba-claim-cta h3,
    body.is-guide-article .ba-claim-cta p,
    body.is-guide-article .sidebar-cta-card h3,
    body.is-guide-article .sidebar-cta-card p {
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    body.is-guide-article .cta-box a,
    body.is-guide-article .ba-claim-cta a,
    body.is-guide-article .sidebar-cta-card a {
        margin-left: auto !important;
        margin-right: auto !important;
        display: block !important;
    }
}

/* Absolute final override: emergency text never stretched */
.emergency-box p,
.emergency-box li,
.emergency-box p[style],
.emergency-box li[style] {
    text-align: left !important;
    text-justify: auto !important;
    word-spacing: 0 !important;
    letter-spacing: 0 !important;
    hyphens: none !important;
    max-width: 100% !important;
    width: 100% !important;
}

/* Emergency box final fix (all pages) */
.emergency-box {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.emergency-box > div,
.emergency-box [style*="display: flex"] {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

@media (max-width: 900px) {
    .emergency-box {
        display: block !important;
        padding: 16px !important;
    }

    .emergency-box [style*="display: flex"] {
        display: block !important;
        width: 100% !important;
        gap: 10px !important;
    }

    .emergency-box a,
    .emergency-box a[style] {
        display: block !important;
        width: 100% !important;
        max-width: 280px !important;
        margin: 10px auto 0 !important;
        text-align: center !important;
    }
}

/* ─── FINAL FIX: EMERGENCY BOX MOBILE WORD SPACING ───────── */
@media (max-width: 900px) {
    body.is-guide-article .emergency-box,
    body.is-guide-article .emergency-box * {
        text-align: left !important;
        text-justify: auto !important;
        word-spacing: normal !important;
        letter-spacing: normal !important;
        hyphens: none !important;
    }

    body.is-guide-article .emergency-box p,
    body.is-guide-article .emergency-box p[style],
    body.is-guide-article .emergency-box li,
    body.is-guide-article .emergency-box li[style] {
        font-size: 0.98rem !important;
        line-height: 1.7 !important;
        margin-bottom: 0.65rem !important;
    }
}

/* Keep article/body text justified across desktop + mobile */
body.is-guide-article .guide-content p,
body.is-guide-article .guide-content li,
body.is-guide-article .main-article-content p,
body.is-guide-article .main-article-content li,
body.is-guide-article .ba-p,
body.is-guide-article .ba-section p,
body.is-guide-article .ba-section li {
    text-align: left !important;
}

/* FINAL: Emergency box must never use stretched spacing on mobile */
@media (max-width: 900px) {
    .emergency-box p,
    .emergency-box li,
    .emergency-box p[style],
    .emergency-box li[style],
    body.is-guide-article .emergency-box p,
    body.is-guide-article .emergency-box li {
        text-align: left !important;
        text-justify: auto !important;
        word-spacing: 0 !important;
        letter-spacing: 0 !important;
        hyphens: none !important;
        line-height: 1.65 !important;
        font-size: 0.98rem !important;
        margin-bottom: 0.7rem !important;
    }
}

/* Emergency box readability on all pages */
.emergency-box p,
.emergency-box li,
.emergency-box p[style],
.emergency-box li[style] {
    text-align: left !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
    hyphens: none !important;
    line-height: 1.65 !important;
}

@media (max-width: 768px) {
    .emergency-box p,
    .emergency-box li,
    .emergency-box p[style],
    .emergency-box li[style] {
        font-size: 0.98rem !important;
        line-height: 1.7 !important;
        margin-bottom: 0.7rem !important;
    }
}

/* ─── GLOBAL PROFESSIONAL CONSISTENCY LAYER (ALL PAGES) ───── */
body {
    color: #1f2937 !important;
    line-height: 1.72 !important;
}

h1, h2, h3, h4 {
    color: #0f172a !important;
    font-weight: 800 !important;
}

h1 { font-size: clamp(1.85rem, 3vw, 2.8rem) !important; line-height: 1.24 !important; margin-bottom: 0.9rem !important; }
h2 { font-size: clamp(1.45rem, 2.3vw, 2.05rem) !important; line-height: 1.3 !important; margin-bottom: 0.8rem !important; }
h3 { font-size: clamp(1.18rem, 1.8vw, 1.5rem) !important; line-height: 1.36 !important; margin-bottom: 0.7rem !important; }
h4 { font-size: clamp(1.02rem, 1.45vw, 1.2rem) !important; line-height: 1.42 !important; margin-bottom: 0.58rem !important; }

p, li {
    font-size: 1rem !important;
    line-height: 1.8 !important;
    text-align: left !important;
    text-align-last: left !important;
    text-justify: auto !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
    hyphens: none !important;
    margin-bottom: 0.85rem !important;
}

/* ─── FINAL OVERRIDE: CTA Box Centering ───── */
/* This must be last to override all other rules */
.cta-box,
.cta-box[style],
div.cta-box,
.guide-content .cta-box,
.blog-content .cta-box,
.main-article-content .cta-box {
    text-align: center !important;
}
.cta-box h3,
.cta-box h3[style],
.cta-box .ba-h3,
.guide-content .cta-box h3,
.guide-content .cta-box .ba-h3,
.blog-content .cta-box h3,
.blog-content .cta-box .ba-h3,
.main-article-content .cta-box h3,
.main-article-content .cta-box .ba-h3 {
    text-align: center !important;
    color: #ffffff !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.cta-box p,
.cta-box p[style],
.guide-content .cta-box p,
.guide-content .cta-box p[style],
.blog-content .cta-box p,
.blog-content .cta-box p[style],
.main-article-content .cta-box p,
.main-article-content .cta-box p[style] {
    text-align: center !important;
    color: #ffffff !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.guide-content,
.blog-content,
.main-content,
.rights-content,
.seo-content,
.main-article-content,
.article-wrap {
    max-width: 1100px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.guide-content section,
.blog-content section,
.main-content section,
.rights-content section,
.seo-content section {
    margin-bottom: 1.5rem !important;
}

.cta-box,
.ba-claim-cta,
.step-card,
.why-item,
.faq-item,
.ba-toc,
.ba-highlight,
.emergency-box {
    border-radius: 14px !important;
}

@media (max-width: 768px) {
    h1 { font-size: 1.52rem !important; }
    h2 { font-size: 1.24rem !important; }
    h3 { font-size: 1.08rem !important; }
    h4 { font-size: 1rem !important; }

    p, li {
        font-size: 0.99rem !important;
        line-height: 1.72 !important;
        margin-bottom: 0.75rem !important;
    }

    .container,
    .guide-content,
    .blog-content,
    .main-content,
    .rights-content,
    .seo-content,
    .main-article-content,
    .article-wrap {
        padding-left: 10px !important;
        padding-right: 10px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}
/* ABSOLUTE FINAL TYPOGRAPHY OVERRIDE (SEO + UX) */
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(h1, h2, h3, h4) {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -0.01em !important;
    color: #0f172a !important;
}
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h1 { font-size: clamp(1.95rem, 3.2vw, 2.7rem) !important; line-height: 1.24 !important; }
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h2 { font-size: clamp(1.52rem, 2.4vw, 2.05rem) !important; line-height: 1.3 !important; }
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h3 { font-size: clamp(1.24rem, 1.85vw, 1.55rem) !important; line-height: 1.36 !important; }
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h4 { font-size: clamp(1.08rem, 1.5vw, 1.28rem) !important; line-height: 1.42 !important; }
body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(p, li) {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 1rem !important;
    line-height: 1.75 !important;
    font-weight: 400 !important;
    text-align: left !important;
    text-align-last: left !important;
    text-justify: auto !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
    hyphens: none !important;
}
@media (max-width: 768px) {
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h1 { font-size: 1.55rem !important; }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h2 { font-size: 1.3rem !important; }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h3 { font-size: 1.12rem !important; }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) h4 { font-size: 1.02rem !important; }
    body :where(main, article, .main-content, .guide-content, .blog-content, .rights-content, .seo-content, .main-article-content, .article-wrap) :where(p, li) { font-size: 0.98rem !important; line-height: 1.72 !important; }
}

/* ─── UNIVERSAL CTA BOX FIX FOR ALL GUIDE ARTICLES ───── */
/* Center the CTA box heading */
.cta-box h3.ba-h3,
.guide-content .cta-box h3,
.blog-content .cta-box h3,
.main-article-content .cta-box h3,
article .cta-box h3 {
    text-align: center !important;
    display: block !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    color: #ffffff !important;
}

/* Keep main paragraph left-aligned */
.cta-box > p:first-of-type,
.guide-content .cta-box > p:first-of-type,
.blog-content .cta-box > p:first-of-type {
    text-align: left !important;
    color: #ffffff !important;
}

/* Center the bottom line (second paragraph) */
.cta-box > p:nth-of-type(2),
.guide-content .cta-box > p:nth-of-type(2),
.blog-content .cta-box > p:nth-of-type(2) {
    text-align: center !important;
    color: rgba(255,255,255,0.9) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Hide the reviews line in CTA boxes */
.cta-box > div:last-child,
.cta-box > div:last-of-type,
.guide-content .cta-box > div:last-child,
.blog-content .cta-box > div:last-child {
    display: none !important;
}

/* Ensure CTA box container is centered */
.cta-box,
.guide-content .cta-box,
.blog-content .cta-box,
.main-article-content .cta-box {
    text-align: center !important;
}

/* Center the button */
.cta-box a,
.guide-content .cta-box a,
.blog-content .cta-box a {
    display: inline-block !important;
}
