/*
 Theme Name:   GeneratePress Child
 Template:     generatepress
*/
html {
  scroll-behavior: smooth;
}

/* Style général (s'applique à tous les champs et labels) */
.wpcf7 input,
.wpcf7 textarea,
.wpcf7 label {
  font-size: 16px;
}

/* Styles personnalisés pour certains champs */

.champ-checkbox-832 {
  font-size: 9px;
}
.bloc-offre {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}

@media (max-width: 768px) {
  body, p, h1, h2, h3, h4, h5, h6, a, button, span, div {
    font-family: 'Montserrat', sans-serif !important;
  }
}

/* Empêche la coupure des mots, même sur mobile */
h1, h2, h3, h4, h5, h6, p, span, div {
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  hyphens: manual !important;
  white-space: normal !important;
}

/* S'assure que les titres très longs se réduisent proprement */
h1, h2 {
  word-wrap: break-word;
  font-size: clamp(2rem, 5vw, 3rem); /* taille responsive */
  line-height: 1.3;
}

img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 768px) {
  img {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}

/* Modification page article */

.single .posted-on {
    display: none;
}

.single .byline {
    display: none;
}

.single .cat-links,
.single .tags-links {
    display: none;
}

/* Style étiquette mot */

.tooltip {
  position: relative;
  cursor: help;
  border-bottom: 1px dotted #999;
}

.tooltip::after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: 125%;
  left: 50%;
  transform: translateX(-50%);
  background-color: #005866;
  color: #fff;
  padding: 6px 10px;
  border-radius: 4px;
  font-size: 0.875rem;
  max-width: 200px;
  width: max-content;
  min-width: 100px; /* pour éviter qu’elle soit trop petite */
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
  z-index: 1000;
  white-space: normal;
  word-wrap: break-word;
  overflow-wrap: break-word;
  text-align: left;
}

.tooltip:hover::after {
  opacity: 1;
}

/* Empêche la bulle de sortir de l’écran */
.tooltip {
  --tooltip-padding: 10px;
}

.tooltip::after {
  /* Empêche le dépassement horizontal */
  word-wrap: break-word;
  overflow-wrap: break-word;
  text-align: left;
}

@media (max-width: 320px) {
  .tooltip::after {
    max-width: 90vw;
    left: 50%;
    transform: translateX(-50%);
  }
}

