/* 
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
*/

.listing-flash-info .slick-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2026/01/fleche-flash-info-gauche.svg');
	position: absolute;
	top: calc(50% - 4px);
	left: 0px;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	width: 6px;
	height: 8px;
}

.listing-flash-info .slick-arrow svg {
	display: none;
}

.listing-flash-info .jet-listing-grid__item>div>div {
	max-width: max-content;
	margin-left: 0;
	margin-right: 0;
}

.listing-flash-info .jet-listing-grid__item>div {
	max-width: max-content;
}

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

.lien-blanc a {
	color: white;
}

.header-cart .elementor-menu-cart__wrapper {
	height: 43px;
}

.header-cart .elementor-menu-cart__wrapper .elementor-menu-cart__toggle_wrapper {
	height: 43px;
}

.header-cart .elementor-menu-cart__wrapper .elementor-menu-cart__toggle_wrapper .elementor-menu-cart__toggle {
	height: 43px;
}

.menu-header .menu-item:hover a::after {
	content: '';
	background-color: #EDECEC;
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0px;
	bottom: -10px;
}

.horaires-tableau tbody tr:hover>td,
.horaires-tableau tbody tr:hover>th {
	background: none;
}

.horaires-tableau {
	padding: 0px;
}

.logo-footer a {
	display: block;
}

.horaires-tableau td,
.horaires-tableau th {
	border: none;
	background: none;
	padding: 0px;
	font-size: 20px;
	font-weight: 600;
	line-height: 27px;
}

.horaires-tableau tr td:first-child {
	padding-right: 20px;
}

.horaires-tableau tbody>tr:nth-child(odd)>td,
.horaires-tableau tbody>tr:nth-child(odd)>th {
	background: none;
}

.menu-header .menu-item.current-menu-item a::after {
	content: '';
	background-color: #FFE400 !important;
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0px;
	bottom: -10px;
}

.menu-header .sub-arrow {
	position: relative;
	width: 10px;
	height: 10px;
	padding: 0;
	margin-left: 10px;
}

.menu-header .sub-arrow svg {
	display: none;
}

.menu-header .sub-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2026/01/icone-sous-menu.svg');
	position: absolute;
	top: 0px;
	left: 0px;
	width: 10px;
	height: 10px;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.menu-header .menu-item .sub-menu a::after {
	display: none !important;
}

.menu-header .detection-intrusion a::before {
	content: '';
	background: url('/wp-content/uploads/2026/01/icone-detection-intrusion.svg');
	position: relative;
	display: inline-block;
	width: 42px;
	height: 42px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	flex: 0 0 42px;
}

.menu-header .video-protection a::before {
	content: '';
	background: url('/wp-content/uploads/2026/01/icone-video-protection.svg');
	position: relative;
	display: inline-block;
	width: 42px;
	height: 42px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	flex: 0 0 42px;
}

.menu-header .detection-incendie a::before {
	content: '';
	background: url('/wp-content/uploads/2026/01/icone-detection-incendie.svg');
	position: relative;
	display: inline-block;
	width: 42px;
	height: 42px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	flex: 0 0 42px;
}

.menu-header .controle-acces a::before {
	content: '';
	background: url('/wp-content/uploads/2026/01/icone-controle-acces.svg');
	position: relative;
	display: inline-block;
	width: 42px;
	height: 42px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	flex: 0 0 42px;
}

.menu-header .protection-temporaire a::before {
	content: '';
	background: url('/wp-content/uploads/2026/01/icone-protection-temporaire.svg');
	position: relative;
	display: inline-block;
	width: 42px;
	height: 42px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	flex: 0 0 42px;
}

.menu-header .cybersecurite {
	padding-bottom: 7.5px;
}

.menu-header .cybersecurite a::before {
	content: '';
	background: url('/wp-content/uploads/2026/01/icone-cybersecurite.svg');
	position: relative;
	display: inline-block;
	width: 42px;
	height: 42px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	flex: 0 0 42px;
}


.menu-header .sub-menu .menu-item a {
	display: flex;
	gap: 20px;
	border-inline-start: 0;
	white-space: normal;
}

.formulaire-inscription .show-password-input {
	display: none;
}

.formulaire-inscription .password-visibility__icon {
	top: calc(50% - 20px);
}

.woocommerce-MyAccount-content a {
	text-decoration: underline;
}

.woocommerce-MyAccount-content {
	padding-left: 50px !important;
}


.woocommerce-error::after,
.woocommerce-info::after,
.woocommerce-message::after {
	display: none;
}

fieldset {
	display: block;
	min-inline-size: min-content;
	margin-inline: 2px;
	border: 1px solid #EDECEC;
	padding-block: 0.35em 0.625em;
	padding-inline: 0.75em;
	margin-top: 20px;
}

.woocommerce-address-fields .woocommerce-address-fields__field-wrapper {
	margin-bottom: 20px;
}

.elementor-jet-myaccount-content a {
	text-decoration: underline;
}

.woocommerce-EditAccountForm fieldset {
	margin-bottom: 20px;
}

#billing_country_field .woocommerce-input-wrapper strong {
	width: 100%;
	display: block;
}

#shipping_country_field .woocommerce-input-wrapper strong {
	width: 100%;
	display: block;
}

#account_display_name_description {
	margin-top: 5px;
	display: block;
}

.woocommerce-account .addresses .title .edit {
	float: none;
	margin-bottom: 10px !important;
	display: block;
}

.jet-woo-builder.elementor-jet-single-price .price del {
	font-weight: 400 !important;
	font-size: 16px !important;
}

.jet-woo-product-price del {
	font-weight: 400 !important;
	font-size: 16px !important;
	color: #898989 !important;
}

.jet-woo-product-price del .woocommerce-Price-amount {
	font-size: 16px !important;
	color: #898989 !important;
}

.page-id-10 #order_review {
	max-width: 1350px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 75px;
	padding-bottom: 60px;
	padding-right: 30px;
	padding-left: 30px;
}

.page-id-10 #order_review #payment {
	background-color: #EDECEC;
	border-radius: 0px;
}

.woocommerce-order-received .jet-sticky-column {
	position: relative;
	top: inherit !important;
	bottom: inherit !important;
}

.thank-you-section h2 {
	margin-top: 0px;
}

.elementor-widget-jet-checkout-order-review #order_review {
	max-width: 1350px;
	margin-left: auto;
	margin-right: auto;
	padding: 0px;
}

.page-id-10 #order_review #payment #place_order {
	background-color: #FFE400;
	color: #1D1D1B;
	font-size: 18px;
	font-weight: 500;
	line-height: 24px;
	border-style: solid;
	border-width: 0px 0px 0px 0px;
	border-radius: 22px 22px 22px 22px;
	padding: 10px 20px 10px 20px;
}

.page-id-10 #order_review table tbody>tr:nth-child(odd)>td,
.page-id-10 #order_review table tbody>tr:nth-child(odd)>th {
	background-color: transparent;
}

.page-id-10 #order_review table.shop_table {
	border: none !important;
	border-collapse: collapse;
}

.page-id-10 #order_review table.shop_table td {

	border: 1px solid #EDECEC;
}

.page-id-10 #order_review table.shop_table th {

	border: 1px solid #EDECEC;
}

.jet-woo-product-price del .woocommerce-Price-currencySymbol {
	font-size: 16px !important;
	color: #898989 !important;
}

#coupon_code {
	flex: 0 0 calc(100% - 220px);
}

.shop_table.cart td.actions .coupon {
	display: flex;
	flex-wrap: wrap;
}

.shop_table.cart td.actions .coupon button {
	flex: 0 0 200px;
}

#coupon-error-notice {
	display: block;
	flex: 100%;
}

.gallery-fournisseurs-solutions .jet-engine-gallery-grid__item img {
	object-fit: contain;
}

.woocommerce-notices-wrapper {
	margin-top: 20px;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
	border-top: 3px solid #FFE400;
	background-color: #EDECEC;
	display: flex;
	align-items: center;
	justify-content: space-between;
	color: #1D1D1B;
	outline: none;
}

.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before {
	top: calc(50% - 11px);
}

.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-MyAccount-content h2:first-of-type {
	margin-top: 0;
}

.grecaptcha-badge {
	display: none;
}

.section-reference-single .jet-listing-dynamic-image img {
	height: 200px;
	object-fit: contain;
}

.section-image-prestation {
	background-size: cover !important;
	background-position: center center !important;
}

.elementor-widget-woocommerce-my-account {
	width: 100%;
}

.elementor-widget-woocommerce-my-account .e-my-account-tab__downloads .woocommerce-MyAccount-content-wrapper,
.elementor-widget-woocommerce-my-account .e-my-account-tab__orders .woocommerce-MyAccount-content-wrapper {
	padding: 30px;
}

.wc-forward {
	border-radius: 17px 17px 17px 17px !important;
	padding: 5px 10px 5px 10px !important;
	border-color: #1D1D1B !important;
	color: #1D1D1B !important;
	border-style: solid !important;
	border-width: 1px 1px 1px 1px !important;
	line-height: 18px !important;
	font-size: 14px !important;
	text-transform: uppercase !important;
	font-weight: 500 !important;
	overflow: hidden !important;
	position: relative !important;
	display: inline-block !important;
	background-color: transparent !important;
}

.elementor-widget-jet-cart-totals .wc-forward {
	background-color: #FFE400 !important;
	border: 0px !important;
	font-size: 18px !important;
	line-height: 24px !important;
	padding: 10px 20px 10px 20px !important;
	border-radius: 22px 22px 22px 22px !important;
}

.woocommerce-cart-form__contents thead th {
	text-align: center;
}

.woocommerce-cart-form__contents .quantity input.qty {
	font-family: "Avenir Next", Sans-serif;
	font-size: 20px;
	font-weight: 500;
	line-height: 27px;
	color: #1d1d1b;
	border-style: solid;
	border-width: 1px 1px 1px 1px;
	border-color: #1D1D1B;
	border-radius: 30px 30px 30px 30px;
	padding: 0px 15px 0px 15px;
}

.woocommerce-cart-form__contents .actions {
	padding: 0px !important;
	padding-top: 30px !important;
}

.woocommerce-cart-form__contents .coupon {
	padding: 20px !important;
	background-color: #EDECEC;
}

.elementor-widget-jet-cart-totals table {
	border: 0px !important;
}

.elementor-widget-jet-cart-totals table th {
	width: 103px;
}

.elementor-widget-jet-cart-totals table tr {
	border-bottom: 1px solid #EDECEC;
}

.elementor-widget-jet-cart-totals table tr:last-child {
	border-bottom: 0;
}


.woocommerce-info::before {
	color: black;
}


.woocommerce-account .woocommerce-MyAccount-navigation {
	width: 100%;
}

.woocommerce-info {
	font-size: 16px;
}



.formulaire-connexion .password-visibility__icon {
	top: calc(50% - 20px) !important;
}

#section-reinitialisation-mot-passe .elementor-widget-jet-reset #jet-reset-pass-submit {
	white-space: break-spaces;
}

.menu-header .sub-menu {
	padding-top: 7.5px !important;
	width: 255px !important;
}

.formulaire-connexion .jet-login-lost-password-link {
	margin-left: auto;
	margin-right: auto;
	display: block;
	text-align: center;
}

.formulaire-connexion input::placeholder {
	color: #898989 !important;
	opacity: 1;
}

.formulaire-inscription .jet-register__row.jet-privacy-policy {
	align-items: flex-start;
}

.menu-header .menu-item-has-children .contrat-maintenance .elementor-item-active {
	background-color: #1D1D1B !important;
}

.menu-header .contrat-maintenance.menu-item.current-menu-item a::after {
	background-color: transparent !important;
}

.page-id-97 footer>div {
	margin-top: 0px;
}

.menu-header .contrat-maintenance {
	background-color: #1D1D1B !important;
	padding-top: 5px;
	padding-bottom: 5px;
}

.menu-header .contrat-maintenance a {
	color: #FFFFFF !important;
	font-size: 16px;
	line-height: 18px;
	font-weight: 500;
	text-transform: uppercase;
}

.menu-header .contrat-maintenance a:hover {
	background-color: #1D1D1B !important;
	color: #FFFFFF !important;
}

.menu-sub-header>nav>ul {
	justify-content: space-between;
}

.menu-sub-header>nav>ul::after {
	display: none;
}

.menu-sub-header>nav>ul>li {
	flex-grow: 0 !important;
}

.menu-header .menu-item .contrat-maintenance a::after {
	content: '';
	background: url('/wp-content/uploads/2026/01/icone-contrat-maintenance.svg');
	position: relative;
	display: inline-block !important;
	width: 31px;
	height: 19px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	flex: 0 0 31px;
	bottom: inherit !important;
}

.pagination-archive .current {
	font-weight: 700 !important;
}


.pagination-archive .jet-woo-builder-shop-pagination__arrow {
	width: 43px !important;
	position: relative;
}

.pagination-archive .jet-arrow-prev::after {
	content: '';
	background: url('/wp-content/uploads/2026/01/fleche-pagination-prev.svg');
	position: absolute;
	width: 6px;
	height: 8px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	top: calc(50% - 4px);
	left: calc(50% - 3px);
}

.pagination-archive .page-numbers:hover {
	font-weight: 700 !important;
}

.pagination-archive .jet-arrow-next::after {
	content: '';
	background: url('/wp-content/uploads/2026/01/fleche-pagination-next.svg');
	position: absolute;
	width: 6px;
	height: 8px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	top: calc(50% - 4px);
	left: calc(50% - 3px);
}

.archive-products-loop .products .jet-woo-builder-product .jet-woo-item-overlay-wrap {
	height: 100%;
}

.archive-products-loop .products .jet-woo-builder-product .jet-woo-item-overlay-wrap>div {
	height: 100%;
}

.archive-products-loop .products .jet-woo-builder-product .jet-woo-item-overlay-wrap>div>.miniature-produit {
	height: 100%;
}

.titre-miniature h2 {
	margin-bottom: 0px;
	margin-top: 0px;
}

.type-product .add_to_cart_button {
	display: none !important;
}

.type-product .added_to_cart {
	display: none !important;
}

.type-product .price {
	margin-bottom: 0px !important;
}

.boite-icone-reassurance .elementor-icon-box-title {
	margin-top: 0px;
}

.single-meta .posted_in {
	display: none !important;
}

.single-meta .tagged_as {
	display: none !important;
}

.single-meta .detail-label {
	font-weight: 500 !important;
}

.single-image-produit .woocommerce-product-gallery__trigger {
	display: none;
}

.single-image-produit div.images .flex-control-thumbs li img {
	opacity: 1 !important;
}

.produits-lies .up-sells>h2 {
	display: none;
}

.conteneur-pop-up > .elementor-widget-html {
	height:580px !important;
}

/* État par défaut du bouton */
.add-to-cart-produit button {
	text-align: left;
	padding-left: 25px !important;
	position: relative;
	max-width: 230px;
	transition: max-width 0.3s linear 0.1s;
	/* délai de 0.1s au retour (attend que l'icône disparaisse) */
}

/* Icône panier */
.add-to-cart-produit button::after {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-panier-bouton.svg');
	position: absolute;
	width: 19px;
	height: 19px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	top: calc(50% - 9.5px);
	right: 25px;
	opacity: 0;
	transition: opacity 0.1s linear 0s;
	/* pas de délai au retour (disparaît immédiatement) */
}

/* Hover du bouton */
.add-to-cart-produit button:hover {
	max-width: 265px !important;
	transition: max-width 0.3s linear 0s;
	/* pas de délai à l'entrée (s'agrandit immédiatement) */
}

.jet-listing-not-found {
	margin-top: 30px;
}

/* Hover de l'icône */
.add-to-cart-produit button:hover::after {
	opacity: 1;
	transition: opacity 0.1s linear 0.3s;
	/* délai de 0.3s à l'entrée (attend que le bouton s'agrandisse) */
}

.retour-boutique .elementor-button-content-wrapper {
	align-items: center;
}

.retour-boutique .elementor-button-icon {
	width: 6px;
	height: 8px;
}

.produits-lies .jet-woo-builder-products--columns {
	margin-bottom: 0px !important;
}

.woocommerce table.shop_attributes td p {
	padding: 0px;
}

#description-produit {
	border-bottom: 1px solid #FFE400;
}

#description-produit .product p:last-child {
	margin-bottom: 30px;
}

#caracteristiques-techniques .woocommerce-product-attributes {
	margin-bottom: 30px;
}

.titre-reference-listing h2 {
	margin-top: 0px;
	margin-bottom: 0;
}

.titre-reference h1 {
	margin-top: 0px;
	margin-bottom: 0;
}

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


.filtre-radio-reference .jet-radio-list__item .jet-radio-list__button::after {
	content: '';

	height: 1px;
	width: 100%;
	position: absolute;
	bottom: -5px;
	left: 0px;
	opacity: 0;
	transition: 0.3s all linear;
}

#listing-reference .jet-listing-grid__item:nth-of-type(2n) {
	margin-top: 50px;
}

.pagination-references .next .jet-filters-pagination__link {
	display: none;
}

.pagination-references .next {
	width: 43px;
	height: 27px;
	margin-left: 10px;
}

.pagination-references .next::after {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-pagination-reference-next.svg');
	width: 43px;
	height: 27px;
	position: relative;
	display: inline-block;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

.pagination-references .prev .jet-filters-pagination__link {
	display: none;
}

.pagination-references .jet-filters-pagination__current .jet-filters-pagination__link {
	font-weight: 700 !important;
}

.pagination-references .jet-filters-pagination__item:hover .jet-filters-pagination__link {
	font-weight: 700 !important;
}

.pagination-references .prev {
	width: 43px;
	height: 27px;
	margin-right: 10px;
}

.pagination-references .prev::after {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-pagination-reference-prev.svg');
	width: 43px;
	height: 27px;
	position: relative;
	display: inline-block;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

.filtre-radio-reference .jet-radio-list__item:hover .jet-radio-list__button::after {
	background-color: #EDECEC !important;
	opacity: 1 !important;
	transition: 0.3s all linear;
}


.filtre-radio-reference .jet-radio-list__input:checked~.jet-radio-list__button::after {
	opacity: 1;
	transition: 0.3s all linear;
	background-color: #FFE400 !important;

}

/* Prestations checklist */
.prestations-checklist {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px 40px;
}



.prestation-item {
	display: flex;
	align-items: center;
	gap: 15px;
}

.prestation-checkbox {
	width: 18px;
	height: 18px;
	border: 1px solid #333;
	border-radius: 4px;
	flex-shrink: 0;
	position: relative;
}

.prestation-item.checked .prestation-checkbox::before,
.prestation-item.checked .prestation-checkbox::after {
	content: '';
	position: absolute;
	background: #333;
	width: 1px;
	height: 22px;
	top: 50%;
	left: 50%;
}

.prestation-item.checked .prestation-checkbox::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.prestation-item.checked .prestation-checkbox::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

.prestation-label {
	font-size: 16px;
	font-weight: 500;
}

.gallery-references .next-arrow svg {
	display: none;
}

.gallery-references .jet-engine-arrow {
	width: 43px;
	height: 27px;
	bottom: -60px !important;
	top: inherit;
}

.gallery-references .slick-slide {
	height: 600px;

}

.gallery-fournisseurs-solutions .jet-engine-gallery-grid__item-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
}

.gallery-references .slick-slide img {
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
}

.gallery-references .prev-arrow {
	left: inherit;
	right: 60px;
}

.gallery-references .next-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-pagination-reference-next.svg');
	position: absolute;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	width: 43px;
	height: 27px;
	top: 0px;
	left: 0px;
}

.gallery-references .prev-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-pagination-reference-prev.svg');
	position: absolute;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	width: 43px;
	height: 27px;
	top: 0px;
	left: 0px;
}

.horaires-tableau table {
	margin-bottom: 0px;
}

/* Formulaire documentation sécurisée */
.doc-password-form {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 15px;
}

.doc-password-form label {
	font-weight: 600;
	font-size: 16px;
}

.doc-password-form input[type="password"] {
	width: 100%;
	max-width: 300px;
	padding: 10px 15px;
	border: none;
	border-bottom: 2px solid #333;
	background: transparent;
	font-size: 16px;
	text-align: center;
}

.doc-password-form input[type="password"]:focus {
	outline: none;
	border-bottom-color: #FFE400;
}

.doc-password-submit {
	margin-top: 10px;
	padding: 10px 25px;
	border: 1px solid #333;
	border-radius: 20px;
	background: transparent;
	font-size: 14px;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.3s ease;
}

.doc-password-submit:hover {
	background: #FFE400;
	border-color: #FFE400;
}

.doc-password-error {
	color: #cc0000;
	font-size: 14px;
	margin: 0;
}

.jet-register-message {
	text-align: center;
}

.listing-titre-article h2 {
	margin-top: 0px;
	margin-bottom: 0px;
	font-weight: 500 !important;
}

.single-post blockquote {
	background-color: #EDECEC;
	padding: 70px 80px;
	margin: 50px 0px 70px 0px;
}

.single-post blockquote p {
	font-weight: 700;
	text-align: center;
	font-size: 20px;
	line-height: 27px;
}

.single-post .jet-woo-product-gallery-slider .swiper-slide {
	height: auto;
}

.single-post .jet-woo-product-gallery-slider .jet-woo-product-gallery__image {
	height: 500px;
	/* Ajuste cette valeur selon tes besoins */
}

.single-post .jet-woo-product-gallery-slider .jet-woo-product-gallery__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.single-post .jet-woo-product-gallery__image-link {
	height: 100%;
}

.section-documentation {
	position: relative;
}

.section-documentation::before,
.section-documentation::after {
	content: '';
	position: absolute;
	width: 80px;
	height: 80px;
}

.section-documentation::before {
	top: -40px;
	left: -40px;
	background:
		linear-gradient(#FFE400, #FFE400) center/1px 100% no-repeat,
		linear-gradient(#FFE400, #FFE400) center/100% 1px no-repeat;
}

.section-documentation::after {
	bottom: -40px;
	right: -40px;
	background:
		linear-gradient(#FFE400, #FFE400) center/1px 100% no-repeat,
		linear-gradient(#FFE400, #FFE400) center/100% 1px no-repeat;
}

.forme-croix::before,
.forme-croix::after {
	content: '';
	position: absolute;
	width: 80px;
	height: 80px;
}

.forme-croix::before {
	top: -40px;
	left: -40px;
	background:
		linear-gradient(#FFE400, #FFE400) center/1px 100% no-repeat,
		linear-gradient(#FFE400, #FFE400) center/100% 1px no-repeat;
}

.forme-croix::after {
	bottom: -40px;
	right: -40px;
	background:
		linear-gradient(#FFE400, #FFE400) center/1px 100% no-repeat,
		linear-gradient(#FFE400, #FFE400) center/100% 1px no-repeat;
}

.column-fournisseurs {
	position: relative;
}



.elementor-widget-jet-checkout-payment #place_order {
	float: none !important;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	display: flex !important;
	width: auto !important;
	margin-top: 20px;
}

.wc_payment_method label img {
	margin-left: 0px !important;
}

.wc_payment_method label {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.woocommerce-checkout-review-order-table tr {
	border-bottom: 1px solid #EDECEC;
}

.woocommerce-checkout-review-order-table tr.order-total {
	border-bottom: 0px;
}

.column-fournisseurs::before {
	content: '';
	position: absolute;
	width: 60px;
	height: 60px;
	top: 35px;
	right: 35px;
	left: auto;
	background:
		linear-gradient(#FFE400, #FFE400) center/1px 100% no-repeat,
		linear-gradient(#FFE400, #FFE400) center/100% 1px no-repeat;
}

.croix-jaune-haut-droite {
	position: relative;
}

.croix-jaune-haut-droite::before {
	content: '';
	position: absolute;
	width: 60px;
	height: 60px;
	top: 40px;
	right: 40px;
	left: auto;
	background:
		linear-gradient(#FFE400, #FFE400) center/1px 100% no-repeat,
		linear-gradient(#FFE400, #FFE400) center/100% 1px no-repeat;
}

@media screen and (max-width: 1024px) {
	.croix-jaune-haut-droite::before {
		width: 40px;
		height: 40px;
		top: 20px;
		right: 20px;
	}
}

.section-croix-droite {
	position: relative;
}

.section-croix-droite::after {
	content: '';
	position: absolute;
	width: 60px;
	height: 60px;
	bottom: 25px;
	right: 25px;
	background:
		linear-gradient(#FFFFFF, #FFFFFF) center/1px 100% no-repeat,
		linear-gradient(#FFFFFF, #FFFFFF) center/100% 1px no-repeat;
}

.liste-tracks-security ul {
	list-style: none;
	padding-left: 0;
	margin-left: 0;
}

.liste-tracks-security ul li {
	padding-left: 22px;
	position: relative;
}

.woocommerce-form__label-for-checkbox {
	line-height: 1 !important;
}

.jet-woo-builder-woocommerce-checkout .woocommerce-NoticeGroup-checkout>div>ul {
	display: none;
}

.elementor-jet-thankyou-order-details .woocommerce-table--order-details {
	border: none !important;
	border-collapse: collapse !important;
}

.elementor-jet-thankyou-order-details .woocommerce-table--order-details tr {
	border-bottom: 1px solid #1d1d1b21;
}

.elementor-jet-thankyou-order-details .woocommerce-table--order-details tfoot tr:last-child {
	border-bottom: none !important;
}

.elementor-jet-thankyou-order-details .woocommerce-table--order-details tr td:nth-child(2) {
	padding-left: 20px !important;
}

.elementor-jet-thankyou-order-details .woocommerce-table--order-details tr th:nth-child(2) {
	padding-left: 20px !important;
}

.elementor-jet-thankyou-order-details .woocommerce-order-details {
	margin-bottom: 0px;
}

.woocommerce-customer-details--phone {
	display: flex;
	align-items: center;
	margin-bottom: 0px;
}

.woocommerce-customer-details--email {
	display: flex;
	align-items: center;
}

.liste-tracks-security ul li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 8px;
	width: 8px;
	height: 8px;
	background-color: #FFE400;
	border-radius: 50%;
}

.page-non-trouvee {
	font-size: 200px !important;
	font-weight: 900;
	text-transform: uppercase;
	color: #1D1D1B;
	margin: 0;
}

.page-non-trouvee div {
	font-size: 8vw !important;
	line-height: 0.7 !important;
	font-weight: 900 !important;
}

.page-non-trouvee .ligne-trouvee {
	text-align: right;
}

.page-non-trouvee .ligne-page {
	text-align: left;
}

.page-non-trouvee .ligne-non {
	text-align: center;
}

@media screen and (max-width: 1500px) {
	.page-non-trouvee div {
		font-size: 10vw !important;
	}

	.page-non-trouvee .ligne-non {
		padding-right: 50px;
	}
}

@media screen and (max-width: 768px) {
	.page-non-trouvee {
		font-size: 50px !important;
	}
}

.carousel-collectivite .elementor-swiper-button {
	top: inherit !important;
	bottom: -65px !important;
}

.carousel-collectivite .elementor-swiper-button-prev {
	left: inherit !important;
	right: 55px !important;
}

.produits-lies .next-arrow::after {
	content: '';
	background: url(/wp-content/uploads/2026/02/icone-pagination-reference-prev.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 43px;
	height: 27px;
}

.produits-lies .prev-arrow::after {
	content: '';
	background: url(/wp-content/uploads/2026/02/icone-pagination-reference-prev.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 43px;
	height: 27px;
}

.produits-lies .prev-arrow svg {
	display: none;
}

.produits-lies .next-arrow svg {
	display: none;
}

.produits-lies .prev-arrow::after {
	content: '';
	background: url(/wp-content/uploads/2026/02/icone-pagination-reference-prev.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 43px;
	height: 27px;
}


.carousel-collectivite .elementor-swiper-button-next {
	left: inherit;
	right: 0px !important;
}

.jet-listing-grid__item .jet-listing-dynamic-image__link {
	display: block;
	overflow: hidden;
}

.jet-listing-grid__item .jet-listing-dynamic-image__img {
	transition: transform 0.3s ease;
}

.jet-listing-grid__item:hover .jet-listing-dynamic-image__img {
	transform: scale(1.1);
}

.page-id-107 footer>div {
	margin-top: 0px;
}

.page-id-99 footer>div {
	margin-top: 0px;
}

.page-id-85 footer>div {
	margin-top: 0px;
}

.infinite-scroll-container {
	background-color: transparent;
	overflow: hidden;
	white-space: nowrap;
	position: relative;
	padding: 20px 0;
}

.infinite-scroll-track {
	display: inline-block;
	animation: scroll-horizontal 30s linear infinite;
}

.infinite-scroll-track div {
	display: inline-block;
	font-size: 68px;
	font-weight: 700;
	text-transform: uppercase;
	margin-right: 35px;
	line-height: 74px;
}

.infinite-scroll-track div {
	color: #FFE400;
}

.infinite-scroll-track div:nth-child(4n) {
	color: #FFFFFF;
}

/* Scroll infini variante jaune + noir */
.infinite-scroll-container-alt {
	background-color: transparent;
	overflow: hidden;
	white-space: nowrap;
	position: relative;
	padding: 20px 0;
}

.infinite-scroll-track-alt {
	display: inline-block;
	animation: scroll-horizontal 30s linear infinite;
}

.infinite-scroll-track-alt div {
	display: inline-block;
	font-size: 68px;
	font-weight: 700;
	text-transform: uppercase;
	margin-right: 35px;
	line-height: 74px;
	color: #FFE400;
}

.infinite-scroll-track-alt div:nth-child(4n) {
	color: #1D1D1B;
}

/* Défilement vertical colonnes fournisseurs */
.column-defilement-vertical {
	display: flex !important;
	height: 860px;
	max-height: 860px;
	overflow: hidden;
}

.column-defilement-vertical-1,
.column-defilement-vertical-2 {
	overflow: hidden;
}

.column-defilement-vertical-1 .scroll-content {
	animation: scrollUp 50s linear infinite;
}

.column-defilement-vertical-2 .scroll-content {
	animation: scrollDown 50s linear infinite;
}

.formulaire-connexion .jet-login .jet-login-message a {
	display: none;
}

.woocommerce-error br {
	display: none;
}

.miniature-produit .jet-woo-builder-archive-product-thumbnail::before {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-hover-produit.svg');
	position: absolute;
	width: 52px;
	height: 52px;
	top: calc(50% - 26px);
	left: calc(50% - 26px);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	opacity: 0;
	transition: 0.3s all linear;
	z-index: 2;
	border: none !important;
	pointer-events: none;
}

.jet-woo-product-thumbs.effect-fade img+img {
	height: 100% !important;
	object-fit: contain;
}

.miniature-produit:hover .jet-woo-builder-archive-product-thumbnail::before {
	opacity: 1;
	transition: 0.3s all linear;
}

@keyframes scrollUp {
	0% {
		transform: translateY(0);
	}

	100% {
		transform: translateY(-50%);
	}
}

@keyframes scrollDown {
	0% {
		transform: translateY(-50%);
	}

	100% {
		transform: translateY(0);
	}
}



@keyframes scrollLeft {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-50%);
	}
}

@keyframes scrollRight {
	0% {
		transform: translateX(-50%);
	}

	100% {
		transform: translateX(0);
	}
}

/* Croix décorative haut gauche */
.croix-noir-haut-gauche {
	position: relative !important;
}

.croix-noir-haut-gauche::before {
	content: '' !important;
	position: absolute;
	width: 60px;
	height: 60px;
	top: 40px;
	left: 40px;
	z-index: 1;
	background:
		linear-gradient(#1D1D1B, #1D1D1B) center/1px 100% no-repeat,
		linear-gradient(#1D1D1B, #1D1D1B) center/100% 1px no-repeat !important;
}

/* Croix décorative bas droite */
.section-croix-noir-bas-droite {
	position: relative !important;
}

.section-croix-noir-bas-droite::after {
	content: '' !important;
	position: absolute;
	width: 60px;
	height: 60px;
	top: auto !important;
	left: auto !important;
	bottom: 40px;
	right: 40px;
	z-index: 1;
	background:
		linear-gradient(#221E1B, #221E1B) center/1px 100% no-repeat,
		linear-gradient(#221E1B, #221E1B) center/100% 1px no-repeat !important;
}

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

.section-background-controle-acces {
	position: relative;
}

.section-background-controle-acces::before,
.section-background-controle-acces::after {
	content: '';
	position: absolute;
	width: 50px;
	height: 50px;
}

.section-background-controle-acces::before {
	top: 50px;
	left: 50px;
	background:
		linear-gradient(#FFFFFF, #FFFFFF) center/1px 100% no-repeat,
		linear-gradient(#FFFFFF, #FFFFFF) center/100% 1px no-repeat;
}

.section-background-controle-acces::after {
	bottom: 50px;
	right: 50px;
	background:
		linear-gradient(#FFFFFF, #FFFFFF) center/1px 100% no-repeat,
		linear-gradient(#FFFFFF, #FFFFFF) center/100% 1px no-repeat;
}

.page-id-109 footer>div {
	margin-top: 0px;
}

.formulaire-contact select,
.formulaire-contact input,
.formulaire-contact textarea {
	padding-left: 0px;
	padding-right: 0px;
	padding-top: 10px;
	padding-bottom: 15px;
}

.formulaire-contact select::placeholder {
	color: #FFFFFF !important;
	opacity: 1 !important;
}

.woocommerce-checkout-review-order-table .product-name {
	padding-right: 20px !important;
}

@keyframes scroll-horizontal {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-50%);
	}
}

@media screen and (max-width:1800px) {

	.horaire-astreinte td,
	.horaire-astreinte th {
		font-size: 18px !important;
		line-height: 20px !important;
	}
}

@media screen and (max-width:1650px) {

	.horaire-astreinte tr td:first-child {
		padding-right: 0px;
		text-align: center;
	}

	.horaire-astreinte tr {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 5px;
	}

}

@media screen and (max-width:1500px) {
	.section-top-header-left {
		padding-left: 30px;
		padding-right: 30px;
	}

	.section-menu-header {
		padding-right: 30px;
		padding-left: 30px;
	}

	.section-menu-header .menu-header .menu-item a {
		margin-left: 10px !important;
		margin-right: 10px !important;
	}


	.menu-header .sub-menu .menu-item a {

		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.section-menu-header .menu-header {
		margin-right: 0 !important;
	}

	.section-menu-header .menu-header .menu-item .sub-menu {
		inset-inline-start: 10px !important;
	}

	.section-top-header {
		padding-left: 30px;
		padding-right: 30px;
	}

}

@media screen and (max-width:1366px) {
	.croix-jaune-gauche::before {
		width: 70px !important;
		height: 70px !important;
		top: 0px;
		right: 10px !important;
		left: inherit !important;
	}
}

@media screen and (min-width:1300px) {
	.section-menu-sub-header {
		display: none !important;
	}
}

@media screen and (max-width:1300px) {
	.menu-top-header {
		display: none !important;
	}


}

@media screen and (max-width:1024px) {
	.column-fournisseurs::before {
		width: 40px !important;
		height: 40px !important;
		top: 20px !important;
		right: 20px !important;
	}

	.single-post blockquote {
		padding: 50px;
	}

	.gallery-references .slick-slide {
		height: 520px;
	}

	.menu-sub-header>nav>ul>li {
		flex: 1 1 25%;
	}

	.menu-sub-header>nav>ul {
		row-gap: 30px;
	}

	.menu-sub-header>nav>ul>li>a {
		flex: 0 0 auto !important;
	}

	.menu-sub-header>nav>ul>li {
		justify-content: center;
	}

	.galerie-single-product .jet-woo-product-gallery-modern {
		flex-direction: row;
		flex-wrap: nowrap;
	}
}

@media screen and (max-width:767px) {
	.page-id-10 #order_review #payment #place_order {
		width: auto !important;
		margin-top: 10px;
	}

	.page-id-10 #order_review table.shop_table td {
		padding: 9px 12px !important;
	}

	.page-id-10 #order_review {

		padding-top: 30px;
		padding-bottom: 30px;
		padding-right: 20px;
		padding-left: 20px;
	}

	.section-background-controle-acces::before,
	.section-background-controle-acces::after {
		width: 30px;
		height: 30px;
	}

	.section-background-controle-acces::before {
		top: 20px;
		left: 20px;
	}

	.section-background-controle-acces::after {
		bottom: 20px;
		right: 20px;
	}

	.woocommerce-form-coupon-toggle .woocommerce-info {
		flex-wrap: wrap;
	}

	.woocommerce table.woocommerce-cart-form__contents tr {
		margin-top: 30px;
	}

	.woocommerce table.woocommerce-cart-form__contents tr:first-child {
		margin-top: 0px;
	}

	.woocommerce table.woocommerce-cart-form__contents tr:last-child {
		margin-top: 0px;
	}

	.woocommerce table.shop_table td {
		padding-left: 0px !important;
		padding-right: 0px !important;
	}

	#order_review td.product-name {
		padding-right: 20px !important;
	}

	.elementor-widget-jet-cart-totals .wc-forward {
		font-size: 16px !important;
		line-height: 20px !important;
	}

	.woocommerce-cart-form__contents .coupon button.button {
		width: 100% !important;
	}

	.woocommerce-cart-form__contents .coupon #coupon_code {
		margin-bottom: 20px;
		margin-right: 0px !important;
	}

	.woocommerce-cart-form__contents .coupon {

		flex-wrap: wrap;
		gap: 0;
	}

	.woocommerce-cart-form table.shop_table .product-name a {
		text-align: left !important;
	}

	.woocommerce-cart-form table.shop_table .product-remove {
		justify-content: end;
	}

	.woocommerce .elementor-jet-cart-table .woocommerce-cart-form table.shop_table .product-thumbnail {
		text-align: left !important;

	}

	.woocommerce .elementor-jet-cart-table .woocommerce-cart-form table.shop_table .product-thumbnail img {
		width: 150px !important;
	}

	.woocommerce-cart-form__contents .coupon {
		width: 100%;
	}

	.woocommerce-cart-form__contents .product-name::before {
		display: none;
	}

	.woocommerce-cart-form__contents td {
		display: flex !important;
		justify-content: space-between;
		width: 100% !important;
		align-items: center;
		padding: 9px 0px !important;
	}

	.scroll-content .elementor-widget-image img {
		height: auto !important;
		width: 100% !important;
	}

	.column-defilement-vertical {
		height: inherit;
		max-height: inherit;
	}

	.column-defilement-vertical-2 .scroll-content {
		animation: scrollRight 45s linear infinite !important;
		width: max-content !important;
		min-width: max-content !important;
		max-width: none !important;
	}

	.column-defilement-vertical .elementor-widget-container img {
		max-height: 60px !important;
	}

	.scroll-content {
		flex-direction: row !important;
		gap: 15px !important;
		flex-wrap: nowrap;
	}

	.column-defilement-vertical .elementor-widget-container img {
		max-height: 60px !important;
	}

	.column-defilement-vertical .elementor-widget-image {
		width: 160px !important;
		height: 160px !important;
		padding: 15px !important;
		flex-shrink: 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.column-defilement-vertical-1,
	.column-defilement-vertical-2 {
		flex-direction: row !important;
		height: auto !important;
		min-height: 120px;
		overflow-x: hidden;
		overflow-y: visible;
		min-width: 0;
		width: 100%;
	}

	.column-defilement-vertical-1 .scroll-content {
		animation: scrollLeft 45s linear infinite !important;
		width: max-content !important;
		min-width: max-content !important;
		max-width: none !important;
	}

	.section-croix-noir-bas-droite::after {
		display: none;
	}

	.section-croix-noir-bas-droite::before {
		display: none;
	}

	#titre-detection-instrusion .elementor-heading-title,
	#titre-video-protection .elementor-heading-title,
	#titre-detection-incendie .elementor-heading-title,
	#titre-controle-acces .elementor-heading-title,
	#titre-protection-temporaire .elementor-heading-title,
	#titre-cybersecurite .elementor-heading-title {
		gap: 20px !important;
	}

	.croix-noir-haut-gauche::before {
		display: none;
	}

	.croix-noir-haut-gauche::after {
		display: none;
	}

	.section-croix-droite::after {
		content: '';
		position: absolute;
		width: 30px;
		height: 30px;
		bottom: 15px;
		right: 15px;
		background:
			linear-gradient(#FFFFFF, #FFFFFF) center/1px 100% no-repeat,
			linear-gradient(#FFFFFF, #FFFFFF) center/100% 1px no-repeat;
	}

	.infinite-scroll-track div {
		font-size: 50px;
		margin-right: 25px;
		line-height: 50px;
	}

	.section-documentation::before,
	.section-documentation::after {
		width: 40px;
		height: 40px;
	}

	.section-documentation::after {
		bottom: -20px;
		right: -20px;
	}

	.section-documentation::before {
		top: -20px;
		left: -20px;
	}

	.forme-croix::before,
	.forme-croix::after {
		width: 40px;
		height: 40px;
	}

	.forme-croix::after {
		bottom: -20px;
		right: -20px;
	}

	.forme-croix::before {
		top: -20px;
		left: -20px;
	}

	.single-post blockquote {
		padding: 30px;
	}

	.single-post blockquote {
		margin-top: 40px;
		margin-bottom: 40px;
	}

	.single-post .wp-block-gallery {
		gap: 20px !important;
	}

	.single-post blockquote p {
		font-weight: 700;
		text-align: center;
		font-size: 18px;
		line-height: 22px;
	}

	#listing-reference .jet-listing-grid__item:nth-of-type(2n) {
		margin-top: 0;
	}

	.section-top-header-left {
		padding-left: 20px;
		padding-right: 20px;
	}

	.section-menu-header {
		padding-right: 20px;
		padding-left: 20px;
	}

	.section-menu-sub-header {
		display: none !important;
	}


	.header-cart .elementor-menu-cart__wrapper {
		height: 36px;
	}

	.header-cart .elementor-menu-cart__wrapper .elementor-menu-cart__toggle_wrapper {
		height: 36px;
	}

	.header-cart .elementor-menu-cart__wrapper .elementor-menu-cart__toggle_wrapper .elementor-menu-cart__toggle {
		height: 36px;
	}

	.menu-responsive .jet-nav {
		border-right: 1px solid #1D1D1B;
	}


	.menu-responsive .detection-intrusion a::before {
		content: '';
		background: url('/wp-content/uploads/2026/01/icone-detection-intrusion.svg');
		position: relative;
		display: inline-block;
		width: 42px;
		height: 42px;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		flex: 0 0 42px;
	}

	.menu-responsive .video-protection a::before {
		content: '';
		background: url('/wp-content/uploads/2026/01/icone-video-protection.svg');
		position: relative;
		display: inline-block;
		width: 42px;
		height: 42px;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		flex: 0 0 42px;
	}

	.menu-responsive .detection-incendie a::before {
		content: '';
		background: url('/wp-content/uploads/2026/01/icone-detection-incendie.svg');
		position: relative;
		display: inline-block;
		width: 42px;
		height: 42px;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		flex: 0 0 42px;
	}

	.menu-responsive .controle-acces a::before {
		content: '';
		background: url('/wp-content/uploads/2026/01/icone-controle-acces.svg');
		position: relative;
		display: inline-block;
		width: 42px;
		height: 42px;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		flex: 0 0 42px;
	}

	.menu-responsive .protection-temporaire a::before {
		content: '';
		background: url('/wp-content/uploads/2026/01/icone-protection-temporaire.svg');
		position: relative;
		display: inline-block;
		width: 42px;
		height: 42px;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		flex: 0 0 42px;
	}

	.menu-responsive .menu-item a {
		gap: 15px;
	}

	.menu-responsive .cybersecurite a::before {
		content: '';
		background: url('/wp-content/uploads/2026/01/icone-cybersecurite.svg');
		position: relative;
		display: inline-block;
		width: 42px;
		height: 42px;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		flex: 0 0 42px;
	}

	.menu-responsive .jet-nav {
		padding: 0px !important;
	}

	.menu-responsive .jet-nav {
		padding-top: 30px !important;
	}

	.menu-responsive .contrat-maintenance {
		background-color: #1D1D1B !important;

	}

	.menu-responsive .contrat-maintenance a span {
		color: #FFFFFF !important;
		font-size: 16px;
		line-height: 18px;
		text-transform: uppercase;
		font-weight: 500 !important;
	}

	.menu-responsive .contrat-maintenance {
		margin-top: 12px;
		margin-bottom: 80px;
	}

	.menu-responsive .contrat-maintenance a::after {
		content: '';
		background: url('/wp-content/uploads/2026/01/icone-contrat-maintenance.svg');
		position: relative;
		display: inline-block !important;
		width: 31px;
		height: 19px;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		flex: 0 0 31px;
		bottom: inherit !important;
	}

	.horaires-tableau td,
	.horaires-tableau th {
		font-size: 16px;
		line-height: 20px;
	}
}





@media screen and (max-width:600px) {
	.listing-document-libre .jet-listing-grid__items {
		--columns: 1 !important;
	}
}

@media screen and (max-width:500px) {


	.woocommerce-form-coupon {
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
	}

	.woocommerce-form-coupon p.form-row {
		width: 100% !important;
	}

	#listing-articles .jet-listing-grid__item {
		width: 100%;
		--columns: 1;
	}
}

@media screen and (max-width:475px) {
	.prestations-checklist {
		grid-template-columns: 1fr;
		gap: 20px 40px;
	}


	.gallery-references .slick-slide {
		height: 450px;
	}


}

@media screen and (max-width:450px) {
	.section-exemples-applications {
		flex-direction: column !important;
	}

	.section-exemples-applications>div {
		width: 100% !important;
	}
}

@media screen and (max-width:400px) {
	.section-presentation-societe {
		margin-top: 300px !important;
	}
}

@media screen and (max-width:385px) {
	.add-to-cart-produit form::before {
		display: none !important;
	}

	.add-to-cart-produit form::after {
		display: none !important;
	}

	.add-to-cart-produit form .quantity {
		height: 44px;
	}

	.add-to-cart-produit form {
		display: flex;
		flex-wrap: wrap !important;
		gap: 10px;
		flex-direction: column !important;
	}

	.add-to-cart-produit form button {
		margin-left: 0px !important;
	}
}

/* ==========================================
   Effet hover "Diagonal Shine" pour boutons
   ========================================== */
.bouton-blanc .elementor-button,
.bouton-jaune .elementor-button,
.bouton-gris .elementor-button,
.bouton-noir .elementor-button {
	position: relative;
	overflow: hidden;
	display: inline-flex;
}

.bouton-blanc .elementor-button::after,
.bouton-jaune .elementor-button::after,
.bouton-gris .elementor-button::after,
.bouton-noir .elementor-button::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform: translateX(-120%) skewX(-45deg);
	transition: transform 1s ease;
	pointer-events: none;
	z-index: 0;
}

.bouton-blanc .elementor-button-content-wrapper,
.bouton-jaune .elementor-button-content-wrapper,
.bouton-gris .elementor-button-content-wrapper,
.bouton-noir .elementor-button-content-wrapper {
	position: relative;
	z-index: 1;
}

/* Couleurs du shine par bouton */
.bouton-blanc .elementor-button::after {
	background: #EDECEC;
}

.bouton-jaune .elementor-button::after {
	background: #FFED4D;
}

.bouton-gris .elementor-button::after {
	background: #FFFFFF;
}

.bouton-noir .elementor-button::after {
	background: #585858;
}

/* Animation au hover */
.bouton-blanc .elementor-button:hover::after,
.bouton-jaune .elementor-button:hover::after,
.bouton-gris .elementor-button:hover::after,
.bouton-noir .elementor-button:hover::after {
	transform: translateX(120%) skewX(-45deg);
}

/* Prix HT / TTC en ligne */
.jet-woo-product-price {
	display: flex;
	align-items: baseline;
	gap: 5px 20px;
	justify-content: center;
	flex-wrap: wrap;
}

.elementor-jet-single-price .price {
	display: flex;
	align-items: baseline;
	gap: 5px 20px;
	justify-content: flex-start;
	flex-wrap: wrap;
	flex-direction: column;
}

.bouton-en-savoir-plus svg {
	width: 43px;
}

.bouton-en-savoir-plus .elementor-button-content-wrapper {
	align-items: center;
}

.listing-gallery-accueil .next-arrow svg {
	display: none;
}

.listing-gallery-accueil .next-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-pagination-reference-prev.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 43px;
	height: 27px;
}



.listing-gallery-accueil .prev-arrow svg {
	display: none;
}

.listing-gallery-accueil .prev-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-pagination-reference-prev.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 43px;
	height: 27px;
}



.listing-produit-accueil .next-arrow svg {
	display: none;
}

.listing-produit-accueil .next-arrow {
	right: calc(50% - 50px) !important;
}

.listing-produit-accueil .next-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-pagination-reference-prev.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 43px;
	height: 27px;
}


.listing-produit-accueil .prev-arrow {
	left: calc(50% - 50px) !important;
}

.listing-produit-accueil .prev-arrow svg {
	display: none;
}

.listing-produit-accueil .prev-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-pagination-reference-prev.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 43px;
	height: 27px;
}




.listing-nos-clients .next-arrow svg {
	display: none;
}

.listing-nos-clients .next-arrow {
	right: calc(50% - 50px) !important;
}

.listing-nos-clients .next-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-pagination-reference-prev.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 43px;
	height: 27px;
}


.listing-nos-clients .prev-arrow {
	left: calc(50% - 50px) !important;
}

.listing-nos-clients .prev-arrow svg {
	display: none;
}

.listing-nos-clients .prev-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-pagination-reference-prev.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 43px;
	height: 27px;
}


.listing-nos-clients .jet-listing-grid__item:hover .jet-listing-dynamic-image__img {
	transform: inherit;
}


.scroll-content .elementor-widget-image {
	height: auto;
	width: 100%;
	aspect-ratio: 1;
	display: flex;
	align-items: center;
}

.scroll-content .elementor-widget-image img {
	width: 100%;
}



.listing-references-accueil .next-arrow svg {
	display: none;
}

.listing-references-accueil .next-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-prev-listing-reference-accueil.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 43px;
	height: 27px;
}



.listing-references-accueil .prev-arrow svg {
	display: none;
}

.listing-references-accueil .prev-arrow::after {
	content: '';
	background: url('/wp-content/uploads/2026/02/icone-prev-listing-reference-accueil.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 43px;
	height: 27px;
}


.woocommerce-message::before {
	display: none;
}

.woocommerce-Input {
	padding: 10px 0 10px 0 !important;
	border: 0px !important;
	border-bottom: 1px solid #1D1D1B !important;
	border-radius: 0px !important;
}

.jet-woo-product-price .prix-ht,
.jet-woo-product-price .prix-ttc {
	font-size: 14px;
}

.jet-woo-product-price .prix-ht .woocommerce-Price-amount,
.jet-woo-product-price .prix-ttc .woocommerce-Price-amount {
	font-size: 18px;
}

/* Icones titres tabs accueil */
#titre-detection-instrusion,
#titre-video-protection,
#titre-detection-incendie,
#titre-controle-acces,
#titre-protection-temporaire,
#titre-cybersecurite {
	cursor: pointer;
}

#titre-detection-instrusion .elementor-heading-title,
#titre-video-protection .elementor-heading-title,
#titre-detection-incendie .elementor-heading-title,
#titre-controle-acces .elementor-heading-title,
#titre-protection-temporaire .elementor-heading-title,
#titre-cybersecurite .elementor-heading-title {
	display: flex;
	align-items: center;
	gap: 30px;
}

#titre-detection-instrusion .elementor-heading-title::before,
#titre-video-protection .elementor-heading-title::before,
#titre-detection-incendie .elementor-heading-title::before,
#titre-controle-acces .elementor-heading-title::before,
#titre-protection-temporaire .elementor-heading-title::before,
#titre-cybersecurite .elementor-heading-title::before {
	content: '';
	display: block;
	width: 52px;
	min-width: 52px;
	height: 52px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

#titre-detection-instrusion .elementor-heading-title::before {
	background-image: url('/wp-content/uploads/2026/01/icone-detection-intrusion.svg');
}

#titre-video-protection .elementor-heading-title::before {
	background-image: url('/wp-content/uploads/2026/01/icone-video-protection.svg');
}

#titre-detection-incendie .elementor-heading-title::before {
	background-image: url('/wp-content/uploads/2026/01/icone-detection-incendie.svg');
}

#titre-controle-acces .elementor-heading-title::before {
	background-image: url('/wp-content/uploads/2026/01/icone-controle-acces.svg');
}

#titre-protection-temporaire .elementor-heading-title::before {
	background-image: url('/wp-content/uploads/2026/01/icone-protection-temporaire.svg');
}

#titre-cybersecurite .elementor-heading-title::before {
	background-image: url('/wp-content/uploads/2026/01/icone-cybersecurite.svg');
}

/* Tabs sections accueil - empiler les sections */
.tabs-content-wrapper {
	display: grid !important;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
}

.tabs-content-wrapper>.e-con {
	grid-area: 1 / 1;
	transition: opacity 0.3s ease;
	opacity: 0;
	pointer-events: none;
}

.tabs-content-wrapper>.e-con:first-child {
	opacity: 1;
	pointer-events: auto;
}

.tabs-content-wrapper.tabs-initialized>.e-con:first-child {
	opacity: 0;
	pointer-events: none;
}

.tabs-content-wrapper>.e-con.tab-active {
	opacity: 1 !important;
	pointer-events: auto !important;
}

/* Désactiver le zoom hover sur le slider accueil */
.listing-gallery-accueil .jet-listing-grid__item:hover .jet-listing-dynamic-image__img {
	transform: none !important;
}

/* Masquer les champs billing pour les particuliers */
.hidden-field {
	display: none !important;
}

/* Navigation Mon compte WooCommerce */
.woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce-MyAccount-navigation ul li a {
	display: block;
	padding: 12px 20px;
	background-color: #EDECEC;
	color: #1D1D1B;
	text-decoration: none;
	border-bottom: 1px solid #fff;
	transition: border-color 0.3s ease;
}

.woocommerce-MyAccount-navigation ul li.is-active a {
	background-color: #1D1D1B;
	color: #fff;
}

.woocommerce-MyAccount-navigation ul li:not(.is-active) a:hover {
	border-bottom-color: #FFE400;
}

/* Boutons Mon compte WooCommerce */
.woocommerce button.woocommerce-Button,
.woocommerce .woocommerce-Button,
.woocommerce-MyAccount-content .woocommerce-Button,
button.woocommerce-Button,
.woocommerce input.woocommerce-Button {
	background-color: transparent !important;
	font-family: "Avenir Next", Sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	text-transform: uppercase !important;
	line-height: 18px !important;
	color: #1D1D1B !important;
	border: 1px solid #1D1D1B !important;
	border-radius: 17px !important;
	padding: 5px 10px !important;
	cursor: pointer;
	transition: background-color 0.3s ease, color 0.3s ease;
}

/* ============================================
   WooCommerce — Checkboxes custom (jaune)
   ============================================ */
.woocommerce-form__input-checkbox,
.woocommerce input[type="checkbox"],
input.input-checkbox {
	accent-color: #FFE400 !important;
}

/* Effet volet — image qui se découvre du bas vers le haut */
.effet-volet,
.effet-volet-2 {
	position: relative;
	overflow: hidden;
}

.effet-volet::after,
.effet-volet-2::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #FFFFFF;
	z-index: 2;
	transform: translateY(0%);
	transition: transform 0.8s cubic-bezier(0.65, 0, 0.35, 1);
}

.effet-volet-2::after {
	transition-delay: 0.3s;
}

.effet-volet.volet-ouvert::after,
.effet-volet-2.volet-ouvert::after {
	transform: translateY(-100%);
}

/* Croix jaune décorative gauche */
.croix-jaune-gauche {
	position: relative;
}

.croix-jaune-gauche::before {
	content: '';
	position: absolute;
	width: 110px;
	height: 110px;
	top: 0px;
	left: 30px;
	z-index: 1;
	background:
		linear-gradient(#FFE400, #FFE400) center/1px 100% no-repeat,
		linear-gradient(#FFE400, #FFE400) center/100% 1px no-repeat;
}