/* Site footer — dark navy multi-column grid */
.footer { background: var(--wab-rich-black); color: rgba(255,255,255,.7); padding: 80px 0 32px; }

/* Column grid — 5 columns on desktop, collapsing on smaller screens */
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr 1fr; gap: 48px; margin-bottom: 56px; }
@media (max-width: 1080px) {
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 36px; }
  .footer-brand { grid-column: 1 / -1; flex-direction: row; align-items: center; gap: 32px; text-align: left; }
  .footer-brand p { text-align: left; }
}
@media (max-width: 720px)  { .footer-grid { grid-template-columns: 1fr; gap: 32px; text-align: center; } }

/* Brand column */
.footer-brand { text-align: center; display: flex; flex-direction: column; align-items: center; }
.footer-brand img { height: 56px; margin-bottom: 20px; }
.footer-brand p { font-size: 14px; line-height: 1.55; max-width: 32ch; color: rgba(255,255,255,.6); margin: 0; text-align: center; }
@media (max-width: 720px) { .footer-brand img, .footer-brand p { margin-left: auto; margin-right: auto; } }

/* Column headings and link lists */
.footer h4 { font-size: 12px; font-weight: 800; letter-spacing: var(--tracking-claim); text-transform: uppercase; color: #fff; margin: 0 0 18px; }
.footer ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
@media (max-width: 720px) { .footer ul { align-items: center; } }
.footer ul li     { font-size: 14px; color: rgba(255,255,255,.7); }
.footer ul a      { font-size: 14px; color: rgba(255,255,255,.7); border: none; text-decoration: none; transition: color .2s; }
.footer ul a:hover { color: var(--accent); }
.footer ul li.is-strong, .footer ul li.is-strong a { color: #fff; font-weight: 600; font-size: 14px; }

/* Social + reviews icon row */
.footer-icons-row {
  display: grid; grid-template-columns: 2fr 1fr; gap: 48px;
  padding: 40px 0; border-top: 1px solid rgba(255,255,255,.08); border-bottom: 1px solid rgba(255,255,255,.08);
  margin-bottom: 32px;
}
@media (max-width: 880px) { .footer-icons-row { grid-template-columns: 1fr; gap: 32px; } }

.footer-icons-group .label {
  font-size: 11px; font-weight: 800; letter-spacing: var(--tracking-claim);
  text-transform: uppercase; color: rgba(255,255,255,.5); margin-bottom: 16px;
}
@media (max-width: 880px) { .footer-icons { justify-content: center; } .footer-icons-group .label { text-align: center; } }

.footer-icons { display: flex; flex-wrap: wrap; gap: 10px; }
.footer-ic {
  width: 42px; height: 42px; display: flex; align-items: center; justify-content: center;
  border-radius: 50%; background: rgba(255,255,255,.08); color: #fff; border: none;
  transition: background .2s, color .2s, transform .25s cubic-bezier(.22,1,.36,1);
}
.footer-ic:hover { background: var(--accent); color: #fff; transform: translateY(-3px); }
.footer-ic svg, .footer-ic img { width: 18px; height: 18px; }

/* Bottom bar — copyright and legal links */
.footer-bottom {
  padding-top: 16px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 16px;
  font-size: 13px; color: rgba(255,255,255,.45);
}
.footer-bottom a       { color: inherit; border: none; text-decoration: none; }
.footer-bottom a:hover { color: var(--accent); }
.footer-bottom-center  { text-align: center; }
.footer-legal          { justify-self: end; }
@media (max-width: 720px) {
  .footer-bottom { grid-template-columns: 1fr; text-align: center; }
  .footer-legal  { justify-self: center; }
}
.footer-legal { display: flex; gap: 24px; flex-wrap: wrap; }
