.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;
    padding: 1vw;
    position: absolute;
    top: 0;
}

nav h1 {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 3.5vw;
    line-height: 1;
    color: #000;
    text-align: left;
    margin: 0;

}

header {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative; 
    height: 100vh;
    width: 100%;
    background-image: url("../images/dbi-nature-bg-header-desk-2.jpg");
    background-size: cover;
    background-position: center;
}

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 .patch-espace-vente {
    position: absolute;
    top: 6vw;
    left: 2vw;
    width: 22vw;
    z-index: 10;
}

header .patch-espace-vente img {
    display: block;
    width: 100%;
    height: auto;
}

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;
}

header .header-baseline h2 {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 2.4vw;
    line-height: 1;
    color: #000;
    text-align: left;
    margin: 0;
}

header .header-baseline p {
    font-family: 'Londrina Solid', sans-serif;
    font-size: 1.8vw;
    line-height: 1;
    text-align: left;
    margin: 0;
    
}

header .header-baseline .baseline-subtitle {
    color: #fff;
    text-transform: uppercase;
}

header .header-baseline .baseline-content {
    color: #000;
    text-transform: initial;
    font-variant-ligatures: none !important;
    font-synthesis: none !important;
}

header .header-baseline.mask {
    mask-image: url(../images/mask-nature.svg);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: 100% !important;
    -webkit-mask-image: url(../images/mask-nature.svg);
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: 100% !important;
}

main {
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: start;
    padding: 8vw 0vw 4vw 4vw;
    gap: 2vw;
}

main .adresse {
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: start;
}

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;
}

.color_pink {
    color: #EC7969;
    font-weight: 700;
}

main .adresse p b {
    font-weight: 700;
}

main .intuition .visuel-container {
    position: relative;
    overflow: visible;
}


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;
    display: none;
}

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: 78%;
    margin-top: 1vw;
}

main .mosaique .mosaique-grid {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

main .mosaique .mosaique-item {
    flex: 0 0 25%;
    width: 25%;
    height: 17.5vw;
}

main .mosaique .mosaique-item--image {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

main .mosaique .mosaique-item--text {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    padding: 1.4vw 1.4vw 2vw 1.4vw;
}

main .mosaique .mosaique-item--text p {
    margin: 0;
    font-family: "Work Sans", sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 0.01em;
    font-size: 1.7vw;
}

main .mosaique .mosaique-item--text-dark-red {
    background-color: #a61c16;
}

main .mosaique .mosaique-item--text-dark-red p,
main .mosaique .mosaique-item--text-pink p,
main .mosaique .mosaique-item--text-coral p {
    color: #fff;
}

main .mosaique .mosaique-item--text-beige {
    background-color: #efd7c4;
}

main .mosaique .mosaique-item--text-beige p {
    color: #000;
}

main .mosaique .mosaique-item--text-pink {
    background-color: #efa29f;
}

main .mosaique .mosaique-item--text-coral {
    background-color: #f06a61;
}

main .mosaique .mosaique-item--img-eye {
    background-image: url("../images/mosaique-a1.webp");
}

main .mosaique .mosaique-item--img-smile {
    background-image: url("../images/dbi-nature-patch-main1.jpg");
}

main .mosaique .mosaique-item--img-building {
    background-image: url("../images/mosaique-b1.webp");
}

main .mosaique .mosaique-item--img-interior {
    background-image: url("../images/mosaique-b2.webp");
}

#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: 80%;
    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.1vw 2vw 1.1vw;
    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: #EC7969;
}

#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;
}

@media (max-width: 768px) {
    .desktop {
        display: none !important;
    }

    .mobile {
        display: block !important;
    }

    nav {
        padding: 3vw;
    }

    nav h1 {
        font-size: 9.5vw;
    }

    header {
        flex-direction: column;
        width: 100%;
        background-position: 33%;
        height: 70vh;
    }

    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 .patch-espace-vente {
        top: 23vw;
        left: 59vw;
        width: 40vw;
    }

    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-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 6vw 4vw 6vw;
        gap: 5vw; 
    }

    main .adresse {
        gap: 3vw;
    }

    main .adresse h2 {
        font-size: 8.7vw;
        width: 95%;
    }

    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.7vw;
        width: 95%;
    }

    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;
        display: none;
    }

    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: 3vw;
    }

    main .mosaique .mosaique-item {
        flex: 0 0 50%;
        width: 50%;
        height: 45vw;
    }

    main .mosaique .mosaique-item--text {
        padding: 3.7vw;
    }

    main .mosaique .mosaique-item--text p {
        font-size: 4.7vw;
        line-height: 1.1;
    }

    main .mosaique .mosaique-item--aime-air {
        order: 1;
    }

    main .mosaique .mosaique-item--img-eye {
        order: 2;
    }

    main .mosaique .mosaique-item--img-building {
        order: 3;
    }

    main .mosaique .mosaique-item--ouvrir-autres {
        order: 4;
    }

    main .mosaique .mosaique-item--lieu-soi {
        order: 5;
    }

    main .mosaique .mosaique-item--img-smile {
        order: 6;
    }

    main .mosaique .mosaique-item--img-interior {
        order: 7;
    }

    main .mosaique .mosaique-item--rester-connectes {
        order: 8;
    }

    #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;
    }

    input[name="date"] {
        padding-left: 4vw;
        padding-bottom: 0;
    }

    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;
    }
}
