/* ============================================
   footer — node 4:150 (mobile 390, DRAWN). Desktop 1024–1920 INVENTED (mobile-only-mode):
   centred `stack` (BA-INV-FT1), logo ×1.6 (BA-INV-FT2). Pattern A + .container--full (§1b).
   Fluid values: brief/footer.md §2 (anchor 390, --vw-base 1440 INVENTED).
============================================ */

/* Footer-only mobile gutter 16 (DRAWN, D-FT-4) — mobile band only; 768+ uses the page gutter. */
@media (max-width: 767.98px) {
  .footer {
    --gutter: clamp(13px, calc(16px + (var(--max-vw) - 390px) * 0.015), 80px);
  }
}

.footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  row-gap: clamp(33px, calc(40px + (var(--max-vw) - 390px) * 0.015), 60px);
  /* longhands only — never a padding shorthand on .container */
  padding-top: clamp(53px, calc(64px + (var(--max-vw) - 390px) * 0.015), 128px);
  padding-bottom: clamp(33px, calc(40px + (var(--max-vw) - 390px) * 0.015), 80px);
  background-color: var(--color-ink);
}

/* Logo 4:151 — height-driven, width from the aspect ratio (exported SVG has preserveAspectRatio="none") */
.footer__logo {
  flex-shrink: 0;
  height: clamp(74px, calc(90px + (var(--max-vw) - 390px) * 0.015), 144px);
  width: auto;
  aspect-ratio: 204.632 / 90;
}

/* Legal 4:159 — token `legal`, white 25% (kept as drawn, BA-FT2) */
.footer__legal {
  font-family: var(--font-body);
  font-weight: 600;
  font-size: var(--text-legal);
  line-height: var(--lh-legal);
  letter-spacing: var(--ls-body);
  color: var(--color-white-25);
  text-align: center;
}

/* PSEUDO-TABLET 768–1023 (no tablet layer): M-767 + (vw-768)*0.025 */
@media (min-width: 768px) {
  .footer {
    row-gap: clamp(45.66px, calc(45.66px + (var(--max-vw) - 768px) * 0.025), 60px);
    padding-top: clamp(69.66px, calc(69.66px + (var(--max-vw) - 768px) * 0.025), 128px);
    padding-bottom: clamp(45.66px, calc(45.66px + (var(--max-vw) - 768px) * 0.025), 80px);
  }
  .footer__logo {
    height: clamp(95.66px, calc(95.66px + (var(--max-vw) - 768px) * 0.025), 144px);
  }
}

/* DESKTOP 1024+ (INVENTED): D-base * vw / 1440; spacing keeps the standard floor (BA-INV-P1),
   the logo floor is raised to its 1023 value so the mark never shrinks across 1024. */
@media (min-width: 1024px) {
  .footer {
    row-gap: clamp(43px, calc(60px * (var(--max-vw) / var(--vw-base))), 80px);
    padding-top: clamp(91px, calc(128px * (var(--max-vw) / var(--vw-base))), 171px);
    padding-bottom: clamp(57px, calc(80px * (var(--max-vw) / var(--vw-base))), 107px);
  }
  .footer__logo {
    height: clamp(102.03px, calc(144px * (var(--max-vw) / var(--vw-base))), 192px);
  }
}
