.offre__content, .offre__stepsContainer, .engagements {
    margin-inline: 5vw;
}
.offre__header {
    margin-inline: -5vw;
}
.offre__regroupment {
    background-color: var(--black);
    margin-top: -10vw;
    padding: 10vw 5vw 12.5vw 5vw;
    z-index: 0;
}
.offre__regroupment *{
    color: var(--white);
}
.offre__content {
    padding: 10vw 0 0 0;
}
.offre__part {
    align-items: center;
    display: flex;
    flex-direction: column-reverse;
    gap: 10vw;
}
.offre__name {
    font-size: var(--fsSubtitleGreen);
}
.offre__illustration {
    background-image: url(../../img/logosIcons/first.svg);
    background-position: center;
    background-size: 100%;
    background-repeat: no-repeat;
    border-radius: 100%;
    height: 90vw;
    object-fit: cover;
    object-position: center;
    padding: 10vw;
    width: 90vw;
}
.offre__description {
    display: flex;
    flex-direction: column;
    gap: 8.5vw;
}
.offre__corps {
    display: flex;
    flex-direction: column;
    gap: calc(var(--fsCorps) * 1.5);
}
.offre__stepsContainer .header {
    display: none;
}
.offre__steps {
    background-color: var(--whiteBis);
    border-radius: 9vw;
    display: flex;
    flex-direction: column;
    margin-inline: -5vw;
    padding: 5vw 0;
    width: 100vw;
}


.engagements {
    padding: 10vw 0 15vw 0;
}
.engagements__illustrationContainer {
    height: fit-content;
    position: relative;
}
.engagements__illustrationContainer::before {
    background-image: url(../../img/logosIcons/beforeGreenLine.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 1vw;
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    width: .125rem;
}
.engagements__illustration {
    aspect-ratio: 349/331;
    border-radius: .3125rem;
    margin-left: 5vw;
    object-fit: cover;
    object-position: center;
    width: 85vw;
}
.engagements__introduction {
    display: none;
}
.engagements__content {
    display: flex;
    flex-direction: column;
    gap: 5vw;
}
.engagements__description {
    display: flex;
    flex-shrink: 0;
    gap: 5vw;
    overflow-x: scroll;
    position: relative;
    width: 100%;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.engagements__description::-webkit-scrollbar {
    display: none;
}

.offre__contact {
    padding-inline: 5vw;
}

.offre__cards {
    display: flex;
    flex-direction: column;
    gap: 5vw;
}

.offre__regroupment .offre__title {
    hyphens: auto;
}

@media screen and (min-width: 575.98px) {
    .offre__header {
        margin-inline: 0;
    }
}

@media screen and (min-width: 767.98px) {
    .offre__part {
        gap: 5vw;
    }
    .offre__description {
        gap: 5vw;
    }
    .offre__corps {
        gap: var(--fsCorps);
    }
    .offre__cards {
        gap: 3.5vw;
    }
}

@media screen and (min-width: 991.98px) {
    .offre__cards {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }
    .offre__regroupment {
        background-image: url(../../img/backgrounds/blur.png);
        background-position: center;
        background-repeat: no-repeat;
        background-size: 140%;
        border-bottom-left-radius: 2vw;
        border-bottom-right-radius: 2vw;
        padding-bottom: 5vw;
    }
    .offre__part {
        flex-direction: row-reverse;
    }
    .offre__description {
        width: 45vw;
    }
    .offre__name {
        font-size: var(--fsTitle);
    }
    .offre__illustration {
        height: 40vw;
        padding: 2vw;
        width: 40vw;
    }
    .offre__content {
        padding-top: 12.5vw;
    }
    .offre__content .filigrane {
        margin-top: 5vw;
    }
    .offre__stepsContainer .header {
        display: flex;
        align-items: start;
        margin-left: 5vw;
        margin-top: 0;
        padding-top: 0;
        padding-bottom: 0;
    }
    .offre__steps {
        border-radius: 2vw;
    }
    .engagements {
        padding: 2.5vw 0 5vw 0;
    }
    .engagements__introduction {
        display: grid;
        gap: 0 2.5vw;
        grid-template-columns: 1fr .75fr;
        grid-template-rows: 1.5rem auto;
    }
    .engagements__title {
        grid-area: 2 / 1 / 3 / 2;
    }
    .engagements__intro {
        grid-area: 1 / 2 / 3 / 3;
    }
}

@media screen and (min-width: 1199.98px) {
    .offre__content {
        margin-inline: 12.5vw;
    }
    .offre__description {
        gap: 3.5vw;
    }
    .offre__regroupment {
        padding-inline: 12.5vw;
    }
    .engagements__content {
        justify-content: space-between;
    }
    .engagements__description {
        background-position: 42.5% center;
        background-size: 50%;
        background-repeat: no-repeat;
        width: 80vw;
    }
    .engagements__illustration {
        aspect-ratio: 2/1;
        width: 75vw;
    }
    .offre__illustration {
        aspect-ratio: 1 / 1;
        padding: 2vw;
        width: 32.5vw;
        height: unset;
    }
    .offre__content .filigrane {
        margin-top: 2.5vw;
    }
    .offre__stepsContainer, .offre__steps {
        margin-inline: 0;
    }
    .offre__steps .realisation__header--contact, .offre__steps .step {
        padding-inline: 12.5vw;
    }
    .engagements {
        margin-inline: 7.5vw;
    }
    .engagements__content {
        align-items: center;
        gap: 5vw;
    }
    .engagements__illustrationContainer::before {
        background-size: 0.5vw;
    }
}

@media screen and (min-width: 1399.98px) {
    .offre__regroupment, .offre__steps .step {
        padding-inline: 15vw;
    }
    .offre__content {
        margin-inline: 15vw;
    }
    .engagements__description {
        background-image: url(../../img/backgrounds/backgroundEngagement.svg);
        display: grid;
        gap: 1.5vw;
        grid-template-columns: 18.25vw 18.25vw;
        grid-template-rows: 18.25vw 18.25vw;
        overflow-x: visible;
        padding-right: 2.5vw;
        width: fit-content;
    }
    .engagements__illustration {
        aspect-ratio: 648/614;
        margin-left: 2.5vw;
        width: 40vw;
    }
    .engagements__content {
        flex-direction: row;
        gap: 2.5vw;
    }
    .offre__steps .realisation__header--contact {
        margin-inline: unset;
        margin-left: -2.5vw;
    }
    .offre__contact .contactLink__header {
        margin-left: 22.5vw;
    }
    .offre__cards {
        gap: 1.5vw;
    }
}

@media screen and (min-width: 1599.98px) {
    .engagements__description {
        gap: 2vw;
        grid-template-columns: 18vw 18vw;
        grid-template-rows: 18vw 18vw;
    }
    .engagements__illustration {
        width: 40vw;
    }
    .engagements__content {
        align-items: center;
    }
    .offre__content {
        padding-top: 7.5vw;
    }
    .engagements__introduction {
        grid-template-columns: 42.5vw 35vw;
    }

}

@media screen and (min-width: 1919.98px) {
    .offre__regroupment, .offre__steps .step {
        padding-inline: 22.5vw;
    }
    .offre__content {
        margin-inline: 22.5vw;
    }
    .offre__steps {
        padding: 2.5vw 0;
    }
    .offre__contact .contactLink__header {
        margin-left: 27.5vw;
    }
    .offre__illustration {
        width: 50vw;
    }
    .engagements__introduction {
        grid-template-columns: 42.5vw 27.5vw;
    }
}

@media screen and (min-width: 2099.98px) {
    .engagements {
        margin-inline: 14vw;
    }
    .engagements__description {
        gap: 1.5vw;
        grid-template-columns: 15vw 15vw;
        grid-template-rows: 15vw 15vw;
    }
    .engagements__illustration {
        width: 33vw;
    }
}