/* Footer: navy menu band over a teal-dark bottom band. */
.site-footer { color: var(--chrome-text); }
.ft-top { background: radial-gradient(ellipse 50% 160% at 50% 0%, var(--navy-glow), var(--navy-mid) 55%, var(--navy)); padding-block: 22px; }
.ft-menu { list-style: none; margin: 0 auto; padding: 0 16px; max-width: 1240px; display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 12px; }
.ft-menu a { display: inline-flex; align-items: center; min-height: 44px; padding-inline: 14px; border-radius: 8px; color: var(--chrome-text); font: 600 14px/1.3 var(--font); }
.ft-menu a:hover { background: rgba(255,255,255,.09); color: #fff; }
.ft-bottom { background: radial-gradient(ellipse 60% 200% at 50% 0%, var(--foot-glow), var(--foot-mid) 55%, var(--foot-bottom)); border-top: 1px solid rgba(174,218,222,.19); padding-block: 26px; }
.ft-inner { max-width: 1240px; margin: 0 auto; padding-inline: 30px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px; }
.ft-copy { margin: 0; font-size: 14px; color: #e3f1f2; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(227,241,242,.5); }
.ft-social { display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; border-radius: 50%; border: 1px solid rgba(255,255,255,.22); background: rgba(255,255,255,.07); color: #fff; font-size: 20px; }
.ft-social:hover { background: #176e73; color: #fff; }
.ft-bottom .theme-switch { margin-left: auto; }
@media (max-width: 767px) { .ft-inner { justify-content: center; text-align: center; } .ft-bottom .theme-switch { margin-left: 0; } }
