

/* Start:/local/templates/mk-27-new/assets/mobile/storefront.css?179447976781485*/
/* MK-27 mobile presentation. Native Bitrix controllers remain authoritative. */
.mk-mobile-head,.mk-mobile-nav,.mk-city-hint,.mk-catalog-toolbar,.mk-filter-open,.mk-purchase-dock,.mk-account-overview,.mk-account-mobile-title,.personal-menu .mk-account-back{display:none}
.mk-sheet:not([open]){display:none}
.mk-sheet{box-sizing:border-box;width:min(560px,100%);max-height:85vh;max-height:85dvh;margin:auto auto 0;padding:24px 20px max(24px,env(safe-area-inset-bottom));border:0;border-radius:20px 20px 0 0;background:#fff;color:#202b33;overflow:auto;overscroll-behavior:contain;font:16px/1.5 'PT Sans',sans-serif}
.mk-sheet::backdrop{background:#18232bb3}
.mk-sheet-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.mk-sheet-heading h2{font-size:24px;margin:0}
.mk-sheet-heading button{width:44px;height:44px;border:0;background:#f1f3f5;border-radius:50%;font-size:28px;color:#475560}
.mk-city-options{display:grid;gap:8px}
.mk-city-options button{display:flex;justify-content:space-between;padding:14px 16px;min-height:52px;background:#fff;border:1px solid #cdd3d8;border-radius:12px;color:#202b33;text-align:left;font:inherit}
.mk-city-options button[aria-pressed=true]{border-color:#bd2923;background:#fff5f4;color:#a6231f;font-weight:700}
.mk-city-options button:disabled{opacity:.6}
.mk-cart-confirmation{display:none}
.mk-context-notice[hidden]{display:none}
.mk-context-notice{position:fixed;inset:auto 16px 16px;z-index:100001;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center;padding:16px;background:#fff;border:1px solid #bd2923;border-radius:12px;text-align:left;font-size:16px;max-height:50dvh;overflow:auto;box-shadow:0 4px 24px #162b3c18}
.mk-context-notice p{max-width:580px;margin:0}.mk-context-notice button{padding:12px 24px;min-height:44px;background:#bd2923;color:white;border:0;border-radius:8px}.mk-context-notice button:disabled{opacity:.65;cursor:wait}
@media(max-width:991px){
 .mk27-mobile-v2{--mk-accent:#bd2923;--mk-brand:#ee3831;--mk-ink:#202b33;--mk-muted:#475560;--mk-line:#dce1e5;--mk-surface:#f4f6f7;--mk-nav-min-height:calc(64px + env(safe-area-inset-bottom,0px));--mk-nav-height:var(--mk-nav-min-height);color:var(--mk-ink);padding-bottom:var(--mk-nav-height);font-size:16px;line-height:1.45}
 .mk27-mobile-v2 *{scroll-margin-bottom:calc(var(--mk-nav-height) + 80px)}
 .mk27-mobile-v2 { --mk-page-gutter: 16px; --mk-card-padding: 12px; --mk-section-gap: 24px; --mk-field-gap: 16px; }
 .mk27-mobile-v2 .container { padding-inline: var(--mk-page-gutter); }
 .mk27-mobile-v2 input:not([type=checkbox]):not([type=radio]),.mk27-mobile-v2 select,.mk27-mobile-v2 textarea{font-size:16px;max-width:100%;min-height:44px;border-radius:8px}
 .mk27-mobile-v2 button{font:inherit;cursor:pointer;touch-action:manipulation}
 .mk-mobile-head {
     display: flex;
     align-items: center;
     gap: 12px;
     padding: 6px 16px 2px;
     background: #fff;
 }
 .mk-mobile-brand {
     display: flex;
     align-items: center;
     min-height: 44px;
     flex: none;
 }
 .mk-mobile-brand img {
     box-sizing: border-box;
     width: 76px;
     height: 38px;
     padding: 3px 8px;
     border-radius: 8px;
     background: var(--mk-brand);
     object-fit: contain;
 }
 .mk-mobile-head .mk-mobile-context {
     display: grid;
     align-content: center;
     gap: 2px;
     min-width: 0;
     min-height: 44px;
     padding: 2px 0;
     border: 0;
     background: transparent;
     color: var(--mk-ink);
     text-align: left;
     line-height: 1.2;
 }
 .mk-mobile-city-name { font-size: 15px; font-weight: 700; }
 .mk-mobile-city-name > span { margin-inline-start: 4px; }
 .mk-mobile-customer-type { font-size: 13px; color: var(--mk-muted); }
 /* The standalone bonus page has no shared search form. */
 .mk-mobile-search { display: none; }
 .mk-bonus-page .mk-mobile-search {
     display: flex;
     width: 44px;
     height: 44px;
     margin-inline-start: auto;
     align-items: center;
     justify-content: center;
     color: var(--mk-muted);
     flex: none;
 }
 .mk-mobile-search svg,.mk-nav-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
 .mk-city-hint{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 16px;background:#f4f6f7;font-size:13px}.mk-city-hint button{padding:4px 8px;min-height:44px;border:0;background:transparent;color:var(--mk-accent);font-weight:700}
 :is(.mk27-mobile-v2,.mk27-mobile-v2 .mk-scroll-header)>header>.container>.logo,.mk27-mobile-v2 .header-main__actions,.mk27-mobile-v2 .main-menu-mobile-block,.mk27-mobile-v2 .main-menu-mobile-catalog{display:none!important}
 :is(.mk27-mobile-v2,.mk27-mobile-v2 .mk-scroll-header)>header{height:auto!important;min-height:0;margin:0;border:0;background:#fff}:is(.mk27-mobile-v2,.mk27-mobile-v2 .mk-scroll-header)>header>.container{display:block!important;height:auto!important;min-height:0;padding:0 16px}
 .mk27-mobile-v2 .header-main{width:100%;margin:0;padding:0;height:auto;min-height:0}.mk27-mobile-v2 .header-main__content.desktop,.mk27-mobile-v2 .header-main__nav-search,.mk27-mobile-v2 .header-search.desktop{display:block!important;width:100%;margin:0;padding:0}
 .mk27-mobile-v2 .header-main__content>.header-phones,.mk27-mobile-v2 .header-menu{display:none!important}
 .mk27-mobile-v2 header .header-main {
     background: #fff;
 }
 .mk27-mobile-v2 header .header-search.desktop {
     box-sizing: border-box;
     padding: 4px 16px 8px !important;
 }
 .mk27-mobile-v2 header .mk27-search--header .mk27-search__form {
     min-height: 46px;
     border: 1px solid var(--mk-line);
     border-radius: 12px;
     background: #f7f8fa;
     box-shadow: none;
 }
 .mk27-mobile-v2 header .mk27-search--header .mk27-search__form:focus-within {
     border-color: var(--mk-accent);
     box-shadow: 0 0 0 2px #bd29231a;
 }
 .mk27-mobile-v2 header .mk27-search--header .mk27-search__input {
     padding: 8px 12px;
     font-size: 16px;
 }
 .mk27-mobile-v2 header .mk27-search--header .mk27-search__submit {
     flex: 0 0 44px;
     min-height: 44px;
     border-radius: 0 11px 11px 0;
     background: var(--mk-accent);
     color: #fff;
 }
 .mk27-mobile-v2 .mk-mobile-head :focus-visible,
 .mk27-mobile-v2 header .mk27-search__submit:focus-visible {
     outline: 2px solid var(--mk-ink) !important;
     outline-offset: -2px;
 }
 .mk-mobile-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;bottom:0;left:0;right:0;z-index:900;padding:4px max(4px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(4px,env(safe-area-inset-left));min-height:var(--mk-nav-min-height);box-sizing:border-box;background:#fff;border-top:1px solid var(--mk-line);box-shadow:0 -3px 16px #162b3c08}
 .mk-mobile-nav>a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:60px;padding:4px;text-decoration:none;color:var(--mk-muted);font-size:13px;line-height:1.2;font-weight:700;border-radius:8px}
 .mk-mobile-nav>a[aria-current]{color:var(--mk-accent);background:#fff4f3}.mk-nav-icon{position:relative;display:flex}.mk-nav-count{position:absolute;left:17px;top:-7px;padding:1px 4px;min-width:18px;border:2px solid white;border-radius:12px;background:var(--mk-accent);color:#fff;font:700 11px/1.3 sans-serif;text-align:center}.mk-nav-count[hidden]{display:none}
 .mk27-mobile-v2 .mk-cart-confirmation {
     display: flex;
     position: fixed;
     left: max(var(--mk-page-gutter), env(safe-area-inset-left, 0px));
     bottom: calc(var(--mk-nav-height) + 10px);
     box-sizing: border-box;
     width: fit-content;
     max-width: calc(100% - max(var(--mk-page-gutter), env(safe-area-inset-left, 0px)) - max(64px, env(safe-area-inset-right, 0px)));
     z-index: 950;
     gap: 8px;
     align-items: center;
     padding: 10px 14px;
     border: 1px solid var(--mk-line);
     border-radius: 14px;
     background: #fff;
     color: var(--mk-ink);
     box-shadow: 0 4px 18px #202b3326;
     font-size: .9375rem;
     font-weight: 700;
     line-height: 1.3;
     overflow-wrap: anywhere;
     opacity: 0;
     pointer-events: none;
 }
 .mk27-mobile-v2 .mk-cart-confirmation[data-active] { opacity: 1; }
 .mk-cart-confirmation-icon {
     display: grid;
     flex: 0 0 24px;
     height: 24px;
     place-items: center;
     border-radius: 50%;
     background: #eaf6ee;
     color: #1d643b;
 }
 .mk27-mobile-v2:has(.mk-purchase-dock:not([hidden])) .mk-cart-confirmation {
     bottom: calc(var(--mk-nav-height) + var(--mk-dock-height, 88px) + 10px);
 }
 .mk27-mobile-v2:has(.cookie-notice:not([hidden])) .mk-cart-confirmation {
     top: calc(var(--mk-scroll-header-height, 0px) + 8px);
     bottom: auto;
 }
 .mk27-mobile-v2:is(.mk-keyboard-open, .mk-chat-open) .mk-cart-confirmation { opacity: 0; }
 @media (prefers-reduced-motion: no-preference) {
     .mk27-mobile-v2 .mk-cart-confirmation { transform: translateY(5px); transition: opacity 160ms ease, transform 160ms ease; }
     .mk27-mobile-v2 .mk-cart-confirmation[data-active] { transform: translateY(0); }
 }
 .mk-mobile-nav--checkout{grid-template-columns:1.5fr 1fr}.mk-mobile-nav--checkout>a{font-size:15px}
 .mk27-mobile-v2 .cookie-notice{bottom:calc(var(--mk-nav-height) + 8px)!important;max-height:calc(100dvh - var(--mk-nav-height) - 24px);overflow:auto;z-index:1000}
 .mk27-mobile-v2:has(dialog[open]) .mk-mobile-nav,.mk27-mobile-v2.mk-keyboard-open .mk-mobile-nav,.mk27-mobile-v2.mk-keyboard-open .mk-purchase-dock{visibility:hidden}
 .mk27-mobile-v2:has(.cookie-notice:not([hidden])) .mk-purchase-dock{display:none}
 .mk-purchase-dock:not([hidden]){display:flex;position:fixed;bottom:var(--mk-nav-height);left:0;right:0;gap:12px;align-items:center;justify-content:space-between;padding:10px 16px;background:white;border-top:1px solid var(--mk-line);z-index:890;box-shadow:0 -4px 16px #162b3c08}
 .mk-purchase-dock span{font-size:13px;color:var(--mk-muted);max-width:48%}.mk-purchase-dock button{min-height:48px;padding:10px 20px;background:var(--mk-accent);border:0;border-radius:10px;color:white;font-weight:700}
 .mk-catalog-toolbar{display:flex;gap:4px;justify-content:flex-end;margin:12px 0}.mk-catalog-toolbar button,.mk-filter-open{min-height:44px;padding:10px 16px;border:1px solid var(--mk-line);border-radius:8px;background:white;color:var(--mk-muted)}.mk-catalog-toolbar button[aria-pressed=true]{color:var(--mk-accent);border-color:var(--mk-accent);background:#fff5f4}
 .mk-filter-open{display:inline-flex;margin:8px 0;align-items:center;font-weight:700}
 .mk27-mobile-v2.mk-filter-enabled .smart-filter-col{display:none!important}.mk27-mobile-v2 .mk-filter-sheet .smart-filter-col{display:block!important;width:100%;max-width:none;padding:0}.mk-filter-sheet .bx-filter{display:block!important}
 .mk27-mobile-v2 .catalog-section .row{margin-left:-6px;margin-right:-6px}.mk27-mobile-v2 .catalog-section [class*=product-item-big-card]{padding:6px;max-width:50%;flex:0 0 50%}
 .mk27-mobile-v2 .catalog-section .catalog-item{height:100%;min-height:0;padding:8px;background:white;border:1px solid var(--mk-line);border-radius:12px;box-shadow:none;overflow:visible}
 .mk27-mobile-v2 .catalog-section .catalog-item .title{font-size:16px;line-height:1.35;height:auto;min-height:0;display:block;margin:8px 0;overflow-wrap:anywhere}
 .mk27-mobile-v2 .catalog-section .catalog-item .image{height:130px;width:100%;background-size:contain;background-position:center;background-repeat:no-repeat}
 .mk27-mobile-v2 .catalog-section .catalog-item .price{margin:8px 0;height:auto;min-height:0}.mk27-mobile-v2 .catalog-section .mk27-price__current{font-size:22px;line-height:1.3;font-weight:700}
 .mk27-mobile-v2 .catalog-section .product-item-amount-description-container{font-size:14px}
 .mk27-mobile-v2 .catalog-section .buttons-block{position:static;margin-top:8px;height:auto}.mk27-mobile-v2 .catalog-section .product-item-button-container a{display:flex;align-items:center;justify-content:center;min-height:48px;background:var(--mk-accent);color:white;border-radius:8px;font-size:16px}
 .mk27-mobile-v2 .product-item-amount-field-container{display:flex;align-items:center;justify-content:center;gap:0}.mk27-mobile-v2 .product-item-amount-field-container>span{width:44px;min-height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.mk27-mobile-v2 .product-item-amount-field{height:44px;min-width:40px;max-width:72px}
 .mk27-mobile-v2[data-mk-view=list] .catalog-section .catalog-item{display:grid;grid-template-columns:80px minmax(0,1fr);gap:4px 8px}
 .mk27-mobile-v2[data-mk-view=list] .catalog-section .catalog-item>a:first-of-type{display:contents}
 .mk27-mobile-v2[data-mk-view=list] .catalog-section .catalog-item .image{grid-column:1;grid-row:1/5;height:80px;align-self:start}
 .mk27-mobile-v2[data-mk-view=list] .catalog-section .catalog-item .title,.mk27-mobile-v2[data-mk-view=list] .catalog-section .catalog-item .price,.mk27-mobile-v2[data-mk-view=list] .catalog-section .catalog-item .buttons-block,.mk27-mobile-v2[data-mk-view=list] .catalog-section .catalog-item>div[id],.mk27-mobile-v2[data-mk-view=list] .catalog-section .catalog-item>[data-entity=quantity-block]{grid-column:2;min-width:0}
 .mk27-mobile-v2 .catalog-section .catalog-item .product-item-info-container:not(.mk27-price-unavailable){display:block}
 .mk-product-article{grid-column:2}
 .mk27-mobile-v2 .product-item-detail{overflow-wrap:anywhere}.mk27-mobile-v2 .product-item-detail-buy-button{min-height:48px;border-radius:10px;background:var(--mk-accent);color:white}
 .mk27-mobile-v2 .basket-items-list-item-container{background:#fff;border-bottom:1px solid var(--mk-line)}.mk27-mobile-v2 .basket-item-block-info{min-width:0}.mk27-mobile-v2 .basket-item-info-name{font-size:16px;line-height:1.35}.mk27-mobile-v2 .basket-coupon-block-total-price-current{font-weight:700;font-size:26px}.mk27-mobile-v2 .basket-btn-checkout{min-height:48px;border-radius:10px;background:var(--mk-accent);border-color:var(--mk-accent)}
 .mk27-mobile-v2 .bx-soa-section{border:1px solid var(--mk-line);border-radius:12px;margin-bottom:12px;overflow:hidden}.mk27-mobile-v2 .bx-soa-section-title{font-size:18px}.mk27-mobile-v2 .bx-soa-section-title-container{background:var(--mk-surface);padding:16px}.mk27-mobile-v2 .bx-soa-section-content{padding:16px}.mk27-mobile-v2 .bx-soa-cart-total{position:static!important;border-radius:12px}.mk27-mobile-v2 #bx-soa-order .btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;font-size:16px}
 .mk27-mobile-v2 .personal-menu{display:flex;gap:8px;flex-wrap:wrap;padding:0;margin-bottom:16px}.mk27-mobile-v2 .personal-menu a{display:flex;align-items:center;min-height:44px;padding:8px 12px;background:#f4f6f7;border-radius:8px}
 .mk27-mobile-v2 .sale-order-list-container{border:1px solid var(--mk-line);border-radius:12px;padding:12px;margin-bottom:16px}.mk27-mobile-v2 .sale-order-list-title{font-size:18px;line-height:1.4}.mk27-mobile-v2 .sale-order-list-button-container a{min-height:44px;display:inline-flex;align-items:center}
 .mk27-mobile-v2 footer{padding-bottom:24px}.mk27-mobile-v2 footer ul{list-style:none;padding-left:0}.mk27-mobile-v2 footer a{display:inline-flex;align-items:center;min-height:44px}.mk27-mobile-v2 h1{overflow-wrap:anywhere;font-size:26px;line-height:1.25}
 .mk27-mobile-v2 .mk-context-stale .buttons-block{pointer-events:none}
}

@media(max-width:991px){.mk27-mobile-v2 .legal-left-menu{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.mk27-mobile-v2 .legal-left-menu a{min-height:44px;padding:10px 12px;border:1px solid #dce1e5;border-radius:8px}.mk27-mobile-v2 .profile-row{flex-direction:column;gap:12px}}
@media(max-width:991px){.mk-catalog-toolbar{flex-wrap:wrap}.mk-catalog-toolbar select{flex:1;min-width:128px;padding:8px;border:1px solid var(--mk-line);background:#fff;color:var(--mk-ink)}.mk-bonus-page .bonus-mobile-menu-btn{bottom:calc(var(--mk-nav-height) + 16px)}}
.mk-filter-chips{display:none}
@media(max-width:991px){
 .mk-filter-chips{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.mk-filter-chips button{min-height:44px;padding:8px 12px;border:1px solid var(--mk-line);border-radius:20px;background:#fff5f4;color:var(--mk-accent);font-size:14px}
 .mk27-mobile-v2 .sale-order-list-inner-row{display:flex;flex-wrap:wrap;gap:8px;margin:0}.mk27-mobile-v2 .sale-order-list-inner-row>div{padding:8px;max-width:100%;flex-basis:100%}.mk27-mobile-v2 .sale-order-list-repeat-link,.mk27-mobile-v2 .sale-order-list-cancel-link,.mk27-mobile-v2 .sale-order-list-about-link{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid var(--mk-line);border-radius:8px;margin:0;padding:8px 12px;text-decoration:none}.mk27-mobile-v2 .sale-order-list-about-link{background:var(--mk-accent);color:white;border-color:var(--mk-accent)}
 .mk27-mobile-v2 .profile-input{width:100%;min-height:48px}.mk27-mobile-v2 .profile-grid{display:grid;grid-template-columns:1fr;gap:16px}.mk27-mobile-v2 .profile-save-btn{min-height:48px;width:100%}
}
@media(max-width:991px){
 .mk27-mobile-v2 .mk27-search-hero-block{display:none!important}
 .mk27-mobile-v2 .header-main,.mk27-mobile-v2 .header-main__content,.mk27-mobile-v2 .header-main__nav-search,.mk27-mobile-v2 .header-search,.mk27-mobile-v2 .mk27-search,.mk27-mobile-v2 .mk27-search__form{min-width:0!important;max-width:100%!important;width:100%!important}
 .mk27-mobile-v2 .mk27-search__input{min-width:0;width:100%;flex:1}
}
@media(max-width:991px){
 .mk27-mobile-v2:not(.mk-bonus-page) .mk-scroll-header>header,.mk27-mobile-v2:not(.mk-bonus-page)>header{position:relative!important;top:auto!important;left:auto!important;z-index:100}
 .mk27-mobile-v2:not(.mk-bonus-page) main{padding-top:12px!important;margin-top:0!important}
}
/* Native card dimensions must not leak into the mobile grid tracks. */
@media(max-width:991px){
 .mk27-mobile-v2 .section-block{display:grid;grid-template-columns:1fr;gap:8px;margin:16px 0}
 .mk27-mobile-v2 .section-block>a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;margin:0;padding:14px 16px;border:1px solid var(--mk-line);border-radius:12px;background:#fff;color:var(--mk-ink);font-size:16px;line-height:1.35}
 .mk27-mobile-v2 .section-block>a::after{content:'›';font-size:24px;color:var(--mk-muted);flex:none}
 .mk27-mobile-v2 .catalog-section .product-item-amount,.mk27-mobile-v2 .catalog-section .product-item-amount-field-container{width:100%!important;max-width:100%;margin:0!important;min-width:0}
 .mk27-mobile-v2 .catalog-section .product-item-amount-field{width:64px!important;flex:0 1 64px;padding:0;text-align:center}
 .mk27-mobile-v2[data-mk-view=list] .catalog-section .catalog-item>[data-entity=quantity-block],.mk27-mobile-v2[data-mk-view=list] .catalog-section .catalog-item>.buttons-block{grid-column:1/-1}
 .mk27-mobile-v2 .catalog-section .buttons-block .product-item-button-container{width:100%;max-width:100%;margin:0}
 .mk27-mobile-v2 .catalog-section .mk27-price__current{display:inline-block}
 .mk27-mobile-v2 .catalog-section .product-item-amount-description-container{display:inline-block;margin-left:6px}
}

@media(max-width:991px){.mk27-mobile-v2 #jivo_close_button{left:auto!important;right:12px!important;top:12px!important;width:44px!important;height:44px!important;z-index:2}.mk27-mobile-v2 #jivo_close_button>jdiv{margin:8px}}
@media(max-width:991px){
 .mk27-mobile-v2 .catalog-section .product-item-big-card>.row{margin:0}
 .mk27-mobile-v2 .catalog-section .product-item-big-card>.row>.col-md-12{padding:0}
 .mk27-mobile-v2 .catalog-section .price.mk27-price{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:4px 6px}
 .mk27-mobile-v2 .catalog-section .price .product-item-amount-description-container{margin:0}
 .mk27-mobile-v2 .catalog-section .price .mk27-price__old{flex-basis:100%}
}
@media (max-width: 991px) {
    .mk27-mobile-v2[data-mk-view="grid"] {
        --mk-catalog-columns: 2;
        --mk-catalog-gap: 4px;
    }

    .mk27-mobile-v2 .not-index-page > .container:has(.mk-catalog-page, .catalog-container .catalog-item),
    .mk27-mobile-v2 .catalog-container:is(.mk-catalog-page, :has(.catalog-section .catalog-item)) {
        max-width: none;
    }

    /* Dense listing pages own one gutter; remove the paired Bootstrap row/column gutters.
       Product detail and list view keep their existing page spacing. */
    .mk27-mobile-v2[data-mk-view="grid"] .not-index-page > .container:has(.mk-catalog-page .catalog-item, .mk27-search-page__products .item) {
        padding-inline: max(4px, env(safe-area-inset-left, 0px)) max(4px, env(safe-area-inset-right, 0px));
    }
    .mk27-mobile-v2[data-mk-view="grid"] .not-index-page:has(.mk-catalog-page .catalog-item, .mk27-search-page__products .item) > .container > .row:has(> .main-menu.desktop),
    .mk27-mobile-v2[data-mk-view="grid"] .not-index-page > .container > .row:has(> .main-col .mk-catalog-page .catalog-item, > .main-col .mk27-search-page__products .item) {
        margin-inline: 0;
    }
    .mk27-mobile-v2[data-mk-view="grid"] .not-index-page > .container > .row > .main-col:has(.mk-catalog-page .catalog-item, .mk27-search-page__products .item) {
        padding-inline: 0;
        min-width: 0;
    }

    /* Use the page gutter once. Keep the component's other rows, such as filters, intact. */
    .mk27-mobile-v2 .catalog-container:is(.mk-catalog-page, :has(.catalog-section .catalog-item)) {
        /* Override the legacy mobile gutter on .no-padding-container. */
        padding-inline: 0 !important;
    }

    .mk27-mobile-v2 .catalog-container > .row > .col-lg-9:has(.catalog-section .catalog-item),
    .mk27-mobile-v2 .catalog-section-col:has(.catalog-section .catalog-item) {
        padding-inline: 0;
    }

    .mk27-mobile-v2 .catalog-container:is(.mk-catalog-page, :has(.catalog-section .catalog-item)) > .row,
    .mk27-mobile-v2 .catalog-container .col-lg-9 > .row:has(> .catalog-section-col .catalog-item),
    .mk27-mobile-v2 .catalog-section > [data-entity="items-row"],
    .mk27-mobile-v2 .catalog-section-col:has(.catalog-section .catalog-item) > .lazy-load-block {
        margin-inline: 0;
    }

    /* Bitrix moves the same button into the grid after the first AJAX page. */
    .mk27-mobile-v2 .catalog-section > [data-use^="show-more-"],
    .mk27-mobile-v2 .catalog-section-col:has(.catalog-section .catalog-item) .lazy-load-block [data-use^="show-more-"] {
        width: 100%;
        left: auto;
    }

    .mk27-mobile-v2 .catalog-section > [data-entity="items-row"]:has(.catalog-item)
        + [data-entity="items-row"]:has(.catalog-item) {
        margin-block-start: var(--mk-catalog-gap, 8px);
    }

    .mk27-mobile-v2 .catalog-section .product-item-small-card:has(> .row > .product-item-big-card .catalog-item) {
        flex: 0 0 100%;
        max-width: 100%;
        padding-inline: 0;
    }

    .mk27-mobile-v2 .catalog-section .row:has(> .product-item-big-card .catalog-item) {
        display: grid;
        grid-template-columns: repeat(var(--mk-catalog-columns, 1), minmax(0, 1fr));
        gap: var(--mk-catalog-gap, 8px);
        margin-inline: 0;
    }

    .mk27-mobile-v2 .catalog-section .row:has(> .product-item-big-card .catalog-item)::before,
    .mk27-mobile-v2 .catalog-section .row:has(> .product-item-big-card .catalog-item)::after {
        content: none;
    }

    /* Stretch through the Bitrix wrappers to align the purchase controls across a row. */
    .mk27-mobile-v2 .catalog-section .product-item-big-card:has(.catalog-item),
    .mk27-mobile-v2 .catalog-section .product-item-big-card > .row:has(.catalog-item),
    .mk27-mobile-v2 .catalog-section .product-item-big-card > .row > .col-md-12:has(.catalog-item),
    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .product-item-container:has(> .catalog-item),
    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item {
        display: flex;
        flex-direction: column;
        min-width: 0;
        max-width: none;
        width: 100%;
    }

    .mk27-mobile-v2 .catalog-section .product-item-big-card:has(.catalog-item) {
        padding: 0;
    }

    .mk27-mobile-v2 .catalog-section .product-item-big-card .row:has(.catalog-item),
    .mk27-mobile-v2 .catalog-section .product-item-big-card .col-md-12:has(.catalog-item),
    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .product-item-container:has(> .catalog-item),
    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item {
        flex: 1 0 auto;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item {
        height: auto;
        gap: 0;
        padding: 6px;
        border-radius: 12px;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item > .mk27-product-badge-host {
        padding: 0;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item .image {
        height: auto;
        aspect-ratio: 1;
        max-height: 200px;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item .title {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
        overflow: hidden;
        min-block-size: 3.9em;
        margin: 4px 0;
        font-size: 0.9375rem;
        line-height: 1.3;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item .price {
        margin: 0;
        gap: 2px 5px;
        line-height: 1.2;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .mk27-price__current {
        min-width: 0;
        font-size: 1.125rem;
        line-height: 1.2;
        overflow-wrap: anywhere;
        white-space: normal;
        font-variant-numeric: tabular-nums;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .price .product-item-amount-description-container,
    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .mk27-price__old,
    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .wholesale-price-compare__amount {
        white-space: normal;
        overflow-wrap: anywhere;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .price .product-item-amount-description-container {
        color: var(--mk-muted);
        font-size: 0.75rem;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item .mk-product-article {
        margin: 0;
        font-size: 0.75rem;
        overflow-wrap: anywhere;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item .wholesale-price-compare--compact {
        margin: 0;
        padding: 6px;
        border-color: var(--mk-line);
        border-radius: 8px;
        background: var(--mk-surface);
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .wholesale-price-compare--active {
        border-color: var(--mk-accent);
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .wholesale-price-compare--compact .wholesale-price-compare__rows {
        gap: 4px;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .wholesale-price-compare--compact .wholesale-price-compare__row {
        gap: 1px;
        line-height: 1.3;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .wholesale-price-compare--compact .wholesale-price-compare__row + .wholesale-price-compare__row {
        padding-block-start: 4px;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .wholesale-price-compare--compact .wholesale-price-compare__meta {
        margin-block-start: 4px;
        gap: 2px;
    }

    @container wholesale-price (min-width: 8.75rem) {
        .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .wholesale-price-compare--compact .wholesale-price-compare__row {
            grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
            align-items: baseline;
            column-gap: 4px;
        }

        .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .wholesale-price-compare--compact .wholesale-price-compare__value {
            justify-content: flex-end;
            text-align: end;
        }
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item > [data-entity="quantity-block"] {
        margin: auto 0 0;
        padding: 0;
        border: 1px solid var(--mk-line);
        border-bottom: 0;
        border-radius: 8px 8px 0 0;
        background: var(--mk-surface);
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .product-item-amount {
        padding: 0;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .product-item-amount-field {
        flex: 1 1 40px;
        min-width: 0;
        max-width: none;
        border: 0;
        border-radius: 0;
        font-size: 16px;
        font-variant-numeric: tabular-nums;
        appearance: textfield;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .product-item-amount-field::-webkit-inner-spin-button,
    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .product-item-amount-field::-webkit-outer-spin-button {
        -webkit-appearance: none;
        margin: 0;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .product-item-amount-field-container > span {
        flex: 0 0 44px;
        width: 44px;
        min-height: 44px;
        border-radius: 6px;
        background: transparent;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .product-item-amount-field-container > span:active {
        background: var(--mk-line);
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .product-item-amount-field-container > :focus-visible {
        outline: 2px solid var(--mk-accent) !important;
        outline-offset: -2px;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item > [data-entity="quantity-block"]:not(.mk27-price-unavailable) + .buttons-block .product-item-button-container a {
        border-radius: 0 0 8px 8px;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item > .quantity {
        margin-top: 4px;
        font-size: 13px;
        color: var(--mk-muted);
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item .buttons-block {
        margin: 0;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .catalog-item:not(:has(> [data-entity="quantity-block"]:not(.mk27-price-unavailable))) > .buttons-block {
        margin-block-start: auto;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .catalog-section .product-item-button-container a {
        min-height: 44px;
        margin: 0;
        padding: 6px;
        border: 0 !important;
        background: var(--mk-accent) !important;
        font: inherit;
        font-size: 0.875rem;
        font-weight: 700;
        line-height: 1.2;
        text-transform: none;
        white-space: normal;
    }
}

@media (min-width: 600px) and (max-width: 767px) {
    .mk27-mobile-v2[data-mk-view="grid"] { --mk-catalog-columns: 3; }
}

@media (min-width: 768px) and (max-width: 991px) {
    .mk27-mobile-v2[data-mk-view="grid"] { --mk-catalog-columns: 4; }
}
@media (max-width: 991px) {
    .mk27-mobile-v2 .mk-catalog-page > .bx-breadcrumb {
        margin: 0;
    }

    .mk27-mobile-v2 .mk-catalog-page > .bx-breadcrumb > .bx-breadcrumb-item:not(.mk-catalog-parent),
    .mk27-mobile-v2 .mk-catalog-page .mk-catalog-parent > i {
        display: none;
    }

    .mk27-mobile-v2 .mk-catalog-page .mk-catalog-parent {
        display: block;
    }

    .mk27-mobile-v2 .mk-catalog-page .mk-catalog-parent > a {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        max-width: 100%;
        min-height: 44px;
        padding-inline: 4px;
    }

    .mk27-mobile-v2 .mk-catalog-page .mk-catalog-parent > a::before {
        content: '';
        flex: 0 0 8px;
        height: 8px;
        border: solid var(--mk-accent);
        border-width: 0 0 2px 2px;
        transform: rotate(45deg);
    }

    .mk27-mobile-v2 .mk-catalog-page .mk-catalog-parent a > span {
        color: var(--mk-accent);
        font-size: 0.875rem;
        font-weight: 700;
        overflow-wrap: anywhere;
    }

    .mk27-mobile-v2 .mk-catalog-page .main-section-title {
        width: 100%;
        margin: 0 0 8px;
        padding: 0;
        font-size: clamp(1.375rem, 5vw, 1.75rem);
        line-height: 1.2;
    }

    .mk27-mobile-v2 .mk-catalog-page .section-block {
        gap: 0;
        margin: 8px 0;
        border: 1px solid var(--mk-line);
        border-radius: 10px;
    }

    .mk27-mobile-v2 .mk-catalog-page .section-block > a {
        min-height: 44px;
        padding: 6px 12px;
        border: 0;
        border-radius: 0;
        background: transparent;
        font-size: 0.9375rem;
    }

    .mk27-mobile-v2 .mk-catalog-page .section-block > a + a {
        border-top: 1px solid var(--mk-line);
    }

    .mk27-mobile-v2 .mk-catalog-page .section-block > a::after {
        font-size: 18px;
        line-height: 1;
    }

    .mk27-mobile-v2 .mk-catalog-page .mk-catalog-toolbar {
        margin: 8px 0;
    }

    .mk27-mobile-v2 .mk-catalog-page .mk-catalog-toolbar :is(button, select) {
        margin: 0;
        padding: 6px 8px;
        font-size: 0.875rem;
    }

    .mk27-mobile-v2 .mk-catalog-page .mk-catalog-toolbar select {
        width: 0;
        min-width: 100px;
    }

    .mk27-mobile-v2 .mk-catalog-page .mk-filter-chips:empty {
        display: none;
    }

    .mk27-mobile-v2[data-mk-view="list"] .catalog-section .catalog-item :is(.title, .price, .mk-product-article, .buttons-block) {
        margin: 0;
    }

    .mk27-mobile-v2[data-mk-view="list"] .catalog-section .catalog-item .title {
        font-size: 0.9375rem;
        line-height: 1.3;
    }

    .mk27-mobile-v2[data-mk-view="list"] .catalog-section .catalog-item .product-item-button-container a {
        min-height: 44px;
    }

    .mk27-mobile-v2 .mk-catalog-page > .row > .col-xs-12:has(> .product) {
        padding-inline: 0;
    }

    .mk27-mobile-v2 .mk-catalog-page .product {
        margin-block-start: 4px;
    }

    .mk27-mobile-v2 .mk-catalog-page .main-emelent-block {
        max-width: none;
        padding-inline: 0 !important;
    }

    .mk27-mobile-v2 .mk-catalog-page .main-emelent-block > .row {
        margin-inline: 0;
    }

    .mk27-mobile-v2 .mk-catalog-page .product .info > .title {
        margin: 8px 0;
    }

    .mk27-mobile-v2 .mk-catalog-page .product .info .price {
        margin-block-end: 8px;
    }
}

@media (max-width: 767px) {
    .mk27-mobile-v2 .mk-catalog-page .main-emelent-block > .row > :is(.image-block, .info) {
        padding-inline: 0;
    }

    .mk27-mobile-v2 .mk-catalog-page .product .image-block :is(.product-photo, .product-photos, .photos) {
        padding: 0;
    }

    .mk27-mobile-v2 .mk-catalog-page .product .image-block :is(.product-photo, .photos) .image {
        height: clamp(176px, 54vw, 224px);
    }
}
/* Purchase screens share the same quiet surfaces and large native controls. */
@media(max-width:991px){
 .mk27-mobile-v2 .basket-item-amount-btn-minus,.mk27-mobile-v2 .basket-item-amount-btn-plus{width:44px;min-width:44px;height:44px;margin:0;touch-action:manipulation}
 .mk27-mobile-v2 .basket-item-actions-remove{width:44px;height:44px;top:4px;right:4px;touch-action:manipulation}
 .mk27-mobile-v2 .basket-item-amount-filed-block{width:64px;padding:0}
 .mk27-mobile-v2 .basket-item-amount-filed{width:64px;height:44px;padding:0;text-align:center;font-variant-numeric:tabular-nums}
 .mk27-mobile-v2 #bx-soa-order{margin:0;max-width:none;width:100%}
 .mk27-mobile-v2 #bx-soa-order>.bx-soa{padding:0;width:100%}
 .mk27-mobile-v2 #bx-soa-order .bx-soa-section{float:none;width:100%;max-width:none;padding:var(--mk-card-padding);margin:0 0 16px;border:1px solid var(--mk-line)!important;background:#fff;overflow:visible}
 .mk27-mobile-v2 #bx-soa-order .bx-soa-section-title-container{display:block!important;background:transparent;padding:0;margin:0 0 12px}
 .mk27-mobile-v2 #bx-soa-order .bx-soa-section-title{width:100%;max-width:none;padding:0;margin:0;font-size:20px;color:var(--mk-ink)}
 .mk27-mobile-v2 #bx-soa-order .bx-soa-section-title-count,.mk27-mobile-v2 #bx-soa-order .bx-soa-editstep,.mk27-mobile-v2 #bx-soa-order .block-title,.mk27-mobile-v2 #bx-soa-order .block-title-address,.mk27-mobile-v2 #bx-soa-order>.bx-soa>.selector{display:none!important}
 .mk27-mobile-v2 #bx-soa-order .bx-soa-section-content{padding:0;margin:0}
 .mk27-mobile-v2 #bx-soa-order .bx-soa-customer .form-group{float:none;width:100%!important;margin:0 0 16px}
 .mk27-mobile-v2 #bx-soa-order .form-control{width:100%;min-height:48px;padding:10px 12px;border:1px solid #89949d;border-radius:8px;line-height:1.4}
 .mk27-mobile-v2 #bx-soa-order .radio-inline{display:flex;align-items:center;min-height:48px;text-align:left;gap:10px;margin:0;padding:8px 0}
 .mk27-mobile-v2 #bx-soa-order .radio-inline input{position:static;flex:none;width:20px;height:20px;margin:0;accent-color:var(--mk-accent)}
 .mk27-mobile-v2 #bx-soa-paysystem,.mk27-mobile-v2 #bx-soa-order .bx-soa-basket{display:block!important}
 .mk27-mobile-v2 #bx-soa-order .bx-soa-item-title{width:auto!important;max-width:100%;min-width:0;overflow-wrap:anywhere}
 .mk27-mobile-v2 #bx-soa-total{padding:var(--mk-card-padding);border:1px solid var(--mk-line);border-radius:12px;background:var(--mk-surface);width:100%;max-width:none;margin:0 0 16px}
 .mk27-mobile-v2 #bx-soa-total .bx-soa-cart-total{margin:0;padding:0}
 .mk27-mobile-v2 .order-consent-item{align-items:flex-start;gap:12px;margin-bottom:16px}.mk27-mobile-v2 .order-consent-item label{font-size:14px;line-height:1.5}
 .mk27-mobile-v2 .order-consent-item input{flex:none;min-width:20px;width:20px;height:20px;accent-color:var(--mk-accent)}
 .mk27-mobile-v2 #bx-soa-orderSave{padding:16px 0;width:100%}
 .mk27-mobile-v2 #bx-soa-orderSave>.btn{width:100%;background:var(--mk-accent);color:#fff;border:0;border-radius:10px}
 .mk27-mobile-v2 .mk27-price,.mk27-mobile-v2 .basket-item-price-current-text,.mk27-mobile-v2 .bx-soa-cart-total{font-variant-numeric:tabular-nums}
}
@media(max-width:991px){
 /* Jivo renders its header above the sibling action layer. Keep its native close
    control above that header without intercepting clicks elsewhere in the chat. */
 .mk27-mobile-v2{min-width:0}
 .mk27-mobile-v2 #jcont{width:min(336px,calc(100% - 24px))!important;right:12px!important;left:auto!important}
 .mk27-mobile-v2 #jcont>jdiv{max-width:100%!important;box-sizing:border-box}
 .mk27-mobile-v2 #jcont>jdiv:not(#jivo_action){z-index:1!important}
 .mk27-mobile-v2 #jivo_action{position:absolute!important;inset:0 0 auto!important;width:100%!important;z-index:2147483647!important;pointer-events:none}
 .mk27-mobile-v2 #jivo_close_button{position:absolute!important;margin:0!important;pointer-events:auto}
}

@media(max-width:991px){
 html:has(body.mk27-mobile-v2 dialog[open]),body.mk27-mobile-v2:has(dialog[open]){overflow:hidden;overscroll-behavior:none}
 .mk27-mobile-v2 .mk-context-notice{bottom:calc(var(--mk-nav-height) + 12px)}
 .mk-mobile-nav>a[aria-current]::before{content:'';position:absolute;top:0;width:28px;height:3px;border-radius:3px;background:currentColor}
 .mk27-mobile-v2:has(dialog[open]) .mk-purchase-dock,.mk27-mobile-v2:has(dialog[open]) .mk27-pwa-card{visibility:hidden}
}

@media(max-width:991px){.mk27-mobile-v2:has(.mk-purchase-dock:not([hidden])){padding-bottom:calc(var(--mk-nav-height) + var(--mk-dock-height,88px))}}

/* In-flow sticky wrapper keeps the exact same header height while translating. */
@media(max-width:991px){
 .mk-scroll-header{position:sticky;top:0;z-index:901;background:#fff;transition:transform 170ms ease;padding-top:env(safe-area-inset-top,0px)}
 .mk-scroll-ready .mk-mobile-nav{transition:transform 170ms ease}
 .mk-bars-hidden .mk-scroll-header{transform:translateY(-100%);pointer-events:none}
 .mk-bars-hidden .mk-mobile-nav:not(.mk-mobile-nav--checkout){transform:translateY(calc(100% + 4px));pointer-events:none}
 .mk-scroll-ready .mk-scroll-header:has(:focus-visible),.mk-scroll-ready .mk-mobile-nav:has(:focus-visible){transform:none;pointer-events:auto;transition:none}
 html:has(body.mk-scroll-ready){scroll-padding-top:calc(var(--mk-scroll-header-height,0px) + 12px)}
 .mk-bars-hidden .mk-purchase-dock:not([hidden]){bottom:0;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}
}
@media(prefers-reduced-motion:reduce){.mk-scroll-header,.mk-scroll-ready .mk-mobile-nav{transition:none!important}}

/* Own compact launcher; Jivo retains its original chat, callbacks and session. */
.mk-mobile-utilities{display:none}
@media(max-width:991px){
 .mk-mobile-utilities{position:fixed;right:env(safe-area-inset-right,0px);bottom:calc(var(--mk-nav-height) + 16px);z-index:880;display:flex;flex-direction:column;align-items:flex-end;gap:10px;pointer-events:none}
 .mk-mobile-utilities button{pointer-events:auto;display:flex;align-items:center;justify-content:center;border:1px solid var(--mk-line);box-shadow:0 2px 10px #202b331a;min-width:44px;min-height:44px}
 .mk-mobile-utilities button[hidden]{display:none}
 .mk-mobile-utilities svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
 .mk-mobile-utilities .mk-back-top{width:44px;height:44px;margin-right:8px;border-radius:50%;background:#fff;color:var(--mk-muted)}
 .mk-mobile-utilities .mk-chat-tab{position:relative;width:48px;min-height:60px;gap:3px;flex-direction:column;border:0;border-radius:14px 0 0 14px;background:var(--mk-accent);color:white;font-size:12px;font-weight:700;padding:8px 6px}
 .mk-chat-status:empty{display:none}
 .mk-mobile-utilities button:focus-visible{outline:3px solid #202b33!important;outline-offset:2px}
 .mk-chat-status:not(:empty){position:absolute;right:56px;bottom:0;width:min(240px,calc(100vw - 80px));padding:12px;border:1px solid var(--mk-line);border-radius:10px;background:#fff;color:var(--mk-ink);font-size:14px;box-shadow:0 2px 10px #202b331a}
 .mk-chat-tab:disabled{opacity:.65}.mk-chat-unread:not([hidden]){position:absolute;top:5px;left:5px;width:9px;height:9px;background:#fff;border:2px solid var(--mk-accent);border-radius:50%}
 .mk-chat-custom:not(.mk-chat-open)>jdiv{display:none!important}
 .mk-chat-custom #jvLabelWrap{display:none!important}
 .mk27-mobile-v2.mk-chat-open #jcont{bottom:12px!important}
 .mk27-mobile-v2:has(.mk-purchase-dock:not([hidden])) .mk-mobile-utilities{bottom:calc(var(--mk-nav-height) + var(--mk-dock-height,88px) + 16px)}
 .mk27-mobile-v2:is(.mk-keyboard-open,.mk-chat-open) .mk-mobile-utilities,
 .mk27-mobile-v2:has(dialog[open],.cookie-notice:not([hidden])) .mk-mobile-utilities{visibility:hidden}
 .mk27-mobile-v2.mk-chat-open :is(.mk-mobile-nav,.mk-purchase-dock,.mk27-pwa-card){visibility:hidden}
}

/* Homepage rhythm: related content sits closer together than separate sections. */
@media (max-width: 991px) {
    .mk27-mobile-v2 .main-index-page .index-page {
        --mk-home-related-gap: 12px;
        --mk-home-section-gap: 24px;
    }

    .mk27-mobile-v2 .index-page .main-slider,
    .mk27-mobile-v2 .index-page .main-slider .owl-carousel,
    .mk27-mobile-v2 .index-page .main-slider .slider {
        min-height: 0;
    }

    .mk27-mobile-v2 .index-page .main-slider .slider {
        aspect-ratio: 44 / 15;
        border-radius: 12px;
    }

    .mk27-mobile-v2 .index-page .main-slider__image {
        object-fit: contain;
    }

    .mk27-mobile-v2 .index-page .mk27-main-store-link {
        margin-block: var(--mk-home-related-gap) 0;
        padding: 10px 14px;
    }

    .mk27-mobile-v2 .index-page :is(.main-new-products-head, .main-popular-products-head) {
        margin: var(--mk-home-section-gap) 0 var(--mk-home-related-gap);
        padding: 0;
        font-size: 18px;
        line-height: 1.25;
    }

    .mk27-mobile-v2 .index-page :is(.main-new-products, .main-popular-products) {
        display: block;
        width: 100%;
        max-width: none;
        padding-inline: 0;
    }

    .mk27-mobile-v2 .index-page :is(.main-new-products, .main-popular-products) > .row {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        margin: 0;
    }

    .mk27-mobile-v2 .index-page :is(.main-new-products, .main-popular-products) .product-block {
        display: flex;
        flex-direction: column;
        width: 100%;
        min-width: 0;
        padding: 10px;
        border-color: var(--mk-line);
        border-radius: 12px;
    }

    .mk27-mobile-v2 .index-page :is(.main-new-products, .main-popular-products) .product-image {
        width: 100%;
        height: auto;
        max-height: 160px;
        aspect-ratio: 1;
    }

    .mk27-mobile-v2 .index-page :is(.main-new-products, .main-popular-products) .product-name {
        flex: 1;
        margin-top: 8px;
    }

    .mk27-mobile-v2 .index-page :is(.main-new-products, .main-popular-products) .product-name a {
        height: auto;
        margin-top: 0;
        font-size: 15px;
        line-height: 1.35;
        overflow-wrap: anywhere;
    }

    .mk27-mobile-v2 .index-page :is(.main-new-products, .main-popular-products) .product-price {
        margin-top: 8px;
    }
}

@media (min-width: 576px) and (max-width: 991px) {
    .mk27-mobile-v2 .index-page :is(.main-new-products, .main-popular-products) > .row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (width < 360px) {
    .mk27-mobile-v2 { --mk-page-gutter: 12px; }
}

@media (max-width: 991px) {
    .mk27-mobile-v2 .cookie-notice-container {
        padding: 12px var(--mk-page-gutter);
    }
    .mk27-mobile-v2 .cookie-notice-content {
        flex-direction: column;
        align-items: stretch;
    }
    .mk27-mobile-v2 .cookie-notice-text { flex: auto; font-size: 14px; }
    .mk27-mobile-v2 .cookie-notice-buttons {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        flex: auto;
        width: 100%;
    }
    .mk27-mobile-v2 .cookie-notice button {
        min-height: 44px;
        padding: 8px;
        white-space: normal;
        line-height: 1.25;
    }
    .mk27-mobile-v2 .cookie-notice .cookie-accept-btn { grid-column: 1 / -1; }
    .mk27-mobile-v2 .cookie-notice-settings { flex-wrap: wrap; }

    .mk27-mobile-v2 .delivery-page > section > .container {
        max-width: none;
        padding-inline: 0;
    }
    .mk27-mobile-v2 .main-col > .page-banner {
        width: calc(100% + 2 * var(--mk-page-gutter));
        left: calc(-1 * var(--mk-page-gutter));
    }
    .mk27-mobile-v2 .delivery-page .rates-grid {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
        gap: 12px;
    }
    .mk27-mobile-v2 .delivery-page .advantages-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
        margin-block-start: 0;
    }
    .mk27-mobile-v2 .delivery-page .advantage-item {
        min-width: 0;
        padding: var(--mk-card-padding);
    }

    /* The page column owns the gutter; form groups share its content edge. */
    .mk27-mobile-v2 .not-index-page > .container:has(> .row > .main-col :is(.registration-container, .auth-container, .profile-form-wrapper, .profile-container)) {
        max-width: none;
    }
    .mk27-mobile-v2 .main-col > .registration-container,
    .mk27-mobile-v2 .registration-container :is(.register-form-container, .register-form),
    .mk27-mobile-v2 .main-col .auth-container,
    .mk27-mobile-v2 .main-col .profile-form-wrapper,
    .mk27-mobile-v2 .profile-form-wrapper .card-body,
    .mk27-mobile-v2 .main-col .profile-container {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .mk27-mobile-v2 .registration-container :is(.registration-tab-content, .register-form, .register-block),
    .mk27-mobile-v2 .main-col .auth-card,
    .mk27-mobile-v2 .profile-form-wrapper > .card,
    .mk27-mobile-v2 .main-col :is(.profile-container, .profile-card) {
        background: transparent;
        box-shadow: none;
        border: 0;
        border-radius: 0;
        overflow: visible;
    }

    .mk27-mobile-v2 .registration-container :is(.registration-header, .registration-tabs-container, .register-header),
    .mk27-mobile-v2 .main-col :is(.auth-header, .profile-header) {
        padding: 0;
        margin: 0 0 var(--mk-field-gap);
        text-align: start;
    }

    .mk27-mobile-v2 .registration-container .register-header { margin-block: 0 var(--mk-section-gap); }
    .mk27-mobile-v2 .registration-container .registration-tabs {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: none;
        box-shadow: none;
        border: 1px solid var(--mk-line);
        border-radius: 10px;
    }
    .mk27-mobile-v2 .registration-container .registration-tab-link {
        padding: 8px;
        min-height: 48px;
        font-size: 14px;
        line-height: 1.25;
    }
    .mk27-mobile-v2 .registration-container .registration-tab-link i { margin-block-end: 4px; font-size: 16px; }
    .mk27-mobile-v2 .registration-container .registration-tab-item.active { background: var(--mk-accent); }

    .mk27-mobile-v2 .registration-container .register-form > .container-fluid > .row,
    .mk27-mobile-v2 .profile-form-wrapper .profile-form > .row { margin-inline: 0; }

    .mk27-mobile-v2 .registration-container .register-form > .container-fluid > .row > :is(.register-column, .col-12, .col-md-12),
    .mk27-mobile-v2 .profile-form-wrapper .profile-form > .row > :is(.col-md-6, .col-12, .col-md-12) {
        flex: 0 0 100%;
        min-width: 0;
        max-width: 100%;
        padding-inline: 0;
    }

    .mk27-mobile-v2 .registration-container .register-form .register-column { margin: 0; }
    .mk27-mobile-v2 .registration-container .register-block {
        height: auto;
        padding: 0;
        margin: 0 0 var(--mk-section-gap);
    }
    .mk27-mobile-v2 .registration-container .register-block-title {
        padding-block-end: 8px;
        margin-block-end: 12px;
    }
    .mk27-mobile-v2 .registration-container .register-actions { margin-block-start: 0; }
    .mk27-mobile-v2 .registration-container .captcha-group { margin-block-start: 0; }

    .mk27-mobile-v2 .main-col :is(.auth-flex-container, .profile-cards) { gap: var(--mk-section-gap); }
    .mk27-mobile-v2 .main-col .auth-card {
        min-width: 0;
        flex: 1 1 100%;
        max-width: none;
        padding: 0;
        transform: none;
    }
    .mk27-mobile-v2 .main-col :is(.auth-input, .auth-button) { transition-property: border-color, background-color, box-shadow; }
    .mk27-mobile-v2 .main-col .auth-header::after { content: none; }
    .mk27-mobile-v2 .main-col .auth-benefits-card {
        flex: 1 1 100%;
        min-width: 0;
        max-width: none;
        padding: var(--mk-card-padding);
    }

    .mk27-mobile-v2 .main-col .profile-cards { grid-template-columns: minmax(0, 1fr); }
    .mk27-mobile-v2 .main-col .profile-card { min-width: 0; transform: none; }
    .mk27-mobile-v2 .main-col .profile-card-header {
        padding: 0 0 8px;
        margin-block-end: 12px;
        color: var(--mk-ink);
        background: transparent;
        border-bottom: 1px solid var(--mk-line);
    }
    .mk27-mobile-v2 .main-col .profile-card-title { color: inherit; }
    .mk27-mobile-v2 .main-col .profile-card-body { padding: 0; }

    .mk27-mobile-v2 .main-col :is(.register-form, .auth-container, .profile-form) :is(.form-group, .auth-form-group, .profile-form-group) {
        margin-block-end: var(--mk-field-gap);
    }
    .mk27-mobile-v2 .main-col :is(.register-form, .auth-container, .profile-form) :is(.form-control, .auth-input, .profile-input, .register-submit, .auth-button, .profile-button) {
        min-height: 48px;
        font-size: 16px;
    }

    .mk27-mobile-v2 .registration-container :is(.password-toggle, .captcha-refresh-btn) { min-width: 44px; min-height: 44px; }
    .mk27-mobile-v2 .registration-container .captcha-image { max-width: 100%; height: auto; }
    .mk27-mobile-v2 .registration-container .data-consent-container .custom-control-input { width: 1px; }
    .mk27-mobile-v2 .registration-container .data-consent-container .custom-control-label {
        display: block;
        min-height: 44px;
        font-size: 14px;
        line-height: 1.45;
        overflow-wrap: anywhere;
    }
    .mk27-mobile-v2 .registration-container .data-consent-container a {
        font-size: inherit;
        line-height: inherit;
        color: var(--mk-accent);
        text-decoration: underline;
    }
    .mk27-mobile-v2 .registration-container .data-storage-notice small { font-size: inherit; }
    .mk27-mobile-v2 .registration-container .data-storage-notice {
        padding: var(--mk-card-padding);
        font-size: 14px;
        line-height: 1.45;
    }
}

@media (max-width: 991px) {
    .mk27-mobile-v2 .mk-account-overview-desktop,
    .mk27-mobile-v2 .profile-header:has(.mk-account-mobile-title) :is(.profile-subtitle, .mk-account-desktop-title),
    .mk27-mobile-v2 .personal-menu:has(.mk-account-back) > .legal-left-menu {
        display: none;
    }

    .mk27-mobile-v2 .mk-account-mobile-title {
        display: inline;
    }

    .mk27-mobile-v2 .container.personal:has(.mk-account-back) {
        max-width: none;
        padding-inline: 0;
    }

    .mk27-mobile-v2 .personal:has(.mk-account-back) > .row {
        margin-inline: 0;
    }

    .mk27-mobile-v2 .personal:has(.mk-account-back) > .row > div {
        flex: 0 0 100%;
        min-width: 0;
        max-width: 100%;
        padding-inline: 0;
    }

    .mk27-mobile-v2 .personal:has(.mk-account-back) .personal-left {
        margin-top: 0;
    }

    .mk27-mobile-v2 .personal-menu:has(.mk-account-back) {
        margin-bottom: 8px;
    }

    .mk27-mobile-v2 .personal-menu .mk-account-back {
        display: inline-flex;
        gap: 8px;
        padding: 0 8px;
        border: 0;
        background: transparent;
        color: var(--mk-accent);
        font-weight: 700;
    }

    .mk27-mobile-v2 .personal-menu .mk-account-back::after {
        display: none;
    }

    .mk27-mobile-v2 .mk-account-overview {
        display: grid;
        gap: var(--mk-section-gap);
        padding-block: 8px var(--mk-section-gap);
        color: var(--mk-ink);
    }

    .mk27-mobile-v2 .mk-account-identity {
        padding: 16px;
        border-radius: 12px;
        background: var(--mk-surface);
    }

    .mk27-mobile-v2 .mk-account-overview :is(h1, h2) {
        font-family: inherit;
    }

    .mk27-mobile-v2 .mk-account-identity h1 {
        margin: 0 0 8px;
        font-size: 26px;
        line-height: 1.2;
    }

    .mk27-mobile-v2 .mk-account-identity p,
    .mk27-mobile-v2 .mk-account-empty p {
        margin: 0;
        overflow-wrap: anywhere;
    }

    .mk27-mobile-v2 .mk-account-name {
        font-size: 18px;
        font-weight: 700;
    }

    .mk27-mobile-v2 .mk-account-type {
        color: var(--mk-muted);
        font-size: 14px;
    }

    .mk27-mobile-v2 .mk-account-section h2 {
        margin: 0 0 8px;
        font-size: 20px;
        line-height: 1.25;
    }

    .mk27-mobile-v2 .mk-account-section-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 0 12px;
    }

    .mk27-mobile-v2 .mk-account-section-header h2 {
        margin: 0;
    }

    .mk27-mobile-v2 .mk-account-section-header a,
    .mk27-mobile-v2 .mk-account-empty a,
    .mk27-mobile-v2 .mk-account-actions > :not([hidden]) {
        display: inline-flex;
        align-items: center;
        min-height: 44px;
        color: var(--mk-accent);
        font-size: 15px;
        font-weight: 700;
    }

    .mk27-mobile-v2 .mk-account-empty,
    .mk27-mobile-v2 .mk-account-list {
        margin: 0;
        padding: 0;
        border: 1px solid var(--mk-line);
        border-radius: 12px;
        list-style: none;
    }

    .mk27-mobile-v2 .mk-account-empty {
        padding: 12px 12px 0;
    }

    .mk27-mobile-v2 .mk-account-list li + li {
        border-top: 1px solid var(--mk-line);
    }

    .mk27-mobile-v2 .mk-account-row {
        display: flex;
        align-items: center;
        gap: 12px;
        min-height: 60px;
        padding: 10px 12px;
        color: var(--mk-ink);
        text-decoration: none;
    }

    .mk27-mobile-v2 .mk-account-row:active {
        background: var(--mk-surface);
    }

    .mk27-mobile-v2 .mk-account-row::after {
        content: '';
        flex: 0 0 7px;
        width: 7px;
        height: 7px;
        margin-inline: 0 4px;
        border: solid var(--mk-muted);
        border-width: 1.5px 1.5px 0 0;
        transform: rotate(45deg);
    }

    .mk27-mobile-v2 .mk-account-icon {
        flex: 0 0 24px;
        width: 24px;
        color: var(--mk-muted);
        font-size: 20px;
        text-align: center;
    }

    .mk27-mobile-v2 .mk-account-row-text {
        display: grid;
        flex: 1 1 auto;
        gap: 2px;
        min-width: 0;
        overflow-wrap: anywhere;
        line-height: 1.3;
    }

    .mk27-mobile-v2 .mk-account-row-text small {
        color: var(--mk-muted);
        font-size: 14px;
    }

    .mk27-mobile-v2 .mk-account-price {
        flex: 0 1 auto;
        max-width: 44%;
        font-size: 14px;
        font-weight: 700;
        font-variant-numeric: tabular-nums;
        text-align: end;
        overflow-wrap: anywhere;
    }

    .mk27-mobile-v2 .mk-account-actions {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0 16px;
    }

    .mk27-mobile-v2 .mk-account-actions .mk-account-logout {
        color: var(--mk-muted);
    }
}

@media (max-width: 991px) {
    .mk27-mobile-v2.mk-basket-totals-visible .mk-mobile-utilities {
        visibility: hidden;
    }

    .mk27-mobile-v2 .mk-basket-heading {
        margin: 8px 0 16px;
        font-size: 1.625rem;
        line-height: 1.2;
    }

    .mk27-mobile-v2 #basket-root > .row {
        margin-inline: 0;
    }

    .mk27-mobile-v2 #basket-root > .row > .col {
        min-width: 0;
        padding-inline: 0;
    }

    .mk27-mobile-v2 #basket-root .basket-items-list-wrapper {
        border: 0;
    }

    .mk27-mobile-v2 #basket-root :is(.basket-items-list-container, .basket-items-list) {
        padding: 0;
    }

    .mk27-mobile-v2 #basket-root :is(.basket-items-list-table, .basket-items-list-table tbody) {
        display: grid !important;
        gap: 12px;
        width: 100%;
    }

    .mk27-mobile-v2 #basket-root .basket-items-list-item-container {
        position: relative;
        display: grid !important;
        grid-template-columns: max-content minmax(0, 1fr);
        align-items: end;
        gap: 8px 12px;
        min-width: 0;
        margin: 0;
        padding: 12px;
        border: 1px solid var(--mk-line);
        border-radius: 12px;
        background: #fff;
    }

    .mk27-mobile-v2 #basket-root .basket-items-list-item-container > td {
        display: block;
        order: initial;
        width: auto;
        min-width: 0;
        padding: 0;
        border: 0;
    }

    .mk27-mobile-v2 #basket-root :is(.basket-items-list-item-descriptions, .basket-items-list-item-price-for-one, .basket-items-list-item-notification) {
        grid-column: 1 / -1;
    }

    .mk27-mobile-v2 #basket-root .basket-items-list-item-descriptions-inner {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        gap: 12px;
        padding-inline-end: 44px;
    }

    .mk27-mobile-v2 #basket-root .basket-item-block-image {
        flex: 0 0 clamp(56px, 18vw, 84px);
        width: clamp(56px, 18vw, 84px);
        min-width: 0;
        margin: 0;
        padding: 0;
        border-radius: 8px;
        background: var(--mk-surface);
    }

    .mk27-mobile-v2 #basket-root .basket-item-image-link {
        display: block;
    }

    .mk27-mobile-v2 #basket-root .basket-item-image {
        display: block;
        width: 100%;
        height: auto;
        margin: 0;
        aspect-ratio: 1;
        object-fit: contain;
    }

    .mk27-mobile-v2 #basket-root .basket-item-block-info {
        flex: 1;
        padding: 0;
    }

    .mk27-mobile-v2 #basket-root :is(.basket-item-info-name, .basket-item-info-name-link) {
        margin: 0;
        padding: 0;
        font-weight: 700;
        overflow-wrap: anywhere;
    }

    .mk27-mobile-v2 #basket-root .basket-item-info-name span {
        font: inherit;
    }

    .mk27-mobile-v2 #basket-root .basket-item-block-properties {
        margin: 0;
    }

    .mk27-mobile-v2 #basket-root .basket-item-block-info .basket-item-actions-remove {
        display: block !important;
        top: -4px;
        right: -4px;
        margin: 0;
        background: var(--mk-surface);
    }

    .mk27-mobile-v2 #basket-root .basket-items-list-item-remove {
        display: none !important;
    }

    .mk27-mobile-v2 #basket-root .basket-items-list-item-price-for-one {
        display: block !important;
    }

    .mk27-mobile-v2 #basket-root .mk27-basket-single-price .basket-items-list-item-price-for-one {
        display: none !important;
    }

    .mk27-mobile-v2 #basket-root .basket-item-block-price {
        position: relative;
        min-width: 0;
        margin: 0;
        padding: 0;
        text-align: end;
        overflow-wrap: anywhere;
    }

    .mk27-mobile-v2 #basket-root .basket-items-list-item-price-for-one .basket-item-block-price {
        display: flex !important;
        flex-flow: row wrap;
        align-items: baseline;
        gap: 4px 6px;
        color: var(--mk-muted);
        text-align: start;
    }

    .mk27-mobile-v2 #basket-root .basket-item-price-current {
        color: inherit;
        text-align: inherit;
    }

    .mk27-mobile-v2 #basket-root .mk27-basket-promotion .basket-item-price-current {
        color: var(--mk-accent);
    }

    .mk27-mobile-v2 #basket-root .basket-item-price-current-text {
        font-size: 1.125rem;
        font-weight: 700;
        line-height: 1.25;
        white-space: normal;
    }

    .mk27-mobile-v2 #basket-root .basket-items-list-item-price-for-one .basket-item-price-current-text,
    .mk27-mobile-v2 #basket-root .basket-item-price-title {
        display: inline;
        margin: 0;
        font-size: 0.875rem;
        line-height: 1.3;
    }

    .mk27-mobile-v2 #basket-root :is(.basket-item-price-old, .basket-coupon-block-total-price-old) {
        position: static;
        display: block;
        margin: 0;
        color: var(--mk-muted);
        text-decoration: line-through;
        white-space: normal;
    }

    .mk27-mobile-v2 #basket-root :is(.basket-item-price-old-text, .basket-coupon-block-total-price-old)::after {
        content: none;
    }

    .mk27-mobile-v2 #basket-root .basket-item-price-difference {
        padding: 0;
        background: transparent;
        color: var(--mk-muted);
        text-align: end;
    }

    .mk27-mobile-v2 #basket-root .basket-item-block-amount {
        display: grid;
        grid-template-columns: 44px minmax(44px, 56px) 44px;
        align-items: center;
        gap: 3px 0;
        margin: 0;
        width: auto;
        padding: 0;
    }

    .mk27-mobile-v2 #basket-root :is(.basket-item-amount-filed-block, .basket-item-amount-filed) {
        min-width: 0;
        width: 100%;
        padding: 0;
    }

    .mk27-mobile-v2 #basket-root .basket-item-amount-filed {
        font-weight: 700;
    }

    .mk27-mobile-v2 #basket-root :is(.basket-item-amount-btn-minus, .basket-item-amount-btn-plus) {
        border: 0;
        border-radius: 8px;
        background: var(--mk-surface);
    }

    .mk27-mobile-v2 #basket-root .basket-item-amount-field-description {
        position: static;
        grid-column: 1 / -1;
        margin: 0;
        color: var(--mk-muted);
        font-size: 0.8125rem;
        line-height: 1.25;
        white-space: normal;
        text-align: center;
    }

    .mk27-mobile-v2 #basket-root .basket-items-list-item-removed-container {
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 8px;
        padding: 8px;
        border-radius: 8px;
        background: var(--mk-surface);
        overflow-wrap: anywhere;
    }

    .mk27-mobile-v2 #basket-root .basket-items-list-item-removed-block a {
        display: inline-flex;
        align-items: center;
        min-height: 44px;
    }

    .mk27-mobile-v2 #basket-root .basket-checkout-container {
        display: flex;
        flex-direction: column;
        gap: 12px;
        padding: 12px;
        border: 1px solid var(--mk-line);
        border-radius: 12px;
        background: var(--mk-surface);
    }

    .mk27-mobile-v2 #basket-root .basket-coupon-block-field {
        padding: 0;
        min-width: 0;
    }

    .mk27-mobile-v2 #basket-root .basket-coupon-block-field-description {
        margin-bottom: 6px;
        color: var(--mk-ink);
        font-size: 0.875rem;
        font-weight: 700;
    }

    .mk27-mobile-v2 #basket-root .basket-coupon-block-field .form-group {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 8px;
        margin: 0;
    }

    .mk27-mobile-v2 #basket-root .basket-coupon-block-field .form-control {
        height: 44px;
        min-height: 44px;
    }

    .mk27-mobile-v2 #basket-root .basket-coupon-block-coupon-btn {
        display: none;
    }

    .mk27-mobile-v2 #basket-root .mk-basket-coupon-apply {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        min-height: 44px;
        padding: 6px 10px;
        border: 1px solid var(--mk-line);
        border-radius: 8px;
        background: #fff;
        color: var(--mk-accent);
        font-weight: 700;
        font-size: 0.875rem;
    }

    .mk27-mobile-v2 #basket-root .basket-coupon-alert-section {
        order: 2;
        margin: 0;
    }

    .mk27-mobile-v2 #basket-root .basket-coupon-alert-section:not(:has(.basket-coupon-alert)) {
        display: none;
    }

    .mk27-mobile-v2 #basket-root .basket-checkout-section-inner {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        align-items: start;
        gap: 8px 12px;
        padding-block-start: 12px;
        border-top: 1px solid var(--mk-line);
    }

    .mk27-mobile-v2 #basket-root .basket-checkout-block {
        width: auto;
        min-width: 0;
        max-width: none;
        padding: 0;
    }

    .mk27-mobile-v2 #basket-root .basket-checkout-block-total {
        text-align: start;
    }

    .mk27-mobile-v2 #basket-root .basket-checkout-block-total-title {
        font-weight: 700;
    }

    .mk27-mobile-v2 #basket-root .basket-checkout-block-total-description {
        color: var(--mk-muted);
        font-size: 0.8125rem;
    }

    .mk27-mobile-v2 #basket-root .basket-checkout-block-total-price-inner {
        padding: 0;
        overflow-wrap: anywhere;
    }

    .mk27-mobile-v2 #basket-root .basket-coupon-block-total-price-current {
        color: var(--mk-ink);
        font-size: 1.375rem;
        line-height: 1.25;
        white-space: normal;
        overflow-wrap: anywhere;
    }

    .mk27-mobile-v2 #basket-root .basket-checkout-block-btn {
        grid-column: 1 / -1;
    }

    .mk27-mobile-v2 #basket-root .basket-btn-checkout {
        width: 100%;
        margin: 0;
        font-size: 1rem;
        font-weight: 700;
    }

    .mk27-mobile-v2 #basket-root :is(.basket-item-amount-filed, .basket-coupon-block-field .form-control):focus-visible {
        outline: 2px solid var(--mk-accent) !important;
        outline-offset: 2px;
    }

    .mk27-mobile-v2 .mk-basket-heading ~ .bx-sbb-empty-cart-container {
        margin: 0;
        padding: 16px;
        border: 1px solid var(--mk-line);
        border-radius: 12px;
        background: var(--mk-surface);
    }

    .mk27-mobile-v2 .mk-basket-heading ~ .bx-sbb-empty-cart-container .bx-sbb-empty-cart-image {
        width: 64px;
        height: 64px;
        background-size: contain;
    }

    .mk27-mobile-v2 .mk-basket-heading ~ .bx-sbb-empty-cart-container .bx-sbb-empty-cart-desc {
        display: none;
    }

    .mk27-mobile-v2 .mk-basket-heading ~ .mk-basket-empty-link {
        display: flex !important;
        align-items: center;
        justify-content: center;
        min-height: 48px;
        margin-top: 12px;
        border-radius: 8px;
        background: var(--mk-accent);
        color: #fff;
        font-weight: 700;
    }
}

@media (min-width: 992px) {
    .mk-mobile-only { display: none !important; }
}

@media (max-width: 991px) {
    .mk27-mobile-v2 :focus-visible { outline: 3px solid #b32721; outline-offset: 3px; }
    .mk27-mobile-v2 .mk-auth-label { display: block; margin-bottom: 4px; }
    .mk27-mobile-v2 .mk-form-error { color: var(--mk-accent); margin: 6px 0 0; }
    .mk27-mobile-v2 :is(.mk-form-error, [data-cookie-status]):empty { display: none; }
    .mk27-mobile-v2 [data-cookie-status] { margin: 8px 0 0; }
    .mk27-mobile-v2 .cookie-back-btn {
        padding: 8px 12px;
        border: 1px solid currentColor;
        border-radius: 8px;
        background: transparent;
        color: inherit;
    }

    .mk27-mobile-v2 .mk-filter-sheet :is(.filter-show-button, .bx-filter-title) { display: none !important; }
    .mk27-mobile-v2 .mk-filter-sheet .bx-filter { margin-top: 0; }

    .mk27-mobile-v2 .mk-contacts-city:not([hidden]) {
        display: grid;
        gap: 4px;
        margin: 0 var(--mk-page-gutter) 16px;
        color: var(--mk-muted);
    }
    .mk27-mobile-v2 .mk-contacts-city select {
        padding: 6px 12px;
        border: 1px solid var(--mk-line);
        background: #fff;
        color: var(--mk-ink);
    }
    .mk27-mobile-v2 .new-contacts:has(.mk-contacts-city:not([hidden])) .new-contacts-city-picker { display: none; }

    .mk27-mobile-v2 .mk-disclosure { border-bottom: 1px solid var(--mk-line); margin-bottom: 8px; }
    .mk27-mobile-v2 .mk-disclosure summary {
        min-height: 44px;
        padding-block: 10px;
        font-weight: 700;
        cursor: pointer;
    }
    .mk27-mobile-v2 .mk-disclosure summary::marker { color: var(--mk-accent); }

    .mk27-mobile-v2 [data-mk27-slider] :is(.owl-prev, .owl-next) { min-width: 44px; min-height: 44px; }
}

@media (max-width: 991px) and (prefers-reduced-motion: reduce) {
    .mk27-mobile-v2 * { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* Compact contact and navigation sections in the storefront footer. */
@media (max-width: 991px) {
    .mk27-mobile-v2 footer:has(> .footer-block) {
        padding-block: 16px 0;
        background: var(--mk-surface);
        border-top-color: var(--mk-line);
        color: var(--mk-ink);
        font-size: 14px;
    }
    .mk27-mobile-v2 footer.footer-margin-top:has(> .footer-block) { margin-top: 24px; }
    .mk27-mobile-v2 .footer-block {
        max-width: 680px;
        padding-bottom: 12px;
    }
    .mk27-mobile-v2 .footer-block > .row { display: block; margin: 0; }
    .mk27-mobile-v2 footer > .footer-block > .row > .col {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0;
        margin: 0;
        padding: 0;
    }
    .mk27-mobile-v2 footer > .footer-block > .row > .col:first-child {
        padding: 12px;
        margin-bottom: 6px;
        background: #fff;
        border: 1px solid var(--mk-line);
        border-radius: 12px;
    }
    .mk27-mobile-v2 footer > .footer-block > .row > .col:last-child { margin-top: 12px; }
    .mk27-mobile-v2 footer > .footer-block > .row > .col h3 {
        margin: 0 0 6px;
        padding: 0;
        color: var(--mk-ink);
        font-size: 15px;
        text-transform: none;
    }
    .mk27-mobile-v2 .footer-block h3::after { display: none; }
    .mk27-mobile-v2 .footer-block .footer-text,
    .mk27-mobile-v2 .footer-block .footer-link {
        margin: 0;
        color: var(--mk-muted);
        font-size: 13px;
        line-height: 1.4;
        overflow-wrap: anywhere;
    }
    .mk27-mobile-v2 .footer-block .footer-link a {
        display: flex;
        width: fit-content;
        max-width: 100%;
        padding: 0;
        color: var(--mk-accent);
        font-size: 14px;
    }
    .mk27-mobile-v2 .footer-block .footer-link br { display: none; }

    .mk27-mobile-v2 .footer-block .mk-disclosure { margin: 0; }
    .mk27-mobile-v2 .footer-block .mk-disclosure > summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 0 4px;
        font-size: 15px;
    }
    .mk27-mobile-v2 .footer-block summary::-webkit-details-marker { display: none; }
    .mk27-mobile-v2 .footer-block .mk-disclosure > summary::after {
        content: "";
        flex: none;
        width: 7px;
        height: 7px;
        margin-right: 3px;
        border-right: 2px solid var(--mk-muted);
        border-bottom: 2px solid var(--mk-muted);
        transform: rotate(45deg);
    }
    .mk27-mobile-v2 .footer-block .mk-disclosure[open] > summary::after { transform: rotate(225deg); }
    .mk27-mobile-v2 .footer-block .footer-menu { margin: 0; }
    .mk27-mobile-v2 .footer-block .footer-menu li { margin: 0; }
    .mk27-mobile-v2 .footer-block .footer-menu a {
        display: flex;
        padding-inline: 12px;
        color: var(--mk-muted);
        font-size: 14px;
        overflow-wrap: anywhere;
    }

    .mk27-mobile-v2 .footer-block .footer-social {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 6px;
    }
    .mk27-mobile-v2 .footer-block .footer-social a {
        justify-content: center;
        gap: 6px;
        padding: 4px;
        border: 1px solid var(--mk-line);
        border-radius: 8px;
        background: #fff;
    }
    .mk27-mobile-v2 .footer-block .footer-social img {
        flex: none;
        width: 20px;
        height: 20px;
        margin: 0;
    }
    .mk27-mobile-v2 .footer-block .footer-social span {
        color: var(--mk-ink);
        font-size: 13px;
    }
    .mk27-mobile-v2 .footer-block .footer-social-legal {
        margin: 8px 0 0;
        color: var(--mk-muted);
        font-size: 12px;
        line-height: 1.4;
    }
    .mk27-mobile-v2 footer:has(> .footer-block) > .copyrights {
        padding-block: 10px;
        border-top-color: var(--mk-line);
        background: transparent;
        font-size: 12px;
    }
}

/* Purchase controls on the product page. Bitrix updates the existing quantity and total. */
@media (max-width: 991px) {
    .mk27-mobile-v2 .main-emelent-block [data-entity="quantity-block"] .product-item-amount {
        margin: 0;
        padding: 0;
    }
    .mk27-mobile-v2 .main-emelent-block .product-item-amount-field-container {
        display: grid;
        grid-template-columns: 44px 56px 44px minmax(0, 1fr);
        row-gap: 10px;
        align-items: center;
        justify-content: stretch;
    }
    .mk27-mobile-v2 .main-emelent-block .product-item-amount-field-container > :is(.product-item-amount-field-btn-minus, .product-item-amount-field-btn-plus) {
        width: 44px;
        height: 44px;
        border-radius: 0;
        background: var(--mk-surface);
        touch-action: manipulation;
    }
    .mk27-mobile-v2 .main-emelent-block .product-item-amount-field-container > .product-item-amount-field-btn-minus {
        border-radius: 10px 0 0 10px;
    }
    .mk27-mobile-v2 .main-emelent-block .product-item-amount-field-container > .product-item-amount-field-btn-plus {
        border-radius: 0 10px 10px 0;
    }
    .mk27-mobile-v2 .main-emelent-block .product-item-amount-field {
        appearance: textfield;
        box-sizing: border-box;
        width: 100%;
        max-width: none;
        min-width: 0;
        height: 44px;
        margin: 0;
        padding: 0 2px;
        border-radius: 0;
        background: var(--mk-surface) !important;
        color: var(--mk-ink);
        font-size: 16px;
        font-variant-numeric: tabular-nums;
    }
    .mk27-mobile-v2 .main-emelent-block .product-item-amount-field::-webkit-inner-spin-button,
    .mk27-mobile-v2 .main-emelent-block .product-item-amount-field::-webkit-outer-spin-button {
        appearance: none;
        margin: 0;
    }
    .mk27-mobile-v2 .main-emelent-block .product-item-amount-description-container {
        display: contents;
    }
    .mk27-mobile-v2 .main-emelent-block .product-item-amount-description-container > [id$="_quant_measure"] {
        min-width: 0;
        padding-inline-start: 12px;
        color: var(--mk-muted);
        font-size: .875rem;
        text-align: start;
        white-space: normal;
        overflow-wrap: anywhere;
    }
    .mk27-mobile-v2 .main-emelent-block .product-item-amount-description-container > [id$="_price_total"] {
        grid-column: 1 / -1;
        display: flex;
        flex-wrap: wrap;
        align-items: baseline;
        justify-content: space-between;
        gap: 4px 12px;
        min-width: 0;
        padding: 8px 12px;
        border-radius: 10px;
        background: var(--mk-surface);
        color: var(--mk-muted);
        font-size: .875rem;
        line-height: 1.35;
        text-align: start;
        white-space: normal;
        overflow-wrap: anywhere;
    }
    .mk27-mobile-v2 .main-emelent-block .product-item-amount-description-container > [id$="_price_total"]:empty {
        display: none;
    }
    .mk27-mobile-v2 .main-emelent-block .product-item-amount-description-container > [id$="_price_total"] strong {
        min-width: 0;
        margin-inline-start: auto;
        color: var(--mk-ink);
        font-size: 1.25rem;
        font-variant-numeric: tabular-nums;
        text-align: end;
        white-space: normal;
    }
    .mk27-mobile-v2 .main-emelent-block .basket-action-block {
        display: grid;
        gap: 8px;
        bottom: auto;
        margin-top: 10px;
    }
    .mk27-mobile-v2 .main-emelent-block .basket-action-block .product-item-detail-buy-button {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        padding: 8px 12px;
        border-radius: 10px;
        font-weight: 700;
        white-space: normal;
    }
    .mk27-mobile-v2 .main-emelent-block :is(.product-item-amount-field, .basket-action-block .product-item-detail-buy-button):focus-visible {
        outline: 2px solid var(--mk-accent) !important;
        outline-offset: 2px;
    }
}

/* One purchase slot: add first, then edit the confirmed basket quantity. */
.mk-card-purchase { display: none; }
@media (max-width: 991px) {
    .mk27-mobile-v2 .catalog-section .catalog-item.mk-card-purchase-ready > [data-entity="quantity-block"],
    .mk27-mobile-v2 .catalog-section .catalog-item.mk-card-purchase-ready > .buttons-block > .product-item-button-container {
        display: none !important;
    }
    .mk27-mobile-v2 .mk-card-purchase {
        display: block;
        width: 100%;
        min-width: 0;
        margin-top: auto;
    }
    .mk27-mobile-v2[data-mk-view="grid"] .mk-card-purchase { grid-column: auto; }
    .mk27-mobile-v2 .mk27-search-page__products .mk-card-purchase {
        grid-column: 1 / -1;
        margin-top: 6px;
    }
    .mk27-mobile-v2 .mk-card-purchase__add {
        display: block;
        width: 100%;
        min-height: 44px;
        padding: 8px;
        border: 0;
        border-radius: 8px;
        background: var(--mk-red, #bd2923);
        color: #fff;
        font: 700 15px/1.25 'PT Sans', sans-serif;
        text-align: center;
    }
    .mk27-mobile-v2 .mk-card-purchase__counter {
        display: none;
        grid-template-columns: 44px minmax(0, 1fr) 44px;
        min-height: 44px;
        border-radius: 8px;
        background: #fff0ef;
        color: #a52420;
    }
    .mk27-mobile-v2 .mk-card-purchase[data-in-basket="true"] .mk-card-purchase__add { display: none; }
    .mk27-mobile-v2 .mk-card-purchase[data-in-basket="true"] .mk-card-purchase__counter { display: grid; }
    .mk27-mobile-v2 .mk-card-purchase__counter button,
    .mk27-mobile-v2 .mk-card-purchase__counter input {
        min-width: 0;
        width: 100%;
        height: 44px;
        padding: 0;
        border: 0;
        border-radius: 8px;
        box-shadow: none;
        background: transparent;
        color: inherit;
        font: 700 22px/1 'PT Sans', sans-serif;
        text-align: center;
        touch-action: manipulation;
    }
    .mk27-mobile-v2 .mk-card-purchase__counter input { font-size: 16px; font-variant-numeric: tabular-nums; }
    .mk27-mobile-v2 .mk-card-purchase__counter .mk27-loader { --mk-loader-size: 16px; }
    .mk27-mobile-v2 .mk-card-purchase button:disabled { opacity: .6; cursor: wait; }
    .mk27-mobile-v2 .mk-card-purchase button:active:not(:disabled) { filter: brightness(.94); }
    .mk27-mobile-v2 .mk-card-purchase :is(button, input):focus-visible { outline: 2px solid #a52420; outline-offset: -2px; }
    .mk27-mobile-v2 .mk-card-purchase__message {
        margin-top: 6px;
        font-size: 13px;
        line-height: 1.3;
        overflow-wrap: anywhere;
    }
}

/* End */


/* Start:/local/templates/mk-27-new/assets/mobile/loading.css?17944819599564*/
/* The 404 page's hex nut, shared by existing mobile loading states.
   Only transform is animated. Component code still owns request lifetimes. */
.mk27-basket-loading,
.mk-navigation-status,
.mk-search-submit-status,
.mk-search-skeletons { display: none; }

@media (max-width: 991px) {
    .mk27-mobile-v2 {
        --mk-loader-size: 28px;
        --mk-loader-motion: mk27-nut-turn 1.6s linear infinite;
        --mk-loader-faces: conic-gradient(from 30deg, #ee3831 0deg 60deg, #bd2923 60deg 120deg,
            #475560 120deg 180deg, #84939d 180deg 240deg, #dce2e6 240deg 300deg, #a9b4bc 300deg);
    }

    .mk27-mobile-v2 :is(
        .mk27-loader,
        .mk-search-load-spinner,
        .dadata-loading .fa-spinner
    ) {
        display: inline-flex;
        flex: none;
        width: var(--mk-loader-size);
        height: var(--mk-loader-size);
        border: 0;
        border-radius: 0;
        background: none;
        animation: none;
        vertical-align: middle;
    }

    .mk27-mobile-v2 :is(.mk27-loader, .mk-search-load-spinner)[hidden] { display: none; }

    .mk27-mobile-v2 :is(
        .mk27-loader,
        .mk-search-load-spinner,
        .dadata-loading .fa-spinner,
        .mk27-basket-loading,
        .bx-core-waitwindow,
        div[id^="wait_"][style*="/bitrix/js/main/core/images/wait.gif"],
        #mk-city-sheet[aria-busy="true"] [data-mk-city-status],
        .mk-context-notice:has([data-mk-refresh]:disabled) [data-mk-context-message],
        [data-use^="show-more-"].disabled,
        #loading_screen:has(> img[src$="/images/loader.gif"]),
        #pickUpLoader:has(> img[src$="/images/loader.gif"]),
        #bx-soa-image-popup-content:has(> img[src$="/images/loader.gif"])
    )::before {
        content: "";
        display: inline-block;
        flex: none;
        width: var(--mk-loader-size);
        height: var(--mk-loader-size);
        box-sizing: border-box;
        vertical-align: middle;
        /* Machined steel faces with a red facet; the central bore is transparent. */
        background: var(--mk-loader-faces);
        clip-path: polygon(50% 0, 93.3% 25%, 93.3% 75%, 50% 100%, 6.7% 75%, 6.7% 25%);
        -webkit-mask-image: radial-gradient(circle, transparent 23%, #000 25%);
        mask-image: radial-gradient(circle, transparent 23%, #000 25%);
        animation: var(--mk-loader-motion);
        forced-color-adjust: none;
        pointer-events: none;
    }

    .mk27-mobile-v2 :is(.dadata-loading .fa-spinner, .bx-core-waitwindow)::before,
    .mk27-mobile-v2 #mk-city-sheet[aria-busy="true"] [data-mk-city-status]::before,
    .mk27-mobile-v2 .mk-context-notice:has([data-mk-refresh]:disabled) [data-mk-context-message]::before,
    .mk27-mobile-v2 [data-use^="show-more-"].disabled::before {
        margin-inline-end: 8px;
    }

    /* BX.showWait emits inline styles, so these narrowly scoped overrides are required. */
    .mk27-mobile-v2 :is(.bx-core-waitwindow, div[id^="wait_"][style*="/bitrix/js/main/core/images/wait.gif"]) {
        background: #fff !important;
        border: 1px solid #dce1e5 !important;
        border-radius: 10px;
        padding: 10px 12px !important;
        color: #202b33 !important;
        font: 14px/1.4 'PT Sans', sans-serif !important;
    }
    .mk27-mobile-v2 div[id^="wait_"][style*="/bitrix/js/main/core/images/wait.gif"]::before {
        margin-inline-end: 8px;
    }
    .mk27-mobile-v2 #loading_screen { --mk-loader-size: 56px; }
    .mk27-mobile-v2 :is(#loading_screen, #pickUpLoader, #bx-soa-image-popup-content) > img[src$="/images/loader.gif"] {
        display: none;
    }

    .mk27-mobile-v2 :is(.mk-navigation-status, .mk-search-submit-status, .mk27-basket-loading):not([hidden]) {
        --mk-loader-size: 20px;
        display: flex;
        align-items: center;
        gap: 8px;
        position: fixed;
        z-index: 1200;
        inset-block: max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-bottom));
        inset-inline: max(12px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-right));
        margin: auto;
        block-size: max-content;
        max-block-size: calc(100dvh - 24px);
        overflow: hidden;
        transform: none;
        box-sizing: border-box;
        inline-size: max-content;
        max-inline-size: calc(100% - 32px);
        padding: 12px 16px;
        border: 1px solid var(--mk-line, #dce1e5);
        border-block-start: 2px solid var(--mk-accent, #bd2923);
        border-radius: 12px;
        background: #fff;
        color: var(--mk-ink, #202b33);
        box-shadow: 0 4px 16px #202b331a;
        font: 700 14px/1.35 'PT Sans', sans-serif;
        pointer-events: none;
    }

    .mk27-mobile-v2 :is(.mk-navigation-status, .mk-search-submit-status, .mk27-basket-loading):not([hidden]) {
        animation: mk27-loading-appear .15s ease-out .1s both;
    }

    .mk27-mobile-v2 .mk27-basket-loading:not([hidden]) { z-index: 910; }

    .mk27-mobile-v2 .mk-search-continuation[data-mk-loading="true"] .mk-search-skeletons {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 4px;
        width: 100%;
    }

    .mk27-mobile-v2 .mk-search-continuation[data-mk-loading="true"]:has(.mk-search-skeletons) .mk-search-load-spinner {
        display: none;
    }

    .mk27-mobile-v2 .mk-search-skeleton {
        display: grid;
        grid-template-columns: 88px minmax(0, 1fr);
        gap: 8px 10px;
        align-content: center;
        padding: 8px;
        border: 1px solid var(--mk-line, #dce1e5);
        border-radius: 10px;
        background: #fff;
    }

    .mk27-mobile-v2 .mk-search-skeleton > :where(span) {
        display: block;
        min-inline-size: 0;
        border-radius: 6px;
        background: var(--mk-surface, #f4f6f7);
        animation: mk27-skeleton-pulse 1.2s ease-in-out 4 alternate;
    }

    .mk27-mobile-v2 .mk-skeleton-image {
        grid-row: span 3;
        block-size: 88px;

    }

    .mk27-mobile-v2 .mk-skeleton-title {
        block-size: 3.9em;
        font-size: .9375rem;
        background: repeating-linear-gradient(to bottom, var(--mk-surface, #f4f6f7) 0 11px, transparent 11px 20px);
    }
    .mk27-mobile-v2 .mk-skeleton-article { block-size: 12px; inline-size: 65%; }
    .mk27-mobile-v2 .mk-skeleton-price { block-size: 16px; inline-size: 40%; }
    .mk27-mobile-v2 .mk-skeleton-action {
        grid-column: 1 / -1;
        block-size: 44px;
        background: #fff0ef;
    }
    .mk27-mobile-v2:not([data-mk-view="grid"]) .mk-search-continuation .mk-search-skeleton + .mk-search-skeleton {
        display: none;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .mk-search-continuation[data-mk-loading="true"] .mk-search-skeletons {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mk27-mobile-v2[data-mk-view="grid"] .mk-search-skeleton {
        grid-template-columns: minmax(0, 1fr);
        padding: 6px;
        border-radius: 12px;
    }

    .mk27-mobile-v2[data-mk-view="grid"] .mk-skeleton-image {
        grid-row: auto;
        block-size: auto;
        max-block-size: 200px;
        aspect-ratio: 1;
    }

    /* Existing cards/section rows supply the geometry, including legal-price blocks.
       Visibility keeps layout intact; the overlay cannot intercept clicks. */
    .mk27-mobile-v2 .mk-loading-shape {
        visibility: hidden !important;
    }
    .mk27-mobile-v2 .mk-loading-relative { position: relative !important; }
    .mk27-mobile-v2 .mk-loading-shape > :not(.mk-loading-mask),
    .mk27-mobile-v2 .mk-loading-shape > :not(.mk-loading-mask) * { visibility: hidden !important; }
    .mk27-mobile-v2 .mk-loading-shape > .mk-loading-mask {
        position: absolute;
        inset: 0;
        display: block !important;
        visibility: visible !important;
        border-radius: 6px;
        background: var(--mk-surface, #f4f6f7);
        animation: mk27-skeleton-pulse 1.2s ease-in-out 4 alternate;
        pointer-events: none;
    }
    .mk27-mobile-v2 :is(.title, .title-link).mk-loading-shape > .mk-loading-mask {
        background: repeating-linear-gradient(to bottom, var(--mk-surface, #f4f6f7) 0 11px, transparent 11px 20px);
        inset-block: 3px;
        inline-size: 92%;
    }
    .mk27-mobile-v2 .price.mk-loading-shape > .mk-loading-mask {
        inline-size: 55%;
        block-size: 18px;
        margin-block: auto;
    }
    .mk27-mobile-v2 .mk-product-article.mk-loading-shape > .mk-loading-mask {
        inline-size: 65%;
        block-size: 12px;
        margin-block: auto;
    }
    .mk27-mobile-v2 .mk-card-purchase.mk-loading-shape > .mk-loading-mask {
        background: #fff0ef;
        border-radius: 8px;
    }
    .mk27-mobile-v2 .section-block > .mk-loading-shape > .mk-loading-mask {
        inset: 0 24% 0 16px;
        margin-block: auto;
        height: 14px;
    }
}

@keyframes mk27-loading-appear { from { opacity: 0; } to { opacity: 1; } }

@keyframes mk27-skeleton-pulse { from { opacity: .65; } to { opacity: 1; } }

@keyframes mk27-nut-turn { to { transform: rotate(1turn); } }

@media (max-width: 991px) and (prefers-reduced-motion: reduce) {
    .mk27-mobile-v2 { --mk-loader-motion: none; }
    .mk27-mobile-v2 :is(.mk-navigation-status, .mk-search-submit-status, .mk27-basket-loading):not([hidden]),
    .mk27-mobile-v2 .mk-search-skeleton > span,
    .mk27-mobile-v2 .mk-loading-shape > .mk-loading-mask { animation: none; }
}

@media (max-width: 991px) and (forced-colors: active) {
    .mk27-mobile-v2 { --mk-loader-faces: CanvasText; }
}

/* End */


/* Start:/local/pwa/install.css?17944512693316*/
.mk27-pwa-tools:has(#mk27-pwa-entry[hidden]):has(.mk27-pwa-card[hidden]),
.mk27-pwa-tools:has(.mk27-pwa-card:not([hidden])) #mk27-pwa-entry,
.mk27-pwa-card[hidden], .mk27-pwa-install-link[hidden], .mk27-pwa-dialog [hidden] { display: none !important; }
.mk27-pwa-tools { padding-block: 12px; }
.mk27-pwa-install-link {
  display: inline-flex; align-items: center; min-height: 44px; padding: 8px 14px;
  color: var(--mk-ink, #202b33); border: 1px solid var(--mk-line, #dce1e5); border-radius: 8px;
  background: #fff; font: inherit; cursor: pointer; text-align: left;
}
.mk27-pwa-card {
  position: static; display: flex; gap: 12px; width: min(100%, 440px); box-sizing: border-box; padding: 12px;
  border: 1px solid var(--mk-line, #dce1e5); border-radius: 12px; background: #fff;
  color: var(--mk-ink, #202b33); font: 15px/1.4 'PT Sans', sans-serif;
}
.mk27-pwa-card__content { flex: 1; min-width: 0; }
.mk27-pwa-card img, .mk27-pwa-dialog img { flex-shrink: 0; border-radius: 8px; }
.mk27-pwa-card h2 { margin: 0 0 4px; font-size: 17px; line-height: 1.25; font-weight: 700; text-wrap: balance; }
.mk27-pwa-card p { margin: 0 0 8px; color: var(--mk-muted, #475560); }
.mk27-pwa-actions { display: flex; flex-wrap: wrap; gap: 4px 8px; }
.mk27-pwa-primary, .mk27-pwa-secondary {
  min-height: 44px; padding: 8px 12px; border: 1px solid transparent; border-radius: 8px;
  font: inherit; cursor: pointer;
}
.mk27-pwa-primary { color: #fff; background: var(--mk-accent, #bd2923); font-weight: 700; }
.mk27-pwa-secondary { color: var(--mk-muted, #475560); background: #fff; }
.mk27-pwa-primary[aria-disabled="true"], .mk27-pwa-install-link[aria-disabled="true"] { opacity: .65; cursor: wait; }
.mk27-pwa-install-link:active, .mk27-pwa-secondary:active { background: var(--mk-surface, #f4f6f7); }
.mk27-pwa-dialog {
  box-sizing: border-box; position: fixed; inset: 0; width: min(480px, calc(100% - 24px));
  max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); margin: auto; padding: 20px;
  overflow: auto; overscroll-behavior: contain; border: 1px solid var(--mk-line, #dce1e5); border-radius: 16px;
  color: var(--mk-ink, #202b33); background: #fff; font: 16px/1.5 'PT Sans', sans-serif;
}
.mk27-pwa-dialog::backdrop { background: #18232b99; }
.mk27-pwa-dialog h2 { margin: 12px 0; font-size: 22px; line-height: 1.25; text-wrap: balance; }
.mk27-pwa-dialog ol { margin: 12px 0 0; padding-left: 20px; }
.mk27-pwa-dialog li + li { margin-top: 8px; }
.mk27-pwa-dialog p { margin: 12px 0 0; }
.mk27-pwa-close {
  position: absolute; right: 8px; top: 8px; width: 44px; height: 44px; border: 0; border-radius: 8px;
  color: var(--mk-ink, #202b33); background: var(--mk-surface, #f4f6f7); font: 26px/1 sans-serif; cursor: pointer;
}
.mk27-pwa-note { font-size: 14px; color: var(--mk-muted, #475560); }
.mk27-pwa-error { color: var(--mk-accent, #bd2923); }
.mk27-pwa-install-link:focus-visible, .mk27-pwa-card button:focus-visible, .mk27-pwa-dialog button:focus-visible {
  outline: 3px solid var(--mk-accent, #bd2923); outline-offset: 2px;
}
@media (min-width: 992px), (display-mode: standalone), (display-mode: minimal-ui) {
  .mk27-pwa-card { display: none !important; }
}
@media (display-mode: standalone), (display-mode: minimal-ui) {
  .mk27-pwa-tools, .mk27-pwa-install-link { display: none !important; }
}

/* End */


/* Start:/local/templates/mk-27-new/assets/plugins/owl_carousel/owl.carousel.min.css?17421814013351*/
/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
.owl-carousel,.owl-carousel .owl-item{-webkit-tap-highlight-color:transparent;position:relative}.owl-carousel{display:none;width:100%;z-index:1}.owl-carousel .owl-stage{position:relative;-ms-touch-action:pan-Y;touch-action:manipulation;-moz-backface-visibility:hidden}.owl-carousel .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.owl-carousel .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translate3d(0,0,0)}.owl-carousel .owl-item,.owl-carousel .owl-wrapper{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0)}.owl-carousel .owl-item{min-height:1px;float:left;-webkit-backface-visibility:hidden;-webkit-touch-callout:none}.owl-carousel .owl-item img{display:block;width:100%}.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled{display:none}.no-js .owl-carousel,.owl-carousel.owl-loaded{display:block}.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{cursor:pointer;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel .owl-nav button.owl-next,.owl-carousel .owl-nav button.owl-prev,.owl-carousel button.owl-dot{background:0 0;color:inherit;border:none;padding:0!important;font:inherit}.owl-carousel.owl-loading{opacity:0;display:block}.owl-carousel.owl-hidden{opacity:0}.owl-carousel.owl-refresh .owl-item{visibility:hidden}.owl-carousel.owl-drag .owl-item{-ms-touch-action:pan-y;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-grab{cursor:move;cursor:grab}.owl-carousel.owl-rtl{direction:rtl}.owl-carousel.owl-rtl .owl-item{float:right}.owl-carousel .animated{animation-duration:1s;animation-fill-mode:both}.owl-carousel .owl-animated-in{z-index:0}.owl-carousel .owl-animated-out{z-index:1}.owl-carousel .fadeOut{animation-name:fadeOut}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.owl-height{transition:height .5s ease-in-out}.owl-carousel .owl-item .owl-lazy{opacity:0;transition:opacity .4s ease}.owl-carousel .owl-item .owl-lazy:not([src]),.owl-carousel .owl-item .owl-lazy[src^=""]{max-height:0}.owl-carousel .owl-item img.owl-lazy{transform-style:preserve-3d}.owl-carousel .owl-video-wrapper{position:relative;height:100%;background:#000}.owl-carousel .owl-video-play-icon{position:absolute;height:80px;width:80px;left:50%;top:50%;margin-left:-40px;margin-top:-40px;background:url(/local/templates/mk-27-new/assets/plugins/owl_carousel/owl.video.play.png) no-repeat;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;transition:transform .1s ease}.owl-carousel .owl-video-play-icon:hover{-ms-transform:scale(1.3,1.3);transform:scale(1.3,1.3)}.owl-carousel .owl-video-playing .owl-video-play-icon,.owl-carousel .owl-video-playing .owl-video-tn{display:none}.owl-carousel .owl-video-tn{opacity:0;height:100%;background-position:center center;background-repeat:no-repeat;background-size:contain;transition:opacity .4s ease}.owl-carousel .owl-video-frame{position:relative;z-index:1;height:100%;width:100%}
/* End */


/* Start:/local/templates/mk-27-new/assets/plugins/owl_carousel/owl.theme.default.min.css?17421814011013*/
/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
.owl-theme .owl-dots,.owl-theme .owl-nav{text-align:center;-webkit-tap-highlight-color:transparent}.owl-theme .owl-nav{margin-top:10px}.owl-theme .owl-nav [class*=owl-]{color:#FFF;font-size:14px;margin:5px;padding:4px 7px;background:#D6D6D6;display:inline-block;cursor:pointer;border-radius:3px}.owl-theme .owl-nav [class*=owl-]:hover{background:#869791;color:#FFF;text-decoration:none}.owl-theme .owl-nav .disabled{opacity:.5;cursor:default}.owl-theme .owl-nav.disabled+.owl-dots{margin-top:10px}.owl-theme .owl-dots .owl-dot{display:inline-block;zoom:1}.owl-theme .owl-dots .owl-dot span{width:10px;height:10px;margin:5px 7px;background:#D6D6D6;display:block;-webkit-backface-visibility:visible;transition:opacity .2s ease;border-radius:30px}.owl-theme .owl-dots .owl-dot.active span,.owl-theme .owl-dots .owl-dot:hover span{background:#869791}
/* End */


/* Start:/local/templates/mk-27-new/assets/fonts/fonts.css?1791355521503*/
@font-face {
    font-family: 'Roboto';
    src: url('/local/templates/mk-27-new/assets/fonts/Roboto-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Akrobat';
    src: url('/local/templates/mk-27-new/assets/fonts/Akrobat-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Akrobat';
    src: url('/local/templates/mk-27-new/assets/fonts/Akrobat-ExtraBold.woff2') format('woff2');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

/* End */


/* Start:/local/templates/mk-27-new/assets/fonts/performance-fonts.css?17913555213722*/
/* cyrillic */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/local/templates/mk-27-new/assets/fonts/performance/a4f137da62e9.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/local/templates/mk-27-new/assets/fonts/performance/eb47aeb9c5d1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/local/templates/mk-27-new/assets/fonts/performance/9b2d027172a3.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/local/templates/mk-27-new/assets/fonts/performance/4872f2a6dc9a.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/local/templates/mk-27-new/assets/fonts/performance/9b2d027172a3.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/local/templates/mk-27-new/assets/fonts/performance/4872f2a6dc9a.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/local/templates/mk-27-new/assets/fonts/performance/9b2d027172a3.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/local/templates/mk-27-new/assets/fonts/performance/4872f2a6dc9a.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/local/templates/mk-27-new/assets/fonts/performance/4754509efbd9.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/local/templates/mk-27-new/assets/fonts/performance/46a61d71599b.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/local/templates/mk-27-new/assets/fonts/performance/aa617e535760.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/local/templates/mk-27-new/assets/fonts/performance/57fda182a7b2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* End */


/* Start:/local/templates/mk-27-new/template_styles.css?179445245642266*/
* {
    outline: none !important;
}
html {
    scroll-behavior: smooth;
}
body {
    background-color: #fff;
    color: #333;
    font-family: 'PT Sans', 'Helvetica', 'Arial', sans-serif;
    margin: 0;
    width: 100%;
    min-width: 320px;
    display: flex;
    flex-direction: column;
    /*min-height: 100vh;*/
}

#bx-panel {
    user-select: none;
    position: absolute !important;
    min-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'PT Sans';
    font-weight: 800;
    color: #111;
    margin-top: 0;
    margin-bottom: 24px;
}
h1 {
    font-size: 48px;
    margin-top: 15px;
}

h2 {
    font-size: 36px;
}

h3 {
    font-size: 24px;
}
h4,
h5,
h6 {
    font-weight: 700;
}

img {
    max-width: 100%;
}

a,
a:hover {
    text-decoration: none;
}

a {
    color: #333;
    font-size: 16px;
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
    padding-bottom: 2px;
    outline: none !important;
}
a:hover,
a.active,
a:active,
a:focus,
a.focus span.active {
    color: #ee3831;
}
p {
    color: #333;
    font-size: 16px;
    line-height: 1.5em;
    -webkit-transition: color 0.15s ease-in-out;
    transition: color 0.15s ease-in-out;
}
main input,
main button,
main textarea,
main select,
main option {
    background-color: #fff;
    box-shadow: none;
    text-shadow: none;
    border: none;
    font-family: Roboto;
    font-style: normal;
    font-weight: normal;
    font-size: 16px;
    color: #333333;
    outline: none;
}
button.transparent {
    background-color: transparent;
}

.fs-12 {
    font-size: 12px;
    line-height: 16px;
}
.fs-14 {
    font-size: 14px;
    line-height: 20px;
}

.mobile {
    display: none !important;
}

.hidden {
    display: none !important;
}
.no-padding-container {
    padding-left: 0;
    padding-right: 0;
}

.grey-background {
    display: none;
    background: rgba(0, 0, 0, 0.5);
    position: fixed;
    width: 100%;
    height: 100vh;
    z-index: 5;
    left: 0;
    top: 0;
}

@media (max-width: 991px) {
    .mobile {
        display: block !important;
    }
    .desktop {
        display: none !important;
    }
    .page-main-block h1 {
        font-size: 36px;
    }

    .page-main-block h2 {
        font-size: 24px;
    }

    .page-main-block h3 {
        font-size: 18px;
    }
}

@media (max-width: 576px) {
    .no-padding-container {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
    header > .container.no-padding-container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* HAEDER */

header {
    display: flex;
    background: #475560;
    position: fixed;
    min-width: 100%;
    top: 0;
    /* Выше контента и липких блоков страниц (поиск и т.д.), ниже модальных оверлеев */
    z-index: 100;
    height: 120px;
}
header p {
    margin: 0;
}
header > .container {
    display: flex;
    align-items: stretch;
    min-height: 100%;
}

header .logo {
    padding: 24px;
    background-color: #ee3831;
    align-self: stretch;
    width: 20%;
    align-items: center;
    justify-content: center;
    display: flex;
}
header .hamburger {
    cursor: pointer;
    margin-left: 30px;
}
header .hamburger .cross {
    display: none;
    font-size: 22px;
    color: #fff;
    padding: 0px 3px;
}
header .header-main {
    background-color: #475560;
    width: 80%;
    color: #fff !important;
    justify-content: space-between;
    align-items: flex-start;
    display: flex;
    padding: 20px 0px 20px 20px;
}
header .header-main__content {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: flex-start;
    gap: 24px;
    padding-right: 20px;
}
header .header-main__nav-search {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
header .header-main__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 18px;
    flex-shrink: 0;
    margin-left: auto;
    padding-top: 4px;
}
header .header-main p {
    color: #fff;
}
header .header-main .header-phones {
    max-width: 240px;
    flex: 0 0 240px;
}
header .header-main .header-phones > p.fs-12 {
    margin: 0 0 2px;
    line-height: 1.2;
}
header .header-main .header-phones .phones-list .phones-dropdown a {
    font-size: 20px;
    line-height: 22px;
}
header .header-main .header-phones .phones-list .phones-dropdown .phones-dropdown-menu {
    margin-top: -38px;
}
header .header-max-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 8px;
    color: #fff;
    font-size: 13px;
    line-height: 1.2;
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: opacity 0.15s ease-in-out;
}
header .header-max-link:hover {
    opacity: 0.75;
    color: #fff;
}
header .header-max-link img {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    object-fit: contain;
}
header .header-main .header-phones #bx_incl_area_1 {
    font-size: 12px;
    line-height: 16px;
}
header .header-menu.desktop {
    width: 100%;
    min-width: 0;
}
header .header-city .city-selected {
    text-decoration: underline;
    text-underline-offset: 2px;
    cursor: pointer;
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}
header .header-city .city-icon {
    cursor: pointer;
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}
header .header-city .city-selected:hover,
header .header-city .city-icon:hover {
    opacity: 0.5;
}

header .header-city {
    position: relative;
    z-index: 200;
    flex-shrink: 0;
}

header .header-city .header-city-change {
    background: #fff;
    color: #000;
    position: absolute;
    border-radius: 5px;
    box-shadow: 0px 4px 32px rgb(0 0 0 / 16%);
    padding: 30px;
    margin-top: 10px;
    z-index: 201;
    display: none;
}
header .header-city .header-city-change.active {
    display: block;
}
header .header-city .header-city-change .city-arrow {
    width: 15px;
    height: 15px;
    position: absolute;
    background: #fff;
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    top: -4px;
    left: 28px;
}
header .header-city .header-city-change .your-city {
    font-family: 'PT San', sans-serif;
    font-weight: 800;
    font-size: 24px;
    line-height: 24px;
    text-transform: initial;
    color: #9c9ca9;
}
header .header-city .header-city-change .second-block {
    display: none;
    width: 256px;
}
header .header-city .header-city-change .second-block .cross {
    position: absolute;
    right: 30px;
    color: #999;
    font-size: 20px;
    top: 20px;
    cursor: pointer;
}
header .header-city .header-city-change .second-block .title {
    font-family: 'PT San', sans-serif;
    font-weight: 800;
    font-size: 24px;
    line-height: 24px;
    text-transform: initial;
    margin-bottom: 24px;
}
header .header-city .header-city-change .second-block .select-city {
    font-size: 16px;
    line-height: 32px;
    cursor: pointer;
}
header .header-city .header-city-change .second-block .select-city:hover {
    color: #ee3831;
}

@media (max-width: 1410px) {
    header .header-city .header-city-change {
        margin-left: -290px;
        min-width: 360px;
    }
    header .header-city .header-city-change .city-arrow {
        left: 320px;
    }
}
@media (max-width: 1200px) {
    header .header-city .header-city-change {
        margin-left: -190px;
    }
    header .header-city .header-city-change .city-arrow {
        left: 220px;
    }
}
@media (max-width: 991px) {
    header {
        height: 64px;
    }
    /*
     * Окно выбора города: на десктопе — absolute с отрицательным margin из брейкпоинтов 1410/1200.
     * На мобильных узкий .header-city + min-width:360px + right давали вылет за левый край экрана.
     * Здесь — фиксация во viewport по центру, сброс наследуемых min-width/margin.
     */
    header .header-city .header-city-change {
        position: fixed;
        left: 50%;
        right: auto;
        transform: translateX(-50%);
        top: calc(64px + 8px + env(safe-area-inset-top, 0px));
        margin-left: 0 !important;
        margin-top: 0;
        width: calc(100vw - 24px);
        max-width: 360px;
        min-width: 0 !important;
        box-sizing: border-box;
        z-index: 10050;
    }
    header .header-city .header-city-change .city-arrow {
        display: none;
    }
    header .header-city .header-city-change .first-block {
        width: 100%;
        box-sizing: border-box;
    }
    header .header-city .header-city-change .second-block {
        width: 100%;
        max-width: none;
        box-sizing: border-box;
    }
    header .header-city .header-city-change .buttons {
        flex-wrap: wrap;
        gap: 12px;
    }
    header .header-city .header-city-change .buttons .button-no {
        margin-left: 0;
    }
    header .hamburger .cross {
        padding: 0 4px;
    }
}

header .header-city .header-city-change .your-city b {
    color: #000;
}

header .header-city .header-city-change .buttons {
    margin-top: 24px;
    display: flex;
}
header .header-city .header-city-change .buttons .button {
    font-family: 'PT Sans';
    font-weight: bold;
    font-size: 18px;
    line-height: 18px;
    letter-spacing: 0.06em;
    padding: 16px 32px;
    white-space: nowrap;
    text-align: center;
    text-transform: uppercase;
    -webkit-transition: opacity 0.15s ease-in-out;
    transition: opacity 0.15s ease-in-out;
    cursor: pointer;
    border-radius: 0;
    opacity: 1;
    outline: none;
}
header .header-city .header-city-change .buttons .button-yes {
    color: #fff;
    border: none;
    background-color: #ee3831;
    outline: none;
}
header .header-city .header-city-change .buttons .button-no {
    margin-left: 16px;
    background-color: #fff;
    color: #ee3831;
    border: 2px solid #ee3831;
}
header .header-city .header-city-change .buttons .button:hover {
    opacity: 0.8;
}
header .header-social {
    display: flex;
}
header .header-social a {
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
    margin-right: 7px;
}
header .header-social a:hover {
    opacity: 0.5;
}
header .header-search a:hover {
    opacity: 0.5;
}

header .header-search.desktop {
    flex: 0 1 auto;
    min-width: 0;
    width: min(780px, 100%);
    max-width: min(780px, 100%);
    margin: 0;
    align-self: flex-start;
    order: 0;
}
.header-main__actions .header-cart,
.header-main__actions .header-profile,
.header-main__actions .header-city {
    margin-left: 0;
}

header .header-search-icon.mobile {
    display: none !important;
    align-items: center;
    justify-content: center;
}

@media (max-width: 1399px) and (min-width: 992px) {
    header .header-main {
        align-items: stretch;
        padding: 16px 0 18px 18px;
    }
    header .header-main__content {
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 12px 18px;
        padding-right: 16px;
    }
    header .header-main .header-phones {
        flex: 0 0 208px;
        max-width: 208px;
    }
    header .header-main__nav-search {
        flex: 1 1 calc(100% - 226px);
        width: calc(100% - 226px);
        gap: 8px;
    }
    header .header-menu.desktop {
        width: 100%;
        overflow: visible;
    }
    header .header-search.desktop {
        width: 100%;
        max-width: none;
        flex-basis: 100%;
    }
    header .header-main__actions {
        gap: 14px;
        padding-top: 2px;
    }
}

@media (max-width: 1199px) and (min-width: 992px) {
    header .header-main {
        padding-left: 14px;
    }
    header .header-main__content {
        gap: 10px 14px;
        padding-right: 12px;
    }
    header .header-main .header-phones {
        display: none;
    }
    header .header-main__nav-search {
        flex-basis: 100%;
        width: 100%;
    }
    header .header-main__actions {
        gap: 10px;
    }
}

@media (max-width: 991px) {
    header .header-main__content {
        display: none !important;
    }
    header .header-main__actions {
        gap: 10px;
        margin-left: auto;
    }
    header .header-search-icon.mobile {
        display: flex !important;
    }
    header .header-search-icon.mobile a {
        display: flex;
        align-items: center;
        padding: 4px;
    }
}

/* Главная: строка поиска сразу под шапкой (мобильная), светлая полоса как на /search/ */
.mk27-search-hero-block {
    padding: 10px 0 10px;
    background: #ffffff;
    border-bottom: 1px solid #e8eaed;
}
.mk27-search-hero-block .mk27-search--hero .mk27-search__form {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}
@media (max-width: 991px) {
    .mk27-search-hero-block {
        margin-top: 0;
        padding: 8px 12px 10px;
    }
}
@media (max-width: 576px) {
    /* Контейнер с 1rem — тянем полосу поиска к краям экрана */
    .mk27-search-hero-block {
        margin-left: -1rem;
        margin-right: -1rem;
        padding-left: 1rem;
        padding-right: 1rem;
        width: calc(100% + 2rem);
        max-width: none;
        box-sizing: border-box;
    }
}

header .header-profile a {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    color: #fff;
    font-size: 14px;
    transition: opacity 0.2s ease;
    text-decoration: none;
}
header .header-profile a:hover {
    opacity: 0.85;
}
header .header-profile a img {
    display: block;
    width: 25px;
    height: 25px;
    max-width: 25px;
    flex-shrink: 0;
    margin-bottom: 3px;
    object-fit: contain;
    filter: drop-shadow(0 0 2px rgba(255, 255, 255, 0.3));
}

@media (max-width: 1200px) {
    header .header-main {
        padding: 16px 15px;
    }
    header .header-main__content {
        gap: 18px;
        padding-right: 14px;
    }
    header .header-main .header-phones {
        flex-basis: 220px;
        max-width: 220px;
    }
}

@media (max-width: 991px) {
    header .logo {
        padding: 16px;
        width: 40%;
        justify-content: space-around;
    }
    header .header-main {
        align-items: center;
        justify-content: flex-end;
        width: 60%;
        padding: 16px 0 16px 20px;
    }
    header .header-main img {
        width: 24px;
        margin: 0 5px;
    }
    header .hamburger {
        margin-left: 0;
    }
    header .header-cart span {
        font-size: 12px;
    }
    header .header-profile a {
        margin-left: 10px;
        font-size: 12px;
        padding: 5px;
    }
    header .header-profile a img {
        width: 20px;
        margin-bottom: 2px;
    }
}

/* MAIN */

main {
    padding-top: 72px !important;
    margin-top: 48px;
}
main.main-index-page {
    display: flex;
}
main .main-block {
    min-height: 600px;
}
main .main-menu {
    width: 20%;
}
.not-index-page .main-menu {
    width: 25%;
    max-width: 450px;
}
main .index-page {
    width: 80%;
}
main .index-page > .container {
    padding: 0;
}

@media (max-width: 991px) {
    main {
        padding-top: 64px !important;
    }
    main.main-index-page {
        margin-top: 0 !important;
    }
    main .main-block {
        width: 100%;
    }
}

/* PAGE */

.page-banner {
    display: flex;
    min-height: 272px;
    background: #333;
    width: calc(100% + 32px);
    position: relative;
    left: -16px;
    align-items: center;
}
.page-banner .page-banner-list {
    padding: 0 30px;
    width: 20%;
    z-index: 2;
}
.page-banner .page-banner-list ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.page-banner .page-banner-list ul li {
    font-family: 'PT Sans', sans-serif;
    font-weight: 800;
    font-size: 24px;
    line-height: 24px;
    text-transform: initial;
    margin-bottom: 12px;
    color: #fff;
}
.page-banner .page-banner-list ul li:before {
    content: '';
    display: inline-block;
    background-color: #ee3831;
    width: 12px;
    height: 12px;
    border-radius: 100%;
    margin-right: 8px;
    vertical-align: middle;
}
.page-banner .page-banner-list ul li:last-child {
    margin-bottom: 0;
}

.page-banner .page-banner-text {
    padding: 15px 40px;
    position: relative;
    width: 60%;
    min-height: 272px;
    display: flex;
    align-items: center;
}

.page-banner .page-banner-text:after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #ee3831;
    transform: skewX(-22deg);
}
.page-banner .page-banner-text h1 {
    color: #fff;
    position: relative;
    z-index: 1;
    text-transform: uppercase;
    margin-bottom: 0;
    font-size: 40px;
    margin-top: 0;
}

.page-banner .page-banner-map {
    width: 20%;
    text-align: center;
}

@media (max-width: 1400px) {
    .page-banner .page-banner-list {
        padding: 0 10px;
    }
}

@media (max-width: 1200px) {
    .page-banner .page-banner-list {
        padding: 0 0 0 20px;
    }
}
@media (max-width: 991px) {
    .page-banner {
        display: block;
    }
    .page-banner .page-banner-list {
        width: 50%;
    }
    .page-banner .page-banner-text:after {
        content: none;
    }
    .page-banner .page-banner-text {
        background: #ee3831;
        width: 100%;
    }
    .page-banner .page-banner-map {
        width: 50%;
    }
    .page-banner .page-banner-mobile {
        display: flex !important;
        align-items: center;
    }
    .page-banner .page-banner-mobile .page-banner-list ul li {
        font-family: 'Roboto';
        font-style: normal;
        font-weight: normal;
        font-size: 18px;
        line-height: 18px;
        margin-bottom: 20px;
    }
    .page-banner .page-banner-mobile .page-banner-list ul li:last-child {
        margin-bottom: 0;
    }
    .page-banner .page-banner-mobile .page-banner-map {
        text-align: right;
    }
    .page-banner .page-banner-mobile .page-banner-map img {
        padding: 15px;
        width: 200px;
    }
    .page-main-block {
        padding: 0;
    }
    .page-banner .page-banner-text h1 {
        font-size: 24px;
    }
    .page-banner,
    .page-banner .page-banner-text {
        min-height: unset;
    }
    header .header-profile a {
        margin-left: 0px;
    }
}
.page-main-block h1 {
    margin: 24px 0 24px 0;
}
.page-main-block h2 {
    margin: 24px 0 24px 0;
}
.page-main-block img {
    padding: 5px;
}
.page-main-block td {
    text-align: center;
}

.page-main-block .text {
    font-size: 16px;
    line-height: 32px;
}

@media (max-width: 991px) {
    .page-main-block {
        padding: 0;
    }
    .page-main-block h1 {
        margin: 24px 0 12px 0;
    }
    .page-main-block h2 {
        margin: 24px 0 12px 0;
    }
}

/* 404 */

.error-404 {
    min-height: 600px;
    padding: 50px 0;
    text-align: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.error-404 h1 {
    font-family: 'PT San';
    font-style: normal;
    font-weight: 800;
    font-size: 64px;
    line-height: 64px;
}
.error-404 h2 {
    font-family: 'PT San';
    font-weight: 800;
    color: #111;
    margin-top: 10px;
    margin-bottom: 50px;
    font-size: 144px;
    line-height: 144px;
}
.error-404 a {
    font-family: 'PT San';
    font-weight: bold;
    font-size: 18px;
    line-height: 18px;
    letter-spacing: 0.06em;
    padding: 16px 32px;
    white-space: nowrap;
    text-align: center;
    text-transform: uppercase;
    -webkit-transition: opacity 0.15s ease-in-out;
    transition: opacity 0.15s ease-in-out;
    color: #fff !important;
    cursor: pointer;
    border: none !important;
    border-radius: 25px;
    background-color: #ee3831 !important;
    opacity: 1;
    outline: none !important;
}
.error-404 a:hover {
    opacity: 0.8;
}

/* COOKIES */

.cookies_accept {
    position: fixed;
    bottom: 0;
    width: 100%;
    justify-content: center;
    align-items: center;
    font-size: 12px;
    background: rgba(71, 85, 96, 0.7);
    color: #fff;
    display: none;
    z-index: 1;
}
.cookies_accept.active {
    display: flex;
}

.cookies_accept .cookies-block {
    max-width: 800px;
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 15px;
}
.cookies_accept .cookies-block .text {
    width: calc(100% - 130px);
    display: inline-flex;
}
.cookies_accept .cookies-block .cookies-button {
    display: inline-flex;
    background: #ee3831;
    border-radius: 8px;
    color: #fff;
    font-size: 16px;
    justify-content: center;
    align-items: center;
    padding: 5px 30px;
    cursor: pointer;
    transition: 0.15s;
    opacity: 1;
}
.cookies_accept .cookies-block .cookies-button:hover {
    opacity: 0.8;
}

@media (max-width: 576px) {
    .cookies_accept .cookies-block {
        flex-direction: column;
    }
    .cookies_accept .cookies-block .text {
        width: calc(100% - 15px);
        margin-bottom: 15px;
        text-align: center;
    }
}

/* start personal */

.personal .personal-left {
    margin-top: 15px;
}

.bx-authform {
    margin-top: 15px;
}

.bx-authform-input-container input {
    background-color: #fff !important;
    /*border-radius: 0 !important;*/
    padding: 5px 15px !important;
}

.bx-authform-formgroup-container input[type='submit'] {
    display: inline-flex;
    background: #ee3831;
    border-radius: 8px;
    color: #fff;
    font-size: 16px;
    justify-content: center;
    align-items: center;
    padding: 5px 30px;
    transition: 0.15s;
    opacity: 1;
    border: none;
}
.bx-authform-formgroup-container input[type='submit']:hover {
    opacity: 0.8;
    background: #ee3831;
}

.reg-title {
    color: #111;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
    color: #495057;
    font-size: 20px;
    font-weight: bold;
}
.nav-tabs .nav-link {
    color: #495057;
    font-size: 20px;
}
.nav-tabs {
    list-style: none;
    display: flex;
    padding-left: 0px;
}
/* end personal */
.header-profile {
    display: flex;
    position: relative;
    margin-left: 20px;
    align-items: center;
    justify-content: center;
}
.enter-or {
    display: none;
}
.header .header-profile a {
    margin-right: 0;
}
.log-reg-link {
    margin-right: 0;
    text-decoration: none;
    transition: 0.2s all;
}
.log-reg-link:hover {
    text-decoration: underline;
}

@media (max-width: 1200px) {
    .main-slider .slider {
        min-height: 300px;
    }
}
@media (max-width: 991px) {
    header .header-main {
        width: 70%;
        justify-content: space-between;
    }
    .main-slider .slider {
        min-height: 280px;
    }
}
@media (max-width: 768px) {
    .main-slider .slider {
        min-height: 210px;
    }
    footer > .container > .row > div h3 {
        font-size: 26px;
    }
    footer a {
        font-size: 22px;
    }
}
@media (max-width: 576px) {
    header .header-main {
        padding-right: 5px;
    }
    header .header-profile a {
        font-size: 10px;
    }
    .header .header-profile a img {
        width: 15px;
    }
    .log-reg-link {
        margin-left: 0;
    }
    .main-slider .slider {
        min-height: 200px;
    }
}
@media (max-width: 500px) {
    .log-reg-link.head-reg-link {
        display: none;
    }
    .enter-or {
        display: none;
    }
    .main-slider .slider {
        min-height: 180px;
    }
    .owl-dots {
        display: none;
    }
    .owl-prev,
    .owl-next {
        display: none;
    }
}
@media (max-width: 450px) {
    .main-slider .slider {
        min-height: 150px;
    }
}
@media (max-width: 400px) {
    .main-slider .slider {
        min-height: 120px;
    }
}

.header-profile a div {
    margin-top: 2px;
    font-weight: 500;
    font-size: 13px;
    letter-spacing: 0.2px;
}

.employee-detail-card {
    background-color: rgba(26, 26, 26, 0.7);
}

/* Лейбл бренда "Наша марка" */
.our-brand-label {
    display: inline-block;
    background: linear-gradient(135deg, #ee3831 0%, #c72019 100%);
    color: #fff;
    padding: 6px 14px;
    border-radius: 4px;
    font-weight: 700;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 8px rgba(238, 56, 49, 0.3);
    position: relative;
    margin-bottom: 10px;
    animation: pulse-brand 2s ease-in-out infinite;
}

.our-brand-label:before {
    content: '⭐';
    margin-right: 5px;
}

@keyframes pulse-brand {
    0%,
    100% {
        box-shadow: 0 2px 8px rgba(238, 56, 49, 0.3);
    }
    50% {
        box-shadow: 0 4px 16px rgba(238, 56, 49, 0.5);
    }
}

/* Лейбл на карточке товара */
.product-block {
    position: relative;
}

.product-block .product-image {
    position: relative;
}

.product-block .our-brand-label {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 10;
    margin: 0;
}

/* Для каталожных карточек */
.catalog-item {
    position: relative;
}

.catalog-item .our-brand-label {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 10;
    margin: 0;
}

.catalog-item a {
    position: relative;
    display: block;
}

/* Для детальной страницы товара */
.catalog-element .our-brand-label,
.info .our-brand-label {
    margin-bottom: 10px;
    font-size: 14px;
    padding: 8px 16px;
}

/* Текст о скидке под лейблом */
.our-brand-discount-text {
    background: linear-gradient(135deg, #fff5f5 0%, #ffe8e8 100%);
    border-left: 3px solid #ee3831;
    padding: 12px 15px;
    margin-bottom: 20px;
    border-radius: 4px;
    font-size: 14px;
    line-height: 1.5;
    color: #333;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}

@media (max-width: 768px) {
    .our-brand-discount-text {
        font-size: 13px;
        padding: 10px 12px;
        margin-bottom: 15px;
    }
}

@media (max-width: 480px) {
    .our-brand-discount-text {
        font-size: 12px;
        padding: 8px 10px;
    }
}

/* Контейнер цен (розничная + оптовая) */
.prices-container {
    margin: 15px 0;
}

/* Блок розничной цены */
.retail-price-block {
    margin-bottom: 10px;
}

.retail-price-block .price-label {
    font-size: 12px;
    color: #666;
    margin-bottom: 4px;
    font-weight: 500;
}

.retail-price-block .price {
    font-size: 28px;
    font-weight: 700;
    color: #333;
}

/* Блок сравнения с оптовой ценой */
.wholesale-price-compare {
    background: #f8fafc;
    border: 1px solid #ee3831;
    border-radius: 6px;
    padding: 12px 14px;
    margin-bottom: 20px;
    width: 100%;
}

.wholesale-price-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.wholesale-label {
    font-size: 12px;
    font-weight: 600;
    color: #0369a1;
}

.wholesale-price-value {
    font-size: 22px;
    font-weight: 700;
    color: #0c4a6e;
}

.wholesale-price-value .fa-rub {
    font-size: 18px;
}

/* Бейдж с экономией */
.savings-badge {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #fef3c7;
    border: 1px solid #f59e0b;
    border-radius: 4px;
    padding: 8px 10px;
    margin-bottom: 10px;
}

/* Бейдж с отрицательной экономией (оптовая дороже) */
.savings-badge.negative {
    background: #fee2e2;
    border: 1px solid #ef4444;
}

.savings-badge.negative .savings-title,
.savings-badge.negative .savings-amount {
    color: #991b1b;
}

.savings-icon {
    font-size: 18px;
    line-height: 1;
}

.savings-text {
    flex: 1;
}

.savings-title {
    font-size: 10px;
    color: #92400e;
    font-weight: 600;
    margin-bottom: 2px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.savings-amount {
    font-size: 14px;
    font-weight: 700;
    color: #92400e;
}

/* Кнопка регистрации */
.wholesale-cta {
    margin-top: 8px;
}

.btn-register-wholesale {
    display: block;
    background: linear-gradient(135deg, #ee3831 0%, #c72019 100%);
    color: #fff;
    padding: 8px 12px;
    border-radius: 4px;
    text-decoration: none;
    font-size: 12px;
    font-weight: 600;
    text-align: center;
    transition: all 0.2s ease;
}

.btn-register-wholesale:hover {
    background: linear-gradient(135deg, #7c1612 0%, #990b06 100%);
    color: #fff;
    text-decoration: none;
}

/* Адаптивность для блока цен */
@media (max-width: 768px) {
    .retail-price-block .price {
        font-size: 24px;
    }

    .wholesale-price-info {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
    }

    .wholesale-price-value {
        font-size: 20px;
    }

    .savings-amount {
        font-size: 13px;
    }

    .savings-icon {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .retail-price-block .price {
        font-size: 22px;
    }

    .wholesale-price-compare {
        padding: 10px 12px;
    }

    .wholesale-label {
        font-size: 11px;
    }

    .wholesale-price-value {
        font-size: 18px;
    }

    .savings-badge {
        padding: 6px 8px;
        gap: 6px;
    }

    .savings-icon {
        font-size: 14px;
    }

    .savings-amount {
        font-size: 12px;
    }

    .savings-title {
        font-size: 9px;
    }

    .btn-register-wholesale {
        font-size: 11px;
        padding: 7px 10px;
    }
}

/* Общая компоновка для карточек, поиска, слайдеров и detail.
 * Без container queries остаётся безопасная одноколоночная версия. */
.wholesale-price-compare {
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
    container: wholesale-price / inline-size;
}
.wholesale-price-compare__rows {
    display: grid;
    gap: 10px;
}
.wholesale-price-compare__row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 2px;
    min-width: 0;
    font-size: 13px;
    line-height: 1.4;
    color: #334155;
}
.wholesale-price-compare__row + .wholesale-price-compare__row {
    border-top: 1px solid #e2e8f0;
    padding-top: 8px;
}
.wholesale-price-compare__range,
.wholesale-price-compare__meta {
    min-width: 0;
    white-space: normal;
    word-break: normal;
    overflow-wrap: break-word;
}
.wholesale-price-compare__dots { display: none; }
.wholesale-price-compare__value {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0 0.3em;
    min-width: 0;
    font-weight: 700;
    color: #0f172a;
    text-align: left;
    white-space: normal;
    font-variant-numeric: tabular-nums;
}
.wholesale-price-compare__amount { white-space: nowrap; }
.wholesale-price-compare__unit {
    font-size: 0.9em;
    font-weight: 400;
    overflow-wrap: anywhere;
    min-width: 0;
}
.wholesale-price-compare__row--wholesale .wholesale-price-compare__value {
    color: #c62828;
}
.wholesale-price-compare__meta {
    display: grid;
    gap: 3px;
    margin-top: 8px;
    font-size: 11px;
    line-height: 1.45;
    color: #64748b;
}
.wholesale-price-compare__meta-item { min-width: 0; }
.wholesale-price-compare--detail { margin-top: 12px; }
.wholesale-price-compare--compact {
    margin-top: 8px;
    padding: 8px;
    border-radius: 5px;
}
.wholesale-price-compare--compact .wholesale-price-compare__row { font-size: 12px; }
@container wholesale-price (min-width: 22rem) {
    .wholesale-price-compare__row {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        align-items: baseline;
        column-gap: 12px;
    }
    .wholesale-price-compare__value { justify-content: flex-end; text-align: right; }
}

/* Единое представление обычной и акционной цены в карточках каталога. */
.mk27-price {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    max-inline-size: 100%;
    font-variant-numeric: tabular-nums;
}

.mk27-price__old,
.mk27-price__current {
    display: block;
    max-inline-size: 100%;
    white-space: nowrap;
}

.mk27-price__old {
    color: #8b5b5a;
    font-size: 0.68em;
    font-weight: 500;
    line-height: 1.2;
    text-decoration-thickness: 1px;
}

.mk27-price--discount .mk27-price__current {
    color: #ee3831;
    font-weight: 700;
    line-height: 1.15;
}

/* Product novelty badge */
.mk27-product-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    max-width: calc(100% - 16px);
    padding: 6px 10px 5px;
    border: 1px solid #b92f2f;
    border-radius: 999px;
    background: #ee3831;
    box-shadow: 0 3px 10px rgba(121, 23, 20, 0.28);
    color: #fff;
    font-family: Akrobat, Arial, sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
}

.mk27-product-badge--card {
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 3;
    pointer-events: none;
}

.mk27-product-badge-host {
    position: relative;
    display: block;
}

:where(.main-new-products, .main-popular-products, .main-coming-slider, .popular-in-section, .related-accessories, .catalog-products-viewed) .product-image {
    position: relative;
}

.mk27-product-badge--detail {
    position: static;
    margin-bottom: 10px;
}

@media (max-width: 575px) {
    .mk27-product-badge {
        padding: 5px 8px 4px;
        font-size: 11px;
    }

    .mk27-product-badge--card {
        top: 6px;
        left: 6px;
    }
}

@media (forced-colors: active) {
    .mk27-product-badge {
        border-color: CanvasText;
        color: CanvasText;
    }
}


.mk27-main-store-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 56px;
    margin: 16px 0 30px;
    padding: 12px 20px;
    border-radius: 8px;
    background: #ee3831;
    box-shadow: 0 6px 18px rgba(238, 56, 49, 0.2);
    color: #fff;
    text-decoration: none;
    transition: background-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.mk27-main-store-link:hover {
    background: #cf2d27;
    box-shadow: 0 8px 22px rgba(207, 45, 39, 0.28);
    color: #fff;
    transform: translateY(-1px);
}

.mk27-main-store-link:focus-visible {
    outline: 3px solid #475560;
    outline-offset: 3px;
}

.mk27-main-store-link__copy {
    display: flex;
    align-items: baseline;
    gap: 12px;
    min-width: 0;
}

.mk27-main-store-link__title {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
}

.mk27-main-store-link__subtitle {
    padding-left: 12px;
    border-left: 1px solid rgba(255, 255, 255, 0.55);
    font-size: 13px;
    line-height: 1.2;
}

.mk27-main-store-link__arrow {
    flex: 0 0 auto;
    font-size: 24px;
    line-height: 1;
}

@media (max-width: 576px) {
    .mk27-main-store-link {
        min-height: 52px;
        margin: 12px 0 24px;
        padding: 10px 14px;
    }

    .mk27-main-store-link__copy {
        flex-direction: column;
        align-items: flex-start;
        gap: 2px;
    }

    .mk27-main-store-link__title {
        font-size: 16px;
    }

    .mk27-main-store-link__subtitle {
        padding-left: 0;
        border-left: 0;
        font-size: 12px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .mk27-main-store-link {
        transition: none;
    }
}

/* Keep one semantic homepage heading without changing the established hero layout. */
.mk27-home-title {
    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;
}

/* Intrinsic attributes reserve space; retain proportional scaling in these blocks. */
header .logo img,
.page-banner .page-banner-map img {
    height: auto;
}

/* Fit product photographs inside the existing fixed image areas. */
:is(.main-new-products, .main-popular-products, .main-coming-slider, .popular-in-section, .related-accessories, .catalog-products-viewed) .product-block .product-image > a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}
:is(.main-new-products, .main-popular-products, .main-coming-slider, .popular-in-section, .related-accessories, .catalog-products-viewed) .product-block .product-image > a > img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

/* Long legal page headings must fit small screens. */
h1.mk27-legal-title {
    font-size: clamp(26px, 4.2vw, 48px);
    overflow-wrap: anywhere;
}
/* Cookie preferences are rendered with the initial HTML to avoid a late layout shift. */
.cookie-notice {
    position: fixed;
    inset: auto 0 0;
    z-index: 999999;
    color: #fff;
    background: rgba(38, 38, 38, .98);
    box-shadow: 0 -2px 16px rgba(0, 0, 0, .25);
}

.cookie-notice[hidden],
.cookie-notice [hidden] {
    display: none !important;
}

.cookie-notice-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

.cookie-notice-content,
.cookie-notice-buttons,
.cookie-notice-settings {
    display: flex;
    align-items: center;
    gap: 10px;
}

.cookie-notice-content {
    justify-content: space-between;
    align-items: center;
}

.cookie-notice-text {
    flex: 1 1 620px;
    margin: 0;
    font-size: 15px;
    line-height: 1.45;
}

.cookie-notice-text strong {
    display: block;
    margin-bottom: 6px;
    font-size: 18px;
}

.cookie-notice-text p {
    margin: 0 0 4px;
    color: #fff;
    font-size: inherit;
}

.cookie-notice-text ul {
    margin: 0 0 6px;
    padding-left: 20px;
}

.cookie-notice a {
    color: #fff;
    text-decoration: underline;
}

.cookie-notice button {
    min-height: 40px;
    padding: 10px 16px;
    border: 1px solid #bbb;
    border-radius: 4px;
    color: #fff;
    background: transparent;
    cursor: pointer;
    white-space: nowrap;
}

.cookie-notice .cookie-accept-btn,
.cookie-notice .cookie-save-settings-btn {
    border-color: #ee3831;
    background: #ee3831;
}

.cookie-notice-buttons {
    flex: 0 1 430px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.cookie-notice button:focus-visible,
.cookie-notice a:focus-visible {
    outline: 3px solid #fff !important;
    outline-offset: 2px !important;
}

.cookie-notice-title {
    margin: 0 10px 0 0;
    font-size: 18px;
}

.cookie-option {
    margin: 0;
    white-space: nowrap;
}

@media (max-width: 767px) {
    .cookie-notice-content,
    .cookie-notice-settings {
        align-items: stretch;
        flex-direction: column;
    }

    .cookie-notice-buttons {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
        flex-basis: auto;
    }

    .cookie-notice .cookie-accept-btn {
        grid-column: 1 / -1;
    }
}

/* Lightweight fallback for navigation arrows on the homepage without Font Awesome. */
.fa-angle-right::before { content: '›'; }
.fa-angle-left::before { content: '‹'; }
.fa-angle-down::before { content: '⌄'; }
.fa-angle-up::before { content: '⌃'; }
.fa-angle-right,
.fa-angle-left,
.fa-angle-down,
.fa-angle-up {
    font-family: Arial, sans-serif;
    font-style: normal;
}

/* Shared article copy control on product details and product lists. */
.mk27-article-copy {
    position: relative;
    display: inline-block;
    max-width: 100%;
    color: var(--mk-muted, #475560);
    font-size: .8125rem;
    line-height: 1.35;
}
.mk27-article-copy .mk27-article-copy__button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    max-width: 100%;
    min-height: 28px;
    padding: 2px 4px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: start;
    overflow-wrap: anywhere;
    cursor: pointer;
}
.mk27-article-copy__value {
    color: var(--mk-ink, #202b33);
    font-variant-numeric: tabular-nums;
    user-select: text;
    -webkit-user-select: text;
}
.mk27-article-copy__button:hover, .mk27-article-copy__button:focus-visible {
    background: var(--mk-surface, #f4f6f7);
}
.mk27-article-copy__button:focus-visible {
    outline: 2px solid var(--mk-accent, #bd2923);
    outline-offset: 2px;
}
.mk27-article-copy__icon {
    position: relative;
    flex: 0 0 14px;
    height: 14px;
}
.mk27-article-copy__icon::before, .mk27-article-copy__icon::after {
    content: '';
    position: absolute;
    width: 8px;
    height: 9px;
    border: 1px solid currentColor;
    border-radius: 2px;
}
.mk27-article-copy__icon::before { inset: 0 auto auto 1px; }
.mk27-article-copy__icon::after { inset: 3px auto auto 4px; background: #fff; }
.mk27-article-copy__button[data-copied] .mk27-article-copy__icon::before { content: none; }
.mk27-article-copy__button[data-copied] .mk27-article-copy__icon::after {
    inset: 2px auto auto 4px;
    width: 5px;
    height: 9px;
    border: solid #1d643b;
    border-width: 0 2px 2px 0;
    border-radius: 0;
    background: transparent;
    transform: rotate(45deg);
}
.mk27-article-copy__status {
    position: absolute;
    z-index: 2;
    inset: auto auto 100% 0;
    width: max-content;
    max-width: 100%;
    padding: 4px 6px;
    border-radius: 6px;
    background: var(--mk-ink, #202b33);
    color: #fff;
    overflow-wrap: anywhere;
    pointer-events: none;
}
.mk27-article-copy__status:empty { opacity: 0; }
@media (pointer: coarse) {
    .mk27-article-copy .mk27-article-copy__button { min-height: 44px; }
}

/* End */


/* Start:/local/templates/mk-27-new/components/bitrix/news.list/header_phones/style.css?17421814011303*/
.phones-list {
}
.phones-list .phones-dropdown {
}
.phones-list .phones-dropdown:after {
    content: url(/local/templates/mk-27-new/assets/images/drop-arrow-white.svg);
    margin-left: 4px;
    margin-top: -2px;
}
.phones-list .phones-dropdown a {
    color: #fff;
    font-family: 'Akrobat', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 24px;
}
.phones-list .phones-dropdown .phones-dropdown-menu {
    position: absolute;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.15s ease-in-out;
    background-color: #fff;
    box-shadow: 0px 4px 32px rgb(0 0 0 / 16%);
    border-radius: 4px;
    overflow: hidden;
    margin-top: -44px;
    margin-left: -16px;
    z-index: 2;
}

.phones-list .phones-dropdown:hover .phones-dropdown-menu {
    opacity: 1;
    pointer-events: all;
}
.phones-list .phones-dropdown .phones-dropdown-menu a {
    display: block;
    padding: 16px;
    background-color: #fff;
    white-space: nowrap;
    color: #111;
}
.phones-list .phones-dropdown .phones-dropdown-menu a:hover {
    background-color: rgba(238, 56, 49, 0.05);
    color: #ee3831;
}
.phones-list .phones-dropdown .phones-dropdown-menu a:first-child:after {
    content: url(/local/templates/mk-27-new/assets/images/drop-arrow-red.svg);
    margin-left: 9px;
}

/* End */


/* Start:/local/templates/mk-27-new/components/bitrix/menu/header_menu/style.css?17741041502794*/
/**Top menu**/
#horizontal-multilevel-menu,
#horizontal-multilevel-menu ul {
    margin: 0;
    padding: 0;
    width: 100%;
    list-style: none;
}

/*Links*/
#horizontal-multilevel-menu a,
#horizontal-multilevel-menu p {
    display: block;
    padding: 5px 10px;
    text-decoration: none;
    text-align: center;
    color: #fff;
    font-size: 14px;
    line-height: 20px;
    cursor: pointer;
}
#horizontal-multilevel-menu p:after {
    content: url(/local/templates/mk-27-new/assets/images/drop-arrow-white.svg);
    vertical-align: middle;
    margin-left: 4px;
    display: inline-block;
    width: 8px;
    position: relative;
    top: 1px;
}
#horizontal-multilevel-menu a:hover {
    color: rgba(255, 255, 255, 0.5);
}
#horizontal-multilevel-menu p:hover {
    opacity: 0.5;
}
#horizontal-multilevel-menu li ul:hover #horizontal-multilevel-menu p {
    color: rgba(255, 255, 255, 0.5);
}

#horizontal-multilevel-menu li {
    float: left;
}

#horizontal-multilevel-menu > li {
    position: relative;
}

/*Sub-menu box*/
#horizontal-multilevel-menu li ul {
    position: absolute;
    top: auto;
    opacity: 0;
    height: auto;
    width: 144px;
    background: #f5f5f5;
    transition: opacity 0.15s ease-in-out;
    background-color: #fff;
    box-shadow: 0px 4px 32px rgb(0 0 0 / 16%);
    border-radius: 4px;
    overflow: hidden;
    margin-left: -15px;
    z-index: 2;
    pointer-events: none;
}
#horizontal-multilevel-menu li ul a {
    color: #111;
    min-width: 144px;
    padding: 10px 16px;
    text-align: left;
}
#horizontal-multilevel-menu li ul a:hover {
    background-color: rgba(238, 56, 49, 0.05);
    color: #ee3831;
}

#horizontal-multilevel-menu > li:hover ul,
#horizontal-multilevel-menu > li.jshover ul {
    opacity: 1;
    pointer-events: all;
}

#horizontal-multilevel-menu li:hover p {
    opacity: 0.5;
}

@media (max-width: 1200px) {
    #horizontal-multilevel-menu a,
    #horizontal-multilevel-menu p {
        padding: 5px;
    }
}

@media (max-width: 1399px) and (min-width: 992px) {
    #horizontal-multilevel-menu {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-start;
        gap: 2px 0;
    }
    #horizontal-multilevel-menu li {
        float: none;
    }
    #horizontal-multilevel-menu a,
    #horizontal-multilevel-menu p {
        padding: 4px 8px;
        font-size: 13px;
        line-height: 18px;
        text-align: left;
        white-space: nowrap;
    }
    #horizontal-multilevel-menu li ul {
        top: calc(100% + 6px);
        margin-left: 0;
    }
}

@media (max-width: 1120px) and (min-width: 992px) {
    #horizontal-multilevel-menu a,
    #horizontal-multilevel-menu p {
        padding: 3px 6px;
        font-size: 12px;
        line-height: 17px;
    }
}

/* End */


/* Start:/local/templates/mk-27-new/components/bitrix/search.title/mk27_spotlight/style.css?177410415013371*/
/* mk27_spotlight — поиск в фирменной палитре Метиз Комплект (#475560 / #ee3831) */

.mk27-search {
	/* Фон как у шапки, акцент — фирменный красный */
	--mk27-s-bg: rgba(61, 68, 76, 0.85);
	--mk27-s-surface: #3d4754;
	--mk27-s-border: rgba(255, 255, 255, 0.14);
	--mk27-s-accent: #ee3831;
	--mk27-s-accent-soft: rgba(238, 56, 49, 0.25);
	--mk27-s-text: #f5f6f8;
	--mk27-s-muted: rgba(255, 255, 255, 0.65);
	--mk27-s-font: "Manrope", "PT Sans", system-ui, sans-serif;
	--mk27-s-mono: "JetBrains Mono", ui-monospace, monospace;
	font-family: var(--mk27-s-font);
	position: relative;
	/* Ниже окна выбора города (см. template_styles header .header-city) */
	z-index: 1;
}

@media (prefers-color-scheme: light) {
	.mk27-search {
		--mk27-s-bg: rgba(255, 255, 255, 0.92);
		--mk27-s-surface: #fff;
		--mk27-s-border: rgba(71, 85, 96, 0.2);
		--mk27-s-text: #2a3038;
		--mk27-s-muted: #5c636b;
	}
}

.mk27-search--header .mk27-search__form {
	width: 100%;
	max-width: 100%;
	min-height: 48px;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.98);
	border: 1px solid rgba(238, 56, 49, 0.18);
	box-shadow:
		0 10px 24px rgba(8, 16, 24, 0.12),
		0 1px 0 rgba(255, 255, 255, 0.8) inset;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

.mk27-search--header .mk27-search__input {
	font-size: 15px;
	padding: 12px 16px 12px 18px;
	color: #20262d;
}

.mk27-search--header {
	width: 100%;
	max-width: 780px;
}

@media (max-width: 1399px) and (min-width: 992px) {
	.mk27-search--header {
		max-width: none;
	}

	.mk27-search--header .mk27-search__form {
		min-height: 44px;
	}

	.mk27-search--header .mk27-search__input {
		font-size: 14px;
		padding: 10px 14px 10px 16px;
	}

	.mk27-search--header .mk27-search__submit {
		width: 48px;
	}
}

@media (max-width: 1120px) and (min-width: 992px) {
	.mk27-search--header .mk27-search__input::placeholder {
		font-size: 13px;
	}
}

.mk27-search--header .mk27-search__input::placeholder {
	color: #7f8891;
}

.mk27-search--header .mk27-search__submit {
	width: 52px;
	border-radius: 0 14px 14px 0;
	background: linear-gradient(180deg, #ee3831, #d92d26);
	color: #fff;
}

.mk27-search__form {
	display: flex;
	align-items: stretch;
	gap: 0;
	min-height: 40px;
	border-radius: 4px;
	background: var(--mk27-s-bg);
	border: 1px solid var(--mk27-s-border);
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.06) inset,
		0 8px 24px rgba(0, 0, 0, 0.18);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease,
		max-width 0.25s ease;
	max-width: 230px;
}

.mk27-search:focus-within .mk27-search__form,
.mk27-search.mk27-search--open .mk27-search__form {
	border-color: rgba(238, 56, 49, 0.55);
	box-shadow:
		0 0 0 1px var(--mk27-s-accent-soft),
		0 10px 28px rgba(238, 56, 49, 0.12);
	max-width: min(520px, 62vw);
}

.mk27-search--hero .mk27-search__form {
	max-width: 100%;
}

.mk27-search--header:focus-within .mk27-search__form,
.mk27-search--header.mk27-search--open .mk27-search__form {
	max-width: 100%;
	border-color: rgba(238, 56, 49, 0.4);
	box-shadow:
		0 0 0 4px rgba(238, 56, 49, 0.12),
		0 18px 34px rgba(8, 16, 24, 0.16);
}

.mk27-search--hero:focus-within .mk27-search__form {
	max-width: 100%;
}

.mk27-search__label {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.mk27-search__input {
	flex: 1;
	min-width: 0;
	border: none;
	background: transparent;
	color: var(--mk27-s-text);
	font-size: 16px;
	font-family: inherit;
	padding: 10px 12px 10px 14px;
	outline: none;
}

.mk27-search__input::placeholder {
	color: var(--mk27-s-muted);
}

.mk27-search__submit {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	border: none;
	background: rgba(238, 56, 49, 0.12);
	color: var(--mk27-s-accent);
	cursor: pointer;
	transition:
		color 0.15s ease,
		background 0.15s ease;
	border-radius: 0 4px 4px 0;
}

.mk27-search__submit:hover,
.mk27-search__submit:focus-visible {
	background: rgba(238, 56, 49, 0.22);
	color: #fff;
	outline: none;
}

.mk27-search__submit-icon {
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Выпадающий список — ниже слоя шапки (z-index шапки в template_styles) */
div.title-search-result {
	z-index: 99 !important;
	border: 1px solid rgba(71, 85, 96, 0.12);
	border-radius: 20px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 248, 250, 0.98));
	box-shadow:
		0 32px 60px rgba(20, 27, 34, 0.24),
		0 8px 18px rgba(20, 27, 34, 0.08);
	overflow: hidden;
	font-family: var(--mk27-s-font, "Manrope", sans-serif);
}

.mk27-title-search-inner {
	max-height: min(72vh, 640px);
	overflow: auto;
	padding: 14px;
	background:
		radial-gradient(circle at top right, rgba(238, 56, 49, 0.08), transparent 28%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(245, 246, 248, 0.96));
}

.mk27-title-search-inner::-webkit-scrollbar {
	width: 10px;
}

.mk27-title-search-inner::-webkit-scrollbar-thumb {
	background: rgba(71, 85, 96, 0.18);
	border-radius: 999px;
	border: 2px solid rgba(255, 255, 255, 0.7);
}

.mk27-title-search-dropdown {
	display: grid;
	gap: 12px;
}

.mk27-title-search-group {
	padding: 16px;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(71, 85, 96, 0.08);
	box-shadow: 0 10px 24px rgba(19, 27, 34, 0.06);
}

.mk27-title-search-group__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 12px;
}

.mk27-title-search-group__eyebrow {
	font-size: 11px;
	line-height: 1;
	padding: 7px 10px;
	border-radius: 999px;
	background: rgba(71, 85, 96, 0.08);
	color: #475560;
	font-family: var(--mk27-s-mono, monospace);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.mk27-title-search-group__meta {
	font-size: 12px;
	color: #7a828a;
}

@keyframes mk27SearchStagger {
	from {
		opacity: 0;
		transform: translateY(4px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.mk27-title-search-products {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}

.mk27-title-search-card {
	display: grid;
	grid-template-columns: 84px minmax(0, 1fr);
	gap: 12px;
	align-items: start;
	text-decoration: none;
	color: #20262d;
	padding: 12px;
	border-radius: 14px;
	background: linear-gradient(180deg, #ffffff, #fafafb);
	border: 1px solid rgba(71, 85, 96, 0.08);
	box-shadow: 0 6px 20px rgba(20, 27, 34, 0.05);
	transition:
		transform 0.18s ease,
		box-shadow 0.18s ease,
		border-color 0.18s ease,
		background 0.18s ease;
	animation: mk27SearchStagger 0.24s ease backwards;
}

.mk27-title-search-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(20, 27, 34, 0.1);
	border-color: rgba(238, 56, 49, 0.22);
	background: linear-gradient(180deg, #ffffff, #fff5f4);
}

.mk27-title-search-card__media {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 84px;
	border-radius: 12px;
	background: linear-gradient(180deg, #f8f9fb, #eff2f5);
	border: 1px solid rgba(71, 85, 96, 0.08);
	overflow: hidden;
}

.mk27-title-search-card__media img {
	width: 100%;
	height: 100%;
	max-width: 72px;
	max-height: 72px;
	object-fit: contain;
}

.mk27-title-search-card__media-placeholder {
	width: 34px;
	height: 34px;
	border-radius: 12px;
	background:
		linear-gradient(135deg, rgba(71, 85, 96, 0.12), rgba(238, 56, 49, 0.12));
}

.mk27-title-search-card__body {
	display: grid;
	gap: 6px;
	min-width: 0;
}

.mk27-title-search-card__title {
	font-size: 15px;
	line-height: 1.35;
	font-weight: 700;
	color: #20262d;
}

.mk27-title-search-card__desc {
	font-size: 12px;
	line-height: 1.45;
	color: #6f7780;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.mk27-title-search-card__price-row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-top: 4px;
	padding-top: 8px;
	border-top: 1px solid rgba(71, 85, 96, 0.08);
}

.mk27-title-search-card__price-label {
	font-size: 11px;
	line-height: 1.3;
	color: #8b939b;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.mk27-title-search-card__price-value {
	display: inline-flex;
	align-items: baseline;
	gap: 8px;
	font-family: var(--mk27-s-mono, monospace);
	font-size: 13px;
	color: #20262d;
}

.mk27-title-search-card__price-value s {
	color: #9aa2aa;
}

.mk27-title-search-card__price-value strong {
	font-size: 15px;
	color: #ee3831;
	font-weight: 800;
}

.mk27-title-search-links {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.mk27-title-search-link {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border-radius: 12px;
	background: #f6f7f9;
	border: 1px solid rgba(71, 85, 96, 0.08);
	text-decoration: none;
	color: #3c4955;
	font-size: 13px;
	line-height: 1.35;
}

.mk27-title-search-link:hover {
	color: #ee3831;
	border-color: rgba(238, 56, 49, 0.2);
	background: #fff7f6;
}

.mk27-title-search-link__icon {
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: #ee3831;
	box-shadow: 0 0 0 6px rgba(238, 56, 49, 0.12);
	flex-shrink: 0;
}

.mk27-title-search-more {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 14px;
	border-radius: 14px;
	background: linear-gradient(90deg, #475560, #566674);
	color: #ffffff;
	text-decoration: none;
	font-weight: 700;
	box-shadow: 0 10px 22px rgba(71, 85, 96, 0.2);
}

.mk27-title-search-more:hover {
	color: #ffffff;
}

.mk27-title-search-more__arrow {
	font-size: 18px;
	line-height: 1;
	color: #ffb5b1;
}

div.title-search-fader {
	background: linear-gradient(90deg, transparent, rgba(247, 248, 250, 0.96)) !important;
}

@media (min-width: 992px) {
	div.title-search-result {
		right: auto !important;
		width: min(780px, calc(100vw - 220px)) !important;
		max-width: min(780px, calc(100vw - 220px)) !important;
		min-width: 640px !important;
	}

	.mk27-title-search-inner {
		padding: 16px;
	}

	.mk27-title-search-group {
		border-radius: 20px;
	}

	.mk27-title-search-card {
		grid-template-columns: 104px minmax(0, 1fr);
		gap: 16px;
		padding: 16px;
	}

	.mk27-title-search-card__media {
		min-height: 104px;
	}

	.mk27-title-search-card__media img {
		max-width: 86px;
		max-height: 86px;
	}

	.mk27-title-search-card__body {
		gap: 7px;
	}

	.mk27-title-search-card__title {
		font-size: 17px;
		line-height: 1.3;
	}

	.mk27-title-search-card__desc {
		font-size: 13px;
		-webkit-line-clamp: 2;
	}

	.mk27-title-search-links {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* Герой на главной: базовые размеры (отступы полосы — в template_styles) */
.mk27-search--hero .mk27-search__form {
	min-height: 48px;
	border-radius: 8px;
}

.mk27-search--hero .mk27-search__input {
	font-size: 16px;
	padding: 12px 14px;
}

@media (max-width: 991px) {
	/* Светлая «витринная» строка поиска на главной — как /search/, без тёмного стекла */
	.mk27-search--hero {
		--mk27-s-bg: #f5f6f8;
		--mk27-s-surface: #ffffff;
		--mk27-s-border: #e5e8eb;
		--mk27-s-text: #333333;
		--mk27-s-muted: #888888;
		--mk27-s-accent: #ee3831;
		--mk27-s-accent-soft: rgba(238, 56, 49, 0.2);
	}

	.mk27-search--hero .mk27-search__form {
		max-width: 100%;
		background: #f5f6f8;
		border: 1px solid #e5e8eb;
		box-shadow: none;
		backdrop-filter: none;
		-webkit-backdrop-filter: none;
		min-height: 46px;
	}

	.mk27-search--hero:focus-within .mk27-search__form,
	.mk27-search--hero.mk27-search--open .mk27-search__form {
		border-color: rgba(238, 56, 49, 0.45);
		box-shadow: 0 0 0 3px rgba(238, 56, 49, 0.1);
	}

	.mk27-search--hero .mk27-search__submit {
		background: #ee3831;
		color: #ffffff;
		border-radius: 0 7px 7px 0;
	}

	.mk27-search--hero .mk27-search__submit:hover,
	.mk27-search--hero .mk27-search__submit:focus-visible {
		background: #d32d26;
		color: #ffffff;
	}

	.mk27-search--header .mk27-search__form {
		max-width: 100%;
	}

	.mk27-search--header:focus-within .mk27-search__form {
		max-width: 100%;
	}

	div.title-search-result {
		left: 8px !important;
		right: 8px !important;
		width: calc(100vw - 16px) !important;
		max-width: none !important;
		border-radius: 18px !important;
		background: #ffffff !important;
		border: 1px solid #e5e8eb !important;
		box-shadow: 0 14px 38px rgba(0, 0, 0, 0.12) !important;
	}

	.mk27-title-search-inner {
		padding: 10px;
	}

	.mk27-title-search-group {
		padding: 10px;
		border-radius: 14px;
	}

	.mk27-title-search-products,
	.mk27-title-search-links {
		grid-template-columns: 1fr;
	}

	.mk27-title-search-card {
		grid-template-columns: 64px minmax(0, 1fr);
		padding: 10px;
		border-radius: 12px;
	}

	.mk27-title-search-card__media {
		min-height: 64px;
	}

	.mk27-title-search-card__media img {
		max-width: 54px;
		max-height: 54px;
	}

	.mk27-title-search-card__title {
		font-size: 13px;
	}

	.mk27-title-search-card__desc {
		font-size: 11px;
	}

	.mk27-title-search-card__price-row {
		align-items: flex-start;
		flex-direction: column;
		gap: 2px;
	}

	.mk27-title-search-card__price-value strong {
		font-size: 14px;
	}
}

/* End */


/* Start:/local/templates/mk-27-new/components/bitrix/sale.basket.basket.line/header_cart/style.css?17421814015249*/
.header-cart a {
	color: #fff;
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    line-height: 24px;
    font-weight: 400;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}
.header-cart a:hover {
	color: #fff;
	opacity: 0.5;
}
.header-cart a img {
	margin-right: 5px;
}
.bx-basket-block {
	position: relative;
	padding-bottom: 5px;
	padding-left: 20px;
	white-space: nowrap;
	font-size: 12px;
}

.bx-basket-block > .fa {
	position: absolute;
	top: 3px;
	left: 0;
	width: 12px;
	color: #97a1ab;
}

.bx-basket-block a { margin-right: 10px; }

/*FIXED BASKET*/

@media (min-width: 768px) {
	.bx-basket-fixed {
		position: fixed;
		z-index: 998;
		overflow: hidden;
		padding-top: 10px;
		width: 200px;
		border: 1px solid #f0f0f0;
		border-radius: 1px;
		background: #fff;
		box-shadow: 0 7px 10px rgba(0, 0, 0, 0.15);
	}

	.bx-basket-fixed.top { top: 10px }

	.bx-basket-fixed.right { right: 10px }

	.bx-basket-fixed.bottom { bottom: 10px }

	.bx-basket-fixed.left { left: 10px }

	.bx-basket-fixed.bx-max-height { top: 10px; bottom: 10px; }
}

@media (max-width: 767px) {
	.bx-basket-fixed {
		position: fixed;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 998;
		overflow: hidden;
		padding-top: 10px;
		border: 1px solid #f0f0f0;
		border-radius: 1px;
		background: #fff;
		box-shadow: 0 7px 10px rgba(0, 0, 0, 0.15);
	}

	.bx-basket-item-list { display: none; }

	/*.bx-basket-fixed */
}

.bx-basket-fixed .bx-basket-block { margin-left: 10px; }

.bx-basket-item-list {
	position: relative;
	overflow: hidden;
	padding-bottom: 20px;
	border-top: 1px solid #f7f7f7;
}

.bx-opener .bx-basket-item-list { padding-bottom: 75px; }

.bx-max-height .bx-basket-item-list {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
}

.bx-closed .bx-basket-item-list {
	overflow: hidden;
	height: 20px;
}

.bx-basket-item-list-action {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 120;
	padding: 3px 0;
	height: 20px;
	background: #f7f7f7;
	color: #4f4f4f;
	vertical-align: middle;
	text-align: center;
	font-size: 12px;
	line-height: 14px;
	cursor: pointer;
}

.bx-basket-item-list-button-container {
	position: absolute;
	right: 0;
	bottom: 20px;
	left: 0;
	padding: 10px 0;
	border-top: 1px solid #f7f7f7;
	background: #fff;
	text-align: center;
}

.bx-basket-item-list-container {
	overflow-y: auto;
	max-height: 100%
}

.bx-basket-item-list-item {
	position: relative;
	margin-bottom: 15px;
	padding-top: 15px;
	padding-right: 10px;
	padding-left: 10px;
	border-bottom: 1px solid #f7f7f7;
}

.bx-basket-item-list-container .bx-basket-item-list-item:last-child {
	margin-bottom: 0;
	border-bottom: none;
}

.bx-basket-item-list-item-status {
	margin: 0 10px 20px;
	padding: 3px;
	border-radius: 3px;
	background: #ebebeb;
	text-align: center;
	white-space: normal;
	font-weight: bold;
	font-size: 12px;
	line-height: 16px;
}

.bx-basket-item-list-item-img {
	position: relative;
	padding-bottom: 5px;
	text-align: center;
}

.bx-basket-item-list-item-img img {
	max-width: 90px;
	height: auto;
	border: 1px solid #e6e6e6;
}

.bx-basket-item-list-item-name { padding-bottom: 5px; }

.bx-basket-item-list-item-name a {
	font-size: 13px;
	line-height: 16px;
}

.bx-basket-item-list-item-remove {
	position: absolute;
	top: -7px;
	right: 10px;
	width: 20px;
	height: 20px;
	opacity: .5;
	cursor: pointer;
	transition: 250ms linear all;
}

.bx-basket-item-list-item-remove:after,
.bx-basket-item-list-item-remove:before {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 10px;
	height: 2px;
	border-radius: 1px;
	background-color: #333;
	content: '';
	transform: translate(-50%, -50%);
}

.bx-basket-item-list-item-remove:after {
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	-moz-transform: translate(-50%, -50%) rotate(45deg);
	-ms-transform: translate(-50%, -50%) rotate(45deg);
	-o-transform: translate(-50%, -50%) rotate(45deg);
	transform: translate(-50%, -50%) rotate(45deg);
}

.bx-basket-item-list-item-remove:before {
	-webkit-transform: translate(-50%, -50%) rotate(135deg);
	-moz-transform: translate(-50%, -50%) rotate(135deg);
	-ms-transform: translate(-50%, -50%) rotate(135deg);
	-o-transform: translate(-50%, -50%) rotate(135deg);
	transform: translate(-50%, -50%) rotate(135deg);
}

.bx-basket-item-list-item-remove:hover { opacity: .7; }

.bx-basket-item-list-item-price-block {
	padding-bottom: 5px;
	font-size: 12px;
}

.bx-basket-item-list-item-price {
	display: inline-block;
	margin-right: 5px;
}

.bx-basket-item-list-item-price-old {
	display: inline-block;
	margin-right: 5px;
	color: #b0b0b0;
	text-decoration: line-through
}

.bx_cart_login_top .bx-hdr-profile { line-height: 1.44em; }

.cart-cont {
	position: absolute;
    min-width: 20px;
    height: 20px;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 1px;
    background: #EE3831;
    opacity: 0.8;
    margin-left: 20px;
    margin-top: -40px;
    font-size: 13px;
	border-radius: 20px;
    padding: 0 5px;
}

.bx-basket .fa-shopping-cart:before {
	color: #fff;
	font-size: 16px;
}

@media (max-width: 576px) {
	.header-cart a span {
		display: none;
	}
	.cart-cont {
		margin-top: -30px;
	}
}
/* End */


/* Start:/local/templates/mk-27-new/components/bitrix/menu/main_catalog_menu_mobile/style.css?17895487726972*/
.main-catalog-menu-block-mobile {
	background: #fff;
	border-radius: 0;
    overflow: hidden;
    margin-bottom: 0;
    z-index: 3;
}
ul.main-catalog-menu-mobile {
	padding-left: 0;
}
.main-catalog-menu-mobile li:hover ul {
	display:block;
}

ul.main-catalog-menu,
.main-catalog-menu-mobile ul {
	margin: 0;
	padding-inline-start: 0;
}
.main-catalog-menu-mobile li {
	display: block;
	background: #fff;
}

.main-catalog-menu-mobile a {
    display: flex;
    align-items: center;
    background-color: #fff;
    min-height: 64px;
	cursor: pointer;
}
.main-catalog-menu-mobile .level-2-block a {
	min-height: 40px;
	justify-content: space-between;
}

.main-menu-mobile-catalog .level-2-block .back {
	margin-bottom: 15px;
}

.main-catalog-menu-mobile .parent a i {
	margin-left: auto;
	font-size: 20px;
	padding-left: 10px;
}

.main-index-page .main-catalog-menu-mobile a {
	padding: 0 10px;
}

.main-catalog-menu-mobile a > img {
	margin-right: 10px;
    width: 24px;
    height: 24px;
}
.main-catalog-menu-mobile a > span {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
	font-size: 14px;
    line-height: 20px;
}

ul.main-catalog-menu-mobile > li.parent {
	background-repeat: no-repeat;
	background-position-y: 23px;
    background-position-x: 230px;
}
ul.main-catalog-menu-mobile > li.parent > ul > li a {
	background: none;
	border-bottom: none;
}
.main-catalog-menu-mobile ul.level3 {
	width: 100% !important;
}
.main-catalog-menu-mobile ul.level3,
.main-catalog-menu-mobile ul.level3 li {
	display: inline-block !important;
	border: none;
    width: calc(33.333333333% - 15px);
}
.main-catalog-menu-mobile ul.level3 li a {
	font-weight: 400;
	font-size: 13px; 
	padding: 0 0 15px 15px;
}
.drop-down-menu {
	display: none;
}
.drop-down-menu .main-catalog-menu-block-mobile {
    position: absolute;
    z-index: 304;
    overflow: inherit;
    padding-top: 5px;
    border-radius: 0 0 8px 8px;
	top: -15px;
	box-shadow: 0 6px 12px 0 rgba(0,0,0,0.16);
}
.drop-down-menu ul.main-catalog-menu,
.drop-down-menu .main-catalog-menu-mobile ul {
	border-radius: 8px;
	overflow: hidden;
}
.drop-down-menu ul.main-catalog-menu-mobile > li.parent {
    background-position-x: 240px;
    background-position-y: center;
}
.drop-down-menu .main-catalog-menu-mobile a {
	width: 265px;
}

.main-catalog-menu-mobile .count {
	color: #9c9ca9;
	font-size: 12px;
	display: inline;
	padding-left: 5px;
	min-width: 30px;
}

.level-2-block {
	width: 100%;
    height: calc(100vh - 64px);
    top: 64px;
    position: fixed;
    background: #eee;
    left: -100vw;
    transition: 0.3s;
    z-index: 4;
}
.level-2-block.active {
	left: 0; 
}
.level-2-block .root-item {
	background: #fff;
    margin: 0 auto;
    height: 100%;
    max-width: 720px;
    padding: 0 30px 50px;
    overflow-y: auto;
    z-index: 5;
    cursor: pointer;
}

@media (max-width: 1400px) {
	.main-catalog-menu-mobile ul.root-item {
		
	}
}

@media (max-width: 1200px) {
	ul.main-catalog-menu-mobile > li.parent {
		background-position-x: 190px;
	}
	.drop-down-menu .main-catalog-menu-block-mobile {
		width: 225px;
	}
	.drop-down-menu ul.main-catalog-menu-mobile > li.parent {
	    background-position-x: 205px;
	}
}

@media (max-width: 991px) {
	.drop-down-menu {
		display: none !important;
	}
	.categories {
		padding: 0;
	}
	ul.main-catalog-menu-mobile > li.parent {
	    background-position-x: 97.5%;
	}

	.main-catalog-menu-mobile ul.level3, .main-catalog-menu-mobile ul.level3 li {
		display: none !important;
	}

	.main-catalog-menu-mobile li {
	    background: initial;
	}
	ul.main-catalog-menu-mobile > li.active {
	}
	ul.main-catalog-menu-mobile > li.parent > ul > li {
		background-position-x: 97.5%;
		background-position-y: center;
		background-repeat: no-repeat;
	}
	ul.main-catalog-menu-mobile > li.parent > ul > li a {
	    padding-left: 30px;
	    padding-right: 30px;
	}
	ul.main-catalog-menu-mobile > li.parent > ul > li {
		background-position-x: 95%;
	}
}

@media (max-width: 768px) {
	.categories {
		padding: 0 15px;
	}
}


@media (max-width: 567px) {
	ul.main-catalog-menu-mobile > li.parent {
		background-position-x: 95%;
	}
}



/* NOT INDEX PAGE */

.not-index-page .main-catalog-menu-mobile a > img {
	margin-right: 20px;
}

.not-index-page .main-menu {
	display: none;
	position: fixed;
	z-index: 3;
	padding: 0;
	margin-left: -4px;
}
.not-index-page .main-catalog-menu-mobile {
	padding: 0;
}


.main-menu-mobile-block {
	width: 100%;
	height: calc(100vh - 64px);
	top: 64px;
	position: fixed;
	background: #eee;
	left: -100vw;
	transition: 0.3s;
	/* Выше карточек и их бейджей, но ниже фиксированной шапки (100). */
	z-index: 90;
}
.main-menu-mobile-block.active {
	left: 0;
}

.main-menu-mobile {
	background: #fff;
	margin: 0 auto;
	height: 100%;
	max-width: 720px;
	padding: 0 30px 50px;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
}
.main-menu-mobile .catalog {
	display: flex;
	justify-content: space-between;
	cursor: pointer;
	padding: 15px 0;
	border-bottom: 1px #ccc solid;
}
.main-menu-mobile .catalog h3 {
	display: inline-block;
	margin: 0;
}
.main-menu-mobile .catalog i {
	display: inline-block;
	font-size: 24px;
	line-height: 1.2;
}

.main-menu-mobile .main-menu-mobile-section {
	padding-top: 15px;
}

.main-menu-mobile .main-menu-mobile-section h3 {
	margin-bottom: 15px;
}


.main-menu-mobile-catalog {
	width: 100%;
	height: calc(100vh - 64px);
	top: 64px;
	position: fixed;
	background: #eee;
	left: -100vw;
	transition: 0.3s;
	/* Выше карточек и их бейджей, но ниже фиксированной шапки (100). */
	z-index: 90;
}
.main-menu-mobile-catalog.active {
	left: 0;
}

.main-menu-mobile-catalog .catalog-menu {
	background: #fff;
	margin: 0 auto;
	height: 100%;
	max-width: 720px;
	padding: 15px 30px 50px;
	overflow-y: auto;
	z-index: 2;
}

.main-menu-mobile-catalog .back {
	padding: 15px 0;
	border-bottom: 1px #ccc solid;
	cursor: pointer;
}

.main-menu-mobile-catalog .back h3 {
	display: inline-block;
	margin: 0;
}
.main-menu-mobile-catalog .back i {
	display: inline-block;
	font-size: 24px;
	line-height: 1.2;
	padding-right: 15px;
}

.main-menu-mobile .phone {
	padding-top: 30px;
	margin-top: auto;
	padding-bottom: 15px;
}

.main-menu-mobile .phone .text {
	font-size: 12px;
    line-height: 16px;
    color: #888;
    padding-bottom: 5px;
}

.main-menu-mobile .phone a {
	font-family: 'Akrobat', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 24px;
}

.main-menu-mobile .phone .fa-phone {
	color: #333;
	font-size: 20px;
	padding-right: 5px;
}

@media (max-width: 768px) {
	.main-menu-mobile,
	.main-menu-mobile-catalog .catalog-menu,
	.level-2-block .root-item {
		max-width: 540px;
	}
}
@media (max-width: 576px) {
	.main-menu-mobile,
	.main-menu-mobile-catalog .catalog-menu,
	.level-2-block .root-item {
		max-width: 100%;
	}
}

/* End */


/* Start:/local/templates/mk-27-new/components/bitrix/menu/main_catalog_menu/style.css?17895484706481*/
.main-catalog-menu-block {
	background: #fff;
	border-radius: 0;
    border: 1px #eee solid;
    overflow: hidden;
    margin-bottom: 0;
    z-index: 3;
}

/* Раскрывающиеся разделы каталога должны быть выше карточек и их бейджей. */
main.main-index-page > .main-menu {
	position: relative;
	z-index: 4;
}

.main-catalog-menu > li > ul {
	position:absolute;
	display:none;
	transition: .3s;
}

.main-catalog-menu li:hover ul {
	display:block;
}

/*Submenu hide*/
.main-catalog-menu li:hover ul ul,
.main-catalog-menu li.jsvhover ul ul {
	display:none;
	padding-left: 15px;
}

/*Submenu show*/
.main-catalog-menu li:hover ul,
.main-catalog-menu li.jsvhover ul {
	display:block;
}

ul.main-catalog-menu,
.main-catalog-menu ul {
	margin: 0;
	padding-inline-start: 0;
}
.main-catalog-menu li {
	display: block;
	background: #fff;
}

.main-catalog-menu a {
    padding: 0 24px;
    display: flex;
    align-items: center;
    background-color: #fff;
    min-height: 64px;
}
.main-index-page .main-catalog-menu a {
	padding: 0 10px;
}
.main-catalog-menu a:hover {
	color: #EE3831; 
	background-color: rgba(238, 56, 49, 0.05);
}
.main-catalog-menu a:active {
	color: #EE3831; 
}
.main-catalog-menu a > img {
	margin-right: 10px;
    width: 24px;
    height: 24px;
}
.main-catalog-menu a > span {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
	font-size: 14px;
    line-height: 20px;
}
.main-catalog-menu ul.root-item {
    margin-left: 250px;
    z-index: 2;
	max-width: 742px;
	width: 100%;
    border-radius: 8px;
    position: absolute;
    background: #fff;
    box-shadow: 0 2px 6px 0 rgba(0,0,0,0.2);
    border: solid 1px transparent;
    columns: 2;
    column-gap: 1rem;
    padding: 32px;
    transition: all 0.2s ease-in-out;
}
.main-index-page .main-catalog-menu ul.root-item {
	margin-top: -64px; 
}
.main-catalog-menu ul.root-item li a {
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    padding: 8px 0;
    display: block;
    min-height: auto;
}
ul.main-catalog-menu > li.parent {
	/*background-image: url("/local/templates/shop-elektromir.ru/images/icons/arrow-right.png");*/
	background-repeat: no-repeat;
	background-position-y: 23px;
    background-position-x: 230px;
}
ul.main-catalog-menu > li.parent > ul > li a {
	background: none;
	border-bottom: none;
}
.main-catalog-menu ul.level3 {
	width: 100% !important;
}
.main-catalog-menu ul.level3,
.main-catalog-menu ul.level3 li {
	display: inline-block !important;
	border: none;
    width: calc(33.333333333% - 15px);
}
.main-catalog-menu ul.level3 li a {
	font-weight: 400;
	font-size: 13px; 
	padding: 0 0 15px 15px;
}
.drop-down-menu {
	display: none;
}
.drop-down-menu .main-catalog-menu-block {
    position: absolute;
    z-index: 304;
    overflow: inherit;
    padding-top: 5px;
    border-radius: 0 0 8px 8px;
	top: -15px;
	box-shadow: 0 6px 12px 0 rgba(0,0,0,0.16);
}
.drop-down-menu ul.main-catalog-menu,
.drop-down-menu .main-catalog-menu ul {
	border-radius: 8px;
	overflow: hidden;
}
.drop-down-menu ul.main-catalog-menu > li.parent {
    background-position-x: 240px;
    background-position-y: center;
}
.drop-down-menu .main-catalog-menu a {
	width: 265px;
}
.drop-down-menu .main-catalog-menu ul.root-item {
	margin-left: 265px;
	padding-top: 5px;
    border-radius: 0 0 8px 8px;
    width: 875px;
}

.main-catalog-menu .count {
	color: #9c9ca9;
	font-size: 12px;
	display: inline;
	padding-left: 5px;
}

@media (max-width: 1400px) {
	.main-catalog-menu ul.root-item {
		margin-left: 210px;
		max-width: min(742px, calc(100vw - 320px));
	}
}

@media (max-width: 1200px) {
	.main-catalog-menu ul.root-item {
		margin-left: 180px;
	}
	ul.main-catalog-menu > li.parent {
		background-position-x: 190px;
	}
	.main-catalog-menu ul.root-item {
	    margin-left: 210px;
	    width: 735px;
	}
	.drop-down-menu .main-catalog-menu-block {
		width: 225px;
	}
	.drop-down-menu ul.main-catalog-menu > li.parent {
	    background-position-x: 205px;
	}
	.drop-down-menu .main-catalog-menu ul.root-item {
		margin-left: 225px;
	}
	.drop-down-menu .main-catalog-menu ul.root-item {
		width: 735px;
	}
}

@media (max-width: 1399px) and (min-width: 992px) {
	.main-catalog-menu ul.root-item {
		column-gap: 24px;
		padding: 24px 26px;
	}
}

@media (max-width: 991px) {
	.drop-down-menu {
		display: none !important;
	}
	.categories {
		padding: 0;
	}
	ul.main-catalog-menu > li.parent {
	    background-position-x: 97.5%;
	    background-image: url("/local/templates/shop-elektromir.ru/images/icons/arrow-down.png");
	}
	.main-catalog-menu li:hover ul {
		display: none;
	}
	.main-catalog-menu ul.level3, .main-catalog-menu ul.level3 li {
		display: none !important;
	}
	.main-catalog-menu ul.root-item {
	    position: relative;
	    margin: 0;
	    width: 100%;
	    min-height: auto;
	    top: 0;
	    border-radius: 0;
		-webkit-box-shadow: inset 0 15px 15px -15px rgba(0,0,0,0.2), inset 0 -15px 15px -15px rgba(0,0,0,0.2);
	    box-shadow: inset 0 15px 15px -15px rgba(0,0,0,0.2), inset 0 -15px 15px -15px rgba(0,0,0,0.2);
	    overflow: hidden;
	    border-radius: 0;
	}
	.main-catalog-menu li {
	    background: initial;
	}
	ul.main-catalog-menu > li.active {
		background-image: url("/local/templates/shop-elektromir.ru/images/icons/arrow-up.png");
	}
	ul.main-catalog-menu > li.parent > ul > li {
		background-image: url("/local/templates/shop-elektromir.ru/images/icons/arrow-right.png");
		background-position-x: 97.5%;
		background-position-y: center;
		background-repeat: no-repeat;
	}
	ul.main-catalog-menu > li.parent > ul > li a {
	    padding-left: 30px;
	    padding-right: 30px;
	}
	ul.main-catalog-menu > li.parent > ul > li {
		background-position-x: 95%;
	}
	.main-catalog-menu a:hover {
		color: #333; 
	}
	.main-catalog-menu a:active {
		color: #333; 
	}
}

@media (max-width: 768px) {
	.categories {
		padding: 0 15px;
	}
}


@media (max-width: 567px) {
	ul.main-catalog-menu > li.parent {
		background-position-x: 95%;
	}
}



/* NOT INDEX PAGE */

.not-index-page .main-catalog-menu a > img {
	margin-right: 20px;
}

.not-index-page .main-menu {
	display: none;
	position: fixed;
	z-index: 3;
	padding: 0;
	margin-left: -4px;
}
.not-index-page .main-catalog-menu {
    overflow-y: auto;
    max-height: calc(100vh - 98px);
}
.not-index-page .main-catalog-menu ul.root-item {
	margin-left: 90%;
	min-width: 800px;
}


/* End */


/* Start:/local/templates/mk-27-new/components/bitrix/menu/footer_menu/style.css?1742181401179*/
.footer-menu {
	padding: 0;
	list-style: none;
}
.footer-menu li {
	margin-bottom: 7px;
}
footer .arrow {
	display: none;
}

.main-menu-mobile-block .arrow {
	padding-left: 5px;
}
/* End */


/* Start:/local/templates/mk-27-new/styles.css?179126993339622*/
/* Современные стили футера */
footer {
    border-top: 1px solid rgba(238, 238, 238, 0.5);
    padding-top: 48px;
    background: #fff;
    position: relative;
}

footer.footer-margin-top {
    margin-top: 72px;
}

footer .footer-block {
    padding-bottom: 40px;
}

footer > .container > .row > div h3 {
    text-transform: uppercase;
    line-height: 1.2;
    margin-bottom: 24px;
    font-size: 18px;
    color: #333;
    position: relative;
    padding-bottom: 12px;
}

footer > .container > .row > div h3:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 2px;
    background: #ee3831;
    transition: width 0.3s ease;
}

footer > .container > .row > div:hover h3:after {
    width: 60px;
}

footer .footer-text {
    color: #666;
    margin-bottom: 8px;
    line-height: 1.6;
}

footer .footer-link {
    margin-bottom: 24px;
}

footer .footer-link a {
    font-size: 15px;
    line-height: 1.5;
    padding-bottom: 2px;
    font-family: 'PT Sans', sans-serif;
    font-weight: 400;
    position: relative;
    display: inline-block;
}

footer .footer-link a:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 1px;
    background: #ee3831;
    transition: width 0.3s ease;
}

footer .footer-link a:hover:after {
    width: 100%;
}

footer .copyrights {
    text-align: center;
    padding: 20px 0;
    border-top: 1px solid rgba(238, 238, 238, 0.5);
    font-size: 14px;
    color: #666;
    background: #f8f8f8;
}

.footer-social {
    display: flex;
    flex-direction: column;
}

.footer-social a {
    display: flex;
    align-items: center;
    padding: 8px 0;
    transition: transform 0.3s ease;
}

.footer-social a:hover {
    transform: translateY(-2px);
}

.footer-social a img {
    width: 24px;
    height: 24px;
    margin-right: 12px;
}

.footer-social a span {
    color: #333;
    font-size: 15px;
}

/* Адаптивные стили футера */
@media (max-width: 1200px) {
    footer > .container > .row > div {
        width: auto !important;
        max-width: unset !important;
        padding: 0 20px;
    }

    footer > .container > .row > div h3 {
        font-size: 16px;
    }
}

@media (max-width: 991px) {
    footer {
        padding-top: 32px;
    }

    footer .footer-block {
        padding-bottom: 24px;
    }

    footer > .container > .row > div {
        width: 50% !important;
        max-width: 50% !important;
        min-width: 50%;
        margin: 0 0 32px 0;
    }

    footer > .container > .row > div h3 {
        margin-bottom: 16px;
    }

    footer .footer-link {
        margin-bottom: 16px;
    }
}

@media (max-width: 576px) {
    footer > .container > .row > div {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 100%;
        margin-bottom: 24px;
    }

    footer .footer-social {
        justify-content: center;
    }

    footer .copyrights {
        text-align: center;
        padding: 16px 0;
    }

    .footer-social a {
        padding: 12px 0;
    }
}

/* Современные стили для блока о компании */
.about-company {
    padding: 60px 0;
    background: #fff;
}

.section-subtitle {
    font-size: 2rem;
    font-weight: 700;
    color: #333;
    margin-bottom: 30px;
    position: relative;
    padding-bottom: 15px;
}

.section-subtitle:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: #ee3831;
}

.company-description {
    font-size: 1.1rem;
    line-height: 1.8;
    color: #555;
    margin-bottom: 30px;
}

.features-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 15px;
}

.features-list li {
    padding: 12px 20px;
    background: #f8f9fa;
    border-radius: 8px;
    color: #444;
    font-size: 1rem;
    transition: all 0.3s ease;
    border-left: 3px solid #ee3831;
}

.features-list li:hover {
    transform: translateX(5px);
    background: #fff;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

/* Статистика */
.company-stats {
    margin-top: 30%;
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.stat-item {
    text-align: center;
    padding: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #eee;
}

.stat-item:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

.stat-number {
    display: block;
    font-size: 2.5rem;
    font-weight: 700;
    color: #ee3831;
    margin-bottom: 5px;
}

.stat-text {
    font-size: 1rem;
    color: #666;
}

/* Производство */
.production-block {
    padding: 40px;
    background: #f8f9fa;
    border-radius: 12px;
    margin: 40px 0;
}

.production-features {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
    gap: 30px;
    margin-top: 30px;
}

.feature-card {
    background: #fff;
    padding: 30px;
    border-radius: 8px;
    text-align: center;
    transition: all 0.3s ease;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.feature-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}

.feature-icon {
    width: 70px;
    height: 70px;
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.feature-icon i {
    font-size: 30px;
    color: #fff;
}

.feature-card h4 {
    font-size: 1.2rem;
    color: #333;
    margin-bottom: 15px;
}

.feature-card p {
    color: #666;
    line-height: 1.6;
}

/* Торговые марки */
.brands-section {
    padding: 60px 0;
}

.brands-grid {
    margin-top: 40px;
}

.brand-card {
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    text-align: center;
    transition: all 0.3s ease;
    margin-bottom: 30px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.brand-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}

.brand-logo {
    height: 80px;
    object-fit: contain;
    margin-bottom: 20px;
}

.brand-card h4 {
    font-size: 1.2rem;
    color: #333;
    margin-bottom: 10px;
}

.brand-card p {
    color: #666;
    font-size: 0.9rem;
}

/* Клиенты */
.clients-section {
    padding: 80px 0;
    background: linear-gradient(to bottom, #f8f9fa, #fff);
    border-radius: 12px;
    position: relative;
    overflow: hidden;
}

.clients-section:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(
        to right,
        transparent,
        rgba(238, 56, 49, 0.3),
        transparent
    );
}

.clients-intro {
    color: #555;
    line-height: 1.8;
    font-size: 1.1rem;
    margin-bottom: 60px;
    max-width: 900px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.major-clients {
    position: relative;
    padding: 20px;
}

.client-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    max-width: 1400px;
    margin: 0 auto;
}

.client-item {
    background: #fff;
    padding: 30px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    transition: all 0.4s ease;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    border: 1px solid rgba(0, 0, 0, 0.05);
    position: relative;
    overflow: hidden;
}

.client-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    border-color: rgba(238, 56, 49, 0.2);
}

.client-item:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: #ee3831;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.client-item:hover:before {
    opacity: 1;
}

.client-logo {
    width: 120px;
    height: 80px;
    margin-right: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border-radius: 8px;
    padding: 10px;
}

.client-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: all 0.3s ease;
    opacity: 0.8;
}

.client-info {
    flex: 1;
}

.client-info h5 {
    color: #333;
    font-size: 1.2rem;
    margin-bottom: 8px;
    font-weight: 600;
    transition: color 0.3s ease;
}

.client-info p {
    color: #666;
    font-size: 0.95rem;
    margin: 0;
    line-height: 1.5;
}

.client-item:hover .client-info h5 {
    color: #ee3831;
}

/* Адаптивность для клиентского блока */
@media (max-width: 1200px) {
    .client-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    }
}

@media (max-width: 991px) {
    .clients-section {
        padding: 60px 0;
    }

    .client-grid {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
        gap: 20px;
    }

    .client-logo {
        width: 100px;
        height: 70px;
    }
}

@media (max-width: 768px) {
    .client-item {
        padding: 20px;
    }

    .client-logo {
        width: 80px;
        height: 60px;
        margin-right: 15px;
    }

    .client-info h5 {
        font-size: 1.1rem;
    }

    .client-info p {
        font-size: 0.9rem;
    }
}

@media (max-width: 576px) {
    .clients-section {
        padding: 40px 0;
    }

    .client-grid {
        grid-template-columns: 1fr;
    }

    .client-item {
        flex-direction: column;
        text-align: center;
    }

    .client-logo {
        margin: 0 0 15px 0;
        width: 120px;
        height: 80px;
    }
}

/* Анимации */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.about-company .row,
.production-features,
.brands-grid,
.client-grid {
    animation: fadeInUp 0.6s ease-out;
}

/* Дополнительные стили для блока о компании */
.production-description {
    margin-bottom: 30px;
    color: #555;
    line-height: 1.8;
    font-size: 1.1rem;
}

.brands-intro {
    color: #555;
    line-height: 1.8;
    font-size: 1.1rem;
    margin-bottom: 40px;
    max-width: 900px;
}

.brand-products {
    list-style: none;
    padding: 0;
    margin: 20px 0 0;
    text-align: left;
}

.brand-products li {
    padding: 8px 0;
    border-bottom: 1px solid #eee;
    color: #666;
    font-size: 0.9rem;
}

.brand-products li:last-child {
    border-bottom: none;
}

/* Логистика */
.logistics-section {
    padding: 60px 0;
    background: #f8f9fa;
    border-radius: 12px;
    margin: 40px 0;
}

.logistics-content {
    max-width: 1000px;
    margin: 0 auto;
}

.logistics-content p {
    color: #555;
    line-height: 1.8;
    font-size: 1.1rem;
    margin-bottom: 40px;
}

.logistics-features {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.feature-item {
    background: #fff;
    padding: 30px;
    border-radius: 8px;
    text-align: center;
    transition: all 0.3s ease;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.feature-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}

.feature-item i {
    font-size: 40px;
    color: #ee3831;
    margin-bottom: 20px;
}

.feature-item h4 {
    color: #333;
    margin-bottom: 15px;
    font-size: 1.2rem;
}

.feature-item p {
    color: #666;
    line-height: 1.6;
    margin-bottom: 0;
}

/* Клиенты */
.client-item h5 {
    color: #333;
    margin-bottom: 8px;
    font-size: 1.1rem;
}

.client-item p {
    color: #666;
    font-size: 0.9rem;
    margin: 0;
}

/* Адаптивность для новых элементов */
@media (max-width: 991px) {
    .logistics-features {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    }

    .brand-products {
        font-size: 0.85rem;
    }
}

@media (max-width: 768px) {
    .logistics-section {
        padding: 40px 20px;
    }

    .feature-item {
        padding: 20px;
    }
}

@media (max-width: 576px) {
    .brand-products li {
        padding: 6px 0;
    }

    .logistics-features {
        grid-template-columns: 1fr;
    }
}

/* Улучшенные анимации */
.feature-item,
.brand-products li {
    animation: fadeInUp 0.6s ease-out;
    animation-fill-mode: both;
}

.feature-item:nth-child(2) {
    animation-delay: 0.2s;
}

.feature-item:nth-child(3) {
    animation-delay: 0.4s;
}

.brand-products li {
    animation-delay: calc(0.1s * var(--item-index));
}

/* Международное сотрудничество */
.international-clients {
    margin-top: 60px;
    padding: 40px;
    background: linear-gradient(135deg, #fff, #f8f9fa);
    border-radius: 16px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.05);
    border: 1px solid rgba(238, 56, 49, 0.1);
    text-align: center;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

.international-clients:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(
        90deg,
        rgba(238, 56, 49, 0.8),
        rgba(0, 71, 171, 0.8),
        rgba(238, 56, 49, 0.8)
    );
}

.international-clients h4 {
    color: #333;
    font-size: 1.5rem;
    margin-bottom: 20px;
    font-weight: 600;
    position: relative;
    display: inline-block;
}

.international-clients h4:after {
    content: '🌍';
    position: absolute;
    top: -5px;
    right: -30px;
    font-size: 1.2rem;
}

.international-clients p {
    color: #555;
    font-size: 1.1rem;
    line-height: 1.8;
    max-width: 800px;
    margin: 0 auto;
    position: relative;
    padding: 20px;
    background: rgba(255, 255, 255, 0.8);
    border-radius: 8px;
}

.international-clients:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

/* Флаги стран */
.international-clients .country-flags {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 20px;
    flex-wrap: wrap;
}

.country-flag {
    padding: 8px 16px;
    background: #fff;
    border-radius: 20px;
    font-size: 0.9rem;
    color: #555;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.country-flag:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    color: #ee3831;
}

/* Адаптивность для международного блока */
@media (max-width: 768px) {
    .international-clients {
        padding: 30px 20px;
        margin-top: 40px;
    }

    .international-clients h4 {
        font-size: 1.3rem;
    }

    .international-clients p {
        font-size: 1rem;
        padding: 15px;
    }

    .country-flag {
        padding: 6px 12px;
        font-size: 0.85rem;
    }
}

@media (max-width: 576px) {
    .international-clients {
        padding: 25px 15px;
    }

    .country-flags {
        gap: 10px;
    }
}

.bx-panel-folded {
    opacity: 70%;
    top: 100px;
}

/* Стили для страницы доставки */
.delivery-page {
    background: #fff;
}

/* Hero секция */
.delivery-hero {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    padding: 80px 0;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.delivery-hero:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #ee3831, #ff6b6b);
}

.delivery-title {
    font-size: 3rem;
    color: #333;
    margin-bottom: 20px;
    font-weight: 700;
    animation: fadeInUp 0.6s ease-out;
}

.delivery-subtitle {
    font-size: 1.5rem;
    color: #333;
    margin-bottom: 40px;
    animation: fadeInUp 0.8s ease-out;
}

/* Преимущества */
.delivery-advantages {
    padding: 20px 0;
    background: #fff;
}

.advantages-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin-top: 40px;
}

.advantage-item {
    text-align: center;
    padding: 40px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.advantage-item:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
    border-color: #ee3831;
}

.advantage-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 20px;
    background: linear-gradient(135deg, #ee3831, #ff6b6b);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.advantage-icon i {
    font-size: 32px;
    color: #fff;
}

.advantage-item h3 {
    font-size: 1.5rem;
    color: #333;
    margin-bottom: 15px;
}

.advantage-item p {
    color: #666;
    line-height: 1.6;
}

/* Основная информация */
.delivery-info {
    padding: 40px 0;
    background: #f8f9fa;
}

.info-grid {
    display: flex;
    gap: 50px;
    align-items: center;
}

.info-content h2 {
    font-size: 2.5rem;
    color: #333;
    margin-bottom: 30px;
    position: relative;
    padding-bottom: 15px;
}

.info-content h2:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: #ee3831;
}

.info-content p {
    font-size: 1.1rem;
    color: #555;
    line-height: 1.8;
    margin-bottom: 30px;
}

.client-types {
    display: flex;
    gap: 30px;
}

.client-type {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 15px 25px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.client-type i {
    font-size: 24px;
    color: #ee3831;
}

.client-type span {
    font-size: 1.1rem;
    color: #333;
}

.info-image img {
    width: 100%;
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}

/* Тарифы */
.delivery-rates {
    padding: 80px 0;
    background: #fff;
}

.delivery-rates h2 {
    text-align: center;
    font-size: 2.5rem;
    color: #333;
    margin-bottom: 50px;
}

.rates-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.rate-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.rate-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.rate-card img {
    width: 100%;
    height: auto;
    display: block;
}

/* Калькулятор */
.delivery-calculator {
    padding: 80px 0;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
}

.calculator-wrapper {
    max-width: 600px;
    margin: 0 auto;
    background: #fff;
    padding: 40px;
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}

.calculator-wrapper h2 {
    text-align: center;
    font-size: 2rem;
    color: #333;
    margin-bottom: 30px;
}

.calculator-form {
    display: grid;
    gap: 20px;
}

.form-group input {
    width: 100%;
    padding: 15px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 1rem;
    transition: all 0.3s ease;
}

.form-group input:focus {
    border-color: #ee3831;
    box-shadow: 0 0 0 3px rgba(238, 56, 49, 0.1);
    outline: none;
}

.btn-calculate {
    background: linear-gradient(135deg, #ee3831, #ff6b6b);
    color: #fff;
    border: none;
    padding: 15px 30px;
    border-radius: 8px;
    font-size: 1.1rem;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-calculate:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(238, 56, 49, 0.3);
}

/* Адаптивность */
@media (max-width: 1200px) {
    .delivery-title {
        font-size: 2.5rem;
    }

    .delivery-subtitle {
        font-size: 1.3rem;
    }

    .info-grid {
        gap: 30px;
    }
}

@media (max-width: 991px) {
    .info-grid {
        grid-template-columns: 1fr;
    }

    .advantages-grid {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    }

    .client-types {
        flex-direction: column;
    }
}

@media (max-width: 768px) {
    .delivery-hero {
        padding: 60px 0;
    }

    .delivery-title {
        font-size: 2rem;
    }

    .delivery-subtitle {
        font-size: 1.1rem;
    }

    .advantage-item {
        padding: 30px;
    }

    .calculator-wrapper {
        padding: 30px;
    }
}

@media (max-width: 576px) {
    .delivery-hero {
        padding: 40px 0;
    }

    .advantage-icon {
        width: 60px;
        height: 60px;
    }

    .advantage-icon i {
        font-size: 24px;
    }

    .calculator-wrapper {
        padding: 20px;
    }
}

/* Анимации */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.advantage-item,
.info-content,
.rate-card,
.calculator-wrapper {
    animation: fadeInUp 0.6s ease-out;
    animation-fill-mode: both;
}

.advantage-icon svg,
.client-type svg {
    color: #fff;
    width: 32px;
    height: 32px;
}

.client-type svg {
    color: #ee3831;
    width: 24px;
    height: 24px;
}

.btn-calculate svg {
    margin-right: 8px;
    vertical-align: middle;
}

/* Анимация для иконок при наведении */
.advantage-item:hover .advantage-icon svg {
    transform: scale(1.1);
    transition: transform 0.3s ease;
}

.client-type:hover svg {
    transform: scale(1.1);
    transition: transform 0.3s ease;
}

/* Обновляем стили для иконок в мобильной версии */
@media (max-width: 576px) {
    .advantage-icon svg {
        width: 24px;
        height: 24px;
    }

    .client-type svg {
        width: 20px;
        height: 20px;
    }
}

.advantage-icon i,
.client-type i {
    font-size: 32px;
    color: #fff;
}

.client-type i {
    color: #ee3831;
    font-size: 24px;
}

.btn-calculate i {
    margin-right: 8px;
    font-size: 18px;
}

/* Анимация для иконок при наведении */
.advantage-item:hover .advantage-icon i {
    transform: scale(1.1);
    transition: transform 0.3s ease;
}

.client-type:hover i {
    transform: scale(1.1);
    transition: transform 0.3s ease;
}

/* Обновляем стили для иконок в мобильной версии */
@media (max-width: 576px) {
    .advantage-icon i {
        font-size: 24px;
    }

    .client-type i {
        font-size: 20px;
    }

    .delivery-title {
        text-align: center;
    }

    .delivery-subtitle {
        margin-top: 20px;
        text-align: center;
    }
}

/* Стили для калькулятора доставки */
.calculator-form select,
.calculator-form input {
    width: 100%;
    padding: 15px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 1rem;
    transition: all 0.3s ease;
    background-color: #fff;
}

.calculator-form select {
    appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 1em;
}

.calculator-result {
    margin-top: 30px;
    padding: 20px;
    border-radius: 8px;
    background: #f8f9fa;
}

.result-content {
    text-align: center;
}

.result-price {
    font-size: 1.5rem;
    color: #333;
    margin-bottom: 10px;
    font-weight: 600;
}

.result-note {
    color: #666;
    margin-bottom: 15px;
}

.result-phone {
    color: #ee3831;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
    padding: 8px 20px;
    border: 2px solid #ee3831;
    border-radius: 6px;
    transition: all 0.3s ease;
}

.result-phone:hover {
    background: #ee3831;
    color: #fff;
}

.delivery-note {
    margin-top: 30px;
    padding: 20px;
    background: #fff;
    border-radius: 8px;
    border: 1px solid #ddd;
}

.delivery-note p {
    color: #666;
    font-size: 0.9rem;
    margin-bottom: 10px;
}

.delivery-note p:last-child {
    margin-bottom: 0;
}

@media (max-width: 576px) {
    .calculator-form select,
    .calculator-form input {
        padding: 12px;
        font-size: 0.9rem;
    }

    .result-price {
        font-size: 1.3rem;
    }

    .delivery-note {
        padding: 15px;
    }
}

/* Стили для страницы возврата */
.refund-page {
    background: #fff;
}

/* Hero секция */
.refund-hero {
    position: relative;
    padding: 80px 0;
    text-align: center;
    overflow: hidden;
    background: linear-gradient(
        135deg,
        rgba(248, 249, 250, 0.95) 0%,
        rgba(233, 236, 239, 0.95) 100%
    );
}

.hero-background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url('/local/templates/mk-27-new/include/refund/returns.png');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    opacity: 0.15;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.refund-hero:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #ee3831, #ff6b6b);
    z-index: 3;
}

.refund-hero .container {
    position: relative;
    z-index: 2;
}

.refund-title {
    font-size: 3rem;
    color: #333;
    margin-bottom: 20px;
    font-weight: 700;
    animation: fadeInUp 0.6s ease-out;
    text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.8);
}

.refund-subtitle {
    font-size: 1.5rem;
    color: #666;
    margin-bottom: 40px;
    animation: fadeInUp 0.8s ease-out;
    text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.8);
}

/* Основная информация */
.refund-info {
    padding: 60px 0;
    background: #fff;
}

.info-grid {
    max-width: 900px;
    margin: 0 auto;
}

.info-block {
    background: #fff;
    padding: 40px;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.info-block h2 {
    font-size: 2rem;
    color: #333;
    margin-bottom: 30px;
    position: relative;
    padding-bottom: 15px;
}

.info-block h2:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: #ee3831;
}

.info-block .text {
    font-size: 1.1rem;
    color: #555;
    line-height: 1.8;
}

/* Процесс возврата */
.refund-process {
    padding: 60px 0;
    background: #f8f9fa;
}

.process-grid {
    max-width: 900px;
    margin: 0 auto;
}

.process-content {
    background: #fff;
    padding: 40px;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.refund-process h2 {
    text-align: center;
    font-size: 2.5rem;
    color: #333;
    margin-bottom: 40px;
}

/* Дополнительная информация */
.refund-additional {
    padding: 60px 0;
    background: #fff;
}

.additional-content {
    max-width: 900px;
    margin: 0 auto;
    background: #fff;
    padding: 40px;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.refund-additional h2 {
    text-align: center;
    font-size: 2.5rem;
    color: #333;
    margin-bottom: 40px;
}

/* Форма обратной связи */
.refund-contact {
    padding: 80px 0;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
}

.contact-wrapper {
    max-width: 600px;
    margin: 0 auto;
    text-align: center;
    background: #fff;
    padding: 40px;
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}

.contact-wrapper h2 {
    font-size: 2rem;
    color: #333;
    margin-bottom: 20px;
}

.contact-wrapper p {
    font-size: 1.1rem;
    color: #666;
    margin-bottom: 30px;
}

.contact-buttons {
    display: flex;
    justify-content: center;
    gap: 20px;
}

.contact-phone,
.contact-email {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 15px 30px;
    border-radius: 8px;
    font-size: 1.1rem;
    transition: all 0.3s ease;
    text-decoration: none;
}

.contact-phone {
    background: #ee3831;
    color: #fff;
}

.contact-email {
    background: #f8f9fa;
    color: #333;
    border: 2px solid #ddd;
}

.contact-phone:hover {
    background: #ff6b6b;
    transform: translateY(-2px);
}

.contact-email:hover {
    border-color: #ee3831;
    transform: translateY(-2px);
}

/* Адаптивность */
@media (max-width: 991px) {
    .refund-title {
        font-size: 2.5rem;
    }

    .refund-subtitle {
        font-size: 1.3rem;
    }

    .info-block,
    .process-content,
    .additional-content {
        padding: 30px;
    }

    .contact-wrapper {
        margin: 0 20px;
    }
}

@media (max-width: 768px) {
    .refund-hero {
        padding: 60px 0;
    }

    .refund-title {
        font-size: 2rem;
    }

    .refund-subtitle {
        font-size: 1.1rem;
    }

    .info-block h2,
    .refund-process h2,
    .refund-additional h2 {
        font-size: 1.8rem;
    }

    .contact-buttons {
        flex-direction: column;
    }

    .contact-phone,
    .contact-email {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 576px) {
    .refund-hero {
        padding: 40px 0;
    }

    .refund-title {
        font-size: 1.8rem;
    }

    .refund-subtitle {
        font-size: 1rem;
    }

    .info-block,
    .process-content,
    .additional-content,
    .contact-wrapper {
        padding: 20px;
    }

    .info-block h2,
    .refund-process h2,
    .refund-additional h2 {
        font-size: 1.5rem;
    }
}

/* Стили для страницы производства */
.production-page {
    background: #fff;
}

/* Hero секция */
.production-hero {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    padding: 100px 0;
    position: relative;
    overflow: hidden;
}

.production-hero:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #ee3831, #ff6b6b);
}

.hero-content {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

.hero-title {
    font-size: 3.5rem;
    color: #333;
    margin-bottom: 30px;
    font-weight: 700;
    animation: fadeInUp 0.6s ease-out;
}

.hero-description {
    font-size: 1.2rem;
    color: #666;
    line-height: 1.8;
    animation: fadeInUp 0.8s ease-out;
}

.hero-description p {
    margin-bottom: 15px;
}

/* Основная информация */
.production-info {
    padding: 80px 0;
    background: #fff;
}

.section-title {
    font-size: 2.5rem;
    color: #333;
    margin-bottom: 40px;
    text-align: center;
    position: relative;
    padding-bottom: 20px;
}

.section-title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 3px;
    background: #ee3831;
}

.info-content {
    font-size: 1.1rem;
    color: #555;
    line-height: 1.8;
    max-width: 900px;
    margin: 0 auto;
}

/* Преимущества */
.production-advantages {
    padding: 80px 0;
    background: #f8f9fa;
}

.advantages-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin-top: 40px;
}

.advantage-item {
    background: #fff;
    padding: 40px;
    border-radius: 12px;
    text-align: center;
    transition: all 0.3s ease;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.advantage-item:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.advantage-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 25px;
    background: linear-gradient(135deg, #ee3831, #ff6b6b);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.advantage-icon i {
    font-size: 32px;
    color: #fff;
}

.advantage-item h3 {
    font-size: 1.5rem;
    color: #333;
    margin-bottom: 15px;
}

.advantage-item p {
    color: #666;
    line-height: 1.6;
}

/* Галерея */
.production-gallery {
    padding: 80px 0;
    background: #fff;
}

/* Контактная форма */
.production-contact {
    padding: 60px 0;
}

.contact-wrapper {
    max-width: 600px;
    margin: 0 auto;
    text-align: center;
    background: #fff;
    padding: 60px;
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}

.contact-description {
    font-size: 1.1rem;
    color: #666;
    margin-bottom: 40px;
}

.contact-buttons {
    display: flex;
    justify-content: center;
    gap: 20px;
}

.contact-phone,
.contact-email {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 15px 30px;
    border-radius: 8px;
    font-size: 1.1rem;
    transition: all 0.3s ease;
    text-decoration: none;
}

.contact-phone {
    background: #ee3831;
    color: #fff;
}

.contact-email {
    background: #f8f9fa;
    color: #333;
    border: 2px solid #ddd;
}

.contact-phone:hover {
    background: #ff6b6b;
    transform: translateY(-2px);
}

.contact-email:hover {
    border-color: #ee3831;
    transform: translateY(-2px);
}

/* Адаптивность */
@media (max-width: 1200px) {
    .hero-title {
        font-size: 3rem;
    }

    .advantages-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width: 991px) {
    .production-hero {
        padding: 80px 0;
    }

    .hero-title {
        font-size: 2.5rem;
    }

    .section-title {
        font-size: 2rem;
    }

    .advantage-item {
        padding: 30px;
    }
}

@media (max-width: 768px) {
    .production-hero {
        padding: 60px 0;
    }

    .hero-title {
        font-size: 2rem;
    }

    .hero-description {
        font-size: 1rem;
    }

    .contact-wrapper {
        margin: 0 20px;
        padding: 40px;
    }

    .contact-buttons {
        flex-direction: column;
    }

    .contact-phone,
    .contact-email {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 576px) {
    .production-hero {
        padding: 40px 0;
    }

    .hero-title {
        font-size: 1.8rem;
    }

    .section-title {
        font-size: 1.8rem;
    }

    .advantage-icon {
        width: 60px;
        height: 60px;
    }

    .advantage-icon i {
        font-size: 24px;
    }

    .contact-wrapper {
        padding: 30px;
    }
}

/* Анимации */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.advantage-item,
.contact-wrapper {
    animation: fadeInUp 0.6s ease-out;
    animation-fill-mode: both;
}

.advantage-item:nth-child(2) {
    animation-delay: 0.2s;
}

.advantage-item:nth-child(3) {
    animation-delay: 0.4s;
}

/* Стили для баннера страницы производства */
.page-banner {
    position: relative;
    background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)),
        url('/local/templates/mk-27-new/include/develop/banner_devops.jpeg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 100px 0;
    color: #fff;
    overflow: hidden;
}

.page-banner:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        135deg,
        rgba(238, 56, 49, 0.3),
        rgba(0, 0, 0, 0.7)
    );
    z-index: 1;
}

.page-banner-text {
    position: relative;
    z-index: 2;
    text-align: center;
}

.page-banner .develop-banner__title {
    padding: 0;
}

.page-banner .develop-banner__highlight {
    color: #fff;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

.page-banner .develop-banner__subtitle {
    color: rgba(255, 255, 255, 0.9);
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
}

/* Анимация для баннера */
@keyframes gradientMove {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

.page-banner:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        135deg,
        transparent,
        rgba(238, 56, 49, 0.2),
        transparent
    );
    background-size: 200% 200%;
    animation: gradientMove 15s ease infinite;
    z-index: 1;
}

/* Адаптивность для баннера */
@media (max-width: 991px) {
    .page-banner {
        padding: 80px 0;
    }
}

@media (max-width: 768px) {
    .page-banner {
        padding: 60px 0;
    }
}

@media (max-width: 576px) {
    .page-banner {
        padding: 40px 0;
    }
}

/* Стили для блока брендов */
.develop-brands {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-top: 40px;
}

.develop-brand {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.develop-brand:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    border-color: rgba(238, 56, 49, 0.2);
}

.develop-brand__header {
    padding: 20px;
}

.develop-brand__icon {
    width: 50px;
    height: 50px;
    margin-right: 15px;
}

.develop-brand__title {
    font-size: 1.2rem;
}

.develop-brand__subtitle {
    font-size: 0.8rem;
}

.develop-brand__content {
    padding: 20px;
}

.develop-brand__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.develop-brand__tags span {
    padding: 5px 10px;
    font-size: 0.85rem;
}

.develop-content__brands {
    margin-top: 70px;
}

.develop-content__text {
    margin-top: 10px;
    font-size: 0.8rem;
    font-style: italic;
}

.develop-content__image {
    text-align: center;
}

.develop-content__img {
    width: 60%;
}

/* Адаптивность для брендов */
@media (max-width: 1400px) {
    .develop-brands {
        grid-template-columns: repeat(4, 1fr);
        gap: 15px;
    }
}

@media (max-width: 1200px) {
    .develop-brands {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width: 768px) {
    .develop-brands {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .develop-content__img {
        width: 100%;
    }
}

/* Анимации для брендов */
@keyframes fadeInScale {
    from {
        opacity: 0;
        transform: scale(0.9);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.develop-brand {
    animation: fadeInScale 0.6s ease-out;
    animation-fill-mode: both;
}

.develop-brand:nth-child(2) {
    animation-delay: 0.2s;
}

.develop-brand:nth-child(3) {
    animation-delay: 0.4s;
}

.develop-brand:nth-child(4) {
    animation-delay: 0.6s;
}

.develop-brand__tags span {
    animation: fadeInUp 0.4s ease-out;
    animation-fill-mode: both;
}

.develop-brand__tags span:nth-child(n + 1) {
    animation-delay: calc(0.1s * var(--n));
}

.wrap__ewfu3 {
    z-index: 1 !important;
}

/* End */
/* /local/templates/mk-27-new/assets/mobile/storefront.css?179447976781485 */
/* /local/templates/mk-27-new/assets/mobile/loading.css?17944819599564 */
/* /local/pwa/install.css?17944512693316 */
/* /local/templates/mk-27-new/assets/plugins/owl_carousel/owl.carousel.min.css?17421814013351 */
/* /local/templates/mk-27-new/assets/plugins/owl_carousel/owl.theme.default.min.css?17421814011013 */
/* /local/templates/mk-27-new/assets/fonts/fonts.css?1791355521503 */
/* /local/templates/mk-27-new/assets/fonts/performance-fonts.css?17913555213722 */
/* /local/templates/mk-27-new/template_styles.css?179445245642266 */
/* /local/templates/mk-27-new/components/bitrix/news.list/header_phones/style.css?17421814011303 */
/* /local/templates/mk-27-new/components/bitrix/menu/header_menu/style.css?17741041502794 */
/* /local/templates/mk-27-new/components/bitrix/search.title/mk27_spotlight/style.css?177410415013371 */
/* /local/templates/mk-27-new/components/bitrix/sale.basket.basket.line/header_cart/style.css?17421814015249 */
/* /local/templates/mk-27-new/components/bitrix/menu/main_catalog_menu_mobile/style.css?17895487726972 */
/* /local/templates/mk-27-new/components/bitrix/menu/main_catalog_menu/style.css?17895484706481 */
/* /local/templates/mk-27-new/components/bitrix/menu/footer_menu/style.css?1742181401179 */
/* /local/templates/mk-27-new/styles.css?179126993339622 */
