.elementor-5100 .elementor-element.elementor-element-b22e624{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--margin-top:-40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5100 .elementor-element.elementor-element-7c73fc7{--spacer-size:150px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-5100 .elementor-element.elementor-element-f657778{text-align:center;}.elementor-5100 .elementor-element.elementor-element-f657778 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:36px;font-weight:700;letter-spacing:-2.5px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-5100 .elementor-element.elementor-element-221db50{width:var( --container-widget-width, 700px );max-width:700px;--container-widget-width:700px;--container-widget-flex-grow:0;text-align:center;font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:400;}.elementor-5100 .elementor-element.elementor-element-221db50.elementor-element{--align-self:center;}.elementor-5100 .elementor-element.elementor-element-922a761{--display:flex;}.elementor-5100 .elementor-element.elementor-element-27688c9{--spacer-size:50px;}.elementor-widget-portfolio a .elementor-portfolio-item__overlay{background-color:var( --e-global-color-accent );}.elementor-widget-portfolio .elementor-portfolio-item__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-portfolio .elementor-portfolio__filter{color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-portfolio .elementor-portfolio__filter.elementor-active{color:var( --e-global-color-primary );}.elementor-msie .elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-portfolio-item{width:calc( 100% / 4 );}.elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-post__thumbnail__link{padding-bottom:calc( 0.65 * 100% );}.elementor-5100 .elementor-element.elementor-element-3276c5e:after{content:"0.65";position:absolute;color:transparent;}.elementor-5100 .elementor-element.elementor-element-3276c5e{--grid-row-gap:10px;--grid-column-gap:10px;}.elementor-5100 .elementor-element.elementor-element-3276c5e > .elementor-widget-container{margin:-20px 0px 0px 0px;}.elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-portfolio-item__img, .elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-portfolio-item__overlay{border-radius:0px 0px 0px 0px;}.elementor-5100 .elementor-element.elementor-element-3276c5e a .elementor-portfolio-item__overlay{background-color:#0000008F;}.elementor-5100 .elementor-element.elementor-element-3276c5e a .elementor-portfolio-item__title{color:#FFFFFF;}.elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-portfolio-item__title{font-family:"Hanson", Sans-serif;font-size:18px;font-weight:900;letter-spacing:0px;}.elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-portfolio__filter{color:var( --e-global-color-primary );font-size:18px;font-weight:400;text-transform:uppercase;letter-spacing:0px;}.elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-portfolio__filter.elementor-active{color:var( --e-global-color-secondary );}.elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-portfolio__filter:not(:last-child){margin-right:calc(10px/2);}.elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-portfolio__filter:not(:first-child){margin-left:calc(10px/2);}.elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-portfolio__filters{margin-bottom:40px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-msie .elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-portfolio-item{width:calc( 100% / 2 );}}@media(max-width:767px){.elementor-5100 .elementor-element.elementor-element-f657778 .elementor-heading-title{font-size:30px;}.elementor-msie .elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-portfolio-item{width:calc( 100% / 1 );}}@media(min-width:768px){.elementor-5100 .elementor-element.elementor-element-922a761{--width:90%;}}/* Start custom CSS for portfolio, class: .elementor-element-3276c5e */.elementor-portfolio__filters {
    display: flex !important;
    justify-content: flex-end !important;
}

.elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-portfolio-item__overlay {
    opacity: 1; /* Assure que l'overlay est toujours visible */
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 0px;
    position: absolute;
    background-color: rgba(0, 0, 0, 0.5); /* Ajoute un fond semi-transparent pour mieux voir le titre */
    transition: opacity 0.3s ease-in-out;
}

.elementor-5100 .elementor-element.elementor-element-3276c5e .elementor-portfolio-item__title {
    position: absolute;
    top: 50%; /* Centre verticalement */
    left: 50%; /* Centre horizontalement */
    transform: translate(-50%, -50%); /* Ajuste le positionnement pour centrer parfaitement */
    text-align: center; /* Centre le texte à l'intérieur du titre */
    color: #fff; /* Assure que le texte est visible sur l'overlay */
    z-index: 2;
    white-space: nowrap; /* Empêche le texte de se diviser en plusieurs lignes */
    overflow: hidden; /* Cache le texte qui déborde si nécessaire */
    text-overflow: ellipsis; /* Ajoute des points de suspension si le texte est trop long */
    max-width: 90%; /* Limite la largeur maximale pour éviter le débordement */
}


.portfolio-first-tag {
    font-family: 'helvetica now display', sans-serif;
    font-weight: 300;
    font-size: 12px;
    color: #fff;
    margin-top: 45px;
    text-transform: capitalize;
}/* End custom CSS */