/* Service details belong to the main model; one compact section, no thin landings. */
.model-service-details { padding-block: 40px; scroll-margin-top: 110px; }
.model-service-details h2 { margin-bottom: 24px; }
.model-operations-shell { border: 1px solid var(--line, #dce3ec); border-radius: 16px; overflow: hidden; }
.model-operations { width: 100%; border-collapse: collapse; table-layout: fixed; background: #fff; color: var(--ink, #202832); }
.model-operations th, .model-operations td { padding: 20px; vertical-align: top; text-align: left; border-bottom: 1px solid var(--line, #dce3ec); overflow-wrap: anywhere; font-size: 16px; line-height: 1.55; }
.model-operations thead { background: #f2f5f9; }
.model-operations th:first-child { width: 24%; }
.model-operations th:nth-child(2) { width: 42%; }
.model-operations tr:last-child > * { border-bottom: 0; }
.model-operations tbody tr { scroll-margin-top: 110px; }
.model-operations p { margin: 0; }
.model-operation-prices { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: 12px; }
.model-operation-prices a { color: var(--blue-deep, #184da9); font-size: 14px; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 760px) {
  .model-service-details { padding-block: 28px; }
  .model-operations, .model-operations tbody { display: block; }
  .model-operations thead { display: none; }
  .model-operations tbody tr { display: block; padding: 20px; border-bottom: 1px solid var(--line, #dce3ec); }
  .model-operations tbody tr:last-child { border: 0; }
  .model-operations tbody th, .model-operations tbody th:first-child, .model-operations tbody td { display: block; width: auto; padding: 0; border: 0; }
  .model-operations tbody th { margin-bottom: 12px; font-size: 18px; }
  .model-operations tbody td + td { margin-top: 16px; }
  .model-operations td[data-label="Стоимость"]::before { content: "Цена и дополнительные расходы"; display: block; margin-bottom: 6px; font-weight: 700; font-size: 14px; }
}
