/* Contact Page Styles */

/* Contact info cards hover effects */
.contact-info-card {
    transition: all 0.3s ease;
}

.contact-info-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

/* Form input focus states */
.form-input:focus,
.form-select:focus,
.form-textarea:focus {
    transition: all 0.2s ease;
}

/* Submit button loading state */
.submit-button-loading {
    opacity: 0.7;
    pointer-events: none;
    cursor: not-allowed;
}

/* Map container */
.map-container {
    transition: all 0.3s ease;
}

/* Ensure map iframe fills container */
.map-container iframe,
.contact-map-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0;
}

.contact-map-container {
    position: relative;
    width: 100%;
    height: 100%;
}

/* FAQ link hover */
.faq-link {
    transition: all 0.2s ease;
}

.faq-link:hover {
    transform: translateX(4px);
}

/* Loading spinner animation */
@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

.animate-spin {
    animation: spin 1s linear infinite;
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
    .contact-info-card:hover {
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
    }
}
