.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;
}

.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;
}

.catalog-item__description {
  margin-top: 10px;

  font-size: 18px;
  font-weight: 600;

  text-align: center;
  text-wrap: balance;
}

.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;
}

.advantages {
  padding-block: 50px 100px;
}

.advantages__title {
  font-size: 28px;
  font-weight: 800;
  text-align: center;
}

.advantages-body {
  display: grid;
  grid-template-columns: repeat(3, 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;

  font-size: 28px;
  font-weight: 800;

  text-align: center;
  text-wrap: balance;
}

.advantages-item__description {
  font-weight: 600;

  text-align: center;
  text-wrap: balance;

  color: #fff;
}

.advantages__description {
  margin-top: 15px;
  font-weight: 600;
}

.recipe {
  padding-block: 100px;
  background-image: linear-gradient(180deg, #fff5eb 0%, #ffdab5 100%);
}

.recipe > .container {
  display: flex;
  gap: 50px;
}

.recipe__image {
  width: 500px;
  aspect-ratio: 0.75;
  border-radius: 30px;
}

.recipe__title {
  font-size: 53px;
  font-weight: 600;
  line-height: 1;
}

.recipe-steps {
  display: flex;
  flex-direction: column;

  row-gap: 15px;
  margin-top: 25px;
}

.recipe-steps-item {
  display: flex;
  align-items: center;
  gap: 15px;
}

.recipe-steps-item__number {
  flex-shrink: 0;
  font-weight: 500;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 72px;
  height: 72px;

  color: var(--accent-color);
  background-color: #fff;

  border-radius: 100%;
  border: 3px solid var(--accent-color);
}

.recipe-steps-item__text {
  font-size: 20px;
  font-weight: 500;

  color: #413e3e;
}

.recipe__description {
  margin-top: 25px;

  font-size: 20px;
  font-weight: 500;
}

.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;
}
