.skip-link {
  position: fixed;
  left: -9999px;
  top: 70px;
  z-index: 200;
}
.skip-link:focus { left: var(--space-4); background: var(--color-bg); padding: var(--space-3); }
.contract-hero { padding-bottom: var(--space-12); }
.contract-hero .page-title { max-width: 17ch; }
.contract-hero .page-subtitle { max-width: 72ch; }
.contract-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-7);
}
.contract-grid {
  list-style: none;
  padding: 0;
  margin: var(--space-8) 0 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr));
  gap: var(--space-4);
}
.contract-grid li, .contract-card, .contract-contact {
  padding: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  background: var(--color-surface);
}
.contract-grid li { line-height: 1.5; font-weight: 600; }
.contract-card h3 { font-size: var(--text-lg); margin-bottom: var(--space-3); }
.contract-card p, .contract-reading p, .contract-contact p:not(.section-label) {
  color: var(--color-text-muted);
  line-height: 1.7;
}
.contract-reading { max-width: 920px; }
.contract-reading h2, .contract-contact h2, .contract-grid + h2 { margin-bottom: var(--space-5); }
.contract-band { background: var(--color-surface-2); }
.contract-contact { padding: clamp(var(--space-6), 5vw, var(--space-12)); }
.contract-contact p + p { margin-top: var(--space-2); }
@media (max-width: 600px) {
  .contract-actions .btn { justify-content: center; }
  .contract-hero .page-title { overflow-wrap: anywhere; }
}