@font-face {font-family: 'Cabinet Grotesk';src: url('/assets/fonts/cabinet-grotesk-400.woff2') format('woff2');font-weight: 400;font-style: normal;font-display: swap;}@font-face {font-family: 'Cabinet Grotesk';src: url('/assets/fonts/cabinet-grotesk-500.woff2') format('woff2');font-weight: 500;font-style: normal;font-display: swap;}@font-face {font-family: 'Cabinet Grotesk';src: url('/assets/fonts/cabinet-grotesk-700.woff2') format('woff2');font-weight: 700;font-style: normal;font-display: swap;}@font-face {font-family: 'Cabinet Grotesk';src: url('/assets/fonts/cabinet-grotesk-800.woff2') format('woff2');font-weight: 800;font-style: normal;font-display: swap;}@font-face {font-family: 'Satoshi';src: url('/assets/fonts/satoshi-400.woff2') format('woff2');font-weight: 400;font-style: normal;font-display: swap;}@font-face {font-family: 'Satoshi';src: url('/assets/fonts/satoshi-500.woff2') format('woff2');font-weight: 500;font-style: normal;font-display: swap;}@font-face {font-family: 'Satoshi';src: url('/assets/fonts/satoshi-700.woff2') format('woff2');font-weight: 700;font-style: normal;font-display: swap;}:root,[data-theme="light"] {--c-bg: var(--clr-fond-50);--c-bg-alt: var(--clr-fond-100);--c-bg-elevated: var(--clr-white);--c-bg-inverse: var(--clr-navy-900);--c-text: var(--clr-slate-800);--c-text-soft: var(--clr-slate-700);--c-text-faint: var(--clr-slate-600);--c-text-inv: var(--clr-fond-50);--c-accent: var(--clr-accent-600);--c-accent-h: var(--clr-accent-700);--c-accent-bg: var(--clr-accent-100);--c-primary: var(--clr-navy-900);--c-primary-h: var(--clr-navy-800);--c-primary-bg: var(--clr-navy-50);--c-border: var(--clr-fond-300);--c-border-h: var(--clr-slate-300);--c-border-soft: var(--clr-fond-200);--c-accent-text: var(--clr-accent-700);--c-link: var(--clr-navy-700);--c-link-h: var(--clr-accent-600);--c-focus: var(--clr-accent-500);}[data-theme="sombre"] {--c-bg: var(--clr-navy-950);--c-bg-alt: var(--clr-navy-900);--c-bg-elevated: var(--clr-navy-800);--c-bg-inverse: var(--clr-navy-900);--c-text: var(--clr-navy-50);--c-text-soft: var(--clr-navy-200);--c-text-faint: var(--clr-navy-300);--c-text-inv: var(--clr-navy-50);--c-accent: var(--clr-accent-500);--c-accent-h: var(--clr-accent-400);--c-accent-bg: rgba(var(--clr-accent-500-rgb), 0.15);--c-primary: var(--clr-navy-50);--c-primary-h: var(--clr-white);--c-primary-bg: rgba(var(--clr-navy-900-rgb), 0.4);--c-border: var(--clr-navy-700);--c-border-h: var(--clr-navy-600);--c-border-soft: var(--clr-navy-800);--c-accent-text: var(--clr-accent-400);--c-link: var(--clr-navy-200);--c-link-h: var(--clr-accent-400);--c-focus: var(--clr-accent-400);}*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }html {font-size: 100%;-webkit-text-size-adjust: 100%;scroll-behavior: smooth;hanging-punctuation: first last;}body {font-family: var(--font-body);font-size: var(--text-base);font-weight: var(--font-regular);line-height: var(--leading-relaxed);color: var(--c-text);background-color: var(--c-bg);-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}h1, h2, h3, h4, h5, h6 {font-family: var(--font-heading);font-weight: var(--font-bold);line-height: var(--leading-tight);color: var(--c-primary);text-wrap: balance;}h1 { font-size: clamp(var(--text-3xl), 5vw, var(--text-5xl)); }h2 { font-size: clamp(var(--text-2xl), 3.5vw, var(--text-4xl)); }h3 { font-size: clamp(var(--text-xl), 2.5vw, var(--text-2xl)); }h4 { font-size: var(--text-xl); }h5 { font-size: var(--text-lg); }h6 { font-size: var(--text-base); }p { max-width: 68ch; text-wrap: pretty; }p + p { margin-top: var(--sp-4); }a {color: var(--c-link);text-decoration: underline;text-underline-offset: 0.2em;transition: color var(--t-fast);}a:hover { color: var(--c-link-h); }ul, ol { list-style: none; }img, svg { display: block; max-width: 100%; height: auto; }button { font-family: var(--font-body); cursor: pointer; border: none; background: none; }input, textarea, select { font-family: var(--font-body); font-size: var(--text-base); }strong { font-weight: var(--font-bold); }em { font-style: italic; }:focus-visible {outline: 2px solid var(--c-focus);outline-offset: 3px;border-radius: var(--r-sm);}::selection {background-color: rgba(var(--clr-accent-500-rgb), 0.2);color: var(--c-text);}.lien-evitement {position: absolute;top: -100%;left: var(--sp-4);z-index: 9999;padding: var(--sp-3) var(--sp-6);background: var(--c-primary);color: var(--c-text-inv);font-weight: var(--font-semibold);border-radius: var(--r-md);text-decoration: none;transition: top var(--t-fast);}.lien-evitement:focus { top: var(--sp-4); }.noscript-avis {padding: var(--sp-4);background: var(--clr-warning-50);border-bottom: 2px solid var(--clr-warning-600);color: var(--clr-slate-800);text-align: center;font-size: var(--text-sm);}details { border-bottom: 1px solid var(--c-border); }summary {cursor: pointer;padding: var(--sp-5) 0;font-weight: var(--font-semibold);font-size: var(--text-base);list-style: none;display: flex;justify-content: space-between;align-items: center;gap: var(--sp-4);color: var(--c-primary);user-select: none;transition: color var(--t-fast);}summary::-webkit-details-marker { display: none; }summary:hover { color: var(--c-accent); }summary::after {content: '+';font-size: var(--text-xl);font-weight: var(--font-regular);color: var(--c-accent);flex-shrink: 0;transition: transform var(--t-normal);}details[open] summary::after { transform: rotate(45deg); }details > div {padding-bottom: var(--sp-5);color: var(--c-text-soft);line-height: var(--leading-relaxed);}details > div p + p { margin-top: var(--sp-3); }table { border-collapse: collapse; width: 100%; }th, td {padding: var(--sp-3) var(--sp-4);text-align: left;border-bottom: 1px solid var(--c-border);font-size: var(--text-sm);}th {font-weight: var(--font-semibold);color: var(--c-text);background: var(--c-bg-alt);}@supports (scrollbar-width: thin) {* { scrollbar-width: thin; scrollbar-color: var(--c-border-h) transparent; }}::-webkit-scrollbar { width: 6px; height: 6px; }::-webkit-scrollbar-track { background: transparent; }::-webkit-scrollbar-thumb { background: var(--c-border-h); border-radius: var(--r-full); }hr {border: none;border-top: 1px solid var(--c-border);margin: var(--sp-8) 0;}