body.detail-page {
  min-height: 100vh;
  background: var(--paper);
  color: var(--ink);
}

.detail-wrap {
  width: min(1100px, 92vw);
  margin: 0 auto;
  padding: calc(var(--header-height) + 56px) 0 100px;
}

.detail-back {
  color: var(--purple);
}

.detail-title {
  margin: 2rem 0;
  font-size: clamp(2.5rem, 7vw, 6rem);
  line-height: 0.92;
}

.detail-price {
  margin: 0 0 1.5rem;
  color: var(--purple);
  font-size: 1.25rem;
}

.detail-poster {
  display: block;
  width: 100%;
  height: auto;
  margin: 2rem 0;
}

.detail-poster img {
  display: block;
  width: 100%;
  height: auto;
}

.detail-copy {
  max-width: 760px;
  font-size: 1.05rem;
  line-height: 1.9;
}

.detail-copy p {
  margin: 0 0 1.25em;
}

.detail-index {
  display: grid;
  gap: 8px;
  max-width: 760px;
  margin-top: 2.5rem;
}

.detail-index a {
  display: grid;
  gap: 6px;
  padding: 18px 0;
  border-bottom: 1px solid rgb(36 36 38 / 12%);
}

.detail-index strong {
  font-size: clamp(1.35rem, 3vw, 2rem);
  letter-spacing: -0.03em;
}

.detail-index span:not(.eyebrow) {
  color: #55545a;
}

@media (max-width: 560px) {
  .detail-wrap {
    padding: 90px 0 60px;
  }

  .detail-title {
    font-size: clamp(2.3rem, 14vw, 4rem);
  }

  .detail-copy {
    font-size: 0.98rem;
  }
}
