/* ==========================================================
   CUSTOM.CSS â€” GRAVE   (fichier : assets/css/custom.css)
   Retouches du thÃ¨me port-hugo (le thÃ¨me lui-mÃªme n'est pas modifiÃ©)

   Sommaire
   0. RÃ©glages gÃ©nÃ©raux (largeur du site)
   1. Typographie gÃ©nÃ©rale
   2. Section about
   3. Justification des textes
   4. Grilles de la page d'accueil (Ã©vÃ©nements, projets)
   5. AperÃ§u au clic (panneau sous les vignettes)
   6. Agrandissement des photos (GLightbox)
   7. Direction + Ã©quipe (deux colonnes)
   8. Ã‰quipe : vignettes, filtre violet, aperÃ§u
   9. Page projet
   10. Blocs performance (shortcode Â« projet Â»)
   ========================================================== */


/* ==============================
   0. RÃ‰GLAGES GÃ‰NÃ‰RAUX
   ============================== */

/* Largeur max des sections de la page d'accueil */
/* en % = proportionnelle Ã  l'Ã©cran (ex. 85% = 7,5% de marge de chaque cÃ´tÃ©) */
/* ou en px pour une largeur fixe (ex. 1140px) */
/* ATTENTION : ne dÃ©finir cette variable qu'UNE SEULE FOIS dans le fichier */
:root {
  --largeur-site: 77%;
}

/* Toutes les sections de la page d'accueil : centrÃ©es, largeur max commune */
#about .container,
#equipe .container,
#crea .container-fluid,
#portfolio .container-fluid {
  max-width: var(--largeur-site) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 15px !important;
  padding-right: 15px !important;
}

/* RÃ©glages au cas par cas (facultatif) : dÃ©commente (Cmd+/) et ajuste */
/* #about .container           { max-width: 1000px !important; } */
/* #equipe .container          { max-width: 1200px !important; } */
/* #crea .container-fluid      { max-width: 1140px !important; } */
/* #portfolio .container-fluid { max-width: 1140px !important; } */


/* ==============================
   1. TYPOGRAPHIE GÃ‰NÃ‰RALE
   ============================== */

/* Police Sofia Pro (Adobe Fonts) partout sur le site */
/* !important : le thÃ¨me impose Rubik sur certains titres */
/* les icÃ´nes Font Awesome (.fa, .fas, .fabâ€¦) sont exclues */
/* graisses disponibles : 300, 400, 500, 600, 700, 900 (+ italiques) */
body *:not(.fa):not(.fas):not(.fab):not(.far):not(.fal) {
  font-family: "sofia-pro", sans-serif !important;
}

/* Titres de section de la page d'accueil : mÃªme style partout */
/* (Direction, L'Ã©quipe, Projets, Ã‰vÃ©nements) */
.direction-equipe h2,
.portfolio h2 {
  font-weight: 700 !important;
  font-size: 1.2rem !important;
  color: #260649 !important;
  text-transform: uppercase !important;  /* tout en capitales ; none = tel qu'Ã©crit */
  letter-spacing: 0.05em !important;
  text-align: left !important;
  margin: 0 0 25px !important;
}


/* ==============================
   2. SECTION ABOUT (page d'accueil)
   ============================== */

/* Titre Â« GRAVE Â» */
.about-me .text-holder h1 {
  font-weight: 700;
  font-size: 3rem;
  color: #260649;
}

/* Texte de prÃ©sentation (vient de content/_index.md) */
.about-me .text-holder p {
  font-weight: 600;
  color: #000;
}

/* Image de about : taille dans sa colonne */
.about-me .about-me-images img {
  width: 55% !important;   /* % de la largeur de sa colonne */
  height: auto;
  display: block;
  margin-left: auto;       /* calÃ©e Ã  droite ; mets margin: 0 auto pour la centrer */
}


/* ==============================
   3. JUSTIFICATION DES TEXTES
   ============================== */

/* About + direction + page projet + aperÃ§u */
/* hyphens: manual = pas de cÃ©sure automatique */
.about-me .text-holder p,
.direction-texte p,
.projet-texte p,
.projet-description p,
.og-details p {
  text-align: justify;
  hyphens: manual;
}


/* ==============================
   4. GRILLES DE LA PAGE D'ACCUEIL (Ã©vÃ©nements, projets)
   ============================== */

/* Cache la description dans la grille (elle ne sert qu'Ã  l'aperÃ§u) */
.og-grid .hidden {
  display: none;
}

/* Vignettes des Ã©vÃ©nements et projets alignÃ©es Ã  gauche (au lieu de centrÃ©es) */
#crea .og-grid,
#portfolio .og-grid {
  text-align: left !important;
  padding: 0 !important;
}

/* Titres de ces sections alignÃ©s Ã  gauche aussi */
#crea .portfolio-holder .text-center,
#portfolio .portfolio-holder .text-center {
  text-align: left !important;
}

/* Sous-titres Â« Ã€ venir Â» / Â« PassÃ©s Â» dans la section Ã©vÃ©nements */
.sous-titre-grille {
  font-weight: 600;
  font-size: 1.1rem;
  color: #260649;
  margin: 30px 0 20px;
}

/* --- Titre par-dessus l'image des vignettes (Ã©vÃ©nements, projets) --- */

/* La vignette sert de repÃ¨re pour placer le titre */
#crea .og-grid li > a,
#portfolio .og-grid li > a {
  position: relative;
  display: block;
}

/* Le titre, en blanc, en bas Ã  gauche de l'image */
.vignette-titre {
  position: absolute;
  left: 12px;
  right: 20px;
  bottom: 20px;
  color: #fff;
  font-weight: 900;
  font-style: italic;
  font-size: 0.85rem;
  text-align: left;
  text-shadow: 0 1px 4px rgba(99, 93, 99, 0.6);  /* lÃ©ger ombrage : reste lisible sur une zone claire */
  pointer-events: none;   /* le clic passe Ã  travers et ouvre l'aperÃ§u */
}

/* Pas de soulignement ni de bleu de lien, mÃªme au survol */
.og-grid li > a,
.og-grid li > a:hover {
  text-decoration: none !important;
}
/* --- Grilles événements / projets : vignettes sur toute la largeur de la colonne --- */
/* 3 par ligne sur ordinateur, 2 sur tablette, 1 sur téléphone */
#crea .og-grid,
#portfolio .og-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  align-items: start;       /* l'aperçu ouvert n'étire pas les autres vignettes de la ligne */
  margin: 0 !important;
}
#crea .og-grid li,
#portfolio .og-grid li {
  display: block !important;
  width: auto !important;
  margin: 0 !important;
}
#crea .og-grid li > a img,
#portfolio .og-grid li > a img {
  display: block;
  width: 100%;
  height: auto;
}

@media (max-width: 991px) {
  #crea .og-grid,
  #portfolio .og-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575px) {
  #crea .og-grid,
  #portfolio .og-grid {
    grid-template-columns: 1fr;
  }
}
/* Annule les marges négatives de la rangée Bootstrap autour des vignettes
   → vignettes alignées sur la colonne, comme les titres et l'aperçu */
#crea .portfolio-holder,
#portfolio .portfolio-holder {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Titres de section alignés sur le bord des vignettes */
#crea .portfolio-holder > .col-12,
#portfolio .portfolio-holder > .col-12 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ==============================
   5. APERÃ‡U AU CLIC (panneau qui s'ouvre sous les vignettes)
   ============================== */

/* --- Le panneau --- */
/* Ordinateur : 2 colonnes (photos 1/3 Ã  gauche, texte 2/3 Ã  droite)
   TÃ©lÃ©phone  : couverture, puis texte, puis galerie (voir la fin de cette section)
   Dans les deux cas, UN SEUL dÃ©filement pour l'ensemble photos + texte */

/* Fond du panneau */
.og-expander {
  background: #160644;
}

/* Contenu du panneau : 2 colonnes cÃ´te Ã  cÃ´te, un seul dÃ©filement */
/* (la hauteur du panneau est fixÃ©e par le script : on fait dÃ©filer l'intÃ©rieur) */
.og-expander-inner {
  box-sizing: border-box !important;
  height: 100% !important;
  padding: 50px 40px !important;
  overflow-y: auto !important;
  display: flex !important;
  align-items: flex-start;
  gap: 40px;
}

/* --- Colonne de gauche : couverture + crÃ©dit + galerie (crea) --- */

.og-fullimg {
  display: block !important;
  flex: 0 0 33.333%;
  width: 33.333% !important;
  height: auto !important;
  float: none !important;
  overflow: visible !important;
}

/* Photo de couverture : toute la largeur de la colonne, clic = agrandir */
.og-fullimg > img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
}

/* CrÃ©dit sous la couverture (nom du fichier, ou credit: dans le .md) */
.og-credit {
  text-align: left;
  font-size: 0.75rem;
  color: #603d9d;
  margin: 8px 0 0;
}

/* Galerie sous la couverture (crea) : grille Â« justifiÃ©e Â»,
   photos sans recadrage, mÃªme hauteur par ligne, largeur remplie
   (la hauteur visÃ©e des lignes se rÃ¨gle dans hugrid.custom.js : ratio * 110) */
.og-galerie {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  width: 100%;
  margin-top: 12px;
}

/* EmpÃªche la derniÃ¨re ligne d'Ãªtre Ã©tirÃ©e si elle n'a qu'une ou deux photos */
.og-galerie::after {
  content: "";
  flex-grow: 999;
}

.og-galerie img {
  min-width: 0;
  height: auto;
  object-fit: cover;
  cursor: zoom-in;
  opacity: 0.9;
  transition: opacity 0.2s;
}
.og-galerie img:hover {
  opacity: 1;
}

/* --- Colonne de droite : textes --- */

/* Le texte prend le reste de la largeur ; pas de dÃ©filement sÃ©parÃ© */
.og-details {
  flex: 1 1 auto;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
  float: none !important;
  padding: 0 !important;
}

/* Titre du projet */
.og-details h3 {
  font-weight: 900;
  font-style: italic;
  font-size: 1.7rem;
  color: #fff;
}

/* Projets crea : artistes (semi-bold) */
.og-details .apercu-artistes {
  font-weight: 600;
  font-size: 1rem;
  color: #fff;
  margin-bottom: 0;
}

/* Projets crea : type et annÃ©e (regular) */
.og-details .apercu-infos {
  font-weight: 400;
  font-style: normal;
  color: #fff;
  margin-bottom: 15px;
}

/* RÃ©sumÃ© (texte avant <!--more--> dans le fichier .md) */
.og-details p {
  font-weight: 400;
  font-size: 1rem;
  color: #fff;
}

/* --- Bouton --- */

/* Bouton Â« VOIR LE PROJET Â» / Â« VOIR LE SITE Â» */
.og-details a {
  font-weight: 500;
  font-size: 0.8rem;
  color: #dfd9ea;
  border-color: #dfd9ea;
}

/* Bouton masquÃ© si ni page ni lien externe (lien = #) */
.og-details a[href="#"] {
  display: none !important;
}

/* --- AperÃ§u sur tÃ©lÃ©phone et petite tablette --- */
/* une seule colonne, dans l'ordre : couverture, crÃ©dit, texte, galerie
   (display: contents Â« dÃ©plie Â» la colonne photos pour pouvoir glisser le texte au milieu) */
@media (max-width: 830px) {
  .og-expander-inner {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 30px 20px !important;
  }
  .og-fullimg {
    display: contents !important;
  }
  /* Couverture et son crédit masqués : la vignette juste au-dessus montre déjà la photo
     (elle reste dans l'agrandissement, en 1re position du diaporama) */
  .og-fullimg > img,
  .og-credit {
    display: none !important;
  }
  .og-details {
    order: 3;
    width: 100% !important;
    margin-top: 20px;
  }
  .og-galerie {
    order: 4;
    margin-top: 20px;
  }
  .og-details h3 {
    font-size: 1.3rem;
  }
}
/* Ordinateur : le CONTENU de l'aperçu (photos + texte) a la même largeur
   que la colonne de la page ; seul le fond bleu va d'un bord à l'autre */
@media (min-width: 831px) {
  .og-expander-inner {
    max-width: var(--largeur-site);
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
}

/* --- Flèches projet précédent / suivant dans l'aperçu (crea uniquement) --- */
.og-fleche {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 20;
  padding: 10px 20px;
  background: none;
  border: 0;
  color: #b388ff;
  font-size: 3rem;
  line-height: 1;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 0.2s;
}
.og-fleche:hover { opacity: 1; }
.og-fleche:focus { outline: none; }
.og-fleche-prec { left: 10px; }
.og-fleche-suiv { right: 10px; }

/* Téléphone : flèches en bas du panneau, pour ne pas recouvrir le texte */
@media (max-width: 830px) {
  .og-fleche {
    top: auto;
    bottom: 10px;
    transform: none;
    font-size: 2.2rem;
  }
}

/* Croix de fermeture de l'aperçu */
.og-close::before,
.og-close::after {
  background: #b388ff !important;
}
.og-close:hover::before,
.og-close:hover::after {
  background: #ffffff !important;   /* couleur au survol */
}


/* ==============================
   6. AGRANDISSEMENT DES PHOTOS (GLightbox)
   galerie de l'aperÃ§u (crea) et galeries des pages projet
   ============================== */

/* Photo : 80 % max de la fenÃªtre, en largeur comme en hauteur */
.glightbox-container .gslide-image img {
  max-width: 80vw !important;
  max-height: 80vh !important;
}

/* Pas de cadre blanc sous la photo : le crÃ©dit est posÃ© directement sur le fond sombre */
.glightbox-clean .gslide-description {
  background: transparent !important;
}
.glightbox-clean .gdesc-inner {
  padding: 10px 0 0 !important;
}

/* CrÃ©dit en blanc, petit */
.glightbox-clean .gslide-desc {
  color: #fff !important;
  font-size: 0.8rem !important;
  text-align: left;
}

/* Pas d'ombre autour de la photo */
.glightbox-clean .gslide-media {
  box-shadow: none !important;
}


/* ==============================
   7. DIRECTION + Ã‰QUIPE (deux colonnes)
   ============================== */

/* Marges haut/bas de la section */
.direction-equipe {
  padding: 80px 0;
}

/* Photo de la direction, au-dessus du texte */
.direction-image {
  display: block;
  width: 66%;
  margin-bottom: 20px;
}

/* CrÃ©dit photo sous l'image de la direction */
.direction-credit {
  font-size: 0.75rem;
  color: #666;
  margin: -12px 0 20px;
}

/* Texte de la direction (justification : voir section 3) */
.direction-texte p {
  font-weight: 500;
  font-size: 0.9rem;
  color: #000;
}

/* Vignettes de l'Ã©quipe alignÃ©es Ã  gauche dans leur colonne */
.equipe-colonne .og-grid {
  text-align: left;
  padding: 0;
}

/* AperÃ§u de l'Ã©quipe : s'ouvre sur toute la largeur des deux colonnes */
/* (l'aperÃ§u se cale sur le premier parent positionnÃ© : on le dÃ©place de la colonne Ã  la rangÃ©e) */
.direction-equipe .equipe-colonne,
.direction-equipe .equipe-colonne .og-grid {
  position: static;
}
.direction-equipe .row {
  position: relative;
}

/* L'aperÃ§u passe au-dessus de la colonne direction */
.direction-equipe .og-expander {
  z-index: 10;
}


/* ==============================
   8. Ã‰QUIPE : VIGNETTES, FILTRE VIOLET, APERÃ‡U
   ============================== */

/* --- Nom et lÃ©gende sous chaque photo --- */

/* Nom */
.vignette-equipe .equipe-nom {
  font-weight: 600;
  font-size: 1rem;
  color: #53109b;
  margin: 10px 0 0;
  text-align: left;
}

/* LÃ©gende (rÃ´le) */
.vignette-equipe .equipe-legende {
  font-weight: 400;
  font-size: 0.85rem;
  color: #53109b;
  margin: 2px 0 0;
  text-align: left;
}

/* --- Filtre violet sur les photos --- */

/* Fond violet derriÃ¨re chaque photo = couleur des zones sombres */
.vignette-equipe > a {
  display: block;
  background: #53109b;
}

/* Photo en noir et blanc, fusionnÃ©e avec le fond violet */
.vignette-equipe > a img {
  filter: grayscale(100%) contrast(0.9);
  mix-blend-mode: plus-lighter;
  transition: filter 0.3s;
}

/* Au survol : la photo retrouve ses vraies couleurs */
.vignette-equipe > a:hover img {
  filter: none;
  mix-blend-mode: normal;
}

/* --- AperÃ§u de l'Ã©quipe --- */
/* (la mise en page 1/3 â€“ 2/3 est commune Ã  tous les aperÃ§us : voir section 5) */

/* Nom du membre (titre de l'aperÃ§u) */
.direction-equipe .og-details h3 {
  font-weight: 900;
  font-style: normal;
  font-size: 1.3rem;
}

/* Texte de prÃ©sentation */
.direction-equipe .og-details p {
  font-size: 0.85rem;
  line-height: 1.2;
}

/* Bouton (s'il est affichÃ©) */
.direction-equipe .og-details a {
  font-size: 0.75rem;
}

/* --- Ã‰tiquettes des projets dans l'aperÃ§u de l'Ã©quipe (projets: dans le .md du membre) --- */
.og-details .equipe-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 15px;
  text-align: left !important;
}

/* Ã‰tiquette (lien ou simple texte) : petit cadre arrondi */
.og-details .equipe-tags .tag {
  display: inline-block;
  padding: 3px 10px !important;
  margin: 0 !important;
  border: 1px solid #b388ff !important;
  border-radius: 20px;
  font-size: 0.75rem !important;
  font-weight: 500;
  color: #fff !important;
  background: transparent !important;
  text-decoration: none !important;
}

/* Au survol (Ã©tiquettes avec lien) */
.og-details .equipe-tags a.tag:hover {
  background: #b388ff !important;
  color: #160644 !important;
}


/* ==============================
   9. PAGE PROJET (layouts/portfolio/single.html et layouts/crea/single.html)
   ============================== */

/* --- Mise en page gÃ©nÃ©rale --- */

/* Marges de la page : haut / cÃ´tÃ©s / bas */
.projet {
  padding: 20px 0 80px;
}

/* Largeur max du contenu (plus petit = plus de marge sur les cÃ´tÃ©s) */
.projet .container {
  max-width: 1200px;
}

/* --- Lien Â« â† Retour Â» --- */

/* FixÃ© Ã  gauche de l'Ã©cran, reste visible au scroll */
.projet-retour {
  position: fixed;
  top: 130px;        /* sous le menu */
  left: 30px;
  z-index: 100;      /* passe au-dessus du contenu */
  font-weight: 600;
  color: #260649;
}
.projet-retour:hover {
  color: #7b2ff7;
  text-decoration: none;
}

/* Sur mobile : en bas Ã  gauche, en petit bouton, pour ne pas recouvrir le texte */
@media (max-width: 991px) {
  .projet-retour {
    top: auto;
    bottom: 20px;
    left: 20px;
    background: #260649;
    color: #fff;
    padding: 8px 14px;
    border-radius: 20px;
  }
}

/* --- Haut de page --- */

/* Titre (ex. GRAVISSIME 1) : grande marge en haut, sinon le menu fixe le recouvre */
.projet h1 {
  font-weight: 700;
  color: #260649;
  margin: 120px 0 30px;
}

/* Image (1/3) + introduction (2/3) cÃ´te Ã  cÃ´te */
.projet-haut {
  margin-bottom: 60px;
  align-items: flex-start;   /* texte alignÃ© en haut de l'image */
}

/* Image du projet : toute la largeur de sa colonne */
.projet-image {
  display: block;
  width: 100%;
  height: auto;
  margin-bottom: 20px;
}

/* Introduction (texte avant <!--more-->), mise en avant */
.projet-intro p {
  font-size: 1.2rem;
  font-weight: 700;
  color: #000;
}

/* --- Suite du texte --- */

/* Texte aprÃ¨s <!--more--> (programme dÃ©taillÃ©â€¦) */
.projet-texte {
  margin-bottom: 60px;
}

/* --- Galerie en bas de page --- */

/* Grille de vignettes (le nombre de colonnes s'adapte Ã  l'Ã©cran) */
.projet-galerie {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 10px;
  margin-top: 40px;
}
.projet-galerie img {
  display: block;
  width: 100%;
  height: auto;
  transition: opacity 0.2s;
}
.projet-galerie a:hover img {
  opacity: 0.8;
}


/* ==============================
   10. BLOCS PERFORMANCE (shortcode Â« projet Â» : image Ã  gauche, texte Ã  droite)
   ============================== */

/* Espace entre chaque performance + texte alignÃ© en haut */
.projet-bloc {
  margin-bottom: 70px;
  align-items: flex-start;
}

/* Image de la performance */
.projet-bloc img {
  margin-bottom: 20px;
}

/* Titre de la performance (ex. TYZANE 8MM) : bold italique */
.projet-titre {
  font-weight: 700;
  font-style: italic;
  font-size: 1.6rem;
  margin-bottom: 5px;
}

/* Noms des artistes : semi-bold */
.projet-artistes {
  font-weight: 600;
  font-size: 1rem;
  margin-bottom: 0;
}

/* Type d'Å“uvre et annÃ©e : regular */
.projet-infos {
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
  margin-bottom: 20px;
}

/* ==============================
   11. MENU
   ============================== */

/* --- Ordinateur (992 px et plus) --- */
@media (min-width: 992px) {

  /* Barre toujours transparente, même au défilement */
  .menu-container,
  .menu-container-transparent,
  .menu-normal {
    background: transparent !important;
    box-shadow: none !important;
  }

  /* Liens du menu : HAUT*/
  .menu-item a {
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    text-transform: uppercase;      /* none = tel qu'écrit dans hugo.toml */
    letter-spacing: 0.05em;
    color: #ffffff !important;      /* couleur une fois la page défilée (sur fond clair) */
  }

  /* Liens menu en dessous du fond de démarrage */
  .menu-item-transparent.menu-item a {
    color: #b388ff !important;
    text-shadow: 0 1px 4px rgba(255, 140, 0, 0.8);
  }

  /* Soulignement au survol : HAUT */
  .desktop-menu .hvr-underline-from-left:before {
    background: #ffffff !important;
  }

  /* Soulignement au survol : en dessous du fond de démarrage */
  .desktop-menu .menu-item-transparent.hvr-underline-from-left:before {
    background: #b388ff !important;
  }
}

/* --- Téléphone et tablette (moins de 992 px) --- */
@media (max-width: 991px) {

  /* Barre du haut (logo + bouton menu) */
  .mobile-menu {
    background: #ffffff !important;
  }

  /* Panneau qui s'ouvre au toucher du bouton menu */
  .menu-slider {
    background: transparent !important;
  }

  /* Liens du panneau */
  .mobile-menu-list a,
  .mobile-menu-item a {
    font-weight: 700 !important;
    font-size: 1.4rem !important;
    text-transform: uppercase;
    color: #b388ff !important;
    text-shadow: 0 1px 4px rgba(255, 140, 0, 0.8);
 
  }

  /* Icônes des réseaux sociaux du panneau */
  .mobile-menu-icons .fa,
  .mobile-menu-icons .fab,
  .mobile-menu-icons .fas {
    color: #b388ff !important;
  }
}

  /* Bouton du menu mobile : barres (menu fermé) et croix (menu ouvert) */
  .mobile-menu-nav .menu-link span,
  .mobile-menu-nav .menu-link span::before,
  .mobile-menu-nav .menu-link span::after {
    background-color: #b388ff !important;
  }
  .mobile-menu-nav .menu-link,
  .mobile-menu-nav .menu-link i {
    color: #b388ff !important;   /* si le bouton est une icône (police) */
  }

/* ==============================
   12. BANDEAU D'ACCUEIL (hero)
   ============================== */

/* Téléphone : phrase sous « GRAVE » affichée en entier, SANS animation
   (l'animation « clip » faisait varier la hauteur du bandeau → la page sautait) */
@media (max-width: 767px) {
  .cd-headline.clip .cd-words-wrapper {
    width: auto !important;        /* annule la largeur animée par le script */
    overflow: visible !important;
  }
  .cd-headline.clip .cd-words-wrapper::after {
    display: none !important;      /* masque le curseur clignotant */
  }
  .cd-headline.clip b {
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
    white-space: normal !important;   /* la phrase peut passer sur 2 lignes, sans bouger */
  }
}

/* Voile par-dessus l'image de fond du bandeau d'accueil */
/* rgba(rouge, vert, bleu, intensité) : intensité 0 = aucun voile, 1 = couleur pleine */
.header::after {
  background: rgba(0, 0, 0, 0.2) !important;
}

/* L'image de fond elle-même : pleinement opaque, sans filtre */
.hero-image img {
  opacity: 1 !important;
  filter: none !important;
}

/* Canvas de l'effet « grille de pixels », posé exactement sur l'image de fond */
.grille-pixels {
  position: absolute;
  display: block;
  pointer-events: none;   /* ne bloque ni les clics ni le défilement */
}
