/*
Theme Name: Flatsome IMTM
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/

html {
	font-display: swap;
}
@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/
	h1{
		font-size: 1.8rem !important;
	}
	
	h2{
		font-size: 2rem !important;
		line-height: 2.5rem !important;
	}
}

/* Styles globaux */
.p-0{
	padding: 0 !important;
}

.row-spaced{
	display: flex !important;
	justify-content: space-around !important;
}

.row-spaced-between{
	display: flex !important;
	justify-content: space-between !important;
}

.point{
	margin-top: calc(50% - 20px); 
}

.zindex-9{
	z-index: 999 !important;
}

.zindex-0{
	z-index:0;
}

.mb-0{
	margin-bottom: 0;
}

.no-after:after{
	content: none;
}

/* Counter number */
.wpsm_counterbox{
	margin-bottom: 0 !important;
}

/* Timeline */



.icon-box-img .icon img{
	position: relative;
	z-index: 999999;
}

.is-border{
	z-index: -1;
}

/* .col-collapse-down{
	max-height: 0;
	overflow: hidden;
	transition: max-height .5s ease-in-out;
}

.col-collapse-upper::after{
	content: "\2228"; 
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
	font-size: 20px;
	color: #ffffff;
	font-weight: bold;
} */

.overflow-hidden{
	overflow: hidden;
}

/* Matériel */
.material-col{
	transition: all .2s ease;
}

/* .material-col .col-inner{
	margin-left: 0;
	transition: all .5s ease;
} */

.material-col:hover{
	background-color: #f0f4fa;
	margin-left: 10px;
}

/* .material-col:hover .col-inner{
	margin-left: 10px;
} */

/* Services */
.service-col{
	transition: all .3s ease;
}

@media (min-width: 451px) {
	.service-col > .col-inner {
		min-height: 450px;
	}
}

/* .service-col:hover{
	transform: translateY(-7px);
} */

.service-final-col > .col-inner {
	min-height: 300px;
}
/* Services slider*/
.n2-ss-button-container{
	transition: all .3s ease;
}

.n2-ss-button-container:hover{
	transform: translateY(-3px);
}

/* Services chaudronnerie */
.service-chaudron-col{
	transition: transform .3s ease-in-out;
}

/* .service-chaudron-col:hover{
	transform: scale(1.1);
	z-index: 999;
} */

.service-chaudron-col.hovered{
	transform: scale(1.1);
	z-index: 999;
}

/* Contact */
.contact-section{
	background: rgb(0,0,128);
	background: linear-gradient(180deg, rgba(0,0,128,1) 0%, rgba(0,0,128,1) 50%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
}

/* Conteneur service */
.banderole-service{
	background-color: #313131;
}

.banner-conteneur{
	transform: translate(3px, -3px);
	box-shadow: -10px 10px 0 0 #000080;
	transition: transform .2s ease, box-shadow .2s ease;
}

.banner-conteneur:hover{
	box-shadow: none;
	transform: translate(-3px, 3px);
}

.banner-conteneur-invert{
	transform: translate(-3px, 3px);
	box-shadow: 10px -10px 0 0 #fff;
	transition: transform .2s ease, box-shadow .2s ease;
}

.banner-conteneur-invert:hover{
	box-shadow: none;
	transform: translate(3px, -3px);
}

.column-left-border-radius .col-inner {
	border-radius: 10px 0px 0px 10px;
	height: auto;
	box-shadow: 3px 2px 5px rgb(2, 0, 13, .4);
	z-index: 10;
}

.column-right-border-radius .col-inner {
	padding-top: 7px;
	border-radius:0px  10px  10px 0px;
	box-shadow: 3px 2px 5px rgb(2, 0, 13, .4);
	z-index: 10;
}

.text-no-padding p,
.text-no-padding h2 {
	padding: 0px;
	margin: 0px;
}

.text-no-padding  {
	display: flex;
	height: 75px;
	min-height: auto;
	align-items: center;
}

.title-date-history {
    cursor: default;
}

.detail-date-history {
	max-height: 0px;
	min-height: 0px;
	transition: max-height 0.2s ease, min-height 0.2s ease;
	color: #ffffff00;
	width: 90%;
}

.gap-date-in-history {
	height: 50px;
	transition: padding-top 0.2s ease;
}

/* CSS RELATIF AUX TEMPLATES DES PAGES DE SERVICE */

.blue-card-icon .col-inner{
	transition: transform 0.2s ease;
}

.blue-card-icon .col-inner:hover{
	transform: translatey(-8px);
	transition-delay: 0s;

}

.blue-card-icon .col-inner:not(:hover){
	transition-delay: 0.2s;
}

/* ----------- */

.blue-card-icon-y{
	transition: transform 0.2s ease;
}

.blue-card-icon-y:hover{
	transform: translatey(-8px);
}



.white-card-icon .col-inner{
	transition: transform 0.2s ease;
}

.white-card-icon .col-inner:hover{
	transform: translatey(8px);
	transition-delay: 0s;

}

.white-card-icon .col-inner:not(:hover){
	transition-delay: 0.2s;
}

.white-card-icon-y{
	transition: transform 0.2s ease;
}

.white-card-icon-y .col-inner:hover{
	transform: translatey(-8px);
}


.white-card-icon-y:hover{
	transform: translatey(-8px);
}

.section-card-icon{
	background: rgb(255,255,255);
	background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 62%, rgba(224,229,235,1) 62%, rgba(224,229,235,1) 100%);
}

.blue-card-icon,
.white-card-icon{
	z-index: 999 !important;
}

/* .blue-card-icon .col-inner .icon-box .icon .icon-inner{
	background-color: #fff !important;
	color: #000080 !important;
}

.white-card-icon .col-inner .icon-box .icon .icon-inner{
	background-color: #000080;
	color: #fff;
} */

/* .titre-hover-divider:hover .divider {
	max-width: 100% !important;
} */

/* MEGAMENU */

.link-head-mega-menu a{
	text-decoration: none;
	position: relative;
	color: #E04545;
}
.link-head-mega-menu a span {
	color: #E04545;
	margin-right: 0px;
	transition: margin-right 0.3s ease;
}
.link-head-mega-menu a i {
	color: #E04545;
}
.link-head-mega-menu a span:hover {
	margin-right: 10px;
	transition: margin-right 0.3s ease;
}
.link-head-mega-menu a::after {
	color: #E04545;
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px; 
	width: 100%;
	height: 2px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.3s ease; 
}
  
.link-head-mega-menu a:hover::after {
	color: #E04545;
	transform: scaleX(1);
}



.round-image-info-specialisation {
  	border-radius: 500px;
  	border: 8px solid white; 
  	overflow: hidden;
  	object-fit: cover;
	opacity: 1;
  	transition: opacity 0.6s ease-in-out, transform 0.6s ease-in-out; 
  	transform: translateY(20px);
	box-sizing: border-box;
	z-index: 2;
}
.round-image-info-specialisation.visible {
  opacity: 1;
  transform: translateY(0); 
}

.gap-bakgroud-red {
	background-color: #D40000;
	margin-top: -5%;
}

/* GLOBAL CSS */

.bounce-hover{
	transition: transform 0.3s ease;
}

.col-text-card-service{
	min-height: 200px;
	max-height: 200px;
}

.bounce-hover:hover{
	transform: translatey(-8px);
}

.bounce-hover-min{
	transition: transform 0.3s ease;
}

.bounce-hover-min:hover{
	transform: translate(1px, -3px);
}

.section-noir-blanc-degrade{
	background: rgb(255,255,255);
	background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 50%, rgba(49,49,49,1) 50%, rgba(49,49,49,1) 100%);
}

.section-noir-blanc-degrade-sous-service{
	background: rgb(255,255,255);
	background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 60%, rgba(49,49,49,1) 60%, rgba(49,49,49,1) 100%);
}

.p-0{
	padding: 0px !important;
}

.z-index-minus-1 {
	z-index: -1;
}

.mp0 {
	margin: 0;
	padding: 0;
}

.titre-section h2{
/* 	font-size: 3.5rem; */
	line-height: 3.8rem;
	font-weight: bold;
 	font-size: 110%; 
}

.titre-section h3{
	font-size: 2.5rem;
	line-height: 2.7rem;
}

.sous-titre-section{
	font-size: 1.5rem;
	line-height: 2rem;
}

.numero-en-haut h2 {
	z-index: 1000;
}

.blue-card {
	padding: 20px 10px 20px 10px;
	margin: 0px 20px 10px 20px;
	display: flex;
	justify-content: center;
	align-items:start;
}

.grid-rounded > .col-inner {
	border-radius : 10px;
}

.grid-rounded > .col-inner > .banner{
	border-radius : 10px;
}


.grid-rounded > .col-inner > .banner .banner-bg {
	border-radius : 10px;
}

.avantages-border-radius {
	border-radius: 30px 0 0 30px;
	box-shadow: 0 1px 1px rgba(0,0,0,0.11), 
		0 2px 2px rgba(0,0,0,0.11), 
		0 4px 4px rgba(0,0,0,0.11), 
		0 6px 8px rgba(0,0,0,0.11),
		0 8px 16px rgba(0,0,0,0.11);
}

.avantages-border-radius > .section-bg > .section-bg-overlay {
	border-radius: 30px 0 0 30px;
}

.avantages-border-radius > .section-bg > img {
	border-radius: 30px 0 0 30px;
}

.tire-langue-radius-droite {
	border-radius: 0 30px 30px 0;
	box-shadow: 0 1px 1px rgba(0,0,0,0.11), 
		0 2px 2px rgba(0,0,0,0.11), 
		0 4px 4px rgba(0,0,0,0.11), 
		0 6px 8px rgba(0,0,0,0.11),
		0 8px 16px rgba(0,0,0,0.11);
}

.tire-langue-radius-droite > .section-bg > .section-bg-overlay {
	border-radius: 0 30px 30px 0;
}

.tire-langue-radius-droite > .section-bg > img {
	border-radius: 0 30px 30px 0;
}

.banner-radius > .banner-inner > .banner-bg {
	border-radius: 15px;
  	box-shadow: 0 1px 1px rgba(0,0,0,0.11), 
              0 2px 2px rgba(0,0,0,0.11), 
              0 4px 4px rgba(0,0,0,0.11), 
              0 6px 8px rgba(0,0,0,0.11),
              0 8px 16px rgba(0,0,0,0.11);
}

.zindex0 {
	z-index:-1;
}

@media only screen and (min-width: 1024px) {
	
	.tire-langue {
		transition: transform .6s ease-in-out;
	}

	.tire-langue:hover {
		transform: translatex(-60px);
	}

	.tire-langue-gauche {
		transition: transform .6s ease-in-out;
	}

	.tire-langue-gauche:hover {
		transform: translatex(60px);
	}
	
}
.slider-border-radius {
	border-radius: 30px;
}

.slider-border-radius .section-bg .section-bg-overlay {
	border-radius: 30px;
}

.slider-border-radius .section-bg img {
	border-radius: 30px;
}

.border-radius-15px {
	border-radius:15px;
}

.border-solid-black {
	border: solid #282828 2px;
}

.border-radius-15px img {
	border-radius:15px;
}

.wpcf7 .wpcf7-not-valid-tip {
background-color: #dd3333 !important;
color: #FFF !important;
margin-bottom: 5px;
}

.wpcf7 .wpcf7-not-valid-tip:after {*
border: 10px solid #dd3333 !important;
border-bottom-color: #dd3333 !important;
}

input[type=text], input[type=tel], input[type=email],
input[type=date],
select, textarea {
 	border-radius: 5px;
}

input[type=submit] {
	border-radius:5px;
}

/* Rounded blog posts main page */
.container-blog-post-custom > .post-item > .col-inner {
	border-radius:15px;
}

.container-blog-post-custom > .post-item > .col-inner > .box {
	border-radius:15px;
}

.container-blog-post-custom > .post-item > .col-inner > .box > .box-image > .image-cover img{
	border-radius:15px;
}

.container-blog-post-custom > .post-item > .col-inner > .box > .box-text {
	border-radius: 0 0 15px 15px;
}

/* Hide reCaptcha Badge */
.grecaptcha-badge {
	display:none;
}

.glass > .col-inner {
  backdrop-filter: blur(20px) saturate(160%);
  -webkit-backdrop-filter: blur(20px) saturate(160%);
  background: rgba(250, 250, 250, 0.50);
  border: 1px solid rgba(250, 250, 250, 0.55);
  border-radius: 16px;
}