/* The global footer stays useful without becoming a service catalogue. */
.site-footer--complete .footer-directory {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(28px, 5vw, 90px);
}

/* A direct route to the secure invoice portal, visible across the site. */
.site-header--complete .nav-payment-link {
  border: 1px solid rgba(214, 252, 119, .42);
  background: rgba(214, 252, 119, .07);
  color: #f1f7e6;
}

.site-header--complete .nav-payment-link:hover,
.site-header--complete .nav-payment-link:focus-visible {
  border-color: #d6fc77;
  background: rgba(214, 252, 119, .14);
  color: #fff;
}

.mobile-payment-link { display: none; }

@media (max-width: 1320px) and (min-width: 1101px) {
  .site-header--complete .nav-wrap { gap: 12px; }
  .site-header--complete .nav-wrap nav { gap: 11px; }
  .site-header--complete .nav-actions { gap: 8px; }
  .site-header--complete .nav-payment-link,
  .site-header--complete .nav-actions .button--lime { padding-inline: 11px; gap: 10px; }
}

@media (max-width: 1100px) {
  .menu-open .site-header--complete #main-nav .mobile-payment-link {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    width: min(100%, 420px);
    margin-top: 5px;
    border: 1px solid rgba(214, 252, 119, .42);
    border-radius: 4px;
    padding: 13px 16px;
    color: #f3ffd9;
    font-size: 18px;
    line-height: 1.3;
  }

  .menu-open .site-header--complete #main-nav .mobile-payment-link::after { display: none; }
}

@media (max-width: 700px) {
  .site-footer--complete .footer-directory {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 22px;
  }
}

@media (max-width: 470px) {
  .site-footer--complete .footer-directory { grid-template-columns: 1fr 1fr; }
  .site-footer--complete .footer-nav-column:last-child { grid-column: 1 / -1; }
}
