:root { color-scheme: light; --background: #f7f8fa; --foreground: #181c25; --card: #fff; --border: #e2e5ea; --muted-foreground: #657080; --primary: #2563eb; --primary-foreground: #fff; --font-sans: "General Sans", "Inter", Arial, sans-serif; --radius: .5rem; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { display: flex; flex-direction: column; min-width: 320px; min-height: 100vh; margin: 0; color: var(--foreground); background: var(--background); font-family: var(--font-sans); line-height: 1.65; }
a { color: inherit; }
a:hover { color: var(--primary); }
.skip-link { position: fixed; top: -100px; left: 16px; z-index: 100; padding: 10px 14px; color: var(--primary-foreground); background: var(--primary); border-radius: var(--radius); }
.skip-link:focus { top: 12px; }
/* Header/footer use the same frozen shared CSS as the SPA: /anu-enhancements.css. */
.anu-top-chrome { flex: 0 0 auto; }
.anu-header-app-cta { margin-left: auto; }
.page-shell { width: 100%; max-width: 960px; margin: 0 auto; padding: 32px 24px 48px; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 16px; color: var(--muted-foreground); font-size: .88rem; }
.breadcrumbs a { text-decoration: none; }
.legal-card, .privacy-card { overflow: hidden; border: 1px solid var(--border); border-radius: var(--radius); background: var(--card); box-shadow: 0 2px 5px hsl(222 20% 12% / .04); }
.article-header { padding: 36px 42px 30px; border-bottom: 1px solid var(--border); background: linear-gradient(135deg, hsl(221 72% 45% / .10), transparent 62%); }
.eyebrow { margin: 0 0 8px; color: var(--primary); font-size: .74rem; font-weight: 700; letter-spacing: .12em; }
h1 { margin: 0; font-size: clamp(2rem, 4.5vw, 2.75rem); line-height: 1.15; letter-spacing: -.035em; }
.lead { max-width: 720px; margin: 17px 0 0; color: hsl(222 12% 28%); font-size: 1.07rem; }
.updated { margin: 18px 0 0; color: var(--muted-foreground); font-size: .88rem; }
section { padding: 0 42px; }
section:first-of-type { padding-top: 28px; }
section:last-of-type { padding-bottom: 30px; }
h2 { margin: 30px 0 10px; font-size: 1.22rem; line-height: 1.3; }
p { margin: 0 0 13px; }
ul { margin: 0 0 13px; padding-left: 22px; }
li + li { margin-top: 7px; }
.source-note { margin: 12px 42px 38px; padding: 15px 17px; color: hsl(222 20% 24%); border: 1px solid hsl(221 72% 45% / .24); border-radius: var(--radius); background: hsl(221 72% 45% / .07); font-size: .92rem; }
.anu-bottom-footer { width: 100%; margin-top: auto; }
@media (max-width: 820px) { .anu-header-app-cta { width: 100%; order: 4; } }
@media (max-width: 640px) { .page-shell { padding: 22px 14px 34px; } .article-header, section { padding-left: 22px; padding-right: 22px; } .article-header { padding-top: 27px; } .source-note { margin: 10px 22px 26px; } }
