:root {
    --primary-light-color: #ffffff;
    --secondary-light-color: #0CBBAA;
    --tertiary-light-color: #EC4125;
    --tertiary-light-color2: #ff5035;
    --primary-dark-color: #000000;
    --secondary-dark-color: #327169;
    --tertiary-dark-color: #D400DD;
    --footer-h:10rem;
  }
@font-face {
    font-family: "Lato";
    font-weight: 400;
    src: url("../assets/fonts/lato/Lato-Regular.ttf");
}
@font-face {
    font-family: "Lato";
    font-weight: 800;
    src: url("../assets/fonts/lato/Lato-Bold.ttf");
}



@font-face {
    font-family: "BebasNeue";
    src: url("../assets/fonts/Bebas_Neue/BebasNeue-Regular.eot");
    src: url("../assets/fonts/Bebas_Neue/BebasNeue-Regular.eot?#iefix") format("embedded-opentype"), url("../assets/fonts/Bebas_Neue/BebasNeue-Regular.woff2") format("woff2"), url("../assets/fonts/Bebas_Neue/BebasNeue-Regular.woff") format("woff"), url("../assets/fonts/Bebas_Neue/BebasNeue-Regular.svg#BebasNeue-Regular") format("svg"), url("../assets/fonts/Bebas_Neue/BebasNeue-Regular.ttf") format("truetype");
}
@font-face {
    font-family: "BebasNeue";
    font-weight: 800;
    src: url("../assets/fonts/Bebas_Neue/BebasNeue\ Bold.ttf");
}

* {
    margin: 0;
    padding: 0;
    border: 0;
    font-family: "BebasNeue";
}

*:focus {
    outline: 0 !important;
}

body {
    font-family: "BebasNeue";
    font-size: 1.4rem;
    text-align: center;
    color: #000000;
}
p {
    font-weight: 400;
}
p,p strong,p span {
    font-family: "Lato";
}
p strong,p span {
    font-weight: 800;
}
h1,h2,h3,h4,h5,h6 {
    font-family: "BebasNeue";
    font-weight: 800;
}


main {
    position: relative;
    height: 100vh;
    overflow: hidden; 
}

section {
    height: 100vh;
    width: 100vw;
    overflow-y: auto;
}
.cache {
    height: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
}
.section1 {
    background-color: var(--primary-light-color);
    color: var(--primary-light-color);
    padding: 14.5rem 0 0 0;
    position: relative;
}
.section_container {
    margin: 0 auto;
    width: 172.2rem;
}
.section1 .section_container {
    width: 174.2rem;
}
.section1 img {
    width: 100%;
    display: block;
    position: relative;
    z-index: 1;
}
.box1 {
    width: 119.47rem;
    background-color: var(--secondary-dark-color);
    padding: 2.7rem 14rem 4.3rem 14rem;
    border-radius: 11rem;
    border-bottom-left-radius: 0;
    text-align: center;
    margin: 0 auto;
}
.box1 h1 {
    position: relative;
    font-size: 8.5rem;
    line-height: 9.1rem;
    letter-spacing: 0.5rem;
    padding-right: 4.5rem;
    margin-bottom: 1rem;
}
.box1 h1::after {
    content: '2023';
    padding: 0.1rem 0.1rem 0 0.5rem;
    position: absolute;
    top: 0;
    right: -3.7rem;
    font-size: 4.5rem;
    line-height: 4.5rem;
    color: var(--primary-light-color);
    background-color: var(--tertiary-light-color);
    transform: rotate(-8deg);
}
.box1 h4 {
    font-size: 3.3rem;
    line-height: 3.6rem;
    letter-spacing: 0.18rem;
    margin-bottom: 2.2rem;
}
.box1 p {
    font-size: 2.2rem;
    line-height: 3rem;
    margin-bottom: 0;
}
.section_holder {
    position: absolute;
    left: 50%;
    top: 43rem;
    transform: translateX(-50%);
    z-index: 1;
}
.sec1-btns {
    width: 108rem;
    margin: 0 auto;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    height: 17.35rem;
    padding: 0 3.6rem 1.1rem 7.8rem;
    margin-top: 3.4rem;
}
.sec1-btns::after {
    content: ' ';
    position: absolute;
    width: 2px;
    height: 100%;
    background-color: var(--primary-dark-color);
    left: calc(50% - 1px);
    top: 0;
}
.sec1-btns button,
.sec1-btns a {
    text-align: left;
    background-color: var(--secondary-dark-color);
    color: var(--primary-light-color);
    font-size: 3rem;
    line-height: 3.4rem;
    text-transform: uppercase;
    border-top-right-radius: 12.2rem;
    border-bottom-right-radius: 12.2rem;
    padding: 1.95rem 8.4rem 1.95rem 8.4rem;
    padding: 2.2rem 8.4rem 1.7rem 8.4rem;
    width: 44.5rem;
    letter-spacing: 0.15rem;
    position: relative;
    z-index: 1;
    cursor: pointer;
}
.sec1-btns a:hover {
    text-decoration: none;
}
.sec1-btns button::after,
.sec1-btns a::after {
    content: '1';
    position: absolute;
    border: 0.3rem solid var(--secondary-dark-color);
    background-color: var(--primary-light-color);
    padding: 1.2rem 2.56rem;
    left: -3.4rem;
    top: -4.4rem;
    border-radius: 50%;
    color: var(--secondary-dark-color);
    z-index: 2;
    font-size: 6.8rem;
    line-height: 6.8rem;
    font-family: "Lato";
    font-weight: 800;
    transition: all 0.5s ease;
}
.sec1-btns button::before,
.sec1-btns a::before {
    position: absolute;
    top: -3.8rem;
    left: 7.5rem;
    content: 'Ma participation citoyenne';
    font-size: 2.6rem;
    line-height: 3.2rem;
    font-family: "Lato";
    font-weight: 800;
    text-transform: initial;
    color: var(--primary-dark-color);
    letter-spacing: 0rem;
}
.sec1-btns button.btn2,
.sec1-btns a.btn2 {
    background-color: var(--tertiary-light-color);
    color: var(--primary-light-color);
    font-size: 4rem;
    line-height: 4rem;
    padding: 3.35rem 8.4rem;
}
.sec1-btns button.btn2::after,
.sec1-btns a.btn2::after {
    content: '2';
    border: 0.3rem solid var(--tertiary-light-color);
    background-color: var(--primary-light-color);
    color: var(--tertiary-light-color);
}
.sec1-btns button.btn2::before,
.sec1-btns a.btn2::before {
    content: 'Ma participation solidaire';
}
.sec1-btns button .btn-15,
.sec1-btns a .btn-15 {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: var(--secondary-light-color);
    border-top-right-radius: 12.2rem;
    border-bottom-right-radius: 12.2rem;
    transition: all 0.5s ease;
}
.sec1-btns button.btn2 .btn-15,
.sec1-btns a.btn2 .btn-15{
    background-color: var(--tertiary-light-color2);
}
.sec1-btns button:hover .btn-15,
.sec1-btns a:hover .btn-15 {
    left: 0;
    width: 100%;
}
.sec1-btns button:hover::after,
.sec1-btns a:hover::after {
    border-color: var(--secondary-light-color);
    color: var(--secondary-light-color);
}
.sec1-btns button.btn2:hover::after,
.sec1-btns a.btn2:hover::after {
    border-color: var(--tertiary-light-color2);
    color: var(--tertiary-light-color2);
}
.section2,
.section3,
.section4,
.section5,
.section6,
.section7 {
    position: relative;
}
.main-holder {
    display: flex;
    width: 2000vw;
    height: 100vh;
    transition-duration: 0.5s;
}
.section-qes {
    height: 100vh;
    transition-duration: 1.5s;
    overflow: hidden;
    background-color: var(--secondary-dark-color);
    color: #ffffff;
    position: relative;
    z-index: 2;
}
.section-res {
    height: 100vh;
    background-color: #2e7269;
    color: #ffffff;
    transition-duration: 1.5s;
    overflow: hidden;
    position: relative;
    z-index: 3;
    opacity: 1;
}
.header {
    position: absolute;
    z-index: 4;
    top: 0;
    left: 0;
    right: 0;
    background-color: transparent;
}
.header-container {
    padding: 1.6rem 0.6rem 0 0.9rem;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.header-logo {
    width: 31.6rem;
    position: fixed;
    z-index: 999;
}
.header-logo img {
    display: block;
    width: 100%;
}
.header-logo img:nth-child(2) {
    display: none;
}
.active .header-logo img:nth-child(1),
.section2 .header .header-logo img:nth-child(1),
.section3 .header .header-logo img:nth-child(1),
.section4 .header .header-logo img:nth-child(1),
.section5 .header .header-logo img:nth-child(1),
.section6 .header .header-logo img:nth-child(1),
.section7 .header .header-logo img:nth-child(1) {
    display: none;
}
.active .header-logo img:nth-child(2),
.section2 .header .header-logo img:nth-child(2),
.section3 .header .header-logo img:nth-child(2),
.section4 .header .header-logo img:nth-child(2),
.section5 .header .header-logo img:nth-child(2),
.section6 .header .header-logo img:nth-child(2),
.section7 .header .header-logo img:nth-child(2) {
    display: block;
}
.primary-btn {
    font-size: 3rem;
    line-height: 3rem;
    width: 26.9rem;
    padding: 2.35rem 0;
    color: var(--primary-light-color);
    background-color: var(--tertiary-light-color);
    transition: all 0.5s ease;
    border-radius: 12.2rem;
    border-bottom-left-radius: 0;
    font-family: "BebasNeue";
    display: block;
    text-align: center;
    overflow: hidden;
    cursor: pointer;
    position: relative;
    z-index: 1;
}
.animation1 {
    position: relative;
    overflow: hidden;
    z-index: 1;
}
.animation1::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    right: 0;
    z-index: -1;
    background-color: var(--secondary-dark-color);
    transition: all 0.5s ease;
}
.primary-btn:hover,
.animation1:hover{
    color: var(--primary-light-color);
    text-decoration: none;
}
.animation1:hover::after {
    left: 0;
    width: 100%;
}
.header-box {
    display: flex;
    justify-content: space-between;
    align-items: start;
    width: 45.2rem;
}
.header .primary-btn {
    margin-top: 2.2rem;
    z-index: -1;
    opacity: 0;
}
.circle {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 16.7rem;
    height: 16.7rem;
    border: 1rem solid var(--primary-light-color);
    background-color: var(--tertiary-light-color);
    color: var(--primary-light-color);
    border-radius: 50%;
    cursor: pointer;
}
.section2 .circle,
.section3 .circle,
.section4 .circle,
.section5 .circle,
.section6 .circle,
.section7 .circle {
    width: 14.7rem;
    height: 14.7rem;
    border: 0.2rem solid var(--primary-light-color);
    background-color: var(--secondary-dark-color);
}
.circle span {
    display: block;
    align-items: center;
    font-size: 3.2rem;
    line-height: 3.2rem;
    font-weight: 800;
}
.circle img {
    display: none;
    width: 3.47rem;
    height: 3.47rem;
}
.circle.active span {
    display: none;
}
.circle.active img {
    display: block;
}
.header.active  .primary-btn,
.section2 .header  .primary-btn,
.section3 .header  .primary-btn,
.section4 .header  .primary-btn,
.section5 .header  .primary-btn,
.section6 .header  .primary-btn,
.section7 .header  .primary-btn {
    opacity: 1;
    z-index: 1;
}
.header.active .header-container,
.section2 .header .header-container,
.section3 .header .header-container,
.section4 .header .header-container,
.section5 .header .header-container,
.section6 .header .header-container,
.section7 .header .header-container {
    padding: 1.4rem 1.4rem 0 2.9rem;
}
.header.active .header-logo,
.section2 .header .header-logo,
.section3 .header .header-logo,
.section4 .header .header-logo,
.section5 .header .header-logo,
.section6 .header .header-logo,
.section7 .header .header-logo {
    width: 29.221rem;
    margin-top: 2.5rem;
}
.header.active .circle
.section2 .header .circle,
.section3 .header .circle,
.section4 .header .circle,
.section5 .header .circle,
.section6 .header .circle,
.section7 .header .circle {
    width: 14.7rem;
    height: 14.7rem;
    border: 0.2rem solid var(--primary-light-color);
    background-color: var(--secondary-dark-color);
}
.header.active .circle.animation1::after,
.section2 .header .circle.animation1::after,
.section3 .header .circle.animation1::after,
.section4 .header .circle.animation1::after,
.section5 .header .circle.animation1::after,
.section6 .header .circle.animation1::after,
.section7 .header .circle.animation1::after {
    background-color: var(--tertiary-light-color);
}
.header.active .primary-btn.animation1::after,
.section2 .header .primary-btn.animation1::after,
.section3 .header .primary-btn.animation1::after,
.section4 .header .primary-btn.animation1::after,
.section5 .header .primary-btn.animation1::after,
.section6 .header .primary-btn.animation1::after,
.section7 .header .primary-btn.animation1::after {
    background-color: var(--tertiary-light-color2);
}
.active2 .header-box {
    display: none;
}
.section-footer {
    background-color: var(--tertiary-dark-color);
    color: var(--primary-dark-color);
    z-index: 4;
}
.footer-sec {
    display: none;
    width: 100vw;
    height: 100vh;
    background-color: var(--primary-light-color);
    color: var(--primary-dark-color);
    position: fixed;
    top: 0;
    left: 0;
}
.header.popopen .footer-sec {
    display: block;
}
.footer-container {
    margin: 0 auto;
    width: 172.2rem;
}
.footer-holder {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - var(--footer-h));
}
.footer-container .h2 {
    font-size: 8.5rem;
    line-height: 8.5rem;
    color: var(--tertiary-light-color);
    margin-bottom: 1.5rem;
}
.footer-container .p {
    width: 94rem;
    margin: 0 auto;
    font-size: 2.2rem;
    line-height: 3rem;
    font-family: "Lato";
    font-weight: 800;
    margin-bottom: 9.8rem;
    margin-bottom: 9.1vh;
}
.prices-box {
    width: 100%;
}
.price-box {
    width: 38.4rem;
    height: 34.9rem;
    position: relative;
    background-color: var(--secondary-dark-color);
    border-radius: 11rem;
    border-bottom-left-radius: 0;
    color: var(--primary-light-color);
    display: flex;
    justify-content: center;
    align-items: center;
}
.price-box .primary-btn {
    position: absolute;
    z-index: 2;
    left: 3.6rem;
    opacity: 1;
    bottom: -3.85rem;
}
.price-box .primary-btn::after {
    background-color: var(--tertiary-light-color2);
}
.prices-box h4 {
    font-size: 3rem;
    line-height: 3rem;
    text-transform: uppercase;
    margin-bottom: 0;
}
.prices-box h2 {
    font-size: 8.5rem;
    line-height: 8.5rem;
    text-transform: uppercase;
    margin-bottom: 0;
}
.prices-box h6 {
    font-size: 1.8rem;
    line-height: 2rem;
    text-transform: initial;
    margin: 0 auto 1.2rem auto;
    width: 22rem;
    font-family: "Lato";
    font-weight: 800;
    opacity: 0.5;
}
.prices-box p {
    font-size: 2.2rem;
    line-height: 3rem;
    text-transform: initial;
    margin: 0 auto;
    width: 31rem;
    font-family: "Lato";
    font-weight: 800;
}
.footer {
    height: var(--footer-h);
    background-color: var(--primary-dark-color);
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 4.3rem 0 2.9rem;
}
.footer-logo {
    height: 6.023rem;
}
.footer-logo img {
    display: block;
    height: 100%;
}
.footer-media {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 58.7rem;
}
.footer-media p {
    font-size: 1.8rem;
    line-height: 1.8rem;
    font-weight: 400;
    margin-bottom: 0;
    color: var(--primary-light-color);
}
.footer-media-boxs {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 24rem;
}
.footer-media-boxs a img {
    display: block;
}
.footer-media-boxs a:nth-child(1) img {
    width: 1.864rem;
}
.footer-media-boxs a:nth-child(2) img {
    width: 3.122rem;
}
.footer-media-boxs a:nth-child(3) img {
    width: 2.543rem;
}
.footer-media-boxs a:nth-child(4) img {
    width: 2.555rem;
}
.footer-media-boxs a:nth-child(5) img {
    width: 3.38rem;
}
.footer-links p {
    margin-bottom: 0;
    font-size: 1.8rem;
    line-height: 1.8rem;
    font-weight: 400;
    color: var(--primary-light-color);
}
.footer-links p a,
.footer-links p a:hover {
    color: var(--primary-light-color);
    font-family: "Lato";
    font-weight: 400;
}
.footer-links p span {
    font-size: 1.8rem;
    line-height: 1.8rem;
    font-weight: 400;
    padding: 0 2rem;
}
.footer-sec.section-res {
    position: relative;
    z-index: 3;
    top: initial;
    left: initial;
    display: block;
    z-index: 9;
    width: 100%;
}
.footer-sec.section-res .footer-logo2,
.footer-holder .footer-logo2 {
    width: 31.6rem;
    position: fixed;
    z-index: 999;
    position: absolute;
    top: 1.5rem;
    left: 0.9rem;
    height: auto;
}
.footer-sec.section-res .footer-logo2 img,
.footer-holder .footer-logo2 img {
    display: block;
    width: 100%;
    height: auto;
}

.section2-container {
    width: 100%;
    height: 100vh;
    overflow-y: auto;
}

.section2 .header .footer-sec,
.section3 .header .footer-sec,
.section4 .header .footer-sec,
.section5 .header .footer-sec,
.section6 .header .footer-sec,
.section7 .header .footer-sec{
    position: absolute;
}

.title-2 {
    font-size: 8.5rem;
    line-height: 8.5rem;
    background-color: var(--secondary-dark-color);
    color: var(--primary-light-color);
    margin-bottom: 0;
    position: relative;
    z-index: 2;
    padding: 0.5rem 0;
}
.box-res {
    margin: 0 auto;
    width: 122rem;
    background-color: var(--primary-light-color);
    color: var(--primary-dark-color);
    text-align: center;
    border-radius: 11rem;
    border-bottom-left-radius: 0;
    position: relative;
    z-index: 2;
    height: 26.1rem;
    display: flex;
    justify-content: center;
    align-items: center;
}
.box-res p {
    font-size: 2.2rem;
    line-height: 3rem;
    font-family: "Lato";
    font-weight: 800;
    margin: 0 auto;
    width: 76.2rem;
}
.box-res p.size2 {
    width: 110rem;
}
.btns-res {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -3rem;
    width: 58rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.bg-img{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1;
}
.sec-saviez-vous {
    padding: 0 0 53.5rem 0;
    padding-bottom: 40.45rem;
    padding-bottom: 37.5vh;
}

.primary-btn-style1.animation1::after {
    background-color: var(--tertiary-light-color2);
}
.primary-btn-style2 {
    background-color: var(--secondary-light-color);
}
.primary-btn-style2.animation1::after {
    background-color: var(--secondary-dark-color);
}
.sec-title {
    height: calc(100vh - 66.8rem);
    height: calc(62.3vh - 26.1rem);
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
}
.sec-title::after {
    content: ' ';
    position: absolute;
    width: 0.2rem;
    height: 100%;
    background-color: var(--primary-light-color);
}
.arrow-holder {
    position: absolute;
    bottom: 2.8rem;
    left: 50%;
    transform: translateX(-50%);
    width: 30.5rem;
    z-index: 1;
}
.arrow-holder::after{
    content: ' ';
    position: absolute;
    width: 0.2rem;
    height: 14.5rem;
    background-color: var(--primary-light-color);
    bottom: 15.5rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}
.arrow-holder img {
    display: block;
    margin: 0 auto;
    width: 1.3rem;
    transition-duration: 0.3s;
    animation: MoveUpDown 3s linear infinite;
    cursor: pointer;
}
.arrow-holder h5 {
    font-size: 3.2rem;
    line-height: 3.2rem;
    color: var(--primary-light-color);
    text-align: center;
    font-family: "Lato";
    font-weight: 800;
    border-radius: 50%;
    border: 0.2rem solid var(--primary-light-color);
    width: 4.3rem;
    height: 4.3rem;
    padding: 0.35rem 0;
    margin: 0 auto;
    margin-bottom: 1.2rem;
}
.arrow-holder h6 {
    font-size: 2.6rem;
    line-height: 3.2rem;
    text-align: center;
    font-family: "Lato";
    font-weight: 800;
    margin-bottom: 1.2rem;
}
@keyframes MoveUpDown {
    0%, 100% {
     transform: translateY(0);
    }
    50% {
        transform: translateY(1rem);
    }
  }
.qes-top {
    width: 101.6rem;
    height: 54.8rem;
    height: 50.74vh;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
}
.qes-top h6 {
    font-size: 3.2rem;
    line-height: 3.2rem;
    color: var(--primary-light-color);
    text-align: center;
    font-family: "Lato";
    font-weight: 800;
    border-radius: 50%;
    border: 0.2rem solid var(--primary-light-color);
    width: 4.3rem;
    height: 4.3rem;
    padding: 0.35rem 0;
    margin: 0 auto;
    margin-bottom: 1.2rem;
}
.qes-top h5 {
    font-size: 2.6rem;
    line-height: 3.2rem;
    text-align: center;
    font-family: "Lato";
    font-weight: 800;
    margin: 0 auto 2rem auto;
    width: 31.3rem;
    border-bottom: 2px solid var(--secondary-light-color);
}
.qes-top h2 {
    position: relative;
    font-size: 8.5rem;
    line-height: 9.1rem;
    letter-spacing: 0.3rem;
    padding-right: 4.5rem;
    margin: 0 auto 2.5rem auto;
    width: 86rem;
}
.qes-top h2 span {
    padding: 0.1rem 0.1rem 0 0.5rem;
    position: absolute;
    top: 0;
    right: -3rem;
    font-size: 4.5rem;
    line-height: 4.5rem;
    color: var(--primary-light-color);
    background-color: var(--tertiary-light-color);
    transform: rotate(-8deg);
}
.qes-top p {
    font-size: 2.2rem;
    line-height: 3rem;
    font-family: "Lato";
    font-weight: 800;
    margin-bottom: 0;
}
.box-qes {
    z-index: 2;
    position: absolute;
    position: relative;
    margin: 0 auto;
    width: 122rem;
    background-color: var(--primary-light-color);
    color: var(--primary-dark-color);
    text-align: center;
    border-radius: 11rem;
    border-bottom-left-radius: 0;
    height: 41.1rem;
    display: flex;
    justify-content: center;
    align-items: center;
}
.box-qes-relative {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.bg-img1 {
    position: absolute;
    width: 100%;
    height: 40.18vh;
    z-index: 1;
    bottom: 0;
    left: 0;
    background-position: top center;
    background-size: cover;
}
.bg-img2 {
    position: absolute;
    width: 100%;
    height: 50vh;
    z-index: 1;
    bottom: 0;
    left: 0;
    background-position: center;
    background-size: cover;
}
.btns-qes {
    position: absolute;
    bottom: -3.8rem;
    left: 50%;
    transform: translateX(-50%);
}
.btns-qes primary-btn {
    margin: 0 auto;
}
.num-qes {
    width: 7.5rem;
    height: 7.5rem;
    background-color: var(--secondary-light-color);
    color: var(--primary-light-color);
    position: absolute;
    top: -3.75rem;
    left: 50%;
    transform: translateX(-50%) rotate(-8deg);
}
.num-qes span {
    display: block;
}
.num-qes span:nth-child(1) {
    font-size: 4.5rem;
    line-height: 4.8rem;
    font-family: "Lato";
    font-weight: 800;
}
.num-qes span:nth-child(2) {
    font-size: 2rem;
    line-height: 2rem;
    font-family: "Lato";
    font-weight: 800;
    position: relative;
    padding-bottom: 0.1rem;
}
.num-qes span:nth-child(2)::after {
    content: ' ';
    height: 0.1rem;
    position: absolute;
    border-radius: 0.1rem;
    width: 1.7rem;
    top: -0.2rem;
    left: 50%;
    transform: translateX(-50%);
    background-color: var(--primary-light-color);
}
.box-qes-relative h4 {
    font-size: 2rem;
    line-height: 2rem;
    width: 12.5rem;
    width: auto;
    margin: 0 auto 2.4rem auto;
    padding-bottom: 0.6rem;
    color: var(--secondary-light-color);
    position: relative;
}
.box-qes-relative h4::after {
    width: 7.5rem;
    content: ' ';
    bottom: -0.2rem;
    left: 50%;
    transform: translate(-50%);
    border-bottom: 0.2rem solid var(--secondary-light-color);
    position: absolute;
}
.box-qes-relative h3 {
    font-size: 3rem;
    line-height: 3rem;
    color: var(--secondary-dark-color);
    margin: 0 auto 1.8rem auto;
    width: 85rem;
}
.box-qes-relative h3 span {
    display: block;
    font-size: 1.4rem;
    font-family: "Lato";
    font-weight: 400;
}
.box-qes-relative p {
    font-size: 1.6rem;
    line-height: 2rem;
    color: var(--primary-dark-color);
    margin: 0 auto;
    width: 55.2rem;
}
.inputs-holder {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 114.2rem;
    width: 95rem;
    width: 100rem;
    margin: 0 auto 3.1rem auto;
    position: relative;
}
.input-holder {
    text-align: center;
}
.input-holder label {
    font-size: 2.2rem;
    line-height: 2.2rem;
    font-family: "Lato";
    font-weight: 800;
    margin-bottom: 0.5rem;
    display: block;
}
.input-holder input{
    font-size: 2.2rem;
    line-height: 2.6rem;
    font-family: "Lato";
    font-weight: 800;
    display: block;
    margin: 0 auto;
    height: 3.5rem;
    width: 21.1rem;
    width: 25.8rem;
    text-align: center;
    border-bottom: 0.2rem solid var(--secondary-dark-color);
}

.dropdown-menu {
    transform: scale(1.5) translate(3.3rem,-3rem);
}
.datepicker table tr td span.active.active, .datepicker table tr td span.active.disabled, .datepicker table tr td span.active.disabled.active, .datepicker table tr td span.active.disabled.disabled, .datepicker table tr td span.active.disabled:active, .datepicker table tr td span.active.disabled:hover, .datepicker table tr td span.active.disabled:hover.active, .datepicker table tr td span.active.disabled:hover.disabled, .datepicker table tr td span.active.disabled:hover:active, .datepicker table tr td span.active.disabled:hover:hover, .datepicker table tr td span.active.disabled:hover[disabled], .datepicker table tr td span.active.disabled[disabled], .datepicker table tr td span.active:active, .datepicker table tr td span.active:hover, .datepicker table tr td span.active:hover.active, .datepicker table tr td span.active:hover.disabled, .datepicker table tr td span.active:hover:active, .datepicker table tr td span.active:hover:hover, .datepicker table tr td span.active:hover[disabled], .datepicker table tr td span.active[disabled] {
    background-color: var(--secondary-dark-color);
    background-image: linear-gradient(to bottom,var(--secondary-light-color),var(--secondary-dark-color));
}
.input-holder select {
    font-size: 2.2rem;
    line-height: 2.6rem;
    font-family: "Lato";
    font-weight: 800;
    display: block;
    margin: 0 auto;
    height: 3.5rem;
    width: 21.1rem;
    width: 30.1rem;
    text-align: center;
    border: none;
    color: #000000;
    border-bottom: 0.2rem solid var(--secondary-dark-color);  
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.input-holder select:focus,
.input-holder select:focus-visible {
    outline: 0;
    box-shadow: none;
    border: none;
    border-bottom: 0.2rem solid var(--secondary-dark-color);
    color: #000000;
}
option:disabled{
    display: none;
}
.inputs-holder .err {
    position: absolute;
    font-size: 2rem;
    line-height: 2rem;
    left: 50%;
    transform: translateX(-50%);
    bottom: -9.5rem;
    text-transform: uppercase;
    color: red;
    letter-spacing: 0.1rem;
    margin-bottom: 0;
    font-weight: 800;
    opacity: 0;
}
#form1.err .inputs-holder .err {
    opacity: 1;
}
.input-holder input.err-input,
.input-holder select.err-input {
    border-bottom: 0.2rem solid red;
}
.check-container {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 113rem;
    margin: 0 auto;
}
.check-container input[type="checkbox"],
.check-container input[type="radio"] {
    position: absolute;
    top: -2rem;
    right: -2rem;
    opacity: 0;
}
.check-container label {
    border-radius: 0.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 6.5rem;
    padding: 0 2.5rem;
    min-width: 8.7rem;
    margin: 0.8rem 1rem;
    font-size: 2.2rem;
    line-height: 2.6rem;
    font-family: "Lato";
    font-weight: 800;
    cursor: pointer;
    transition-duration: 0.3s;
    background-color: var(--primary-light-color);
    border: 1px solid var(--secondary-dark-color);
    color: var(--primary-dark-color);
}
.check-container label:hover,
.check-container input[type="checkbox"]:checked + label,
.check-container input[type="radio"]:checked + label,
.check-container input[type="text"]:focus + label,
.check-container input[type="text"]:focus-visible + label,
.check-container input[type="text"]:active + label,
.check-container input[type="text"]:hover + label,
.check-container input[type="text"]:not(:placeholder-shown) + label {
    background-color: var(--secondary-dark-color);
    border: 1px solid var(--secondary-dark-color);
    color: var(--primary-light-color);
}
.check-container input[type="text"]:focus,
.check-container input[type="text"]:focus-visible,
.check-container input[type="text"]:active,
.check-container input[type="text"]:hover,
.check-container input[type="text"]:not(:placeholder-shown) {
    color: var(--primary-light-color);
    border-bottom: 1px solid var(--primary-light-color);
}
.err-lab {
    position: absolute;
    font-size: 2rem;
    line-height: 2rem;
    left: 50%;
    transform: translateX(-50%);
    bottom: -2.5rem;
    text-transform: uppercase;
    color: red;
    letter-spacing: 0.1rem;
    margin-bottom: 0;
    font-weight: 800;
    opacity: 0; 
}
.err .err-lab {
    opacity: 1;
}
.bg-img3 {
    font-size: 5.6rem;
    line-height: 5.6rem;
    border-radius: 50%;
    background-color: var(--tertiary-dark-color);
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 38.6rem;
    height: 13.1rem;
    color: var(--primary-light-color);
    position: absolute;
    bottom: 15rem;
    left: 3.5rem;
    z-index: 2;
}
.check-container label[for="q2r4"] {
    width: 25.908rem;
}
.check-container label[for="q2r5"] {
    width: 33.266rem;
}
.check-container label[for="q2r6"] {
    width: 46.767rem;
}
#form4 .check-container {
    width: 108rem;
}
#form3 .box-qes-relative h4,
#form4 .box-qes-relative h4 {
    width: 22.5rem;
}
#form3 .check-container label,
#form5 .check-container label,
#form8 .check-container label,
#form9 .check-container label,
#form10 .check-container label,
#form11 .check-container label,
#form12 .check-container label,
#form14 .check-container label,
#form14Bis .check-container label {
    height: 10rem;
}
#form3 .err-lab,
#form10 .err-lab,
#form11 .err-lab,
#form12 .err-lab,
#form14Bis .err-lab {
    bottom: -4.2rem;
}
#form14 .err-lab {
    bottom: -3.5rem;
}
#form3 .box-qes-relative,
#form10 .box-qes-relative,
#form11 .box-qes-relative,
#form12 .box-qes-relative,
#form14 .box-qes-relative,
#form14Bis .box-qes-relative{
    padding-bottom: 4.2rem;
}
#form4 .box-qes-relative h3 {
    margin-bottom: 0;
}
#form5 .check-container label,
#form8 .check-container label,
#form9 .check-container label,
#form10 .check-container label,
#form11 .check-container label,
#form12 .check-container label,
#form14Bis .check-container label {
    min-width: 16.358rem;
}
#form5 .check-container label[for="q5r3"],
#form8 .check-container label[for="q8r3"],
#form9 .check-container label[for="q9r3"],
#form10 .check-container label[for="q10r3"],
#form11 .check-container label[for="q11r3"],
#form12 .check-container label[for="q12r3"] {
    min-width: 18.5rem;
}
#form6 .check-container {
    width: 121rem;
}
#form6 .check-container label{
    margin: 0.8rem 0.45rem;
    padding: 0 2rem;
}
#form6 .box-qes-relative h3 {
    margin-bottom: 0;
}
.box-res p.size3 {
    width: 92rem;
}
#form7 .box-qes-relative h3 {
    width: auto;
    margin-bottom: 0;
}
#form7 .check-container label[for="q7r4"],
#form7 .check-container label[for="q7r5"] {
    padding: 0 3.5rem;
}
#form8 .err-lab {
    bottom: -3rem;
}
.box-res p.size4 {
    width: 104rem;
}
.box-res8 {
    padding: 0 0 2.2rem 0;
}
.box-res h6 {
    text-align: right;
    font-size: 2.2rem;
    line-height: 2.2rem;
    font-family: "Lato";
    font-weight: 400;
    margin-bottom: 0;
    margin-top: 1rem;
}
#form9 .box-qes-relative h3 ,
#form10 .box-qes-relative h3{
    width: auto;
}
#form10 .box-res p {
    width: 111rem;
}
.bg-img3-midle {
    left: 50%;
    transform: translateX(-50%);
    bottom: 18.5rem;
    width: 55.2rem;
}
.bg-img1-4 {
    background-position: top -0.4rem center;
}
#form12 .box-qes-relative h3 {
    width: auto;
}
.input-txt-holder{
    position: relative;
}
.input-txt-holder label {
    padding-top: 0.6rem;
    position: relative;
    z-index: 1;
    width: 37.117rem;
    display: block;
}
.input-txt-holder input {
    position: absolute;
    z-index: 2;
    background-color: transparent;
    border-bottom: 1px solid var(--primary-dark-color);
    bottom: 1.6rem;
    left: 50%;
    transform: translate(-50%);
    display: block;
    width: 33rem;
    font-size: 2.2rem;
    line-height: 2.2rem;
    font-family: "Lato";
    font-weight: 800;
    text-align: center;
}
#form13 .box-qes-relative h4 {
    margin-bottom: 1.4rem;
}
#form13 .box-qes-relative {
    padding-bottom: 1rem;
}
.bg-img3-left {
    left: -4.9rem;
    bottom: 8.6rem;
}
.bg-img3-right {
    right: -3.7rem;
    left: initial;
    bottom: 8.6rem;
}
.num-qes span:nth-child(1) sub {
    font-size: 2rem;
    font-family: "Lato";
    font-weight: 800;
    bottom: 0;
    left: -0.4rem;
}
#form14Bis .num-qes {
    width: 10.967rem;
}
#form14Ter .check-container label,
#form15 .check-container label {
    height: 10rem;
}
#form14Ter .err-lab,
#form15 .err-lab {
    bottom: -4.2rem;
}
#form14Ter .box-qes-relative,
#form15 .box-qes-relative{
    padding-bottom: 4.2rem;
}
#form14Ter .check-container label,
#form15 .check-container label {
    min-width: 16.358rem;
}
#form14Ter .num-qes,
#form15 .num-qes {
    width: 10.967rem;
}
#lastSec.repNon .cache {
    height: 100vh !important;
    opacity: 1 !important;
}
#lastSec .box-qes {
    background-color: var(--tertiary-light-color);
    color: var(--primary-light-color);
    width: 71rem;
    height: 57.4rem;
}
#lastSec .box-qes::after {
    content: '2';
    position: absolute;
    top: -3.45rem;
    left: 50%;
    transform: translateX(-50%);
    width: 7.3rem;
    height: 7.3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--tertiary-light-color);
    border-radius: 50%;
    background-color: var(--primary-light-color);
    color: var(--tertiary-light-color);
    text-align: center;
    font-family: "Lato";
    font-weight: 800;
    font-size: 5.2rem;
    line-height: 5.2rem;
}
#lastSec .qes-top h6 {
    font-size: 5.2rem;
    line-height: 5.2rem;
    width: 7.3rem;
    height: 7.3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 0;
    border: 2px solid var(--primary-light-color);
}
#lastSec .qes-top h2 {
    padding: 0;
    letter-spacing: 0.45rem;
}
.mark1 {
    position: relative;
    z-index: 1;
}
.mark1::after{
    content: ' ';
    position: absolute;
    width: 75.2rem;
    height: 3rem;
    background-color: var(--secondary-light-color);
    z-index: -1;
    left: 50%;
    top: 50%;
    transform: translate(calc(-50% - 2rem),-50%);
}
#lastSec .qes-top {
    height: auto;
    padding-bottom: 2.5rem;
}
#lastSec #form16 .primary-btn {
    background-color: var(--primary-light-color);
    color: var(--tertiary-light-color);
}
#lastSec #form16 .animation1::after {
    background-color: var(--secondary-light-color);
}
#lastSec #form16 .primary-btn:hover {
    color: var(--primary-light-color);
}
#form16 h2 {
    font-size: 5.5rem;
    line-height: 5.5rem;
    margin-bottom: 0.5rem;
}
#form16 p {
    font-size: 2rem;
    line-height: 2.6rem;
    margin-bottom: 2.7rem;
    color: var(--primary-light-color);
    font-weight: 800;
    width: 65rem;
}
#form16 h6 {
    margin-top: 1.2rem;
    font-size: 2.2rem;
    line-height: 3rem;
    margin-bottom: 0;
    font-family: "Lato";
    font-weight: 400;
}
#form16 h6 span {
    font-size: 2.2rem;
    line-height: 3rem;
    font-family: "Lato";
    font-weight: 400;
}
#form16 .check-container label {
    height: 8.5rem;
    width: 13.827rem;
    border: 1px solid var(--primary-light-color);
    border-radius: 0.6rem;
    color: var(--primary-light-color);
    background-color: transparent;
}
#form16 .check-container label:hover, #form16 .check-container input[type="checkbox"]:checked + label, #form16 .check-container input[type="radio"]:checked + label, #form16 .check-container input[type="text"]:focus + label, #form16 .check-container input[type="text"]:focus-visible + label, #form16 .check-container input[type="text"]:active + label, #form16 .check-container input[type="text"]:hover + label, #form16 .check-container input[type="text"]:not(:placeholder-shown) + label {
    background-color: var(--primary-light-color);
    color: var(--tertiary-light-color);
}
#form16 .check-container {
    width: 64.1rem;
}
#form16 .p-r {
    position: relative;
    width: 100%;
}
#form16 .p-r label {
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.5rem;
    width: calc(100% - 2.5rem);
}
#form16 .p-r label input {
    background-color: transparent;
    font-size: 2.2rem;
    line-height: 2.6rem;
    font-family: "Lato";
    font-weight: 800;
    width: 11rem;
    border-bottom: 1px solid var(--primary-light-color);
    margin: 0 0.3rem;
    color: var(--primary-light-color);
}
#form16 .p-r label div {
    font-size: 2.2rem;
    line-height: 2.6rem;
    font-family: "Lato";
    font-weight: 800;
}
#form16 .check-container label:hover input, 
#form16 .check-container input[type="checkbox"]:checked + label input,
#form16 .check-container input[type="radio"]:checked + label input, 
#form16 .check-container input[type="text"]:focus + label input, 
#form16 .check-container input[type="text"]:focus-visible + label input,
#form16 .check-container input[type="text"]:active + label input, 
#form16 .check-container input[type="text"]:hover + label input, 
#form16 .check-container input[type="text"]:not(:placeholder-shown) + label input {
    color: var(--tertiary-light-color);
    border-bottom: 1px solid var(--tertiary-light-color);
}
#form16 .check-container label:hover div, 
#form16 .check-container input[type="checkbox"]:checked + label div,
#form16 .check-container input[type="radio"]:checked + label div, 
#form16 .check-container input[type="text"]:focus + label div, 
#form16 .check-container input[type="text"]:focus-visible + label div,
#form16 .check-container input[type="text"]:active + label div, 
#form16 .check-container input[type="text"]:hover + label div, 
#form16 .check-container input[type="text"]:not(:placeholder-shown) + label div {
    color: var(--tertiary-light-color);
}
#lastSec .section_container {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 2.5rem;
}
#lastSec.repNon #form16 {
    display: none;
}
#lastSec .arrow-holder {
    display: none;
}
#lastSec.repNon .arrow-holder {
    display: block;
    position: relative;
    bottom: initial;
    left: initial;
    transform: initial;
    z-index: 10;
    margin: 0 auto;
    padding-top: 34vh;
}
#lastSec.repNon .arrow-holder::after {
    height: 34.5rem;
    height: 31.94444444444444vh;
}
#lastSec.repNon .section_container {
    align-items: flex-end;
}
/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}


/* css end */
#tarteaucitronRoot #tarteaucitronAlertBig {
    background-color: rgb(52, 63, 79) !important;
    color: rgb(255, 255, 255) !important;
    font-family: inherit !important;
    bottom: 0px !important;
    position: fixed !important;
    align-items: center !important;
    padding: 14px 25px !important;
    width: calc(100% - 50px) !important;
}
#tarteaucitronAlertBig #tarteaucitronPrivacyUrl, #tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog, #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert, #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert strong {
    font-family: "Lato" !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    color: #fff !important;
}
/* #tarteaucitronRoot .tarteaucitronDeny */
#tarteaucitronAllDenied2 {
    display: none !important;
}
#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert {
    margin-right: auto !important;
    width: 70% !important;
    padding: 0 !important;
    padding-top: 15px !important;
    letter-spacing: -0.1px !important;
}
#tarteaucitronRoot .tarteaucitronCheck::before,
#tarteaucitronRoot .tarteaucitronCross::before {
    display: none !important;
}
body #tarteaucitronRoot .tarteaucitronAllow,
body #tarteaucitronAlertBig #tarteaucitronPersonalize2, .tarteaucitronCTAButton {
    font-family: "Lato" !important;
    font-weight: 400 !important;
    font-size: 13px !important;
    background: rgb(97, 162, 41) !important;
    padding: 7.71px 11.14px !important;
    order: 3 !important;
}
body #tarteaucitronRoot .tarteaucitronAllow:hover,
body #tarteaucitronAlertBig #tarteaucitronPersonalize2:hover , .tarteaucitronCTAButton:hover {
    background: rgb(78, 130, 33) !important;
}
body #tarteaucitronAlertBig #tarteaucitronCloseAlert {
    margin-left: 10px !important;
    font-family: "Lato" !important;
    font-weight: 400 !important;
    font-size: 13px !important;
    background: rgb(222, 223, 224) !important;
    padding: 7.71px 11.14px !important;
    order: 2 !important;
    
}
body #tarteaucitronAlertBig #tarteaucitronCloseAlert:hover{
    background: rgb(178, 178, 179) !important;
}
.p-absolute {
    position: absolute;
    bottom: 2rem;
    right: 0;
    width: 25rem !important;
    text-align: left;
}