.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}:root{--bf-bleu: #000091;--bf-blanc: #FFFFFF;--bf-rouge: #E1000F;--bf-papier: #FAF8F4;--bf-papier-2: #F2EFE7;--bf-encre: #0A0A1F;--bf-encre-2: #1A1A2E;--bf-trait: rgba(10, 10, 31, .12);--bf-trait-2: rgba(10, 10, 31, .06);--bf-bleu-12: rgba(0, 0, 145, .12);--bf-bleu-08: rgba(0, 0, 145, .08);--bf-rouge-12: rgba(225, 0, 15, .12);--bf-rouge-08: rgba(225, 0, 15, .08);--bg: var(--bf-papier);--fg: var(--bf-encre);--fg-muted: rgba(10, 10, 31, .62);--fg-faint: rgba(10, 10, 31, .42);--accent: var(--bf-bleu);--signal: var(--bf-rouge);--hairline: var(--bf-trait);--font-display: "Fraunces", "Times New Roman", serif;--font-body: "Geist", "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--fs-mono-xs: 11px;--fs-mono-sm: 12px;--fs-body-sm: 14px;--fs-body: 16px;--fs-body-lg: 18px;--fs-h4: 22px;--fs-h3: 32px;--fs-h2: 48px;--fs-h1: 88px;--fs-display: 176px;--gutter: 24px;--col: 72px;--pad-x: 48px;--r-0: 0px;--r-1: 2px;--r-2: 6px;--r-pill: 999px;--shadow-1: 0 1px 0 var(--bf-trait);--shadow-2: 0 12px 32px -16px rgba(10,10,31,.18);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .18s;--dur: .32s;--dur-slow: .64s}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-body);color:var(--fg);background:var(--bg);font-feature-settings:"ss01","ss02","cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{display:block;max-width:100%}a{color:inherit}::selection{background:var(--bf-bleu);color:var(--bf-blanc)}.bf-tricolore{display:inline-flex;height:4px;width:36px;border:0;padding:0;background:linear-gradient(to right,var(--bf-bleu) 0 33.333%,var(--bf-blanc) 33.333% 66.666%,var(--bf-rouge) 66.666% 100%)}.bf-tricolore--thin{height:2px;width:24px}.bf-tricolore--wide{height:6px;width:64px}.bf-rule{border:0;border-top:1px solid var(--hairline);margin:0}.bf-rule--strong{border-top:1px solid var(--fg)}.bf-rule--rouge{border-top:2px solid var(--bf-rouge)}.bf-indice{font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:.04em;color:var(--fg-muted);text-transform:uppercase}.bf-section-mark{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--fg)}.bf-section-mark:before{content:"";width:18px;height:2px;background:var(--bf-rouge)}.bf-cta{display:inline-flex;align-items:center;gap:12px;padding:14px 22px;border-radius:var(--r-pill);background:var(--bf-encre);color:var(--bf-blanc);font-family:var(--font-body);font-size:var(--fs-body);font-weight:500;letter-spacing:-.01em;border:1px solid var(--bf-encre);cursor:pointer;transition:all var(--dur) var(--ease-out);text-decoration:none}.bf-cta:hover{background:var(--bf-bleu);border-color:var(--bf-bleu)}.bf-cta--rouge{background:var(--bf-rouge);border-color:var(--bf-rouge)}.bf-cta--rouge:hover{background:var(--bf-encre);border-color:var(--bf-encre)}.bf-cta--ghost{background:transparent;color:var(--fg);border-color:var(--fg)}.bf-cta--ghost:hover{background:var(--fg);color:var(--bf-blanc)}.bf-cta__dot{width:8px;height:8px;border-radius:999px;background:currentColor}.bf-display{font-family:var(--font-display);font-weight:350;font-size:var(--fs-display);line-height:.88;letter-spacing:-.04em;font-variation-settings:"opsz" 144,"SOFT" 30}.bf-display em{font-style:italic;font-variation-settings:"opsz" 144,"SOFT" 100;color:var(--bf-rouge)}.bf-h1{font-family:var(--font-display);font-weight:360;font-size:var(--fs-h1);line-height:.96;letter-spacing:-.035em;margin:0}.bf-h1 em{font-style:italic;color:var(--bf-rouge);font-family:var(--font-display)}.bf-h2{font-family:var(--font-display);font-weight:380;font-size:var(--fs-h2);line-height:1.02;letter-spacing:-.025em;margin:0}.bf-h2 em{font-style:italic;color:var(--bf-rouge);font-family:var(--font-display)}.bf-h3{font-family:var(--font-display);font-weight:400;font-size:var(--fs-h3);line-height:1.1;letter-spacing:-.02em;margin:0}.bf-h3 em{font-style:italic;color:var(--bf-rouge);font-family:var(--font-display)}.bf-mono{font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:.02em}.bf-photo{position:relative;background:repeating-linear-gradient(135deg,var(--bf-papier-2) 0 2px,transparent 2px 14px),var(--bf-papier);border:1px solid var(--hairline);overflow:hidden;color:var(--fg-faint)}.bf-photo--ink{background:repeating-linear-gradient(135deg,rgba(255,255,255,.05) 0 2px,transparent 2px 14px),var(--bf-encre);color:#ffffff80;border-color:#ffffff1a}.bf-photo__label{position:absolute;left:12px;bottom:10px;font-family:var(--font-mono);font-size:var(--fs-mono-xs);letter-spacing:.04em;text-transform:uppercase}.bf-photo__corner{position:absolute;right:12px;top:10px;font-family:var(--font-mono);font-size:var(--fs-mono-xs);color:inherit;opacity:.7}@keyframes bfMarquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes bfPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}}@keyframes bfBlink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes bfShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes bfGrow{0%{width:8%}to{width:84%}}.bf-glass{backdrop-filter:blur(14px) saturate(1.1);-webkit-backdrop-filter:blur(14px) saturate(1.1);background:#faf8f4b8;border:1px solid var(--hairline)}[data-mode=dark]{--bg: var(--bf-encre);--fg: var(--bf-papier);--fg-muted: rgba(250,248,244,.62);--fg-faint: rgba(250,248,244,.42);--hairline: rgba(250,248,244,.14);--bf-papier-2: rgba(255,255,255,.04)}[data-mode=dark] .bf-cta{background:var(--bf-papier);color:var(--bf-encre);border-color:var(--bf-papier)}[data-mode=dark] .bf-cta:hover{background:var(--bf-bleu);color:var(--bf-blanc);border-color:var(--bf-bleu)}[data-mode=dark] .bf-cta--rouge{background:var(--bf-rouge);color:var(--bf-blanc);border-color:var(--bf-rouge)}[data-mode=dark] .bf-cta--ghost{background:transparent;color:var(--fg);border-color:var(--fg)}[data-mode=dark] .bf-glass{background:#0a0a1f99}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
