:root {
  color-scheme: dark;
  --bg: #09080d;
  --panel: #111019;
  --text: #f4f1f8;
  --muted: #aaa2b5;
  --line: #332c3f;
  --accent: #b993ff;
}

* { box-sizing: border-box; }
html, body { min-height: 100%; }
body {
  margin: 0;
  background:
    radial-gradient(circle at 20% 15%, rgba(185,147,255,.12), transparent 28rem),
    radial-gradient(circle at 85% 80%, rgba(255,255,255,.04), transparent 25rem),
    var(--bg);
  color: var(--text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.shell {
  min-height: 100vh;
  display: grid;
  grid-template-rows: 1fr auto auto;
  padding: clamp(2rem, 6vw, 6rem);
}

.hero {
  align-self: center;
  max-width: 880px;
}

.eyebrow,
.catalogue-label {
  font-size: .78rem;
  letter-spacing: .22em;
  color: var(--accent);
}

.eyebrow { margin-bottom: 1rem; }

h1 {
  margin: 0;
  font-size: clamp(3.7rem, 13vw, 9rem);
  line-height: .88;
  letter-spacing: -.06em;
  font-weight: 800;
}

.tagline {
  margin: 2rem 0 0;
  font-size: clamp(1.2rem, 3vw, 2rem);
  line-height: 1.35;
  max-width: 700px;
}

.status {
  color: var(--muted);
  margin-top: 1.4rem;
  font-size: 1rem;
}

.rule {
  width: min(100%, 660px);
  height: 1px;
  background: var(--line);
  margin: 2.5rem 0 1.5rem;
}

.note {
  color: var(--muted);
  margin: 0;
  max-width: 620px;
}

.catalogue {
  max-width: 660px;
  margin-top: clamp(5rem, 12vh, 9rem);
  padding-top: 2rem;
  border-top: 1px solid var(--line);
}

.catalogue h2 {
  margin: .65rem 0 .9rem;
  font-size: clamp(1.4rem, 3vw, 2rem);
  letter-spacing: -.02em;
}

.catalogue p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.soundcloud-link {
  display: inline-block;
  margin-top: 1.25rem;
  color: var(--text);
  text-decoration: none;
  border-bottom: 1px solid var(--accent);
  padding-bottom: .15rem;
}

.soundcloud-link:hover,
.soundcloud-link:focus-visible {
  color: var(--accent);
}

.quote {
  margin-top: 2rem !important;
  font-style: italic;
  font-size: .94rem;
}

.quote span {
  font-style: normal;
  color: #756e80;
}

footer {
  padding-top: 3rem;
  color: #756e80;
  font-size: .82rem;
}
