/* ===== Footer: CTA band + sitemap + contact ===== */

.site-footer{
  position:relative;
  background:linear-gradient(180deg,#0a1a29 0%,#07131f 100%);
  color:var(--muted);
  padding-top:0;
}

/* ---------- CTA band ---------- */
.foot-cta{
  position:relative;
  background:linear-gradient(150deg,rgba(18,41,61,.9),rgba(11,27,43,.95));
  padding:clamp(44px,6vw,68px) 0;
}
.foot-cta-inner{
  display:grid;grid-template-columns:1.35fr auto;
  gap:clamp(28px,5vw,64px);align-items:center;
}
.fc-copy .eyebrow{margin-bottom:12px}
.fc-copy h2{
  color:var(--ink);
  font-size:clamp(1.5rem,2.6vw,2.1rem);
  margin:0 0 10px;letter-spacing:-.02em;
}
.fc-copy p{margin:0;max-width:52ch;font-size:.98rem}
.fc-actions{display:flex;gap:12px;flex-wrap:wrap}
.fc-actions .btn span{transition:transform .22s ease}
.fc-actions .btn:hover span{transform:translateX(3px)}

/* ---------- sitemap grid ---------- */
.foot-grid{
  display:grid;
  grid-template-columns:1.5fr repeat(4,1fr);
  gap:clamp(26px,3.5vw,52px);
  padding:clamp(48px,6vw,76px) 0 clamp(36px,4vw,52px);
}

/* brand + contact */
.foot-logo{height:44px;width:auto;margin-bottom:18px}
.foot-desc{
  font-size:.92rem;line-height:1.7;
  max-width:38ch;margin:0 0 22px;color:var(--muted);
}
.foot-contact{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.foot-contact li{display:flex;align-items:flex-start;gap:11px;font-size:.9rem;line-height:1.5}
.fc-ic{
  flex:0 0 auto;width:26px;height:26px;
  display:grid;place-items:center;
  border:1px solid var(--line);border-radius:3px;
  background:rgba(42,151,120,.1);color:var(--accent);
}
.fc-ic svg{width:14px;height:14px}
.foot-contact a{color:var(--muted);transition:color .18s ease}
.foot-contact a:hover{color:var(--accent)}

/* link columns */
.foot-col{display:flex;flex-direction:column}
.foot-col h4{
  font-family:var(--font-h);font-weight:600;
  font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink);margin:0 0 14px;
}
.foot-col h4 a{color:var(--ink);transition:color .18s ease}
.foot-col h4 a:hover{color:var(--accent)}
.foot-col-second{margin-top:26px!important}
.foot-col>a{
  display:block;font-size:.88rem;line-height:1.5;
  padding:6px 0;color:var(--muted);
  transition:color .18s ease,transform .18s ease;
}
.foot-col>a:hover{color:var(--accent);transform:translateX(3px)}

/* ---------- base bar ---------- */
.foot-base{
  display:flex;align-items:center;justify-content:space-between;
  gap:18px;flex-wrap:wrap;
  padding:20px 0 26px;
  border-top:1px solid rgba(30,58,82,.6);
}
.foot-base p{margin:0;font-size:.82rem;color:var(--muted)}
.foot-legal{display:flex;gap:22px;flex-wrap:wrap}
.foot-legal a{font-size:.82rem;color:var(--muted);transition:color .18s ease}
.foot-legal a:hover{color:var(--accent)}

/* ---------- responsive ---------- */
@media(max-width:1100px){
  .foot-grid{grid-template-columns:1.4fr repeat(2,1fr);row-gap:38px}
}
@media(max-width:860px){
  .foot-cta-inner{grid-template-columns:1fr;gap:24px}
  .fc-actions{width:100%}
  .fc-actions .btn{flex:1;min-width:160px;justify-content:center}
}
@media(max-width:640px){
  .foot-grid{grid-template-columns:1fr 1fr;gap:30px 22px;padding-top:40px}
  .foot-brand{grid-column:1 / -1}
  .foot-desc{max-width:none}
  .foot-base{flex-direction:column;align-items:flex-start;gap:12px}
}
@media(max-width:420px){
  .foot-grid{grid-template-columns:1fr}
  .fc-actions{flex-direction:column}
  .fc-actions .btn{width:100%}
}

@media(prefers-reduced-motion:reduce){
  .foot-col>a:hover{transform:none}
  .fc-actions .btn:hover span{transform:none}
}
