.product-detail--extension #about,
.product-detail--extension #format,
.product-detail--extension #faq {
  scroll-margin-top: 84px;
}

.product-detail--extension .product-hero-copy h1 {
  max-width: 11em;
  font-size: clamp(42px, 3.5vw, 58px);
  line-height: .98;
  text-wrap: balance;
}

.product-detail--extension .product-hero-lead,
.product-detail--extension .line-intro {
  max-width: 560px;
}

.product-detail--extension .line-intro {
  margin-top: 16px;
  font-size: 16px;
  line-height: 1.5;
}

.product-detail--extension .line-points {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 28px;
  align-items: stretch;
}

.product-detail--extension .line-points article {
  display: flex;
  min-height: 210px;
  flex-direction: column;
  padding: 28px 24px 24px;
  background: var(--ivory);
  border-top: 3px solid var(--green);
}

.product-detail--extension .line-points article:nth-child(2) {
  border-top-color: var(--berry);
}

.product-detail--extension .line-points article:nth-child(3) {
  border-top-color: var(--gold);
}

.product-detail--extension .line-points h3 {
  margin-top: 16px;
  color: var(--green);
  font-size: 28px;
  line-height: 1.15;
}

.product-detail--extension .line-points p {
  margin-top: 12px;
  font-size: 16px;
  line-height: 1.5;
}

.product-detail--extension .line-compare {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 28px;
}

.product-detail--extension .line-compare article {
  display: flex;
  min-height: 240px;
  flex-direction: column;
  padding: 28px 24px;
  background: var(--ivory);
}

.product-detail--extension .line-compare h3 {
  color: var(--green);
  font-size: 28px;
  line-height: 1.15;
}

.product-detail--extension .line-compare dl {
  margin-top: 18px;
}

.product-detail--extension .line-compare dt {
  color: var(--green);
  font-size: 14px;
  letter-spacing: .06em;
  line-height: 1.3;
  text-transform: uppercase;
}

.product-detail--extension .line-compare dd {
  margin: 6px 0 16px;
  font-size: 16px;
  line-height: 1.45;
}

.product-detail--extension .line-compare .inline-link {
  margin-top: auto;
}

.product-detail--extension .line-compare article.line-compare-current {
  background: var(--green);
  color: #fff;
}

.product-detail--extension .line-compare-current h3,
.product-detail--extension .line-compare-current dt,
.product-detail--extension .line-compare-current dd {
  color: #fff;
}

.product-detail--extension .line-related {
  margin-top: 28px;
  font-size: 16px;
  line-height: 1.5;
}

.product-detail--extension .line-related a {
  color: var(--green);
}

@media (min-width: 769px) {
  .product-detail--extension .product-hero-scene {
    min-height: max(620px, 46vw);
    background: #f4efe6;
  }

  .product-detail--extension .product-hero-grid,
  .product-detail--extension .product-hero-visual {
    position: static;
    min-height: 0;
    background: transparent;
  }

  .product-detail--extension .line-hero-photo,
  .product-detail--extension .line-hero-photo img {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
  }

  .product-detail--extension .line-hero-photo img {
    object-fit: cover;
    object-position: center 70%;
  }
}

@media (max-width: 1100px) and (min-width: 769px) {
  .product-detail--extension .product-hero-scene,
  .product-detail--extension .product-hero-grid {
    min-height: 620px;
  }
}

@media (max-width: 900px) {
  .product-detail--extension .line-points {
    grid-template-columns: 1fr;
  }
}

.product-detail--mom .line-compare article.line-compare-current {
  box-shadow: inset 0 3px 0 var(--berry);
}

@media (min-width: 769px) {
  .product-detail--mom .line-hero-photo img {
    object-position: center center;
  }
}

@media (max-width: 768px) {
  .product-detail--extension .product-hero-copy h1 {
    max-width: none;
    font-size: clamp(36px, 10.4vw, 48px);
  }

  .product-detail--extension .product-hero-visual {
    height: auto;
    min-height: 0;
    overflow: hidden;
    background: transparent;
  }

  .product-detail--extension .line-hero-photo,
  .product-detail--extension .line-hero-photo img {
    position: relative;
    inset: auto;
    width: 100%;
    height: auto;
    transform: none;
  }

  .product-detail--extension .line-hero-photo img {
    aspect-ratio: 3 / 4;
    object-fit: cover;
    object-position: center;
  }

  .product-detail--extension .line-compare {
    grid-template-columns: 1fr;
  }
}
