/* =========================================================
   Footer Component Styles
   Supports: Pages/Shared/_Footer.cshtml
   ========================================================= */

.footer {
    font-family: var(--brand-font-body, inherit);
}

.footer a:hover {
    color: var(--brand-primary, #0d6efd) !important;
    text-decoration: underline !important;
}

.footer .footer-brand-heading,
.footer .footer-section-label {
    font-family: var(--brand-font-heading, inherit);
}

.footer-bg {
    background-color: var(--brand-bg-light, #ffffff);
    padding-top: var(--brand-footer-padding, 3rem);
    padding-bottom: 0;
}

.footer-divider {
    border-top: 1px solid var(--brand-border-light, #e5e7eb);
    margin-bottom: var(--brand-section-spacing, 2rem);
}

.footer-brand-heading {
    color: var(--brand-text, #212529);
    font-size: 1.25rem;
    letter-spacing: 0.5px;
}

.footer-brand-description {
    line-height: 1.6;
    color: var(--brand-secondary, #6c757d);
}

.footer-section-label {
    color: var(--brand-text, #212529);
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.footer-link-list {
    line-height: 2.2;
}

.footer-content {
    line-height: 1.8;
    color: var(--brand-secondary, #6c757d);
}

.footer-strong {
    color: var(--brand-text, #212529);
    font-size: 0.875rem;
}

.footer-service-areas {
    line-height: 1.6;
}

.footer-service-areas-small {
    font-size: 0.8rem;
    margin-top: 0.25rem;
}

.footer-copyright-bar {
    border-top: 1px solid var(--brand-border-light, #e5e7eb);
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

/* Mobile Styles */
@media (max-width: 767.98px) {
    .footer {
        padding-top: 2rem !important;
    }

    .footer .col-md-4 {
        margin-bottom: 2rem;
    }

    .footer .col-md-4:last-child {
        margin-bottom: 0;
    }
}

