/*
 * Les cartes deviennent plus larges sur les grands écrans. Leur ancienne
 * hauteur fixe de 260 px transformait alors les visuels en bandes très
 * horizontales et object-fit: cover coupait les titres placés en haut.
 *
 * Les visuels gardent maintenant leur ratio d'origine afin que les titres
 * et les textes intégrés aux images restent entièrement visibles.
 */
@media (min-width: 641px) {
  .pole-card {
    height: clamp(460px, calc(33.333vw + 140px), 564px);
  }

  .pole-card .pole-front img {
    height: auto;
    object-fit: contain;
    object-position: center;
    transform-origin: center top;
  }
}

.pole-card:nth-child(1) .pole-front img {
  aspect-ratio: 3 / 2;
}

.pole-card:nth-child(n+2) .pole-front img {
  aspect-ratio: 4 / 3;
}

.pole-card:hover .pole-front img {
  transform: none;
}

/* Le bouton d’aide reste accessible sans masquer les appels à l’action. */
@media (max-width: 640px) {
  .pole-card .pole-front img {
    height: auto;
    object-fit: contain;
    object-position: center;
  }

  .help-widget {
    display: none;
  }

  .help-widget.is-mobile-visible {
    display: block;
  }

  .help-button {
    width: 56px;
    height: 56px;
    padding: 0;
    font-size: 0;
  }

  .help-button::before {
    content: "💬";
    font-size: 22px;
    line-height: 1;
  }
}

@media (hover: none) {
  .pole-card:hover .pole-front img {
    transform: none;
  }
}

/* Bouton des quatre pôles : styles externes compatibles avec la protection du site. */
.poles-disclosure > summary {display:inline-flex;align-items:center;justify-content:center;max-width:100%;padding:17px 26px;border-radius:999px;background:var(--lime);color:var(--navy);font:inherit;font-weight:800;cursor:pointer;list-style:none;text-align:center;}
.poles-disclosure > summary::-webkit-details-marker {display:none;}
.poles-disclosure > summary:hover {filter:brightness(.96);}
.poles-disclosure > summary:focus-visible {outline:3px solid var(--sky);outline-offset:4px;}
.poles-disclosure .poles-label-open {display:none;}
.poles-disclosure[open] .poles-label-open {display:inline;}
.poles-disclosure[open] .poles-label-closed {display:none;}
.poles-disclosure > .pole-grid {margin-top:32px;}
.poles-disclosure:not([open]) > .pole-grid {display:none;}
.poles-disclosure > summary {box-sizing:border-box;min-height:48px;line-height:1.45;white-space:normal;}
@media (max-width: 1024px) {
  #poles {scroll-margin-top:100px;}
  #poles .section-heading {margin-bottom:24px;}
  .poles-disclosure > summary {font-size:1rem;padding:16px 22px;}
}
@media (max-width: 640px) {
  .poles-disclosure > summary {display:flex;width:100%;padding:15px 18px;}
  .poles-disclosure > .pole-grid {margin-top:24px;}
}
