body {
    overflow-x: clip;
    
}

.mask {
    mask-image: url("../images/mask-nature.svg");
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: 100% 100%;

    /* Compatibilité Chrome, Edge et Safari */
    -webkit-mask-image: url("../images/mask-nature.svg");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: 100% 100%;

}

.mask-square {
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}

.mask-rectangle {
    mask-image: url("../images/dbi-nature-rectangle-mask.svg");
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: 100% 100%;

    -webkit-mask-image: url("../images/dbi-nature-rectangle-mask.svg");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: 100% 100%;
}

nav {
    background-color: #EC7969;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1887 102'%3E%3Cpath fill='black' d='M1870.18 17.747C1868.68 7.10979 1866.19 3.92355 1864.06.227784 1861.94-3.46799 1848.31-6.23968 1832.07-6.26553H3.78882C-13.2308-6.29311-27.4585-3.29801-28.8206.598214L-47.0315 52.6839C-51.4918 67.3774-54 76.821-54 81.0142-54 84.1517-52.6067 87.0326-50.3762 89.6578-48.1465 92.2825-45.9159 93.851-43.686 94.3954-11.6301 98.0447 853.068 101.919 976.276 101.919 1104.22 101.919 1805.23 99.7805 1866.84 93.4738 1866.84 93.4738 1866.96 92.6997 1866.84 90.2614 1866.74 88.2967 1867.09 83.4478 1867.52 80.7388 1868.36 75.4786 1869.15 76.9992 1870.18 72.4329 1871.22 67.8666 1871.68 28.3843 1870.18 17.747Z'/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: 95vw;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1887 102'%3E%3Cpath fill='black' d='M1870.18 17.747C1868.68 7.10979 1866.19 3.92355 1864.06.227784 1861.94-3.46799 1848.31-6.23968 1832.07-6.26553H3.78882C-13.2308-6.29311-27.4585-3.29801-28.8206.598214L-47.0315 52.6839C-51.4918 67.3774-54 76.821-54 81.0142-54 84.1517-52.6067 87.0326-50.3762 89.6578-48.1465 92.2825-45.9159 93.851-43.686 94.3954-11.6301 98.0447 853.068 101.919 976.276 101.919 1104.22 101.919 1805.23 99.7805 1866.84 93.4738 1866.84 93.4738 1866.96 92.6997 1866.84 90.2614 1866.74 88.2967 1867.09 83.4478 1867.52 80.7388 1868.36 75.4786 1869.15 76.9992 1870.18 72.4329 1871.22 67.8666 1871.68 28.3843 1870.18 17.747Z'/%3E%3C/svg%3E");
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: 95vw;
    padding: 1vw;
    position: sticky;
    top: 0;
    left: 0;
    width: 95vw;
    display: flex;
    justify-content: left;
    align-items: center;
    gap: 5vw;
    box-sizing: border-box;
    z-index: 100;
}

nav .nav-mobile-actions {
    display: none;
}

nav h1 {
    display: block;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 3.5vw;
    line-height: 1;
    color: #fff;
    text-align: left;
    margin: 0;

}

nav .nav_links {
    display: flex;
    gap: 2vw;
}

nav .nav_links a {
    font-family: 'Work Sans', sans-serif;
    font-size: 0.9vw;
    line-height: 1;
    color: #fff;
    text-align: left;
    text-decoration: none;
    font-weight: 700;
} 

@media (min-width: 769px) {
    nav .nav_links a.is-active {
        position: relative;
        z-index: 1;
    }

    nav .nav_links a.is-active::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        z-index: -1;
        width: 3.2vw;
        height: 2.8vw;
        background-color: #9A1915;
        transform: translate(-50%, -50%) rotate(-2deg);
        mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
        -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
        pointer-events: none;
    }
}

nav .contact_cta {
    display: flex;
    gap: 2vw;
    margin-left: 10vw;
}

nav .contact_cta a {
    font-family: 'Work Sans', sans-serif;
    font-size: 0.7vw;
    line-height: 1;
    color: #fff;
    text-align: left;
    text-decoration: none;
    font-weight: 700;
}

nav .contact_cta .cta-white {
    background-color: #fff;
    color: #000;
    padding: 1vw 1.5vw;
    border-radius: 5px;
}

nav .contact_cta .cta-dark1 {
    background-color: #000;
    color: #fff;
    padding: 1vw 1.5vw;
    border-radius: 5px;
}

header {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative; 
    height: 100vh;
    width: 100%;
    background-color: #000;
}

header .header-background-video {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    pointer-events: none;
}

header.intuition-header {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 49vw;
    min-height: 520px;
    max-height: 850px;
    overflow: hidden;
    background-color: #d9d2c9;
}

header.intuition-header .intuition-header__image {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

header.intuition-header h1 {
    position: relative;
    z-index: 1;
    margin: 3vw 0 0;
    color: #fff;
    font-family: 'Londrina Solid', sans-serif;
    font-size: clamp(62px, 6vw, 112px);
    font-weight: 700;
    line-height: 0.9;
    text-align: center;
    text-transform: uppercase;
}

header.intuition-header .intuition-header__offer {
    position: absolute;
    right: 1.5vw;
    bottom: 1.2vw;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 12vw;
    height: 9.5vw;
    box-sizing: border-box;
    background-color: #9A1915;
    color: #fff;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.7vw;
    font-weight: 700;
    line-height: 0.9;
    text-align: center;
    transform: rotate(-2deg);
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}

header.intuition-header .intuition-header__offer strong {
    font-size: 2.5vw;
}

header.intuition-header .intuition-header__offer sup {
    font-size: 0.65vw;
    vertical-align: super;
    line-height: 0;
    position: relative;
    right: -4vw;
    top: -1vw;
}

header .header-offers {
    position: absolute;
    right: 3vw;
    bottom: -3vw;
    z-index: 4;
    display: flex;
    align-items: flex-end;
    gap: 1vw;
}

header .header-offer {
    position: relative;
    isolation: isolate;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 16vw;
    height: 12.5vw;
    padding: 0.8vw 0.4vw 3.7vw;
    box-sizing: border-box;
    color: #000;
    text-align: center;
    gap: 0.1vw;
    filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.40));
}



header .header-offer::before {
    content: "";
    position: absolute;
    inset: -0.8vw -0.6vw -1vw;
    z-index: -1;
    background-color: #EBD6C7;
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}

header .header-offer--brs {
    padding-top: 2vw;
}

header .header-offer--brs::before {
    background-color: #fff;
}

header .header-offer p {
    margin: 0;
}

header .header-offer__title,
header .header-offer__value,
header .header-offer__discount {
    font-family: 'Londrina Solid', sans-serif;
    font-weight: 700;
}

header .header-offer__title {
    font-size: 1.95vw;
    line-height: 1;
}

header .header-offer__eyebrow,
header .header-offer__note {
    font-family: "Work Sans", sans-serif;
    font-size: 0.82vw;
    font-weight: 700;
    line-height: 1.1;
}

header .header-offer__value {
    margin: 0.1vw 0 !important;
    font-size: 2.75vw;
    line-height: 0.95;
}

header .header-offer--brs .header-offer__eyebrow {
    font-size: 1vw;
}

header .header-offer__discount {
    font-size: 3vw;
    line-height: 0.9;
}

header .header-offer sup {
    font-size: 0.65em;
    vertical-align: super;
    line-height: 0;
}

header .header-offer__cta {
    position: absolute;
    right: 1vw;
    bottom: 0vw;
    left: 1vw;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 2.5vw;
    padding: 0.35vw 0.4vw;
    box-sizing: border-box;
    border-radius: 3px;
    background-color: #fff;
    color: #000;
    font-family: "Work Sans", sans-serif;
    font-size: 0.8vw;
    font-weight: 700;
    line-height: 1.1;
    text-decoration: none;
}

header .header-offer--brs .header-offer__cta {
    background-color: #EC7969;
    color: #fff;
}

header .header-content {
    display: flex;
    justify-content: start;
    align-items: start;
    flex-direction: column;
    position: relative;
    width: 45%;
    background-color: #EC7969;
    height: 100%;
    margin: 1vw 0;
    gap: 1.5vw;
}

header .header-bg {
    width: 55%;
    height: 100%;
}

header .header-bg video {
    width: 100%;
    height: 100%;
    object-fit: cover;
} 

header .header-content__title {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.8vw;
    line-height: 1.2;
    color: #000;
    text-align: left;
    margin-left: 4vw;
    display: flex;
    flex-direction: column;
    justify-content: start;
    margin-top: 3vw;
    row-gap: 0.5vw;

}

header .header-content__title h1 {
    font-size: 3vw;
}

header .header-content__title p {
    font-family: "Work Sans", sans-serif;
    font-size: 1.5vw;
}

header .header-content__subtitle {
    font-family: 'Londrina Solid', sans-serif;
    color: #000;
    text-align: left;
    background-color: #fff;
    margin-left: -2vw;
    width: 80%;
    padding: 1vw 0;
}

header .header-content__title h1, 
header .header-content__title p {
    margin: 0;
}

header .header-content__subtitle h1 {
    margin: 0;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 3vw;
    line-height: 1;
    color: #000;
    text-align: left;
    margin-left: 6vw;
}

header .header-content__subtitle h1 span {
    color: #EC7969;
}

header .header-content__text p {
    margin: 0;
    font-family: "Work Sans", sans-serif;
    font-size: 1.2vw;
    line-height: 1.2;
    color: #000;
    text-align: left;
    padding: 1vw 4vw;
    width: 95%;
}

.desktop {
    display: block;
}

.mobile {
    display: none;
}

header .header-mobile-media {
    width: 100%;
}

header .header-mobile-video {
    width: 100%;
}

header .header-mobile-video video {
    width: 100%;
    height: auto;
    object-fit: cover;
}

header .header-mobile-patch-bloc {
    display: flex;
}

header .header-patch-bloc {
    position: absolute;
    bottom: -5vw;
    right: 22vw;
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 2vw;
    z-index: 1;
}

header .header-patch-bloc .mask-square {
    width: 11vw;
    height: 11vw;
    -webkit-mask-size: 11vw 11vw;
    -webkit-mask-repeat: no-repeat;
}

header .header-patch-bloc .patch-bloc__txt1 {
    background-color: #EBD6C7;
    fill: #EBD6C7;
}

header .header-patch-bloc .patch-bloc__txt2 {
    background-color: #000;
    fill: #000;
}

header .header-patch-bloc .patch-bloc__bg1 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

header .header-patch-bloc .patch-bloc__txt1 {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.6vw;
    line-height: 1.2;
    color: #000;
    text-align: center;
    padding: 0.5vw 0; 
}

header .header-patch-bloc .patch-bloc__txt2 {
    font-family: 'Work Sans', sans-serif;
    font-size: 0.9vw;
    line-height: 1.2;
    color: #fff;
    text-align: center;
    padding: 0.5vw 0; 
}

header .header-patch-bloc .patch-bloc__txt2 .fw-100 {
    font-weight: 100;
    font-size: 0.9vw;
}

header .header-patch-bloc .patch-bloc__txt2 .fw-700 {
    font-weight: 700;
    font-size: 3.5vw;
    font-family: 'Londrina Solid', sans-serif;
}

header .header-patch-bloc .patch-bloc__txt2 .fw-500 {
    font-weight: 700;
    font-size: 1.1vw;
}

header .header-patch-bloc .patch-bloc__txt2 p sup {
    font-size: 0.6vw;
    vertical-align: super;
    line-height: 0;
}

header .patch-bloc__header-top {
    position: absolute;
    top: 1.5vw;
    right: 22vw;
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 2vw;
    z-index: 10;
}

header .patch-bloc__header-top .patch-remise {
    width: 10vw;
    height: 9vw;
    background-color: #9A1915;
    padding: 1.5vw 0 0 0;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 2vw;
    line-height: 1;
    color: #fff;
    text-align: center;
}

header .patch-bloc__header-top .patch-remise sup,
header .patch-bloc__header-top .patch-tva sup {
    font-size: 0.7vw;
    line-height: 0;
}

header .patch-bloc__header-top .patch-tva {
    width: 10vw;
    height: 9vw;
    background-color: #EBD6C7;
    padding: 1vw;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 2.1vw;
    line-height: 3vw;
    color: #000;
    text-align: center;
}

header .patch-bloc__header-top .patch-tva span {
    font-size: 3.7vw;
    line-height: 0;

}

header .header-baseline {    
    position: absolute;
    bottom: -5vw;
    left: 0vw;
    width: 50vw;
    height: 11vw;
    background-color: #EC7969;
    padding: 1vw 1.5vw 1vw 3vw;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    gap: 0.6vw;
    z-index: 1;
}

header .header-baseline h2 {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 2.4vw;
    line-height: 1;
    color: #fff;
    text-align: left;
    margin: 0;
}

header .header-baseline p {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.9vw;
    line-height: 1;
    text-align: left;
    margin: 0;
    text-transform: uppercase;
}

header .header-baseline .baseline-subtitle {
    color: #000;
}

header .header-baseline .baseline-content {
    color: #860B10;
}

main {
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: start;
    padding: 5.5vw 0vw 0vw 0vw;
    gap: 2vw;
}

main .quartier {
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 3vw;
}

main .quartier .quartier-visuel {
    position: relative;
    flex: 0 0 60%;
}

main .quartier .quartier-visuel::before {
    content: "";
    position: absolute;
    top: clamp(-70px, -6.5vw, -55px);
    left: 11%;
    z-index: 2;
    width: clamp(120px, 14vw, 150px);
    height: clamp(105px, 12vw, 150px);
    background: url("../images/decoration-quartier1.png") center/cover no-repeat;
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    pointer-events: none;
}

main .quartier .visuel-quartier {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}

main .quartier-content {
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: start;
    gap: 0.5vw;
}

main .quartier-content h2 {
    position: relative;
    isolation: isolate;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 3vw;
    line-height: 1;
    color: #000;
    text-align: left;
    margin: 0;
}

main .quartier-content::before {
    content: "";
    position: relative;
    top: 50%;
    left: -0.55em;
    z-index: -1;
    width: 3.5vw;
    height: 3.5vw;
    background-color: #F19A97;
    transform: translateY(-25%) rotate(-4deg);
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    pointer-events: none;
}

main .quartier-content .quartier-content-subtitle {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.5vw;
    line-height: 1;
    color: #000;
    text-align: left;
    margin: 0;
}

main .quartier-content .quartier-content-subtitle.pink {
    color: #EC7969;
}

main .quartier-content .quartier-content-subtitle.black {
    color: #000;
}

main .quartier-content .quartier-content-description {
    font-family: "Work Sans", sans-serif;
    font-size: 0.9vw;
    line-height: 1.2;
    color: #000;
    text-align: left;
    margin: 0;
    padding-top: 1vw;
    width: 80%;
    /* letter-spacing: 1px; */
}

main .quartier-content .quartier-content-cta {
    font-family: 'Work Sans', sans-serif;
    font-size: 0.9vw;
    line-height: 1;
    color: #fff;
    text-align: center;
    text-decoration: none;
    background-color: #860B10;
    padding: 1vw 2vw;
    border-radius: 5px;
    margin-top: 1vw;
    font-weight: 700;
    /* letter-spacing: 0.1vw; */

}

main .adresse {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10vw;
    width: 100%;
}

main .adresse .adresse-content {
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: start;
    gap: 0.5vw;
}

main .adresse .liste-adresse {
    counter-reset: adresse-item;
    display: flex;
    flex-direction: column;
    gap: 1vw;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

main .adresse .liste-adresse li {
    counter-increment: adresse-item;
    position: relative;
    display: block;
    min-height: 2.2vw;
    padding: 0.35vw 0 0.35vw 3vw;
    box-sizing: border-box;
    font-family: "Work Sans", sans-serif;
    font-size: 0.9vw;
    line-height: 1.25;
    color: #000;
}

main .adresse .liste-adresse li::before {
    content: counter(adresse-item);
    position: absolute;
    top: 50%;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 2.2vw;
    height: 2.2vw;
    background-color: #EC7969;
    color: #fff;
    font-family: "Work Sans", sans-serif;
    font-size: 0.8vw;
    font-weight: 700;
    line-height: 1;
    transform: translateY(-50%);
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}

main .adresse .adresse-bloc {
    position: relative;
    isolation: isolate;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    width: fit-content;
    min-width: 24vw;
    margin-top: 1.5vw;
    padding: 2vw 2vw;
    box-sizing: border-box;
}

main .adresse .adresse-bloc::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-color: #ECCBB8;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 485 119'%3E%3Cpath fill='black' d='M0 51.7021L3.03347 72.3883V89.6023L6.0693 99.9462V108.572C61.9544 115.477 147.929 118.914 263.997 118.914 375.767 118.914 446.318 116.88 475.398 112.883 477.42 112.288 479.444 110.569 481.465 107.694 483.489 104.819 484.753 101.665 484.753 98.2279 484.753 93.6344 482.477 83.2921 478.432 67.1994L476.166 7.51736C474.928 3.24972 462.022-.0304268 446.582.000212896L37.6042 3.40945C22.8793 3.43854 10.5101 6.47348 8.58268 10.5216 2.81226 22.642 0 36.3564 0 51.7021Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 485 119'%3E%3Cpath fill='black' d='M0 51.7021L3.03347 72.3883V89.6023L6.0693 99.9462V108.572C61.9544 115.477 147.929 118.914 263.997 118.914 375.767 118.914 446.318 116.88 475.398 112.883 477.42 112.288 479.444 110.569 481.465 107.694 483.489 104.819 484.753 101.665 484.753 98.2279 484.753 93.6344 482.477 83.2921 478.432 67.1994L476.166 7.51736C474.928 3.24972 462.022-.0304268 446.582.000212896L37.6042 3.40945C22.8793 3.43854 10.5101 6.47348 8.58268 10.5216 2.81226 22.642 0 36.3564 0 51.7021Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;
    pointer-events: none;
}

main .adresse .adresse-bloc p {
    width: auto;
    padding-top: 0.25vw;
    white-space: nowrap;
}

main .adresse h2 {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 3vw;
    line-height: 1;
    color: #000;
    text-align: left;
    margin: 0;
}

main .adresse h3 {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 2.3vw;
    line-height: 1;
    color: #EC7969;
    text-align: left;
    margin: 0;
}

main .adresse p {
    font-family: "Work Sans", sans-serif;
    font-size: 1vw;
    line-height: 1.2;
    color: #000;
    text-align: left;
    margin: 0;
    padding-top: 1vw;
    width: 50%;
    letter-spacing: 1px;
}

main .adresse-map-container {
    width: 45vw;
    height: auto;
    position: relative;
}

main .adresse-map-container img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.color_pink {
    color: #EC7969;
    font-weight: 700;
}

main .adresse p b {
    font-weight: 700;
}

main .intuition .visuel-container {
    position: relative;
    overflow: visible;
}


main .residence {
    position: relative;
    display: grid;
    grid-template-columns: 4% 46% 46% 4%;
    align-items: stretch;
    align-self: flex-start;
    width: 100%;
    height: 44vw;
    min-height: 340px;
    padding: 2vw 0 1vw;
    box-sizing: border-box;
    background-color: #fff;
    overflow: hidden;
}

main .residence-spacer {
    width: 100%;
    height: 100%;
}

main .spacer-black {
    background-color: #000;
}

main .spacer-saumon {
    background-color: #EC7969;
}

main .residence-panel {
    position: relative;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

main .residence-panel--home {
    background-image: url("../images/residence-visuel1.webp");
}

main .residence-panel--home::before {
    content: "";
    position: absolute;
    top: -1.2vw;
    left: 8%;
    z-index: 3;
    width: 4vw;
    height: 4vw;
    background-color: #EC7969;
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}

main .residence-panel--health {
    background-image: url("../images/residence-visuel2.webp");
}

main .residence-heading {
    position: absolute;
    top: 10%;
    left: 8%;
    z-index: 2;
    color: #000;
}

main .residence-heading h2,
main .residence-heading p {
    margin: 0;
}

main .residence-heading h2 {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 3.6vw;
    line-height: 0.9;
}

main .residence-heading p {
    max-width: 40vw;
    font-family: "Londrina Solid", sans-serif;
    font-size: 1.7vw;
    font-weight: 700;
    line-height: 1.15;
}

main .residence-card {
    position: absolute;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 18vw;
    min-height: 15vw;
    padding: 2.4vw 2vw;
    box-sizing: border-box;
    isolation: isolate;
    text-align: center;
}

main .residence-card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-color: #fff;
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}

main .residence-card--home {
    top: 38%;
    left: 31%;
}

main .residence-card--health {
    top: 37%;
    left: 50%;
    transform: translateX(-50%);
}

main .residence-card p,
main .residence-card h4 {
    margin: 0;
}

main .residence-card--home p {
    font-family: 'Work Sans', sans-serif;
    font-size: 1.35vw;
    line-height: 1.05;
    font-weight: 700;
    color: #000;
}

main .residence-card--home p span {
    color: #EC7969;
    font-size: 1.65vw;
    font-family: "Londrina Solid", sans-serif;
}

main .residence-card--health h4 {
    font-family: "Work Sans", sans-serif;
    font-size: 1.35vw;
    line-height: 1.05;
    font-weight: 700;
    color: #000;
}

main .residence-card--health .residence-health-title {
    margin-top: 0.35vw;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.9vw;
    color: #860B10;
}

main .residence-card--health p {
    width: 85%;
    margin-top: 0.25vw;
    font-family: "Work Sans", sans-serif;
    font-size: 0.95vw;
    line-height: 1.15;
    color: #000;
    letter-spacing: 0.1vw;
}

main .residence-link {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 2.4vw;
    margin-top: 1.1vw;
    padding: 0.55vw 0.7vw;
    box-sizing: border-box;
    border-radius: 3px;
    background-color: #EC7969;
    color: #fff;
    font-family: "Work Sans", sans-serif;
    font-size: 0.75vw;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
}

main .residence-card--health .residence-link {
    background-color: #860B10;
}

main .residence-offer {
    position: absolute;
    top: 48%;
    right: -11.5%;
    z-index: 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 11vw;
    height: 9vw;
    box-sizing: border-box;
    background-color: #9A1915;
    color: #fff;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.75vw;
    line-height: 0.9;
    text-align: center;
    transform: rotate(-2deg);
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}

main .residence-offer strong {
    font-size: 2.4vw;
}

main .residence-offer sup {
    font-size: 0.65vw;
}

main .intuition .visuel-container::before,
main .intuition .visuel-container::after {
    content: "";
    position: absolute;
    width: 10vw;
    height: 10vw;
    display: block;
    background-color: #EBD6C7;
    z-index: 2;
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}

main .intuition .visuel-container::before {
    left: 5vw;
    top: -5vw;
    background-color: #E75652;
}

main .intuition .visuel-container::after {
    right: -5vw;
    bottom: 10vw;
    background-color: #F19A97;
}

main .adresse .visuel-container {
    margin-top: 3vw;
    width: 67%;
}

main .adresse .visuel-container .main-visuel-desktop {
    width: 100%;
    height: auto;
    object-fit: cover;
}

main .adresse .visuel-container .patch-main__img1 {
    width: 15vw;
    height: 15vw;
    position: absolute;
    z-index: 1;
    right: 32vw;
    margin-top: -7vw;
}

main .intuition {
    display: flex;
    flex-direction: column;
    gap: 10vw;
    justify-content: flex-start;
    align-items: flex-start;
}

main .intuition .intuition-block {
    display: flex;
    flex-direction: row;
    justify-content: start;
    align-items: start;
    gap: 1vw;
}

main .intuition .intuition-block .intuition-content-visuel {
    width: 40vw;
    height: auto;
    /* position: relative; */
    /* top: -10vw; */
    /* z-index: 1; */
}

main .intuition .intuition-block .intuition-content-visuel img {
    width: 100%;
    height: auto;
}

main .intuition .intuition-content {
    display: flex;
    justify-content: start;
    align-items: start;
    flex-direction: column;
    gap: 1vw;
    width: 40vw;
    height: 25vw;
    background-color: #EBD6C7;
    padding: 3vw 3vw 1vw 2vw;
    position: relative;
    left: -5vw;
    bottom: -1vw;
    z-index: 2;
}

main .intuition .intuition-content .intuition-title p {
    font-family: 'Work Sans', sans-serif;
    font-size: 1vw;
    line-height: 1;
    color: #000;
    text-align: left;
    margin: 0;
    letter-spacing: 0.2vw;
    position: absolute;
    margin-left: 2vw;
    margin-top: 0.8vw;
    font-weight: 700;
}

main .intuition .intuition-content .intuition-title h3 {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 5vw;
    line-height: 1;
    color: #E75652;
    text-align: left;
    margin: 0;
    letter-spacing: 0.3vw;
}

main .intuition .intuition-content .intuition-title h3 span {
    font-size: 6.5vw;
}

main .intuition .intuition-content h4 {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.5vw;
    line-height: 1.2;
    color: #000;
    text-align: left;
    margin: 0;
}

main .intuition .intuition-content h4 span {
    color: #E75652;
}

main .intuition .intuition-content > p {
    font-family: "Work Sans", sans-serif;
    font-size: 1vw;
    line-height: 1.2;
    color: #000;
    text-align: left;
    margin: 0;
    letter-spacing: 0.1vw;
}

main .intuition .visuel-container {
    width: 60%;
    height: auto;
    position: relative;
    top: -10vw;
    z-index: 1;
}

main .intuition .visuel-container img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

main .gdp-prices {
    width: 60%;
    margin-top: -8vw;
}

main .gdp-prices__table-wrap {
    width: 100%;
}

main .gdp-prices__table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

main .gdp-prices__table th,
main .gdp-prices__table td {
    border: 1px solid #b9b9b9;
}

main .gdp-prices__table .gdp-col-head {
    background-color: #1f1f1f;
    color: #fff;
    font-family: "Work Sans", sans-serif;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 1.05;
    text-align: center;
    padding: 0.8vw;
}

main .gdp-prices__table .gdp-col-head--left {
    text-align: left;
    font-size: 1.5vw;
    width: 37%;
}

main .gdp-prices__table .gdp-col-head--mid,
main .gdp-prices__table .gdp-col-head--right {
    width: 31.5%;
    font-size: 1.35vw;
}

main .gdp-prices__table .gdp-col-head span {
    display: block;
}

main .gdp-prices__table .gdp-col-head span + span {
    font-size: 1.2vw;
}

main .gdp-prices__table .gdp-col-head sup {
    font-size: 0.55em;
}

main .gdp-prices__table .gdp-col {
    padding: 0.6vw 0.8vw;
}

main .gdp-prices__table .gdp-col--typology {
    color: #fff;
}

main .gdp-prices__table tbody tr:nth-child(1) .gdp-col--typology {
    background-color: #EE7066;
}

main .gdp-prices__table tbody tr:nth-child(2) .gdp-col--typology {
    background-color: #EE7066;
}

main .gdp-prices__table tbody tr:nth-child(3) .gdp-col--typology {
    background-color: #EE7066;
}

main .gdp-prices__table tbody tr:nth-child(4) .gdp-col--typology {
    background-color: #EE7066;
}

main .gdp-prices__table tbody tr:nth-child(5) .gdp-col--typology {
    background-color: #EE7066;
}

main .gdp-prices__table .gdp-col--typology strong {
    display: block;
    font-family: "Work Sans", sans-serif;
    font-size: 1.7vw;
    font-weight: 700;
    line-height: 1;
}

main .gdp-prices__table .gdp-col--typology span {
    display: block;
    font-family: "Work Sans", sans-serif;
    font-size: 0.95vw;
    line-height: 1.2;
    margin-top: 0.2vw;
}

main .gdp-price-patch {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0.75vw;
    margin-bottom: 1vw;
}

main .gdp-price-patch__header,
main .gdp-price-patch__price {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 9.5vw;
    height: 9.5vw;
    padding: 0.9vw;
    text-align: center;
}

main .gdp-price-patch__header {
    background-color: #EBD6C7;
    color: #000;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.5vw;
    line-height: 1.05;
}

main .gdp-price-patch__price {
    background-color: #000;
    color: #fff;
    font-family: 'Work Sans', sans-serif;
}

main .gdp-price-patch__price p {
    margin: 0;
    font-family: 'Work Sans', sans-serif;
    text-transform: uppercase;
    line-height: 1.05;
}

main .gdp-price-patch__price .fw-100 {
    display: inline-block;
    font-size: 0.9vw;
}

main .gdp-price-patch__price .fw-700 {
    display: inline-block;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 3vw;
    line-height: 1;
    margin: 0.25vw 0;
}

main .gdp-price-patch__price .fw-500 {
    display: inline-block;
    font-size: 0.95vw;
}

main .gdp-price-patch .mask-square {
    width: 100%;
    height: 100%;
}

main .gdp-price-patch__header.mask-square,
main .gdp-price-patch__price.mask-square {
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
}

main .gdp-prices__table .gdp-col--tva20 {
    background-color: #efefef;
    color: #1e1e1e;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 2.3vw;
    text-align: center;
    line-height: 1;
}

main .gdp-prices__table .gdp-col--tva55 {
    background-color: #D13E34;
    color: #fff;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 2.3vw;
    text-align: center;
    line-height: 1;
}

main .mosaique {
    width: 100%;
    margin-top: 0vw;
    background-color: #fff;
}

main .sales-office {
    width: 100%;
    padding: 1.5vw 0 1.7vw 2vw;
    box-sizing: border-box;
    background-color: #fff;
}

main .sales-office__patch {
    position: relative;
    isolation: isolate;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 32vw;
    min-height: 11.2vw;
    padding: 1.45vw 2.35vw 1.65vw;
    box-sizing: border-box;
    color: #fff;
}

main .sales-office__patch::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-color: #D83E35;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 799 284'%3E%3Cpath d='M0 123.205L4.98752 172.503V213.516L9.97504 238.165V258.733C9.97504 290.39 243.77 283.382 435.068 283.382C626.366 283.382 735.556 278.519 783.453 268.997C786.791 267.554 790.13 263.474 793.469 256.631C796.808 249.789 798.868 242.246 798.868 234.084C798.868 223.12 795.118 198.512 788.44 160.137L784.689 17.931C782.711 7.74985 761.442 -0.0817935 736.009 0.000644838L61.9524 8.12082C37.6743 8.20326 17.312 15.4166 14.1382 25.0619C4.61655 53.9565 0 86.6433 0 123.205Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 799 284'%3E%3Cpath d='M0 123.205L4.98752 172.503V213.516L9.97504 238.165V258.733C9.97504 290.39 243.77 283.382 435.068 283.382C626.366 283.382 735.556 278.519 783.453 268.997C786.791 267.554 790.13 263.474 793.469 256.631C796.808 249.789 798.868 242.246 798.868 234.084C798.868 223.12 795.118 198.512 788.44 160.137L784.689 17.931C782.711 7.74985 761.442 -0.0817935 736.009 0.000644838L61.9524 8.12082C37.6743 8.20326 17.312 15.4166 14.1382 25.0619C4.61655 53.9565 0 86.6433 0 123.205Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}

main .sales-office__patch h2,
main .sales-office__patch p {
    margin: 0;
    font-family: "Work Sans", sans-serif;
}

main .sales-office__patch h2 {
    margin-bottom: 0.45vw;
    font-size: 1.55vw;
    line-height: 1.05;
    font-weight: 700;
}

main .sales-office__patch p {
    font-size: 1.22vw;
    line-height: 1.24;
    font-weight: 400;
}

main .mosaique .mosaique-grid {
    position: relative;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: repeat(2, 19vw);
    width: 100%;
}

main .mosaique .mosaique-grid > .swiper-wrapper,
main .mosaique .mosaique-slide {
    display: contents;
}

main .mosaique .mosaique-pagination {
    display: none;
}

main .mosaique .mosaique-grid::before {
    content: "";
    position: absolute;
    top: -1.6vw;
    left: 22%;
    z-index: 3;
    width: 4vw;
    height: 4vw;
    background-color: #ECCBB8;
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}

main .mosaique .mosaique-item {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}

main .mosaique .mosaique-item--image {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

main .mosaique .mosaique-item--text {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-end;
    padding: 11.5vw 1.5vw 1.8vw;
}

main .mosaique .mosaique-item--text h3,
main .mosaique .mosaique-item--text p {
    width: 100%;
    margin: 0;
    color: inherit;
    text-align: left;
}

main .mosaique .mosaique-item--text h3 {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.45vw;
    line-height: 1;
}

main .mosaique .mosaique-item--text p {
    margin-top: 0.8vw;
    font-family: "Work Sans", sans-serif;
    font-size: 0.85vw;
    line-height: 1.25;
    font-weight: 500;
}

main .mosaique .mosaique-item--text-black {
    background-color: #101010;
    color: #fff;
}

main .mosaique .mosaique-item--text-coral {
    background-color: #EC7969;
    color: #fff;
}

main .mosaique .mosaique-item--text-beige {
    background-color: #ECCBB8;
    color: #000;
}

main .mosaique .mosaique-item--img-eye {
    background-image: url("../images/mosaique_1.webp");
}

main .mosaique .mosaique-item--img-smile {
    background-image: url("../images/mosaique_2.webp");
}

main .mosaique .mosaique-item--img-mouth {
    background-image: url("../images/mosaique_3.webp");
}

main .mosaique .mosaique-item--img-building {
    background-image: url("../images/mosaique_4.webp");
}

main .mosaique .mosaique-item--img-interior {
    background-image: url("../images/mosaique_5.webp");
}

main .mosaique .mosaique-item--eye {
    grid-column: 1;
    grid-row: 1;
}

main .mosaique .mosaique-item--tom {
    grid-column: 2;
    grid-row: 1;
}

main .mosaique .mosaique-item--portrait-one {
    grid-column: 3;
    grid-row: 1;
}

main .mosaique .mosaique-item--manon {
    grid-column: 4;
    grid-row: 1;
}

main .mosaique .mosaique-item--mouth {
    grid-column: 5;
    grid-row: 1;
}

main .mosaique .mosaique-item--mathilde {
    grid-column: 1;
    grid-row: 2;
}

main .mosaique .mosaique-item--portrait-two {
    grid-column: 2;
    grid-row: 2;
}

main .mosaique .mosaique-item--nadia {
    grid-column: 3;
    grid-row: 2;
}

main .mosaique .mosaique-item--portrait-three {
    grid-column: 4;
    grid-row: 2;
}

main .mosaique .mosaique-item--jessica {
    grid-column: 5;
    grid-row: 2;
}

.mosaique-item--blur {
    position: relative;
    overflow: hidden;
}

.mosaique-item--blur::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgb(0 0 0 / 35%);
    pointer-events: none;
}

#formulaire {
    z-index: 100;
    top: 4vw;
    right: 1vw;
}

#formulaire::before {
    content: "";
    position: absolute;
    width: 5vw;
    height: 5vw;
    top: -3vw;
    left: 7vw;
    display: block;
    background-color: #EC7969;
    z-index: 2;
    pointer-events: none;
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}



footer {
    background-color: #F0F0F0;
    z-index: 1;
}

footer .footer__content {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    gap: 2.5vw;
}

footer .footer__copromotion {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1vw;
}

footer .footer__copromotion .left-line, 
footer .footer__copromotion .right-line {
    width: 10vw;
    height: 1px;
    background-color: #000;
}

footer .footer__copromotion div {
    color: #000;
}


footer .logos {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 2vw;
}

footer .mentions {
    width: 100%;
    color: #000;
}

#formulaire {
    background-color: #fff;
    width: 20%;
    padding: 5vw 1.5vw 2vw 1.5vw;
    color: #000;
    position: fixed !important;
    overflow: visible;
    max-height: 90vh;
}

#formulaire .formulaire-scroll {
    max-height: calc(90vh - 7vw);
    overflow-y: auto;
    padding-right: 0.5vw;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE/Edge legacy */
}

#formulaire .formulaire-scroll::-webkit-scrollbar {
    display: none; /* Chrome/Safari */
}

#formulaire .title {
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: start;
    gap: 0.5vw;
    margin-bottom: 2vw;
}

#formulaire .title h2 {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 2vw;
    line-height: 1;
    color: #000;
    text-align: center;
    margin: 0;
    text-align: left;
    padding: 0vw;
}

#formulaire .title h3 {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.4vw;
    color: #EC7969;
    text-align: left;
    margin: 0;
}

#formulaire .title p {
    font-family: "Work Sans", sans-serif;
    font-size: 0.9vw;
    line-height: 1.2;
    color: #000;
    text-align: left;
    margin: 0;
    font-weight: 700;
}

.formLeads input, .formLeads select {
    background-color: #F0F0F0;
    color: #000;
    font-family: "Work Sans", sans-serif;
}

::placeholder {
    color: #000;
    font-family: "Work Sans", sans-serif;
}

#formulaire .projet > p {
    font-family: "Work Sans", sans-serif;
    font-size: 0.9vw;
    color: #000;
    font-weight: 700;
    text-align: left;
}

#formulaire #container_date p {
    font-family: "Work Sans", sans-serif;
    font-size: 0.8vw;
    color: #000;
    font-weight: 700;
    text-align: left;
}

#formulaire .markus_radio__label {
    font-family: "Work Sans", sans-serif;
    font-size: 0.9vw;
    color: #000;
    text-align: left;
}

.formLeads .markus_radio__control {
    background-color: #F0F0F0;
}

.formLeads .markus_radio input:checked + .markus_radio__control {
    background-color: #EBD6C7;
}

#formulaire .btn {
    background-color: #000;
    color: #fff;
    font-family: "Work Sans", sans-serif;
    width: 70%;
}

#formulaire #heure {
    background-color: #F0F0F0;
}

#formulaire .form-cta-tel {
    border-radius: 6px;
    background-color: #EBD6C7;
    margin: 0 auto;
    color: #000;
    text-decoration: none;
    font-weight: 700;
    font-family: "Work Sans", sans-serif;
}

main .form-faq {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-self: flex-start;
    width: 100%;
    margin-top: 2vw;
}

main .form-faq > div {
    width: 100%;
    height: 54.5vw;
    min-height: 540px;
    box-sizing: border-box;
}

main .form-faq__consent-text {
    font-family: "Work Sans", sans-serif;
    font-size: 0.6vw;
    line-height: 1.2;
    color: #000;
    text-align: left;
    color: #fff;
    padding: 1vw 0;
}

main .form-faq__form {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #EC7969;
}

main .form-faq__visual {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

main .form-faq__visual--top {
    background-image: url("../images/bloc-faq-visu1.webp");
}

main .form-faq__visual--bottom {
    background-image: url("../images/bloc-faq-visu2.webp");
}

main .form-faq__faq {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5vw;
    background-color: #ECCBB8;
}

main .form-faq #formulaire {
    position: relative !important;
    inset: auto;
    z-index: 1;
    width: 58%;
    max-height: none;
    padding: 0;
    overflow: visible;
    background-color: transparent;
    color: #fff;
}

main .form-faq #formulaire::before {
    content: none;
}

main .form-faq #formulaire .formulaire-scroll {
    max-height: none;
    padding-right: 0;
    overflow: visible;
}

main .form-faq #formulaire .formLeads {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0vw;
    width: 100%;
}

main .form-faq #formulaire .title {
    align-items: center;
    width: 100%;
    margin-bottom: 1.2vw;
    text-align: center;
}

main .form-faq #formulaire .title h2,
main .form-faq #formulaire .title h3,
main .form-faq #formulaire .title p,
main .form-faq #formulaire .projet > p,
main .form-faq #formulaire #container_date p,
main .form-faq #formulaire .markus_radio__label {
    color: #fff;
}

main .form-faq #formulaire .title h2 {
    width: 100%;
    font-size: 2.4vw;
    text-align: center;
}

main .form-faq #formulaire .title p {
    width: 100%;
    font-size: 0.87vw;
    font-weight: 400;
    text-align: center;
    letter-spacing: 0.05vw;
    font-family: "Work Sans", sans-serif;
}

main .form-faq #formulaire .form-row--identity {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.6vw;
    width: 70%;
}

main .form-faq #formulaire .form-row--identity label,
main .form-faq #formulaire .formLeads > label:not(.markus_radio) {
    display: block;
    width: 100%;
    margin: 0;
}

main .form-faq #formulaire .formLeads > label:not(.markus_radio),
main .form-faq #formulaire .projet,
main .form-faq #formulaire #container_date,
main .form-faq #formulaire .formLeads > i,
main .form-faq #formulaire .formLeads > .markus_radio {
    width: 70%;
    box-sizing: border-box;
}

main .form-faq .formLeads input,
main .form-faq .formLeads select,
main .form-faq #formulaire #heure {
    width: 100%;
    min-height: 2.3vw;
    padding: 0.55vw 0.7vw;
    box-sizing: border-box;
    border: 0;
    border-radius: 2px;
    background-color: rgba(134, 11, 16, 0.2);
    color: #fff;
    font-size: 0.8vw;
}

main .form-faq #formulaire ::placeholder {
    color: rgba(255, 255, 255, 0.85);
}

main .form-faq #formulaire .projet > p,
main .form-faq #formulaire #container_date p {
    margin: 0 0 0.35vw;
    font-size: 0.7vw;
}

main .form-faq #formulaire #container_date > div {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.6vw;
}

main .form-faq #formulaire .formLeads > i {
    margin-top: -0.1vw;
    color: #000;
    font-family: "Work Sans", sans-serif;
    font-size: 0.55vw;
    text-align: center;
}

main .form-faq #formulaire .formLeads > .markus_radio {
    margin: 0.2vw 0;
}

main .form-faq #formulaire .markus_radio__label {
    font-size: 0.6vw;
}

main .form-faq #formulaire .btn {
    width: 40%;
    margin: 0.35vw auto 0;
    background-color: #000;
    color: #fff;
    padding: 1.4vw 0.5vw;
}

main .form-faq #formulaire .form-cta-tel {
    width: 40%;
    margin: 0.65vw auto 0;
    background-color: #EBD6C7;
    color: #000;
    padding: 1.4vw 0.5vw;
}

main .form-faq__faq-content {
    width: 66%;
}

main .form-faq__faq-content h2 {
    margin: 0 0 2vw;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 2.6vw;
    line-height: 1;
    color: #000;
}

main .form-faq__questions details {
    border-bottom: 1px solid rgba(0, 0, 0, 0.25);
    interpolate-size: allow-keywords;
    transition: padding-bottom 350ms ease;
}

main .form-faq__questions details[open] {
    padding-bottom: 0.8vw;
}

main .form-faq__questions details::details-content {
    height: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-0.4vw);
    transition:
        content-visibility 350ms allow-discrete,
        height 350ms ease,
        opacity 250ms ease,
        transform 350ms ease;
}

main .form-faq__questions details[open]::details-content {
    height: auto;
    opacity: 1;
    transform: translateY(0);
}

main .form-faq__questions summary {
    position: relative;
    padding: 1vw 2.4vw 1vw 0;
    color: #000;
    font-family: "Work Sans", sans-serif;
    font-size: 0.82vw;
    line-height: 1.2;
    list-style: none;
    cursor: pointer;
    font-weight: 700;
}

main .form-faq__questions summary::-webkit-details-marker {
    display: none;
}

main .form-faq__questions summary::after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 1.4vw;
    height: 1.4vw;
    border-radius: 50%;
    background-color: #fff;
    color: #000;
    font-size: 1vw;
    font-weight: 700;
    transform: translateY(-50%);
    transition: transform 350ms ease, background-color 350ms ease;
}

main .form-faq__questions details[open] summary::after {
    transform: translateY(-50%) rotate(180deg);
}

main .form-faq__questions details[open] summary::after {
    content: "−";
}

main .form-faq__answer {
    width: 100%;
    margin: 0;
    padding: 0 2.4vw 0.8vw 0;
    box-sizing: border-box;
    color: #000;
    font-family: "Work Sans", sans-serif;
    font-size: 0.68vw;
    line-height: 1.35;
}

main .form-faq__link {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin-top: 2.5vw;
    padding: 1vw 1.5vw;
    border-radius: 4px;
    background-color: #fff;
    color: #000;
    font-family: "Work Sans", sans-serif;
    font-size: 0.8vw;
    font-weight: 700;
    text-decoration: none;
}

main.intuition-main {
    position: relative;
    z-index: 2;
    display: block;
    width: 100%;
    padding: 0vw;
    overflow: visible;
}

main .intuition-residences {
    position: relative;
    z-index: 20;
    isolation: isolate;
    width: 100%;
    height: 33vw;
    margin-top: -5vw;
    overflow: visible;
}

main .intuition-residences-pagination {
    display: none;
}

main .intuition-residence-card {
    position: absolute;
    z-index: 21;
    height: auto;
    aspect-ratio: 1026 / 510;
}

main .intuition-residence-card--intuition {
    top: 0;
    left: 5%;
    width: 52vw;
}

main .intuition-residence-card--origine {
    top: 8.5vw;
    right: 4%;
    z-index: 22;
    width: 47vw;
}

main .intuition-residence-card__surface {
    display: flex;
    width: 100%;
    height: 100%;
    overflow: hidden;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1026 510'%3E%3Cpath fill='black' d='M0 294.745L6.41522 204.037V128.548L12.8311 83.1944V45.3541C131.027 15.0546 312.926 0 558.456 0C794.914 0 944.141 8.90761 1005.65 26.4479C1009.97 29.0705 1014.25 36.6112 1018.53 49.2068C1022.81 61.8019 1025.47 75.6537 1025.47 90.7345C1025.47 110.844 1020.67 156.197 1012.07 226.796L977.845 471.815C974.855 493.427 943.289 510.038 905.603 509.873L88.0165 506.541C52.4224 506.404 21.7166 491.514 17.2441 471.215C5.64404 419.085 0 360.316 0 294.745Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1026 510'%3E%3Cpath fill='black' d='M0 294.745L6.41522 204.037V128.548L12.8311 83.1944V45.3541C131.027 15.0546 312.926 0 558.456 0C794.914 0 944.141 8.90761 1005.65 26.4479C1009.97 29.0705 1014.25 36.6112 1018.53 49.2068C1022.81 61.8019 1025.47 75.6537 1025.47 90.7345C1025.47 110.844 1020.67 156.197 1012.07 226.796L977.845 471.815C974.855 493.427 943.289 510.038 905.603 509.873L88.0165 506.541C52.4224 506.404 21.7166 491.514 17.2441 471.215C5.64404 419.085 0 360.316 0 294.745Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;
}

main .intuition-residence-card__media,
main .intuition-residence-card__content {
    position: relative;
    height: 100%;
    box-sizing: border-box;
}

main .intuition-residence-card__media {
    flex: 0 0 45%;
    overflow: hidden;
}

main .intuition-residence-card--intuition .intuition-residence-card__media {
    flex-basis: 40%;
}

main .intuition-residence-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

main .intuition-residence-card--intuition .intuition-residence-card__media img {
    object-position: 18% center;
}

main .intuition-residence-card--origine .intuition-residence-card__media img {
    object-position: 82% center;
}

main .intuition-residence-card__content {
    z-index: 1;
    flex: 1;
    padding: 2.8vw 2.4vw 2vw;
    background-color: #EBD6C7;
}

main .intuition-residence-card--origine .intuition-residence-card__content {
    padding: 7vw 3vw 2vw;
    background-color: #B4A4A6;
}

main .intuition-residence-card__content p,
main .intuition-residence-card__content h2,
main .intuition-residence-card__content h3 {
    margin: 0;
}

main .intuition-residence-card__label {
    font-family: "Work Sans", sans-serif;
    font-size: 0.65vw;
    font-weight: 700;
    line-height: 1;
}

main .intuition-residence-card__upcoming {
    color: #000;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 3vw;
    font-weight: 700;
    line-height: 0.9;
}

main .intuition-residence-card__content h2 {
    margin-top: 0.25vw;
    color: #EC5E58;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 3.2vw;
    line-height: 0.9;
}

main .intuition-residence-card--intuition .intuition-residence-card__content h2 {
    font-size: 4.4vw;
}

main .intuition-residence-card--origine .intuition-residence-card__content h2 {
    color: #fff;
    font-size: 4.6vw;
}

main .intuition-residence-card__content h3 {
    margin-top: 1.2vw;
    font-family: "Work Sans", sans-serif;
    font-size: 0.8vw;
    line-height: 1.12;
}

main .intuition-residence-card--intuition .intuition-residence-card__content h3 span {
    color: #EC5E58;
}

main .intuition-residence-card--intuition .intuition-residence-card__content h3 {
    font-size: 1.25vw;
    font-weight: 700;
    font-family: "Londrina Solid", sans-serif;
    width: 66%;
}

main .intuition-residence-card--origine .intuition-residence-card__content h3 {
    margin-top: 1vw;
    font-size: 1.15vw;
    font-family: "Londrina Solid", sans-serif;
}

main .intuition-residence-card--origine .intuition-residence-card__content h3 span {
    color: #fff;
}

main .intuition-residence-card__content > p:not(.intuition-residence-card__label):not(.intuition-residence-card__upcoming) {
    margin-top: 0.7vw;
    font-family: "Work Sans", sans-serif;
    font-size: 0.82vw;
    line-height: 1.15;
    width: 70%;
    letter-spacing: 0.02vw;
}

main .intuition-residence-card__content a,
main .intuition-apartments__content a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin-top: 1.1vw;
    padding: 0.7vw 1vw;
    border-radius: 3px;
    background-color: #fff;
    color: #000;
    font-family: "Work Sans", sans-serif;
    font-size: 0.92vw;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
}

main .intuition-residence-card__number {
    position: absolute;
    z-index: 4;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 3vw;
    height: 3vw;
    background-color: #EC5E58;
    color: #fff;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.7vw;
}

main .intuition-residence-card--intuition .intuition-residence-card__number {
    bottom: -1.2vw;
    left: 33%;
}

main .intuition-residence-card--origine .intuition-residence-card__number {
    top: -1.2vw;
    left: 48%;
    background-color: #000;
}

main .intuition-apartments {
    display: grid;
    grid-template-columns: 1fr 0.95fr;
    align-items: center;
    gap: 5vw;
    width: 92%;
    margin: 2vw auto 0;
}

main .intuition-apartments__media {
    position: relative;
    width: 100%;
    height: 34vw;
}

main .intuition-apartments__media::before {
    content: "";
    position: absolute;
    top: -5vw;
    right: 10vw;
    z-index: 2;
    width: 11vw;
    height: 10vw;
    background: url("../images/nanterre-oeil-svg.svg") center/cover no-repeat;
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}

main .intuition-apartments__media video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

main .intuition-apartments__content {
    position: relative;
    padding-right: 7vw;
}

main .intuition-apartments__content::before {
    content: "";
    display: block;
    width: 3vw;
    height: 3vw;
    margin-bottom: 1vw;
    background-color: #EC7969;
    transform: rotate(-3deg);
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}

main .intuition-apartments__content h2 {
    margin: 0;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 3vw;
    line-height: 0.95;
    width: 65%;
}

main .intuition-apartments__content p {
    margin: 1.5vw 0 0;
    font-family: "Work Sans", sans-serif;
    font-size: 0.95vw;
    line-height: 1.3;
    width: 80%;
}

main .intuition-apartments__content a {
    margin-top: 2vw;
    padding: 1vw 1.5vw;
    background-color: #C8232A;
    color: #fff;
    font-size: 0.75vw;
}

main .intuition-comfort {
    position: relative;
    z-index: 3;
    width: 100%;
    margin-top: 6vw;
    overflow: visible;
    background-color: #fff;
}

main .intuition-comfort__heading {
    width: 60%;
    padding: 0vw 4vw 0;
}

main .intuition-comfort__heading h2,
main .intuition-comfort__heading h3,
main .intuition-comfort__heading p {
    margin: 0;
}

main .intuition-comfort__heading h2 {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 2.7vw;
    line-height: 1;
}

main .intuition-comfort__heading h3 {
    margin-top: 0.7vw;
    font-family: "Work Sans", sans-serif;
    font-size: 0.9vw;
    line-height: 1.2;
}

main .intuition-comfort__heading p {
    margin-top: 0.8vw;
    font-family: "Work Sans", sans-serif;
    font-size: 0.9vw;
    line-height: 1.3;
    width: 75%;
    letter-spacing: 0.02vw;
}

main .intuition-comfort__features {
    position: absolute;
    top: 10vw;
    left: 4vw;
    z-index: 3;
    display: flex;
    width: 33.5vw;
    gap: 1vw;
    overflow: visible;
}

main .intuition-comfort__features > .swiper-wrapper {
    display: flex;
    gap: 1vw;
}

main .intuition-comfort-pagination {
    display: none;
}

main .intuition-comfort-feature {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 10.5vw;
    height: 13vw;
    padding: 1.5vw 1vw 1vw;
    box-sizing: border-box;
    color: #fff;
    text-align: center;
}

main .intuition-comfort-feature--coral {
    background-color: #EC7969;
}

main .intuition-comfort-feature--black {
    background-color: #000;
}

main .intuition-comfort-feature--beige {
    background-color: #EBD6C7;
    color: #000;
}

main .intuition-comfort-feature__icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 3.2vw;
    height: 3.2vw;
    margin-bottom: 0.8vw;
    border-radius: 50%;
    background-color: #fff;
    color: #C8232A;
}

main .intuition-comfort-feature__icon img {
    display: block;
    width: 70%;
    height: 70%;
    object-fit: contain;
}

main .intuition-comfort-feature h3,
main .intuition-comfort-feature p {
    margin: 0;
}

main .intuition-comfort-feature h3 {
    font-family: "Work Sans", sans-serif;
    font-size: 0.75vw;
    line-height: 1.1;
}

main .intuition-comfort-feature p {
    margin-top: 0.45vw;
    font-family: "Work Sans", sans-serif;
    font-size: 0.72vw;
    line-height: 1.15;
    letter-spacing: 0.02vw;
}

main .intuition-comfort__brochure {
    position: absolute;
    top: 24.5vw;
    left: 4vw;
    z-index: 4;
    display: inline-flex;
    padding: 1vw 1.5vw;
    border-radius: 5px;
    background-color: #fff;
    color: #000;
    font-family: "Work Sans", sans-serif;
    font-size: 0.85vw;
    font-weight: 700;
    text-decoration: none;

}

main .intuition-comfort__visual {
    position: relative;
    width: 100%;
    height: 43vw;
    margin-top: 7vw;
    overflow: visible;
}

main .intuition-comfort__visual > img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

main .intuition-commercial-patch {
    position: absolute;
    z-index: 5;
    isolation: isolate;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 16vw;
    height: 12.5vw;
    padding: 1.8vw 1.3vw 3.5vw;
    box-sizing: border-box;
    color: #000;
    font-family: "Work Sans", sans-serif;
    font-size: 0.62vw;
    font-weight: 700;
    line-height: 1.05;
    text-align: center;
}

main .intuition-commercial-patch::before {
    content: "";
    position: absolute;
    inset: -0.8vw -0.7vw -1.2vw;
    z-index: -1;
    background-color: #fff;
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}

main .intuition-commercial-patch p,
main .intuition-commercial-patch h3 {
    margin: 0;
}

main .intuition-commercial-patch h3,
main .intuition-commercial-patch__value {
    font-family: 'Londrina Solid', sans-serif;
}

main .intuition-commercial-patch h3 {
    font-size: 2.05vw;
}


main .intuition-commercial-patch__value {
    font-size: 3vw !important;
    line-height: 0.9;
}

main .intuition-commercial-patch p {
    font-size: 1vw;
}

main .intuition-commercial-patch a {
    position: absolute;
    right: 1vw;
    bottom: 0.8vw;
    left: 1vw;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 2.5vw;
    padding: 0.4vw;
    border-radius: 3px;
    background-color: #EC7969;
    color: #fff;
    font-size: 0.9vw;
    text-decoration: none;
}

main .intuition-commercial-patch sup {
    font-size: 0.55em;
    vertical-align: super;
    line-height: 0;
}

main .intuition-commercial-patch--brs {
    right: 1.5vw;
    bottom: -1vw;
}

main .intuition-commercial-patch--price {
    right: 20vw;
    bottom: -8vw;
    z-index: 7;
    color: #fff;
}

main .intuition-commercial-patch--price::before {
    background-color: #9A1915;
}

main .intuition-commercial-patch--price a {
    background-color: #EBD6C7;
    color: #000;
}

main .intuition-contact {
    position: relative;
    z-index: 1;
    width: 100%;
    background-color: #fff;
}

main .intuition-contact__heading {
    position: relative;
    min-height: 11vw;
    padding: 3vw 7vw 2vw;
    box-sizing: border-box;
}

main .intuition-contact__heading::after {
    content: "";
    position: absolute;
    bottom: -1.8vw;
    left: 8vw;
    z-index: 3;
    width: 4vw;
    height: 4vw;
    background-color: #EBD6C7;
    transform: rotate(-3deg);
    mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
}

main .intuition-contact__heading h2,
main .intuition-contact__heading h3,
main .intuition-contact__heading p {
    margin: 0;
}

main .intuition-contact__heading h3 {
    color: #EC7969;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.35vw;
    line-height: 1;
}

main .intuition-contact__heading h2 {
    margin-top: 0.5vw;
    font-family: 'Londrina Solid', sans-serif;
    font-size: 3.2vw;
    line-height: 0.95;
}

main .intuition-contact__heading p {
    margin-top: 0.4vw;
    font-family: "Work Sans", sans-serif;
    font-size: 0.85vw;
    line-height: 1.2;
}

main .intuition-contact__body.form-faq {
    width: 100%;
    margin-top: 0;
}

main .intuition-contact__body.form-faq > div {
    height: 54.5vw;
    min-height: 540px;
}

@media (max-width: 768px) {
    .desktop {
        display: none !important;
    }

    .mobile {
        display: block !important;
    }

    nav {
        top: 0;
        right: auto;
        left: 0;
        width: 95vw;
        min-height: clamp(68px, 18vw, 86px);
        padding: 2vw 3vw 3vw;
        gap: 2vw;
        flex-wrap: nowrap;
        justify-content: space-between;
        background-color: transparent;
        -webkit-mask-image: none;
        mask-image: none;
        overflow: visible;
    }

    nav::before {
        content: "";
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        z-index: 0;
        background-color: #EC7969;
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1887 102'%3E%3Cpath fill='black' d='M1870.18 17.747C1868.68 7.10979 1866.19 3.92355 1864.06.227784 1861.94-3.46799 1848.31-6.23968 1832.07-6.26553H3.78882C-13.2308-6.29311-27.4585-3.29801-28.8206.598214L-47.0315 52.6839C-51.4918 67.3774-54 76.821-54 81.0142-54 84.1517-52.6067 87.0326-50.3762 89.6578-48.1465 92.2825-45.9159 93.851-43.686 94.3954-11.6301 98.0447 853.068 101.919 976.276 101.919 1104.22 101.919 1805.23 99.7805 1866.84 93.4738 1866.84 93.4738 1866.96 92.6997 1866.84 90.2614 1866.74 88.2967 1867.09 83.4478 1867.52 80.7388 1868.36 75.4786 1869.15 76.9992 1870.18 72.4329 1871.22 67.8666 1871.68 28.3843 1870.18 17.747Z'/%3E%3C/svg%3E");
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-position: center;
        -webkit-mask-size: 100% 100%;
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1887 102'%3E%3Cpath fill='black' d='M1870.18 17.747C1868.68 7.10979 1866.19 3.92355 1864.06.227784 1861.94-3.46799 1848.31-6.23968 1832.07-6.26553H3.78882C-13.2308-6.29311-27.4585-3.29801-28.8206.598214L-47.0315 52.6839C-51.4918 67.3774-54 76.821-54 81.0142-54 84.1517-52.6067 87.0326-50.3762 89.6578-48.1465 92.2825-45.9159 93.851-43.686 94.3954-11.6301 98.0447 853.068 101.919 976.276 101.919 1104.22 101.919 1805.23 99.7805 1866.84 93.4738 1866.84 93.4738 1866.96 92.6997 1866.84 90.2614 1866.74 88.2967 1867.09 83.4478 1867.52 80.7388 1868.36 75.4786 1869.15 76.9992 1870.18 72.4329 1871.22 67.8666 1871.68 28.3843 1870.18 17.747Z'/%3E%3C/svg%3E");
        mask-repeat: no-repeat;
        mask-position: -120vw;
        mask-size: 228% 75%;
        filter: drop-shadow(0 2vw 2vw rgba(0, 0, 0, 0.15));
    }

    nav > * {
        position: relative;
        z-index: 1;
    }

    nav .contact_cta {
        display: none;
    }

    nav h1 {
        display: block;
        flex: 0 1 auto;
        margin-right: auto;
        font-size: clamp(20px, 6vw, 30px);
        white-space: nowrap;
    }

    nav .nav-mobile-actions {
        display: flex;
        flex: 0 0 auto;
        align-items: center;
        gap: 1.5vw;
    }

    nav .nav-mobile-button {
        display: flex;
        justify-content: center;
        align-items: center;
        width: clamp(40px, 10vw, 48px);
        height: clamp(40px, 10vw, 48px);
        padding: 0;
        border: 0;
        border-radius: 12%;
        background-color: #fff;
        color: #EC7969;
        cursor: pointer;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.12);
    }

    nav .nav-menu-toggle {
        background-color: #000;
        color: #fff;
    }

    nav .nav-mobile-button svg {
        width: 55%;
        height: 55%;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    nav .icon-close {
        display: none;
    }

    nav.is-open .icon-menu {
        display: none;
    }

    nav.is-open .icon-close {
        display: block;
    }

    nav .nav_links {
        position: absolute;
        top: calc(100% + 2vw);
        right: 0;
        z-index: 2;
        display: flex;
        flex-direction: column;
        width: min(82vw, 360px);
        gap: 0;
        padding: 4vw;
        box-sizing: border-box;
        border-radius: 18px 6px 18px 10px;
        background-color: #EC7969;
        box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translateY(-10px);
        transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease;
    }

    nav.is-open .nav_links {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0);
    }

    nav .nav_links a {
        padding: 3.5vw 2vw;
        border-bottom: 1px solid rgba(255, 255, 255, 0.35);
        font-size: clamp(16px, 4vw, 19px);
        line-height: 1.2;
    }

    nav .nav_links a:last-child {
        border-bottom: 0;
    }

    header {
        flex-direction: column;
        width: 100%;
        height: 70vh;
    }

    header .header-background-video {
        object-position: center;
    }

    header.intuition-header {
        height: 145vw;
        min-height: 0;
        max-height: none;
        overflow: visible;
    }

    header.intuition-header .intuition-header__image {
        object-position: 52% center;
    }

    header.intuition-header h1 {
        position: absolute;
        top: 72vw;
        left: 0;
        width: 100%;
        margin: 0;
        padding: 0 5vw;
        box-sizing: border-box;
        font-size: 12vw;
        white-space: nowrap;
    }

    header.intuition-header .intuition-header__offer {
        right: auto;
        bottom: -15vw;
        left: 50%;
        width: 35vw;
        height: 30vw;
        font-size: 4.5vw;
        transform: translateX(-50%) rotate(-2deg);
    }

    header.intuition-header .intuition-header__offer strong {
        font-size: 7vw;
    }

    header.intuition-header .intuition-header__offer sup {
        font-size: 2vw;
        position: relative;
        right: -11vw;
        top: -3vw;
    }

    nav:has(+ header.intuition-header) {
        width: 95vw;
        min-height: 19vw;
        padding: 4vw 2.5vw 5vw 7vw;
    }

    nav:has(+ header.intuition-header)::before {
        -webkit-mask-position: center;
        -webkit-mask-size: 100% 100%;
        mask-position: center;
        mask-size: 100% 100%;
    }

    nav:has(+ header.intuition-header) h1 {
        font-size: 9vw;
    }

    nav:has(+ header.intuition-header) .nav-mobile-actions {
        gap: 2vw;
    }

    nav:has(+ header.intuition-header) .nav-mobile-button {
        width: 11.5vw;
        height: 11.5vw;
    }

    nav:has(+ header.intuition-header) .nav-mobile-actions > :nth-child(2) {
        background-color: #EBD6C7;
        color: #000;
    }

    header .header-offers {
        right: auto;
        bottom: -7vw;
        left: 6vw;
        gap: 5vw;
    }

    header .header-offer {
        width: 42vw;
        height: 35vw;
        padding: 2vw 3vw 10vw;
    }

    header .header-offer::before {
        inset: -2vw -1.5vw -2.5vw;
    }

    header .header-offer--brs {
        padding-top: 6vw;
    }

    header .header-offer__title {
        font-size: 4vw;
    }

    header .header-offer__eyebrow,
    header .header-offer__note {
        font-size: 2.4vw;
    }

    header .header-offer__value {
        margin: 0.3vw 0 !important;
        font-size: 7.5vw;
    }

    header .header-offer__discount {
        font-size: 9vw;
    }

    header .header-offer__cta {
        right: 3vw;
        bottom: 2.5vw;
        left: 3vw;
        min-height: 7vw;
        padding: 1vw;
        font-size: 2vw;
    }

    header .patch-bloc__header-top {
        top: 20vw;
        right: inherit;
        left: 1.5vw;
    }

    header .patch-bloc__header-top .patch-remise {
        width: 30vw;
        height: 20vw;
        padding: 1.5vw 0 0 0;
        font-size: 4.8vw;
    }

    header .patch-bloc__header-top .patch-tva {
        width: 24vw;
        height: 20vw;
        background-color: #EBD6C7;
        padding: 1vw;
        font-family: 'Londrina Solid', sans-serif;
        font-size: 8vw;
        line-height: 8vw;
        color: #000;
        text-align: center;
    }

    header .patch-bloc__header-top .patch-tva span {
        font-size: 9vw;
        line-height: 0;
    }

    header .patch-bloc__header-top .patch-remise sup, header .patch-bloc__header-top .patch-tva sup {
        font-size: 2vw;
        line-height: 0;
    }

    header .header-baseline {
        width: 100%;
        height: 20vw;
    }

    header .header-baseline h2 {
        font-size: 4.8vw;
    }

    header .header-baseline p {
        font-size: 4vw;
    }

    header .contact.mobile {
        position: fixed;
        top: 1.5vw;
        right: 1.5vw;
        z-index: 100;
        padding: 2vw;
    }

    header .contact.mobile .btn {
        width: 12vw;
        height: 12vw;
        border-radius: 10%;
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: #fff;
        box-shadow: 0 10px 10px 0 rgba(0, 0, 0, 0.16);
    }

    header .contact.mobile .btn svg * {
        fill: #EC7969 !important;
    }

    header .header-content {
        width: 100%;
        height: auto;
        padding: 2vw;
        margin: 0;
    }

    header .header-content__title {
        padding-top: 10vw;
    }

    header .header-content__title h1 {
        font-size: 8.5vw;
        font-weight: 700;
    }

    header .header-content__subtitle h1 {
        font-size: 8vw;
    }

    header .header-content__title p {
        font-size: 5vw;
        font-weight: 700;
    }

    header .header-offer--brs .header-offer__eyebrow {
        font-size: 3vw;
    }

    header .header-mobile-media {
        display: flex !important;
        flex-direction: column;
        gap: 3vw;
        margin-top: 1vw;
        padding: 0 4vw;
    }

    header .header-mobile-video {
        width: 100%;
        margin-top: -10vw;
    }

    header .header-mobile-video video {
        display: block;
        width: 100%;
        height: 90vw;
    }

    header .header-mobile-patch-bloc {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 2vw;
        position: relative;
        top: -17vw;
        right: -11vw;
    }

    header .header-content__text {
        position: relative;
        top: -15vw;
    }

    header .header-mobile-patch-bloc .mask-square {
        width: 33vw;
        height: 33vw;
        -webkit-mask-size: 33vw 33vw;
        -webkit-mask-repeat: no-repeat;
    }

    header .header-mobile-patch-bloc .patch-bloc__txt1 {
        background-color: #EBD6C7;
        fill: #EBD6C7;
        font-family: 'Londrina Solid', sans-serif;
        font-size: 4.8vw;
        line-height: 1.15;
        color: #000;
        text-align: center;
        padding: 1.2vw 0;
    }

    header .header-mobile-patch-bloc .patch-bloc__txt2 {
        background-color: #000;
        fill: #000;
        font-family: 'Work Sans', sans-serif;
        font-size: 2.3vw;
        line-height: 1.1;
        color: #fff;
        text-align: center;
        padding: 2vw 0;
    }

    header .header-mobile-patch-bloc .patch-bloc__txt2 .fw-100 {
        font-weight: 100;
        font-size: 2.3vw;
    }

    header .header-mobile-patch-bloc .patch-bloc__txt2 .fw-700 {
        font-weight: 700;
        font-size: 10vw;
        font-family: 'Londrina Solid', sans-serif;
    }

    header .header-mobile-patch-bloc .patch-bloc__txt2 .fw-500 {
        font-weight: 700;
        font-size: 2.9vw;
    }

    header .header-mobile-patch-bloc .patch-bloc__txt2 p sup {
        font-size: 1.8vw;
        vertical-align: super;
        line-height: 0;
    }

    header .header-content__text p {
        font-size: 3.7vw;
    }

    #formulaire {
        width: 100%;
        position: relative !important;
        left: inherit;
        top: inherit;
    }

    main {
        padding: 20vw 0vw 4vw 0vw;
        gap: 5vw; 
    }

    main .quartier {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
        gap: 0;
    }

    main .quartier .quartier-content {
        order: 1;
        box-sizing: border-box;
        width: 100%;
        padding: 0 7vw 12vw;
        gap: 1vw;
    }

    main .quartier .quartier-content::before {
        position: relative;
        top: auto;
        left: auto;
        z-index: 0;
        width: 11vw;
        height: 11vw;
        margin-bottom: 4vw;
        transform: rotate(-4deg);
    }

    main .quartier .quartier-content h2 {
        font-size: 9vw;
    }

    main .quartier .quartier-content .quartier-content-subtitle {
        font-size: 4.5vw;
        line-height: 1.05;
    }

    main .quartier .quartier-content .quartier-content-subtitle.black {
        font-size: 4.1vw;
        margin-top: 1vw;
    }

    main .quartier .quartier-content .quartier-content-description {
        width: 100%;
        padding-top: 2vw;
        font-size: 3vw;
        line-height: 1.2;
        letter-spacing: 0;
    }

    main .quartier .quartier-content .quartier-content-cta {
        margin-top: 4vw;
        padding: 4.5vw 6vw;
        font-size: 3vw;
        letter-spacing: 0;
    }

    main .quartier .quartier-visuel {
        order: 2;
        flex: none;
        width: 100%;
    }

    main .quartier .quartier-visuel::before {
        top: -13vw;
        right: 3vw;
        left: auto;
        width: 32vw;
        height: 27vw;
    }

    main .quartier .visuel-quartier {
        width: 100%;
        height: 78vw;
        object-position: center;
    }

    main .adresse {
        flex-direction: column;
        align-items: stretch;
        gap: 4vw;
    }

    main .adresse .adresse-map-container {
        order: 1;
        width: 100%;
        height: 74vw;
        overflow: hidden;
        mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
        -webkit-mask: url("../images/mask-card.svg") center/100% 100% no-repeat;
    }

    main .adresse .adresse-map-container img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    main .adresse .adresse-content {
        order: 2;
        align-items: stretch;
        width: 100%;
        gap: 7vw;
        padding: 0 6vw 0 6vw;
    }

    main .adresse .liste-adresse {
        order: 2;
        gap: 3vw;
    }

    main .adresse .liste-adresse li {
        min-height: 9vw;
        padding: 1vw 0 1vw 10vw;
        font-size: 3.5vw;
        line-height: 1.1;
    }

    main .adresse .liste-adresse li::before {
        width: 8vw;
        height: 8vw;
        font-size: 3vw;
    }

    main .adresse .adresse-bloc {
        order: 1;
        width: 50%;
        min-width: 0;
        margin-top: 0;
        padding: 5vw 4vw 6vw;
    }

    main .adresse .adresse-bloc::before {
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 199 104'%3E%3Cpath fill='black' d='M0 44.9802L1.24203 62.9769V77.9529L2.48502 86.952V94.4562C25.3666 100.464 60.5683 103.454 108.091 103.454 153.854 103.454 182.741 101.684 194.647 98.2068 195.475 97.6889 196.304 96.194 197.131 93.6925 197.96 91.1912 198.477 88.4469 198.477 85.4571 198.477 81.4608 197.546 72.4631 195.889 58.4626L194.961 6.54004C194.455 2.82727 189.17 -0.0264267 182.849 0.000184597L15.3967 2.96619C9.36771 2.99152 4.30325 5.6319 3.5141 9.15375 1.15145 19.6983 0 31.6296 0 44.9802Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;
        -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 199 104'%3E%3Cpath fill='black' d='M0 44.9802L1.24203 62.9769V77.9529L2.48502 86.952V94.4562C25.3666 100.464 60.5683 103.454 108.091 103.454 153.854 103.454 182.741 101.684 194.647 98.2068 195.475 97.6889 196.304 96.194 197.131 93.6925 197.96 91.1912 198.477 88.4469 198.477 85.4571 198.477 81.4608 197.546 72.4631 195.889 58.4626L194.961 6.54004C194.455 2.82727 189.17 -0.0264267 182.849 0.000184597L15.3967 2.96619C9.36771 2.99152 4.30325 5.6319 3.5141 9.15375 1.15145 19.6983 0 31.6296 0 44.9802Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;
    }

    main .adresse .adresse-bloc p {
        padding-top: 1vw;
        white-space: normal;
    }

    main .residence {
        display: flex;
        flex-direction: column;
        width: 100%;
        height: auto;
        min-height: 0;
        padding: 49vw 0 0;
    }

    main .residence-spacer {
        flex: 0 0 auto;
        width: 100%;
        height: 6vw;
    }

    main .residence-panel {
        flex: 0 0 auto;
        width: 100%;
        height: 90vw;
    }

    main .residence-panel--home::before {
        top: -51vw;
        left: 7vw;
        width: 11vw;
        height: 11vw;
    }

    main .residence-heading {
        top: -35vw;
        left: 7vw;
        color: #000;
    }

    main .residence-heading h2,
    main .residence-heading p {
        color: #000;
    }

    main .residence-heading h2 {
        font-size: 9vw;
    }

    main .residence-heading p {
        max-width: 76vw;
        margin-top: 2vw;
        font-size: 4vw;
        line-height: 1.05;
    }

    main .residence-heading p span {
        color: #EC7969;
    }

    main .residence-card {
        width: 48vw;
        min-height: 39vw;
        padding: 5vw 4vw;
    }

    main .residence-card--home {
        top: 25vw;
        left: 50%;
        transform: translateX(-50%);
    }

    main .residence-card--health {
        top: 26vw;
    }

    main .residence-card--home p {
        font-size: 3.6vw;
    }

    main .residence-card--home p span {
        font-size: 5.2vw;
    }

    main .residence-card--health h4 {
        font-size: 3.2vw;
    }

    main .residence-card--health .residence-health-title {
        margin-top: 0.5vw;
        font-size: 5.5vw;
    }

    main .residence-card--health p {
        margin-top: 0.5vw;
        font-size: 2.4vw;
    }

    main .residence-link {
        min-height: 8vw;
        margin-top: 3vw;
        padding: 2vw;
        font-size: 2.2vw;
    }

    main .residence-offer {
        top: 78vw;
        right: auto;
        left: 50%;
        width: 34vw;
        height: 25vw;
        font-size: 4.5vw;
        transform: translateX(-50%) rotate(-2deg);
    }

    main .residence-offer strong {
        font-size: 6.5vw;
    }

    main .residence-offer sup {
        font-size: 2vw;
    }

    main .adresse h2 {
        font-size: 6.8vw;
        width: 100%;
    }

    main .adresse h3 {
        font-family: 'Londrina Solid', sans-serif;
        font-size: 5vw;
        line-height: 1;
        color: #EC7969;
        text-align: left;
        margin: 0;
    }

    main .adresse p {
        font-size: 2.9vw;
        width: 100%;
    }

    main .adresse p b {
        font-weight: 700;
    }

    main .intuition .intuition-block .intuition-content-visuel {
        width: 100%;
        height: auto;
    }

    main .intuition .intuition-block {
        display: flex;
        flex-direction: column-reverse;
        justify-content: start;
        align-items: start;
        gap: 1vw;
    }

    main .adresse .visuel-container {
        margin-top: 3vw;
        width: 100%;
    }

    main .intuition {
        display: flex;
        flex-direction: column;
        gap: 15vw;
        justify-content: center;
        align-items: center;
    }

    main .intuition .intuition-content {
        display: flex;
        justify-content: start;
        align-items: start;
        flex-direction: column;
        gap: 3.5vw;
        width: 125%;
        height: 75vw;
        background-color: #EBD6C7;
        padding: 9vw 3vw 1vw 6vw;
        position: relative;
        left: 0;
        /* bottom: -10vw; */
        z-index: 2;
    }

    main .intuition .intuition-content .intuition-title h3 {
        font-size: 16vw;
    }

    main .intuition .intuition-content .intuition-title h3 span {
        font-size: 22.5vw;
    }

    main .intuition .intuition-content .intuition-title p {
        font-family: 'Work Sans', sans-serif;
        font-size: 4vw;
        line-height: 1;
        color: #000;
        text-align: left;
        margin: 0;
        letter-spacing: 0.1vw;
        position: absolute;
        margin-left: 6vw;
        margin-top: 2.8vw;
        font-weight: 700;
    }

    main .intuition .intuition-content h4 {
        font-family: 'Londrina Solid', sans-serif;
        font-size: 4.3vw;
        line-height: 1.2;
        color: #000;
        text-align: left;
        margin: 0;
        width: 85%;
    }

    main .intuition .intuition-content > p {
        font-family: "Work Sans", sans-serif;
        font-size: 2.8vw;
        line-height: 1.2;
        color: #000;
        text-align: left;
        margin: 0;
        letter-spacing: 0.1vw;
        width: 85%;
    }

    main .intuition .visuel-container {
        width: 100%;
        height: auto;
        position: relative;
        top: -10vw;
        z-index: 1;
    }

    main .intuition .visuel-container::before {
        left: 5vw;
        top: -10vw;
        background-color: #E75652;
    }

    main .intuition .visuel-container::after {
        right: 30vw;
        bottom: -10vw;
        background-color: #F19A97;
    }

    main .intuition .visuel-container::before, main .intuition .visuel-container::after {
        width: 17vw;
        height: 17vw;
    }

    main .gdp-prices {
        width: 100%;
        margin-top: 0vw;
    }

    main .gdp-prices__table-wrap {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    main .gdp-prices__table {
        min-width: 100%;
    }

    main .gdp-prices__table .gdp-col-head {
        padding: 2vw;
    }

    main .gdp-prices__table .gdp-col-head--left {
        font-size: 4vw;
    }

    main .gdp-prices__table .gdp-col-head--mid,
    main .gdp-prices__table .gdp-col-head--right {
        font-size: 3.6vw;
    }

    main .gdp-prices__table .gdp-col-head span + span {
        font-size: 2.8vw;
    }

    main .gdp-prices__table .gdp-col {
        padding: 1.8vw 2vw;
    }

    main .gdp-prices__table .gdp-col--typology strong {
        font-size: 4.8vw;
    }

    main .gdp-prices__table .gdp-col--typology span {
        font-size: 2.7vw;
    }

    main .gdp-price-patch {
        gap: 2vw;
        margin-bottom: 3vw;
    }

    main .gdp-price-patch__header,
    main .gdp-price-patch__price {
        width: 34vw;
        height: 34vw;
        padding: 3vw;
    }

    main .gdp-price-patch__header {
        font-size: 4.7vw;
    }

    main .gdp-price-patch__price .fw-100 {
        font-size: 2.4vw;
    }

    main .gdp-price-patch__price .fw-700 {
        font-size: 8vw;
        margin: 0.75vw 0;
    }

    main .gdp-price-patch__price .fw-500 {
        font-size: 2.6vw;
    }

    main .gdp-prices__table .gdp-col--tva20,
    main .gdp-prices__table .gdp-col--tva55 {
        font-size: 5.4vw;
    }

    main .mosaique {
        width: 100%;
        margin-top: 5vw;
    }

    main .sales-office {
        padding: 6vw 5vw 7vw;
    }

    main .sales-office__patch {
        width: 100%;
        min-height: 32vw;
        padding: 4.5vw 7vw 5vw;
    }

    main .sales-office__patch h2 {
        margin-bottom: 1.3vw;
        font-size: 5.2vw;
    }

    main .sales-office__patch p {
        font-size: 4.15vw;
        line-height: 1.25;
    }

    main .mosaique .mosaique-grid {
        display: block;
        width: calc(100% + 6vw);
        margin-left: 6vw;
        padding-top: 6vw;
        box-sizing: border-box;
        overflow: hidden;
    }

    main .mosaique .mosaique-grid::before {
        top: 0;
        left: 0;
        width: 12vw;
        height: 12vw;
    }

    main .mosaique .mosaique-grid > .swiper-wrapper {
        display: flex;
    }

    main .mosaique .mosaique-slide {
        display: block;
        height: auto;
    }

    main .mosaique .mosaique-item {
        grid-column: auto;
        grid-row: auto;
        width: 100%;
    }

    main .mosaique .mosaique-item--image {
        height: 82vw;
    }

    main .mosaique .mosaique-item--text {
        height: 48vw;
        padding: 9vw 7vw 5vw;
    }

    main .mosaique .mosaique-item--text h3 {
        font-size: 6.5vw;
    }

    main .mosaique .mosaique-item--text p {
        margin-top: 4vw;
        font-size: 3.7vw;
        line-height: 1.25;
    }

    main .mosaique .mosaique-pagination {
        position: relative;
        inset: auto;
        display: flex;
        align-items: center;
        gap: 1.2vw;
        width: auto;
        margin-top: 2vw;
        padding-bottom: 3vw;
    }

    main .mosaique .mosaique-pagination .swiper-pagination-bullet {
        width: 4vw;
        height: 4vw;
        margin: 0;
        border-radius: 0;
        background-color: #d9d9d9;
        opacity: 1;
    }

    main .mosaique .mosaique-pagination .swiper-pagination-bullet-active {
        background-color: #000;
    }

    main .mosaique .mosaique-item--eye {
        order: 1;
    }

    main .mosaique .mosaique-item--tom {
        order: 2;
    }

    main .mosaique .mosaique-item--portrait-one {
        order: 3;
    }

    main .mosaique .mosaique-item--manon {
        order: 4;
    }

    main .mosaique .mosaique-item--mouth {
        order: 5;
    }

    main .mosaique .mosaique-item--mathilde {
        order: 6;
    }

    main .mosaique .mosaique-item--portrait-two {
        order: 7;
    }

    main .mosaique .mosaique-item--nadia {
        order: 8;
    }

    main .mosaique .mosaique-item--portrait-three {
        order: 9;
    }

    main .mosaique .mosaique-item--jessica {
        order: 10;
    }

    #formulaire {
        right: 0;
        padding: 5vw 6vw 2vw 6vw;
    }

    #formulaire::before {
        content: none;
    }

    #formulaire .title {
        display: flex;
        flex-direction: column;
        justify-content: start;
        align-items: start;
        gap: 2.5vw;
        margin-bottom: 6vw;
    }

    #formulaire .title h2 {
        font-family: 'Londrina Solid', sans-serif;
        font-size: 8.7vw;
        line-height: 1;
        color: #000;
        text-align: center;
        margin: 0;
        text-align: left;
        padding: 0vw;
    }

    #formulaire .title h3 {
        font-family: 'Londrina Solid', sans-serif;
        font-size: 5vw;
        color: #EC7969;
        text-align: left;
        margin: 0;
    }

    #formulaire .title p {
        font-family: "Work Sans", sans-serif;
        font-size: 3.5vw;
        line-height: 1.2;
        color: #000;
        text-align: left;
        margin: 0;
        font-weight: 700;
    }

    #formulaire .projet > p {
        font-family: "Work Sans", sans-serif;
        font-size: 3.5vw;
        color: #000;
        font-weight: 700;
        text-align: left;
    }

    #formulaire #container_date p {
        font-family: "Work Sans", sans-serif;
        font-size: 3.5vw;
        color: #000;
        font-weight: 700;
        text-align: left;
    }

    #formulaire .markus_radio__label {
        font-family: "Work Sans", sans-serif;
        font-size: 3.5vw;
        color: #000;
        text-align: left;
    }

    main .form-faq__consent-text {
        font-size: 2.6vw;
    }

    input[name="date"] {
        padding-left: 15vw;
        padding-bottom: 4vw;
    }

    footer {
        padding: 10vw 6vw;
    }

    footer .footer__content {
        width: 100%;
    }

    footer .logos img {
        margin: 0 1.25vw;
        height: 7vw;
    }

    footer .footer__copromotion .left-line, footer .footer__copromotion .right-line {
        width: 20vw;
        height: 1px;
        background-color: #000;
    }

    footer .footer__copromotion {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 5vw;
    }

    footer .mentions p {
        margin-left: 0;
    }
    
    #cta {
        position: fixed;
        z-index: 100;
        right: inherit;
        bottom: 0;
        left: inherit;
        width: 100%;
        height: 15vw;
        margin-left: 0;
        text-align: center;
        font-family: "Work Sans", sans-serif;
        font-weight: 700;
        color: #000;
        text-transform: uppercase;
        font-size: 4vw;
        line-height: 15vw;
        background-color: #EBD6C7;
    }

    #formulaire .form-cta-tel {
        border-radius: 6px;
        background-color: #EBD6C7;
        margin:0 auto 5vw auto;
        color: #000;
    }

    main .form-faq {
        grid-template-columns: 1fr;
        width: 100%;
        margin-left: 0vw;
        margin-top: 5vw;
    }

    main .form-faq > div {
        width: 100%;
        height: auto;
        min-height: 0;
    }

    main .form-faq__form {
        order: 1;
    }

    main .form-faq__visual--top {
        order: 2;
        background-position: center top;
    }

    main .form-faq__faq {
        order: 3;
    }

    main .form-faq__visual--bottom {
        order: 4;
        background-position: center;
    }

    main .form-faq__form {
        padding: 12vw 10vw;
    }

    main .form-faq #formulaire {
        position: relative !important;
        inset: auto;
        width: 100%;
        max-height: none;
        padding: 0;
    }

    main .form-faq #formulaire .formulaire-scroll {
        max-height: none;
        overflow: visible;
    }

    main .form-faq #formulaire .title h2 {
        font-size: 9vw;
    }

    main .form-faq #formulaire .title {
        margin-bottom: 6vw;
    }

    main .form-faq #formulaire .formLeads {
        gap: 2vw;
    }

    main .form-faq #formulaire .form-row--identity,
    main .form-faq #formulaire .formLeads > label:not(.markus_radio),
    main .form-faq #formulaire .projet,
    main .form-faq #formulaire #container_date,
    main .form-faq #formulaire .formLeads > i,
    main .form-faq #formulaire .formLeads > .markus_radio {
        width: 100%;
    }

    main .form-faq #formulaire .form-row--identity,
    main .form-faq #formulaire #container_date > div {
        gap: 2vw;
    }

    main .form-faq .formLeads input,
    main .form-faq .formLeads select,
    main .form-faq #formulaire #heure {
        min-height: 11vw;
        padding: 3vw;
        font-size: 3vw;
    }

    main .form-faq #formulaire .title p,
    main .form-faq #formulaire .projet > p,
    main .form-faq #formulaire #container_date p,
    main .form-faq #formulaire .markus_radio__label {
        font-size: 3vw;
    }

    main .form-faq #formulaire .formLeads > i {
        font-size: 2.5vw;
    }

    main .form-faq #formulaire .btn,
    main .form-faq #formulaire .form-cta-tel {
        width: 70%;
        margin-top: 2vw;
    }

    main .form-faq__visual {
        display: block;
        width: 100%;
        height: 100vw !important;
        min-height: 100vw !important;
        background-repeat: no-repeat;
        background-size: cover;
    }

    main .form-faq__faq {
        align-items: flex-start;
        min-height: 135vw;
        padding: 16vw 11vw 12vw;
    }

    main .form-faq__faq-content {
        width: 100%;
    }

    main .form-faq__faq-content h2 {
        margin-bottom: 6vw;
        font-size: 9vw;
    }

    main .form-faq__questions summary {
        padding: 3vw 9vw 3vw 0;
        font-size: 3.2vw;
    }

    main .form-faq__questions summary::after {
        width: 5vw;
        height: 5vw;
        font-size: 3vw;
    }

    main .form-faq__questions details[open] {
        padding-bottom: 3vw;
    }

    main .form-faq__answer {
        padding: 0 9vw 2vw 0;
        font-size: 3vw;
        line-height: 1.35;
    }

    main .form-faq__link {
        margin-top: 7vw;
        padding: 4vw 5vw;
        font-size: 2.8vw;
    }

    main.intuition-main {
        padding-bottom: 12vw;
    }

    main .intuition-residences {
        display: block;
        height: auto;
        margin-top: 20vw;
        padding: 0 0 8vw 7vw;
        box-sizing: border-box;
        overflow: hidden;
    }

    main .intuition-residences > .swiper-wrapper {
        display: flex;
        align-items: flex-start;
    }

    main .intuition-residence-card,
    main .intuition-residence-card--intuition,
    main .intuition-residence-card--origine {
        position: relative;
        inset: auto;
        display: block;
        width: 100%;
        height: 174vw;
        aspect-ratio: auto;
    }

    main .intuition-residence-card__surface {
        display: flex;
        flex-direction: column;
        height: 174vw;
        overflow: hidden;
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 340 739'%3E%3Cpath fill='black' d='M143.366 0L203.815 4.62193H254.123L284.347 9.24452H309.564C329.756 94.4014 339.789 225.455 339.789 402.352 339.789 572.714 333.853 680.229 322.164 724.544 320.416 727.659 315.391 730.742 306.997 733.826 298.603 736.909 289.372 738.822 279.322 738.822 265.921 738.822 235.697 735.365 188.649 729.166L25.3636 704.511C10.9614 702.357 -0.108337 679.614 0.00106812 652.463L2.22189 63.4135C2.31323 37.769 12.236 15.6463 25.7639 12.4239 60.5042 4.06646 99.6684 0 143.366 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;
        -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 340 739'%3E%3Cpath fill='black' d='M143.366 0L203.815 4.62193H254.123L284.347 9.24452H309.564C329.756 94.4014 339.789 225.455 339.789 402.352 339.789 572.714 333.853 680.229 322.164 724.544 320.416 727.659 315.391 730.742 306.997 733.826 298.603 736.909 289.372 738.822 279.322 738.822 265.921 738.822 235.697 735.365 188.649 729.166L25.3636 704.511C10.9614 702.357 -0.108337 679.614 0.00106812 652.463L2.22189 63.4135C2.31323 37.769 12.236 15.6463 25.7639 12.4239 60.5042 4.06646 99.6684 0 143.366 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;
    }

    main .intuition-residence-card--intuition .intuition-residence-card__surface {
        flex-direction: column-reverse;
    }

    main .intuition-residence-card__media,
    main .intuition-residence-card--intuition .intuition-residence-card__media {
        flex: 0 0 64vw;
        width: 100%;
        height: 64vw;
    }

    main .intuition-residence-card__content {
        flex: 0 0 110vw;
        width: 100%;
        height: 110vw;
        margin: 0;
        padding: 15vw 9vw 8vw;
        background-color: #fff;
    }

    main .intuition-residence-card--origine .intuition-residence-card__content {
        margin: 0;
        padding: 15vw 9vw 8vw;
        background-color: #B4A4A6;
    }

    main .intuition-residence-card__label {
        font-size: 3.7vw;
    }

    main .intuition-residence-card__upcoming {
        font-size: 8vw;
    }

    main .intuition-residence-card__content h2 {
        margin-top: 1vw;
        font-size: 12vw;
    }

    main .intuition-residence-card--intuition .intuition-residence-card__content h2,
    main .intuition-residence-card--origine .intuition-residence-card__content h2 {
        font-size: 12vw;
    }

    main .intuition-residence-card__content h3 {
        margin-top: 4.5vw;
        font-size: 4vw;
        line-height: 1.05;
    }

    main .intuition-residence-card--intuition .intuition-residence-card__content h3,
    main .intuition-residence-card--origine .intuition-residence-card__content h3 {
        margin-top: 4.5vw;
        font-size: 4vw;
    }

    main .intuition-residence-card__content > p:not(.intuition-residence-card__label) {
        margin-top: 5vw;
        font-size: 3.5vw;
        line-height: 1.18;
    }

    main .intuition-residence-card__content > p:not(.intuition-residence-card__label):not(.intuition-residence-card__upcoming) {
        margin-top: 0.7vw;
        font-family: "Work Sans", sans-serif;
        font-size: 3.42vw;
        line-height: 1.15;
        width: 95%;
        letter-spacing: 0.02vw;
    }



    main .intuition-residence-card__content a {
        display: flex;
        width: 100%;
        margin-top: 8vw;
        padding: 0;
        background-color: transparent;
        font-size: 3.2vw;
        text-align: center;
    }

    main .intuition-residence-card__number {
        top: 110vw;
        bottom: auto;
        left: 0;
        width: 14vw;
        height: 14vw;
        font-size: 7vw;
    }

    main .intuition-residence-card--intuition .intuition-residence-card__number,
    main .intuition-residence-card--origine .intuition-residence-card__number {
        top: 110vw;
        bottom: auto;
        left: 0;
    }

    main .intuition-residences-pagination {
        position: relative;
        inset: auto;
        display: flex;
        align-items: center;
        gap: 1.5vw;
        width: auto;
        margin-top: 4vw;
        padding-right: 7vw;
    }

    main .intuition-residences-pagination .swiper-pagination-bullet {
        width: 4vw;
        height: 4vw;
        margin: 0;
        border-radius: 0;
        background-color: #d9d9d9;
        opacity: 1;
    }

    main .intuition-residences-pagination .swiper-pagination-bullet-active {
        background-color: #000;
    }

    main .intuition-apartments {
        grid-template-columns: 1fr;
        gap: 20vw;
        width: 90%;
        margin-top: 14vw;
    }

    main .intuition-apartments__media {
        order: 2;
        height: 90vw;
    }

    main .intuition-apartments__media::before {
        top: -13vw;
        right: auto;
        left: 5vw;
        width: 36vw;
        height: 32vw;
    }

    main .intuition-apartments__content {
        order: 1;
        padding: 0;
    }

    main .intuition-apartments__content::before {
        width: 13vw;
        height: 13vw;
        margin-bottom: 6vw;
    }

    main .intuition-apartments__content h2 {
        font-size: 11.5vw;
        line-height: 0.82;
        width: 95%;
    }

    main .intuition-apartments__content p {
        margin-top: 6vw;
        font-size: 3.5vw;
        line-height: 1.2;
    }

    main .intuition-apartments__content a {
        width: 100%;
        min-height: 14vw;
        margin-top: 7vw;
        padding: 4vw 5vw;
        box-sizing: border-box;
        font-size: 3.2vw;
        text-align: center;
    }

    main .intuition-comfort {
        margin-top: 16vw;
        padding-bottom: 24vw;
        box-sizing: border-box;
    }

    main .intuition-comfort__heading {
        width: auto;
        padding: 6vw 8vw 0;
    }

    main .intuition-comfort__heading h2 {
        font-size: 10.5vw;
        line-height: 1.05;
    }

    main .intuition-comfort__heading h3 {
        margin-top: 3vw;
        font-size: 3vw;
    }

    main .intuition-comfort__heading p {
        margin-top: 3vw;
        font-size: 3vw;
    }

    main .intuition-comfort__features {
        position: relative;
        inset: auto;
        display: block;
        width: 100%;
        margin: 7vw 0 0;
        padding-left: 8vw;
        box-sizing: border-box;
        overflow: hidden;
    }

    main .intuition-comfort__features > .swiper-wrapper {
        display: flex;
        gap: 0;
    }

    main .intuition-comfort-feature {
        width: 100%;
        height: 57vw;
        padding: 7vw 3vw 4vw;
    }

    main .intuition-comfort-feature__icon {
        width: 12vw;
        height: 12vw;
        margin-bottom: 4vw;
    }

    main .intuition-comfort-feature h3 {
        font-size: 3.1vw;
    }

    main .intuition-comfort-feature p {
        margin-top: 2vw;
        font-size: 2.5vw;
    }

    main .intuition-comfort-pagination {
        position: relative;
        inset: auto;
        display: flex;
        align-items: center;
        gap: 1.5vw;
        width: auto;
        margin-top: 3vw;
        padding-right: 8vw;
    }

    main .intuition-comfort-pagination .swiper-pagination-bullet {
        width: 4vw;
        height: 4vw;
        margin: 0;
        border-radius: 0;
        background-color: #d9d9d9;
        opacity: 1;
    }

    main .intuition-comfort-pagination .swiper-pagination-bullet-active {
        background-color: #000;
    }

    main .intuition-comfort__brochure {
        position: relative;
        inset: auto;
        margin: 5vw 0 0 8vw;
        padding: 4vw 5vw;
        font-size: 3.8vw;
    }

    main .intuition-comfort__visual {
        z-index: 1;
        height: 145vw;
        margin-top: -58vw;
    }

    main .intuition-commercial-patch {
        width: 41vw;
        height: 33vw;
        padding: 5vw 3vw 10vw;
        font-size: 2.2vw;
    }

    main .intuition-commercial-patch::before {
        inset: -2vw -1.5vw -3vw;
    }

    main .intuition-commercial-patch h3 {
        font-size: 5.5vw;
    }

    main .intuition-commercial-patch p {
        font-size: 4vw;
    }

    main .intuition-commercial-patch__value {
        font-size: 8vw;
    }

    main .intuition-commercial-patch__value {
        font-size: 8vw !important;
        line-height: 0.9;
    }



    main .intuition-commercial-patch a {
        right: 3vw;
        bottom: -1.5vw;
        left: 3vw;
        min-height: 7vw;
        padding: 1vw;
        font-size: 1.9vw;
    }

    main .intuition-commercial-patch--brs {
        right: 4vw;
        bottom: 1vw;
    }

    main .intuition-commercial-patch--price {
        right: 47vw;
        bottom: -17vw;
    }

    main .intuition-contact__heading {
        min-height: 38vw;
        padding: 12vw 8vw 8vw;
    }

    main .intuition-contact__heading::after {
        bottom: -5vw;
        left: 8vw;
        width: 12vw;
        height: 12vw;
    }

    main .intuition-contact__heading h3 {
        font-size: 5vw;
    }

    main .intuition-contact__heading h2 {
        margin-top: 2vw;
        font-size: 9vw;
    }

    main .intuition-contact__heading p {
        margin-top: 2vw;
        font-size: 3.5vw;
    }

    main .intuition-contact__body.form-faq > div {
        height: auto;
        min-height: 0;
    }
}
