/* astra-child/inc/critical-css/_footer-deferred.css
 *
 * Footer chrome — extracted from _shared.css on 2026-06-02 as a perf
 * optimisation. Footer renders below the fold on every page, so its CSS
 * does not need to block first paint. Loaded via wp_enqueue_style in
 * inc/enqueue.php with the same preload-async pattern as Astra's
 * main.min.css.
 *
 * Mirrors live's three-band layout:
 *   1. Newsletter band — bg-subtle, centered heading/lede/form
 *   2. Social band     — bg darker tint, inline icon row
 *   3. Legal band      — bg-subtle, logo + copyright + legal-notes link
 *
 * @since 2026-06-02
 */
.mfp-site-footer {
    /* gap-14 (2026-05-18): live footer body text is 14px not 16px (default body size). */
    margin-top: var(--mfp-section-y, 4rem);
    color: var(--mfp-color-text, #334155);
    font-size: 0.875rem;       /* 14px live */
    letter-spacing: 0.1px;
}
.mfp-site-footer__inner {
    max-width: var(--mfp-container-max, 1200px);
    margin: 0 auto;
    padding: 0 var(--mfp-gutter, 1rem);
}

/* --- Newsletter band --- gap-16n (2026-05-19): match live's bordered 2-col layout.
 * Live shows a rectangular bordered container with left column = heading + lede,
 * right column = form fields (email + name + Subscribe). Heading is LEFT-aligned. */
.mfp-site-footer__newsletter {
    background: transparent;                              /* gap-16n: was bg-subtle, live has none */
    padding: 3rem 0;
}
.mfp-site-footer__inner--newsletter {
    /* gap-16n-v2: live's border is rgb(30,30,30) near-black (was using --mfp-color-border
     * light gray which got lost against the magnolia body bg). */
    /* gap-16n-v3: max-width narrower than default 1200 so vertical borders read
     * clearly inset from the viewport edges (matches live's lateral breathing room). */
    max-width: 1000px;
    margin: 0 auto;
    border: 1px solid #1e1e1e;
    padding: 2.5rem 3rem;                                 /* +internal breathing room */
    text-align: left;
}
.mfp-site-footer__heading {
    font-family: var(--mfp-font-heading-alt, 'Raleway', sans-serif);
    font-weight: var(--mfp-fw-light, 300);
    font-size: 1.875rem;                                  /* 30px (live), was 28px */
    line-height: var(--mfp-lh-heading, 1.4em);
    letter-spacing: 4px;                                  /* live tracking */
    text-transform: uppercase;
    margin: 0 0 0.75rem;
    color: var(--mfp-color-text-strong, #111);
}
.mfp-site-footer__lede {
    font-size: 0.875rem;                                  /* 14px live */
    line-height: var(--mfp-lh-base, 1.65);
    letter-spacing: 0.1px;
    margin: 0 0 1.5rem;
    color: var(--mfp-color-text, #334155);
}
.mfp-site-footer__form {
    max-width: none;                                      /* let 2-col grid size it */
    margin: 0;
}
/* Desktop: 2-column inside the bordered container — heading+lede left, form right. */
@media (min-width: 768px) {
    .mfp-site-footer__inner--newsletter {
        display: grid;
        grid-template-columns: 1fr 1fr;
        column-gap: 3rem;
        align-items: start;
    }
    .mfp-site-footer__heading,
    .mfp-site-footer__lede {
        grid-column: 1;
    }
    .mfp-site-footer__lede { margin-bottom: 0; }
    .mfp-site-footer__form {
        grid-column: 2;
        grid-row: 1 / span 2;
    }
}
.mfp-site-footer__form-missing {
    font-size: var(--mfp-fs-small, 0.875rem);
    color: var(--mfp-color-text, #334155);
    font-style: italic;
}

/* --- Social band --- */
.mfp-site-footer__social {
    background: var(--mfp-color-bg-subtle, #f0f5fa);
    padding: 1rem 0;
    border-top: 1px solid var(--mfp-color-border, #d1d5db);
    text-align: center;
}
.mfp-social-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 1rem;
}
.mfp-social-list__label {
    font-size: var(--mfp-fs-small, 0.875rem);
    color: var(--mfp-color-text, #334155);
}
.mfp-social-list__item { display: inline-flex; }
.mfp-social-list__link {
    /* gap-16o (2026-05-19): show network name next to icon (matches live's
     * "[icon] Facebook | [icon] Instagram | [icon] LinkedIn" pattern). */
    display: inline-flex;
    align-items: center;
    gap: 0.4em;
    color: var(--mfp-color-text, #334155);
    text-decoration: none;
    transition: color 0.15s ease;
    font-size: var(--mfp-fs-small, 0.875rem);
    font-weight: var(--mfp-fw-semibold, 600);
}
.mfp-social-list__link:hover,
.mfp-social-list__link:focus-visible {
    color: var(--mfp-color-primary, #046bd2);
}
.mfp-social-list__icon {
    width: 18px;
    height: 18px;
    fill: currentColor;
    display: block;
}
.mfp-social-list__name { display: inline; }
/* Pipe separator between items (not after last) — matches live's " | " divider. */
.mfp-social-list__item:not(:last-child)::after {
    content: "|";
    color: var(--mfp-color-text, #334155);
    margin-left: 0.5rem;
    opacity: 0.6;
}

/* --- Legal band --- */
.mfp-site-footer__legal {
    background: var(--mfp-color-bg, #fff);
    padding: 1.5rem 0;
    border-top: 1px solid var(--mfp-color-border, #d1d5db);
    text-align: center;
}
.mfp-site-footer__logo {
    margin: 0 auto 0.75rem;
    display: inline-block;
}
.mfp-site-footer__logo .custom-logo {
    max-height: 60px;
    width: auto;
    height: auto;
    margin: 0 auto;
}
.mfp-site-footer__disclaimer {
    font-size: var(--mfp-fs-small, 0.875rem);
    color: var(--mfp-color-text, #334155);
    margin: 0 0 0.5rem;
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
}
.mfp-site-footer__disclaimer a { color: var(--mfp-color-primary, #046bd2); }
.mfp-site-footer__copy {
    font-size: var(--mfp-fs-tiny, 0.8125rem);
    color: var(--mfp-color-text, #334155);
    margin: 0;
}
.mfp-site-footer__copy a { color: var(--mfp-color-primary, #046bd2); }
.mfp-site-footer__copy-sep { margin: 0 0.4em; color: var(--mfp-color-border, #d1d5db); }
