/* Présentation sous la carte (/fr/carte, /en/map…, src/site/carte.js) : la carte garde l'écran, moins le bandeau qui y mène. */
html:has(#carte-info), html:has(#carte-info) body { height: auto; scrollbar-width: none; }
html:has(#carte-info) { scroll-behavior: smooth; }
html:has(#carte-info) body > #root { height: calc(100vh - 44px); height: calc(100dvh - 44px); }
.ci { background: var(--surface, #fff); color: var(--ink, #1a1830); font-family: Barlow, system-ui, sans-serif; }
.ci-more { display: flex; align-items: center; justify-content: center; height: 44px; font-size: 15px; font-weight: 600; color: var(--primary, #4b30c2); text-decoration: none; border-top: 1px solid var(--line, #e4e2f0); }
.ci-more::after { content: ""; width: 7px; height: 7px; margin: -3px 0 0 8px; border: solid currentColor; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.ci-body { max-width: 760px; margin: 0 auto; padding: 28px 20px 56px; line-height: 1.55; font-size: 17px; }
.ci-body h1 { margin: 0 0 12px; font-size: 32px; line-height: 1.15; }
.ci-body h2 { margin: 28px 0 8px; font-size: 21px; }
.ci-body h2 small { font-size: 14px; font-weight: 400; opacity: .7; }
.ci-body p { margin: 0 0 12px; }
.ci-body a { color: var(--primary, #4b30c2); }
.ci-links { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.ci-links a { display: inline-block; padding: 7px 12px; border: 1px solid var(--line, #e4e2f0); border-radius: 9999px; font-size: 15px; text-decoration: none; }
.ci-next { margin-top: 28px; font-size: 15px; }
