.hero {
  height: calc(100dvh - var(--header-height));
  align-content: center;
  background-size: cover;
}

.hero__title {
  font-size: 72px;
  font-weight: 700;
  line-height: 1;

  color: #fff;
}

.hero__description {
  margin-top: 15px;
  font-weight: 600;
}

.noodles-types__title {
  padding-block: 50px;

  font-size: 53px;
  font-weight: 600;
  text-align: center;

  color: #fff;
  background-color: #000;
}

.noodles-types-items {
  padding-block: 50px;
  background-image: linear-gradient(180deg, #fff5eb 0%, #ffdab5 100%);
}

.noodles-types-items > .container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 50px;
}

.noodles-types-item__image {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.noodles-types-item__title {
  font-size: 24px;
  font-weight: 800;
  text-align: center;
}

.noodles-types-item__description {
  font-weight: 600;
  text-align: center;
}

.product-audience {
  padding-block: 50px;
  background-color: #000;
}

.product-audience__title {
  font-size: 53px;
  font-weight: 600;
  text-align: center;

  color: #fff;
}

.product-audience-body {
  display: grid;
  grid-template-columns: 300px 1fr 300px;
  align-items: center;

  gap: 50px;
  margin-top: 50px;
}

.product-audience-cards {
  display: flex;
  flex-direction: column;
  row-gap: 30px;
}

.product-audience-card {
  padding: 15px;
  border-radius: 30px;
  background-color: var(--accent-color);
}

.product-audience-card__image {
  padding: 15px;
  margin-inline: auto;

  width: 75px;
  height: 75px;

  border-radius: 30px;
  object-fit: scale-down;

  background-color: #fff;
}

.product-audience__image {
  width: 100%;
  object-fit: scale-down;
}

.product-audience-card__title {
  margin-top: 5px;

  font-size: 18px;
  font-weight: 900;

  text-align: center;
  text-wrap: balance;
}

.quality {
  padding-block: 100px;
  background-image: linear-gradient(180deg, #fff5eb 0%, #ffdab5 100%);
}

.quality__title {
  font-size: 53px;
  font-weight: 600;
  text-align: center;
}

.quality-body {
  display: grid;
  grid-template-columns: repeat(2, 1fr);

  gap: 50px;
  margin-top: 50px;
}

.quality-item__title {
  font-size: 48px;
  font-weight: 600;
}

.quality-item__description {
  margin-top: 15px;

  font-size: 20px;
  font-weight: 500;
}

.advantages {
  padding-block: 50px 100px;
}

.advantages__title {
  font-size: 28px;
  font-weight: 800;
  text-align: center;
}

.advantages-body {
  display: grid;
  grid-template-columns: repeat(4, 1fr);

  gap: 25px;
  margin-top: 50px;
}

.advantages-item {
  padding: 25px;
  border-radius: 30px;
  background-color: var(--accent-color);
}

.advantages-item__image {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: scale-down;
}

.advantages-item__title {
  margin-top: 15px;

  color: #fff;
  font-weight: 600;

  text-align: center;
  text-wrap: balance;
}

.video {
  padding-block: 100px 50px;

  display: flex;
  gap: 50px;

  border-top: 1px solid currentColor;
}

.video__subtitle {
  font-size: 24px;
  font-weight: 800;

  color: var(--accent-color);
}

.video__title {
  font-size: 53px;
  font-weight: 800;
  line-height: 1;
}

.video__button {
  margin-top: 15px;

  color: #fff;
  background-color: var(--accent-color);
}

.video__button:hover,
.video__button:focus-visible {
  color: var(--accent-color);
  background-color: #000;
}

.video__iframe {
  width: 768px;
  border-radius: 30px;
  aspect-ratio: 16 / 9;
}

.catalog__title {
  padding-block: 50px;

  font-size: 53px;
  font-weight: 600;
  text-align: center;

  color: #fff;
  background-color: #000;
}

.catalog-body {
  padding-block: 50px;
  background-image: linear-gradient(180deg, #fff5eb 0%, #ffdab5 100%);
}

.catalog-body > .container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 50px;
}

.catalog-item__image {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: scale-down;
}

.catalog-item__title {
  margin-top: 10px;

  font-size: 24px;
  font-weight: 800;
  line-height: 1;

  text-align: center;
  text-wrap: balance;
}

.pricelist {
  padding-block: 100px;
  background-size: cover;
  background-position: center;
}

.pricelist-feedback {
  padding: 40px;
  border-radius: 30px;
  background-color: #f7f7f7;
}

.pricelist-feedback__title {
  font-size: 36px;
  font-weight: 900;
}
