/*-----------------*/
/* LOADER */
/*-----------------*/
.loader {
 width: 64px;
 height: 64px;
 position: relative;
}
.loader > div{
	width: 64px;
	height: 64px;
	border-width: 4px;
	position: absolute;
	top: 0;
	left: 0;
	background: transparent;
	border-radius: 100%;
	opacity: 0;
	animation: loader-anim 1.25s 0s infinite cubic-bezier(0.21, 0.53, 0.56, 0.8);
	display: inline-block;
	float: none;
	border: 2px solid var(--primary-color);
}
.loader > div:nth-child(1) {
  animation-delay: 0s;
  border-color: var(--secondary-color);
}
.loader > div:nth-child(2) {
  animation-delay: .25s;
  border-color: var(--tertiary-color);
}
.loader > div:nth-child(3) {animation-delay: .5s;}


@keyframes loader-anim {
  0% {
    opacity: 1;
    transform: scale(0.1);
  }
  70% {
    opacity: .5;
    transform: scale(1);
  }
  95% {
    opacity: 0;
  }
}
/*-----------------*/
/* ELEMENTS */
/*-----------------*/

/*-----------------*/
/* HEADER */
/*-----------------*/

#rge-qualibat img{width: 45px;}

/*-----------------*/
/* SOCIAL */
/*-----------------*/
.sociblock:not(#headerHome-social .sociblock) .share-buttons a {
    --size: 35px;
    width: var(--size);
    height: var(--size);
    align-items: center;
    justify-content: center;
    margin: 0 3px;
}

.sociblock:not(#headerHome-social .sociblock) .share-buttons a:before {
    content: '';
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    top: 0;
    border-radius: 100px;
    transition: all ease 250ms;
    border: solid 1px var(--overlay-color);
}

.sociblock:not(#headerHome-social .sociblock) .share-buttons a:hover:before {
    background: var(--primary-color);
    border-color: var(--primary-color);
}

.sociblock:not(#headerHome-social .sociblock) .share-buttons a svg {--size: 15px;}
.sociblock:not(#headerHome-social .sociblock) .share-buttons a:hover svg {fill: var(--white);}
.sociblock:not(#header .sociblock) .share-buttons a svg {fill: var(--white);}
.sociblock:not(#header .sociblock) .share-buttons a:before {border-color: var(--white);}


/*-----------------*/
/* NAVPRIMARY */
/*-----------------*/
.navigmenu .naviglink.lvl-0:not(.button) span:after {
    content: '';
    display: inline-block;
    width: calc(100% - 2px);
    height: 1px;
    background-color: currentColor;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .26s cubic-bezier(.33,.02,0,.93)
}

.navigmenu .naviglink.lvl-0:hover span:after,
.navigmenu .navigtoogle.active .naviglink.lvl-0 span:after{transform: scaleX(1)}
.navigmenu .navigtoogle.active .naviglink.lvl-0 span{color: var(--primary-color)}

/*-----------------*/
/* HEADERHOME */
/*-----------------*/
#headerHome-content{
    text-shadow: 1px 1px 1px var(--black);
}
#headerHome .overlay{
    opacity: 0.6;
}
#headerHome, #banner{
	width: calc(100% - 80px);
    margin: 0 auto;
}
/*-----------------*/
/* GALLERY HOME */
/*-----------------*/

/*-----------------*/
/* PRODUITS HOME */
/*-----------------*/

/*-----------------*/
/* CONTENT */
/*-----------------*/
blockquote strong, 
.wp-block-quote strong{
    color: var(--tertiary-color);
}

.wp-block-gallery.logos-list img{
    max-height: 120px!important;
    object-fit: contain!important;
}

/*-----------------*/
/* CONTENT GALERIE PROJETS */
/*-----------------*/
.home #content .title{max-width: 660px;}
#projectGallery {
    column-count: 3;
    column-gap: 40px;
}

#projectGallery .gallery-item {
    break-inside: avoid;
    margin-bottom: 80px!important;
}


#projectGallery .gallery-img img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
}

#projectGallery .gallery-title {margin: 20px 0 0;}

#projectGallery .gallery-title h2 {
    margin: 0;
    font-size: 22px;
  
    display: inline-block;
}
#projectGallery .gallery-title h2 a{
	 background-size: 100% 96%;
    background-repeat: no-repeat;
    background-image: -o-linear-gradient(transparent calc(100% - 2px),currentColor 2px);
    background-image: linear-gradient(transparent calc(100% - 2px),currentColor 2px);
    background-image: -ms-linear-gradient(transparent 95%,currentColor 2px);
    -webkit-transition: .6s cubic-bezier(.215,.61,.355,1);
    -o-transition: .6s cubic-bezier(.215,.61,.355,1);
    transition: .6s cubic-bezier(.215,.61,.355,1);
    background-size: 0 96%;
}

#projectGallery .gallery-item:hover .image_content .blocthumb:before{
    opacity: 0;
}

#projectGallery .gallery-item:hover .gallery-title h2 a{background-size: 100% 100%;}

#projectGallery .gallery-category {
    font-size: 11px;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin: 0 0 2px;
}

#projectGallery.gallery a.title_content {color: var(--title-color);}
#projectGallery.gallery .gallery-item a:not(.button):after {content: none;}


/*-----------------*/
/* PRESTATIONS */
/*-----------------*/

/*-----------------*/
/* ACTU */
/*-----------------*/
#listarticles .title_slider{font-size: 20px;}
#listarticles .content_slider {padding: 30px 0 0;}

.design-link {
    display: inline-flex;
    align-items: center;
    padding: 0;
    padding-left: 52px;
    text-transform: uppercase;
    font-family: var(--font-bold);
    font-size: 12px;
    letter-spacing: 1px;
    position: relative;
    color: var(--title-color);
}

.design-link:before, .design-link:after {
    content: '';
    position: absolute;
    width: 46px;
    background: var(--text-color);
    height: 1px;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    transition: all .3s linear 0s
}

.design-link.white {color: var(--white)}
.design-link.white:before, .design-link.white:after {background: var(--white)}

.design-link span:before {
    content: "";
    --size: 6px;
    width: var(--size);
    height: var(--size);
    display: inline-block;
    margin: 0;
    margin-right: 6px;
    order: -1;
    background: var(--secondary-color);
    z-index: 1;
    position: relative;
    vertical-align: middle;
    top: -1px;
    border-radius: 100%;
}

.design-link:after {
    width: 0;
    left: unset;
    right: 0
}

.design-link:hover {
    padding-left: 0;
    padding-right: 52px;
    color: var(--secondary-color);
}

.design-link:hover:before {width: 0}

.design-link:hover:after {width: 46px}

#news .thumbnail_slider a {
    overflow: hidden;
    display: block;
    height: 100%;
}

#news .thumbnail_slider img {transition: transform .8s cubic-bezier(0,.14,.19,1), opacity .8s cubic-bezier(0,.14,.19,1);}

#news .wrapper_slider:hover .thumbnail_slider img {transform: scale(1.08);}

.title_slider {
    text-transform: uppercase;
    font-size: 15px;
    line-height: 1.5;
    font-family: var(--font-text);
    font-weight: bold;
    letter-spacing: 0.4px;
}

.title_link_slider, .title_content {
    background-repeat: no-repeat;
    background-image: linear-gradient(transparent calc(100% - 1px), currentColor 1px);
    transition: .4s cubic-bezier(.215,.61,.355,1);
    background-size: 0 100%;
}
.title_slider:hover :is(.title_link_slider, .title_content) {background-size: 100% 100%;}

#news .newsdate {
    position: absolute;
    left: -10px;
    top: 20px;
    z-index: 2
}

#news .newsdate {
    padding: 0;
    color: var(--secondary-color);
}

#news .newsdate span {
    position: relative;
    padding: 5px 12px 5px 10px;
    color: var(--white);
    background-color: var(--primary-color);
    border-radius: 0 5px 5px 0
}

#news .newsdate span:after {
    content: "";
    display: block;
    background-color: #076689;
    height: 5px;
    width: 10px;
    left: 0;
    position: absolute;
    top: -2px;
    transform: skewY(-18deg);
    z-index: -1
}

#news .wrapper_inner_slider {
    height: 100%;
    position: relative;
}

#news #news-title {margin-bottom: 20px;}

#news #news-title h2 {
    font-family: var(--font-alt);
    font-size: 60px;
}

#news .next_slider {margin-top: 0;}
#news .content_slider {padding: 20px 0 0;}
#news .wrapper_inner_slider {background: none;}

/*-----------------*/
/* SECTIONS */
/*-----------------*/

/*-----------------*/
/* REASSURANCES */
/*-----------------*/
#reassurances{background-image: url('../images/home-bg1.jpg');}

.picto-container li{
	position: relative;
	flex: 1 1 50%;
	text-align: left;
	flex-direction: row;
	padding: 20px 40px;
}
.picto-container li:first-child,
.picto-container li:nth-child(3){
	text-align: right;
	flex-direction: row-reverse;
}
.picto-container{ flex-wrap: wrap;}
.picto-container li p{
	margin: 0 0  0 40px;
	text-transform: uppercase;
	font-family: var(--font-bold);
	letter-spacing: 1px;
	color: var(--white);
}
.picto-container li:first-child:before,
.picto-container li:nth-child(3):before{
	right: 20px;
	left: auto;
}

.picto-container li:first-child p,
.picto-container li:nth-child(3) p{
	margin: 0 40px  0 0;
}
.picto-container li:before{
	content: "";
	--size: 70px;
	width: var(--size);
	height: var(--size);
	border: solid 2px var(--secondary-color);
	position: absolute;
	top: 0;
	left: 20px;
	border-radius: 60px;
}

/*-----------------*/
/* PARTENAIRES */
/*-----------------*/
#partenaires{background-image: url('../images/home-bg1.jpg');}
.partenaires-header {margin-bottom: 60px}

#partenaires .widget_partenaires {
    background-color: #fff;
    border-bottom: none;
    border-right: 0;
    position: relative;
    z-index: 2
}

#partenaires .widget_partenaires li {
    border: 1px solid #eee;
    min-height: 200px
}

#partenaires .widget_partenaires img {
    max-width: 81%;
    height: auto;
    max-height: 100px
}
#partenaires .widget_partenaires li .wrap-element{
    height: auto;
    border: none;
    padding: 0;
}

#partenaires .partenaires-intro{
    background-image: url('../images/home-bg2.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 250px;
    width: 100%;
}
/*-----------------*/
/* NEWSLETTER */
/*-----------------*/

/*-----------------*/
/* SHARE */
/*-----------------*/

/*-----------------*/
/* AGENCES */
/*-----------------*/

/*-----------------*/
/* CONTACTFORM */
/*-----------------*/
#contactCoordonnees > div :is(span, .titlehoraires){color: var(--tertiary-color)}
#contactCoordonnees > div a:hover{color: var(--tertiary-color)}
#contactCoordonnees > div:before{filter: hue-rotate(-40deg) saturate(260%)  brightness(80%)  contrast(115%);}
/*-----------------*/
/* FOOTER */
/*-----------------*/
#footer{background-color: var(--title-color);}
#footerLogo{gap: 10px;}
#partenairesLogo img{margin: 0 4px;}
#partenairesLogo img.rcsa{width: 85px;}
#partenairesLogo img.sig{width: 95px;}

#footerLinks{background: var(--overlay-color);}
#footerSeo{font-size: 14px;}



#footerSocial{margin-top: 10px;}