/*
 * Shell commun des heroes internes Aqua N'Fit.
 * Les pages ne définissent que --hero-accent, --hero-cta, --hero-cta-rgb,
 * --hero-image et, si nécessaire, --hero-position.
 */
.anf-page-hero{
  --hero-min-height:clamp(620px,72vh,700px);
  --hero-content-width:1180px;
  --hero-title-width:850px;
  --hero-title-size:clamp(68px,8.4vw,124px);
  --hero-title-line-height:.78;
  --hero-button-height:50px;
  position:relative;
  isolation:isolate;
  min-height:var(--hero-min-height)!important;
  display:flex;
  align-items:center!important;
  padding:clamp(92px,10vh,118px) clamp(22px,7vw,92px)!important;
  overflow:hidden;
  color:#fff;
  background-color:#071923;
  background-image:var(--hero-image)!important;
  background-position:var(--hero-position,center)!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}

.anf-page-hero::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background:linear-gradient(90deg,rgba(3,18,27,.91) 0%,rgba(3,18,27,.72) 42%,rgba(3,18,27,.34) 68%,rgba(3,18,27,.14) 100%)!important;
  pointer-events:none;
}

.anf-page-hero::after{
  content:""!important;
  position:absolute!important;
  inset:auto 0 0!important;
  z-index:1!important;
  height:110px!important;
  background:linear-gradient(180deg,rgba(3,18,27,0),rgba(3,18,27,.22))!important;
  pointer-events:none;
}

.anf-page-hero__inner{
  position:relative!important;
  z-index:2!important;
  width:min(100%,var(--hero-content-width))!important;
  max-width:var(--hero-content-width)!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
}

.anf-page-hero__badge{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:36px!important;
  padding:0 14px!important;
  margin:0 0 20px!important;
  border:1px solid rgba(255,255,255,.25)!important;
  border-radius:999px!important;
  color:#fff!important;
  background:rgba(var(--hero-cta-rgb),.22)!important;
  font-family:"Barlow Condensed",Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  backdrop-filter:blur(8px);
}

.anf-page-hero__badge::before{
  content:""!important;
  width:8px!important;
  height:8px!important;
  border-radius:50%!important;
  background:var(--hero-cta)!important;
  box-shadow:0 0 0 5px rgba(var(--hero-cta-rgb),.18)!important;
}

.anf-page-hero .anf-page-hero__title{
  max-width:var(--hero-title-width)!important;
  margin:0 0 22px!important;
  color:#fff!important;
  font-family:"Teko",Impact,"Arial Narrow",sans-serif!important;
  font-size:var(--hero-title-size)!important;
  line-height:var(--hero-title-line-height)!important;
  font-weight:700!important;
  letter-spacing:.03em!important;
  text-transform:uppercase!important;
  text-shadow:0 16px 36px rgba(0,0,0,.32)!important;
}

.anf-page-hero .anf-page-hero__accent{
  display:block;
  color:var(--hero-accent)!important;
  font-family:inherit!important;
  line-height:inherit!important;
  white-space:normal!important;
  margin-top:0!important;
}

.anf-page-hero .anf-page-hero__title > span{white-space:normal!important;}

.anf-page-hero__description{
  max-width:720px!important;
  margin:0!important;
  color:rgba(255,255,255,.92)!important;
  font-size:clamp(15px,1.35vw,18px)!important;
  line-height:1.72!important;
  font-weight:700!important;
  text-shadow:0 12px 28px rgba(0,0,0,.28)!important;
}

.anf-page-hero__actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  margin-top:30px!important;
}

.anf-page-hero__button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:var(--hero-button-height)!important;
  padding:0 24px!important;
  border:1px solid rgba(var(--hero-cta-rgb),.44)!important;
  border-radius:999px!important;
  color:#fff!important;
  background:var(--hero-cta)!important;
  font-family:"Barlow Condensed",Arial,sans-serif!important;
  font-size:15px!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  text-decoration:none!important;
  text-transform:uppercase!important;
  box-shadow:0 14px 30px rgba(var(--hero-cta-rgb),.24)!important;
}

.anf-page-hero__button--secondary{
  border-color:rgba(255,255,255,.34)!important;
  background:rgba(255,255,255,.08)!important;
  box-shadow:none!important;
  backdrop-filter:blur(8px);
}

@media(max-width:1100px){
  .anf-page-hero{
    --hero-min-height:clamp(560px,68vh,620px);
    --hero-title-size:clamp(60px,9vw,96px);
    padding:88px 28px 96px!important;
  }
  .anf-page-hero__inner{max-width:980px!important;}
}

@media(max-width:640px){
  .anf-page-hero{
    --hero-min-height:clamp(560px,72svh,640px);
    --hero-title-size:clamp(52px,15vw,78px);
    --hero-title-line-height:.82;
    align-items:center!important;
    height:auto!important;
    padding:82px 18px 88px!important;
  }
  .anf-page-hero__badge{min-height:34px!important;margin-bottom:18px!important;font-size:13px!important;}
  .anf-page-hero .anf-page-hero__title{margin-bottom:20px!important;}
  .anf-page-hero__description{font-size:15px!important;line-height:1.65!important;}
  .anf-page-hero__actions{flex-direction:column!important;margin-top:26px!important;}
  .anf-page-hero__button{width:100%!important;max-width:340px!important;}
}
