/**
 * Publications & Communiqués (page 2882) — sidebar category + year bar styles.
 *
 * Layout: year dropdown at top, category sidebar (left) + listing (right).
 * Buttons use standard Lesieur format (ref: "Nos expertises" on Qui sommes-nous):
 *   pill shape (800px radius), 1px solid #222221, transparent bg, Roboto 600 15px
 *   hover/selected: #C20E1A bg + border, white text
 *
 * !important is required because Elementor generates a per-page CSS file
 * (post-2882.css) with high-specificity selectors that override custom CSS.
 *
 * @package Lesieur
 * @since 3.4.0
 */

/* === Layout: sidebar (240px) + listing grid === */
:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) {
	width: 240px !important;
	min-width: 240px !important;
	flex: 0 0 240px !important;
	margin-right: 24px !important;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-listing-grid) {
	flex: 1 1 0% !important;
	min-width: 0 !important;
}

/* === Category sidebar: vertical stacked buttons === */
/* Scoped to sidebar container to avoid leaking into year slider */
:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) .jet-radio-list:not(.jet-radio-list--dropdown) {
	display: flex !important;
	flex-direction: column !important;
	gap: 8px !important;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) .jet-radio-list:not(.jet-radio-list--dropdown) .jet-radio-list__row {
	display: block !important;
	margin: 0 !important;
	margin-bottom: 0 !important;
	width: 100% !important;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) .jet-radio-list:not(.jet-radio-list--dropdown) .jet-radio-list__label {
	display: block !important;
	text-align: center;
	width: 100%;
	cursor: pointer;
}

/* === Category sidebar — Option A : Liste minimaliste avec trait rouge ===
 * Pas de bordure, pas d'arrondi. Trait rouge gauche 3px sur hover/actif.
 * Style sobre adapté rapport financier / identité Lesieur. */
:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) .jet-radio-list__button {
	background: transparent !important;
	border: none !important;
	border-left: 3px solid transparent !important;
	border-radius: 0 !important;
	color: #222221 !important;
	padding: 12px 16px !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	text-align: left !important;
	line-height: 1.4 !important;
	transition: border-color 200ms ease, color 200ms ease, font-weight 200ms ease, background 200ms ease;
	cursor: pointer;
	width: 100%;
}

/* Hover : bordure gauche rouge + texte rouge, léger fond crème */
:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) .jet-radio-list__button:hover {
	background: rgba(194, 14, 26, 0.04) !important;
	border-left-color: #C20E1A !important;
	color: #C20E1A !important;
}

/* Actif : bordure gauche rouge pleine + texte rouge gras + fond discret */
:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) .jet-radio-list__row.jet-radio-list__row--checked .jet-radio-list__button,
:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) .jet-radio-list__row input:checked + .jet-radio-list__button {
	background: rgba(194, 14, 26, 0.06) !important;
	border-left-color: #C20E1A !important;
	color: #C20E1A !important;
	font-weight: 700 !important;
}

/* Label hérite de la couleur du bouton */
:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) .jet-radio-list__button:hover .jet-radio-list__label,
:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) .jet-radio-list__row.jet-radio-list__row--checked .jet-radio-list__label {
	color: #C20E1A !important;
}

/* === Year bar container — boxed and centered above listing grid === */
/* e-con-boxed: flex layout lives on .e-con-inner, not .e-con.
 * padding-left = sidebar (240px) + gap (24px) + content padding (24px) = 288px
 * to align year pills with listing grid's left edge. */
:is(.page-id-2882, .page-id-683, .page-id-10083) .e-con:has(.elementor-widget-jet-smart-filters-radio[data-id="37c05b0"]) > .e-con-inner {
	flex-direction: row !important;
	align-items: center !important;
	justify-content: center !important;
	flex-wrap: nowrap !important;
	padding-top: 16px !important;
	padding-bottom: 24px !important;
	padding-left: 288px !important;
}

/* Hide "Année" label — redundant with the year numbers, saves horizontal space */
:is(.page-id-2882, .page-id-683, .page-id-10083) .e-con:has(.elementor-widget-jet-smart-filters-radio[data-id="37c05b0"]) .elementor-widget-heading {
	display: none !important;
}

/* Year filter widget — shrink to content, let container center it */
:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-widget-jet-smart-filters-radio[data-id="37c05b0"] {
	flex: 0 1 auto !important;
	min-width: 0 !important;
	width: auto !important;
}

/* === Year slider — horizontal scrollable with arrows === */

/* Slider wrapper: [←] [track] [→] */
/* Centre horizontalement la barre des années (override du flex-end Elementor
 * hérité de la section d'origine sur page 2882). Cible le container parent
 * du widget filtre year via :has(). */
:is(.page-id-2882, .page-id-683, .page-id-10083) .e-con:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2892"]) {
	justify-content: center !important;
	--justify-content: center !important;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	max-width: 100% !important;
	width: fit-content !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Arrow buttons — red circle, white chevron, no focus ring */
:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider__arrow {
	flex: 0 0 auto;
	background: #C20E1A;
	border: none;
	border-radius: 50%;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: #FFFFFF;
	transition: all 200ms ease;
	outline: none;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider__arrow:hover {
	background: #a00b16;
	color: #FFFFFF;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider__arrow:focus,
:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider__arrow:focus-visible {
	outline: none;
	box-shadow: none;
}

/* Scrollable track — clips pills horizontally, horizontal padding prevents edge clipping */
:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider__track {
	flex: 1 1 auto;
	overflow-x: auto;
	overflow-y: hidden;
	padding: 4px 4px;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* IE */
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider__track::-webkit-scrollbar {
	display: none; /* Chrome/Safari */
}

/* Year radio list inside track — horizontal row.
 * DOM: .jet-radio-list > form.jet-radio-list-wrapper > fieldset > .jet-radio-list__row
 * Must propagate flex layout through wrapper and fieldset */
:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider .jet-radio-list {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	gap: 0 !important;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider .jet-radio-list-wrapper {
	display: flex !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider .jet-radio-list-wrapper fieldset {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	gap: 8px !important;
	justify-content: flex-start !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	min-width: 0 !important;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider .jet-radio-list__row {
	flex: 0 0 auto !important;
	margin: 0 !important;
}

/* Year pills — same style as category buttons but smaller */
:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider .jet-radio-list__button {
	background: transparent !important;
	border: 1px solid #222221 !important;
	border-radius: 800px !important;
	color: #222221 !important;
	padding: 8px 20px !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	transition: all 200ms ease;
	cursor: pointer;
	white-space: nowrap !important;
	display: block !important;
	text-align: center !important;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider .jet-radio-list__button:hover {
	background: #C20E1A !important;
	border-color: #C20E1A !important;
	color: #FFFFFF !important;
}

/* Selected year — red bg.
 * JetSF doesn't add --checked class on year rows, so use input:checked sibling selector.
 * Also keep --checked as fallback in case JetSF behavior changes. */
:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider .jet-radio-list__input:checked + .jet-radio-list__button,
:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider .jet-radio-list__row.jet-radio-list__row--checked .jet-radio-list__button {
	background: #C20E1A !important;
	border-color: #C20E1A !important;
	color: #FFFFFF !important;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider .jet-radio-list__label {
	color: inherit !important;
	display: block !important;
	text-align: center !important;
	cursor: pointer;
}

/* === Year bar: align label with dropdown === */
:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-widget-heading h4.elementor-heading-title {
	font-size: 0.875rem !important;
	font-weight: 600 !important;
	color: #222221 !important;
	font-family: 'Poppins', sans-serif !important;
}

/* === Listing grid: row structure === */

/* Row items — no separator, no hover */
:is(.page-id-2882, .page-id-683, .page-id-10083) .jet-listing-grid .jet-listing-grid__item {
	padding: 18px 20px !important;
	border-bottom: none !important;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .jet-listing-grid .jet-listing-grid__item:hover {
	background-color: transparent !important;
}

/* Row inner container — vertical alignment */
:is(.page-id-2882, .page-id-683, .page-id-10083) .jet-listing-grid .jet-listing-grid__item > .elementor > .elementor-element {
	align-items: center !important;
}

/* === Date column: day number + month/year ===
 * Selectors use .elementor-2909 (listing template ID) to match Elementor's
 * high-specificity selectors like .elementor-2909 .elementor-element.elementor-element-XXXX */

/* Day number — red accent, proportional size
 * Double class on .elementor-element to beat Elementor's high-specificity selectors
 * like .elementor-2909 .elementor-element.elementor-element-XXXX */
:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-2909 .elementor-element.elementor-widget-heading h3.elementor-heading-title,
:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-2909 .elementor-element.elementor-widget-heading h2.elementor-heading-title {
	font-size: 1.5rem !important;
	font-weight: 700 !important;
	color: #C20E1A !important;
	line-height: 1.1 !important;
	font-family: 'Poppins', sans-serif !important;
}

/* Month/year — subtle secondary text, compact to avoid wrapping */
:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-2909 .elementor-element.elementor-widget-heading span.elementor-heading-title {
	font-size: 0.75rem !important;
	color: #777777 !important;
	font-family: 'Roboto', sans-serif !important;
	font-weight: 500 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
	line-height: 1.3 !important;
}

/* === Title: primary content — should stand out === */
:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-2909 .elementor-element.elementor-widget-heading h1.elementor-heading-title,
:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-2909 .elementor-element.elementor-page-title h1.elementor-heading-title {
	font-size: 1rem !important;
	font-weight: 600 !important;
	color: #222221 !important;
	line-height: 1.45 !important;
	font-family: 'Poppins', sans-serif !important;
}

/* Generic heading fallback inside listing */
:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-2909 .elementor-heading-title {
	line-height: 1.4 !important;
}

/* === "Télécharger PDF" button: standard pill format ===
 * Same design language as category buttons, slightly smaller */
:is(.page-id-2882, .page-id-683, .page-id-10083) .jet-listing-grid .elementor-button {
	background-color: transparent !important;
	color: #222221 !important;
	border: 1px solid #222221 !important;
	border-radius: 800px !important;
	padding: 8px 18px !important;
	font-family: 'Roboto', sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	transition: all 200ms ease;
	white-space: nowrap !important;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .jet-listing-grid .elementor-button:hover {
	background-color: #C20E1A !important;
	border-color: #C20E1A !important;
	color: #FFFFFF !important;
}

:is(.page-id-2882, .page-id-683, .page-id-10083) .jet-listing-grid .elementor-button .elementor-button-text {
	color: inherit !important;
}

/* === Row border — keep red underline separator like Investisseurs page === */

/* === "Aucune publication" empty state === */
:is(.page-id-2882, .page-id-683, .page-id-10083) .jet-listing-grid .jet-listing-grid__not-found {
	padding: 40px 20px !important;
	text-align: center !important;
	color: #888888 !important;
	font-family: 'Roboto', sans-serif !important;
	font-size: 15px !important;
}

/* === Content area — no card frame, flat white === */
:is(.page-id-2882, .page-id-683, .page-id-10083) .jet-listing-grid {
	background: transparent;
	border-radius: 0;
	padding: 0;
	box-shadow: none;
}

/* === Sidebar sticky positioning — follows scroll === */
:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) {
	position: sticky !important;
	top: 100px !important;
	align-self: flex-start !important;
}

/* === Remove gap between CTA banner and footer === */
:is(.page-id-2882, .page-id-683, .page-id-10083) footer > .elementor-element:first-child {
	margin-top: 0 !important;
}

/* === Responsive: mobile (≤767px) — full stack layout === */
@media (max-width: 767px) {
	/* Year bar: remove desktop padding-left, center content */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .e-con:has(.elementor-widget-jet-smart-filters-radio[data-id="37c05b0"]) > .e-con-inner {
		padding-left: 16px !important;
		padding-right: 16px !important;
		padding-top: 12px !important;
		padding-bottom: 16px !important;
	}

	/* Year slider arrows — smaller on mobile */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider__arrow {
		width: 30px;
		height: 30px;
	}

	:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider__arrow svg {
		width: 16px;
		height: 16px;
	}

	:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider {
		gap: 8px !important;
	}

	/* Year pills — smaller padding */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider .jet-radio-list__button {
		padding: 6px 14px !important;
		font-size: 13px !important;
	}

	/* Category sidebar: stack above listing, full width, horizontal wrap */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) {
		width: 100% !important;
		min-width: 100% !important;
		flex: 0 0 100% !important;
		position: static !important;
		margin-right: 0 !important;
	}

	:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) .jet-radio-list:not(.jet-radio-list--dropdown) {
		flex-direction: row !important;
		flex-wrap: wrap !important;
		gap: 6px !important;
		justify-content: center !important;
	}

	:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) .jet-radio-list__row {
		width: auto !important;
	}

	:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) .jet-radio-list__button {
		padding: 8px 14px !important;
		font-size: 13px !important;
	}

	/* Listing rows: tighter padding, stack title below date */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .jet-listing-grid .jet-listing-grid__item {
		padding: 14px 8px !important;
	}

	/* Date column: smaller on mobile */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-2909 .elementor-element.elementor-widget-heading h3.elementor-heading-title,
	:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-2909 .elementor-element.elementor-widget-heading h2.elementor-heading-title {
		font-size: 1.25rem !important;
	}

	:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-2909 .elementor-element.elementor-widget-heading span.elementor-heading-title {
		font-size: 0.65rem !important;
	}

	/* Publication title */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-2909 .elementor-element.elementor-widget-heading h1.elementor-heading-title,
	:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-2909 .elementor-element.elementor-page-title h1.elementor-heading-title {
		font-size: 0.875rem !important;
	}

	/* PDF button — smaller */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .jet-listing-grid .elementor-button {
		padding: 6px 12px !important;
		font-size: 11px !important;
	}

	/* Breadcrumb heading */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-element-69eda94 h1.elementor-heading-title {
		font-size: 1.5rem !important;
	}
}

/* === Responsive: tablet (768px–1024px) === */
@media (max-width: 1024px) and (min-width: 768px) {
	/* Year bar: reduce padding-left to match narrower sidebar */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .e-con:has(.elementor-widget-jet-smart-filters-radio[data-id="37c05b0"]) > .e-con-inner {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}

	/* Sidebar narrower on tablet */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) {
		width: 180px !important;
		min-width: 180px !important;
		flex: 0 0 180px !important;
		margin-right: 16px !important;
	}

	:is(.page-id-2882, .page-id-683, .page-id-10083) .e-child:has(> .elementor-widget-jet-smart-filters-radio .jet-radio-list[data-filter-id="2888"]) .jet-radio-list__button {
		padding: 8px 14px !important;
		font-size: 13px !important;
	}

	/* Year pills */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .year-slider .jet-radio-list__button {
		padding: 7px 16px !important;
		font-size: 13px !important;
	}

	/* Publication title */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-2909 .elementor-element.elementor-widget-heading h1.elementor-heading-title,
	:is(.page-id-2882, .page-id-683, .page-id-10083) .elementor-2909 .elementor-element.elementor-page-title h1.elementor-heading-title {
		font-size: 0.9rem !important;
	}

	/* PDF button */
	:is(.page-id-2882, .page-id-683, .page-id-10083) .jet-listing-grid .elementor-button {
		padding: 7px 14px !important;
		font-size: 12px !important;
	}
}
