

/* Start:/local/templates/zipteh/components/bitrix/catalog/catalog/style.min.css?179386987510313*/
:root{--zip-yellow:#ffbd00;--zip-yellow-hover:#eaaa00;--zip-dark:#1b2028;--zip-text:#252b35;--zip-muted:#7c8491;--zip-border:#e3e6ea;--zip-soft:#f5f6f8;--zip-success:#239849;--zip-order:#d98100;--zip-catalog-sidebar:252px;--zip-catalog-gap:24px}.zip-visually-hidden{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0,0,0,0) !important;white-space:nowrap !important;border:0 !important}.content-area.content-area-catalog.zip-catalog-page{margin:0 !important;padding:26px 0 52px !important;background:#fff}.zip-catalog-page,.zip-catalog-page *{box-sizing:border-box}.zip-catalog-heading{margin-bottom:18px}.zip-catalog-heading__top{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:0}.zip-catalog-title{margin:0 !important;color:var(--zip-dark);font-size:clamp(28px,3vw,40px);font-weight:800;line-height:1.08}.zip-catalog-heading__caption{padding-bottom:4px;color:#969ca5;font-size:12px;font-weight:600;letter-spacing:.045em;text-transform:uppercase}.zip-catalog-status-tabs{display:flex;flex-wrap:wrap;gap:8px}.zip-catalog-status-tab{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:9px 15px;border:1px solid var(--zip-border);border-radius:8px;color:#59616d;background:#fff;font-size:13px;font-weight:700;text-decoration:none !important;transition:border-color .2s ease,background .2s ease,color .2s ease}.zip-catalog-status-tab__dot{width:8px;height:8px;border-radius:50%;background:#b7bdc5}.zip-catalog-status-tab:hover,.zip-catalog-status-tab.is-active{border-color:var(--zip-yellow);color:#1c2129;background:#fff8dc}.zip-catalog-status-tab.is-active .zip-catalog-status-tab__dot{background:var(--zip-success)}.zip-catalog-status-tab--order.is-active .zip-catalog-status-tab__dot{background:var(--zip-order)}.zip-catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;padding:14px;border:1px solid var(--zip-border);border-radius:13px;background:#fff;box-shadow:0 8px 24px rgba(24,30,38,.045)}.zip-catalog-search{position:relative;flex:1 1 520px;max-width:650px}.zip-catalog-search input{display:block;width:100%;height:46px;padding:0 54px 0 16px;border:1px solid var(--zip-border);border-radius:9px;outline:none;color:var(--zip-text);background:#fafbfc;font:inherit;font-size:13px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.zip-catalog-search input:focus{border-color:var(--zip-yellow);background:#fff;box-shadow:0 0 0 3px rgba(255,189,0,.12)}.zip-catalog-search button{position:absolute;top:4px;right:4px;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:0;border-radius:7px;color:#2b313a;background:transparent;cursor:pointer}.zip-catalog-search button:hover{background:#fff4c9}.zip-catalog-search svg,.zip-catalog-filter-toggle svg,.zip-catalog-sort svg,.zip-catalog-view-switch svg,.zip-catalog-sidebar__mobile-head svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.zip-catalog-toolbar__actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.zip-catalog-filter-toggle{display:none;align-items:center;gap:8px;min-height:42px;padding:0 13px;border:1px solid var(--zip-border);border-radius:8px;color:var(--zip-text);background:#fff;font:inherit;font-size:12px;font-weight:700}.zip-catalog-sort{position:relative;display:block}.zip-catalog-sort select{min-width:190px;height:42px;padding:0 40px 0 13px;border:1px solid var(--zip-border);border-radius:8px;outline:none;color:#535b67;background:#fff;font:inherit;font-size:12px;appearance:none;cursor:pointer}.zip-catalog-sort select:focus{border-color:var(--zip-yellow)}.zip-catalog-sort>svg{position:absolute;top:50%;right:12px;width:16px;height:16px;pointer-events:none;transform:translateY(-50%)}.zip-catalog-view-switch{display:inline-flex;gap:6px}.zip-catalog-view-switch .sort-line,.zip-catalog-view-switch .sort-cards{display:inline-flex !important;align-items:center;justify-content:center;width:42px !important;height:42px !important;padding:0 !important;border:1px solid var(--zip-border) !important;border-radius:8px !important;color:#6e7580 !important;background:#fff !important;cursor:pointer}.zip-catalog-view-switch .sort-line:hover,.zip-catalog-view-switch .sort-cards:hover,.zip-catalog-view-switch .sort-line.active,.zip-catalog-view-switch .sort-cards.active{border-color:var(--zip-yellow) !important;color:#20252c !important;background:#fff8dc !important}.zip-catalog-layout{display:grid;grid-template-columns:var(--zip-catalog-sidebar) minmax(0,1fr);align-items:start;gap:var(--zip-catalog-gap)}.zip-catalog-sidebar{position:sticky;top:16px;min-width:0}.zip-catalog-sidebar__mobile-head,.zip-catalog-sidebar-overlay{display:none}.zip-category-panel,.zip-filter-card,.zip-catalog-extra-sidebar{overflow:hidden;margin-bottom:16px;border:1px solid var(--zip-border);border-radius:12px;background:#fff;box-shadow:0 5px 18px rgba(24,30,38,.035)}.zip-sidebar-title{padding:15px 16px 12px;color:var(--zip-dark);font-size:14px;font-weight:800}.zip-category-panel{padding-bottom:9px}.zip-category-link{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:36px;margin:0 8px 2px;padding:8px 9px;border-radius:7px;color:#555e6a;font-size:12px;line-height:1.3;text-decoration:none !important;transition:color .2s ease,background .2s ease}.zip-category-link small{flex:0 0 auto;color:#a0a6af;font-size:10px}.zip-category-link:hover,.zip-category-link.is-active{color:#1d2229;background:#fff7d8}.zip-category-link.is-active{font-weight:750}.zip-catalog-main{min-width:0}.zip-catalog-main>.catalog-section{width:100%}.zip-catalog-page .bx-pagination,.zip-catalog-page .modern-page-navigation,.zip-catalog-page [data-pagination-num]{margin-top:24px}.zip-catalog-page .bx-pagination .bx-pagination-container ul,.zip-catalog-page .modern-page-navigation{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:7px;padding:0;list-style:none}.zip-catalog-page .bx-pagination .bx-pagination-container ul li,.zip-catalog-page .modern-page-navigation a,.zip-catalog-page .modern-page-navigation span{margin:0 !important}.zip-catalog-page .bx-pagination .bx-pagination-container ul li span,.zip-catalog-page .bx-pagination .bx-pagination-container ul li a,.zip-catalog-page .modern-page-navigation a,.zip-catalog-page .modern-page-navigation span{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 10px;border:1px solid var(--zip-border);border-radius:8px;color:#555d68;background:#fff;font-size:12px;text-decoration:none !important}.zip-catalog-page .bx-pagination .bx-pagination-container ul li.bx-active span,.zip-catalog-page .modern-page-navigation .modern-page-current{border-color:var(--zip-yellow);color:#171b21;background:var(--zip-yellow)}@media (max-width:1180px){:root{--zip-catalog-sidebar:228px;--zip-catalog-gap:18px}.zip-catalog-sort select{min-width:170px}}@media (max-width:900px){.zip-catalog-heading__caption{display:none}.zip-catalog-toolbar{align-items:stretch;flex-direction:column}.zip-catalog-search{max-width:none}.zip-catalog-toolbar__actions{justify-content:space-between}.zip-catalog-filter-toggle{display:inline-flex}.zip-catalog-layout{display:block}.zip-catalog-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:1202;width:min(360px,90vw);padding:16px;overflow-y:auto;background:#f7f8fa;box-shadow:24px 0 60px rgba(19,24,31,.22);transform:translateX(-105%);transition:transform .25s ease}.zip-catalog-sidebar.is-open{transform:translateX(0)}.zip-catalog-sidebar__mobile-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;color:var(--zip-dark)}.zip-catalog-sidebar__mobile-head button{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:1px solid var(--zip-border);border-radius:8px;color:var(--zip-dark);background:#fff}.zip-catalog-sidebar-overlay{position:fixed;inset:0;z-index:1201;background:rgba(18,23,29,.44)}body.zip-filter-open{overflow:hidden}body.zip-filter-open .zip-catalog-sidebar-overlay{display:block}}@media (max-width:620px){.content-area.content-area-catalog.zip-catalog-page{padding-top:18px !important}.zip-catalog-heading__top{margin-bottom:0}.zip-catalog-status-tabs{display:grid;grid-template-columns:1fr 1fr}.zip-catalog-status-tab{justify-content:center;padding-inline:10px}.zip-catalog-toolbar{margin-bottom:16px;padding:10px;border-radius:10px}.zip-catalog-toolbar__actions{gap:7px}.zip-catalog-filter-toggle span{display:none}.zip-catalog-sort{flex:1 1 auto}.zip-catalog-sort select{width:100%;min-width:0}.zip-catalog-view-switch .sort-line,.zip-catalog-view-switch .sort-cards{width:40px !important;height:40px !important}}:root{--zip-catalog-shell-max:2048px;--zip-catalog-shell-padding:28px}html body .zip-catalog-page,html body .content-area.content-area-catalog.zip-catalog-page{position:relative !important;left:50% !important;right:auto !important;width:100vw !important;width:100dvw !important;min-width:0 !important;max-width:none !important;margin:0 !important;padding-right:0 !important;padding-left:0 !important;overflow:visible !important;transform:translateX(-50%) !important}html body .zip-catalog-page>.container,html body .content-area.content-area-catalog.zip-catalog-page>.container{box-sizing:border-box !important;width:100% !important;min-width:0 !important;max-width:var(--zip-catalog-shell-max) !important;margin-right:auto !important;margin-left:auto !important;padding-right:var(--zip-catalog-shell-padding) !important;padding-left:var(--zip-catalog-shell-padding) !important}html body .zip-catalog-page .zip-catalog-heading,html body .zip-catalog-page .zip-catalog-toolbar,html body .zip-catalog-page .zip-catalog-layout,html body .zip-catalog-page .zip-catalog-main,html body .zip-catalog-page .catalog-section,html body .zip-catalog-page .cards,html body .zip-catalog-page .items{width:100% !important;min-width:0 !important;max-width:none !important}@media (max-width:1480px){:root{--zip-catalog-shell-padding:20px}}@media (max-width:680px){:root{--zip-catalog-shell-padding:14px}}
/* End */


/* Start:/local/templates/zipteh/components/bitrix/catalog.element/.default/style.css?179386987540*/
.swiper-slide img{
	max-width: 100%;
}
/* End */


/* Start:/local/templates/zipteh/assets/styles/product-detail.css?179386987539497*/
/* ZIPTEH product detail — v18 */
:root {
    --zt-detail-yellow: #ffb900;
    --zt-detail-yellow-dark: #e6a600;
    --zt-detail-text: #1f2933;
    --zt-detail-muted: #66727f;
    --zt-detail-line: #dfe5ea;
    --zt-detail-soft: #f6f8fa;
    --zt-detail-green: #16834b;
    --zt-detail-orange: #b85d19;
    --zt-detail-shell: 2048px;
    --zt-detail-gutter: 28px;
}

.zt-product-detail {
    position: relative;
    left: 50%;
    width: 100vw;
    width: 100dvw;
    margin-left: 0;
    transform: translateX(-50%);
    color: var(--zt-detail-text);
}

.zt-product-detail *,
.zt-product-detail *::before,
.zt-product-detail *::after {
    box-sizing: border-box;
}

.zt-product-detail__shell,
.zt-product-detail .simple-card-description > .container {
    width: 100%;
    max-width: var(--zt-detail-shell);
    margin-right: auto;
    margin-left: auto;
    padding-right: var(--zt-detail-gutter);
    padding-left: var(--zt-detail-gutter);
}

.zt-product-detail .simple-card {
    position: relative;
    display: grid;
    grid-template-columns: minmax(300px, 420px) minmax(360px, 1fr) minmax(310px, 380px);
    grid-template-rows: auto minmax(0, 1fr);
    gap: 24px 30px;
    align-items: start;
    margin: 26px 0 34px;
    padding: 28px;
    overflow: visible;
    background: #fff;
    border: 1px solid var(--zt-detail-line);
    border-left: 5px solid var(--zt-detail-yellow);
    border-radius: 18px;
    box-shadow: 0 14px 44px rgba(28, 39, 49, .08);
}

.zt-product-detail .simple-card > .data {
    display: contents;
}

/* Gallery */
.zt-product-detail .simple-card > .images {
    grid-column: 1;
    grid-row: 1 / span 2;
    min-width: 0;
    padding: 14px;
    background: var(--zt-detail-soft);
    border: 1px solid var(--zt-detail-line);
    border-radius: 14px;
}

.zt-product-detail .swiper-card {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e9edf0;
    border-radius: 11px;
}

.zt-product-detail .swiper-card .swiper-wrapper,
.zt-product-detail .swiper-card .swiper-slide {
    height: 100%;
}

.zt-product-detail .swiper-card .swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
}

.zt-product-detail .swiper-card .swiper-slide > a {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
}

.zt-product-detail .swiper-card img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

.zt-product-detail .swiper-card .swiper-button-prev,
.zt-product-detail .swiper-card .swiper-button-next {
    width: 38px;
    height: 38px;
    margin-top: -19px;
    color: #222;
    background: rgba(255, 255, 255, .94);
    border: 1px solid var(--zt-detail-line);
    border-radius: 50%;
    box-shadow: 0 7px 18px rgba(28, 39, 49, .12);
}

.zt-product-detail .swiper-card .swiper-button-prev::after,
.zt-product-detail .swiper-card .swiper-button-next::after {
    font-size: 15px;
    font-weight: 700;
}

.zt-product-detail .swiper-card-thumbs {
    margin-top: 12px;
}

.zt-product-detail .swiper-card-thumbs .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
}

.zt-product-detail .swiper-card-thumbs .swiper-slide {
    width: auto !important;
    aspect-ratio: 1 / 1;
    margin: 0 !important;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 1px solid var(--zt-detail-line);
    border-radius: 8px;
    opacity: .72;
    cursor: pointer;
}

.zt-product-detail .swiper-card-thumbs .swiper-slide-thumb-active {
    border-color: var(--zt-detail-yellow);
    box-shadow: 0 0 0 2px rgba(255, 185, 0, .2);
    opacity: 1;
}

/* Heading */
.zt-product-detail__heading {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
    padding: 2px 0 18px;
    border-bottom: 1px solid var(--zt-detail-line);
}

.zt-product-detail__eyebrow {
    margin-bottom: 10px;
    color: #a26d00;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.zt-product-detail__title-row {
    display: flex;
    gap: 18px;
    align-items: flex-start;
    justify-content: space-between;
}

.zt-product-detail .simple-card .data .title {
    max-width: 880px;
    margin: 0;
    padding: 0;
    color: var(--zt-detail-text);
    font-size: clamp(26px, 2.1vw, 42px);
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: -.025em;
}

.zt-detail-favorite {
    display: inline-flex;
    width: 46px;
    min-width: 46px;
    height: 46px;
    align-items: center;
    justify-content: center;
    padding: 0;
    color: #34404c;
    background: #fff;
    border: 1px solid var(--zt-detail-line);
    border-radius: 12px;
    box-shadow: 0 5px 16px rgba(28, 39, 49, .08);
    cursor: pointer;
    transition: border-color .2s ease, color .2s ease, background .2s ease, transform .2s ease;
}

.zt-detail-favorite:hover {
    color: #111;
    border-color: var(--zt-detail-yellow);
    transform: translateY(-1px);
}

.zt-detail-favorite svg {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.zt-detail-favorite.poisk-product__favorite--active {
    color: #fff;
    background: var(--zt-detail-yellow);
    border-color: var(--zt-detail-yellow);
}

.zt-detail-favorite.poisk-product__favorite--active svg {
    fill: currentColor;
}

.zt-product-detail__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}

.zt-product-detail__meta span {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    gap: 5px;
    padding: 7px 10px;
    color: #48545f;
    background: var(--zt-detail-soft);
    border: 1px solid var(--zt-detail-line);
    border-radius: 8px;
    font-size: 12px;
    line-height: 1.2;
}

.zt-product-detail__meta .is-stock {
    color: var(--zt-detail-green);
    background: #edf9f2;
    border-color: #c9ead7;
    font-weight: 700;
}

.zt-product-detail__meta .is-order {
    color: var(--zt-detail-orange);
    background: #fff5ed;
    border-color: #f1d6c1;
    font-weight: 700;
}

/* Specifications */
.zt-product-detail .simple-card > .data > .tech-table {
    grid-column: 2;
    grid-row: 2;
    min-width: 0;
    margin: 0;
    padding: 0;
}

.zt-product-detail__section-title,
.zt-product-detail__purchase-title,
.zt-product-detail__store-title {
    margin: 0 0 14px;
    color: var(--zt-detail-text);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
}

.zt-product-detail .zt-product-detail__spec-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
}

.zt-product-detail .tech-table .item,
.zt-product-detail .tech-table .item:not(:last-child) {
    display: grid;
    grid-template-columns: minmax(100px, .8fr) minmax(120px, 1.2fr);
    gap: 12px;
    align-items: center;
    min-height: 48px;
    margin: 0;
    padding: 10px 12px;
    background: var(--zt-detail-soft);
    border: 1px solid var(--zt-detail-line);
    border-radius: 9px;
}

.zt-product-detail .tech-table .item > div:first-child {
    color: var(--zt-detail-muted);
    font-size: 11px;
    line-height: 1.25;
}

.zt-product-detail .tech-table .item > div:last-child {
    overflow-wrap: anywhere;
    color: var(--zt-detail-text);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.25;
    text-align: right;
}

.zt-product-detail .product-item-detail-info-section {
    grid-column: 2;
    grid-row: 3;
}

/* Purchase panel */
.zt-product-detail .availability {
    position: sticky;
    top: 112px;
    grid-column: 3;
    grid-row: 1 / span 3;
    min-width: 0;
    margin: 0;
    padding: 22px;
    background: var(--zt-detail-soft);
    border: 1px solid var(--zt-detail-line);
    border-radius: 14px;
}

.zt-product-detail .product-item-detail-pay-block {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.zt-product-detail .availability .cost {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    margin: 0;
    padding: 0;
}

.zt-product-detail .availability .cost .left,
.zt-product-detail .availability .cost .right {
    float: none;
}

.zt-product-detail .badge.in-stock {
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    padding: 6px 10px;
    color: var(--zt-detail-green);
    background: #edf9f2 !important;
    border: 1px solid #c9ead7;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
}

.zt-product-detail__price-value {
    display: flex !important;
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
}

.zt-product-detail__price-value > span {
    color: var(--zt-detail-muted);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.zt-product-detail__price-value > strong {
    color: #111820;
    font-size: clamp(28px, 2.1vw, 38px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: -.025em;
}

.zt-product-detail .cart-buttons {
    display: grid;
    grid-template-columns: 124px minmax(0, 1fr);
    gap: 10px;
    align-items: stretch;
    margin: 0;
}

.zt-product-detail .cart-buttons .left {
    display: grid;
    grid-template-columns: 38px minmax(40px, 1fr) 38px;
    width: auto;
    min-height: 46px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #cfd7de;
    border-radius: 9px;
}

.zt-product-detail .cart-buttons .left button,
.zt-product-detail .cart-buttons .left input {
    width: 100%;
    height: 44px;
    margin: 0;
    padding: 0;
    background-color: #fff;
    border: 0;
    border-radius: 0;
}

.zt-product-detail .cart-buttons .left button {
    position: relative;
    background-image: none !important;
    cursor: pointer;
}

.zt-product-detail .cart-buttons .left button::before,
.zt-product-detail .cart-buttons .left button.increment::after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 1.5px;
    content: '';
    background: #26313b;
    transform: translate(-50%, -50%);
}

.zt-product-detail .cart-buttons .left button.increment::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.zt-product-detail .cart-buttons input {
    border-right: 1px solid #e1e6ea;
    border-left: 1px solid #e1e6ea;
    color: #111820;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}

.zt-product-detail .cart-buttons .right {
    width: auto;
}

.zt-product-detail .cart-buttons .right > div,
.zt-product-detail .cart-buttons .right button,
.zt-product-detail .request-btn {
    width: 100%;
    height: 46px;
}

.zt-product-detail .yellow-button,
.zt-product-detail .product-item-detail-buy-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    color: #1b1b1b;
    background: var(--zt-detail-yellow);
    border: 1px solid var(--zt-detail-yellow);
    border-radius: 9px;
    box-shadow: 0 8px 18px rgba(255, 185, 0, .23);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.zt-product-detail .yellow-button:hover,
.zt-product-detail .product-item-detail-buy-button:hover {
    color: #111;
    background: var(--zt-detail-yellow-dark);
    border-color: var(--zt-detail-yellow-dark);
    transform: translateY(-1px);
}

.zt-product-detail .store {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--zt-detail-line);
}

.zt-product-detail .store .items-headers,
.zt-product-detail .store .item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
}

.zt-product-detail .store .items-headers {
    margin-bottom: 6px;
    color: var(--zt-detail-muted);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
}

.zt-product-detail .store .items-headers div,
.zt-product-detail .store .item div {
    width: auto;
}

.zt-product-detail .store .item {
    align-items: center;
    min-height: 38px;
    padding: 8px 0;
    border-top: 1px solid #e4e8ec;
    font-size: 12px;
}

.zt-product-detail .store .item div:last-child {
    color: var(--zt-detail-green);
    font-weight: 700;
}

.zt-product-detail__store-empty {
    padding: 12px;
    color: #6b4a20;
    background: #fff8e6;
    border: 1px solid #f2dfac;
    border-radius: 8px;
    font-size: 12px;
    line-height: 1.45;
}

/* Tabs */
.zt-product-detail .simple-card-description {
    margin: 0;
    padding: 0 0 42px;
    background: transparent;
}

.zt-product-detail .simple-card-description .buttons {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding: 0;
}

.zt-product-detail .simple-card-description .buttons button {
    min-width: max-content;
    min-height: 42px;
    padding: 9px 16px;
    color: #53606b;
    background: #fff;
    border: 1px solid var(--zt-detail-line);
    border-radius: 9px;
    font-size: 13px;
    font-weight: 700;
}

.zt-product-detail .simple-card-description .buttons button.active {
    color: #111820;
    background: #fff7dc;
    border-color: var(--zt-detail-yellow);
}

.zt-product-detail .simple-card-description .line {
    display: none;
}

.zt-product-detail .simple-card-description .items {
    margin-top: 12px;
    padding: 22px;
    background: #fff;
    border: 1px solid var(--zt-detail-line);
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(28, 39, 49, .05);
}

.zt-product-detail .simple-card-description .tab-item {
    color: #4d5964;
    font-size: 14px;
    line-height: 1.7;
}

/* Request modal */
.zt-product-detail + .modal-overlay .modal-content,
#requestModal .modal-content {
    max-width: 520px;
    padding: 30px;
    border: 1px solid var(--zt-detail-line);
    border-radius: 16px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .2);
}

#requestModal .modal-content h2 {
    margin: 0 36px 8px 0;
    color: var(--zt-detail-text);
    font-size: 25px;
}

#requestModal .modal-content > p {
    color: var(--zt-detail-muted);
    line-height: 1.5;
}

#requestModal .form-group input {
    min-height: 44px;
    padding: 10px 12px;
    border-color: #cfd7de;
    border-radius: 8px;
}

@media (max-width: 1480px) {
    :root { --zt-detail-gutter: 20px; }

    .zt-product-detail .simple-card {
        grid-template-columns: minmax(280px, 350px) minmax(320px, 1fr) minmax(290px, 340px);
        gap: 20px;
        padding: 22px;
    }

    .zt-product-detail .zt-product-detail__spec-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1080px) {
    .zt-product-detail .simple-card {
        grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
    }

    .zt-product-detail .simple-card > .images {
        grid-column: 1;
        grid-row: 1 / span 2;
    }

    .zt-product-detail__heading,
    .zt-product-detail .simple-card > .data > .tech-table,
    .zt-product-detail .product-item-detail-info-section {
        grid-column: 2;
    }

    .zt-product-detail .availability {
        position: static;
        grid-column: 1 / -1;
        grid-row: 3;
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
        gap: 20px;
    }

    .zt-product-detail .availability > .zt-product-detail__purchase-title {
        grid-column: 1 / -1;
        margin-bottom: 0;
    }

    .zt-product-detail .store {
        margin-top: 0;
        padding-top: 0;
        padding-left: 20px;
        border-top: 0;
        border-left: 1px solid var(--zt-detail-line);
    }
}

@media (max-width: 720px) {
    :root { --zt-detail-gutter: 14px; }

    .zt-product-detail .simple-card {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
        margin-top: 14px;
        padding: 14px;
        border-left-width: 4px;
        border-radius: 13px;
    }

    .zt-product-detail .simple-card > .images,
    .zt-product-detail__heading,
    .zt-product-detail .simple-card > .data > .tech-table,
    .zt-product-detail .product-item-detail-info-section,
    .zt-product-detail .availability {
        grid-column: 1;
        grid-row: auto;
    }

    .zt-product-detail .simple-card > .images {
        padding: 10px;
    }

    .zt-product-detail .simple-card .data .title {
        font-size: 25px;
    }

    .zt-product-detail__title-row {
        gap: 10px;
    }

    .zt-detail-favorite {
        width: 42px;
        min-width: 42px;
        height: 42px;
    }

    .zt-product-detail .zt-product-detail__spec-grid {
        grid-template-columns: 1fr;
    }

    .zt-product-detail .tech-table .item,
    .zt-product-detail .tech-table .item:not(:last-child) {
        grid-template-columns: minmax(100px, .9fr) minmax(110px, 1.1fr);
    }

    .zt-product-detail .availability {
        display: block;
        padding: 16px;
    }

    .zt-product-detail .store {
        margin-top: 18px;
        padding-top: 18px;
        padding-left: 0;
        border-top: 1px solid var(--zt-detail-line);
        border-left: 0;
    }

    .zt-product-detail .cart-buttons {
        grid-template-columns: 112px minmax(0, 1fr);
    }

    .zt-product-detail .simple-card-description .items {
        padding: 16px;
    }
}

@media (max-width: 430px) {
    .zt-product-detail .cart-buttons {
        grid-template-columns: 1fr;
    }

    .zt-product-detail .cart-buttons .left {
        grid-template-columns: 44px minmax(0, 1fr) 44px;
    }

    .zt-product-detail .swiper-card-thumbs .swiper-wrapper {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* ZIPTEH product detail content and related products — v20 */
.zt-product-content,
.zt-product-related {
    position: relative;
    left: 50%;
    width: 100vw;
    width: 100dvw;
    margin-left: 0;
    transform: translateX(-50%);
    color: var(--zt-detail-text);
}

.zt-product-content *,
.zt-product-content *::before,
.zt-product-content *::after,
.zt-product-related *,
.zt-product-related *::before,
.zt-product-related *::after {
    box-sizing: border-box;
}

.zt-product-content__shell,
.zt-product-related__shell {
    width: 100%;
    max-width: var(--zt-detail-shell);
    margin: 0 auto;
    padding-right: var(--zt-detail-gutter);
    padding-left: var(--zt-detail-gutter);
}

.zt-product-content {
    margin-top: 8px;
    margin-bottom: 34px;
}

.zt-product-content__shell {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(340px, .75fr);
    gap: 22px;
    align-items: stretch;
}

.zt-product-content__panel {
    position: relative;
    min-width: 0;
    padding: 28px 30px;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--zt-detail-line);
    border-radius: 16px;
    box-shadow: 0 12px 34px rgba(28, 39, 49, .06);
}

.zt-product-content__panel::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 4px;
    content: '';
    background: var(--zt-detail-yellow);
}

.zt-product-content__panel--replacements {
    display: flex;
    flex-direction: column;
    background: linear-gradient(145deg, #fff 0%, #fbfcfd 100%);
}

.zt-product-content__eyebrow,
.zt-product-related__eyebrow {
    margin-bottom: 7px;
    color: #a26d00;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    line-height: 1.2;
    text-transform: uppercase;
}

.zt-product-content__title,
.zt-product-related__header h2 {
    margin: 0;
    color: var(--zt-detail-text);
    font-size: clamp(22px, 1.55vw, 30px);
    font-weight: 700;
    line-height: 1.18;
    letter-spacing: -.02em;
}

.zt-product-content__body {
    margin-top: 18px;
    color: #4b5863;
    font-size: 14px;
    line-height: 1.72;
}

.zt-product-content__body > :first-child {
    margin-top: 0;
}

.zt-product-content__body > :last-child {
    margin-bottom: 0;
}

.zt-product-content__body p,
.zt-product-content__body ul,
.zt-product-content__body ol {
    margin: 0 0 13px;
}

.zt-product-content__body ul,
.zt-product-content__body ol {
    padding-left: 22px;
}

.zt-product-content__body img,
.zt-product-content__body iframe,
.zt-product-content__body table {
    max-width: 100%;
}

.zt-product-content__intro {
    margin: 17px 0 12px;
    color: var(--zt-detail-muted);
    font-size: 13px;
    line-height: 1.5;
}

.zt-product-content__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.zt-product-content__chip {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    padding: 7px 11px;
    color: #303b45;
    background: #fff8e6;
    border: 1px solid #efd184;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

.zt-product-content__chip:hover,
.zt-product-content__chip:focus-visible {
    color: #111820;
    background: #ffefb6;
    border-color: var(--zt-detail-yellow);
    transform: translateY(-1px);
}

.zt-product-content__empty {
    margin-top: 18px;
    padding: 16px;
    color: #4b5863;
    background: var(--zt-detail-soft);
    border: 1px solid var(--zt-detail-line);
    border-radius: 10px;
}

.zt-product-content__empty strong {
    display: block;
    margin-bottom: 5px;
    color: var(--zt-detail-text);
    font-size: 14px;
}

.zt-product-content__empty p {
    margin: 0;
    font-size: 13px;
    line-height: 1.5;
}

.zt-product-content__notice {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin-top: auto;
    padding-top: 20px;
    color: #5d6872;
    font-size: 12px;
    line-height: 1.48;
}

.zt-product-content__notice svg {
    width: 20px;
    min-width: 20px;
    height: 20px;
    fill: none;
    stroke: #b47a00;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.zt-product-related {
    margin: 4px 0 48px;
}

.zt-product-related__header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 18px;
}

.zt-product-related__catalog,
.zt-product-related__catalog .catalog-section,
.zt-product-related__catalog .poisk-results__list,
.zt-product-related__catalog .poisk-force-list,
.zt-product-related__catalog .items {
    width: 100% !important;
    max-width: none !important;
}

.zt-product-related__catalog .items-header {
    display: none !important;
}

.zt-product-related__catalog .poisk-results__list,
.zt-product-related__catalog .poisk-force-list,
.zt-product-related__catalog .items {
    display: block !important;
    grid-template-columns: none !important;
    gap: 0 !important;
}

.zt-product-related__catalog .items > .item {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    background: transparent !important;
    border: 0 !important;
}

.zt-product-related__catalog .items > .item + .item {
    margin-top: 14px !important;
}

.zt-product-related__catalog .poisk-product {
    width: 100% !important;
    max-width: none !important;
}

.zt-product-related__catalog .bx-section-desc,
.zt-product-related__catalog .row.bx-blue,
.zt-product-related__catalog .row.bx-yellow,
.zt-product-related__catalog .row.bx-red,
.zt-product-related__catalog .row.bx-green {
    display: none;
}

@media (max-width: 1080px) {
    .zt-product-content__shell {
        grid-template-columns: 1fr;
    }

    .zt-product-content__panel--replacements {
        min-height: 0;
    }

    .zt-product-content__notice {
        margin-top: 20px;
        padding-top: 0;
    }
}

@media (max-width: 720px) {
    .zt-product-content,
    .zt-product-related {
        margin-bottom: 28px;
    }

    .zt-product-content__shell,
    .zt-product-related__shell {
        padding-right: 14px;
        padding-left: 14px;
    }

    .zt-product-content__shell {
        gap: 14px;
    }

    .zt-product-content__panel {
        padding: 21px 18px 21px 21px;
        border-radius: 12px;
    }

    .zt-product-content__title,
    .zt-product-related__header h2 {
        font-size: 23px;
    }

    .zt-product-related__header {
        margin-bottom: 13px;
    }
}

/* ZIPTEH product detail compact card — v21 */
.zt-product-detail .simple-card.zt-product-detail__card {
    grid-template-columns: minmax(300px, 400px) minmax(420px, 1fr) minmax(300px, 350px);
    grid-template-rows: auto minmax(0, 1fr);
    gap: 20px 24px;
    align-items: stretch;
    padding: 24px;
    overflow: hidden;
    border: 0;
    border-left: 0;
    border-radius: 18px;
    box-shadow: 0 14px 42px rgba(28, 39, 49, .09);
}

/* One clean image shape without a frame inside a frame. */
.zt-product-detail .simple-card > .zt-product-detail__gallery {
    display: flex;
    grid-column: 1;
    grid-row: 1 / span 2;
    min-height: 100%;
    flex-direction: column;
    padding: 0;
    overflow: hidden;
    background: #f5f7f9;
    border: 0;
    border-radius: 14px;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card {
    flex: 1 1 auto;
    min-height: 290px;
    aspect-ratio: 4 / 3;
    background: #f5f7f9;
    border: 0;
    border-radius: 0;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card .swiper-slide {
    padding: 22px;
    background: transparent;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card .swiper-slide > a {
    overflow: hidden;
    border-radius: 10px;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card img {
    border-radius: 10px;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card-thumbs {
    flex: 0 0 auto;
    margin: 0;
    padding: 0 12px 12px;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card-thumbs .swiper-slide {
    border-color: #dce3e9;
}

.zt-product-detail__heading {
    grid-column: 2;
    grid-row: 1;
    padding: 0 0 14px;
}

.zt-product-detail__information {
    display: flex;
    grid-column: 2;
    grid-row: 2;
    min-width: 0;
    flex-direction: column;
    gap: 12px;
}

.zt-detail-panel {
    min-width: 0;
    padding: 15px;
    background: #f7f9fa;
    border: 1px solid #e1e7eb;
    border-radius: 11px;
}

.zt-detail-panel__head {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 11px;
}

.zt-detail-panel__head h2 {
    margin: 1px 0 0;
    color: var(--zt-detail-text);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.25;
}

.zt-detail-panel__eyebrow {
    display: block;
    color: #8a6515;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .08em;
    line-height: 1.2;
    text-transform: uppercase;
}

.zt-detail-panel__count {
    display: inline-flex;
    min-width: 25px;
    height: 25px;
    align-items: center;
    justify-content: center;
    color: #705000;
    background: #fff4cb;
    border: 1px solid #efd37a;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 700;
}

.zt-detail-specs-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
}

.zt-detail-spec {
    display: grid;
    grid-template-columns: minmax(90px, .85fr) minmax(100px, 1.15fr);
    gap: 8px;
    align-items: center;
    min-height: 38px;
    padding: 7px 9px;
    background: #fff;
    border: 1px solid #e1e7eb;
    border-radius: 8px;
}

.zt-detail-spec span {
    color: var(--zt-detail-muted);
    font-size: 10px;
    line-height: 1.2;
}

.zt-detail-spec strong {
    overflow-wrap: anywhere;
    color: var(--zt-detail-text);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.25;
    text-align: right;
}

.zt-detail-more-specs {
    margin-top: 9px;
}

.zt-detail-more-specs summary {
    display: flex;
    min-height: 34px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #394651;
    background: #fff;
    border: 1px solid #dce3e8;
    border-radius: 8px;
    font-size: 11px;
    font-weight: 700;
    cursor: pointer;
    list-style: none;
}

.zt-detail-more-specs summary::-webkit-details-marker {
    display: none;
}

.zt-detail-more-specs[open] summary {
    margin-bottom: 8px;
    border-color: #edc34c;
}

.zt-detail-panel-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(240px, .85fr);
    gap: 12px;
}

.zt-detail-panel__body {
    max-height: 145px;
    overflow: auto;
    color: #4f5c67;
    font-size: 11px;
    line-height: 1.55;
    scrollbar-width: thin;
}

.zt-detail-panel__body > :first-child {
    margin-top: 0;
}

.zt-detail-panel__body > :last-child {
    margin-bottom: 0;
}

.zt-detail-panel__body p {
    margin: 0 0 8px;
}

.zt-detail-panel__body img,
.zt-detail-panel__body iframe,
.zt-detail-panel__body table {
    max-width: 100%;
}

.zt-detail-replacements {
    display: flex;
    max-height: 145px;
    flex-wrap: wrap;
    gap: 6px;
    overflow: auto;
    scrollbar-width: thin;
}

.zt-detail-replacements a {
    display: inline-flex;
    min-height: 29px;
    align-items: center;
    padding: 5px 8px;
    color: #3f4650;
    background: #fff7dc;
    border: 1px solid #ebcd70;
    border-radius: 7px;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
}

.zt-detail-replacements a:hover,
.zt-detail-replacements a:focus-visible {
    color: #111820;
    background: #ffedaf;
    border-color: var(--zt-detail-yellow);
}

.zt-detail-panel__empty {
    padding: 11px;
    color: #66727f;
    background: #fff;
    border: 1px dashed #d4dce2;
    border-radius: 8px;
    font-size: 11px;
    line-height: 1.45;
}

/* Purchase shape and aligned controls. */
.zt-product-detail .availability.zt-product-detail__purchase {
    position: sticky;
    top: 112px;
    grid-column: 3;
    grid-row: 1 / span 2;
    align-self: start;
    padding: 20px;
    background: #f7f9fa;
    border: 0;
    border-radius: 14px;
    box-shadow: inset 0 0 0 1px #e0e6ea;
}

.zt-product-detail .availability .cost {
    display: block;
}

.zt-product-detail .availability .cost .left {
    margin-bottom: 10px;
}

.zt-product-detail__price-value {
    margin-bottom: 15px;
}

.zt-detail-cart {
    display: grid;
    grid-template-columns: 122px minmax(0, 1fr);
    gap: 9px;
    align-items: stretch;
    width: 100%;
}

.zt-detail-quantity {
    display: grid;
    grid-template-columns: 36px minmax(38px, 1fr) 36px;
    height: 46px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #ccd5dc;
    border-radius: 9px;
}

.zt-detail-quantity button,
.zt-detail-quantity input {
    width: 100%;
    height: 44px;
    margin: 0;
    padding: 0;
    color: #26323c;
    background: #fff;
    border: 0;
    border-radius: 0;
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
}

.zt-detail-quantity button {
    cursor: pointer;
}

.zt-detail-quantity button:hover {
    background: #f3f5f7;
}

.zt-detail-quantity input {
    border-right: 1px solid #e2e7eb;
    border-left: 1px solid #e2e7eb;
    appearance: textfield;
    -moz-appearance: textfield;
}

.zt-detail-quantity input::-webkit-inner-spin-button,
.zt-detail-quantity input::-webkit-outer-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.zt-detail-cart__button,
.zt-detail-order-action .request-btn {
    display: inline-flex;
    width: 100%;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 0;
    padding: 10px 14px;
    border: 0;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    cursor: pointer;
}

.zt-detail-cart__button svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.zt-detail-cart__button.is-added {
    color: #fff;
    background: #16834b;
    box-shadow: 0 8px 18px rgba(22, 131, 75, .22);
}

.zt-detail-cart__button.is-loading {
    opacity: .72;
    cursor: wait;
}

.zt-detail-cart__status {
    margin-top: 9px;
    color: #697681;
    font-size: 10px;
    line-height: 1.35;
}

.zt-detail-cart__status.is-in-basket {
    color: #16834b;
    font-weight: 700;
}

.zt-detail-cart__status span {
    margin-right: 4px;
}

.zt-detail-favorite.is-active,
.zt-detail-favorite.poisk-product__favorite--active {
    color: #fff;
    background: var(--zt-detail-yellow);
    border-color: var(--zt-detail-yellow);
}

.zt-detail-favorite.is-active svg,
.zt-detail-favorite.poisk-product__favorite--active svg {
    fill: currentColor;
}

/* The information is now inside the main product card. */
.zt-product-content {
    display: none !important;
}

@media (max-width: 1480px) {
    .zt-product-detail .simple-card.zt-product-detail__card {
        grid-template-columns: minmax(270px, 330px) minmax(360px, 1fr) minmax(280px, 320px);
        gap: 18px;
        padding: 20px;
    }

    .zt-detail-specs-grid,
    .zt-detail-panel-grid {
        grid-template-columns: 1fr;
    }

    .zt-detail-panel__body,
    .zt-detail-replacements {
        max-height: 120px;
    }
}

@media (max-width: 1080px) {
    .zt-product-detail .simple-card.zt-product-detail__card {
        grid-template-columns: minmax(260px, 330px) minmax(0, 1fr);
        grid-template-rows: auto auto auto;
    }

    .zt-product-detail .simple-card > .zt-product-detail__gallery {
        grid-column: 1;
        grid-row: 1 / span 2;
    }

    .zt-product-detail__heading,
    .zt-product-detail__information {
        grid-column: 2;
    }

    .zt-product-detail__heading {
        grid-row: 1;
    }

    .zt-product-detail__information {
        grid-row: 2;
    }

    .zt-product-detail .availability.zt-product-detail__purchase {
        position: static;
        grid-column: 1 / -1;
        grid-row: 3;
    }

    .zt-product-detail .product-item-detail-pay-block {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(280px, .85fr);
        gap: 16px 22px;
        align-items: start;
    }

    .zt-product-detail .store {
        margin: 0;
        padding: 0 0 0 20px;
        border-top: 0;
        border-left: 1px solid var(--zt-detail-line);
    }
}

@media (max-width: 720px) {
    .zt-product-detail .simple-card.zt-product-detail__card {
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: auto;
        gap: 14px;
        padding: 13px;
    }

    .zt-product-detail .simple-card > .zt-product-detail__gallery,
    .zt-product-detail__heading,
    .zt-product-detail__information,
    .zt-product-detail .availability.zt-product-detail__purchase {
        grid-column: 1;
        grid-row: auto;
    }

    .zt-product-detail .zt-product-detail__gallery .swiper-card {
        min-height: 230px;
    }

    .zt-detail-specs-grid,
    .zt-detail-panel-grid {
        grid-template-columns: 1fr;
    }

    .zt-product-detail .product-item-detail-pay-block {
        display: flex;
    }

    .zt-product-detail .store {
        margin-top: 16px;
        padding: 16px 0 0;
        border-top: 1px solid var(--zt-detail-line);
        border-left: 0;
    }
}

@media (max-width: 430px) {
    .zt-detail-cart {
        grid-template-columns: 1fr;
    }

    .zt-detail-quantity {
        grid-template-columns: 44px minmax(0, 1fr) 44px;
    }
}


/* ZIPTEH product detail gallery and compact stores — v23 */
.zt-product-detail .simple-card.zt-product-detail__card {
    grid-template-columns: minmax(300px, 390px) minmax(420px, 1fr) minmax(300px, 350px);
    align-items: start;
}

.zt-product-detail .simple-card > .zt-product-detail__gallery {
    min-height: 0;
    align-self: start;
    padding: 12px;
    background: #f5f7f9;
    border-radius: 14px;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card {
    flex: none;
    width: 100%;
    min-height: 0;
    /* CSS uses width / height. The requested 2:3 landscape shape is therefore 3 / 2. */
    aspect-ratio: 3 / 2;
    overflow: hidden;
    background: #fff;
    border-radius: 11px;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card .swiper-wrapper,
.zt-product-detail .zt-product-detail__gallery .swiper-card .swiper-slide,
.zt-product-detail .zt-product-detail__gallery .swiper-card .swiper-slide > a {
    width: 100%;
    height: 100%;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card .swiper-slide {
    padding: 12px;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    border-radius: 7px;
}

/* A visible first image even before Swiper finishes initialization. */
.zt-product-detail .zt-product-detail__gallery .swiper-card:not(.swiper-initialized) .swiper-wrapper {
    display: block;
    transform: none !important;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card:not(.swiper-initialized) .swiper-slide {
    display: none;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card:not(.swiper-initialized) .swiper-slide:first-child {
    display: flex;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card-thumbs {
    margin-top: 10px;
    padding: 0;
}

.zt-product-detail .zt-product-detail__gallery .swiper-card-thumbs .swiper-wrapper {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.zt-product-detail .availability.zt-product-detail__purchase {
    padding: 16px;
}

.zt-product-detail .store.zt-detail-stores {
    margin-top: 14px;
    padding-top: 13px;
}

.zt-product-detail .zt-product-detail__store-title {
    margin-bottom: 8px;
    font-size: 13px;
}

.zt-detail-stores__list {
    display: grid;
    gap: 6px;
}

.zt-product-detail .store .zt-detail-store-row,
.zt-product-detail .store .zt-detail-store-row:not(:last-child) {
    display: flex;
    min-height: 34px;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0;
    padding: 7px 9px;
    background: #fff;
    border: 1px solid #e1e7eb;
    border-radius: 8px;
}

.zt-product-detail .store .zt-detail-store-row span {
    color: #4c5964;
    font-size: 11px;
    line-height: 1.25;
}

.zt-product-detail .store .zt-detail-store-row strong {
    flex: 0 0 auto;
    color: var(--zt-detail-green);
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
}

.zt-product-detail .store .items-headers {
    display: none !important;
}

@media (max-width: 1480px) {
    .zt-product-detail .simple-card.zt-product-detail__card {
        grid-template-columns: minmax(220px, 280px) minmax(360px, 1fr) minmax(280px, 320px);
    }
}

@media (max-width: 1080px) {
    .zt-product-detail .simple-card.zt-product-detail__card {
        grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
    }

    .zt-product-detail .store.zt-detail-stores {
        margin: 0;
        padding: 0 0 0 18px;
    }
}

@media (max-width: 720px) {
    .zt-product-detail .simple-card > .zt-product-detail__gallery {
        width: min(100%, 320px);
        justify-self: center;
    }

    .zt-product-detail .zt-product-detail__gallery .swiper-card {
        min-height: 0;
        aspect-ratio: 2 / 3;
    }

    .zt-product-detail .store.zt-detail-stores {
        margin-top: 13px;
        padding: 13px 0 0;
    }
}

/* End */


/* Start:/local/templates/zipteh/assets/styles/product-detail-v2.css?179386987552268*/
/* =========================================================
   ZIPTEH — карточка товара, перевёрстка по ТЗ от 01.09.2026.

   Всё изолировано корнем .zt-product-detail-v2. Глобальные
   .container, .item, .card, .badge, .yellow-button и селекторы
   Swiper не затрагиваются.

   Два решения заказчика от 01.09.2026, отличающиеся от текста ТЗ:
     1. Ширина колонки — по шапке (.zt-shell), а не 1470 px
        из макета. §3.1 ТЗ требовал того и другого одновременно.
     2. Миниатюры — горизонтальным слайдером ПОД большим фото,
        а не вертикальной лентой слева; главное фото 3:2.

   Этот файл доводится по одной ширине в порядке §8 ТЗ.
   Готово: 1920, 3406, 1440, 1280, 1024, 768, 414, 412, 360.
   ========================================================= */

.zt-product-detail-v2 {
    --pd-ink: #1f2733;
    --pd-ink-soft: #55606e;
    --pd-muted: #8a929c;
    --pd-line: #e6e9ed;
    --pd-line-soft: #eef1f4;
    --pd-surface: #fff;
    /* 07.09.2026, указание заказчика: во всём модуле белый фон */
    --pd-page: #fff;
    --pd-yellow: #ffb800;
    --pd-yellow-hover: #f0a900;
    --pd-green: #23a05a;
    --pd-green-soft: #eaf7f0;
    --pd-radius: 14px;
    --pd-radius-sm: 8px;
    --pd-shadow: 0 10px 30px rgba(23, 29, 38, .06);
    --pd-gap: 16px;

    /* 07.09.2026, указание заказчика: отступ до CTA вдвое меньше.
       Из 194 px его составляли 64 px этого модуля, 50 px общей обёртки
       страницы и 80 px собственного поля CTA. Обёртку и CTA трогать
       нельзя — они общие для всех страниц, поэтому недостающее
       выбирается отрицательным нижним полем модуля. */
    padding: 18px 0 24px;
    margin-bottom: -56px;
    color: var(--pd-ink);
    background: var(--pd-page);
    font-family: var(--zt-font, "Tektur", Arial, sans-serif);
    font-size: 14px;
    line-height: 1.45;
}

.zt-product-detail-v2 *,
.zt-product-detail-v2 *::before,
.zt-product-detail-v2 *::after {
    box-sizing: border-box;
}

.zt-product-detail-v2 img {
    max-width: 100%;
}

.zt-product-detail-v2 h1,
.zt-product-detail-v2 h2,
.zt-product-detail-v2 h3 {
    margin: 0;
    color: var(--pd-ink);
}

/* Оболочка берёт сетку шапки: класс zt-shell вешается в разметке,
   поэтому здесь ширина не задаётся — только вертикальный ритм. */
.zt-pd__shell > * + * {
    margin-top: var(--pd-gap);
}

/* 07.09.2026, указание заказчика: от верхней товарной зоны до
   «С этим товаром покупают» отступ вдвое больше обычного шага. */
.zt-pd__top + .zt-pd-related {
    margin-top: calc(var(--pd-gap) * 2);
}

/* ---------------------------------------------------------
   Верхняя товарная зона
   --------------------------------------------------------- */

.zt-pd__top {
    display: grid;
    grid-template-columns: 560px minmax(0, 1fr) 370px;
    gap: var(--pd-gap);
    align-items: stretch;
}

.zt-pd-card {
    padding: 22px;
    border: 1px solid var(--pd-line);
    border-radius: var(--pd-radius);
    background: var(--pd-surface);
    box-shadow: var(--pd-shadow);
}

/* --- галерея --- */

.zt-pd-gallery {
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-width: 0;
    /* 07.09.2026: карточка фото по своей высоте, а не по высоте
       информационной. После того как в информационную добавилось
       описание товара, растяжка оставляла под миниатюрами пустое
       место — «отступ у фото», которого раньше не было. */
    align-self: start;
}

.zt-pd-gallery__stage {
    position: relative;
    aspect-ratio: 3 / 2;          /* решение заказчика 01.09.2026 */
    display: grid;
    overflow: hidden;
    place-items: center;
    border-radius: var(--pd-radius-sm);
    background: #fff;
}

.zt-pd-gallery__stage img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 12px;
}

.zt-pd-gallery__zoom {
    position: absolute;
    right: 12px;
    bottom: 12px;
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    border: 1px solid var(--pd-line);
    border-radius: 10px;
    color: var(--pd-ink-soft);
    background: rgba(255, 255, 255, .92);
    cursor: pointer;
    transition: border-color 160ms ease, color 160ms ease;
}

.zt-pd-gallery__zoom:hover {
    border-color: var(--pd-yellow);
    color: var(--pd-ink);
}

.zt-pd-gallery__zoom svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
}

/* --- лента миниатюр под фото --- */

.zt-pd-thumbs {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr) 32px;
    gap: 8px;
    align-items: center;
}

.zt-pd-thumbs__track {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    scroll-behavior: smooth;
    scrollbar-width: none;
}

.zt-pd-thumbs__track::-webkit-scrollbar {
    display: none;
}

.zt-pd-thumbs__item {
    width: 84px;
    height: 64px;
    flex: 0 0 84px;
    display: grid;
    padding: 5px;
    overflow: hidden;
    place-items: center;
    border: 1px solid var(--pd-line);
    border-radius: var(--pd-radius-sm);
    background: #fff;
    cursor: pointer;
    transition: border-color 160ms ease;
}

.zt-pd-thumbs__item img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.zt-pd-thumbs__item:hover {
    border-color: #cfd6de;
}

.zt-pd-thumbs__item[aria-current="true"] {
    border-color: var(--pd-yellow);
    box-shadow: 0 0 0 1px var(--pd-yellow);
}

.zt-pd-thumbs__arrow {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border: 1px solid var(--pd-line);
    border-radius: var(--pd-radius-sm);
    color: var(--pd-ink-soft);
    background: #fff;
    cursor: pointer;
}

.zt-pd-thumbs__arrow:disabled {
    opacity: .4;
    cursor: default;
}

.zt-pd-thumbs__arrow svg {
    width: 14px;
    height: 14px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}

/* --- центральная информационная карточка --- */

.zt-pd-info {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.zt-pd-info__title {
    margin-top: 0;
    font-size: 34px;
    font-weight: 700;
    line-height: 1.12;
}

.zt-pd-info__lead {
    margin: 16px 0 0;
    max-width: 720px;
    color: var(--pd-ink-soft);
    font-size: 14px;
    line-height: 1.6;
}

/* 07.09.2026, указание заказчика: кнопка «Купить в 1 клик» временно
   скрыта. Разметка и обработчик на месте — чтобы вернуть, достаточно
   снять это правило. */
.zt-pd-btn--ghost[data-pd-oneclick] {
    display: none;
}

/* --- карточка покупки --- */

.zt-pd-buy {
    display: flex;
    flex-direction: column;
    gap: 14px;
    align-self: start;
}

.zt-pd-buy__label {
    color: var(--pd-muted);
    font-size: 12px;
}

.zt-pd-buy__price {
    margin-top: -6px;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.1;
}

.zt-pd-buy__stock {
    display: flex;
    gap: 8px;
    align-items: center;
    color: var(--pd-green);
    font-size: 13px;
    font-weight: 600;
}

.zt-pd-buy__stock i {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
}

.zt-pd-buy__qty {
    display: flex;
    gap: 12px;
    align-items: center;
}

.zt-pd-stepper {
    display: grid;
    grid-template-columns: 38px minmax(40px, 1fr) 38px;
    height: 44px;
    align-items: center;
    overflow: hidden;
    border: 1px solid var(--pd-line);
    border-radius: var(--pd-radius-sm);
    background: #fff;
}

.zt-pd-stepper button {
    height: 100%;
    border: 0;
    color: var(--pd-ink-soft);
    background: transparent;
    font-size: 18px;
    cursor: pointer;
}

.zt-pd-stepper button:hover {
    color: var(--pd-ink);
}

.zt-pd-stepper input {
    height: 100%;
    border: 0;
    color: var(--pd-ink);
    font: 600 14px/1 var(--zt-font-btn, "Manrope", Arial, sans-serif);
    text-align: center;
}

.zt-pd-stepper input::-webkit-outer-spin-button,
.zt-pd-stepper input::-webkit-inner-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.zt-pd-buy__unit {
    color: var(--pd-muted);
    font-size: 13px;
}

.zt-pd-btn {
    display: flex;
    min-height: 48px;
    gap: 10px;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border: 1px solid transparent;
    border-radius: var(--pd-radius-sm);
    font: 600 14px/1 var(--zt-font-btn, "Manrope", Arial, sans-serif);
    text-decoration: none;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease;
}

.zt-pd-btn svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
}

.zt-pd-btn--cart {
    color: #1b2026;
    background: var(--pd-yellow);
}

.zt-pd-btn--cart:hover {
    background: var(--pd-yellow-hover);
}

/* Состояния добавления в корзину (09.09.2026). Те же три, что у карточек
   лент: ждём ответ сервера, добавили, не получилось. Размер кнопки
   не меняется — подпись переключает только текст. */
.zt-pd-btn--cart.is-loading {
    cursor: progress;
    opacity: .75;
}

.zt-pd-btn--cart.is-added {
    color: #10432a;
    background: #cdf2d8;
}

.zt-pd-btn--cart.is-added:hover {
    background: #cdf2d8;
}

.zt-pd-btn--cart.is-error {
    color: #6d1620;
    background: #f8d2d6;
}

.zt-pd-btn--cart.is-error:hover {
    background: #f8d2d6;
}

.zt-pd-btn--cart[disabled] {
    cursor: default;
}

.zt-pd-btn--ghost {
    border-color: var(--pd-line);
    color: var(--pd-ink);
    background: #fff;
}

.zt-pd-btn--ghost:hover {
    border-color: #cfd6de;
}

.zt-pd-btn--fav {
    min-height: 40px;
    color: var(--pd-ink-soft);
    background: transparent;
}

.zt-pd-btn--fav:hover {
    color: var(--pd-ink);
}

.zt-pd-btn--fav[aria-pressed="true"] svg {
    fill: var(--pd-yellow);
    stroke: var(--pd-yellow);
}

/* ---------------------------------------------------------
   Характеристики и склады — внутри информационной карточки.
   07.09.2026: нижний ряд из четырёх карточек снят, «Преимущества»
   и «Нужна помощь с подбором?» убраны по указанию заказчика.
   --------------------------------------------------------- */

.zt-pd-info__facts {
    display: grid;
    /* лёгкий перевес левой колонке: подписи характеристик длиннее складов */
    grid-template-columns: 1.02fr 1fr;
    gap: 16px;
    /* 07.09.2026, указание заказчика: блоки подняты под заголовок
       (было `margin-top: auto` — прижимало их к низу карточки)
       и каждый убран в свою рамку. Второй ряд — описание товара:
       он растягивается и занимает пустое место под ними. */
    grid-template-rows: auto 1fr;
    margin-top: 20px;
    flex: 1;
}

.zt-pd-info__fact {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: 16px 18px;
    border: 1px solid var(--pd-line);
    border-radius: var(--pd-radius-sm);
    background: var(--pd-surface);
}

.zt-pd-info__fact--wide {
    grid-column: 1 / -1;
}

.zt-pd-info__about {
    margin: 12px 0 0;
    overflow: hidden;
    color: var(--pd-ink-soft);
    font-size: 13px;
    line-height: 1.6;
}

.zt-pd-info__fact-title {
    margin: 0;
    font-size: 15px;
    font-weight: 700;
}

.zt-pd-info__fact-empty {
    margin: 12px 0 0;
    color: var(--pd-ink-soft);
    font-size: 13px;
    line-height: 1.5;
}

/* карточка «Описание и характеристики» */

.zt-pd-panel {
    display: flex;
    flex-direction: column;
}

.zt-pd-panel__title {
    font-size: 17px;
    font-weight: 700;
}

.zt-pd-specs,
.zt-pd-stores {
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
}

.zt-pd-specs li,
.zt-pd-stores li {
    display: grid;
    grid-template-columns: minmax(0, auto) minmax(0, 1fr);
    gap: 10px;
    padding: 7px 0;
    align-items: baseline;
    font-size: 13px;
}

.zt-pd-specs li + li,
.zt-pd-stores li + li {
    border-top: 1px solid var(--pd-line-soft);
}

/* Кегль задаётся прямо на dt/dd: общие стили шаблона сайта
   переопределяют наследование от li и поднимают их до 16 px,
   отчего строка «подпись + значение» переставала умещаться. */
.zt-pd-specs dt,
.zt-pd-specs dd,
.zt-pd-stores dt,
.zt-pd-stores dd {
    font-size: 13px;
}

.zt-pd-specs dt,
.zt-pd-stores dt {
    color: var(--pd-muted);
}

.zt-pd-specs dd,
.zt-pd-stores dd {
    margin: 0;
    color: var(--pd-ink);
    font-weight: 600;
    text-align: right;
}

.zt-pd-stores dd.is-available {
    color: var(--pd-green);
}

.zt-pd-stores dd.is-empty {
    color: var(--pd-muted);
    font-weight: 400;
}

.zt-pd-panel__link {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    margin-top: auto;
    padding-top: 16px;
    color: var(--pd-ink);
    font: 600 13px/1 var(--zt-font-btn, "Manrope", Arial, sans-serif);
    text-decoration: none;
}

.zt-pd-panel__link svg {
    width: 14px;
    height: 14px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}

.zt-pd-panel__link:hover {
    color: var(--pd-yellow-hover);
}

/* ---------------------------------------------------------
   «С этим товаром покупают» и «Вы смотрели».

   07.09.2026, указание заказчика: лента и стрелки — такие же,
   как в модуле подборок на главной. Повторены количество карточек
   в кадре и расстояния из Swiper `#ztSaleProducts`
   (1.2 / 2 / 3 / 4 / 5 / 6 на 0 / 520 / 760 / 1020 / 1320 / 1640)
   и оформление круглых стрелок 44 px по бокам ленты.
   Сам принятый модуль главной не изменяется — здесь только его
   геометрия, воспроизведённая на обычной прокрутке со snap.
   --------------------------------------------------------- */

.zt-pd-related__head {
    display: flex;
    gap: 16px;
    align-items: center;
    justify-content: space-between;
    /* Вровень с лентой: у неё боковые поля 56 px под стрелки.
       Так же сделано на главной (`__topline { padding: 0 56px }`) —
       заголовок начинается с краем первой карточки. */
    padding: 0 56px;
    /* 22 px под заголовком — как у `__topline` главной */
    margin-bottom: 22px;
}

/* 72 px между лентами — тот же зазор, что между блоками подборок
   на главной */
.zt-pd-related + .zt-pd-related {
    margin-top: 72px;
}

.zt-pd-related__title {
    font-size: 24px;
    font-weight: 700;
    text-transform: uppercase;
}

/* Рамка ленты: в ней же абсолютно позиционируются стрелки. */
.zt-pd-related__box {
    position: relative;
}

/* Лента — контейнер Swiper с теми же полями, что у слайдера главной:
   боковые 56 px под стрелки, нижние 42 px под полосу прогресса.
   Под корнем модуля — иначе `.swiper { margin: auto }` из swiper-bundle
   (он подключён ниже в <head>) съедает боковые поля. На главной то же
   правило написано через три класса и выигрывает по весу. */
.zt-product-detail-v2 .zt-pd-related__track {
    position: relative;
    margin: -7px 56px 0;
    padding: 8px 1px 42px;
}

/* Стрелки — один в один со стрелками каруселей главной
   (слой `zt-home-unify.css`, правка N-027…N-035): квадрат
   со скруглением 10 px, без тени, на ховере желтеет только рамка. */
.zt-pd-related__arrow {
    position: absolute;
    top: 50%;
    z-index: 5;
    display: inline-flex;
    width: 44px;
    min-width: 44px;
    height: 44px;
    padding: 0;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
    /* !important — как в самом слое унификации на главной: общие стили
       шаблона сайта иначе перебивают скругление и возвращают круг */
    color: #333a43 !important;
    background-color: #fff !important;
    border: 1px solid #e3e6e9 !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    cursor: pointer;
    transition: border-color .18s ease;
}

.zt-pd-related__arrow--prev {
    left: 0;
}

.zt-pd-related__arrow--next {
    right: 0;
}

.zt-pd-related__arrow:hover:not(:disabled) {
    border-color: var(--zt-yellow, #ffb800) !important;
}

/* Скругление приходится задавать под корнем модуля: у общих стилей
   шаблона сайта своё правило с !important, и одного класса не хватает —
   выигрывает тот, чей файл ниже в <head>. */
.zt-product-detail-v2 .zt-pd-related__arrow {
    border-radius: 10px !important;
}

.zt-pd-related__arrow:disabled,
.zt-pd-related__arrow.swiper-button-disabled {
    opacity: .35;
    cursor: default;
}

/* watchOverflow прячет стрелки, когда листать нечего; нам они нужны
   на месте — как на главной, где товаров всегда больше кадра. */
.zt-pd-related__arrow.swiper-button-lock {
    display: inline-flex;
}

.zt-pd-related__arrow svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* Брейкпоинты Swiper главной. Ширина слайда = (100% − (N−1)·gap) / N. */
/* Полоса прогресса с техникой — как в подборках главной
   (N-113 «тонкий прогресс-бар вместо точек» и N-122 «техника тянет
   полосу»). Картинки те же, лежат в assets/images/sale-products/. */
/* Под корнем модуля: у swiper-bundle своё правило той же силы
   (`.swiper-horizontal > .swiper-pagination-progressbar`), и оно
   ставит полосу к верху ленты — файл подключён ниже в <head>. */
.zt-product-detail-v2 .zt-pd-related__progress.swiper-pagination-progressbar {
    position: absolute;
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
    margin: 14px 0 0;
    overflow: visible;
    border-radius: 999px;
    background: #e8eaec;
}

.zt-product-detail-v2 .zt-pd-related__progress .swiper-pagination-progressbar-fill {
    border-radius: 999px;
    background: #ffb800;
}

.zt-pd-related__tractor {
    position: absolute;
    top: -24px;
    left: 0;
    z-index: 2;
    display: block;
    width: 48px;
    height: 26px;
    background: center bottom / contain no-repeat;
    /* конец линии — под ходовой частью, навеска свисает за край */
    transform: translateX(-86%);
    transition: left .35s ease;
    filter: drop-shadow(0 2px 3px rgba(29, 34, 40, .18));
    cursor: grab;
    touch-action: none;
}

.zt-pd-related__tractor.is-dragging {
    transition: none;
    cursor: grabbing;
}

/* мгновенный «прыжок» через край полосы при зацикливании */
.zt-pd-related__tractor.is-teleport {
    transition: none !important;
}

/* «С этим товаром покупают» — трактор из «Новинок»,
   «Вы смотрели» — бульдозер из «Акций». */
.zt-pd-related__tractor {
    background-image: url('/local/templates/zipteh/assets/styles/../images/sale-products/tractor.webp?v=2');
}

.zt-pd-viewed .zt-pd-related__tractor {
    background-image: url('/local/templates/zipteh/assets/styles/../images/sale-products/bulldozer.webp?v=2');
    transform: translateX(-68%);
}

@media (prefers-reduced-motion: reduce) {
    .zt-pd-related__progress-fill,
    .zt-pd-related__tractor {
        transition: none;
    }
}

/* Мобильный вывод — как у подборок главной: боковых стрелок нет,
   полосы прогресса нет, под лентой стоит ряд управления с двумя
   кнопками 44×44 (у главной рядом с ними ещё ссылка «Все товары»,
   здесь ей нет пары, поэтому кнопки по центру). */
@media (max-width: 680px) {
    .zt-pd-related__head {
        padding-left: 0;
        padding-right: 0;
    }

    .zt-pd-related__box {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        gap: 7px;
    }

    .zt-product-detail-v2 .zt-pd-related__track {
        order: 0;
        flex: 0 0 100%;
        margin-left: 0;
        margin-right: 0;
        /* полосы прогресса на телефоне нет — нижнее поле не нужно */
        padding-bottom: 0;
    }

    .zt-pd-related__arrow {
        position: static;
        order: 1;
        margin-top: 8px;
        border-radius: 8px !important;
        transform: none;
    }

    .zt-product-detail-v2 .zt-pd-related__arrow {
        border-radius: 8px !important;
    }

    .zt-pd-related__arrow--next {
        order: 2;
    }

    .zt-pd-related__arrow svg {
        width: 18px;
        height: 18px;
    }

    .zt-product-detail-v2 .zt-pd-related__progress.swiper-pagination-progressbar {
        display: none;
    }
}


/* ---------------------------------------------------------
   Фокус — единый для всего модуля
   --------------------------------------------------------- */

.zt-product-detail-v2 a:focus-visible,
.zt-product-detail-v2 button:focus-visible,
.zt-product-detail-v2 input:focus-visible {
    outline: 2px solid #175cd3;
    outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
    .zt-product-detail-v2 * {
        transition: none !important;
        scroll-behavior: auto !important;
    }
}

/* ---------------------------------------------------------
   Вложение в контентную колонку страницы.

   На бою модуль рендерится внутри `.zt-page-content-area > .container`,
   которая уже стоит на сетке шапки. Поэтому собственные поля
   `.zt-shell` здесь снимаются — иначе колонка получает двойной
   отступ (замер: 56 px вместо 28 и 1793 px вместо 1849).
   --------------------------------------------------------- */

/* Боевая раскладка отличается от стендовой: там компонент
   `catalog.element` выводится внутри ДОПОЛНИТЕЛЬНОЙ обёртки
   `section.content-area-catalog > div.container`, а у неё
   `max-width: 1200px` и поля 20 px. Из-за этого колонка модуля
   получалась 1160 px вместо 1385 и вся раскладка съезжала:
   средняя колонка верхней зоны сжималась с 533 до 308 px.

   Снимаем ограничение только у той обёртки, внутри которой лежит
   сам модуль, — списки каталога в ней не участвуют и не меняются.
   Заодно снимаем её вертикальные поля 50 px: на стенде их нет.
   Если браузер не понимает `:has()`, страница просто останется
   узкой — ничего не ломается. */
.content-area-catalog:has(.zt-product-detail-v2) {
    padding-top: 0;
    padding-bottom: 0;
}

.content-area-catalog > .container:has(> .zt-product-detail-v2) {
    max-width: none;
    padding-right: 0;
    padding-left: 0;
}

.zt-page-content-area .zt-product-detail-v2 .zt-pd__shell {
    /* !important обязателен: правило `.zt-shell` с полями 28 px приходит
       из стилей боевого домена и объявлено там через !important —
       без этого колонка получает двойной отступ. */
    max-width: none !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

/* Фон модуля остаётся в границах контентной колонки: попытка вывести
   его на всю ширину через отрицательные поля обнуляла сетку
   (замер: колонка 0 px), а выигрыш чисто декоративный. */


/* =========================================================
   Адаптив. ТЗ §7: каждая ширина доводится отдельно.

   Отступление от §3.2 и §7.4: отдельной колонки миниатюр нет —
   по решению заказчика от 01.09.2026 лента вынесена под фото,
   поэтому верхняя зона везде состоит из трёх колонок, а не из
   четырёх. Ориентиры ширин пересчитаны под это.
   ========================================================= */

/* ---------- 1440 (диапазон 1361–1680) ---------- */

@media (max-width: 1680px) {
    .zt-pd__top {
        grid-template-columns: 480px minmax(0, 1fr) 340px;
    }

    .zt-pd-info__title {
        font-size: 30px;
    }
}

/* ---------- 1280 (диапазон 1081–1360) ---------- */

@media (max-width: 1360px) {
    .zt-product-detail-v2 {
        --pd-gap: 14px;
    }

    .zt-pd__top {
        grid-template-columns: 400px minmax(0, 1fr) 300px;
    }

    .zt-pd-card {
        padding: 18px;
    }

    .zt-pd-info__title {
        font-size: 27px;
    }

    .zt-pd-buy__price {
        font-size: 26px;
    }
}

/* ---------- 1024 (диапазон 821–1080) ---------- */

@media (max-width: 1080px) {
    /* §7.5: галерея и информация в две колонки, покупка — отдельной
       строкой во всю ширину под ними */
    .zt-pd__top {
        grid-template-columns: minmax(0, 420px) minmax(0, 1fr);
    }

    .zt-pd-buy {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 12px 20px;
        align-items: center;
    }

    .zt-pd-buy__label {
        grid-column: 1;
        align-self: end;
    }

    .zt-pd-buy__price {
        grid-column: 1;
        margin-top: 0;
    }

    .zt-pd-buy__stock {
        grid-column: 1;
    }

    .zt-pd-buy__qty {
        grid-column: 2;
        grid-row: 1 / 3;
        justify-content: flex-end;
    }

    .zt-pd-btn--cart {
        grid-column: 2;
        grid-row: 3;
    }

    .zt-pd-btn--ghost {
        grid-column: 1;
    }

    .zt-pd-btn--fav {
        grid-column: 2;
        justify-content: center;
    }
}

/* ---------- 768 (диапазон 561–820) ---------- */

@media (max-width: 820px) {
    /* §7.6: одна колонка, порядок галерея → информация → покупка */
    .zt-pd__top {
        grid-template-columns: minmax(0, 1fr);
    }

    .zt-pd-buy {
        grid-column: auto;
    }

    /* «Цена с НДС» — по левому краю. `align-self: end` ей задан выше для
       сетки диапазона 821–1080; здесь карточка покупки становится
       колоночным флексом, и то же правило уводило подпись вправо. */
    .zt-pd-buy__label {
        align-self: start;
    }

    .zt-pd-gallery__stage {
        max-height: 60vh;
    }

    .zt-pd-info__title {
        font-size: 25px;
    }

    /* §7.6: интерактивные зоны не меньше 44 px */
    .zt-pd-thumbs__arrow {
        width: 44px;
        height: 44px;
    }

    .zt-pd-thumbs {
        grid-template-columns: 44px minmax(0, 1fr) 44px;
    }

    .zt-pd-gallery__zoom {
        width: 44px;
        height: 44px;
    }
}

/* ---------- 414 и 412 (диапазон 381–560) ---------- */

@media (max-width: 560px) {
    .zt-product-detail-v2 {
        --pd-gap: 12px;
        padding: 14px 0 48px;
    }

    .zt-pd-card {
        padding: 16px;
        border-radius: 12px;
    }

    .zt-pd-info__title {
        font-size: 23px;
    }

    /* §7.7: степпер отдельной строкой над CTA, кнопки во всю ширину */
    .zt-pd-buy {
        display: flex;
        flex-direction: column;
        align-items: stretch;
    }

    .zt-pd-buy__qty {
        justify-content: flex-start;
    }

    .zt-pd-stepper {
        flex: 1;
        max-width: 160px;
    }

    .zt-pd-btn {
        width: 100%;
    }

    /* §7.7: характеристики и склады друг под другом */
    .zt-pd-info__facts {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
    }

    .zt-pd-related__title {
        font-size: 20px;
    }
}

/* ---------- 360 (до 380) ---------- */

@media (max-width: 380px) {
    /* §7.8: отдельные правила, а не продолжение 412 */
    .zt-product-detail-v2 {
        --pd-gap: 10px;
        font-size: 14px;          /* минимальный читаемый основной текст */
    }

    .zt-pd-card {
        padding: 14px;
    }

    .zt-pd-info__title {
        font-size: 21px;
    }

    /* §7.8: цена не переносится посередине числа, единица не сталкивается
       со степпером */
    .zt-pd-buy__price {
        font-size: 24px;
        white-space: nowrap;
    }

    .zt-pd-buy__qty {
        gap: 10px;
    }

    .zt-pd-stepper {
        max-width: 140px;
    }

    /* служебный текст не мельче 12 px */
    .zt-pd-buy__label {
        font-size: 12px;
    }
}


/* =========================================================
   Лайтбокс и модальное «Купить в 1 клик». ТЗ §4.2 и §6.

   17.09.2026, аудит всплывающих окон:
   - оба окна кладутся в <body> и стоят выше нижнего меню (9990) —
     на телефоне боком меню перекрывало кнопку отправки и фото;
   - окно заявки — в оформлении «Заказать запчасти» шапки: те же
     поля, чекбокс, кнопка, крестик и экран «Заявка отправлена»;
   - на низком экране окно прокручивается, крестик остаётся на виду.
   ========================================================= */

.zt-pd-lightbox {
    position: fixed;
    z-index: 10050;
    display: grid;
    inset: 0;
    padding: 24px;
    place-items: center;
    background: rgba(16, 20, 26, .72);
}

.zt-pd-lightbox[hidden],
.zt-pd-modal[hidden] {
    display: none;
}

.zt-pd-lightbox__figure {
    position: relative;
    display: grid;
    max-width: min(1100px, 92vw);
    max-height: 88vh;
    place-items: center;
    padding: 16px;
    border-radius: 14px;
    background: #fff;
}

.zt-pd-lightbox__figure img {
    max-width: 100%;
    max-height: 78vh;
    object-fit: contain;
}

.zt-pd-lightbox__close {
    position: absolute;
    top: 10px;
    right: 10px;
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    border: 1px solid var(--pd-line, #e6e9ed);
    border-radius: 10px;
    color: #55606e;
    background: #fff;
    cursor: pointer;
}

.zt-pd-lightbox__nav {
    position: absolute;
    top: 50%;
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border: 1px solid var(--pd-line, #e6e9ed);
    border-radius: 10px;
    color: #55606e;
    background: rgba(255, 255, 255, .95);
    cursor: pointer;
    transform: translateY(-50%);
}

.zt-pd-lightbox__nav--prev { left: -22px; }
.zt-pd-lightbox__nav--next { right: -22px; }

.zt-pd-lightbox__nav svg,
.zt-pd-lightbox__close svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}

.zt-pd-lightbox__counter {
    position: absolute;
    bottom: -30px;
    left: 50%;
    color: #fff;
    font-size: 13px;
    transform: translateX(-50%);
}

/* --- окно заявки --- */

body.zt-pd-modal-open {
    overflow: hidden;
}

.zt-pd-modal {
    position: fixed;
    z-index: 10050;
    display: grid;
    inset: 0;
    padding: 16px;
    place-items: center;
}

.zt-pd-modal::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(20, 26, 32, .68);
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
    pointer-events: none;
}

.zt-pd-modal__dialog {
    position: relative;
    width: min(500px, 100%);
    max-height: calc(100vh - 32px);
    max-height: calc(100dvh - 32px);
    padding: 32px 32px 26px;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    border: 1px solid #d9dee5;
    border-radius: 12px;
    outline: none;
    color: #333a43;
    background: #fff;
    box-shadow: 0 24px 70px rgba(26, 32, 38, .24);
    scrollbar-width: thin;
    text-align: left;
}

/* Прилипает при прокрутке окна. Отступ sticky считается внутри padding
   окна, поэтому top отрицательный: 1 + 32 − 18 = 15 px от кромки. */
.zt-pd-modal__close {
    position: sticky;
    top: -18px;
    z-index: 2;
    display: inline-flex;
    float: right;
    width: 40px;
    height: 40px;
    margin: -18px -18px 0 12px;
    padding: 0;
    align-items: center;
    justify-content: center;
    border: 1px solid #d9dee5;
    border-radius: 50%;
    color: #3f4750;
    background: #fff;
    box-shadow: 0 4px 14px rgba(30, 37, 44, .10);
    cursor: pointer;
    transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.zt-pd-modal__close svg {
    display: block;
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    pointer-events: none;
}

.zt-pd-modal__close svg * {
    color: inherit;
}

.zt-pd-modal__close:hover {
    border-color: #262d34;
    color: #262d34;
    background: #ffb800;
    box-shadow: 0 7px 18px rgba(30, 37, 44, .14);
}

.zt-pd-modal__close:focus-visible {
    outline: 3px solid rgba(255, 196, 0, .30);
    outline-offset: 2px;
}

.zt-pd-modal__head {
    margin-bottom: 18px;
}

.zt-pd-modal__eyebrow {
    margin-bottom: 7px;
    color: #8a6200;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.zt-pd-modal .zt-pd-modal__title {
    margin: 0;
    padding: 0;
    color: #333a43;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: -.02em;
    text-transform: none;
}

.zt-pd-modal__lead {
    margin: 9px 0 0;
    color: #6f7882;
    font-size: 14px;
    line-height: 1.45;
}

/* Товар, на который заявка */
.zt-pd-modal__product {
    display: flex;
    margin: 0 0 16px;
    padding: 10px 12px;
    align-items: center;
    gap: 12px;
    border: 1px solid #e6e9ed;
    border-radius: 10px;
    background: #f7f8fa;
}

.zt-pd-modal__thumb {
    display: grid;
    flex: 0 0 56px;
    width: 56px;
    height: 56px;
    overflow: hidden;
    place-items: center;
    border-radius: 8px;
    background: #fff;
}

.zt-pd-modal__thumb[hidden] {
    display: none;
}

.zt-pd-modal__thumb img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.zt-pd-modal__product-text {
    display: grid;
    min-width: 0;
    gap: 3px;
}

.zt-pd-modal__product-name {
    display: -webkit-box;
    overflow: hidden;
    color: #253142;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.zt-pd-modal__product-meta {
    color: #8591a0;
    font-size: 12px;
    line-height: 1.35;
}

.zt-pd-modal__product-meta:empty {
    display: none;
}

/* Подписи полей — только для экранного диктора, как в CTA и «Заказать запчасти» */
.zt-pd-modal__sr {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    border: 0;
    white-space: nowrap;
}

.zt-pd-modal__field {
    margin: 0 0 12px;
}

.zt-pd-modal__field input {
    display: block;
    width: 100%;
    height: 52px;
    margin: 0;
    padding: 0 16px;
    border: 1px solid #d8dee5;
    border-radius: 8px;
    outline: none;
    color: #253142;
    background: #fff;
    box-shadow: none;
    font-family: inherit;
    font-size: 15px;
    line-height: normal;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.zt-pd-modal__field input::placeholder {
    color: #8591a0;
    opacity: 1;
}

.zt-pd-modal__field input:focus {
    border-color: #ffb800;
    box-shadow: 0 0 0 3px rgba(255, 184, 0, .16);
}

.zt-pd-modal__field input[aria-invalid="true"] {
    border-color: #d82f26;
    background-color: #fef6f5;
    box-shadow: 0 0 0 3px rgba(216, 47, 38, .10);
}

.zt-pd-modal__error {
    margin: 6px 0 0;
    color: #c63c30;
    font-size: 12px;
    line-height: 1.35;
}

.zt-pd-modal__error[hidden],
.zt-pd-modal__alert[hidden],
.zt-pd-modal__done[hidden],
.zt-pd-modal__form[hidden] {
    display: none;
}

.zt-pd-modal__error--consent {
    margin-left: 32px;
}

/* honeypot: скрыт от людей, но не от ботов — ТЗ §6 */
.zt-pd-modal__trap {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
}

.zt-pd-modal__consent {
    display: flex;
    margin: 4px 0 0;
    align-items: flex-start;
    gap: 10px;
    color: #3f4c5b;
    font-size: 13px;
    line-height: 1.4;
    cursor: pointer;
}

.zt-pd-modal__consent input {
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    margin: -2px 0 0;
    border: 1px solid #cbd3dc;
    border-radius: 4px;
    background: #fff no-repeat center / 12px 9px;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    transition: background-color .15s ease, border-color .15s ease;
}

.zt-pd-modal__consent input:checked {
    border-color: #ffb800;
    background-color: #ffb800;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 9'%3E%3Cpath d='M1 4.6 4.4 8 11 1.2' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.zt-pd-modal__consent input:focus-visible {
    outline: 3px solid rgba(255, 184, 0, .35);
    outline-offset: 2px;
}

.zt-pd-modal__consent input[aria-invalid="true"] {
    border-color: #d82f26;
    box-shadow: 0 0 0 3px rgba(216, 47, 38, .10);
}

/* reset.css задаёт кегль и цвет каждому элементу (* {…}), поэтому
   вложенные span и a сами не наследуют — отдаём им кегль подписи. */
.zt-pd-modal__consent span,
.zt-pd-modal__consent a,
.zt-pd-modal__alert a,
.zt-pd-modal__note span {
    font-size: inherit;
    line-height: inherit;
}

.zt-pd-modal__consent > span {
    color: inherit;
}

.zt-pd-modal__consent a {
    color: #253142;
    text-decoration: underline;
    text-decoration-color: rgba(37, 49, 66, .35);
    text-underline-offset: 3px;
}

.zt-pd-modal__consent a:hover {
    color: #9a7000;
    text-decoration-color: currentColor;
}

.zt-pd-modal__consent-short {
    display: none;
}

.zt-pd-modal__alert {
    margin: 14px 0 0;
    padding: 10px 14px;
    border: 1px solid #fecdca;
    border-radius: 8px;
    color: #b42318;
    background: #fef3f2;
    font-size: 13px;
    line-height: 1.4;
}

.zt-pd-modal__alert a {
    color: inherit;
    font-weight: 700;
    white-space: nowrap;
}

/* Кнопка — как у кнопок шапки и CTA: Tektur 15/700 капсом. Правило
   zt-redesign.css переводит все <button> на Manrope с весом двух id,
   поэтому здесь тот же приём и на класс больше. */
.zt-pd-modal .zt-pd-modal__dialog button.zt-pd-modal__submit:not(#zt_):not(#zt_) {
    font-family: var(--zt-font, "Tektur", "Inter", Arial, sans-serif) !important;
}

.zt-pd-modal__submit {
    display: flex;
    width: 100%;
    height: 54px;
    margin: 18px 0 0;
    padding: 0 20px;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 8px;
    color: #1d2228;
    background: #ffb800;
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: .16px;
    text-transform: uppercase;
    cursor: pointer;
    transition: background-color .18s ease, transform .18s ease, opacity .18s ease;
}

.zt-pd-modal__submit:hover {
    background: #ffc21f;
}

.zt-pd-modal__submit:active {
    transform: translateY(1px);
}

.zt-pd-modal__submit:focus-visible {
    outline: 3px solid rgba(255, 184, 0, .35);
    outline-offset: 2px;
}

.zt-pd-modal__submit:disabled {
    opacity: .7;
    cursor: progress;
}

.zt-pd-modal__note {
    margin: 12px 0 0;
    color: #8591a0;
    font-size: 12px;
    line-height: 1.4;
}

.zt-pd-modal__note span {
    color: #e5484d;
}

/* Экран «Заявка отправлена» — в оформлении окна-заглушки шапки */
.zt-pd-modal__done {
    padding: 6px 0 4px;
    text-align: center;
}

.zt-pd-modal__done-icon {
    display: flex;
    width: 66px;
    height: 66px;
    margin: 0 auto 18px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #333a43;
    background: #fff5d6;
}

.zt-pd-modal__done-icon svg {
    width: 32px;
    height: 32px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.zt-pd-modal__done-icon svg * {
    color: inherit;
}

.zt-pd-modal__done .zt-pd-modal__title:focus {
    outline: none;
}

.zt-pd-modal__done .zt-pd-modal__lead {
    max-width: 360px;
    margin: 10px auto 0;
    color: #6b7480;
    font-size: 16px;
    line-height: 1.55;
}

.zt-pd-modal__done .zt-pd-modal__submit {
    width: auto;
    min-width: 180px;
    margin: 24px auto 0;
}

@media (max-width: 620px) {
    .zt-pd-modal {
        padding: 12px;
    }

    .zt-pd-modal__dialog {
        max-height: calc(100vh - 24px);
        max-height: calc(100dvh - 24px);
        padding: 24px 18px 20px;
    }

    .zt-pd-modal__close {
        top: -13px;
        margin: -13px -9px 0 10px;
    }

    .zt-pd-modal .zt-pd-modal__title {
        font-size: 24px;
    }

    .zt-pd-modal__lead {
        margin-top: 8px;
        font-size: 13px;
    }

    .zt-pd-modal__field input {
        height: 50px;
        font-size: 16px;
    }

    .zt-pd-modal__submit {
        height: 52px;
    }
}

@media (max-width: 599px) {
    .zt-pd-modal__consent-full {
        display: none;
    }

    .zt-pd-modal__consent-short {
        display: inline;
    }
}

@media (max-width: 560px) {
    .zt-pd-lightbox__nav--prev { left: 4px; }
    .zt-pd-lightbox__nav--next { right: 4px; }
}

/* Сенсорные экраны шире 620 px (планшет, телефон боком): кегль полей
   не меньше 16 px, иначе iPhone и iPad увеличивают страницу при фокусе. */
@media (pointer: coarse) {
    .zt-pd-modal__field input {
        font-size: 16px;
    }
}

/* Низкий экран: телефон боком, маленький ноутбук */
@media (max-height: 560px) {
    .zt-pd-modal__dialog {
        padding-top: 20px;
    }

    .zt-pd-modal__head {
        margin-bottom: 12px;
    }

    .zt-pd-modal__head .zt-pd-modal__lead {
        display: none;
    }

    .zt-pd-lightbox {
        padding: 12px 60px;
    }

    .zt-pd-lightbox__figure {
        max-height: calc(100vh - 24px);
        max-height: calc(100dvh - 24px);
        padding: 10px;
    }

    .zt-pd-lightbox__figure img {
        max-height: calc(100vh - 44px);
        max-height: calc(100dvh - 44px);
    }

    .zt-pd-lightbox__nav--prev { left: -52px; }
    .zt-pd-lightbox__nav--next { right: -52px; }

    .zt-pd-lightbox__counter {
        bottom: 14px;
        padding: 3px 10px;
        border-radius: 999px;
        color: #333a43;
        background: rgba(255, 255, 255, .92);
    }
}


/* ---------------------------------------------------------
   Блоки «С этим товаром покупают» и «Вы смотрели».

   Решение заказчика 01.09.2026: карточки в них — такие же, как
   на главной. §4.6 ТЗ запрещал переиспользовать стили принятого
   модуля, указание заказчика выше ТЗ. Сами правила карточки
   лежат в product-related-cards.css, сгенерированном из тех же
   четырёх источников, что и плитка каталога; принятый
   #ztSaleProducts не изменяется.
   --------------------------------------------------------- */

.zt-pd-related__track > .zt-product-card {
    width: auto !important;
    margin: 0 !important;
    /* ширину слайда задаёт сама лента (flex-basis по брейкпоинтам
       главной), поэтому здесь flex не сбрасывается */
}

.zt-pd-viewed__clear {
    padding: 0;
    border: 0;
    color: var(--pd-muted);
    background: transparent;
    font: 600 13px/1 var(--zt-font-btn, "Manrope", Arial, sans-serif);
    cursor: pointer;
}

.zt-pd-viewed__clear:hover {
    color: var(--pd-ink);
}

.zt-pd-viewed[hidden] {
    display: none;
}

/* --- стенд: прежняя карточка и старый блок рекомендаций скрыты,
       чтобы не мешать приёмке новой. На бою их заменяет template.php.

       ВАЖНО: прячем сами прежние модули по их собственным классам, а не
       обёртку `.content-area-catalog`. На бою новый модуль лежит внутри
       этой же обёртки — правило по обёртке скрыло бы и его (так и вышло
       после Релиза 24, карточки товара стали пустыми). Класс
       `.zt-product-detail` не совпадает с `.zt-product-detail-v2`:
       в CSS классы сравниваются целиком, а не по началу строки. --- */

.zt-page-content-area .zt-product-detail,
.zt-page-content-area .zt-product-related,
body .zt-product-related {
    display: none !important;
}

/* ---------------------------------------------------------
   09.10.2026 (SEO, R-нов: «Этот номер у других производителей»
   и «Замены», план 2.2). Новые блоки под карточкой, перед
   «С этим товаром покупают»: рамка и заголовок — как у «Описания
   и характеристик» (.zt-pd-card.zt-pd-panel), строки — как
   «Характеристики». Остальные блоки карточки не меняются.

   reset.css задаёт каждому элементу цвет, 16 px и line-height 1,
   поэтому кегль, цвет и интерлиньяж заданы на каждом элементе.
   --------------------------------------------------------- */

.zt-pd-alts__list {
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
}

.zt-pd-alts__row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto 150px;
    gap: 4px 24px;
    align-items: baseline;
    padding: 9px 0;
    font-size: 13px;
    line-height: 1.4;
}

.zt-pd-alts__row + .zt-pd-alts__row {
    border-top: 1px solid var(--pd-line-soft);
}

.zt-pd-alts__link {
    display: flex;
    min-width: 0;
    flex-wrap: wrap;
    gap: 2px 10px;
    align-items: baseline;
    color: var(--pd-ink);
    font-size: 13px;
    line-height: 1.4;
    text-decoration: none;
}

.zt-pd-alts__brand {
    color: var(--pd-ink);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
}

.zt-pd-alts__name {
    color: var(--pd-ink-soft);
    font-size: 13px;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.zt-pd-alts__number {
    color: var(--pd-muted);
    font-size: 13px;
    line-height: 1.4;
}

.zt-pd-alts__link:hover .zt-pd-alts__brand,
.zt-pd-alts__link:hover .zt-pd-alts__name,
.zt-pd-alts__link:focus-visible .zt-pd-alts__brand,
.zt-pd-alts__link:focus-visible .zt-pd-alts__name {
    color: var(--pd-yellow-hover);
}

.zt-pd-alts__price {
    color: var(--pd-ink);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
    text-align: right;
    white-space: nowrap;
}

.zt-pd-alts__price--request {
    color: var(--pd-muted);
    font-size: 13px;
    font-weight: 600;
}

.zt-pd-alts__stock {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    justify-self: end;
    color: var(--pd-muted);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
    white-space: nowrap;
}

.zt-pd-alts__stock i {
    width: 8px;
    height: 8px;
    flex: 0 0 8px;
    border-radius: 50%;
    color: inherit;             /* reset.css красит и <i> — точка берёт цвет строки */
    background: currentColor;
}

.zt-pd-alts__stock--in {
    color: var(--pd-green);
}

/* Телефон: название — первой строкой во всю ширину, цена и наличие — второй */
@media (max-width: 560px) {
    .zt-pd-alts__row {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 6px 16px;
        padding: 10px 0;
    }

    .zt-pd-alts__link {
        grid-column: 1 / -1;
    }

    .zt-pd-alts__price {
        text-align: left;
    }
}

/* End */


/* Start:/local/templates/zipteh/assets/styles/product-related-cards.css?179386987563253*/
/* =========================================================
   Карточки блока «С этим товаром покупают» и «Вы смотрели»
   в карточке товара. Сгенерировано тем же скриптом из тех же
   четырёх источников, что и плитка каталога, — правила карточки
   главной один в один. Руками не редактировать.
   ========================================================= */

/* ---- из sale-products.css — 74 правил ---- */

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card {
    min-width: 0;
    height: auto;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    color: #1e2428;
    background: #fff;
    border: 1px solid #e3e5e5;
    border-radius: 8px;
    box-shadow: none;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card:hover {
    border-color: #d6d8d8;
    box-shadow: 0 10px 26px rgba(33, 39, 43, .07);
    transform: translateY(-3px);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__media {
    position: relative;
    padding: 12px 12px 0;
    background: #fff;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__badge {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
    min-height: 22px;
    padding: 0 8px;
    display: inline-flex;
    align-items: center;
    color: #fff;
    background: #ffb600;
    border-radius: 8px;
    font: 800 9px/1 var(--zt-font, Arial, Helvetica, sans-serif);
    letter-spacing: .01em;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card--new .zt-product-card__badge {
    color: #256d40;
    background: #dff5e6;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card--hit .zt-product-card__badge {
    color: #8a6200;
    background: #ffeab1;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image {
    width: 100%;
    aspect-ratio: 1.18 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: inherit;
    background: #fff;
    text-decoration: none;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    transition: transform .28s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card:hover .zt-product-card__image img {
    transform: scale(1.035);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__placeholder {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    color: #929aa1;
    background: linear-gradient(135deg, #fbfbfb, #f1f2f1);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__placeholder svg {
    width: 52px;
    height: 52px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__body {
    min-height: 218px;
    padding: 9px 13px 13px;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article {
    margin-bottom: 5px;
    overflow: hidden;
    color: #252a2e;
    /* П-5: вес 700 вместо 800. Заодно снят Arial из шортката —
       последнее место, где артикул рисовался не шрифтом сайта. */
    font-family: inherit;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name {
    min-height: 34px;
    margin: 0 0 8px !important;
    font-family: var(--zt-font, 'Inter', Arial, Helvetica, sans-serif) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.38 !important;
    text-transform: none !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name a {
    display: -webkit-box;
    overflow: hidden;
    color: #3d454a !important;
    text-decoration: none !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock {
    margin-bottom: 11px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #46995f;
    font: 500 10px/1 var(--zt-font, Arial, Helvetica, sans-serif);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock span {
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    background: currentColor;
    border-radius: 50%;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock.is-order {
    color: #8a6200;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
    min-height: 37px;
    margin-top: auto;
    display: flex;
    align-items: flex-end;
    gap: 9px;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
    padding-bottom: 2px;
    color: #9ea3a6;
    font: 500 10px/1 var(--zt-font, Arial, Helvetica, sans-serif);
    text-decoration: line-through;
    white-space: nowrap;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
    color: #1c2226;
    font: 800 17px/1.05 var(--zt-font, Arial, Helvetica, sans-serif);
    white-space: nowrap;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price--request {
    font-size: 14px;
    white-space: normal;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__buttons {
    margin-top: 11px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 34px;
    gap: 8px;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    min-width: 0;
    min-height: 34px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #333a43 !important;
    /* N-209: тот же фирменный жёлтый, что у акцента
       «НАДЁЖНЫЙ ПАРТНЁР» в модуле «О компании». */
    background: var(--zt-products-yellow, #ffb800);
    border: 0;
    border-radius: 8px;
    font: 800 11px/1 var(--zt-font, Arial, Helvetica, sans-serif);
    text-align: center;
    text-decoration: none !important;
    cursor: pointer;
    transition: background-color .18s ease, color .18s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart:hover {
    background: var(--zt-products-yellow, #ffb800);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-success {
    display: none;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-loading {
    cursor: wait;
    opacity: .65;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-added {
    color: #fff !important;
    background: #3f9b60;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-added .zt-product-card__cart-label {
    display: none;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-added .zt-product-card__cart-success {
    display: inline;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-error {
    color: #fff !important;
    background: #bd4d45;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    color: #737a7e !important;
    background: #fff;
    border: 1px solid #dfe2e2;
    border-radius: 8px;
    text-decoration: none !important;
    transition: color .18s ease, border-color .18s ease, background-color .18s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more:hover {
    color: #333a43 !important;
    background: #f5f5f4;
    border-color: #cfd2d2;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@media (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__body {
            min-height: 210px;
            }
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__media {
    padding: 0 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image img {
    object-fit: cover !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__badge {
    top: 10px !important;
    left: 10px !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
    text-align: right;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image {
    position: relative;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__dots {
    position: absolute;
    right: 0;
    bottom: 5px;
    left: 0;
    z-index: 3;
    display: flex;
    justify-content: center;
    gap: 4px;
    pointer-events: none;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__dots i {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: rgba(21, 26, 30, .25);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__dots i.is-active {
    background: #ffb800;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    position: relative;
    overflow: hidden;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-icon {
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    transition: transform .3s cubic-bezier(.25, 1, .5, 1), opacity .2s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-icon svg {
    width: 18px;
    height: 18px;
    fill: none;
    /* Корзинка чёрная и до нажатия — #333a43 читался серым */
    stroke: #000;
    stroke-width: 2.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart:hover .zt-product-card__cart-icon {
    animation: zt-cart-hop .5s cubic-bezier(.25, 1, .5, 1);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-loading .zt-product-card__cart-icon,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-added .zt-product-card__cart-icon,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-error .zt-product-card__cart-icon {
    opacity: 0;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 4;
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    padding: 0;
    color: #6b747c;
    background: rgba(255, 255, 255, .92);
    border: 1px solid #e3e5e5;
    border-radius: 50%;
    cursor: pointer;
    transition: color .18s ease, background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: fill .18s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite:hover {
    color: #151a1e;
    border-color: #ffb800;
    transform: scale(1.06);
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active {
    color: #fff;
    background: #ffb800;
    border-color: #ffb800;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active svg {
    fill: currentColor;
}

@media (prefers-reduced-motion: reduce) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-blob,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-blob svg,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite {
            transition: none;
            }
}

@media (prefers-reduced-motion: reduce) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-qty,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__qty-confirm {
            transition: none;
            }
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__id-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__maker {
    flex: 0 1 auto;
    overflow: hidden;
    color: #8a939b;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-left: auto;
    color: #23a05a;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #2eb968;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail--order {
    color: #98a1a9;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail--order i {
    background: #b9c0c6;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase {
    display: flex;
    flex: 1 1 auto;
    align-items: stretch;
    gap: 6px;
    width: 100%;
    min-width: 0;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase .zt-product-card__stepper,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase .zt-product-card__cart {
    height: 42px !important;
    min-height: 42px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    align-self: center;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stepper {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    background: #fff;
    border: 1px solid #dfe3e7;
    border-radius: 8px;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__stepper {
    border-color: #ffb800;
    box-shadow: 0 0 0 1px #ffb800;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__step-btn {
    display: grid;
    place-items: center;
    width: 28px;
    height: 100%;
    min-height: 40px;
    padding: 0;
    color: #333a43;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    background: transparent;
    border: 0;
    cursor: pointer;
    transition: color .15s ease, background-color .15s ease;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__step-btn:hover {
    color: #111820;
    background: transparent;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__step-value {
    min-width: 24px;
    color: #1e2428;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase .zt-product-card__cart {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart {
    color: #1d9d54 !important;
    background: #fff !important;
    /* обводка один в один со степпером: рамка 1px + тень 1px */
    border: 1px solid #ffb800 !important;
    box-shadow: 0 0 0 1px #ffb800 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart:hover {
    background: #fff !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart:hover .zt-product-card__cart-icon {
    animation: none;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-label,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-icon {
    color: #1d9d54 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-svg-cart {
    /* N-140/N-141: корзинка в состоянии «N в корзине» — чёрная
       (была жёлтая по N-135, заказчик передумал) */
    stroke: #000 !important;
}

/* ---- из zt-redesign.css — 3 правил ---- */

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article-mobile {
    overflow-wrap: anywhere;
}

.zt-product-detail-v2 .zt-pd-related__track.zt-sale-products .zt-product-card__cart,
.zt-product-detail-v2 .zt-pd-related__track.zt-sale-products .zt-product-card__buttons .zt-product-card__cart {
    width: 100% !important;
    flex: 1 1 auto !important;
}

.zt-product-detail-v2 .zt-pd-related__track.zt-sale-products .zt-product-card__buttons {
    width: 100% !important;
    display: flex !important;
}

/* ---- из zt-home-unify.css — 42 правил ---- */

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name a {
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    color: var(--zt-ink) !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name a,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card * {
    font-family: var(--zt-font, 'Inter', Arial, sans-serif) !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    background-color: var(--zt-yellow, #FFB800) !important;
    color: #1A1A1A !important;
    border-radius: var(--zt-radius-btn) !important;
    font-weight: 700 !important;
    border-color: var(--zt-yellow, #FFB800) !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart:hover {
    background-color: var(--zt-yellow-hover, #E8A600) !important;
    color: #1A1A1A !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card {
    border-radius: var(--zt-radius-card) !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    min-height: var(--zt-btn-h-sm) !important;
    height: auto !important;
    padding: 0 var(--zt-btn-pad-sm) !important;
    font-size: var(--zt-btn-fs-sm) !important;
    font-weight: var(--zt-btn-weight) !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    border-radius: var(--zt-radius-btn, 8px) !important;
    border: 1px solid var(--zt-yellow, #FFB800) !important;
    background-color: var(--zt-yellow, #FFB800) !important;
    color: #1A1A1A !important;
    -webkit-text-fill-color: #1A1A1A !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    /* N-027…N-035 (06.08.2026): квадрат со скруглением вместо круга —
       единый стиль стрелок каруселей по указанию заказчика */
    border-radius: 10px !important;
    border: 1px solid #E3E6E9 !important;
    background-color: #FFFFFF !important;
    color: #333A43 !important;
    box-shadow: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more:hover {
    border-color: var(--zt-yellow, #FFB800) !important;
}

@media (max-width: 1023px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
            min-height: 44px !important;
            }
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    color: #1A1A1A !important;
    -webkit-text-fill-color: #1A1A1A !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: contain;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article-mobile,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__brand,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__property-label,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__client-price-label,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__added,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image-label {
    font-size: 12px !important;
    line-height: 1.35 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
    /* N-097 → N-111: цена ещё заметнее */
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
    flex-direction: row !important;
    justify-content: flex-end !important;
    align-items: baseline !important;
    gap: 8px !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    text-decoration: line-through;
    white-space: nowrap;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices .zt-product-card__price--request,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price.zt-product-card__price--request {
    font-size: 13px !important;
    text-align: right;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card {
    display: flex !important;
    flex-direction: column !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name {
    min-height: 2.7em !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card [class*="__footer"],
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card [class*="__actions"] {
    margin-top: auto !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__badge {
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    padding: 3px 8px !important;
    border-radius: 6px !important;
}

@media (max-width: 1023px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more {
            width: 44px !important;
            height: 44px !important;
            min-width: 44px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name a,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card a[class*="__image"] {
            display: block !important;
            min-height: 44px !important;
            }
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card img[src*="c79c3kq4tn43rcwt3zz3w71z2xilkbe5"],
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card img[src*="4ziinx151auz9aqegxadaywaj6uq5f5l"] {
    content: url("/local/templates/zipteh/assets/images/product-placeholder.svg") !important;
    object-fit: contain !important;
    background: #F6F7F8 !important;
    width: 100% !important;
    height: 100% !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
    transition: background-color .18s ease, border-color .18s ease,
                color .18s ease, transform .12s ease !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart:active {
    transform: scale(.985) !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart:focus-visible {
    outline: 3px solid #1A1A1A !important;
    outline-offset: 3px !important;
    outline-style: solid !important;
}

.zt-product-detail-v2 .zt-pd-related__track .swiper-slide.zt-product-card {
    height: auto !important;
    align-self: stretch !important;
}

.zt-product-detail-v2 .zt-pd-related__track.zt-sale-products .zt-product-card__cart {
    font-size: 14px !important;
    font-weight: 600 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart .zt-product-card__cart-label,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart .zt-product-card__cart-success {
    font-size: inherit !important;
    font-weight: inherit !important;
    letter-spacing: inherit !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__badge {
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
}

@media (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price:not([class*="label"]) {
            font-size: 18px !important;
            }
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__id-row .zt-product-card__article,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article {
    margin: 0 !important;
    /* двойной селектор: инлайн модуля красит артикул в muted
       с той же специфичностью — перебиваем связкой id-row */
    color: #1e2428 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: .01em;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name:not(#zt_):not(#zt_),
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name:not(#zt_):not(#zt_) a {
    color: #6b747c !important;
    /* двойной :not(#zt_) — иначе шрифтовой слой заголовков
       (body h3:not(#zt_):not(#zt_) → Russo One) сильнее */
    font-family: var(--zt-font-badge, 'Manrope', Arial, sans-serif) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 0 8px !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
    grid-column: 1;
    order: -1;
    margin: 0 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price:not([class*="request"]) {
    grid-column: 1;
    margin-left: 0 !important;
    text-align: left !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: center;
    margin-left: 0 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__body {
    min-height: 0 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
    margin: 10px 0 0 !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__buttons {
    margin-top: 10px !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name:not(#zt_):not(#zt_) {
    display: -webkit-box !important;
    overflow: hidden !important;
    max-height: 32px;
    margin: 7px 0 0 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/* ---- из sale-products.php — 105 правил ---- */

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card a,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card button {
    font-family: inherit !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
    color: var(--zt-products-muted) !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-meta,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-brand {
    display: none;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name a,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
    color: var(--zt-products-text) !important;
}

@media (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card.swiper-slide {
            height: auto !important;
            min-height: 0 !important;
            align-self: stretch !important;
            display: flex !important;
            flex-direction: column !important;
            align-items: stretch !important;
            overflow: hidden !important;
            padding: 8px !important;
            border: 1px solid var(--zt-products-border) !important;
            border-radius: 12px !important;
            background: var(--zt-products-surface) !important;
            box-shadow: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__media {
            position: relative;
            width: 100% !important;
            min-width: 0 !important;
            height: 112px !important;
            min-height: 112px !important;
            margin: 0 !important;
            padding: 0 !important;
            overflow: hidden;
            border-radius: 8px !important;
            background: #f7f7f7 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image {
            width: 100% !important;
            height: 112px !important;
            min-height: 112px !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            padding: 8px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image img {
            width: 100% !important;
            height: 100% !important;
            max-width: 118px !important;
            max-height: 94px !important;
            object-fit: contain !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__badge {
            top: 6px !important;
            left: 6px !important;
            z-index: 3;
            min-height: 19px !important;
            padding: 0 6px !important;
            border-radius: 8px !important;
            font-size: 12px !important;
            font-weight: 700 !important;
            line-height: 19px !important;
            /* П-4: капс через CSS, в данных обычный регистр */
        text-transform: uppercase;
        letter-spacing: .05em;
        }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__body {
            min-width: 0;
            min-height: 0 !important;
            height: auto !important;
            /* Растягиваем тело на остаток высоты карточки: иначе внизу
               оставалась пустота, а кнопка «В корзину» висела в воздухе
               на разной высоте у соседних карточек. */
            flex: 1 1 auto !important;
            display: flex !important;
            flex-direction: column !important;
            padding: 8px 1px 0 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-meta {
            width: 100%;
            min-width: 0;
            margin: 0 0 3px !important;
            display: block !important;
            overflow: hidden;
            color: var(--zt-products-muted) !important;
            font-size: 12px !important;
            font-weight: 500 !important;
            line-height: 1.2 !important;
            text-overflow: ellipsis;
            white-space: nowrap;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article-mobile {
            display: block;
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name {
            /* Ровно две строки, а не «до двух»: в em, чтобы высота
               не разъезжалась при смене кегля. Иначе однострочное
               название делало карточку короче, и цена у соседей
               вставала на разной высоте (разброс 81 px на 390). */
            min-height: 2.6em !important;
            height: 2.6em !important;
            margin: 0 0 2px !important;
            overflow: hidden;
            font-size: 12px !important;
            font-weight: 600 !important;
            line-height: 1.3 !important;
            display: -webkit-box !important;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__name a {
            font-size: inherit !important;
            font-weight: inherit !important;
            line-height: inherit !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-brand {
            min-width: 0;
            margin: 0 0 2px !important;
            display: block !important;
            overflow: hidden;
            color: var(--zt-products-muted) !important;
            font-size: 12px !important;
            font-weight: 500 !important;
            line-height: 1.2 !important;
            text-overflow: ellipsis;
            white-space: nowrap;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock {
            min-width: 0;
            margin: 0 0 2px !important;
            overflow: hidden;
            font-size: 12px !important;
            line-height: 1.2 !important;
            text-overflow: ellipsis;
            white-space: nowrap;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stock > span {
            width: 5px !important;
            height: 5px !important;
            margin-right: 4px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
            min-height: 0 !important;
            margin-top: -1px !important;
            margin-bottom: 4px !important;
            display: flex !important;
            flex-direction: column !important;
            justify-content: flex-start !important;
            gap: 1px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
            font-size: 12px !important;
            line-height: 1.1 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
            font-size: 16px !important;
            font-weight: 700 !important;
            line-height: 1.1 !important;
            white-space: nowrap;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price--request {
            font-size: 12px !important;
            white-space: normal;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__buttons {
            display: grid !important;
            /* Одна колонка: вторая была под кнопку-стрелку, которую
               запрещает ТЗ §8.7 и которая удалена из разметки. */
            grid-template-columns: minmax(0, 1fr) !important;
            gap: 5px !important;
            /* Прижимаем к нижнему краю карточки — ТЗ, критерий 14 */
            margin: auto 0 0 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more {
            min-height: 44px !important;
            height: 44px !important;
            border-radius: 8px !important;
            box-shadow: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
            min-width: 0;
            padding: 0 6px !important;
            overflow: hidden;
            color: var(--zt-products-text) !important;
            font-size: 12px !important;
            font-weight: 600 !important;
            line-height: 30px !important;
            text-overflow: ellipsis;
            white-space: nowrap;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more {
            width: 44px !important;
            min-width: 44px !important;
            padding: 0 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__more svg {
            width: 14px !important;
            height: 14px !important;
            }
}

@media (max-width: 380px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card.swiper-slide {
            height: auto !important;
            min-height: 0 !important;
            padding: 7px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__media,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image {
            height: 102px !important;
            min-height: 102px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image img {
            max-height: 86px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__body {
            padding-top: 7px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
            font-size: 14px !important;
            }
}

@media (min-width: 1281px) and (max-width: 1599px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-icon {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
            justify-content: center !important;
            gap: 0 !important;
            text-align: center !important;
            }
}

@media (max-width: 1100px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-label {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-label,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-loading .zt-product-card__cart-label,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart.is-error .zt-product-card__cart-label {
            display: inline !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-icon {
            display: grid !important;
            opacity: 1 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
            justify-content: center !important;
            gap: 5px !important;
            text-align: center !important;
            }
}

@media (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__image img {
            display: block !important;
            margin: auto !important;
            object-position: center center !important;
            transform: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite {
            top: 6px !important;
            }
}

@media (min-width: 381px) and (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-meta,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-brand {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__id-row {
            display: flex !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__article {
            display: block !important;
            min-width: 0;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
            display: grid !important;
            grid-template-columns: minmax(0, 1fr) auto !important;
            grid-template-rows: auto auto !important;
            align-items: end !important;
            gap: 1px 6px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
            grid-column: 2;
            grid-row: 1;
            justify-self: end;
            padding-bottom: 0 !important;
            text-align: right;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
            grid-column: 2;
            grid-row: 2;
            justify-self: end;
            text-align: right;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            grid-column: 1;
            grid-row: 1 / 3;
            align-self: end;
            justify-self: start;
            margin: 0 !important;
            text-align: left;
            }
}

@media (max-width: 380px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__badge {
            min-height: 16px !important;
            padding: 0 4px !important;
            border-radius: 6px !important;
            font-size: 10px !important;
            line-height: 16px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__id-row,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__maker,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-brand {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
            display: grid !important;
            grid-template-columns: auto minmax(0, 1fr) !important;
            grid-template-rows: auto auto !important;
            align-items: end !important;
            gap: 1px 5px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
            grid-column: 1;
            grid-row: 1;
            justify-self: start;
            padding-bottom: 0 !important;
            text-align: left;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
            grid-column: 1;
            grid-row: 2;
            justify-self: start;
            text-align: left;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            grid-column: 2;
            grid-row: 1 / 3;
            align-self: end;
            justify-self: end;
            margin: 0 !important;
            text-align: right;
            }
}

@media (min-width: 681px) and (max-width: 800px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card {
            position: relative;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            position: absolute !important;
            top: 37px !important;
            left: 10px !important;
            z-index: 4;
            margin: 0 !important;
            }
}

@media (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card {
            position: relative;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            position: absolute !important;
            top: 38px !important;
            left: 14px !important;
            z-index: 4;
            grid-column: auto !important;
            grid-row: auto !important;
            margin: 0 !important;
            text-align: left !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite {
            top: 6px !important;
            right: 6px !important;
            width: 19px !important;
            height: 19px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite svg {
            width: 14px !important;
            height: 14px !important;
            }
}

@media (max-width: 380px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            top: 34px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite:hover,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active {
            width: 16px !important;
            height: 16px !important;
            color: #6b747c !important;
            background: transparent !important;
            border: 0 !important;
            border-radius: 0 !important;
            box-shadow: none !important;
            transform: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active {
            color: var(--zt-products-yellow) !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite svg {
            width: 16px !important;
            height: 16px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
            display: none !important;
            }
}

@media (min-width: 681px) and (max-width: 800px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card.swiper-slide {
            min-height: 355px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
            display: grid !important;
            grid-template-columns: minmax(0, 1fr) auto !important;
            grid-template-rows: auto auto !important;
            align-items: end !important;
            gap: 3px 6px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
            grid-column: 1;
            grid-row: 1;
            justify-self: start;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
            grid-column: 1 / 3;
            grid-row: 2;
            justify-self: start;
            text-align: left;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            position: static !important;
            grid-column: 2;
            grid-row: 1;
            justify-self: end;
            align-self: end;
            margin: 0 !important;
            text-align: right !important;
            }
}

@media (min-width: 381px) and (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card.swiper-slide {
            min-height: 272px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price {
            justify-self: end !important;
            text-align: right !important;
            }
}

@media (max-width: 380px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card.swiper-slide {
            min-height: 260px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            position: absolute !important;
            top: 113px !important;
            right: 8px !important;
            left: auto !important;
            display: flex !important;
            justify-content: flex-end;
            text-align: right !important;
            }
}

@media (min-width: 681px) and (max-width: 800px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase {
            gap: 4px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__stepper {
            width: 66px !important;
            flex: 0 0 66px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__step-btn {
            width: 22px !important;
            flex: 0 0 22px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__step-value {
            min-width: 20px !important;
            font-size: 13px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
            gap: 4px !important;
            padding-right: 4px !important;
            padding-left: 4px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-label {
            white-space: nowrap !important;
            }
}

@media (min-width: 381px) and (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite:hover,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active {
            color: #6b747c !important;
            background: transparent !important;
            border: 0 !important;
            border-radius: 0 !important;
            box-shadow: none !important;
            transform: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active {
            color: var(--zt-products-yellow) !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite svg {
            width: 19px !important;
            height: 19px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__old-price {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
            margin-top: auto !important;
            margin-bottom: 6px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__buttons {
            margin-top: 0 !important;
            }
}

@media (max-width: 380px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__avail {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-brand {
            display: block !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices {
            margin-top: auto !important;
            margin-bottom: 6px !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__buttons {
            margin-top: 0 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-label {
            width: 16px;
            display: inline-flex !important;
            align-items: center;
            justify-content: center;
            overflow: visible;
            font-size: 0 !important;
            line-height: 1;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-label::after {
            content: "→";
            color: currentColor;
            font-size: 18px;
            font-weight: 800;
            line-height: 1;
            }
}

@media (max-width: 680px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active:hover {
            color: var(--zt-products-yellow) !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active svg,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active svg path {
            color: var(--zt-products-yellow) !important;
            fill: currentColor !important;
            stroke: currentColor !important;
            }
}

@media (max-width: 380px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__mobile-brand {
            display: none !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart {
            gap: 2px !important;
            padding-right: 10px !important;
            padding-left: 10px !important;
            }
}

@media (min-width: 681px) and (max-width: 1100px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart {
            align-items: center !important;
            flex-wrap: nowrap !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-icon,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-label {
            flex: 0 0 auto !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__purchase.is-in-basket .zt-product-card__cart-label {
            display: inline-flex !important;
            align-items: center !important;
            line-height: 1 !important;
            white-space: nowrap !important;
            }
}

@media (min-width: 760px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active:hover {
            color: var(--zt-products-yellow) !important;
            background: #fff !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active {
            border-color: #e3e5e5 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active:hover {
            border-color: var(--zt-products-yellow) !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active svg,
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite.is-active svg path {
            color: var(--zt-products-yellow) !important;
            fill: currentColor !important;
            stroke: currentColor !important;
            }
}

@media (min-width: 1600px) {
    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite {
            display: grid !important;
            place-items: center !important;
            padding: 0 !important;
            }

    .zt-product-detail-v2 .zt-pd-related__track .zt-product-card__favorite svg {
            display: block !important;
            margin: 0 !important;
            transform: none !important;
            }
}
/* ---------------------------------------------------------
   Токены карточки — своей копией, а не в расчёте на соседей.

   Правила, перенесённые генератором, ссылаются на двенадцать
   переменных. На главной их задаёт inline-<style> модуля
   `sale-products.php` (`#ztSaleProducts { --zt-products-*: … }`)
   и файлы `zt-redesign.css` / `zt-home-unify.css`. Ни того,
   ни другого нет ни на `/catalog/`, ни в карточке товара —
   на бою `zt-redesign.css` и `zt-home-unify.css` вообще
   отдают 404 (проверено 01.09.2026). Селектор самих токенов
   не содержит `zt-product-card`, поэтому генератор его
   отбрасывает и переменные до этих файлов не доезжали:
   объявления с `var()` без запасного значения браузер
   отбрасывает молча.

   Значения сняты замером с принятого модуля на главной,
   поэтому плитка и блоки карточки товара выглядят так же
   и не зависят от порядка выкладки других позиций.
   --------------------------------------------------------- */

.zt-product-detail-v2 .zt-pd-related__track {
    --zt-products-yellow: #ffb800;
    --zt-products-text: #333a43;
    --zt-products-muted: #929aa1;
    --zt-products-border: #d9dee5;
    --zt-products-surface: #ffffff;
    --zt-ink: #333a43;
    --zt-radius-card: 12px;
    --zt-radius-btn: 8px;
    --zt-btn-h-sm: 40px;
    --zt-btn-pad-sm: 16px;
    --zt-btn-fs-sm: 13px;
    --zt-btn-weight: 700;
}


/* ---------------------------------------------------------
   Товары без цены — последним слоем.

   У принятого модуля уже есть свой вариант `--request`
   (`font-size: 13px !important`, специфичность 0-4-0), поэтому
   переопределение стоит здесь, ниже всех перенесённых правил,
   и повторяет ту же специфичность.

   По решению заказчика 01.09.2026 строка «Уточняйте цену»
   в раскладке карточек набирается кеглем и гарнитурой кнопки
   «В корзину»: 14 px / 600 / Manrope. Модификатор вешает
   catalog-view.js только там, где data-price пустой или нулевой.
   --------------------------------------------------------- */

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices .zt-product-card__price--request,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__price.zt-product-card__price--request {
    font-family: var(--zt-font-btn, "Manrope", "Inter", system-ui, Arial, sans-serif) !important;
    font-size: 14px !important;
    /* N-507: заказчик просил жирнее — 700 вместо 600 */
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    align-self: center !important;
    /* N-509: у принятого модуля строка выровнена вправо
       (`text-align: right`), в карточке нужна по левому краю. */
    text-align: left !important;
}

/* N-507: «Уточняйте цену» и статус наличия должны стоять на одной линии.
   Раньше строка цены была выше статуса на 5,5 px, потому что у неё
   собственная высота строки. Центруем обе части ряда, но только там,
   где цены нет: у товаров с ценой прежняя раскладка не трогается. */
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices:has(.zt-product-card__price--request) {
    /* Сетка модуля рассчитана на короткую цифру и на длинной подписи
       переносила статус на вторую строку (замер: две строки 26,9 и 10,1 px).
       Для случая без цены переводим ряд во flex — обе части остаются
       на одной линии и ужимаются по месту. */
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices:has(.zt-product-card__price--request) .zt-product-card__price--request {
    min-width: 0;
    flex: 1 1 auto;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices:has(.zt-product-card__price--request) .zt-product-card__avail {
    flex: 0 0 auto;
    white-space: nowrap;
}

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__prices:has(.zt-product-card__price--request) .zt-product-card__avail {
    align-self: center !important;
}


/* Кнопка «В корзину»: часть легаси-CSS приходит с боевого домена и
   перекрашивает/переразмеряет её по имени тега, из-за чего подпись
   уезжала на 13 px / 700 / Tektur вместо 14 / 600 / Manrope с главной.
   Закрепляем значения главной — на них же равняется «Цена по запросу». */

.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart,
.zt-product-detail-v2 .zt-pd-related__track .zt-product-card__cart-label {
    font-family: var(--zt-font-btn, "Manrope", "Inter", system-ui, Arial, sans-serif) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

/* End */


/* Start:/local/templates/zipteh/components/bitrix/catalog.section/.default/style.min.css?17938698751447*/
.catalog-section{width:100%;min-width:0;}.catalog-section .bx-section-desc{margin:0 0 18px;padding:16px 18px;border:1px solid #e3e6ea;border-radius:10px;color:#656d78;background:#fafbfc;font-size:13px;line-height:1.6;}.catalog-section .bx-section-desc-post{margin:0;}.catalog-section .cards{width:100%;min-width:0;}.catalog-section .cards + .cards{margin-top:18px !important;}.zip-catalog-empty{display:flex;min-height:240px;align-items:center;justify-content:center;flex-direction:column;gap:8px;padding:30px;border:1px dashed #d8dce2;border-radius:13px;color:#858c96;background:#fafbfc;text-align:center;}.zip-catalog-empty strong{color:#303640;font-size:18px;}[data-use^="show-more-"]{display:flex !important;min-height:46px;align-items:center;justify-content:center;margin:22px auto !important;padding:0 24px;border:1px solid #ffbd00 !important;border-radius:8px !important;color:#242a32 !important;background:#fff8dc !important;font-size:13px;font-weight:750;cursor:pointer;}.zip-basket-popup{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:center;gap:16px;min-width:320px;padding:14px 4px;}.zip-basket-popup img{display:block;width:100px;height:86px;object-fit:contain;border-radius:8px;background:#f5f6f8;}.zip-basket-popup strong{color:#20252d;font-size:14px;line-height:1.4;}@media (max-width:620px){.zip-basket-popup{min-width:0;grid-template-columns:74px minmax(0,1fr);}.zip-basket-popup img{width:74px;height:68px;}}
/* End */


/* Start:/local/templates/zipteh/components/bitrix/catalog.item/.default/style.min.css?179386987522621*/
:root{--zip-yellow:#ffbd00;--zip-yellow-hover:#eca900;--zip-orange:#ed9800;--zip-dark:#171a20;--zip-text:#20242b;--zip-muted:#7c8490;--zip-border:#e1e5ea;--zip-border-hover:#d2d7de;--zip-surface:#ffffff;--zip-bg:#f6f7f9;--zip-success:#239849;--zip-success-bg:#edf8f0;--zip-order:#d98100;--zip-order-bg:#fff7e4;--zip-list-sticky-top:0px;--zip-list-columns:94px 82px 112px minmax(210px,1fr) 116px 260px;--zip-list-gap:12px}.catalog-section,.catalog-section .cards,.catalog-section .cards .items,.catalog-section .cards .items>.item,.catalog-section .cards .items>.item>*{box-sizing:border-box}.catalog-section .zip-product-card__technical,.catalog-section .product-item-info-container.product-item-hidden{display:none !important}.catalog-section .cards{margin:0 0 24px !important}.catalog-section .cards .items>.item>.brand,.catalog-section .cards .items>.item>.articul,.catalog-section .cards .items>.item>.title,.catalog-section .cards .items>.item>.items-header-photo,.catalog-section .cards .items>.item>.items-header-quantity,.catalog-section .cards .items>.item>.cost-cart,.catalog-section .cards .items>.item>.zip-product-card__meta{float:none !important;position:static;width:auto;height:auto;min-height:0;margin:0;padding:0;border:0;background:transparent;box-shadow:none;text-align:left}.zip-product-card__media-link{position:relative;display:block;width:100%;height:100%;color:inherit;text-decoration:none}.zip-product-card__image,.zip-product-card__slider{position:absolute !important;inset:18px !important;display:block;width:auto !important;height:auto !important;background-position:center !important;background-repeat:no-repeat !important;background-size:contain !important}.zip-product-card__slider .product-item-image-slide{position:absolute;inset:0;display:none;width:100%;height:100%;background-position:center;background-repeat:no-repeat;background-size:contain}.zip-product-card__slider .product-item-image-slide.active{display:block}.zip-product-card__slider-dots{position:absolute;right:12px;bottom:10px;left:12px;z-index:16;display:flex;justify-content:center;gap:5px}.zip-product-card__slider-dots .product-item-image-slider-control{width:6px;height:6px;border-radius:50%;background:#b7bdc5}.zip-product-card__slider-dots .product-item-image-slider-control.active{background:var(--zip-yellow)}.zip-product-card__status{position:absolute;top:13px;left:13px;z-index:20;display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:5px 9px;border:1px solid transparent;border-radius:8px;font-size:11px;font-weight:700;line-height:1;white-space:nowrap}.zip-product-card__status-icon{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.zip-product-card__status.is-available{color:var(--zip-success);border-color:#cee9d5;background:var(--zip-success-bg)}.zip-product-card__status.is-order{color:var(--zip-order);border-color:#f1d797;background:var(--zip-order-bg)}.zip-product-card__discount{position:absolute;top:13px;right:13px;z-index:20;padding:5px 8px;border-radius:6px;color:#fff;background:#d9363e;font-size:11px;font-weight:800}.zip-product-card__prices{display:flex;min-width:0;flex-direction:column;justify-content:center}.zip-product-card__old-price{min-height:13px;color:#a2a7af;font-size:11px;line-height:1.1;text-decoration:line-through;white-space:nowrap}.zip-product-card__price{color:var(--zip-dark) !important;font-size:21px !important;font-weight:800 !important;line-height:1.15 !important;white-space:nowrap}.zip-product-card__availability-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px;margin-right:8px}.zip-product-card__availability-icon svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.zip-product-card__availability-icon.is-available{color:var(--zip-success)}.zip-product-card__availability-icon.is-order{color:var(--zip-order)}.zip-product-card__amount{display:inline-flex;align-items:center;height:38px;overflow:hidden;border:1px solid var(--zip-border);border-radius:7px;background:#fff}.zip-product-card__amount-button{width:30px;height:36px;padding:0;border:0;background:#f3f4f6;color:var(--zip-dark);font-size:18px;line-height:36px;cursor:pointer}.zip-product-card__amount-input{width:38px !important;max-width:38px !important;height:36px !important;padding:0 !important;border:0 !important;background:#fff !important;text-align:center !important;font-size:13px !important}.zip-product-card__actions{flex:0 0 auto;margin:0 !important;padding:0 !important}.zip-product-card__action-button{display:inline-flex !important;align-items:center;justify-content:space-between;gap:12px;width:100% !important;min-width:0;min-height:48px;margin:0 !important;padding:7px 8px 7px 16px !important;border-radius:7px !important;font-family:inherit;font-size:13px !important;font-weight:700 !important;line-height:1 !important;white-space:nowrap;text-decoration:none !important;cursor:pointer;box-shadow:none !important;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.zip-product-card__action-button:hover{transform:translateY(-1px)}.zip-product-card__action-main{display:inline-flex;align-items:center;min-width:0;gap:9px}.zip-product-card__action-label{overflow:hidden;text-overflow:ellipsis}.zip-product-card__action-icon,.zip-product-card__action-arrow,.zip-product-card__cart-icon{display:block;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.zip-product-card__action-icon{width:20px;height:20px}.zip-product-card__action-arrow{width:18px;height:18px}.zip-product-card__request-button{border:1px solid var(--zip-orange) !important;background:#fff !important;color:#c97700 !important}.zip-product-card__request-button:hover{border-color:#d58200 !important;background:#fff9ee !important;color:#aa6500 !important}.zip-product-card__cart-button{border:1px solid var(--zip-yellow) !important;background:var(--zip-yellow) !important;color:#fff !important}.zip-product-card__cart-button:hover{border-color:var(--zip-yellow-hover) !important;background:var(--zip-yellow-hover) !important;color:#fff !important}.zip-product-card__cart-icon-box{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;border-radius:5px;background:#fff;color:var(--zip-yellow-hover)}.zip-product-card__cart-icon{width:20px;height:20px}.catalog-section .cards.view-cards .items-header{display:none !important}.catalog-section .cards.view-cards .items{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:16px}.catalog-section .cards.view-cards .items>.item{position:relative;display:flex !important;flex-direction:column;width:100% !important;min-width:0;min-height:100%;padding:16px !important;overflow:hidden;border:1px solid var(--zip-border) !important;border-radius:13px;background:var(--zip-surface) !important;box-shadow:0 5px 18px rgba(23,27,34,.04);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.catalog-section .cards.view-cards .items>.item:hover{border-color:rgba(255,189,0,.95) !important;box-shadow:0 14px 34px rgba(23,27,34,.085);transform:translateY(-2px)}.catalog-section .cards.view-cards .items>.item>.zip-product-card__media{position:relative !important;display:block !important;width:100% !important;aspect-ratio:1.52 / 1;margin:0 0 18px !important;overflow:hidden;border-radius:9px;background:linear-gradient(145deg,#fbfcfd,#f2f4f6) !important}.catalog-section .cards.view-cards .items>.item>.zip-product-card__meta{display:flex !important;align-items:center;justify-content:space-between;gap:14px;width:100% !important;margin:0 0 12px !important}.catalog-section .cards.view-cards .zip-product-card__brand,.catalog-section .cards.view-cards .zip-product-card__article{min-width:0;color:var(--zip-muted) !important;font-size:12px !important;font-weight:500 !important;line-height:1.3 !important}.catalog-section .cards.view-cards .zip-product-card__brand{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-section .cards.view-cards .zip-product-card__article{flex:0 0 auto;white-space:nowrap}.zip-product-card__article-prefix{margin-right:3px}.catalog-section .cards.view-cards .items>.item>.zip-product-card__title{display:block !important;width:100% !important;min-height:47px;margin:0 0 14px !important;overflow:hidden}.catalog-section .cards.view-cards .zip-product-card__title a,.catalog-section .cards.view-cards .zip-product-card__title>span{display:-webkit-box;overflow:hidden;color:var(--zip-text) !important;font-size:16px !important;font-weight:800 !important;line-height:1.42 !important;text-decoration:none !important;-webkit-box-orient:vertical;-webkit-line-clamp:2}.catalog-section .cards.view-cards .items>.item>.zip-product-card__quantity{display:flex !important;align-items:center;width:100% !important;margin:auto 0 14px !important;color:var(--zip-muted) !important;font-size:14px !important}.catalog-section .cards.view-cards .items>.item>.zip-product-card__quantity.is-available{color:var(--zip-success) !important}.catalog-section .cards.view-cards .items>.item>.zip-product-card__quantity.is-order{color:var(--zip-order) !important}.catalog-section .cards.view-cards .items>.item>.zip-product-card__buy{display:grid !important;grid-template-columns:minmax(84px,1fr) minmax(166px,194px);align-items:center;width:100% !important;gap:12px;padding-top:14px !important;border-top:1px solid var(--zip-border) !important}.catalog-section .cards.view-cards .zip-product-card__amount{display:none !important}.catalog-section .cards.view-lines,.catalog-section .cards.view-lines [data-entity="items-row"],.catalog-section .cards.view-lines .items{overflow:visible !important}.catalog-section .cards.view-lines .items-header,.catalog-section .cards.view-lines .items>.item{display:grid !important;grid-template-columns:var(--zip-list-columns);grid-template-areas:"photo brand article title quantity price";gap:var(--zip-list-gap)}.catalog-section .cards.view-lines .items-header{position:sticky !important;top:var(--zip-list-sticky-top) !important;z-index:100;align-items:center;min-height:48px;margin:0 0 10px !important;padding:11px 14px !important;border:1px solid var(--zip-border) !important;border-radius:11px;background:rgba(255,255,255,.985) !important;color:var(--zip-muted) !important;font-size:11px !important;font-weight:700 !important;line-height:1.2 !important;text-transform:none;letter-spacing:0;box-shadow:0 8px 22px rgba(23,27,34,.07);backdrop-filter:blur(10px)}.catalog-section .cards.view-lines:not(:first-of-type) .items-header{display:none !important}.catalog-section .cards.view-lines .items-header .items-header-photo,.catalog-section .cards.view-lines .items-header .photo{grid-area:photo}.catalog-section .cards.view-lines .items-header .brand{grid-area:brand}.catalog-section .cards.view-lines .items-header .articul{grid-area:article}.catalog-section .cards.view-lines .items-header .title{grid-area:title}.catalog-section .cards.view-lines .items-header .items-header-quantity{grid-area:quantity}.catalog-section .cards.view-lines .items-header .cost-cart{grid-area:price;display:grid !important;grid-template-columns:88px 160px;align-items:center;justify-content:end;gap:12px}.catalog-section .cards.view-lines .items-header .cost-cart::after{content:"Действие";text-align:center}.catalog-section .cards.view-lines .items{display:flex !important;flex-direction:column;gap:10px}.catalog-section .cards.view-lines .items>.item{align-items:center;width:100% !important;min-width:0;min-height:108px;padding:10px 14px !important;border:1px solid var(--zip-border) !important;border-radius:12px;background:#fff !important;box-shadow:0 2px 7px rgba(23,27,34,.025);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.catalog-section .cards.view-lines .items>.item:hover{border-color:var(--zip-border-hover) !important;background:#fffefa !important;box-shadow:0 8px 22px rgba(23,27,34,.055)}.catalog-section .cards.view-lines .items>.item>.zip-product-card__media{grid-area:photo;position:relative !important;display:block !important;width:94px !important;height:86px !important;overflow:hidden;border-radius:9px;background:var(--zip-bg) !important}.catalog-section .cards.view-lines .zip-product-card__media .zip-product-card__image,.catalog-section .cards.view-lines .zip-product-card__media .zip-product-card__slider{inset:8px !important}.catalog-section .cards.view-lines .zip-product-card__status{top:5px;left:5px;min-height:24px;padding:4px 7px;border-radius:7px;font-size:9px}.catalog-section .cards.view-lines .zip-product-card__status-icon{width:14px;height:14px}.catalog-section .cards.view-lines .zip-product-card__discount,.catalog-section .cards.view-lines .zip-product-card__slider-dots{display:none !important}.catalog-section .cards.view-lines .items>.item>.zip-product-card__meta{display:contents !important}.catalog-section .cards.view-lines .zip-product-card__brand{grid-area:brand}.catalog-section .cards.view-lines .zip-product-card__article{grid-area:article}.catalog-section .cards.view-lines .zip-product-card__brand,.catalog-section .cards.view-lines .zip-product-card__article{display:block !important;width:auto !important;min-width:0;overflow:hidden;color:var(--zip-muted) !important;font-size:12px !important;font-weight:600 !important;line-height:1.3 !important;text-overflow:ellipsis}.catalog-section .cards.view-lines .zip-product-card__brand{white-space:nowrap}.catalog-section .cards.view-lines .zip-product-card__article{overflow-wrap:anywhere}.catalog-section .cards.view-lines .zip-product-card__article-prefix{display:none}.catalog-section .cards.view-lines .items>.item>.zip-product-card__title{grid-area:title;display:block !important;width:auto !important;min-width:0}.catalog-section .cards.view-lines .zip-product-card__title a,.catalog-section .cards.view-lines .zip-product-card__title>span{display:-webkit-box;overflow:hidden;color:var(--zip-text) !important;font-size:13px !important;font-weight:750 !important;line-height:1.35 !important;text-decoration:none !important;-webkit-box-orient:vertical;-webkit-line-clamp:2}.catalog-section .cards.view-lines .items>.item>.zip-product-card__quantity{grid-area:quantity;display:flex !important;align-items:center;width:auto !important;min-width:0;color:var(--zip-muted) !important;font-size:13px !important;white-space:nowrap}.catalog-section .cards.view-lines .items>.item>.zip-product-card__quantity.is-available{color:var(--zip-success) !important}.catalog-section .cards.view-lines .items>.item>.zip-product-card__quantity.is-order{color:var(--zip-order) !important}.catalog-section .cards.view-lines .zip-product-card__availability-icon{flex-basis:18px;width:18px;height:18px;margin-right:7px}.catalog-section .cards.view-lines .zip-product-card__availability-icon svg{width:18px;height:18px}.catalog-section .cards.view-lines .items>.item>.zip-product-card__buy{grid-area:price;display:grid !important;grid-template-columns:88px 160px;align-items:center;justify-content:end;width:auto !important;min-width:0;gap:12px}.catalog-section .cards.view-lines .zip-product-card__price{font-size:15px !important}.catalog-section .cards.view-lines .zip-product-card__old-price{font-size:10px}.catalog-section .cards.view-lines .zip-product-card__amount{display:none !important}.catalog-section .cards.view-lines .zip-product-card__action-button{min-height:42px;padding:6px 7px 6px 13px !important;gap:8px;font-size:11px !important}.catalog-section .cards.view-lines .zip-product-card__action-main{gap:7px}.catalog-section .cards.view-lines .zip-product-card__action-icon,.catalog-section .cards.view-lines .zip-product-card__action-arrow{width:17px;height:17px}.catalog-section .cards.view-lines .zip-product-card__cart-icon-box{flex-basis:30px;width:30px;height:30px}.catalog-section .cards.view-lines .zip-product-card__cart-icon{width:18px;height:18px}.sort-buttons .sort-line,.sort-buttons .sort-cards{width:42px;height:42px;padding:10px;border:1px solid var(--zip-border) !important;border-radius:8px;background:#fff !important}.sort-buttons .sort-line.active,.sort-buttons .sort-cards.active{border-color:var(--zip-yellow) !important;background:#fff8df !important}@media (max-width:1250px){.catalog-section .cards.view-cards .items{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1100px){:root{--zip-list-columns:86px 74px 102px minmax(185px,1fr) 108px 246px;--zip-list-gap:10px}.catalog-section .cards.view-cards .items>.item>.zip-product-card__buy{grid-template-columns:minmax(78px,1fr) minmax(154px,176px)}.catalog-section .cards.view-lines .items-header .cost-cart,.catalog-section .cards.view-lines .items>.item>.zip-product-card__buy{grid-template-columns:78px 156px;gap:10px}.catalog-section .cards.view-lines .items>.item>.zip-product-card__media{width:86px !important;height:80px !important}}@media (max-width:900px){.catalog-section .cards.view-cards .items{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-section .cards.view-lines .items-header{display:none !important}.catalog-section .cards.view-lines .items>.item{grid-template-columns:88px minmax(0,1fr) 182px;grid-template-areas:"photo title price" "photo brand price" "photo article quantity";gap:5px 12px;min-height:108px;padding:10px !important}.catalog-section .cards.view-lines .items>.item>.zip-product-card__media{width:80px !important;height:80px !important}.catalog-section .cards.view-lines .items>.item>.zip-product-card__buy{grid-template-columns:1fr;grid-template-rows:auto auto;gap:7px}.catalog-section .cards.view-lines .zip-product-card__actions,.catalog-section .cards.view-lines .zip-product-card__request-button{width:100%}.catalog-section .cards.view-lines .zip-product-card__price{font-size:14px !important}}@media (max-width:650px){.catalog-section .cards.view-cards .items,.catalog-section .cards.view-lines .items{display:grid !important;grid-template-columns:1fr;gap:12px}.catalog-section .cards.view-cards .items>.item{padding:14px !important}.catalog-section .cards.view-cards .items>.item>.zip-product-card__media{aspect-ratio:1.35 / 1}.catalog-section .cards.view-cards .items>.item>.zip-product-card__buy{grid-template-columns:minmax(76px,1fr) minmax(154px,180px);gap:10px}.catalog-section .cards.view-lines .items>.item{display:grid !important;grid-template-columns:76px minmax(0,1fr);grid-template-areas:"photo title" "photo brand" "photo article" "quantity quantity" "price price";gap:5px 10px;min-height:0;padding:12px !important}.catalog-section .cards.view-lines .items>.item>.zip-product-card__media{width:72px !important;height:72px !important}.catalog-section .cards.view-lines .items>.item>.zip-product-card__buy{grid-template-columns:minmax(74px,1fr) minmax(154px,172px);gap:10px;padding-top:10px !important;border-top:1px solid var(--zip-border) !important}}:root{--zip-list-columns:94px 82px 112px minmax(210px,1fr) 112px 232px}.catalog-section .zip-product-card__action-button{min-height:40px !important;padding:5px 6px 5px 12px !important;gap:8px !important;border-radius:6px !important;font-size:12px !important}.catalog-section .zip-product-card__request-button{justify-content:center !important;padding-right:12px !important}.catalog-section .zip-product-card__request-button .zip-product-card__action-main{justify-content:center;gap:7px !important}.catalog-section .zip-product-card__cart-icon-box{flex:0 0 28px !important;width:28px !important;height:28px !important}.catalog-section .zip-product-card__cart-icon,.catalog-section .zip-product-card__action-icon{width:17px !important;height:17px !important}.catalog-section .cards.view-cards .items>.item>.zip-product-card__buy{grid-template-columns:minmax(72px,1fr) minmax(124px,156px) !important;gap:8px !important;padding-top:12px !important}.catalog-section .cards.view-lines .items-header .cost-cart,.catalog-section .cards.view-lines .items>.item>.zip-product-card__buy{grid-template-columns:82px 138px !important;gap:8px !important}.catalog-section .cards.view-lines .zip-product-card__action-button{min-height:38px !important;padding:5px 6px 5px 10px !important;font-size:10.5px !important}.catalog-section .cards.view-lines .zip-product-card__cart-icon-box{flex-basis:27px !important;width:27px !important;height:27px !important}.catalog-section .zip-product-card__cart-button.is-loading{opacity:.68;pointer-events:none}.catalog-section .zip-product-card__cart-button.is-added{background:#239849 !important;border-color:#239849 !important}@media (max-width:1100px){:root{--zip-list-columns:86px 74px 102px minmax(185px,1fr) 104px 214px}.catalog-section .cards.view-cards .items>.item>.zip-product-card__buy{grid-template-columns:minmax(68px,1fr) minmax(118px,146px) !important}.catalog-section .cards.view-lines .items-header .cost-cart,.catalog-section .cards.view-lines .items>.item>.zip-product-card__buy{grid-template-columns:74px 132px !important}}@media (max-width:650px){.catalog-section .cards.view-cards .items>.item>.zip-product-card__buy,.catalog-section .cards.view-lines .items>.item>.zip-product-card__buy{grid-template-columns:minmax(68px,1fr) minmax(118px,146px) !important}}.catalog-section .cards.view-lines .zip-product-card__status{display:none !important}html body .catalog-section .cards .items>.item .zip-product-card__image.is-placeholder{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;background-position:center center !important;background-repeat:no-repeat !important;background-size:cover !important}.catalog-section .cards.view-cards .items>.item>.zip-product-card__media.is-placeholder{width:calc(100% + 32px) !important;max-width:none !important;aspect-ratio:260 / 170 !important;margin:-16px -16px 18px !important;border-radius:12px 12px 0 0 !important}.catalog-section .cards.view-cards .items>.item>.zip-product-card__media.is-placeholder .zip-product-card__media-link{width:100% !important;height:100% !important}.catalog-section .cards.view-cards .items>.item>.zip-product-card__media.is-placeholder .zip-product-card__image.is-placeholder{inset:0 !important;width:100% !important;height:100% !important;background-position:center center !important;background-repeat:no-repeat !important;background-size:cover !important}.catalog-section .cards.view-lines .items>.item>.zip-product-card__media.is-placeholder{width:auto !important;max-width:100% !important;margin:0 !important;border-radius:8px !important}
/* End */


/* Start:/local/templates/zipteh/components/bitrix/catalog.section/.default/themes/blue/style.min.css?1793869875706*/
.bx-blue .product-item-image-slider-progress-bar{background-color:#0083d1}.bx-blue .product-item-image-slider-control:hover{background-color:rgba(0,131,209,.8)}.bx-blue .product-item-image-slider-control.active,.bx-blue .product-item-image-slider-control:hover{background-color:#0083d1}.bx-blue .product-item-scu-item-text-block:hover,.bx-blue .product-item-scu-item-color-block:hover,.bx-blue .product-item-scu-item-text-container.selected .product-item-scu-item-text-block,.bx-blue .product-item-scu-item-color-container.selected .product-item-scu-item-color-block{outline-color:#006cc0}.bx-blue .product-item-amount-field:focus{border-color:#006cc0}.bx-blue .catalog-section-header{border-color:#006cc0}
/* End */
/* /local/templates/zipteh/components/bitrix/catalog/catalog/style.min.css?179386987510313 */
/* /local/templates/zipteh/components/bitrix/catalog.element/.default/style.css?179386987540 */
/* /local/templates/zipteh/assets/styles/product-detail.css?179386987539497 */
/* /local/templates/zipteh/assets/styles/product-detail-v2.css?179386987552268 */
/* /local/templates/zipteh/assets/styles/product-related-cards.css?179386987563253 */
/* /local/templates/zipteh/components/bitrix/catalog.section/.default/style.min.css?17938698751447 */
/* /local/templates/zipteh/components/bitrix/catalog.item/.default/style.min.css?179386987522621 */
/* /local/templates/zipteh/components/bitrix/catalog.section/.default/themes/blue/style.min.css?1793869875706 */
