.page--coming-soon {
  min-height: 100vh;
  min-height: 100svh;
  background: var(--c-bg);
}

.coming-soon {
  display: grid;
  place-items: center;
  min-height: 100vh;
  min-height: 100svh;
  padding: var(--space-xl) var(--gutter);
}

.coming-soon__inner {
  text-align: center;
  max-width: 36rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-md);
}

.coming-soon__crest {
  width: clamp(11rem, 32vw, 18rem);
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  overflow: hidden;
  background: var(--c-bg);
  margin: 0 0 var(--space-2xs);
  position: relative;
}
.coming-soon__crest::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--c-ink) 8%, transparent);
  pointer-events: none;
}
.coming-soon__crest img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.06);
}

.coming-soon__headline {
  font-family: var(--ff-display);
  font-variation-settings: "opsz" 144, "wght" 800;
  font-size: clamp(3rem, 9vw, 5.75rem);
  letter-spacing: -0.04em;
  line-height: 0.9;
  color: var(--c-ink);
  margin: 0;
}

.coming-soon__intro {
  font-family: var(--ff-display);
  font-style: italic;
  font-variation-settings: "opsz" 60, "wght" 400;
  font-size: clamp(1.05rem, 2vw, 1.35rem);
  color: var(--c-ink);
  line-height: 1.45;
  max-width: 28rem;
}

.coming-soon__details {
  font-family: var(--ff-body);
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  color: var(--c-ink-soft);
  margin-top: var(--space-2xs);
}

.coming-soon__links {
  display: flex;
  gap: var(--space-md);
  margin-top: var(--space-md);
  flex-wrap: wrap;
  justify-content: center;
}
