/* Footer layout v2 (all pages): admissions strip, brand + contact row, six link columns, bottom bar.
   Refines footer.css (colours, buttons and link styles come from there). */

.kg-footer .kgf-cta { margin: 48px 0 0; }
.kg-footer .kgf-cta h3 { font-family: "Inter", system-ui, sans-serif; font-weight: 700; letter-spacing: -.01em; }

/* brand block on the left (logo, text, contact cards, social - as in footer.css), links on the right */
.kgf-main { display: grid; grid-template-columns: minmax(300px, 330px) minmax(0, 1fr); gap: 44px; padding: 56px 0 48px; align-items: start; }
.kgf-main .kgf-brand .kgf-contact { grid-template-columns: 1fr; margin-bottom: 22px; }

/* six link columns */
.kgf-links { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 40px 26px; padding: 8px 0 0; }
.kgf-links .kgf-col h4 { margin-bottom: 18px; }
html body .kgf-links .kgf-col h4:not(#_) { font-size: 14px !important; letter-spacing: .04em !important; line-height: 1.3 !important; }
.kgf-links .kgf-col ul { gap: 11px; }
.kgf-links .kgf-col a { font-size: 14.5px; line-height: 1.35; }
.kgf-links .kgf-col h4 { white-space: nowrap; }

@media (max-width: 1359px) {
  .kgf-links { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 44px 32px; }
}
@media (max-width: 1100px) {
  .kgf-main { grid-template-columns: 1fr; gap: 40px; padding: 44px 0 40px; }
  .kgf-main .kgf-brand .kgf-contact { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
  .kgf-main .kgf-brand .kgf-contact { grid-template-columns: 1fr; }
  .kgf-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
  .kgf-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px 18px; }
  .kg-footer .kgf-cta { margin-top: 36px; padding: 26px 22px; }
  .kg-footer .kgf-cta-btns { width: 100%; }
  .kg-footer .kgf-cta-btns .kgf-btn { flex: 1 1 100%; justify-content: center; }
}
