/* Shared styles for the legal pages. Document treatment — same tokens as the
   landing page, but optimized for reading rather than persuasion. */
:root {
  --bg: #EDF3F1; --surface: #FFFFFF; --ink: #0D1E1B; --muted: #4C605C;
  --line: #D5E1DE; --teal: #0E7C7B; --coral: #FF6B5C;
  --warn-bg: #FFF4F1; --warn-line: #FFC9C0;
  --font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, sans-serif;
  --font-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", system-ui, sans-serif;
  --font-mono: ui-monospace, "SF Mono", "SFMono-Regular", Menlo, monospace;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg: #071211; --surface: #0D1F1D; --ink: #E9F2F0; --muted: #90A8A4;
    --line: #1B2F2C; --teal: #2FC9C4; --coral: #FF7A6B;
    --warn-bg: #23100D; --warn-line: #5C2A23;
  }
}
:root[data-theme="light"] {
  --bg: #EDF3F1; --surface: #FFFFFF; --ink: #0D1E1B; --muted: #4C605C;
  --line: #D5E1DE; --teal: #0E7C7B; --coral: #FF6B5C;
  --warn-bg: #FFF4F1; --warn-line: #FFC9C0;
}
:root[data-theme="dark"] {
  --bg: #071211; --surface: #0D1F1D; --ink: #E9F2F0; --muted: #90A8A4;
  --line: #1B2F2C; --teal: #2FC9C4; --coral: #FF7A6B;
  --warn-bg: #23100D; --warn-line: #5C2A23;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0; background: var(--bg); color: var(--ink);
  font-family: var(--font-sans); line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
.wrap { width: 100%; max-width: 760px; margin-inline: auto; padding-inline: 24px; }

nav { border-bottom: 1px solid var(--line); background: var(--surface); }
.nav-row { display: flex; align-items: center; justify-content: space-between; height: 64px; gap: 16px; }
.brand { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; color: var(--ink); }
.brand-mark { width: 28px; height: 28px; border-radius: 7px; display: block; flex: none; }
.brand-word { font-family: var(--font-display); font-weight: 700; font-size: 18px; letter-spacing: -.02em; }
.brand-word b { color: var(--teal); font-weight: 700; }
.brand-word span { font-weight: 500; }
.nav-links { display: flex; gap: 18px; font-size: 14.5px; }
.nav-links a { color: var(--muted); text-decoration: none; }
.nav-links a:hover, .nav-links a[aria-current="page"] { color: var(--teal); }

main { padding: 56px 0 80px; }
.eyebrow {
  font-family: var(--font-mono); font-size: 12px; letter-spacing: .16em;
  text-transform: uppercase; color: var(--teal); margin: 0;
}
h1 {
  font-family: var(--font-display); font-weight: 700;
  font-size: clamp(32px, 5.5vw, 46px); line-height: 1.05; letter-spacing: -.03em;
  margin: 14px 0 0; text-wrap: balance;
}
.effective { font-family: var(--font-mono); font-size: 13px; color: var(--muted); margin: 14px 0 0; }
.intro { font-size: 18px; color: var(--muted); margin: 24px 0 0; }

h2 {
  font-family: var(--font-display); font-weight: 700; font-size: 22px;
  letter-spacing: -.02em; margin: 46px 0 0; padding-top: 18px;
  border-top: 1px solid var(--line);
}
h3 { font-family: var(--font-display); font-size: 17px; margin: 26px 0 0; font-weight: 650; }
p, li { font-size: 16.5px; }
p { margin: 14px 0 0; }
ul { margin: 14px 0 0; padding-left: 22px; }
li { margin: 7px 0; }
a { color: var(--teal); }
strong { font-weight: 650; }

.summary {
  background: var(--surface); border: 1px solid var(--line);
  border-radius: 12px; padding: 22px 24px; margin-top: 30px;
}
.summary h2 { margin: 0; border: 0; padding: 0; font-size: 17px; }
.summary ul { margin-top: 12px; }
.summary li { font-size: 16px; }

.callout {
  background: var(--warn-bg); border: 1px solid var(--warn-line);
  border-radius: 12px; padding: 18px 22px; margin-top: 22px;
}
.callout p:first-child { margin-top: 0; }

.contact-card {
  background: var(--surface); border: 1px solid var(--line);
  border-radius: 12px; padding: 20px 22px; margin-top: 22px;
  font-size: 16px;
}

footer { border-top: 1px solid var(--line); background: var(--surface); padding: 30px 0 46px; }
.foot { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; align-items: center; }
.foot a { color: var(--muted); text-decoration: none; font-size: 14.5px; }
.foot a:hover { color: var(--teal); }
.foot-legal { font-family: var(--font-mono); font-size: 12px; color: var(--muted); margin: 0; }

:focus-visible { outline: 2px solid var(--teal); outline-offset: 3px; border-radius: 3px; }
