:root {
  --navy: #0c2340;
  --teal: #14958f;
  --ink: #12263a;
  --muted: #5c7082;
  --line: #d5e0e6;
  --bg: #f4f7f8;
  --serif: "Iowan Old Style", Palatino, Georgia, serif;
  --sans: "Avenir Next", "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--ink); font-family: var(--sans); }
a { color: var(--teal); }
.layout { display: grid; grid-template-columns: 260px 1fr; min-height: 100vh; }
nav { background: white; border-right: 1px solid var(--line); padding: 24px 16px; position: sticky; top: 0; height: 100vh; overflow: auto; }
nav .brand { font-weight: 700; color: var(--navy); }
nav .brand span { display: block; font-weight: 500; color: var(--muted); font-size: 13px; }
nav a { display: block; padding: 8px 10px; border-radius: 999px; color: var(--ink); text-decoration: none; font-size: 14px; }
nav a.active, nav a:hover { background: #e7f6f5; color: var(--teal); }
main { padding: 40px 48px 80px; max-width: 920px; }
h1 { font-family: var(--serif); font-size: 42px; line-height: 1.1; margin: 0 0 12px; }
h2 { font-family: var(--serif); font-size: 28px; margin-top: 32px; }
.eyebrow { color: var(--teal); font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; }
p, li { line-height: 1.55; }
img.shot { width: 100%; border: 1px solid var(--line); border-radius: 16px; margin: 16px 0; background: white; break-inside: avoid; }
h1, h2 { break-after: avoid; }
table { width: 100%; border-collapse: collapse; background: white; }
th, td { text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--line); vertical-align: top; }
th { background: var(--navy); color: white; }
code, pre { font-family: ui-monospace, monospace; font-size: 13px; }
pre { background: var(--navy); color: white; padding: 16px; border-radius: 12px; overflow: auto; }
@media (max-width: 800px) {
  .layout { grid-template-columns: 1fr; }
  nav { position: static; height: auto; }
}
@media print {
  nav { display: none; }
  .layout { display: block; }
  main { max-width: none; padding: 0; }
  a { color: inherit; text-decoration: none; }
  img.shot { border-radius: 0; }
}
