.elementor-2472 .elementor-element.elementor-element-c42d0e7{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-2472 .elementor-element.elementor-element-73e6e06{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2472 .elementor-element.elementor-element-73e6e06.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-2472 .elementor-element.elementor-element-6df3359{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-2472 .elementor-element.elementor-element-73e6e06{--width:70%;}.elementor-2472 .elementor-element.elementor-element-6df3359{--width:30%;}}/* Start custom CSS for container, class: .elementor-element-73e6e06 *//* =========================================================
   EUGEN / MONDIALCARE - CLEAN CSS UNIQUE
   Containers:
   - formulaire : .mc-widget
   - colonne droite : .mc-aside
   ========================================================= */

.mc-widget,
.mc-aside {
  --mc-orange: #f57c20;
  --mc-orange-dark: #ea6c10;
  --mc-green: #4e9828;
  --mc-text: #243345;
  --mc-muted: #7f8b99;
  --mc-border: #e9e2da;
  --mc-line: #ebe4dc;
  --mc-card: #ffffff;
  --mc-radius-xl: 28px;
  --mc-radius-lg: 20px;
  --mc-radius-md: 18px;
  --mc-radius-sm: 14px;
  --mc-shadow: 0 8px 22px rgba(24, 36, 55, 0.05);
  --mc-font: Inter, Arial, sans-serif;
  font-family: var(--mc-font);
  color: var(--mc-text);
}

.mc-widget *,
.mc-widget *::before,
.mc-widget *::after,
.mc-aside *,
.mc-aside *::before,
.mc-aside *::after {
  box-sizing: border-box;
}

/* =========================================================
   WRAPPERS
   ========================================================= */

.mc-widget .elementor-shortcode,
.mc-widget .form-wrapper,
.mc-widget .form-container,
.mc-aside .elementor-shortcode {
  width: 100%;
  max-width: 100%;
}

.mc-widget .form-wrapper {
  max-width: 1460px !important;
  margin: 0 auto;
  padding: 0 !important;
}

/* =========================================================
   STEPPER
   ========================================================= */

.mc-widget .left-side {
  display: flex !important;
  justify-content: center;
  align-items: center;
  gap: 28px;
  padding: 8px 0 22px !important;
  margin: 0 0 22px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  position: static !important;
}

.mc-widget .left-side .step {
  position: relative;
  display: inline-flex !important;
  justify-content: center;
  align-items: center;
  min-width: 180px;
  height: 50px;
  padding: 0 24px !important;
  border: 1px solid #e9e3dc !important;
  border-radius: 999px !important;
  background: #f6f2ed !important;
  color: #b0b7c0 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  box-shadow: 0 4px 0 rgba(0, 0, 0, 0.18) !important;
}

.mc-widget .left-side .step.active {
  background: var(--mc-orange) !important;
  color: #fff !important;
  border-color: var(--mc-orange) !important;
  box-shadow: 0 4px 0 rgba(96, 69, 51, 0.45) !important;
}

.mc-widget .left-side .step::before {
  display: none !important;
}

.mc-widget .left-side .step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(100% + 10px);
  width: 18px;
  height: 1px;
  background: #d9d1c8;
  transform: translateY(-50%);
}

/* =========================================================
   FORM CONTAINER
   ========================================================= */

.mc-widget .tab {
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.mc-widget .tab > .wpcf7 > form {
  background: var(--mc-card) !important;
  border: 1px solid #efe8e1 !important;
  border-radius: var(--mc-radius-xl) !important;
  box-shadow: var(--mc-shadow) !important;
  padding: 34px 34px 30px !important;
  width: 100% !important;
  max-width: none !important;
}

/* =========================================================
   TYPOGRAPHY
   ========================================================= */

.mc-widget,
.mc-widget input,
.mc-widget select,
.mc-widget textarea,
.mc-widget button,
.mc-aside,
.mc-aside a,
.mc-aside button {
  font-family: var(--mc-font) !important;
}

.mc-widget h1,
.mc-widget h2,
.mc-widget h3,
.mc-widget h4,
.mc-widget .title,
.mc-aside h1,
.mc-aside h2,
.mc-aside h3,
.mc-aside h4 {
  font-family: var(--mc-font) !important;
  letter-spacing: -0.01em;
  color: var(--mc-text) !important;
  margin: 0 0 12px !important;
}

.mc-widget h2 {
  display: block !important;
  width: 100% !important;
  font-size: 22px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

.mc-widget h3 {
  font-size: 18px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
}

.mc-widget p {
  color: var(--mc-muted) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  margin: 0 0 12px !important;
}

/* Fix texte intro / justification parasite */
.mc-widget p,
.mc-widget .tab p,
.mc-widget .wpcf7 p,
.mc-widget fieldset p {
  text-align: left !important;
  text-justify: auto !important;
  word-spacing: normal !important;
  letter-spacing: normal !important;
  white-space: normal !important;
  hyphens: none !important;
  max-width: 100% !important;
}

.mc-widget h2 + p {
  text-align: left !important;
  text-justify: auto !important;
  word-spacing: normal !important;
  letter-spacing: normal !important;
  white-space: normal !important;
  hyphens: none !important;
  display: block !important;
  max-width: 680px !important;
}

.mc-widget h2::before {
  content: "Étape 1/3";
  display: inline-block;
  margin: 0 12px 0 0;
  padding: 7px 14px;
  border-radius: 999px;
  background: #fff1e5;
  color: var(--mc-orange);
  font-size: 13px;
  font-weight: 800;
  vertical-align: middle;
}

/* =========================================================
   GENERIC ROWS / COLUMNS
   ========================================================= */

.mc-widget .row {
  display: flex !important;
  flex-wrap: wrap !important;
  margin-left: -10px !important;
  margin-right: -10px !important;
  row-gap: 18px !important;
}

.mc-widget .row > [class*="col-"],
.mc-widget .row > .col {
  padding-left: 10px !important;
  padding-right: 10px !important;
  min-width: 0 !important;
}

.mc-widget .col,
.mc-widget .col-12 {
  width: 100% !important;
}

.mc-widget .col-sm-3 { width: 25% !important; }
.mc-widget .col-sm-4 { width: 33.333% !important; }
.mc-widget .col-sm-6 { width: 50% !important; }
.mc-widget .col-sm-8 { width: 66.666% !important; }
.mc-widget .col-xl-4,
.mc-widget .col-lg-4,
.mc-widget .col-md-4 { width: 50% !important; }

/* =========================================================
   LABELS
   ========================================================= */

.mc-widget label {
  display: inline-block !important;
  margin-bottom: 8px !important;
  color: #8e97a2 !important;
  font-size: 12px !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.02em !important;
}

.mc-widget .wpcf7-acceptance label,
.mc-widget .checkbox-group label,
.mc-widget .wpcf7-list-item-label {
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-weight: 400 !important;
  font-size: 13px !important;
  color: var(--mc-muted) !important;
}

/* =========================================================
   FIELDS
   ========================================================= */

.mc-widget fieldset,
.mc-widget .wpcf7-form-control-wrap,
.mc-widget .custom-combobox,
.mc-widget .input-group {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

.mc-widget input[type="text"],
.mc-widget input[type="email"],
.mc-widget input[type="tel"],
.mc-widget input[type="date"],
.mc-widget input[type="password"],
.mc-widget select,
.mc-widget textarea,
.mc-widget .custom-combobox-input,
.mc-widget .daterange-start,
.mc-widget .daterange-end {
  width: 100% !important;
  max-width: 100% !important;
  height: 58px !important;
  min-height: 58px !important;
  padding: 0 18px !important;
  border: 1px solid #e8ddd2 !important;
  border-radius: 18px !important;
  background: #fff !important;
  color: #5f6b7a !important;
  box-shadow: none !important;
  font-size: 15px !important;
  line-height: 58px !important;
  display: block !important;
}

.mc-widget textarea {
  min-height: 140px !important;
  line-height: 1.5 !important;
  padding: 16px 18px !important;
}

.mc-widget input:focus,
.mc-widget select:focus,
.mc-widget textarea:focus,
.mc-widget .custom-combobox-input:focus {
  outline: none !important;
  border-color: #f2aa70 !important;
  box-shadow: 0 0 0 3px rgba(245, 124, 32, 0.10) !important;
}

.mc-widget .custom-combobox {
  display: block !important;
  width: 100% !important;
}

.mc-widget .custom-combobox-toggle {
  display: none !important;
}

.mc-widget .custom-combobox input[type="hidden"] {
  display: none !important;
}

/* cache le select source générique */
.mc-widget select.swisscare-style {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  position: absolute !important;
  pointer-events: none !important;
}

.mc-widget .custom-combobox-input,
.mc-widget select {
  padding-right: 42px !important;
}

.mc-widget input[type="date"] {
  appearance: none !important;
  -webkit-appearance: none !important;
}

/* =========================================================
   DATE RANGE
   ========================================================= */

.mc-widget .input-group.daterange {
  display: flex !important;
  align-items: flex-end !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 760px !important;
  flex-wrap: nowrap !important;
}

.mc-widget .input-group.daterange > .wpcf7-form-control-wrap {
  flex: 1 1 0 !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  position: relative !important;
}

.mc-widget .input-group.daterange .daterange-start,
.mc-widget .input-group.daterange .daterange-end {
  width: 100% !important;
  max-width: 100% !important;
}

.mc-widget .input-group.daterange > .wpcf7-form-control-wrap:last-of-type .daterange-end {
  padding-right: 48px !important;
}

.mc-widget .input-group-append {
  position: absolute !important;
  right: 16px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
  pointer-events: none !important;
}

.mc-widget .btn-transparent {
  border: 0 !important;
  background: transparent !important;
  color: var(--mc-orange) !important;
  padding: 0 !important;
}

.mc-widget #daterange-start-label,
.mc-widget #daterange-end-label {
  display: none !important;
}

/* =========================================================
   COUNTRY FIELDS
   ========================================================= */

.mc-widget .wpcf7-form-control-wrap.provenance_pays,
.mc-widget .wpcf7-form-control-wrap.destination_pays {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

.mc-widget .wpcf7-form-control-wrap.provenance_pays .custom-combobox,
.mc-widget .wpcf7-form-control-wrap.destination_pays .custom-combobox,
.mc-widget .wpcf7-form-control-wrap.provenance_pays .custom-combobox-input,
.mc-widget .wpcf7-form-control-wrap.destination_pays .custom-combobox-input {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

.mc-widget .col-sm-6:has(.wpcf7-form-control-wrap.provenance_pays),
.mc-widget .col-sm-6:has(.wpcf7-form-control-wrap.destination_pays) {
  width: 50% !important;
  max-width: 50% !important;
  flex: 0 0 50% !important;
  min-width: 0 !important;
}

.mc-widget .col-sm-6:has(.wpcf7-form-control-wrap.provenance_pays) fieldset,
.mc-widget .col-sm-6:has(.wpcf7-form-control-wrap.destination_pays) fieldset {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

/* =========================================================
   FORMULA CARDS
   ========================================================= */

.mc-widget .card-wrapper {
  margin-top: 8px !important;
}

.mc-widget .custom-card {
  margin: 0 !important;
}

.mc-widget .custom-card .col,
.mc-widget .custom-card [class*="col-"] {
  width: 50% !important;
  display: flex !important;
  align-items: stretch !important;
}

.mc-widget .custom-card .plan,
.mc-widget .custom-card .inner {
  width: 100% !important;
}

.mc-widget .custom-card .plan {
  height: 100% !important;
}

.mc-widget .custom-card .inner {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  min-height: 96px !important;
  padding: 20px !important;
  border: 2px solid #eadfd5 !important;
  border-radius: 22px !important;
  background: #fff !important;
  cursor: pointer !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.mc-widget .custom-card .highlight,
.mc-widget .custom-card .text-Individuel,
.mc-widget .custom-card .text-Platinium_famille {
  display: none !important;
}

.mc-widget .custom-card input[type="radio"] {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  border: 2px solid #f5b07b !important;
  background: #fff !important;
  margin: 0 !important;
  position: relative !important;
}

.mc-widget .custom-card input[type="radio"]:checked::after {
  content: "";
  position: absolute;
  inset: 3px;
  border-radius: 50%;
  background: var(--mc-orange);
}

.mc-widget .custom-card .title {
  margin: 0 !important;
  color: #2d3748 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

.mc-widget .custom-card .inner:has(input[type="radio"]:checked) {
  border-color: var(--mc-orange) !important;
  background: #fffaf6 !important;
}

/* =========================================================
   SEPARATORS
   ========================================================= */

.mc-widget fieldset {
  min-width: 0 !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  border: 0 !important;
}

.mc-widget hr,
.mc-widget [style*="border-bottom"],
.mc-widget [style*="border-top"] {
  border-color: var(--mc-line) !important;
}

/* =========================================================
   BLOC ASSURÉ
   ========================================================= */

.mc-widget #assure > .col-12 {
  position: relative !important;
  border: 1px solid #eee6de !important;
  border-radius: 24px !important;
  background: #fff !important;
  padding: 24px 24px 88px !important;
}

.mc-widget #assure > .col-12 > [data-loop-index] {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
}

.mc-widget #assure > .col-12 > [data-loop-index].row {
  display: block !important;
  margin: 0 !important;
}

.mc-widget #assure > .col-12 > [data-loop-index] > input[type="hidden"] {
  display: none !important;
}

.mc-widget #assure > .col-12 > [data-loop-index] > .col-xl-12 {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
}

.mc-widget #assure h3.title {
  margin: 0 !important;
  color: var(--mc-orange) !important;
  font-size: 18px !important;
}

.mc-widget #assure > .col-12 > [data-loop-index] > .row {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  column-gap: 22px !important;
  row-gap: 22px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  align-items: start !important;
}

.mc-widget #assure > .col-12 > [data-loop-index] > .row > div {
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ordre des champs */
.mc-widget #assure > .col-12 > [data-loop-index] > .row > div:nth-child(1) { grid-column: 1 / span 4 !important; }
.mc-widget #assure > .col-12 > [data-loop-index] > .row > div:nth-child(2) { grid-column: 5 / span 4 !important; }
.mc-widget #assure > .col-12 > [data-loop-index] > .row > div:nth-child(3) { grid-column: 9 / span 4 !important; }
.mc-widget #assure > .col-12 > [data-loop-index] > .row > div:nth-child(4) { grid-column: 1 / span 6 !important; }
.mc-widget #assure > .col-12 > [data-loop-index] > .row > div:nth-child(5) { grid-column: 7 / span 6 !important; }
.mc-widget #assure > .col-12 > [data-loop-index] > .row > div:nth-child(6) { grid-column: 1 / -1 !important; }

.mc-widget #assure > .col-12 > [data-loop-index] > .row fieldset,
.mc-widget #assure > .col-12 > [data-loop-index] > .row .wpcf7-form-control-wrap,
.mc-widget #assure > .col-12 > [data-loop-index] > .row .custom-combobox {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.mc-widget #assure > .col-12 > [data-loop-index] > .row > div fieldset,
.mc-widget #assure > .col-12 > [data-loop-index] > .row > div .wpcf7-form-control-wrap,
.mc-widget #assure > .col-12 > [data-loop-index] > .row > div > fieldset > .wpcf7-form-control-wrap > input,
.mc-widget #assure > .col-12 > [data-loop-index] > .row > div > fieldset > .wpcf7-form-control-wrap > select {
  width: 100% !important;
  max-width: 100% !important;
}

.mc-widget #assure > .col-12 > [data-loop-index] > .row label {
  display: block !important;
  margin: 0 0 8px !important;
  white-space: normal !important;
}

.mc-widget #assure > .col-12 > [data-loop-index] > .row input[type="text"],
.mc-widget #assure > .col-12 > [data-loop-index] > .row input[type="date"],
.mc-widget #assure > .col-12 > [data-loop-index] > .row select {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  display: block !important;
  box-sizing: border-box !important;
}

/* nationalité : on garde le vrai select */
.mc-widget #assure > .col-12 > [data-loop-index] > .row .personne--nationalite select.swisscare-style,
.mc-widget #assure > .col-12 > [data-loop-index] > .row select[name*="[personne--nationalite]"] {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: static !important;
  pointer-events: auto !important;
  width: 100% !important;
  height: 58px !important;
  min-height: 58px !important;
  padding: 0 18px !important;
  border: 1px solid #e8ddd2 !important;
  border-radius: 18px !important;
  background: #fff !important;
  color: #5f6b7a !important;
}

.mc-widget #assure > .col-12 > [data-loop-index] > .row .personne--nationalite .custom-combobox {
  display: none !important;
}

/* suppression */
.mc-widget #assure > .col-12 > [data-loop-index] > .row > div:nth-child(6) {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  margin-top: 6px !important;
}

.mc-widget #assure > .col-12 > [data-loop-index] > .row > div:nth-child(6) .close-col,
.mc-widget #assure > .col-12 > [data-loop-index] > .row > div:nth-child(6) .delete {
  position: static !important;
  margin: 0 !important;
  width: auto !important;
}

.mc-widget #assure .delete i {
  color: #ff2a1a !important;
  font-size: 28px !important;
}

/* bouton ajouter assuré */
.mc-widget [data-id="addassure"] {
  display: block !important;
  margin-top: 18px !important;
}

.mc-widget [data-id="addassure"] .col-12 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.mc-widget .btn-plus {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 14px 20px !important;
  border: 2px dashed #f4b27b !important;
  border-radius: 18px !important;
  background: #fffaf5 !important;
  color: var(--mc-orange) !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

.mc-widget .btn-plus:hover {
  background: #fff1e5 !important;
  border-color: var(--mc-orange) !important;
}

.mc-widget .btn-plus i,
.mc-widget .btn-plus .fa,
.mc-widget .btn-plus .fas {
  color: var(--mc-orange) !important;
}

/* =========================================================
   ORANGE PRICE BLOCK
   ========================================================= */

.mc-widget .pl-2.pr-2[style*="background-color: darkorange"] {
  background: var(--mc-orange) !important;
  border-radius: 14px !important;
  padding: 14px 18px !important;
  margin-top: 18px !important;
}

.mc-widget .pl-2.pr-2[style*="background-color: darkorange"] p,
.mc-widget .pl-2.pr-2[style*="background-color: darkorange"] .devis-st {
  color: #fff !important;
  font-weight: 800 !important;
  margin: 0 !important;
}

/* =========================================================
   BUTTONS
   ========================================================= */

.mc-widget input[type="submit"],
.mc-widget input[type="button"],
.mc-widget .btn,
.mc-widget .btn-radius,
.mc-widget .nextBtn,
.mc-widget .prevBtn,
.mc-widget .button-secondary {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 150px !important;
  height: 48px !important;
  padding: 0 24px !important;
  border-radius: 999px !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0 !important;
  border: 0 !important;
  box-shadow: 0 4px 0 rgba(0, 0, 0, 0.20) !important;
}

.mc-widget input[type="submit"],
.mc-widget .nextBtn,
.mc-widget .btn:not(.button-secondary) {
  background: var(--mc-green) !important;
  color: #fff !important;
}

.mc-widget .prevBtn,
.mc-widget .button-secondary {
  background: var(--mc-orange) !important;
  color: #fff !important;
}

.mc-widget input[disabled],
.mc-widget .nextBtn[disabled] {
  opacity: 0.55 !important;
}

/* =========================================================
   AUTOCOMPLETE
   ========================================================= */

.mc-widget .ui-menu {
  z-index: 99999 !important;
  border: 1px solid var(--mc-border) !important;
  border-radius: 14px !important;
  background: #fff !important;
  padding: 8px !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08) !important;
}

.mc-widget .ui-menu-item-wrapper {
  padding: 10px 12px !important;
  border-radius: 10px !important;
  font-size: 14px !important;
}

.mc-widget .ui-state-active,
.mc-widget .ui-menu-item-wrapper:hover {
  background: #fff5eb !important;
  color: var(--mc-orange-dark) !important;
  border: 0 !important;
}

/* =========================================================
   ICONS
   ========================================================= */

.mc-widget i,
.mc-widget .fa,
.mc-widget .fas,
.mc-widget .far,
.mc-widget .fal,
.mc-widget .fab,
.mc-widget [class^="fa-"],
.mc-widget [class*=" fa-"],
.mc-widget .eicon,
.mc-widget [class^="eicon-"],
.mc-widget [class*=" eicon-"],
.mc-widget .ui-icon,
.mc-aside i,
.mc-aside .fa,
.mc-aside .fas,
.mc-aside .far,
.mc-aside .fal,
.mc-aside .fab,
.mc-aside [class^="fa-"],
.mc-aside [class*=" fa-"],
.mc-aside .eicon,
.mc-aside [class^="eicon-"],
.mc-aside [class*=" eicon-"] {
  font-family: "Font Awesome 5 Free", "Font Awesome 6 Free", "FontAwesome", "eicons", sans-serif !important;
  font-style: normal !important;
  font-weight: 900 !important;
  speak: none;
}

.mc-widget svg,
.mc-aside svg {
  font-family: initial !important;
}

/* =========================================================
   ASIDE
   ========================================================= */

.mc-aside {
  width: 100%;
}

.mc-aside .elementor-shortcode {
  width: 100%;
}

.mc-aside a,
.mc-aside .btn,
.mc-aside .button,
.mc-aside p > a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 56px !important;
  padding: 0 18px !important;
  border-radius: 18px !important;
  background: var(--mc-orange) !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  margin-bottom: 12px !important;
}

.mc-aside .help-card,
.mc-aside .contact-card,
.mc-aside .support-card {
  background: var(--mc-orange) !important;
  border-radius: 22px !important;
  padding: 28px 22px !important;
  text-align: center !important;
  color: #fff !important;
  margin-bottom: 22px !important;
}

.mc-aside .help-card *,
.mc-aside .contact-card *,
.mc-aside .support-card * {
  color: #fff !important;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1024px) {
  .mc-widget .left-side {
    gap: 14px !important;
    flex-wrap: wrap !important;
  }

  .mc-widget .left-side .step {
    min-width: 160px !important;
  }
}

@media (max-width: 767px) {
  .mc-widget .tab > .wpcf7 > form {
    padding: 24px 20px !important;
    border-radius: 20px !important;
  }

  .mc-widget h2::before {
    display: block !important;
    width: fit-content;
    margin: 0 0 10px 0 !important;
    vertical-align: initial !important;
  }

  .mc-widget .col-sm-3,
  .mc-widget .col-sm-4,
  .mc-widget .col-sm-6,
  .mc-widget .col-sm-8,
  .mc-widget .col-xl-4,
  .mc-widget .col-lg-4,
  .mc-widget .col-md-4,
  .mc-widget .custom-card .col,
  .mc-widget .custom-card [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  .mc-widget .left-side .step {
    width: 100% !important;
  }

  .mc-widget .input-group.daterange {
    flex-direction: column !important;
    align-items: stretch !important;
    max-width: 100% !important;
    gap: 12px !important;
  }

  .mc-widget .input-group-append {
    right: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
  }

  .mc-widget input[type="submit"],
  .mc-widget input[type="button"] {
    width: 100% !important;
  }

  .mc-widget .col-sm-6:has(.wpcf7-form-control-wrap.provenance_pays),
  .mc-widget .col-sm-6:has(.wpcf7-form-control-wrap.destination_pays) {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  .mc-widget #assure > .col-12 {
    padding: 20px 20px 72px !important;
  }

  .mc-widget #assure > .col-12 > [data-loop-index] > .row {
    grid-template-columns: 1fr !important;
  }

  .mc-widget #assure > .col-12 > [data-loop-index] > .row > div {
    grid-column: auto !important;
  }
}
/* =========================================================
   FIX MOBILE FINAL — BLOC ASSURÉ
   ========================================================= */

@media (max-width: 767px) {
  /* carte assuré */
  .mc-widget #assure > .col-12 {
    padding: 20px 18px 28px !important;
    border-radius: 22px !important;
  }

  /* force la vraie pile verticale */
  .mc-widget #assure > .col-12 > [data-loop-index] > .row,
  .mc-widget #assure > .col-12 > [data-loop-index].row > .row,
  .mc-widget #assure [data-loop-index] .row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    width: 100% !important;
  }

  /* chaque bloc prend toute la largeur */
  .mc-widget #assure > .col-12 > [data-loop-index] > .row > div,
  .mc-widget #assure > .col-12 > [data-loop-index].row > .row > div,
  .mc-widget #assure [data-loop-index] .row > div {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* champs pleine largeur */
  .mc-widget #assure input[type="text"],
  .mc-widget #assure input[type="date"],
  .mc-widget #assure select,
  .mc-widget #assure .custom-combobox,
  .mc-widget #assure .custom-combobox-input,
  .mc-widget #assure .wpcf7-form-control-wrap,
  .mc-widget #assure fieldset {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  /* titre assuré un peu plus compact */
  .mc-widget #assure h3.title {
    font-size: 16px !important;
    margin-bottom: 10px !important;
  }

  /* bouton suppression */
  .mc-widget #assure > .col-12 > [data-loop-index] > .row > div:nth-child(6) {
    margin-top: 4px !important;
    margin-bottom: 6px !important;
  }

  .mc-widget #assure .delete i {
    font-size: 30px !important;
  }

  /* bouton ajouter assuré */
  .mc-widget .btn-plus {
    width: 100% !important;
    justify-content: center !important;
    padding: 16px 18px !important;
  }

  /* tarif orange */
  .mc-widget .pl-2.pr-2[style*="background-color: darkorange"] {
    border-radius: 18px !important;
    padding: 16px 18px !important;
  }

  .mc-widget .pl-2.pr-2[style*="background-color: darkorange"] p,
  .mc-widget .pl-2.pr-2[style*="background-color: darkorange"] .devis-st {
    font-size: 15px !important;
    line-height: 1.35 !important;
  }
}/* End custom CSS */