/**
 * CORRECTION FORMULAIRE CONTACT - VERSION 12.4 FINALE
 * Date: 17 Avril 2026
 * 
 * ✅ Formulaire qui ne déborde PAS
 * ✅ Champs avec padding intérieur confortable
 * ✅ Alignement côte à côte (Nom/Email, Téléphone/Entreprise)
 */

/* ============================================
   CONTAINER FORMULAIRE - LIMITER LA LARGEUR
   ============================================ */

.contact-form-wrapper {
    max-width: 900px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

.contact-form {
    background: white !important;
    padding: 40px 40px !important; /* Padding interne du formulaire */
    border-radius: 15px !important;
    box-shadow: 0 10px 30px rgba(93, 78, 55, 0.1) !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* ============================================
   FORM ROWS - CÔTE À CÔTE
   ============================================ */

.contact-form .form-row {
    display: flex !important;
    gap: 20px !important;
    margin-bottom: 20px !important;
    width: 100% !important;
}

.contact-form .form-row .form-group {
    flex: 1 !important;
    margin-bottom: 0 !important;
    min-width: 0 !important; /* Empêche le débordement */
}

/* ============================================
   INPUTS, TEXTAREA, SELECT - PADDING CONFORTABLE
   ============================================ */

.contact-form .form-group {
    margin-bottom: 20px !important;
    width: 100% !important;
}

.contact-form .form-group input,
.contact-form .form-group textarea,
.contact-form .form-group select {
    width: 100% !important;
    padding: 16px 20px !important; /* Padding confortable */
    margin: 0 !important;
    box-sizing: border-box !important;
    border: 2px solid #F5F0E8 !important;
    border-radius: 10px !important;
    font-size: 16px !important;
    font-family: 'Poppins', sans-serif !important;
    color: #5D4E37 !important;
    background: white !important;
    transition: all 0.3s ease !important;
}

.contact-form .form-group input:focus,
.contact-form .form-group textarea:focus,
.contact-form .form-group select:focus {
    outline: none !important;
    border-color: #C9A961 !important;
    box-shadow: 0 0 0 3px rgba(201, 169, 97, 0.1) !important;
}

/* Placeholder style */
.contact-form .form-group input::placeholder,
.contact-form .form-group textarea::placeholder {
    color: #8B7D6B !important;
    opacity: 0.6 !important;
}

/* ============================================
   LABELS - ESPACEMENT ET COULEUR
   ============================================ */

.contact-form .form-group label {
    display: block !important;
    margin-bottom: 10px !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    color: #5D4E37 !important;
    font-family: 'Poppins', sans-serif !important;
}

/* ============================================
   TEXTAREA - HAUTEUR MINIMALE
   ============================================ */

.contact-form .form-group textarea {
    min-height: 150px !important;
    resize: vertical !important;
    font-family: 'Poppins', sans-serif !important;
}

/* ============================================
   SELECT - FLÈCHE PERSONNALISÉE
   ============================================ */

.contact-form .form-group select {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10' viewBox='0 0 14 10'%3E%3Cpath fill='%235D4E37' d='M1 1l6 6 6-6'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 20px center !important;
    padding-right: 50px !important;
    cursor: pointer !important;
}

/* ============================================
   BOUTON SUBMIT - STYLE ÉLÉGANT
   ============================================ */

.contact-form button[type="submit"],
.contact-form .btn-submit {
    width: 100% !important;
    padding: 18px 30px !important;
    background: linear-gradient(135deg, #C9A961 0%, #5D4E37 100%) !important;
    color: white !important;
    border: none !important;
    border-radius: 10px !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    font-family: 'Poppins', sans-serif !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 15px rgba(201, 169, 97, 0.3) !important;
    margin-top: 10px !important;
}

.contact-form button[type="submit"]:hover,
.contact-form .btn-submit:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(201, 169, 97, 0.4) !important;
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */

@media (max-width: 768px) {
    .contact-form {
        padding: 30px 20px !important;
    }
    
    .contact-form .form-row {
        flex-direction: column !important;
        gap: 0 !important;
    }
    
    .contact-form .form-row .form-group {
        margin-bottom: 20px !important;
    }
    
    .contact-form .form-group input,
    .contact-form .form-group textarea,
    .contact-form .form-group select {
        padding: 14px 18px !important;
        font-size: 15px !important;
    }
    
    .contact-form button[type="submit"],
    .contact-form .btn-submit {
        padding: 16px 25px !important;
        font-size: 16px !important;
    }
}

/* ============================================
   FORÇAGE FINAL - EMPÊCHER DÉBORDEMENT
   ============================================ */

.contact-form * {
    box-sizing: border-box !important;
}

.contact-form .form-group input,
.contact-form .form-group textarea,
.contact-form .form-group select {
    max-width: 100% !important;
    overflow: hidden !important;
}
