/* Footer: brand column, category link columns, support, newsletter,
   bottom bar. Values match the original mockup. */

.ecl-footer {
  background: var(--ecl-navy);
  color: #fff;
  margin-top: 56px;
  padding: 48px 0 0;
}
.ecl-footer__grid {
  display: grid;
  grid-template-columns: 1.15fr .95fr .95fr .8fr 1.15fr;
  gap: 26px;
  padding-bottom: 36px;
}
.ecl-footer__brand { display: flex; flex-direction: column; gap: 12px; }
.ecl-footer__logo-link { display: inline-flex; align-self: flex-start; }
.ecl-footer__logo { height: 34px; width: auto; display: block; }
.ecl-footer__brand span { font-size: 13px; line-height: 1.6; color: #B9BCE8; }

.ecl-footer__col { display: flex; flex-direction: column; gap: 9px; font-size: 13.5px; }
.ecl-footer__heading { font-family: var(--ecl-font-primary); font-size: 11px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: #8A8FD6; }
.ecl-footer__col a { color: #E6E7F7; }

.ecl-footer__newsletter { gap: 10px; }
.ecl-footer__newsletter-copy { font-size: 13px; color: #B9BCE8; line-height: 1.55; }
.ecl-newsletter-form { display: flex; gap: 8px; }
.ecl-newsletter-form input {
  flex: 1; min-width: 0; height: 44px; border-radius: 999px;
  border: 1px solid #3A42A8; background: #0D1590; color: #fff; padding: 0 16px;
}
.ecl-newsletter-form input::placeholder { color: #8A8FD6; }
.ecl-newsletter-form button {
  height: 44px; padding: 0 20px; border: none; border-radius: 999px;
  background: var(--ecl-accent-lime); color: var(--ecl-navy);
  font-family: var(--ecl-font-primary); font-size: 13.5px; font-weight: 700;
}
.ecl-newsletter-form button:disabled { opacity: 0.6; cursor: default; }

.ecl-footer__bottom {
  border-top: 1px solid #2A32A0;
  padding: 18px 0 24px;
  display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap;
  font-size: 12.5px; color: #8A8FD6;
}
.ecl-footer__legal { display: flex; gap: 18px; }
.ecl-footer__legal a { color: #8A8FD6; }

@media (max-width: 900px) {
  .ecl-footer__grid { grid-template-columns: 1fr 1fr; }
  .ecl-footer__brand, .ecl-footer__newsletter { grid-column: 1 / -1; }
}
@media (max-width: 560px) {
  .ecl-footer__grid { grid-template-columns: 1fr; }
}


/* Footer promo bar -- only rendered when ecl_footer_promo_text is set
   (see template-parts/footer/main.php); with nothing entered, nothing
   changes here. */
.ecl-footer__promo { text-align: center; padding: 16px 0; border-top: 1px solid #2A32A0; }
.ecl-footer__promo a, .ecl-footer__promo span {
  display: inline-block; background: var(--ecl-accent-lime); color: var(--ecl-navy);
  font-family: var(--ecl-font-primary); font-weight: 700; font-size: 13px;
  padding: 9px 22px; border-radius: 999px;
}
