main {
  position: relative; z-index: 10;
  max-width: 1400px; margin: 0 auto;
  /* the top figure REPLACES the header's own vertical space, which it no longer occupies in
     flow now that app/shared/css/header.css pins it fixed — --header-clearance is the ONE
     number both the header's real height and this reserve read, written by
     app/shared/js/header-clearance.js. */
  padding: calc(var(--header-clearance) + 1.5rem) 5% 1.5rem;
}

.section-title {
  font-family: 'Orbitron', monospace;
  font-size: 1.4rem; font-weight: 700;
  background: linear-gradient(90deg, var(--accent-gold), var(--accent-silver));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
  margin: 2rem 0 1.2rem;
  position: relative; padding-left: 1.2rem;
  text-transform: uppercase; letter-spacing: 0.1em; word-break: break-word;
}
.section-title::before {
  content: ''; position: absolute; left: 0; top: 0;
  width: 3px; height: 100%;
  background: linear-gradient(180deg, var(--accent-red), var(--accent-gold));
  box-shadow: 0 0 15px var(--accent-red); border-radius: 2px;
}
.section-lede {
  color: var(--text-secondary);
  font-size: 0.95rem;
  margin: -0.6rem 0 1.2rem;
  padding-left: 1.2rem;
  max-width: 62ch;
}

