/* ============================================
   ÉQUIPE — Archiprogramme
   ============================================ */

/* Marquee équipe : orange sur mobile uniquement */
@media (max-width: 768px) {
  body.page-slug-equipe [data-mrq-id="equipe"] .ap-marquee__item,
  body.page-slug-equipe [data-mrq-id="équipe"] .ap-marquee__item {
    color: var(--ap-signal, #EA6928) !important;
  }
}

/* Header logo + burger en blanc sur la page équipe */
.page-slug-equipe .ap-header:not(.is-open) .ap-logo-svg path {
  fill: var(--ap-blanc, #ffffff) !important;
}
.page-slug-equipe .ap-header:not(.is-open) .ap-burger__line {
  background: var(--ap-blanc, #ffffff) !important;
}

.ap-equipe {
  width: 100% !important;
  box-sizing: border-box;
}

/* Fix largeur widget Elementor */
.elementor-widget-shortcode:has(.ap-equipe),
.elementor-widget-shortcode:has(.ap-equipe) > .elementor-widget-container {
  width: 100% !important;
}

.e-con:has(.ap-equipe) > .e-con-inner {
  display: block !important;
}

/* ── Grille ── */
.ap-equipe__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

/* ── Carte (texte seul) ── */
.ap-equipe__member {
  padding: clamp(24px, 3vw, 40px) clamp(16px, 2vw, 32px);
  cursor: default;
}

.ap-equipe__name {
  font-family: 'Epilogue', sans-serif !important;
  font-size: clamp(22px, 2.2vw, 32px) !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  text-transform: none !important;
  color: var(--ap-nuit, #0D0D0D) !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  transition: color 0.25s ease;
}

.ap-equipe__member[data-photo]:hover .ap-equipe__name {
  color: var(--ap-signal, #EA6928) !important;
}

.ap-equipe__poste {
  font-family: 'DM Sans', sans-serif !important;
  font-size: clamp(13px, 1vw, 15px) !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  color: rgba(13, 13, 13, 0.55) !important;
  margin: 0 !important;
}

/* ── Photo flottante centrée ── */
.ap-equipe__photo-display {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -48%) scale(0.97);
  width: min(36vw, 440px);
  aspect-ratio: 3 / 4;
  overflow: hidden;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.4s ease, transform 0.4s ease;
  z-index: 500;
}

.ap-equipe__photo-display.is-visible {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

@media (hover: none) {
  .ap-equipe__photo-display.is-visible {
    pointer-events: auto;
  }
}

.ap-equipe__photo-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

/* ── Bouton fermer (mobile) ── */
.ap-equipe__photo-close {
  display: none;
  position: absolute;
  top: 12px;
  right: 12px;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.5);
  color: #ffffff;
  border: none;
  border-radius: 50%;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  z-index: 10;
  padding: 0;
}

/* ── Responsive ── */
@media (max-width: 768px) {
  .ap-equipe__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .ap-equipe__name {
    font-size: clamp(22px, 5vw, 30px) !important;
  }

  .ap-equipe__poste {
    font-size: 14px !important;
  }

  .ap-equipe__photo-display {
    width: 80vw;
    max-width: 380px;
  }

  .ap-equipe__photo-close {
    display: flex;
  }
}

@media (max-width: 480px) {
  .ap-equipe__grid {
    grid-template-columns: 1fr;
  }

  .ap-equipe__name {
    font-size: clamp(24px, 6vw, 32px) !important;
  }
}
