/* =========================================================
   Actualités (astra-child 5.2.15, 25/09/2026) — charte « Mémorial contemporain » : jetons de style.css seulement
   (nuit, ivoire, papier, encre, or, soleil ; Spectral + Public Sans ; angles droits). Chargée sur la page Actualités,
   les rubriques et les articles.
   ========================================================= */

/* Ouvertures : titres d'article moins monumentaux que ceux des pages (60 caractères au plus) */
.u-site .act-article .p-ouverture h1 { font-size: clamp(2.3rem, 4.6vw, 4.2rem); line-height: 1.02; letter-spacing: -.02em; margin-bottom: 24px; max-width: 20ch; }
.u-site .act-ouverture.p-ouverture--seule h1 { max-width: 18ch; }
.act-ouverture.p-ouverture--seule { min-height: 0; }
.u-site .act-numero { margin: 16px 0 0; color: var(--lin-2); font-size: .95rem; }
.u-site .act-auteur { margin: 22px 0 0; font-size: .9rem; color: var(--lin-2); }

/* Ligne « rubrique · date » */
.u-site .act-meta { margin: 0 0 12px; font: 500 .78rem/1.4 var(--sans); letter-spacing: .08em; text-transform: uppercase; color: var(--encre-2); }
.u-site .act-meta--sombre { color: var(--lin-2); margin-bottom: 18px; }
.u-site a.act-rubrique { color: var(--or-fonce); text-decoration: none; font-weight: 600; }
.u-site .act-meta--sombre a.act-rubrique { color: var(--or-clair); }
.u-site a.act-rubrique:hover { text-decoration: underline; text-decoration-color: currentColor; }

/* Salle : liste + colonne */
.act-salle { display: grid; grid-template-columns: minmax(0, 1fr) 19rem; gap: clamp(40px, 6vw, 96px); padding-block: clamp(64px, 8vw, 112px); }
.act-salle > * { min-width: 0; }

/* Cartes */
.act-liste { border-top: 1px solid var(--encre); }
.act-carte { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; padding: 32px 0 34px; border-bottom: var(--filet-clair); }
.act-carte--image { grid-template-columns: 15rem minmax(0, 1fr); }
.act-carte__image { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: var(--papier); }
.u-site .act-carte__image img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--lent); }
.u-site .act-carte__image:hover img { transform: scale(1.04); }
.u-site .act-carte__titre { font-size: clamp(1.55rem, 2.4vw, 2.1rem); line-height: 1.12; margin: 0 0 14px; }
.u-site .act-carte__titre a { color: var(--encre); text-decoration: none; }
.u-site .act-carte__titre a:hover { text-decoration: underline; text-decoration-color: var(--or-fonce); text-decoration-thickness: 1px; }
.u-site .act-carte__chapo { color: var(--encre-3); margin: 0 0 16px; max-width: 40rem; }
.u-site .act-carte__rdv { margin: 0 0 12px; font-size: .95rem; color: var(--encre); }
.act-carte__rdv span { font-weight: 600; color: var(--or-fonce); margin-right: .35em; }
.u-site a.act-carte__lire { font-size: .95rem; color: var(--encre); }

/* État vide : texte de la page Actualités */
.act-vide { max-width: 44rem; padding: 30px 32px 26px; background: var(--papier); border-left: 2px solid var(--or-fonce); }
.u-site .act-vide p:last-child { margin-bottom: 0; }

/* Colonne : blocs */
.act-cote { display: flex; flex-direction: column; gap: 48px; }
.act-bloc { border-top: 1px solid var(--encre); padding-top: 18px; }
.u-site .act-bloc__titre { font: 400 1.35rem/1.2 var(--serif); color: var(--encre); margin: 0 0 18px; letter-spacing: 0; }
.u-site .act-petit, .u-site .act-note { font-size: .9rem; line-height: 1.55; color: var(--encre-2); margin: 14px 0 0; }
.u-site .act-bloc a:not(.lien):not(.act-rss) { color: var(--encre); text-decoration-color: var(--or-fonce); }

/* Prochains rendez-vous */
.act-agenda__liste { list-style: none; margin: 0; padding: 0; }
.act-agenda__liste li { display: grid; grid-template-columns: 4.6rem minmax(0, 1fr); gap: 16px; padding: 14px 0; border-bottom: var(--filet-clair); margin: 0; }
.act-agenda__liste li:first-child { padding-top: 0; }
.act-agenda__date { display: flex; flex-direction: column; line-height: 1.1; }
.act-agenda__date b { font: 300 2.3rem/1 var(--serif); color: var(--encre); font-variant-numeric: lining-nums; }
.act-agenda__date span { font-size: .78rem; color: var(--encre-2); margin-top: 4px; }
.u-site .act-agenda__liste a { font: 400 1.08rem/1.3 var(--serif); color: var(--encre); text-decoration: none; }
.u-site .act-agenda__liste a:hover { text-decoration: underline; text-decoration-color: var(--or-fonce); }
.u-site .act-agenda__liste p { margin: 4px 0 0; font-size: .88rem; color: var(--encre-2); }
.u-site .act-agenda__vide { margin: 0; color: var(--encre-3); }

/* Rubriques */
.act-rubriques ul { list-style: none; margin: 0; padding: 0; border-left: var(--filet-clair); }
.act-rubriques li { margin: 0; }
.u-site .act-rubriques a { display: block; padding: 8px 0 8px 16px; margin-left: -1px; border-left: 1px solid transparent; text-decoration: none; font-size: .98rem; }
.u-site .act-rubriques a:hover, .u-site .act-rubriques a[aria-current] { border-left-color: var(--or-fonce); }
.u-site .act-rubriques a[aria-current] { font-weight: 600; }

/* Flux RSS */
.u-site a.act-rss { display: inline-flex; align-items: center; gap: .6em; min-height: 44px; padding: .6em 1.1em; border: 1px solid var(--or-fonce); color: var(--encre); font: 600 .92rem/1.2 var(--sans); text-decoration: none; transition: background .4s var(--lent), color .4s var(--lent); }
.u-site a.act-rss:hover { background: var(--encre); border-color: var(--encre); color: var(--papier); }
.act-rss svg { flex: none; color: var(--or-fonce); }
.u-site a.act-rss:hover svg { color: var(--soleil); }

/* Pagination */
.act-pagination { margin-top: 40px; }
.act-pagination ul { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0; padding: 0; }
.act-pagination li { margin: 0; }
.u-site .act-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 14px; border: var(--filet-clair); color: var(--encre); text-decoration: none; font-size: .95rem; }
.u-site .act-pagination a.page-numbers:hover { border-color: var(--or-fonce); }
.u-site .act-pagination .page-numbers.current { background: var(--encre); border-color: var(--encre); color: var(--papier); }
.u-site .act-pagination .page-numbers.dots { border-color: transparent; }

/* Article : encadré « En trois points » */
.act-trois { margin: 0 0 clamp(40px, 5vw, 56px); padding: 26px 30px 22px; background: var(--papier); border-left: 2px solid var(--or-fonce); }
.u-site .corps .act-trois h2 { font: 400 italic 1.2rem/1.2 var(--serif); color: var(--encre-2); margin: 0 0 14px; padding: 0; border: 0; }
.act-trois ol { margin: 0; padding: 0 0 0 1.4em; }
.u-site .act-trois li { font-size: 1.05rem; color: var(--encre); margin-bottom: .5em; }
.act-trois li:last-child { margin-bottom: 0; }
.act-trois li::marker { font-family: var(--serif); color: var(--or-fonce); }

/* Article : sections de fin (rendez-vous, sources, pour aller plus loin, partage) */
.u-site .corps .act-rdv h2, .u-site .corps .act-sources h2, .u-site .corps .act-plus h2, .u-site .corps .act-partage h2 { font-size: clamp(1.6rem, 2.6vw, 2.1rem); margin: clamp(56px, 6vw, 72px) 0 20px; }
.act-sources .sources li::marker { color: var(--or-fonce); }
.u-site .act-sources ol.sources { list-style: decimal !important; padding-left: 1.4em !important; }
.act-plus ul { list-style: none; margin: 0; padding: 0; }
.u-site .act-plus li { margin: 0 0 14px; }
.u-site .act-rdv .uyf-facts { margin-bottom: 24px; }
.act-partage__liens { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; margin: 0 !important; padding: 0 !important; }
.u-site .act-partage__liens li { margin: 0; }
.act-partage__liens li[hidden] { display: none; }
.u-site .act-bouton { display: inline-flex; align-items: center; min-height: 44px; padding: .55em 1.1em; border: 1px solid var(--or-fonce); border-radius: 0; background: transparent; color: var(--encre); font: 600 .9rem/1.2 var(--sans); text-decoration: none; cursor: pointer; transition: background .4s var(--lent), color .4s var(--lent); }
.u-site .corps a.act-bouton { color: var(--encre); text-decoration: none; }
.u-site .act-bouton:hover, .u-site .corps a.act-bouton:hover { background: var(--encre); border-color: var(--encre); color: var(--papier); }
.u-site .act-partage [data-uyf-message]:empty { display: none; }

/* Adaptations */
@media (max-width: 1080px) {
  .act-salle { grid-template-columns: minmax(0, 1fr) 16rem; }
  .act-carte--image { grid-template-columns: 12rem minmax(0, 1fr); }
}
@media (max-width: 900px) {
  .act-salle { grid-template-columns: minmax(0, 1fr); }
  .act-cote { gap: 40px; }
}
@media (max-width: 640px) {
  .act-carte, .act-carte--image { grid-template-columns: minmax(0, 1fr); gap: 18px; padding: 26px 0 28px; }
  .act-carte__image { aspect-ratio: 16 / 9; }
  .act-vide, .act-trois { padding: 22px 20px; }
  .u-site .act-bouton { padding: .55em .9em; }
}
@media (prefers-reduced-motion: reduce) {
  .u-site .act-carte__image img, .act-rss, .act-bouton { transition: none !important; }
  .u-site .act-carte__image:hover img { transform: none; }
}
@media print {
  .act-cote, .act-partage, .act-pagination { display: none !important; }
  .act-salle { grid-template-columns: 1fr; }
}
