/*
  Projet : Site 15A
  Fichier : css/faq.css
  Version : 0.20.8 — 2026-07-05
  Ajout 0.20.8 : couleur des boutons de défilement alignée sur la couleur
                 d'accent officielle de la FAQ (#12693e), au lieu du bleu par
                 défaut hérité de base.css.
  Objectif : Styles propres à la page FAQ, alignés sur le protocole des pages
             déjà reprises (la page charge base.css ; tout le spécifique FAQ est
             rattaché à l'étiquette « page-faq » du <body>). v0.19.0 : la FAQ
             passe à un contenu riche organisé en CATÉGORIES (titres de section
             + accordéons). Le panneau décoratif « Jonas » derrière les questions
             est retiré (il ne convenait qu'à une poignée de questions ; sur une
             longue liste il s'étirait) : le contenu se pose directement sur le
             fond pétrole/turquoise dédié, avec des cartes « verre » par-dessus.
             v0.20.7 : après plusieurs essais ratés pour recoller le héros au
             fond vert (vague, vert plat — toujours 2 fonds visibles ou un
             résidu de couleur), Cédrik a demandé de copier le principe de la
             page Elo : UN SEUL fond posé une fois pour toute la page (en
             `::before` fixe plein écran, derrière tout), sans AUCUNE « case »
             séparée en haut. Le héros n'a donc plus AUCUN fond propre : son
             titre flotte directement sur cet unique fond partagé, exactement
             comme sur Elo — juste en vert au lieu de la couleur d'Elo.
*/

/* ------------------------------------------------------------------ *
 *  Fond unique de toute la page, posé UNE SEULE FOIS derrière tout (même
 *  principe que la page Elo : un ::before fixe, plein écran, z-index négatif
 *  — pas un fond par section). Plus de héros avec sa propre « case » de
 *  fond : son titre flotte directement sur ce fond partagé, sans coupure
 *  possible entre le haut de page et le reste, à n'importe quel défilement.
 * ------------------------------------------------------------------ */
.page-faq::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    background-image:
        linear-gradient(rgba(22, 140, 90, 0.85), rgba(22, 140, 90, 0.85)),
        url('../images/faq/Fondbase-club-15A(faq).jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* ------------------------------------------------------------------ *
 *  Héros : plus de photo ni de fond propre (cf. fond unique ci-dessus).
 *  width:100% corrige un bug de header.css (.hero est en position absolue
 *  SANS largeur → sans ça il se réduit à la largeur du titre au lieu de
 *  couvrir tout le haut de page).
 * ------------------------------------------------------------------ */
.page-faq .hero {
    background: none;
    width: 100%;
}

.page-faq .hero-title {
    font-size: 2.6rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-shadow: 0 4px 10px rgba(0, 0, 0, 0.7);
}

/* ------------------------------------------------------------------ *
 *  Conteneur des questions. .container-left est un .container : son enfant
 *  direct hérite sinon de la règle partagée « .container > div » de base.css
 *  (flex 1 1 50%, margin-bottom 5rem, position relative bottom 3rem — pensée
 *  pour la mise en page 2 colonnes de Club), qui décalait tout et créait un
 *  grand vide. On la neutralise sur .faq-wrap (le vrai enfant direct).
 * ------------------------------------------------------------------ */
.page-faq .faq-wrap {
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
    flex: none;
    position: static;
    bottom: auto;
}

/* Intro de la page (texte clair et lisible sur le fond turquoise). */
.page-faq .faq-intro {
    text-align: center;
    max-width: 680px;
    margin: 0 auto 3rem;
    color: #ffffff;
    font-size: 1.05rem;
    line-height: 1.6;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
}

/* Catégorie = un titre de section + son groupe d'accordéons. */
.page-faq .faq-category {
    margin: 0 0 2.75rem;
}
.page-faq .faq-category:last-child {
    margin-bottom: 0;
}
.page-faq .faq-category-title {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    text-align: left;
    margin: 0 0 1.1rem;
    padding: 0 0.25rem;
    font-size: 1.4rem;
    line-height: 1.2;
    color: #ffffff;
    text-shadow: 0 2px 10px rgba(0, 44, 50, 0.55);
}
.page-faq .faq-category-title .faq-cat-icon {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.35));
}

/* ------------------------------------------------------------------ *
 *  Accordéon des questions — cartes « verre » soignées : ombre douce, léger
 *  soulèvement au survol, texte pétrole, chevron animé à l'ouverture.
 * ------------------------------------------------------------------ */
.accordion {
    max-width: none;
    width: 100%;
    margin: 0;
}
.accordion-item {
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 18px;
    padding: 4px;
    background: linear-gradient(135deg, rgb(255 255 255 / 58%), rgb(255 255 255 / 34%));
    backdrop-filter: blur(6px);
    box-shadow: 0 10px 26px rgba(6, 44, 50, 0.22);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    margin-bottom: 12px;
}
.accordion-item:last-child {
    margin-bottom: 0;
}
.accordion-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 32px rgba(6, 44, 50, 0.28);
}
.accordion-header {
    position: relative;
    width: 100%;
    text-align: left;
    padding: 13px 46px 13px 18px;
    font-size: 17px;
    font-weight: 700;
    cursor: pointer;
    background: transparent;
    border: none;
    outline: none;
    color: #12693e;
}
/* Chevron dessiné en CSS pur (pas d'enfant HTML). */
.accordion-header::after {
    content: "";
    position: absolute;
    right: 18px;
    top: 50%;
    width: 9px;
    height: 9px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: translateY(-65%) rotate(45deg);
    transition: transform 0.3s ease;
    pointer-events: none;
}
.accordion-header.open::after {
    transform: translateY(-35%) rotate(225deg);
}
.accordion-header.open {
    color: #0a4a2b;
}
.accordion-body {
    padding: 0 18px;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out, padding 0.3s ease-out;
    background: transparent;
    color: #12693e;
    font-weight: 500;
    line-height: 1.55;
}
.accordion-body.active {
    padding: 0 18px 16px;
}

/* Le fond de la page est désormais posé une seule fois sur `.page-faq::before`
   (voir tout en haut du fichier) : `.main-background` ne porte plus son
   propre fond, pour éviter d'avoir deux fonds à faire coller entre eux. */
.page-faq .main-background {
    background: none;
}

.first-section {
    margin-top: 100vh;
}

/* Conteneur : plus de panneau « Jonas » (inadapté à une longue liste).
   padding en !important car header.css/base.css imposent les leurs (eux aussi
   en !important) à plusieurs seuils d'écran, pour la mise en page de Club.
   IMPORTANT (bug corrigé le 2026-07-05) : la suppression du panneau Jonas
   n'avait retiré que le COMMENTAIRE, pas la vraie règle — base.css pose
   encore SON PROPRE fond (le panneau BLEU d'origine de Club, jamais recoloré)
   sur .container-left, à la fois en mobile-first et à 768px+. Comme cette
   règle ne fixait jamais `background-image` elle-même, celle de base.css
   restait active et s'affichait derrière les questions (le « pli » bleu/blanc
   signalé par Cédrik). `background-image: none` neutralise les DEUX cas. */
.page-faq .container-left {
    flex-direction: column;
    padding: 13rem 1.25rem 4rem !important;
    margin: 0;
    gap: 0;
    background-image: none !important;
}

@media (max-width: 991px) {
    .page-faq .container-left {
        padding: 9rem 1rem 3rem !important;
    }
    .page-faq .faq-category-title {
        font-size: 1.25rem;
    }
    .page-faq .hero-title {
        font-size: 2rem;
    }
}

@media (min-width: 768px) {
    .accordion-item {
        padding: 5px;
    }
    .page-faq .container-left {
        background-image: none !important;
    }
}

/* Boutons de défilement (haut / section suivante / bas) : à L'HORIZONTALE,
   à DROITE mais décalés vers la gauche pour ne plus chevaucher la colonne de
   menu ordinateur (colonne de boules à droite, positionnée par base.css :
   right:20px, largeur 100px → son bord gauche est à 120px du bord de
   l'écran). Marge de sécurité de 20px sous ce bord → right:140px.
   Historique : Cédrik a d'abord demandé un recentrage complet (2026-07-05,
   1re demande), mais centré ça cachait des logos du pied de page (icônes
   réseaux sociaux, centrées elles aussi en bas de page) → repassé à droite
   (2026-07-05, 2e demande), avec la marge ci-dessus pour rester dégagé de la
   colonne de menu.
   Uniquement à partir de 992px : en dessous de ce seuil, il n'y a pas de
   colonne de menu à cet endroit (menu mobile), la position et l'orientation
   d'origine (bas-droite au ras du bord, empilés verticalement, définies dans
   base.css) restent inchangées.
   L'apparition contextuelle des boutons (masqués quand inutiles) est gérée
   par js/nav.js, commun à toutes les pages qui utilisent ces boutons. */
@media (min-width: 992px) {
    .scroll-buttons {
        right: 140px;
        flex-direction: row;
    }
}

/* Couleur des boutons = couleur d'accent OFFICIELLE de la page (celle du pied
   de page, définie une fois pour toutes dans js/script.js → COLORS["faq.html"]
   = #12693e, « vert padel »). Sans cette règle, les boutons héritent du bleu
   par défaut de base.css (#007bff), qui ne correspond à aucune page — demandé
   par Cédrik le 2026-07-05 : « les flèches doivent être de la même couleur que
   le pied de page ». */
.scroll-buttons button {
    background-color: #12693e;
}
.scroll-buttons button:hover {
    background-color: #12693e99;
    transform: scale(1.1);
}
