/* ══════════════════════════════════════
   ACCUEIL · section d'ouverture seule, sur toute la hauteur de l'écran
   Le programme de la séance est sur la page Agenda.
══════════════════════════════════════ */

.home-hero{
  position:relative;overflow:hidden;display:grid;align-items:center;
  min-height:calc(100vh - var(--header-h));min-height:calc(100svh - var(--header-h));
  padding:clamp(2rem,4vw,3.5rem) 0;
  background:
    radial-gradient(70rem 36rem at 90% 0%,rgba(198,154,214,.32),transparent 60%),
    radial-gradient(50rem 30rem at 0% 100%,rgba(253,188,150,.32),transparent 62%),
    linear-gradient(var(--bg-2),var(--bg));
}
.home-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:2.5rem;align-items:center}
.home-hero-text{display:grid;gap:1.35rem;justify-items:start}
.home-hero-text h1{font-size:clamp(2.6rem,5.2vw,4.4rem)}
.home-hero-text .lead{max-width:34ch}
.hero-ctas{display:flex;flex-wrap:wrap;gap:.8rem}

.home-hero-visual{position:relative;min-height:30rem;display:grid;place-items:center}
.halo{
  position:absolute;width:min(31rem,92%);aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle at 40% 35%,#fff 0,rgba(244,233,246,.95) 45%,rgba(198,154,214,.35) 100%);
  border:1px solid rgba(158,85,157,.16);
}
.halo::before{content:"";position:absolute;inset:-2.4rem;border-radius:50%;border:1px dashed rgba(158,85,157,.22);animation:spin 60s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.hero-illu{position:relative;z-index:2;width:min(34rem,100%);filter:drop-shadow(0 30px 40px rgba(94,43,93,.18))}

/* cartes flottantes, décalées pour ne pas couvrir les visages */
.fc-trained{top:8%;right:-2%;flex-direction:column;align-items:flex-start;gap:.1rem;animation-delay:-1s}
.fc-trained .fc-num{font-family:var(--serif);font-size:2.3rem;font-weight:700;line-height:1;color:var(--violet)}
.fc-orient{bottom:16%;left:-4%;animation-delay:-3s}
.fc-free{bottom:2%;right:4%;animation-delay:-4.5s}

@media (max-width:980px){
  .home-hero-grid{grid-template-columns:1fr}
  .home-hero-visual{min-height:24rem}
}
@media (max-width:640px){
  .fc-trained{right:0}
  .fc-orient{left:0}
}

/* ══════════════════════════════════════
   En mode « écran unique » (voir commun.css, classe is-stage) :
   l'illustration repose sur la ligne des logos, le cercle de fond est posé en bas, derrière elle.
══════════════════════════════════════ */
@media (min-width:900px) and (orientation:landscape){
  .is-home .home-hero{min-height:0;height:100%;padding:0;align-items:stretch}
  .is-home .home-hero-grid{height:100%;align-items:stretch}
  .is-home .home-hero-text{align-self:center;padding-block:1.2rem}
  .is-home .home-hero-visual{min-height:0;height:100%;align-items:end;padding-top:1.5rem}
  .is-home .hero-illu{width:auto;height:min(34rem,100%);object-fit:contain;object-position:bottom;align-self:end;filter:none}
  /* cercle un peu plus petit que l'illustration, dont le bas touche la ligne des logos */
  .is-home .halo{width:auto;height:min(28rem,78%);left:50%;bottom:0;top:auto;translate:-50% 0}
  .is-home .fc-trained{top:auto;bottom:72%;right:-1%}
  .is-home .fc-orient{bottom:18%;left:2%}
}

/* thème sombre : le cercle de fond reste discret */
:root[data-theme="dark"] .halo{
  background:radial-gradient(circle at 40% 35%,rgba(198,154,214,.30) 0,rgba(158,85,157,.18) 55%,rgba(158,85,157,.08) 100%);
  border-color:rgba(198,154,214,.18);
}
:root[data-theme="dark"] .halo::before{border-color:rgba(198,154,214,.22)}
:root[data-theme="dark"] .home-hero{
  background:
    radial-gradient(70rem 36rem at 90% 0%,rgba(158,85,157,.24),transparent 60%),
    radial-gradient(50rem 30rem at 0% 100%,rgba(205,92,92,.10),transparent 62%),
    linear-gradient(var(--bg-2),var(--bg));
}

/* palette adoucie : halos de l'ouverture plus discrets */
.home-hero{
  background:
    radial-gradient(70rem 36rem at 90% 0%,rgba(198,154,214,.18),transparent 60%),
    radial-gradient(50rem 30rem at 0% 100%,rgba(253,188,150,.18),transparent 62%),
    linear-gradient(var(--bg-2),var(--bg));
}
.halo{background:radial-gradient(circle at 40% 35%,var(--surface) 0,var(--violet-soft) 50%,rgba(198,154,214,.28) 100%)}
:root[data-theme="dark"] .home-hero{
  background:
    radial-gradient(70rem 36rem at 90% 0%,rgba(169,108,168,.16),transparent 60%),
    linear-gradient(var(--bg-2),var(--bg));
}
:root[data-theme="dark"] .halo{background:radial-gradient(circle at 40% 35%,rgba(198,154,214,.2) 0,rgba(158,85,157,.12) 55%,rgba(158,85,157,.05) 100%)}

/* objectifs de la séance, sous le titre */
.objectives-block{display:grid;gap:.7rem;max-width:34rem}
.objectives-block .lead{font-size:1.08rem;max-width:none;font-weight:600;color:var(--ink)}
.objectives{list-style:none;display:grid;gap:.5rem}
.objectives li{display:grid;grid-template-columns:1.9rem 1fr;gap:.7rem;align-items:center;font-size:.98rem;line-height:1.4;color:var(--ink-2)}
.objectives .i{
  width:1.9rem;height:1.9rem;padding:.42rem;border-radius:.6rem;
  background:var(--violet-soft);color:var(--violet);
}
