/**** CUSTOM CSS BY NIIX ****/

/**** GLOBAL CSS ****/

html {
    overflow-x: hidden important;
}
body h1, h2, h3, h4, h5, h6, h7 {
    padding: 0 !important;
    margin: 0 !important;
}
body a {
    text-decoration: none !important;
}
body {
    overflow-x: hidden important;
    background-color: #0c0d19;
}
body p {
	margin: 0 !important;
}

/**** HEADER CSS ****/
.header {
	backdrop-filter: blur(5px);
    transition: all .4s !important;
}
.header.nav-scroll {
	background-color: #1c1c1c73 !important;
}

/**** ACCUEIL CSS ****/
.section-expertise .col-left-expertise {
	backdrop-filter: blur(10px);
}
.section-expertise .col-left-bg:before {
	content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #000;
    opacity: 0.3;
}
.home .banner:after {
    content: "";
    display: block !important;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    background-image: url(/wp-content/uploads/2025/12/filtre-banner.svg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: left bottom;
    z-index: -1;
}
.page .banner:after {
    display: none;
}
.counter-item .elementor-counter-number-wrapper {
    margin-bottom: 30px;
}
.counter-item-1 .elementor-counter-number-wrapper {
    margin-bottom: 90px;
}
.counter-item-2 .elementor-counter-number-wrapper {
    display: flex;
    flex-direction: column;
    margin-bottom: 50px !important;
}
.counter-item-2 span.elementor-counter-number-suffix {
    font-size: 70px;
    line-height: 40px;
    text-align: center;
}
.counter-item-3 span.elementor-counter-number-suffix {
    display: flex;
    align-items: center;
    font-size: 70px;
    line-height: 40px;
    padding-top: 20px;
    padding-left: 20px;
}
.atout-item h3 {
	margin-bottom: 60px !important;
}
.atout-item {
	height: max-content !important;
	position: relative;
	flex: 1;
}
.ctSlide {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
.partenaire-slider .swiper-slide {
	height: 250px !important;
}
.partenaire-slider .swiper-slide:first-child {
	border-left: 1px solid #BDBDBD80 !important;
}
.section-slider-footer:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-image: url('/wp-content/uploads/2025/12/pattern.png');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.catalogue-slider .elementor-swiper-button.elementor-swiper-button-next:before {
    content: "";
    display: block;
    width: 50px;
    height: 50px;
    position: absolute;
    top: -12px;
    left: auto;
    right: 20px;
    background-image: url(/wp-content/uploads/2025/12/arrow-right-slider.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.catalogue-slider .elementor-swiper-button.elementor-swiper-button-next svg {
	display: none !important;
}
.catalogue-slider .elementor-swiper-button.elementor-swiper-button-prev:before {
    content: "";
    display: block;
    width: 50px;
    height: 50px;
    position: absolute;
    top: -12px;
    left: 20px;
    right: auto;
    background-image: url(/wp-content/uploads/2025/12/arrow-left-slider.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.catalogue-slider .elementor-swiper-button.elementor-swiper-button-prev svg {
	display: none !important;
}
.img-filter {
	overflow: hidden !important;
    position: relative;
	z-index: 0;
}
.img-filter:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%; 
	position: absolute;
    top: 0;
	left: 0;
	background-color: #000;
    opacity: 0.2 !important;
    pointer-events: none !important;
}
.prod-item-home {
	transition: all .4s !important;
}
.prod-item-home .elementor-cta__title {
    margin-bottom: 15px !important;
	transition: all .4s !important;
}
.prod-item-home .elementor-cta__description {
    display: none;
	transition: all .4s !important;
}
.prod-item-home .elementor-cta__button-wrapper {
    display: none;
	transition: all .4s !important;
}
.prod-item-home .elementor-cta__content {
	transition: all .4s !important;
}
.prod-item-home .elementor-cta__content:hover {
	backdrop-filter : blur(8px) !important;
}
.prod-item-home:hover .elementor-cta__description {
    display: block;
}
.prod-item-home:hover .elementor-cta__button-wrapper {
    display: block;
}

.partenaire-slider .swiper-wrapper {
  animation: textScrolling 100s linear infinite;
}
.partenaire-slider .swiper img {
	display:block;
	width:85% !important;
	height:auto;
	object-fit:contain;
	margin:0 auto;
}
.partenaire-slider  {
 /* animation: textScrolling 20s linear infinite;*/
}
.slidePartenaire {
	border-top: 1px solid #BDBDBD80 !important;
	border-bottom: 1px solid #BDBDBD80 !important;

	.slick-slide {
		width: 320px;
	    height: 250px !important;
	    border-left: 1px solid #BDBDBD80 !important;

	    a {
	    	display: flex;
	    	justify-content: center;
	    	align-items: center;
	    	width: 350px;
	    	height: 250px;

	    	img {
	    		display: block;
	    		width: 80% !important;
	    		height: auto;
	    	}
	    }
	}
}

@keyframes textScrolling {
   0% {
	   transform: translate3d(0%, 0, 0);
	}
	100% {
	   transform: translate3d(-1100%, 0, 0);
	}
}

.wp-block-buttons {
	margin: 44px 0 0;

	.wp-block-button__link {
	    width: 100%;
	    background: #fff;
	    border-radius: 0;
	    color: #001233 !important;
	    border: 1px solid #fff !important;
	    transition: all 400ms ease-in-out;
	}

	.wp-block-button__link:hover {
	    background: transparent !important;
	    color: #fff !important;
	}
}
@media (max-width: 768px){
	.wp-block-buttons>.wp-block-button {
	    display: inline-block;
	    margin: 0 auto;
	    width: 100%;
	    max-width: 400px;
	}
}

#posts-container {
	grid-row-gap: 40px !important;
}
.titlePost {
	margin-top: 10px;

	h3 {
		color: #fff !important;
		font-size: 24px;
		text-align: center;
	}
}
.single-post {
	.thumbnail {
		.title {
			text-transform: uppercase;
		}
	}
}
.search-container {
	width: 430px;
	position: absolute;
	top: -75px;
	right: 0;

	#search-input {
		border-color: #fff !important;
	}

	#search-button {
		display: block;
		width: 40px;
        position: absolute;
        top: 1px;
        bottom: 1px;
        right: 1px;
        z-index: 1;
        background: #010101;
        font-size: 0;
        padding: 0 !important;

        &::before {
        	content: '';
        	background: url(/wp-content/uploads/2026/01/icone-search.png) center no-repeat;
        	background-size: contain;
        	width: 20px;
        	height: 21px;
        	position: absolute;
        	top: 0;
        	bottom: 0;
        	left: 0;
        	right: 0;
        	z-index: 1;
        	filter: brightness(100) invert(1);
            margin: auto;
        }
	}

	#reset-search {
		display: block;
		width: 40px;
		background: url(/wp-content/uploads/2026/01/icone-reset.png) center no-repeat;
		background-size: 55%;
		position: absolute;
        top: 0;
        bottom: 0;
        left: -45px;
        z-index: 1;
        font-size: 0;
        padding: 0 !important;
        border: none !important;
	}
}
#search-results-count {
	color: #fff;
    font-size: 16px;
}
#filters {
	.category-filters {
		.filter-button {
	    	padding: 0 15px 0 0 !important;
	    }
	}
}
.elementor-post-navigation__link {
	.post-navigation__arrow-wrapper {
		filter: invert(1);
	}
}

.img2 {
	width: min-width;
}
.imgAbs {
	overflow: hidden;
}

@media (max-width: 1024px){
	.search-container {
	    width: 100%;
	    position: relative;
	    top: 0;
	    max-width: 460px;
	    margin: 15px 0;
	}
	.imgAbs {
		position: relative !important;
	}
}
@media (max-width: 768px){
	#posts-container {
		grid-row-gap: 30px !important;
	}
	.titlePost {
		margin-top: 5px;

		h3 {
			font-size: 20px;
		}
	}
}

/**** BTN BACK TO TOP ****/
.back-to-top {
	display: none;
    cursor: pointer;
}
.back-to-top .elementor-icon-wrapper {
    height: 25px !important;
}

/**** RESPONSIVE SITE ****/
@media screen and (min-width: 1500px) {
	.partenaire-slider .swiper-slide {
		height: 320px !important;
	}
}

@media screen and (min-width: 981px) {
	.header .menu-header a.elementor-item {
		transition: all .4s !important;
	}
	.header .menu-header a.elementor-item.elementor-item-active {
		font-weight: 600 !important;
        transition: all .4s !important;
	}
    .header .menu-header a.elementor-item:hover {
		font-weight: 600 !important;
	}
	.atout-item .elementor-image-box-content {
		height: 268px;
	}
}
@media screen and (max-width: 1024px) {
	body .header {
		background-color: #00000080 !important;
	}
	.counter-item-1 .elementor-counter-number-wrapper {
		margin-bottom: 10px !important;
	}
    .partenaire-slider .swiper-slide {
		border: 1px solid #BDBDBD80 !important;
	}
	.atout-item h3 {
		margin-bottom: 20px !important;
	}
	body .img2 {
		position: relative !important;

		a {
			display: block !important;
		}
	}
}
@media screen and (max-width: 767px) {
	.phone-header span.elementor-icon-list-text {
		display: none !important;
	}
	.phone-header span.elementor-icon-list-icon {
        display: flex;
		justify-content: center;
		align-items: center;
        /*width: 24.75px !important;
        height: 24.75px !important;*/
		padding: 6px !important;
		border-radius: 4px !important;
		background-color: #fff !important;
	}
	.phone-header span.elementor-icon-list-icon svg {
		filter: brightness(0) !important;
		margin-right: 0 !important;
	}
	.counter-item-3 .elementor-counter-number-wrapper {
		display: flex;
		flex-direction: column;
        margin-bottom: 40px !important;
	}
	.counter-item-2 .elementor-counter-number-wrapper {
		display: flex;
		flex-direction: column;
		margin-bottom: 25px !important;
	}
	.counter-item-3 span.elementor-counter-number-suffix {
		display: flex;
		align-items: center;
		font-size: 70px;
		line-height: 40px;
		padding-top: 0;
		padding-left: 0;
	}
	.counter-item {
		width: 100%;
		padding: 25px !important;
		background-color: #fff;
	}
	.counter-item .elementor-counter-title {
		text-align: center;
        display: flex;
        justify-content: center !important;
	}
    .counter-item .elementor-counter-title br {
		display: none !important;
	}
	.counter-item-2 span.elementor-counter-number-suffix {
		font-size: 50px;
		line-height: 15px;
		text-align: center;
	}
	.counter-item-3 span.elementor-counter-number-suffix {
		display: flex;
        justify-content: center !important;
        font-size: 50px;
        line-height: 30px;
        text-align: center;
	}
	.counter-item-3 .elementor-counter-number-wrapper {
		display: flex;
		flex-direction: column;
		margin-bottom: 30px !important;
	}
	body .atout-item h3 {
		margin-bottom: 15px !important;
	}
	.partenaire-slider .swiper-slide {
		border: 1px solid #BDBDBD80 !important;
	}		
}

@media screen and (max-width: 591px) {
	.btn-banner {
        margin-right: 0 !important;
		margin-bottom: 15px !important;
	}
}
/**** COOKIEYES CUSTOM CSS ****/
.cky-consent-container {
	width: 503px !important;
}
.cky-consent-container .cky-consent-bar {
	border-radius: 0 !important;
}
.cky-btn-revisit-wrapper {
  width: 30px !important;
  height: 30px !important;
}
.cky-btn-revisit-wrapper .cky-btn-revisit img {
  height: 20px !important;
  width: 20px !important;
}
.cky-btn-reject, .cky-btn-customize, .cky-btn-preferences {
	color:#1e1c1c !important;
    border-color: #fff !important;
}
.cky-btn-accept {
	color: #fff !important;
    background-color:#1e1c1c !important;
    border-color:#1e1c1c !important;
}
.cky-btn:hover {
    background: #1e1c1c !important;
    border-color: #1e1c1c !important;
    color: #fff !important;
	opacity:1 !important;
}
.cky-btn-revisit-wrapper {
	background-color:#1e1c1c !important;
}
.cky-notice-btn-wrapper {
	flex-wrap: nowrap !important;
}
.cky-notice-btn-wrapper .cky-btn {
    text-shadow: none;
    box-shadow: none;
    padding: 20px !important;
}
@media (max-width: 680px){
	body .cky-btn {
	    width: 100% !important;
	    justify-content: center !important;
	}
	body .cky-custom-brand-logo-wrapper, 
	body .cky-notice .cky-title, 
	body .cky-notice-des, 
	body .cky-notice-btn-wrapper {
        padding: 0 !important;
    }
    body .cky-notice {
    	text-align: center;
    }
}
