:root {
  --bg: #151515;
  --text: #f3f0e9;
  --muted-strong: #c8c3ba;
  --border: #343434;
  --border-strong: #45413c;
  --accent: #d8753b;
  color-scheme: dark;
}

[data-theme="light"] {
  --bg: #f3efe7;
  --text: #1b1b1a;
  --muted-strong: #46423d;
  --border: #d3ccc1;
  --border-strong: #bdb4a7;
  --accent: #d8753b;
  color-scheme: light;
}

*, *::before, *::after { box-sizing: border-box; }
body { 
  font-family: system-ui, -apple-system, sans-serif; 
  background: var(--bg); 
  color: var(--text); 
  max-width: 820px; 
  margin: 0 auto; 
  padding: 32px 20px; 
  font-size: 1rem; 
  line-height: 1.8; 
  overflow-wrap: anywhere; 
}
header, footer { padding-block: 16px; border-bottom: 1px solid var(--border-strong); }
main { padding-block: 48px; }
h1 { font-size: clamp(2rem, 7vw, 3.5rem); line-height: 1.15; letter-spacing: -0.03em; color: var(--text); }
h2 { font-size: 1.25rem; color: var(--text); }
section { margin-top: 40px; padding-top: 20px; border-top: 1px solid var(--border); }
p { color: var(--muted-strong); }
a { color: var(--accent); text-underline-offset: 4px; display: inline-block; padding-block: 8px; }
a:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
address { display: flex; flex-direction: column; align-items: flex-start; font-style: normal; }
.eyebrow { color: var(--accent); }
.notice { padding-left: 20px; border-left: 2px solid var(--accent); }
