:root {
  --navy: #0a1f44;
  --teal: #00b2a9;
  --ink: #0a1f44;
  --muted: #4a5568;
  --soft: #f4f8fb;
  --border: #d8e2ee;
  --canvas: #ffffff;
  --font: "Nunito", "Segoe UI", system-ui, sans-serif;
}

* { box-sizing: border-box; }
html, body {
  margin: 0;
  padding: 0;
  background: var(--soft);
  color: var(--ink);
  font-family: var(--font);
  line-height: 1.55;
}

a { color: #007a72; }
a:hover { color: var(--teal); }

.top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 24px;
  background: var(--navy);
  color: #fff;
}
.brand {
  color: #fff;
  text-decoration: none;
  font-weight: 800;
  font-size: 1.25rem;
  letter-spacing: -0.02em;
}
.top nav {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
}
.top nav a {
  color: rgba(255,255,255,0.85);
  text-decoration: none;
  font-size: 0.92rem;
  font-weight: 600;
}
.top nav a:hover { color: #fff; }

.doc {
  max-width: 760px;
  margin: 28px auto 64px;
  padding: 32px 28px;
  background: var(--canvas);
  border: 1px solid var(--border);
  border-radius: 20px;
  box-shadow: 0 10px 28px rgba(10, 31, 68, 0.06);
}
.eyebrow {
  margin: 0 0 8px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.75rem;
  font-weight: 800;
  color: var(--teal);
}
h1 {
  margin: 0 0 8px;
  font-size: clamp(1.7rem, 3vw, 2.2rem);
  line-height: 1.15;
  letter-spacing: -0.02em;
}
.meta {
  margin: 0 0 24px;
  color: var(--muted);
  font-size: 0.95rem;
}
h2 {
  margin: 28px 0 10px;
  font-size: 1.15rem;
}
p, li { color: #24324a; }
ul, ol { padding-left: 1.2rem; }
.footer-note {
  margin-top: 36px;
  padding-top: 18px;
  border-top: 1px solid var(--border);
  color: var(--muted);
  font-size: 0.95rem;
}

@media (max-width: 720px) {
  .top { flex-direction: column; align-items: flex-start; }
  .doc { margin: 16px 12px 48px; padding: 24px 18px; }
}
