/* ===== MOBILE CONTACT FORM STYLES ===== */
/* Styles pour améliorer le formulaire de contact sur mobile */

@media (max-width: 767.98px) {
    /* Ajustements pour la grille de contact */
    .contact-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    /* Styles pour le conteneur du formulaire */
    .contact-form-container {
        padding: 1.5rem;
        border-radius: 8px;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
    }

    /* Styles pour le formulaire */
    .contact-form {
        display: grid;
        gap: 1rem;
    }

    /* Styles pour les groupes de formulaire */
    .form-group {
        margin-bottom: 1rem;
    }

    /* Styles pour les étiquettes */
    .form-group label {
        display: block;
        margin-bottom: 0.5rem;
        font-weight: 600;
        font-size: 1rem;
        color: var(--dark-gray);
    }

    /* Styles pour les champs de saisie */
    .form-group input,
    .form-group textarea,
    .form-group select {
        width: 100%;
        padding: 0.9rem 1rem;
        border: 1px solid var(--light-gray);
        border-radius: 8px;
        font-size: 1rem;
        transition: all 0.3s ease;
        background-color: #fff;
        -webkit-appearance: none; /* Supprime l'apparence par défaut sur iOS */
        appearance: none;
    }

    /* Styles pour les champs de saisie au focus */
    .form-group input:focus,
    .form-group textarea:focus,
    .form-group select:focus {
        border-color: var(--primary-color);
        outline: none;
        box-shadow: 0 0 0 3px rgba(var(--primary-rgb), 0.2);
    }

    /* Styles pour les zones de texte */
    .form-group textarea {
        min-height: 120px;
        resize: vertical;
    }

    /* Styles pour les cases à cocher */
    .checkbox-group {
        display: flex;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .checkbox-group input[type="checkbox"] {
        width: 20px;
        height: 20px;
        margin-top: 0.2rem;
    }

    .checkbox-group label {
        font-size: 0.9rem;
        line-height: 1.4;
        margin-bottom: 0;
    }

    /* Styles pour le bouton d'envoi */
    button[type="submit"] {
        width: 100%;
        padding: 1rem;
        background-color: var(--primary-color);
        color: white;
        border: none;
        border-radius: 8px;
        font-weight: 600;
        font-size: 1rem;
        cursor: pointer;
        transition: background-color 0.3s ease;
        margin-top: 0.5rem;
        -webkit-appearance: none; /* Supprime l'apparence par défaut sur iOS */
        appearance: none;
    }

    button[type="submit"]:hover,
    button[type="submit"]:focus {
        background-color: var(--primary-dark);
    }

    button[type="submit"]:active {
        transform: scale(0.98);
    }
}

/* Styles pour les très petits écrans */
@media (max-width: 480px) {
    .contact-form-container {
        padding: 1.25rem;
    }

    .form-group label {
        font-size: 0.95rem;
    }

    .form-group input,
    .form-group textarea,
    .form-group select {
        padding: 0.8rem;
        font-size: 0.95rem;
    }

    .checkbox-group label {
        font-size: 0.85rem;
    }

    button[type="submit"] {
        padding: 0.9rem;
        font-size: 0.95rem;
    }
}