/**
 * ============================================================================
 * ACCESSIBILITY ENHANCEMENTS - Aurum Conseil
 * ============================================================================
 * Corrections de contraste, images adaptatives, et footer accordion mobile
 * Ce fichier est additionnel et ne modifie pas les styles existants
 * ============================================================================
 */

/* ============================================================================
   1. CORRECTION CONTRASTE BOUTONS (Or sur blanc)
   ============================================================================
   Ratio actuel #C5A059 sur blanc: 3.8:1 (insuffisant WCAG AA)
   Ratio cible #9A7B3D sur blanc: 4.6:1 (conforme WCAG AA)
   ============================================================================ */

/* Variable de couleur or accessible (plus foncée pour contraste) */
:root {
    --aurum-gold-accessible: #9A7B3D; /* Or foncé - ratio 4.6:1 sur blanc */
    --aurum-gold-accessible-hover: #7D6432; /* Or encore plus foncé pour hover */
}

/* Service links sur fond blanc (cards services, etc.) */
.service-link {
    color: var(--aurum-gold-accessible) !important;
}

.service-link:hover {
    color: var(--aurum-gold-accessible-hover) !important;
}

/* Texte or sur fond blanc dans les sections claires */
.services-section .service-link,
.intro-section a,
.benefits-section a:not(.slide-btn),
section[style*="background: white"] a,
section[style*="background:#fff"] a,
.faq-answer a {
    color: var(--aurum-gold-accessible) !important;
}

/* Boutons avec bordure or sur fond blanc */
.home-news-section .slide-btn {
    color: var(--aurum-gold-accessible) !important;
    border-color: var(--aurum-gold-accessible) !important;
}

.home-news-section .slide-btn:hover {
    background-color: var(--aurum-gold-accessible) !important;
    color: white !important;
}

/* FAQ links */
.faq-answer a {
    color: var(--aurum-gold-accessible) !important;
    text-decoration: underline !important;
}

.faq-answer a:hover {
    color: var(--aurum-gold-accessible-hover) !important;
}

/* Texte gold-title sur fond clair (si utilisé hors footer) */
body:not(.main-footer) .gold-title-light {
    color: var(--aurum-gold-accessible) !important;
}

/* ============================================================================
   2. FOOTER ACCORDION SUR MOBILE
   ============================================================================
   Transforme les colonnes du footer en accordions cliquables sur mobile
   ============================================================================ */

@media (max-width: 768px) {
    /* Masquer les listes par défaut sur mobile */
    .footer-nav-links ul,
    .footer-column.footer-nav-links ul {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.4s ease-out, padding 0.3s ease;
        padding: 0;
    }

    /* Afficher quand la colonne est active */
    .footer-nav-links.accordion-open ul,
    .footer-column.footer-nav-links.accordion-open ul {
        max-height: 800px;
        padding-top: 15px;
    }

    /* Style du titre cliquable */
    .footer-nav-links .gold-title,
    .footer-column.footer-nav-links .gold-title {
        cursor: pointer;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 15px 0;
        border-bottom: 1px solid rgba(197, 160, 89, 0.3);
        margin-bottom: 0;
        user-select: none;
        -webkit-tap-highlight-color: transparent;
    }

    /* Icone accordion (flèche) */
    .footer-nav-links .gold-title::after,
    .footer-column.footer-nav-links .gold-title::after {
        content: '+';
        font-size: 20px;
        font-weight: 300;
        color: var(--aurum-gold);
        transition: transform 0.3s ease;
        margin-left: 10px;
    }

    /* Rotation de la flèche quand ouvert */
    .footer-nav-links.accordion-open .gold-title::after,
    .footer-column.footer-nav-links.accordion-open .gold-title::after {
        content: '−';
    }

    /* Effet de survol/focus */
    .footer-nav-links .gold-title:hover,
    .footer-nav-links .gold-title:focus {
        color: #D4B982 !important;
    }

    /* Liste des liens dans l'accordion */
    .footer-nav-links ul li {
        padding: 10px 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    }

    .footer-nav-links ul li:last-child {
        border-bottom: none;
    }

    /* Espacement entre les colonnes accordion */
    .footer-nav-links {
        margin-bottom: 5px;
    }

    /* Colonne Brand/Contact - toujours visible (pas accordion) */
    .footer-brand-contact {
        margin-bottom: 30px;
    }

    /* Colonne formulaire - toujours visible (pas accordion) */
    .footer-form {
        margin-top: 20px;
    }
}

/* ============================================================================
   3. IMAGES ADAPTATIVES (srcset support)
   ============================================================================
   Styles pour les images responsives avec srcset
   ============================================================================ */

/* Container pour images responsives */
.responsive-image-container {
    width: 100%;
    overflow: hidden;
}

.responsive-image-container img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* Picture element support */
picture {
    display: block;
    width: 100%;
}

picture img {
    width: 100%;
    height: auto;
    display: block;
}

/* Images du slider - fond adaptatif */
@media (max-width: 768px) {
    /* Optimiser le chargement des images de fond sur mobile */
    .slide {
        background-size: cover !important;
        background-position: center center !important;
    }
}

/* Logos partenaires - taille adaptative */
@media (max-width: 480px) {
    .logo-partner,
    .partner-logo,
    .logo-item img {
        max-width: 80px;
        height: auto;
    }
}

@media (min-width: 481px) and (max-width: 768px) {
    .logo-partner,
    .partner-logo,
    .logo-item img {
        max-width: 100px;
        height: auto;
    }
}

@media (min-width: 769px) {
    .logo-partner,
    .partner-logo,
    .logo-item img {
        max-width: 120px;
        height: auto;
    }
}

/* Images d'articles - responsive */
.article-image,
.blog-card-image,
.academie-card-image {
    width: 100%;
    height: auto;
    object-fit: cover;
}

@media (max-width: 480px) {
    .article-image,
    .blog-card-image {
        max-height: 200px;
    }
}

@media (min-width: 481px) and (max-width: 768px) {
    .article-image,
    .blog-card-image {
        max-height: 250px;
    }
}

/* ============================================================================
   4. AMÉLIORATIONS FOCUS POUR ACCORDION
   ============================================================================ */

.footer-nav-links .gold-title:focus {
    outline: 2px solid var(--aurum-gold);
    outline-offset: 2px;
}

.footer-nav-links .gold-title:focus:not(:focus-visible) {
    outline: none;
}

.footer-nav-links .gold-title:focus-visible {
    outline: 2px solid var(--aurum-gold);
    outline-offset: 2px;
}
