/* FONTS */
@import url("https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@200;300;400;600;700;800;900&family=Poppins:wght@100;200;300;400;500;600;700;800;900&display=swap");
body {
  --purple: #6732ba;
  --pink: #ff2f89;
  --orange: #ffb85b;
  --blue: #1ad4da; font-family: 'Nunito Sans', sans-serif;margin:0;padding:0}

body.hc {
  --purple: #6732ba;
  --pink: #e21b79;
  --orange: #DE7C12;
  --blue: #088391; }

body.hc a {
  font-weight: 500; }
/*
* {
  font-family: 'Poppins', sans-serif; }
*/


h1 {
  font-size: 50px;
  font-weight: 600;
  line-height: 55px;font-family: 'Poppins', sans-serif; margin:0;}

h2 {
  font-size: 35px;
  font-weight: 600;
  line-height: 1.3; font-family: 'Poppins', sans-serif;}

h3 {
  font-size: 30px;
  font-weight: 600;
  line-height: 1.3;font-family: 'Poppins', sans-serif; }

h4 {
  font-size: 27px;
  font-weight: 600;
  line-height: 1.3; font-family: 'Poppins', sans-serif;}

/*a {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  text-decoration: none; }*/

p {
  font-size: 16px;font-weight: 400;
  line-height: 1.5; }

p.sm {
  font-size: 16px; }

p.md {
  font-size: 20px; }

p.lg {
  font-size: 24px; }

ul{margin-left:30px;}

@media (max-width: 1400px) {
  h1 {
    font-size: 45px;
    font-weight: 600;
    line-height: 1.3; }
  h2 {
    font-size: 30px;
    font-weight: 600;
    line-height: 1.3; }
  h3 {
    font-size: 25px;
    font-weight: 600;
    line-height: 1.3; }
  h4 {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.3; }
  p {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5; }
  p.sm {
    font-size: 16px; }
  p.md {
    font-size: 18px; }
  p.lg {
    font-size: 20px; }
  /*a {
    font-size: 12px; } }
*/
@media (max-width: 950px) {
  h1 {
    font-size: 40px;
    font-weight: 600;
    line-height: 1.3; }
  h2 {
    font-size: 30px;
    font-weight: 600;
    line-height: 1.3; }
  h3 {
    font-size: 26px;
    font-weight: 600;
    line-height: 1.3; }
  h4 {
    font-size: 24px;
    font-weight: 600;
    line-height: 1.3; }
  p {
    font-weight: 400;
    line-height: 1.5; }
  p.sm {
    font-size: 16px; }
  p.md {
    font-size: 16px; }
  p.lg {
    font-size: 18px; } }

@media (max-width: 500px) {
  h1 {
    font-size: 32px;
    font-weight: 600;
    line-height: 1.3; }
  h2 {
    font-size: 26px;
    font-weight: 600;
    line-height: 1.3; }
  h3 {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.3; }
  h4 {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.3; }
  p {
    font-weight: 400;
    line-height: 1.5; }
  p.sm {
    font-size: 16px; }
  p.md {
    font-size: 16px; }
  p.lg {
    font-size: 16px; } }

/* GLOBAL */
* {
  padding: 0;
  margin: 0; }

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

@media (min-width: 1101px) and (max-width: 1400px) {
  .adp_pad-block-0-100 {
    padding-left: 100px !important;
    padding-right: 100px !important; }
  .adp_pad-block-20-100 {
    padding: 20px 100px !important; } }

@media (min-width: 950px) and (max-width: 1100px) {
  .adp_pad-block-0-100 {
    padding-left: 60px !important;
    padding-right: 60px !important; }
  .adp_pad-block-20-100 {
    padding: 20px 60px !important; } }

/* FORMS */
form.hs-form {
  background-color: transparent !important; }

/* HIGH CONTRAST MODE */
html {
  scroll-behavior: smooth; }

/* HIGH CONTRAST MODE */
.hc_mode {
  position: fixed;
  right: 30px;
  bottom: 30px;
  padding: 15px;
  cursor: pointer;
  background: black;
  color: white;
  font-size: 13px;
  font-family: Poppins;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  z-index: 99999999999;
  box-shadow: 0 0px 20px rgba(0, 0, 0, 0.09);
  border-radius:55px;
  transition: all .25s ease-in-out; }

@media (max-width:950px) {
  .hc_mode {bottom:20px;right:20px;}
}

.hc_mode.active {
  background: #1dd1a1;
  border-radius:50%; }

.hc_mode i {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  width: 25px;
  height: 25px;
  color: white; }

.hc_mode .text {
  width:0px;
  height:13px;
  display:flex;
  align-items:center;
    margin-right:0px;
  white-space: nowrap;
  line-height:13px;
  color:white;
  opacity:0;
  transition:all .25s ease-in-out;
  overflow:hidden;
}

.hc_mode .text p {
  line-height:1;
}

.hc_mode:hover .text {
  width:auto;
  color:white;
  margin-right:15px;
  overflow:hidden;
  opacity:1;
}

.hc_mode:hover {
  border-radius:25px;
}

.loader,
.loader:after {
  border-radius: 50%;
  width: 10em;
  height: 10em; }

.loader {
  font-size: 10px;
  position: relative;
  text-indent: -9999em;
  border-top: 1.1em solid #fafbfc;
  border-right: 1.1em solid #fafbfc;
  border-bottom: 1.1em solid #fafbfc;
  border-left: 1.1em solid var(--purple);
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear; }

@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

#loadingDiv {
  position: fixed;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  left: 0;
  width: 100%;
  height: 100vh;
  background: white;
  z-index: 999999999; }

form.hs-form {
  background-color: transparent !important;
  padding: 20px; }

.hs-form-field {
  margin-bottom: 10px; }

.hs-form input, .hs-form textarea {
  background: #f1f4f8; }

.hs-form input[type="submit"] {
  padding: 12px 24px;
  font-size: 14px;
  width: 100%;
  text-align: center;
  background-color: #6732ba;
  border-radius: 3px;
  border: none;
  outline: none;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.15);
  text-decoration: none;
  transition: background-color .25s ease-in-out;
  color: white; }

.hs-form input[type="submit"]:hover {
  background-color: #ff2f89; }

.hs-form textarea {
  resize: vertical; }

/* POPUP FORM */

.main_contact-form {
position: fixed;
  visibility:hidden;
  opacity:0;
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  min-height:100vh;
  overflow:scroll;
  left:0;
  top:0;
  z-index:-1;
  transition: all .5s ease-in-out;
}

.main_contact-form .filter {
position: absolute;
  background: rgba(0,0,0,0.7);
  width:100%;
  height:100vh;
  left:0;
  top:0;
}

.main_contact-form.is-open {
position: fixed;
  display:flex;
  visibility:visible;
  opacity:1;
  justify-content:center;
  align-items:center;
  background: rgba(0,0,0,0.7);
  width:100%;
  height:100vh;
  left:0;
  top:0;
  z-index:9999;
}


.main_contact-form .container {
  overflow:scroll;
height: auto;
  max-width:1200px;
  background: white;
  border-radius:5px;
  width: calc(100% - 40px);
  position:relative;
  display:grid;
  grid-template-columns: 1fr 1fr;
  transform: scale(0);
  transition: .33s ease-in;
}


.main_contact-form.is-open .container {
  transform: scale(1)
}
/*main p ul, main ul{
margin-left:36px;
  list-style-image: url(https://4812490.fs1.hubspotusercontent-eu1.net/hubfs/4812490/arrow-jlo.png);
  margin-bottom:24px;
}
main ul li,p ul li, main ul li{
margin : 4px 0px 4px 30px;
  list-style-image: url(https://4812490.fs1.hubspotusercontent-eu1.net/hubfs/4812490/arrow-jlo.png);
}*/
  
.main_contact-form .container > div:first-of-type {
  background: url(https://4812490.fs1.hubspotusercontent-eu1.net/hubfs/4812490/couverture%20groupe%20%281%29.webp);
  background-size:cover;
  position:relative;
  display:flex;
  align-items:flex-end;
  background-position:center;
}



.main_contact-form .container > div:first-of-type h2 {
  color:white;
  position:relative;
  z-index:999;
  padding:50px;
  margin-top:auto;
}

.main_contact-form .container > div:first-of-type::before {
    content: '';
    z-index: 1;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background-color: var(--purple);
    opacity: .5;
}

.main_contact-form .container > div:first-of-type::after {
      content: '';
    position: absolute;
    width: 100%;
    top: 0;
  background-size:cover;
  background-position:center;
    left: 0;
    height: 100%;
    background: url(https://4812490.fs1.hubspotusercontent-eu1.net/hubfs/4812490/logos_jlo/motif.png);
    opacity: .05;
}

.main_contact-form .container > div:last-of-type {
  
  position:relative;
  display:flex;
  flex-direction:column;
  padding:50px; }

  
  .main_contact-form .container > div:last-of-type .heading {
  display:flex;
  justify-content:space-between;
  margin-bottom: 30px;
    align-items:center;
}

  .main_contact-form .container > div:last-of-type .heading img {
    max-width:200px;
}

.main_contact-form .container > div:last-of-type .content {
  display:flex;
  flex-direction:column;
  padding:0px 0px 0px 20px;
  border-left: 3px solid var(--pink);
  margin-bottom: 20px;
}

.main_contact-form .container > div:last-of-type form.hs-form {
  padding: 0 !important;
}

.main_contact-form .container > div:last-of-type h4 {
  color: #1a1a1a;
}

.main_contact-form .container > div:last-of-type p {
}

.main_contact-form .container fieldset {
  max-width:100%;
  margin-bottom:10px;
}

.main_contact-form .container fieldset .field .hs-input {
  width:100% !important;
}

.main_contact-form .container fieldset .field:first-of-type .input {
  margin-right: 20px;
}

.main_contact-form .container fieldset .field:last-of-type .input {
  margin-right: 0px;
}

.main_contact-form .container textarea {
  min-height: 100px;
}

.main_contact-form .container input {
border-radius:3px;
border: 1px solid #E8E8E8;
}

.main_contact-form .container input[type="submit"] {
  width: 100%;
  text-align:cetner;
}



.main_contact-form .container .close_form {
  font-size:60px;
  line-height:60px;
  font-weight:100;
  position:relative;
  cursor:pointer;
}

@media (max-width:950px) {
  .main_contact-form .container {
  grid-template-columns: 1fr;
    min-height:100%;
    width: 100%;
    position:absolute;
    top:0;
    left:0;
    
}
.main_contact-form .container > div:first-of-type {
  display:none;
}
  
  .main_contact-form .container > div:last-of-type {
  padding: 20px;
}
  


}

@media (max-width:450px) {
  .main_contact-form .container fieldset .field:first-of-type .input {
  margin-right: 0px;
}

.main_contact-form .container fieldset .field:last-of-type .input {
  margin-right: 0px;
}
}

.lazy {
   background-image: none !important;
  background: none !important;
}