.elementor-2480 .elementor-element.elementor-element-fe317fe{--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;--padding-top:160px;--padding-bottom:0px;--padding-left:100px;--padding-right:100px;--z-index:1;}.elementor-2480 .elementor-element.elementor-element-2ee8b88{--e-image-carousel-slides-to-show:1;}.elementor-2480 .elementor-element.elementor-element-5d2c1a6{--display:flex;}.elementor-2480 .elementor-element.elementor-element-7279edf{text-align:center;}.elementor-2480 .elementor-element.elementor-element-7279edf .elementor-heading-title{font-family:var( --e-global-typography-800ca6e-font-family ), Sans-serif;font-size:var( --e-global-typography-800ca6e-font-size );font-weight:var( --e-global-typography-800ca6e-font-weight );text-transform:var( --e-global-typography-800ca6e-text-transform );line-height:var( --e-global-typography-800ca6e-line-height );}.elementor-2480 .elementor-element.elementor-element-3ff58e7{text-align:center;}.elementor-2480 .elementor-element.elementor-element-3ff58e7 .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );}.elementor-2480 .elementor-element.elementor-element-c84f651{--display:flex;--gap:50px 50px;--row-gap:50px;--column-gap:50px;--padding-top:50px;--padding-bottom:100px;--padding-left:100px;--padding-right:100px;}.elementor-2480 .elementor-element.elementor-element-4d6b1d9{--grid-columns:3;--grid-row-gap:50px;--load-more-button-align:center;--grid-column-gap:25px;}@media(min-width:768px){.elementor-2480 .elementor-element.elementor-element-5d2c1a6{--width:auto;}}@media(max-width:1024px){.elementor-2480 .elementor-element.elementor-element-fe317fe{--padding-top:160px;--padding-bottom:0px;--padding-left:50px;--padding-right:50px;}.elementor-2480 .elementor-element.elementor-element-7279edf .elementor-heading-title{font-size:var( --e-global-typography-800ca6e-font-size );line-height:var( --e-global-typography-800ca6e-line-height );}.elementor-2480 .elementor-element.elementor-element-3ff58e7 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}.elementor-2480 .elementor-element.elementor-element-c84f651{--padding-top:50px;--padding-bottom:100px;--padding-left:50px;--padding-right:50px;}.elementor-2480 .elementor-element.elementor-element-4d6b1d9{--grid-columns:2;}}@media(max-width:767px){.elementor-2480 .elementor-element.elementor-element-fe317fe{--padding-top:134px;--padding-bottom:0px;--padding-left:25px;--padding-right:25px;}.elementor-2480 .elementor-element.elementor-element-7279edf .elementor-heading-title{font-size:var( --e-global-typography-800ca6e-font-size );line-height:var( --e-global-typography-800ca6e-line-height );}.elementor-2480 .elementor-element.elementor-element-3ff58e7 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}.elementor-2480 .elementor-element.elementor-element-c84f651{--padding-top:25px;--padding-bottom:50px;--padding-left:25px;--padding-right:25px;}.elementor-2480 .elementor-element.elementor-element-4d6b1d9{--grid-columns:1;--grid-row-gap:25px;--grid-column-gap:25px;}}/* Start custom CSS for image-carousel, class: .elementor-element-2ee8b88 */.elementor-2480 .elementor-element.elementor-element-2ee8b88 {
    
    position: absolute;
    inset: 0;
    z-index: 0;
}

.elementor-2480 .elementor-element.elementor-element-2ee8b88 * {
    
    width: 100%;
    height: 100%;
}

.elementor-2480 .elementor-element.elementor-element-2ee8b88 img {
    
    object-fit: cover;
}

.elementor-2480 .elementor-element.elementor-element-2ee8b88:after {
    
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(to top, rgba(255, 255, 255,1)0%, rgba(255, 255, 255,0)100%);
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3ff58e7 */body.post-type-archive-projets .elementor-2480 .elementor-element.elementor-element-3ff58e7 {
    
    display: none;
}

.elementor-2480 .elementor-element.elementor-element-3ff58e7 {
    
    position: absolute;
    left: 50%;
    bottom: 0;
    rotate: -2.5deg;
    translate: -50% -50%;
}

.elementor-2480 .elementor-element.elementor-element-3ff58e7 .elementor-heading-title {
    
    padding: 6.25px 12.5px;
    background: var(--rose);
    line-height: 1;
    display: inline-block;
    text-wrap: nowrap;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4f771d8 */.tax-tabs-content{
    position:relative;
    width: 100%;
}

.tax-panel{
    opacity:0;
    visibility:hidden;
    transition:opacity .3s ease;
    position:absolute;
    inset:0;
    pointer-events:none;
}

.tax-panel.is-active{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    position:relative;
}

.tax-tabs {
    
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 25px;
}

.tax-tabs-nav li {
    
    position: relative;
    z-index: 10;
}

.tax-tabs-nav ul {
    
    gap: 0;
    flex-wrap: nowrap !important;
}

.tax-tabs-nav {
    
    background: var(--blanc90);
    border-radius: 100vh;
    display: flex;
    position: relative;
    flex-wrap: nowrap
}

.elementor-2480 .elementor-element.elementor-element-4f771d8 ul {
    
    list-style: none;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    text-wrap: nowrap;
    position: relative;
}

.tax-list {
    
    gap: 12.5px 50px;
}

.tax-tabs-nav a {
    
    display: inline-block;
    transition: color .3s;
    color: var(--noir);
    padding: 25px;
    line-height: 1;
    
}

.tax-tabs-nav:has(a:hover) a.is-active:not(:hover) {
    color: var(--noir);
}

.tax-tabs-nav a:hover,
.tax-tabs-nav a.is-active {
    color: white;
}

.tax-list a {
    
    color: var(--noir);
    line-height: 1;
    
    background-image: linear-gradient(currentColor, currentColor);
    background-repeat: no-repeat;
    background-size: 0% 2px;
    background-position: bottom right;
    transition: background-size .3s cubic-bezier(.75, 0, .25, 1);
}

.elementor-2480 .elementor-element.elementor-element-4f771d8 li.current-tax a,
.elementor-2480 .elementor-element.elementor-element-4f771d8 li a:hover {
    
    background-size: 100% 2px; 
    background-position: bottom left;
}

@media only screen and (max-width:650px) {
    
.elementor-2480 .elementor-element.elementor-element-4f771d8 ul.tax-list {
        flex-wrap: nowrap;
        overflow-x: auto;
        justify-content: flex-start;
        
    padding: 0 25px 12.5px 25px;
    gap: 37.5px;
    mask-image: linear-gradient(to right,rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 25px, rgba(0, 0, 0, 1) calc(100% - 25px), rgba(0, 0, 0, 0) 100%);
    -webkit-mask-image: linear-gradient(to right,rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 25px, rgba(0, 0, 0, 1) calc(100% - 25px), rgba(0, 0, 0, 0) 100%);

    }
    
    .elementor-2480 .elementor-element.elementor-element-4f771d8 ul.tax-list::-webkit-scrollbar {
    height: 3px;
    background: rgba(0, 0, 0,.25);
    border-radius: 100vh;
}

.elementor-2480 .elementor-element.elementor-element-4f771d8 ul.tax-list::-webkit-scrollbar-thumb {
    
    background: rgba(0, 0, 0 ,.5);
    border-radius: 100vh;
}

}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-4d6b1d9 */.elementor-2480 .elementor-element.elementor-element-4d6b1d9 .e-loop-item > a,
.elementor-2480 .elementor-element.elementor-element-4d6b1d9 .e-loop-item > a > .e-con-inner {
    background: transparent !important;
    padding: 0 !important;
}


.elementor-2480 .elementor-element.elementor-element-4d6b1d9 .elementor-loop-container {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
}

.elementor-2480 .elementor-element.elementor-element-4d6b1d9 .elementor-loop-container > .e-loop-item {
    width: 100% !important;
    min-width: 0;
    grid-column: span 1 !important;
}

.elementor-2480 .elementor-element.elementor-element-4d6b1d9 .elementor-loop-container > :nth-child(10n + 1 of .e-loop-item) {
    grid-column: 1 / span 2 !important;
}

.elementor-2480 .elementor-element.elementor-element-4d6b1d9 .elementor-loop-container > :nth-child(10n + 2 of .e-loop-item) {
    grid-column: 3 !important;
}

.elementor-2480 .elementor-element.elementor-element-4d6b1d9 .elementor-loop-container > :nth-child(10n + 6 of .e-loop-item) {
    grid-column: 1 !important;
}

.elementor-2480 .elementor-element.elementor-element-4d6b1d9 .elementor-loop-container > :nth-child(10n + 7 of .e-loop-item) {
    grid-column: 2 / span 2 !important;
}

@media only screen and (max-width: 1024px) {

    .elementor-2480 .elementor-element.elementor-element-4d6b1d9 .elementor-loop-container {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-auto-flow: row !important;
    }

    .elementor-2480 .elementor-element.elementor-element-4d6b1d9 .elementor-loop-container > .e-loop-item,
    .elementor-2480 .elementor-element.elementor-element-4d6b1d9 .elementor-loop-container > :nth-child(10n + 1 of .e-loop-item),
    .elementor-2480 .elementor-element.elementor-element-4d6b1d9 .elementor-loop-container > :nth-child(10n + 2 of .e-loop-item),
    .elementor-2480 .elementor-element.elementor-element-4d6b1d9 .elementor-loop-container > :nth-child(10n + 6 of .e-loop-item),
    .elementor-2480 .elementor-element.elementor-element-4d6b1d9 .elementor-loop-container > :nth-child(10n + 7 of .e-loop-item) {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        min-width: 0 !important;
    }
}/* End custom CSS */