/*
Theme Name: Groupe Erhard
Description: This is a custom child theme for Salient
Theme URI:   https://themeforest.net/item/salient-responsive-multipurpose-theme/4363266
Author: ASTERIUM
Author URI:  https://www.asterium.fr
Template: salient
Version: 1.0
*/



/* Colors */
:root {
--jaune: #FFBF00;
--jaunemoyen: #FFDA6B;
--brun: #A47B00;
--brundore: #BD8E00;
--brunclair: #EAE1DB;
--bruntresclair: #F8F6F4; 
--brunliens: #705300;

--blanc: #fff;
--noir: #000;

--gris: #ccc;
--gris-clair: #9CA3AF;
--gris-moyen: #666;
--gris-fonce: #333;
--gris-fond: #F3F4F6;
}



.container.main-content {
	color: var(--noir);
}
body {
	font-family: 'Manrope';
	font-size: 18px;
}
h1,h2,h3,h4,h5,h6 {
	font-family: 'Outfit';
}
h1, h2, h3 {
	color: var(--noir);
}
h3 {
	line-height: 28px;
}
body.home h1,
body.home h2 {
	font-size: 50px;
	line-height: 56px;
}
body.home h1,
body.home .wpb_row:not(.entreprise_familiale) h1 {
	color: var(--noir);
}
@media (max-width: 900px) {
	body.home .wpb_row.entreprise_familiale h1 {
		color: var(--blanc);
	}
}

@media (max-width: 800px) {
	h1 {
		font-size: 42px !important;
		line-height: 47px !important;
	}
	h2 {
		font-size: 36px !important;
		line-height: 40px !important;
	}
}
body:not(.home) h1:after {
	content: "";
	display: block;
	width: 66px;
	height: 6px;
	background: var(--brun);
	border-radius: 4px;
  margin-top: 15px;
  margin-bottom: 30px;
}
body.page .wpb_text_column a {
	color: var(--brunliens);
}
body.page .wpb_text_column a:hover {
	text-decoration: underline;
}




/* Wysiwyg */
.chapeau {
  font-size: 20px;
  line-height: 24px;
  font-weight: 600;
}
.texte_brun {
  color: #C74B2A !important;
}
.texte_bordeau {
  color: #963E4F !important;
}
.sur-titre-brun {
    display: inline-block;
    padding: 3px 10px 0 10px;
    font-size: 15px;
    text-transform: uppercase;
    color: var(--brun);
}
.etiquette {
    display: inline-block;
    padding: 2px 10px 0 10px;
    border-radius: 8px;
    font-size: 14px;
    text-transform: uppercase;
    color: var(--noir);
    background-color: var(--brunclair);
}
p:has(span.sur-titre-brun),
p:has(span.etiquette) {
	padding-bottom: 0;
}
.bouton {
  position: relative;
  display: inline-block;
  border-style: none;
  border-radius: 2px;
  padding: 12px 20px;
  background-color: var(--brun);
  color: var(--blanc) !important;
  font-weight: 500;
  font-size: 15px;
  text-transform: uppercase;
}
.bouton_pdf {
  position: relative;
  display: inline-block;
  border: 1px solid var(--brun);
  border-radius: 4px;
  padding: 10px 20px 10px 40px;
  background: var(--blanc) url('../images/icones/document.png') no-repeat 10px center;
  background-size: auto 22px;
  color: var(--noir);
  font-weight: 500;
  font-size: 14px;
  line-height: 14px;
  text-transform: uppercase;
}
@media (min-width:1200px) {
	.bouton_pdf:hover {
		background: var(--brun) url('../images/icones/document.png') no-repeat 10px center;
		background-size: auto 20px;
		color: var(--blanc);
	}
}
.lien {
	position: relative;
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	margin-top: auto;
	padding-right: 30px;
	font-size: 13px;
	line-height: 20px;
	text-transform: uppercase;
	color: var(--noir);
	text-decoration: none;
}
	.lien:after {
		content: "";
		position: absolute;
		right: 0;
		top: 50%;
		width: 16px;
		height: 16px;
		transform: translateY(-50%);
		background: url("../images/arrow-right.png") center center / contain no-repeat;
	}
.lien_email {
  position: relative;
  display: inline-block;
  padding: 2px 0 2px 20px;
  margin: 5px 0;
  background: transparent url('../images/icones/icone_lettre.png') no-repeat left 4px;
  background-size: auto 14px;
  font-weight: 500;
  font-size: 14px;
  line-height: 14px;
}



blockquote {
	font-size: 18px !important;
	line-height: 25px !important;
}





/* Slider */
.swiper-slide .content h2 {
	font-size: 46px;
	line-height: 46px;
	font-weight: 600;
}
.swiper-slide .content h2,
.swiper-slide .content p {
	text-shadow: 1px 1px 3px rgba(0,0,0,0.9);
}
.swiper-slide .content .buttons .button a {
	background-color: var(--brun) !important;
}
.swiper-slide:after {
	content: "";
	width: 100%;
	height: 100%;
	z-index: 10;
	position: absolute;
	top: 0;
	left: 0;
	background: linear-gradient(90deg, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0) 60%);
}
@media (min-width: 1200px) {
	.swiper-slide .content {
		max-width: 80%;
	}
}
@media (max-width: 600px) {
	.swiper-slide .content p {
		display: none;
	}
	.swiper-slide:after {
		background: linear-gradient(90deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.4) 100%);
	}
}




.contenu_colonnes .wpb_column:not(:last-child) {
	border-right: 1px solid var(--gris-fond);
}
.contenu_colonnes .wpb_column .vc_column-inner .wpb_wrapper .wpb_text_column {
	padding: 26px 7% 12px 4%;
}




/* CTA */
.boutons-flottants { 
	position: fixed;
	z-index: 1000;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
	.bouton-flottant {
		position: relative;
		background-color: var(--brundore);
		width: 54px;
		height: 54px;
		margin-bottom: 1px;
	}
		.bouton-flottant::after {
			content: "";
			position: absolute;
			z-index: 2;
			top: 0;
			right: 0;
			width: 54px;
			height: 54px;
			background-color: var(--brundore);
			background-position: center;
			background-repeat: no-repeat;
			background-size: 30px;
			pointer-events: none;
		}
	.bouton-flottant-contenu {
		position: absolute;
		z-index: 1;
		width: 260px;
		min-height: 54px;
		right: 0;
		top: 0;
		padding: 14px 64px 10px 12px;
		box-sizing: border-box;
		font-size: 15px;
		background: var(--brundore);
		color: var(--noir);
		transform:translateX(100%);
		transition:transform .3s ease;
	}
		.bouton-flottant-contenu a {
			color: var(--noir);
		}
		.bouton-flottant:hover .bouton-flottant-contenu {
			transform:translateX(0);
		}
	.bouton-contact::after { background-image:url('../images/icones/icone_lettre.png'); }
	.bouton-boutique::after { background-image:url('../images/icones/icone_shopping.png'); }






/* Vagues */
.section-vagues-longues-haut .row-bg-wrap::before,
.section-vagues-longues-bas .row-bg-wrap::after,
.section-vagues-courtes-haut .row-bg-wrap::before,
.section-vagues-courtes-bas .row-bg-wrap::after {
	content: "";
	position: absolute;
	z-index: 2;
	left: 0;
	width: 100%;
	height: 40px;
	background-color: var(--couleur-vague);
	pointer-events: none;
}
	.section-vagues-longues-haut .row-bg-wrap::before {
		bottom: 100%;
		-webkit-mask: url('../images/vague-x3.svg') center / 100% 100% no-repeat;
		mask: url('../images/vague-x3.svg') center / 100% 100% no-repeat;
		transform: translateY(1px);
	}
	.section-vagues-longues-bas .row-bg-wrap::after {
		top: 100%;
		-webkit-mask: url('../images/vague-x3.svg') center / 100% 100% no-repeat;
		mask: url('../images/vague-x3.svg') center / 100% 100% no-repeat;
		transform: scaleY(-1);
	}
	.section-vagues-courtes-haut .row-bg-wrap::before {
		bottom: 100%;
		-webkit-mask: url('../images/vague-x4.svg') center / 100% 100% no-repeat;
		mask: url('../images/vague-x4.svg') center / 100% 100% no-repeat;
		transform: translateY(1px);
	}
	.section-vagues-courtes-bas .row-bg-wrap::after {
		top: 100%;
		-webkit-mask: url('../images/vague-x4.svg') center / 100% 100% no-repeat;
		mask: url('../images/vague-x4.svg') center / 100% 100% no-repeat;
		transform: translateY(-1px) scaleY(-1);
	}
		.vague-brunclair {
			--couleur-vague: var(--brunclair);
		}
		.vague-blanc {
			--couleur-vague: var(--blanc);
		}
		.vague-grisclair {
			--couleur-vague: var(--gris-fond);
		}
		.vague-noir {
			--couleur-vague: var(--noir);
		}

/*
@media (max-width: 800px) {
	#chiffres-cles.section-vagues-longues-haut .row-bg-wrap::before,
	#chiffres-cles.section-vagues-courtes-haut .row-bg-wrap::before {
		display: none !important;
		height: 0 !important;
	}
}
*/



/* Entreprise familiale */
@media (max-width: 600px) {
	.entreprise_familiale .row-bg-wrap .row-bg-layer:after {
		content: "";
		width: 100%;
		height: 100%;
		z-index: 10;
		position: absolute;
		top: 0;
		left: 0;
		background: linear-gradient(90deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.4) 100%);
	}
	.entreprise_familiale .vc_column-inner .wpb_wrapper .wpb_text_column {
		color: var(--blanc);
	}
	.entreprise_familiale .vc_column-inner .wpb_wrapper .wpb_text_column h2 {
		color: var(--blanc);	
	}
}




/* Univers */
.univers .vc_column-inner .column-image-bg-wrap:after {
	content: "";
	width: 100%;
	height: 100%;
	z-index: 10;
	position: absolute;
	top: 0;
	left: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0) 30%, rgba(0,0,0,0.9) 100%);
}
.univers .wpb_column:not(:last-child) .vc_column-inner {
	border-right: 1px solid var(--blanc);
}
	.univers .vc_column-inner .wpb_wrapper {
		color: var(--blanc);
		padding: 0 3% 0 7%;
		font-size: 20px;
	}
		.univers .vc_column-inner .wpb_wrapper .wpb_text_column h3 {
			color: var(--blanc);
			font-size: 44px;
			line-height: 50px;
			padding-left: 60px;
		}
		.univers .wpb_text_column {
			position: relative;
			padding-bottom: 20px;
		}
		.univers .wpb_text_column:before {
			position: absolute;
			content: "";
			top: -5px;
			left: -10px;
			width: 69px;
			height: 44px;
			background-size: 69px 44px;
		}
			.univers .wpb_text_column.patisseries:before {
				background: transparent url('../images/icones/cake_white.png') no-repeat center top;
			}
			.univers .wpb_text_column.glaces:before {
				background: transparent url('../images/icones/icecream_white.png') no-repeat center top;
			}
			.univers .wpb_text_column.sales:before {
				background: transparent url('../images/icones/toque_white.png') no-repeat center top;
			}
		.univers .wpb_text_column a {
			position: absolute;
			bottom: 20px;
			left: 0;
			z-index: 11;
			color: var(--blanc);
			text-transform: uppercase;
			font-size: 15px;
		}
			.univers .wpb_text_column a:after {
				content: "\276F";
				display: inline-block;
				margin-left: 8px;
				color: var(--jaune);
			}
@media (min-width: 1200px) {
	.univers .wpb_column:hover .column-image-bg-wrap:after {
		background: linear-gradient(180deg, rgba(0,0,0,0.25) 20%, rgba(0,0,0,1) 100%);
	}
}




@media (min-width: 1000px) {
	.cartographie_2cols .wpb_column:first-child .nectar-leaflet-map {
		border-right: 1px solid var(--blanc);
	}
	.les_magasins .wpb_column .img-with-aniamtion-wrap .hover-wrap-inner img {
		height: 500px !important;
		width: 100% !important;
		object-fit: cover;
		object-position: center top;
	}
}



/* Réseaux distribution */
.reseaux_distribution .vc_column-inner .column-image-bg-wrap:after {
	content: "";
	width: 100%;
	height: 100%;
	z-index: 10;
	position: absolute;
	top: 0;
	left: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0) 30%, rgba(0,0,0,0.9) 100%);
	transition: all 0.4s ease;
}
.reseaux_distribution .wpb_column:not(:last-child) .vc_column-inner {
	border-right: 1px solid var(--blanc);
}
	.reseaux_distribution .vc_column-inner .wpb_wrapper {
		color: var(--blanc);
		padding: 0 3% 0 7%;
		font-size: 20px;
		text-align: center;
	}
	.reseaux_distribution .wpb_text_column {
		position: relative;
	}
	.reseaux_distribution .wpb_text_column:before {
		position: absolute;
		content: "";
		top: -66px;
		left: 50%;
		transform: translateX(-50%);
		width: 69px;
		height: 44px;
		background-size: 69px 44px;
	}
		.reseaux_distribution .wpb_text_column.restauration:before {
			background: transparent url('../images/icones/restaurant_white.png') no-repeat center top;
		}
		.reseaux_distribution .wpb_text_column.grande_distribution:before {
			background: transparent url('../images/icones/shopping_cart_white.png') no-repeat center top;
		}
		.reseaux_distribution .wpb_text_column.export:before {
			background: transparent url('../images/icones/world_white.png') no-repeat center top;
		}
		.reseaux_distribution .wpb_text_column.magasins:before {
			background: transparent url('../images/icones/store_white.png') no-repeat center top;
		}


@media (min-width: 1200px) {
	.reseaux_distribution .wpb_column:hover .column-image-bg-wrap:after {
		background: linear-gradient(180deg, rgba(0,0,0,0.25) 20%, rgba(0,0,0,1) 100%);
	}
}



/* Galerie logos */
.certifications .portfolio-items .work-info-bg {
	display: none;
} 
.certifications .portfolio-items .element .inner-wrap .work-item {
	padding: 10px 0;
}
.certifications .portfolio-items .element .inner-wrap .work-info {
	border: 1px solid var(--gris-fond);
	border-radius: 10px;
}





/* Newsletter */
#newsletter .row-bg-wrap .row-bg-layer:after {
	content: "";
	width: 100%;
	height: 100%;
	z-index: 10;
	position: absolute;
	top: 0;
	left: 0;
	background: linear-gradient(90deg, rgba(0,0,0,0.3) 20%, rgba(0,0,0,0.8) 100%);
}
#newsletter .vc_column-inner .wpb_wrapper .wpb_text_column h2 {
	color: var(--blanc);
}
#newsletter .vc_column-inner .wpb_wrapper .wpb_text_column p {
	color: var(--blanc);
}

/* Form newsletter */
#wpcf7-f128-p19-o1 form {
	display: flex;
	align-items: flex-end;
	gap: 8px;
	flex-wrap: wrap;
	background: transparent url('../images/icones/newsletter.png') no-repeat center 0;
	padding-top: 6px;
}
	#wpcf7-f128-p19-o1 .cf7_50 {
		flex: 1 1 300px;
	}
		#wpcf7-f128-p19-o1 .cf7_50 p {
			margin: 0;
			padding: 0;
		}
		#wpcf7-f128-p19-o1 label {
			font-size: 0;
		}
		#wpcf7-f128-p19-o1 .wpcf7-form-control-wrap {
			display: block;
		}
			#wpcf7-f128-p19-o1 input[type="email"] {
				width: 100%;
				height: 42px;
				margin: 0;
				padding: 0 15px;
				background: #fff;
				border: 1px solid #ddd;
				border-radius: 7px;
				box-shadow: none;
				font-size: 16px;
				color: #333;
			}
			#wpcf7-f128-p19-o1 input[type="email"]::placeholder {
				color: #999;
				opacity: 1;
			}
			
	#wpcf7-f128-p19-o1 form > p {
		margin: 0;
		padding: 0 !important;
	}
		#wpcf7-f128-p19-o1 input[type="submit"] {
			height: 42px;
			margin: 0;
			padding: 0 16px !important;
			background: var(--gris-fond);
			border: 1px solid var(--gris-fonce);
			border-radius: 7px;
			box-shadow: none;
			font-size: 14px;
			font-weight: 400;
			text-transform: uppercase;
			color: #111;
			cursor: pointer;
		}
		#wpcf7-f128-p19-o1 input[type="submit"]:hover {
			background: #fff;
		}
	#wpcf7-f128-p19-o1 .wpcf7-spinner {
		position: absolute;
	}
	#wpcf7-f128-p19-o1 .wpcf7-response-output {
		flex: 0 0 100%;
		margin: 10px 0 0;
	}

/* Mobile */
@media (max-width: 690px) {
	#wpcf7-f128-p19-o1 form {
		align-items: stretch;
	}
	#wpcf7-f128-p19-o1 .cf7_50 {
		flex: 0 0 100%;
	}
	#wpcf7-f128-p19-o1 form > p {
		flex: 0 0 100%;
	}
	#wpcf7-f128-p19-o1 input[type="submit"] {
		width: 100%;
	}
}