@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,200..800&display=swap');

:root {
    --black: #000;
    --lipstick: #e63447;
    --beige: #e8d8c2;
    --warm-grey: #707070;
    --sunset: #FF6F36;
    --green: #2DC48A;
    --chocolate-60: #6D4C44;
    --chocolate-20: #E5C4A5;
    --chocolate: #330C00;
    --sand: #F4EAD7;
    --off-white: #FFF9EB;
}

/* Hero accueil: SP Page Builder injecte un PNG 3x trop large sur la colonne.
   On conserve le SVG lateral porte par .heaD, comme sur le site historique. */
.sp-page-builder .page-content #section-id-1652091061267.heaD {
    background-image: url(/images/2022/06/08/bg-bande-beige-gch.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

.sp-page-builder .page-content #section-id-1652091061267.heaD #column-id-1652091061265 {
    background-image: none !important;
}

@font-face {
    font-family: 'Apfel';
    src: url('../fonts/ApfelGrotezk-Regular.woff2?v=20260702') format('woff2'),
        url('../fonts/ApfelGrotezk-Regular.woff?v=20260702') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'ApfelBold';
    src: url('../fonts/ApfelGrotezk-Fett.woff2?v=20260702') format('woff2'),
        url('../fonts/ApfelGrotezk-Fett.woff?v=20260702') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

/*popup*/
.modal-dialog {
    max-width: 50vw !important;
}

.modal-content {
    padding: 5vh 10vw !important;
    border-radius: 243px !important;
}

.modal-footer,
.modal-header {
    border: none !important
}

button.popup.btn.btn-slipstick {
    border-radius: 40px;
    background-color: var(--lipstick);
    color: white;
    font-family: 'ApfelBold';
    display: flex;
    justify-content: center;
    font-size: 22px;
    padding: 1vh 2vw;
}

.modal-footer {
    justify-content: center !important;
}

h5#psswrdLabel {
    font-family: 'ApfelBold';
    font-size: 55px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 0.96;
    letter-spacing: normal;
    text-align: center;
    color: var(--black);
}

.modal-body p {
    font-family: 'Apfel';
    font-size: 22px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    text-align: center;
    color: var(--black);
}

#column-wrap-id-1652091061265 {
    z-index: 5000;
}

#column-wrap-id-1652091061266 {
    z-index: 0;
}

.txt-lipstick {
    color: var(--lipstick)
}

button.txt-lipstick {
    border: none;
    background-color: transparent;
}

/**/
.fa-quote-left:before {
    content: url(/images/apostrophe.svg);
}

body {
    font-family: 'Apfel';
    background-color: #FFF9EB !important;
}

a.btn {
    font-family: 'ApfelBold';
}

.btn.btn-lipstick:hover {
    background-color: black;
    color: white;
}

.btn.btn-lipstick:focus,
.btn.btn-lipstick:active {
    background-color: white;
    color: black;
    Border-color: black;
}

a.btn.btn-black:hover {
    background: var(--lipstick);
}

a.btn.btn-black:focus,
a.btn.btn-black:active {
    color: var(--lipstick) !important;
    border-color:
        var(--lipstick);
    background: transparent;
}

.br-rnd.bg-white.rond {
    width: 122px;
    height: 122px;
}

div#section-id-1652388650830 h2 {
    text-align: center;
}

#login-form .input-prepend input {
    border-radius: 32px;
    border: solid 2px var(--black);
    background-color: white !important;
}

#sppb-addon-1652388650817 h3 {
    text-align: center;
}

#login-form .input-prepend input::-webkit-input-placeholder {
    font-family: 'ApfelBold';

    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    text-align: left;
    color: var(--black);
}

#form-login-remember {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    align-items: center;
}

#form-login-remember label {
    padding-left: 0.5vw;
}

h1,
h2,
h3,
h4,
.sppb-addon.sppb-addon-animated-number {
    font-family: 'Bricolage Grotesque';
    font-weight: 800 !important;
    line-height: 0.96 !important;
}

.demiBoud.bg-lipstick h2,
.demiBoud.bg-lipstick p {
    color: white;
}

h1 span.text-lined,
h2 span.text-lined {
    -webkit-text-stroke: 1.5px #000;
    color: transparent;
}

.sppb-addon.sppb-addon-animated-number {
    display: flex;
    height: 20vh;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}

.demiBoud {
    border-radius: 260px 0 0 260px;
    background-color: var(--beige);
    display: flex;
    flex-direction: column;
    align-content: center;
    align-items: flex-start;
    justify-content: center;
}

h3 {
    font-size: 22px;
    text-align: center;
}

p,
li {
    font-family: 'Apfel';
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    text-align: center;
    color: var(--black);
}

h3.redBold {
    color: var(--lipstick);
}

p.bunder {
    font-weight: bold;
    text-decoration: underline;
}

.cardrnd {
    padding: 3vh 3vh 9vh;
    border-radius: 180px;
}

.cardrnd img {
    margin-bottom: 4.2vh;
}

.sp-menu-item a.btn.btn-lipstick {
    padding: 1vh 1.5vw;
}

strong {
    font-family: 'ApfelBold';
}

.bg-lipstick {
    background-color: var(--lipstick);
}

button.btn.btn-primary.login-button,
a.btn,
#sp-bottom a.btn,
#sp-header a.btn {
    color: #fff;
    padding: 1.6vh 2.2vw;
    border-radius: 40px;
    font-weight: bold;
    margin: 0 auto;
    display: block;
}



.br-rnd.bg-black {
    color: white;
    text-align: center;
    font-family: 'ApfelBold';
    font-size: 22px;
}

button.btn.btn-primary.login-button {
    border-color: black;
}

.btn.btn-lipstick {
    background-color: var(--lipstick);
    color: #fff !important;
}
}

button.btn.btn-primary.login-button,
.btn.btn-black {
    background-color: black;
}

a.btn.btn-white {
    background-color: white;
    color: black;
}

.site h1 {
    font-size: 41px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 0.96;
    letter-spacing: normal;
    text-align: center;
    color: var(--black);
}

.text-lined {
    -webkit-text-stroke: 1.5px black;
    color: transparent;
}

.site h2 {
    font-size: 41px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 0.96;
    letter-spacing: normal;
    /* text-align: center; */
    color: var(--black);
    margin-bottom: 3vh;
}

.bg-beige {
    background-color: var(--beige);
}

.br-rnd {
    border-radius: 15em;
    padding: 2vh;
    margin-bottom: 2vh;
}

p.price {
    font-family: 'ApfelBold';

    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    text-align: center;
    color: var(--lipstick);
}

p.redBold {
    font-family: 'ApfelBold';
    color: var(--lipstick);
    text-align: center;
}

.progressBar {
    width: 100%;
}

.progressBar--outerWrap {
    display: flex;
    width: 100%;
    min-height: 177px;
    height: 100%;
    margin-bottom: 40px;
    font-family: 'Apfel';
    color: black;
}

.progressBar.timeline,
.progressBar.timeline--horizontal {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 56px;
}

.progressBar.timeline ol,
.progressBar.timeline--horizontal ol {
    margin-block-start: 0;
    margin-block-end: 0;
    width: 100%;
    padding-inline-start: 0;
    display: flex;
    flex-direction: row;
    max-width: fit-content;
}

.progressBar.timeline ol li,
.progressBar.timeline--horizontal ol li {
    list-style: none;
    flex: 0 0 30% !important;
    position: relative;
    border-top: 2px solid #000000;
    line-height: 1.5;
    padding: 2vh;

}

.progressBar.timeline ol li::before,
.progressBar.timeline--horizontal ol li::before {
    content: " ";
    display: flex;
    position: absolute;
    top: -10px;
    height: 18px;
    width: 18px;
    border-radius: 50%;
    background-color: #E63447;
    z-index: 3;
}

.progressBar.timeline ol li span,
.progressBar.timeline--horizontal ol li span {
    color: var(--black);
    display: inline-block;
    font-size: 22px;
    font-weight: normal;
    white-space: break-spaces;
    word-break: break-word;
    font-family: 'ApfelBold';
    line-height: normal;
}

.progressBar.timeline ol li span.subtitle,
.progressBar.timeline--horizontal ol li span.progressBar.timeline ol li span.subtitle,
.progressBar.timeline--horizontal ol li span.subtitle {
    font-family: 'Apfel';
}

.progressBar.timeline ol li.completed::after,
.progressBar.timeline--horizontal ol li.completed::after {
    background-color: #ff6347;
}

.progressBar.timeline ol li.active::before,
.progressBar.timeline--horizontal ol li.active::before,
.progressBar.timeline ol li.completed::before,
.progressBar.timeline--horizontal ol li.completed::before {
    content: " ";
    display: flex;
    justify-content: center;
    align-items: center;
    /* width: 100%; */
    position: absolute;
    /* bottom: -2px; */
    left: -50%;
    z-index: 4;
    border-bottom: 2px solid #ff6347;
}

.progressBar.timeline ol li.active::before,
.progressBar.timeline--horizontal ol li.active::before {
    background-color: #fff;
    border: 2px solid #ff6347;
}

.progressBar.timeline ol li:first-child,
.progressBar.timeline--horizontal ol li:first-child,
.progressBar.timeline ol li:last-child,
.progressBar.timeline--horizontal ol li:last-child {
    flex: 1;
}

.progressBar.timeline ol li:first-child,
.progressBar.timeline--horizontal ol li:first-child {
    text-align: start;
}

.progressBar.timeline ol li:first-child::before,
.progressBar.timeline--horizontal ol li:first-child::before {
    left: 0;
}

.progressBar.timeline ol li:first-child.completed:after,
.progressBar.timeline--horizontal ol li:first-child.completed:after,
.progressBar.timeline ol li:first-child.active:after,
.progressBar.timeline--horizontal ol li:first-child.active:after {
    width: 0;
    border-top: 2px solid #a9b2c3;
}

.progressBar.timeline ol li:last-child,
.progressBar.timeline--horizontal ol li:last-child {
    text-align: end;
    flex: 0 !important;
}

.progressBar.timeline ol li:last-child::before,
.progressBar.timeline--horizontal ol li:last-child::before {
    left: 91%;
    display: inline-block;
    height: 0;
    width: 0;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-left: 20px solid #E63447;
    border-radius: unset;
    background: transparent;
    /* content: '/f04b'; */
    /* font-family: 'FontAwesome'; */
    top: -1.6vh;
}

.progressBar.timeline ol li:last-child.active::after,
.progressBar.timeline--horizontal ol li:last-child.active::after,
.progressBar.timeline ol li:last-child.completed::after,
.progressBar.timeline--horizontal ol li:last-child.completed::after {
    left: -100%;
    width: 200%;
}

.progressBar.timeline--vertical {
    display: flex;
    padding: 5px;
    justify-content: center;
    align-items: center;
}

.progressBar.timeline--vertical ol {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    margin-block-start: 0;
    margin-block-end: 0;
    padding-inline-start: 0;
}

.progressBar.timeline--vertical ol li {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    list-style: none;
    flex: 2;
    position: relative;
    border-left: 2px solid #000000;
    line-height: 1.5;
    padding-left: 28px;
    min-height: 96px;
}

.progressBar.timeline--vertical ol li::before {
    content: " ";
    display: flex;
    position: absolute;
    height: 18px;
    width: 18px;
    border-radius: 50%;
    background-color: var(--lipstick);
    bottom: 50%;
    left: -9px;
    z-index: 3;
}

.progressBar.timeline--vertical ol li span.title {
    color: #000000;
}

.progressBar.timeline--vertical ol li.completed:hover::before,
.progressBar.timeline--vertical ol li.active:hover::before {
    transform: scale(1.1);
}

.progressBar.timeline--vertical ol li.completed::after,
.progressBar.timeline--vertical ol li.active::after {
    content: " ";
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    left: -2px;
    top: -50%;
    position: absolute;
    z-index: 2;
    border-left: 2px solid #ff6347;
}

.progressBar.timeline--vertical ol li.completed::before {
    background-color: #ff6347;
}

.progressBar.timeline--vertical ol li.active::before {
    background-color: #fff;
    border: 2px solid #ff6347;
}

.progressBar.timeline--vertical ol li:first-child,
.progressBar.timeline--vertical ol li:last-child {
    flex: 1;
    min-height: 48px;
}

.progressBar.timeline--vertical ol li:first-child {
    justify-content: flex-start;
    vertical-align: text-top;
}

.progressBar.timeline--vertical ol li:first-child::before {
    top: 0;
}

.progressBar.timeline--vertical ol li:first-child.completed:after,
.progressBar.timeline--vertical ol li:first-child.active:after {
    top: 0;
    width: 0;
    border-left: 2px solid #a9b2c3;
}

.progressBar.timeline--vertical ol li:last-child {
    justify-content: flex-end;
}

.progressBar.timeline--vertical ol li:last-child::before {
    bottom: 0;
}

.progressBar.timeline--vertical ol li:last-child.active:hover::before,
.progressBar.timeline--vertical ol li:last-child.completed:hover::before {
    transform: scale(1.1);
}

.progressBar.timeline--vertical ol li:last-child.active::after,
.progressBar.timeline--vertical ol li:last-child.completed::after {
    left: -2px;
    height: 200%;
    top: -100%;
}

/* HP Chiffres*/
.col-rev .sppb-addon-content {
    flex-flow: column-reverse;
    display: flex;
}

.hp-nbr .sppb-addon-animated-number .sppb-addon-content .sppb-animated-number-title {
    margin-top: 0;
    line-height: normal !important;
}

div#column-id-1652388650839 .sppb-column-addons>div {
    flex: 0 0 33%;
}

a.btn.btn-beige.doc {
    border-radius: 150px;
    background-color: var(--beige);
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    font-family: 'ApfelBold';
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    text-align: left;
    color: var(--black);
    padding: 4vh 1vw 4vh 4vw;
    width: 100%;
}

a.btn.btn-beige.doc img {
    margin-right: 2vw;
}

ul.menu.userMenu a {
    font-family: 'ApfelBold';

    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    text-align: left;
    color: var(--black);
    text-decoration: none;
    line-height: 5vh;
}

ul.menu.userMenu {
    list-style-type: none;
}

ul.menu.userMenu li.current.active a {
    color: var(--lipstick)
}

/*Small devices (landscape phones, 576px and up)*/
@media only screen and (min-width: 375px) {
    .bg-mob-beige {
        background-color: var(--beige);
    }

    p {
        font-size: 18px;
    }

    #column-id-1652091061265 {
        background-image: none;
    }

    .sppb-carousel-extended-item {
        border: 2px solid black;
        padding: 3vh;
        margin: auto;
        float: none;
        color: black;
        min-height: 459px;
    }

    .sppb-testimonial-carousel-item-content>div,
    .sppb-testimonial-carousel-icon i {
        color: black !important;
        font-family: 'Apfel';
    }

    span.prev-control.nav-control i::before {
        margin-right: 5vw
    }

    span.next-control.nav-control i::before {
        margin-left: 5vw;
    }

    #sp-bottom,
    #sp-bottom img {
        text-align: center;
        margin: auto auto;
    }

    #sp-bottom2 ul.menu a {
        font-family: 'Apfel';
        font-size: 18px;
        font-weight: normal;
        font-stretch: normal;
        font-style: normal;
        line-height: 2.5;
        letter-spacing: normal;
        text-align: center;
        color: var(--black);
        text-decoration: unset;
    }

    #sp-bottom2 ul.menu a.btn.btn-lipstick {
        color: white;
        font-family: 'ApfelBold'
    }

    a .burger-icon span {
        background-color: var(--lipstick);
    }

    #sp-header {
        height: 136px;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-content: center;
        align-items: center;
        justify-content: space-between;
    }

    #sp-header .row {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-content: center;
        align-items: center;
        justify-content: space-around;
    }
}

/*Medium devices (tablets, 768px and up)*/
@media only screen and (min-width: 768px) {
    .bg-mob-beige {
        background-color: revert;
    }

    .heaD {
        background-image: url(/images/2022/06/08/bg-bande-beige-gch.svg);
        background-repeat: no-repeat;
        background-size: contain;
    }

    .heaD.hgbg {
        background-image: url(/images/bg/bg-bg-beige-haut.svg);
        background-size: auto;
        background-repeat: no-repeat;
    }

    .ctrbg {
        background-image: url(/images/bg/etoile-time.webp), url(/images/bg/bg-bg-beige-center.svg);
        background-size: 13%, auto;
        background-repeat: no-repeat, repeat;
        background-position: bottom right, initial;
    }

    .btbg {
        background-image: url(/images/bg/bg-bg-beige-bas.svg);
        background-size: auto;
        background-repeat: no-repeat;
    }

    p {
        text-align: left;
    }

    #sp-bottom,
    #sp-bottom img {
        text-align: left;
        margin: revert
    }

    #sp-bottom2 ul.menu a {
        font-family: 'Apfel';
        font-size: 22px;
        font-weight: normal;
        font-stretch: normal;
        font-style: normal;
        line-height: 1.5;
        letter-spacing: normal;
        text-align: left;
        color: var(--black);
    }

    a.btn,
    #sp-bottom a.btn,
    #sp-header a.btn {
        width: fit-content;
        margin: unset;
    }

}

/* Large devices (desktops, 992px and up)*/
@media only screen and (min-width: 992px) {

    a.btn,
    #sp-bottom a.btn,
    #sp-header a.btn {
        font-size: 19px;
    }

    .star-com {
        background-image: url(/images/bg/etoile-communication.webp);
        background-position: bottom right;
        background-repeat: no-repeat;
        background-size: 216px 172px;
    }

    .star-vision {
        background-image: url(/images/bg/etoile-vision-apprentissage.webp);
        background-position: bottom left;
        background-repeat: no-repeat;
        background-size: 210px 195px;
    }

    .star-client {
        background-image: url(/images/bg/etoile-avis-clients.webp);
        background-position: bottom left;
        background-repeat: no-repeat;
        background-size: 216px 189px;
    }

    .star-format {
        background-image: url(/images/bg/etoile-bas-gauche.webp), url(/images/bg/etoile-haut-droite.webp);
        background-position: bottom left, top right;
        background-repeat: no-repeat;
        background-size: 643px 350px, 400px 357px;
    }

    .pachi {
        background-image: url(/images/bg/etoile-chiffres.webp);
        background-position: bottom right;
        background-repeat: no-repeat;
        background-size: 235px 199px;
    }

    .br-rnd.bg-beige img {
        padding-right: 12px;
    }

    h3 {
        font-size: larger !important;
    }

    .markT {
        margin: auto;
        font-size: 17px;
        padding-left: 1vw;
    }

    p.price {
        font-size: 18px;
        text-align: left;
    }


    .sp-page-builder .page-content #section-id-1652388650830 {
        padding: 50px 6vw;
    }

    h3.redBold,
    p.redBold {
        text-align: left;
    }

    .h3,
    h3 {
        text-align: left;
    }

    .sp-megamenu-parent>li>a {
        line-height: revert;
        text-decoration: none;
        font-family: 'ApfelBold';
        font-size: 18px;
    }

    ul.menu.userMenu a {
        font-size: 15px;
    }

    a.btn.btn-beige.doc {
        font-size: 26px;
    }

    button.btn.btn-primary.login-button {
        margin: 0;
    }

    #login-form .input-prepend input::-webkit-input-placeholder {
        font-size: 22px;
    }

    p,
    li,
    h1,
    h2,
    h3 {
        text-align: left
    }

    .cours .sppb-tab-pane .sppb-addon-content {
        margin-top: 10vh;
        font-size: 18px;
    }

    .pachi .sppb-addon-animated-number .sppb-addon-content .sppb-animated-number-title {
        line-height: normal;
        padding: 0 2vw;
    }

    .mt100 {
        margin-top: 10vh;
    }

    #sp-bottom {
        padding: 75px 140px !important;
    }

    .qsn .demiBoud {
        height: 401px
    }

    .cours .demiBoud {
        height: 376px;
    }

    .demiBoud {
        padding-left: 11vw;
    }
}

/* X-Large devices (large desktops, 1200px and up)*/
@media only screen and (min-width: 1200px) {
    .hp img.sppb-img-responsive {
        width: auto;
        height: 451px;
    }

    .hp .demiBoud {
        height: 451px;
    }

    .progressBar.timeline ol li:first-child {
        padding-left: 0;
    }



    .form-tab h3 {
        margin-bottom: 5vh;
    }

    #sppb-addon-1652454024431 .sppb-nav-pills>li.active>a,
    #sppb-addon-1652454024431 .sppb-nav-pills>li.active>a:hover,
    #sppb-addon-1652454024431 .sppb-nav-pills>li>a:hover,
    #sppb-addon-1652454024431 .sppb-nav-pills>li.active>a:focus {
        background-color: black;
        color: white;
    }

    ul.sppb-nav.sppb-nav-pills {
        width: 100%;
        display: flex;
        justify-content: space-between;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
    }

    .form-tab .tab-img-or-icon-block-wrap {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-content: center;
        justify-content: center;
        align-items: center;
        background-color: var(--lipstick);
        padding: 15px;
        border-radius: 120px;
        /* width: 16vw; */
        /* height: 25vh; */
        text-align: center;
        line-height: normal;
        font-size: 20px;
        text-decoration: none;
    }

    .form-tab .tab-img-or-icon-block-wrap img {
        margin-bottom: 2vh;
    }

    ul.sppb-nav.sppb-nav-pills:first-child li a {
        margin-left: 0
    }

    ul.sppb-nav.sppb-nav-pills:last-child li a {
        margin-right: 0
    }
}

/*XX-Large devices (larger desktops, 1400px and up)*/
@media only screen and (min-width: 1400px) {
    #sp-header .container {
        max-width: 93vw;
    }

    #sp-header .row {
        display: flex;
        flex-direction: row;
        align-content: center;
        justify-content: space-between;
        align-items: center;
    }

    #sp-header {
        box-shadow: none;
    }

    #sp-menu {
        height: auto;
    }

    .sp-megamenu-parent>li>a {
        line-height: revert;
        text-decoration: none;
        font-family: 'ApfelBold';
        font-size: 22px;
    }

    .site h1 {
        font-size: 44px;
        text-align: left;
        line-height: initial;
    }

    .site h2 {
        font-size: 40px;
        text-align:
            left;
        padding-right: 1vw;
    }

}

@media only screen and (min-width: 1601px) {
    .cours .demiBoud {
        height: 503px;
    }

    .sp-page-builder .page-content #section-id-1652388650830 {
        padding-top: 47px;
        padding-right: 350px;
        padding-bottom: 155px;
        padding-left: 350px;
        margin-top: 0;
        margin-right: 0;
        margin-bottom: 0;
        margin-left: 0;
        background-color: #000000;
        box-shadow: 0 0 0 0 #ffffff;
    }

    .sp-megamenu-parent>li>a {
        line-height: revert;
        text-decoration: none;
        font-family: 'ApfelBold';
        font-size: 22px;
    }

    .site h1 {
        font-size: 55px;
        text-align: left;
    }

    .site h2 {
        font-size: 55px;
        text-align: left;
    }

    h3 {
        font-size: 26px;
    }

    p.price {
        font-size: 26px;
        text-align: left;
    }

    .markT {
        margin: auto;
        font-size: 18px;
        padding-left: 1vw;
    }

    .hp .demiBoud {
        height: 605px;
    }

    .hp img.sppb-img-responsive {
        width: auto;
        height: 605px;
    }

    div#column-id-1652199781501 {
        padding-right: 14vw;
    }

    .form-tab .tab-img-or-icon-block-wrap {
        width: -webkit-fill-available;
        height: 100px;
    }
}

/* NEW DA */
.new .btn {
    padding: 13px 30px;
    display: flex;
    justify-content: center;
}

.new .btn.btn-white {
    background-color: var(--off-white);
    color: var(--chocolate) !important;
}

.new .btn.btn-white:hover {
    background-color: var(--chocolate);
    color: var(--off-white) !important;
}

.new .btn.btn-lipstick {
    border: 1px solid var(--sunset);
    background-color: transparent;
    color: var(--chocolate) !important;
}

.new .btn.btn-lipstick:hover {
    border: 1px solid var(--sunset);
    background-color: var(--sunset);
    color: var(--off-white) !important;
}

.new .btn.btn-black,
button.btn.btn-primary.login-button {
    background-color: var(--chocolate);
    color: var(--off-white) !important;
}

.new .btn.btn-black:hover,
button.btn.btn-primary.login-button:hover {
    background-color: var(--sunset);
    color: var(--off-white) !important;
}

button.btn.btn-primary.login-button,
button.btn.btn-primary.login-button:hover {
    border: none !important;
}

.chocolate,
.sp-megamenu-parent>li>a,
.site h1,
.site h2,
.cardrnd h3,
p,
li,
.br-rnd h3,
p.price,
.br-rnd.bg-beige .sppb-animated-number-title,
.sppb-carousel-extended-item,
.sppb-testimonial-carousel-name,
.sppb-testimonial-carousel-item-content>div,
.sppb-testimonial-carousel-designation,
.fa-angle-left:before,
.fa-angle-right:before,
#sp-footer a:not(.btn),
#sp-bottom a:not(.btn),
.bg-off-white .sppb-animated-number-title {
    color: var(--chocolate) !important;
}

.sunset,
p.redBold,
p.price,
.br-rnd.bg-beige .sppb-animated-number,
.br-rnd.bg-black .sppb-animated-number,
#sp-footer a:hover:not(.btn),
#sp-footer a:active:not(.btn),
#sp-footer a:focus:not(.btn),
#sp-bottom a:hover:not(.btn),
#sp-bottom a:active:not(.btn),
#sp-bottom a:focus:not(.btn),
h3.redBold,
.redBold {
    color: var(--sunset) !important;
}

.br-rnd.bg-lipstick .sppb-animated-number-title,
.br-rnd.bg-black .sppb-animated-number-title,
.demiBoud.bg-lipstick h2,
.pachi h2 {
    color: var(--off-white) !important;
}

.br-rnd.bg-lipstick .sppb-animated-number {
    color: var(--off-white) !important;
}

.bg-beige,
.demiBoud,
#sp-footer, 
#sp-bottom,
.star-vision {
    background-color: var(--sand) !important;
}

.bg-black {
    background-color: var(--chocolate) !important;
    color: var(--off-white) !important;
}

.bg-lipstick,
.demiBoud.bg-lipstick {
    background-color: var(--sunset) !important;
}

.bg-off-white {
    background-color: var(--off-white) !important;
}

h1 span.text-lined, 
h2 span.text-lined {
    -webkit-text-stroke: 1.5px var(--chocolate);
}

.sppb-carousel-extended-item {
    border-color: var(--sand);
    padding: 40px;
    border-radius: 10px;
}

.fa-quote-left:before {
    content: url(/images/new-da/apostrophe.svg);
}

.sp-page-builder .page-content #section-id-1652388650830 {
    background-color: var(--chocolate);
}

.pachi .sppb-animated-number,
.txt-lipstick {
    color: var(--sunset) !important;
}

.sppb-carousel-extended-dots ul li {
    border: 1px solid var(--chocolate) !important;
    border-radius: 50% !important;
    background-color: transparent !important;
}

.sppb-carousel-extended-dots ul li.active span {
    background-color: var(--chocolate) !important;
}

body.ltr.offcanvs-position-right.offcanvas-active .offcanvas-menu {
    width: 100%;
}

.offcanvas-menu.border-menu .offcanvas-inner ul.menu>li>a {
    line-height: revert;
    text-decoration: none;
    font-family: 'ApfelBold';
    font-size: 18px;
    color: var(--chocolate);
    opacity: 1;
}

.offcanvas-menu.border-menu .offcanvas-inner ul.menu>li {
    border: none;
    margin-bottom: 20px;
}

.star-com {
    background-image: url(/images/new-da/etoile-communication.png);
    background-position: bottom right;
    background-repeat: no-repeat;
    background-size: 216px 172px;
}

.star-vision {
    background-image: url(/images/new-da/etoile-vision-apprentissage.png);
    background-position: bottom left;
    background-repeat: no-repeat;
    background-size: 210px 195px;
}

.star-client {
    background-image: url(/images/new-da/etoile-vision-apprentissage.png);
    background-position: bottom left;
    background-repeat: no-repeat;
    background-size: 216px 189px;
}

.pachi {
    background-image: url(/images/new-da/etoile-chiffres.png);
    background-position: bottom right;
    background-repeat: no-repeat;
    background-size: 235px 199px;
}

.sppb-nav-pills > li.active > a {
    background-color: var(--sand) !important;
    color: var(--chocolate) !important;
}

.sppb-nav-pills > li > a {
    background-color: var(--sunset) !important;
    color: var(--off-white) !important;
    font-weight: 500;
}

.bg-lipstick p {
    color: var(--off-white) !important;
}

.sppb-panel.sppb-panel-custom {
    border: none !important;
    background-color: transparent !important;
}

button.sppb-reset-button-styles {
    text-align: center;
    padding: 13px 20px;
    border-radius: 25px;
    color: var(--off-white);
    background-color: var(--sunset);
    border: none !important;
}

.sppb-panel-custom .sppb-panel-body {
    border: none !important
}

.sppb-panel-custom .sppb-panel-body li {
    list-style: none;
}

.sppb-panel-title {
    font-family: 'ApfelBold';
    font-size: 18px;
}

button.sppb-reset-button-styles.active {
    background-color: var(--sand);
    color: var(--chocolate);
}

.progressBar.timeline ol li, .progressBar.timeline--horizontal ol li {
    border-top: 2px solid var(--chocolate);
}

.progressBar.timeline ol li::before, .progressBar.timeline--horizontal ol li::before {
    background-color: var(--sunset);
}

.progressBar.timeline ol li *,
#form-login-remember label {
    color: var(--chocolate) !important;
}

.progressBar.timeline ol li:last-child::before, .progressBar.timeline--horizontal ol li:last-child::before {
    border-left-color: var(--sunset);
}

input, select, textarea,
#login-form .input-prepend input {
    padding: 15px 23px !important;
    height: 60px !important;
    border-radius: 32px !important;
    border: 1px solid var(--sunset) !important;
    background-color: transparent !important;
}

label {
    font-family: 'Apfel';
    font-size: 18px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.22;
    letter-spacing: normal;
    text-align: left;
}

textarea {
    height: revert !important;
}

input:focus, select:focus, textarea:focus {
    box-shadow: none !important;
}

input::placeholder, select::placeholder, textarea::placeholder,
label#rgpdContact0-lbl,
#rsform_3_page_0 select,
#login-form .input-prepend input::placeholder,
ul.menu.userMenu li.current a {
    color: var(--chocolate) !important;
}

input#rgpdContact0,
#login-form .checkbox input {
    padding: 0 !important;
    height: 15px !important;
    border: 1px solid var(--chocolate) !important;
    background-color: transparent !important;
    border-radius: 50% !important;
}

label#rgpdContact0-lbl a,
ul.menu.userMenu li.current.active a {
    color: var(--sunset) !important;
}

.form-select {
    background-image: url(/images/new-da/arrow.svg) !important;
    background-size: 25px !important;
    background-position: center right 20px !important;
}

@media only screen and (min-width: 768px) {
    .new .heaD {
        background-image: none;
    }

    p {
        text-align: center;
    }
}

@media (max-width: 991px) {
    h2 {
        text-align: center;
    }

    .methode li {
        list-style: none;
    }

    .offset-md-1,
    .offset-md-2,
    .offset-md-3,
    .offset-md-4 {
        margin-left: 0 !important;
    }

    .sppb-carousel-extended-item {
        min-height: 693px;
    }

    .new .btn {
        width: 100%;
    }

    .sppb-addon.sppb-addon-module.offset-md-2.col-md-7 {
        width: 100%;
    }

    .progressBar.timeline ol li:last-child::before, .progressBar.timeline--horizontal ol li:last-child::before {
        transform: rotate(90deg);
    }    

    .progressBar.timeline ol, .progressBar.timeline--horizontal ol {
        flex-direction: column !important;
    }

    .progressBar.timeline ol li::before, .progressBar.timeline--horizontal ol li::before {
        top: 0;
        left: -10px !important;
    }

    .progressBar.timeline ol li:last-child {
        padding: 0;
    }

    .progressBar.timeline ol li, .progressBar.timeline--horizontal ol li {
        border-top: none;
        border-left: 2px solid var(--chocolate);
        text-align: left;
        padding: 0 0 40px 40px;
    }

    .bg-sand-tab {
        background-color: var(--sand);
    }

    .bg-sunset-tab {
        background-color: var(--sunset);
    }

    #sp-bottom, #sp-bottom img {
        text-align: center;
        margin: auto auto;
    }

    #sp-footer1 .d-flex {
        flex-direction: column !important;
        gap: 5px;
    }

    #sp-footer1 a.d-flex {
        gap: 10px;
    }
}

@media (max-width: 430px) {
    .sppb-carousel-extended-item {
        min-height: auto;
    }
}

@media (max-width: 767px) {
    .no-star-mob {
        background-image: none;
    }
}

@media only screen and (min-width: 992px) {
    .new .heaD {
        background-image: url(/images/new-da/bg-bande-beige-gch.svg);
    }

    .espa.new .heaD {
        margin-bottom: 50px !important;
        background-image: none !important;
    }

    .qsn .demiBoud {
        height: 470px;
    }

    .meth.new #sp-main-body {
        background-image: url(/images/new-da/bg-meth.png);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: top center;
    }

    .cont.new #sp-main-body {
        background-image: url(/images/new-da/bg-contact-droite.webp), url(/images/new-da/bg-contact-gauche.svg);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: top right, top left;
        margin-bottom: 100px;
    }

    .espa.new #sp-main-body {
        background-image: url(/images/new-da/espace-client.png), url(/images/new-da/bg-bande-beige-gch.svg);
        background-repeat: no-repeat;
        background-size: auto 700px , auto 700px;
        background-position: top right, top left;
        margin-bottom: 100px;
    }

    .espa.new.inside #sp-main-body {
        background-image: url(/images/new-da/bg-bande-beige-gch-espace.svg);
        background-repeat: no-repeat;
        background-size: auto;
        background-position: top left;
        margin-bottom: 100px;
    }

    ul.sppb-nav.sppb-nav-pills {
        gap: 10px;
    }

    .star-format {
        background-image: url(/images/new-da/etoile-bas-gauche.png), url(/images/new-da/etoile-haut-droite.png);
        background-position: bottom left, top right;
        background-repeat: no-repeat;
        background-size: 643px 350px, 400px 357px;
    }
    
    .img-100 #column-wrap-id-1652388488711 {
        max-width: 50%;
        flex-basis: 50%;
    }

    p {
        text-align: left;
    }
}

/* Joomla 6 login module compatibility for the legacy Espace Formation design. */
.espa.new .mod-login .input-group {
    display: block;
}

.espa.new .mod-login .input-group-text,
.espa.new .mod-login .input-password-toggle,
.espa.new .mod-login .plg_system_webauthn_login_button,
.espa.new .mod-login__options li:nth-child(2) {
    display: none !important;
}

.espa.new .mod-login .form-control {
    width: 100% !important;
    height: auto !important;
    padding: 18px 32px !important;
    border: 1px solid var(--sunset) !important;
    border-radius: 150px !important;
    background: transparent !important;
    color: var(--chocolate) !important;
    font-family: 'ApfelBold', sans-serif !important;
    font-size: 18px !important;
    box-shadow: none !important;
}

.espa.new .mod-login .form-control::placeholder {
    color: var(--chocolate) !important;
    opacity: 1 !important;
}

.espa.new .mod-login .form-group {
    margin-bottom: 16px;
}

.espa.new .mod-login .form-check {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-left: 0;
}

.espa.new .mod-login .form-check-input {
    position: static;
    width: 14px;
    height: 14px;
    margin: 0;
    border: 1px solid var(--chocolate);
    border-radius: 2px;
    background-color: transparent;
}

.espa.new .mod-login .form-check-label {
    color: var(--chocolate);
    font-family: 'Apfel', sans-serif;
    font-size: 0;
}

.espa.new .mod-login .form-check-label::after {
    content: 'Se souvenir de moi';
    font-size: 18px;
}

.espa.new .mod-login button[type='submit'].btn-primary {
    width: auto !important;
    min-width: 170px;
    padding: 18px 42px !important;
    border: 0 !important;
    border-radius: 150px !important;
    background-color: var(--chocolate) !important;
    color: var(--off-white) !important;
    font-family: 'ApfelBold', sans-serif !important;
    font-size: 0 !important;
    line-height: 1.2 !important;
}

.espa.new .mod-login button[type='submit'].btn-primary::after {
    content: 'Me connecter';
    font-size: 18px;
}

.espa.new .mod-login__options {
    margin-top: 20px;
}

.espa.new .mod-login__options a {
    color: var(--sunset) !important;
    font-family: 'Apfel', sans-serif;
    font-size: 18px;
    text-decoration: none;
}

.espa.new .mod-login__options a::before {
    content: 'i';
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    margin-right: 8px;
    border: 2px solid var(--sunset);
    border-radius: 50%;
    color: var(--sunset);
    font-family: 'ApfelBold', sans-serif;
}

@media (max-width: 767.98px) {
    .espa.new .mod-login button[type='submit'].btn-primary {
        width: 100% !important;
    }
}

/* WESA migration: align formation stat pills and remove CTA image gutter */
.cours.new .sppb-addon-animated-number.br-rnd .sppb-addon-content {
    margin-top: 0 !important;
    min-height: 100%;
    width: 100%;
    display: flex !important;
    flex-direction: column-reverse;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.cours.new .sppb-addon-animated-number.br-rnd .sppb-animated-number-title {
    line-height: 1.1 !important;
}

.cours.new .sppb-addon-animated-number.br-rnd .sppb-animated-number {
    line-height: 1 !important;
}

.cours.new #section-id-1655284961874 #column-id-1655284961876 {
    padding-left: 0 !important;
}

.cours.new #section-id-1655284961874 #column-id-1655284961876 > .sppb-column-addons,
.cours.new #section-id-1655284961874 .sppb-addon-single-image,
.cours.new #section-id-1655284961874 .sppb-addon-content,
.cours.new #section-id-1655284961874 .sppb-addon-single-image-container,
.cours.new #section-id-1655284961874 .sppb-img-responsive {
    width: 100% !important;
}

.cours.new #section-id-1655284961874 .sppb-img-responsive {
    display: block;
}

.cours.new #section-id-1655284961874 .sppb-addon-single-image,
.cours.new #section-id-1655284961874 .sppb-addon-content,
.cours.new #section-id-1655284961874 .sppb-addon-single-image-container {
    line-height: 0 !important;
}

.cours.new #section-id-1655284961874 #column-id-1655284961874 .sppb-addon-content,
.cours.new #section-id-1655284961874 #column-id-1655284961874 .demiBoud,
.cours.new #section-id-1655284961874 #column-id-1655284961874 .demiBoud p,
.cours.new #section-id-1655284961874 #column-id-1655284961874 .demiBoud a {
    line-height: normal !important;
}

.cours.new #section-id-1655284961874 #column-id-1655284961874 .demiBoud h2 {
    line-height: 0.96 !important;
}

.cours.new #section-id-1655284961874 #column-id-1655284961876 .sppb-addon-single-image,
.cours.new #section-id-1655284961874 #column-id-1655284961876 .sppb-addon-content,
.cours.new #section-id-1655284961874 #column-id-1655284961876 .sppb-addon-single-image-container {
    line-height: 0 !important;
}

/* WESA migration: Joomla native user pages */
body.com_users #sp-main-body {
    padding-top: 64px;
    padding-bottom: 72px;
}

body.com_users #sp-main-body .container {
    max-width: 980px;
}

body.com_users .com-users-login,
body.com_users .com-users-remind,
body.com_users .com-users-reset,
body.com_users .com-users-profile {
    color: var(--chocolate);
}

body.com_users .com-users-login__form {
    max-width: 440px;
    margin: 0 auto;
}

body.com_users .com-users-remind__form,
body.com_users .com-users-reset__form {
    max-width: 900px;
    margin: 0 auto;
}

body.com_users fieldset,
body.com_users legend {
    color: var(--chocolate);
}

body.com_users legend {
    font-family: 'ApfelBold';
    font-size: 18px;
    line-height: 1.35;
    margin-bottom: 22px;
}

body.com_users label,
body.com_users .form-check-label {
    color: var(--chocolate);
    font-family: 'ApfelBold';
}

body.com_users .form-control {
    border: 1px solid var(--sunset) !important;
    border-radius: 32px !important;
    background-color: transparent !important;
    color: var(--chocolate) !important;
    min-height: 52px;
    box-shadow: none !important;
}

body.com_users .form-control:focus {
    border-color: var(--chocolate) !important;
    box-shadow: 0 0 0 3px rgba(255, 111, 54, 0.16) !important;
}

body.com_users .input-password-toggle,
body.com_users .plg_system_webauthn_login_button {
    display: none !important;
}

body.com_users #password {
    width: 100% !important;
    border-radius: 32px !important;
}

body.com_users .form-check-input,
body.com_users input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    padding: 0 !important;
    margin: 3px 10px 0 0 !important;
    border-radius: 4px !important;
    border: 1px solid var(--sunset) !important;
    background-color: transparent !important;
}

body.com_users .com-users-login__remember {
    display: flex;
    align-items: center;
    margin-top: 4px;
}

body.com_users .btn-primary,
body.com_users button.validate {
    background-color: var(--chocolate) !important;
    border-color: var(--chocolate) !important;
    color: var(--off-white) !important;
    border-radius: 40px !important;
    font-family: 'ApfelBold';
    min-height: 52px;
    padding: 13px 30px !important;
    box-shadow: none !important;
}

body.com_users .btn-primary:hover,
body.com_users .btn-primary:focus,
body.com_users button.validate:hover,
body.com_users button.validate:focus {
    background-color: var(--sunset) !important;
    border-color: var(--sunset) !important;
    color: var(--off-white) !important;
}

body.com_users .com-users-login__options ul,
body.com_users .com-users-login__options li {
    list-style: none;
    padding-left: 0;
    margin-left: 0;
}

body.com_users .com-users-login__options a {
    color: var(--sunset) !important;
    font-family: 'ApfelBold';
    text-decoration: none;
}

body.com_users.view-remind .control-group,
body.com_users.view-reset .control-group {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    align-items: center;
    column-gap: 30px;
}

body.com_users.view-remind .com-users-remind__submit,
body.com_users.view-reset .com-users-reset__submit {
    margin-top: 20px;
}

body.com_users.view-remind .com-users-remind__submit button,
body.com_users.view-reset .com-users-reset__submit button {
    grid-column: 2;
    justify-self: start;
}

@media (max-width: 767.98px) {
    body.com_users #sp-main-body {
        padding-top: 38px;
        padding-bottom: 48px;
    }

    body.com_users .com-users-login__form,
    body.com_users .com-users-remind__form,
    body.com_users .com-users-reset__form {
        max-width: 100%;
    }

    body.com_users.view-remind .control-group,
    body.com_users.view-reset .control-group {
        display: block;
    }

    body.com_users .form-control {
        width: 100% !important;
        min-height: 50px;
    }

    body.com_users .btn-primary,
    body.com_users button.validate {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 767.98px) {
    body.com_users.view-remind .control-group,
    body.com_users.view-reset .control-group,
    body.com_users.view-remind .controls,
    body.com_users.view-reset .controls {
        width: 100% !important;
    }

    body.com_users.view-remind .control-group label,
    body.com_users.view-reset .control-group label {
        display: block;
        width: 100%;
        margin-bottom: 8px;
    }

    body.com_users.view-remind .control-group input.form-control,
    body.com_users.view-reset .control-group input.form-control {
        display: block;
        width: 100% !important;
        max-width: none !important;
    }

    body.com_users.view-remind .com-users-remind__submit button,
    body.com_users.view-reset .com-users-reset__submit button {
        width: 100% !important;
    }
}

@media (max-width: 767.98px) {
    body.com_users.view-remind .controls,
    body.com_users.view-reset .controls {
        margin-left: 0 !important;
        transform: none !important;
    }

    body.com_users.view-remind .control-group,
    body.com_users.view-reset .control-group {
        height: auto !important;
        min-height: 0 !important;
        margin-bottom: 18px !important;
    }

    body.com_users.view-remind .control-group input.form-control,
    body.com_users.view-reset .control-group input.form-control,
    body.com_users.view-remind .com-users-remind__submit button,
    body.com_users.view-reset .com-users-reset__submit button {
        margin-left: 0 !important;
    }
}

/* Visual parity pass: desktop header must stay right-aligned like the legacy site. */
@media (min-width: 992px) {
    #sp-header .container {
        max-width: none !important;
        width: 100% !important;
        padding-left: 70px !important;
        padding-right: 135px !important;
    }

    #sp-header .row,
    #sp-header .container-inner > .row {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
    }

    #sp-logo {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
    }

    #sp-menu {
        flex: 1 1 auto !important;
        width: auto !important;
        max-width: none !important;
        margin-left: auto !important;
    }

    #sp-menu .sp-column,
    #sp-menu .menu-wrap,
    #sp-menu .sp-megamenu-wrapper {
        width: 100%;
        justify-content: flex-end !important;
    }

    .sp-megamenu-parent {
        display: flex !important;
        width: auto !important;
        max-width: none !important;
        align-items: center;
        justify-content: flex-end;
        flex-wrap: nowrap;
        gap: 24px;
        margin-left: auto !important;
    }

    .sp-megamenu-parent > li {
        flex: 0 0 auto;
        margin: 0 !important;
    }
}

/* Visual parity pass: Espace Formation remember checkbox must stay compact. */
.espa.new .mod-login .form-check {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
}

.espa.new .mod-login .form-check-input,
.espa.new .mod-login input[type="checkbox"].form-check-input,
.espa.new .mod-login input[type="checkbox"][name="remember"] {
    appearance: auto !important;
    -webkit-appearance: checkbox !important;
    position: static !important;
    flex: 0 0 13px !important;
    width: 13px !important;
    min-width: 13px !important;
    max-width: 13px !important;
    height: 13px !important;
    min-height: 13px !important;
    max-height: 13px !important;
    padding: 0 !important;
    margin: 0 12px 0 0 !important;
    border-radius: 2px !important;
    box-shadow: none !important;
}

/* Visual parity pass: QSN orange CTA columns must touch, no cream gap. */
.qsn.new #section-id-1652388309288 .sppb-row {
    align-items: stretch !important;
}

.qsn.new #section-id-1652388309288 #column-id-1652388309290,
.qsn.new #section-id-1652388309288 #column-id-1652388309292,
.qsn.new #section-id-1652388309288 #sppb-addon-1652388309293,
.qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon,
.qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon-content,
.qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon-single-image-container {
    height: 100% !important;
}

.qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon-single-image-container {
    display: block !important;
    width: calc(100% + 42px) !important;
    margin-left: -42px !important;
    background-color: var(--sunset) !important;
}

.qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

@media (min-width: 992px) {
    .qsn.new #section-id-1652388309288 #column-wrap-id-1652388309292,
    .qsn.new #section-id-1652388309288 #column-id-1652388309292,
    .qsn.new #section-id-1652388309288 #column-id-1652388309292 .sppb-column-addons,
    .qsn.new #section-id-1652388309288 #sppb-addon-wrapper-1652388309293,
    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293,
    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon,
    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon-content,
    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon-single-image-container,
    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 img {
        height: auto !important;
        min-height: 0 !important;
    }

    .qsn.new #section-id-1652388309288 #column-id-1652388309292,
    .qsn.new #section-id-1652388309288 #column-id-1652388309292 .sppb-column-addons,
    .qsn.new #section-id-1652388309288 #sppb-addon-wrapper-1652388309293,
    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293,
    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon,
    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon-content {
        background-color: transparent !important;
    }

    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon-single-image-container {
        height: 430px !important;
        min-height: 430px !important;
        margin-top: 40px !important;
        background-color: var(--sunset) !important;
    }

    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 img {
        height: 430px !important;
        min-height: 430px !important;
        margin-top: 0 !important;
    }
}

@media (max-width: 991.98px) {
    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon-single-image-container {
        width: 100% !important;
        margin-left: 0 !important;
    }

    .qsn.new #section-id-1652388309288 #column-wrap-id-1652388309292,
    .qsn.new #section-id-1652388309288 #column-id-1652388309292,
    .qsn.new #section-id-1652388309288 #column-id-1652388309292 .sppb-column-addons,
    .qsn.new #section-id-1652388309288 #sppb-addon-wrapper-1652388309293,
    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293,
    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon,
    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon-content,
    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 .sppb-addon-single-image-container {
        height: auto !important;
        min-height: 0 !important;
    }

    .qsn.new #section-id-1652388309288 #sppb-addon-1652388309293 img {
        height: auto !important;
        min-height: 0 !important;
        margin-top: 0 !important;
    }
}

/* Visual parity pass: final desktop header alignment, logo left / menu right. */
@media (min-width: 1200px) {
    #sp-header .container,
    #sp-header .container-inner,
    #sp-header .row {
        position: relative !important;
    }

    #sp-header .container {
        max-width: none !important;
        width: 100% !important;
        padding-left: 70px !important;
        padding-right: 70px !important;
    }

    #sp-logo {
        position: relative !important;
        z-index: 2 !important;
    }

    #sp-logo .logo-image {
        height: 50px !important;
        max-height: 50px !important;
        width: auto !important;
    }

    #sp-menu {
        position: absolute !important;
        top: 50% !important;
        left: 330px !important;
        right: 70px !important;
        width: calc(100vw - 400px) !important;
        max-width: calc(100vw - 400px) !important;
        transform: translateY(-50%) !important;
        z-index: 1 !important;
        display: flex !important;
        justify-content: flex-end !important;
        margin-left: 0 !important;
    }

    #sp-menu .sp-column,
    #sp-menu .menu-wrap,
    #sp-menu .sp-megamenu-wrapper {
        width: 100% !important;
        justify-content: flex-end !important;
    }

    #sp-header .sp-megamenu-parent {
        width: auto !important;
        max-width: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
        margin-left: auto !important;
    }

    #sp-header .sp-megamenu-parent > li {
        flex: 0 0 auto !important;
        margin: 0 !important;
    }

    #sp-header .sp-megamenu-parent > li > a {
        font-size: 18px !important;
        white-space: nowrap !important;
    }
}

@media (min-width: 1500px) {
    #sp-logo .logo-image {
        height: 60px !important;
        max-height: 60px !important;
    }

    #sp-header .container {
        padding-right: 105px !important;
    }

    #sp-menu {
        left: 360px !important;
        right: 105px !important;
        width: calc(100vw - 465px) !important;
        max-width: calc(100vw - 465px) !important;
    }

    #sp-header .sp-megamenu-parent {
        gap: 12px !important;
    }

    #sp-header .sp-megamenu-parent > li > a {
        font-size: 21px !important;
    }
}

/* Responsive header: keep burger through small laptop/tablet landscape widths. */
@media (max-width: 1199.98px) {
    #sp-header .sp-megamenu-parent,
    #sp-header .sp-megamenu-wrapper > ul {
        display: none !important;
    }

    #sp-header #offcanvas-toggler {
        display: flex !important;
        margin-left: auto !important;
    }

    #sp-header .container,
    #sp-header .container-inner,
    #sp-header .row,
    #sp-menu,
    #sp-menu .sp-column {
        position: static !important;
        transform: none !important;
        width: auto !important;
        max-width: none !important;
    }

    #sp-header .row,
    #sp-header .container-inner > .row {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
    }

    #sp-menu {
        margin-left: auto !important;
    }

    body.site .sp-page-builder.espa.new .page-content #section-id-1655741156776 {
        background-image: none !important;
        background-attachment: scroll !important;
    }

    .espa.new #column-wrap-id-1652091061265 {
        max-width: 100% !important;
        flex-basis: 100% !important;
    }

    .espa.new #column-wrap-id-1652091061266 {
        max-width: 0 !important;
        flex-basis: 0 !important;
        display: none !important;
    }
}

@media (min-width: 1200px) and (max-width: 1499.98px) {
    .espa.new #sp-main-body {
        background-size: auto 500px, auto 700px !important;
        background-position: right 18px top 86px, top left !important;
        background-repeat: no-repeat !important;
    }

    body.site .sp-page-builder.espa.new .page-content #section-id-1655741156776 {
        background-size: 56% auto !important;
        background-position: right 34px top 66px !important;
        background-repeat: no-repeat !important;
        background-attachment: scroll !important;
    }

    .espa.new #sppb-addon-1652092723055 h2 {
        font-size: 40px !important;
    }

    .espa.new #sppb-addon-1652092723055 h2 span.text-lined {
        display: block;
    }
}

/* Stable outlined text: avoid WebKit stroke artifacts inside letterforms. */
h1 span.text-lined,
h2 span.text-lined,
.text-lined {
    -webkit-text-stroke: 0 !important;
    -webkit-text-fill-color: var(--off-white) !important;
    color: var(--off-white) !important;
    font-family: 'Bricolage Grotesque', sans-serif !important;
    font-weight: 800 !important;
    font-synthesis: none !important;
    text-shadow:
        -1px -1px 0 var(--chocolate),
         0   -1px 0 var(--chocolate),
         1px -1px 0 var(--chocolate),
        -1px  0   0 var(--chocolate),
         1px  0   0 var(--chocolate),
        -1px  1px 0 var(--chocolate),
         0    1px 0 var(--chocolate),
         1px  1px 0 var(--chocolate) !important;
}
