:root {
  --bg: #0d1a1f;
  --bg-soft: #13262d;
  --card: #f4f6f6;
  --ink: #16242a;
  --ink-soft: #4a5b61;
  --teal: #19a7c4;
  --mint: #6fd3c0;
  --green: #3cb54a;
  --navy: #0c3f7c;
  --copper: #c98a5e;
  --text: #eef4f4;
  --radius: 10px;
  --max: 1120px;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; scroll-padding-top: 72px; }

body {
  font-family: "Segoe UI", Arial, Helvetica, sans-serif;
  background: var(--bg);
  color: var(--text);
  line-height: 1.6;
}

img { max-width: 100%; display: block; }
a { color: inherit; }

.wrap { width: min(var(--max), 100% - 32px); margin-inline: auto; }

.kicker {
  color: var(--mint);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .28em;
  text-transform: uppercase;
}

h1, h2, h3 { line-height: 1.15; }
h2 { font-size: clamp(1.8rem, 4vw, 2.8rem); margin: .5rem 0 0; }
h2::after {
  content: "";
  display: block;
  width: 64px;
  height: 4px;
  background: var(--copper);
  margin-top: 1rem;
}

.lead { max-width: 62ch; margin-top: 1.25rem; color: #cfdcdc; font-size: 1.05rem; }

.btn {
  display: inline-block;
  padding: .85rem 1.5rem;
  border-radius: 999px;
  font-weight: 600;
  text-decoration: none;
  background: var(--green);
  color: #07210c;
}
.btn:hover { filter: brightness(1.1); }
.btn.ghost { background: transparent; border: 2px solid var(--mint); color: var(--text); }

:focus-visible { outline: 3px solid var(--mint); outline-offset: 3px; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
