/*
 THEOCOURANT / CSS CHAPEAU
 Source de vérité des styles : tokens ci-dessous.
 La future interface d'édition devra modifier les valeurs autorisées, jamais injecter du CSS arbitraire.
*/
:root {
 --theme-color-primary:#172b3a;
 --theme-color-primary-hover:#29475c;
 --theme-color-accent:#e8b849;
 --theme-color-bg:#f5f7f8;
 --theme-color-surface:#ffffff;
 --theme-color-text:#172b3a;
 --theme-color-muted:#607686;
 --theme-color-border:#d9e0e5;
 --theme-color-warning-bg:#fff4e3;
 --theme-color-warning-border:#ecd0a0;
 --theme-font-family:system-ui,-apple-system,'Segoe UI',sans-serif;
 --theme-font-size:14px;
 --theme-radius-sm:5px;
 --theme-radius-md:9px;
 --theme-space-1:6px;
 --theme-space-2:10px;
 --theme-space-3:15px;
 --theme-space-4:22px;
 --theme-space-5:30px;
 --theme-content-width:1000px;
 --navy:var(--theme-color-primary);
 --accent:var(--theme-color-accent);
 --line:var(--theme-color-border);
 --bg:var(--theme-color-bg);
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--theme-color-bg);font:var(--theme-font-size)/1.5 var(--theme-font-family);color:var(--theme-color-text)}
header{background:var(--theme-color-primary);color:#fff;padding:var(--theme-space-3) 4vw;display:flex;justify-content:space-between;align-items:center}
.logo{font-size:18px;font-weight:650;letter-spacing:.03em}header span{opacity:.7;font-size:12px}
main{max-width:var(--theme-content-width);margin:40px auto;padding:0 var(--theme-space-4)}
.panel,article{padding:var(--theme-space-5);background:var(--theme-color-surface);border:1px solid var(--theme-color-border);border-radius:var(--theme-radius-md)}
article{margin:18px 0}
small{color:var(--theme-color-muted)}
h1{font-size:25px;margin:6px 0 12px}h2{font-size:17px}
p{max-width:760px}
a{color:var(--theme-color-primary)}
a.button,button{display:inline-block;border:1px solid var(--theme-color-primary);background:var(--theme-color-primary);color:#fff;padding:9px 14px;border-radius:var(--theme-radius-sm);font:inherit;text-decoration:none;cursor:pointer}
a.button:hover,button:hover{background:var(--theme-color-primary-hover)}
input,select{font:inherit;padding:8px;border:1px solid var(--theme-color-border);border-radius:var(--theme-radius-sm);max-width:100%}
.notice,.alert{margin:20px 0;padding:10px 14px;background:var(--theme-color-warning-bg);border:1px solid var(--theme-color-warning-border);border-radius:var(--theme-radius-sm)}
dl{display:grid;grid-template-columns:130px 1fr;gap:6px;margin:20px 0}
form{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
table{border-collapse:collapse;width:100%}
td,th{text-align:left;padding:12px 7px;border-bottom:1px solid var(--theme-color-border)}
@media(max-width:640px){main{margin:22px auto;padding:0 12px}.panel,article{padding:18px}dl{grid-template-columns:1fr}td,th{padding:8px 4px}}

.block-intro{font-size:1.2em;font-weight:500}.block-muted{color:var(--theme-color-muted)}.block-callout{background:var(--theme-color-warning-bg);border-left:3px solid var(--theme-color-accent);padding:12px}.cms-section>div{min-width:0}@media(max-width:700px){.cms-section{grid-template-columns:1fr!important}}
