/* Launch copy: keep phrases intact at desktop and mobile widths. */
.lp .hero {
  display: flex;
  align-items: center;
  height: auto;
  min-height: clamp(520px, 68svh, 640px);
}

.lp .hero-inner {
  width: 100%;
  padding: 56px clamp(24px, 6vw, 96px);
}

.lp .hero h1 {
  max-width: calc(100% - 250px);
  font-size: clamp(36px, 3.7vw, 58px);
  line-height: 1.45;
}

.lp .hero-desc {
  max-width: calc(100% - 240px);
  margin-top: 24px;
}

.lp .hero-satisfaction {
  top: 28px;
}

.lp .hero-satisfaction .survey-note {
  white-space: nowrap;
}

.lp .hero h1 .hero-product {
  display: block;
  margin-bottom: 8px;
  font-size: clamp(19px, calc(13px + 1.2vw), 32px);
  line-height: 1.6;
  letter-spacing: .01em;
}

.lp .hero h1 .hero-line {
  white-space: normal;
}

.lp .hero h1 em,
.lp .hero h1 .hero-clause {
  display: inline-block;
  white-space: nowrap;
}

@media (max-width: 900px) {
  .lp .hero {
    min-height: 0;
  }

  .lp .hero-inner {
    padding-top: 190px;
    padding-bottom: 44px;
  }

  .lp .hero h1,
  .lp .hero-desc {
    max-width: none;
  }

  .lp .hero-satisfaction {
    top: 22px;
  }
}

@media (min-width: 601px) and (max-width: 900px) {
  .lp .hero-inner {
    padding: 64px 6% 48px;
  }

  .lp .hero h1 {
    max-width: calc(100% - 180px);
    font-size: clamp(28px, 4vw, 36px);
  }
}

@media (max-width: 600px) {
  .lp .hero-inner {
    padding: 160px 6% 36px;
  }

  .lp .hero h1 {
    font-size: clamp(23px, calc(15px + 2.3vw), 29px);
    line-height: 1.6;
  }

  .lp .hero-satisfaction .survey-note {
    font-size: 8px;
    line-height: 1.6;
  }
}
