/*
 * Feast and Find, Footer Styles
 *
 * Three-row hierarchy (top → bottom):
 *   1. .ff-footer-inner, brand left | nav center | social right
 *   2. .ff-footer-legal, Amazon disclosure + 4 legal links (centered band)
 *   3. .ff-colophon-row, quiet single-line copyright (smallest weight)
 *
 * No Astra "Powered by Astra WordPress Theme" credit. Filters in inc/footer.php
 * empty Astra's option-driven credit; the rule below hides any Astra-rendered
 * credit row that survives a filter miss across version bumps.
 */


/* ── Astra credit suppression, belt-and-braces with the PHP filters.
 * Astra Free renders a "Copyright © YEAR Site | Powered by Astra WordPress
 * Theme" line inside .site-below-footer-wrap → .ast-footer-copyright. PHP
 * filters in inc/footer.php empty the underlying option(s); this CSS guarantees
 * the wrapper itself never paints, even if Astra renames option keys in a
 * future version. Scoped to the wrapper classes Astra actually uses on this
 * site (verified in production HTML 2026-04-26). */
.site-below-footer-wrap,
.ast-footer-copyright,
.ast-small-footer,
.ast-builder-footer-grid-row-3 {
  display: none !important;
}


/* ── Footer wrapper ────────────────────────────────────── */

.site-footer {
  background: var(--ff-footer-bg);
  color: var(--ff-footer-text);
  font-size: var(--wp--preset--font-size--small);
}


/* ── Row 1: brand | nav | social ─────────────────────────
 * Three flex columns at desktop, stacked vertically on tablet/mobile.
 * Brand and social are fixed-width book-ends; nav fills the middle and
 * centers its links. Padding scales down at narrower viewports so the
 * band doesn't dominate small screens. */

.ff-footer-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--wp--preset--spacing--40);
  max-width: var(--ff-wide-width);
  margin-inline: auto;
  padding: var(--wp--preset--spacing--50) var(--ff-page-padding, 48px) var(--wp--preset--spacing--40);
}

.ff-footer-brand {
  flex: 0 0 auto;
}

.ff-footer-brand .site-title,
.ff-footer-brand .footer-logo {
  font-family: var(--wp--preset--font-family--primary);
  font-size: 1.125rem;
  font-weight: 800;
  color: #0c4a6e;
  letter-spacing: -0.02em;
  text-decoration: none;
}

.ff-footer-nav {
  flex: 1 1 auto;
  display: flex;
  justify-content: center;
}

.ff-footer-nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem var(--wp--preset--spacing--40);
  justify-content: center;
}

.ff-footer-nav a {
  color: var(--ff-footer-text);
  text-decoration: none;
  font-size: var(--wp--preset--font-size--small);
  transition: color var(--ff-ease-fast);
}

.ff-footer-nav a:hover {
  color: #3a3632;
}


/* ── Social cluster (now lives inside Row 1, right column) ──
 * Compact icon row aligned to the right at desktop. Same icon vocabulary
 * as the homepage creators card (currentColor-driven SVGs) but with a
 * warm-gray footer palette: ocean stroke → coral on hover, coral focus
 * ring for keyboard users. */

.ff-footer-social {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.ff-footer-social__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(16, 125, 160, 0.18);
  border-radius: 9999px;
  color: var(--ff-ocean);
  background: transparent;
  text-decoration: none;
  transition: color var(--ff-ease-fast), background var(--ff-ease-fast), border-color var(--ff-ease-fast);
}

.ff-footer-social__icon:hover {
  color: var(--ff-coral);
  background: rgba(16, 125, 160, 0.06);
  border-color: rgba(154, 61, 46, 0.35);
}

.ff-footer-social__icon:focus-visible {
  outline: 2px solid var(--ff-coral);
  outline-offset: 2px;
}


/* ── Row 2: Amazon disclosure + legal links ──────────────
 * Site-wide compliance band. Contains the FTC-required Amazon Associates
 * disclosure plus links to Privacy Policy, Terms, Affiliate Disclosure,
 * and Contact. Rendered on every page via inc/footer.php so the
 * disclosure is always reachable. */

.ff-footer-legal {
  background: #efece4;
  color: var(--ff-footer-text);
  font-size: 14px;
  line-height: 1.65;
  padding: 20px var(--ff-page-padding, 48px);
  border-top: 1px solid rgba(0, 0, 0, 0.06);
  text-align: center;
}

.ff-footer-legal__disclosure {
  max-width: 880px;
  margin: 0 auto 10px;
  color: var(--ff-stone);
}

.ff-footer-legal__disclosure strong {
  color: var(--ff-navy);
  font-weight: 700;
}

.ff-footer-legal__links {
  list-style: none;
  max-width: var(--ff-wide-width);
  margin: 0 auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 4px 20px;
  align-items: center;
  justify-content: center;
}

.ff-footer-legal__links a {
  color: var(--ff-ocean);
  text-decoration: none;
  font-weight: 600;
  transition: color var(--ff-ease-fast);
}

.ff-footer-legal__links a:hover {
  color: var(--ff-coral);
}

.ff-footer-legal__links li + li::before {
  content: "·";
  color: rgba(0, 0, 0, 0.25);
  margin-right: 20px;
  margin-left: -16px;
}


/* ── Row 3: quiet copyright line ─────────────────────────
 * Smallest hierarchy weight in the footer. One sentence, centered, mid-gray,
 * 13 px, quieter than the disclosure above so the legal cluster reads as the
 * primary compliance affordance and the copyright reads as a closing tag. */

.ff-colophon-row {
  background: var(--ff-footer-bg);
  padding: 14px var(--ff-page-padding, 48px) 18px;
  text-align: center;
}

.ff-colophon {
  /* 2026 readability pass: 13 → 14 so the copyright line matches the
   * 14-px legal-band text size and stays comfortably readable for the
   * 50+ audience. Still the quietest typographic weight in the footer
   * via mid-gray color and absence of strong/bold styling. */
  font-size: 14px;
  color: var(--ff-footer-text);
  margin: 0;
  letter-spacing: 0.01em;
}

.ff-colophon a {
  color: var(--ff-footer-text);
  text-decoration: none;
  transition: color var(--ff-ease-fast);
}

.ff-colophon a:hover {
  color: #3a3632;
}


/* ── Mobile / tablet ───────────────────────────────────── */

@media (max-width: 768px) {
  .ff-footer-inner {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: var(--wp--preset--spacing--30);
    padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--30) var(--wp--preset--spacing--30);
  }

  .ff-footer-social {
    justify-content: center;
  }

  .ff-footer-legal {
    padding: 18px var(--wp--preset--spacing--30);
  }

  .ff-footer-legal__links li + li::before {
    display: none;
  }

  .ff-footer-legal__links {
    gap: 6px 16px;
  }

  .ff-colophon-row {
    padding: 14px var(--wp--preset--spacing--30) 18px;
  }
}

@media (max-width: 480px) {
  .ff-footer-inner {
    padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
  }

  .ff-footer-nav ul {
    flex-direction: column;
    align-items: center;
    gap: var(--wp--preset--spacing--20);
  }

  .ff-footer-social__icon {
    width: 32px;
    height: 32px;
  }

  .ff-colophon-row {
    padding: 12px var(--wp--preset--spacing--20) 16px;
  }
}
