:root {
  color-scheme: light;
  --deep: #0f2e24;
  --green: #167a4d;
  --lime: #a3e635;
  --paper: #f4f7f5;
  --ink: #17231e;
  --muted: #52615a;
  --line: #d5ded9;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); border-top: 6px solid var(--lime); }
a { color: #075f3b; text-underline-offset: .18em; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible { outline: 3px solid #ffb703; outline-offset: 3px; box-shadow: 0 0 0 6px var(--deep); }
.shell { width: min(100% - 32px, 860px); margin-inline: auto; }
.skip-link { position: fixed; z-index: 10; left: 16px; top: -80px; padding: 12px 16px; background: white; color: var(--deep); }
.skip-link:focus { top: 16px; }
.legal-header { background: var(--deep); color: white; }
.header-inner { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { color: white; font-size: 1.35rem; font-weight: 850; text-decoration: none; letter-spacing: -.04em; }
.brand span { color: var(--lime); }
.back-link { color: white; min-height: 44px; display: inline-flex; align-items: center; }
.legal-main { padding-block: clamp(44px, 8vw, 84px); }
.eyebrow { margin: 0 0 12px; color: var(--green); font-size: .78rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
h1, h2 { color: var(--deep); line-height: 1.1; }
h1 { margin: 0; max-width: 18ch; font-size: clamp(2.4rem, 8vw, 4.6rem); letter-spacing: -.055em; }
h2 { margin-top: 0; font-size: clamp(1.35rem, 3vw, 1.75rem); }
.lead { max-width: 62ch; margin: 20px 0 44px; color: var(--muted); font-size: clamp(1.08rem, 2.5vw, 1.28rem); line-height: 1.55; }
section { margin: 18px 0; padding: clamp(20px, 4vw, 34px); background: white; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 10px 34px rgba(15, 46, 36, .06); }
p, li, address { font-size: 1rem; line-height: 1.68; }
address { font-style: normal; }
li + li { margin-top: 8px; }
.legal-footer { padding: 30px 0 38px; color: #dbe8e1; background: var(--deep); }
.legal-footer nav { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.legal-footer a { color: white; min-height: 44px; display: inline-flex; align-items: center; }
.legal-footer p { margin: 18px 0 0; font-size: .9rem; }
@media (max-width: 420px) {
  .header-inner { align-items: flex-start; flex-direction: column; padding-block: 16px; gap: 8px; }
  section { border-radius: 12px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
@media (forced-colors: active) { section { border: 2px solid CanvasText; box-shadow: none; } }
