/* ==========================================================
   Custom Auth Suite™ Site — Footer v2.0.0
   Owner: assets/css/cas-footer.css

   Clean rebuild:
   - Footer hub navigation generated by inc/footer-branding.php.
   - Footer signature is one real HTML component.
   - No pseudo-logo.
   - No legacy cas-footer-branding-wrap::after image.
   - No lazy-loaded footer mark.
   ========================================================== */

/* ------------------------------
   Footer hub shell
   ------------------------------ */

.cas-site .cas-footer-hub {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  padding: clamp(24px, 3vw, 36px) 0 clamp(14px, 2vw, 22px);

  display: grid;
  gap: clamp(24px, 3vw, 36px);
}

/* ------------------------------
   Footer navigation
   ------------------------------ */

.cas-site .cas-footer-hub__nav {
  width: min(100%, 1040px);
  margin: 0 auto;

  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(16px, 2.4vw, 30px);

  text-align: left;
}

.cas-site .cas-footer-hub__col h3 {
  margin: 0 0 .75rem !important;

  color: rgba(21,35,61,.92) !important;

  font-family: var(--cas-font-brand) !important;
  font-size: .82rem !important;
  line-height: 1.1 !important;
  font-weight: 500 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

.cas-site .cas-footer-hub__col ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;

  display: grid;
  gap: .48rem;
}

.cas-site .cas-footer-hub__col li {
  margin: 0 !important;
  padding: 0 !important;
}

.cas-site .cas-footer-hub__col a {
  color: rgba(61,75,101,.82) !important;

  font-family: var(--cas-font-body) !important;
  font-size: .95rem !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  text-decoration: none !important;

  transition:
    color 180ms ease,
    text-shadow 180ms ease,
    transform 180ms ease;
}

.cas-site .cas-footer-hub__col a:hover {
  color: #7f45e8 !important;
  text-shadow: 0 0 12px rgba(127,69,232,.14) !important;
}

/* ------------------------------
   Clean footer signature
   ------------------------------ */

.cas-site .cas-footer-signature {
  width: min(100%, 760px);
  margin: clamp(10px, 1.8vw, 18px) auto 0;

  display: grid;
  justify-items: center;
  gap: .78rem;

  text-align: center;
}

.cas-site .cas-footer-signature__text,
.cas-site .cas-footer-signature__line {
  margin: 0 !important;

  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: center;
  gap: .34rem;

  color: rgba(61,75,101,.82) !important;

  font-family: var(--cas-font-body) !important;
  font-size: clamp(.98rem, 1.05vw, 1.08rem) !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
}

.cas-site .cas-footer-signature__copy,
.cas-site .cas-footer-signature__sep,
.cas-site .cas-footer-signature__payoff {
  color: rgba(61,75,101,.82) !important;
}

.cas-site .cas-footer-signature__brand {
  color: #7f45e8 !important;
  -webkit-text-fill-color: #7f45e8 !important;

  font-family: var(--cas-font-brand) !important;
  font-weight: 500 !important;
  letter-spacing: var(--cas-font-brand-tracking, .006em) !important;

  text-decoration: none !important;
}

.cas-site .cas-footer-signature__brand:hover {
  color: #ff8500 !important;
  -webkit-text-fill-color: #ff8500 !important;
}

.cas-site .cas-footer-signature__mark {
  display: block !important;

  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
  max-height: 42px !important;

  object-fit: contain !important;
  object-position: center center !important;

  margin: 0 auto !important;
  padding: 0 !important;

  opacity: .95 !important;

  background: transparent !important;

  filter:
    drop-shadow(0 8px 18px rgba(127,69,232,.14))
    drop-shadow(0 2px 6px rgba(255,133,0,.10)) !important;
}

/* Kill old/legacy footer mark targets. The signature above is canonical. */
.cas-site .ct-footer .cas-footer-branding-wrap::after,
.cas-site .cas-footer-branding-wrap::after,
.cas-site .cas-footer-hub__logo {
  content: none !important;
  display: none !important;
}

/* ------------------------------
   Responsive footer
   ------------------------------ */

@media (max-width: 1040px) {
  .cas-site .cas-footer-hub__nav {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .cas-site .cas-footer-hub__nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    text-align: center;
  }

  .cas-site .cas-footer-hub__col ul {
    justify-items: center;
  }
}

@media (max-width: 560px) {
  .cas-site .cas-footer-hub {
    padding-top: 24px;
    gap: 1.8rem;
  }

  .cas-site .cas-footer-hub__nav {
    grid-template-columns: 1fr;
    gap: 1.6rem;
  }

  .cas-site .cas-footer-hub__col a {
    font-size: .94rem !important;
  }

  .cas-site .cas-footer-signature {
    width: min(100%, 330px);
    gap: .72rem;
  }

  .cas-site .cas-footer-signature__text,
  .cas-site .cas-footer-signature__line {
    display: block !important;
    font-size: .98rem !important;
    line-height: 1.55 !important;
  }

  .cas-site .cas-footer-signature__sep {
    display: inline !important;
  }

  .cas-site .cas-footer-signature__payoff {
    display: block !important;
    margin-top: .18rem !important;
  }

  .cas-site .cas-footer-signature__mark {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    max-width: 38px !important;
    max-height: 38px !important;
  }
}
