/* ==========================================================
   ACCUEIL — à la une, rubriques, newsletter, astro
   ========================================================== */

/* À la une */
.hero-grid{display:grid;grid-template-columns:2.2fr 1fr;gap:40px;align-items:start;margin-top:28px}
.lead-col .card.hero .img{aspect-ratio:2/1;border-radius:10px}
.lead-col .card.hero h2{font-size:clamp(28px,4vw,44px);line-height:1.1}
.cards.inline{grid-template-columns:repeat(3,1fr);margin-top:28px}
.cards.inline .img{aspect-ratio:3/2}

/* Les dernières actus */
.latest{align-self:start;padding-left:28px;border-left:1px solid var(--line)}
.latest li{display:flex;flex-direction:column;gap:4px;padding:14px 0;border-top:1px solid var(--line);font:700 16px/1.3 var(--sans)}
.latest li:first-child{border-top:0}
.latest time{flex:none;font:700 11px var(--sans);text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
.latest a:hover{color:var(--accent)}
.all{display:block;margin-top:8px;padding:10px;border:2px solid var(--fg);text-align:center;font:700 12px var(--sans);text-transform:uppercase;letter-spacing:.12em;color:var(--fg)}
.all:hover{background:var(--fg);color:var(--bg)}

/* Rubriques */
.card.secondary{margin-bottom:28px}
.card.secondary .img{aspect-ratio:21/9;border-radius:10px}
.card.secondary h3{font-size:clamp(26px,3.4vw,38px);line-height:1.1}
.card.secondary .excerpt{font-size:17px}

/* Newsletter */
.newsletter{margin-top:56px;padding:56px 0;text-align:center;background:var(--soft)}
.nl-title{margin:0;font:400 44px var(--serif);color:var(--fg)}
.newsletter form{display:flex;gap:8px;max-width:520px;margin:16px auto 0}
.newsletter input{flex:1;padding:12px 18px;border:1px solid var(--fg);border-radius:0;background:#fff;font:inherit;color:var(--fg)}
.newsletter button{padding:12px 24px;border:0;background:var(--accent);color:#fff;font:700 13px var(--sans);text-transform:uppercase;letter-spacing:.1em;cursor:pointer}
.newsletter button:hover{background:var(--fg)}
.nl-msg{min-height:1.5em;margin:10px 0 0;font-weight:700;color:var(--accent)}

/* Astro */
.signs{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.signs a{display:block;padding:14px 8px;border:1px solid var(--fg);text-align:center;font:700 14px var(--sans)}
.signs a:hover{background:var(--fg);color:var(--bg)}

@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr}
  .latest{padding-left:0;border-left:0}
  .cards.inline{grid-template-columns:1fr 1fr}
  .signs{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:640px){
  .cards.inline{grid-template-columns:1fr}
  .card.secondary .img{aspect-ratio:3/2}
  .newsletter form{flex-direction:column}
}
