:root {
  color-scheme: light;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #24362e;
  background: #faf8f2;
  font-size: 100%;
  line-height: 1.65;
  -webkit-text-size-adjust: 100%;
}

* { box-sizing: border-box; }
body { margin: 0; overflow-wrap: anywhere; }
a { color: #205c43; text-underline-offset: 0.2em; }
a:hover { text-decoration-thickness: 0.15em; }
a:focus-visible { outline: 3px solid #976013; outline-offset: 4px; border-radius: 2px; }
p, ul { margin: 0 0 1rem; }
p:last-child, ul:last-child { margin-bottom: 0; }
h1, h2, h3 { color: #173c2b; line-height: 1.25; }
h1 { font-size: clamp(2.25rem, 7vw, 3.5rem); letter-spacing: -0.035em; margin: 0 0 1rem; }
h2 { font-size: 1.5rem; margin: 0 0 1rem; }
h3 { font-size: 1.125rem; margin: 1.5rem 0 0.75rem; }
ul { padding-left: 1.5rem; }
li + li { margin-top: 0.5rem; }
code { font-size: 1rem; }
a, code { overflow-wrap: anywhere; }
section { scroll-margin-top: 1.5rem; }
.wrap { width: min(100% - 2.5rem, 49rem); margin-inline: auto; }
.skip-link { position: absolute; top: 0.75rem; left: 1rem; padding: 0.75rem 1rem; background: white; transform: translateY(-180%); z-index: 1; }
.skip-link:focus { transform: none; }
.site-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-block: 1.75rem; border-bottom: 1px solid #d4dcd2; }
.site-header > div { min-width: 0; max-width: 100%; }
.wordmark { font-size: 1.5rem; font-weight: 750; letter-spacing: -0.035em; margin: 0; }
.tagline { color: #526054; margin: 0.15rem 0 0; }
.support-link { padding-block: 0.65rem; white-space: nowrap; }
.intro { padding-block: 3.25rem 2rem; }
.eyebrow { color: #526054; font-weight: 650; margin-bottom: 0.75rem; }
.summary { font-size: 1.125rem; max-width: 39rem; }
.version { color: #526054; }
.scope-note { padding: 1.25rem 1.5rem; border: 1px solid #cdaa68; border-left: 4px solid #91601d; border-radius: 8px; background: #fff2d6; }
.scope-note h2 { color: #604315; font-size: 1.125rem; }
.contents { display: flex; flex-wrap: wrap; gap: 0.35rem 1.5rem; padding-block: 1.5rem; margin-bottom: 0.5rem; }
.contents a { display: inline-block; padding-block: 0.5rem; }
.policy section { padding-block: 2rem; border-top: 1px solid #d4dcd2; }
.pending { margin-top: 1.25rem; padding: 1rem 1.25rem; background: #f1eee4; border-left: 3px solid #89784d; }
.pending h3 { margin-top: 0; }
.site-footer { display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; justify-content: space-between; padding-block: 1.75rem 2.5rem; margin-top: 1rem; border-top: 1px solid #d4dcd2; }
.site-footer p { margin: 0; }

@media (max-width: 30rem) {
  .site-header { align-items: flex-start; flex-direction: column; gap: 0.5rem; }
  .intro { padding-top: 2.25rem; }
  .scope-note { padding: 1rem; }
  .pending { padding: 1rem; }
}

@media print {
  :root { color: #000; background: #fff; }
  .wrap { width: 100%; }
  .skip-link, .contents, .support-link { display: none; }
  .intro { padding-top: 1.5rem; }
  .policy section { break-inside: avoid; }
  .scope-note, .pending { background: transparent; border-color: #666; }
}
