/*======================================
Theme Name: ALVIA-DIVI-Child
Theme URI: https://www.alvia.com/
Description: Thème enfant Divi pour Alvia, compatible FSE (Full Site Editing).
Author: Alvia
Author URI: https://www.alvia.com/
Template: Divi
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
======================================*/

/*add your custom CSS below this line*/

/* WooCommerce mobile : éviter overflow horizontal (colonnes hors écran) */
body.alvia-woocommerce,
html body.alvia-woocommerce {
	overflow-x: hidden;
	min-width: 0 !important;
}
body.alvia-woocommerce #page-container,
body.alvia-woocommerce #main-content,
body.alvia-woocommerce .main-content,
body.alvia-woocommerce .container,
body.alvia-woocommerce #content-area,
body.alvia-woocommerce #left-area,
body.alvia-woocommerce .alvia-woocommerce-content-wrap {
	max-width: 100% !important;
	width: 100% !important;
	box-sizing: border-box;
}
/* Pages produit : conteneurs principaux contraints au viewport */
body.alvia-woocommerce-single-product #page-container,
body.alvia-woocommerce-single-product .alvia-header-product-inline,
body.alvia-woocommerce-single-product .alvia-woocommerce-content-wrap {
	max-width: 100vw !important;
	width: 100% !important;
}
@media (max-width: 980px) {
	body.alvia-woocommerce,
	body.alvia-woocommerce #page-container,
	body.alvia-woocommerce #main-content,
	body.alvia-woocommerce .container {
		overflow-x: hidden !important;
	}
	body.alvia-woocommerce .et_pb_section,
	body.alvia-woocommerce .et_pb_row,
	body.alvia-woocommerce .et_pb_column {
		max-width: 100% !important;
	}
	/* Forcer empilement des colonnes Divi (centre + droite) sur mobile — sauf header */
	body.alvia-woocommerce .et_pb_row:not(.alvia-header) {
		flex-direction: column !important;
		flex-wrap: wrap !important;
	}
	body.alvia-woocommerce .et_pb_row:not(.alvia-header) .et_pb_column {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 100% !important;
	}
}

/* WooCommerce : header non sticky (desktop), contenu centré */
body.alvia-woocommerce .alvia-header-product-inline {
	position: static !important;
	box-sizing: border-box;
}
body.alvia-woocommerce .alvia-header-product-inline .alvia-header,
body.alvia-woocommerce .alvia-header-shortcode-wrap .alvia-header {
	position: static !important;
}
body.alvia-woocommerce .alvia-woocommerce-content-wrap {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	box-sizing: border-box;
}

/* Pages catégories, étiquettes, boutique et panier : centré, max-width 1539px (même largeur que le header) */
body.alvia-woocommerce-shop .alvia-woocommerce-content-wrap,
body.alvia-woocommerce-category .alvia-woocommerce-content-wrap,
body.alvia-woocommerce-tag .alvia-woocommerce-content-wrap,
body.alvia-woocommerce-cart .alvia-woocommerce-content-wrap {
	max-width: 1539px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
}
body.alvia-woocommerce-shop #main-content,
body.alvia-woocommerce-shop .main-content,
body.alvia-woocommerce-shop .container,
body.alvia-woocommerce-category #main-content,
body.alvia-woocommerce-category .main-content,
body.alvia-woocommerce-category .container,
body.alvia-woocommerce-tag #main-content,
body.alvia-woocommerce-tag .main-content,
body.alvia-woocommerce-tag .container,
body.alvia-woocommerce-cart #main-content,
body.alvia-woocommerce-cart .main-content,
body.alvia-woocommerce-cart .container {
	max-width: 1539px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
}
/* Structure Divi Theme Builder : section/row/column contenant le contenu archive */
body.alvia-woocommerce-shop .et_pb_section:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-shop .et_pb_row:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-shop .et_pb_column:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-category .et_pb_section:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-category .et_pb_row:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-category .et_pb_column:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-tag .et_pb_section:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-tag .et_pb_row:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-tag .et_pb_column:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-cart .et_pb_section:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-cart .et_pb_row:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-cart .et_pb_column:has(.alvia-woocommerce-content-wrap) {
	max-width: 1539px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
}
/* Page panier : structure Divi sans alvia-woocommerce-content-wrap (bloc WooCommerce Cart) */
body.alvia-woocommerce-cart .et_pb_section:has(.wp-block-woocommerce-cart),
body.alvia-woocommerce-cart .et_pb_row:has(.wp-block-woocommerce-cart),
body.alvia-woocommerce-cart .et_pb_column:has(.wp-block-woocommerce-cart),
body.alvia-woocommerce-cart .et_pb_text_inner:has(.wp-block-woocommerce-cart),
body.alvia-woocommerce-cart .et_pb_module:has(.wp-block-woocommerce-cart) {
	max-width: 1539px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
}
/* Ancêtres du panier : centrer le contenu (parent flex) */
body.alvia-woocommerce-cart .et_builder_inner_content:has(.wp-block-woocommerce-cart),
body.alvia-woocommerce-cart .entry-content:has(.wp-block-woocommerce-cart),
body.alvia-woocommerce-cart .et-l--post:has(.wp-block-woocommerce-cart),
body.alvia-woocommerce-cart .et-l--body:has(.wp-block-woocommerce-cart) {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	width: 100% !important;
	box-sizing: border-box;
}
/* Bloc panier direct : max-width + centrage (fallback si :has() non supporté sur ancêtres) */
body.alvia-woocommerce-cart .wp-block-woocommerce-cart {
	max-width: 1539px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
}
body.alvia-woocommerce-shop .et_pb_section:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-category .et_pb_section:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-tag .et_pb_section:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-cart .et_pb_section:has(.alvia-woocommerce-content-wrap),
body.alvia-woocommerce-cart .et_pb_section:has(.wp-block-woocommerce-cart),
body.alvia-woocommerce-cart .et_pb_text_inner:has(.wp-block-woocommerce-cart) {
	padding-left: 20px !important;
	padding-right: 20px !important;
}
@media (max-width: 480px) {
	body.alvia-woocommerce-shop .et_pb_section:has(.alvia-woocommerce-content-wrap),
	body.alvia-woocommerce-category .et_pb_section:has(.alvia-woocommerce-content-wrap),
	body.alvia-woocommerce-tag .et_pb_section:has(.alvia-woocommerce-content-wrap),
	body.alvia-woocommerce-cart .et_pb_section:has(.alvia-woocommerce-content-wrap) {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
	/* Panier bloc WooCommerce : gouttières gérées dans woocommerce-cart.css */
	body.alvia-woocommerce-cart .et_pb_section:has(.wp-block-woocommerce-cart),
	body.alvia-woocommerce-cart .et_pb_text_inner:has(.wp-block-woocommerce-cart) {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}

/* Suppression du ::before sur #main-content .container (Divi) */
#main-content .container::before {
	content: none !important;
	display: none !important;
}

/* Notice livraison gratuite : éviter chevauchement avec icônes header sur mobile */
.notice-livraison {
	background: #f0f0f0;
	padding: 10px;
	margin: 15px 0;
	border-radius: 5px;
	word-wrap: break-word;
	overflow-wrap: break-word;
	max-width: 100%;
	box-sizing: border-box;
}

/* Alignement des catégories de premier niveau avec le titre CATÉGORIES */
#left-area ul,
.entry-content ul,
.et-l--body ul,
.et-l--footer ul,
.et-l--header ul {
	margin-left: 0;
	padding-left: 0;
}
/* Panier classique : ajustement des marges (ne pas cibler les blocs wc-block-*) */
table.cart th,
#main-content table.cart th,
table.cart td,
#main-content table.cart td,
.woocommerce-cart-form table.cart th,
.woocommerce-cart-form table.cart td {
	padding: 0 !important;
}