/*
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

.grecaptcha-badge {
	visibility: hidden !important;
}

.menu-header .menu-item-has-children .has-submenu .sub-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2025/12/icone-croix.svg');
	width: 8.5px;
	height: 8.5px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	display: block;
}

.menu-footer .menu-item-has-children .has-submenu .sub-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2025/12/icone-croix.svg');
	width: 8.5px;
	height: 8.5px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	display: block;
}

.menu-footer .menu-item-has-children .has-submenu .sub-arrow svg {
	display: none;
}

.otgs-development-site-front-end {
	display: none;
}

.menu-footer .sub-menu .menu-item a {
	font-size: 16px !important;
	font-weight: 400 !important;

	border-inline-start: 0;
	padding-left: 15px !important;
}

.no-margin p {
	margin-bottom: 0px;
}

.menu-header .menu-item-has-children .has-submenu .sub-arrow svg {
	display: none;
}

.menu-header .menu-item-has-children .has-submenu .sub-arrow {
	padding: 6px;
}

.menu-header .menu-item-has-children .sub-menu {
	padding: 0px 15px;
	width: 310px !important;
}

.menu-header .menu-item-has-children .sub-menu li a {
	padding: 18px 0px;
	border-inline-start: 0px;
	display: flex;
	justify-content: space-between;
}

.menu-header .menu-item-has-children .sub-menu li a::after {
	content: '';
	background: url('/wp-content/uploads/2025/12/fleche-sous-menu.svg');
	width: 13px;
	height: 13px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	display: block;
}

.wpml-ls-menu-item .sub-arrow {
	display: none;
}

.wpml-ls-menu-item .sub-menu {
	min-width: 0 !important;
}

.wpml-ls-menu-item .sub-menu li a {
	border-inline-start: 0;
	padding: 9px;
}

.wpml-ls-item .sub-menu {
	border: 0 !important;
	padding: 0 20px !important;
}

.wpml-ls-item .sub-menu a {
	padding: 0px !important;
}

.bouton-savoir-plus p::after {
	content: '';
	background: url('/wp-content/uploads/2025/12/fleche-savoir-plus.svg');
	position: relative;
	display: inline-block;
	top: 0px;
	right: 0px;
	width: 30px;
	height: 30px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.column-categorie-metiers:hover .bouton-savoir-plus p::after {
	content: '';
	background: url('/wp-content/uploads/2025/12/fleche-savoir-plus-rouge.svg');
	position: relative;
	display: inline-block;
	top: 0px;
	right: 0px;
	width: 30px;
	height: 30px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.conteneur-secteurs-activite:hover .bouton-savoir-plus p::after {
	content: '';
	background: url('/wp-content/uploads/2025/12/fleche-savoir-plus-rouge.svg');
	position: relative;
	display: inline-block;
	top: 0px;
	right: 0px;
	width: 30px;
	height: 30px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.titre-h2 h2::before {
	content: '';
	background-color: #E42C24;
	width: 7px;
	height: 7px;
	position: relative;
	display: inline-block;
	    flex: 1 0 7px;
}

.titre-h2 h2 {
	display: flex;
	align-items: center;
	gap: 7px;
}

.rouge {
	color: #E42C24;
}

.bouton-savoir-plus p {
	position: relative;
	display: flex;
	align-items: center;
	gap: 15px;
}

.h2-nos-metiers {
	left: calc(50% - 72.10px) !important;
}

.liste-article-accueil article:first-child {
	border-left: 0 !important;
}

.liste-article-accueil article .elementor-post__thumbnail__link {
	margin-bottom: 12px !important;
}

.liste-article-accueil article .elementor-post__text {
	display: flex;
}

.liste-article-accueil article .elementor-post__text .elementor-post__title {
	order: 2;
}

.liste-article-accueil article .elementor-post__text .elementor-post__meta-data {
	order: 1;
	margin-bottom: 5px;
}

.section-secteurs-activite {
	position: relative;
	overflow: hidden;
}

.section-secteurs-activite::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 355px;
	height: 715px;
	background: url('/wp-content/uploads/2026/03/pieces-left-secteurs-activite.svg') no-repeat center left;
	background-size: auto;
	z-index: 0;
	pointer-events: none;
}

.section-secteurs-activite::after {
	content: '';
	position: absolute;
	right: 0;
	top: 60%;
	transform: translateY(-50%);
	width: 390px;
	height: 756px;
	background: url('/wp-content/uploads/2026/03/pieces-droite-secteurs-activite.svg') no-repeat center right;
	background-size: auto;
	z-index: -1;
	pointer-events: none;
}

.section-top-ferroviaire {
	position: relative;
	overflow: hidden;
}

.section-top-ferroviaire::before {
	content: '';
	position: absolute;
	left: 0;
	top: -2px;
	width: 316px;
	height: 498px;
	background: url('/wp-content/uploads/2026/04/forme-top-left-ferroviaire-1.svg') no-repeat top left;
	background-size: auto;
	z-index: 0;
	pointer-events: none;
}

.section-top-ferroviaire::after {
	content: '';
	position: absolute;
	right: 0;
	bottom: -2px;
	width: 316px;
	height: 498px;
	background: url('/wp-content/uploads/2026/04/forme-bottom-right-ferroviaire-1.svg') no-repeat bottom right;
	background-size: auto;
	z-index: 0;
	pointer-events: none;
}

.image-nos-secteurs-activite {
	height: 100%;
}

.image-nos-secteurs-activite img {
	height: 100%;
	object-fit: cover;
}

.image-150-annees-experience {
	height: 100%;
}

.image-150-annees-experience img {
	height: 100%;
	object-fit: cover;
}

/* ========================================
   SECTION SCROLL-LINKED CATEGORIES ACCUEIL
   ======================================== */

/* Wrapper de toute la section - crée l'espace pour le scroll */
.scroll-section-wrapper {
	position: relative;
}

/* La section parente - hauteur 100vh */
#section-scroll {
	height: 100vh !important;
	max-height: 100vh !important;
	overflow: hidden;
}

/* La section sticky qui reste en place pendant le scroll */
#section-scroll.is-pinned {
	position: fixed !important;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	height: 100vh !important;
	max-height: 100vh !important;
}

/* Colonne gauche - prend toute la hauteur disponible */
#section-scroll .column-categorie-accueil {
	height: 100%;
	max-height: 100%;
	overflow: hidden;
}

/* Colonne droite - prend toute la hauteur et reste centrée */
#section-scroll>.e-con:last-child {
	height: 100%;
	display: flex;
	align-items: center;
}

/* Les items de la colonne gauche pendant l'animation */
.column-categorie-accueil .column-categorie-metiers {
	transition: transform 0.05s linear;
}

.image-expertise-cofrend {
	height: 100%;
}

.image-expertise-cofrend img {
	height: 100%;
	object-fit: cover;
}

.image-approche-sur-mesure {
	height: 100%;
}

.image-approche-sur-mesure img {
	height: 100%;
	object-fit: cover;
}

.image-scanning {
	height: 100%;
}

.image-scanning img {
	height: 100%;
	object-fit: cover;
}

.nom-reference {
	opacity: 0;
	transition: 0.3s all linear;
}

.conteneur-listing-reference:hover .nom-reference {
	opacity: 1;
	transition: 0.3s all linear;
}

.listing-grid-references .slick-arrow {
	bottom: -40px !important;
	top: inherit;
	background-color: transparent;
}

.listing-grid-references .slick-arrow {
	width: 36px;
	height: 36px;
}

.listing-grid-references .slick-arrow.prev-arrow {
	left: 10px;
}

.image-top-secteurs-activite {
	height: 100%;
}

.image-top-secteurs-activite img {
	height: 100%;
	object-fit: cover;
}



.listing-grid-references .slick-arrow.next-arrow {
	left: 60px;
}

.tel-contact {
	opacity: 0;
	transition: 0.3s all linear;
}

.mail-contact {
	opacity: 0;
	transition: 0.3s all linear;
}

.tel-contact a {
	color: #3B3D3C !important;

}

.mail-contact a {
	color: #3B3D3C !important;
}



.ligne-contact:hover .tel-contact {
	opacity: 1;
	transition: 0.3s all linear;
}

.ligne-contact:hover .mail-contact {
	opacity: 1;
	transition: 0.3s all linear;
}

.listing-grid-references .slick-arrow svg {
	display: none;
}

.listing-grid-references .slick-arrow.prev-arrow::before {
	content: '';
	background: url('/wp-content/uploads/2026/04/fleche-prev-slider-references.svg');
	position: absolute;
	width: 36px;
	height: 36px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	top: 0px;
	left: 0px;
}

.mentions h2 {
	font-size: 30px;
	line-height: 30px;
	margin-top: 20px;
}

.mentions a {
	color: #E42C24;
}

.listing-grid-references .slick-arrow.next-arrow::before {
	content: '';
	background: url('/wp-content/uploads/2026/04/fleche-prev-slider-references.svg');
	position: absolute;
	width: 36px;
	height: 36px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	top: 0px;
	left: 0px;
}

.certifications-pdf .jet-listing-dynamic-link__label {
	word-break: break-all;
}

.section-middle-soudure-assemblage > .e-con-boxed:first-child > .e-con-inner,
.section-middle-soudure-assemblage > .e-con-boxed:last-child > .e-con-inner {
	height: 100%;
	display: flex;
	flex-direction: column;
}

.section-middle-soudure-assemblage > .e-con-boxed:first-child .elementor-widget-image,
.section-middle-soudure-assemblage > .e-con-boxed:last-child .elementor-widget-image {
	flex: 1;
}

.section-middle-soudure-assemblage > .e-con-boxed:first-child .elementor-widget-image .elementor-widget-container,
.section-middle-soudure-assemblage > .e-con-boxed:last-child .elementor-widget-image .elementor-widget-container {
	height: 100%;
}

.section-middle-soudure-assemblage > .e-con-boxed:first-child img,
.section-middle-soudure-assemblage > .e-con-boxed:last-child img {
	height: 100%;
	width: 100%;
	object-fit: cover;
}

.listing-grid-references .slick-track {
	margin: 0;
}

.images-loisirs {
	height: 100%;
}

.images-loisirs img {
	height: 100%;
	object-fit: cover;
}

.image-exigence {
	height: 100%;
}

.image-exigence img {
	height: 100%;
	object-fit: cover;
}

.image-full-height {
	height: 100%;
}

.image-full-height img {
	height: 100%;
	object-fit: cover;

}

.slider-historique .elementor-swiper-button {
	bottom: -60px;
	top: inherit !important;
}

.slider-historique .elementor-swiper-button-prev {
	right: 75px !important;
	left: inherit !important;
}

.liste-articles .elementor-pagination {
	margin-top: 60px;
}

.formulaire-contact .elementor-field-type-submit {
	margin-top: 30px;
}

.formulaire-contact .elementor-field-type-upload input {
	background-color: transparent !important;
	border-radius: 0px !important;
}

.bouton-sites .elementor-button-icon {
	position: relative;
	width: 9px;
	height: 9px;
	display: inline-flex;
	align-items: center;
	align-self: center;
}

.bouton-sites .elementor-button-icon::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 9px;
	height: 9px;
	background: url('/wp-content/uploads/2026/04/fleche-blanc.svg') no-repeat center;
	background-size: contain;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.bouton-sites .elementor-button:hover .elementor-button-icon svg {
	opacity: 0;
	transition: opacity 0.3s ease;
}

.bouton-sites .elementor-button:hover .elementor-button-icon::after {
	opacity: 1;
}

@media screen and (min-width: 768px) {
	.jet-image-accordion__item:not(.active-accordion) .jet-image-accordion__content .jet-image-accordion__desc {
		opacity: 0;
		position: relative;
		left: -6000px;
	}

	.jet-image-accordion__item .jet-image-accordion__content .jet-image-accordion__title,
	.jet-image-accordion__item .jet-image-accordion__content .jet-image-accordion__desc {
		-ms-flex-item-align: start;
		align-self: flex-start;
	}

	.jet-image-accordion__item .jet-image-accordion__content {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
	}

	.jet-image-accordion__item .jet-image-accordion__content .jet-image-accordion__desc {
		margin: 0 0 0 20px;
		position: relative;
		left: 0;
		transition-duration: 800ms;
	}

	.jet-image-accordion__item .jet-image-accordion__content .jet-image-accordion__title {
		writing-mode: vertical-rl;
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
		margin: 0;
	}

	.jet-image-accordion__item .jet-image-accordion__content .jet-image-accordion__desc {
		margin: 0 0 0 20px;
		position: relative;
		left: 0;
		transition-duration: 800ms;
	}
}

.jet-image-accordion__item .jet-image-accordion__content {
	opacity: 1;
	background-color: transparent;
}







/* Désactiver l'effet scroll sur mobile/tablette */
@media screen and (max-width:880px) {
	.section-secteurs-activite::before,
	.section-secteurs-activite::after {
		display: none;
	}

	.image-nos-secteurs-activite {
		height: 300px;
	}

	.image-nos-secteurs-activite img {
		height: 300px;
		object-fit: cover;
	}

	.image-150-annees-experience {
		height: 500px;
	}

	.image-150-annees-experience img {
		height: 500px;
		object-fit: cover;
	}

	#section-scroll {
		height: auto !important;
		max-height: none !important;
		overflow: visible !important;
	}

	#section-scroll.is-pinned {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		height: auto !important;
		max-height: none !important;
	}

	#section-scroll .column-categorie-accueil {
		height: auto !important;
		max-height: none !important;
		overflow: visible !important;
	}

	#section-scroll>.e-con:last-child {
		height: auto !important;
	}

	.column-categorie-accueil .column-categorie-metiers {
		transform: none !important;
	}

	.scroll-section-wrapper {
		height: auto !important;
	}
}

@media screen and (max-width:1900px) {
	.section-footer-top>.elementor-element {
		padding-right: 0 !important;
	}
}

@media screen and (max-width:1700px) {
	.conteneur-adresses-footer {
		padding: 30px 30px 10px 30px;
	}
}

@media screen and (max-width:1366px) {
	.section-top-ferroviaire::before,
	.section-top-ferroviaire::after {
		display: none;
	}

	.section-middle-ferroviaire,
	.section-formes-poids-lourds,
	.section-formes-machinisme-agricole,
	.section-formes-manutention,
	.section-formes-loisirs,
	.section-formes-defense,
	.section-formes-automobile,
	.section-formes-attelage,
	.section-formes-btp {
		background-image: none !important;
	}

	.wpml-ls-menu-item .sub-menu li a {

		padding: 9px;
	}

	.wpml-ls-item .sub-menu {
		border: 0 !important;
		padding: 0 10px !important;
	}
}

@media screen and (max-width:1200px) {
	.section-middle-soudure-assemblage > .e-con-boxed:first-child > .e-con-inner,
	.section-middle-soudure-assemblage > .e-con-boxed:last-child > .e-con-inner {
		flex-direction: row;
	}

	.section-middle-soudure-assemblage > .e-con-boxed:first-child img {
		height: auto;
	}

	.section-middle-soudure-assemblage > .e-con-boxed:last-child img {
		height: 400px;
	}

	.menu-header .wpml-ls-item .sub-menu {
		width: 100% !important;
		display: flex;
		justify-content: center;
	}

	.wpml-ls-item .sub-menu li a::after {
		display: none !important;
	}
}

@media screen and (max-width:1024px) {
	.menu-mentions-footer .elementor-nav-menu {
		justify-content: center;
	}
}

@media screen and (max-width:880px) {
	.jet-mobile-menu.jet-nav-wrap .jet-nav.m-layout-mobile_extra {
		margin-top: 20px;
		width: 300px;
		border: 1px solid #E2E2E2;
		border-radius: 5px;
		margin-left: 0 !important;
		left: 0 !important;
	}

	.jet-mobile-menu.jet-nav-wrap .jet-nav.m-layout-mobile_extra .menu-item:last-child .menu-item-link.menu-item-link-top {
		border-bottom: 0;
	}

	.menu-menu-header-responsive-container .menu-item {
		border-bottom: 1px solid #E2E2E2;
	}

	.menu-menu-header-responsive-container .menu-item:last-child {
		border: 0;
	}

	.menu-menu-header-responsive-container .menu-item:nth-last-child(2) {
		border: 0;
	}

	.jet-nav.m-layout-mobile_extra .menu-item.jet-nav-hover>.jet-nav__sub {
		margin-bottom: 10px;
		margin-top: -10px;
	}

	.menu-responsive .wpml-ls-menu-item {
		display: none;
	}
}

@media screen and (max-width:767px) {
	.section-middle-soudure-assemblage > .e-con-boxed:last-child img {
		height: 300px;
	}

	.mentions h2 {
		font-size: 24px;
		line-height: 26px;
		margin-top: 20px;
	}

	.tel-contact {
		opacity: 1;
	}

	.mail-contact {
		opacity: 1;
	}

	.formulaire-contact .elementor-field-type-acceptance label {
		font-size: 14px !important;
	}

	.formulaire-contact .elementor-field-type-submit {
		margin-top: 10px;
	}

	.jet-image-accordion__list {
		height: 1000px;
	}

	.jet-image-accordion__desc {
		display: none;
	}

	.active-accordion .jet-image-accordion__desc {
		display: block;
	}

	.jet-image-accordion__desc {
		margin-bottom: 0;
	}

	.conteneur-adresses-footer {
		padding: 20px;
	}

	.listing-grid-references .slick-arrow {
		bottom: -30px !important;
	}

}

@media screen and (max-width:600px) {
	.jet-image-accordion__list {
		height: 1200px !important;
	}
}

@media screen and (max-width:500px) {
	.jet-image-accordion__list {
		height: 1500px !important;
	}
}

@media screen and (max-width:400px) {
	.jet-image-accordion__list {
		height: 1900px !important;
	}

	.colonne-image-traitement-thermique {
		flex-direction: column !important;
	}

	.image-150-annees-experience {
		height: 400px;
	}

	.image-150-annees-experience img {
		height: 400px;
		object-fit: cover;
	}

	.texte-vw {
		font-size: 9vw !important;
	}
}