/* Présentations AIBL — calqué sur la page Divi de référence (capture FR). */

body.aibl-page-presentations {
	--aibl-pres-red: #c8102e;
	--aibl-pres-text: #111111;
	--aibl-pres-meta: #888888;
	--aibl-pres-border: #e8e8e8;
	--aibl-pres-sidebar-w: 220px;
	--aibl-pres-col-gap: 48px;
	--aibl-pres-title-size: 20px;
	--aibl-pres-title-lh: 24px;
	--aibl-pres-meta-size: 12px;
	--aibl-pres-meta-lh: 18px;
	--aibl-pres-meta-date-size: 11px;
	--aibl-pres-meta-date-lh: 16px;
	--aibl-pres-year-size: 27px;
	--aibl-pres-year-lh: 33px;
	--aibl-pres-nav-year-size: 14px;
	--aibl-pres-nav-year-lh: 25px;
	--aibl-pres-archives-margin-top: 23px;
	--aibl-pres-dl-size: 14px;
	--aibl-pres-dl-lh: 21px;
	--aibl-pres-item-pad-y: 20px;
	--aibl-pres-title-meta-gap: 6px;
	--aibl-pres-year-gap: 12px;
	--aibl-pres-year-block-gap: 40px;
	--aibl-pres-item-col-gap: 32px;
	--aibl-pres-page-pad-x: 24px;
}

/* Marges FR/EN — même modèle que le calendrier : boîte 1200px, padding interne */
body.aibl-page-presentations #main-content {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.aibl-page-presentations #main-content .container,
body.et_full_width_page.aibl-page-presentations #main-content .container {
	width: 100% !important;
	max-width: 1200px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: var(--aibl-pres-page-pad-x) !important;
	padding-right: var(--aibl-pres-page-pad-x) !important;
	box-sizing: border-box !important;
}

/* Secours si la page EN n'a pas encore le template PHP (article sans .container) */
body.aibl-page-presentations #main-content > article.page,
body.aibl-page-presentations #main-content > article.type-page {
	width: 100% !important;
	max-width: 1200px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: var(--aibl-pres-page-pad-x) !important;
	padding-right: var(--aibl-pres-page-pad-x) !important;
	box-sizing: border-box !important;
}

body.aibl-page-presentations #main-content .et_pb_section,
body.aibl-page-presentations #main-content .et_pb_row,
body.aibl-page-presentations #main-content .et_pb_column,
body.aibl-page-presentations #main-content .et_pb_module.et_pb_text {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.aibl-page-presentations #main-content #left-area,
body.aibl-page-presentations #main-content .entry-content {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	clear: both !important;
}

/* Layout desktop : colonnes Divi natives (ne pas forcer grid sur .et_pb_row) */
body.aibl-page-presentations .aibl-pres-section {
	padding: 0 !important;
}

body.aibl-page-presentations .aibl-pres-section > .et_pb_row {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}

body.aibl-page-presentations .aibl-pres-section .et_pb_column_1_4 {
	width: 22% !important;
	margin-right: 4% !important;
}

body.aibl-page-presentations .aibl-pres-section .et_pb_column_3_4 {
	width: 74% !important;
}

/* Ancien HTML statique (page FR avant setup) */
body.aibl-page-presentations .aibl-pres-layout {
	display: grid;
	grid-template-columns: var(--aibl-pres-sidebar-w) 1fr;
	gap: 0 var(--aibl-pres-col-gap);
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 auto !important;
	padding-top: 30px !important;
	padding-bottom: 30px !important;
	box-sizing: border-box !important;
	align-items: start;
}

body.aibl-page-presentations .aibl-pres-layout .aibl-pres-sidebar,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-main {
	width: 100% !important;
}

/* Liste dynamique */
body.aibl-page-presentations .aibl-pres-dynamic {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif;
	width: 100%;
}

body.aibl-page-presentations h2.aibl-pres-year,
body.aibl-page-presentations .aibl-pres-dynamic .aibl-pres-year,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-year {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: var(--aibl-pres-year-size) !important;
	font-weight: 700 !important;
	line-height: var(--aibl-pres-year-lh) !important;
	color: var(--aibl-pres-red) !important;
	margin: 0 0 var(--aibl-pres-year-gap) !important;
	padding: 0 !important;
}

body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-acc-year {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: var(--aibl-pres-year-size) !important;
	font-weight: 600 !important;
	line-height: var(--aibl-pres-year-lh) !important;
	color: var(--aibl-pres-red) !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.aibl-page-presentations .aibl-pres-dynamic .aibl-pres-year-block,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-year-block {
	margin-bottom: var(--aibl-pres-year-block-gap) !important;
}

body.aibl-page-presentations .aibl-pres-dynamic .aibl-pres-year-block:last-child,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-year-block:last-child {
	margin-bottom: 0 !important;
}

body.aibl-page-presentations .aibl-pres-dynamic .aibl-pres-item,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-item,
body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-item {
	display: grid !important;
	grid-template-columns: 1fr auto !important;
	gap: var(--aibl-pres-item-col-gap) !important;
	align-items: start !important;
	padding: var(--aibl-pres-item-pad-y) 0 !important;
	border-bottom: 1px solid var(--aibl-pres-border) !important;
}

body.aibl-page-presentations .aibl-pres-dynamic .aibl-pres-item:first-of-type,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-item:first-of-type,
body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-acc-panel .aibl-pres-item:first-of-type {
	padding-top: 0 !important;
}

body.aibl-page-presentations .aibl-pres-dynamic .aibl-pres-title,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-title,
body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-title,
body.aibl-page-presentations .et_pb_section.aibl-pres-section .aibl-pres-title {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: var(--aibl-pres-title-size) !important;
	font-weight: 700 !important;
	line-height: var(--aibl-pres-title-lh) !important;
	color: var(--aibl-pres-text) !important;
	margin: 0 0 var(--aibl-pres-title-meta-gap) !important;
	padding: 0 !important;
}

body.aibl-page-presentations .aibl-pres-dynamic .aibl-pres-meta,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-meta,
body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-meta,
body.aibl-page-presentations .et_pb_section.aibl-pres-section .aibl-pres-meta {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: var(--aibl-pres-meta-size) !important;
	font-weight: 400 !important;
	line-height: var(--aibl-pres-meta-lh) !important;
	color: var(--aibl-pres-meta) !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.aibl-page-presentations .aibl-pres-dynamic .aibl-pres-meta .aibl-pres-meta-date,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-meta .aibl-pres-meta-date,
body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-meta .aibl-pres-meta-date,
body.aibl-page-presentations .et_pb_section .aibl-pres-meta .aibl-pres-meta-date {
	font-size: var(--aibl-pres-meta-date-size) !important;
	line-height: var(--aibl-pres-meta-date-lh) !important;
}

body.aibl-page-presentations .aibl-pres-dynamic .aibl-pres-dl,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-dl,
body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-dl,
body.aibl-page-presentations .et_pb_section.aibl-pres-section .aibl-pres-dl {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: var(--aibl-pres-dl-size) !important;
	font-weight: 500 !important;
	line-height: var(--aibl-pres-dl-lh) !important;
	color: var(--aibl-pres-red) !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	padding-top: 2px !important;
	display: inline-block !important;
	visibility: visible !important;
}

body.aibl-page-presentations .aibl-pres-dynamic .aibl-pres-dl:hover,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-dl:hover,
body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-dl:hover {
	text-decoration: underline !important;
}

body.aibl-page-presentations .aibl-pres-dynamic .aibl-pres-empty {
	font-size: 14px;
	line-height: 21px;
	color: #666666;
}

/* Sidebar */
body.aibl-page-presentations .aibl-pres-divi-sidebar .aibl-pres-divi-title,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-sidebar h1 {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: 28px !important;
	font-weight: 700 !important;
	line-height: 34px !important;
	color: var(--aibl-pres-text) !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
}

body.aibl-page-presentations .aibl-pres-divi-sidebar .aibl-pres-divi-intro,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-intro {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 21px !important;
	color: #666666 !important;
	margin: 0 0 28px !important;
	padding: 0 !important;
}

body.aibl-page-presentations .aibl-pres-divi-sidebar .aibl-pres-nav-year,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-nav a {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: var(--aibl-pres-nav-year-size) !important;
	font-weight: 600 !important;
	line-height: var(--aibl-pres-nav-year-lh) !important;
	color: var(--aibl-pres-red) !important;
	text-decoration: none !important;
}

body.aibl-page-presentations .aibl-pres-divi-sidebar .aibl-pres-nav-year:hover,
body.aibl-page-presentations .aibl-pres-layout .aibl-pres-nav a:hover {
	text-decoration: underline !important;
}

body.aibl-page-presentations .aibl-pres-divi-sidebar .aibl-pres-divi-archives {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 23px !important;
	margin-top: var(--aibl-pres-archives-margin-top) !important;
}

body.aibl-page-presentations .aibl-pres-divi-sidebar .aibl-pres-divi-archives a {
	color: var(--aibl-pres-text) !important;
	text-decoration: none !important;
	font-weight: 500 !important;
}

body.aibl-page-presentations .aibl-pres-divi-sidebar .aibl-pres-divi-archives a:hover {
	text-decoration: underline !important;
}

@media (max-width: 980px) {
	body.aibl-page-presentations .aibl-pres-section > .et_pb_row {
		padding-top: 20px !important;
		padding-bottom: 20px !important;
	}

	body.aibl-page-presentations .aibl-pres-layout {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
		padding-top: 20px !important;
		padding-bottom: 20px !important;
	}

	body.aibl-page-presentations .aibl-pres-section .et_pb_column_1_4,
	body.aibl-page-presentations .aibl-pres-section .et_pb_column_3_4 {
		width: 100% !important;
		margin-right: 0 !important;
		margin-bottom: 0 !important;
	}

	body.aibl-page-presentations .aibl-pres-divi-sidebar .aibl-pres-divi-intro,
	body.aibl-page-presentations .aibl-pres-layout .aibl-pres-intro {
		margin-bottom: 20px !important;
	}
}

@media (max-width: 767px) {
	body.aibl-page-presentations {
		--aibl-pres-page-pad-x: 20px;
		--aibl-pres-title-size: 18px;
		--aibl-pres-title-lh: 22px;
		--aibl-pres-year-size: 25px;
		--aibl-pres-year-lh: 31px;
		--aibl-pres-item-pad-y: 16px;
		--aibl-pres-year-block-gap: 28px;
		--aibl-pres-item-col-gap: 12px;
	}

	body.aibl-page-presentations .aibl-pres-divi-sidebar .aibl-pres-divi-title,
	body.aibl-page-presentations .aibl-pres-layout .aibl-pres-sidebar h1 {
		font-size: 24px !important;
		line-height: 30px !important;
	}

	body.aibl-page-presentations .aibl-pres-dynamic .aibl-pres-item,
	body.aibl-page-presentations .aibl-pres-layout .aibl-pres-item,
	body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-item {
		grid-template-columns: 1fr !important;
		gap: 8px !important;
		align-items: stretch !important;
	}

	body.aibl-page-presentations .aibl-pres-dynamic .aibl-pres-dl,
	body.aibl-page-presentations .aibl-pres-layout .aibl-pres-dl,
	body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-dl,
	body.aibl-page-presentations .et_pb_section .aibl-pres-dl {
		white-space: normal !important;
		padding-top: 4px !important;
	}
}

/* Archives — accordéons (même typo que la page principale) */

body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-acc-list {
	border-top: none;
}

body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-acc-item {
	border-bottom: 1px solid var(--aibl-pres-border);
}

body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-acc-head {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: var(--aibl-pres-item-pad-y) 0;
	border: none;
	background: transparent;
	cursor: pointer;
	text-align: left;
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif;
}

body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-acc-item:first-child .aibl-pres-acc-head {
	padding-top: 0;
}

body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-acc-icon {
	width: 10px;
	height: 10px;
	border-right: 2px solid #bbbbbb;
	border-bottom: 2px solid #bbbbbb;
	transform: rotate(45deg);
	transition: transform 0.2s ease;
	flex-shrink: 0;
	margin-right: 4px;
}

body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-acc-item.is-open .aibl-pres-acc-icon {
	transform: rotate(-135deg);
	margin-top: 4px;
}

body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-acc-panel .aibl-pres-item:last-child {
	border-bottom: none !important;
}

body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-acc-panel {
	padding: 0 !important;
}

body.aibl-page-presentations .aibl-pres-dynamic--archives .aibl-pres-acc-panel[hidden] {
	display: none !important;
}

/* En-tête page archives — aligné sur la sidebar « Présentations » */
body.aibl-page-presentations .aibl-pres-divi-archives-header .aibl-pres-archives-eyebrow {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--aibl-pres-red) !important;
	margin: 0 0 8px !important;
	line-height: 18px !important;
}

body.aibl-page-presentations .aibl-pres-divi-archives-header .aibl-pres-archives-title {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: 28px !important;
	font-weight: 700 !important;
	line-height: 34px !important;
	color: var(--aibl-pres-text) !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
}

body.aibl-page-presentations .aibl-pres-divi-archives-header .aibl-pres-archives-intro {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 21px !important;
	color: #666666 !important;
	margin: 0 0 32px !important;
	max-width: 720px;
	padding: 0 !important;
}

body.aibl-page-presentations .aibl-pres-back {
	margin-top: 36px;
}

body.aibl-page-presentations .aibl-pres-back a {
	font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: var(--aibl-pres-dl-size) !important;
	font-weight: 500 !important;
	line-height: var(--aibl-pres-dl-lh) !important;
	color: var(--aibl-pres-red) !important;
	text-decoration: none !important;
}

body.aibl-page-presentations .aibl-pres-back a:hover {
	text-decoration: underline;
}
