/* ЛОКАЛЬНЫЙ СЛОЙ — полный прайс-лист.

   Калькулятор показывает по одному разделу за раз: это удобно, когда знаешь,
   что ищешь, и бесполезно, когда хочешь понять порядок сумм по сервису целиком.
   Здесь весь прайс одним документом — восемь разделов, пятьдесят строк.

   Ширина ограничена: на 1760 px между названием работы и ценой рвётся связь,
   и строка перестаёт читаться как строка. */
.zw-pricelist__jump {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-2);
  margin-top: var(--sp-6);
}
.zw-pricelist__jump a {
  --bevel: 8px;
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding-inline: var(--sp-4);
  font-family: var(--font-mono);
  font-size: var(--size-caption);
  letter-spacing: var(--tracking-caption);
  text-transform: uppercase;
  color: var(--ink-muted);
  background: var(--surface-raised);
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--bevel)), calc(100% - var(--bevel)) 100%, 0 100%);
  transition: background var(--dur-fast) ease, color var(--dur-fast) ease;
}
.zw-pricelist__jump a:hover { background: var(--surface-dark); color: var(--ink-on-dark); }

.zw-pricelist__groups { max-width: 1180px; margin-top: var(--sp-8); }

.zw-pricelist__group { scroll-margin-top: 104px; }
.zw-pricelist__group + .zw-pricelist__group { margin-top: var(--sp-8); }

.zw-pricelist__cap {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--sp-3) var(--sp-5);
  padding-bottom: var(--sp-3);
}
.zw-pricelist__num {
  font-family: var(--font-mono);
  font-size: var(--size-caption);
  letter-spacing: var(--tracking-caption);
  color: var(--accent-ink);
}
.zw-pricelist__name {
  margin: 0;
  font-family: var(--font-head);
  font-size: var(--size-h3);
  font-weight: 600;
}
.zw-pricelist__count {
  font-family: var(--font-mono);
  font-size: var(--size-caption);
  letter-spacing: var(--tracking-caption);
  text-transform: uppercase;
  color: var(--ink-muted);
}
.zw-pricelist__more { margin-left: auto; }

.zw-pricelist__rows { margin: 0; padding: 0; list-style: none; border-top: 2px solid var(--ink); }
.zw-pricelist__row {
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: baseline;
  gap: var(--sp-3) var(--sp-4);
  padding: var(--sp-4) 0;
  border-bottom: 1px solid var(--line);
}
.zw-pricelist__row:hover { background: var(--surface-raised); }
.zw-pricelist__work { min-width: 0; }
.zw-pricelist__from {
  font-family: var(--font-mono);
  font-size: var(--size-caption);
  letter-spacing: var(--tracking-caption);
  text-transform: uppercase;
  color: var(--ink-muted);
}
.zw-pricelist__price {
  font-family: var(--font-mono);
  font-size: clamp(15px, 0.9rem + 0.3vw, 18px);
  white-space: nowrap;
}
.zw-pricelist__warn {
  margin-top: var(--sp-6);
  max-width: var(--measure);
  font-family: var(--font-mono);
  font-size: var(--size-caption);
  letter-spacing: var(--tracking-caption);
  text-transform: uppercase;
  color: var(--accent-ink);
}

/* На узком экране восемь пилюль занимали семь строк — полэкрана перед прайсом.
   Переходим в ленту с боковой прокруткой: одна строка, порядок разделов виден. */
@media (max-width: 719px) {
  .zw-pricelist__jump {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    padding-bottom: var(--sp-1);
  }
  .zw-pricelist__jump::-webkit-scrollbar { display: none; }
  .zw-pricelist__jump a { flex: none; }
}
