* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--color-paper); color: var(--color-ink); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.6; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-underline-offset: .2em; }
.content-shell { width: min(calc(100% - 2rem), var(--content-max)); max-width: var(--content-max); margin-inline: auto; }
.site-main { min-height: 55vh; padding-block: 3rem 5rem; }
.content-card { padding: clamp(1.5rem, 4vw, 3rem); border-radius: var(--radius-card); background: var(--color-surface); box-shadow: var(--shadow-soft); }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.screen-reader-text:focus { position: fixed; z-index: 9999; top: 1rem; left: 1rem; width: auto; height: auto; padding: .75rem 1rem; clip: auto; background: #fff; }

