/* Accessibility contrast fixes for Lighthouse compliance */

/* Ensure all interactive elements meet WCAG AA contrast ratios */
.btn {
    color: #ffffff !important;
    background-color: #007bff !important;
    border: 2px solid #007bff !important;
}

.btn:hover, .btn:focus {
    color: #ffffff !important;
    background-color: #0056b3 !important;
    border-color: #0056b3 !important;
}

.btn-secondary {
    color: #ffffff !important;
    background-color: #6c757d !important;
    border-color: #6c757d !important;
}

.btn-secondary:hover, .btn-secondary:focus {
    color: #ffffff !important;
    background-color: #545b62 !important;
    border-color: #4e555b !important;
}

/* Ensure nav links have sufficient contrast */
.nav-menu a {
    color: #ffffff !important;
}

.nav-menu a:hover, .nav-menu a:focus {
    color: #ffffff !important;
    background-color: rgba(255, 255, 255, 0.2) !important;
}

/* Form input contrast improvements */
input, textarea, select {
    color: #212529 !important;
    background-color: #ffffff !important;
    border: 2px solid #ced4da !important;
}

input:focus, textarea:focus, select:focus {
    color: #212529 !important;
    background-color: #ffffff !important;
    border-color: #007bff !important;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25) !important;
}

/* Footer link contrast */
.footer a {
    color: #ffffff !important;
}

.footer a:hover, .footer a:focus {
    color: #e9ecef !important;
}

/* Contact phone link contrast */
.phone-link {
    color: #007bff !important;
}

.phone-link:hover, .phone-link:focus {
    color: #0056b3 !important;
}

/* Bottom action bar contrast */
.action-btn {
    color: #ffffff !important;
}

.action-btn:hover, .action-btn:focus {
    color: #ffffff !important;
    opacity: 0.9 !important;
}
