.elementor-18632 .elementor-element.elementor-element-3ede4c00{--display:flex;--justify-content:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:20px 20px 20px 20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-18632 .elementor-element.elementor-element-29a13ace{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-end;--gap:5% 5%;--row-gap:5%;--column-gap:5%;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-18632 .elementor-element.elementor-element-6e37e359{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-18632 .elementor-element.elementor-element-6e37e359.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-18632 .elementor-element.elementor-element-6669c50{--display:flex;--min-height:37vh;--justify-content:space-between;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--border-radius:15px 15px 15px 15px;box-shadow:0px 0px 10px 0px rgba(0, 0, 0, 0.15);--e-con-transform-transition-duration:600ms;}.elementor-18632 .elementor-element.elementor-element-6669c50:not(.elementor-motion-effects-element-type-background), .elementor-18632 .elementor-element.elementor-element-6669c50 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-18632 .elementor-element.elementor-element-6669c50.e-con:hover{--e-con-transform-scale:0.985;}.elementor-18632 .elementor-element.elementor-element-6669c50:hover{box-shadow:0px 0px 15px 0px rgba(0, 0, 0, 0.25);}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-18632 .elementor-element.elementor-element-2a1b91bf > .elementor-widget-container{margin:0px 0px -30px 0px;}.elementor-18632 .elementor-element.elementor-element-2a1b91bf{text-align:center;font-family:"Space Grotesk", Sans-serif;font-weight:400;text-transform:uppercase;}.elementor-18632 .elementor-element.elementor-element-61aacc9c > .elementor-widget-container{margin:0px 0px -20px 0px;}.elementor-18632 .elementor-element.elementor-element-61aacc9c{text-align:center;font-family:"Space Grotesk", Sans-serif;font-size:34px;font-weight:900;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-18632 .elementor-element.elementor-element-62f2468e{--divider-border-style:solid;--divider-color:#CCCCCC78;--divider-border-width:1px;}.elementor-18632 .elementor-element.elementor-element-62f2468e .elementor-divider-separator{width:100%;}.elementor-18632 .elementor-element.elementor-element-62f2468e .elementor-divider{padding-block-start:5px;padding-block-end:5px;}.elementor-18632 .elementor-element.elementor-element-6a4c32d1 > .elementor-widget-container{margin:0px 0px -30px 0px;}.elementor-18632 .elementor-element.elementor-element-6a4c32d1{text-align:center;font-family:"Space Grotesk", Sans-serif;font-size:14px;font-weight:400;text-transform:uppercase;}.elementor-18632 .elementor-element.elementor-element-6506f6fc > .elementor-widget-container{margin:-5px 0px -30px 0px;}.elementor-18632 .elementor-element.elementor-element-6506f6fc{text-align:center;font-family:"Space Grotesk", Sans-serif;font-size:25px;font-weight:900;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.elementor-18632 .elementor-element.elementor-element-25a7e7aa .elementor-button{background-color:#FFFFFF;font-family:"Space Grotesk", Sans-serif;font-size:14px;font-weight:600;line-height:1.6em;fill:#000000;color:#000000;transition-duration:0.4s;border-style:solid;border-width:1px 1px 1px 1px;border-color:#000000;border-radius:100px 100px 100px 100px;padding:12px 12px 12px 12px;}.elementor-18632 .elementor-element.elementor-element-25a7e7aa .elementor-button:hover, .elementor-18632 .elementor-element.elementor-element-25a7e7aa .elementor-button:focus{background-color:#000000;color:#FFFFFF;}.elementor-18632 .elementor-element.elementor-element-25a7e7aa > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-18632 .elementor-element.elementor-element-25a7e7aa .elementor-button:hover svg, .elementor-18632 .elementor-element.elementor-element-25a7e7aa .elementor-button:focus svg{fill:#FFFFFF;}.elementor-18632 .elementor-element.elementor-element-cc6b949 > .elementor-widget-container{margin:-10px 0px -30px 0px;}.elementor-18632 .elementor-element.elementor-element-cc6b949{text-align:center;font-family:"Space Grotesk", Sans-serif;font-size:11px;font-weight:500;}.elementor-18632 .elementor-element.elementor-element-45a08765 > .elementor-widget-container{margin:0px 0px 0px 0px;}@media(min-width:768px){.elementor-18632 .elementor-element.elementor-element-3ede4c00{--width:100%;}.elementor-18632 .elementor-element.elementor-element-6e37e359{--width:50%;}.elementor-18632 .elementor-element.elementor-element-6669c50{--width:50%;}}@media(max-width:1024px){.elementor-18632 .elementor-element.elementor-element-29a13ace{--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-18632 .elementor-element.elementor-element-6669c50{--min-height:30vh;--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}}@media(max-width:767px){.elementor-18632 .elementor-element.elementor-element-29a13ace{--gap:35px 35px;--row-gap:35px;--column-gap:35px;}.elementor-18632 .elementor-element.elementor-element-6e37e359{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-18632 .elementor-element.elementor-element-6669c50{--width:94%;--min-height:0vh;--margin-top:auto;--margin-bottom:auto;--margin-left:3%;--margin-right:3%;--padding-top:30px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-18632 .elementor-element.elementor-element-cc6b949 > .elementor-widget-container{margin:0px 0px -10px 0px;}}/* Start custom CSS for html, class: .elementor-element-31920a4a *//* Label + valeur sur la même ligne */
.simu-inline {
  display: flex;
  align-items: center;
  gap: 4px;
}

#taux-field .no-mb {
  margin: 0;
  display: inline;
  min-width: 150px;
}

/* Wrapper valeur + unité */
#taux-field .taux-value {
  display: inline-flex;
  align-items: baseline;
  gap: 2px;
}

/* Input qui ressemble à du texte */
#taux-field input.as-text {
  border: 0;
  background: transparent;
  padding: 0;
  width: auto;
  max-width: 22px; /* évite que ça saute quand la valeur change */
  outline: none;
  box-shadow: none;
  font-weight: 600;
  color: var(--ink);
  text-align: left;
}

/* Style du % */
#taux-field .unit {
  font-weight: 600;
  color: var(--ink);
}

/* Supprimer ancien ::after éventuel */
#taux-field::after {
  content: none !important;
}

/* ===== Design tokens ===== */
.simu-wrap {
  --ink: #000;
  --muted: #6f857c;
  --track1: #eef2ef;
  --track2: #a8bab1;
  --track3: #6f857c;
  --line: #E6E8E5;
  --thumb-size: 22px;
  --track-h: 5px;
}

.simu-field,
.simu-field label,
.simu-radio label {
  font-size: clamp(13px, 0.9vw, 18px);
}

.simu-radio input[type="radio"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  margin: 0 3px 0 0;
  width: 20px;
  height: 20px;
  border: 1px solid #6f857c;
  border-radius: 50%;
  display: inline-grid;
  place-content: center;
  cursor: pointer;
  background-color: #fff;
  transition: all .2s ease;
}

.simu-radio input[type="radio"]::before {
  content: "";
  width: 12px;
  height: 12px;
  border-radius: 50%;
  transform: scale(0);
  transition: transform .2s ease;
  background-color: #6f857c;
}

.simu-radio input[type="radio"]:checked::before {
  transform: scale(1);
}

.simu-radio input[type="radio"]:hover {
  border-color: #4e6159;
}

.simu-left {
  height: 37vh;
  justify-content: space-between;
  display: flex;
  flex-direction: column;
  align-content: start;
}

.simu-field label {
  display: block;
  font-weight: 600;
  margin-bottom: 0px;
  color: var(--ink);
}

.simu-radio {
  display: flex;
  gap: 15px;
}

.simu-radio label {
  font-weight: 500;
}

.simu-group-ages {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.simu-field input[type="text"],
.simu-field input[type="number"] {
  width: 100%;
  padding: 0.4vw 8px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  font-size: clamp(12px, 0.9vw, 18px);
}

/* Suffixe "ans" */
.simu-field.has-suffix-ans {
  position: relative;
}

.simu-field.has-suffix-ans input[type="number"] {
  padding-right: 38px;
}

.simu-field.has-suffix-ans::after {
  content: "ans";
  position: absolute;
  right: 10px;
  top: 20px;
  bottom: 0;
  display: flex;
  align-items: center;
  color: #B1B1B1;
  font-weight: 500;
  pointer-events: none;
}

.simu-field.has-suffix-ans input::placeholder {
  color: #B1B1B1;
}

.simu-field.has-suffix-ans input[type=number]::-webkit-outer-spin-button,
.simu-field.has-suffix-ans input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.simu-field.has-suffix-ans input[type=number] {
  -moz-appearance: textfield;
}

/* Champs € */
.suffix-euro {
  position: relative;
}

.suffix-euro input {
  padding-right: 40px;
}

.suffix-euro::after {
  content: "€";
  position: absolute;
  right: 10px;
  top: 20px;
  bottom: 0;
  display: flex;
  align-items: center;
  color: #B1B1B1;
  font-weight: 500;
  pointer-events: none;
}

#revenu-field input {
  padding-right: 70px;
}

#revenu-field::after {
  content: "€/mois";
}

/* Slider */
#duree {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  background: transparent;
  height: var(--track-h);
}

#duree::-webkit-slider-runnable-track {
  height: var(--track-h);
  border-radius: 999px;
  background: linear-gradient(90deg, var(--track1) 0%, var(--track2) 50%, var(--track3) 100%);
}

#duree::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: var(--thumb-size);
  height: var(--thumb-size);
  border-radius: 50%;
  background: var(--muted);
  border: 2px solid #fff;
  box-shadow: 0 6px 16px rgba(0, 0, 0, .18);
  margin-top: calc((var(--track-h) - var(--thumb-size)) / 2);
  cursor: pointer;
}

#duree:focus {
  outline: none;
}

#duree:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 4px rgba(111, 133, 124, .18), 0 6px 16px rgba(0, 0, 0, .18);
}

#duree::-moz-range-track {
  height: var(--track-h);
  border-radius: 999px;
  background: linear-gradient(90deg, var(--track1) 0%, var(--track2) 50%, var(--track3) 100%);
}

#duree::-moz-range-thumb {
  width: var(--thumb-size);
  height: var(--thumb-size);
  border-radius: 50%;
  background: var(--muted);
  border: none;
  box-shadow: 0 6px 16px rgba(0, 0, 0, .18);
  cursor: pointer;
}

#duree::-moz-focus-outer {
  border: 0;
}


@media (max-width: 1024px) {
  .simu-left {
  min-height: 30vh;
}
.simu-field,
.simu-field label,
.simu-radio label {
  font-size:16px;
}
.simu-field input[type="text"],
.simu-field input[type="number"] {
  font-size: 16px;
  padding: 6px 10px;
}
}

@media (max-width: 767px) {
  .simu-left {
  height: 100%;
  gap: 15px;
}
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-29a13ace *//* Wrappers */
.input-wrapper {
  position: relative;
  margin-bottom: 1rem;
  font-family: sans-serif;
}

.input-wrapper label {
  font-weight: 600;
  font-size: 16px;
  display: block;
  margin-bottom: 0.25rem;
}

.input-wrapper input[type="text"],
.input-wrapper input[type="number"] {
  width: 100%;
  padding: 10px 3px;
  border: none;
  border-bottom: 1px solid #ccc;
  background-color: #fff;
  font-size: 15px;
}

.input-wrapper input[type="text"]:disabled,
.input-wrapper input[type="number"]:disabled {
  background-color: #fff !important;
}

.input-unit {
  position: absolute;
  right: 10px;
  top: 35px;
  color: #666;
  font-size: 0.875rem;
  pointer-events: none;
  white-space: nowrap;
}

/* Range */
.range-wrapper {
  margin-top: 1rem;
}

.range-wrapper label {
  font-weight: 600;
  font-size: 16px;
  display: block;
  margin-bottom: 0.5rem;
}

input[type="range"] {
  width: 100%;
  height: 6px;
  background: transparent;
  border-radius: 3px;
  -webkit-appearance: none;
}

input[type="range"]::-webkit-slider-runnable-track {
  height: 6px;
  background: #BEAD93;
  border-radius: 3px;
}

input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  background: #BEAD93;
  cursor: pointer;
  margin-top: -7px;
  box-shadow: 0 0 0 3px white, 0 0 0 5px #bead9340;
}

input[type="range"]::-moz-range-track {
  height: 6px;
  background: #BEAD93;
  border-radius: 3px;
}

input[type="range"]::-moz-range-thumb {
  height: 20px;
  width: 20px;
  border-radius: 50%;
  background: #BEAD93;
  cursor: pointer;
  border: none;
}/* End custom CSS */