html {
  scroll-padding-top: 80px;
}

.hero--for-private {
  background: radial-gradient(circle at top left, var(--color-accent-teal-soft) 0, transparent 55%), radial-gradient(circle at bottom right, var(--color-accent-orange-soft) 0, transparent 55%);
}

.hero__layout {
  align-items: center;
}

.hero__content {
  max-width: 36rem;
}

.hero__visual {
  max-width: 32rem;
}

.hero__media {
  aspect-ratio: 4 / 3;
}

.hero__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero__cta-main,
.hero__cta-secondary {
  max-width: 100%;
}

.section-header--center {
  text-align: center;
}

.section-header--center .section-header__description {
  margin-left: auto;
  margin-right: auto;
}

.section--for-private-types {
  border-top: var(--border-width-thin) solid var(--color-border-subtle);
  border-bottom: var(--border-width-thin) solid var(--color-border-subtle);
}

.for-private-types__grid {
  margin-bottom: var(--space-3xl);
}

.for-private-types__card {
  height: 100%;
}

.for-private-list {
  margin: 0;
  padding-left: 1.1rem;
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

.for-private-list li + li {
  margin-top: var(--space-xs);
}

.for-private-types__media-layout {
  align-items: center;
}

.section--for-private-customization .media-layout__media {
  aspect-ratio: 4 / 3;
}

.for-private-customization__grid {
  margin-bottom: var(--space-xl);
}

.for-private-customization__card {
  height: 100%;
}

.for-private-customization__note {
  margin-top: var(--space-lg);
}

.section--for-private-process {
  border-top: var(--border-width-thin) solid var(--color-border-subtle);
}

.for-private-process__layout {
  align-items: flex-start;
}

.for-private-process__side .btn {
  max-width: 100%;
}

.for-private-process__guarantee {
  margin-top: var(--space-md);
}

@media (max-width: 1023.98px) {
  .hero--for-private {
    padding-top: var(--space-3xl);
  }
  .hero__visual {
    max-width: 28rem;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 767.98px) {
  .hero__content {
    text-align: left;
  }
  .hero__actions {
    justify-content: flex-start;
  }
  .section {
    padding-top: var(--space-2xl);
    padding-bottom: var(--space-2xl);
  }
  .for-private-types__grid {
    margin-bottom: var(--space-2xl);
  }
}

@media (max-width: 480px) {
  .hero__media,
  .section--for-private-customization .media-layout__media {
    aspect-ratio: 3 / 4;
  }
}
