/* === UTILITAIRES === */
/* Chrome, Safari, Edge, Opera */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.mb-16{
  margin-bottom: 16px;
}
.h1 {
  font-size: 2.6667rem;
}
.bold {
  font-weight: bold;
}
.text-blueWojo {
  color: #3B82F6;
}
.text-bleunuit {
  color: #101828;
}
.align-right {
  text-align: right;
}
.small,
.text-grpd {
  font-size: 14px;
}



.icon-tel svg{
    width: 1em !important;
}

/* === CACHER CERTAINS ÉLÉMENTS === */
#top-tel .elementor-button-text,
#top-contact .elementor-button-text {
  display: none;
}

/* === STEP 1 === */
#step-1 .two-columns {
  display: block;
  margin: 32px 0 42px;
  gap: 30px;
}
#step-1 .two-columns p {
  margin-bottom: 16px;
}

/* === TITRES COMMUNS === */
.step-container h1,
.step-container h2,
.step-container h3 {
  color: #101828 !important;
  line-height: 1.2;
}
.step-container h1 {
  margin-bottom: 20px;
}

/* === STEP CONTAINER === */
.step-container {
  background: #fff;
  max-width: 770px;
  padding: 50px 25px;
  border-radius: 20px;
  box-shadow: 10px 10px 10px rgba(103, 103, 103, 0.2);
}
.page-id-110417 .select-menu,
.step-container .quantity-block {
  width: 100%;
  position: relative;
}

.step-container .quantity-block {
  margin-top: 25px;
}

/* === SELECT MENU === */
.page-id-110417 .select-menu .select-btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 55px;
  padding: 20px;
  font-size: 18px;
  font-weight: 400;
  background: #fff;
  border-radius: 5px;
  border: 1px solid #DBEAFE;
  cursor: pointer;
  font-family: "Inter-Regular";
}

.page-id-110417 .sBtn-text.small.has-selection{
  font-size: 16px;
  color: #101828 !important
}
.page-id-110417 .select-menu.active .select-btn,
.page-id-110417 .select-menu.active .select-btn:hover {
  border: 2px solid #DBEAFE;
}

.page-id-110417 .select-btn sig {
  font-size: 25px;
  transition: 0.3s;
}
.page-id-110417 .select-menu .options {
  display: none;
  position: absolute;
  top: 100%;
  width: 100%;
  margin-top: 10px;
  max-height: 295px;
  overflow-y: auto;
  background: #fff;
  border: 1px solid #DBEAFE;
  border-radius: 8px;
  animation: fadeInDown 0.35s both;
  font-family: "Inter-Regular";
  z-index: 2;
}
.page-id-110417 .select-menu .option {
  display: flex;
  align-items: center;
  height: 55px;
  background: #fff;
  cursor: pointer;
  border-bottom: 1px solid #DBEAFE;
  padding: 0;
  padding-left: 20px;
}
.page-id-110417 .select-menu .option:hover {
  background: #DBEAFE;
}

.page-id-110417 .select-menu .option:hover .option-text{
  color: #3B82F6; 
}
.page-id-110417 .select-menu .option i {
  font-size: 25px;
  margin-right: 12px;
}
.page-id-110417 .select-menu .option .option-text {
  font-size: 14px;
  color: #718096;
}
.page-id-110417 .select-menu.active .select-btn svg {
  transform: rotate(-180deg);
}
.page-id-110417 .select-menu.active .options {
  display: block;
  opacity: 0;
  z-index: 10;
  animation: fadeInUp 0.4s both;
  margin-left: 0;
}

/* === STEP BLOCS === */
.step-bloc {
  display: none;
}
.step-bloc.active {
  display: block;
}

/* === CHOICES === */
.step-container .choices {
  display: none;
  height: 130px;
  gap: 8px;
}

.step-container .choice:hover {
  border: 2px solid #DBEAFE;
}

.step-container .choice {
  width: 25%;
  border: 1px solid #DBEAFE;
  border-radius: 10px;
  position: relative;
}
.step-container .choice.active {
  border-width: 2px;
  background-color: #F7F8F9;
}
.step-container .choice.active .icons {
  background-color: rgba(59, 130, 246, 0.8);
}
.step-container .choice .icons img:nth-of-type(2),
.step-container .choice.active .icons img:nth-of-type(1) {
  display: none;
}
.step-container .choice.active .icons img:nth-of-type(2) {
  display: block;
}
.step-container .choice .icons {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  margin: 0 auto;
  background: #DBEAFE;
  border-radius: 10px;
  text-align: center;
}
.step-container .choice input[type="radio"] {
  width: 100%;
  height: 100%;
  position: absolute;
  opacity: 0;
  visibility: hidden;
}
.step-container .choice label {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  cursor: pointer;
}
.step-container .choice label p {
  font-size: 14px;
  margin-top: 16px;
  margin-bottom: 0;
  color: #101828;
  line-height: 1.2;
  text-align: center;
}

/* === QUANTITY BLOCK === */
.step-container .quantity-block-inputs {
  display: flex;
  border: 1px solid #DBEAFE;
  border-radius: 8px;
}
.step-container .quantity-num {
  background: #fff;
  border-radius: 8px 0 0 8px;
  width: 100%;
}

.step-container .quantity-num ,
.step-container .quantity-num:focus {
  border: none !important;
}

.step-container .quantity-block-inputs.focused {
  border: 2px solid #DBEAFE;
}
.step-container .align-right{
  margin-bottom:0;
}
.step-container .quantity-arrow-minus,
.step-container .quantity-arrow-plus {
  background: #fff;
  padding: 0 15px;
  color: #101828;
}
.step-container .quantity-arrow-minus {
  border-right: 0;
  border-left: 1px solid #DBEAFE;
}
.step-container .quantity-arrow-plus {
  border-left: 0;
  border-radius: 0 8px 8px 0;
}

/* === BOUTON SUIVANT === */
#next-step {
    position: relative;
    background: #3B82F6;
    border: 2px solid #3B82F6;
    padding: 15px 49px 15px 25px;
    font-family: 'Inter-Regular';
    font-weight: 600;
    font-size: 16px;
    border-radius: 5px;
}

#next-step:hover,
input.wpcf7-form-control.wpcf7-submit:hover {
    background: rgba(59,130,246, .8) !important;
    border: 2px solid rgba(59,130,246, .2) !important;
}

#next-step:active,
input.wpcf7-form-control.wpcf7-submit:active,
.yellow-button a.elementor-button.elementor-button-link:active{
    background: rgba(59,130,246, .8) !important;
    border: 2px solid #3B82F6 !important;
}

button#next-step:after {
    content: '';
    width: 6px;
    height: 6px;
    border-top: 1px solid #fff;
    position: absolute;
    border-right: 1px solid #fff;
    transform: rotate(45deg) translateY(-50%);
    right: 32px;
    top: 50%;
}
#next-step:disabled {
  opacity: 0.5;
}

/* === STEP 2 === */
#step-2 h2 {
  margin-bottom: 30px;
}
#step-2 .two-columns {
  display: flex;
  align-items: center;
  gap: 30px;
  margin-top: 24px;
}
#step-2 .two-columns:last-child{
  margin-top: 50px;
}
#step-2 .two-columns:not(:last-child){
  flex-wrap: wrap;
}
#step-2 .two-columns p {
  width: 100%;
  margin-bottom: 0;
}
#step-2 .two-columns:last-child p {
  margin-bottom: 0;
}
#step-2 .two-columns label {
  color: #101828;
}
#step-2 input:not(.wpcf7-submit) {
  background: #fff;
  margin-top: 16px;
  border: 1px solid #DBEAFE;
  border-radius: 5px;
  cursor: pointer;
  color: #101828;
  margin-bottom: 10px;
}

#step-2 input:not(.wpcf7-submit):focus {
  border: 2px solid #DBEAFE !important;
}

#step-2 input.wpcf7-not-valid:not(.wpcf7-submit){
  border: 1px solid #FF4D44 !important;
}
#step-2 input.wpcf7-not-valid:not(.wpcf7-submit):focus{
  border: 2px solid #FF4D44 !important;
}

.wpcf7-not-valid-tip{
    font-size: 14px;
    color: #FF4D44 !important;
    margin-left: 20px;
}
#step-2 .text-grpd {
  background: #F7F8F9;
  padding: 12px 20px;
  border-radius: 10px;
  color: #101828;
}

#step-2 .text-grpd a {
  text-decoration: underline !important;
  color: #3B82F6 !important;
}
#step-2 .wpcf7-spinner {
  position: absolute;
  bottom: -25px;
  left: 0;
}
#step-2 .btn-previous {
  color: #101828;
  font-weight: bold;
  font-size: 14px;
  position: relative;
  padding-left: 13px;
}

#step-2 .btn-previous:hover {
    color: #3B82F6 !important;
    opacity: .8;
}

#step-2 .btn-previous:hover:before {
    border-top: 1px solid #3B82F6 !important;
    border-left: 1px solid #3B82F6 !important;
    opacity: .8;
}

#step-2 .btn-previous:active {
  color: #3B82F6 !important;
  opacity: 1 !important;
}

#step-2 .btn-previous:active:before {
    border-top: 1px solid #3B82F6 !important;
    border-left: 1px solid #3B82F6 !important;
    opacity: 1 !important;
}

#step-2 .btn-previous:before {
    content: "";
    width: 6px;
    height: 6px;
    border-top: 1px solid #101828;
    border-left: 1px solid #101828;
    position: absolute;
    left: 0;
    top: 50%;
    transform: rotate(-45deg) translateY(-50%);
}


input.wpcf7-form-control.wpcf7-submit{
    width: 220px !important;
    padding: 15px 25px;
    margin: 0 0 auto 0;
    float: right;
    line-height: 1 !important;
    border: 2px solid #3B82F6 !important;
    background-color: #3B82F6 !important;
}

/* === STEP 3 === */
#step-3 {
  text-align: center;
}
#step-3 h2 {
  margin: 30px 0;
}
#step-3 .button-tel {
  background: #DBEAFE;
  color: #3B82F6;
  font-weight: bold;
  padding: 14px 20px;
  margin-top: 50px;
  border-radius: 5px;
  display: inline-block;
}

/* === SLIDES === */
.mon-custom-slider{
 margin-bottom: 50px;
}

.mon-custom-slider .swiper-pagination{
    position: relative;
    margin-top: 30px;
}

.mon-custom-slider .swiper-pagination-bullet{
    width: 12px;
    height: 12px;
}
.boxes-top .elementor-container {
  gap: 30px;
}
.custom-slide .etiquette {
  position: absolute;
  top: 15px;
  left: 20px;
  height: 28px;
  width: auto;
}
.custom-slide .big-image {
  width: 100%;
}
.custom-slide > p {
  position: absolute;
  bottom: 0;
  margin: 0 0 15px 20px;
  color: #fff;
  font-size: 30px;
  font-weight: 700;
  font-family: "Gilroy", Sans-serif;
}

.logo-carousel figure.swiper-slide-inner img {
    width: 139px !important;
}

#hide-footer {
display: none;
}
/* === ANIMATIONS === */
@keyframes fadeInUp {
  from {
    transform: translate3d(0, 30px, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes fadeInDown {
  from {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  to {
    transform: translate3d(0, 20px, 0);
    opacity: 0;
  }
}

/* === RESPONSIVE === */
.select-menu.select-menu-mobile {
  display: block;
}

@media (min-width: 721px) {
#step-2 .two-columns:not(:last-child){
  flex-wrap: nowrap;
}
input.wpcf7-form-control.wpcf7-submit{
    width: 244px !important;
}
#hide-footer {
  display: block;
  position: fixed;
  bottom: -100px;
  left: 0;
  width: 100%;
  transition: bottom 0.3s ease-in-out;
  z-index: 999;
  box-shadow: -1px -3px 8px 0px rgba(0,0,0,0.1);
-webkit-box-shadow: -1px -3px 8px 0px rgba(0,0,0,0.1);
-moz-box-shadow: -1px -3px 8px 0px rgba(0,0,0,0.1);
}
  .icon-tel svg{
    width: 1.35em !important;
  }
  .step-container {
   padding: 50px;
  }
  .step-container .quantity-block {
  	margin-top: 0;
  }
  #step-1 .two-columns,
  .step-container .choices {
    display: flex;
  }
  .select-menu.select-menu-mobile,
  #top-contact .far {
    display: none;
  }
  #top-tel:active,
  #top-contact:active{
   border-width: 2px 2px 2px 2px !important;
   border-color: #DBEAFE80;
   border-style: solid;
  }
  #top-tel .elementor-button-text{
    padding-top: 3px;
  }
  #top-tel .elementor-button-text,
  #top-contact .elementor-button-text {
    display: block;
  }
  .step-container .select-menu,
  .step-container .quantity-block {
    width: 50%;
  }
  #step-2 .two-columns p {
    width: 50%;
  }
  .boxes-top .elementor-col-25 {
    width: 23% !important;
  }
  .boxes-top .elementor-col-33 {
    width: 31.333% !important;
  }
  .boxes-top .elementor-container {
    gap: 2vw;
  }
  .mon-custom-slider .swiper-wrapper {
    gap: 35px;
  }
  .footer-menu .elementor-widget-icon-list{
    margin-bottom: 0 !important;
  }
}
