/*
 * Panneau néon géométrique AziluM.
 *
 * Le contenu reste libre : ce fichier gère uniquement l'hôte, le contour SVG,
 * ses découpes asymétriques et ses effets lumineux.
 */

.az-neon-panel {
  position: relative;
  overflow: hidden;
  min-width: 0;
  min-height: var(--az-neon-panel-min-height, auto);
  padding: var(--az-neon-panel-padding, 0);
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  filter: drop-shadow(0 0 4px rgba(255, 107, 0, .22)) drop-shadow(0 0 8px rgba(244, 17, 114, .1));
  isolation: isolate;
  -webkit-clip-path: none;
  clip-path: none;
}

/* Neutralise le cadre générique si les deux composants sont combinés. */
.az-neon-panel.panel::before,
.az-neon-panel.panel:hover::before {
  display: none;
}

.az-neon-panel > :not(.az-neon-panel__frame) {
  position: relative;
  z-index: 2;
}

.az-neon-panel__frame {
  position: absolute;
  z-index: 0;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.az-neon-panel__frame svg {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.az-neon-panel__outline,
.az-neon-panel__segment,
.az-neon-panel__tail-outline,
.az-neon-panel__detail {
  fill: none;
  stroke-linecap: square;
  stroke-linejoin: miter;
  vector-effect: non-scaling-stroke;
}

.az-neon-panel__outline { stroke-width: 1.35; }
.az-neon-panel__segment { stroke-width: 1.1; }
.az-neon-panel__segment--main { filter: drop-shadow(0 0 2px rgba(255, 116, 0, .34)); }
.az-neon-panel__segment--rail,
.az-neon-panel__tail-outline { stroke-width: 1; }
.az-neon-panel__tail { fill: rgba(7, 6, 27, .72); stroke: none; }
.az-neon-panel__detail { stroke: rgba(113, 21, 76, .38); stroke-width: .8; }

/* Variante actuellement utilisée sur l'accueil : Avantages membres. */
.benefits {
  --az-neon-panel-min-height: 310px;
  --az-neon-panel-padding: 35px 34px;
  --az-neon-panel-mobile-min-height: 286px;
  --az-neon-panel-mobile-padding: 28px;
}

.benefits h2 { margin-bottom: 0; font-size: 1.25rem; font-weight: 600; letter-spacing: .035em; text-transform: uppercase; }
.benefits ul { display: grid; gap: 10px; margin-top: 20px; }
.benefits li { color: #ddddea; font-size: .79rem; line-height: 1.35; }
.benefit-item { display: grid; min-height: 36px; grid-template-columns: 28px minmax(0, 1fr); align-items: center; gap: 10px; padding: 0; background: none; }
.benefit-item__icon { display: grid; width: 26px; height: 26px; color: #ffa000; background: none; filter: drop-shadow(0 0 5px rgba(255, 132, 0, .55)); place-items: center; }
.benefit-item__icon .icon { width: 19px; height: 19px; stroke-width: 2; }
.benefit-item__icon--brands { display: flex; align-items: center; justify-content: center; gap: 2px; }
.benefit-item__icon--brands .social-icon { width: 12px; height: 12px; }

@media (max-width: 640px) {
  .az-neon-panel {
    min-height: var(--az-neon-panel-mobile-min-height, var(--az-neon-panel-min-height, auto));
    padding: var(--az-neon-panel-mobile-padding, var(--az-neon-panel-padding, 0));
  }
}
