:root {

	--primary-margin: calc(25px + (250 - 25) * ((100vw - 1024px) / (1920 - 1024)));
	--secondary-margin: calc(20px + (120 - 20) * ((100vw - 1024px) / (1920 - 1024)));

}


/*
--------------------------------------
banner
--------------------------------------
*/

/*Main container*/

.single-banner-container {
	position: relative;
	display: flex;
	align-items: center;
	height: 620px;
}

.single-banner-container:before {
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: url(/wp-content/uploads/2024/12/overlay-pattern.png) no-repeat center center;
	background-size: cover;
	content: "";
	height: 100%;
	width: 100%;
}

/*Content*/

.single-banner-content-container {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 80%;
	margin: auto;
}

/*Subhead*/

.single-banner-subhead {
	font-size: 16px;
	font-style: normal;
	font-weight: 500;
	color: var(--e-global-color-secondary);
	line-height: 156.25%;
	letter-spacing: -0.64px;
	text-transform: uppercase;
}

/*Title*/

.single-banner-title {
	font-size: calc(35px + (55 - 35) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 600;
	color: #FFF;
	line-height: 118.182%;
	letter-spacing: -2.2px;
}

.single-service .banner-first-part-text--darkgrey {
	color: var(--e-global-color-primary);
}

.single-service .banner-colored-text {
	color: var(--e-global-color-secondary);
}

/*
--------------------------------------
containers
--------------------------------------
*/

.single-post-content {
	display: grid;
	grid-template-columns: 1fr;
	padding: calc(40px + (110 - 40) * ((100vw - 320px) / (1920 - 320))) 0;
}

/*
--------------------------------------
associated products
--------------------------------------
*/

/*Info title*/

.associated-products-container .associated-products-title-container {
	max-width: 75%;
}

.associated-products-container .associated-products-title {
	font-size: calc(25px + (40 - 25) * ((100vw - 320px) / (1920 - 320)));
	color: var(--e-global-color-primary, #20222B);
	font-weight: 600;
	line-height: 120%;
	letter-spacing: -1.6px;
}

.associated-products-container .associated-products-title strong {
	color: var(--e-global-color-secondary, #20222B);
	font-weight: 600;
}

/*Info illustrations*/

.associated-products-illustrations {
	padding: 2em 0;
}

.associated-products-illustrations.multiple-illustrations {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr) );
	grid-auto-flow: dense;
	grid-gap: 20px;
	padding: 2em 0;
}

.associated-products-illustrations.multiple-illustrations img {
	width: 180px;
	height: 180px;
}

/*Products*/

.associated-product-items-container {
	display: grid;
	grid-gap: 20px;
}

.associated-products-container .associated-product-item {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	border: 1px solid var(--e-global-color-secondary, #FE9B00);
	box-shadow: 0 4px 34px 0 rgba(32, 34, 43, 0.10);
	height: auto;
	padding: calc(16px + (32 - 16) * ((100vw - 320px) / (1920 - 320)));
}

.associated-products-container .associated-product-title {
	font-size: 23px;
	font-weight: 600;
	color: var(--e-global-color-primary, #20222B);
	line-height: 130%;
	letter-spacing: -0.92px;
}

.associated-product-items-produit .associated-product-title-container {
	margin-bottom: 15px;
}

.associated-products-container .associated-product-note-container {
	line-height: 26px;
}

.associated-products-container .associated-product-note {
	color: var(--e-global-color-secondary, #FE9B00);
	font-size: 16px;
	font-style: italic;
	font-weight: 400;
	letter-spacing: -0.64px;
}

.associated-product-items-produit .associated-product-long-description p {
	margin-bottom: 15px;
}

/*
--------------------------------------
Lien vers autre page
--------------------------------------
*/

.link-other-page-container {
	padding: 1em 0;
}

.link-other-page-container a {
	display: inline-flex;
}

/*
--------------------------------------
table
--------------------------------------
*/

.table-product-container {
	padding-top: 2em;
}

.single-produit.postid-141 .table-product-container {
	padding-top: calc(50px + (110 - 50) * ((100vw - 320px) / (1920 - 320)));
}

.table-product-container .table-product-title-container {
	border-top: 1px solid rgba(0,0,0,0.2);
	padding-top: 1em;
}

.single-produit.postid-141 .table-product-title-container {
	padding-top: 3em;
}

.table-product-container .table-product-title {
	font-size: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
	font-style: normal;
	font-weight: 600;
	color: var(--e-global-color-primary);
	text-align: center;
	line-height: 120%;
}

.table-product-container .table-product-title strong {
	color: var(--e-global-color-secondary);
}

.table-product-notes-container {
	color: #979696;
	font-size: 14px;
	font-style: italic;
	letter-spacing: -0.56px;
	padding-top: 1em;
}

/*
--------------------------------------
form
--------------------------------------
*/

/*Container*/

.c-sticky-form .sticky-form-container {
	background: #FFF;
	box-shadow: 0 4px 100px 0 rgba(32, 34, 43, 0.15);
	padding: calc(20px + (32 - 20) * ((100vw - 320px) / (1920 - 320)));
	margin: 0 auto;
}

.forminator-ui.forminator-custom-form[data-design=default] .forminator-textarea {
	max-height: 100px !important;
}

/*Title*/

.sticky-form-title-container {
	display: flex;
	justify-content: center;
}

.c-sticky-form .sticky-form-title {
	font-size: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 600;
	color: var(--e-global-color-primary);
	line-height: 166.667%;
	letter-spacing: -1.2px;

	.text-colored {
		color: var(--e-global-color-secondary);
	}
}

/*Form*/

#forminator-module-484 .forminator-row:not(:last-child) {
	margin-bottom: 12px !important;
}

.forminator-row:has(.forminator-button) {
	margin-top: 1.75em;
}

.forminator-row:has(.forminator-button) .forminator-field {
	display: flex;
	justify-content: center;
}

form#forminator-module-484 .forminator-button {
	border-radius: 200px;
	width: calc(280px + (345 - 280) * ((100vw - 320px) / (1920 - 320)));
}

