.preloader {
    position: fixed;
    top: 0;
    right: 0;
    background-color: var(--bs-primary);
    width: 100%;
    height: 100vh;
    z-index: 2147483641;
    overflow: hidden;
}
.preloader .preloader-wrapper {
    display: flex;
    align-content: center;
    justify-content: center;
    width: 100%;
    height: 100vh;
}
.preloader img {
    width: 400px;
    height: auto;
}
@keyframes slideOutTop {
    0% {
        background-color: var(--bs-primary);
        transform: scale(1);
    }
    50% {
        background-color: transparent;
        opacity: 1;
    }
    to {
        background-color: transparent;
        transform: scale(10);
        opacity: 0;
        visibility: hidden;
    }
}
.preloader.open {
    animation-name: slideOutTop;
    transform-origin: center;
    animation-fill-mode: forwards;
    animation-duration: 1s;
    animation-delay: 0.5s;
    animation-timing-function: cubic-bezier(0.55, 0.06, 0.68, 0.19);
}

/* CHARTE TMS Prod 2024 */
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:local('Inter-Regular'), url('/static/font/Inter-Regular.woff2') format('woff2');}/*!sc*/
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:local('Inter-Medium'), url('/static/font/Inter-Medium.woff2') format('woff2');}/*!sc*/
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:local('Inter-Bold'), url('/static/font/Inter-Bold.woff2') format('woff2');}/*!sc*/
@font-face{font-family:'SpaceGrotesk';font-style:normal;font-weight:500;font-display:swap;font-feature-settings:'zero','ss02' off,'ss03' on,'ss04' on;src:local('SpaceGrotesk-Medium'), url('/static/font/SpaceGrotesk-Medium.woff2') format('woff2');}/*!sc*/
@font-face{font-family:'SpaceGrotesk';font-style:normal;font-weight:600;font-display:swap;font-feature-settings:'zero','ss02' off,'ss03' on,'ss04' on;src:local('SpaceGrotesk-SemiBold'), url('/static/font/SpaceGrotesk-SemiBold.woff2') format('woff2');}/*!sc*/
@font-face{font-family:'RobotoMono';font-style:normal;font-weight:400;font-display:swap;src:local('RobotoMono-Regular'), url('/static/font/roboto-mono-latin-400-normal.woff2') format('woff2');}/*!sc*/
@font-face{font-family:'Aeonik';font-style:normal;font-weight:400;font-display:swap;src:local('Aeonik-Regular'), url('/static/font/Aeonik-Regular.woff2') format('woff2');}/*!sc*/
@font-face{font-family:'Aeonik';font-style:normal;font-weight:500;font-display:swap;src:local('Aeonik-Medium'), url('/static/font/Aeonik-Medium.woff2') format('woff2');}/*!sc*/
@font-face{font-family:'Aeonik';font-style:normal;font-weight:500;font-display:swap;src:local('Aeonik-Medium'), url('/static/font/Aeonik-Medium.woff2') format('woff2');}/*!sc*/
@font-face{font-family:'Aeonik Mono';font-style:normal;font-weight:500;font-display:swap;src:local('AeonikMono-Regular'), url('/static/font/AeonikMono-Regular.woff2') format('woff2');}/*!sc*/

:root {
    --logo-slug: white;
}

html {
    text-rendering: geometricPrecision;
    text-size-adjust: 100%;
    font-size: 62.5%;
}

body {
    font-family: Aeonik, sans-serif;
    background: rgb(17, 17, 17);
    -webkit-font-smoothing: antialiased;
    font-size: 14px;
}
a {
    text-decoration: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
p {
    margin: 0 0 14px;
}
hr {
    box-sizing: content-box;
    height: 0px;
    overflow: visible;
    border: 0;
    max-width: 122rem;
    margin: 0px auto;
    border-top: 0.1rem solid rgb(201, 202, 206);
}
.highlight-blue {
    font-feature-settings: "ss02", "ss03", "ss04";
    font-family: Aeonik, sans-serif;
    letter-spacing: -0.2rem!important;
    font-size: 3.6rem;
    font-weight: 400;
}
header {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    z-index: 1000;
    color: rgb(255, 255, 255);
}
header .tms-navbar {
    transition: background-color 0.2s ease 0s, border-radius 0.2s ease 0s;
    position: relative;
    display: none;
    width: 144rem;
    max-width: 100%;
    margin: auto;
    padding: 0px 11.2rem;
    background-color: transparent;
    border-radius: 0px;
}
header .tms-mob-navbar {
    max-width: 144rem;
    width: 100%;
    margin: auto;
    padding: 0px 2.4rem 0px 1.6rem;
    display: flex;
    background-color: rgb(17, 17, 17);
    height: 6.4rem;
    box-shadow: rgb(90, 95, 102) 0px -0.1rem 0px inset;
    position: relative;
    -webkit-box-align: center;
    align-items: center;
}
header .tms-mob-navbar .logo {
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    flex: 1 1 0%;
    color: #FFF;
    text-decoration: none;
    font-size: 2.7rem;
    font-weight: 400;
    letter-spacing: -0.08rem;
}
header .tms-mob-navbar .hamb {
    justify-self: flex-end;
    padding: 2rem 0px;
}
header .tms-mob-navbar .hamb button {
    appearance: none;
    border: 0px;
    background: transparent;
    height: 2.4rem;
    margin: 0px;
    padding: 0px;
    position: relative;
    display: flex;
    -webkit-box-pack: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.5s ease-in-out 0s;
}
header .tms-mob-navbar .hamb button .vegan {
    width: 2rem;
    display: flex;
    height: 0.2rem;
    border-radius: 0.2rem;
    transition: all 0.2s ease-in-out 0s;
    margin-top: 1.2rem;
    transform: translateX(-2rem);
    background: transparent;
    box-shadow: none;
}
header .tms-mob-navbar .hamb button .viande {
    width: 2rem;
    display: flex;
    height: 0.2rem;
    background: rgb(255, 255, 255);
    border-radius: 0.2rem;
    transition: all 0.2s ease-in-out 0s;
    margin-top: 1.2rem;
}
header .tms-mob-navbar .hamb button .viande::before {
    transform: translateY(-0.7rem);
}
header .tms-mob-navbar .hamb button .viande::after {
    transform: translateY(0.7rem);
}
header .tms-mob-navbar .hamb button .vegan::before {
    transform: rotate(45deg) translate(1.2rem, -1.2rem);
}
header .tms-mob-navbar .hamb button .vegan::after {
    transform: rotate(-45deg) translate(1.2rem, 1.2rem);
}
header .tms-mob-navbar .hamb button .viande::before, header .tms-mob-navbar .hamb button .viande::after, header .tms-mob-navbar .hamb button .vegan::before, header .tms-mob-navbar .hamb button .vegan::after {
    content: "";
    position: absolute;
    width: 2rem;
    height: 0.2rem;
    background: rgb(255, 255, 255);
    border-radius: 0.2rem;
    transition: all 0.2s ease-in-out 0s;
}
header .tms-mob-navbar .pas-menu {
    background: rgb(17, 17, 17);
    display: none;
    position: fixed;
    z-index: 100;
    inset: 10.8rem 0px 0px;
    width: 100%;
    overflow: auto;
} 

header .tms-mob-navbar .menu {
    background: rgb(17, 17, 17);
    display: block;
    position: fixed;
    z-index: 100;
    inset: 10.8rem 0px 0px;
    width: 100%;
    overflow: auto;
} 
header .tms-mob-navbar .menu-bar {
    margin-bottom: 15rem;
    padding-left: 0px;
}
header .tms-mob-navbar .menu-bar .nvtb {
    list-style: none;
    width: 100%;
    border-bottom: 0.1rem solid rgb(90, 95, 102);
}
header .tms-mob-navbar .menu-bar .nvtb .text {
    font-weight: 500;
    font-size: 2rem;
    line-height: 2.8rem;
    letter-spacing: -0.01rem;
    color: rgb(255, 255, 255);
    margin: 0px;
    padding: 2.4rem 0px 2.4rem 1.6rem;
    position: relative;
    transition: color 0.2s ease 0s;
}
header .tms-mob-navbar .menu-bar .nvtb .text::before {
    border-style: solid;
    border-width: 0.1em 0.1em 0px 0px;
    content: "";
    display: inline-block;
    height: 1.4rem;
    right: 3rem;
    top: calc(50% - 0.83rem);
    position: absolute;
    vertical-align: top;
    width: 1.4rem;
    transform: rotate(135deg);
    transition: transform 0.4s ease 0s;
}
header .tms-mob-navbar .menu-bar .nvtb[open] .text::before { /* OPEN */
    transform: rotate(-45deg);
    top: calc(50% - 0.3rem);
}
header .tms-mob-navbar .menu-bar .nvtb[open] .text { /* OPEN */
    color: #39a8e0;
}
header .tms-mob-navbar .menu-bar .nvtb .sous-menu { /* CLOSE */
    overflow: hidden;
    transition: max-height 0.3s ease-out 0s;
    padding-left: 1.6rem;
    background: rgb(30, 33, 42);
    height: 0px;
    max-height: 0px;
}
header .tms-mob-navbar .menu-bar .nvtb[open] .sous-menu { /* OPEN */
    overflow: hidden;
    height: auto;
    max-height: 82rem;
    transition: max-height 0.3s ease-out 0s;
    padding-left: 1.6rem;
    background: rgb(30, 33, 42);
}
header .tms-mob-navbar .menu-bar .nvtb .sous-menu .domaine:not(:last-of-type) {
    margin-bottom: 4.4rem;
}
header .tms-mob-navbar .menu-bar .nvtb .sous-menu .domaine .titre-domaine {
    font-size: 1.4rem;
    line-height: 2rem;
    letter-spacing: 0.15rem;
    text-transform: uppercase;
    color: rgb(140, 146, 156);
    margin: 3.2rem 0px 2rem;
    font-family: SpaceGrotesk, sans-serif;
    font-feature-settings: "zero", "ss02", "ss03", "ss04";
}
header .tms-mob-navbar .menu-bar .nvtb .sous-menu .domaine .liste {
    list-style: none;
    padding: 0px;
    margin: 0px;
}
header .tms-mob-navbar .menu-bar .nvtb .sous-menu .domaine .liste .lien {
    font-size: 2rem;
    line-height: 2.8rem;
    letter-spacing: -0.01rem;
    margin-bottom: 2rem;
}
header .tms-mob-navbar .menu-bar .nvtb .sous-menu .domaine .liste .lien a {
    color: rgb(255, 255, 255);
    display: inline-block;
    width: 100%;
    text-decoration: none;
}
header .tms-mob-navbar .boutonniere {
    -webkit-box-pack: center;
    justify-content: center;
    width: 100%;
    padding: 1.6rem;
    margin: 0px auto;
    border-top: 0.1rem solid rgb(90, 95, 102);
    position: fixed;
    bottom: 0px;
    left: 0px;
    right: 0px;
    text-align: center;
    background: rgb(17, 17, 17);
    display: flex;
    flex-direction: column;
}
header .tms-mob-navbar .boutonniere .double {
    width: 100%;
    display: flex;
    gap: 1.6rem;
}
header .tms-mob-navbar .boutonniere .boutn {
    font-family: Inter, sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 3.2rem;
    padding: 0.8rem 0px;
    border-radius: 0.8rem;
    text-decoration: none;
}
header .tms-mob-navbar .boutonniere .full::after {
    position: relative;
    padding-left: 0.5rem;
    display: inline-block;
    content: "→";
}
header .tms-mob-navbar .boutonniere .full {
    color: rgb(255, 255, 255);
    background: #1f8dcc;
    border: 0.1rem solid #39a8e0;
    margin-top: 1.6rem;
}
header .tms-mob-navbar .boutonniere .soft {
    border: 0.1rem solid rgb(189, 196, 207);
    color: rgb(255, 255, 255);
    background: none;
    width: 50%;
}
header .notop {
    background-color: rgb(17, 17, 17);
    border-radius: 0px 0px 1.6rem 1.6rem;
}
.tms-navbar .logo {
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    /*padding: 1.2rem 0px;*/
    color: #FFF;
    text-decoration: none;
    font-size: 2.7rem;
    font-weight: 400;
    letter-spacing: -0.08rem;
}
.tms-navbar .logo span, .tms-mob-navbar .logo span {
    padding: 0px 1.2rem;
}
.tms-navbar .menu-bar {
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    padding: 0px;
    list-style: none;
    margin: 0px;
    line-height: 2.4rem;
}
.tms-navbar .menu-bar .nvtb {
    font-family: Inter, sans-serif;
    padding: 0px 1.2rem;
    cursor: pointer;
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 2.4rem;
}
.tms-navbar .menu-bar .nvtb .contr {
    padding: 2rem 0.8rem;
    position: relative;
    transition: color 0.2s ease 0s;
    display: block;
}
.tms-navbar .menu-bar .nvtb .contr a {
    color: rgb(255, 255, 255)!important;
}
.tms-navbar .menu-bar .nvtb .contr .text {
    font-family: Inter, sans-serif;
    padding: 0px 1.2rem;
    cursor: pointer;
    font-weight: 500;
    /*font-size: 1.4rem;*/
    line-height: 2.4rem;
    text-decoration: none;
}
.tms-navbar .menu-bar .nvtb .sous-menu {
    color: rgb(255, 255, 255);
    cursor: initial;
    padding-top: 0.9rem;
    width: 104.4rem;
    position: absolute;
    left: 0px;
    right: 0px;
    margin: -0.1rem auto 0px;
    top: 6.4rem;
    display: inline-block;
    visibility: hidden;
    opacity: 0;
    transform: translateX(-1.6rem);
    transition: visibility 0s ease 0s, opacity 0.2s linear 0s, transform 0.2s linear 0s;
}
.tms-navbar .menu-bar .nvtb:hover .sous-menu {
    visibility: visible;
    opacity: 1;
    transform: translateX(0px);
}
.tms-navbar .menu-bar .nvtb .sous-menu .plaque {
    background: rgb(17, 17, 17);
    border-radius: 1rem;
    display: flex;
    box-shadow: rgba(0, 0, 0, 0.08) 0px 4.48625rem 5.27794rem, rgba(0, 0, 0, 0.06) 0px 1.87425rem 2.205rem, rgba(0, 0, 0, 0.047) 0px 1.00206rem 1.1789rem, rgba(0, 0, 0, 0.04) 0px 0.561748rem 0.66088rem, rgba(0, 0, 0, 0.03) 0px 0.29834rem 0.350988rem, rgba(0, 0, 0, 0.04) 0px -0.2rem 1.2rem;
}
.tms-navbar .menu-bar .nvtb .sous-menu .plaque section:not(:last-of-type) {
    border-right: 0.1rem solid rgb(90, 95, 102);
}

.tms-navbar .menu-bar .nvtb .sous-menu .plaque section {
    min-width: 31.1rem;
    width: 31.1rem;
    padding: 3.2rem;
}
.tms-navbar .menu-bar .nvtb .sous-menu .plaque section p {
    font-family: SpaceGrotesk;
    font-style: normal;
    font-size: 1.4rem;
    letter-spacing: 0.15rem;
    color: rgb(140, 146, 156);
    font-weight: 500;
    line-height: 1.8rem;
    margin-bottom: 2.4rem;
}
.tms-navbar .menu-bar .nvtb .sous-menu .plaque section ul {
    list-style: none;
    padding: 0px;
}
.tms-navbar .menu-bar .nvtb .sous-menu .plaque section ul li {
    margin: 0px;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    font-family: Inter, sans-serif;
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 2.4rem;
    color: rgb(255, 255, 255);
}
.tms-navbar .menu-bar .nvtb .sous-menu .plaque section ul li a {
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    color: rgb(255, 255, 255);
    transition: color 0.2s ease 0s;
    width: 100%;
    text-decoration: none;
    line-height: 1.8rem;
}
.tms-navbar .menu-bar .nvtb .sous-menu .plaque section ul li a:hover {
    color: #39a8e0;
}
.nvtb:hover .tms-navbar .menu-bar .nvtb svg {
    stroke: rgb(188, 186, 255);
}
.tms-navbar .menu-bar .nvtb svg {
    stroke: rgb(255, 255, 255);
    transition: stroke 0.2s ease 0s;
}
.tms-navbar .menu-bar .nvtb .contr::after {
    content: "";
    transition: border-color 0.2s ease 0s, transform 0.2s ease 0s;
    width: 100%;
    height: 0.2rem;
    border-bottom: 0.2rem solid transparent;
    display: block;
    bottom: 0px;
    position: absolute;
    left: 0px;
    transform: scale(0, 1);
}

.tms-navbar .menu-bar .nvtb:hover .contr::after {
    border-bottom-color: #39a8e0;
    transform: scale(1, 1);
}
.tms-navbar .menu-bar .nvtb:hover .contr .text a {
    color: rgb(188, 186, 255);
}
.tms-navbar .boutn {
    display: block;
    font-family: Inter, sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 2.4rem;
    padding: 0.4rem 1.6rem;
    /*border-radius: 0.8rem;*/
    margin: 0px 0px 0px 2rem;
    text-decoration: none;
}
.tms-navbar .full {
    color: rgb(255, 255, 255);
    background: #1f8dcc;
    border: 0.1rem solid #39a8e0;
}
.tms-navbar .full:hover {
    color: rgb(255, 255, 255);
    background: #39a8e0;
}
.tms-navbar .soft {
    border: 0.1rem solid rgb(189, 196, 207);
    color: rgb(255, 255, 255);
    background: rgba(30, 33, 42, 0);
    transition: border-color 0.2s ease 0s, background-color 0.2s ease 0s, color 0.2s ease 0s;
}
.tms-navbar .soft:hover {
    color: rgb(255, 255, 255);
    border-color: rgb(255, 255, 255);
    background: rgb(30, 33, 42);
}
.cale-1 {
    height: 0.1rem;
    position: absolute;
    visibility: hidden;
    top: 0px;
}
.cale-2 {
    height: 10.8rem;
    width: 100%;
    margin: 0px auto;
}
header .tms-navbar::after {
    content: "";
    width: 100%;
    position: absolute;
    bottom: 0px;
    left: 0px;
    pointer-events: none;
    border-bottom: 0.1rem solid rgb(140, 146, 156);
}
header .tms-navbar:hover::after, header .notop::after {
    border-bottom-color: transparent;
}

.prehead {
    background: rgb(39, 39, 39);
    color: rgb(255, 255, 255);
    width: 144rem;
    max-width: 100%;
    margin: auto;
    min-height: 4.4rem;
    display: flex;
    padding: 1rem 3rem;
    -webkit-box-align: center;
    align-items: center;
    font-size: 1.3rem;
    line-height: 1.8rem;
    text-align: center;
    font-family: Inter, sans-serif;
    border-bottom: 0.2rem solid;
    border-image-slice: 1;
    border-image-source: linear-gradient(90deg, #FF4F0B 0%, #1D8CCC 52.6%, #1D70B7 100%);
}

.prehead a .accroche {
    color: rgb(255, 255, 255);
    font-feature-settings: "zero";
    display: inline;
    margin: 0px;
    font-size: 1.2rem;
    font-weight: 500;
}

.prehead a {
    flex: 1 1 0%;
    padding: 0px;
    cursor: pointer;
    text-decoration: none;
}

.prehead .inter-accroche {
    color: rgb(189, 196, 207);
    display: none;
}

.prehead .accroche-cta {
    margin-left: 0.5em;
    font-weight: 500;
    display: none;
    color: rgb(255, 255, 255);
}
@media screen and (min-width: 900px) {
    .prehead a {
        padding: 1.3rem 0px;
    }
    .prehead a .accroche {
        font-size: 1.3rem;
    }
    .prehead .accroche-cta {
        display: inline;
    }
    .prehead {
        font-size: 1.3rem;
        padding: 0px 3.2rem;
        height: 4.4rem;
    }
    .prehead a:hover .accroche-cta {
        text-decoration: underline;
    }
}

@media screen and (min-width: 1200px) {
    .cale-2 {
        display: none;
    }
    .prehead a {
        padding: 1.3rem 0px;
        margin-right: 2.4rem;
    }
    .prehead .inter-accroche {
        display: inline;
        margin-left: 0.5em;
    }
    .prehead {
        padding: 0px 11.2rem;
        text-align: left;
    }
    header .tms-navbar {
        display: flex;
        -webkit-box-pack: justify;
        justify-content: space-between;
    }
    header .tms-mob-navbar {
        display: none;
    }
}

/* 2024 SUITE CHARTE CORPS */
.section1 {
    margin-bottom: -0.1rem;
}

.section1 .happy-bonjour {

/*
    background-color: #3f59e4;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    max-width: 1536px;
    margin-left: auto;
    margin-right: auto;
    min-height: min(710px, 37vw);
    max-height: none;

*/

    padding: 1.6rem 1.6rem 0px;
    max-width: 144rem;
    /*background-color: rgb(13, 13, 13);*/
    background-color: #000000;
    margin: 0px auto;
    border-bottom-left-radius: 2rem;
    border-bottom-right-radius: 2rem;
    position: relative;
    overflow: hidden;
    opacity: 0;
    animation: 1s cubic-bezier(0.4, 0, 0.2, 1) 0.2s 1 normal forwards running cspXan;
}
.section1 .happy-bonjour .c-ici {
    max-width: 121.2rem;
    margin: 0px auto;
    text-align: center;
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
}
.section1 .happy-bonjour .c-ici .partie1 {
    margin-bottom: 3.6rem;
    margin-top: 1rem;
    display: flex;
    flex-direction: column;
    -webkit-box-pack: justify;
    justify-content: space-between;
}
.section1 .happy-bonjour .c-ici .partie1 .titre {
    text-align: left;
    margin-bottom: 2rem;
    font-family: Aeonik, sans-serif;
}
.section1 .happy-bonjour .c-ici .partie2 img {
    box-shadow: rgba(0, 0, 0, 0.08) 0px 3.99736rem 4.70278rem, rgba(0, 0, 0, 0.06) 0px 1.67rem 1.96471rem, rgba(0, 0, 0, 0.047) 0rem 0.892863rem 1.05043rem, rgba(0, 0, 0, 0.04) 0px 0.500532rem 0.588861rem, rgba(0, 0, 0, 0.03) 0px 0.265829rem 0.312739rem, rgba(0, 0, 0, 0.024) 0px 0.110617rem 0.130138rem;
    border-radius: 1.6rem;
    width: 14.1rem;
    margin-left: 1rem;
    margin-bottom: -4.2rem;
    overflow: hidden;
}
.section1 .happy-bonjour .c-ici .partie1 h1 {
    font-size: 3.2rem;
    font-weight: 400;
    max-width: 54.1rem;
    color: rgb(255, 254, 250);
    letter-spacing: -0.2rem;
    margin: 0px;
    display: block;
    flex-direction: column;
    font-feature-settings: "ss02", "ss03", "ss04";
}
.section1 .happy-bonjour .fond {
    position: absolute;
    border-bottom-right-radius: 4rem;
    height: auto;
    bottom: 0px;
    left: 0px;
    /*width: 300%;*/
    z-index: 0;
    background: linear-gradient(191deg, transparent 0%, transparent 75%, #39a8e0 105%);
}
.section1 .happy-bonjour .fond img {
    width: 100%;
    /*height: 100%;*/
    opacity: 0.3;
}
.section1 .happy-bonjour .c-ici .partie1 .cta .formu {
    width: 100%;
}
.section1 .happy-bonjour .c-ici .partie1 .cta .formu fieldset {
    margin: 0 2px;
    font-family: Inter, sans-serif;
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
    flex-flow: column;
    border: none;
    gap: 1.6rem;
    padding: 0px;
    width: 100%;
    height: 100%;
    background: transparent;
}
.section1 .happy-bonjour .c-ici .partie1 .cta .formu fieldset div {
    width: 100%;
}
.section1 .happy-bonjour .c-ici .partie1 .cta .formu fieldset div input {
    width: 100%;
    font-size: 1.6rem;
    font-weight: 400;
    height: 4.8rem;
    line-height: 3.2rem;
    padding: 0.8rem 1.6rem;
    border-radius: 0.8rem;
    background: rgb(17, 17, 17);
    font-family: Aeonik, sans-serif;
    color: rgb(255, 255, 255);
    border: 0.1rem solid rgb(75, 75, 75);
}
.section1 .happy-bonjour .c-ici .partie1 .cta .formu fieldset div input:focus-within, .section1 .happy-bonjour .c-ici .partie1 .cta .formu fieldset div input focus {
    border-color: rgb(30, 33, 42);
    outline: none;
}
.section1 .happy-bonjour .c-ici .partie1 .cta .formu fieldset button {
    margin: 0px;
    -webkit-box-align: center;
    align-items: center;
    border-radius: 0.8rem;
    color: rgb(255, 255, 255);
    display: flex;
    font-size: 1.6rem;
    line-height: 3.2rem;
    -webkit-box-pack: center;
    justify-content: center;
    width: 100%;
    height: fit-content;
    text-decoration: none;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) 0s;
    font-style: normal;
    font-weight: 500;
    background-color: #1f8dcc;
    font-family: Aeonik, sans-serif;
    padding: 0.8rem 3.46rem 0.8rem 3.9rem;
    border: none;
}
.section1 .happy-bonjour .c-ici .partie1 .cta .formu fieldset button:hover {
    background-color: #39a8e0;
    color: rgb(255, 255, 255);
    cursor: pointer;
}
@media screen and (min-width: 900px) {
    .section1 .happy-bonjour {
        padding: 3.3rem 7.5rem 5.6rem 2.5rem;
        border-bottom-left-radius: 1.6rem;
        border-bottom-right-radius: 1.6rem;
    }
    .section1 .happy-bonjour .c-ici {
        flex-direction: row;
        -webkit-box-pack: justify;
        justify-content: space-between;
    }
    .section1 .happy-bonjour .c-ici .partie1 .titre {
        margin-bottom: 0px;
        margin-top: 2rem;
    }
    .section1 .happy-bonjour .c-ici .partie2 img {
        margin: 0px;
        width: 20.8rem;
    }
    .section1 .happy-bonjour .c-ici .partie1 h1 {
        font-size: 4rem;
    }
    .section1 .happy-bonjour .fond {
        height: auto;
        width: 100%;
        bottom: 0px;
        right: 0px;
        left: auto;
    }
    .section1 .happy-bonjour .c-ici .partie1 {
        margin-bottom: 0px;
        margin-top: 2rem;
    }
    .section1 .happy-bonjour .c-ici .partie1 .cta {
        max-width: 48.8rem;
    }
    .section1 .happy-bonjour .c-ici .partie1 .cta .formu fieldset {
        height: 8rem;
        width: 46rem;
        flex-direction: row;
        border-radius: 2.4rem;
        padding: 1.6rem;
        -webkit-box-align: center;
        align-items: center;
        background: rgb(17, 17, 17);
    }
    .section1 .happy-bonjour .c-ici .partie1 .cta .formu fieldset div {
        flex: 1 1 0%;
    }
    .section1 .happy-bonjour .c-ici .partie1 .cta .formu fieldset div input {
        border: none;
    }
    .section1 .happy-bonjour .c-ici .partie1 .cta .formu fieldset button {
        width: fit-content;
        padding: 0.74rem 3.6rem;
    }
}
@media screen and (min-width: 1200px) {
    .section1 {
        margin-top: 4.4rem;
    }
    .section1 .happy-bonjour {
        padding: 10.4rem 8.8rem 6.4rem;
        margin: 0px auto;
        border-bottom-left-radius: 2.4rem;
        border-bottom-right-radius: 2.4rem;
    }
    .section1 .happy-bonjour .c-ici .partie1 {
        margin-top: 4rem;
    }
    .section1 .happy-bonjour .c-ici .partie1 .titre {
        min-width: 81rem;
        margin-bottom: 9.4rem;
    }
    .section1 .happy-bonjour .c-ici .partie2 img {
        margin: 5rem 10rem 0px 0px;
        height: 43rem;
        width: auto !important;
    }
    .section1 .happy-bonjour .c-ici .partie1 h1 {
        font-size: 7.2rem;
        width: 55rem;
        margin: 0px;
        position: relative;
    }
    .section1 .happy-bonjour .fond {
        left: auto;
    }
    .section1 .happy-bonjour .c-ici .partie1 .cta .formu {
        max-width: 48.8rem;
        height: 8.2rem;
    }
    .section1 .happy-bonjour .c-ici .partie1 .cta .formu fieldset {
        border-radius: 1.6rem;
    }
    .section1 .happy-bonjour .c-ici .partie1 .cta .formu fieldset div input {
        padding: 0.8rem;
        border: 0px;
    }
}

/* ICI */
.section2 {
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
    max-width: 144rem;
    padding: 1.6rem 1.6rem 2.8rem;
    text-align: center;
    width: 100%;
    margin: 0px auto;
    flex-direction: column-reverse;
}
.section2 .partie1 {
    display: flex;
    flex-direction: column;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
    color: rgb(255, 255, 255);
    box-shadow: rgba(0, 0, 0, 0.25) 0rem 16rem 24rem 0rem;
    overflow: hidden;
}
.section2 .partie1 img {
    width: 100%;
}
.section2 .partie2 {
    text-align: left;
}
.section2 .partie2 .chap {
    color: rgb(175, 171, 161);
    text-align: center;
    font-family: "Aeonik Mono", monospace;
    font-size: 1.4rem;
    font-style: normal;
    font-weight: 500;
    line-height: 2rem;
    letter-spacing: 0.15rem;
    text-transform: uppercase;
    margin-bottom: 1.6rem;
}
.section2 .partie2 h3 {
    margin: 1.6rem 0px;
    font-family: Aeonik, sans-serif;
    font-size: 3.2rem;
    font-style: normal;
    font-weight: 400;
    letter-spacing: -0.03rem;
    line-height: 4.2rem;
    text-align: left;
    color: rgb(255, 255, 255);
    width: auto;
}
.section2 .partie2 p {
    font-family: Aeonik, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 2.24rem;
    letter-spacing: 0.02rem;
    color: rgb(255, 254, 250);
    margin-bottom: 2.4rem;
}
@media screen and (min-width: 900px) {
    .section2 {
        padding: 0px 0px 6.4rem 2.4rem;
        flex-direction: row-reverse;
        -webkit-box-align: center;
        align-items: center;
    }
    .section2 .partie1 {
        margin: 0px;
        border-right: none;
    }
    .section2 .partie2 {
        width: 43.9rem;
    }
    .section2 .partie2 h3 {
        margin: 0px 0px 1.6rem;
        font-size: 4rem;
        line-height: 4.8rem;
        letter-spacing: -0.08rem;
    }
    .section2 .partie2 p  {
        font-size: 1.4rem;
        line-height: 2.8rem;
        letter-spacing: -0.005rem;
    }
}

@media screen and (min-width: 1200px) {
    .section2 {
        display: flex;
        flex-direction: row;
        gap: 10.4rem;
        padding: 3.2rem 11.2rem 0px;
    }
    .section2 .partie1 {
        border-radius: 1rem;
        min-width: 52rem;
    }
    .section2 .partie2 {
        width: auto;
    }
    .section2 .partie2 .chap {
        font-size: 1.6rem;
        line-height: 2.2rem;
        letter-spacing: 0.19rem;
    }
    .section2 .partie2 h3 {
        margin-bottom: 1.6rem;
        font-size: 5.6rem;
        line-height: 6.34rem;
        letter-spacing: -0.1rem;
    }
    .section2 .partie2 p  {
        margin: 0px auto;
        font-size: 2rem;
        line-height: 2.8rem;
        letter-spacing: 0.01rem;
    }
}



/* SECTION 3 */

.section3 {
    padding-left: 0px;
    padding-right: 0px;
    max-width: 144rem;
    margin: 0px auto;
}
.section3 .hello, .section4 .hello, .section5 .hello {
    position: relative;
    opacity: 0;
    transform: translateY(2rem);
    animation: 0.75s cubic-bezier(0.4, 0, 0.2, 1) 0.15s 1 normal forwards running XRZWT;
}
.section3 .hello .encart {
    background: rgb(25, 25, 25);
    border-radius: 0px;
}
.section3 .hello .encart .aurore {
    background: url(/static/svg/BG_Mobile.svg) center top / 100% no-repeat;
    border-radius: unset;
}
.section3 .hello .encart .partie1 {
    max-width: 144rem;
    padding-top: 3.2rem;
    padding-left: 1.6rem;
}
.section3 .hello .encart .partie1 h2 {
    font-feature-settings: "zero", "ss02", "ss03", "ss04";
    font-family: Aeonik, sans-serif;
    font-weight: 400;
    letter-spacing: -0.03rem;
    max-width: 48rem;
    font-size: 3.2rem;
    line-height: 4.3rem;
    font-style: normal;
    color: rgb(255, 255, 255);
    padding: 0px;
}
.section3 .hello .encart .partie1 p {
    color: rgb(255, 255, 255);
    font-style: normal;
    font-weight: 400;
    letter-spacing: 0px;
    font-family: Aeonik, sans-serif;
    font-size: 2rem;
}
.section3 .hello .encart .partie1 .more {
    border-bottom: 0.05rem solid rgb(110, 110, 110);
    overflow: scroll hidden;
    white-space: nowrap;
    padding-bottom: 3.2rem;
}

.section3 .hello .encart .partie2 .brief {
    margin: 0px;
    font-family: Aeonik, sans-serif;
    font-size: 1.6rem;
    line-height: 2.24rem;
    letter-spacing: 0.02rem;
    padding: 3.2rem 1.6rem;
    max-width: 116rem;
    color: rgb(255, 254, 250);
}
.section3 .hello .encart .partie2 .footer {
    display: grid;
    padding: 0px 1.6rem 3.2rem;
    z-index: 100;
}
.section3 .hello .encart .partie2 .footer .cta {
    border-radius: 1.6rem;
}
.section3 .hello .encart .partie2 .footer .cta img {
    display: block;
    height: 3rem;
    margin-bottom: 1.6rem;
}

.section3 .hello .encart .partie2 .footer .cta a {
    margin: 0px;
    padding: 0px;
    font-family: Aeonik, sans-serif;
    font-style: normal;
    font-size: 1.8rem;
    line-height: 2.8rem;
    text-decoration: none;
    cursor: pointer;
    letter-spacing: 0.02rem;
    font-weight: 400;
    color: rgb(255, 255, 255);
}
.section3 .hello .encart .partie2 .footer .cta a::after {
    content: "→";
    padding-left: 0.8rem;
    display: inline-block;
}
.section3 .hello .encart .partie2 .footer .cta a:hover {
    cursor: pointer;
    text-decoration: underline solid rgb(233, 232, 255);
}
@media screen and (min-width: 900px) {
    .section3 {
        padding: 0px 2rem 8rem;
    }
    .section3 .hello .encart {
        border-radius: 2.4rem;
    }
    .section3 .hello .encart .aurore {
        background-repeat: no-repeat;
        background-position: center top;
        background-size: 100%;
        border-radius: 2.4rem;
    }
    .section3 .hello .encart .partie1 {
        padding-left: 2.4rem;
        padding-top: 4.8rem;
    }
    .section3 .hello .encart .partie1 h2 {
        margin: 0px 0px 0.1rem;
        letter-spacing: -0.08rem;
        max-width: 50rem;
        font-size: 4rem;
        line-height: 4.8rem;
    }
    .section3 .hello .encart .partie1 p {
        margin: 0px 0px 6.87rem;
        font-size: 2.4rem;
        line-height: 2.8rem;
    }
    .section3 .hello .encart .partie1 .more {
        padding-bottom: 8.56rem;
    }
    .section3 .hello .encart .partie2 .brief {
        font-size: 2rem;
        letter-spacing: 0.01rem;
        padding: 5.7rem 2.5rem 6.9rem;

    }
    .section3 .hello .encart .partie2 .footer {
        padding: 0px 2.7rem 7.1rem;
        grid-template-columns: repeat(4, 1fr);
        -webkit-box-align: center;
        align-items: center;
    }
    .section3 .hello .encart .partie2 .footer .cta {
        background: none;
        max-width: 26.4rem;
        padding: 0px;
        grid-column: 1 / 3;
    }
    .section3 .hello .encart .partie2 .footer .cta a {
        line-height: 2rem;
        font-size: 2rem;
    }
}
@media screen and (min-width: 1200px) {
    .section3 {
        padding: 12rem 0px 0px;
    } 
    .section3 .hello .encart .partie1 {
        padding-left: 11.2rem;
        padding-top: 8rem;
    }
    .section3 .hello .encart .partie1 h2 {
        margin: 0px 0px 0.8rem;
        letter-spacing: -0.1rem;
        max-width: 92rem;
        font-size: 6.4rem;
    }
    .section3 .hello .encart .partie1 p {
        margin: 0px 0px 6.4rem;
        font-size: 3.2rem;
        line-height: 4.35rem;
    }
    .section3 .hello .encart .partie2 {
        overflow: hidden;
    }
    .section3 .hello .encart .partie1 .more {
        overflow: hidden;
        padding-bottom: 3.2rem;
    }
    .section3 .hello .encart .partie2 .brief {
        padding: 2.6rem 11.2rem 2.5rem;
    }
    .section3 .hello .encart .partie2 .footer {
        padding: 0px 11rem 8.6rem;
    }
    .section3 .hello .encart .partie2 .footer .cta {
        max-width: 50rem;
    }
    .section3 .hello .encart .partie2 .footer .cta a {
        line-height: 3.2rem;
        font-size: 2.4rem;
    }
}
@-webkit-keyframes XRZWT {
    0% {
        opacity: 0;
        transform: translateY(2rem);
    }
    100% {
        opacity: 1;
        transform: translateY(0px);
    }
}
@keyframes XRZWT {
    0% {
        opacity: 0;
        transform: translateY(2rem);
    }
    100% {
        opacity: 1;
        transform: translateY(0px);
    }
}






/* SECTION 4 */ 
.section4 {
    padding: 4rem 1.6rem;
    margin-bottom: -0.1rem;
}
.section4 .hello .encart {
    margin: 0px auto;
    font-family: Aeonik, sans-serif;
    font-feature-settings: "zero";
}
.section4 .hello .encart .top {
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    align-items: center;
    padding-bottom: 0.8rem;
    border-bottom: 0.05rem solid rgb(110, 110, 110);
    margin-bottom: 2.4rem;
}
.section4 .hello .encart .top h1 {
    color: rgb(225, 225, 225);
    font-family: "Aeonik Mono", sans-serif;
    font-feature-settings: "clig" 0, "liga" 0;
    font-size: 1.4rem;
    line-height: 2rem;
    letter-spacing: 0.15rem;
    font-weight: 500;
    text-transform: uppercase;
    margin: 0px;
}
.section4 .hello .encart .grille {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2.4rem;
}
.section4 .hello .encart .grille a:hover {
    transform: scale(1.015);
}
.section4 .hello .encart .grille .carte1 {
    position: relative;
    display: flex;
    flex-direction: column;
    -webkit-box-pack: justify;
    justify-content: space-between;
    height: 47.8rem;
    width: 100%;
    padding: 3.2rem 2.4rem;
    border-radius: 2.4rem;
    background: linear-gradient(45deg, rgb(25, 25, 25) 5.97%, rgb(64, 22, 160) 29.07%, rgb(29 112 184) 50.48%, rgb(57 168 224) 70.53%, rgb(246, 241, 231) 93.76%);
    transition: all 0.5s ease-in-out 0s;
}
.section4 .hello .encart .grille .carte2:nth-child(2) {
    background-size: 80%;
    background-position: right -100% top 25%;
}
.section4 .hello .encart .grille .carte2 {
    position: relative;
    width: 100%;
    border-radius: 2.4rem;
    padding: 4rem 3rem 4rem 2.4rem;
    overflow: hidden;
    background: url() right -60px top no-repeat, rgb(25, 25, 25);
    transition: all 0.5s ease-in-out 0s;
}
.section4 .hello .encart .grille .carte3:nth-child(3) {
    background-size: 29%;
    background-position: right -1% top 0px;
}
.section4 .hello .encart .grille .carte3 {
    position: relative;
    width: 100%;
    border-radius: 2.4rem;
    padding: 4rem 3rem 4rem 2.4rem;
    overflow: hidden;
    background: url() no-repeat, rgb(25, 25, 25);
    transition: all 0.5s ease-in-out 0s;
}
.section4 .hello .encart .grille .chapeau {
    font-family: "Aeonik Mono", monospace;
    font-weight: 500;
    margin-bottom: 0.8rem;
    text-transform: uppercase;
    color: rgb(255, 255, 255);
    line-height: 2rem;
    letter-spacing: 0.15rem;
}
.section4 .hello .encart .grille .carte2 .chapeau {
    color: #FF4F0B;
}
.section4 .hello .encart .grille .carte3 .chapeau {
    color: #1D8CCC;
}
.section4 .hello .encart .grille .carte1 .titre {
    color: rgb(255, 255, 255);
    cursor: pointer;
    letter-spacing: -0.01rem;
    font-weight: 400;
    margin-bottom: 0px;
    font-family: Aeonik, sans-serif;
    max-width: 29.5rem;
    white-space: break-spaces;
    font-size: 2.4rem;
    line-height: 3.2rem;
}
.section4 .hello .encart .grille .titre::after, .section5 .encart .cta .formu form button::after {
    padding-left: 0.5rem;
    display: inline-block;
    content: "→";
}
.section4 .hello .encart .grille .carte1:hover .titre {
    text-decoration: underline;
}
.section4 .hello .encart .grille .carte1 .listing .ligne  {
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
    -webkit-box-align: baseline;
    align-items: baseline;
    padding-bottom: 1.4rem;
    border-bottom: 0.05rem solid rgba(255, 255, 255, 0.5);
}
.section4 .hello .encart .grille .carte1 .listing .ligne + div {
    margin-top: 1.4rem;
}
.section4 .hello .encart .grille .carte1 .listing .ligne p {
    margin: 0px;
}
.section4 .hello .encart .grille .carte1 .listing .ligne .gauche {
    color: rgb(255, 255, 255);
    font-family: Aeonik, sans-serif;
    font-size: 1.6rem;
    letter-spacing: -0.001rem;
    font-weight: 400;
    line-height: 4rem;
}
.section4 .hello .encart .grille .carte1 .listing .ligne .droite {
    font-family: "Aeonik Mono", sans-serif;
    font-feature-settings: "clig" 0, "liga" 0;
    font-size: 1.4rem;
    line-height: 2rem;
    letter-spacing: 0.15rem;
    font-weight: 500;
    text-transform: uppercase;
    color: rgb(255, 255, 255);
}
.section4 .hello .encart .grille .carte1 .cta {
    font-family: "Aeonik Mono", monospace;
    font-weight: 500;
    text-transform: uppercase;
    color: rgb(180, 155, 252);
    margin: 1.6rem 0px 0px;
    line-height: 2rem;
    letter-spacing: 0.15rem;
}
.section4 .hello .encart .grille .carte2 .titre, .section4 .hello .encart .grille .carte3 .titre {
    color: rgb(255, 255, 255);
    cursor: pointer;
    margin-bottom: 1.6rem;
    font-family: Aeonik, sans-serif;
    letter-spacing: -0.005rem;
    max-width: 29.5rem;
    white-space: break-spaces;
    line-height: 2.8rem;
    font-size: 2rem;
    font-weight: 400;
}
.section4 .hello .encart .grille .carte2:hover .titre, .section4 .hello .encart .grille .carte3:hover .titre {
    text-decoration: underline;
}
.section4 .hello .encart .grille .carte2 .corps, .section4 .hello .encart .grille .carte3 .corps {
    color: rgb(174, 174, 174);
    max-width: 29rem;
    margin-bottom: 0px;
    font-family: Aeonik, sans-serif;
    font-size: 1.6rem;
    letter-spacing: -0.001rem;
    font-weight: 400;
    line-height: 2.2rem;
}
@media screen and (min-width: 900px) {
    .section4 {
        padding: 0px 2rem 8rem;
    }
    .section4 .hello .encart .top {
        margin-bottom: 3.6rem;
        padding-bottom: 1.6rem;
    }
    .section4 .hello .encart .grille {
        grid-template-columns: repeat(2, 1fr);
        grid-template-areas:
            "first second"
            "first third";
    }
    .section4 .hello .encart .grille .carte1 {
        height: 56rem;
        padding: 4rem 2.8rem;
    }
    .section4 .hello .encart .grille > a:nth-child(1) {
        grid-area: first;
    }
    .section4 .hello .encart .grille > a:nth-child(2) {
        grid-area: second;
    }
    .section4 .hello .encart .grille > a:nth-child(3) {
        grid-area: third;
    }
    .section4 .hello .encart .grille .carte2 {
        height: 28.5rem;
        border-radius: 3.2rem;
        padding: 3.2rem 2.8rem;
    }
    .section4 .hello .encart .grille .carte2:nth-child(2) {
        height: 25.1rem;
        background-size: 60%;
        background-position: right -40% top 25%;
    }
    .section4 .hello .encart .grille .carte3 {
        height: 28.5rem;
        border-radius: 3.2rem;
        padding: 3.2rem 2.8rem;
    }
    .section4 .hello .encart .grille .carte3:nth-child(3) {
        background-size: 29%;
        background-position: right -1% top 0px;
    }
    .section4 .hello .encart .grille .carte1 .titre {
        max-width: none;
        font-family: Aeonik, sans-serif;
        font-size: 2rem;
        line-height: 3.2rem;
        letter-spacing: -0.01rem;
        font-weight: 400;
        margin-bottom: 0.8rem;
    }
    .section4 .hello .encart .grille .carte1 .listing .ligne {
        padding-bottom: 0.8rem;
        align-items: flex-end;
    }
    .section4 .hello .encart .grille .carte1 .listing .ligne + div {
        margin-top: 2.4rem;
    }
    .section4 .hello .encart .grille .carte2 .titre, .section4 .hello .encart .grille .carte3 .titre {
        max-width: 25rem;
        font-size: 2rem;
        line-height: 3.2rem;
        letter-spacing: -0.01rem;
        margin-bottom: 0.8rem;
    }
    .section4 .hello .encart .grille .carte2 .corps, .section4 .hello .encart .grille .carte3 .corps {
        max-width: 25rem;
    }
}
@media screen and (min-width: 1200px) {
    .section4 {
        padding: 12rem 0px 0px;
    }
    .section4 .hello .encart {
        max-width: 121.6rem;
    }
    .section4 .hello .encart .top {
        margin-bottom: 6rem;
    }
    .section4 .hello .encart .grille {
        gap: 3.2rem;
    }
    .section4 .hello .encart .grille .carte1 {
        height: 56.2rem;
        border-radius: 2.4rem;
        padding: 4rem;
    }
    .section4 .hello .encart .grille .carte2 {
        padding: 4rem;
        height: 28.5rem;
        border-radius: 2.4rem;
    }
    .section4 .hello .encart .grille .carte2:nth-child(2) {
        background-size: auto 100%;
        background-position: right 0px top 0px;
        background-image: url();
    }
    .section4 .hello .encart .grille .carte3 {
        padding: 4rem;
        height: 28.5rem;
        border-radius: 2.4rem;
    }
    .section4 .hello .encart .grille .carte3:nth-child(3) {
        background-size: 25% 90%;
        background-position: right -5% top 0px;
        background-image: url();
    }
    .section4 .hello .encart .grille .chapeau {
        font-size: 1.4rem;
    }
    .section4 .hello .encart .grille .carte1 .chapeau {
        mix-blend-mode: overlay;
    }
    .section4 .hello .encart .grille .carte1 .titre {
        font-size: 3.2rem;
        line-height: 4.4rem;
        letter-spacing: -0.03rem;
        font-weight: 400;
        max-width: 32rem;
    }
    .section4 .hello .encart .grille .carte1 .listing .ligne + div {
        margin-top: 3.2rem;
    }
    .section4 .hello .encart .grille .carte1 .listing .ligne .gauche {
        font-size: 3.2rem;
        line-height: 4rem;
    }
    .section4 .hello .encart .grille .carte1 .listing .ligne .droite {
        font-family: "Aeonik Mono", sans-serif;
        font-feature-settings: "clig" 0, "liga" 0;
        font-size: 1.4rem;
        line-height: 2rem;
        letter-spacing: 0.15rem;
        font-weight: 500;
    }
    .section4 .hello .encart .grille .carte1 .cta {
        font-weight: 400;
        font-size: 1.4rem;
    }
    .section4 .hello .encart .grille .carte2 .titre, .section4 .hello .encart .grille .carte3 .titre {
        font-size: 2.4rem;
        line-height: 3.6rem;
        letter-spacing: -0.02rem;
        max-width: 40rem;
    }
    .section4 .hello .encart .grille .carte2 .corps, .section4 .hello .encart .grille .carte3 .corps {
        font-size: 1.8rem;
        line-height: 2.8rem;
        letter-spacing: -0.005rem;
        max-width: 40rem;
    }
}



/* SECTION 5 */ 
.section5 {
    padding: 0px 1.6rem 4.8rem;
    margin-bottom: 0px;
}
.section5 .encart {
    margin: 0px auto;
    font-family: Aeonik, sans-serif;
}
.section5 .encart h2 {
    margin: 0px 0px 2.4rem;
    padding: 0px;
    font-style: normal;
    color: rgb(255, 255, 255);
    font-weight: 400;
    letter-spacing: 0px;
    font-size: 3.2rem;
    line-height: 4rem;
    grid-column: unset;
    font-family: Aeonik, sans-serif;
    text-align: center;
}
.section5 .encart .cta {
    width: 100%;
    border-radius: 3.2rem;
}
.section5 .encart .cta form {
    background: none;
}
.section5 .encart .cta .formu {
    width: 100%;
    max-width: 100%;
    margin: 0px auto;
}
.section5 .encart .cta .formu form {
    display: flex;
    flex-direction: column;
    -webkit-box-pack: justify;
    justify-content: space-between;
    width: 100%;
    border-radius: 2.4rem;
}
.section5 .encart .cta .formu p {
    position: absolute;
    font-size: 1.4rem;
    line-height: 2rem;
    text-align: left;
    color: rgb(174, 174, 174);
    font-family: Aeonik, sans-serif;
    font-weight: 400;
    margin: 1.2rem 0px;
}
.section5 .encart .cta .formu form input {
    line-height: 2.4rem;
    letter-spacing: 0.015rem;
    box-shadow: rgb(189, 196, 207) 0px 0px 0px 0.1rem inset;
    background: transparent;
    outline: none;
    border: 0.1rem solid rgb(75, 75, 75);
    font-size: 1.2rem;
    padding: 1.6rem;
    margin-bottom: 1.2rem;
    color: rgb(246, 241, 231);
    border-radius: 0.8rem;
}
.section5 .encart .cta .formu form input, .section5 .encart .cta .formu form input:focus {
    box-shadow: rgb(30, 33, 42) 0px 0px 0px 0.2rem inset;
}
.section5 .encart .cta .formu form button {
    padding: 0.8rem 2.4rem;
    border-radius: 0.8rem;
    font-size: 1.6rem;
    line-height: 3.2rem;
    background: #1f8dcc;
    font-weight: 400;
    color: white;
    border: none;
    transition: background 0.2s ease 0s;
}
@media screen and (min-width: 900px) {
    .section5 {
        padding: 0px 3.6rem 8rem;
    }
    .section5 .encart h2 {
        line-height: 4.8rem;
        text-align: left;
    }
    .section5 .encart .cta .formu {
        margin: 0px;
    }
    .section5 .encart .cta form {
        border: 1px solid rgb(110, 110, 110);
        box-shadow: rgb(201, 202, 206) 0px 0px 0px 0.1rem inset;
        padding: 2.4rem 2.8rem;
    }
    .section5 .encart .cta .formu form {
        padding: 1.6rem;
        flex-direction: row;
        transition: box-shadow 0.2s ease 0s;
        box-shadow: rgb(30, 33, 42) 0px 0px 0px 0.2rem inset !important;
    }
    .section5 .encart .cta .formu p {
        margin: 2.4rem 0px;
    }
    .section5 .encart .cta .formu form input {
        font-size: 1.6rem;
        line-height: 3.2rem;
        width: 27rem;
        margin: 0px;
        text-align: left;
        border-radius: 0.3rem 0px 0px 0.3rem;
        padding: 0.8rem;
    }
    .section5 .encart .cta .formu form input, .section5 .encart .cta .formu form input:focus {
        box-shadow: none;
    }
    .section5 .encart .cta .formu form input {
        border: none;
        width: calc(100% - 27rem);
        padding: 0px 0px 0px 1.2rem;
        font-size: 2.4rem;
        line-height: 2.8rem;
        margin-bottom: 0px;
    }
    .section5 .encart .cta .formu form button {
        display: flex;
        -webkit-box-align: center;
        align-items: center;
        padding: 0.8rem 2.4rem;
        border-radius: 0.8rem;
        font-size: 1.6rem;
        line-height: 3.2rem;
        font-weight: 400;
    }
    .section5 .encart .cta .formu form:focus-within {
        border-color: rgb(174, 174, 174);
    }
}
@media screen and (min-width: 1200px) {
    .section5 {
        padding: 12rem 0px;
    }
    .section5 .encart {
        max-width: 121.6rem;
    }
    .section5 .encart h2 {
        line-height: 7.2rem;
        font-size: 6.4rem;
        margin: 0px 0px 4rem;
    }
    .section5 .encart .cta form {
        padding: 2.4rem 3.2rem;
    }
    .section5 .encart .cta .formu p {
        margin: 2.4rem 0px 0px;
        font-size: 2rem;
        line-height: 2.8rem;
    }
    .section5 .encart .cta .formu form input {
        border: none;
        width: calc(100% - 28rem);
        padding: 0px 0px 0px 1.6rem;
        font-size: 2.4rem;
        line-height: 2.8rem;
    }
    .section5 .encart .cta .formu form button {
        font-size: 2.4rem;
        line-height: 2.8rem;
        padding: 2.4rem 3.6rem;
        border-radius: 1.2rem;
        font-weight: 500;
    }
    .section5 .encart .cta .formu form button:hover {
        background: #39A8DD;
    }
}




/* BAS DU SITE */
.tms-footer {
    background: rgb(17, 17, 17);
    padding-top: 1.2rem;
}

.tms-footer footer {
    width: 100%;
    max-width: 144rem;
    margin: auto;
    font-family: Inter, sans-serif;
}
.tms-footer footer nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: 4.8rem;
    margin: 4.8rem 1.6rem auto;
}
.tms-footer footer nav section p { /* TITRE DOMAINE */
    margin: 0px 0px 1.6rem;
    padding: 0px;
    color: rgb(139, 146, 155);
    font-family: SpaceGrotesk;
    font-style: normal;
    font-size: 1.2rem;
    letter-spacing: 0.12rem;
    line-height: 1.8rem;
    text-transform: uppercase;
    font-weight: 500;
}
.tms-footer footer nav section ul { /* LISTE DOMAINE */
    margin-top: 0;
    list-style: none;
    margin-bottom: 0px;
    padding-left: 0px;
}
.tms-footer footer nav section ul li { /* LIEN DOMAINE */
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 3.2rem;
    letter-spacing: -0.001rem;
    padding-right: 3.2rem;
}
.tms-footer footer nav section ul li a { /* LIEN DOMAINE */
    margin: 0px;
    padding: 0px;
    font-family: Inter;
    font-style: normal;
    font-weight: 500;
    font-size: 1.4rem;
    letter-spacing: 0rem;
    line-height: 2.2rem;
    color: rgb(255, 255, 255);
    cursor: pointer;
    display: inline-flex;
    -webkit-box-align: center;
    align-items: center;
    text-decoration: none;
}
.tms-footer footer nav section ul li a:not([href]):not([class]), .tms-footer footer nav section ul li a:not([href]):not([class]):hover {
    color: rgb(255, 255, 255);
    text-decoration: none;
    cursor: unset;
}
.tms-footer footer nav section ul li a:hover {
    color: #39a8e0;
}
.tms-footer footer nav .rs {
    display: flex;
    flex-direction: column;
}
.tms-footer footer nav .rs div {
    gap: 1.6rem;
    margin-left: 1.6rem;
    display: none;
}
.tms-footer footer nav .rs div a, .tms-footer footer .copyright-mob .rs-mob a {
    height: 2.4rem
}
.tms-footer footer nav .rs div a:hover path, .tms-footer footer .copyright-mob .rs-mob a:hover path {
    fill: #39a8e0;
}

.tms-footer footer .copyright-large {
    display: none;
}
.tms-footer footer .copyright p {
    padding: 0px;
    font-family: Inter;
    font-style: normal;
    font-weight: 400;
    font-size: 1.4rem;
    letter-spacing: 0rem;
    line-height: 2.2rem;
    color: rgb(128, 134, 143);
    margin: 0px;
}
.tms-footer footer .copyright div {
    display: inline-flex;
    -webkit-box-align: center;
    align-items: center;
    font-weight: 500;
    color: rgb(140, 146, 156);
    gap: 0.6rem;
    font-size: 1.2rem;
    line-height: 1.8rem;
    flex: 1 1 0%;
    flex-flow: wrap;
}
.tms-footer footer .copyright div a {
    margin: 0px;
    padding: 0px;
    font-family: Inter;
    font-style: normal;
    font-weight: 500;
    font-size: 1.4rem;
    letter-spacing: 0rem;
    line-height: 2.2rem;
    text-decoration: none;
    cursor: pointer;
    color: rgb(140, 146, 156);
}
.tms-footer footer .copyright div a:hover {
    color: rgb(188, 186, 255);
    cursor: pointer;
    text-decoration: underline solid rgb(233, 232, 255);
}
.tms-footer footer .copyright-mob {
    padding: 2.4rem 0px 0px;
    position: relative;
    margin-top: 4.8rem;
}
.tms-footer footer .copyright-mob .rs-mob {
    display: flex;
    gap: 1.6rem;
    margin-left: 1.6rem;
}
.tms-footer footer .copyright-mob .liens {
    display: flex;
    margin: 2.4rem 1.6rem;
}
.tms-footer footer .copyright-mob p {
    font-family: Inter;
    font-style: normal;
    font-weight: 400;
    font-size: 1.4rem;
    letter-spacing: 0rem;
    line-height: 2.2rem;
    border-top: 0.1rem solid rgb(90, 95, 102);
    padding: 2.4rem 1.6rem;
    color: rgb(128, 134, 143);
    margin: 0px;
}

@media screen and (min-width: 900px) {
    .tms-footer footer nav {
        margin: 6.4rem 2.4rem auto;
    }
    .tms-footer footer nav section p { /* TITRE DOMAINE */
        font-size: 1.4rem;
        letter-spacing: 0.15rem;
        line-height: 2rem;
    }
    .tms-footer footer nav .rs div {
        display: flex;
        margin-left: 0px;
    }
    .tms-footer footer .copyright-large {
        border-top: 0.1rem solid rgb(90, 95, 102);
        display: flex;
        padding: 2.4rem;
        position: relative;
        margin-top: 4.8rem;
    }
    .tms-footer footer .copyright div {
        -webkit-box-pack: end;
        justify-content: flex-end;
    }
    .tms-footer footer .copyright-mob {
        display: none;
    }
}
@media screen and (min-width: 1200px) {
    .tms-footer footer nav {
        grid-template-columns: 1fr 1fr 1fr 1fr;
        grid-template-rows: 1fr 1fr;
        margin: 8rem 11.2rem auto;
        max-width: 121.6rem;
    }
    .tms-footer footer .copyright-large {
        margin-top: 10rem;
    }
    .tms-footer footer .copyright div {
        font-size: 1.4rem;
        line-height: 2.2rem;
    }
}




@-webkit-keyframes cspXan {
    0% {
        -webkit-transform:translateY(2rem);
        -ms-transform:translateY(2rem);
        transform:translateY(2rem);
        opacity:0;
    }
    100% {
        -webkit-transform:translateY(0);
        -ms-transform:translateY(0);
        transform:translateY(0);opacity:1;
    }
}
@keyframes cspXan {
    0% {
        -webkit-transform:translateY(2rem);
        -ms-transform:translateY(2rem);
        transform:translateY(2rem);
        opacity:0;
    }
    100% {
        -webkit-transform:translateY(0);
        -ms-transform:translateY(0);
        transform:translateY(0);
        opacity:1;
    }
}



/* OLDIES */
      .bg-gradiento {
        top: 0;
        height: 100%;
        background-image: linear-gradient(180deg,transparent 36%,rgba(0,0,0,.3) 66%,#000 81%);
      }
.highlight-blue {
    --tw-shadow: inset 0 -.5em 0 0 #1e71b8;
    --tw-shadow-colored: inset 0 -.5em 0 0 #1e71b8;
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);
    letter-spacing: -.02em;line-height: .95;
}
.caret:before {
    background: var(--bs-primary);
    content: "";
    inset: 0.3em auto 0.2em 0;
    position: absolute;
    width: 0.4rem;
    z-index: 1;
    left: -1rem;
}
.caret {
    position: relative;
}












/*@keyframes openerFadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}
.opener-0, .opener-1, .opener-2, .opener-3, .opener-4, .opener-5 {
    opacity: 0;
}
.opener .opener-0, .opener .opener-1, .opener .opener-2, .opener .opener-3, .opener .opener-4, .opener .opener-5 {
    animation: openerFadeIn linear .5s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    opacity: 0;
    transform: translateZ(0);
    will-change: transform;
}
.opener .opener-0 {
    animation-delay: 0;
}
.opener .opener-1 {
    animation-delay: .5s;
}
.opener .opener-2 {
    animation-delay: 1s;
}
.opener .opener-3 {
    animation-delay: 1.5s;
}
.opener .opener-4 {
    animation-delay: 2s;
}
.opener .opener-5 {
    animation-delay: 2.5s;
}
.tms-navbar::after {
    position: absolute;
    inset: 0;
    z-index: -1;
    display: block;
    content: "";
    background-image: linear-gradient(rgba(var(--bs-body-bg-rgb), 1), rgba(var(--bs-body-bg-rgb), 0.65));
    -webkit-backdrop-filter: blur(10px)saturate(1.5);
    backdrop-filter: blur(10px)saturate(1.5);
}*/