/* ============================================================================
   Состояния наведения/нажатия и типографика — правки ОД от 09.09.2026
   (Planka 1860264235460724339, вложение «ПРАВКИ от ОД.docx»).

   Файл подключается последним, уже после template_styles.css и после <style>
   внутри инклудов, поэтому правила ниже перекрывают их обычным порядком каскада —
   без !important и без правок в файлах, которые параллельно ведёт вёрстка.
   ============================================================================ */

:root {
  --st-red: #A21B2C;          /* фирменный красный */
  --st-red-soft: rgba(162, 27, 44, .45);  /* полупрозрачная точка в чекбоксе */
  --st-navy: #2A3948;         /* тёмно-синий текста */
  --st-grey: #BDBDBD;    /* серый бордер */
}

/* ============================================================================
   1. Главная страница
   ============================================================================ */
@media (min-width: 1024px) {
  /* 1.1 Первая строка подзаголовка должна заканчиваться словом «ПРОИЗВОДИТЕЛЕЙ»,
     вторая — начинаться со «СЕЛЬСКОХОЗЯЙСТВЕННЫХ», на любой ширине экрана.
     Ширина строки задана в em: точка переноса привязана к кеглю, а не к vw,
     поэтому на 1920 и на 2560 текст ломается по одному и тому же слову.
     Строка «ТЕХНИКА БРЕНДА BELARUS И ДРУГИХ ПРОИЗВОДИТЕЛЕЙ» — 20.95em,
     она же со словом «СЕЛЬСКОХОЗЯЙСТВЕННЫХ» — 31em. */
  .hero__subtitle { max-width: 22em; }

  /* 1.2 Техника на первом экране масштабируется вместе с окном. В макете
     (Frame 607, 1920px) композиция 1305px шириной = 68vw и правый край заголовка
     приходится над правым краем второго трактора слева. Раньше картинка
     выводилась в натуральную величину и на широком мониторе выглядела мелкой. */
  .hero__image { width: 68vw; }
  .hero__image img { width: 100%; height: auto; max-height: none; }

  /* 1.3 «Начать работу» не должна уходить за нижний край окна: первый экран по
     макету 1075px высотой, а рабочее окно браузера обычно ниже. Ссылка встаёт либо
     на своё место по макету, либо на 40px над нижним краем окна — что выше. */
  .hero__scroll {
    top: min(calc(100% - 5vw - 1.5em), calc(100vh - 112px - 1.5em - 40px));
    bottom: auto;
  }
}

/* ============================================================================
   2. Поиск по модели: крестик очистки поля
   ------------------------------------------------------------------------
   2.2 Крестик рисовал сам браузер (жирный тёмно-синий глиф) — он выбивался
   по цвету, толщине и масштабу. Заменяем на тонкий серый, в размер лупы.
   ============================================================================ */
input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
  width: 13px; height: 13px; margin-left: 6px; cursor: pointer;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M1.5 1.5l11 11M12.5 1.5l-11 11' stroke='%236B7782' stroke-width='1.2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
  opacity: .7;
  transition: opacity .15s;
}
input[type="search"]::-webkit-search-cancel-button:hover { opacity: 1; }

/* ============================================================================
   3. Полоса серий тракторов
   ============================================================================ */
/* 3.3 (п.12) При наведении пункт подчёркивается красной линией — раньше менялся
   только цвет надписи, и на светлом фоне это было незаметно. */
.series-trip__strip button:hover,
.series-bar a:hover {
  color: var(--st-navy);
  border-bottom-color: var(--st-red);
}

/* 4.1 Список серий на профайле трактора не должен прокручиваться по горизонтали:
   зазор между пунктами задан в vw и на широком мониторе выдавливал последние
   пункты («Специализированные тракторы и шасси») в прокрутку. Свободное место
   всё равно раздаёт space-between, поэтому потолок зазора ничего не ломает. */
.tractor-profile .series-trip--model .series-trip__strip { gap: clamp(6px, 1.1vw, 18px); }

/* ============================================================================
   4. Пункты списков: фильтры и выпадающие списки профайлов
   ------------------------------------------------------------------------
   Общая разметка — label.custom-checkbox > input + span.checkmark + span.
   ============================================================================ */

/* Полупрозрачная красная точка при наведении на невыбранный пункт —
   пп. 5.4, 6.4, 7.2, 12.4, 14.4 и п. 17. */
.custom-checkbox:hover input:not(:checked) ~ .checkmark::after {
  transform: translate(-50%, -50%) scale(1);
  background-color: var(--st-red-soft);
}
.custom-checkbox:hover input ~ .checkmark { border-color: var(--st-red); }

/* В фильтрах надпись при наведении краснеет (пп. 5.4, 6.4, 7.2). */
.custom-checkbox:hover span:not(.checkmark) { color: var(--st-red); }

/* В выпадающих списках профайлов надпись при наведении тёмно-синяя,
   при нажатии — красная (пп. 17, 12.4, 14.4). */
.country-select__panel .custom-checkbox:hover span:not(.checkmark) { color: var(--st-navy); }
.country-select__panel .custom-checkbox:active span:not(.checkmark) { color: var(--st-red); }

/* Синие и чёрные обводки, которые браузер рисует при нажатии, — убрать
   (пп. 18, 12.5, 14.5). Клавиатурная навигация сохраняется: у неё остаётся
   :focus-visible с фирменной рамкой. */
.custom-checkbox input:focus ~ .checkmark,
.custom-checkbox input:focus-visible ~ .checkmark { outline: none; }
.custom-checkbox input:focus-visible ~ .checkmark { box-shadow: 0 0 0 2px var(--st-red-soft); }
.country-select__toggle:focus,
.country-select__toggle:focus-visible,
.filters__group-head:focus,
.filters__group-head:focus-visible,
.series-trip__strip button:focus,
.fav-section__title:focus { outline: none; }

/* Кегль, интервал, разделительные линии и регистр пунктов фильтров
   (пп. 5.1, 5.3, 6.1, 6.2, 6.3). */
.purpose-list .checkbox,
.benergy-list .checkbox,
.filters__group-body .checkbox {
  font-size: 14px;
  line-height: 1.3;
  padding: 9px 0;
  border-bottom: 1px solid #ECECEC;
  width: 100%;
}
.filters__group-body .mtype-group label.checkbox:last-child  {    border-bottom: 1px solid #ECECEC;}
.filters__group-body .mtype-group:last-child label.checkbox:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.mtype-list .checkbox--header {
    font-size: 12px;
	color: #BDBDBD;
    margin-top: 8px; 
	cursor: default;
	text-transform: none;
	font-weight: 400;
	padding-bottom: 0;
	border-bottom: none;
	
  }

.purpose-list .checkbox:last-child,
.benergy-list .checkbox:last-child,
.filters__group-body .checkbox:last-child { border-bottom: 0; }
.purpose-list .checkbox { text-transform: uppercase; }


\

	.browser-firefox .series-filter__list {
		  /* Firefox */
		  scrollbar-width: thin;
		  scrollbar-color: #9B9B9B #E9E9E9;
		}
	.series-filter__list::-webkit-scrollbar {
		width: 4px;
		height: 8px;
		border-radius: 2px;		
	}

	.series-filter__list::-webkit-scrollbar-track {
		background: #E9E9E9;
			 border-left: 1px solid transparent;
			border-right: 1px solid transparent;
			/* Ensures the background doesn't bleed into the transparent borders */
			background-clip: padding-box; 
	}

	.series-filter__list::-webkit-scrollbar-thumb {
		background: #9B9B9B;
		border-radius:37px;
		width: 4px;
		border: 4px solid #9B9B9B;;
	}

	.series-filter__list::-webkit-scrollbar-thumb:hover {
		background: #9B9B9B;
	}

/* 5.2 В списке базовых энергосредств слово BELARUS — Bold, цифры — Regular. */
.benergy-list .checkbox span:not(.checkmark) { font-weight: 400; }
.benergy-list .checkbox span b { font-weight: 700; }

/* ============================================================================
   5. Кнопки
   ============================================================================ */
/* Красная кнопка: при наведении становится белой с тёмно-синей надписью и рамкой,
   при нажатии возвращается к прежнему виду (пп. 19, 12.6, 14.6). */
.btn--primary:hover,
.country-select__apply:hover,
.tractor-profile .report-actions .btn--primary:hover,
.mini-profile .report-actions .btn--primary:hover,
.forest-profile .report-actions .btn--primary:hover,
.container:has(.spec-profile) .report-actions .btn--primary:hover   {
  background: #fff;
  color: var(--st-navy);
  border-color: var(--st-grey );
}
.btn--primary:active,
.country-select__apply:active {
  background: var(--st-red);
  color: #fff;
  border-color: var(--st-red);
}

/* Кнопка «Отправить» рядом с полем e-mail — тот же класс btn--primary,
   правило выше закрывает и её (пп. 22, 10.4). */

/* Кнопка сохранения в избранное (закладка): при наведении — красная
   полупрозрачная заливка, а не смена цвета контура (пп. 20, 95). */
.add-to-fav svg path { transition: fill .15s, stroke .15s; }
.add-to-fav:hover svg path { fill: var(--st-red-soft); stroke: var(--st-red-soft); }
.add-to-fav.is-active svg path { fill: var(--st-red); stroke: var(--st-red); }

/* ============================================================================
   6. Ссылка на производителя
   ------------------------------------------------------------------------
   8.2 (п.51) При наведении подчёркивающая линия пропадала — она должна оставаться.
   ============================================================================ */
.manuf-link:hover,
.results-table a:hover,
.spec-profile a.manuf-link:hover { text-decoration: underline; color: var(--st-red); }

/* ============================================================================
   7. Плитки «Возможно, вас заинтересует»
   ============================================================================ */
/* 10.3 Подскок плитки убран — по стайлгайду фон становится белым с тонкой рамкой. */
.spec-reco__tile { transition: background .15s ease, box-shadow .15s ease; }
.spec-reco__tile:hover {
  transform: none;
  background: #fff;
  box-shadow: inset 0 0 0 1px var(--c-border, rgba(189, 189, 189, 1));
}
/* 10.2 Логотип производителя занимает всё отведённое поле: у логотипов разные
   пропорции, и в натуральную величину часть из них выглядела мелкой. */
.spec-reco__tile img.spec-reco__logo { width: 80px; height: 37px; object-fit: contain; object-position: left center; }
@media (max-width: 1100px) { .spec-reco__tile img.spec-reco__logo { width: 54px; height: 28px; } }
@media (max-width: 600px)  { .spec-reco__tile img.spec-reco__logo { width: 34px; height: 20px; } }

/* 3.1 На плитках тракторов остаётся только «Знак качества» — белый и без подложки
   (разметку фильтрует include/agri-params-reco.php). Размер — по макету. */
.tractor-card__sign--quality { width: 69px; height: auto; }


/* Плитки направлений (мини- и лесная техника). */
.reco-strip__card { transition: background .15s ease, box-shadow .15s ease; }
.reco-strip__card:hover { transform: none; }
.reco-strip__card:hover .reco-strip__img { transform: none; }
/* 11.2, 13.2 Техника внутри плитки крупнее — по макету она занимает почти всю
   плитку, а не 82×78 % её площади. */
.reco-strip__img { width: 94%; height: 88%; }
.reco-strip--split .reco-strip__card:nth-child(3) .reco-strip__img { height: 78%; }
/* 11.3, 13.3 Слово BELARUS и номер модели — Akrobat Black. */
.reco-strip__brand,
.reco-strip__brand b { font-weight: 900; }

.reco-strip__brand b { font-weight: 700; }


/* ============================================================================
   8. Профайлы
   ============================================================================ */
/* 8.1 Снимок спецтехники масштабируется вместе с окном: в макете он занимает
   37 % ширины кадра, а фиксированные 725px на широком мониторе выглядят мелко. */
.spec-profile__image img { max-width: max(725px, 37vw); }

/* 12.1 Снимок мини-техники, наоборот, был крупнее макета (в макете высота кадра
   318px при ширине 1920 = 16.5vw, на портале стояло 480px). */
.mini-profile .tractor-hero__image img { max-height: clamp(240px, 16.5vw, 420px); }

/* 12.2 Кнопка сохранения в избранное — по высоте с названием модели напротив.
   Кнопка не наследовала кегль (у button свой), поэтому флажок оставался мелким. */
.mini-profile .tractor-hero__model .add-to-fav { font: inherit; }
.mini-profile .tractor-hero__model .add-to-fav > svg { width: 30px;height: 38px; }
    

/* Подсказка у кнопки «Сохранить в мою …» — белая с рамкой, серый Akrobat Regular
   (пп. 12.3, 93). Раньше это была тёмно-синяя плашка с белым текстом — она
   отличалась по стилю от остальных подсказок портала. */
.profile-save__hint {
  font-family: 'Akrobat', system-ui, sans-serif;
  font-weight: 400;
  color: rgba(42, 57, 72, 0.53);
  background: #fff;
  border: 1px solid #CCCCCC;
  box-shadow: none;
}

/* ============================================================================
   9. Окно «Требования для агрегатирования» — замечания тестирования 09.09.2026
   ------------------------------------------------------------------------
   Правила ограничены `.req-modal`: те же классы `agg-req__*` рисуют превью
   требований в «Избранном» и лист отчёта, их вид менять не нужно.
   ============================================================================ */

/* 4.3 Подзаголовки прижимались к краю окна, а текст таблицы стоит на 12px правее —
   в макете они выровнены. 4.4 Кегль подзаголовков в макете 18px, стояло 14px. */
.req-modal .agg-req__section,
.req-modal .agg-req__sub,
.req-modal .agg-req__sheet-title,
.req-modal .agg-req__variant-title,
.req-modal .agg-req__method,
.req-modal .agg-req__axis,
.req-modal .agg-req__note,
.req-modal .agg-req__category {
  padding-left: 12px;
  font-size: 18px;
}
.req-modal .agg-req__note { font-size: 18px;color: #2A3948 }

/* 4.7 Таблицы по макету: ячейки одного серого тона, разделены белыми линиями.
   Полосатость (чередование строк) и слипшиеся ячейки — не оттуда.
   Таблица подобранных элементов ТСУ (--grid) со своей сеткой не трогается. */
.req-modal .agg-req__table:not(.agg-req__table--grid) tbody tr,
.req-modal .agg-req__table:not(.agg-req__table--grid) tbody tr:nth-child(odd) {
  background: transparent;
}
.req-modal .agg-req__table:not(.agg-req__table--grid) td {
  background: var(--c-bg-soft, #F0F0F0);
  border: 2px solid #fff;
}
/* Единица измерения стояла у дальнего края: колонка параметра была шире макета. */
.req-modal .agg-req__param { width: 43%; }
.req-modal .agg-req__unit { width: 7%; }

/* 4.6 На узком экране схема выводилась в натуральную величину, и в окно попадал
   только её угол. */
.req-modal img { max-width: 100%; height: auto; }
.req-modal .agg-req__with-image--below .agg-req__section-img img { max-width: min(640px, 100%); margin: 0 auto; }
.req-modal .agg-req__variant-img img { max-width: min(280px, 100%); }
.req-modal .agg-req__table {font-size: 18px;}
.req-modal .agg-req__with-image {align-items: unset;  gap: 1px;}
.req-modal .agg-req__with-image:not(.agg-req__with-image--below) .agg-req__section-img {border-bottom: 2px solid #fff; border-top: 2px solid #fff; margin-bottom: 13px; background: var(--c-bg-soft, #F0F0F0);     flex: 0 0 360px;     padding: 30px;}
.req-modal .agg-req__table {margin-bottom: 13px;}

/* ============================================================================
   10. Сводная таблица подбора — замечание тестирования 09.09.2026, п. 11
   ------------------------------------------------------------------------
   На ширинах 1024–1200 область фильтров забирала 309px, последней колонке
   «Серии / модели тракторов» оставалось 84px, и заголовок ломался по буквам.
   Область фильтров переходит в планшетный вид раньше, а таблице задан нижний
   предел ширины: лучше прокрутка, чем перенос внутри слова.
   ============================================================================ */
@media (max-width: 1200px) {
  .layout-with-filters { /*grid-template-columns: 1fr;*/ }
  .filters { position: static; }
}
@media (min-width: 1024px) {
  .results-table { min-width: 860px; }
}

/* ============================================================================
   11. Избранное
   ============================================================================ */
/* 17.6 Линия под названием раздела — толще и тёмно-синяя. */
.fav-section__head { }

/* 17.1 Крестик крупнее; 17.2 верхняя сторона кнопки лежит на линии строки. */
.fav-item { position: relative; }
.fav-item .fav-del {
  width: 51px; height: 51px; font-size: 26px; line-height: 1;
  align-self: start; 
}
@media (max-width: 767px) { .fav-item .fav-del { width: 40px; height: 40px; font-size: 22px; } }

/* 17.3 Название модели — Akrobat Bold. */
.fav-item__model { font-weight: 700; }

/* 17.4 «Требования для агрегатирования» — Akrobat Regular, тёмно-синий,
   кеглем как название модели напротив. */
.fav-item__req-title {
  color: var(--st-navy);
  font-weight: 400;
  font-size: 20px;
  text-transform: uppercase;
}


@media (max-width: 600px) {
    .mini-profile .tractor-hero__model .add-to-fav > svg  {
        width: 23px;
        height: 29px;
    }
}

/* ============================================================================
   12. Знаки сносок в таблице характеристик и в пояснениях под ней —
   обратная связь КБ 14.09.2026 по Приложению 1, п. 4.1 и 5.1
   ------------------------------------------------------------------------
   По дизайн-макету (профайл BELARUS 92П) знак сноски — надстрочный, того же цвета,
   что текст рядом, одинаковый в таблице и в пояснениях. Было: в профайле трактора
   знак крупнее самого значения, красный, а под таблицей — мелкий; в профайле машины
   цветом текста в таблице и красным под ней. Звёздочка в шрифте Akrobat мельче
   цифр и при их кегле читается как точка — ей свой кегль (SpecTemplate::fnClass).
   ============================================================================ */
body .spec-table .spec-table__fn,
body .spec-notes sup,
body .tractor-hero__badge-value .spec-table__fn {
  display: inline; height: auto; transform: none; margin: 0 0 0 1px;
  font-size: .7em; line-height: 0; vertical-align: super; color: inherit;
}
body .spec-table .spec-table__fn--star,
body .spec-notes sup.spec-table__fn--star {
  font-size: 1.15em; vertical-align: baseline;
}
body .spec-notes sup { margin: 0 3px 0 0; font-size: .85em; }
/* В кратких характеристиках число набрано крупно — знаку хватает меньшей доли кегля. */
body .tractor-hero__badge-value .spec-table__fn { font-size: .45em; }
body .tractor-hero__badge-value .spec-table__fn--star { font-size: .7em; }

/* ============================================================================
   13. Окно «Требования для агрегатирования» — обратная связь КБ 14.09.2026, п. 9
   ============================================================================ */
/* Знак сноски у подзаголовка «Задний навесной балласт**» и в самой сноске — в строку. */
.agg-req__fn { margin-left: 1px; }
.agg-req__note .agg-req__fn { margin: 0 2px 0 0; }
/* Нижние тяги ЗНУ: ширины колонок заданы в разметке и одинаковы у всех вариантов. */
@media (min-width: 768px) {
  .agg-req__table--tugs { table-layout: fixed; }
  .agg-req__table--tugs th,
  .agg-req__table--tugs td { overflow-wrap: break-word; }
}
/* Изображение подраздела («Гидровыводы», «Розетки», «Пневмоголовки») — справа от
   таблицы, уже, чем схема раздела. */
.req-modal .agg-req__sub + .agg-req__with-image .agg-req__section-img { flex: 0 0 220px; padding: 16px; }

/* ============================================================================
   14. Сводная таблица подбора: колонка «Серии / модели тракторов» —
   обратная связь КБ 14.09.2026 по Приложению 1, п. 11
   ------------------------------------------------------------------------
   Перенос только по словам (п. 11.1) — ни внутри слова, ни растягиванием ячейки.
   По макету колонка шире соседних: «Гусеничные тракторы» помещается в строку (п. 11.2).
   ============================================================================ */
@media (min-width: 1101px) {
  /* Ширина в процентах у таблицы с автоматической раскладкой — лишь пожелание, и колонка
     сжималась до 128px. Нижний предел держит «Гусеничные тракторы» в одну строку. */
  .results-table td.col-series,
  .results-table th.col-series { width: 10%; min-width: 100px; max-width: none; overflow-wrap: normal; word-break: normal; }
}

@media (min-width: 650px) and (max-width: 900px) {
	.agg-req__with-image {display: flex}
	.agg-req__with-image.agg-req__with-image--below {flex-direction: column;}
    .req-modal .agg-req__with-image:not(.agg-req__with-image--below) .agg-req__section-img {flex: 0 0 240px; display: inline-flex; align-items:center; }
}
@media (max-width: 650px) { 
	.req-modal .agg-req__with-image:not(.agg-req__with-image--below) .agg-req__section-img {border-top: none; }
	.req-modal .agg-req__table {font-size: 18px; margin-bottom: 1px;}
	.req-modal td.agg-req__value {    padding: 0 12px 10px;}
}
@media (max-width: 600px) {
	.purpose-list .checkbox, .benergy-list .checkbox, .filters__group-body .checkbox {font-size: 12px}
	body .req-modal .agg-req__table tr {  display: flex !important; flex-direction: column; border-bottom: 1px solid #fff}
    body .req-modal .agg-req__param {
        width: 100%;
        font-weight: 700;
    }
	.req-modal .agg-req__table:not(.agg-req__table--grid) td, body .req-modal .agg-req__table tr { width: 100%;}
	.req-modal .agg-req__table:not(.agg-req__table--grid) td {border: none}
	.unit.desktop-hidden:has(.mobile-unit:empty) {display: none !important;}
	.req-modal .agg-req__table.agg-req__table--tugs td {border-bottom: 1px solid #fff}
	.req-modal .agg-req__table.agg-req__table--tugs td b {text-align: left; margin-bottom: 8px;} 
	body .req-modal .agg-req__tug-img img {width: 100%;}
	body .agg-req__table--tugs colgroup {display: none;}
}

/* ============================================================================
   15. Окно «Требования для агрегатирования» — обратная связь КБ 15.09.2026
   по Приложению 1, п. 9.1–9.3
   ------------------------------------------------------------------------
   Размеры изображений сняты с макетов ТЗ (рис. 6.10.7.3–6.10.7.5, 6.3.2.4,
   6.3.2.7, 6.3.2.10) долями ширины таблицы: содержимое окна на широком экране —
   около 1150 px. Изображения справочников приходят уже без пустых полей
   (AggregationRequirements::picture()), поэтому узел заполняет отведённое место.
   Правила окна ограничены `.req-modal`: «Избранное» и PDF-отчёт рисуют те же
   классы своим видом. Без `.req-modal` — только страховка от выхода за ширину.
   ============================================================================ */

/* Новые блоки разметки вне окна (превью «Избранного», окно «Подробнее»). */
.agg-req__scheme { margin: 8px 0 12px; text-align: center; }
.agg-req__scheme img,
.agg-req__variant-img--ballast img { max-width: 100%; height: auto; }

/* 9.3 Текст ячеек — по центру по высоте строки, как в макете: рядом с изображением
   подпись и значение прижимались к верху ячейки. */
.req-modal .agg-req__table:not(.agg-req__table--grid) td { vertical-align: middle; }

/* 9.1 Схемы присоединительных размеров машины и трактора — половина ширины окна
   (было до 640 px копии с пустыми полями — чертёж занимал треть окна). */
.req-modal .agg-req__with-image--below .agg-req__section-img img { width: 50%; max-width: 100%; height: auto; }

/* 9.1 Нижние тяги ЗНУ: изображение тяги заполняет ячейку «Изображение». */
.req-modal .agg-req__tug-img img { width: 92%; max-width: 100%; height: auto; }

/* 9.2 Задний навесной балласт: схемы с размерными линиями — почти во всю ширину. */
.req-modal .agg-req__variant-img.agg-req__variant-img--ballast { margin: 16px 0 24px; }
.req-modal .agg-req__variant-img.agg-req__variant-img--ballast img {
  width: auto; max-width: 80%; max-height: 440px; margin: 0 auto;
}

/* 9.3 Схема сцепной петли (у нестандартной — с размерами, введёнными модератором)
   под таблицей петли. */
.req-modal .agg-req__scheme { margin: 16px 0 28px; }
.req-modal .agg-req__scheme img { width: 40%; max-width: 100%; height: auto; margin: 0 auto;}

/* 9.3 Гидровыводы, розетки, пневмоголовки и элементы ТСУ трактора: колонка изображения —
   треть ширины, изображение по центру ячейки (было 220 px, узел — около 70 px). */
.req-modal .agg-req__sub + .agg-req__with-image .agg-req__section-img,
.req-modal .agg-req__variant--tsu .agg-req__with-image .agg-req__section-img {
  flex: 0 0 33%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  box-sizing: border-box;
}
.req-modal .agg-req__sub + .agg-req__with-image .agg-req__section-img img {
  width: auto; max-width: 75%; max-height: 190px;
}
.req-modal .agg-req__variant--tsu .agg-req__with-image .agg-req__section-img img {
  width: auto; max-width: 80%; max-height: 260px;
}

/* Подзаголовки раздела ТСУ трактора: «Для трактора в комплектации…» стоит вплотную
   к «Варианту 1», как в макете. */
.req-modal .agg-req__sub--install { margin-bottom: 4px; }

@media (max-width: 900px) {
  /* Таблица тяг на узком экране прокручивается, ширина ячейки берётся по содержимому. */
  .req-modal .agg-req__tug-img img { width: 180px; }
}

@media (max-width: 767px) {
  /* Адаптив (макет iPhone 16 - 63): схемы — во всю ширину. */
  .req-modal .agg-req__with-image--below .agg-req__section-img img,
  .req-modal .agg-req__scheme img { width: 100%; }
  .req-modal .agg-req__variant-img.agg-req__variant-img--ballast img { max-width: 100%; max-height: none; }
  .req-modal .agg-req__sub + .agg-req__with-image .agg-req__section-img img,
  .req-modal .agg-req__variant--tsu .agg-req__with-image .agg-req__section-img img { max-width: 60%; max-height: 200px; }
}

/* ============================================================================
   16. Профайлы техники: таблица характеристик, пояснения под ней, краткие характеристики —
   обратная связь КБ 15.09.2026 по Приложению 1, п. 4.1.1, 4.2, 4.3.2, 5.1.1
   ------------------------------------------------------------------------
   Макеты: профайл BELARUS 92П (mtzmakets/adaptive/Frame 1106.png, 1920 px, 1:1)
   и страницы профайлов mockup/assets/img/figma/pg-*-profile.png. Таблица в макете —
   1360 px: параметр 502, ед. изм. 100, значения 758; текст ячеек и пояснений —
   Akrobat 400, 18 px, #2A3948 (сверено рендером шрифта по ширине строк).
   ============================================================================ */

/* 4.1.1, 5.1.1. Пояснения (сноски) под таблицей — тем же кеглем и цветом, что текст
   таблицы, первая буква на одной линии с текстом в ячейках. Было 12 px серым от края
   таблицы. Знак стоит вплотную к тексту («*Комплектуется…», «¹⁾Для BELARUS 92П…»). */
body .spec-notes {
  margin: 8px 0 0;
  padding: 0 17px;
  font-family: 'Akrobat', system-ui, sans-serif;
  font-size: 18px;
  line-height: 1.45;
  font-weight: 400;
  color: #2A3948;
}
body .spec-notes p { margin: 0; }
body .spec-notes sup { margin-right: 1px; }
@media (max-width: 600px) {
  /* В мобильной таблице текст ячеек стоит с отступом 23 px. */
  body .spec-notes { padding: 0 23px; }
}

/* 4.3.2. Пропорции колонок по макету: параметр ≈37 %, ед. изм. ≈7 %, значения ≈56 %
   (было 42 % / 10 % / 48 % — значения сжимались, от параметра до единицы оставался
   большой пустой промежуток). Название параметра — по верхнему краю строки, как в макете;
   единица и значения остаются по середине. Поля ячеек значений уже: при нескольких
   исполнениях и хвостовиках подколонки узкие, а текст в них и так по центру. */
@media (min-width: 601px) {
  body .spec-table th { width: 37%; vertical-align: top; }
  body .spec-table td.unit { width: 7%; padding-left: 6px; padding-right: 6px; }
  body .spec-table td.value { padding-left: 8px; padding-right: 8px; }
}

/* 4.3.2. Лишние переносы в названиях параметров («Допустимая нагрузка на⏎переднюю ось»,
   «Номинальная частота вращения⏎ВОМ (Независимый привод)»): это переводы строк из
   документов Word внутри текста шаблона. Разметку не трогаем (части названия переведены
   на беларускую по отдельности) — гасим перенос, текст переносит браузер по ширине. */
body .spec-table th br { display: none; }

/* 4.3.2. Элемент перечня в ячейке («Вилка вращающаяся;», «Тяговый брус категории 2;») —
   неразрывный блок: строка переносится между элементами, а не внутри названия. Элемент
   длиннее колонки переносится внутри себя. Разметку даёт SpecTemplate::valueHtml()
   (только русская версия: беларуская переводит перечень по словарю целой строкой). */
body .spec-table .spec-table__item { display: inline-block; max-width: 100%; }

/* 4.2. Знак сноски в кратких характеристиках («3900¹⁾/4800») — по макету: около 0,6 кегля
   числа (при 54 px цифра знака 23 px высотой), верх знака выше цифр, отступ от цифр
   и между «1» и «)». Было 0,45 кегля вплотную к числу. Звёздочка — прежним правилом
   (раздел 12). Размеры в em — на 1600 и 2560 px знак масштабируется вместе с числом. */
body .tractor-hero__badge-value .spec-table__fn:not(.spec-table__fn--star) {
  font-size: .6em;
  font-weight: 600;
  vertical-align: .7em;
  line-height: 0;
  margin: 0 -.04em 0 .17em;
  letter-spacing: .14em;
}

/* ============================================================================
   17. Профайлы с/х машин и оборудования мини- и лесной техники на ширине 601–768 px —
   фото и единицы измерения (Planka 1865283398340183555, «в адаптиве отсутствуют фото
   в профайлах машин»)
   ------------------------------------------------------------------------
   Фото машины и единица измерения в таблице выводятся дважды: для широкого экрана
   (.mobile-hidden) и для узкого (.desktop-hidden). Страницы профайлов переключают их
   на 768 px: настольный вариант скрывается правилом страницы с !important. А общий
   template_styles.css держит .desktop-hidden скрытым с !important вплоть до 600 px —
   правило страницы «display: block» без !important его не перебивает. В промежутке
   601–768 px не было видно ни одного варианта: фото пропадало, единицы измерения тоже.
   Показываем узкий вариант так же, как его показывает шаблон на ≤600 px. Профайлы
   тракторов и спецтехники переключаются на 600 px — их правило не затрагивает
   (.machine-hero есть только у машин и оборудования).
   ============================================================================ */
@media (min-width: 601px) and (max-width: 768px) {
  .machine-hero__image.desktop-hidden { display: block !important; }
  /* Пустую единицу («()» у «Модели», «Наименования») скрываем тем же условием, что шаблон
     на ≤600 px (.unit:has(.mobile-unit:empty)). */
  .machine-hero ~ .spec-table th .unit.desktop-hidden:not(:has(.mobile-unit:empty)) { display: block !important; }
}

/* ============================================================================
   18. Правки ОД по порталу 17.09.2026 (Planka 1866108023932453888)
   ============================================================================ */

/* п.5 Колонка «Модель» сводных таблиц: BELARUS — Bold, номер модели — Regular. */
.results-table .col-model .model-name { font-weight: 400; }
.results-table .col-model .model-name .model-brand { font-weight: 700; }

/* п.7 «Базовое энергосредство»: пункты без модели BELARUS («Самоходные») — прописными, как на макете. */
.benergy-list .checkbox span:not(.checkmark) { text-transform: uppercase; }

/* п.10 Кнопки быстрых фильтров: подпись обычным регистром и начертанием Medium («Республика Беларусь»). */
.quick-filters .tag, .tag { text-transform: none; font-weight: 500; }

/* п.16 Лесная техника, «Типы оборудования»: пункты прописными. */
.ftype-list .checkbox span { text-transform: uppercase; }

/* п.1 Главная: «Начать работу» — под изображением техники, а не поверх него (макет Frame 607),
   и по-прежнему в пределах окна (п.1.3 правок 09.09.2026). На невысоком окне изображение
   уменьшается ровно настолько, чтобы и техника, и ссылка поместились в первый экран.
   0.5704 — доля высоты от ширины до низа техники на изображении по умолчанию
   (hero-tractor.png: 961/1305, техника заканчивается на 77.5% высоты кадра). Если в разделе
   «Главная, шапка и подвал» загрузят кадр другой компоновки, коэффициент нужно пересчитать. */
@media (min-width: 1024px) {
  .hero { --hero-w: min(68vw, calc((100vh - 158px - 9.9vw) / 0.5704)); }
  .hero__image { width: var(--hero-w); }
  .hero__scroll { top: calc(9.9vw + var(--hero-w) * 0.5704 + 24px); bottom: auto; }
}

/* п.4 Панель «Производитель»: блоки холдингов раскладываются по колонкам слева направо
   (МТЗ-ХОЛДИНГ, АМКОДОР — рядом), а не друг под другом. Строчные блоки (inline-block)
   браузер не переносил в соседнюю колонку. */
.holding-grid .holding { display: block; }

.forest-dir .reco-strip--split .reco-strip__card:hover .reco-strip__img,
.forest-dir .reco-strip--split .reco-strip__card:nth-child(3):hover .reco-strip__img {
    transform: scale(1.1) translateX(-10px);
} 
.forest-dir .reco-strip--split .reco-strip__card:nth-child(3):hover .reco-strip__img {
    transform: scale(1.7) translateX(-10px);
}
.mini-dir .reco-strip--split .reco-strip__card:hover .reco-strip__img,

.mini-dir .reco-strip--split .reco-strip__card:nth-child(2):hover .reco-strip__img {
    transform: scale(1.1) translateX(-10px);
} 
.mini-dir .reco-strip--split .reco-strip__card:nth-child(3):hover .reco-strip__img {
    transform: scale(1.6) translateX(-10px);
} 

/* п.12, п.14 Плитки «Возможно, вас заинтересует» мини- и лесной техники: изображение крупнее
   и заходит за правый и нижний край плитки, название остаётся над ним (макеты мини- и
   лесной техники). На планшете и телефоне раскладка прежняя. */
@media (min-width: 1024px) {
  .reco-strip--split .reco-strip__card .reco-strip__img {
    left: auto; top: auto; right: -9%; bottom: -5%; width: 100%; height: 90%;
    object-fit: contain; object-position: right bottom; transform: none;
  }
  .reco-strip--split .reco-strip__card:nth-child(3) .reco-strip__img { right: -7%; bottom: -4%; width: 114%; height: 76%; }
  .forest-dir .reco-strip--split .reco-strip__card:nth-child(3) .reco-strip__img { height: initial; width: initial; left: 5%; right: unset; bottom: 14%; transform: scale(1.6); }
  .forest-dir .reco-strip--split .reco-strip__card:nth-child(1) .reco-strip__img { right: -10%;bottom: -2%;  scale: 1.15;}
  .forest-dir .reco-strip--split .reco-strip__card:nth-child(2) .reco-strip__img { right: -10%;}
  
  
  .mini-dir .reco-strip--split .reco-strip__card:nth-child(3) .reco-strip__img { height: initial; width: initial;   width: initial;  left: -12%; bottom: 7%;transform: scale(1.5);}      
  .mini-dir .reco-strip--split .reco-strip__card:nth-child(1) .reco-strip__img {right: -16%;bottom: -6%;scale: 1.02;}        
  .mini-dir .reco-strip--split .reco-strip__card:nth-child(2) .reco-strip__img { right: -2%; transform: scale(1.4); bottom: 5%;}
       
       

}

/* п.24 Ссылки «сертификат» и «протокол» в профайлах с/х машины, спецтехники, оборудования
   мини- и лесной техники — одинаково, как на дизайн-макете: в столбик, строчными,
   подчёркнутые; недоступная — бледная. */
body .machine-hero__links,
body .spec-profile__links {
  display: flex; flex-direction: column; flex-wrap: nowrap; align-items: flex-start;
  justify-content: flex-start; gap: 4px; margin-top: 16px; margin-bottom: 16px;
}
body .machine-hero__cert,
body .spec-profile__doc {
  display: inline-flex; align-items: center; background: none; border: 0; padding: 0;
  font-size: 18px; font-weight: 400; line-height: 1.3; color: #2A3948;
  text-transform: lowercase; text-decoration: underline; cursor: pointer;
}
body .machine-hero__cert:hover,
body .spec-profile__doc:hover { text-decoration: none; }
body .machine-hero__cert--off,
body .spec-profile__doc--off { color: rgba(42, 57, 72, .4); text-decoration: underline; cursor: default; }
body .machine-hero__hint { text-transform: none; }

/* ============================================================================
   КБ 24.09 g3: замечания КБ 24.09.2026 по Приложению 1, пп. 5.1.2.6, 5.1.2.12, 5.1.2.13
   ============================================================================ */

/* КБ 24.09 g3: п. 5.1.2.13 — знак «№». В шрифте Akrobat глифа «№» нет, и браузер брал его
   из системного шрифта — шире и жирнее остального текста («ПОДБОРКА №2»). Знак собран
   из букв самого Akrobat (N и надстрочное o с чертой), как в дизайн-макете; файлы по
   полкилобайта на каждое начертание. unicode-range — браузер берёт их только для «№».
   Правки ОД 25.09.2026: п.5 — у глифа «№» в первых файлах (*-numero) была нулевая ширина
   в описании CFF, и цифра после знака наезжала на него («ПОДБОРКА №5»); п.3 — римских цифр
   «Ⅰ», «Ⅱ» (U+2160…) в Akrobat тоже нет, в профайлах тракторов они выходили системным
   шрифтом с засечками. Файлы *-symbols: «№» с исправленной шириной и римские цифры Ⅰ–Ⅻ,
   Ⅼ, Ⅽ, Ⅾ, Ⅿ, собранные из букв I, V, X, L, C, D, M самого Akrobat. */
@font-face { font-family: 'Akrobat'; font-weight: 300; font-style: normal; font-display: swap;
  src: url('fonts/Akrobat-Light-symbols.woff2') format('woff2'); unicode-range: U+2116, U+2160-216F; }
@font-face { font-family: 'Akrobat'; font-weight: 400; font-style: normal; font-display: swap;
  src: url('fonts/Akrobat-Regular-symbols.woff2') format('woff2'); unicode-range: U+2116, U+2160-216F; }
@font-face { font-family: 'Akrobat'; font-weight: 600; font-style: normal; font-display: swap;
  src: url('fonts/Akrobat-SemiBold-symbols.woff2') format('woff2'); unicode-range: U+2116, U+2160-216F; }
@font-face { font-family: 'Akrobat'; font-weight: 700; font-style: normal; font-display: swap;
  src: url('fonts/Akrobat-Bold-symbols.woff2') format('woff2'); unicode-range: U+2116, U+2160-216F; }
@font-face { font-family: 'Akrobat'; font-weight: 800; font-style: normal; font-display: swap;
  src: url('fonts/Akrobat-ExtraBold-symbols.woff2') format('woff2'); unicode-range: U+2116, U+2160-216F; }
@font-face { font-family: 'Akrobat'; font-weight: 900; font-style: normal; font-display: swap;
  src: url('fonts/Akrobat-Black-symbols.woff2') format('woff2'); unicode-range: U+2116, U+2160-216F; }

/* КБ 24.09 g3: п. 5.1.2.6 — хлебные крошки на всех страницах портала.
   Макеты: десктоп — 10px при 1920 (Figma «4.0 ИНТЕРНЕТ ПОРТАЛ»), планшет и телефон —
   14px (адаптивный файл, iPad mini / iPhone 16). На сайте было 10px на всех ширинах до 600 px
   и 11px на телефоне — на планшете и телефоне мельче макета в полтора раза. На широком
   мониторе (2560) кегль растёт с окном, как в макете при 1920: 0.52vw, не больше 14px.
   Разделитель: символ «•» в Akrobat маленький и сидит у строки снизу — на макете круглая
   точка посередине высоты букв, с отбивкой около половины кегля. Рисуем её сами. */
.breadcrumbs { font-size: clamp(10px, 0.52vw, 14px); color: #2A3948; }
.breadcrumbs__item + .breadcrumbs__item::before {
  content: ''; flex: none; width: .26em; height: .26em; border-radius: 50%;
  background: currentColor; margin: 0 .45em; position: relative; top: -.04em;
}
.breadcrumbs a, .breadcrumbs__current { color: #2A3948; }
.breadcrumbs a:hover { color: var(--c-red); }
@media (max-width: 1023px) {
  .breadcrumbs { font-size: 14px; }
}

/* КБ 24.09 g3: п. 5.1.2.12 — фото машины в профайле на планшете (ZKT-2, Samsung Tab).
   Раздел 17 выше показывает узкий вариант фото на 601–768 px, шаблон — на ≤600 px.
   Но ширина окна у планшетов бывает дробной (масштаб экрана Samsung: 600.5 px и т. п.),
   и в зазор между «max-width: 600px» и «min-width: 601px» не попадает ни одно правило:
   настольное фото уже скрыто страницей (≤768), узкое ещё скрыто шаблоном — фото нет,
   единиц измерения в таблице тоже (ровно как на снимке заказчика). Правило без нижней
   границы закрывает зазор на любой ширине до 768 px. */
@media (max-width: 768px) {
  .machine-hero__image.desktop-hidden { display: block !important; }
  .machine-hero ~ .spec-table th .unit.desktop-hidden:not(:has(.mobile-unit:empty)) { display: block !important; }
}

/* ============================================================================
   19. Правки ОД по порталу 25.09.2026 (Planka 1873362611500746684)
   ============================================================================ */

/* п.1 (п.10 от 17.09) Кнопки выбранных фильтров («Республика Беларусь», «BELARUS 622»):
   начертания Medium (500) у Akrobat нет, и браузер рисовал такие подписи обычным (400).
   На макете они полужирные — берём Bold (700). */
.quick-filters .tag, .tag { font-weight: 700; }

/* п.2 (п.19 от 17.09) Форма обратной связи: точка выбранной темы — заливка самого кружка
   с белым кольцом внутри рамки, а не отдельный элемент, сдвинутый на -50%. Сдвиг на
   полпикселя при масштабе экрана 100 % (150 % системных) округлялся в сторону, и точка
   уходила от центра; при другом масштабе совпадало. */
.feedback-topics__item input::after { content: none; }
.feedback-topics__item input:checked { background: var(--c-red); box-shadow: inset 0 0 0 1px #fff; }
/* BELARUS и «МТЗ» — полужирным, пояснение в скобках («только для юр. лиц») — строчными,
   как на макете. Разметку расставляет feedback.js: темы задаются в админ-панели, а на
   беларускай версии текст сначала переводится целиком. */
.feedback-topics__item .feedback-topics__brand { font-weight: var(--fw-bold); }
.feedback-topics__item .feedback-topics__note { text-transform: none; }

/* п.4 «Типы машин»: у последнего пункта каждого вида работ нижний отступ был обнулён, и
   подпись прижималась к линии под ней («Планировщики», «Картофелесажалки», «Навесные
   экскаваторы»). Возвращаем тот же отступ, что у остальных пунктов. */
.mtype-list .mtype-group label.checkbox:last-child { padding-bottom: 8.5px; }

/* п.6 Поле «Изменить язык для отчета».
   Личный кабинет («Моя техника» и др.): выбранный язык — красным, обычным начертанием. */
.lk-sidebar .choices__list--dropdown .choices__item.is-selected,
.lk-sidebar .choices__list[aria-expanded] .choices__item.is-selected { font-weight: 400; }
/* «Избранное» и подборка: как в личном кабинете — подпись поля серая, в списке языки
   серым обычным начертанием, язык отчёта красным (report.js отмечает его классом
   is-current: выбранный в поле, а пока ничего не выбрано — язык по умолчанию). */
.fav-side .choices__list--single .choices__item[aria-disabled="true"] { color: #E2E2E2; }
.fav-side .choices__list--dropdown .choices__item--choice[data-value=""],
.fav-side .choices__list[aria-expanded] .choices__item--choice[data-value=""] { display: none; }
.fav-side .choices__list--dropdown .choices__item--selectable,
.fav-side .choices__list[aria-expanded] .choices__item--selectable {
  padding: 6px 16px; font-size: 18px; font-weight: 400; color: rgba(42, 57, 72, 0.53);
}
.fav-side .choices__list--dropdown .choices__item--selectable.is-highlighted,
.fav-side .choices__list[aria-expanded] .choices__item--selectable.is-highlighted {
  background: transparent; color: rgba(42, 57, 72, 0.53);
}
.fav-side .choices__list--dropdown .choices__item--selectable.is-current,
.fav-side .choices__list[aria-expanded] .choices__item--selectable.is-current { color: var(--c-red, #A21B2C); }
@media (max-width: 650px) {
  .fav-side .choices__list--dropdown .choices__item--selectable,
  .fav-side .choices__list[aria-expanded] .choices__item--selectable { padding-left: 11px; }
}

/* п.7 «Ближайший дилер» и «Ближайший сервисный центр» в профиле: каждая организация с новой
   строки. Строчные блоки (inline-flex) с короткими названиями вставали в одну строку
   (Нижний Новгород: «ООО «ЛУИДОР» АО «МОТОРАВТО»). */
.nearby__name { display: flex; width: fit-content; }

/* п.8 Таблица профайла на телефоне: значения вариантов исполнения (две передние оси
   BELARUS 952.4 и т. п.) — рядом, в колонках с разделителем, как на макете, а не друг под
   другом. Доля колонки — по colspan ячейки из 24 колонок таблицы; общее значение
   (colspan 24) остаётся одно по центру. Пустые ячейки строки-заголовка группы («Колея:») не
   выводим. Строки с четырьмя и более вариантами (до восьми у серии 1523) в ширину телефона
   не помещаются — они остаются в столбик, как было. */
@media (max-width: 600px) {
  .spec-table tr:has(> td.value + td.value):not(:has(> td.value + td.value + td.value + td.value)) { flex-direction: row; flex-wrap: wrap; }
  .spec-table tr:has(> td.value + td.value):not(:has(> td.value + td.value + td.value + td.value)) > th { flex: 0 0 100%; }
  .spec-table tr:has(> td.value + td.value):not(:has(> td.value + td.value + td.value + td.value)) > td.value {
    flex: 1 1 0; min-width: 0; padding-left: 8px; padding-right: 8px; overflow-wrap: anywhere;
  }
  .spec-table tr:has(> td.value + td.value):not(:has(> td.value + td.value + td.value + td.value)) > td.value + td.value {
    background-image: linear-gradient(#D9D9D9, #D9D9D9); background-repeat: no-repeat;
    background-position: left center; background-size: 1px calc(100% - 10px);
  }
  .spec-table tr > td.value[colspan="2"] { flex-grow: 2; }
  .spec-table tr > td.value[colspan="3"] { flex-grow: 3; }
  .spec-table tr > td.value[colspan="4"] { flex-grow: 4; }
  .spec-table tr > td.value[colspan="6"] { flex-grow: 6; }
  .spec-table tr > td.value[colspan="8"] { flex-grow: 8; }
  .spec-table tr > td.value[colspan="12"] { flex-grow: 12; }
  .spec-table tr > td.value[colspan="16"] { flex-grow: 16; }
  .spec-table tr > td.value[colspan="18"] { flex-grow: 18; }
  .spec-table tr > td.value[colspan="20"] { flex-grow: 20; }
  .spec-table tr[data-group-head] > td.value:empty { display: none; }
}

/* ============================================================================
   20. КБ, мотивированный отказ, п. 5.1.2.14 (28.09.2026, Planka 1873364533590886346)
   ============================================================================ */

/* «Избранное» и подборка: в строке машины под «Требования для агрегатирования» по дизайн-макету
   только ссылка «Подробнее». Раньше здесь выводилось начало требований, обрезанное по высоте
   150 px, — последняя строка таблицы срезалась посередине. Требования целиком — в окне
   «Подробнее»: оно берёт их из этого же (скрытого) блока. */
.fav-item__req-body { display: none; }
