/* Document pages share the public site's colors and static navigation. */
:root {
  --ground:#f4f7f7; --surface:#fff; --ink:#0f181c; --ink-soft:#53636b;
  --line:#dfe6e7; --accent:#0c8a7e; --accent-ghost:#0fa6971a;
}
@media (prefers-color-scheme:dark) {
  :root { --ground:#0a1013; --surface:#0f181c; --ink:#e9eff0;
    --ink-soft:#93a1a8; --line:#1d2a2f; --accent:#22d3c0; --accent-ghost:#22d3c01f; }
}
* { box-sizing:border-box; }
body { margin:0; background:var(--ground); color:var(--ink); font:17px/1.7 system-ui,-apple-system,"Segoe UI",sans-serif; }
.wrap { max-width:1104px; margin:0 auto; padding:0 24px; }
main { max-width:76ch; margin:0 auto; padding:24px 0 48px; }
h1,h2 { line-height:1.2; letter-spacing:-.02em; text-wrap:balance; }
h1 { margin:12px 0 20px; font-size:clamp(2rem,5vw,3.1rem); }
h2 { margin:0 0 14px; font-size:1.4rem; }
p,li { color:var(--ink-soft); }
p { margin:0 0 16px; }
strong { color:var(--ink); }
a { color:var(--accent); text-underline-offset:3px; overflow-wrap:anywhere; }
a:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.eyebrow { color:var(--accent); font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.updated { font-size:13px; }
.lead { font-size:1.15rem; }
.document-links { display:flex; flex-wrap:wrap; gap:12px 24px; margin:24px 0; }
section { padding:28px 0 12px; border-top:1px solid var(--line); }
.callout { padding:20px 24px; margin:24px 0; background:var(--surface); border:1px solid var(--line); border-radius:12px; }
.callout p:last-child { margin-bottom:0; }
li { margin-bottom:10px; }
ol,ul { padding-left:24px; }
@media print {
  :root { --ground:#fff; --ink:#000; --ink-soft:#222; --line:#ccc; --accent:#000; }
  .site-nav,.site-footer { display:none; }
  main { max-width:none; padding:0; }
  section,.callout { break-inside:avoid; }
}
