:root{color-scheme:only light;--encre:#14213d;--texte:#2b2f38;--accent:#0b6e4f;--accent-fonce:#08513a;--doux:#f3f6f8;--bord:#dfe5ea}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,sans-serif;color:var(--texte);line-height:1.6;background:#fff}
.cadre{max-width:1080px;margin:0 auto;padding:0 1.25rem}
.skip{position:absolute;left:-999px;top:0;background:var(--encre);color:#fff;padding:.5rem 1rem;z-index:10}
.skip:focus{left:0}
a{color:var(--accent-fonce)}
a:focus-visible,.bouton:focus-visible{outline:3px solid #f2a900;outline-offset:2px}
.entete{position:sticky;top:0;background:#0f0f0f;border-bottom:1px solid #2a2a2a;z-index:5}
.entete-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:64px;flex-wrap:wrap}
.marque{display:flex;align-items:center;gap:.6rem;font-weight:700;color:#fff;text-decoration:none;font-size:1.15rem}
.marque img{width:48px;height:48px;border-radius:0}
nav ul{list-style:none;display:flex;gap:1.2rem;margin:0;padding:.4rem 0;flex-wrap:wrap}
nav a{text-decoration:none;color:#f2f2f2;font-weight:500}
nav a:hover{color:#f39a1e}
.hero{background:linear-gradient(135deg,#14213d,#0b6e4f);color:#fff;padding:5rem 0 4.5rem}
.hero h1{font-size:clamp(2rem,4.5vw,3.1rem);line-height:1.15;margin:.3rem 0 1rem;max-width:20ch}
.sur-titre{text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;opacity:.9;margin:0}
.chapo{font-size:1.15rem;max-width:62ch}
.bouton{display:inline-block;background:#fff;color:var(--encre);padding:.75rem 1.3rem;border-radius:8px;font-weight:600;text-decoration:none}
.bouton:hover{background:#e8f3ef}
.bloc{padding:4rem 1.25rem}
h2{color:var(--encre);font-size:clamp(1.5rem,3vw,2.1rem);margin:0 0 1.5rem}
h3{color:var(--encre);font-size:1.15rem;margin:0 0 .5rem}
.grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.25rem}
.carte{background:#fff;border:1px solid var(--bord);border-radius:12px;padding:1.4rem}
.fond-doux{background:var(--doux)}
.liste{padding-left:1.2rem}
.liste li{margin:.4rem 0}
.pied{border-top:1px solid var(--bord);padding:1.5rem 0;font-size:.9rem;color:#5a6270}