/* Custom Styles */
body {
    font-family: 'Inter', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #374151; /* gray-700 - Couleur de texte par défaut plus douce */
}
/* Style for FAQ accordion - Affiné */
.faq-question {
    cursor: pointer;
    transition: background-color 0.2s ease;
    border-bottom: 1px solid #e5e7eb; /* gray-200 */
}
.faq-question:last-of-type {
    border-bottom: none;
}
.faq-question:hover {
     background-color: #f9fafb; /* gray-50 */
}
.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease-out;
    padding: 0 1.5rem; /* px-6 */
    background-color: #f9fafb; /* gray-50 */
}
.faq-answer.open {
    max-height: 500px; /* Adjust as needed */
    transition: max-height 0.5s ease-in;
    padding: 1.25rem 1.5rem; /* py-5 px-6 */
}
/* Smooth scroll */
html {
   scroll-behavior: smooth;
}
/* Animations */
/* Fade-in (peut être supprimé si on utilise que slideUp via Tailwind) */
/* @keyframes fadeIn { ... } */
/* .fade-in { ... } */
/* Supprimer le pattern-bg */

/* Input error style */
.input-error {
    border-color: #f87171; /* red-400 */
}
.input-error:focus {
    border-color: #ef4444; /* red-500 */
    box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.5); /* focus:ring-red-500 like */
}
/* Classe utilitaire pour l'animation au scroll (si implémenté en JS) */
.animate-on-scroll {
    opacity: 0;
    /* La transition sera gérée par les classes d'animation Tailwind */
}
/* Rotation icône FAQ */
.faq-icon.rotate-180 {
    transform: rotate(180deg);
} 