:root { color-scheme: light; --ink: #2d211a; --muted: #66584f; --paper: #fffdf8; --cream: #fff8e8; --plum: #3b2419; --teal: #17685d; --line: #cdbda9; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--cream); color: var(--ink); font: 17px/1.7 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
a { color: #075f55; }
a:focus-visible { outline: 3px solid #fff; box-shadow: 0 0 0 6px #2d211a; border-radius: 4px; }
.policy-header { padding: 18px clamp(20px, 6vw, 80px); background: var(--plum); }
.policy-header a { color: white; font-weight: 900; text-decoration: none; }
.policy-layout { width: min(920px, calc(100% - 32px)); margin: 36px auto 70px; padding: clamp(24px, 6vw, 64px); border: 2px solid var(--line); border-radius: 24px; background: var(--paper); box-shadow: 10px 10px 0 #d9c8ad; }
.eyebrow { margin: 0; color: var(--teal); font-size: .78rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
h1 { margin: .2em 0 .35em; font-size: clamp(2.25rem, 7vw, 4.6rem); line-height: 1; letter-spacing: -.05em; }
h2 { margin-top: 2rem; line-height: 1.2; }
.notice { padding: 18px; border-left: 6px solid #b6402b; border-radius: 8px; background: #fff0eb; }
.policy-meta { color: var(--muted); }
li + li { margin-top: .45rem; }
.policy-footer { padding: 24px; text-align: center; color: var(--muted); }
@media (max-width: 560px) { body { font-size: 16px; } .policy-layout { width: min(100% - 20px, 920px); margin-top: 10px; box-shadow: 5px 5px 0 #d9c8ad; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; } }
@media (forced-colors: active) { .policy-layout, .notice { border: 2px solid CanvasText; } }
