.custom-form-container {
    padding: 1.5rem; /* p-6 */
    width: 100%;
    margin: 0 auto;
}

.custom-form-container .wpcf7-form input,
.custom-form-container .wpcf7-form textarea,
.custom-form-container .wpcf7-form select {
    border: 1px solid #3a3b3d; /* border-gray-300 */
    border-radius: 0.375rem; /* rounded-md */
    padding: 0.5rem; /* p-2 */
    width: 100%;
    min-width: 100%;
}

.custom-form-container .wpcf7-form input:focus-visible,
.custom-form-container .wpcf7-form textarea:focus-visible,
.custom-form-container .wpcf7-form select:focus-visible {
    border: 2px solid #ff231f !important;
    outline: none;
}

.custom-form-container .wpcf7-form input[type='submit'] {
    background-color: #ff231f; /* bg-blue-500 */
    color: white; /* text-white */
    padding: 0.5rem 1rem; /* py-2 px-4 */
    border-radius: 0.375rem; /* rounded-md */
    border-color: #FF231F;
    cursor: pointer;
    transition: background-color 0.3s;
}

.custom-form-container .wpcf7-form input[type='submit'] {
    background-color: #ff231f;
}

.custom-form-container .wpcf7-form input[type='submit']:hover {
    background-color: #d91e1a;
}

/* Style global du message */
.wpcf7 form .wpcf7-response-output {
    font-weight: bold !important;
    text-align: center !important;
    padding: 12px 20px !important;
    border-radius: 5px !important;
    width: 100% !important;
    display: block !important;
    border: none !important;
    color: white !important;
    margin: 0 !important;
}

/* Succès (message vert) */
.wpcf7 form.sent .wpcf7-response-output {
    background-color: #38a169 !important; /* Vert */
}

/* Erreurs de validation (message rouge) */
.wpcf7 form.invalid .wpcf7-response-output {
    background-color: #e53e3e !important; /* Rouge */
}

/* Message bloqué pour spam (message orange) */
.wpcf7 form.spam .wpcf7-response-output {
    background-color: #dd6b20 !important; /* Orange */
}

.wpcf7 form .wpcf7-response-output {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
}

.wpcf7-spinner {
    display: none;
}

.acceptance .wpcf7-not-valid-tip {
    color: #e53e3e; /* Rouge pour l'erreur */
    font-size: 0.875rem;
    font-weight: bold;
    margin: 6px;
    white-space: nowrap;
    position: absolute;
    left: 5px;
}

body {
    font-family: 'Nunito Sans';
}

h1 {
    font-family: 'Lato' !important;
}

h2 {
    font-family: 'Lato' !important;
}

nav {
    font-family: 'Roboto' !important;
}



[id] {
    scroll-margin-top: var(--header-height, 80px);
}


.button-secondary {
    background-color: #ff231f; /* Couleur rouge */
    color: #fff; /* Texte blanc */
    font-weight: bold; /* Texte gras */
    text-transform: uppercase; /* Texte en majuscules */
    text-align: center; /* Centrer le texte */
    font-family: 'Lato';
    clip-path: polygon(10% 0%, 90% 0%, 95% 50%, 90% 100%, 10% 100%, 5% 50%); /* Hexagone */
    transition:
        background-color 0.3s ease,
        transform 0.3s ease; /* Transition fluide */
}

.button-black {
    background-color: #201c1c; /* Couleur rouge */
    color: #fff; /* Texte blanc */
    font-weight: bold; /* Texte gras */
    text-transform: uppercase; /* Texte en majuscules */
    text-align: center; /* Centrer le texte */
    clip-path: polygon(10% 0%, 90% 0%, 95% 50%, 90% 100%, 10% 100%, 5% 50%); /* Hexagone */
    transition:
        background-color 0.3s ease,
        transform 0.3s ease; /* Transition fluide */
}

.button-secondary:hover {
    background-color: #9f0000; /* Rouge foncé au survol */
}

.button-black:hover {
    background-color: #ff231f; /* Rouge foncé au survol */
}

/* Cible la boîte globale de la carte */
.map_box {
    height: 500px;
}

/* Cible la boîte avec l'aspect ratio */
.map_aspect_ratio {
    height: 500px;
}

/* Cible le conteneur principal */
.map_container {
    height: 500px;
}

/* Cible la carte elle-même */
.map_render {
    height: 500px;
}

/* Personnalisation de la scrollbar pour Webkit (Chrome, Edge, Safari) */
#carousel {
    scrollbar-width: thin; /* Pour Firefox */
    scrollbar-color: #FF231F #f7fafc; /* Couleur de la barre et du fond */
}

/* Pour Chrome, Edge et Safari */
#carousel::-webkit-scrollbar {
    height: 8px; /* Augmente la hauteur de la barre */
}

#carousel::-webkit-scrollbar-track {
    background: #FF231F; /* Couleur de fond */
    border-radius: 10px;
}

#carousel::-webkit-scrollbar-thumb {
    background: #FF231F; /* Couleur du curseur */
    border-radius: 10px;
    transition: background 0.3s;
}
