/* ANFPG Site Manager 6.1.15 — stabilité des actions finales des formulaires publics. */
.anfpg-public-form .anfpg-form-final-actions{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:18px !important;
  width:100% !important;
  margin-top:24px !important;
  padding-top:6px !important;
  overflow:visible !important;
  visibility:visible !important;
  opacity:1 !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  position:relative !important;
  z-index:2 !important;
}
.anfpg-public-form .anfpg-form-final-actions .anfpg-consent{
  width:100% !important;
  margin:0 !important;
}
.anfpg-public-form .anfpg-form-final-actions > button[type="submit"],
.anfpg-public-form .anfpg-form-final-actions .anfpg-form-wizard-nav button[type="submit"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  visibility:visible !important;
  opacity:1 !important;
  position:static !important;
  float:none !important;
  width:auto !important;
  min-width:220px !important;
  min-height:52px !important;
  margin:0 !important;
  padding:14px 24px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#124ea2 !important;
  color:#fff !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  cursor:pointer !important;
  box-shadow:0 10px 25px rgba(18,78,162,.22) !important;
}
.anfpg-public-form .anfpg-form-final-actions > button[type="submit"]:hover,
.anfpg-public-form .anfpg-form-final-actions .anfpg-form-wizard-nav button[type="submit"]:hover{
  filter:brightness(.96);
}
.anfpg-public-form .anfpg-form-final-actions button[type="submit"]:disabled{
  opacity:.68 !important;
  cursor:wait !important;
}
@media (max-width:640px){
  .anfpg-public-form .anfpg-form-final-actions{
    gap:14px !important;
    margin-top:18px !important;
  }
  .anfpg-public-form .anfpg-form-final-actions > button[type="submit"],
  .anfpg-public-form .anfpg-form-final-actions .anfpg-form-wizard-nav,
  .anfpg-public-form .anfpg-form-final-actions .anfpg-form-wizard-nav button[type="submit"]{
    width:100% !important;
    min-width:0 !important;
  }
}


/* ANFPG Site Manager 6.1.17 — correctif définitif du submit d’adhésion sur desktop.
   Le thème masque .anfpg-form-wizard-nav par défaut. Le bouton submit du formulaire
   d’adhésion étant dans la navigation finale, son parent doit être explicitement visible. */
.anfpg-public-form--membership .anfpg-form-final-actions .anfpg-form-wizard-nav--final{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:12px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  visibility:visible !important;
  opacity:1 !important;
}
@media (min-width:761px){
  .anfpg-public-form--membership .anfpg-form-final-actions .anfpg-form-wizard-nav--final [data-form-prev]{
    display:none !important;
  }
  .anfpg-public-form--membership .anfpg-form-final-actions .anfpg-form-wizard-nav--final button[type="submit"]{
    display:inline-flex !important;
    margin-left:auto !important;
  }
}
@media (max-width:760px){
  .anfpg-public-form--membership.is-mobile-wizard .anfpg-form-final-actions[hidden]{
    display:none !important;
  }
  .anfpg-public-form--membership.is-mobile-wizard .anfpg-form-wizard-nav--final{
    display:flex !important;
  }
}


/* ANFPG Site Manager 6.1.30 — formulaire d’adhésion allégé. */
.anfpg-fee-title{
  font-size:clamp(28px,3vw,42px) !important;
  line-height:1.08 !important;
  margin-top:28px !important;
  margin-bottom:14px !important;
}
.anfpg-fee-table{
  width:min(100%,960px) !important;
  margin:0 auto 32px !important;
}
.anfpg-fee-table table{
  width:100% !important;
  font-size:17px !important;
  line-height:1.3 !important;
}
.anfpg-fee-table td{
  padding:11px 16px !important;
}
.anfpg-fee-table td:last-child{
  width:34% !important;
  white-space:nowrap !important;
}
.anfpg-e-signature{
  margin-top:18px !important;
  padding:16px 18px !important;
  border:1px solid rgba(8,43,84,.14) !important;
  border-radius:16px !important;
  background:rgba(8,43,84,.035) !important;
}
.anfpg-e-signature strong{
  color:#082b54;
}
@media (max-width:640px){
  .anfpg-fee-title{font-size:30px !important;margin-top:22px !important;margin-bottom:10px !important;}
  .anfpg-fee-table{margin-bottom:24px !important;}
  .anfpg-fee-table table{font-size:14px !important;}
  .anfpg-fee-table td{padding:9px 10px !important;}
  .anfpg-fee-table td:last-child{width:38% !important;}
  .anfpg-e-signature{padding:14px !important;}
}

/* ANFPG 6.1.33 — champs conditionnels situation sportive */
.anfpg-form-field[hidden]{display:none!important}


/* ANFPG Site Manager 6.1.40 — cotisations en bloc dépliant. */
.anfpg-fee-accordion{
  width:min(100%,960px) !important;
  margin:24px auto 30px !important;
  border:1px solid rgba(8,43,84,.14) !important;
  border-radius:18px !important;
  background:#fff !important;
  overflow:hidden !important;
}
.anfpg-fee-accordion > summary{
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  min-height:66px !important;
  padding:16px 20px !important;
  color:#082b54 !important;
  font-size:clamp(22px,2.3vw,30px) !important;
  line-height:1.15 !important;
  font-weight:800 !important;
  cursor:pointer !important;
  list-style:none !important;
  user-select:none !important;
}
.anfpg-fee-accordion > summary::-webkit-details-marker{display:none !important;}
.anfpg-fee-accordion > summary::after{
  content:"Voir les tarifs  +";
  margin-left:auto;
  flex:0 0 auto;
  color:#147a55;
  font-size:14px;
  font-weight:700;
  letter-spacing:.01em;
}
.anfpg-fee-accordion[open] > summary{
  border-bottom:1px solid rgba(8,43,84,.10) !important;
}
.anfpg-fee-accordion[open] > summary::after{
  content:"Masquer  −";
}
.anfpg-fee-accordion .anfpg-fee-table{
  width:100% !important;
  margin:0 !important;
}
.anfpg-fee-accordion .anfpg-fee-table table{
  margin:0 !important;
}
@media (max-width:640px){
  .anfpg-fee-accordion{
    margin:18px auto 24px !important;
    border-radius:15px !important;
  }
  .anfpg-fee-accordion > summary{
    min-height:58px !important;
    padding:14px 15px !important;
    gap:10px !important;
    font-size:20px !important;
  }
  .anfpg-fee-accordion > summary::after{
    content:"+";
    font-size:24px;
    line-height:1;
  }
  .anfpg-fee-accordion[open] > summary::after{
    content:"−";
  }
}
