* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--white); font-family: var(--font-primary); line-height: 1.45; }
body.menu-open { overflow: hidden; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
.container { width: min(calc(100% - 80px), var(--container)); margin-inline: auto; }
.section { padding: 28px 0; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { line-height: 1.08; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 35px; padding: 0 20px; border-radius: 999px; font-size: 11px; font-weight: 800; transition: transform .2s ease, opacity .2s ease, background .2s ease; }
.button:hover { transform: translateY(-2px); opacity: .94; }
.button--primary { background: var(--kairos-green-dark); color: var(--white); }
.button--dark-outline { border: 1px solid rgba(255,255,255,.75); color: var(--white); background: rgba(0,0,0,.15); }
.text-link { font-size: 10px; font-weight: 800; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 20px; }

/* KAIROS — justification du texte courant sur l'ensemble du site.
   Exclut titres, sous-titres, menus, boutons, labels, citations et éléments de contrôle. */
main p:not(.section-kicker):not(.manifest-kicker):not(.manifest-eyebrow):not(.chapter-eyebrow):not(.proposal-kicker):not(.proposal-lead):not(.proposal-punchline):not(.proposal-statement):not(.project-hero__claim):not(.project-hero__eyebrow):not(.poll-title),
main li:not(.site-nav li):not(.proposal-nav li),
main .proposal-tab-content p,
main .proposal-tab-content li {text-align:justify;text-justify:inter-word;hyphens:auto;overflow-wrap:break-word;}
main h1,main h2,main h3,main h4,main h5,main h6,
main summary,main button,main label,main figcaption,main blockquote,
main .proposal-tab-title,main .proposal-tab-subtitle,main .proposal-breadcrumb,
main .section-kicker,main .manifest-kicker,main .manifest-eyebrow,
main .chapter-eyebrow,main .proposal-kicker,main .proposal-lead,
main .proposal-punchline,main .proposal-statement,main .poll-title,
main .project-hero__claim,main .project-hero__eyebrow {text-align:left;}
