.ak-site-footer { position: relative; margin: 0; overflow: hidden; border-top: 1px solid rgba(135,112,78,.7); background-color: #111820; background-image: radial-gradient(circle at 84% 6%, rgba(135,112,78,.28), transparent 34%), radial-gradient(circle at 4% 100%, rgba(135,112,78,.16), transparent 30%), linear-gradient(135deg, #111820 0%, #171f27 54%, #202a32 120%); color: #f7f5f0; isolation: isolate; }
.ak-site-footer::before { position: absolute; z-index: -1; inset: 0; content: ""; pointer-events: none; background: repeating-linear-gradient(90deg, transparent 0, transparent 9rem, rgba(255,255,255,.018) 9rem, rgba(255,255,255,.018) calc(9rem + 1px)); }
.ak-site-footer::after { position: absolute; z-index: -1; top: -17rem; right: -13rem; width: 34rem; height: 34rem; border: 1px solid rgba(200,178,140,.18); border-radius: 50%; content: ""; pointer-events: none; }
.ak-site-footer__inner { position: relative; z-index: 1; width: min(100% - (2 * var(--ak-gutter)), var(--ak-max)); margin-inline: auto; padding-block: clamp(3.5rem, 7vw, 6rem) 1.5rem; }
.ak-site-footer__grid { display: grid; grid-template-columns: 1.15fr .7fr 1fr 1.15fr; gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.ak-site-footer h2 { margin: 0 0 1.2rem; color: #c8b28c; font-family: "Manrope", Arial, sans-serif; font-size: .7rem; font-weight: 750; letter-spacing: .14em; text-transform: uppercase; }
.ak-site-footer__brand > a { display: block; width: min(100%, 14rem); line-height: 0; }
.ak-site-footer__brand img { display: block; width: 100%; height: auto; }
.ak-site-footer__brand p { max-width: 26rem; margin: 1.2rem 0 0; color: #c7cbd0; font-size: .82rem; line-height: 1.7; }
.ak-site-footer__nav, .ak-site-footer__contact { display: grid; align-content: start; gap: .72rem; min-width: 0; padding-left: clamp(1rem, 2vw, 2rem); border-left: 1px solid rgba(255,255,255,.12); }
.ak-site-footer__nav a, .ak-site-footer__contact a { width: fit-content; color: #f7f5f0; font-size: .78rem; font-weight: 650; line-height: 1.55; text-decoration: none; }
.ak-site-footer__nav a, .ak-site-footer__contact > a { border-bottom: 1px solid transparent; transition: border-color 180ms ease, color 180ms ease; }
.ak-site-footer__nav a:hover, .ak-site-footer__contact > a:hover { border-color: #c8b28c; color: #fff; }
.ak-site-footer__nav > span { color: #9da4aa; font-size: .78rem; font-weight: 650; cursor: default; }
.ak-site-footer__contact address { margin: 0 0 .25rem; font-style: normal; }
.ak-site-footer__contact address a { color: #d5d8db; font-weight: 500; }
.ak-site-footer__contact > span { margin-top: .35rem; color: #aeb4ba; font-size: .72rem; font-weight: 650; }
.ak-site-footer__reviews { min-width: 0; padding: 1.35rem; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.055); box-shadow: 0 1.2rem 3rem rgba(0,0,0,.18); backdrop-filter: blur(5px); }
.ak-site-footer__reviews > :not(h2), .ak-site-footer__reviews iframe { max-width: 100% !important; }
.ak-site-footer__reviews .ti-widget { margin: 0 !important; }
.ak-site-footer__bottom { display: flex; gap: 1.5rem; align-items: center; justify-content: space-between; margin-top: clamp(3rem, 6vw, 5rem); padding-top: 1.25rem; border-top: 1px solid rgba(255,255,255,.14); color: #aeb4ba; font-size: .68rem; }
.ak-site-footer__bottom nav { display: flex; gap: 1.25rem; }
.ak-site-footer__bottom nav a { color: #aeb4ba; text-decoration: none; transition: color 180ms ease; }
.ak-site-footer__bottom nav a:hover { color: #fff; }
.ak-site-footer a:focus-visible { outline: 2px solid #c8b28c; outline-offset: 3px; }

@media (max-width: 1100px) {
  .ak-site-footer__grid { grid-template-columns: 1fr 1fr; }
  .ak-site-footer__nav, .ak-site-footer__contact { padding-top: 1.5rem; padding-left: 0; border-top: 1px solid rgba(255,255,255,.12); border-left: 0; }
}

@media (max-width: 700px) {
  .ak-site-footer::after { top: -12rem; right: -18rem; }
  .ak-site-footer__inner { padding-top: 3.5rem; }
  .ak-site-footer__grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .ak-site-footer__brand > a { width: 12rem; }
  .ak-site-footer__bottom { align-items: flex-start; flex-direction: column; }
  .ak-site-footer__bottom nav { flex-wrap: wrap; }
}

@media (prefers-reduced-motion: reduce) {
  .ak-site-footer__nav a, .ak-site-footer__contact > a { transition: none; }
}
