/* Fonts */
.noto { font-family: "Noto Sans", Sans-serif;}
/* Grid */
.row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}
@media (min-width: 768px) {
.col-md-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-md-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-md-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-md-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-md-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-md-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-md-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-md-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-md-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}
a { color: #259fbf;}
.text-center { text-align: center;}
.text-right { text-align:right;}
.my-3 { margin-top:15px; margin-bottom: 15px;}
.mt-3 { margin-top: 15px;}
.mt-4 { margin-top: 20px;}
.mt-2 { margin-top:10px;}
.mb-1 { margin-bottom: 5px;}
.mb-2 { margin-bottom: 10px;}
.mb-3 { margin-bottom: 15px;}
.w100 { width: 100%;}
.disabled { display: none;}
.enabled { display: block;}
.underlined, .elementor a.underlined { text-decoration: underline;}
/** Flex box */
.flex { display: flex;}
.flex-row { flex-direction: row;}
.flex-column { flex-direction: column;}
.justify-content-start { justify-content: start;}
.justify-content-between { justify-content: space-between;}
.align-items-center { align-items: center;}
.align-items-end { align-items: flex-end;}
.align-items-start { align-items: flex-start;}
.justify-content-between { justify-content: space-between;}
/* Form */
.form-group { margin-bottom: 20px;}
.form-field { width: 60%;}
.labelinline { width: 40%; }
.form-field37 { width: 30%;}
.labelinline37 { width: 70%; }
.form-control { appearance: none !important; padding: 8px !important; background-color: #fff; border: 1px solid #dde2ef; color:#231f20 !important; accent-color:transparent !important;}
.form-control:focus-visible { border: none !important; accent-color: transparent !important;}
.simulateurform label {color:#231f20 !important;}
.simulateurform .formbtns { margin:20px 0 10px;}

#simuler { display: block; padding: 20px;}
#sim-head { padding: 15px 0;}
#titreetape { width: 50%; font-size: 20px; font-weight: 400;}
#jaugeetape { width: 50%;}
#simniv { height: 16px; background-color: #f4f5f9; border-radius:4px; padding: 3px;}
.jauge { height: 10px; border-radius:4px; background: url(../images/jauge-etape.png) 0 0 repeat-x;}
.jetape1 { width:16.66%; }
.jetape2 { width:33.32%; }
.jetape3 { width:49.98%; }
.jetape4 { width:66.64%; }
.jetape5 { width:83.3%; }
.jetape6 { width:100%; }
#sim-formbloc { margin: 20px 0; position: relative;}
.valmoney { font-size: 28px; color: #83c341; font-weight: bold; text-align: center;}
.formetape .txtbox { color:#eda92d; font-size: 20px; margin-left: 15px;}

.cbw20 { width: 50px;}

.boxbtn-gauche { width: 50%;}
.boxbtn-droite { width: 50%;}
.bouton { display: inline;}
.btn-precedent { width: 140px; height: 48px; background: transparent url(../images/btn-precedent.png) 50% 50% no-repeat !important; box-shadow: none !important;}
.btn-suivant { width: 140px; height: 48px; background: transparent url(../images/btn-suivant.png) 50% 50% no-repeat !important; box-shadow: none !important;}
.btn-rapport::before { display: block; content: ''; width: 27px; height: 28px; background: url(../images/icone_pdf.png); position: absolute; left: 10px; top: 13px;}
.formbtns button.btn-rapport { position:relative; padding: 13px 10px 13px 40px ;}

/*Error sur les champs*/
.form-control.fieldError { border-color: #fa3b3b !important;}
.formMated label.radio.fieldError::before { border-color: #fa3b3b !important;}

/*Mise en forme du formulaire */
.formMated input[type="radio"] {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px !important;
  overflow: hidden;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
}

.formMated label.radio {
  color: #f00;
  display: inline-flex;
  align-items: center;
}

.formMated label.radio::before {
  content: '';
  display: block;
  height: 1.25em;
  width: 1.25em;
  border: solid 1px #dde2ef;
  border-radius: 50%;
  margin-right: 0.5em;
  transition: border ease-in 150ms, box-shadow ease-in 150ms;
}

.formMated input[type="radio"]:checked + label.radio,
.formMated input[type="radio"]:focus + label.radio {
  color: #231f20;
}

.formMated input[type="radio"]:checked + label::before {
  background: radial-gradient(0.5em circle at center, #259fbf 50%, #fff 50%);
  box-shadow: 0 0 1em 0 rgba(10, 150, 255, 0.75);
  border-color: currentColor;
}

.formMated input[type="radio"]:focus + label.radio::before {
  box-shadow: 0 0 1em 0 rgba(10, 150, 255, 0.75);
  border-color: currentColor;
}

/*Animation loader*/
#sim-loader { position: absolute; top: 50%; left: 50%;}
.loader {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  position: relative;
  animation: RotaRyX 1s linear infinite
}
.loader::before , .loader::after {
  content: "";
  box-sizing: border-box;
  position: absolute;
  inset: 0px;
  border-radius: 50%;
  border: 5px solid #83c341;
  animation: rotaRy 2s linear infinite ;
}
.loader::after{
  inset: 8px;
  transform: rotate3d(90, 90, 0, 180deg );
  border-color: #259fbf;
}

@keyframes RotaRyX {
  0%   {transform: rotate(0deg)}
  100%   {transform: rotate(360deg)}
}

@keyframes rotaRy {
  0%   {clip-path:polygon(50% 50%,0 0,0 0,0 0,0 0,0 0)}
  50%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 0,100% 0,100% 0)}
  75%, 100%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,100% 100%,100% 100%)}
}
