/**
 * ══════════════════════════════════════════════════════════════
 * AMANAH — AkkuratPro Self-Hosted Font
 * ══════════════════════════════════════════════════════════════
 * Append this block to the TOP of assets/css/amanah.css
 * (or create a new file: assets/css/fonts.css and enqueue it)
 *
 * Font files live at:
 *   wp-content/themes/amanah-theme-2026/assets/fonts/AkkuratPro/
 *
 * Files confirmed in your tree:
 *   Akkurat Pro.ttf
 *   Akkurat Pro.woff
 *   Akkurat Pro.woff2
 *   WebFonts/cbbfee9126dc0abc730b9875dc28832f.eot
 *   WebFonts/cbbfee9126dc0abc730b9875dc28832f.svg
 *   WebFonts/cbbfee9126dc0abc730b9875dc28832f.ttf
 *   WebFonts/cbbfee9126dc0abc730b9875dc28832f.woff
 *   WebFonts/cbbfee9126dc0abc730b9875dc28832f.woff2
 *
 * In WordPress PHP, reference via:
 *   get_stylesheet_directory_uri() . '/assets/fonts/AkkuratPro/'
 * ══════════════════════════════════════════════════════════════
 */


/* ──────────────────────────────────────────────────────────────
   @font-face declarations
   Priority: woff2 → woff → ttf (eot/svg for legacy IE, optional)
   We declare four weights: 300 light, 400 regular, 500 medium,
   700 bold. If AkkuratPro only ships one weight, all four map
   to the same file — the browser synthesises weight differences
   gracefully with font-synthesis.
   ────────────────────────────────────────────────────────────── */

/* Regular / 400 — primary weight for body text */
@font-face {
    font-family: 'AkkuratPro';
    src:
        url('../fonts/AkkuratPro/WebFonts/cbbfee9126dc0abc730b9875dc28832f.woff2') format('woff2'),
        url('../fonts/AkkuratPro/WebFonts/cbbfee9126dc0abc730b9875dc28832f.woff')  format('woff'),
        url('../fonts/AkkuratPro/WebFonts/cbbfee9126dc0abc730b9875dc28832f.ttf')   format('truetype');
    font-weight: 400;
    font-style:  normal;
    font-display: swap; /* prevents FOIT — fallback renders immediately */
}

/* Light / 300 — used for subheads and large body passages */
@font-face {
    font-family: 'AkkuratPro';
    src:
        url('../fonts/AkkuratPro/WebFonts/cbbfee9126dc0abc730b9875dc28832f.woff2') format('woff2'),
        url('../fonts/AkkuratPro/WebFonts/cbbfee9126dc0abc730b9875dc28832f.woff')  format('woff'),
        url('../fonts/AkkuratPro/WebFonts/cbbfee9126dc0abc730b9875dc28832f.ttf')   format('truetype');
    font-weight: 300;
    font-style:  normal;
    font-display: swap;
}

/* Medium / 500 — nav links, labels, small caps */
@font-face {
    font-family: 'AkkuratPro';
    src:
        url('../fonts/AkkuratPro/WebFonts/cbbfee9126dc0abc730b9875dc28832f.woff2') format('woff2'),
        url('../fonts/AkkuratPro/WebFonts/cbbfee9126dc0abc730b9875dc28832f.woff')  format('woff'),
        url('../fonts/AkkuratPro/WebFonts/cbbfee9126dc0abc730b9875dc28832f.ttf')   format('truetype');
    font-weight: 500;
    font-style:  normal;
    font-display: swap;
}

/* Bold / 600–700 — buttons, CTA labels, strong emphasis */
@font-face {
    font-family: 'AkkuratPro';
    src:
        url('../fonts/AkkuratPro/WebFonts/cbbfee9126dc0abc730b9875dc28832f.woff2') format('woff2'),
        url('../fonts/AkkuratPro/WebFonts/cbbfee9126dc0abc730b9875dc28832f.woff')  format('woff'),
        url('../fonts/AkkuratPro/WebFonts/cbbfee9126dc0abc730b9875dc28832f.ttf')   format('truetype');
    font-weight: 600 700;
    font-style:  normal;
    font-display: swap;
}

/* Root files fallback (if WebFonts subdirectory files have issues) */
@font-face {
    font-family: 'AkkuratPro';
    src:
        url('../fonts/AkkuratPro/Akkurat Pro.woff2') format('woff2'),
        url('../fonts/AkkuratPro/Akkurat Pro.woff')  format('woff'),
        url('../fonts/AkkuratPro/Akkurat Pro.ttf')   format('truetype');
    font-weight: 400;
    font-style:  normal;
    font-display: swap;
}


/* ──────────────────────────────────────────────────────────────
   CSS VARIABLE OVERRIDE
   Replaces --am-font-body everywhere in the design system.
   Defined here so it cascades before any component CSS.
   ────────────────────────────────────────────────────────────── */

:root {
    --am-font-body: 'AkkuratPro', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}


/* ──────────────────────────────────────────────────────────────
   EXPLICIT COMPONENT OVERRIDES
   Belt-and-suspenders: override any component that hardcodes
   'Montserrat' or 'Raleway' in its own rule.
   ────────────────────────────────────────────────────────────── */

body,
input,
textarea,
select,
button {
    font-family: var(--am-font-body) !important;
    letter-spacing: var(--am-font-body-spacing);
}

/* Navigation */
.am-nav-menu a,
.am-mobile-nav-links a,
.am-lang-switch {
    font-family: var(--am-font-amanah) !important;
    /* letter-spacing: var(--am-font-body-spacing); */
}

/* Trust bar + ticker */
.am-trust-item,
.am-ticker-item {
    font-family: var(--am-font-amanah) !important;
    letter-spacing: var(--am-font-body-spacing);
}

/* Labels & caps — AkkuratPro tracks better at slightly tighter spacing */
.am-label,
.am-gold-label,
.am-sp-cat,
.am-sp-fact-lbl,
.am-sp-why-name,
.am-sp-inc-title,
.am-vault-plan-name,
.am-awp-price-tier,
.am-awp-testi-tag,
.am-legal-toc-label,
.am-faq-sidebar-label,
.am-auth-cert-what-title {
    font-family: var(--am-font-body) !important;
    letter-spacing: var(--am-font-body-spacing);
}

/* FAQ question text */
.am-faq-q-text,
.am-vault-faq-q,
summary.am-faq-q {
    font-family: var(--am-font-body) !important;
    letter-spacing: var(--am-font-body-spacing);
    font-weight: 600 !important;
    font-size: 14px !important;
}

/* FAQ / accordion answer body */
.am-faq-a p,
.am-faq-a li,
.am-vault-faq-a p {
    font-family: var(--am-font-body) !important;
    letter-spacing: var(--am-font-body-spacing);
    font-size: 14px !important;
    line-height: 1.85 !important;
    font-weight: 400 !important;
}

/* Body text across all content pages */
.am-about-split-text p,
.am-about-value-card p,
.am-about-team-bio,
.am-about-values-intro,
.am-vault-why-item span,
.am-auth-cert-list li,
.am-charity-cause-card p,
.am-shipping-option-desc,
.am-contact-form-intro p,
.am-refunds-policy-text p,
.am-legal-content p,
.am-legal-list li,
.am-awp-step p,
.am-awp-audience-card p,
.am-awp-testi-text,
.am-awp-price-desc,
.am-awp-price-list li {
    font-family: var(--am-font-body) !important;
    letter-spacing: var(--am-font-body-spacing);
}

/* Product page */
.am-sp-v2,
.am-sp-v2 p,
.am-sp-v2 .am-sp-feature-list li,
.am-sp-v2 .am-sp-timer,
.am-sp-v2 .am-sp-trust-item,
.am-sp-v2 .am-sp-why-text,
.am-sp-v2 .am-sp-ft-text,
.am-sp-v2 .am-sp-inc-text,
.am-sp-v2 .am-sp-sec-text,
.am-sp-v2 .am-sp-hadith-en {
    font-family: var(--am-font-body) !important;
    letter-spacing: var(--am-font-body-spacing);
}

/* Buttons — AkkuratPro reads cleanly at 700 for CTAs */
.am-btn,
.am-btn-gold,
.am-btn-ghost,
.am-btn-primary,
.am-btn-small,
.am-sp-btn-cart,
.am-sp-btn-customize,
.am-sp-sticky-cart,
.am-sp-sticky-customize,
.am-sp-modal-btn-cart,
.am-vault-plan-btn-outline,
.am-awp-price-btn {
    font-family: var(--am-font-body) !important;
    letter-spacing: var(--am-font-body-spacing);
    font-weight: 700 !important;
}

/* Form fields */
.am-contact-field input,
.am-contact-field textarea,
.am-contact-field select,
.am-contact-cf7-wrap input,
.am-contact-cf7-wrap textarea,
.am-contact-cf7-wrap select,
.am-awp-native-form input,
.am-awp-native-form textarea,
.am-awp-native-form select,
.am-sp-eng-input,
.am-sp-msg-input,
.am-sp-qty-val,
#amSpQtyVal {
    font-family: var(--am-font-body) !important;
    letter-spacing: var(--am-font-body-spacing);
}

/* Form labels */
.am-contact-field label,
.am-contact-cf7-wrap label,
.am-comment-field label,
.am-co-label,
.woocommerce label {
    font-family: var(--am-font-body) !important;
    letter-spacing: var(--am-font-body-spacing);
    font-weight: 600 !important;
}

/* WooCommerce general */
.woocommerce,
.woocommerce p,
.woocommerce table,
.woocommerce-page,
.woocommerce-account p,
.woocommerce-MyAccount-content p {
    font-family: var(--am-font-body) !important;
    letter-spacing: var(--am-font-body-spacing);
}

/* Blog */
.am-prose p,
.am-prose li,
.am-single-article p,
.am-blog-card-excerpt,
.am-comment-text p,
.am-blog-cat-pill,
.am-blog-filter .am-faq-cat-pill {
    font-family: var(--am-font-body) !important;
    letter-spacing: var(--am-font-body-spacing);
}

/* Footer */
.am-footer-links a,
.am-footer-copy,
.am-footer-legal a,
.am-footer-brand-text,
.am-footer-charity-text,
.am-ft-text {
    font-family: var(--am-font-body) !important;
    letter-spacing: var(--am-font-body-spacing);
}