/* ── Typography ── */
h1,
h2,
h3,
h4,
h5 {
  font-family: "Montserrat", sans-serif;
  line-height: 1.25;
  color: var(--navy);
}
h1 {
  font-size: clamp(1.8rem, 3.5vw, 2.8rem);
  font-weight: 700;
}
h2 {
  font-size: clamp(1.4rem, 2.5vw, 2rem);
  font-weight: 700;
}
h3 {
  font-size: clamp(1rem, 1.8vw, 1.25rem);
  font-weight: 600;
}
p {
  font-size: 0.96rem;
  color: #4a5568;
}

/* ── Skip Link ── */
.skip-link {
  position: absolute;
  top: -40px;
  left: 6px;
  background: var(--navy);
  color: #fff;
  padding: 8px;
  text-decoration: none;
  z-index: 1000;
  border-radius: var(--radius);
}
.skip-link:focus {
  top: 6px;
}

/* ── Labels / Headings ── */
.label {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--green);
  margin-bottom: 6px;
  display: block;
}
.section-heading {
  margin-bottom: 12px;
}
.section-sub {
  font-size: 0.95rem;
  color: var(--gray);
  max-width: 600px;
  margin-bottom: 36px;
}
