/* ─── FOOTER ─────────────────────────────────────────────── */
footer { background: var(--bg); border-top: 1px solid var(--border); }
.footer-main {
    max-width: 1216px; margin: 0 auto;
    padding: 64px 24px 48px;
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr 1.4fr;
    gap: 40px;
    align-items: start;
}
.footer-brand-logo { height: 26px; width: auto; display: block; margin-bottom: 14px; }
.footer-tagline { font-size: 12px; color: var(--text2); line-height: 1.65; }
.footer-col-heading {
    display: block; font-size: 11px; font-weight: 600; color: var(--orange);
    text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 14px;
}
.footer-links { list-style: none; display: flex; flex-direction: column; gap: 2px; }
.footer-links a {
    font-size: 12px; color: var(--text); text-transform: uppercase;
    letter-spacing: 0.06em; line-height: 2; transition: color 0.15s;
}
.footer-links a:hover { color: var(--orange); }
.footer-cta-wrap { display: flex; flex-direction: column; gap: 16px; }
.footer-cta-btn {
    display: flex; align-items: center; justify-content: center;
    padding: 14px 16px; background: var(--orange); color: #0A0E14;
    font-family: 'Outfit', sans-serif; font-size: 15px; font-weight: 700;
    letter-spacing: 0.1em; text-transform: uppercase;
    border: none; border-radius: 2px; cursor: pointer; text-decoration: none;
    transition: background 0.15s;
}
.footer-cta-btn:hover { background: #e09070; color: #0A0E14; }
.footer-social { display: flex; gap: 14px; align-items: center; }
.footer-social a { color: var(--text2); transition: color 0.15s; line-height: 0; }
.footer-social a:hover { color: var(--text); }
.footer-bottom {
    border-top: 1px solid var(--border);
    padding: 16px 24px;
    max-width: 1216px;
    margin: 0 auto;
}
.footer-bottom-inner {
    max-width: 100%; margin: 0 auto;
    font-size: 11px; color: var(--text3);
    text-transform: uppercase; letter-spacing: 0.06em;
}
@media (max-width: 1024px) {
    .footer-main { grid-template-columns: 1fr 1fr 1fr; gap: 36px; }
}
@media (max-width: 640px) {
    .footer-main { grid-template-columns: 1fr 1fr; gap: 32px; padding: 48px 20px 36px; }
    .footer-brand { grid-column: 1 / -1; }
}
@media (max-width: 480px) {
    .footer-main { grid-template-columns: 1fr; padding: 40px 20px 32px; }
    .footer-brand { grid-column: auto; }
}
