.elementor-4631 .elementor-element.elementor-element-79a1ea5{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-4631 .elementor-element.elementor-element-79a1ea5.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-4631 .elementor-element.elementor-element-ba4f10b{text-align:center;}.elementor-4631 .elementor-element.elementor-element-ba4f10b .elementor-heading-title{font-family:var( --e-global-typography-be48836-font-family ), Sans-serif;font-size:var( --e-global-typography-be48836-font-size );font-weight:var( --e-global-typography-be48836-font-weight );line-height:var( --e-global-typography-be48836-line-height );color:var( --e-global-color-27294a8 );}.elementor-4631 .elementor-element.elementor-element-5e9abaa{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-4631 .elementor-element.elementor-element-5e9abaa.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-4631 .elementor-element.elementor-element-f947525{text-align:center;}.elementor-4631 .elementor-element.elementor-element-f947525 .elementor-heading-title{color:var( --e-global-color-27294a8 );}.elementor-4631 .elementor-element.elementor-element-959a27d{padding:0px 0px 30px 0px;text-align:center;}.elementor-4631 .elementor-element.elementor-element-959a27d .elementor-heading-title{color:var( --e-global-color-17cdf2d );}.elementor-4631 .elementor-element.elementor-element-78e3a4a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -40px) 0px;padding:0px 0px 0px 0px;font-family:"Montserrat", Sans-serif;color:var( --e-global-color-dbcc5c9 );}.elementor-4631 .elementor-element.elementor-element-78e3a4a p{margin-block-end:19px;}.elementor-4631 .elementor-element.elementor-element-78e3a4a a:hover, .elementor-4631 .elementor-element.elementor-element-78e3a4a a:focus{color:var( --e-global-color-c03c2cd );}.elementor-4631 .elementor-element.elementor-element-58c2a49{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:9px 0px 0px 0px;}.elementor-4631 .elementor-element.elementor-element-30f4f9f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-4631 .elementor-element.elementor-element-ac44406{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-4631 .elementor-element.elementor-element-87afc5d{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-4631 .elementor-element.elementor-element-319171c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-4631 .elementor-element.elementor-element-319171c.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-4631 .elementor-element.elementor-element-c3ba9b0{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-4631 .elementor-element.elementor-element-16cd91a{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-4631 .elementor-element.elementor-element-569577e{--display:flex;}.elementor-4631 .elementor-element.elementor-element-fd84a6e{--display:flex;}.elementor-4631 .elementor-element.elementor-element-b0c7923{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-4631 .elementor-element.elementor-element-c54b2d1{--display:flex;}.elementor-4631 .elementor-element.elementor-element-c0a5907{--display:flex;}.elementor-4631 .elementor-element.elementor-element-87e74aa{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-4631 .elementor-element.elementor-element-44ae39b{--display:flex;}.elementor-4631 .elementor-element.elementor-element-12ba429{--display:flex;}.elementor-4631 .elementor-element.elementor-element-e772a20{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-4631 .elementor-element.elementor-element-3e0adbb{--display:flex;}.elementor-4631 .elementor-element.elementor-element-ebc9eb5{--display:flex;}#elementor-popup-modal-4631 .dialog-widget-content{animation-duration:1.2s;border-radius:2px 2px 2px 2px;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-4631{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-4631 .dialog-message{width:830px;height:801px;align-items:flex-start;}#elementor-popup-modal-4631 .dialog-close-button{display:flex;}@media(min-width:768px){.elementor-4631 .elementor-element.elementor-element-79a1ea5{--width:100%;}.elementor-4631 .elementor-element.elementor-element-5e9abaa{--width:100%;}.elementor-4631 .elementor-element.elementor-element-ac44406{--content-width:563px;}.elementor-4631 .elementor-element.elementor-element-87afc5d{--width:74%;}.elementor-4631 .elementor-element.elementor-element-319171c{--width:52.216%;}}@media(max-width:1024px){.elementor-4631 .elementor-element.elementor-element-ba4f10b .elementor-heading-title{font-size:var( --e-global-typography-be48836-font-size );line-height:var( --e-global-typography-be48836-line-height );}}@media(max-width:767px){.elementor-4631 .elementor-element.elementor-element-ba4f10b .elementor-heading-title{font-size:var( --e-global-typography-be48836-font-size );line-height:var( --e-global-typography-be48836-line-height );}}/* Start custom CSS for heading, class: .elementor-element-ba4f10b *//* =========================================================
   P3 — BADGE ÉPISODE MIS EN AVANT
   Classe :
   ATB-featured-badge
   ========================================================= */

.atb-portfolio-popup-p3
.ATB-featured-badge {

    display: inline-flex;

    align-items: center;

    gap: 9px;

    width: fit-content;

    margin-bottom: 18px !important;

    padding:
        8px 13px !important;

    border:
        1px solid rgba(141, 99, 255, .24);

    border-radius: 999px;

    background:
        rgba(109, 59, 199, .08);

    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}


/* petit point lumineux */

.atb-portfolio-popup-p3
.ATB-featured-badge::before {

    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background:
        #b991ff;

    box-shadow:
        0 0 10px
        rgba(185, 145, 255, .65);
}


/* texte Elementor */

.atb-portfolio-popup-p3
.ATB-featured-badge p {

    margin: 0 !important;

    padding: 0 !important;

    font-family:
        "Montserrat",
        sans-serif !important;

    font-size: 9px !important;

    font-weight: 600 !important;

    line-height: 1 !important;

    letter-spacing: .18em !important;

    text-transform: uppercase;

    color:
        #e6c9f4 !important;
}


/* si tu utilises un widget titre au lieu d'un éditeur texte */

.atb-portfolio-popup-p3
.ATB-featured-badge
.elementor-heading-title {

    margin: 0 !important;

    font-family:
        "Montserrat",
        sans-serif !important;

    font-size: 9px !important;

    font-weight: 600 !important;

    line-height: 1 !important;

    letter-spacing: .18em !important;

    text-transform: uppercase;

    color:
        #e6c9f4 !important;
}


/* mobile */

@media (max-width: 600px) {

    .atb-portfolio-popup-p3
    .ATB-featured-badge {

        margin-bottom:
            14px !important;

        padding:
            7px 11px !important;
    }


    .atb-portfolio-popup-p3
    .ATB-featured-badge p,

    .atb-portfolio-popup-p3
    .ATB-featured-badge
    .elementor-heading-title {

        font-size:
            8px !important;

        letter-spacing:
            .14em !important;
    }

}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9ea9015 *//* =========================================================
   TITRE RÉSULTAT / EXPÉRIENCE COMPLÈTE
   Classe widget titre :
   ATB-résultat
   ========================================================= */

.atb-portfolio-popup .ATB-résultat {
    position: relative;

    margin-top: 42px !important;
    margin-bottom: 30px !important;

    padding-top: 24px !important;
}


/* petit label au-dessus */

.atb-portfolio-popup .ATB-résultat::before {
    content: "FINAL EXPERIENCE";

    position: absolute;

    top: 0;
    left: 0;

    font-family: "Montserrat", sans-serif;

    font-size: 9px;
    font-weight: 600;

    line-height: 1;

    letter-spacing: .24em;

    text-transform: uppercase;

    color: #9d83ad;
}


/* petit trait */

.atb-portfolio-popup .ATB-résultat::after {
    content: "";

    position: absolute;

    top: 5px;
    left: 155px;

    width: 85px;
    height: 1px;

    background: rgba(70, 19, 107, .24);
}


/* vrai titre */

.atb-portfolio-popup
.ATB-résultat
.elementor-heading-title {

    margin: 0 !important;

    font-family: "Fraunces", serif !important;

    font-size: 54px !important;
    font-weight: 400 !important;

    line-height: .94 !important;

    letter-spacing: -.05em !important;

    color: #46136b !important;
}


/* responsive */

@media (max-width: 860px) {

    .atb-portfolio-popup
    .ATB-résultat
    .elementor-heading-title {

        font-size: 50px !important;
    }

}


@media (max-width: 600px) {

    .atb-portfolio-popup
    .ATB-résultat
    .elementor-heading-title {

        font-size: 42px !important;
    }

    .atb-portfolio-popup
    .ATB-résultat::after {

        display: none;
    }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-79a1ea5 *//* =========================================================
   P3 — NIGHT CLUB
   PORTFOLIO POPUP / ELEMENTOR
   Format cible : 830px x 783px

   Classes :
   atb-portfolio-popup-p3
   ATB-avant-P3
   ATB-photos-avant-p3
   ATB-Moodboard-titre-p3
   ATB-moodboard-p3
   ATB-résultat-titre-p3
   atb-p3-photos
   ========================================================= */


/* =========================================================
   01 — PALETTE P3
   ========================================================= */

:root {

    --p3-bg: #0c0a0d;
    --p3-bg-soft: #141117;
    --p3-bg-lounge: #1c171e;

    --p3-purple: #6d3bc7;
    --p3-purple-bright: #8d63ff;

    --p3-blue: #20227f;
    --p3-blue-soft: #8b8dea;

    --p3-lilac: #e6c9f4;
    --p3-lilac-soft: #d6d8eb;

    --p3-grey: #b7c2cf;

    --p3-white: #f7f4f8;
    --p3-text: #cfc8d2;

    --p3-border: rgba(141, 99, 255, .16);

}


/* =========================================================
   02 — POPUP
   ========================================================= */

.elementor-popup-modal:has(.atb-portfolio-popup-p3)
.dialog-widget-content {

    width: 830px !important;
    max-width: calc(100vw - 30px) !important;

    height: 783px !important;
    max-height: calc(100vh - 30px) !important;

    background: var(--p3-bg) !important;

    border: 1px solid rgba(141, 99, 255, .13) !important;
    border-radius: 4px !important;

    box-shadow:
        0 40px 120px rgba(0, 0, 0, .55),
        0 0 40px rgba(109, 59, 199, .12) !important;

    overflow: hidden !important;
}


/* =========================================================
   03 — ZONE SCROLL
   ========================================================= */

.elementor-popup-modal:has(.atb-portfolio-popup-p3)
.dialog-message {

    width: 100% !important;

    height: 783px !important;
    max-height: calc(100vh - 30px) !important;

    padding: 0 !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;

    background:

        radial-gradient(
            circle at 85% 8%,
            rgba(109, 59, 199, .14),
            transparent 28%
        ),

        radial-gradient(
            circle at 10% 58%,
            rgba(32, 34, 127, .11),
            transparent 30%
        ),

        linear-gradient(
            180deg,
            #0b090d,
            #100d12
        );
}


/* =========================================================
   04 — SCROLLBAR
   ========================================================= */

.elementor-popup-modal:has(.atb-portfolio-popup-p3)
.dialog-message::-webkit-scrollbar {
    width: 5px;
}

.elementor-popup-modal:has(.atb-portfolio-popup-p3)
.dialog-message::-webkit-scrollbar-track {
    background: transparent;
}

.elementor-popup-modal:has(.atb-portfolio-popup-p3)
.dialog-message::-webkit-scrollbar-thumb {

    background:
        linear-gradient(
            180deg,
            var(--p3-purple-bright),
            var(--p3-blue)
        );

    border-radius: 999px;
}


.elementor-popup-modal:has(.atb-portfolio-popup-p3)
.dialog-message {

    scrollbar-width: thin;

    scrollbar-color:
        var(--p3-purple)
        transparent;
}


/* =========================================================
   05 — BOUTON FERMER
   ========================================================= */

.elementor-popup-modal:has(.atb-portfolio-popup-p3)
.dialog-close-button {

    position: absolute !important;

    top: 18px !important;
    right: 18px !important;

    width: 38px !important;
    height: 38px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    padding: 0 !important;

    background: rgba(15, 12, 18, .78) !important;

    border:
        1px solid rgba(141, 99, 255, .18);

    border-radius: 50%;

    color: var(--p3-lilac) !important;

    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);

    opacity: 1 !important;

    transition:
        background .25s ease,
        color .25s ease,
        transform .3s ease,
        box-shadow .3s ease;

    z-index: 99999 !important;
}


.elementor-popup-modal:has(.atb-portfolio-popup-p3)
.dialog-close-button:hover {

    background:
        var(--p3-purple) !important;

    color: #fff !important;

    box-shadow:
        0 0 22px rgba(141, 99, 255, .35);

    transform: rotate(90deg);
}


/* =========================================================
   06 — CONTENEUR PRINCIPAL
   ========================================================= */

.atb-portfolio-popup-p3 {

    width: 100% !important;
    max-width: none !important;

    padding-left: 42px !important;
    padding-right: 42px !important;

    box-sizing: border-box;
}


.atb-portfolio-popup-p3.e-con,
.atb-portfolio-popup-p3 > .e-con-inner {

    width: 100% !important;
    max-width: none !important;
}


/* =========================================================
   07 — RESET ELEMENTOR
   ========================================================= */

.atb-portfolio-popup-p3 .e-con {
    min-height: 0;
}

.atb-portfolio-popup-p3
.elementor-widget-image {
    margin-bottom: 0;
}

.atb-portfolio-popup-p3 img {
    max-width: 100%;
}


/* =========================================================
   08 — TYPOGRAPHIES
   ========================================================= */

.atb-portfolio-popup-p3 h1,
.atb-portfolio-popup-p3 h2,
.atb-portfolio-popup-p3 h3,
.atb-portfolio-popup-p3 h4,
.atb-portfolio-popup-p3 h5,
.atb-portfolio-popup-p3 h6,
.atb-portfolio-popup-p3
.elementor-heading-title {

    font-family: "Fraunces", serif !important;

    font-weight: 400;

    color: var(--p3-lilac);
}


.atb-portfolio-popup-p3 p,
.atb-portfolio-popup-p3 a,
.atb-portfolio-popup-p3 li {

    font-family: "Montserrat", sans-serif;
}


/* =========================================================
   09 — TITRE PRINCIPAL
   ========================================================= */

.atb-portfolio-popup-p3 h1 {

    margin: 0;

    font-size: 52px !important;

    font-weight: 400 !important;

    line-height: .94 !important;

    letter-spacing: -.045em !important;

    color: var(--p3-lilac) !important;

    text-wrap: balance;
}


/* =========================================================
   10 — SOUS-TITRE
   ========================================================= */

.atb-portfolio-popup-p3 h2 {

    font-size: 33px;

    line-height: 1.05;

    letter-spacing: -.035em;

    color: var(--p3-white);
}


/* =========================================================
   11 — DESCRIPTION
   ========================================================= */

.atb-portfolio-popup-p3
.elementor-widget-text-editor {

    width: 100%;
    max-width: 100% !important;

    margin-bottom: 0 !important;
}


.atb-portfolio-popup-p3
.elementor-widget-text-editor p {

    margin-top: 0;
    margin-bottom: .65em;

    font-size: 14px !important;

    font-weight: 400;

    line-height: 1.72 !important;

    color: var(--p3-text);
}


.atb-portfolio-popup-p3
.elementor-widget-text-editor
p:last-child {

    margin-bottom: 0 !important;
}


/* =========================================================
   12 — LIENS
   ========================================================= */

.atb-portfolio-popup-p3 a {

    color: var(--p3-blue-soft);

    text-decoration: none;

    transition:
        color .25s ease,
        text-shadow .25s ease;
}


.atb-portfolio-popup-p3 a:hover {

    color: var(--p3-lilac);

    text-shadow:
        0 0 12px rgba(141, 99, 255, .30);
}


/* =========================================================
   13 — TAGS
   Si tu ajoutes une classe tags plus tard,
   tu peux utiliser ce style générique
   ========================================================= */

.atb-portfolio-popup-p3 .atb-tags-p3 {

    width: 100%;

    margin-top: 14px !important;
    margin-bottom: 46px !important;

    padding-top: 13px !important;
    padding-bottom: 13px !important;

    border-top:
        1px solid rgba(141, 99, 255, .20);

    border-bottom:
        1px solid rgba(141, 99, 255, .20);
}


.atb-portfolio-popup-p3
.atb-tags-p3 p {

    margin: 0 !important;
    padding: 0 !important;

    font-family:
        "Montserrat",
        sans-serif !important;

    font-size: 9px !important;

    font-weight: 500 !important;

    line-height: 1.5 !important;

    letter-spacing: .17em !important;

    text-transform: uppercase;

    color: var(--p3-grey) !important;
}


/* =========================================================
   14 — TITRE AVANT

   Classe :
   ATB-avant-P3
   ========================================================= */

.atb-portfolio-popup-p3
.ATB-avant-P3 {

    position: relative;

    margin-top: 30px !important;
    margin-bottom: 27px !important;

    padding-top: 24px !important;
}


/* petit label */

.atb-portfolio-popup-p3
.ATB-avant-P3::before {

    content: "ARCHIVE — BEFORE";

    position: absolute;

    top: 0;
    left: 0;

    font-family:
        "Montserrat",
        sans-serif;

    font-size: 9px;

    font-weight: 600;

    line-height: 1;

    letter-spacing: .24em;

    text-transform: uppercase;

    color: var(--p3-blue-soft);
}


/* trait */

.atb-portfolio-popup-p3
.ATB-avant-P3::after {

    content: "";

    position: absolute;

    top: 5px;
    left: 174px;

    width: 85px;
    height: 1px;

    background:
        rgba(141, 99, 255, .55);
}


/* titre */

.atb-portfolio-popup-p3
.ATB-avant-P3
.elementor-heading-title {

    margin: 0 !important;

    font-family:
        "Fraunces",
        serif !important;

    font-size: 54px !important;

    font-weight: 400 !important;

    line-height: .94 !important;

    letter-spacing: -.05em !important;

    color: var(--p3-lilac) !important;
}


/* =========================================================
   15 — PHOTOS AVANT

   Classe :
   ATB-photos-avant-p3
   ========================================================= */

.atb-portfolio-popup-p3
.ATB-photos-avant-p3 {

    width: 100% !important;
    max-width: none !important;

    min-height: 0 !important;

    margin-top: 0 !important;
    margin-bottom: 68px !important;

    padding: 0 !important;
}


.atb-portfolio-popup-p3
.ATB-photos-avant-p3 .e-con {

    min-height: 0 !important;
}


.atb-portfolio-popup-p3
.ATB-photos-avant-p3
.elementor-widget-image img {

    display: block;

    width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    object-fit: contain !important;

    border-radius: 2px;

    transition:
        transform .65s
        cubic-bezier(.2,.7,.2,1),
        box-shadow .4s ease;
}


.atb-portfolio-popup-p3
.ATB-photos-avant-p3
.elementor-widget-image:hover img {

    transform: scale(1.012);

    box-shadow:
        0 0 30px rgba(109, 59, 199, .12);
}


/* =========================================================
   16 — TITRE MOODBOARD

   Classe :
   ATB-Moodboard-titre-p3
   ========================================================= */

.atb-portfolio-popup-p3
.ATB-Moodboard-titre-p3 {

    position: relative;

    margin-top: 38px !important;
    margin-bottom: 27px !important;

    padding-top: 24px !important;
}


.atb-portfolio-popup-p3
.ATB-Moodboard-titre-p3::before {

    content: "VISUAL DIRECTION";

    position: absolute;

    top: 0;
    left: 0;

    font-family:
        "Montserrat",
        sans-serif;

    font-size: 9px;

    font-weight: 600;

    line-height: 1;

    letter-spacing: .24em;

    text-transform: uppercase;

    color: var(--p3-blue-soft);
}


.atb-portfolio-popup-p3
.ATB-Moodboard-titre-p3::after {

    content: "";

    position: absolute;

    top: 5px;
    left: 153px;

    width: 85px;
    height: 1px;

    background:
        rgba(141, 99, 255, .55);
}


.atb-portfolio-popup-p3
.ATB-Moodboard-titre-p3
.elementor-heading-title {

    margin: 0 !important;

    font-family:
        "Fraunces",
        serif !important;

    font-size: 54px !important;

    font-weight: 400 !important;

    line-height: .94 !important;

    letter-spacing: -.05em !important;

    color: var(--p3-lilac) !important;
}


/* =========================================================
   17 — MOODBOARD

   Classe :
   ATB-moodboard-p3
   ========================================================= */

.atb-portfolio-popup-p3
.ATB-moodboard-p3 {

    position: relative;

    width: 100% !important;
    max-width: none !important;

    min-height: 0 !important;

    margin-top: 0 !important;
    margin-bottom: 68px !important;

    padding: 16px !important;

    overflow: hidden;

    background:

        radial-gradient(
            circle at 15% 10%,
            rgba(109, 59, 199, .16),
            transparent 35%
        ),

        radial-gradient(
            circle at 80% 75%,
            rgba(32, 34, 127, .15),
            transparent 38%
        ),

        linear-gradient(
            145deg,
            #121015,
            #17131a
        );

    border:
        1px solid rgba(141, 99, 255, .11);

    box-sizing: border-box;
}


/* reset */

.atb-portfolio-popup-p3
.ATB-moodboard-p3 > * {

    grid-column: auto !important;
    grid-row: auto !important;

    min-height: 0 !important;
}


.atb-portfolio-popup-p3
.ATB-moodboard-p3 .e-con {

    min-height: 0 !important;
}


/* images */

.atb-portfolio-popup-p3
.ATB-moodboard-p3
.elementor-widget-image img {

    display: block;

    width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    object-fit: contain !important;

    border-radius: 2px;

    transition:
        transform .7s
        cubic-bezier(.2,.7,.2,1),
        filter .4s ease;
}


.atb-portfolio-popup-p3
.ATB-moodboard-p3
.elementor-widget-image:hover img {

    transform: scale(1.012);

    filter: brightness(1.04);
}


/* petit trait lumineux */

.atb-portfolio-popup-p3
.ATB-moodboard-p3::before {

    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 58px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--p3-purple-bright),
            var(--p3-blue-soft)
        );

    box-shadow:
        0 0 12px rgba(141, 99, 255, .35);

    z-index: 2;
}


/* =========================================================
   18 — TITRE RÉSULTAT

   Classe :
   ATB-résultat-titre-p3
   ========================================================= */

.atb-portfolio-popup-p3
.ATB-résultat-titre-p3 {

    position: relative;

    margin-top: 40px !important;
    margin-bottom: 27px !important;

    padding-top: 24px !important;
}


.atb-portfolio-popup-p3
.ATB-résultat-titre-p3::before {

    content: "FINAL EXPERIENCE";

    position: absolute;

    top: 0;
    left: 0;

    font-family:
        "Montserrat",
        sans-serif;

    font-size: 9px;

    font-weight: 600;

    line-height: 1;

    letter-spacing: .24em;

    text-transform: uppercase;

    color: var(--p3-blue-soft);
}


.atb-portfolio-popup-p3
.ATB-résultat-titre-p3::after {

    content: "";

    position: absolute;

    top: 5px;
    left: 154px;

    width: 85px;
    height: 1px;

    background:
        rgba(141, 99, 255, .55);
}


.atb-portfolio-popup-p3
.ATB-résultat-titre-p3
.elementor-heading-title {

    margin: 0 !important;

    font-family:
        "Fraunces",
        serif !important;

    font-size: 54px !important;

    font-weight: 400 !important;

    line-height: .94 !important;

    letter-spacing: -.05em !important;

    color: var(--p3-lilac) !important;
}


/* =========================================================
   19 — PHOTOS RÉSULTAT

   Classe :
   atb-p3-photos
   ========================================================= */

.atb-portfolio-popup-p3
.atb-p3-photos {

    position: relative;

    width: 100% !important;
    max-width: none !important;

    min-height: 0 !important;

    margin-top: 0 !important;
    margin-bottom: 70px !important;

    padding: 0 !important;

    box-sizing: border-box;
}


/* reset */

.atb-portfolio-popup-p3
.atb-p3-photos > * {

    grid-column: auto !important;
    grid-row: auto !important;

    min-height: 0 !important;
}


.atb-portfolio-popup-p3
.atb-p3-photos .e-con {

    min-height: 0 !important;
}


/* images */

.atb-portfolio-popup-p3
.atb-p3-photos
.elementor-widget-image {

    width: 100%;
}


.atb-portfolio-popup-p3
.atb-p3-photos
.elementor-widget-image img {

    display: block;

    width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    object-fit: contain !important;

    border-radius: 2px;

    transition:
        transform .7s
        cubic-bezier(.2,.7,.2,1),
        box-shadow .35s ease;
}


.atb-portfolio-popup-p3
.atb-p3-photos
.elementor-widget-image:hover img {

    transform: scale(1.012);

    box-shadow:
        0 0 32px rgba(109, 59, 199, .16);
}


/* =========================================================
   20 — ESPACEMENTS
   ========================================================= */

.atb-portfolio-popup-p3
.elementor-widget-heading {
    margin-bottom: 0;
}


.atb-portfolio-popup-p3
.elementor-widget-text-editor {
    margin-bottom: 0 !important;
}


/* =========================================================
   21 — TABLETTE
   ========================================================= */

@media (max-width: 860px) {

    .elementor-popup-modal:has(.atb-portfolio-popup-p3)
    .dialog-widget-content {

        width: calc(100vw - 24px) !important;

        height: calc(100vh - 24px) !important;

        max-height:
            calc(100vh - 24px) !important;
    }


    .elementor-popup-modal:has(.atb-portfolio-popup-p3)
    .dialog-message {

        height:
            calc(100vh - 24px) !important;

        max-height:
            calc(100vh - 24px) !important;
    }


    .atb-portfolio-popup-p3 {

        padding-left: 30px !important;
        padding-right: 30px !important;
    }


    .atb-portfolio-popup-p3 h1 {
        font-size: 48px !important;
    }


    .atb-portfolio-popup-p3
    .ATB-avant-P3
    .elementor-heading-title,

    .atb-portfolio-popup-p3
    .ATB-Moodboard-titre-p3
    .elementor-heading-title,

    .atb-portfolio-popup-p3
    .ATB-résultat-titre-p3
    .elementor-heading-title {

        font-size: 50px !important;
    }

}


/* =========================================================
   22 — MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .elementor-popup-modal:has(.atb-portfolio-popup-p3)
    .dialog-widget-content {

        width: 100vw !important;
        max-width: 100vw !important;

        height: 100dvh !important;
        max-height: 100dvh !important;

        border-radius: 0 !important;
    }


    .elementor-popup-modal:has(.atb-portfolio-popup-p3)
    .dialog-message {

        height: 100dvh !important;
        max-height: 100dvh !important;
    }


    .atb-portfolio-popup-p3 {

        padding-left: 18px !important;
        padding-right: 18px !important;
    }


    .elementor-popup-modal:has(.atb-portfolio-popup-p3)
    .dialog-close-button {

        top: 14px !important;
        right: 14px !important;

        width: 38px !important;
        height: 38px !important;
    }


    .atb-portfolio-popup-p3 h1 {

        font-size: 39px !important;

        line-height: .96 !important;
    }


    .atb-portfolio-popup-p3 h2 {
        font-size: 28px;
    }


    .atb-portfolio-popup-p3
    .elementor-widget-text-editor p {

        font-size: 13px !important;

        line-height: 1.68 !important;
    }


    .atb-portfolio-popup-p3
    .ATB-avant-P3
    .elementor-heading-title,

    .atb-portfolio-popup-p3
    .ATB-Moodboard-titre-p3
    .elementor-heading-title,

    .atb-portfolio-popup-p3
    .ATB-résultat-titre-p3
    .elementor-heading-title {

        font-size: 42px !important;
    }


    .atb-portfolio-popup-p3
    .ATB-avant-P3::after,

    .atb-portfolio-popup-p3
    .ATB-Moodboard-titre-p3::after,

    .atb-portfolio-popup-p3
    .ATB-résultat-titre-p3::after {

        display: none;
    }


    .atb-portfolio-popup-p3
    .ATB-photos-avant-p3,

    .atb-portfolio-popup-p3
    .ATB-moodboard-p3,

    .atb-portfolio-popup-p3
    .atb-p3-photos {

        margin-bottom: 52px !important;
    }


    .atb-portfolio-popup-p3
    .ATB-moodboard-p3 {

        padding: 10px !important;
    }

}


/* =========================================================
   23 — PETITS MOBILES
   ========================================================= */

@media (max-width: 400px) {

    .atb-portfolio-popup-p3 {

        padding-left: 14px !important;
        padding-right: 14px !important;
    }


    .atb-portfolio-popup-p3 h1 {

        font-size: 35px !important;
    }


    .atb-portfolio-popup-p3
    .ATB-avant-P3
    .elementor-heading-title,

    .atb-portfolio-popup-p3
    .ATB-Moodboard-titre-p3
    .elementor-heading-title,

    .atb-portfolio-popup-p3
    .ATB-résultat-titre-p3
    .elementor-heading-title {

        font-size: 38px !important;
    }

}


/* =========================================================
   24 — ACCESSIBILITÉ
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .atb-portfolio-popup-p3 * {

        transition-duration:
            .01ms !important;
    }

}/* End custom CSS */
/* Start custom CSS *//* =========================================================
   P3 — ANIMATION POPUP
   Même principe que SCAVO / Clothes Over Bro's
   Adaptée à : atb-portfolio-popup-p3
   ========================================================= */


/* ---------------------------------------------------------
   ÉTAT INITIAL
   --------------------------------------------------------- */

.elementor-popup-modal:has(.atb-portfolio-popup-p3)
.dialog-widget-content {

    transform-origin: 50% 100%;

    animation:
        p3-folder-open
        0.82s
        cubic-bezier(.22,.78,.22,1)
        both;

    will-change:
        transform,
        opacity,
        clip-path;
}


/* ---------------------------------------------------------
   OUVERTURE
   Effet dossier / feuille qui se déplie
   --------------------------------------------------------- */

@keyframes p3-folder-open {

    0% {
        opacity: 0;

        transform:
            perspective(1400px)
            translateY(22px)
            rotateX(-7deg)
            scale(.975);

        clip-path:
            inset(88% 2% 0 2% round 4px);
    }


    30% {
        opacity: 1;

        transform:
            perspective(1400px)
            translateY(10px)
            rotateX(-3deg)
            scale(.985);

        clip-path:
            inset(44% 1% 0 1% round 4px);
    }


    68% {
        transform:
            perspective(1400px)
            translateY(-2px)
            rotateX(.7deg)
            scale(1.002);

        clip-path:
            inset(0 0 0 0 round 4px);
    }


    100% {
        opacity: 1;

        transform:
            perspective(1400px)
            translateY(0)
            rotateX(0deg)
            scale(1);

        clip-path:
            inset(0 0 0 0 round 4px);
    }
}


/* =========================================================
   CONTENU
   Arrive légèrement après l'ouverture du "dossier"
   ========================================================= */

.elementor-popup-modal:has(.atb-portfolio-popup-p3)
.dialog-message {

    animation:
        p3-content-reveal
        .72s
        cubic-bezier(.22,.75,.25,1)
        .10s
        both;
}


@keyframes p3-content-reveal {

    0% {
        opacity: 0;

        transform:
            translateY(12px);
    }


    45% {
        opacity: .45;
    }


    100% {
        opacity: 1;

        transform:
            translateY(0);
    }
}


/* =========================================================
   FOND / OVERLAY
   Apparition douce
   ========================================================= */

.elementor-popup-modal:has(.atb-portfolio-popup-p3) {

    animation:
        p3-overlay-in
        .45s
        ease-out
        both;
}


@keyframes p3-overlay-in {

    from {
        background-color:
            rgba(4, 3, 7, 0);
    }

    to {
        background-color:
            rgba(4, 3, 7, .86);
    }
}


/* =========================================================
   PETIT DÉTAIL P3
   Reflet violet / lilas / bleu pendant l'ouverture
   ========================================================= */

.elementor-popup-modal:has(.atb-portfolio-popup-p3)
.dialog-widget-content::before {

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    z-index: 2;

    background:
        linear-gradient(
            115deg,

            transparent 15%,

            rgba(109, 59, 199, 0) 28%,

            rgba(141, 99, 255, .13) 40%,

            rgba(230, 201, 244, .09) 47%,

            rgba(32, 34, 127, .07) 54%,

            transparent 70%
        );

    transform:
        translateX(-115%);

    animation:
        p3-light-pass
        1.05s
        cubic-bezier(.22,.75,.25,1)
        .12s
        both;
}


/* ---------------------------------------------------------
   Passage lumineux
   --------------------------------------------------------- */

@keyframes p3-light-pass {

    0% {
        opacity: 0;

        transform:
            translateX(-115%);
    }


    25% {
        opacity: .65;
    }


    70% {
        opacity: .25;
    }


    100% {
        opacity: 0;

        transform:
            translateX(115%);
    }
}


/* =========================================================
   ACCESSIBILITÉ
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .elementor-popup-modal:has(.atb-portfolio-popup-p3),

    .elementor-popup-modal:has(.atb-portfolio-popup-p3)
    .dialog-widget-content,

    .elementor-popup-modal:has(.atb-portfolio-popup-p3)
    .dialog-message,

    .elementor-popup-modal:has(.atb-portfolio-popup-p3)
    .dialog-widget-content::before {

        animation: none !important;

        transform: none !important;

        clip-path: none !important;

        opacity: 1 !important;
    }
}/* End custom CSS */