
/* ------------------------- HEADER ------------------------- */

.frontpage .header{
    position: relative;
    display: flex;
    align-items: center;
    gap: 170px;
    padding-block: 80px;
	min-height: calc(100vh - var(--site-header-height, 0px));
}

.frontpage .header .imgContainer{
    position: relative;
    width: 50%;
}

.frontpage .header .imgContainer img{
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 100%;
}

.frontpage .header .imgContainer::after{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg,rgba(46, 103, 215, 1) 0%, rgba(255, 255, 255, 0) 100%);
    z-index: 1;
    border-radius: 100%;
}

.frontpage .header .figcaption{
    width: 50%;
}

.frontpage .header .titre{
    margin-bottom: 30px;
}

.frontpage .header .titre,
.frontpage .header .titre *{
    font-size: 60px;
    line-height: 1.2em;
    font-weight: 500;
}

.frontpage .header .titre strong{
    color: var(--color-secondary);
}

.frontpage .header .btn {
    margin-top: 30px;
}

@media(max-width: 1600px){
    .frontpage .header .titre,
    .frontpage .header .titre *{
        font-size: 50px;
    }
    .frontpage .header{
        gap: 100px;
    }
}

@media(max-width: 1400px){
    .frontpage .header .titre,
    .frontpage .header .titre *{
        font-size: 36px;
    }
}

@media(max-width: 992px){
    .frontpage .header{
        min-height: 0px;
        flex-direction: column;
        padding-block: 30px;
    }
    .frontpage .header .figcaption{
        width: 100%;
    }
    .frontpage .header .imgContainer{
        display: none;
    }
}

/* ------------------------- REASSURANCE ------------------------- */

.frontpage .reassurance{
    background-color: var(--color-tertiary);
    padding-block: 40px;
}

.frontpage .reassurance .container{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 60px;
}

.frontpage .reassurance .item{
    display: flex;
    align-items: center;
    gap: 22px;
}

.frontpage .reassurance .item .icone{
    display: block;
    max-height: 50px;
    width: 60px;
    object-fit: contain;
}

.frontpage .reassurance .item .titre{
    font-family: "Space Grotesk", sans-serif;
    font-size: 16px;
    line-height: 1.2em;
    font-weight: 500;
}

@media (max-width: 1200px) {
    .frontpage .reassurance .container{
        grid-template-columns: repeat(2, 1fr);
        gap: 25px 60px;
    }
}

@media (max-width: 992px) {
    .frontpage .reassurance{
        padding-block: 30px;
    }
    .frontpage .reassurance .container{
        display: flex;
        gap: 40px;
        overflow-x: scroll;
        flex-wrap: nowrap;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }
    .frontpage .reassurance .container::-webkit-scrollbar {
        display: none;
    }
    .frontpage .reassurance .item{
        min-width: 300px;
        width: 300px;
    }
}

/* -------------------------------- SECTION 2 -------------------------------- */

.frontpage .section2{
    border-bottom: solid 1px var(--color-grey);
}

.frontpage .section2 .container{
    padding-block: 110px;
    position: relative;
}

.frontpage .section2 .container::before{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 1px;
    height: 100%;
    z-index: -1;
    background-color: var(--color-grey);
}

.frontpage .section2 .entete{
    display: flex;
    justify-content: space-between;
    gap: 100px;
    margin-bottom: 50px;
}

.frontpage .section2 .entete .left{
    width: 50%;
    max-width: 450px;
}

.frontpage .section2 .entete .right{
    width: 50%;
    max-width: 550px;
}

.frontpage .section2 .entete .sur-titre{
    font-family: "Space Grotesk", sans-serif;
    font-size: 18px;
    margin-bottom: 20px;
}

.frontpage .section2 .entete .titre{
    font-size: 48px;
    line-height: 1.2em;
    font-weight: 500;
}

.frontpage .section2 .entete .titre strong{
    color: var(--color-secondary);
    font-weight: 500;
}

.frontpage .section2 .pages{
    display: flex;
    align-items: center;
    gap: 140px
}

.frontpage .section2 .pages .left,
.frontpage .section2 .pages .right{
    width: 50%;
}

.frontpage .section2 .pages .left{
    display: flex;
    flex-direction: column;
}

.frontpage .section2 .pages .page{
    display: block;
    padding: 40px 40px 40px 0px;
    position: relative;
    border-bottom: solid 1px var(--color-grey);
}

.frontpage .section2 .pages .page::before{
    content: "";
    width: 0%;
    height: 1px;
    display: block;
    background-color: var(--color-secondary);
    bottom: -1px;
    left: 0;
    position: absolute;
    transition: width 0.3s ease;
}

.frontpage .section2 .pages .page .titre{
    font-family: "Space Grotesk", sans-serif; 
    font-size: 30px; 
    line-height: 1.2em;
    font-weight: 500;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 30px;
    justify-content: space-between;
}

.frontpage .section2 .pages .page .titre::after{
    content: "";
    display: block;
    width: 23px;
    min-width: 23px;
    height: 23px;
    transform: translateX(0px);
    transition: transform 300ms ease;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22.478' height='22.45' viewBox='0 0 22.478 22.45'%3E%3Cg id='Layer_2' transform='matrix(1, -0.017, 0.017, 1, -0.192, 0.199)'%3E%3Cg id='Vector' transform='matrix(-0.719, 0.695, -0.695, -0.719, 22.447, 11.42)' fill='%23f5f8fc'%3E%3Cpath d='M15.259,15.885a.688.688,0,0,1-.449-.176L.176,1.055a.637.637,0,0,1,0-.879.637.637,0,0,1,.879,0L15.689,14.81a.637.637,0,0,1,0,.879A.628.628,0,0,1,15.259,15.885Z' stroke='none'/%3E%3Cpath d='M 15.25928401947021 15.88450908660889 C 15.10298347473145 15.88450908660889 14.94667339324951 15.82589912414551 14.80991363525391 15.70866966247559 L 0.175843670964241 1.055059552192688 C -0.05861632525920868 0.8205995559692383 -0.05861632525920868 0.4102995693683624 0.175843670964241 0.1758395582437515 C 0.4102937281131744 -0.05861049145460129 0.8206036686897278 -0.05861037224531174 1.0550537109375 0.1758395582437515 L 15.68912410736084 14.80990982055664 C 15.923583984375 15.0443696975708 15.923583984375 15.45466995239258 15.68912410736084 15.68912982940674 C 15.57190322875977 15.8063497543335 15.41559410095215 15.88450908660889 15.25928401947021 15.88450908660889 Z' stroke='none' fill='%23000'/%3E%3C/g%3E%3Cg id='Vector-2' data-name='Vector' transform='matrix(-0.719, 0.695, -0.695, -0.719, 22.473, 11.531)' fill='%23f5f8fc'%3E%3Cpath d='M10.98,1.25H.625A.617.617,0,0,1,0,.625.617.617,0,0,1,.625,0H10.98a.617.617,0,0,1,.625.625A.617.617,0,0,1,10.98,1.25Z' stroke='none'/%3E%3Cpath d='M 10.98043632507324 1.250441193580627 L 0.6252164244651794 1.250441193580627 C 0.2735364139080048 1.250441193580627 -3.595428552216617e-06 0.976911187171936 -3.595428552216617e-06 0.6252312064170837 C -3.595428552216617e-06 0.2735411822795868 0.2735364139080048 1.192836748487025e-06 0.6252164244651794 1.192836748487025e-06 L 10.98043632507324 1.192836748487025e-06 C 11.33211612701416 1.192836748487025e-06 11.60565662384033 0.2735311985015869 11.60565662384033 0.6252312064170837 C 11.60565662384033 0.976911187171936 11.33211612701416 1.250441193580627 10.98043632507324 1.250441193580627 Z' stroke='none' fill='%23000'/%3E%3C/g%3E%3Cg id='Vector-3' data-name='Vector' transform='matrix(-0.719, 0.695, -0.695, -0.719, 22.476, 11.31)' fill='%23f5f8fc'%3E%3Cpath d='M.625,11.606A.617.617,0,0,1,0,10.98V.625A.617.617,0,0,1,.625,0,.617.617,0,0,1,1.25.625V10.98A.617.617,0,0,1,.625,11.606Z' stroke='none'/%3E%3Cpath d='M 0.6252312064170837 11.60565662384033 C 0.2735411822795868 11.60565662384033 1.192836748487025e-06 11.33211612701416 1.192836748487025e-06 10.98043632507324 L 1.192836748487025e-06 0.6252164244651794 C 1.192836748487025e-06 0.2735364139080048 0.2735311985015869 -3.595428552216617e-06 0.6252312064170837 -3.595428552216617e-06 C 0.976911187171936 -3.595428552216617e-06 1.250441193580627 0.2735364139080048 1.250441193580627 0.6252164244651794 L 1.250441193580627 10.98043632507324 C 1.250441193580627 11.33211612701416 0.976911187171936 11.60565662384033 0.6252312064170837 11.60565662384033 Z' stroke='none' fill='%23000'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
}

.frontpage .section2 .pages .page .paragraphe{
    max-width: 480px;
}

.frontpage .section2 .pages .page .paragraphe *{ 
    font-size: 14px;
    line-height: 1.2em;
}

.frontpage .section2 .pages .right .page-image{
    display: none;
    position: relative;
}

.frontpage .section2 .pages .right .page-image::after{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 20%;
    height: auto;
    aspect-ratio: 1;
    background-color: #fff;
    border-radius: 100%;
}

.frontpage .section2 .pages .right .page-image.is-active{
    display: block;
}

.frontpage .section2 .pages .right .page-image img{
    border-radius: 100%;
    aspect-ratio: 1;
    width: 100%;
    height: auto;
    display: block;
}

@media (pointer: coarse){
    .frontpage .section2 .pages .right .page-image:first-child{
        display: block;
    }
}

@media (pointer: fine){
  .frontpage .section2 .pages .page:hover::before{
        transition: width 0.3s ease;
        width: 100%;
  }
  .frontpage .section2 .pages .page:hover .titre::after{
        transform: translateX(20px);
        transition: transform 300ms ease;
    }
}

@media (max-width: 1600px) {
    .frontpage .section2 .container::before{
        left: 55px;
    }
    .frontpage .section2 .entete .titre{
        font-size: 40px;
    }
    .frontpage .section2 .pages .page .titre{
        font-size: 26px;
    }
}

@media (max-width: 1200px) {
    .frontpage .section2 .pages{
        gap: 100px;
    }
}

@media (max-width: 992px) {
    .frontpage .section2 .container{
        padding-block: 50px;
        padding-inline: 36px 20px;
    }
    .frontpage .section2 .container::before{
        left: 20px;
    }
    .frontpage .section2 .entete{
        flex-direction: column;
        gap: 16px;
        margin-bottom: 25px;
    }
    .frontpage .section2 .entete .sur-titre{
        font-size: 16px;
        margin-bottom: 10px;
    }
    .frontpage .section2 .entete .titre{
        font-size: 30px;
    }
    .frontpage .section2 .entete .left,
    .frontpage .section2 .entete .right{
        width: 100%;
        max-width: none;
    }
    .frontpage .section2 .pages{
        flex-direction: column;
        gap: 50px;
    }
    .frontpage .section2 .pages .page{
        padding: 25px 0px;
    }
    .frontpage .section2 .pages .left,
    .frontpage .section2 .pages .right{
        width: 100%;
    }
}


/* ------------------------- HEADER ------------------------- */

.frontpage .section3{
    background-color: var(--color-secondary);
    position: relative;
}

.frontpage .section3::after{
    content: '';
    position: absolute;
    top: 0px;
    left: 0px;
    display: block;
    width: auto;
    height: 100%;
    aspect-ratio: 1;
    background-image: url('/wp-content/themes/ardevie/img/ellipse-page-projet-personnalise.svg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 0;
    transform: scaleX(-1);
    max-width: 100%;
}

.frontpage .section3 .container{
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 150px;
    padding-block: 180px;
}

.frontpage .section3 .left,
.frontpage .section3 .right{
    width: 50%;
    position: relative;
}

.frontpage .section3 .right::after{
    content: "";
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 60%;
    height: auto;
    aspect-ratio: 335/185;
    transform: translateX(-40%);
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='335.788' height='184.279' viewBox='0 0 335.788 184.279'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Cpath id='Tracé_193' data-name='Tracé 193' d='M14.8,73.942C56.645,157.634,150.543,126.5,150.543,126.5,152.074,61.694,45.418,24.441,0,12.7c0,0,1.531,36.743,14.8,61.243' transform='translate(0 -12.699)' fill='%23f5f8fc'/%3E%3C/clipPath%3E%3CclipPath id='clip-path-2'%3E%3Cpath id='Tracé_242' data-name='Tracé 242' d='M36.313,127.2s93.9,31.129,135.744-52.568c13.268-24.5,14.8-61.238,14.8-61.238C141.438,25.141,34.782,62.394,36.313,127.2' transform='translate(-36.297 -13.399)' fill='%23f5f8fc'/%3E%3C/clipPath%3E%3CclipPath id='clip-path-3'%3E%3Ccircle id='Ellipse_19' data-name='Ellipse 19' cx='60.217' cy='60.217' r='60.217' fill='%23f5f8fc'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='Groupe_5215' data-name='Groupe 5215' transform='translate(-2388 -6981.781)'%3E%3Cg id='Groupe_3405' data-name='Groupe 3405' transform='translate(2388 7046.59)'%3E%3Cg id='Groupe_652' data-name='Groupe 652' clip-path='url(%23clip-path)'%3E%3Crect id='Rectangle_309' data-name='Rectangle 309' width='153.095' height='153.095' transform='translate(0 -4.647)' fill='%23f5f8fc'/%3E%3C/g%3E%3C/g%3E%3Cg id='Groupe_3406' data-name='Groupe 3406' transform='translate(2573.229 7046.591)' clip-path='url(%23clip-path-2)'%3E%3Crect id='Rectangle_333' data-name='Rectangle 333' width='153.095' height='153.095' transform='translate(-1.515 -3.116)' fill='%23f5f8fc'/%3E%3C/g%3E%3Cg id='Groupe_3407' data-name='Groupe 3407' transform='translate(2497.208 6981.781)'%3E%3Cg id='Groupe_658' data-name='Groupe 658' clip-path='url(%23clip-path-3)'%3E%3Crect id='Rectangle_312' data-name='Rectangle 312' width='122.476' height='122.476' transform='translate(-2.041 -1.077)' fill='%23f5f8fc'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
}

.frontpage .section3 .sur-titre{
    font-size: 18px;
    line-height: 1.2em;
    color: #fff;
    margin-bottom: 5px;
    font-family: "Space Grotesk", sans-serif;
}

.frontpage .section3 .titre *{
    font-size: 50px;
    line-height: 1.2em;
    color: #fff;
    font-weight: 500;
}

.frontpage .section3 .titre strong{
    color: var(--color-quaternary);
}

.frontpage .section3 .paragraphe{
    margin-top: 40px;
}

.frontpage .section3 .paragraphe *{
    color: #fff;
}

.frontpage .section3 .btn{
    margin-top: 40px;
}

.frontpage .section3 img{
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    border-radius: 12px;
}

@media (max-width: 1600px) {
    .frontpage .section3 .container{
        gap: 150px;
    }
    .frontpage .section3 .titre *{
        font-size: 40px;
    }
    .frontpage .section3 .right::after{
        width: 45%;
        transform: translateX(-20%);
    }
}

@media (max-width: 1400px) {
    .frontpage .section3 .container{
        gap: 80px;
    }
}

@media (max-width: 992px) {
    .frontpage .section3 .container{
        padding-block: 60px 80px;
        flex-direction: column;
        gap: 40px;
    }
    .frontpage .section3 .left,
    .frontpage .section3 .right{
        width: 100%;
    }
    .frontpage .section3 .titre *{
        font-size: 36px;
    }
    .frontpage .section3 .sur-titre{
        font-size: 16px;
    }
    .frontpage .section3 .paragraphe{
        margin-top: 20px;
    }
    .frontpage .section3 .right::after{
        width: 45%;
        transform: translateX(-20px);
    }
}

/* ------------------------- SECTION 4 ------------------------- */

.frontpage .section4{
    border-bottom: solid 1px var(--color-grey);
}

.frontpage .section4 .container{
    display: flex;
    gap: 140px;
    padding-block: 100px;
    position: relative;
}

.frontpage .section4 .container::before{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 1px;
    height: 100%;
    z-index: -1;
    background-color: var(--color-grey);
}

.frontpage .section4 .left,
.frontpage .section4 .right{
    width: 50%;
}

.frontpage .section4 .sur-titre{
    font-family: "Space Grotesk", sans-serif;
    font-size: 18px;
    line-height: 1.2em;
    margin-bottom: 5px;
}

.frontpage .section4 .titre{
    font-size: 50px;
    line-height: 1.2em;
    font-weight: 500;
}

.frontpage .section4 .titre strong{
    color: var(--color-secondary);
    font-weight: 500;
}

.frontpage .section4 .paragraphe{
    margin-top: 35px;
}

.frontpage .section4 .btn{
    margin-top: 35px;
}

.frontpage .section4 .right{
    height: fit-content;
    aspect-ratio: 1;
    position: relative;
    overflow: hidden;
}

.frontpage .section4 .right.rondes{
    border-radius: 100%;
}

.frontpage .section4 .right.carrees{
    border-radius: 16px;
}

.frontpage .section4 .imgContainer{
    height: auto;
    width: 100%;
    aspect-ratio: 1;
    display: block;
    overflow: hidden;
    position: relative;
}

.frontpage .section4 .imgContainer::after{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg,rgba(46, 103, 215, 1) 0%, rgba(255, 255, 255, 0) 100%);
}

.frontpage .section4 .right img{
    width: 100%;
    height: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    display: block;
}

@media (max-width: 1600px) {
    .frontpage .section4 .container{
        gap: 100px;
    }
    .frontpage .section4 .titre{
        font-size: 40px;
    }
    .frontpage .section4 .container::before{
        left: 55px;
    }
}

@media (max-width: 992px) {
    .frontpage .breadcrumbs{
        margin-bottom: 20px;
    }
    .frontpage .section4 .container{
        flex-direction: column;
        gap: 40px;
        padding-block: 40px 50px;
        padding-inline: 36px 20px;
    }
    .frontpage .section4 .sur-titre{
        font-size: 16px;
        margin-bottom: 10px;
    }
    .frontpage .section4 .titre{
        font-size: 30px;
    }
    .frontpage .section4 .left,
    .frontpage .section4 .right{
        width: 100%;
    }
    .frontpage .section4 .paragraphe{
        margin-top: 30px;
    }
    .frontpage .section4 .btn{
        margin-top: 30px;
    }
    .frontpage .section4 .right{
        aspect-ratio: 1;
    }
    .frontpage .section4 .right .imgContainer{
        width: 100%;
        min-width: 100%;
        height: auto;
        aspect-ratio: 1;
    }
    .frontpage .section4 .right.rondes .imgContainer{
        border-radius: 100%;
    }
    .frontpage .section4 .right.carrees .imgContainer{
        border-radius: 16px;
    }
    .frontpage .section4 .container::before{
        left: 20px;
    }
}

/* -------------------------------- SECTION 5 -------------------------------- */

.frontpage .section5 .container{
    padding-block: 80px 100px;
    position: relative;
}

.frontpage .section5 .container::before{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 1px;
    height: 100%;
    z-index: -1;
    background-color: var(--color-grey);
}

.frontpage .section5 h2{
    font-family: "Space Grotesk", sans-serif;
    font-weight: normal;
    font-size: 18px;
    line-height: 1.2em; 
    display: flex;
    align-items: center;
    gap: 12px;
    white-space: nowrap;
    height: fit-content;
    margin-bottom: 10px;
}

.frontpage .section5 h2::before{
    content: "";
    display: block;
    width: 12px;
    min-width: 12px;
    height: 12px;
    background-color: var(--color-secondary); 
    border-radius: 50%;
}

.frontpage .section5 .container > .titre{
    font-size: 48px;
    line-height: 1.2em;
    font-weight: 500;
}

.frontpage .section5 .container > .titre strong{
    color: var(--color-secondary);
    font-weight: 500;
}

.frontpage .section5 .grille{
    margin-top: 45px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

@media (max-width: 1600px) {
    .frontpage .section5 .container::before{
        left: 55px;
    }
    .frontpage .section5 .container > .titre{
        font-size: 40px;
    }
}

@media (max-width: 992px) {
    .frontpage .section5 .container{
        padding-block: 50px;
    }
    .frontpage .section5 .container::before{
        left: 20px;
    }
    .frontpage .section5 h2{
        font-size: 16px;
        padding-left: 16px;
    }
    .frontpage .section5 .container > .titre{
        font-size: 30px;
        padding-left: 16px;
    }
}

@media (max-width: 800px) {
    .frontpage .section5 .grille{
        grid-template-columns: 1fr;
        margin-top: 35px;
    }
}