/* Dark slab (CTA band) & footer. */
.slab-zone { padding-top: var(--section-gap); padding-bottom: 72px; }
/* When a marquee sits directly above, it already supplies the gap - stay tight. */
.marquee + .slab-zone { padding-top: 8px; }
.dark-slab {
  background: var(--ink); color: var(--ink-inverse);
  border-radius: var(--r-card); padding: clamp(36px, 6vw, 60px);
  display: flex; flex-wrap: wrap; align-items: center; gap: 28px; justify-content: space-between;
}
.dark-slab h2 { font-size: clamp(1.5rem, 3.4vw, 2.1rem); max-width: 22ch; margin: 0; }
.dark-slab .eyebrow { color: var(--blue); }
.dark-slab p { color: rgba(245,244,236,0.75); max-width: 46ch; margin-top: 12px; }
.footer { background: var(--ink); color: var(--ink-inverse); border-radius: 26px 26px 0 0; }
.footer-inner { max-width: var(--maxw); margin: 0 auto; padding: 44px var(--gutter); display: flex; flex-wrap: wrap; gap: 24px; justify-content: space-between; align-items: center; }
.footer-links { display: flex; gap: 24px; font-size: 0.9rem; font-weight: 500; flex-wrap: wrap; }
.footer-links a { color: rgba(245,244,236,0.8); }
.footer-links a:hover { color: var(--ink-inverse); }
.footer .brand { font-family: 'Space Grotesk', sans-serif; font-weight: 600; font-size: 1.05rem; }

/* full site footer — four-column, social pills, legal row */
.footer2 { background: var(--ink); color: var(--ink-inverse); border-radius: 26px 26px 0 0; margin-top: 88px; }
.f2-top { display: grid; grid-template-columns: minmax(260px, 1.2fr) repeat(3, 1fr); gap: 40px; padding-top: 56px; padding-bottom: 40px; }
@media (max-width: 900px) { .f2-top { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) {
  /* on phones the link columns duplicate the mobile menu — drop them, keep brand + social */
  .f2-top { grid-template-columns: 1fr; padding-bottom: 24px; }
  .f2-col { display: none; }
}
.f2-brand h3 { font-size: 1.5rem; max-width: 16ch; }
.f2-social { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 20px; }
.f2-social a { display: inline-flex; align-items: center; gap: 7px; font: 500 0.8125rem 'Space Grotesk', sans-serif; color: var(--ink-inverse); border: 1px solid rgba(245,244,236,0.25); border-radius: 999px; padding: 6px 14px; transition: border-color 200ms ease-out, color 200ms ease-out; }
.f2-social a:hover { border-color: var(--orange); color: var(--orange); }
.f2-social svg { width: 14px; height: 14px; flex: none; display: block; }
.f2-col .glabel { display: block; font: 500 0.75rem 'Space Grotesk', sans-serif; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(245,244,236,0.45); margin-bottom: 14px; }
.f2-col a { display: block; color: rgba(245,244,236,0.85); font-size: 0.95rem; padding: 5px 0; transition: color 200ms ease-out; }
.f2-col a:hover { color: var(--orange); }
.f2-legal { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; border-top: 1px solid rgba(245,244,236,0.14); padding-top: 20px; padding-bottom: 28px; font-size: 0.85rem; color: rgba(245,244,236,0.55); }
.f2-legal a { color: rgba(245,244,236,0.55); }
.f2-legal a:hover { color: var(--ink-inverse); }
.f2-legal .links { display: flex; gap: 20px; }
