/* The footer of every page on agents.findbusiness.ai, one copy.
   The services footer's shape (brand column, four link columns, a legal row),
   so the property ends the way findbusiness.ai/services/ does. Each page
   defines the colour and font tokens it uses (--navy, --mint, --font-body);
   tests/agent-site-footer.test.mjs keeps every page's footer markup identical. */
footer { background: var(--navy); color: rgba(238,244,242,.75); font-size: .9rem; border-top: 1px solid rgba(139,200,182,.1); }
/* `footer .foot-grid`, not `.foot-grid`: the phone rule `.wrap { padding: 0 18px }`
   comes later at the same weight and zeroed this padding on phones. */
footer .foot-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) repeat(4, minmax(0, 1fr)); gap: 40px; padding-top: 64px; padding-bottom: 56px; }
.foot-brand .wordmark { font-size: 1.2rem; }
.foot-brand .wordmark .fb-find { color: #fff; }
.foot-brand .wordmark .fb-biz, .foot-brand .wordmark .fb-tld { color: var(--mint); }
.foot-brand .wordmark .fb-dot { color: rgba(238,244,242,.6); }
.foot-brand p { margin-top: 14px; max-width: 44ch; font-size: .9rem; line-height: 1.6; color: rgba(238,244,242,.72); }
.foot-brand p + p { margin-top: 8px; }
footer a { color: rgba(238,244,242,.82); text-decoration: none; }
footer a:hover { color: var(--mint); }
/* Links inside the blurb sit in running text, so they carry an underline. */
.foot-brand p a { text-decoration: underline; text-decoration-color: rgba(238,244,242,.35); text-underline-offset: 2px; }
.foot-col .fh { font-family: var(--font-body); font-size: .9rem; font-weight: 600; color: var(--mint); letter-spacing: 0; }
.foot-col ul { list-style: none; margin-top: 14px; display: flex; flex-direction: column; gap: 4px; }
/* 3px of padding makes every link at least 24px tall (WCAG 2.5.8). */
.foot-col a { display: inline-flex; align-items: center; padding: 3px 0; }
/* Sized here, not by each page: a page without its own .ext-arrow rule
   (the test bed) drew the arrows at the SVG's default 300px box. */
footer .ext-arrow { width: 10px; height: 10px; margin-left: 5px; flex: 0 0 auto; opacity: .7; }
.foot-legal { border-top: 1px solid rgba(255,255,255,.1); }
/* The right padding keeps the row's last link clear of the chat launcher,
   fixed in the bottom-right corner (web-accessibility: a fixed element never
   covers content). */
.foot-legal .wrap { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 24px;
  padding-top: 20px; padding-bottom: 24px; padding-right: 104px; font-size: .8rem; color: rgba(238,244,242,.68); }
.foot-legal nav { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 18px; }
.foot-legal a { display: inline-block; padding: 4px 0; color: rgba(238,244,242,.75); }
.foot-legal .sep { color: rgba(238,244,242,.3); }
.foot-legal .agents a { font-family: ui-monospace, Menlo, monospace; }
@media (max-width: 1023px) {
  footer .foot-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px 24px; padding-top: 48px; }
  .foot-brand { grid-column: 1 / -1; }
}
@media (max-width: 700px) {
  footer .foot-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); padding-bottom: 40px; }
  /* On a phone the launcher sits over the bottom of the page, so the row
     clears it from below instead of from the side. */
  .foot-legal .wrap { flex-direction: column; align-items: flex-start; padding-right: 18px; padding-bottom: 96px; }
  .foot-legal .sep { display: none; }
}

