:root {
  --black: #080706;
  --cream: #efe1c0;
  --muted: #b8a988;
  --orange: #d76d2a;
  --line: rgba(239,225,192,.16);
}

* { box-sizing: border-box; }
html { background: var(--black); }
body {
  margin: 0;
  min-height: 100vh;
  color: var(--cream);
  background:
    radial-gradient(circle at 20% 12%, rgba(215,109,42,.14), transparent 28rem),
    radial-gradient(circle at 83% 34%, rgba(143,76,255,.10), transparent 30rem),
    linear-gradient(135deg, #050403, #120c08 55%, #070605);
  font-family: ui-serif, Georgia, Cambria, "Times New Roman", serif;
}

.elizabeth-link {
  position: absolute;
  top: 1.2rem;
  right: 1.4rem;
  color: var(--muted);
  text-decoration: none;
  font: .75rem ui-sans-serif, system-ui, sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.elizabeth-link:hover, .elizabeth-link:focus-visible { color: var(--cream); }

main { width: min(1180px, calc(100% - 2rem)); margin: 0 auto; padding: clamp(5rem, 9vw, 8rem) 0 2.5rem; }
.masthead { text-align: center; margin-bottom: clamp(3rem, 7vw, 5.5rem); }
.eyebrow, .artist, footer {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-transform: uppercase;
  letter-spacing: .2em;
}
.eyebrow { color: var(--orange); font-size: .72rem; margin: 0 0 1.2rem; }
h1, h2, p { margin-top: 0; }
h1 {
  margin-bottom: 1.3rem;
  font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
  font-size: clamp(4rem, 11vw, 9rem);
  font-weight: 400;
  letter-spacing: .055em;
  line-height: .84;
  text-transform: uppercase;
  text-shadow: 0 8px 30px rgba(0,0,0,.55);
}
.instruction { margin: 0; color: var(--muted); font-size: 1.1rem; }
.release-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.5rem, 4vw, 4rem); }
.release { color: inherit; text-decoration: none; min-width: 0; overflow: hidden; }
.cover-wrap { position: relative; overflow: hidden; aspect-ratio: 1; background: #15110e; box-shadow: 0 35px 80px rgba(0,0,0,.45); }
.cover-wrap::after { content: ""; position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.12); pointer-events: none; }
.cover-wrap img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 650ms cubic-bezier(.2,.8,.2,1), filter 650ms ease; }
.release:hover img, .release:focus-visible img { transform: scale(1.025); filter: brightness(1.07); }
.release:focus-visible { outline: 2px solid var(--orange); outline-offset: 8px; }
h2 { margin: 1.3rem 0 .55rem; font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif; font-size: clamp(1.6rem, 1.85vw, 2.2rem); font-weight: 400; letter-spacing: .045em; line-height: .94; text-transform: uppercase; overflow-wrap: anywhere; }
h2 span { color: var(--orange); }
.title-keep { color: inherit; white-space: nowrap; }
.artist { color: var(--muted); font-size: .72rem; }
footer { margin-top: clamp(4rem, 9vw, 8rem); padding-top: 1.5rem; border-top: 1px solid var(--line); color: var(--muted); font-size: .67rem; text-align: center; }

@media (max-width: 700px) {
  .elizabeth-link { top: .9rem; right: 1rem; }
  main { padding-top: 5.5rem; }
  .release-grid { grid-template-columns: 1fr; gap: 4rem; }
  .masthead { margin-bottom: 3rem; }
  h2 { font-size: clamp(2rem, 10vw, 3.7rem); }
}

@media (min-width: 701px) and (max-width: 980px) {
  .release-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition-duration: .01ms !important; }
}
