/* Photos et contacts des équipes — Jeunes de France */
.jdf-team-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:22px}
.jdf-team-card{overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:20px;border:1px solid #e5eaf1;border-radius:20px;background:#fff;box-shadow:0 12px 35px rgba(8,29,56,.06)}
.jdf-team-photo-wrap{width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:14px;background:#e9eef5;margin-bottom:12px}
.jdf-team-photo{width:100%;height:100%;object-fit:cover;object-position:center 25%;display:block}
.jdf-team-photo[hidden],.jdf-team-placeholder[hidden]{display:none!important}
.jdf-team-placeholder{width:100%;height:100%;display:grid;place-items:center;font-weight:800;font-size:clamp(40px,6vw,68px);letter-spacing:-.08em;color:#b3c0d0;background:linear-gradient(135deg,#e9eef5,#dce5f1)}
.jdf-team-card h3{margin:4px 0 0}.jdf-team-card p{margin:0 0 14px;color:#506079}
.jdf-team-email{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding:11px 15px;border-radius:9px;background:#0c2a50;color:#fff!important;font-size:.91rem;font-weight:700;text-decoration:none;transition:background .2s}
.jdf-team-email:hover,.jdf-team-email:focus-visible{background:#cb2445;color:#fff}
@media(max-width:650px){.jdf-team-grid{grid-template-columns:1fr}.jdf-team-card{padding:16px}}
