/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/


/* =Theme customization starts here
------------------------------------------------------- */
.list-icon-left .et_pb_blurb_content {
  display: flex;
  align-items: flex-start;
}

.list-icon-left .et_pb_main_blurb_image {
  width: 60px !important;
  flex: 0 0 60px;
  margin-bottom: 0 !important;
}

.list-icon-left .et_pb_image_wrap {
  display: block;
  width: 100%;
}

.list-icon-left .et_pb_main_blurb_image img {
  width: 100% !important;
  max-width: none !important;
  height: auto;
}

.list-icon-left .et_pb_blurb_container {
  flex: 1;
  min-width: 0;
  padding-left: 20px;
}
.sodex-contact {
  --field-border: rgba(255, 255, 255, 0.45);
  color: #fff;
}

.sodex-contact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0px 16px;
}

.sodex-contact .sodex-full {
  grid-column: 1 / -1;
}

.sodex-contact p {
  margin: 0;
  padding: 0;
}

.sodex-contact .wpcf7-form-control-wrap {
  display: block;
}

/* Champs */
.sodex-contact input:not([type="submit"]),
.sodex-contact select,
.sodex-contact textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 16px;
  border: 2px solid var(--field-border);
  border-radius: 0;
  background: transparent;
  color: #fff;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.5;
  box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
}

/* Select */
.sodex-contact select {
  cursor: pointer;
  padding-right: 50px;

  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 18px center;
  background-size: 18px;
}

/* Couleur des options quand la liste est ouverte */
.sodex-contact select option {
  background: #fff;
  color: #000;
}

/* Message */
.sodex-contact textarea {
  height: 188px;
  min-height: 188px;
  resize: vertical;
}

/* Placeholders */
.sodex-contact input::placeholder,
.sodex-contact textarea::placeholder {
  color: #fff;
  opacity: 1;
}

/* Focus */
.sodex-contact input:focus,
.sodex-contact select:focus,
.sodex-contact textarea:focus {
  border-color: #fff;
  outline: 2px solid rgba(255, 255, 255, 0.3);
  outline-offset: 3px;
}

/* Bouton */
.sodex-contact .sodex-submit {
  position: relative;
  margin-top: 20px;
  text-align: right;
}

.sodex-contact input[type="submit"] {
  width: auto;
  padding: 6px 20px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #fff;
  font-family: inherit;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  cursor: pointer;
}

.sodex-contact input[type="submit"]:hover {
  opacity: 0.75;
}

.sodex-contact .wpcf7-spinner {
  position: absolute;
  top: 10px;
  right: 100%;
  margin: 0 8px 0 0;
}

.sodex-contact .wpcf7-not-valid-tip {
  margin-top: 6px;
  color: #fff;
  font-size: 14px;
}

/* Labels accessibles, masqués visuellement */
.sodex-contact .sodex-label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

/* Mobile */
@media (max-width: 767px) {
  .sodex-contact-grid {
    grid-template-columns: 1fr;
    gap:0px;
  }

  .sodex-contact input:not([type="submit"]),
  .sodex-contact select,
  .sodex-contact textarea {
    padding: 18px;
    font-size: 17px;
  }

  .sodex-contact input:not([type="submit"]),
  .sodex-contact select {
    height: 66px;
  }
}

@media (min-width: 981px) {
  .center-image-text > .et_pb_row {
    display: flex !important;
    align-items: center !important;
  }

  .center-image-text > .et_pb_row > .et_pb_column {
    align-self: center !important;
    height: auto !important;
    min-height: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .center-image-text > .et_pb_row > .et_pb_column_single {
    display: block !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .center-image-text .et_pb_column_single > .et_pb_image {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .center-image-text > .et_pb_row::after {
    display: none;
  }
}
/* Vertically center columns on desktop */
@media (min-width: 981px) {

  .et_pb_row.middle {
    display: flex !important;
    align-items: stretch !important;
  }

  .et_pb_row.middle > .et_pb_column {
    float: none !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-self: stretch !important;
  }

}


/* Reverse column order on tablet and mobile */
@media (max-width: 980px) {
  .et_pb_row.reverse {
    display: flex !important;
    flex-direction: column-reverse;
    gap: 30px;
  }

  .et_pb_row.reverse > .et_pb_column {
    width: 100% !important;
    margin: 0 !important;
  }
}

.et_pb_row.middle::after,
.et_pb_row.reverse::after {
  display: none;
}


@media (max-width: 767px) {

  /* Main titles */
  #main-content h1,
  .et-l--footer h1 {
    font-size: 32px !important;
    line-height: 1.2em !important;
  }

  /* Section titles */
  #main-content h2,
  .et-l--footer h2 {
    font-size: 26px !important;
    line-height: 1.3em !important;
  }

  /* Service titles */
  #main-content h3,
  .et-l--footer h3,
  .et_pb_blurb .et_pb_module_header {
    font-size: 21px !important;
    line-height: 1.35em !important;
  }

  /* Paragraphs and lists */
  .et_pb_text,
  .et_pb_text p,
  .et_pb_text li,
  .et_pb_blurb_description,
  .et_pb_blurb_description p {
    font-size: 16px !important;
    line-height: 1.7em !important;
  }

  /* Space below titles in text modules */
  .et_pb_text h1,
  .et_pb_text h2,
  .et_pb_text h3 {
    padding-bottom: 20px !important;
  }

  /* Buttons */
  body #page-container .et_pb_button,
  .sodex-contact input[type="submit"] {
    font-size: 15px !important;
    line-height: 1.3em !important;
  }

  /* Contact form fields */
  .wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
  .wpcf7 textarea,
  .wpcf7 select {
    font-size: 16px !important;
    line-height: 1.5em !important;
  }
}

@media (max-width: 767px) {
  .et_pb_section.dark-mobile-bg {
    position: relative;
    isolation: isolate;
  }

  .et_pb_section.dark-mobile-bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 15, 50, 0.6);
    z-index: 1;
    pointer-events: none;
  }

  .et_pb_section.dark-mobile-bg > .et_pb_row,
  .et_pb_section.dark-mobile-bg > .et_pb_module {
    position: relative;
    z-index: 2;
  }
}
.mobile_menu_bar:before{
	    color: #eb212e !important;


}

.et_pb_number_counter h3{
	    font-weight: 800 !important;

}
.et_pb_number_counter .percent p {
    font-weight: 800 !important;
}
@media (min-width: 981px) {
  .et_pb_row.cards-top {
    align-items: flex-start !important;
  }

  .et_pb_row.cards-top > .et_pb_column {
    align-self: flex-start !important;
  }
}
@media (min-width: 981px) {
  .et_pb_row.process-equal {
    display: flex !important;
    align-items: stretch !important;
  }

  .et_pb_row.process-equal > .et_pb_column {
    display: flex !important;
  }

  .et_pb_row.process-equal .process-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
  }
}
@media (min-width: 981px) {
  .et_pb_row.process-equal .process-card .et_pb_module_inner {
    height: 100%;
  }
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    color: #fff;
}
.et_mobile_menu {
    border-top: 0px solid #2ea3f2 !important;
}

@media (max-width: 768px) {
span.percent-value {
    font-size: 30px !important;
	  line-height: 1.35em !important;
}
	h3.title {
		    font-size: 30px !important;
	  line-height: 1.35em !important;
}
	.et_pb_number_counter.et_pb_with_title .percent {
    margin-bottom: 5px !important;
}
	#logo {
    max-height: 100% !important;
	}
	    .et_header_style_left #logo {
        max-width: 77% !important;
    }
}
/* Sticky Divi header on mobile */
@media (max-width: 980px) {


  /* IMPORTANT: no extra space on body */
  body {
    padding-top: 0 !important;
  }

  #main-header .et_mobile_menu {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    width: 100% !important;
  }

	.sodex-contact p {
    margin-bottom: -14px;
}
	.sodex-contact input[type="submit"] {
    margin-top: 25px;
}
}


.middlex .et_pb_column{
    margin: auto;
}
/* Remove the row border */
.et_pb_row.bordres {
    border: none !important;
}

/* Add borders around each image */
.et_pb_row.bordres .et_pb_image .et_pb_image_wrap {
    border: 10px solid #ffffff !important;
    border-bottom: 0 !important;
    box-sizing: border-box;
    max-width: 100%;
}

.et_pb_row.bordres .et_pb_image img {
    display: block;
    border: none !important;
}
@media (max-width: 980px) {
    #main-header {
        position: sticky !important;
        top: 0 !important;
        width: 100% !important;
        z-index: 99999 !important;
    }

    div#page-container {
        padding-top: 0 !important;
        overflow: visible !important;
    }
}

@media (min-width: 981px) {
.line-height-p .et_pb_promo_description
 {
    min-height: 98px;
	}}