.year-hero{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:620px;padding:clamp(110px,14vw,180px) max(24px,calc((100% - 1240px)/2)) 76px;color:#fff;overflow:hidden}.year-hero>img,.year-hero__shade{position:absolute;inset:0;width:100%;height:100%}.year-hero>img{z-index:-2;object-fit:cover}.year-hero__shade{z-index:-1;background:linear-gradient(90deg,rgba(8,24,61,.96) 0%,rgba(8,24,61,.78) 48%,rgba(8,24,61,.22) 100%)}.year-hero__content{max-width:780px}.year-hero__year{margin:.1rem 0;font-size:clamp(3.5rem,9vw,7rem);font-weight:800;line-height:.9;color:var(--sky)}.year-hero h1{margin:.8rem 0 1rem;font-size:clamp(2.3rem,5vw,4.8rem);line-height:1.02}.year-hero__content>p:last-child{max-width:720px;margin-bottom:0;font-size:1.1rem;line-height:1.65}
.year-nav{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:18px max(24px,calc((100% - 1240px)/2));border-bottom:1px solid rgba(10,45,65,.12);background:#fff}.year-nav>span{color:var(--muted);font-size:.86rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.year-nav div{display:flex;gap:.5rem}.year-nav a{padding:.55rem .9rem;border-radius:999px;color:var(--navy);font-weight:800;text-decoration:none}.year-nav a:hover,.year-nav a.active{background:var(--navy);color:#fff}
.year-summary{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(480px,1.1fr);gap:clamp(2rem,7vw,7rem);align-items:center}.year-summary h2{margin-bottom:0}.year-summary__facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.year-summary__facts p{display:flex;flex-direction:column;margin:0;padding:1.4rem;border-left:2px solid var(--sky)}.year-summary__facts strong{color:var(--navy);font-size:clamp(1.7rem,3vw,2.6rem)}.year-summary__facts span{color:var(--muted);font-size:.86rem;line-height:1.45}.year-intro{width:100%;max-width:none;margin:0;text-align:center}.year-intro__content{width:100%;max-width:1000px;margin-inline:auto;text-align:center}.year-intro__content h2{margin-inline:auto}.year-intro__content>p:last-child{max-width:760px;margin-inline:auto;color:var(--muted)}
.action-stack{display:grid;gap:2rem}.action-pair,.funding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.action-project{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(360px,1.18fr);overflow:hidden;border:1px solid rgba(10,45,65,.1);border-radius:18px;background:#fff;box-shadow:0 16px 45px rgba(10,45,65,.06)}.action-pair .action-project,.funding-grid .action-project{grid-template-columns:1fr;align-content:start}.action-project figure{position:relative;min-height:300px;margin:0;background:var(--navy);overflow:hidden}.action-project figure img{width:100%;height:100%;object-fit:cover}.action-project figcaption{position:absolute;right:12px;bottom:12px;max-width:calc(100% - 24px);padding:.4rem .6rem;border-radius:5px;background:rgba(8,24,61,.82);color:#fff;font-size:.7rem}.action-project__body{display:flex;flex-direction:column;padding:clamp(1.5rem,3vw,2.5rem)}.action-project__body h2{margin:.85rem 0;font-size:clamp(1.55rem,3vw,2.4rem)}.action-project__body>p{color:var(--muted)}.action-project__meta{display:flex;align-items:center;justify-content:space-between;gap:1rem}.action-project__meta>span{color:var(--blue);font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.11em}.status{padding:.38rem .65rem;border-radius:999px;font-size:.72rem;white-space:nowrap}.status--done{background:#e1f4eb;color:#176144}.status--progress{background:#e4f2fa;color:#125d7d}.status--funding{background:#fff0ce;color:#75500b}.status--pending{background:#f4e8e4;color:#81402c}.action-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:auto 0 0;padding:1.2rem 0 0;list-style:none}.action-facts li{display:flex;flex-direction:column;padding-top:.8rem;border-top:2px solid var(--sky)}.action-facts strong{color:var(--navy);font-size:1.3rem}.action-facts span{color:var(--muted);font-size:.78rem;line-height:1.35}.action-clarification{margin-top:1rem;padding:1rem;border-left:3px solid var(--gold);background:var(--cream);color:var(--navy)!important;font-size:.9rem}.funding-grid{padding-top:100px;padding-bottom:100px}.funding-grid .action-project__body{min-height:360px}.year-open-projects{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(400px,1.2fr);gap:1rem 6rem;align-items:start}.year-open-projects .eyebrow{grid-column:1/-1}.year-open-projects h2,.year-open-projects p{margin-top:0}.evidence-note{display:flex;align-items:flex-start;gap:2rem;padding-top:32px;padding-bottom:32px;border-top:1px solid rgba(10,45,65,.12);border-bottom:1px solid rgba(10,45,65,.12);background:#fff}.evidence-note strong{min-width:240px;color:var(--navy)}.evidence-note p{margin:0;color:var(--muted);font-size:.9rem}
main>.business-cta{padding-inline:24px;margin:2rem auto}
.year-hero h1{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.34)}.year-hero__content>p:last-child{color:#fff;text-shadow:0 1px 10px rgba(0,0,0,.3)}.action-facts strong,.year-summary__facts strong{white-space:nowrap}.year-summary__facts--two{grid-template-columns:repeat(2,minmax(180px,1fr))}
@media(max-width:940px){.year-hero{min-height:560px}.year-summary{grid-template-columns:1fr}.action-project{grid-template-columns:1fr}.action-pair,.funding-grid{gap:1.25rem}.year-open-projects{grid-template-columns:1fr}.year-open-projects .eyebrow{grid-column:auto}}
@media(max-width:700px){.year-nav{align-items:flex-start;flex-direction:column;gap:.75rem}.year-nav div{width:100%;justify-content:space-between}.year-nav a{padding:.5rem .7rem}.year-summary__facts,.year-summary__facts--two,.action-pair,.funding-grid{grid-template-columns:1fr}.year-summary__facts{gap:.5rem}.year-hero{min-height:590px;padding-bottom:54px}.year-hero__shade{background:linear-gradient(90deg,rgba(8,24,61,.94),rgba(8,24,61,.58))}.action-project figure{min-height:230px}.action-facts{grid-template-columns:1fr}.action-facts strong{white-space:normal}.evidence-note{flex-direction:column;gap:.5rem}.evidence-note strong{min-width:0}.funding-grid{padding-top:70px;padding-bottom:70px}}

/* Ajustements de validation présidentielle — cartes annuelles */
.action-project,.action-project__body,.action-project__meta,.action-facts li{min-width:0}
.action-project__body h2,.action-project__body p,.action-project__meta>span,.action-facts span{overflow-wrap:anywhere}
.status{max-width:100%;white-space:normal;text-align:center;line-height:1.25}
.action-pair .action-project figure,.funding-grid .action-project figure{min-height:0;aspect-ratio:16/10}
.action-pair .action-project figure img,.funding-grid .action-project figure img{position:absolute;inset:0}
.action-pair .action-facts,.funding-grid .action-facts{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.action-facts strong,.year-summary__facts strong{font-size:clamp(1.05rem,2vw,1.55rem);white-space:normal;overflow-wrap:normal}
.year-summary,.year-intro,.action-stack,.funding-grid,.year-open-projects{padding-top:clamp(3.5rem,6vw,4.75rem);padding-bottom:clamp(3.5rem,6vw,4.75rem)}
@media(max-width:700px){.action-pair .action-project figure,.funding-grid .action-project figure{min-height:230px;aspect-ratio:auto}.action-pair .action-facts,.funding-grid .action-facts{grid-template-columns:1fr}.funding-grid{padding-top:54px;padding-bottom:54px}}

/* Passe annuelle — alignement des médias et blocs compacts */
.year-intro{padding-top:clamp(2rem,3vw,2.75rem);padding-bottom:clamp(2rem,3vw,2.75rem)}
.year-intro__content>.eyebrow{display:block;width:100%;text-align:center}
.year-intro:not(.year-intro--2026){padding-top:2rem;padding-bottom:2rem}
.year-intro:not(.year-intro--2026)+.action-stack{padding-top:2rem}
.action-pair{align-items:stretch}
.action-pair .action-project{grid-template-rows:auto 1fr}
.action-pair .action-project__body{height:100%}
.action-project--split-copy{grid-template-columns:1fr}
.action-project--split-copy .action-project__body{display:grid;grid-template-columns:minmax(240px,2fr) minmax(0,3fr);grid-template-rows:auto 1fr;gap:.5rem clamp(2rem,5vw,4.5rem);align-items:start}
.action-project--split-copy .action-project__meta{grid-column:1;grid-row:1}
.action-project--split-copy h2{grid-column:1;grid-row:2;margin-bottom:0}
.action-project--split-copy .action-project__body>p{grid-column:2;grid-row:1/3;margin:0;align-self:center}
@media(max-width:940px){.action-project--split-copy .action-project__body{display:flex}.action-project--split-copy h2,.action-project--split-copy .action-project__body>p{margin-bottom:1rem}}
