/* webasyst-shops, 2026-09-22 — ТЗ ads-analytics 59: новая главная nazarklinok.ru (docs/nazarklinok.ru.md, «ТЗ 59»).
   Подключается в index.html только на главной. Всё — внутри .tz59-home (обёртка в shop:seller/home.html), прежняя главная не затронута.
   Фирменный стиль п. 2.0: фон #141c23, подложки #1a2a36 + рамка #306283, акцент #fbe99c, главная кнопка #cd200a, заголовки — .block-caption
   (Roboto Slab), текст — Montserrat #e6ecef; телефон: текст 16 px, подписи 15, цена 17, мельче 14 — ничего. */

.tz59-home { color: #e6ecef; }
.tz59-home .home-block { margin-top: 70px; }
.tz59-panel { background: #1a2a36; border: 1px solid #306283; border-radius: 8px; }
.tz59-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
.tz59-head .block-caption { margin-bottom: 20px; }
.tz59-caption__sub { font-size: .6em; color: #e6ecef; font-family: Montserrat, "Montserrat Fallback", sans-serif; font-weight: 500; }
.tz59-all, .tz59-link { color: #fbe99c; font-family: Montserrat, "Montserrat Fallback", sans-serif; font-size: 16px; font-weight: 600; white-space: nowrap; text-decoration: none; }
.tz59-all:hover, .tz59-link:hover { text-decoration: underline; }
.tz59-mob { display: none; }

/* ---------- п. 2.2 первый экран ---------- */
.tz59-hero { position: relative; overflow: hidden; margin-top: 24px; border-radius: 8px; border: 1px solid #306283; background: #0f1820; }
.tz59-hero__bg img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.tz59-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(11,17,23,.92) 0%, rgba(11,17,23,.78) 45%, rgba(11,17,23,.35) 100%); }
.tz59-hero__in { position: relative; z-index: 1; max-width: 760px; padding: 48px 44px; }
.tz59-hero__title { margin: 0 0 14px; color: #fff; font-size: 40px; line-height: 1.2; }
.tz59-hero__text { margin: 0 0 16px; font: 500 18px/1.45 Montserrat, "Montserrat Fallback", sans-serif; color: #e6ecef; }
.tz59-trust { margin: 0 0 22px; font: 600 16px/1.5 Montserrat, "Montserrat Fallback", sans-serif; color: #fff; }
.tz59-trust__g { color: #fbe99c; text-decoration: underline dotted; text-underline-offset: 3px; }
.tz59-hero__btns { display: flex; flex-wrap: wrap; gap: 12px; }
.tz59-btn.btn { width: auto; height: auto; min-height: 48px; padding: 12px 26px; display: inline-flex; align-items: center; justify-content: center; line-height: 1.2; font-size: 16px; }
.tz59-btn.btn { text-transform: none; letter-spacing: 0; font-weight: 700; }
.tz59-btn--outline.btn { background: transparent; border: 2px solid #fbe99c; color: #fbe99c; }
.tz59-btn--outline.btn:hover { background: rgba(251,233,156,.1); color: #fbe99c; }
/* главная кнопка (ТЗ 59 ред. 4 п. 2.16.1, заказчик 22.09 — «как в ТЗ»): #cd200a, белый текст; было приглушённое #7d2317 (правка того же дня) */
.tz59-btn--quiet.btn { background-color: #cd200a; border-color: #cd200a; color: #fff; }
.tz59-btn--quiet.btn:hover { background-color: #b01b08; border-color: #b01b08; color: #fff; }

/* ---------- п. 2.3 контакты — только телефон ---------- */
.tz59-contacts { display: none; }

/* ---------- п. 2.5 в наличии + назначения ---------- */
.tz59-tabs { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 4px; margin-bottom: 8px; scrollbar-width: none; }
.tz59-tabs::-webkit-scrollbar { display: none; }
.tz59-tab { flex: 0 0 auto; min-height: 40px; padding: 0 16px; border: 1px solid #fbe99c; border-radius: 20px; background: transparent; color: #fbe99c;
    font: 600 15px/38px Montserrat, "Montserrat Fallback", sans-serif; cursor: pointer; }
.tz59-tab.is-on { background: #fbe99c; color: #141c23; }
.tz59-lane .page-category__products { flex-wrap: nowrap; overflow-x: auto; scroll-snap-type: x mandatory; gap: 20px; padding-bottom: 10px; }
.tz59-lane .page-category__products > .card-product { flex: 0 0 210px; width: 210px; margin: 12px 0 0; scroll-snap-align: start; }
/* фото товаров — вертикальные 2:3 (замер 22.09; ТЗ писал 1:1,42) — целиком, без обрезки */
.tz59-lane .card-product__img { aspect-ratio: 2 / 3; height: auto; width: 100%; }
.tz59-lane .card-product__img img { width: 100%; height: 100%; object-fit: contain; }
.tz59-lane .card-product__title { font-size: 15px; line-height: 20px; height: 60px; margin-bottom: 8px; }
/* в ленте: фото, название, наличие, цена, кнопки (ТЗ п. 2.5) — без характеристик и рейтинга */
.tz59-lane .card-product__property, .tz59-lane .card-product__rating, .tz59-lane .card-product__more { display: none !important; }
.tz59-lane .s-price { font-size: 17px; }
/* кнопки карточки в ленте — не мельче 14 px (п. 2.0) */
.tz59-lane .card-product__buttons .btn, .tz59-lane .card-product__btn-buy-text { font-size: 14px; }
.tz59-lane .card-product__buttons .btn { height: auto; min-height: 40px; padding: 8px 6px; line-height: 1.2; white-space: normal; }
.tz59-lane .card-product__footer, .tz59-lane .card-product__footer * { font-size: max(14px, 1em); }
/* стрелки ленты — только ПК */
.tz59-lane { position: relative; }
.tz59-arrow { position: absolute; top: 38%; z-index: 2; width: 44px; height: 44px; border-radius: 50%; border: 1px solid #fbe99c; background: rgba(20,28,35,.88);
    color: #fbe99c; font-size: 26px; line-height: 40px; text-align: center; cursor: pointer; }
.tz59-arrow--prev { left: -14px; }
.tz59-arrow--next { right: -14px; }
.tz59-arrow[disabled] { opacity: 0; pointer-events: none; }

/* ---------- п. 2.6 отзывы ---------- */
.tz59-reviews__w { padding: 12px; }

/* ---------- п. 2.7 почему мы ---------- */
.tz59-why__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.tz59-why__card { display: flex; flex-direction: column; padding: 22px 22px 20px; }
.tz59-why__title { margin: 0 0 12px; color: #fff; font-size: 20px; line-height: 1.3; }
.tz59-why__card ul { margin: 0 0 16px; padding-left: 18px; flex: 1 1 auto; }
.tz59-why__card li { margin-bottom: 8px; font: 500 16px/1.45 Montserrat, "Montserrat Fallback", sans-serif; }
.tz59-why__terms { margin-top: 18px; font: 500 16px/1.5 Montserrat, "Montserrat Fallback", sans-serif; }
.tz59-why__terms p { margin: 0 0 6px; }
.tz59-why__note summary { cursor: pointer; color: #fbe99c; font-size: 15px; }
.tz59-why__note p { margin: 8px 0 0; font-size: 15px; }

/* ---------- телефон, планшет ---------- */
@media (max-width: 767.98px) {
    .tz59-home .home-block { margin-top: 30px; }
    .tz59-pc { display: none; }
    .tz59-mob { display: block; }
    .tz59-hero { margin-top: 12px; }
    .tz59-hero::after { background: linear-gradient(180deg, rgba(11,17,23,.72) 0%, rgba(11,17,23,.9) 100%); }
    .tz59-hero__in { padding: 16px 18px 18px; }
    .tz59-hero__title { font-size: 25px; margin-bottom: 8px; }
    .tz59-hero__text { font-size: 16px; line-height: 1.4; margin-bottom: 10px; }
    .tz59-trust { font-size: 15px; font-weight: 500; line-height: 1.45; margin-bottom: 14px; white-space: nowrap; letter-spacing: -.1px; }
    .tz59-hero__btns { flex-wrap: nowrap; gap: 10px; }
    .tz59-hero__btns .tz59-btn { flex: 1 1 50%; padding: 10px 8px; }
    .tz59-contacts { display: block; margin-top: 16px; }
    .tz59-contacts__btns { display: flex; gap: 10px; }
    .tz59-cbtn { flex: 1 1 0; display: flex; align-items: center; justify-content: center; min-height: 48px; border-radius: 8px; color: #fff;
        font: 700 16px/1.2 Montserrat, "Montserrat Fallback", sans-serif; text-decoration: none; }
    .tz59-cbtn--max { background: linear-gradient(90deg, #3e6bff, #8b3dff); }
    .tz59-cbtn--tg { background: #229ed9; }
    .tz59-cbtn--tel { background: #cd200a; }
    .tz59-cbtn:hover { color: #fff; opacity: .92; }
    .tz59-contacts__hours { margin: 8px 0 0; text-align: center; font: 500 15px/1.4 Montserrat, "Montserrat Fallback", sans-serif; color: #b8c4cc; }
    .tz59-head { align-items: flex-start; }
    .tz59-caption__sub { display: block; font-size: 15px; line-height: 1.4; margin-top: 2px; }
    .tz59-lane .page-category__products { gap: 12px; }
    .tz59-arrow { display: none; }
    .tz59-lane .page-category__products > .card-product { flex-basis: 155px; width: 155px; }
    .tz59-why__cards { grid-template-columns: 1fr; gap: 14px; }
    .tz59-why__card { padding: 16px; }
    .tz59-why__title { font-size: 19px; }
}

/* блоки из базы и подписка ТЗ 67 на новой главной — не мельче 14 px (п. 2.0); на остальных страницах — как было */
.tz59-home .home-about .btn, .tz59-home .home-emailsub button, .tz59-home .home-emailsub .btn,
.tz59-home .home-emailsub label, .tz59-home .home-emailsub label * { font-size: 14px; }

/* ---------- п. 2.10 новинки ---------- */
.tz59-new .tz59-lane { margin-top: 0; }

/* ---------- п. 2.12 разделы каталога: 7 карточек (ПК 4 + 3), ссылки свёрнуты ---------- */
@media (min-width: 992px) {
    .tz59-home .home-catalog .catalog-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px !important; }
    .tz59-home .home-catalog .catalog-cards__item { max-width: none; }
}
/* правка заказчика 22.09 («фото не вписываются в плашки, текст не так отформатирован»): на ПК карточка вертикальная, как на телефоне —
   фото во всю ширину сверху, название под ним одной-двумя строками; сертификат — фото товара целиком (contain), без обрезки надписи */
@media (min-width: 992px) {
    .tz59-home .home-catalog .catalog-cards__item { flex-direction: column; align-items: stretch; justify-content: flex-start; padding: 0 0 4px; }
    .tz59-home .home-catalog .catalog-cards__img { order: -1; width: 100%; height: auto; aspect-ratio: 220 / 150; border-radius: 6px 6px 0 0; }
    .tz59-home .home-catalog .catalog-cards__title { margin: 14px 18px 12px; font-size: 20px; line-height: 26px; }
    .tz59-home .home-catalog .catalog-cards__item:before { z-index: 1; }
}
.tz59-home .home-catalog .tz59-card--contain .catalog-cards__img { object-fit: contain; background: #2a1a10; }  /* фото «целиком» (плагин) */
.tz59-home .tz59-card--nobadge:before { content: none; }  /* значок «без значка» (плагин) */
.tz59-cat-more { margin-top: 20px; }
.tz59-cat-more__btn { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 20px; border: 1px solid #fbe99c; border-radius: 50px;
    color: #fbe99c; font: 600 16px/1 Montserrat, "Montserrat Fallback", sans-serif; cursor: pointer; list-style: none; }
.tz59-cat-more__btn::-webkit-details-marker { display: none; }
.tz59-cat-more__btn::after { content: "▾"; transition: transform .2s; }
.tz59-cat-more[open] .tz59-cat-more__btn::after { transform: rotate(180deg); }
.tz59-cat-more .catalog-columns { margin-top: 16px; }
.tz59-home .catalog-columns__link, .tz59-home .catalog-columns__column-title { font-size: max(14px, 1em); }

/* ---------- п. 2.4 акция с роликом, п. 2.8 фильм ---------- */
.tz59-promo__in { display: flex; gap: 28px; padding: 22px; align-items: flex-start; }
.tz59-promo__media { flex: 0 0 360px; width: 360px; }
.tz59-promo__body, .tz59-film__body { flex: 1 1 auto; min-width: 0; }
.tz59-promo__title { margin-bottom: 10px !important; }
.tz59-promo__text { margin: 0 0 12px; font: 500 16px/1.5 Montserrat, "Montserrat Fallback", sans-serif; }
.tz59-promo__until { display: inline-block; margin: 0; padding: 6px 12px; border-radius: 6px; background: #fbe99c; color: #141c23; font: 700 15px/1.2 Montserrat, "Montserrat Fallback", sans-serif; }
.tz59-promo__cta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin: 0 0 16px; }
.tz59-promo__btn.btn { margin: 0; }
/* акция без ролика — то же, что с роликом (текст, дата, кнопка, товары), вместо ролика картинка: целиком, любые пропорции, колонка 360 px как у ролика */
.tz59-promo__media--img { flex: 0 0 360px; width: 360px; align-self: center; }
.tz59-promo__imglink { display: block; }
.tz59-promo__img { display: block; width: 100%; height: auto; max-height: 640px; object-fit: contain; border-radius: 8px; }
.tz59-video-box { position: relative; width: 100%; aspect-ratio: 9 / 16; background: #0b1117; border-radius: 8px; overflow: hidden; }
.tz59-video-el { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; background: #0b1117; }
.tz59-play { position: absolute; left: 50%; top: 50%; width: 76px; height: 76px; margin: -38px 0 0 -38px; border: 0; border-radius: 50%; background: rgba(205,32,10,.92); cursor: pointer; }
.tz59-play::after { content: ""; position: absolute; left: 30px; top: 22px; border-style: solid; border-width: 16px 0 16px 26px; border-color: transparent transparent transparent #fff; }
.tz59-video-box.is-playing .tz59-play { display: none; }
.tz59-film__in { display: flex; gap: 28px; align-items: center; }
/* 22.09, заказчик: «много свободного места на ПК» — рядом с роликом 9:16 теперь и «О нас» (блок «Сайт → Блоки» home.about, через film.html):
   ролик прежний (360×640 — не меньше по ТЗ п. 2.8) */
.tz59-film__about { margin-top: 28px; }
.tz59-film__about .home-block { margin-top: 0; }
/* 22.09, заказчик: рядом с роликом о кузнице фото в круге лишнее — убираем вместе с подписью «На фото…» */
.tz59-film__about .home-about__img, .tz59-film__about .home-about__text-footer { display: none; }
.tz59-film__about .home-about__text-body { border-bottom: 0; }
@media (min-width: 768px) {
    .tz59-film__about .home-about__text { padding-left: 0; }
    .tz59-film__about .home-about__text-body { padding-bottom: 20px; }
}
@media (max-width: 767.98px) {
    .tz59-promo__in, .tz59-film__in { flex-direction: column; align-items: stretch; gap: 16px; padding: 14px; }
    .tz59-film__in { padding: 0; }
    .tz59-promo__media { flex-basis: auto; width: 80%; margin: 0 auto; }
    .tz59-promo__media--img { width: 100%; max-width: none; }
    .tz59-promo__img { max-width: none; margin: 0 auto; max-height: 520px; }
}

/* ============ ТЗ 59 ред. 4, п. 2.16 «строгий стиль» (22.09; образец — ads-analytics reports/2026-09-22-glavnaya-ip-strogiy-stil/strict.js).
   Только главная (.tz59-home; заказчик 22.09: каталог не трогать). Две кнопки: главная #cd200a и второстепенная — контур #fbe99c; без заглавных,
   без синих; кремовый — только акценты; заголовки — Roboto Slab, текст — Montserrat; H2 слева; отступы: ПК 70, телефон 32 ============ */

/* 1. кнопки */
.tz59-home .emailsub__btn, .tz59-home .emailsub__btn:hover { background: #cd200a; border-color: #cd200a; color: #fff; text-transform: none; letter-spacing: 0;
    font: 700 16px/1 Montserrat, "Montserrat Fallback", sans-serif; border-radius: 50px; min-height: 48px; opacity: 1; }
.tz59-home .emailsub__btn:hover { background: #b01b08; border-color: #b01b08; }
.tz59-home .home-about .btn.tz59-btn--outline { background: transparent; border: 2px solid #fbe99c; color: #fbe99c; }
.tz59-home .home-about .btn.tz59-btn--outline:before, .tz59-home .home-about .btn.tz59-btn--outline:after { display: none; }
.tz59-home .card-product .card-product__buttons .card-product__btn-buy.btn { border-width: 1px; text-transform: none; letter-spacing: 0; }
.tz59-home .card-product .card-product__btn-buy-text { font-size: 15px; text-transform: none; }
.tz59-home .card-product .card-product__buttons .card-product__btn-buy.btn:hover { background: transparent !important; border-color: #fff3c4; box-shadow: 0 0 0 1px #fbe99c; }
.tz59-home .card-product .card-product__buttons .card-product__btn-buy.btn:hover .card-product__btn-buy-text { color: #fbe99c; }
.tz59-home .card-product .card-product__buttons .card-product__btn-buy.btn:hover:before { background-color: #fbe99c; }
/* контакты на телефоне — одинаковые тёмные, цвет мессенджера только у значка */
.tz59-cbtn, .tz59-cbtn--max, .tz59-cbtn--tg, .tz59-cbtn--tel { background: #1a2a36; border: 1px solid #306283; color: #fff; gap: 8px; }
.tz59-cbtn:hover { color: #fff; opacity: 1; border-color: #fbe99c; }
.tz59-cbtn::before { content: ""; flex: 0 0 12px; width: 12px; height: 12px; border-radius: 50%; }
.tz59-cbtn--max::before { background: linear-gradient(90deg, #3e6bff, #8b3dff); }
.tz59-cbtn--tg::before { background: #229ed9; }
.tz59-cbtn--tel::before { background: #fbe99c; }
/* кнопка ролика — без красного */
.tz59-play { background: rgba(20, 28, 35, .72); border: 2px solid #fbe99c; }
.tz59-play::after { left: 28px; top: 20px; border-color: transparent transparent transparent #fbe99c; }

/* 2. кремовый — только акценты: в лентах название и наличие светлые, цена белая, пустой «Артикул:» не показываем; фон под фото — ровный */
.tz59-home .card-product__title { color: #e6ecef; }
.tz59-home .card-product__on-order, .tz59-home .card-product__on-order * { color: rgba(230, 236, 239, .75); }
.tz59-home .card-product__code { display: none; }
.tz59-home .card-product__on-order:before { display: none; }   /* значок «≡» перед «В наличии» — его приёмка и приняла за пустой артикул */
.tz59-home .card-product .s-price, .tz59-home .card-product .s-price .price { color: #fff !important; }
.tz59-home .card-product__img { background: #1a2a36; background-image: none; }

/* 3. шрифты: подписка и «О кузнице» */
.tz59-home .emailsub__title { font: 500 20px/1.3 Roboto-Slab, "Roboto-Slab Fallback", serif; color: #fff; }
.tz59-home .emailsub__text { font: 500 16px/1.5 Montserrat, "Montserrat Fallback", sans-serif; }
.tz59-home .emailsub__consent, .tz59-home .emailsub__consent * { font-family: Montserrat, "Montserrat Fallback", sans-serif; font-size: 14px; }
.tz59-home .home-about__text-head, .tz59-home .home-about__text-head span { color: #fff; text-transform: none; font: 500 20px/1.3 Roboto-Slab, "Roboto-Slab Fallback", serif; }
.tz59-home .home-about__text-body { border-top: 0; padding-top: 0; }
.tz59-home .home-about__text-body p { font: 500 16px/1.55 Montserrat, "Montserrat Fallback", sans-serif; color: #e6ecef; }
.tz59-home .home-about__text-footer, .tz59-home .home-about__text-footer * { font-family: Montserrat, "Montserrat Fallback", sans-serif; font-size: 14px; }

/* 4. заголовки блоков — слева */
.tz59-home .home-catalog .block-caption { text-align: left; }

/* 5. отступы между блоками: телефон — 32 px (перебиваем body.home-page .home-block 44 px темы) */
@media (max-width: 767.98px) {
    body .tz59-home .home-block { margin-top: 32px; }
    .tz59-hero__btns .tz59-btn.btn { white-space: nowrap; padding: 0 12px; font-size: 15px; }
}

/* 6. «Разделы каталога»: значков на фото нет (плагин: «без значка» по умолчанию), наведение — чуть светлее панели */
.tz59-home .home-catalog .catalog-cards__item:hover { background-color: #1f3342; }
.tz59-home .home-catalog .catalog-cards__img { background: #1a2a36; }
/* отзывы: без второй подложки вокруг виджета MyReviews */
.tz59-home .tz59-reviews__w { background: transparent; border: 0; padding: 0; }
/* «Добрые дела» — графика та же, тон — дуотон в фирменном синем (вариант Б, заказчик 22.09); телефон — ровное затемнение */
.tz59-home .good-deeds__link { margin: 0; border: 1px solid #306283; border-radius: 8px; background-size: cover; background-position: 50%;
    background-color: #1f3a52; background-blend-mode: luminosity; box-shadow: inset 0 0 0 1000px rgba(20, 28, 35, .35); }
.tz59-home .good-deeds__link:hover { background-size: cover; border-color: #fbe99c; }
.tz59-home .good-deeds__caption { color: #fbe99c; font: 600 14px/1.4 Montserrat, "Montserrat Fallback", sans-serif; text-transform: none;
    border-color: rgba(251, 233, 156, .5); width: auto; }
.tz59-home .good-deeds__subtitle { font: 500 20px/1.35 Roboto-Slab, "Roboto-Slab Fallback", serif; color: #fff; text-shadow: 0 1px 3px rgba(0, 0, 0, .6); }
@media (max-width: 767.98px) {
    .tz59-home .good-deeds__link { background-blend-mode: normal; box-shadow: inset 0 0 0 1000px rgba(20, 28, 35, .55); }
}
