.page-layout {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  color: #101a29;
}
.page-block {
  min-width: 0;
}
.page-block figure {
  margin: 0;
}
.page-block img {
  max-width: 100%;
  height: auto;
  border-radius: 18px;
}
.page-block figcaption {
  color: #61738a;
  font-size: 14px;
  margin-top: 8px;
}
.page-block p {
  line-height: 1.6;
}
.page-block .item-photo {
  width: 320px;
  max-width: 100%;
}
.block-image .item-photo {
  width: 100%;
  max-height: 520px;
  object-fit: cover;
}
.page-block .configurable-grid {
  display: grid;
  grid-template-columns: repeat(var(--columns-desktop), minmax(0, 1fr));
}
.page-block .configurable-grid > * {
  min-width: 0;
}
.home-layout .variants {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}
.home-layout .variant {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.home-layout .measure {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #eaf1f6;
  border-radius: 14px;
  padding: 5px 9px;
  color: #526b7c;
  white-space: nowrap;
}
.home-layout .serving {
  width: 17px;
  height: 23px;
  fill: none;
  stroke: #416c88;
  stroke-width: 1.5;
}
.home-layout .serving-set {
  width: 38px;
}
.horizontal-items {
  display: flex;
  overflow-x: auto;
  gap: 24px;
  max-width: 100%;
  scroll-snap-type: x proximity;
  padding-bottom: 12px;
}
.horizontal-items .position {
  display: block;
  flex: 0 0 min(300px, 85%);
  min-width: 0;
  scroll-snap-align: start;
  background: #fff;
  border-radius: 20px;
  padding: 20px;
}
.information {
  padding: 24px;
  background: #f3f7fa;
  border-radius: 20px;
}
.information.tone-accent {
  background: #e7f5ff;
}
.block-navigation {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  padding: 12px 0;
}
.block-navigation a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
.block-spacer {
  display: flex;
  align-items: center;
}
.block-spacer hr {
  width: 100%;
  border: 0;
  border-top: 1px solid #dce4e9;
}
.portions-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.portions-table th {
  text-align: left;
  color: #61738a;
  font-size: 14px;
}
.portions-table td,
.portions-table th {
  padding: 12px 10px;
  vertical-align: top;
  border-bottom: 1px solid #dce4e9;
}
.portions-table th:first-child {
  width: 50%;
}
.home-layout {
  margin-block: 48px;
}
.home-layout .page-block h2 {
  font-size: 32px;
  line-height: 1.2;
}
.home-layout .page-block h3 {
  font-size: 22px;
  line-height: 1.3;
}
.home-layout .item-grid {
  gap: 35px;
}
.home-layout .position {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  padding: 23px 0;
  border-bottom: 1px solid #dce4e9;
}
.home-layout .item-grid .position,
.home-layout .horizontal-items .position {
  display: block;
}
.home-layout .variant strong {
  font-size: 20px;
  white-space: nowrap;
}
.home-layout .description {
  color: #61738a;
}
.home-layout .measure {
  font-size: 13px;
}
.home-layout .category-icon {
  width: 28px;
  height: 33px;
  fill: none;
  stroke: #416c88;
  stroke-width: 1.5;
  vertical-align: middle;
  margin-right: 10px;
}
@media (max-width: 1000px) and (min-width: 761px) {
  .page-block .configurable-grid {
    grid-template-columns: repeat(var(--columns-tablet), minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .home-layout .position {
    grid-template-columns: minmax(0, 1fr);
  }
  .page-block .configurable-grid {
    grid-template-columns: repeat(var(--columns-mobile), minmax(0, 1fr));
  }
  .page-block .variant strong {
    font-size: 18px;
    white-space: nowrap;
  }
  .portions-table,
  .portions-table tbody,
  .portions-table tr,
  .portions-table td {
    display: block;
    width: 100%;
  }
  .portions-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
  }
  .portions-table tr {
    border-bottom: 1px solid #dce4e9;
    padding: 10px 0;
  }
  .portions-table td {
    padding: 6px 0;
    border: 0;
  }
}
