/* =====================================================
   PAGE ÉCOLE DE FOOT (U13-U17) — FC Luy de Béarn
   Recalée sur les valeurs exactes de page-foot-animation.css
   ===================================================== */

/* ── Hero ── */
.page-ecole-foot .ecole-hero {
  background: linear-gradient(135deg, #1B2618 0%, #2A5C1E 100%);
  padding: clamp(48px,6vw,72px) var(--fclb-gutter, clamp(20px,5vw,80px));
}
.page-ecole-foot .ecole-hero__left { max-width: 720px; }
.page-ecole-foot .ecole-eyebrow { display:block; font-size:12px; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color:rgba(159,223,106,0.8); margin-bottom:10px; }
.page-ecole-foot .ecole-eyebrow--dark { display:block; font-size:12px; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color:#2A5C1E; margin-bottom:6px; }
.page-ecole-foot .ecole-hero__title { font-size:clamp(32px,4vw + 14px,56px); font-family:var(--font-heading); font-weight:700; color:#fff; line-height:1.05; letter-spacing:-0.02em; margin:0 0 10px; }
.page-ecole-foot .ecole-hero__accroche { font-size:clamp(17px,1vw + 14px,20px); color:#9FDF6A; font-style:italic; margin:0 0 14px; }
.page-ecole-foot .ecole-hero__intro { font-size:clamp(17px,1vw + 14px,18px); color:rgba(255,255,255,0.75); line-height:1.65; margin:0 0 28px; }
.page-ecole-foot .ecole-hero__stats { display:flex; gap:12px; flex-wrap:wrap; }
.page-ecole-foot .ecole-stat { background:rgba(255,255,255,0.1); border:0.5px solid rgba(255,255,255,0.15); border-radius:10px; padding:12px 20px; text-align:center; }
.page-ecole-foot .ecole-stat__val { display:block; font-size:clamp(22px,2vw + 12px,28px); font-family:var(--font-heading); font-weight:700; color:#9FDF6A; line-height:1; margin-bottom:4px; }
.page-ecole-foot .ecole-stat__lbl { display:block; font-size:11px; color:rgba(255,255,255,0.55); text-transform:uppercase; letter-spacing:0.05em; }

/* ── Sections ── */
.page-ecole-foot .ecole-section { padding:clamp(48px,5vw,64px) var(--fclb-gutter, clamp(20px,5vw,80px)); }
.page-ecole-foot .ecole-section--alt { background:#F5F8F2; }
.page-ecole-foot .ecole-section h2 { font-size:clamp(22px,2vw + 14px,30px); font-family:var(--font-heading); font-weight:700; color:#111; margin:0 0 28px; }

/* ── Responsable ── */
.page-ecole-foot .ecole-resp { display:grid; grid-template-columns:100px 1fr; gap:28px; align-items:center; background:#fff; border:2px solid #2A5C1E; border-radius:14px; padding:28px; }
.page-ecole-foot .ecole-resp__avatar { width:80px; height:80px; border-radius:50%; background:#EAF3DE; display:flex; align-items:center; justify-content:center; font-size:22px; font-weight:700; color:#2A5C1E; }
.page-ecole-foot .ecole-resp__role { font-size:12px; font-weight:600; color:#2A5C1E; text-transform:uppercase; letter-spacing:0.1em; margin:0 0 4px; }
.page-ecole-foot .ecole-resp__nom { font-size:clamp(20px,1.5vw + 14px,24px); font-family:var(--font-heading); font-weight:700; color:#111; margin:0 0 12px; }
.page-ecole-foot .ecole-resp__citation { font-size:clamp(17px,0.9vw + 14px,18px); color:#555; line-height:1.7; font-style:italic; border-left:3px solid #9FDF6A; padding-left:16px; margin:0 0 14px; }
.page-ecole-foot .ecole-resp__contacts { display:flex; gap:18px; flex-wrap:wrap; }
.page-ecole-foot .ecole-resp__tel,
.page-ecole-foot .ecole-resp__email { font-size:clamp(17px,0.9vw + 14px,18px); color:#2A5C1E; font-weight:700; text-decoration:none; }
.page-ecole-foot .ecole-resp__tel:hover,
.page-ecole-foot .ecole-resp__email:hover { text-decoration:underline; }

/* ── Widgets (prochains matchs + classements) ── */
.page-ecole-foot .ecole-widget-embed { border-radius:10px; overflow:hidden; border:0.5px solid #DDE8D5; }
/* ── Coupes & compétitions hors championnat ── */
.page-ecole-foot .ecole-competitions { display:grid; grid-template-columns:repeat(auto-fit, minmax(420px, 1fr)); gap:20px; align-items:start; }
.page-ecole-foot .ecole-competition { display:flex; gap:16px; background:#fff; border:0.5px solid #DDE8D5; border-radius:10px; padding:16px; }
.page-ecole-foot .ecole-competition__affiche { width:90px; height:130px; object-fit:cover; border-radius:8px; flex-shrink:0; }
.page-ecole-foot .ecole-competition__body { flex:1; min-width:0; }
.page-ecole-foot .ecole-competition__header { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:8px; }
.page-ecole-foot .ecole-competition__cat {
  background:#2A5C1E;
  color:#fff;
  font-size:11px;
  font-weight:700;
  padding:3px 12px;
  border-radius:20px;
  font-family:var(--font-heading);
  text-transform:uppercase;
  letter-spacing:0.06em;
  white-space:nowrap;
}
.page-ecole-foot .ecole-competition__titre { font-size:clamp(16px,1vw + 12px,18px); font-family:var(--font-heading); font-weight:700; color:#111; margin:0; }
.page-ecole-foot .ecole-competition__texte { font-size:14px; color:#555; line-height:1.5; margin:0 0 10px; }
.page-ecole-foot .ecole-competition__attente { font-size:13px; color:#999; font-style:italic; margin:0; }
@media (max-width:560px) {
  .page-ecole-foot .ecole-competitions { grid-template-columns:1fr; }
  .page-ecole-foot .ecole-competition { flex-direction:column; }
  .page-ecole-foot .ecole-competition__affiche { width:100%; height:auto; max-width:200px; }
}

/* ── Championnat : matchs (2/3) + classement (1/3) ── */
.page-ecole-foot .ecole-championnat { display:grid; grid-template-columns:2fr 1fr; gap:24px; align-items:start; }
.page-ecole-foot .ecole-championnat__label { font-size:15px; font-family:var(--font-heading); font-weight:700; color:#2A5C1E; margin:0 0 10px; }
@media (max-width:900px) {
  .page-ecole-foot .ecole-championnat { grid-template-columns:1fr; }
}

/* ── Entraînements ── */
.page-ecole-foot .ecole-plannings {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.page-ecole-foot .ecole-planning {
  background: #fff;
  border: 0.5px solid #DDE8D5;
  border-radius: 10px;
  overflow: hidden;
}
.page-ecole-foot .ecole-planning__cat {
  background: #2A5C1E;
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.page-ecole-foot .ecole-planning__badge {
  font-size: 14px;
  font-family: var(--font-heading);
  font-weight: 700;
  color: #fff;
}
.page-ecole-foot .ecole-planning__annees {
  font-size: 11px;
  color: rgba(255,255,255,0.6);
  letter-spacing: 0.04em;
}
.page-ecole-foot .ecole-planning__creneaux {
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.page-ecole-foot .ecole-creneau {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding-bottom: 8px;
  border-bottom: 0.5px solid #EAF3DE;
}
.page-ecole-foot .ecole-creneau:last-child { border-bottom: none; padding-bottom: 0; }
.page-ecole-foot .ecole-creneau__jour {
  font-size: 12px;
  font-weight: 700;
  color: #2A5C1E;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.page-ecole-foot .ecole-creneau__horaire {
  font-size: 16px;
  font-family: var(--font-heading);
  font-weight: 700;
  color: #111;
}
.page-ecole-foot .ecole-creneau__terrain {
  font-size: 11px;
  color: #999;
}
.page-ecole-foot .ecole-creneau__meta {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.page-ecole-foot .ecole-lieu {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px 2px 6px;
  border-radius: 4px;
}
.page-ecole-foot .ecole-lieu::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  flex-shrink: 0;
}
.page-ecole-foot .ecole-lieu--serres-castet { background: #ECEDEC; color: #55584F; }
.page-ecole-foot .ecole-lieu--serres-castet::before { background: #8A8D85; }
.page-ecole-foot .ecole-lieu--sauvagnon { background: rgba(42,92,30,0.12); color: #2A5C1E; }
.page-ecole-foot .ecole-lieu--sauvagnon::before { background: #2A5C1E; }
.page-ecole-foot .ecole-lieux-legende {
  display: flex;
  justify-content: center;
  gap: 24px;
  flex-wrap: wrap;
  margin-top: 20px;
}
.page-ecole-foot .ecole-legende {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #666;
  font-weight: 600;
}
.page-ecole-foot .ecole-legende__puce {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  display: inline-block;
}
.page-ecole-foot .ecole-legende__puce.ecole-lieu--serres-castet { background: #8A8D85; }
.page-ecole-foot .ecole-legende__puce.ecole-lieu--sauvagnon { background: #2A5C1E; }
@media (max-width: 760px) {
  .page-ecole-foot .ecole-plannings { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
  .page-ecole-foot .ecole-plannings { grid-template-columns: 1fr; }
}

/* ── CTA ── */
.page-ecole-foot .ecole-cta { background:#1B2618; padding:clamp(40px,5vw,56px) var(--fclb-gutter, clamp(20px,5vw,80px)); }
.page-ecole-foot .ecole-cta__inner { display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.page-ecole-foot .ecole-cta h2 { font-size:clamp(20px,2vw + 14px,26px); font-family:var(--font-heading); font-weight:700; color:#fff; margin-bottom:6px; }
.page-ecole-foot .ecole-cta p { font-size:clamp(17px,0.9vw + 14px,18px); color:rgba(255,255,255,0.5); margin:0; }
.page-ecole-foot .ecole-cta__btn { background:#9FDF6A; color:#1B2618; font-size:clamp(17px,0.9vw + 14px,18px); font-family:var(--font-heading); font-weight:700; padding:14px 28px; border-radius:6px; text-decoration:none; white-space:nowrap; flex-shrink:0; transition:opacity 0.15s; }
.page-ecole-foot .ecole-cta__btn:hover { opacity:0.85; }

/* ── Éducateurs ── */
.page-ecole-foot .ecole-section--educateurs { background:#F9F9F9; border-top:2px solid #DDE8D5; }
.page-ecole-foot .ecole-educateurs__header { margin-bottom:24px; }
.page-ecole-foot .ecole-cats { display:flex; flex-direction:column; gap:14px; }
.page-ecole-foot .ecole-cat { background:#fff; border:0.5px solid #DDE8D5; border-radius:10px; padding:18px 20px; }
.page-ecole-foot .ecole-cat__badge { display:inline-block; font-size:12px; font-family:var(--font-heading); font-weight:700; text-transform:uppercase; letter-spacing:0.08em; padding:3px 14px; border-radius:20px; margin-bottom:14px; }
.page-ecole-foot .ecole-cat__badge--dark { background:#1B2618; color:#9FDF6A; }
.page-ecole-foot .ecole-cat__badge--green { background:#2A5C1E; color:#fff; }
.page-ecole-foot .ecole-cat__grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(180px,1fr)); gap:10px; }
.page-ecole-foot .ecole-edu { display:flex; align-items:flex-start; gap:8px; }
.page-ecole-foot .ecole-edu__avatar { width:32px; height:32px; border-radius:50%; background:#EAF3DE; display:flex; align-items:center; justify-content:center; font-size:9px; font-weight:700; color:#2A5C1E; flex-shrink:0; }
.page-ecole-foot .ecole-edu__nom { font-size:13px; font-weight:700; color:#111; margin:0 0 2px; font-family:var(--font-heading); }
.page-ecole-foot .ecole-edu__role { font-size:11px; color:#2A5C1E; margin:0 0 1px; }
.page-ecole-foot .ecole-edu__tel { font-size:11px; color:#888; margin:0; }

/* ── Initiatives ── */
.page-ecole-foot .ecole-initiatives { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.page-ecole-foot .ecole-init { background:#fff; border:0.5px solid #DDE8D5; border-top:3px solid #2A5C1E; border-radius:0 0 12px 12px; padding:24px 20px; display:flex; flex-direction:column; }
.page-ecole-foot .ecole-init__header { display:flex; align-items:flex-start; gap:14px; margin-bottom:12px; }
.page-ecole-foot .ecole-init__icone { font-size:28px; line-height:1; flex-shrink:0; }
.page-ecole-foot .ecole-init__titre { font-size:clamp(18px,1.5vw + 14px,20px); font-family:var(--font-heading); font-weight:700; color:#111; margin-bottom:4px; }
.page-ecole-foot .ecole-init__badge { display:inline-block; background:#EAF3DE; color:#2A5C1E; font-size:11px; font-weight:700; padding:2px 10px; border-radius:20px; border:1px solid #C0DD97; text-transform:uppercase; letter-spacing:0.06em; }
.page-ecole-foot .ecole-init__detail { font-size:clamp(17px,0.9vw + 14px,18px); font-weight:600; color:#2A5C1E; margin-bottom:8px; }
.page-ecole-foot .ecole-init__texte { font-size:clamp(17px,0.9vw + 14px,18px); color:#555; line-height:1.65; margin:0 0 12px; flex:1; }
.page-ecole-foot .ecole-init__lien { display:inline-flex; align-items:center; color:#2A5C1E; font-weight:700; font-size:clamp(17px,0.9vw + 14px,18px); text-decoration:none; border-bottom:1px solid #C0DD97; align-self:flex-start; }
.page-ecole-foot .ecole-init__lien:hover { border-bottom-color:#2A5C1E; }

/* ── Responsive ── */
@media (max-width:900px) {
  .page-ecole-foot .ecole-resp { grid-template-columns:1fr; text-align:center; }
  .page-ecole-foot .ecole-resp__avatar { margin:0 auto; }
  .page-ecole-foot .ecole-resp__citation,
  .page-ecole-foot .ecole-resp__contacts { text-align:left; }
}
@media (max-width:560px) {
  .page-ecole-foot .ecole-initiatives { grid-template-columns:1fr; }
  .page-ecole-foot .ecole-cta__inner { flex-direction:column; align-items:flex-start; }
}

/* ── Participations ── */
.page-ecole-foot .ecole-participations { display: flex; flex-direction: column; gap: 24px; }
.page-ecole-foot .ecole-partic-titre { font-size: 13px; font-weight: 700; color: #2A5C1E; text-transform: uppercase; letter-spacing: 0.1em; margin: 0 0 12px; }
.page-ecole-foot .ecole-partic-list { display: flex; flex-direction: column; gap: 8px; }
.page-ecole-foot .ecole-partic {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #fff;
  border: 0.5px solid #DDE8D5;
  border-left: 4px solid #9FDF6A;
  border-radius: 0 8px 8px 0;
  padding: 10px 16px;
  flex-wrap: wrap;
}
.page-ecole-foot .ecole-partic--avenir {
  border-left-color: #2A5C1E;
  background: #EAF3DE;
}
.page-ecole-foot .ecole-partic__cat {
  background: #2A5C1E;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  padding: 2px 10px;
  border-radius: 20px;
  font-family: var(--font-heading);
  white-space: nowrap;
}
.page-ecole-foot .ecole-partic__nom {
  font-size: clamp(17px,0.9vw + 14px,18px);
  font-weight: 700;
  color: #111;
  font-family: var(--font-heading);
  flex: 1;
}
.page-ecole-foot .ecole-partic__date { font-size: 13px; color: #2A5C1E; font-weight: 600; white-space: nowrap; }
.page-ecole-foot .ecole-partic__lieu { font-size: 13px; color: #888; white-space: nowrap; }