/*
 Theme Name:   Empreinte by Zara (WoodMart Child)
 Description:  Thème enfant de WoodMart pour Empreinte by Zara — traductions françaises et personnalisations.
 Author:       Oel
 Template:     woodmart
 Version: 1.0.19
 Text Domain:  woodmart-child
*/

/* FIX: Force checkout button visibility */
.wp-block-woocommerce-proceed-to-checkout-block {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    text-align: center;
    margin: 20px 0;
}
.wp-block-woocommerce-proceed-to-checkout-block a,
.wp-block-woocommerce-proceed-to-checkout-block .button {
    display: inline-block !important;
    background-color: #000 !important;
    color: #fff !important;
    padding: 12px 30px !important;
    text-decoration: none !important;
    border-radius: 4px !important;
    font-weight: 600 !important;
}


/* ===== Pied de page noir (Empreinte by Zara) ===== */
.wd-footer, .wd-footer .elementor-element.e-con {
	background-color: #000 !important;
}
.wd-footer, .wd-footer p, .wd-footer li, .wd-footer span, .wd-footer label,
.wd-footer .wd-toggle-content, .wd-footer .wd-text-block {
	color: rgba(255, 255, 255, .72) !important;
}
.wd-footer h1, .wd-footer h2, .wd-footer h3, .wd-footer h4, .wd-footer h5, .wd-footer h6,
.wd-footer .title, .wd-footer .wd-el-title, .wd-footer .wd-toggle-title, .wd-footer strong {
	color: #fff !important;
}
.wd-footer a, .wd-footer .wd-nav > li > a {
	color: rgba(255, 255, 255, .72) !important;
}
.wd-footer a:hover, .wd-footer .wd-nav > li > a:hover {
	color: #fff !important;
}
.wd-footer .elementor-element.e-con, .wd-footer [class*="border"] {
	border-color: rgba(255, 255, 255, .15) !important;
}
.wd-footer input[type="email"], .wd-footer input[type="text"] {
	background: transparent !important;
	color: #fff !important;
	border-color: rgba(255, 255, 255, .35) !important;
}
.wd-footer input::placeholder { color: rgba(255, 255, 255, .5) !important; }
.wd-footer button, .wd-footer input[type="submit"] {
	background: #fff !important;
	color: #000 !important;
}
/* Logo et icônes en blanc sur fond noir */
.wd-footer .elementor-widget-wd_image_or_svg img[src*="logo-empreinte"] {
	filter: invert(1);
}
.wd-footer .wd-social-icons .wd-social-icon {
	background-color: rgba(255, 255, 255, .1) !important;
	color: #fff !important;
}

/* Logo du pied de page : taille maîtrisée */
.wd-footer .elementor-element-61d7f33 img {
	width: 200px !important;
	max-width: 100%;
	height: auto !important;
}
@media (max-width: 768px) {
	.wd-footer .elementor-element-61d7f33 img { width: 160px !important; }
}

/* ===== Typographie Empreinte (tout le site) ===== */
h1, h2, h3, h4, h5, h6, .title, .wd-el-title, .banner-title, .title-wrapper .title, .wd-entry-title, .page-title .title,
.product_title, .wd-entities-title, .woocommerce-loop-product__title, .post-title, .entry-title {
	font-family: "Bodoni Moda", "Didot", "Bodoni MT", Georgia, serif !important;
	font-weight: 500 !important;
	letter-spacing: .02em;
}
.wd-nav-main > li > a, .wd-nav > li > a .nav-link-text, .whb-top-bar {
	font-family: "Lato", Arial, Helvetica, sans-serif !important;
	text-transform: uppercase;
	letter-spacing: .12em;
	font-size: 12px;
}
body, p, li, .wd-text-block { font-family: "Lato", Arial, Helvetica, sans-serif; }

/* ===== Lisibilité des textes ===== */
/* Gris de texte plus foncé (contraste ≥ 7:1 sur fond clair) */
.wd-content-area p, .wd-content-area li, .wd-content-area .wd-text-block, .wd-content-area .title-after_title,
.wd-content-area .wd-accordion-content, .wd-content-area .info-box-inner { color: #555 !important; }
.wd-content-area .title-subtitle, .wd-content-area .subtitle { color: #6b6b6b !important; }

/* Bannières sur photo : dégradé sombre + texte blanc */
.promo-banner .main-wrapp-img { position: relative; }
.promo-banner .main-wrapp-img::after {
	content: ""; position: absolute; inset: 0; pointer-events: none;
	background: linear-gradient(to top, rgba(0,0,0,.55) 0%, rgba(0,0,0,.25) 45%, rgba(0,0,0,.15) 100%);
}
.promo-banner .wrapper-content-banner { z-index: 2; }
.promo-banner .banner-title, .promo-banner .banner-subtitle, .promo-banner .banner-inner,
.promo-banner .banner-inner p, .promo-banner .banner-title * { color: #fff !important; }
.promo-banner .banner-subtitle { opacity: .9; }
.promo-banner .wd-button-wrapper .btn { background: #fff !important; color: #000 !important; border-color: #fff !important; }
/* Instagram : masquer les compteurs fictifs */
.wd-insta .wd-insta-meta, .instagram-pics .wd-insta-meta { display: none !important; }

/* Icônes sociales du pied de page : fond rouge Empreinte */
.wd-footer .wd-social-icons .wd-social-icon {
	background-color: #993333 !important;
	color: #fff !important;
}
.wd-footer .wd-social-icons .wd-social-icon:hover {
	background-color: #7a2828 !important;
}
.wd-footer .wd-social-icons .wd-social-icon .wd-icon,
.wd-footer .wd-social-icons .wd-social-icon .wd-icon:before { color: #fff !important; }

/* Bouton retour en haut : rouge Empreinte */
.scrollToTop, .wd-scroll-top {
	background-color: #993333 !important;
	color: #fff !important;
	border-color: #993333 !important;
}
.scrollToTop:hover, .wd-scroll-top:hover { background-color: #7a2828 !important; }
.scrollToTop:after, .scrollToTop:before, .scrollToTop .wd-icon, .wd-scroll-top:after { color: #fff !important; }

/* ===== Boutons en rouge Empreinte (#993333) ===== */
.btn.btn-style-default:not(.btn-color-white):not(.btn-color-default), .btn.btn-color-black, .btn-accent,
.button.add_to_cart_button, .add-to-cart-loop, .single_add_to_cart_button, .button.alt,
.wpcf7-submit, .checkout-button, .woocommerce-mini-cart__buttons .checkout, .wc-proceed-to-checkout .button {
	background-color: #993333 !important;
	border-color: #993333 !important;
	color: #fff !important;
}
.btn.btn-style-default:not(.btn-color-white):not(.btn-color-default):hover, .btn.btn-color-black:hover, .btn-accent:hover,
.button.add_to_cart_button:hover, .add-to-cart-loop:hover, .single_add_to_cart_button:hover, .button.alt:hover,
.wpcf7-submit:hover, .checkout-button:hover, .woocommerce-mini-cart__buttons .checkout:hover, .wc-proceed-to-checkout .button:hover {
	background-color: #7a2828 !important;
	border-color: #7a2828 !important;
	color: #fff !important;
}
/* Les boutons posés sur les photos de bannière restent blancs */
.promo-banner .wd-button-wrapper .btn, .promo-banner .wd-button-wrapper .btn:hover { background: #fff !important; border-color: #fff !important; color: #000 !important; }

/* Pas d’espace vide entre la section Instagram (fin de page) et le pied de page */
.wd-content-layout:has(.elementor > .e-con:last-child [data-widget_type^="wd_instagram"]) { padding-bottom: 0 !important; }

/* Icônes sociales du bas de page : compactes */
.wd-footer [data-id="02a4716"] .wd-social-icons .wd-social-icon { width: 30px !important; height: 30px !important; }
.wd-footer [data-id="02a4716"] .wd-social-icons .wd-social-icon .wd-icon { font-size: 13px !important; }

/* Barre du bas du pied de page sur une ligne : copyright | icônes | menu */
@media (min-width: 1025px) {
	.wd-footer [data-id="02a4716"], .wd-footer [data-id="02a4716"] > .e-con-inner {
		flex-wrap: nowrap !important; align-items: center !important; justify-content: space-between !important; gap: 20px;
	}
	.wd-footer [data-id="02a4716"] > .elementor-widget, .wd-footer [data-id="02a4716"] > .e-con-inner > .elementor-widget {
		width: auto !important; max-width: none !important; flex: 0 1 auto !important; margin: 0 !important;
	}
	.wd-footer [data-id="02a4716"] .wd-nav { flex-wrap: nowrap; }
	.wd-footer [data-id="02a4716"] .wd-nav > li { display: inline-flex; }
}
@media (max-width: 1024px) {
	.wd-footer [data-id="02a4716"] > .elementor-widget, .wd-footer [data-id="02a4716"] > .e-con-inner > .elementor-widget { width: 100% !important; text-align: center; }
	.wd-footer [data-id="02a4716"] .wd-social-icons { justify-content: center; }
}

/* ===== Animations de la page d’accueil ===== */
/* Zoom lent du grand visuel */
.emp-anim .elementor-element-4e0ae38.emp-hero-ready { position: relative; overflow: hidden; background-image: none !important; }
.emp-hero-zoom {
	position: absolute; inset: 0; z-index: 0; background-size: cover; background-position: center;
	animation: emp-kenburns 14s ease-out forwards; will-change: transform;
}
.emp-anim .elementor-element-4e0ae38.emp-hero-ready > *:not(.emp-hero-zoom) { position: relative; z-index: 1; }
@keyframes emp-kenburns { from { transform: scale(1.12); } to { transform: scale(1); } }

/* Apparition en fondu vers le haut */
.emp-anim .emp-reveal { opacity: 0; transform: translateY(28px); transition: opacity .9s ease, transform .9s cubic-bezier(.2,.65,.3,1); }
.emp-anim .emp-reveal.emp-visible { opacity: 1; transform: none; }

/* Zoom au survol des bannières */
.promo-banner .main-wrapp-img { overflow: hidden; }
.promo-banner .banner-image img { transition: transform 1.2s cubic-bezier(.2,.65,.3,1); }
.promo-banner:hover .banner-image img { transform: scale(1.06); }

/* Défilement continu des marques */
.emp-marquee-wrap { overflow: hidden; white-space: nowrap; }
.emp-marquee { display: inline-flex; animation: emp-defile 28s linear infinite; }
.emp-marquee > span { padding-right: 0; }
.emp-marquee-wrap:hover .emp-marquee { animation-play-state: paused; }
@keyframes emp-defile { from { transform: translateX(0); } to { transform: translateX(-50%); } }

@media (prefers-reduced-motion: reduce) {
	.emp-hero-zoom, .emp-marquee { animation: none !important; }
	.emp-anim .emp-reveal { opacity: 1 !important; transform: none !important; }
	.promo-banner:hover .banner-image img { transform: none; }
}

/* Accueil : « Nos marques » détachée de la section précédente */
.home .elementor-element-bcbb7cc { margin-top: 90px !important; padding-top: 70px !important; border-top: 1px solid rgba(0,0,0,.08); }
@media (max-width: 768px) { .home .elementor-element-bcbb7cc { margin-top: 50px !important; padding-top: 40px !important; } }

/* Barre du bas du pied de page : éléments alignés sur la même ligne */
.wd-footer [data-id="02a4716"] .wd-social-icons { display: flex !important; flex-wrap: nowrap !important; gap: 6px; align-items: center; margin: 0 !important; }
.wd-footer [data-id="02a4716"] .wd-social-icons .wd-social-icon { margin: 0 !important; display: inline-flex; align-items: center; justify-content: center; }
.wd-footer [data-id="02a4716"] p, .wd-footer [data-id="02a4716"] ul { margin-top: 0 !important; margin-bottom: 0 !important; }
.wd-footer [data-id="02a4716"] .elementor-widget-container { display: flex; align-items: center; }

/* Icônes des blocs d’information en rouge Empreinte (#993333) */
.wd-content-area .info-box-icon img {
	filter: brightness(0) saturate(100%) invert(23%) sepia(35%) saturate(2740%) hue-rotate(336deg) brightness(88%) contrast(92%);
}
.wd-content-area .info-box-icon i, .wd-content-area .info-box-icon .wd-icon, .wd-content-area .info-box-icon svg { color: #993333 !important; fill: #993333 !important; }

/* Bouton du formulaire de contact centré */
.wpcf7-form div:has(> .wpcf7-submit), .wpcf7-form p:has(> .wpcf7-submit) { text-align: center; }
.wpcf7-form .wpcf7-submit { display: inline-block; float: none; margin-left: auto; margin-right: auto; }

/* Bouton « Nous contacter » (page Notre boutique) en rouge plein */
.elementor-element-49ec96d .btn { background-color: #993333 !important; border-color: #993333 !important; color: #fff !important; }
.elementor-element-49ec96d .btn:hover { background-color: #7a2828 !important; border-color: #7a2828 !important; }

/* Textes sur photo sombre : blanc pur + légère ombre (Notre boutique, chiffres d’À propos) */
.elementor-element-51d7947 .elementor-background-overlay, .elementor-element-4e1f5b5 .elementor-background-overlay { opacity: .62 !important; }
.elementor-element-51d7947 :is(.title, .title-subtitle, .title-after_title, .title-after_title p, p, a, li, span),
.elementor-element-4e1f5b5 :is(.title, .title-subtitle, .title-after_title, p, span, .counter-label, .woodmart-counter-label) {
	color: #fff !important; opacity: 1 !important; text-shadow: 0 1px 3px rgba(0,0,0,.55);
}

/* Boutons « Voir la boutique » et « Voir plus de produits » en rouge */
.elementor-element-1881914 .btn, .elementor-element-65517f5 .btn,
.wd-load-more, .wd-products-load-more, .btn.wd-load-more, .wd-products-element .wd-load-more, .woocommerce-pagination .wd-load-more {
	background-color: #993333 !important; border-color: #993333 !important; color: #fff !important;
}
.elementor-element-1881914 .btn:hover, .elementor-element-65517f5 .btn:hover,
.wd-load-more:hover, .wd-products-load-more:hover, .btn.wd-load-more:hover {
	background-color: #7a2828 !important; border-color: #7a2828 !important; color: #fff !important;
}

/* Prix en rouge Empreinte */
.price, .price .amount, .price .woocommerce-Price-currencySymbol, .price ins, .price ins .amount,
.woocommerce-Price-amount, .wd-product .price { color: #993333 !important; }
.price del, .price del .amount, .price del .woocommerce-Price-currencySymbol { color: #8a8a8a !important; }
.wd-footer .woocommerce-Price-amount, .cart_totals .woocommerce-Price-amount { color: inherit !important; }

/* ===== Boutons rouges : renforts (styles « bordé » / « blanc ») ===== */
.elementor-element.elementor-element-65517f5 .btn, .elementor-element.elementor-element-49ec96d .btn,
.elementor-element.elementor-element-1881914 .btn,
.wd-switch-to-register, .wd-switch-to-login, .woocommerce-form-login__submit, .woocommerce-form-register__submit,
.woocommerce-Button, .woocommerce-button, .comment-form .submit, .comment-form input[type="submit"], #respond #submit {
	background-color: #993333 !important; border-color: #993333 !important; color: #fff !important;
}
.elementor-element.elementor-element-65517f5 .btn:hover, .elementor-element.elementor-element-49ec96d .btn:hover,
.wd-switch-to-register:hover, .wd-switch-to-login:hover, .woocommerce-form-login__submit:hover, .woocommerce-form-register__submit:hover,
.woocommerce-Button:hover, .woocommerce-button:hover, .comment-form .submit:hover, #respond #submit:hover {
	background-color: #7a2828 !important; border-color: #7a2828 !important; color: #fff !important;
}
.elementor-element.elementor-element-65517f5 .btn .wd-btn-text, .elementor-element.elementor-element-49ec96d .btn .wd-btn-text { color: #fff !important; }

/* Titres des colonnes des menus déroulants (À la une, Vêtements…) en rouge */
.wd-dropdown-menu .mega-menu-list > li > a, .wd-dropdown-menu .wd-sub-menu > li > a,
.wd-dropdown-menu .elementor-widget-wd_title .title, .wd-dropdown-menu .wd-nav-vertical > li > a,
.wd-dropdown-menu .wd-mega-menu-title, .wd-dropdown-menu .sub-menu-title { color: #993333 !important; }

/* Pages Elementor : pas de marge vide avant le pied de page */
body.elementor-page .wd-content-layout { padding-bottom: 0 !important; }

/* ===== Bannière d’en-tête grise (vide) masquée ===== */
.wd-hb-wrapp, .wd-hb.header-banner, .header-banner { display: none !important; }
:root { --wd-header-banner-h: 0px; }

/* ===== Pas d’espace vide entre une carte en fin de page et le pied de page ===== */
.wd-content-layout:has(.elementor > .e-con:last-child [data-widget_type^="wd_open_street_map"]) { padding-bottom: 0 !important; }
.elementor > .e-con:last-child:has([data-widget_type^="wd_open_street_map"]) { margin-bottom: 0 !important; }

/* ===== Carrousels de bannières : même hauteur pour toutes les images ===== */
.banners-carousel .promo-banner .main-wrapp-img,
.banners-carousel .promo-banner .banner-image { height: auto !important; }
.banners-carousel .promo-banner .banner-image img {
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 4 / 5 !important;
	object-fit: cover !important;
	object-position: center top;
}


/* ===== Pages légales : largeur de lecture confortable ===== */
:is(.page-id-29119, .page-id-29115, .page-id-29114, .page-id-29113) .wd-content-area .entry-content {
	max-width: 780px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 20px;
	padding-bottom: 60px;
}
:is(.page-id-29119, .page-id-29115, .page-id-29114, .page-id-29113) .entry-content h1 { margin-bottom: 10px; }
:is(.page-id-29119, .page-id-29115, .page-id-29114, .page-id-29113) .entry-content h2 { margin-top: 36px; font-size: 22px; }
:is(.page-id-29119, .page-id-29115, .page-id-29114, .page-id-29113) .entry-content :is(p, li) { line-height: 1.75; }
