/*
 * Pages catégorie (modèle Elementor 1838) et marque (modèle 4602) : en-tête et guide.
 * Couleurs et polices du site : #12232B, #2B4E5D, #00FFA9, #317EF5 ; degular-display et akzidenz-grotesk.
 * Identifiants : catégorie f4875ce (en-tête), 060b56f (H1), ddcb005 (accroche), 9ba6c3d (intro), 2915790 (guide) ;
 * marque 2818ebe, 7bb50cb, edd4117, 2558d76, 89cf69b.
 */

/* En-tête : hauteur réglée par le contenu, texte aligné sur la grille du site (1 300 px, marges de 30 px) */
.elementor-element-f4875ce,
.elementor-element-2818ebe {
	min-height: 0 !important;
	padding-left: 30px !important;
	padding-right: 30px !important;
}
.elementor-element-f4875ce > .e-con-inner,
.elementor-element-2818ebe > .e-con-inner {
	max-width: min(100%, 1300px) !important;
	justify-content: flex-start !important;
	gap: 14px !important;
	padding: 56px 0 52px !important;
}

/* Marques : l'image de fond du modèle (visuel Blu « NEW ») s'affichait derrière toutes les marques ; fond uni comme les catégories */
.elementor-element-2818ebe {
	background-image: none !important;
	background-color: #2B4E5D !important;
}

/* L'accroche générale passe au-dessus du H1, en petites capitales vertes */
.elementor-element-ddcb005,
.elementor-element-edd4117 {
	order: -1;
}
.elementor-element-ddcb005 .elementor-heading-title,
.elementor-element-edd4117 .elementor-heading-title {
	font-size: 13px !important;
	line-height: 1.4 !important;
	font-weight: 600 !important;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #00FFA9 !important;
}

.elementor-element-060b56f .elementor-heading-title,
.elementor-element-7bb50cb .elementor-heading-title {
	font-size: clamp(30px, 3.4vw, 46px) !important;
	line-height: 1.08 !important;
	letter-spacing: -0.01em;
	max-width: 30ch;
}

.elementor-element-9ba6c3d,
.elementor-element-2558d76 {
	max-width: 760px;
	margin-top: 6px;
}
.elementor-element-9ba6c3d p,
.elementor-element-2558d76 p {
	font-size: 17px !important;
	line-height: 1.65 !important;
	color: rgba(255, 255, 255, 0.88) !important;
	margin: 0 0 12px !important;
}
.elementor-element-9ba6c3d p:last-child,
.elementor-element-2558d76 p:last-child {
	margin-bottom: 0 !important;
}
.elementor-element-9ba6c3d a,
.elementor-element-2558d76 a {
	color: #00FFA9 !important;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	transition: color 0.2s ease;
}
.elementor-element-9ba6c3d a:hover,
.elementor-element-2558d76 a:hover {
	color: #FFFFFF !important;
}

/* Guide sous la grille : section ouverte dans le flux de la page (sans carte), séparée par un filet sur la largeur
   de la grille, avec une colonne de lecture centrée. */
.elementor-element-2915790,
.elementor-element-89cf69b {
	width: 100% !important;
	max-width: none !important;
	margin: 24px 0 0 !important;
	background: none;
	border: 0;
	border-top: 1px solid #DCE5E8;
	border-radius: 0;
	/* Colonne de lecture de 880 px centrée (texte aligné à gauche à l'intérieur), comme l'ancienne carte, sans le cadre. */
	padding: 64px max(0px, calc((100% - 880px) / 2)) 24px !important;
	box-sizing: border-box;
}

.elementor-element-2915790 .elementor-widget-container,
.elementor-element-89cf69b .elementor-widget-container,
.elementor-element-2915790 :is(h2, h3, h4, p, li),
.elementor-element-89cf69b :is(h2, h3, h4, p, li) {
	text-align: left !important;
}
.elementor-element-2915790 h2,
.elementor-element-89cf69b h2 {
	font-family: degular-display, sans-serif;
	font-size: clamp(26px, 2.6vw, 34px) !important;
	line-height: 1.12 !important;
	font-weight: 600;
	color: #12232B !important;
	margin: 0 0 18px !important;
}
.elementor-element-2915790 h2::before,
.elementor-element-89cf69b h2::before {
	content: "";
	display: block;
	width: 48px;
	height: 4px;
	border-radius: 2px;
	background: #00FFA9;
	margin-bottom: 20px;
}
.elementor-element-2915790 h3,
.elementor-element-89cf69b h3 {
	font-family: degular-display, sans-serif;
	font-size: 22px !important;
	line-height: 1.25 !important;
	font-weight: 600;
	color: #12232B !important;
	margin: 34px 0 10px !important;
}
.elementor-element-2915790 p,
.elementor-element-89cf69b p,
.elementor-element-2915790 li,
.elementor-element-89cf69b li {
	font-size: 17px !important;
	line-height: 1.7 !important;
	color: #2B4E5D !important;
}
.elementor-element-2915790 p,
.elementor-element-89cf69b p {
	margin: 0 0 14px !important;
}
.elementor-element-2915790 ul,
.elementor-element-89cf69b ul {
	list-style: none;
	margin: 0 0 16px !important;
	padding: 0 !important;
}
.elementor-element-2915790 li,
.elementor-element-89cf69b li {
	position: relative;
	padding-left: 22px;
	margin: 0 0 6px;
}
.elementor-element-2915790 li::before,
.elementor-element-89cf69b li::before {
	content: "";
	position: absolute;
	left: 2px;
	top: 0.62em;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #00FFA9;
}
.elementor-element-2915790 a,
.elementor-element-89cf69b a {
	color: #317EF5 !important;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	transition: color 0.2s ease;
}
.elementor-element-2915790 a:hover,
.elementor-element-89cf69b a:hover {
	color: #12232B !important;
}

/* Tableau récapitulatif des guides : lignes fines, sans cadre ni en-tête foncé ; défilement horizontal sur mobile. */
.elementor-element-2915790 .pdlv-tableau,
.elementor-element-89cf69b .pdlv-tableau {
	overflow-x: auto;
	margin: 12px 0 28px;
	border: 0;
	border-radius: 0;
	background: none;
}
.elementor-element-2915790 table,
.elementor-element-89cf69b table {
	width: 100%;
	min-width: 520px;
	border-collapse: collapse;
	margin: 0 !important;
	font-size: 15px;
	line-height: 1.5;
	color: #2B4E5D;
	border: 0 !important;
}
.elementor-element-2915790 th,
.elementor-element-89cf69b th {
	background: none !important;
	color: #6B7F88 !important;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-align: left;
	padding: 0 24px 12px 0;
	border: 0 !important;
	border-bottom: 2px solid #12232B !important;
}
.elementor-element-2915790 td,
.elementor-element-89cf69b td {
	padding: 14px 24px 14px 0;
	border: 0 !important;
	border-bottom: 1px solid #DCE5E8 !important;
	text-align: left;
	vertical-align: top;
	background: none !important;
}
.elementor-element-2915790 td:first-child,
.elementor-element-89cf69b td:first-child {
	color: #12232B;
	font-weight: 600;
}

/* Bouton flottant « Filtres » sur ordinateur : placé en bas à gauche, au-dessus du bouton Cookies, pour ne plus couvrir l'intro.
   Sur mobile, sa place d'origine (centré au-dessus de la barre de navigation) est conservée. */
@media (min-width: 768px) {
	.shop-filter-toggle {
		top: auto !important;
		bottom: 84px !important;
		transform: none !important;
	}
}

/* « Pour aller plus loin » : liste de liens vers les articles, sans cartes */
.pdlv-guides-lies {
	margin-top: 44px;
	padding-top: 0;
	border-top: 0;
}
.pdlv-guides-lies > p,
.pdlv-guides-lies > p strong {
	font-size: 12px !important;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #6B7F88 !important;
	margin: 0 0 6px !important;
}
.pdlv-guides-lies ul {
	display: block !important;
	margin: 0 !important;
	border-top: 2px solid #12232B;
}
.pdlv-guides-lies li {
	padding: 0 !important;
	margin: 0 !important;
	border-bottom: 1px solid #DCE5E8;
}
.pdlv-guides-lies li::before {
	display: none;
}
.elementor-element-2915790 .pdlv-guides-lies a,
.elementor-element-89cf69b .pdlv-guides-lies a {
	display: block;
	position: relative;
	padding: 16px 40px 16px 0;
	background: none;
	border: 0;
	color: #12232B !important;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
	text-decoration: none;
	transition: color 0.2s ease, padding-left 0.2s ease;
}
.pdlv-guides-lies a::after {
	content: "→";
	position: absolute;
	right: 4px;
	top: 50%;
	transform: translateY(-50%);
	color: #00B377;
	font-weight: 700;
	transition: right 0.2s ease;
}
.elementor-element-2915790 .pdlv-guides-lies a:hover,
.elementor-element-89cf69b .pdlv-guides-lies a:hover {
	color: #1D5FD6 !important;
}
.pdlv-guides-lies a:hover::after {
	right: 0;
}
@media (prefers-reduced-motion: reduce) {
	.pdlv-guides-lies a,
	.pdlv-guides-lies a::after {
		transition: none;
	}
}

@media (max-width: 767px) {
	.elementor-element-f4875ce,
	.elementor-element-2818ebe {
		padding-left: 30px !important;
		padding-right: 30px !important;
	}
	.elementor-element-ddcb005 .elementor-heading-title,
	.elementor-element-edd4117 .elementor-heading-title {
		font-size: 11px !important;
		letter-spacing: 0.1em;
	}
	.elementor-element-f4875ce > .e-con-inner,
	.elementor-element-2818ebe > .e-con-inner {
		padding: 36px 0 32px !important;
	}
	.elementor-element-9ba6c3d p,
	.elementor-element-2558d76 p {
		font-size: 16px !important;
	}
	.elementor-element-2915790,
	.elementor-element-89cf69b {
		padding: 44px 0 16px !important;
	}
	.elementor-element-2915790 p,
	.elementor-element-89cf69b p,
	.elementor-element-2915790 li,
	.elementor-element-89cf69b li {
		font-size: 16px !important;
	}
}
