.elementor-3265 .elementor-element.elementor-element-e7954b7{--display:flex;--min-height:50vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:2%;--padding-bottom:2%;--padding-left:10%;--padding-right:10%;}.elementor-3265 .elementor-element.elementor-element-e7954b7:not(.elementor-motion-effects-element-type-background), .elementor-3265 .elementor-element.elementor-element-e7954b7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EFF5FF;}.elementor-3265 .elementor-element.elementor-element-e4650c5 .elementor-button{background-color:#DBEAFE;font-weight:500;fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-style:solid;border-color:#DBEAFE;border-radius:12px 12px 12px 12px;padding:5px 5px 5px 5px;}.elementor-3265 .elementor-element.elementor-element-546a60a{text-align:center;}.elementor-3265 .elementor-element.elementor-element-546a60a .elementor-heading-title{font-size:50px;font-weight:700;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f{margin:2% 15% calc(var(--kit-widget-spacing, 0px) + 2%) 15%;--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-field-group.recaptcha_v3-bottomleft, .elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-field-type-html{padding-bottom:0px;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-button[type="submit"]{color:#ffffff;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-3265 .elementor-element.elementor-element-a0e1c5f .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-3265 .elementor-element.elementor-element-cbff853{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-3265 .elementor-element.elementor-element-b675493 .elementor-heading-title{font-size:34px;font-weight:700;color:#000000;}.elementor-3265 .elementor-element.elementor-element-274b44b{text-align:center;font-size:18px;font-weight:400;color:#5E6873;}:root{--page-title-display:none;}@media(min-width:1600px){.elementor-3265 .elementor-element.elementor-element-a0e1c5f{margin:2% 25% calc(var(--kit-widget-spacing, 0px) + 2%) 25%;}}@media(max-width:767px){.elementor-3265 .elementor-element.elementor-element-546a60a .elementor-heading-title{font-size:30px;}.elementor-3265 .elementor-element.elementor-element-cbff853{--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-3265 .elementor-element.elementor-element-b675493{text-align:center;}}/* Start custom CSS for container, class: .elementor-element-e7954b7 *//* === FV Packages — centered, responsive, high-specificity override === */
.elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages{
  --pkg-blue:#145CFC;
  --pkg-black:#000;
  --pkg-border:#E5E7EB;
  --pkg-shadow:0 0 0 3px rgba(20,92,252,.15);
  width:100%;
}

/* Center the subgroup and cap its width */
.elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-subgroup{
  display:grid !important;
  gap:16px !important;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)) !important;
  max-width: 1080px !important;
  margin-inline:auto !important;  /* centers in the form */
  align-items:stretch !important;
  justify-items:stretch !important;
}

/* Each option behaves like a card */
.elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-option{
  position:relative !important;
}

/* Make the whole card clickable but keep native radio for accessibility/submissions */
.elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-option input[type="radio"]{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  opacity:0 !important;
  cursor:pointer !important;
  margin:0 !important;
}

/* Card style (minimal) */
.elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-option label{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:center !important;
  gap:8px !important;
  width:100% !important;
  min-height:160px !important;
  padding:18px 16px !important;
  border:1px solid var(--pkg-border) !important;
  border-radius:14px !important;
  background:#fff !important;
  color:var(--pkg-black) !important;
  text-align:center !important;
  font-weight:600 !important;
  line-height:1.35 !important;
  box-shadow:none !important;
  transition:border-color .15s ease, box-shadow .15s ease !important;
}

/* Remove any pseudo decoration some themes inject */
.elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-option label::before{
  content:none !important;
}

/* No hover background changes (kept minimal) */
.elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-option label:hover{
  border-color:#CBD5E1 !important;
  transform:none !important;
  box-shadow:none !important;
}

/* Selected state */
.elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-option input[type="radio"]:checked + label{
  border-color:var(--pkg-blue) !important;
  box-shadow:var(--pkg-shadow) !important;
}

/* Focus ring for keyboard users */
.elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-option input[type="radio"]:focus-visible + label{
  outline:3px solid rgba(20,92,252,.35) !important;
  outline-offset:2px !important;
}

/* Little radio indicator (top-right) */
.elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-option label::after{
  content:"" !important;
  position:absolute !important;
  top:10px; right:10px;
  width:18px; height:18px;
  border-radius:50%;
  background:#fff;
  border:2px solid #CBD5E1;
  box-shadow:0 0 0 1px rgba(0,0,0,.02) inset;
}
.elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-option input[type="radio"]:checked + label::after{
  border-color:var(--pkg-blue) !important;
  box-shadow:inset 0 0 0 6px var(--pkg-blue) !important;
}

/* Typography tweaks inside labels (if your labels contain two lines like "Titre — Prix") */
.elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-option label > strong{
  font-size:1.05rem !important;
}
.elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-option label > em{
  font-size:1.12rem !important; font-style:normal !important; font-weight:700 !important;
}

/* Responsive refinements */
@media (max-width:1200px){
  .elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-subgroup{
    max-width: 940px !important;
  }
}
@media (max-width:1024px){
  .elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-subgroup{
    grid-template-columns:repeat(2, minmax(220px, 1fr)) !important;
    max-width: 720px !important;
  }
}
@media (max-width:640px){
  .elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-subgroup{
    grid-template-columns:1fr !important;
    max-width: 520px !important;
  }
  .elementor .elementor-widget-form .elementor-form .elementor-field-group-fvpackages .elementor-field-option label{
    min-height:140px !important;
    padding:16px 14px !important;
  }
}/* End custom CSS */