/* Footer — Theme Builder global footer chrome. */

/* ── Footer menu — stacks to a centered column ≤980px ──
   Both need `!important`; Divi's align-items:stretch outranks this selector. */
@media (max-width: 980px) {
  .et-l--footer .et-menu {
    flex-direction: column !important;
    align-items: center !important;
    row-gap: 1rem;
  }
}

/* ── Footer logo — zeroes Divi's 30px logo gutter so the logo fills and centers ── */
.et-l--footer .et_pb_menu__logo {
  margin-right: 0 !important;
}

.et-l--footer .et_pb_menu__logo-wrap {
  justify-content: center;
}

/* ── Footer nav — full-bleed light-blue band behind the links, desktop only ──
   `overflow-x: clip` contains the 100vw ::before — clip, not hidden, or sticky breaks. */
.et-l--footer {
  overflow-x: clip;
}

@media (min-width: 981px) {
  .et-l--footer .et_pb_menu__menu {
    position: relative;
  }

  .et-l--footer .et_pb_menu__menu::before {
    content     : "";
    position    : absolute;
    inset       : 0;
    left        : 50%;
    width       : 100vw;
    transform   : translateX(-50%);
    background  : var(--light-blue);
    z-index     : 0;
  }

  .et-l--footer .et_pb_menu__menu > * {
    position : relative;
    z-index  : 1;
  }
}

/* ── Footer nav items — nav-heading type, minus Divi's 31px link padding ──
   Every line needs `!important`; Divi's per-module CSS loads last, so equal
   specificity loses. */
.et-l--footer .et_pb_menu__menu > nav > ul > li > a {
  padding        : 0.875rem 0 !important;
  font-family    : var(--font-geist) !important;
  font-size      : var(--text-nav-heading) !important;
  font-weight    : 700 !important;
  line-height    : 1.25 !important;
  letter-spacing : 0.3em !important;
  text-transform : uppercase !important;
}

@media (max-width: 980px) {
  .et-l--footer .et_pb_menu__menu > nav > ul > li > a {
    padding: 0.375rem 0 !important;
  }
}
