.dtm-section.section-modulaire-lp {
  background: #F4F4F3;
  }
.page-template-lp-custom-template .section-1 {
    padding-top: 0;
    padding-bottom: 0;
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 830px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.page-template-lp-custom-template .section-1.mobile {
    display: none;
}
.page-template-lp-custom-template .section-1::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 50%;
    bottom: 0;
    background: rgba(49, 33, 53, 0.20);
    z-index: -1;
}
.page-template-lp-custom-template .section-1 .col-1 {
    padding-right: 30px;
    padding-top: 80px;
    padding-bottom: 80px;
    width: 50%;
    margin-right: 0;
}
.page-template-lp-custom-template .section-1 .col-1 .titre {
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: var(--Brand-Beige, #ECE9E2);
    margin-bottom: 50px;
}
/*le dernier enfant de.page-template-lp-custom-template .section-1 .col-1 .titre a un margin-bottom de 0*/

.page-template-lp-custom-template .section-1 .col-1 h1 {
    color: var(--Brand-Beige, #ECE9E2);
    text-align: left;
    font-family: "Safiro Regular";
    font-size: 80px;
    font-style: normal;
    font-weight: 400;
    line-height: 90%;
    margin-bottom: 50px;
}
.page-template-lp-custom-template .section-1 .col-1 h1 .titre-2{
    color: rgba(217, 217, 217, 0.2);
}
.page-template-lp-custom-template .section-1 .col-1 h2 {
    color: var(--Brand-Beige, #ECE9E2);
    font-family: "Safiro Medium";
    font-size: 33px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%; /* 42.9px */
    padding-right: 160px;
    margin-bottom: 30px;

}
.page-template-lp-custom-template .section-1 .col-1 h3 {
    color: var(--Brand-Beige, #ECE9E2);

/* Headline 5 */
font-family: "Safiro Regular";
font-size: 50px;
font-style: normal;
font-weight: 400;
line-height: 120%; /* 60px */
margin-bottom: 20px;
}
.page-template-lp-custom-template .section-1 .col-1 h4 {
    color: var(--Brand-Beige, #ECE9E2);
    margin-bottom: 20px;

/* Body Copy */
font-family: Inter;
font-size: 18px;
font-style: normal;
font-weight: 400;
line-height: 155%; /* 27.9px */
}
/*le dernier element contenu dans .page-template-lp-custom-template .section-1 .col-1 à un margin-bottom de 0*/
.page-template-lp-custom-template .section-1 .col-1 *:last-child {
    margin-bottom: 0;
}

.dtm-section.section-modulaire-lp {
    padding-top: 80px;
    padding-bottom: 80px;
    overflow: visible;
}


.dtm-section.section-modulaire-lp .dtm-ligne {
    display: flex;
}

.dtm-section.section-modulaire-lp .col-form-lp {
    position: sticky;
    top: 80px;
    height: fit-content;
    align-self: flex-start;
    /* z-index: 10; */
    border-radius: 8px;

}






.bloc-lp {
    margin-bottom: 60px;
}







.formulaire-compose-container {
    width: 100%;
    padding: 60px;
    background: var(--Basics-White, #FFF);
  }.formulaire-compose-intro {
    margin-bottom: 40px;
  }
  .formulaire-compose h3 {
    color: var(--Brand-Purple, #312135);
    font-family: "Safiro Medium";
    font-size: 33px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
  }
  .formulaire-compose h4 {
    color: var(--Brand-Purple, #312135);
    /* Subtitle */
    font-family: Inter;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%; /* 31.2px */
  }
  .formulaire-compose p, .formulaire-compose a {
    color: var(--Brand-Purple, #312135);

/* Body Copy */
font-family: Inter;
font-size: 18px;
font-style: normal;
font-weight: 400;
line-height: 155%; /* 27.9px */
  }
  .message-success {
    padding: 35px;
    font-size: 20px;
    font-weight: 300;
    margin-bottom: 30px;
    background-color: #fff;
    border-radius: 6px;
    color: var(--Brand-Purple, #312135);
    border: solid 1px #312135;
    color: var(--Brand-Purple, #312135);
    font-family: Inter;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 155%;
    margin-top: 30px;
  }
  

  .form-columns-container {
    display: flex;
    justify-content: space-between;
    gap: 40px;
  }
  
  .form-column-left,
  .form-column-right {
    width: 47%;
    display: flex;
    flex-direction: column;
    /* gap: 20px; */
  }
  
  @media(max-width:980px){
    .form-columns-container {
      flex-direction: column;
    }
    .form-column-left,
    .form-column-right {
      width: 100%;
    }
  }
  

  .formulaire-compose .form-group input,
.formulaire-compose .form-group textarea,
.formulaire-compose select.custom-select-lp {
  width: 100%;
  border: none;
  border-bottom: 1px solid var(--Brand-Purple, #312135);
  /* padding: 10px 0px 10px 3px; */
  background: transparent;
  font-family: Inter;
  font-size: 16px;
  color: var(--Brand-Purple, #312135);
}

.formulaire-compose .form-group input::placeholder,
.formulaire-compose .form-group textarea::placeholder {
  color: var(--Brand-Purple, #312135);
  opacity: 0.7;
}

.formulaire-compose .form-group {
  /* margin-bottom: 25px; */
}


.formulaire-compose textarea {
    min-height: 120px;
  }
  

  .radio-label {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
    font-family: Inter;
    color: var(--Brand-Purple, #312135);
  }
  

  .checkbox-label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-family: Inter;
    font-size: 14px;
    color: var(--Brand-Purple, #312135);
  }
  

  .select2-container {
    width: 100% !important;
    border-bottom: solid 1px var(--Brand-Purple, #312135);
  }
  
  .select2-container--default .select2-selection--single {
    border: none;
    height: 52px;
    display: flex;
    align-items: center;
  }
  
  .select2-selection__rendered {
    font-family: Inter !important;
    font-size: 16px !important;
    color: var(--Brand-Purple, #312135) !important;
  }

  .form-buttons {
    margin-top: 40px;
    display: flex;
    flex-direction: row;
    gap: 40px;
    flex-wrap: wrap;
  }
  
  .btn-submit,
  .btn-dynamique {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px 15px;
    border-radius: 50px;
    background: transparent;
    color: var(--Brand-Purple, #312135);
    font-family: "Safiro Regular";
    font-size: 18px;
    border: 1px solid var(--Brand-Purple, #312135);
    cursor: pointer;
    transition: all 0.2s ease-in-out;
  }
  
  .btn-submit:hover,
  .btn-dynamique:hover {
    background: #3121352a;
  }

  
.formulaire-compose .btn-dynamique.btn-picto {
    gap: 10px;
    background-color: #fff;
    color: var(--Brand-Purple, #312135)
}
  .formulaire-compose {
    display: flex;
    /* gap: 40px; */
    flex-direction: column;
  }
  
  .form-columns-container {
    display: flex;
    justify-content: space-between;
    gap: 40px;
  }
  
  .form-column-left,
  .form-column-right {
    display: flex;
    flex-direction: column;
    /* gap: 20px; */
    width: 48%;
  }
  
  @media(max-width:980px){
    .form-columns-container {
      flex-direction: column;
    }
    .form-column-left,
    .form-column-right {
      width: 100%;
    }
  }
  
  .formulaire-compose .form-group input,
.formulaire-compose .form-group textarea,
.formulaire-compose .form-group select {
  width: 100%;
  display: flex;
  align-items: center;
  min-width: 0;
  border: none;
  border-bottom: 1px solid var(--Brand-Purple, #312135);
  padding: 10px 0px 10px 3px;
  background: transparent;
  color: var(--Brand-Purple, #312135);
  font-family: Inter;
  font-size: 16px;
  font-weight: 400;
  line-height: 155%;
}

.formulaire-compose .form-group input::placeholder,
.formulaire-compose .form-group textarea::placeholder {
  color: var(--Brand-Purple, #312135);
  opacity: 0.7;
  font-family: Inter;
  font-size: 16px;
  font-weight: 400;
}

.formulaire-compose .form-group {
    width: 100%;
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
  }
  
  .formulaire-compose .select2-container {
    width: 100% !important;
    /* border-bottom: solid 1px var(--Brand-Purple, #312135); */
  }
  
  .formulaire-compose .select2-container--default .select2-selection--single {
    border: none;
    height: 52px;
    display: flex;
    align-items: center;
    background: transparent;
  }
  
  .formulaire-compose .select2-selection__rendered {
    display: flex !important;
    width: 100%;
    color: var(--Brand-Purple, #312135) !important;
    font-family: Inter !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 155% !important;
  }
  
  .select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 10px;
  }
  

  .select2-dropdown { border: none !important; }

.select2-results__option {
  height: 52px;
  display: flex !important;
  align-items: center;
  color: var(--Brand-Purple, #312135);
  background: #ECE9E2 !important;
  font-family: Inter;
  font-size: 16px;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #312135 !important;
  color: #ECE9E2 !important;
}

.formulaire-compose .radio-label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: Inter;
    color: var(--Brand-Purple, #312135);
  }
  
  .formulaire-compose button[type="submit"],
.formulaire-compose .btn-submit,
.formulaire-compose .btn-dynamique {
  display: flex;
  width: auto;
  flex-grow: 1;
  padding: 10px 15px;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  background: var(--Brand-Purple, #312135);
  color: var(--Brand-Beige, #ECE9E2);
  font-family: "Safiro Regular";
  font-size: 18px;
  border: 1px solid var(--Brand-Purple, #312135);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

.formulaire-compose button[type="submit"]:hover,
.formulaire-compose .btn-submit:hover,
.formulaire-compose .btn-dynamique:hover {
  background: var(--Brand-Beige, #ECE9E2);
  color: var(--Brand-Purple, #312135);
}


.formulaire-compose-container .form-group.active label .name-label, 
.formulaire-compose-container .form-group:active label .name-label, 
.formulaire-compose-container .form-group:focus label .name-label, 
.formulaire-compose-container .form-group:focus-within label .name-label, 
.formulaire-compose-container .form-group:focus-visible label .name-label, 
.formulaire-compose-container .form-group:hover label .name-label {
    transform-origin: left;
    padding-left: 5px;
}

.formulaire-compose-container .form-group:focus-visible label .name-label {
    border: none;
    
}




.form-group input:focus-visible, .form-group.textarea textarea:focus-visible {
    outline: none;
    box-shadow: none;
}
textarea:focus-visible {
    outline: none;
    }































body .small-contact-form, body .small-login-form {
    margin-top: 60px;
    display: flex;
    gap: 40px;
    flex-direction: column;
  }
  body .small-contact-form .ligne1, body .small-login-form .ligne1 {
    display: flex;
    justify-content: space-between;
  }
  body .small-contact-form .ligne1 .col1, body .small-contact-form .ligne1 .col2, body .small-contact-form .ligne1 .col-full, body .small-login-form .ligne1 .col1, body .small-login-form .ligne1 .col2, body .small-login-form .ligne1 .col-full {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 48%;
  }
  body .small-contact-form .ligne1 .col1 input, body .small-contact-form .ligne1 .col2 input, body .small-contact-form .ligne1 .col-full input, body .small-login-form .ligne1 .col1 input, body .small-login-form .ligne1 .col2 input, body .small-login-form .ligne1 .col-full input {
    width: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    min-width: 0;
    margin: auto;
    width: 100%;
    border: none;
    border-bottom: 1px solid var(--Brand-Purple, #312135);
    padding: 10px 0px 10px 3px;
  }
  body .small-contact-form .ligne1 .col1 input::placeholder, body .small-contact-form .ligne1 .col2 input::placeholder, body .small-contact-form .ligne1 .col-full input::placeholder, body .small-login-form .ligne1 .col1 input::placeholder, body .small-login-form .ligne1 .col2 input::placeholder, body .small-login-form .ligne1 .col-full input::placeholder {
    color: var(--Brand-Purple, #312135);
    font-family: Inter;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 155%;
    /* 24.8px */
  }
  body .small-contact-form .ligne1 .col-full, body .small-login-form .ligne1 .col-full {
    width: 100%;
  }
 .formulaire-compose-container .form-group {
    position: relative;
    width: 100%;
    display: flex;
    height: 52px;
  }
 .formulaire-compose-container .form-group label {
    display: flex;
    justify-content: space-between;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    transition: all 0.3s ease;
  }
 .formulaire-compose-container .form-group label .name-label {
    transform: translate(5px, 1em) scale(1);
    transition: inherit;
    color: var(--Brand-Purple, #312135);
    text-align: center;
    font-family: Inter;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 155%;
    /* 24.8px */
  }
 .formulaire-compose-container .form-group label .fixed {
    display: none;
    transform: translate(0, 0) scale(0.8);
    color: rgba(49, 33, 53, 0.5);
    text-align: center;
    font-family: Inter;
    font-size: 10px;
    font-style: normal;
    font-weight: 400;
    line-height: 155%;
    /* 15.5px */
  }
 .formulaire-compose-container .form-group.active,.formulaire-compose-container .form-group:active,.formulaire-compose-container .form-group:focus,.formulaire-compose-container .form-group:focus-within,.formulaire-compose-container .form-group:focus-visible,.formulaire-compose-container .form-group:hover {
    border: none;
  }
 .formulaire-compose-container .form-group.active label .name-label,.formulaire-compose-container .form-group:active label .name-label,.formulaire-compose-container .form-group:focus label .name-label,.formulaire-compose-container .form-group:focus-within label .name-label,.formulaire-compose-container .form-group:focus-visible label .name-label,.formulaire-compose-container .form-group:hover label .name-label {
    transform: translate(0, 0) scale(0.8);
    opacity: 0.8;
  }
 .formulaire-compose-container .form-group.active label .fixed,.formulaire-compose-container .form-group:active label .fixed,.formulaire-compose-container .form-group:focus label .fixed,.formulaire-compose-container .form-group:focus-within label .fixed,.formulaire-compose-container .form-group:focus-visible label .fixed,.formulaire-compose-container .form-group:hover label .fixed {
    display: block;
  }
 .formulaire-compose-container .form-group.active input,.formulaire-compose-container .form-group.active textarea,.formulaire-compose-container .form-group:active input,.formulaire-compose-container .form-group:active textarea,.formulaire-compose-container .form-group:focus input,.formulaire-compose-container .form-group:focus textarea,.formulaire-compose-container .form-group:focus-within input,.formulaire-compose-container .form-group:focus-within textarea,.formulaire-compose-container .form-group:focus-visible input,.formulaire-compose-container .form-group:focus-visible textarea,.formulaire-compose-container .form-group:hover input,.formulaire-compose-container .form-group:hover textarea {
    background: rgba(49, 33, 53, 0.05);
    transition: all 0.3s ease;
    height: 52px;
    color: var(--Brand-Purple, #312135);
    text-align: left;
    font-family: Inter;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 155%;
    /* 24.8px */
    padding: 25px 0px 5px 5px;
  }
 .formulaire-compose-container .form-group.active .form-input label .name-label,.formulaire-compose-container .form-group:active .form-input label .name-label,.formulaire-compose-container .form-group:focus .form-input label .name-label,.formulaire-compose-container .form-group:focus-within .form-input label .name-label,.formulaire-compose-container .form-group:focus-visible .form-input label .name-label,.formulaire-compose-container .form-group:hover .form-input label .name-label {
    opacity: 0.8;
  }
 .formulaire-compose-container .form-group.active .form-input label .fixed,.formulaire-compose-container .form-group:active .form-input label .fixed,.formulaire-compose-container .form-group:focus .form-input label .fixed,.formulaire-compose-container .form-group:focus-within .form-input label .fixed,.formulaire-compose-container .form-group:focus-visible .form-input label .fixed,.formulaire-compose-container .form-group:hover .form-input label .fixed {
    opacity: 0.8;
  }
  body .mini-md-form .wpcf7-form-control-wrap, body .mini-md-form .form-control-wrap {
    width: 100%;
  }
  body .mini-md-form .form-input, body .mini-md-form .form-input:focus-visible {
    border: none;
    border-bottom: 1px solid var(--Brand-Purple, #312135);
    border-radius: none;
    position: relative;
    display: block;
    margin-bottom: 20px;
    height: 52px;
    background: rgba(49, 33, 53, 0);
    width: 100%;
    outline: none;
  }
  body .mini-md-form input[type="submit"], body .mini-md-form button[type="submit"] {
    display: flex;
    padding: 10px 15px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    align-self: stretch;
    border-radius: 50px;
    background: var(--Brand-Purple, #312135);
    color: var(--Brand-Beige, #ECE9E2);
    font-family: "Safiro Regular";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    /* 21.6px */
    transition: all 0.2s ease-in-out;
    border: 1px solid var(--Brand-Purple, #312135);
    display: flex;
    width: 100%;
    cursor: pointer;
  }
  body .mini-md-form input[type="submit"]:hover, body .mini-md-form button[type="submit"]:hover {
    background: var(--Brand-Beige, #ECE9E2);
    color: var(--Brand-Purple, #312135);
  }
  body .mini-md-form .select2-container {
    width: 100% !important;
    border-bottom: solid 1px var(--Brand-Purple, #312135);
  }
  body .mini-md-form .select2-container--default .select2-selection--single {
    /* border: 1px solid #aaa; */
    border: none;
    width: 100%;
    height: 52px;
    display: flex;
    align-items: center;
  }
  body .mini-md-form .select2-container--default .select2-selection--single .select2-selection__rendered {
    display: flex;
    width: 100%;
    color: var(--Brand-Purple, #312135);
    text-align: center;
    font-family: Inter;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 155%;
  }
  body .mini-md-form .select2-container--default .select2-selection--single .select2-selection__arrow {
    /* top: 1px; */
    top: 10px;
  }
  body .mini-md-form .selection {
    display: flex;
    width: 100%;
  }
  .select2-container--open {
    z-index: 999999999999 !important;
  }
  .select2-search--dropdown {
    display: none !important;
  }
  .select2-dropdown {
    border: none !important;
  }
  .select2-results li {
    height: 52px;
    display: flex;
    align-items: center;
    width: 100%;
    color: var(--Brand-Purple, #312135);
    text-align: center;
    font-family: Inter;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 155%;
    opacity: 1;
  }
  .select2-container--default .select2-results__option[aria-selected="true"] {
    background-color: transparent !important;
  }
  .select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #312135 !important;
    color: #ECE9E2 !important;
  }
  .select2-container--default .select2-results > .select2-results__options {
    background-color: #ECE9E2 !important;
    color: #312135 !important;
  }



  .formulaire-compose-container .form-group.textarea {
    min-height: 100px;
    height: auto;
}


.form-group-radio .name-label {
    color: var(--Brand-Purple, #312135);
    font-family: Inter;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 155%;
    margin-bottom: 10px;
    display: flex;
}
.radio-label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    }
.radio-label  [type="radio"] {
    width: 22px;
    height: 22px;
    }
.form-group-legal {
    padding: 30px 0;
    border-top: 1px solid var(--Brand-Purple-Light, #9E93A1);
}
.checkbox-label [type="checkbox"] {
    width: 22px;
    height: 22px;
}
.form-group-legal {
    margin-top: 30px;
}
.form-group-radio {
    margin-top: 30px;
}




/*BLOCS*/
/*product car*/
.product-card {
  overflow: hidden;
}

.product-card-item {
  /* height: 757px; */
}

.product-card-item .dtm-ligne {
  height: auto;
}

.product-card-item .col-full {
  background-color: #fff;
  padding: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.product-card-item .col-full .header-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.product-card-item .col-full .header-item .logo {
  width: 143px;
}

.product-card-item .col-full .header-item .logo svg {
  width: inherit;
}

.product-card-item .col-full .header-item .picto {
  width: 72px;
}

.product-card-item .col-full .header-item .picto svg {
  width: inherit;
}

.product-card-item .col-full h2 {
  border-top: 2px solid var(--Brand-Purple, #312135);
  border-bottom: 2px solid var(--Brand-Purple, #312135);
  color: var(--Brand-Purple, #312135);
  font-family: Sfizia;
  font-size: 60px;
  font-style: normal;
  font-weight: 400;
  line-height: 83%;
  margin-bottom: 30px;
  padding: 40px 0;
}

.product-card-item .col-full h2 svg {
  overflow: visible;
  height: 20px;
}

.product-card-item .col-full h2 svg path {
  fill: var(--Brand-Purple, #312135);
}

.product-card-item .col-full h3 {
  color: var(--Brand-Purple, #312135);
  font-family: "Safiro Regular";
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: -0.24px;
}

.product-card-item .col-1 img {
  width: 100%;
  max-width: 340px;
  height: 100%;
  object-fit: cover;
}

.product-card-item .col-2 {
  display: flex;
}

.product-card-item .col-2 a {
  margin-top: auto;
  margin-left: auto;
  margin-bottom: 40px;
  display: flex;
  padding: 10px 15px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  color: var(--Brand-Purple, #312135);
  border-radius: 50px;
  border: 1px solid var(--Brand-Purple, #312135);
  font-family: "Safiro Regular";
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 120%;
  text-decoration: none;
  transition: all 0.2s ease;
  text-align: center;
}

.product-card-item .col-2 a:hover {
  background-color: var(--Brand-Purple, #312135);
  color: #fff;
}
/*tuiles chiffre*/
.tuiles-chiffre {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    transition: var(--transition-step);
}
.tuile-chiffre {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex: 1 0 0;
    align-self: stretch;
    border-radius: 15px;
    min-height: 260px;
    padding: 20px;
    min-width: calc(100% / 3 - 20px / 3);
    max-width: calc(100% / 3 - 20px / 3);
}
.tuile-chiffre .chiffre {
    color: inherit;
    text-align: center;
    font-family: "Safiro Medium";
    font-size: clamp(40px, 3vw, 70px);
    font-style: normal;
    font-weight: 500;
    line-height: 120%; /* 84px */
} 
.tuile-chiffre p {
    color: inherit;
    text-align: center;
    font-family: "Safiro Medium";
    font-size: clamp(15px, 1.5vw, 24px);
    font-style: normal;
    font-weight: 500;
    line-height: 120%; /* 28.8px */
}

.tuiles-chiffre .tuile-chiffre:nth-child(1), 
.tuiles-chiffre .tuile-chiffre:nth-child(6n+7) {
    background-color: #F4644D;
    color: #C0311A;
}
.tuiles-chiffre .tuile-chiffre:nth-child(2), 
.tuiles-chiffre .tuile-chiffre:nth-child(6n+8) {
    background-color: #844C5E;
    color: #592234;
}

.tuiles-chiffre .tuile-chiffre:nth-child(3), 
.tuiles-chiffre .tuile-chiffre:nth-child(6n+9) {
    background-color: #ECE9E2;
    color: #9E93A1;
}

.tuiles-chiffre .tuile-chiffre:nth-child(4), 
.tuiles-chiffre .tuile-chiffre:nth-child(6n+10) {
    background-color: #9E93A1;
    color: #715E76;
}

.tuiles-chiffre .tuile-chiffre:nth-child(5), 
.tuiles-chiffre .tuile-chiffre:nth-child(6n+11) {
    background-color: #DAD6CF;
    color: #9E93A1;
}

.tuiles-chiffre .tuile-chiffre:nth-child(6), 
.tuiles-chiffre .tuile-chiffre:nth-child(6n+12) {
    background-color: #312135;
    color: #9E93A1;
}

/*points*/
.points-layout {
    padding: 30px;
    border-radius: 8px;
    background: var(--Basics-White, #FFF);
}
.points-layout h2 {
color: var(--Brand-Purple, #312135);

/* Subtitle Strong */
font-family: "Safiro Medium";
font-size: 24px;
font-style: normal;
font-weight: 600;
line-height: 120%; /* 28.8px */
letter-spacing: -0.24px;
margin-bottom: 20px;
}

.points-layout ul {
display: flex;
flex-wrap: wrap;
gap: 20px;
}

.points-layout li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 20px;
width: calc(((100% + 20px) * 1 / 2) - 20px);
color: var(--Brand-Purple, #312135);
padding: 20px 10px;
border-radius: 5px;
border: 1px solid var(--Brand-Beige-Dark, #DAD6CF);
background: rgba(158, 147, 161, 0.10);
font-family: Inter;
font-size: 18px;
font-style: normal;
font-weight: 400;
line-height: 155%; /* 27.9px */
}
.points-layout li.last-point-full-width {
width: 100%;
}
.points-layout li .point {
color: var(--Brand-Purple-Light, #9E93A1);
text-align: center;
leading-trim: both;
text-edge: cap;
font-family: Inter;
font-size: 20px;
font-style: normal;
font-weight: 700;
line-height: 130%; /* 26px */
display: flex;
width: 30px;
height: 30px;
flex-direction: column;
justify-content: center;
align-items: center;
gap: 10px;
border-radius: 50px;
border: 1px solid var(--Brand-Beige-Dark, #DAD6CF);
background: var(--Basics-White, #FFF);
}

.testimony-layout {
  border-radius: 8px;
  background: var(--Basics-White, #FFF);
}
.schema {
  border-radius: 8px;
  background: var(--Basics-White, #FFF);
}
.liste-layout {
  border-radius: 8px;
  background: var(--Basics-White, #FFF);
  padding: 30px;
}
.dtm-ligne.liste-tableau {
  border-radius: 8px;
  background: var(--Basics-White, #FFF);
  padding: 30px 30px 0 30px;
}
.slider-logo {
  border-radius: 8px;
  background: var(--Basics-White, #FFF);
  padding: 30px;
}
.timeline-layout {
  border-radius: 8px;
  background: var(--Basics-White, #FFF);
}
.faq {
  border-radius: 8px;
  background: var(--Basics-White, #FFF);
  padding: 30px;
}
.slider-logo h2 {
  font-family: "Safiro Medium";
  color: var(--Brand-Purple, #312135);
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 120%; /* 28.8px */
  letter-spacing: -0.24px;
  margin-bottom: 40px;
}
.product-card-item {
  border-radius: 8px;
  background: var(--Basics-White, #FFF);
  padding: 30px;
  padding-bottom: 0;
}
.case-layout {
  padding: 0;
}
.timeline-layout {
  position: relative;
  padding: 40px 0;
  max-width: 1200px;
  margin: 0 auto;
}

.timeline-layout h2 {
  color: var(--Brand-Purple, #312135);
  font-family: "Safiro Medium";
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 120%;
  letter-spacing: -0.24px;
  margin-bottom: 40px;
  text-align: center;
}

.timeline-container {
  display: flex;
  justify-content: center;
  position: relative;
  padding: 0 20px;
  margin: 0 auto;
  flex-wrap: nowrap;
  gap: 40px;
}

.element-timeline {
  position: relative;
  z-index: 2;
  text-align: center;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}

.step-border {
  background-color: #D8D8D8;
  border: 10px solid #fff;
  width: 80px;
  border-radius: 100%;
  justify-content: center;
  align-content: center;
  margin: auto;
  display: flex;
}

.step {
  display: inline-block;
  width: 40px;
  height: 40px;
  background: var(--Brand-Purple, #312135);
  color: white;
  border-radius: 50%;
  color: var(--Brand-Beige, #ECE9E2);
  text-align: center;
  font-family: Inter;
  font-size: 20px;
  font-style: normal;
  font-weight: 300;
  line-height: 100%; /* 31px */
  margin-bottom: 10px;
  margin-top: 10px;
  position: relative;
  z-index: 3;
  display: flex;
  justify-content: center;
  align-items: center;
}

.element-timeline p {
  color: var(--Brand-Purple, #312135);
  text-align: center;
  font-family: Inter;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 155%; /* 27.9px */
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 10px;
}

/* Ligne entre éléments (générée par jQuery) */
.timeline-separator {
  position: absolute;
  top: 39px;
  height: 1px;
  background: #DAD6CF;
  z-index: 1;
  transform-origin: left center;
}

/* Ligne verticale en mobile */
.timeline-separator-mobile {
  position: absolute;
  left: 39px;
  width: 1px;
  background: #DAD6CF;
  z-index: 1;
  transform: translateX(-50%);
}

/* Responsive */
@media (max-width: 767px) {
  .timeline-container {
      flex-direction: column;
      gap: 60px;
      padding: 0;
      margin-left: -10px;
      }
      .step-border {
      height: 80px;
      align-items: center;
      margin: 0;
              flex-shrink: 0;
      }
      .timeline-layout h2 {
      text-align: center;
      text-align: left;
      }
  
  .element-timeline {
      flex-direction: row;
      align-items: center;
      justify-content: center;
      gap: 20px;
      width: 100%;
  }
  
  .step {
      margin: 0;
  }
  
  .element-timeline p {
      text-align: left;
      margin-top: 0;
      flex: 1;
      justify-content: flex-start;
      font-size: 14px;
      line-height: 140%;
  }
  
  .timeline-separator {
      display: none;
  }
}


@media (max-width: 980px) {
    .page-template-lp-custom-template .section-1 {
        display: none;
    }

    .page-template-lp-custom-template .section-1.mobile {
        display: flex;
        padding: 0;
    }

    .page-template-lp-custom-template .section-1.mobile .dtm-ligne {
        flex-direction: column-reverse;
    }

    .page-template-lp-custom-template .section-1::before {
        display: none;
    }

    .page-template-lp-custom-template .section-1 .dtm-col {
        width: 100%;
    }

    .page-template-lp-custom-template .section-1 .col-1 {
        background-color: rgba(49, 33, 53, 0.20);
        display: flex;
        padding: 32px;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        gap: 30px;
        align-self: stretch;
    }

    .page-template-lp-custom-template .section-1 .col-2 {
        height: 275px;
    }

    .page-template-lp-custom-template .section-1 .col-1 h1 {
        font-size: 60px;
    }

    .page-template-lp-custom-template .section-1 .col-1 .titre {
        margin-bottom: 0;
    }

    .page-template-lp-custom-template .section-1 .col-1 h2 {
        font-size: 23px;
        padding-right: 0;
    }

    .page-template-lp-custom-template .section-1 .col-1 h3 {
        font-size: 40px;
        margin-bottom: 0;
    }

    .page-template-lp-custom-template .section-1 {
        min-height: auto;
    }

    .dtm-section.section-modulaire-lp {
        padding-top: 30px;
    }

    .bloc-lp {
        margin-bottom: 40px;
        overflow: hidden;
    }

    .bloc-basic-texte {
        padding: 0;
    }

    .bloc-basic-texte .rich-text-content h2 {
        font-size: 35px;
        margin-bottom: 40px;
    }

    .bloc-tuiles-picto {
        padding: 0;
    }

    .testimony-layout .header h3 {
        font-size: 20px;
    }

    .tuile-chiffre {
        min-height: 180px;
        min-width: 100%;
        max-width: 100%;
    }

    .liste-layout {
        padding: 30px;
    }

    .liste-layout svg {
        min-width: 24px;
        min-height: 24px;
    }

    .timeline-layout {
        padding: 30px;
    }

    .element-timeline p {
        font-size: 18px;
    }

    .faq {
        padding: 30px;
    }

    .liste-tableau.dtm-ligne {
        padding: 30px;
    }

    .product-card .dtm-ligne.ligne-2 {
        flex-direction: column-reverse;
        margin-top: 35px;
    }

    .product-card-item .col-2 a {
        margin-left: 0;
        margin-bottom: 0;
    }

    .case-layout .img-header {
        min-height: 185px;
        object-fit: cover;
    }

    .case-layout .button-list {
        padding: 0;
        flex-direction: column;
    }

    .points-layout li {
        width: 100%;
    }

    .points-layout {
        padding: 30px;
    }

    .form-buttons {
        flex-direction: column;
    }

    .formulaire-compose-container {
        padding: 30px;
    }

    .formulaire-compose {
        margin-top: 0;
    }

    .contact-card .button-list {
        flex-wrap: wrap;
    }
  }
/*products-mini-card*/
.products-mini-card {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}
    .products-mini-card .grid-item a .item-top {
        padding: 20px 30px;
    }


@media screen and (max-width: 1500px) {
  .products-mini-card .grid-item {
  width: calc(((100% + 40px) * 1 / 2) - 40px);
  }
  }
  @media screen and (max-width: 1250px) {
  .products-mini-card .grid-item {
  width: calc(((100% + 30px) * 1 / 2) - 30px);
  }
.products-mini-card {
    gap: 30px;
    }
  }
  .products-mini-card .products-mini-card {
  gap: 30px;
  }
  @media (min-width: 768px) and (max-width: 980px) {
    .products-mini-card .grid-item {
  width: calc(((100% + 20px) * 1 / 1) - 20px);

  }
 .products-mini-card {
    gap: 20px;
    }
  }
/*video*/
.video-container {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
  }
  
  .video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

/*testimony*/
.testimony-layout {
  display: flex;
  flex-direction: column;
  justify-content: center;
  /* align-items: center;
  text-align: center; */
  padding: 30px;
}
.testimony-layout .header {
  display: flex;
  gap: 40px;
  width: 100%;
  margin-bottom: 40px;
}
.testimony-layout .header .col-1 {
  width: 70px;
  min-width: 70px;
}
.testimony-layout .header .col-2 {
  width: auto;
  width: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.testimony-layout .header img {
  width: 70px;
  height: 70px;
  aspect-ratio: 1/1;
  border-radius: 100%;
}
.testimony-layout .header h3 {
  color: var(--Brand-Purple, #312135);
  font-family: "Safiro Medium";
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 120%; /* 28.8px */
  letter-spacing: -0.24px;
  margin-bottom: 0;
  text-align: left;
}
.testimony-layout blockquote {
  color: var(--Brand-Purple, #312135);
  font-family: Inter;
  font-size: 20px;
  font-style: italic;
  font-weight: 400;
  line-height: 130%; /* 26px */
  margin-bottom: 10px;
}
.testimony-layout .footer-testimony {
padding: 0;
}
.testimony-layout .footer-testimony .testimony-name {
color: var(--Brand-Corail, #F4644D);
font-family: Inter;
font-size: 16px;
font-style: normal;
font-weight: 600;
line-height: 130%; /* 20.8px */
margin-right: 10px;
}
.testimony-layout .footer-testimony .testimony-function {
  color: var(--Brand-Purple, #312135);
font-family: Inter;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 130%; /* 20.8px */
}
.boutons-supplementaires {
  display: flex;
  flex-direction: column;
margin-top: 90px;
}
.boutons-supplementaires h3 {
  color: var(--Brand-Purple, #312135);

/* Small Subtitle */
font-family: "Safiro Medium";
font-size: 20px;
font-style: normal;
font-weight: 500;
line-height: 130%; /* 26px */
margin-bottom: 40px;
}
.boutons-supplementaires .button-list {
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
}
.boutons-supplementaires .button-list .btn-supplementaire {
  display: flex;
padding: 9px 14px;
justify-content: space-between;
align-items: center;
gap: 10px;
min-width: calc(50% - 15px);
  max-width: calc(50% - 15px);
border-radius: 5px;
border: 1px solid var(--Brand-Beige-Dark, #DAD6CF);
background: var(--Brand-Beige, #ECE9E2);
width: auto;
flex-grow: 1;
color: var(--Brand-Purple, #312135);

/* Body Copy */
font-family: Inter;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 155%; /* 27.9px */
}
.boutons-supplementaires .button-list .btn-supplementaire:hover {
  color: #312135;
  border: 1px solid var(--Brand-Beige-Dark, #61594c);

}



@media (max-width: 980px) {
.boutons-supplementaires .button-list .btn-supplementaire {
  min-width: 100%;
  max-width: 100%;
  }
}

@media (max-width: 980px) {
  .products-mini-card .grid-item {
    width: calc(((100% + 20px) * 1 / 1) - 20px);
    z-index: 0;
  }
  .grid-item a .item-mid, .grid-item a .item-top {
    padding: 0 20px 20px 20px;
  }
}

@media (max-width: 767px) {
  .grid-item a .item-mid, .grid-item a .item-top {
    padding: 0 20px 20px 20px;
  }
}