/* ===== Footer ===== */
.site-footer { background: var(--navy); color: #b8c6d6; padding-top: 56px; margin-top: 0; font-size: .92rem; }
.footer-grid { display: grid; grid-template-columns: 1.5fr repeat(4, 1fr); gap: 32px; }
.site-footer h4 { color: #fff; font-size: 1rem; margin-bottom: 14px; position: relative; padding-bottom: 8px; }
.site-footer h4::after { content: ''; position: absolute; left: 0; bottom: 0; width: 30px; height: 3px; border-radius: 3px; background: var(--orange); }
.site-footer a { color: #b8c6d6; } .site-footer a:hover { color: #fff; }
.footer-links { list-style: none; display: grid; gap: 8px; }
.footer-links a::before { content: '›'; color: var(--orange); margin-right: 8px; font-weight: 700; }
.footer-contact li { list-style: none; display: flex; gap: 10px; margin-bottom: 10px; }
.footer-contact i { color: var(--orange); margin-top: 4px; width: 16px; }
.footer-about p { margin: 14px 0; line-height: 1.7; }
.footer-bottom { margin-top: 40px; border-top: 1px solid rgba(255, 255, 255, .12); padding: 18px 0; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px; font-size: .84rem; }
.footer-legal { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.footer-disclaimer { font-size: .76rem; color: #8ea2b8; margin-top: 14px; line-height: 1.6; }

/* ===== responsive footer ===== */
@media (max-width: 992px) { .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 28px; } }
@media (max-width: 560px) { .footer-grid { grid-template-columns: 1fr !important; } .footer-bottom { flex-direction: column; align-items: flex-start; gap: 10px; } .footer-legal { flex-wrap: wrap; gap: 8px 14px; } }
