/* ===========================================================
   AR Site Polish — animations subtiles et élégantes
   =========================================================== */

/* Respecte les préférences d'accessibilité : désactive toute
   animation si l'utilisateur a demandé une réduction des mouvements. */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: 0.001ms !important;
		transition-duration: 0.001ms !important;
	}
}

/* -----------------------------------------------------------
   Cartes produits (boutique / catalogue WooCommerce)
   ----------------------------------------------------------- */

ul.products li.product,
.woocommerce ul.products li.product {
	transition: transform 0.35s ease, box-shadow 0.35s ease;
}

ul.products li.product:hover,
.woocommerce ul.products li.product:hover {
	transform: translateY(-6px);
	box-shadow: 0 14px 28px rgba(0, 0, 0, 0.08);
}

ul.products li.product img,
.woocommerce ul.products li.product img {
	transition: transform 0.5s ease;
}

ul.products li.product a img:hover,
.woocommerce ul.products li.product:hover img {
	transform: scale(1.04);
}

/* Empêche le débordement du zoom sur l'image */
ul.products li.product,
.woocommerce ul.products li.product {
	overflow: hidden;
}

/* -----------------------------------------------------------
   Boutons et liens d'action
   ----------------------------------------------------------- */

.button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.elementor-button,
a.add_to_cart_button,
button.single_add_to_cart_button {
	transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}

.button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.elementor-button:hover,
a.add_to_cart_button:hover,
button.single_add_to_cart_button:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.12);
}

.button:active,
.woocommerce a.button:active,
.woocommerce button.button:active,
button.single_add_to_cart_button:active {
	transform: translateY(0);
}

/* -----------------------------------------------------------
   Menu de navigation
   ----------------------------------------------------------- */

.main-header-menu .menu-item > a,
.main-navigation .menu-item > a {
	position: relative;
	transition: color 0.25s ease;
}

.main-header-menu .menu-item > a::after,
.main-navigation .menu-item > a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 0%;
	height: 2px;
	background: currentColor;
	transition: width 0.3s ease;
}

.main-header-menu .menu-item:hover > a::after,
.main-navigation .menu-item:hover > a::after {
	width: 100%;
}

.main-header-menu .sub-menu,
.main-navigation .sub-menu {
	transition: opacity 0.25s ease, transform 0.25s ease;
}

/* -----------------------------------------------------------
   Apparition en fondu au défilement (sections de contenu)
   Les classes sont ajoutées dynamiquement par JS — si le script
   ne se charge pas, le contenu reste visible normalement.
   ----------------------------------------------------------- */

.ar-will-reveal {
	opacity: 0;
	transform: translateY(18px);
	transition: opacity 0.7s ease, transform 0.7s ease;
}

.ar-will-reveal.ar-visible {
	opacity: 1;
	transform: translateY(0);
}
