/* ===================== ПАМЯТНИКИ ИЗ МЕТАЛЛА — три страницы линейки (2026-11-06) =====================
   /pamjatniki/pamjatnik-iz-metalla, /pamjatniki/pamjatnik-na-pervyj-god, /pamjatniki/kompleks-iz-metalla.
   Подключается через ViewData["CssPage"] = "metall". Все классы — с префиксом mt-.
   Только компьютер (макеты 1440). Планшет и телефон — css/adaptive/svc-pamjatniki.css, раздел «Металл».
   Полоса линейки — css/components/metall-line.css. */

/* — Ритм секций: 56px между блоками — */
.service-page > section.mt-why,
.service-page > section.mt-patterns,
.service-page > section.mt-compare,
.service-page > section.mt-catalog,
.service-page > section.mt-tech,
.service-page > section.mt-install,
.service-page > section.mt-price,
.service-page > section.mt-warranty,
.service-page > section.mt-funeral,
.service-page > section.mt-gallery,
.service-page > section.mt-after,
.service-page > section.mt-project,
.service-page > section.mt-faq {
  padding-top: 0 !important;
  padding-bottom: 56px !important;
}
.service-page > section[id^="mt-"] { scroll-margin-top: calc(var(--header-height, 70px) + 16px); }

/* — Общие элементы — */
.mt-head { max-width: 860px; margin-bottom: 28px; }
.mt-h2 { margin: 8px 0 0; font-size: 40px; line-height: 1.15; letter-spacing: -0.01em; color: var(--ink); }
.mt-h2--sm { font-size: 32px; }
.mt-h3 { margin: 0 0 14px; font-size: 22px; line-height: 1.25; color: var(--ink); }
.mt-lead { margin: 14px 0 0; font-size: 17px; line-height: 1.55; color: var(--ink-3); }
.mt-note {
  display: flex; gap: 10px; align-items: flex-start;
  margin: 22px 0 0; padding: 14px 16px; border-radius: 14px;
  background: var(--green-50); color: var(--ink-2); font-size: 14.5px; line-height: 1.5;
}
.mt-note [data-lucide] { width: 18px; height: 18px; flex-shrink: 0; margin-top: 2px; color: var(--green-600); }
.mt-note--warn { background: #FBF5EA; }
.mt-note--warn [data-lucide] { color: #B07A1E; }
.mt-inline { color: var(--green-600); font-weight: 600; text-decoration: none; white-space: nowrap; }
.mt-inline:hover { text-decoration: underline; }
.mt-link { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; font-size: 15px; color: var(--green-600); text-decoration: none; }
.mt-link:hover { color: var(--green-700); text-decoration: underline; }
.mt-link [data-lucide] { width: 16px; height: 16px; }
.mt-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  padding: 14px 22px; border-radius: 12px; background: var(--green-600); color: #fff;
  font-weight: 600; font-size: 15px; text-decoration: none; transition: background .2s;
}
.mt-btn:hover { background: var(--green-700); color: #fff; }
.mt-btn [data-lucide] { width: 18px; height: 18px; }
.mt-ico {
  display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;
  width: 48px; height: 48px; border-radius: 14px; background: var(--green-50); color: var(--green-600);
}
.mt-ico [data-lucide] { width: 24px; height: 24px; }
.mt-ico--sm { width: 40px; height: 40px; border-radius: 12px; }
.mt-ico--sm [data-lucide] { width: 20px; height: 20px; }
.mt-ico--lg { width: 64px; height: 64px; border-radius: 18px; }
.mt-ico--lg [data-lucide] { width: 32px; height: 32px; }

/* Кадр: контейнер-обложка с position: relative (в имени классов есть __pic — см. CLAUDE.md про core.css) */
.mt-pic {
  position: relative; display: block; margin: 0; padding: 0; border: 0;
  border-radius: 16px; overflow: hidden; background: var(--line-2); width: 100%;
}
button.mt-pic { cursor: zoom-in; }
.mt-pic img { display: block; width: 100%; height: 100%; object-fit: cover; }
.mt-pic:focus-visible, .mt-btn:focus-visible, .mt-link:focus-visible { outline: 3px solid var(--green-500); outline-offset: 3px; }
.mt-tag {
  position: absolute; left: 10px; bottom: 10px; padding: 3px 8px; border-radius: 6px;
  background: rgba(20, 24, 26, .55); color: #fff; font-size: 11px; line-height: 1.3;
}
.mt-checks { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.mt-checks li { position: relative; padding-left: 28px; font-size: 15px; line-height: 1.45; color: var(--ink-2); }
.mt-checks li::before {
  content: ""; position: absolute; left: 0; top: 2px; width: 18px; height: 18px; border-radius: 50%;
  background: var(--green-600) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 12px no-repeat;
}

/* ===== Почему металл / когда ставят / что такое комплекс ===== */
.mt-why__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.mt-why-card {
  display: flex; flex-direction: column; gap: 12px; padding: 24px;
  border: 1px solid var(--line); border-radius: 18px; background: var(--card);
}
.mt-why-card__title { margin: 4px 0 0; font-size: 19px; line-height: 1.3; color: var(--ink); }
.mt-why-card__text { margin: 0; font-size: 15px; line-height: 1.55; color: var(--ink-3); }

/* ===== Узоры ===== */
.mt-patterns__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.mt-pattern-card { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.mt-pattern-card__pic { aspect-ratio: 3 / 4; margin-bottom: 6px; }
.mt-pattern-card__title { margin: 0; font-size: 18px; line-height: 1.3; color: var(--ink); }
.mt-pattern-card__text { margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--ink-3); }

/* ===== Металл или гранит ===== */
.mt-table { border: 1px solid var(--line); border-radius: 18px; overflow: hidden; background: var(--card); }
.mt-table__row { display: grid; grid-template-columns: 220px minmax(0, 1fr) minmax(0, 1fr); border-top: 1px solid var(--line-2); }
.mt-table__row:first-child { border-top: 0; }
.mt-table__row > div { padding: 16px 20px; font-size: 15px; line-height: 1.5; color: var(--ink-2); }
.mt-table__row--head > div {
  display: flex; align-items: center; gap: 8px; padding-top: 18px; padding-bottom: 18px;
  font-weight: 700; font-size: 16px; color: var(--ink); background: var(--line-2);
}
.mt-table__row--head [data-lucide] { width: 20px; height: 20px; color: var(--green-600); }
.mt-table__name { font-weight: 600; color: var(--ink) !important; }
.mt-table__cell--metal { background: var(--green-50); }
.mt-table__row--head > div:nth-child(2) { background: var(--green-50); }

/* ===== Каталог моделей ===== */
.mt-catalog__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.mt-model {
  display: flex; flex-direction: column; min-width: 0;
  border: 1px solid var(--line); border-radius: 18px; background: var(--card); overflow: hidden;
}
.mt-model__pic { aspect-ratio: 3 / 4; border-radius: 0; }
.mt-model__count {
  position: absolute; right: 10px; top: 10px; display: inline-flex; align-items: center; gap: 4px;
  padding: 4px 8px; border-radius: 8px; background: rgba(20, 24, 26, .55); color: #fff; font-size: 12px; font-weight: 600;
}
.mt-model__count [data-lucide] { width: 14px; height: 14px; }
.mt-model__body { display: flex; flex-direction: column; gap: 8px; padding: 16px 18px 18px; flex: 1 1 auto; }
.mt-model__name { margin: 0; font-size: 17px; line-height: 1.3; color: var(--ink); }
.mt-model__text { margin: 0; font-size: 14px; line-height: 1.5; color: var(--ink-3); flex: 1 1 auto; }
.mt-model__want {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px; margin-top: 6px;
  padding: 10px 14px; border-radius: 10px; border: 1px solid var(--green-600);
  color: var(--green-600); font-weight: 600; font-size: 14.5px; text-decoration: none; transition: background .2s, color .2s;
}
.mt-model__want:hover { background: var(--green-600); color: #fff; }
.mt-model__want [data-lucide] { width: 16px; height: 16px; }
.mt-model--own { padding: 24px 20px; gap: 12px; justify-content: center; background: var(--green-50); border-style: dashed; }
.mt-model--own .mt-model__text { flex: 0 0 auto; }
.mt-model__ph {
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px;
  aspect-ratio: 4 / 3; background: var(--line-2); color: var(--ink-3); font-size: 14px;
}
.mt-model__ph [data-lucide] { width: 36px; height: 36px; color: var(--muted, #9AA19B); }

/* ===== Модели на похороны ===== */
.mt-funeral__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.mt-model--funeral .mt-model__pic { aspect-ratio: 4 / 3; }

/* ===== Технология ===== */
.mt-tech__layout { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 32px; align-items: start; }
.mt-tech__main > .mt-h3 { margin-top: 0; }
.mt-thick { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-bottom: 24px; }
.mt-thick__item { padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--card); }
.mt-thick__num { font-size: 30px; font-weight: 700; line-height: 1.1; color: var(--green-600); }
.mt-thick__title { margin-top: 6px; font-weight: 600; font-size: 15px; color: var(--ink); }
.mt-thick__text { margin-top: 2px; font-size: 13.5px; line-height: 1.45; color: var(--ink-3); }
.mt-tech__laser { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-bottom: 28px; }
.mt-laser { display: flex; gap: 14px; align-items: flex-start; padding: 18px; border-radius: 16px; background: var(--green-50); }
.mt-laser__title { margin: 0 0 4px; font-size: 17px; color: var(--ink); }
.mt-laser__text { margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--ink-2); }
.mt-paint { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; counter-reset: none; }
.mt-paint__step {
  position: relative; display: flex; flex-direction: column; gap: 4px; padding: 18px;
  border: 1px solid var(--line); border-radius: 16px; background: var(--card);
}
.mt-paint__step--opt { border-style: dashed; }
.mt-paint__num {
  display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; margin-bottom: 6px;
  border-radius: 50%; background: var(--green-600); color: #fff; font-weight: 700; font-size: 15px;
}
.mt-paint__step--opt .mt-paint__num { background: var(--card); color: var(--green-600); border: 1px solid var(--green-600); }
.mt-paint__title { font-weight: 600; font-size: 15px; color: var(--ink); }
.mt-paint__text { font-size: 13.5px; line-height: 1.45; color: var(--ink-3); }
.mt-tech__pic { aspect-ratio: 3 / 4; }

/* ===== Установка и ремонт ===== */
.mt-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.mt-step {
  position: relative; display: flex; flex-direction: column; gap: 10px; padding: 22px 18px 20px;
  border: 1px solid var(--line); border-radius: 18px; background: var(--card); min-width: 0;
}
.mt-step__num { position: absolute; right: 16px; top: 14px; font-size: 28px; font-weight: 700; color: var(--line); line-height: 1; }
.mt-step__title { margin: 4px 0 0; font-size: 17px; color: var(--ink); }
.mt-step__text { margin: 0; font-size: 14px; line-height: 1.5; color: var(--ink-3); }
.mt-repair {
  display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.6fr); gap: 28px; align-items: start;
  margin-top: 24px; padding: 28px; border-radius: 20px; background: var(--green-50);
}
.mt-repair__lead { margin: 0; font-size: 15.5px; line-height: 1.55; color: var(--ink-2); }
.mt-repair__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.mt-repair__item { display: flex; flex-direction: column; gap: 10px; padding: 18px; border-radius: 16px; background: var(--card); }
.mt-repair__item .mt-ico { background: var(--green-50); }
.mt-repair__title { font-weight: 600; font-size: 15.5px; color: var(--ink); }
.mt-repair__text { margin: 4px 0 0; font-size: 14px; line-height: 1.5; color: var(--ink-3); }

/* ===== Цена ===== */
.mt-price__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; align-items: stretch; }
.mt-price__card {
  display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 32px;
  border-radius: 20px; background: var(--ink, #1E2420); color: #fff;
}
.mt-price__label { font-size: 15px; opacity: .8; }
.mt-price__num { font-size: 48px; font-weight: 700; line-height: 1.05; color: #fff; }
.mt-price__text { margin: 0 0 8px; font-size: 15.5px; line-height: 1.55; opacity: .85; max-width: 460px; }
.mt-price__more { display: grid; gap: 8px; margin-top: 14px; }
.mt-price__more a { display: inline-flex; align-items: center; gap: 6px; color: #fff; opacity: .9; font-size: 14.5px; text-decoration: none; }
.mt-price__more a:hover { opacity: 1; text-decoration: underline; }
.mt-price__more [data-lucide] { width: 16px; height: 16px; }
.mt-price__factors { padding: 32px; border: 1px solid var(--line); border-radius: 20px; background: var(--card); }

/* ===== Гарантия и сроки ===== */
.mt-warranty__layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 24px; align-items: stretch; }
.mt-warranty__main {
  display: flex; gap: 22px; align-items: flex-start; padding: 32px;
  border: 1px solid var(--line); border-radius: 20px; background: var(--card);
}
.mt-warranty__main .mt-lead { margin-bottom: 18px; }
.mt-warranty__care-title { margin-top: 4px; font-size: 18px; }
.mt-term {
  display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 28px;
  border-radius: 20px; background: var(--green-50);
}
.mt-term__label { margin-top: 8px; font-size: 15px; color: var(--ink-3); }
.mt-term__num { font-size: 36px; font-weight: 700; line-height: 1.1; color: var(--green-700, #1F5F3C); }
.mt-term__text { margin: 0 0 8px; font-size: 14.5px; line-height: 1.55; color: var(--ink-2); }

/* ===== Галерея (первый год, комплекс) ===== */
.mt-gallery__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.mt-gallery__item { aspect-ratio: 4 / 3; }

/* ===== Что потом ===== */
.mt-after__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.mt-after-card { display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: 18px; background: var(--card); overflow: hidden; min-width: 0; }
.mt-after-card__pic { aspect-ratio: 3 / 2; border-radius: 0; }
.mt-after-card__body { display: flex; flex-direction: column; gap: 10px; padding: 22px 24px 24px; }
.mt-after-card__title { margin: 0; font-size: 20px; color: var(--ink); }
.mt-after-card__text { margin: 0; font-size: 15px; line-height: 1.55; color: var(--ink-3); }

/* ===== Проект (комплекс) ===== */
.mt-project__card {
  display: flex; gap: 24px; align-items: center; margin-bottom: 22px; padding: 28px 32px;
  border-radius: 20px; background: var(--green-50);
}
.mt-project__text { flex: 1 1 auto; min-width: 0; }
.mt-project__text .mt-lead { margin-top: 10px; }
.mt-steps--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }

/* ===== Квиз: список моделей и подсказка ===== */
.mt-quiz__dd { max-width: 520px; margin-bottom: 8px; }
.mt-quiz__hint {
  display: flex; gap: 8px; align-items: flex-start; margin: 12px 0 0; padding: 12px 14px; border-radius: 12px;
  background: var(--green-50); color: var(--ink-2); font-size: 14px; line-height: 1.5;
}
.mt-quiz__hint [data-lucide] { width: 18px; height: 18px; flex-shrink: 0; color: var(--green-600); }

/* ===== Места под фото из очереди ai-images (MetallPhotos, 2026-11-06) =====
   Классы-модификаторы ставятся только когда файл кадра есть (HasImage) — без файла блок выглядит как раньше. */
/* Шапка блока + кадр справа (почему металл / когда ставят / установка) */
.mt-top--pic { display: grid; grid-template-columns: minmax(0, 1fr) 440px; gap: 32px; align-items: center; margin-bottom: 28px; }
.mt-top--pic > .mt-head { margin-bottom: 0; }
.mt-top__pic { aspect-ratio: 16 / 9; }
/* Технология: кадр над карточкой резки / сварки, покраска — под кадром мастерской */
.mt-tech__side { display: grid; gap: 16px; align-content: start; min-width: 0; }
.mt-laser--pic { flex-wrap: wrap; }
.mt-laser__pic { flex: 0 0 100%; aspect-ratio: 16 / 9; border-radius: 12px; }
.mt-tech__paint-pic { aspect-ratio: 4 / 3; }
/* Цена: третья колонка с кадром во всю высоту ряда */
.mt-price__layout--pic { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 320px; }
.mt-price__pic { min-height: 320px; border-radius: 20px; }
/* Гарантия / сроки: кадр сверху боковой карточки */
.mt-term__pic { aspect-ratio: 4 / 3; margin-bottom: 8px; border-radius: 14px; }
/* Комплекс: кадр 3D-проекта вместо иконки */
.mt-project__pic { flex: 0 0 300px; aspect-ratio: 3 / 2; border-radius: 14px; }
.mt-project__card--pic .mt-btn { flex-shrink: 0; white-space: nowrap; }
/* Квиз: колонка с кадром справа (quiz-mem-aside, как у квиза мемориальных комплексов) */
.mt-quiz .quiz-mem-aside__pic picture { display: block; position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; }
.mt-quiz .quiz-mem-aside__pic picture > img.cover { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }

/* Зазоры между блоками — ровно 56px на десктопе (правило владельца; проверка tools/block_gaps.mjs).
   Стыки с общими блоками (зимняя плашка, «Как заказать», квиз, «Популярные услуги», SEO) складывали два отступа. */
@media (min-width: 1200px) {
  .mt-page > .winter-note { margin-top: 4px !important; margin-bottom: 0 !important; }
  .mt-page > .hero + section.mt-line { padding-top: 4px !important; }
  .mt-page > section.how2 { margin-top: 0 !important; margin-bottom: 56px !important; }
  /* Квиз и «Популярные услуги» лежат вне .mt-page — ищем страницу металла через :has. */
  body:has(.mt-page) section.quiz.mt-quiz { padding-top: 8px !important; margin-top: 8px !important; }
  body:has(.mt-page) section.quiz.mt-quiz + section.svc-popular-services,
  body:has(.mt-page) section.svc-popular-services { padding-top: 31px !important; }
  .mt-page > section.mt-faq { padding-top: 46px !important; }
  .mt-page > section.seo { padding-top: 8px !important; }
}

/* Квиз металла: правая колонка «Что вы получите» (06.11.2026). */
.mt-quiz__list { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.mt-quiz__list li { position: relative; padding-left: 22px; font-size: 14px; line-height: 1.45; color: var(--ink-2, #3a4440); }
.mt-quiz__list li::before { content: ""; position: absolute; left: 2px; top: 6px; width: 10px; height: 6px; border-left: 2px solid var(--green-600, #2f7a55); border-bottom: 2px solid var(--green-600, #2f7a55); transform: rotate(-45deg); }

/* Комплекс (06.11.2026, владелец): кнопка «Про 3D-проект» — в одну строку. */
.mt-project__card .mt-btn { flex-shrink: 0; white-space: nowrap; }
/* Цена + гарантия — визуально один блок «Сколько стоит»: между парами карточек тот же зазор, что внутри (24px). */
.service-page > section.mt-price:has(+ section.mt-warranty) { padding-bottom: 24px !important; }

/* Квиз → «Гарантируем качество» (полоса доверия в начале популярных услуг) — 24px, как на барельефе: это продолжение квиза
   (владелец 06.11.2026). Перебивает padding-top 31px из блока зазоров выше. */
@media (min-width: 1200px) {
  body:has(.mt-page) section.quiz.mt-quiz + section.svc-popular-services { padding-top: 25px !important; margin-top: -1px !important; }
}

/* «Толщина металла» (06.11.2026): срок сквозной ржавчины по ISO 9223/9224. */
.mt-rust { list-style: none; margin: 4px 0 12px; padding: 0; display: grid; gap: 10px; }
.mt-rust li { display: grid; gap: 2px; padding-bottom: 10px; border-bottom: 1px solid var(--line-2, #e7ebe6); }
.mt-rust li:last-child { border-bottom: 0; padding-bottom: 0; }
.mt-rust b { font-family: 'Lora', Georgia, serif; font-size: 26px; font-weight: 600; color: var(--green-600, #2f7a55); line-height: 1.1; }
.mt-rust span { font-size: 14px; color: var(--ink-2, #4a5550); }
.service-page > section.mt-thickness { padding-top: 0 !important; padding-bottom: 56px !important; }


/* Квиз металла — модель выбирают по картинкам (владелец 06.11.2026), а не из списка названий. */
.mt-quiz__models { display: grid; grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); gap: 10px; margin-bottom: 8px; }
.mt-quiz__model { position: relative; display: flex; flex-direction: column; gap: 6px; padding: 6px; border: 1.5px solid var(--line-2, #e7ebe6); border-radius: 12px; background: #fff; cursor: pointer; transition: border-color .15s, box-shadow .15s; }
.mt-quiz__model:hover { border-color: var(--green-300, #9cc7b3); }
.mt-quiz__model.is-checked { border-color: var(--green-600, #2f7a55); box-shadow: 0 0 0 3px rgba(47, 122, 85, .12); }
.mt-quiz__model input { position: absolute; opacity: 0; pointer-events: none; }
.mt-quiz__model-pic { position: relative; display: block; flex: none; width: 100%; height: auto; aspect-ratio: 1 / 1; border-radius: 8px; overflow: hidden; background: var(--bg-2, #f3f5f2); }
.mt-quiz__model-pic picture { position: absolute; inset: 0; display: block; margin: 0; }
.mt-quiz__model .mt-quiz__model-pic img { position: absolute; inset: 0; display: block; width: 100% !important; height: 100% !important; max-height: none; object-fit: cover; }
.mt-quiz__model--help .mt-quiz__model-pic { display: flex; align-items: center; justify-content: center; color: var(--green-600, #2f7a55); }
.mt-quiz__model--help .mt-quiz__model-pic [data-lucide], .mt-quiz__model--help .mt-quiz__model-pic svg { width: 34px; height: 34px; }
.mt-quiz__model-name { font-size: 12.5px; line-height: 1.3; font-weight: 600; color: var(--ink, #1d2622); padding: 0 2px 2px; }
.mt-quiz__side .mt-quiz__list { margin: 4px 0 14px; }
@media (max-width: 767px) {
  .mt-quiz__models { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
}

/* «Частые опасения» и «Изображение» (06.11.2026): карточки mt-why-card с двумя абзацами; блок «почему большая фотография». */
.mt-doubts .mt-why-card__text + .mt-why-card__text, .mt-image .mt-why-card__text + .mt-why-card__text { margin-top: 10px; }
.mt-doubts > .mt-note { margin-top: 20px; }
.mt-image__why { margin-top: 24px; display: flex; gap: 20px; align-items: flex-start; }
.mt-image__why .mt-h3 { margin: 0 0 12px; }

/* «Металл или гранит»: у каждой ячейки знак плюс/минус и подсветка, внизу итог (владелец 06.11.2026). */
.mt-table__cell--plus, .mt-table__cell--minus { display: flex; align-items: flex-start; gap: 10px; }
.mt-pm { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: 50%; font-size: 17px; font-weight: 800; line-height: 1; margin-top: -1px; }
.mt-table__cell--plus .mt-pm { background: #dff0e5; color: #237049; }
.mt-table__cell--minus .mt-pm { background: #f8e3df; color: #b2432f; }
.mt-table__cell--minus { color: #6b5a56; }
.mt-table__row--total .mt-table__name { font-weight: 800; }
.mt-pm-sum { display: inline-block; padding: 3px 12px; border-radius: 999px; font-size: 16px; font-weight: 800; margin-right: 6px; }
.mt-pm-sum--plus { background: #dff0e5; color: #237049; }
.mt-pm-sum--minus { background: #f8e3df; color: #b2432f; }
.mt-term__title { font-family: 'Lora', Georgia, serif; font-size: 22px; font-weight: 600; color: var(--ink, #1d2622); line-height: 1.2; }

/* Лупа на плитке модели и окно «Выбрать этот памятник» (06.11.2026). */
.mt-quiz__zoom { position: absolute; top: 10px; right: 10px; width: 30px; height: 30px; border: 0; border-radius: 50%; background: rgba(255,255,255,.92); color: var(--ink, #1d2622); display: inline-flex; align-items: center; justify-content: center; cursor: zoom-in; box-shadow: 0 2px 8px rgba(0,0,0,.18); }
.mt-quiz__zoom:hover { color: var(--green-600, #2f7a55); }
.mt-quiz__zoom svg, .mt-quiz__zoom [data-lucide] { width: 17px; height: 17px; }
.mt-quiz__zoombox { position: fixed; inset: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; padding: 24px; }
.mt-quiz__zoombox-backdrop { position: absolute; inset: 0; background: rgba(14, 20, 17, .72); }
.mt-quiz__zoombox-dialog { position: relative; max-width: min(760px, 100%); max-height: 100%; display: flex; flex-direction: column; background: #fff; border-radius: 18px; overflow: hidden; box-shadow: 0 30px 80px rgba(0,0,0,.35); }
.mt-quiz__zoombox-dialog img { display: block; width: 100%; max-height: calc(100vh - 170px); object-fit: contain; background: #f3f5f2; }
.mt-quiz__zoombox-bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 20px; }
.mt-quiz__zoombox-bar strong { font-size: 17px; }
.mt-quiz__zoombox-close { position: absolute; top: 10px; right: 10px; width: 38px; height: 38px; border: 0; border-radius: 50%; background: rgba(255,255,255,.92); font-size: 26px; line-height: 1; cursor: pointer; z-index: 1; }
@media (max-width: 767px) { .mt-quiz__zoombox { padding: 12px; } .mt-quiz__zoombox-bar { flex-direction: column; align-items: stretch; } }

/* Комплекс: «из металла делаем весь комплекс» (06.11.2026). */
.mt-kit { margin-top: 24px; display: flex; gap: 20px; align-items: flex-start; }
.mt-kit .mt-h3 { margin: 0 0 14px; }
.mt-kit__list { list-style: none; margin: 0 0 14px; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 24px; }
.mt-kit__list li { display: flex; gap: 10px; align-items: flex-start; font-size: 15px; line-height: 1.45; }
.mt-kit__list svg, .mt-kit__list [data-lucide] { flex: none; width: 20px; height: 20px; color: var(--green-600, #2f7a55); margin-top: 1px; }
@media (max-width: 767px) { .mt-kit { flex-direction: column; } .mt-kit__list { grid-template-columns: minmax(0, 1fr); } }

/* FAQ → «Полезные материалы»: было 112 (низ FAQ 56 + верх блока 56) — ровно 56 (владелец 06.11.2026). */
@media (min-width: 1200px) {
  body:has(.mt-page) section.svc-mat { padding-top: 0 !important; margin-top: 0 !important; }
}
.mt-quiz__zoombox-nav { position: absolute; top: calc(50% - 40px); width: 46px; height: 46px; border: 0; border-radius: 50%; background: rgba(255,255,255,.94); color: var(--ink, #1d2622); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: 0 4px 14px rgba(0,0,0,.2); z-index: 1; }
.mt-quiz__zoombox-nav:hover { color: var(--green-600, #2f7a55); }
.mt-quiz__zoombox-nav--prev { left: 12px; } .mt-quiz__zoombox-nav--next { right: 12px; }
.mt-quiz__zoombox-count { margin-left: 8px; font-size: 14px; color: var(--ink-3, #6c7772); }

/* Покраска (владелец 06.11.2026): три обязательных слоя — в три колонки, «по желанию» (лак, антикор) — ниже в две. */
@media (min-width: 768px) {
  .mt-page ol.mt-paint { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .mt-page ol.mt-paint > .mt-paint__step { grid-column: span 2; }
  .mt-page ol.mt-paint > .mt-paint__step--opt { grid-column: span 3; }
}
@media (max-width: 767px) { .mt-page ol.mt-paint { grid-template-columns: minmax(0, 1fr); } }


/* Квиз металла, шаг 3: «Бесплатная примерка» (владелец 07.11.2026) */
.mt-quiz .mt-fit { border: 1px solid #d9e7dc; background: #e3efe6; border-radius: 16px; padding: 18px 20px; margin: 4px 0 20px; }
.mt-quiz .mt-fit.is-ready { border-color: #2f7a43; }
.mt-quiz .mt-fit__head { display: flex; gap: 12px; align-items: flex-start; }
.mt-quiz .mt-fit__ico { flex: 0 0 36px; width: 36px; height: 36px; border-radius: 50%; background: #fff; color: #2f7a43; display: grid; place-items: center; }
.mt-quiz .mt-fit__ico svg { width: 18px; height: 18px; }
.mt-quiz .mt-fit__title { font-weight: 700; font-size: 16px; line-height: 1.3; color: #14181a; }
.mt-quiz .mt-fit__text { margin: 4px 0 0; font-size: 14px; line-height: 1.45; color: #4b5458; }
.mt-quiz .mt-fit__fields { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 14px; margin-top: 14px; }
.mt-quiz .mt-fit__fio { grid-column: 1 / -1; }
.mt-quiz .mt-fit__fields .quiz-mem-input { background: #fff; }
.mt-quiz .mt-fit__status { display: flex; gap: 6px; align-items: center; margin: 12px 0 0; font-size: 13px; color: #6b7478; }
.mt-quiz .mt-fit.is-ready .mt-fit__status { color: #2f7a43; font-weight: 600; }
.mt-quiz .mt-fit__status svg { width: 16px; height: 16px; flex: 0 0 16px; }
@media (max-width: 767px) {
  .mt-quiz .mt-fit { padding: 16px 14px; }
  .mt-quiz .mt-fit__fields { gap: 10px; }
}


/* Страницы моделей металла (/pamjatniki/pamjatnik-iz-metalla/{slug}, владелец 07.11.2026) */
.mt-model-page .mt-model-who__pick { display: flex; gap: 10px; align-items: flex-start; margin: 18px 0 0; padding: 14px 16px; border-radius: 14px; background: #e3efe6; font-size: 15px; line-height: 1.5; color: #2b3336; }
.mt-model-page .mt-model-who__pick svg { flex: 0 0 18px; width: 18px; height: 18px; color: #2f7a43; margin-top: 2px; }
.mt-model-page .mt-model-who .mt-lead { margin: 0 0 18px; }
.mt-model-others__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.mt-model-others__card { position: relative; display: block; border-radius: 18px; overflow: hidden; background: #fff; border: 1px solid rgba(20,24,26,.06); text-decoration: none; color: #14181a; box-shadow: 0 10px 28px -24px rgba(20,24,26,.22); transition: transform .2s, box-shadow .2s; }
.mt-model-others__card:hover { transform: translateY(-2px); box-shadow: 0 16px 32px -22px rgba(20,24,26,.3); }
.mt-model-others__card picture, .mt-model-others__card img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }
.mt-model-others__name { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 14px 18px; font-weight: 700; font-size: 16px; }
.mt-model-others__name svg { width: 18px; height: 18px; color: #2f7a43; flex: 0 0 18px; }
.mt-model-others__card--all { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 12px; min-height: 200px; background: #e3efe6; }
.mt-model-others__card--all .mt-model-others__name { padding: 0 18px; }
@media (max-width: 1199px) { .mt-model-others__grid { gap: 16px; } }
@media (max-width: 767px) {
  .mt-model-others__grid { grid-template-columns: 1fr 1fr; gap: 12px; }
  .mt-model-others__name { padding: 10px 12px; font-size: 14px; }
  .mt-model-others__card--all { min-height: 0; aspect-ratio: auto; padding: 16px 0; grid-column: 1 / -1; flex-direction: row; }
}
/* Каталог главной страницы металла: ссылка на страницу модели */
.mt-model__more { display: inline-flex; align-items: center; gap: 6px; margin-top: 8px; font-size: 14px; font-weight: 600; color: #2f7a43; text-decoration: none; }
.mt-model__more svg { width: 16px; height: 16px; }

/* Страницы моделей: уникальные блоки (07.11.2026) */
.mt-model-page .mt-model--link .mt-model__count { background: #2f7a43; color: #fff; }
.mt-model-meaning__inner { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 48px; align-items: center; background: #e3efe6; border-radius: 24px; padding: 40px 48px; }
.mt-model-meaning__p { font-size: 17px; line-height: 1.65; color: #2b3336; margin: 0 0 14px; }
.mt-model-meaning__p:last-child { margin-bottom: 0; }
.mt-model-meaning__pic { border-radius: 18px; overflow: hidden; }
.mt-model-split { display: grid; grid-template-columns: 460px minmax(0, 1fr); gap: 56px; align-items: center; }
.mt-model-split__pic { border-radius: 22px; overflow: hidden; }
.mt-model-split__list { margin: 20px 0 0; padding: 0; list-style: none; counter-reset: mts; display: grid; gap: 14px; }
.mt-model-split__list li { counter-increment: mts; position: relative; padding-left: 48px; font-size: 16px; line-height: 1.55; color: #2b3336; }
.mt-model-split__list li::before { content: counter(mts); position: absolute; left: 0; top: -2px; width: 32px; height: 32px; border-radius: 50%; background: #2f7a43; color: #fff; display: grid; place-items: center; font-weight: 700; font-size: 15px; }
.mt-model-gal__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.mt-model-gal__grid .mt-model { margin: 0; }
.mt-model-steps__list { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }
.mt-model-steps__item { position: relative; background: #fff; border: 1px solid rgba(20,24,26,.06); border-radius: 18px; padding: 22px 20px; box-shadow: 0 10px 28px -24px rgba(20,24,26,.22); }
.mt-model-steps__num { display: inline-grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: #e3efe6; color: #2f7a43; font-weight: 800; font-size: 17px; }
.mt-model-steps__title { margin: 14px 0 6px; font-size: 17px; font-weight: 700; }
.mt-model-steps__text { margin: 0; font-size: 14px; line-height: 1.5; color: #4b5458; }
.mt-model-colors__table { background: #fff; border: 1px solid rgba(20,24,26,.08); border-radius: 18px; overflow: hidden; }
.mt-model-colors__row { display: grid; grid-template-columns: 1.1fr 1fr 2fr; gap: 16px; padding: 14px 24px; border-top: 1px solid rgba(20,24,26,.06); font-size: 15px; line-height: 1.45; color: #2b3336; }
.mt-model-colors__row--head { border-top: 0; background: #e3efe6; font-weight: 700; color: #14181a; }
.mt-model-tech__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.mt-model-tech__card { background: #fff; border: 1px solid rgba(20,24,26,.06); border-radius: 20px; padding: 28px; box-shadow: 0 10px 28px -24px rgba(20,24,26,.22); }
.mt-model-tech__badge { display: inline-block; padding: 6px 12px; border-radius: 999px; background: #2f7a43; color: #fff; font-size: 13px; font-weight: 700; }
.mt-model-tech__name { margin: 16px 0 8px; font-size: 20px; font-weight: 700; }
.mt-model-tech__text { margin: 0; font-size: 15px; line-height: 1.55; color: #4b5458; }
.mt-model-tips__card { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 48px; align-items: center; background: #fff; border: 1px solid rgba(20,24,26,.06); border-radius: 24px; padding: 40px 48px; box-shadow: 0 10px 28px -24px rgba(20,24,26,.22); }
.mt-model-tips__card .mt-btn { margin-top: 22px; }
.mt-model-tips__pic { border-radius: 18px; overflow: hidden; }
.mt-model-strip__bar { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 32px; align-items: center; background: #1f5a33; color: #fff; border-radius: 22px; padding: 28px 36px; }
.mt-model-strip__label { display: block; font-size: 14px; opacity: .8; }
.mt-model-strip__num { display: block; font-size: 32px; font-weight: 800; white-space: nowrap; }
.mt-model-strip__text { margin: 0; font-size: 15px; line-height: 1.55; opacity: .92; }
.mt-model-strip__bar .mt-btn { background: #fff; color: #1f5a33; white-space: nowrap; }
.mt-model-strip__who { margin: 16px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.mt-model-strip__who li { display: flex; gap: 8px; align-items: flex-start; background: #e3efe6; border-radius: 14px; padding: 14px 16px; font-size: 14px; line-height: 1.45; }
.mt-model-strip__who svg { flex: 0 0 16px; width: 16px; height: 16px; color: #2f7a43; margin-top: 2px; }
@media (max-width: 1199px) {
  .mt-model-meaning__inner { grid-template-columns: minmax(0, 1fr) 280px; gap: 28px; padding: 32px; }
  .mt-model-split { grid-template-columns: 340px minmax(0, 1fr); gap: 32px; }
  .mt-model-steps__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .mt-model-gal__grid { gap: 16px; }
  .mt-model-tech__grid { gap: 16px; }
  .mt-model-tips__card { grid-template-columns: minmax(0, 1fr) 260px; gap: 28px; padding: 32px; }
  .mt-model-strip__bar { grid-template-columns: auto minmax(0, 1fr); }
  .mt-model-strip__bar .mt-btn { grid-column: 1 / -1; justify-self: start; }
  .mt-model-strip__who { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
  .mt-model-meaning__inner, .mt-model-tips__card { grid-template-columns: 1fr; gap: 20px; padding: 20px 16px; }
  .mt-model-split { grid-template-columns: 1fr; gap: 20px; }
  .mt-model-meaning__p { font-size: 16px; }
  .mt-model-gal__grid, .mt-model-tech__grid { display: flex; gap: 12px; }
  .mt-model-gal__grid .mt-model, .mt-model-tech__card { flex: 0 0 316px; }
  .mt-model-steps__list { grid-template-columns: 1fr; gap: 10px; }
  .mt-model-colors__row { grid-template-columns: 1fr 1fr; padding: 12px 16px; font-size: 14px; }
  .mt-model-colors__row span:nth-child(3) { grid-column: 1 / -1; color: #6b7478; }
  .mt-model-colors__row--head span:nth-child(3) { display: none; }
  .mt-model-strip__bar { grid-template-columns: 1fr; gap: 14px; padding: 22px 18px; }
  .mt-model-strip__who { grid-template-columns: 1fr; }
}

.mt-quiz__zoombox-page { margin-left: 10px; font-size: 14px; font-weight: 600; color: #2f7a43; text-decoration: none; white-space: nowrap; }

/* кадры блоков страниц моделей: своя пропорция, иначе картинка без высоты вылезает из блока */
.mt-model-split__pic, .mt-model-meaning__pic, .mt-model-tips__pic { aspect-ratio: 3 / 4; height: auto; }

/* Страницы моделей: блоки «points» (варианты / куда ставят / как заказать) и «first-year» (модели на первый год), 07.11.2026 */
.mt-model-points__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.mt-model-points__grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mt-model-points__card { background: #fff; border: 1px solid rgba(20,24,26,.06); border-radius: 20px; padding: 26px 24px; box-shadow: 0 10px 28px -24px rgba(20,24,26,.22); }
.mt-model-points__title { margin: 14px 0 6px; font-size: 18px; font-weight: 700; }
.mt-model-points__text { margin: 0; font-size: 15px; line-height: 1.55; color: #4b5458; }
.mt-model-first__card { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 40px; align-items: center; background: #e3efe6; border-radius: 24px; padding: 40px 48px; }
.mt-model-first__text { margin: 0; font-size: 17px; line-height: 1.6; color: #2b3336; }
.mt-model-first__link { display: inline-flex; align-items: center; gap: 6px; margin-top: 18px; font-size: 15px; font-weight: 600; color: #2f7a43; text-decoration: none; }
.mt-model-first__link svg { width: 16px; height: 16px; }
.mt-model-first__price { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; background: #fff; border-radius: 20px; padding: 26px 24px; box-shadow: 0 10px 28px -24px rgba(20,24,26,.22); }
.mt-model-first__label { font-size: 14px; color: #6b7478; }
.mt-model-first__num { font-size: 32px; font-weight: 800; color: #1f5a33; white-space: nowrap; }
.mt-model-first__term { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; color: #4b5458; }
.mt-model-first__term svg { width: 16px; height: 16px; color: #2f7a43; }
.mt-model-first__price .mt-btn { margin-top: 8px; }
@media (max-width: 1199px) {
  .mt-model-points__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .mt-model-points__grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .mt-model-first__card { grid-template-columns: minmax(0, 1fr) 280px; gap: 28px; padding: 32px; }
}
@media (max-width: 767px) {
  .mt-model-points__grid, .mt-model-points__grid--3 { display: flex; gap: 12px; }
  .mt-model-points__card { flex: 0 0 316px; }
  .mt-model-first__card { grid-template-columns: 1fr; gap: 20px; padding: 20px 16px; }
  .mt-model-first__text { font-size: 16px; }
  .mt-model-first__num { font-size: 28px; }
}

/* «Своё производство» в блоке технологии (07.11.2026) */
.mt-shop { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 32px; align-items: center; margin-top: 32px; padding: 28px; border-radius: 22px; background: #e3efe6; }
.mt-shop__text { margin: 8px 0 0; font-size: 16px; line-height: 1.6; color: #2b3336; }
.mt-shop__pics { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.mt-shop__pic { aspect-ratio: 3 / 2; border-radius: 16px; }
@media (max-width: 1199px) { .mt-shop { grid-template-columns: 1fr; gap: 18px; } }
@media (max-width: 767px) {
  .mt-shop { padding: 18px 16px; margin-top: 24px; }
  .mt-shop__pics { display: flex; gap: 12px; }
  .mt-shop__pics .mt-shop__pic { flex: 0 0 316px; }
}

/* «Другие модели» — карточки с описанием (07.11.2026, заменяют прежние плитки) */
.mt-model-page .mt-model-others__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.mt-model-page .mt-model-others__card { display: flex; flex-direction: column; border-radius: 20px; overflow: hidden; background: #fff; border: 1px solid rgba(20,24,26,.06); box-shadow: 0 10px 28px -24px rgba(20,24,26,.22); text-decoration: none; color: #14181a; min-height: 0; aspect-ratio: auto; padding: 0; transition: transform .2s, box-shadow .2s; }
.mt-model-page .mt-model-others__card:hover { transform: translateY(-3px); box-shadow: 0 18px 36px -24px rgba(20,24,26,.32); }
.mt-model-others__pic { position: relative; display: block; aspect-ratio: 4 / 5; overflow: hidden; background: #eef1ee; }
.mt-model-others__pic picture, .mt-model-others__pic img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.mt-model-others__count { position: absolute; left: 14px; bottom: 14px; display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border-radius: 999px; background: rgba(255,255,255,.92); font-size: 13px; font-weight: 600; color: #14181a; }
.mt-model-others__count svg { width: 14px; height: 14px; }
.mt-model-page .mt-model-others__body { display: flex; flex-direction: column; gap: 8px; padding: 18px 20px 20px; flex: 1; }
.mt-model-page .mt-model-others__name { display: block; padding: 0; font-family: var(--font-serif, inherit); font-size: 20px; font-weight: 700; line-height: 1.25; }
.mt-model-others__text { font-size: 15px; line-height: 1.5; color: #4b5458; flex: 1; }
.mt-model-others__go { display: inline-flex; align-items: center; gap: 6px; margin-top: 6px; font-size: 15px; font-weight: 700; color: #2f7a43; }
.mt-model-others__go svg { width: 16px; height: 16px; transition: transform .2s; }
.mt-model-others__card:hover .mt-model-others__go svg { transform: translateX(3px); }
.mt-model-page .mt-model-others__card--all { background: #1f5a33; color: #fff; border-color: transparent; justify-content: flex-start; align-items: stretch; gap: 0; flex-direction: column; }
.mt-model-page .mt-model-others__card--all .mt-model-others__text { color: rgba(255,255,255,.85); }
.mt-model-page .mt-model-others__card--all .mt-model-others__go { color: #fff; }
.mt-model-others__all-pics { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: 14px 14px 0; aspect-ratio: auto; }
.mt-model-others__all-pics picture, .mt-model-others__all-pics img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; border-radius: 12px; }
@media (max-width: 1199px) { .mt-model-page .mt-model-others__grid { gap: 16px; } .mt-model-page .mt-model-others__name { font-size: 18px; } }
@media (max-width: 767px) {
  .mt-model-page .mt-model-others__grid { display: flex; grid-template-columns: none; gap: 12px; }
  .mt-model-page .mt-model-others__card { flex: 0 0 316px; }
  .mt-model-page .mt-model-others__card--all { grid-column: auto; flex-direction: column; padding: 0; }
}
.mt-model-page .mt-model-others__all-pics img.mt-model-others__mini, .mt-model-page .mt-model-others__all-pics picture { position: static; display: block; width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: cover; border-radius: 12px; }

/* Страницы моделей: единые отступы между блоками (владелец 07.11.2026). Порядок блоков у каждой модели свой,
   поэтому собственные padding/margin блоков обнуляем (тройной класс — перебить правила вида section.quiz.mt-quiz + section…)
   и ставим ровно 56 px между соседями; под hero — 24 px; «Гарантируем качество» (начало популярных услуг) — 24 px, как между карточками. */
body .mt-model-page.mt-model-page.mt-model-page > :is(section, aside):not(.hero) { padding-top: 0 !important; padding-bottom: 0 !important; margin-top: 0 !important; margin-bottom: 0 !important; }
body .mt-model-page.mt-model-page.mt-model-page > :is(section, aside) + :is(section, aside):not(.hero) { margin-top: 56px !important; }
body .mt-model-page.mt-model-page.mt-model-page > .hero { padding-bottom: 0 !important; margin-bottom: 0 !important; }
body .mt-model-page.mt-model-page.mt-model-page > .hero + .winter-note { margin-top: 24px !important; }
body .mt-model-page.mt-model-page.mt-model-page > :is(section, aside) + section.svc-popular-services { margin-top: 24px !important; }
body .mt-model-page.mt-model-page.mt-model-page > section.svc-popular-services > .trust-bar:first-child { margin-top: 0 !important; }
body:has(.mt-model-page) .shell > section.svc-mat { padding-top: 0 !important; margin-top: 56px !important; }

/* Лупа квиза на разметке granit-lightbox: ссылка на страницу модели — своей строкой под названием (07.11.2026) */
.mt-quiz__lightbox .mt-quiz__zoombox-page { display: block; margin: 4px 0 0; font-size: 14px; font-weight: 600; color: #2f7a43; text-decoration: none; }
.mt-quiz__lightbox .granit-lightbox__cta { border: 0; cursor: pointer; font: inherit; }
body .mt-model-page.mt-model-page.mt-model-page > section.quiz.mt-quiz + section.svc-popular-services { padding-top: 0 !important; margin-top: 24px !important; }

/* «Три размера» (07.11.2026) */
.mt-sizes__layout { display: grid; grid-template-columns: 420px minmax(0, 1fr); gap: 40px; align-items: center; }
.mt-sizes__scheme { background: #e3efe6; border-radius: 22px; padding: 24px 20px 12px; }
.mt-sizes__svg { display: block; width: 100%; height: auto; }
.mt-sizes__ground { stroke: #9fb8a6; stroke-width: 2; }
.mt-sizes__stela { fill: #2f5d43; }
.mt-sizes__photo { fill: #e9efe9; }
.mt-sizes__human { fill: #c3cec6; }
.mt-sizes__label { font: 700 13px var(--font-sans, sans-serif); fill: #1f5a33; }
.mt-sizes__label--muted { fill: #7b8a80; font-weight: 600; }
.mt-sizes__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.mt-sizes__card { background: #fff; border: 1px solid rgba(20,24,26,.06); border-radius: 18px; padding: 20px; box-shadow: 0 10px 28px -24px rgba(20,24,26,.22); }
.mt-sizes__num { font-size: 22px; font-weight: 800; color: #2f7a43; white-space: nowrap; }
.mt-sizes__title { margin: 8px 0 6px; font-size: 17px; font-weight: 700; }
.mt-sizes__text { margin: 0; font-size: 14px; line-height: 1.5; color: #4b5458; }
.mt-sizes__stock { grid-column: 1 / -1; display: flex; gap: 10px; align-items: flex-start; margin: 4px 0 0; padding: 14px 16px; border-radius: 14px; background: #e3efe6; font-size: 15px; line-height: 1.5; color: #2b3336; }
.mt-sizes__stock svg { flex: 0 0 20px; width: 20px; height: 20px; color: #2f7a43; margin-top: 1px; }
@media (max-width: 1199px) { .mt-sizes__layout { grid-template-columns: 1fr; gap: 20px; } .mt-sizes__scheme { max-width: 520px; } }
@media (max-width: 767px) { .mt-sizes__cards { grid-template-columns: 1fr; gap: 10px; } .mt-sizes__card { padding: 16px; } }

/* Первый год: «Живое лицо — а не сиротливый крест» (07.11.2026) */
.mt-first-why__card { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 28px; padding: 40px 48px; border-radius: 24px; background: #e3efe6; }
.mt-first-why__ico { display: grid; place-items: center; width: 72px; height: 72px; border-radius: 20px; background: #2f7a43; color: #fff; }
.mt-first-why__ico svg { width: 34px; height: 34px; }
.mt-first-why__copy .mt-h2 { margin-bottom: 16px; }
.mt-first-why__p { max-width: 860px; margin: 0 0 12px; font-size: 17px; line-height: 1.65; color: #2b3336; }
.mt-first-why__p--accent { margin: 4px 0 0; font-weight: 700; color: #1f5a33; }
@media (max-width: 1199px) { .mt-first-why__card { padding: 32px; gap: 20px; } }
@media (max-width: 767px) {
  .mt-first-why__card { grid-template-columns: 1fr; padding: 22px 16px; gap: 14px; }
  .mt-first-why__ico { width: 52px; height: 52px; border-radius: 14px; }
  .mt-first-why__ico svg { width: 26px; height: 26px; }
  .mt-first-why__p { font-size: 16px; }
}

/* Первый год: «Что прислать сразу» в карточке сроков; отступы новых блоков (07.11.2026) */
.mt-term-need__title { margin: 24px 0 12px; }
.mt-term-need { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.mt-term-need__item { display: grid; grid-template-columns: 40px minmax(0, 1fr); column-gap: 12px; row-gap: 2px; align-items: start; padding: 14px; border-radius: 14px; background: #e3efe6; }
.mt-term-need__item .mt-ico { grid-row: span 2; width: 40px; height: 40px; }
.mt-term-need__item b { font-size: 15px; }
.mt-term-need__item span:last-child { font-size: 14px; line-height: 1.45; color: #4b5458; }
.mt-term-need__note { display: flex; gap: 8px; align-items: flex-start; margin: 14px 0 0; font-size: 15px; line-height: 1.5; color: #1f5a33; font-weight: 600; }
.mt-term-need__note svg { flex: 0 0 18px; width: 18px; height: 18px; margin-top: 2px; }
@media (max-width: 767px) { .mt-term-need { grid-template-columns: 1fr; } }
.mt-page:not(.mt-model-page) > section.mt-first-why, .mt-page:not(.mt-model-page) > section.mt-sizes { padding-bottom: 56px; }
.mt-first-why__card { background: #e3efe6; }

.mt-sizes__line { fill: #c9d6cc; }
.mt-sizes__cards { row-gap: 10px; }
.mt-sizes__stock { margin-top: 0; }

/* «Смысл» на страницах моделей — компактно (владелец 07.11.2026: «очень большой блок»): без отдельной светлой
   карточки, фото ниже, текст по центру фото, нормальный отступ под заголовком. */
.mt-model-meaning__inner { background: none; padding: 0; grid-template-columns: minmax(0, 1fr) 320px; gap: 56px; align-items: center; border-radius: 0; }
.mt-model-meaning__pic { aspect-ratio: 4 / 5 !important; }
.mt-model-meaning__copy .mt-h2 { margin-bottom: 16px; }
@media (max-width: 1199px) { .mt-model-meaning__inner { grid-template-columns: minmax(0, 1fr) 260px; gap: 32px; padding: 0; } }
@media (max-width: 767px) { .mt-model-meaning__inner { grid-template-columns: 1fr; gap: 20px; padding: 0; } }

/* 07.11.2026: фото в «Смысле» на 30% крупнее; блок «первый год» на модели — фон заметно темнее страницы */
.mt-model-meaning__inner { grid-template-columns: minmax(0, 1fr) 416px; }
@media (max-width: 1199px) { .mt-model-meaning__inner { grid-template-columns: minmax(0, 1fr) 320px; } }
@media (max-width: 767px) { .mt-model-meaning__inner { grid-template-columns: 1fr; } }
.mt-model-first__card { background: #e3efe6; }

/* Фон выделенных блоков не сливается со страницей (владелец 07.11.2026): бледный #f3f8f4 → #e3efe6.
   Между заголовком блока и текстом — всегда отступ. */
.mt-page .mt-h2 + :is(p, ul, ol, .mt-checks, .mt-lead), .mt-page .mt-h3 + :is(p, ul, ol, .mt-checks) { margin-top: 16px; }
.mt-model-tips__card .mt-h2 { margin-bottom: 16px; }

@media (min-width: 768px) { .mt-quiz__models { grid-template-columns: repeat(var(--mt-cols, 8), minmax(0, 1fr)); } } /* без висячего ряда */
/* «Все 13 моделей» — мягкий фон вместо тяжёлого тёмно-зелёного (владелец 07.11.2026); текст тёмный */
.mt-model-page .mt-model-others__card--all { background: #dcebe0; color: #14181a; border: 1px solid #cfe1d4; }
.mt-model-page .mt-model-others__card--all .mt-model-others__name { color: #14181a; }
.mt-model-page .mt-model-others__card--all .mt-model-others__text { color: #3f4a46; }
.mt-model-page .mt-model-others__card--all .mt-model-others__go { color: #1f6a3a; }
