/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

/* --------------
* Heights and width
-------------- */

[fullheightwidth] {
    height: 100vh;
}

[margins-left-right-auto] {
    margin-left: auto;
    margin-right: auto;
}

[fit-content] {
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
}

[data-max-width] {
    max-width: attr(data-max-width px);
}

[data-width-px] {
    max-width: attr(data-width-px px);
}

[full-width-percent] {
    width: 100%;
}

[style^="--gap:"],
[style*="; --gap:"] {
    /* au cas où --gap n'est pas en premier */
}

[style^="--gap:"] [data-max-width-percent="50"],
[style*="; --gap:"] [data-max-width-percent="50"] {
    @media (min-width: 769px) {
        max-width: calc(50% - var(--gap));
    }
}

[data-max-width-percent="50"] {
    @media (min-width: 769px) {
        max-width: 50%;
    }
}

[data-width] {
    @media (min-width: 769px) {
        width: attr(data-width vw);
    }
}

[data-m-top="1/4"] {
    margin-top: var(--padding-small);
}

[data-m-top="2/4"] {
    margin-top: var(--padding-medium);
}

[data-m-top="3/4"] {
    margin-top: var(--padding-high);
}

[data-m-top="4/4"] {
    margin-top: var(--padding-veryhigh);
}

[data-m-left="1/4"] {
    margin-left: var(--padding-small);
}

[data-m-left="2/4"] {
    margin-left: var(--padding-medium);
}

[data-m-left="3/4"] {
    margin-left: var(--padding-high);
}

[data-m-left="4/4"] {
    margin-left: var(--padding-veryhigh);
}

[data-m-bottom="1/4"] {
    margin-bottom: var(--padding-small);
}

[data-m-bottom="2/4"] {
    margin-bottom: var(--padding-medium);
}

[data-m-bottom="3/4"] {
    margin-bottom: var(--padding-high);
}

[data-m-bottom="4/4"] {
    margin-bottom: var(--padding-veryhigh);
}

[data-m-right="1/4"] {
    margin-right: var(--padding-small);
}

[data-m-right="2/4"] {
    margin-right: var(--padding-medium);
}

[data-m-right="3/4"] {
    margin-bottom: var(--padding-high);
}

[data-m-right="4/4"] {
    margin-right: var(--padding-veryhigh);
}

[data-p-top="1/4"] {
    padding-top: var(--padding-small) !important;
}

[data-p-top="2/4"] {
    padding-top: var(--padding-medium) !important;
}

[data-p-top="3/4"] {
    padding-top: var(--padding-high) !important;
}

[data-p-top="4/4"] {
    padding-top: var(--padding-veryhigh) !important;
}

[data-p-left="1/4"] {
    padding-left: var(--padding-small);
}

[data-p-left="2/4"] {
    padding-left: var(--padding-medium);
}

[data-p-left="3/4"] {
    padding-left: var(--padding-high);
}

[data-p-left="4/4"] {
    padding-left: var(--padding-veryhigh);
}

[data-p-bottom="1/4"] {
    padding-bottom: var(--padding-small);
}

[data-p-bottom="2/4"] {
    padding-bottom: var(--padding-medium);
}

[data-p-bottom="3/4"] {
    padding-bottom: var(--padding-high);
}

[data-p-bottom="4/4"] {
    padding-bottom: var(--padding-veryhigh);
}

[data-p-right="1/4"] {
    padding-right: var(--padding-small);
}

[data-p-right="2/4"] {
    padding-right: var(--padding-medium);
}

[data-p-right="3/4"] {
    padding-bottom: var(--padding-high);
}

[data-p-right="4/4"] {
    padding-right: var(--padding-veryhigh);
}

[data-m-all="1/4"] {
    margin: var(--padding-small);
}

[data-m-all="2/4"] {
    margin: var(--padding-medium);
}

[data-m-all="3/4"] {
    margin: var(--padding-high);
}

[data-m-all="4/4"] {
    margin: var(--padding-veryhigh);
}

[data-p-all="1/4"] {
    padding: var(--padding-small);
}

[data-p-all="2/4"] {
    padding: var(--padding-medium);
}

[data-p-all="3/4"] {
    padding: var(--padding-high);
}

[data-p-all="4/4"] {
    padding: var(--padding-veryhigh);
}


/*
* En mobile
*/
@media screen and (max-width: 761px) {
    [data-m-top-mobile="1/4"] {
        margin-top: var(--padding-small);
    }

    [data-m-top-mobile="2/4"] {
        margin-top: var(--padding-medium);
    }

    [data-m-top-mobile="3/4"] {
        margin-top: var(--padding-high);
    }


    [data-m-top-mobile="4/4"] {
        margin-top: var(--padding-small);
    }

    [data-m-left-mobile="1/4"] {
        margin-left: var(--padding-small);
    }

    [data-m-left-mobile="2/4"] {
        margin-left: var(--padding-medium);
    }

    [data-m-left-mobile="3/4"] {
        margin-left: var(--padding-high);
    }

    [data-m-left-mobile="4/4"] {
        margin-left: var(--padding-veryhigh);
    }

    [data-m-bottom-mobile="1/4"] {
        margin-bottom: var(--padding-small);
    }

    [data-m-bottom-mobile="2/4"] {
        margin-bottom: var(--padding-medium);
    }

    [data-m-bottom-mobile="3/4"] {
        margin-bottom: var(--padding-high);
    }

    [data-m-bottom-mobile="4/4"] {
        margin-bottom: var(--padding-veryhigh);
    }

    [data-m-right-mobile="1/4"] {
        margin-right: var(--padding-small);
    }

    [data-m-right-mobile="2/4"] {
        margin-right: var(--padding-medium);
    }

    [data-m-right-mobile="3/4"] {
        margin-bottom: var(--padding-high);
    }

    [data-m-right-mobile="4/4"] {
        margin-right: var(--padding-veryhigh);
    }

    [data-p-top-mobile="1/4"] {
        padding-top: var(--padding-small);
    }

    [data-p-top-mobile="2/4"] {
        padding-top: var(--padding-medium);
    }

    [data-p-top-mobile="3/4"] {
        padding-top: var(--padding-high);
    }

    [data-p-top-mobile="4/4"] {
        padding-top: var(--padding-veryhigh);
    }

    [data-p-left-mobile="1/4"] {
        padding-left: var(--padding-small);
    }

    [data-p-left-mobile="2/4"] {
        padding-left: var(--padding-medium);
    }

    [data-p-left-mobile="3/4"] {
        padding-left: var(--padding-high);
    }

    [data-p-left-mobile="4/4"] {
        padding-left: var(--padding-veryhigh);
    }

    [data-p-bottom-mobile="1/4"] {
        padding-bottom: var(--padding-small);
    }

    [data-p-bottom-mobile="2/4"] {
        padding-bottom: var(--padding-medium);
    }

    [data-p-bottom-mobile="3/4"] {
        padding-bottom: var(--padding-high);
    }

    [data-p-bottom-mobile="4/4"] {
        padding-bottom: var(--padding-veryhigh);
    }

    [data-p-right-mobile="1/4"] {
        padding-right: var(--padding-small);
    }

    [data-p-right-mobile="2/4"] {
        padding-right: var(--padding-medium);
    }

    [data-p-right-mobile="3/4"] {
        padding-bottom: var(--padding-high);
    }

    [data-p-right-mobile="4/4"] {
        padding-right: var(--padding-veryhigh);
    }

    [data-m-all-mobile="1/4"] {
        margin: var(--padding-small);
    }

    [data-m-all-mobile="2/4"] {
        margin: var(--padding-medium);
    }

    [data-m-all-mobile="3/4"] {
        margin: var(--padding-high);
    }

    [data-m-all-mobile="4/4"] {
        margin: var(--padding-veryhigh);
    }

    [data-p-all-mobile="1/4"] {
        padding: var(--padding-small);
    }

    [data-p-all-mobile="2/4"] {
        padding: var(--padding-medium);
    }

    [data-p-all-mobile="3/4"] {
        padding: var(--padding-high);
    }

    [data-p-all-mobile="4/4"] {
        padding: var(--padding-veryhigh);
    }
}


/* --------------
* Flexbox
-------------- */

[flex] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

[flex="column"] {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
}

[flex-mobile="column"] {
    @media (max-width: 769px) {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: column !important;
        -ms-flex-flow: column !important;
        flex-flow: column !important;
    }
}

[flex-mobile="column-reverse"] {
    @media (max-width: 769px) {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-flow: column-reverse !important;
        flex-flow: column-reverse !important;
    }
}

[flex="row"] {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row;
    flex-flow: row;
}

[wrap="true"] {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

[wrap-mobile="false"] {
    @media (max-width: 769px) {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
}

[data-flex] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

[data-flex^=desktop-align-y-center] {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

[data-flex-mobile^=mobile-align-y-left] {
    @media (max-width: 769px) {
        -webkit-box-align: flex-start;
        -ms-flex-align: flex-start;
        align-items: flex-start;
    }
}

[data-flex^=desktop-align-x-center] {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

[data-flex^=space-between] {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

[data-flex^=desktop-align-xy-center] {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

[data-gap] {
    gap: attr(data-gap px);
}

@media (max-width: 769px) {
    [data-gap-mobile] {
        gap: attr(data-gap-mobile px);
    }
}

[data-flex="10auto"] {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}

[data-flex="1"] {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

/* --------------
* Fond de couleur
-------------- */

[primary-background] {
    background: var(--primary-color);
}

[white-background] {
    background: #fff;
}

[background-alt] {
    background: var(--base-bg);
}

[high-overlay-secondary] {
    position: relative;
    overflow: hidden;
}

[high-overlay-secondary] .subtitle,
[high-overlay-secondary] strong {
    color: var(--secondary-color-alt) !important;
}

[high-overlay-secondary]:before {
    content: '';
    background: #A35700;
    opacity: 85%;
    position: absolute;
    inset: 0;
    z-index: 1;
}

[high-overlay-secondary]>div {
    z-index: 2;
}

[high-overlay-primary] {
    position: relative;
    overflow: hidden;
}

[high-overlay-primary] .subtitle,
[high-overlay-primary] strong {
    color: var(--secondary-color-alt);
}

[high-overlay-primary]:before {
    content: '';
    background: #004CA3;
    opacity: 85%;
    position: absolute;
    inset: 0;
    z-index: 1;
}

[high-overlay-primary]>div {
    z-index: 2;
}

/* --------------
* Bords arrondis
-------------- */
[br] {
    border-radius: 16px;
}

/* --------------
* Positions
-------------- */

[absolute] {
    position: absolute;
}

[relative] {
    position: relative;
}

[ahead] {
    z-index: 9;
}

/* --------------
* Background Image
-------------- */

[style*="background-image"] {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

/* --------------
* Text alignments
-------------- */

[data-color="white"] {
    color: #fff;
}

/* -------------------------
* Alignements de texte
------------------------- */

[lefted-text] {
    text-align: left;
}

[centered-text] {
    text-align: center;
}

[righted-text] {
    text-align: right;

    @media (max-width: 769px) {
        text-align: left;
    }
}

@media screen and (max-width: 761px) {
    [mobile-lefted-text] {
        text-align: left;
    }
}

/* --------------
* Overlay
-------------- */
[overlay] {
    position: relative;
    overflow: hidden;
}

[overlay] .text-wrapper {
    position: relative;
    z-index: 2;
}

[overlay="plain"]:before {
    content: '';
    position: absolute;
    z-index: 1;
    inset: 0;
    background: #001124;
    opacity: 25%;
}

/* --------------
* Overflow
-------------- */
[of-hidden] {
    overflow: hidden;
}

[of-mobile-scroll] {
    @media (max-width: 769px) {
        overflow: scroll;
    }
}

/* --------------
* On mobile
-------------- */

[hidden-on-mobile] {
    @media (max-width: 769px) {
        display: none !important;
    }
}

/* --------------
* Bullet points
-------------- */
.special-bullet-points {
    margin-top: 40px;
}

.special-bullet-points ul {}

.special-bullet-points li {
    position: relative;
    padding: 20px 32px 20px 60px;
    border-radius: 12px;
    margin: 16px 0;
    overflow: hidden;
    min-height: 70px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.special-bullet-points strong {
    color: var(--secondary-color);
    text-decoration: underline;
    text-underline-offset: 5px;
}

.special-bullet-points li:before {
    content: '';
    position: absolute;
    inset: 0;
    border: 1px solid var(--base-color-high);
    border-radius: inherit;
    opacity: 20%;
}

.special-bullet-points li img {
    position: absolute;
    left: 0;
    top: 50%;
    transform: rotate(-10deg) translateX(-10px) translateY(-50%);
    width: 60px;
    height: 60px;
    opacity: 35%;
}

/* --------------
* Discover also
-------------- */

#decouvrez-egalement .thumbnail-discover-also {
    display: flex;
    flex-flow: row wrap;
    gap: 16px;
}

#decouvrez-egalement .thumbnail-discover-also .single-discover-thumbnail {
    flex: 1;
    position: relative;
    min-height: 400px;
    border-radius: 12px;
    overflow: hidden;
    transition: all ease-in-out 200ms;

    @media screen and (max-width: 980px) {
        flex: 1 0 100%;
    }
}

#decouvrez-egalement .thumbnail-discover-also a.single-discover-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#decouvrez-egalement .thumbnail-discover-also a.single-discover-thumbnail:before {
    content: '';
    position: absolute;
    background: var(--base-color-high);
    inset: 0;
    z-index: 1;
    opacity: 30%;
    transition: all ease-in-out 200ms;
}

#decouvrez-egalement .thumbnail-discover-also a.single-discover-thumbnail:hover:before {
    background: #bd6500;
}

#decouvrez-egalement .thumbnail-discover-also a.single-discover-thumbnail span {
    position: absolute;
    z-index: 2;
    bottom: 32px;
    left: 32px;
    font-weight: 500;
    font-family: "Spectral", serif;
    letter-spacing: -1.9px;
    font-weight: 275;
    line-height: 130%;
    font-size: 29px;
}

#decouvrez-egalement {
    @media (max-width: 769px) {
        padding-left: 0;
        padding-right: 0;
    }
}