.demo-stage__count {
  color: #8a2b19;
}

.concept-notice {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: .85rem clamp(1rem, 5vw, 4rem);
  color: #14233b;
  background: #eaf1fb;
  border-bottom: 1px solid #afc5e1;
  font-size: .88rem;
}

.concept-notice strong {
  flex: none;
  color: #8b1118;
}

.concept-notice span {
  max-width: 850px;
}

.concept-notice a {
  flex: none;
  padding: .5rem .85rem;
  color: #fff;
  background: #163a70;
  border-radius: 999px;
  font-weight: 800;
  text-decoration: none;
}

.hero__photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 2rem;
  box-shadow: var(--shadow);
}

.hero__visual:has(.hero__photo)::before,
.hero__visual:has(.hero__photo)::after {
  display: none;
}

.hero__visual:has(.hero__photo) .phone-preview {
  width: min(310px, 72vw);
  min-height: 430px;
  margin-left: auto;
  margin-right: -6%;
  transform: translateY(17%) rotate(2deg);
  box-shadow: 0 25px 60px #0006;
}

.hero__visual:has(.hero__photo) .phone-preview__date,
.hero__visual:has(.hero__photo) .phone-preview__reward {
  margin-top: 2.5rem;
}

.hero__visual:has(.hero__photo) .phone-preview > strong {
  font-size: 1.75rem;
}

@media (width <= 850px) {
  .concept-notice {
    align-items: flex-start;
    flex-direction: column;
  }

  .hero__visual:has(.hero__photo) .phone-preview {
    margin-right: 1rem;
  }
}
