/* ============================================================
   Legacy site footer — extracted from site.css so it can be used
   with the new ICG theme without pulling in the whole old stylesheet.
   ============================================================ */

.site-footer {
  background: #fff;
  color: #d7e4ff;
  font-family: "Inter", "Segoe UI", Arial, sans-serif;
}

.footer-visual {
  overflow: hidden;
  border-top: 1px solid #e7edf4;
  background: linear-gradient(180deg, #fff 0%, #f8fbff 100%);
  padding: 30px 0 26px;
}

.footer-visual-frame {
  max-width: 1760px;
  margin: 0 auto;
  padding: 0 clamp(16px, 3vw, 40px);
}

.footer-visual img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  border-radius: 22px;
  box-shadow: 0 24px 55px rgba(15, 40, 90, .12);
}

.site-footer .site-nav-container {
  max-width: 1540px;
  margin: 0 auto;
  padding-left: clamp(18px, 3vw, 48px);
  padding-right: clamp(18px, 3vw, 48px);
}

.footer-navigation {
  padding: 38px 0 34px;
  background: linear-gradient(115deg, #052750 0%, #075795 55%, #0b7fb8 100%);
}

.footer-grid {
  display: grid;
  grid-template-columns: 1.15fr 1fr 1fr 1.1fr .95fr 1.35fr;
  gap: clamp(22px, 2.5vw, 42px);
}

.footer-shortcuts {
  display: grid;
  align-content: start;
  gap: 7px;
  padding-right: 24px;
  border-right: 1px solid rgba(255, 255, 255, .32);
}

.footer-shortcuts > a,
.footer-shortcut {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 45px;
  margin: 0;
  color: #fff;
  text-decoration: none;
}

.footer-shortcuts > a > span,
.footer-shortcut > span {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 5px 14px rgba(2, 25, 61, .18);
  font-size: 1.22rem;
}

.footer-shortcuts strong {
  font-size: .86rem;
  font-weight: 700;
}

.footer-shortcuts a:hover strong { color: #ffd08c; }

.footer-shortcut small {
  color: #b8d8f2;
  font-size: .58rem;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.footer-shortcut.is-pending { opacity: .72; cursor: default; }

.site-footer p,
.footer-column > a {
  color: #dcecff;
  font-size: .82rem;
  line-height: 1.65;
}

.site-footer h3 {
  margin: 0 0 16px;
  color: #ffffff;
  font-size: .9rem;
  font-weight: 850;
  letter-spacing: .035em;
  text-transform: uppercase;
  font-family: "Archivo", "Segoe UI", Arial, sans-serif;
}

.footer-column > a {
  position: relative;
  display: block;
  margin-top: 9px;
  padding-left: 13px;
  text-decoration: none;
  transition: color .15s ease, transform .15s ease;
}

.footer-column > a::before {
  content: "\203A";
  position: absolute;
  left: 0;
  color: #8ec8ef;
  font-weight: 900;
}

.footer-column > a:hover { color: #fff; transform: translateX(2px); }
.footer-about p { margin: 0 0 18px; }

.site-footer .footer-inspire {
  display: flex;
  align-items: center;
  gap: 12px;
  max-width: 220px;
  margin: 0;
  padding: 12px 15px;
  border: 1px solid rgba(255, 255, 255, .45);
  border-radius: 10px;
  background: rgba(255, 255, 255, .93);
  color: #087a43;
  text-decoration: none;
}

.footer-inspire > span { font-size: 1.35rem; }
.footer-inspire strong { font-size: .82rem; line-height: 1.45; }

.footer-legal {
  background: #041f42;
  border-top: 1px solid rgba(255, 255, 255, .1);
}

.footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 18px 0;
  color: #c6daf2;
  font-size: .74rem;
}

.footer-bottom > span:first-child strong { color: #fff; font-style: normal; }
.footer-bottom > span:first-child strong span { color: #f58220; }
.footer-bottom > span:first-child strong em { color: #21b45a; font-style: normal; }
.footer-bottom nav { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 0; }
.footer-bottom nav a { padding: 0 10px; border-right: 1px solid rgba(255, 255, 255, .3); color: #dcecff; text-decoration: none; }
.footer-bottom nav a:last-child { border-right: 0; }
.footer-bottom nav a:hover { color: #fff; }

.footer-pending {
    display: flex;
    align-items: center;
    gap: .45rem;
    color: rgba(255, 255, 255, .58);
}

.footer-pending small,
.footer-coming-soon {
    font-size: .64rem;
    color: #86efac;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.footer-coming-soon {
    display: inline-flex;
    padding: .35rem .65rem;
    border: 1px solid rgba(134, 239, 172, .3);
    border-radius: 999px;
}

@media (max-width: 1199px) {
  .footer-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 767px) {
  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom { align-items: flex-start; flex-direction: column; }
  .footer-visual { padding: 22px 0 18px; }
  .footer-visual img { height: 190px; object-fit: cover; object-position: left center; border-radius: 16px; }
  .footer-navigation { padding: 30px 0; }
  .footer-shortcuts {
    padding-right: 0;
    padding-bottom: 24px;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .28);
  }
  .footer-bottom nav { justify-content: flex-start; }
}
