@media (max-width: 768px) {
    .entete-formulaire__logo {
        padding: var(--espacement-md) var(--espacement-lg);
    }

    .logo {
        height: 40px;
    }

    .entete-formulaire__info {
        padding: var(--espacement-md) var(--espacement-lg);
    }

    .conteneur-formulaire {
        padding: var(--espacement-lg);
    }

    .question__titre {
        font-size: var(--taille-texte-2xl);
    }

    .question__description {
        font-size: var(--taille-texte-base);
    }

    .champ-formulaire__input,
    .champ-formulaire__textarea,
    .champ-formulaire__select {
        font-size: var(--taille-texte-base);
        padding: var(--espacement-sm) var(--espacement-md);
    }

    .navigation-formulaire {
        flex-direction: column;
        gap: var(--espacement-sm);
    }

    .bouton--precedent,
    .bouton--suivant,
    .bouton--soumettre {
        width: 100%;
        min-width: unset;
        margin-left: 0;
    }

    .bouton--suivant,
    .bouton--soumettre {
        order: -1;
    }

    .modale-confirmation__contenu,
    .modale-erreur__contenu {
        padding: var(--espacement-2xl);
    }

    .modale-confirmation__titre,
    .modale-erreur__titre {
        font-size: var(--taille-texte-xl);
    }

    .aide-navigation {
        display: none;
    }

    .questions-conteneur {
        min-height: 350px;
    }
}

@media (max-width: 480px) {
    .question__titre {
        font-size: var(--taille-texte-xl);
    }

    .question__description {
        font-size: var(--taille-texte-sm);
    }

    .entete-formulaire__compteur {
        font-size: var(--taille-texte-xs);
    }

    .modale-confirmation__contenu,
    .modale-erreur__contenu {
        padding: var(--espacement-xl);
        width: 95%;
    }

    .modale-confirmation__icone,
    .modale-erreur__icone {
        width: 60px;
        height: 60px;
    }

    .modale-confirmation__icone svg,
    .modale-erreur__icone svg {
        width: 40px;
        height: 40px;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .question__titre {
        font-size: var(--taille-texte-3xl);
    }

    .conteneur-formulaire {
        padding: var(--espacement-xl) var(--espacement-2xl);
    }
}

@media (min-width: 1025px) {
    .question__titre {
        font-size: var(--taille-texte-4xl);
    }

    .conteneur-formulaire {
        padding: var(--espacement-2xl) var(--espacement-3xl);
    }

    .questions-conteneur {
        min-height: 450px;
    }
}

@media (hover: hover) {
    .bouton:hover:not(:disabled) {
        transform: translateY(-1px);
    }

    .option-radio:hover,
    .option-case:hover {
        transform: translateX(0);
    }
}

@media (prefers-contrast: high) {
    .champ-formulaire__input,
    .champ-formulaire__textarea,
    .champ-formulaire__select {
        border-width: 3px;
    }

    .option-radio,
    .option-case {
        border-width: 3px;
    }
}
