/* ================= Pre-footer CTA band (optional, off by default) ========= */
.cdnw-prefooter { background: var(--cdnw-red); color: #fff; }
.cdnw-prefooter__inner {
  display: flex; align-items: center; justify-content: space-between;
  gap: 24px; flex-wrap: wrap; padding: 38px 20px;
}
.cdnw-prefooter h2 { color: #fff; margin: 0 0 6px; }
.cdnw-prefooter p { margin: 0; opacity: .92; }
.cdnw-prefooter__actions { display: flex; gap: 14px; flex-wrap: wrap; }
.cdnw-btn--white { border-color: #fff; color: #fff; }
.cdnw-btn--white:hover { background: #fff; color: var(--cdnw-red); border-color: #fff; }

/* ================= Footer ================= */
.cdnw-footer { background: var(--cdnw-navy); color: #c7ccd6; font-size: .92rem; }
.cdnw-footer__grid {
  display: grid;
  grid-template-columns: 0.9fr 1.2fr 1fr 1fr;
  gap: 40px; padding: 56px 20px 40px;
}
.cdnw-footer__heading { color: #fff; font-size: 1.1rem; margin: 0 0 18px; }
.cdnw-footer__col p { margin: 0; line-height: 1.7; }

.cdnw-footer__menu, .cdnw-footer__contact { list-style: none; margin: 0; padding: 0; }
.cdnw-footer__menu li, .cdnw-footer__contact li { margin: 0 0 10px; }
.cdnw-footer a { color: #c7ccd6; }
.cdnw-footer a:hover { color: #fff; }
.cdnw-footer__contact a { display: inline-flex; align-items: center; gap: 9px; }
.cdnw-footer .cdnw-ico { color: var(--cdnw-red); }

.cdnw-footer__social { display: flex; gap: 10px; margin-top: 16px; }
.cdnw-social {
  display: inline-flex; align-items: center; justify-content: center;
  width: 34px; height: 34px; border-radius: 50%;
  background: rgba(255,255,255,.08); color: #fff; font-weight: 700; font-size: .9rem;
}
.cdnw-social:hover { background: var(--cdnw-red); color: #fff; }

.cdnw-footer__col--brand { display: flex; align-items: center; justify-content: flex-start; }
.cdnw-footer__logo { max-height: 60px; width: auto; }

.cdnw-footer__bar { border-top: 1px solid rgba(255,255,255,.08); }
.cdnw-footer__bar p { margin: 0; padding: 18px 20px; text-align: center; font-size: .85rem; color: #9aa1ad; }
.cdnw-footer__bar a { color: #c7ccd6; }

@media (max-width: 860px) {
  .cdnw-footer__grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  .cdnw-footer__col--brand { justify-content: flex-start; align-items: center; }
  .cdnw-prefooter__inner { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 520px) {
  .cdnw-footer__grid { grid-template-columns: 1fr; }
}
