/* home_1a.css — accueil révisée (option 1a) */
@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&family=Public+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&family=JetBrains+Mono:wght@400;500&display=swap");

.h1a { --bleu: #001C31; --vert: #09A38C; --vert-pale: #C5FCEE; --bleu-clair: #869ECE;
  --texte-doux: #516B8F; --trait: #E8E0DC; --fond-doux: #f7f6f3;
  font-family: 'Public Sans', system-ui, sans-serif; color: var(--bleu);
  /* remonte sous la navbar : absorbe le spacer .site-header (1rem, header.css) */
  margin-top: -1rem; overflow-x: hidden; }
.h1a * { box-sizing: border-box; }
.h1a p { margin: 0; }
.h1a .h1a-eyebrow { font: 500 11.5px/1 'JetBrains Mono', monospace; letter-spacing: .12em;
  text-transform: uppercase; color: var(--vert); }
.h1a .h1a-lien { font: 600 14px/1 'Public Sans', sans-serif; color: var(--vert); text-decoration: none; }
.h1a .h1a-lien:hover { text-decoration: underline; }

/* Héros */
.h1a-hero { position: relative; min-height: 340px; background-size: cover;
  /* cadré haut : on ne coupe pas les têtes du groupe */
  background-position: center 22%; }
.h1a-hero::before { content: ""; position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(0,28,49,.93) 0%, rgba(0,28,49,.74) 55%, rgba(0,28,49,.34) 100%); }
.h1a-hero-in { position: relative; padding: 48px 36px; max-width: 760px; }
.h1a-hero h1 { font: 700 42px/1.1 'Space Grotesk', sans-serif; color: #fff; margin: 16px 0 14px; text-wrap: pretty; }
.h1a-hero p { font-size: 16.5px; line-height: 1.55; color: #d6e2ea; margin-bottom: 26px; max-width: 580px; }
.h1a-cta { display: flex; flex-wrap: wrap; gap: 12px; }
.h1a-cta a { font: 600 14.5px/1 'Public Sans', sans-serif; padding: 14px 22px; border-radius: 4px; text-decoration: none; }
.h1a-cta a.plein { background: var(--vert); color: #fff; }
.h1a-cta a.vide { border: 1px solid rgba(255,255,255,.45); color: #fff; }

/* Chiffres clés */
.h1a-chiffres { display: grid; grid-template-columns: repeat(4, 1fr); border-bottom: 1px solid var(--trait); }
.h1a-chiffres > div { padding: 24px 28px; border-right: 1px solid var(--trait); }
.h1a-chiffres > div:last-child { border-right: none; }
.h1a-chiffres b { display: block; font: 700 32px/1 'Space Grotesk', sans-serif; color: var(--vert); }
.h1a-chiffres span { display: block; font-size: 13px; line-height: 1.45; color: var(--texte-doux); margin-top: 7px; }

/* Présentation + missions */
.h1a-deux { display: grid; grid-template-columns: 1.15fr .85fr; gap: 52px; padding: 48px 36px; }
.h1a-chapeau { font-size: 20px; line-height: 1.55; margin-bottom: 16px; text-wrap: pretty; }
.h1a-corps { font-size: 15px; line-height: 1.65; color: var(--texte-doux); margin-bottom: 12px; }
.h1a-missions { display: grid; gap: 10px; align-content: start; }
.h1a-mission { display: flex; gap: 14px; padding: 15px 17px; background: var(--fond-doux); border-left: 3px solid var(--vert); }
.h1a-mission i { font: 500 12px/1.4 'JetBrains Mono', monospace; color: var(--bleu-clair); font-style: normal; }
.h1a-mission span { font-weight: 600; font-size: 14.5px; line-height: 1.4; }

/* Calendrier */
.h1a-cal { padding: 40px 36px; background: var(--bleu); }
.h1a-cal-tete { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 22px; }
.h1a-cal h2 { font: 700 26px/1.2 'Space Grotesk', sans-serif; color: #fff; margin: 0; }
.h1a-cal-vide { border: 1px dashed rgba(9,163,140,.5); background: rgba(255,255,255,.04);
  padding: 32px 36px; display: flex; flex-wrap: wrap; align-items: center; gap: 32px; }
.h1a-cal-vide strong { display: block; font-size: 18px; line-height: 1.35; color: #fff; margin-bottom: 8px; }
.h1a-cal-vide p { font-size: 14.5px; line-height: 1.6; color: var(--bleu-clair); max-width: 620px; }
.h1a-cal-vide a { background: var(--vert); color: #fff; font: 600 14px/1 'Public Sans', sans-serif;
  padding: 14px 20px; border-radius: 4px; text-decoration: none; white-space: nowrap; }

/* Bande des prochaines séances */
.h1a-seances { display: flex; flex-wrap: wrap; gap: 14px; }
.h1a-seance { flex: 1 1 180px; min-width: 0; display: block; text-decoration: none;
  background: rgba(255,255,255,.045); border-left: 3px solid var(--vert);
  padding: 13px 15px; }
.h1a-seance .q { display: block; font: 500 11px/1.3 'JetBrains Mono', monospace;
  letter-spacing: .04em; text-transform: uppercase; color: var(--bleu-clair); margin-bottom: 7px; }
.h1a-seance .t { display: block; font: 600 14.5px/1.35 'Public Sans', sans-serif; color: #fff; }
.h1a-seance:hover { background: rgba(255,255,255,.09); }
.h1a-seance.passee { border-left-color: rgba(134,158,206,.35); background: rgba(255,255,255,.025); }
.h1a-seance.passee .q { color: rgba(134,158,206,.7); }
.h1a-seance.passee .t { color: #bcc9d9; font-weight: 500; }
.h1a-seance.prochaine { background: var(--vert); border-left-color: #fff; }
.h1a-seance.prochaine .q { color: rgba(0,28,49,.65); }
.h1a-seance.prochaine .t { color: var(--bleu); }
.h1a-seance.prochaine:hover { background: #08b89e; }

/* Histoire / travaux */
.h1a-histoire h3, .h1a-travaux h3 { font: 700 20px/1.25 'Space Grotesk', sans-serif; margin: 0 0 16px; }
.h1a-jalon { display: grid; grid-template-columns: 66px 1fr; gap: 16px; padding: 13px 0; border-top: 1px solid var(--trait); }
.h1a-jalon b { font: 500 13px/1.4 'JetBrains Mono', monospace; color: var(--vert); }
.h1a-jalon span { font-size: 14.5px; line-height: 1.5; color: var(--texte-doux); }
.h1a-carte { border: 1px solid var(--trait); padding: 20px; }
.h1a-carte .kicker { font: 500 11px/1 'JetBrains Mono', monospace; letter-spacing: .08em;
  text-transform: uppercase; color: var(--bleu-clair); margin-bottom: 9px; }
.h1a-carte .titre { font-weight: 600; font-size: 17px; line-height: 1.35; margin-bottom: 9px; }
.h1a-carte p { font-size: 14.5px; line-height: 1.55; color: var(--texte-doux); margin-bottom: 11px; }
.h1a-articles { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 14px; }
.h1a-articles a { flex: 1 1 160px; border: 1px solid var(--trait); padding: 16px; text-decoration: none; color: var(--bleu); }
.h1a-articles time { font: 500 11px/1 'JetBrains Mono', monospace; color: var(--bleu-clair); }
.h1a-articles div { font-weight: 600; font-size: 14.5px; line-height: 1.4; margin-top: 6px; }

/* Aux élu·e·s */
.h1a-elus { padding: 40px 36px; background: var(--vert-pale); }
.h1a-elus h2 { font: 700 24px/1.2 'Space Grotesk', sans-serif; margin: 0 0 8px; }
.h1a-elus > p { font-size: 15px; line-height: 1.55; color: #00544a; margin-bottom: 22px; max-width: 660px; }
.h1a-elus-grille { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.h1a-elus-grille a { background: #fff; padding: 18px 20px; text-decoration: none; color: var(--bleu); }
.h1a-elus-grille strong { display: block; font-size: 15.5px; line-height: 1.3; }
.h1a-elus-grille span { display: block; font-size: 13.5px; line-height: 1.5; color: var(--texte-doux); margin-top: 7px; }

@media screen and (max-width: 900px) {
  .h1a-chiffres { grid-template-columns: 1fr 1fr; }
  .h1a-chiffres > div { border-bottom: 1px solid var(--trait); }
  .h1a-chiffres > div:nth-child(2n) { border-right: none; }
  .h1a-deux, .h1a-elus-grille { grid-template-columns: 1fr; gap: 28px; }
}
@media screen and (max-width: 700px) {
  .h1a-hero-in { padding: 24px 18px 26px; }
  .h1a-hero::before { background: linear-gradient(180deg, rgba(0,28,49,.62) 0%, rgba(0,28,49,.94) 78%); }
  .h1a-hero h1 { font-size: 26px; line-height: 1.15; }
  .h1a-hero p { font-size: 14.5px; }
  .h1a-cta { display: grid; gap: 9px; }
  .h1a-cta a { text-align: center; }
  .h1a-chiffres b { font-size: 26px; }
  .h1a-deux, .h1a-cal, .h1a-elus { padding: 28px 18px; }
  .h1a-cal h2, .h1a-elus h2 { font-size: 21px; }
  .h1a-jalon { grid-template-columns: 52px 1fr; }
}
