/*
 * AXEK Elements – Équipe AXEK (par 6LEX – https://6lex.co)
 * Grille épurée (proposition A validée) : en-tête optionnel + cartes membres
 * (photo portrait + nom + rôle + lien). Survol = photo qui se soulève.
 * NB titre en double-classe (anti kit global Elementor).
 */
.axek-tm-head{ max-width:600px; margin:0 0 40px; }
.axek-tm-eyebrow{ display:inline-flex; align-items:center; gap:12px; font-weight: 500; font-size: var(--ax-meta); letter-spacing: 0; text-transform:uppercase; color:var(--ax-terra); margin-bottom:18px; line-height: 1.2;}
.axek-tm-eyebrow::before{
	content: ""; flex: none;
	width: var(--ax-sur-barre-w); height: var(--ax-sur-barre-h);
	border-radius: calc(var(--ax-sur-barre-w) / 2);
	background: currentColor;
	transform: rotate(var(--ax-sur-barre-a));
}
.axek-tm-title.axek-tm-title{ margin:0; font-weight:600; font-size: var(--ax-section); line-height: 1.12; letter-spacing: -.025em; color:var(--ax-encre); text-wrap:balance; }
.axek-tm-sub{ margin:16px 0 0; font-size: var(--ax-chapo); line-height: 1.55; color:var(--ax-texte-doux); font-weight: 500;}

.axek-tm-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; align-items:start; }
.axek-tm-card{ display:block; width:100%; min-width:0; text-decoration:none; color:inherit; }
/* display:block + width:100% EXPLICITES : la photo remplit toujours sa colonne, même dans un
   conteneur Elementor centré/flex qui essaierait de la réduire (bug photos minuscules en ligne). */
.axek-tm-photo{ position:relative; display:block; width:100%; aspect-ratio:4/5; border-radius:20px; overflow:hidden; background:var(--ax-terra-voile); transition:transform var(--axk-dur-slow) var(--axk-ease); }
/* sélecteur renforcé (0,2,1) pour battre un éventuel `.elementor img{height:auto}` (0,1,1) */
.axek-tm .axek-tm-photo img{ width:100%; height:100%; object-fit:cover; display:block; }
.axek-tm-photo::after{ content:""; position:absolute; inset:0; border-radius:inherit; box-shadow:inset 0 0 0 1px rgba(0,0,0,.06); pointer-events:none; }
.axek-tm-card:hover .axek-tm-photo{ transform:translateY(var(--axk-carte-lift)); }
.axek-tm-name{ margin:18px 0 0; font-weight:600; font-size: var(--ax-carte); color:var(--ax-encre); line-height: 1.25;}
.axek-tm-role{ margin:5px 0 0; font-size: var(--ax-second); font-weight: 500; color:var(--ax-terra); line-height: 1.55;}
.axek-tm-li{ display:inline-flex; align-items:center; gap:7px; margin-top:12px; font-size: var(--ax-meta); color:var(--ax-texte-tenu); transition:color var(--axk-dur) var(--axk-ease); line-height: 1.45;}
.axek-tm-li svg{ width:16px; height:16px; fill:currentColor; }
.axek-tm-li i{ font-size: var(--ax-second); line-height: 1.55; font-weight: 500;}
.axek-tm-card:hover .axek-tm-li{ color:var(--ax-terra); }

/* Plus AUCUNE colonne forcée en CSS : le nombre de colonnes et l'écart viennent
   du contrôle responsive (3 / 2 / 1 par défaut). Deux sources de vérité pour la
   même chose, c'est l'assurance qu'un réglage « ne marche pas » un jour. */
