html,
body {
 margin: 0;
 padding: 0;
    font-family: 'Nunito', sans-serif;
 color: #374649;
}
a{
 color: #374649;
}
ol,
li,
ul {
 list-style-type: none;
 list-style-type: none;
 margin: 0;
 padding: 0;
}

.slick-slide {
 outline: none
}

div {
 -webkit-box-sizing: border-box;
 box-sizing: border-box;
}
input:focus{
 outline: none;
}
.title-break {
 display: none;
}

p {
 margin: 0;
 padding: 0;
 font-family: 'Roboto', sans-serif; 
}
h1 {
 margin: 0;
 padding: 0;
    font-family: 'Nunito', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    line-height: 55px;
}
h2 {
 margin: 0;
 padding: 0;
    font-family: 'Nunito', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 32px;
}
h3 {
 margin: 0;
 padding: 0;
    font-family: 'Roboto', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 16px;
    line-height: 19px;
}
#page-container {
 background-color: #ffffff;
 width: 100%;
 max-width: 1440px;
 height: 100%;
 margin: 0 auto;
 padding: 0;
 position: relative;
 z-index: 0;
}

#header{
    width: 100%;
 position: relative;
}

#header img{
    width: 100%;
}

#logo{
 position: absolute;
 top: 10%;
 left: 3%;
}

#logo img{
  width: 100px;
}

#main_block{
    position: relative;
    left: 0;
    top: -70px;
    background-color: #ffffff ;
    border-radius: 32px 32px 0 0;
 padding: 20px 30px ;
}
#table_block{
 position: relative;
 margin: 0 auto;  
 width: 100%;
 max-width: 1200px; 
}
.title{
    /* identical to box height */
    letter-spacing: 0.1px;
    /* primary-color_carbon */
    text-align: center;
 margin-bottom: 10px;
 color: #B7CBD3;
}
.Sub-title{ 
    /* identical to box height */
    letter-spacing: 0.1px;
    /* primary-color_carbon */
    text-align: center;
 margin-bottom: 20px;
 color: #374649;
}
.back-link{
 position: absolute;
 top: 15px;
 left: 2%;
}
#form_box{
 width: 100%;
 max-width: 1122px;
 margin: 0 auto;
}
.form_bg{ 
    border-radius: 16px;
 display: flex;
 flex-direction: column;
 justify-content :center;
 padding: 20px 40px 20px 40px;
 gap: 0px;
 background-color: #F7F9FA;
 width: 100%;
 margin-top: 20px; 
}
#form_subject{
 display: flex;
 flex-direction: column;
 justify-content :center;
}
.table_title{
 text-align: center;
}
.table_sub_title{
 text-align: center;
}
label{
 /* text body_roboto bold 16 */
 font-family: 'Roboto', sans-serif;
 font-style: normal;
 font-weight: 700;
 font-size: 16px;
 line-height: 19px;
 color: #374649;
}
input[type=text], input[type=email]{
 width: 100%;
 height: 45px;
 padding: 0px 20px;
 color: #374649;
 margin: 8px 0;
 display: inline-block;
 border:0;
 border-radius: 4px;
 box-sizing: border-box;
 font-family: 'Roboto';
 font-style: normal;
 font-weight: 400;
 font-size: 16px;
 line-height: 19px;
  }

  input[type=submit] {
 width: 141px;
 height: 46px;
 background-color: #ED0000;
 color: #ffffff;
 padding: 14px 20px;
 border: none;
 border-radius: 80px;
 cursor: pointer;
 margin: 30px auto 10px auto;
 font-family: 'Roboto', sans-serif;
 font-style: normal;
 font-weight: 700;
 font-size: 14px;
  }
  
  input[type=submit]:hover {
 background-color: #b90101;
  }

  input[type=submit].inactive {
 background-color: #F7F9FA;
 color: #B7CBD3;
 cursor: default;
  }

  .checkbox-container{
 width: 100%;
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
 align-items: center;
  }
  .checkbox-container div{ 
 margin: 10px;
  }
  .checkbox-container div label{  
 cursor: pointer;
  }

  .checkbox-container div label input[type=checkbox]{
 display: none;
  }

  
  .checkbox-container div label span{
 position: relative;
 display: flex;
 justify-content: center;
 align-items: center;
 background: #ffffff;
 color: #374649;
 font-family: 'Nunito', sans-serif;
 font-size: 20px;
 line-height: 27px;
 overflow: hidden;
 width: 320px;
 height: 200px;
 text-align: center; 
 border-radius: 16px;
  }

  .checkbox-container div label span p {
 position: relative;
 top: 30px;
  }

  

  .checkbox-container div label span:before{
 position: absolute;
 top: 10%;
 opacity: 1;
  }

  
  .checkbox-container div label span:after{
 position: absolute;
 top: 10%;
 opacity: 0;
  }
  .checkbox-container div label span.mobilite:before{
 content: url("https://image.experience.totalenergies.fr/lib/fe3211717564047d7d1279/m/2/6dc81962-8b45-43f1-9628-10e123a8a159.png"); 
  }

  .checkbox-container div label span.mobilite:after{
 content: url("https://image.experience.totalenergies.fr/lib/fe3211717564047d7d1279/m/2/26dac8df-6064-462a-b195-fb61e5fa4fab.png"); 
  }
  
  
  .checkbox-container div label span.habitat:before{
 content: url("https://image.experience.totalenergies.fr/lib/fe3211717564047d7d1279/m/2/5a963de5-cb1d-470b-9971-5c8be5547b8e.png"); 
  }

  
  .checkbox-container div label span.habitat:after{
 content: url("https://image.experience.totalenergies.fr/lib/fe3211717564047d7d1279/m/2/3ebdc1ef-8503-4dfa-9f9e-0e258f062162.png"); 
  }
  
  
  .checkbox-container div label span.durable:before{
 content: url("https://image.experience.totalenergies.fr/lib/fe3211717564047d7d1279/m/2/bd6acaee-7501-445b-a440-51453daf66e9.png"); 
  }

  
  .checkbox-container div label span.durable:after{
 content: url("https://image.experience.totalenergies.fr/lib/fe3211717564047d7d1279/m/2/d3b3b696-1f44-4e99-afe6-8f51bf11a538.png"); 
  }

  .checkbox-container div label input[type=checkbox]:checked + span{
 color: #ED0000;
  }

  
  .checkbox-container div label input[type=checkbox]:checked + span:before{
 opacity: 0;
  }

  
  .checkbox-container div label input[type=checkbox]:checked + span:after{
 opacity: 1;
  }

  #links_box{
   width: 100%;
   max-width: 1000px;
   margin: 0 auto;
  }
  .links_title{
 text-align: center;
 margin: 20px 0;

  }
  .link-TE {
 width: 100%;
 max-width: 450px;
 margin: 0 auto;
  }
  .link-TE img{
 width: 100%;
  }
  .link-social-box{
 width: 100%;
 max-width: 450px;
 margin: 20px auto;
 text-align: center;
 border-radius: 16px;
 background-color: #F7F9FA;
 height: 150px;
 display: flex;
 flex-direction: column;
 justify-content: center;
 align-items: center;
  }
  
  .link-social{
 display: flex;
 flex-direction: row;
 justify-content: center;
 align-items: center;
 margin-top: 10px;
  }
  .link-social div{
 margin: 5px;
  }
/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

@media screen and (max-width: 1023px) {


    #main_block {
        top: -30px;
    }

    .checkbox-container div label span {
        font-size: 13px;
        line-height: 16px;
        width: 180px;
        height: 165px;
    }
    .checkbox-container {
        -webkit-box-pack: space-evenly;
            -ms-flex-pack: space-evenly;
                justify-content: space-evenly;
    }

}

@media screen and (max-width: 767px) {
    h1 {
        font-size: 22px;
        line-height: 30px;
    }
    h2{
       font-size: 15px;
       line-height: 21px;
   }
    h3{
       font-size: 12px;
       line-height: 14px;
   }

    #logo img {
        width: 60px;
    }
    .title h1{
        text-align: left;
    }
    
.Sub-title{ 
    text-align: left;
}

       #main_block {
        top: -14px;
        border-radius: 10px 10px 0 0;
        padding: 20px 30px;
    }
    .back-link{
        position: relative;
        top: 0;
        left: 0;
    }  
    .title_text p {
        font-size: 12px;
        line-height: 14px;
        text-align: left;
    }

    .form_bg {
        padding: 25px 15px;
    }

    .table_title{
        text-align: left;
    }
    .table_sub_title {
        text-align: left;
        margin-bottom: 10px;
    }
    .checkbox-container div label span {
        font-size: 11px;
        line-height: 16px;
        width: 120px;
        height: 130px;
    }
    .checkbox-container {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
    .checkbox-container div label span p {
        top: 40px;
    }
     
}