/* Phase 10 — Site footer */
.sa-site-footer {
  --sa-f-bg: #002722;
  --sa-f-bg2: #001c19;
  --sa-f-text: #E8D9B9;
  --sa-f-muted: #C8B994;
  --sa-f-line: rgba(181, 162, 105, 0.22);
  --sa-f-accent: #B5A269;
  background:
    radial-gradient(700px 280px at 12% 0%, rgba(62, 97, 42, 0.28), transparent 62%),
    linear-gradient(180deg, var(--sa-f-bg) 0%, var(--sa-f-bg2) 100%);
  color: var(--sa-f-text);
  border-top: 1px solid var(--sa-f-line);
}

.sa-site-footer__inner {
  width: min(1240px, calc(100% - 40px));
  margin: 0 auto;
  padding: 56px 0 40px;
}

.sa-site-footer__grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 36px 28px;
}

.sa-footer-col {
  margin: 0;
  border: 0;
}

.sa-footer-col__title {
  list-style: none;
  cursor: default;
  margin: 0 0 14px;
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #E8D9B9;
}

.sa-footer-col__title::-webkit-details-marker {
  display: none;
}

.sa-footer-col--company .sa-footer-col__title {
  font-size: 1.15rem;
  letter-spacing: 0.06em;
  color: var(--sa-f-accent);
  text-transform: none;
}

.sa-footer-col__company {
  margin: 0 0 14px;
  font-size: 0.92rem;
  line-height: 1.5;
  color: var(--sa-f-text);
  font-weight: 600;
}

.sa-footer-col__line {
  margin: 0 0 10px;
  font-size: 0.9rem;
  line-height: 1.55;
  color: var(--sa-f-muted);
}

.sa-footer-col__label {
  display: block;
  margin-bottom: 2px;
  font-size: 0.72rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #c5d0e4;
}

.sa-footer-col__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.sa-footer-col__list li {
  margin: 0 0 8px;
}

.sa-footer-col__list a,
.sa-footer-col__line a {
  color: var(--sa-f-text);
  text-decoration: none;
}

.sa-footer-col__list a:hover,
.sa-footer-col__line a:hover {
  color: var(--sa-f-accent);
}

.sa-footer-col__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 6px;
  padding: 10px 14px;
  border-radius: 8px;
  background: #E8D9B9;
  color: #003C35 !important;
  font-size: 0.82rem;
  font-weight: 700;
  text-decoration: none;
}

.absolute-footer {
  background: #001c19 !important;
  color: #C8B994 !important;
  border-top: 1px solid rgba(181, 162, 105, 0.18);
}

.absolute-footer a {
  color: #c5d0e4;
}

@media (max-width: 899px) {
  .sa-site-footer__inner {
    padding: 28px 0 20px;
    width: min(1240px, calc(100% - 28px));
  }

  .sa-site-footer__grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .sa-footer-col {
    border-bottom: 1px solid var(--sa-f-line);
  }

  .sa-footer-col__title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    padding: 14px 0;
    margin: 0;
  }

  .sa-footer-col__title::after {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 2px solid #c5d0e4;
    border-bottom: 2px solid #c5d0e4;
    transform: rotate(45deg);
    transition: transform 0.2s ease;
  }

  .sa-footer-col[open] > .sa-footer-col__title::after {
    transform: rotate(225deg);
  }

  .sa-footer-col__body {
    padding: 0 0 16px;
  }

}

@media (min-width: 900px) {
  .sa-footer-col--accordion {
    /* Force open appearance on desktop even if details closed. */
  }

  .sa-footer-col--accordion > .sa-footer-col__body {
    display: block !important;
  }

  .sa-footer-col--accordion > .sa-footer-col__title {
    pointer-events: none;
  }

  .sa-footer-col--accordion > .sa-footer-col__title::after {
    display: none;
  }
}
