/* Archives des articles – préfixe dac- (extension df24-district) */

/* ---------- En-tête ---------- */
html body .dac-entete { max-width: 860px; color: #DCE7F4; }
html body .dac-ariane { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; font: 600 13px/1.4 Barlow, sans-serif; color: #DCE7F4; margin-bottom: 26px; }
html body .dac-ariane a { color: #DCE7F4; text-decoration: none; }
html body .dac-ariane a:hover, html body .dac-ariane a:focus-visible { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
html body .dac-ariane > span[aria-hidden] { color: #52A0D3; }
html body .dac-ariane [aria-current] { color: #9CC7E8; }
html body .dac-surtitre { display: flex; align-items: center; gap: 10px; margin: 0 0 10px; font: 700 12px/1 Barlow, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #9CC7E8; }
html body .dac-surtitre::before { content: ""; width: 28px; height: 3px; background: #CF3535; }
html body .dac-titre { margin: 0 0 16px; font: 800 clamp(40px, 6.4vw, 84px)/.95 "Barlow Condensed", sans-serif; text-transform: uppercase; color: #fff; letter-spacing: .005em; text-wrap: balance; overflow-wrap: anywhere; }
html body .dac-titre em { font-style: normal; color: transparent; -webkit-text-stroke: 2px #52A0D3; }
html body .dac-desc { margin: 0 0 22px; max-width: 640px; font: 400 18px/1.55 Barlow, sans-serif; color: #DCE7F4; }
html body .dac-stats { display: flex; flex-wrap: wrap; gap: 8px 26px; font: 500 15px/1.3 Barlow, sans-serif; color: #DCE7F4; }
html body .dac-stats span { display: inline-flex; align-items: baseline; gap: 6px; }
html body .dac-stats span + span::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: #52A0D3; margin-right: 14px; align-self: center; }
html body .dac-stats strong { color: #fff; font-weight: 700; }

/* ---------- Barre des rubriques ---------- */
html body .dac-corps { --dac-recouvre: 44px; }
html body .dac-corps > .e-con-inner { margin-top: calc(-1 * var(--dac-recouvre)); position: relative; z-index: 2; }
html body .dac-filtres { display: flex; align-items: center; gap: 16px; padding: 12px 12px 12px 14px; background: #fff; border: 1px solid #D9E2EE; border-radius: 12px; box-shadow: 0 16px 40px rgba(14,35,80,.10); }
html body .dac-rubriques { flex: 1; min-width: 0; position: relative; }
html body .dac-rub-defile { display: flex; flex-wrap: wrap; gap: 8px; }
html body .dac-chip { display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 0 13px; border-radius: 99px; border: 1px solid #D9E2EE; background: #fff; color: #264075; font: 600 14px/1 Barlow, sans-serif; text-decoration: none; white-space: nowrap; transition: background .2s, color .2s, border-color .2s; }
html body .dac-chip span { font-size: 12px; font-weight: 700; color: #4A5878; background: #EAF2FA; border-radius: 99px; padding: 3px 7px; transition: inherit; }
html body .dac-chip:hover, html body .dac-chip:focus-visible { border-color: #264075; background: #EAF2FA; color: #0E2350; }
html body .dac-chip.est-actif { background: #264075; border-color: #264075; color: #fff; }
html body .dac-chip.est-actif span { background: rgba(255,255,255,.18); color: #fff; }
html body .dac-annee { flex: 0 0 auto; display: flex; align-items: center; gap: 10px; padding-left: 16px; border-left: 1px solid #D9E2EE; margin: 0; }
html body .dac-annee span { font: 700 12px/1 Barlow, sans-serif; letter-spacing: .1em; text-transform: uppercase; color: #4A5878; }
html body .dac-annee select { min-height: 40px; padding: 0 36px 0 12px; border: 1px solid #D9E2EE; border-radius: 8px; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23264075' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 10px center / 16px no-repeat; -webkit-appearance: none; appearance: none; color: #0E2350; font: 600 15px/1 Barlow, sans-serif; cursor: pointer; }
html body .dac-annee select:focus { outline: none; border-color: #52A0D3; box-shadow: 0 0 0 3px rgba(82,160,211,.25); }

/* ---------- Grille ---------- */
html body .dac-grille { margin-top: 28px; }
html body.dac-page-1 .dac-grille .elementor-loop-container > .e-loop-item:first-of-type { grid-column: span 2; grid-row: span 2; }
html body.dac-page-1 .dac-grille .e-loop-item:first-of-type .elementor-element-f29b92b { flex-grow: 1; min-height: 360px; }
html body.dac-page-1 .dac-grille .e-loop-item:first-of-type .elementor-element-5dbeda1 .elementor-heading-title { font-size: 32px; line-height: 1.05; }
html body.dac-page-1 .dac-grille .e-loop-item:first-of-type .elementor-element-f29b92b::after { content: "Dernier article"; position: absolute; top: 14px; left: 14px; padding: 6px 10px; border-radius: 4px; background: #CF3535; color: #fff; font: 700 11px/1 Barlow, sans-serif; letter-spacing: .1em; text-transform: uppercase; }
html body.dac-page-1 .dac-grille .e-loop-item:first-of-type .elementor-element-f29b92b { position: relative; }

/* Pagination */
html body .dac-grille .elementor-pagination { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px; margin-top: 40px; font: 700 15px/1 Barlow, sans-serif; }
html body .dac-grille .elementor-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 12px; margin: 0 !important; border-radius: 8px; border: 1px solid #D9E2EE; background: #fff; color: #264075; text-decoration: none; transition: background .2s, color .2s, border-color .2s; }
html body .dac-grille .elementor-pagination a.page-numbers:hover, html body .dac-grille .elementor-pagination a.page-numbers:focus-visible { border-color: #264075; background: #EAF2FA; }
html body .dac-grille .elementor-pagination .page-numbers.current { background: #264075; border-color: #264075; color: #fff; }
html body .dac-grille .elementor-pagination .page-numbers.dots { border: 0; background: none; min-width: 20px; padding: 0; }
html body .dac-grille .elementor-pagination .page-numbers.prev, html body .dac-grille .elementor-pagination .page-numbers.next { padding: 0 16px; }
html body .dac-grille .elementor-pagination span.page-numbers.prev, html body .dac-grille .elementor-pagination span.page-numbers.next { opacity: .4; }

/* Aucun article */
html body .dac-grille .e-loop-nothing-found-message { padding: 48px 24px; text-align: center; background: #fff; border: 1px dashed #D9E2EE; border-radius: 12px; font: 500 17px/1.5 Barlow, sans-serif; color: #4A5878; }

/* ---------- Tablette ---------- */
@media (max-width: 1100px) {
	html body .dac-filtres { flex-direction: column; align-items: stretch; gap: 12px; }
	html body .dac-annee { border-left: 0; padding-left: 0; border-top: 1px solid #EAF2FA; padding-top: 12px; }
	html body .dac-annee select { flex: 1; }
	html body.dac-page-1 .dac-grille .elementor-loop-container > .e-loop-item:first-of-type { grid-row: auto; }
	html body.dac-page-1 .dac-grille .e-loop-item:first-of-type .elementor-element-f29b92b { min-height: 320px; }
}

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
	html body .dac-corps { --dac-recouvre: 28px; }
	html body .dac-ariane { margin-bottom: 18px; font-size: 12px; }
	html body .dac-desc { font-size: 16px; }
	html body .dac-stats { font-size: 14px; gap: 6px 14px; }
	html body .dac-stats span + span::before { margin-right: 8px; }
	html body .dac-filtres { padding: 10px; }
	html body .dac-rubriques { margin: 0 -10px; }
	html body .dac-rubriques::after { content: ""; position: absolute; right: 0; top: 0; bottom: 0; width: 28px; background: linear-gradient(90deg, rgba(255,255,255,0), #fff); pointer-events: none; }
	html body .dac-rub-defile { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; padding: 0 28px 2px 10px; scroll-snap-type: x proximity; }
	html body .dac-rub-defile::-webkit-scrollbar { display: none; }
	html body .dac-chip { scroll-snap-align: start; }
	html body .dac-annee span { display: none; }
	html body .dac-grille { margin-top: 20px; }
	html body.dac-page-1 .dac-grille .elementor-loop-container > .e-loop-item:first-of-type { grid-column: auto; }
	html body.dac-page-1 .dac-grille .e-loop-item:first-of-type .elementor-element-f29b92b { min-height: 230px; }
	html body.dac-page-1 .dac-grille .e-loop-item:first-of-type .elementor-element-5dbeda1 .elementor-heading-title { font-size: 26px; }
	html body .dac-grille .elementor-pagination .page-numbers { min-width: 40px; height: 40px; }
	html body .dac-grille .elementor-pagination .page-numbers.prev, html body .dac-grille .elementor-pagination .page-numbers.next { flex-basis: calc(50% - 4px); order: 2; }
}

/* Filtres v2 : rubriques groupées + type de publication (extension Classement) */
html body .dac-filtres-v2 { flex-direction: column; align-items: stretch; gap: 12px; }
html body .dac-groupe { align-self: center; margin: 0 0 0 10px; font: 700 11px/1 Barlow, sans-serif; letter-spacing: .1em; text-transform: uppercase; color: #8090A8; white-space: nowrap; }
html body .dac-ligne2 { display: flex; align-items: center; gap: 16px; padding-top: 12px; border-top: 1px solid #EAF2FA; }
html body .dac-types { flex: 1; min-width: 0; display: flex; align-items: center; gap: 12px; }
html body .dac-l { flex: none; font: 700 12px/1 Barlow, sans-serif; letter-spacing: .1em; text-transform: uppercase; color: #4A5878; }
html body .dac-types-defile { display: flex; flex-wrap: wrap; gap: 6px; min-width: 0; }
html body .dac-type { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 0 11px; border: 1px solid transparent; border-radius: 6px; background: #F3F6FA; color: #264075; font: 600 13.5px/1 Barlow, sans-serif; text-decoration: none; white-space: nowrap; transition: border-color .2s, background .2s; }
html body .dac-type span { font-size: 11.5px; font-weight: 700; color: #8090A8; }
html body .dac-type:hover, html body .dac-type:focus-visible { border-color: #264075; background: #fff; color: #0E2350; }
html body .dac-type.est-actif { background: #CF3535; border-color: #CF3535; color: #fff; }
html body .dac-type.est-actif span { color: rgba(255,255,255,.85); }
html body .dac-filtre-actif { margin: 12px 0 0; color: #DCE7F4; font: 500 15px/1.4 Barlow, sans-serif; }
html body .dac-filtre-actif b { color: #fff; }
html body .dac-filtre-actif a { margin-left: 8px; color: #9CC7E8; text-decoration: underline; }
@media (max-width: 1024px) {
	html body .dac-ligne2 { flex-direction: column; align-items: stretch; gap: 12px; }
	html body .dac-ligne2 .dac-annee { border-left: 0; padding-left: 0; }
}
@media (max-width: 767px) {
	html body .dac-types { flex-direction: column; align-items: stretch; gap: 8px; }
	html body .dac-types-defile { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin: 0 -10px; padding: 0 10px 2px; }
	html body .dac-types-defile::-webkit-scrollbar { display: none; }
	html body .dac-groupe { margin-left: 6px; }
}

html body .dac-filtres-v2 .dac-chip { min-height: 34px; padding: 0 11px; font-size: 13.5px; gap: 6px; }
html body .dac-filtres-v2 .dac-rub-defile { gap: 6px; }
