/* ═══════════════════════════════════════
   footer.css — shared footer styles
   Used by all pages
═══════════════════════════════════════ */
footer { background: #1A1347; color: rgba(255,255,255,.65); font-family: 'Nunito', sans-serif; }
.ft-inner,
.ft-grid {
  display: grid; grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 36px; max-width: 1140px; margin: 0 auto; padding: 44px 40px 28px;
}
.ft-logo,
.ft-brand .logo {
  font-family: 'Fredoka One', cursive; font-size: 1.4rem;
  color: #fff; text-decoration: none; display: block; margin-bottom: 10px;
}
.ft-logo .spark,
.ft-brand .logo .spark { color: var(--coral); }
.ft-brand p { font-size: .83rem; line-height: 1.7; font-weight: 700; }
.ft-col h4 {
  font-size: .72rem; font-weight: 900; text-transform: uppercase;
  letter-spacing: .08em; color: rgba(255,255,255,.35); margin-bottom: 12px;
}
.ft-col ul { list-style: none; }
.ft-col li { margin-bottom: 7px; }
.ft-col a { color: rgba(255,255,255,.6); text-decoration: none; font-size: .86rem; font-weight: 700; transition: .15s; }
.ft-col a:hover { color: #fff; }
.ft-bottom {
  border-top: 1px solid rgba(255,255,255,.08);
  max-width: 1140px; margin: 0 auto; padding: 18px 40px;
  display: flex; align-items: center; justify-content: space-between;
  font-size: .78rem; font-weight: 700; color: rgba(255,255,255,.3);
  flex-wrap: wrap; gap: 8px;
}
@media(max-width: 700px) {
  .ft-inner, .ft-grid { grid-template-columns: 1fr 1fr; gap: 20px; padding: 28px 20px; }
  .ft-bottom { padding: 14px 20px; }
}
@media(max-width: 480px) {
  .ft-inner, .ft-grid { grid-template-columns: 1fr; }
}
