#main-content:has(> .shop-launch) {
  display: flex;
  flex-direction: column;
}

.shop-launch {
  flex: 1;
  display: grid;
  align-items: center;
  padding-block: clamp(39px, 6.75vw, 94px);
}

.shop-launch-grid {
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
  gap: clamp(24px, 5.2vw, 74px);
  align-items: center;
}

.shop-launch h1 {
  font-size: clamp(3.35rem, 6.3vw, 6rem);
  overflow-wrap: anywhere;
  text-wrap: pretty;
  max-width: 11ch;
}

html[lang=zh-CN] .shop-launch h1 {
  font-size: clamp(2.35rem, 5.2vw, 5rem);
  max-width: none;
}

.shop-launch .btn {
  margin-top: clamp(19px, 2.75vw, 32px);
}

.shop-launch-range {
  border-top: 1px solid #5c7278;
  margin-top: clamp(21px, 3.3vw, 44px);
  padding-top: 12px;
}

.shop-launch-range h2,
html[lang=zh-CN] .shop-launch-range h2 {
  color: #a6dddd;
  font: 700 .86rem/1.45 var(--body);
  letter-spacing: normal;
}

.shop-launch-range ul {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 14px;
  margin: 7px 0 0;
  padding: 0;
  list-style: none;
  color: #ecf4f4;
  font-size: 1.03rem;
}

.shop-launch-photo .media {
  aspect-ratio: 1.53;
}

.shop-launch-photo figcaption { text-wrap: pretty; }

.privacy-reading {
  max-width: 71ch;
  overflow-wrap: anywhere;
}

.privacy-reading h2,
html[lang=zh-CN] .privacy-reading h2 {
  font-size: clamp(1.55rem, 3vw, 2.5rem);
  margin: 1.2em 0 .35em;
}

.privacy-reading p + p {
  margin-top: .8em;
}

.privacy-reading .text-link {
  margin-top: 14px;
}

@media (max-width: 660px) {
  .shop-launch-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .shop-launch h1 { max-width: none; font-size: clamp(3rem, 10.3vw, 4.8rem); }
}
