/* ══════════════════════════════════════════════════════════════
   Footer 2026 — live-site link groups, accreditation strip,
   heritage line and legal bar, on a roomier grid.
   Loads site-wide after styles.min.css. The footer is a fixed
   reveal panel: .footer and .footer__fixed heights must match the
   real content height (set in the reveal block at the bottom).
   ══════════════════════════════════════════════════════════════ */

/* ── Vertical rhythm ── */
.footer__content { padding: 96px 80px 0 !important; }

/* ── Top zone: brand + link columns on a 12-col-style grid ── */
.footer__top {
  display: grid !important;
  grid-template-columns: minmax(280px, 360px) 1fr;
  gap: clamp(56px, 8vw, 140px) !important;
  align-items: start;
}
.footer__brand { width: auto !important; }

.footer__nav--four {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 48px 64px;
  justify-content: stretch;
}
.footer__nav--four .footer__col { min-width: 0; }
.footer__col-title {
  display: block;
  margin-bottom: 18px !important;
  font-size: 12px !important;
  letter-spacing: 2px !important;
  color: #FE8D29 !important;
}
.footer__nav--four .footer__menu li { margin-bottom: 13px; }
.footer__nav--four .footer__menu li:last-child { margin-bottom: 0; }
.footer__nav--four .footer__menu a {
  color: rgba(255, 255, 255, 0.66);
  font-size: 14px;
  line-height: 1.5;
  text-decoration: none;
  transition: color 0.2s;
  display: inline-block;
}
.footer__nav--four .footer__menu a:hover { color: #fff; }

/* ── Accreditation strip: its own row between hairlines ── */
.footer__accred {
  margin-top: 72px;
  padding: 48px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  flex-wrap: wrap;
}
.footer__accred img {
  height: 54px;
  width: auto;
  max-width: 160px;
  object-fit: contain;
  opacity: 0.8;
  transition: opacity 0.25s;
}
.footer__accred img:hover { opacity: 1; }

/* ── Heritage line ── */
.footer__heritage {
  padding: 40px 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  font-family: 'NexaBold', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.28);
  text-align: center;
}
.footer__heritage-dot { color: rgba(254, 141, 41, 0.55); }

/* ── Bottom bar ── */
.footer__bottom {
  max-width: none !important;
  margin: 0 !important;
  padding: 30px 0 44px !important;
  border-top: none !important;
  display: flex;
  align-items: center;
  gap: 12px 28px;
  flex-wrap: wrap;
}
.footer__bottom .footer__credit--mota { margin-left: auto; }
@media (max-width: 900px) {
  .footer__bottom { flex-direction: column; justify-content: center; text-align: center; gap: 16px; }
  .footer__bottom .footer__credit--mota { margin-left: 0; }
}
.footer__legal {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 20px;
  justify-content: center;
}
.footer__legal a {
  color: rgba(255, 255, 255, 0.45);
  font-size: 12.5px;
  text-decoration: none;
  transition: color 0.2s;
}
.footer__legal a:hover { color: #FE8D29; }

/* ── Fixed-reveal height (desktop) ── */
@media (min-width: 1101px) {
  .footer { height: 738px; }
  .footer__fixed { height: 738px; }
}
/* Tablet: drop the reveal, let it flow */
@media (min-width: 769px) and (max-width: 1100px) {
  .footer { height: auto; clip-path: none; }
  .footer__fixed { position: relative; height: auto; }
  .footer__top { grid-template-columns: 1fr; gap: 56px !important; }
  .footer__content { padding: 72px 48px 0 !important; }
}
@media (max-width: 1100px) {
  .footer__nav--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .footer__accred { justify-content: center; gap: 32px 48px; padding: 40px 0; margin-top: 48px; }
  .footer__accred img { height: 44px; }
  .footer__heritage { flex-wrap: wrap; gap: 8px; letter-spacing: 2px; }
}
@media (max-width: 768px) {
  .footer__content { padding: 64px 24px 0 !important; }
  .footer__top { grid-template-columns: 1fr; gap: 48px !important; }
}
@media (max-width: 560px) {
  .footer__nav--four { grid-template-columns: 1fr; gap: 36px; }
  .footer__legal { justify-content: flex-start; }
  .footer__bottom { padding-bottom: 36px !important; }
}

/* ══════════════════════════════════════════════════════════════
   Light footer variant — add .footer--light to footer.footer.
   Light grey base, navy ink, orange accents unchanged.
   ══════════════════════════════════════════════════════════════ */
.footer--light .footer__fixed { background: #fff; }
.footer--light .footer__content { border-top-color: rgba(25, 23, 86, 0.08); }
.footer--light .footer__decor { display: none; }

/* Brand: swap the white logo treatment for navy */
.footer--light .footer__logo-img { filter: none; }
.footer--light .footer__contact-link { color: #191756; }
.footer--light .footer__contact-link:hover { color: #FE8D29; }
.footer--light .footer__address { color: rgba(25, 23, 86, 0.55); }
.footer--light .footer__social-btn {
  background: rgba(25, 23, 86, 0.06);
  border-color: rgba(25, 23, 86, 0.10);
  color: #191756;
}
.footer--light .footer__social-btn:hover { background: #191756; color: #fff; }

/* Link columns */
.footer--light .footer__col-title { color: #FE8D29 !important; }
.footer--light .footer__nav--four .footer__menu a { color: rgba(25, 23, 86, 0.62); }
.footer--light .footer__nav--four .footer__menu a:hover { color: #191756; }

/* Accreditation logos are white PNGs — invert to ink on light */
.footer--light .footer__accred { border-top-color: rgba(25, 23, 86, 0.10); }
.footer--light .footer__accred img { filter: invert(1) sepia(1) saturate(3) hue-rotate(210deg) brightness(0.35); opacity: 0.75; }
.footer--light .footer__accred img:hover { opacity: 1; }

/* Heritage + bottom bar */
.footer--light .footer__heritage { border-top-color: rgba(25, 23, 86, 0.10); color: rgba(25, 23, 86, 0.30); }
.footer--light .footer__heritage-dot { color: rgba(254, 141, 41, 0.75); }
.footer--light .footer__copy { color: rgba(25, 23, 86, 0.40); }
.footer--light .footer__legal a { color: rgba(25, 23, 86, 0.45); }
.footer--light .footer__legal a:hover { color: #FE8D29; }
.footer--light .footer__credit { color: rgba(25, 23, 86, 0.40); }
.footer--light .footer__credit a { color: rgba(25, 23, 86, 0.65); }

/* YouTube punch-out triangle follows the chip background */
.footer--light .footer__social-btn svg polygon { fill: #fff; }
.footer--light .footer__social-btn:hover svg polygon { fill: #191756; }

/* Address matches the contact links */
.footer__address,
.footer__address p {
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

/* Mota credit with logo */
.footer__credit--mota {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 0px;
  text-decoration: none;
  font-size: 10px;
  opacity: 0.75;
  transition: opacity 0.25s;
}
.footer__credit--mota:hover { opacity: 1; }
.footer__credit--mota span { color: rgba(25, 23, 86, 0.40); }
.footer__credit--mota img { display: block; height: 13px; width: auto; }

/* Heritage line removed — bottom bar takes over its divider */
.footer__bottom { border-top: 1px solid rgba(25, 23, 86, 0.10) !important; padding-top: 34px !important; }
