/* Custom footer overrides: force white background and black text */
/* Target any footer element and footer-like classes to cover theme variants */
footer,
footer[class*="footer"],
.footer-section,
.footer {
    background-color: #ffffff !important;
    color: #000000 !important;
}

.footer-section h4,
.footer-section .footer-txt,
.footer-section .footer-contact-info ul li span,
.footer-section ul.footer-links li a,
.footer-section .footer-newsletter p,
.top-footer-section,
.copyright-section {
    color: #000000 !important;
}


.footer-section a,
.footer-section a:visited {
    color: #0a3041 !important;
    outline: none;
    transition: color 0.2s, outline 0.2s, background 0.2s;
}
.footer-section a:focus, .footer-section a:hover {
    color: #25d06f !important;
    outline: 2px solid #25d06f !important;
    outline-offset: 2px;
    background: #eafaf2;
}

/* Ensure inputs/buttons in footer remain readable */
.footer-section input,
.footer-section button {
    color: #000 !important;
}

/* Borders and separators to be subtle on white background */
.top-footer-section {
    border-bottom: 1px solid #e9e9e9 !important;
}

.footer-section .footer-logo-wrapper img {
    /* If logo was styled for dark background, remove filters */
    filter: none !important;
}


/* Accessibility: ensure sufficient contrast for small text */
.footer-section .footer-txt,
.footer-section ul.footer-links li a,
.footer-contact-info ul li span {
    color: #0a3041 !important;
}

/* Pre-footer divider styling */
.pre-footer-divider {
    padding: 26px 0 10px;
    background: transparent;
}
.pre-footer-divider .divider-line {
    width: 80%;
    height: 2px;
    margin: 0 auto;
    border-radius: 4px;
    background: linear-gradient(90deg, rgba(249,84,5,0.12) 0%, rgba(249,84,5,0.22) 50%, rgba(249,84,5,0.12) 100%);
    box-shadow: 0 6px 24px rgba(249,84,5,0.08);
}

@media (max-width: 768px) {
    .pre-footer-divider .divider-line {
        width: 96%;
    }
}
