/* CrossFit Artio · Accueil éditorial V2.7
   Se superpose aux styles V2.6 sans modifier les autres pages. */

.v2-site .hero-content{
  min-height:610px;
  padding-top:78px;
  padding-bottom:76px;
}
.v2-site .hero h1{margin-bottom:19px}
.v2-site .hero-content>p.hero-lede{
  max-width:730px;
  margin:0;
  color:#fff;
  font-size:clamp(19px,2.3vw,27px);
  font-weight:780;
  line-height:1.32;
  letter-spacing:-.025em;
}
.v2-site .hero-content>p.hero-support{
  max-width:600px;
  margin:11px 0 0;
  color:#e0eaf5;
  font-size:16px;
  line-height:1.6;
  font-weight:430;
}
.v2-site .hero-buttons{margin-top:28px}
/* The three values form one editorial panel, not three new action buttons. */
.v2-site .hero-markers{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  width:min(700px,100%);
  margin:32px 0 0;
  padding:7px;
  list-style:none;
  color:#fff;
  background:rgba(5,22,44,.63);
  border:1px solid rgba(255,255,255,.34);
  border-radius:20px;
  box-shadow:0 15px 35px rgba(2,12,29,.20);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
}
.v2-site .hero-markers .hero-feature{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
  gap:6px;
  padding:13px 17px;
  text-align:left;
}
.v2-site .hero-markers .hero-feature+.hero-feature{border-left:1px solid rgba(255,255,255,.22)}
.v2-site .hero-markers .hero-feature>.ico{width:25px;height:25px;color:#bce4fa}
.v2-site .hero-markers .hero-feature strong{
  color:#fff;
  font-size:15px;
  line-height:1.25;
  font-weight:830;
  letter-spacing:-.025em;
}
.v2-site .hero-markers .hero-feature small{
  color:#d9e8f8;
  font-size:12px;
  line-height:1.3;
  font-weight:550;
}

/* Contenu éditorial : du contexte, pas de nouvelles cartes-boutons. */
.v2-site .home-intro-section{background:#fff;padding:73px 0 56px}
.v2-site .home-intro{
  display:grid;
  grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
  gap:clamp(28px,6vw,90px);
  align-items:center;
}
.v2-site .home-intro .kicker{display:block;margin-bottom:15px}
.v2-site .home-intro h2{
  margin:0;
  font-size:clamp(36px,4.8vw,59px);
  line-height:1.07;
  font-weight:870;
  letter-spacing:-.065em;
}
.v2-site .home-intro h2 em{font-style:normal;color:#1767ae}
.v2-site .home-intro-text p{
  margin:0 0 13px;
  color:#536477;
  font-size:clamp(15px,1.45vw,17px);
  line-height:1.7;
}
.v2-site .home-intro-text p:first-child{color:#24384d}
.v2-site .home-intro-link{
  display:inline-flex;
  gap:9px;
  align-items:center;
  margin-top:8px;
  color:#125d9e;
  font-size:13px;
  font-weight:810;
}
.v2-site .home-intro-link .ico{width:17px;height:17px}
.v2-site .home-intro-link:hover{text-decoration:underline;text-underline-offset:4px}

/* Deux bandeaux éditoriaux conservés avant le planning. */
.v2-site .home-banners-section{padding:10px 0 43px}
.v2-site .home-banners .home-banner{min-height:90px;padding:18px 20px}
.v2-site .home-banners .home-banner-copy{gap:5px}
.v2-site .home-banners .home-banner-copy small{font-size:12px;line-height:1.45}
.v2-site .schedule-section{padding-top:62px}

@media(max-width:720px){
  .v2-site .hero-photo{background-position:54% center}
  .v2-site .hero-content{
    min-height:clamp(490px,63svh,650px);
    padding-top:39px;
    padding-bottom:41px;
    justify-content:center;
  }
  .v2-site .hero h1{
    font-size:clamp(44px,10.6vw,58px);
    line-height:.97;
    margin:15px 0 19px;
  }
  .v2-site .hero-content>p.hero-lede{
    font-size:clamp(18px,4.8vw,22px);
    line-height:1.28;
  }
  .v2-site .hero-content>p.hero-support{
    font-size:13px;
    line-height:1.55;
    margin-top:9px;
  }
  .v2-site .hero-buttons{margin-top:21px;gap:9px}
  .v2-site .hero-buttons .button{min-height:47px;padding:11px 12px;font-size:12px}
  .v2-site .hero-content{min-height:clamp(555px,72svh,760px)}
  .v2-site .hero-markers{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    width:100%;
    margin-top:25px;
    padding:5px;
    border-radius:18px;
    background:rgba(3,20,42,.72);
  }
  .v2-site .hero-markers .hero-feature{
    align-items:center;
    justify-content:flex-start;
    gap:9px;
    padding:14px 6px 13px;
    text-align:center;
  }
  .v2-site .hero-markers .hero-feature>.ico{width:28px;height:28px}
  .v2-site .hero-markers .hero-feature strong{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    font-size:12px;
    line-height:1.25;
  }
  .v2-site .hero-markers .hero-feature small{
    font-size:10px;
    line-height:1.35;
    color:#e0efff;
  }
  .v2-site .home-intro-section{padding:46px 0 35px}
  .v2-site .home-intro{grid-template-columns:minmax(0,1fr);gap:19px}
  .v2-site .home-intro .kicker{font-size:10px;margin-bottom:12px}
  .v2-site .home-intro h2{font-size:clamp(34px,8.1vw,45px);line-height:1.09}
  .v2-site .home-intro-text p{font-size:14px;line-height:1.65;margin-bottom:10px}
  .v2-site .home-banners-section{padding:5px 0 37px}
  .v2-site .home-banners .home-banner{min-height:72px;padding:12px 14px;gap:12px}
  .v2-site .home-banners .home-banner-copy strong{font-size:16px}
  .v2-site .home-banners .home-banner-copy small{font-size:11px;line-height:1.35}
  .v2-site .schedule-section{padding-top:38px}
}
@media(max-width:380px){
  .v2-site .hero h1{font-size:clamp(39px,10.4vw,47px)}
  .v2-site .hero-content>p.hero-lede{font-size:18px}
  .v2-site .hero-buttons .button{font-size:11px;padding-inline:8px}
  .v2-site .hero-markers{margin-top:21px}
  .v2-site .hero-markers .hero-feature{padding:12px 4px;gap:7px}
  .v2-site .hero-markers .hero-feature>.ico{width:25px;height:25px}
  .v2-site .hero-markers .hero-feature strong{font-size:11.5px}
  .v2-site .hero-markers .hero-feature small{font-size:9.5px}
}
@media(max-width:340px){
  .v2-site .hero-buttons{gap:6px}
  .v2-site .hero-buttons .button{font-size:10.5px;padding:8px 7px}
}
@media(prefers-reduced-motion:reduce){
  .v2-site .home-intro-link{transition:none}
}

/* With the redundant visible label removed, keep the category select aligned. */
@media(max-width:420px){
  .v2-site .schedule-filter{width:auto;justify-content:flex-end;margin-left:auto}
  .v2-site .schedule-filter select{width:auto;min-width:145px;max-width:100%}
}
