/**********************************************/
/************* En tete de la realisation ******/
/**********************************************/

.single-realisation.et-db #et-boc .et-l .row-entete-desc,
.single-realisation.et-db #et-boc .et-l .et_pb_section:has(h1){
    background-color: var(--grey-color);
    padding-top: 6rem;
}

.single-realisation.et-db #et-boc .et-l .row-entete-desc{
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

.single-realisation.et-db #et-boc .et-l .entete_fp_col_gauche{
    margin-right: 10%;
}

.single-realisation.et-db #et-boc .et-l .avant-titre {
    margin-bottom: 34px !important;
    padding-bottom: 0;
}


.single-realisation.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_module.et_pb_heading{
    margin-bottom: 3%;
}

@media(max-width: 980px){
    .single-realisation.et-db #et-boc .et-l .entete_fp_col_gauche{
        margin-right: initial;
    }
}

/**********************************************/
/************* Section repeteur ***************/
/**********************************************/
.single-realisation.et-db #et-boc .et-l .repeater{
    background: var(--light-grey);
    border-radius: 0 15px 0 0;
}

.single-realisation.et-db #et-boc .et-l .repeater::before{
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 100%;
    width: calc((100vw - min(90vw, 1360px)) / 2);
    background: var(--light-grey);
    pointer-events: none;
}

.single-realisation.et-db #et-boc .et-l .repeater .my-repeater-table{
    margin-right: 0;
    padding-right: 14%;
}

.single-realisation.et-db #et-boc .et-l .repeater .repeater-item{
    text-align: start;
    justify-content: flex-start;
}

.single-realisation.et-db #et-boc .et-l .repeater .repeater-item:not(:last-child){
    border-right: 1px solid #AAA9A9;
}

.single-realisation.et-db #et-boc .et-l .repeater .repeater-content{
    font-size: 18px;
    line-height: 25px;
    font-weight: bold;
    color: var(--dark-grey);
}

.single-realisation.et-db #et-boc .et-l .repeater .repeater-label{
    font-weight: 400;
    color: var(--dark-grey);
}

.single-realisation.et-db #et-boc .et-l .repeater .repeater-item:last-child{
  flex: 1 1 100%;
}

@media(max-width: 1608px){
    .single-realisation.et-db #et-boc .et-l .repeater{
        width: 95%;
    }
}

@media(max-width: 1430px){
    .single-realisation.et-db #et-boc .et-l .repeater .my-repeater-table{
        gap: inherit;
    }

    .single-realisation.et-db #et-boc .et-l .repeater .repeater-item{
        max-width: 100%;
    }
}

@media(max-width: 884px){
    .single-realisation.et-db #et-boc .et-l .repeater .my-repeater-table{
        flex-direction: column;
    }
    .single-realisation.et-db #et-boc .et-l .repeater .repeater-item:not(:last-child){
        border-right: none;
        border-bottom: 1px solid #AAA9A9;
    }
}

/**********************************************/
/************* Générale réalisation ***************/
/**********************************************/

.single-realisation.et-db #et-boc .et-l:not(.et-l--header) .et_pb_section ul li{
    list-style: inside;
    padding-left: 0;
}


.single-realisation.et-db #et-boc .et-l:not(.et-l--header) .et_pb_section ul li::marker{
    color: var(--main-color);
}

.single-realisation.et-db #et-boc .et-l:not(.et-l--header) .et_pb_section ul li::before{
    display: none;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section h3:has(+ ul){
    color: var(--main-color) !important;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .tag:has(+ h3){
    margin: 1.1rem 0 1.5rem 0;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_image{
    padding-bottom: 2rem;
}

.single-realisation.et-db #page-container #et-boc .et-l .et_pb_fullwidth_section .et_pb_column:has(.tag + h3) h3{
    font-weight: bold;
    color: #AAA9A9;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_column:has(.tag + h3) p{
    color: #AAA9A9;
}

/********************************************************/
/************** Section - Produit client ****************/
/********************************************************/
.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_module.et_pb_blurb{
    background: linear-gradient(140deg, var(--grey-color), #FFF);
    max-width: 430px;
    padding: 27px 46px;
    border: 2px solid var(--grey-color);
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_row.demi:has(.et_pb_blurb){
    justify-content: space-between;
    align-items: start !important;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_module.et_pb_blurb h4 span{
    align-items: baseline;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_module.et_pb_blurb .et_pb_blurb_content{
    display: flex;
    flex-direction: column;
    align-items: baseline;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_module.et_pb_blurb img{
    aspect-ratio: 4/3;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_row.demi .et_pb_column:has(.et_pb_blurb){
    display: flex;
    flex-direction: column;
    align-items: end;
    width: 100%;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_row.demi .et_pb_column:not(:has(.et_pb_blurb)){
    padding-right: 0 !important;
}

@media(max-width: 980px){
    .single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_module.et_pb_blurb{
        max-width: inherit;
    }

    .single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_row.demi .et_pb_column:has(.et_pb_blurb){
        align-items: baseline;
    }
}

/********************************************************/
/************* Section - solution apportée **************/
/********************************************************/

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.solution){
    overflow: hidden;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution::after{
    content: "\e906" !important;
    font-family: "halpaq" !important;
    position: absolute;
    left: -4rem;
    top: 50%;
    color: #fff;
    transform: translateY(-50%);
    font-size: 8rem;
    visibility: visible;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution::before{
    content: "";
    position: absolute;
    left: -5rem;
    top: 50%;
    width: 10rem;
    height: 10rem;
    background-color: var(--main-color);
    transform: translateY(-50%);
    visibility: visible;
}

.et-db #et-boc .et-l:not(.et-l--header) .et_pb_fullwidth_section>.et_pb_module:not(.et_pb_post_content):not(.et_pb_fullwidth_post_content) .et_pb_row.solution{
    padding-left: 6rem !important;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution{
    background-color: var(--main-color);
    max-width: inherit;
    margin-left: calc((100vw - 80%) / 2);
    min-height: 528px;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_column{
    float: inherit;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h2){
    background-color: #fff;
    padding: 1rem 2rem;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h2) h2,
.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h2) p{
    color: var(--main-color) !important;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h3) h3,
.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h3) p,
.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h3) li{
    color: #fff !important;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h3) .et_pb_text_inner{
    display: flex;
    flex-wrap: wrap;
    column-gap: 2rem;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h3) .et_pb_text_inner h3{
    width: 100%;
    flex: 0 0 100%;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h3) ul{
    display: flex;
    flex-direction: column;
    align-items: baseline;
    flex: 1;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h3) li{
    list-style: none;
    padding-left: 1.5rem;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h3) li::before{
    font-family: 'ETMODULES';
    content: '\e052';
    text-align: center;
    margin-right: 10px;
    margin-left: -10px;
    color: #fff;
    font-size: 1em;
    display: block;
    font-weight: 500;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h3) li::marker{
    display: none;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h3) li strong{
    /* margin: 0 0.25em; */
    word-wrap: inherit;
    white-space: nowrap;
}

@media(max-width: 980px){
    .single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution::before{
        display: none;
    }

    .single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution::after{
        display: none;
    }

    .et-db #et-boc .et-l:not(.et-l--header) .et_pb_fullwidth_section>.et_pb_module:not(.et_pb_post_content):not(.et_pb_fullwidth_post_content) .et_pb_row.solution{
        margin: 0 auto;
    }

    .single-realisation.et-db #page-container #et-boc .et-l .et_pb_row.demi:has(.et_pb_column:last-child .et_pb_text) .et_pb_column:has(.et_pb_image){
        padding: inherit;
    }
}

@media(max-width: 750px){
    .et-db #et-boc .et-l:not(.et-l--header) .et_pb_fullwidth_section>.et_pb_module:not(.et_pb_post_content):not(.et_pb_fullwidth_post_content) .et_pb_row.solution{
        padding: 1rem !important;
    }

    .single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .solution .et_pb_module:has(h3) li::before{
        margin-left: 0;
    }
}

/****************************************************************/
/************* Section avec tableau - Realisation ***************/
/****************************************************************/

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(table) h2{
    text-align: center;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(table) tbody td:last-child{
    color: var(--main-color);
    font-weight: 500;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(table) thead th{
    text-align: left;
    font-weight: 600;
    position: relative;
    padding: 0;
    align-items: end;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(table) thead th::after{
    content: "";
    width: 251px;
    height: 5px;
    background-color: #D1D1D1;
    position: absolute;
    bottom: 0;
    left: 0;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(table) thead th:last-child:after{
    background-color: var(--main-color);
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(table) thead th:last-child{
    color: var(--main-color);
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(table) .et_pb_row{
    max-width: 1350px;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(table) .et_pb_module:has(table){
    display: flex;
    justify-content: center;
    align-items: center;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(table) .et_pb_module:has(table) .et_pb_code_inner{
    width: 100%;
    max-width: 980px;
}

.single-realisation tr,
.single-realisation th{
    height: 80px;
}

.single-realisation .custom-cp-table{
    position: relative;
}

.single-realisation thead th{
    position: relative;
}

.single-realisation thead th::after{
    position: absolute;
    content: "";
    bottom: 0;
    width: 50%;
    height: 5px;
    left: 0;
    background-color: #D1D1D1;
}

.single-realisation th,
.single-realisation td{
    text-align: left !important;
}

.single-realisation .custom-cp-table td{
    width: 200px;
}


/****************************************************************/
/************* Section bénéfices - Realisation ******************/
/****************************************************************/
.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.benefices){
    background-color: var(--grey-color);
    padding-top: 1rem;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.benefices) h2{
    text-align: center;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.benefices) .et_pb_text_inner{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.benefices) ul{
    width: max-content;
    min-width: 600px;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.benefices) ul li{
    padding-left: 2.2rem;
    list-style: none;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.benefices) ul li::before{
    color: #087B1B;
    background: #AEEFB4;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

@media(max-width: 980px){
    .single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.benefices){
        padding-bottom: 2rem;
    }
}

@media(max-width: 660px){
    .single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.benefices) ul{
        min-width: inherit;
        width: inherit;
    }

    .single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.benefices) ul li{
        width: 100%;
        margin: auto;
    }
}

/*************************************************************************/
/************* Section produits manipulés - Realisation ******************/
/*************************************************************************/
.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.produits-manipule) .et_pb_column:has(.et_pb_image){
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.5rem;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.produits-manipule) .produits-manipule{
    display: flex;
    justify-content: center;
    align-items: center;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.produits-manipule) h2 + p{
    font-weight: bold;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.produits-manipule) .et_pb_column:has(.et_pb_image) .et_pb_image{
    margin: 0;
    padding: 0;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.produits-manipule) .et_pb_column:has(.et_pb_image) .et_pb_image_wrap{
    height: 100%;
    width: 100%;
}

.single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.produits-manipule) .et_pb_column:has(.et_pb_image) .et_pb_image_wrap img{
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}


@media(max-width: 756px){
    .single-realisation.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.produits-manipule) .et_pb_column:has(.et_pb_image){
        grid-template-columns: 1fr;
    }
}

/**********************************************************************************/
/************* Section synergie Halpaq & Palamatic - Realisation ******************/
/**********************************************************************************/
.single-realisation.et-db #et-boc .et-l:not(.et-l--header) .et_pb_fullwidth_section .et_pb_section:has(.liste) ul li::marker{
    color: #0090DF;
}

.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.synergie){
    padding-bottom: 0;
}

.et-db #et-boc .et-l .et_pb_fullwidth_section .synergie{
    display: flex;
    justify-content: center;
    align-items: center;
}

.et-db #et-boc .et-l .et_pb_fullwidth_section .synergie .et_pb_column:has(.et_pb_image) .et_pb_module:first-child{
    margin-bottom: 0;
    padding-bottom: 0;
    margin: 0;
}

.et-db #et-boc .et-l .et_pb_fullwidth_section .synergie .et_pb_column:has(.et_pb_image){
    gap: 5rem;
}

.et-db #et-boc .et-l .et_pb_fullwidth_section .synergie .et_pb_column:has(.et_pb_image) .et_pb_module:first-child img{
    scale: 1.2;
}

.et-db #et-boc .et-l .et_pb_fullwidth_section .synergie .et_pb_column:has(.et_pb_image) .et_pb_module:not(:first-child){
    margin-right: 3rem;
    padding-bottom: 0;
}

.single-realisation.et-db #et-boc .et-l:not(.et-l--header) .et_pb_section:has(.liste){
    padding-top: 0;
}

.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.synergie) .et_pb_row{
    background-color: var(--dark-grey);
}

.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_section:has(.synergie) .et_pb_row::before{
    background-color: var(--dark-grey);
}

@media(max-width: 980px){
    .et-db #et-boc .et-l .et_pb_fullwidth_section .synergie .et_pb_column:not(:has(.et_pb_image)){
        width: 90% !important;
    }
    .et-db #et-boc .et-l .et_pb_fullwidth_section .synergie .et_pb_column:has(.et_pb_image){
        justify-content: space-around;
    }
    .et-db #et-boc .et-l .et_pb_fullwidth_section .synergie .et_pb_column:has(.et_pb_image) .et_pb_module:first-child img{
        scale: 1;
    }
}

/**********************************************************************************/
/******************* Section Equipements utilisés - Specifique ********************/
/**********************************************************************************/
.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .equipement-realisation .et_pb_module:not(.et_pb_code) .et_pb_text_inner{
    align-items: flex-start;
}

.single-realisation.et-db #et-boc .et-l .et_pb_section:has(.equipement-realisation) .et_pb_row:has(h2) .et_pb_text_inner{
    align-items: flex-start !important;
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .equipement-realisation .et_pb_module:not(.et_pb_code) .et_pb_text_inner p{
    font-size: 1.55em;
    font-weight: bold;
    line-height: 22px;
    padding-bottom: 0;
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .equipement-realisation .et_pb_module:not(.et_pb_code){
    margin-bottom: 0;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--light-grey);
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .equipement-realisation .et_pb_module.et_pb_code{
    margin-top: 0;
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .equipement-realisation .carousel-dots{
    top: inherit;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.et-db #et-boc .et-l .et_pb_section .equipement-realisation .specifique{
    padding: 36px 0;
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .specifique .carousel-card{
    max-height: 378px;
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .specifique .carousel-card:after{
    display: none;
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .specifique .carousel-card .product-content{
    position: inherit;
    min-height: inherit;
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .specifique .carousel-card img{
    max-height: 189px;
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .specifique .carousel-card .product-title{
    color: var(--dark-grey) !important;
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .specifique .carousel-card .product-excerpt p{
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.et-db #et-boc .et-l .et_pb_section .equipement-realisation .product-link::before,
.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .equipement-realisation .carousel-card a::before{
    font-family: "ETmodules" !important;
    content: "\e03e";
    position: absolute;
    top: 2.05rem;
    right: 2.3rem;
    display: flex;
    font-size: 1.8rem;
    align-items: center;
    justify-content: center;
    opacity: 1;
    width: 1.2rem;
    height: 1.2rem;
    z-index: 2;
    color: var(--dark-grey);
    background: #fff;
    border-radius: 100%;
}

.et-db #et-boc .et-l .et_pb_section .equipement-realisation .product-item:hover .product-link::before,
.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .equipement-realisation .carousel-card:hover a::before{
    color: var(--main-color);
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .equipement-realisation .product-item::after{
    display: none !important;
}

.et-db #et-boc .et-l .et_pb_section .equipement-realisation .et_pb_column:not(:has(.specifique)) .et_pb_module.et_pb_code{
    padding-top: 36px;
}

@media(max-width: 980px){
    .et-db #et-boc .et-l .et_pb_section .equipement-realisation .et_pb_column:not(:has(.specifique)) .et_pb_module.et_pb_code{
        width: 50%;
    }
}

@media(max-width: 650px){
    .et-db #et-boc .et-l .et_pb_section .equipement-realisation .et_pb_column:not(:has(.specifique)) .et_pb_module.et_pb_code{
        width: 100%;
    }

    .et-db #et-boc .et-l .et_pb_section .equipement-realisation .et_pb_column:not(:has(.specifique)) .et_pb_module.et_pb_code .product-link .product-image{
        aspect-ratio: initial;
    }

    .et-db #et-boc .et-l .et_pb_section .equipement-realisation .et_pb_column:not(:has(.specifique)) .et_pb_module.et_pb_code .product-content{
        position: relative;
        justify-content: space-around;
    }
}