@media screen and (min-width: 768px) {
    .fancybox-e02a {
        --e02a-gutter: max(0px, calc((100% - 1200px) / 2));
    }

    .fancybox-e02a.fancybox-show-thumbs .fancybox-inner {
        left: var(--e02a-gutter) !important;
        right: calc(var(--e02a-gutter) + 112px) !important;
        top: 0 !important;
        bottom: 0 !important;
        border-left: 1px solid rgba(20,34,56,0.06) !important;
        box-shadow: 4px 0 18px rgba(20,34,56,0.025) !important;
    }

    .fancybox-e02a .fancybox-navigation .fancybox-button--arrow_left {
        left: var(--e02a-gutter) !important;
    }

    .fancybox-e02a .fancybox-navigation .fancybox-button--arrow_right {
        right: var(--e02a-gutter) !important;
    }

    .fancybox-e02a .fancybox-thumbs {
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        right: var(--e02a-gutter) !important;
        bottom: 0 !important;
        left: auto !important;
        width: 112px !important;
        height: auto !important;
        padding: 14px 10px !important;
        margin: 0 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        background: #ffffff !important;
        border-left: 1px solid rgba(20,34,56,0.06) !important;
        box-shadow: -4px 0 18px rgba(20,34,56,0.025) !important;
        z-index: 99998 !important;
        box-sizing: border-box !important;
    }

    .fancybox-e02a .fancybox-thumbs > ul {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: normal !important;
    }

    .fancybox-e02a .fancybox-thumbs > ul > li {
        float: none !important;
        display: block !important;
        width: 74px !important;
        height: 74px !important;
        max-width: 74px !important;
        max-height: 74px !important;
        margin: 0 auto 9px !important;
        padding: 0 !important;
        border: 1px solid rgba(20,34,56,0.11) !important;
        border-radius: 4px !important;
        background-color: #ffffff !important;
        background-size: contain !important;
        background-repeat: no-repeat !important;
        background-position: center center !important;
        opacity: 0.72 !important;
        box-sizing: border-box !important;
    }

    .fancybox-e02a .fancybox-thumbs > ul > li:before {
        border: 2px solid #1f3044 !important;
        border-radius: 4px !important;
    }

    .fancybox-e02a .fancybox-thumbs > ul > li.fancybox-thumbs-active,
    .fancybox-e02a .fancybox-thumbs > ul > li:hover {
        opacity: 1 !important;
        border-color: rgba(31,48,68,0.34) !important;
    }
}@media screen and (min-width: 768px) {
    .fancybox-e02a .fancybox-thumbs {
        opacity: 1 !important;
        filter: none !important;
        -webkit-filter: none !important;
        background: #ffffff !important;
    }

    .fancybox-e02a .fancybox-thumbs > ul > li {
        opacity: 1 !important;
        filter: none !important;
        -webkit-filter: none !important;
        border-color: rgba(20,34,56,0.18) !important;
        box-shadow: 0 1px 5px rgba(20,34,56,0.045) !important;
    }

    .fancybox-e02a .fancybox-thumbs > ul > li:hover,
    .fancybox-e02a .fancybox-thumbs > ul > li.fancybox-thumbs-active {
        opacity: 1 !important;
        border-color: rgba(31,48,68,0.52) !important;
        box-shadow: 0 0 0 1px rgba(31,48,68,0.22) inset, 0 2px 7px rgba(20,34,56,0.06) !important;
    }

    .fancybox-e02a .fancybox-thumbs > ul > li:before {
        border-color: transparent !important;
    }

    .fancybox-e02a .fancybox-thumbs > ul > li.fancybox-thumbs-active:before {
        border-color: rgba(31,48,68,0.42) !important;
    }
}@media screen and (min-width: 901px) {
    header.header_type_1 {
        display: block !important;
        visibility: visible !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #fff !important;
        overflow: visible !important;
        position: relative !important;
        z-index: 20 !important;
    }

    header.header_type_1 .mamaroo-header-v3 {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #fff !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    header.header_type_1 .mamaroo-header-v3__inner {
        width: min(1400px, calc(100vw - 80px)) !important;
        max-width: 1400px !important;
        margin: 0 auto !important;
        padding: 28px 0 20px !important;
        box-sizing: border-box !important;
        overflow: visible !important;
    }

    header.header_type_1 .mamaroo-header-v3__top {
        display: grid !important;
        grid-template-columns: minmax(300px, 520px) minmax(280px, 1fr) !important;
        align-items: center !important;
        gap: 34px !important;
        width: 100% !important;
        margin: 0 0 20px !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        overflow: visible !important;
    }

    header.header_type_1 .mamaroo-header-v3__brand,
    header.header_type_1 .mamaroo-header-v3__right,
    header.header_type_1 .mamaroo-header-v3__contacts,
    header.header_type_1 .mamaroo-header-v3__service,
    header.header_type_1 .mamaroo-header-v3__search {
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    header.header_type_1 .mamaroo-header-v3__brand {
        justify-self: start !important;
        text-align: left !important;
    }

    header.header_type_1 .mamaroo-header-v3__logo-link {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        text-decoration: none !important;
        line-height: 1 !important;
    }

    header.header_type_1 .mamaroo-header-v3__logo-img,
    header.header_type_1 img.mamaroo-header-v3__logo-img.mamaroo-logo-main {
        display: block !important;
        width: clamp(340px, 30vw, 500px) !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: 148px !important;
        margin: 0 !important;
        padding: 0 !important;
        object-fit: contain !important;
        float: none !important;
        position: static !important;
    }

    header.header_type_1 .mamaroo-header-v3__logo-text {
        display: inline-block !important;
        color: #050b12 !important;
        font-size: clamp(42px, 5vw, 74px) !important;
        line-height: 1 !important;
        font-weight: 500 !important;
        letter-spacing: -0.04em !important;
        white-space: nowrap !important;
    }

    header.header_type_1 .mamaroo-header-v3__right {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 18px !important;
        width: 100% !important;
        min-width: 0 !important;
        text-align: right !important;
    }

    header.header_type_1 .mamaroo-header-v3__contacts {
        display: block !important;
        min-width: 0 !important;
        text-align: right !important;
    }

    header.header_type_1 .mamaroo-header-v3__phone {
        display: block !important;
        color: #050b12 !important;
        font-size: clamp(24px, 2.2vw, 30px) !important;
        line-height: 1.08 !important;
        font-weight: 850 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
    }

    header.header_type_1 .mamaroo-header-v3__time {
        display: block !important;
        margin-top: 4px !important;
        color: #5d6771 !important;
        font-size: 15px !important;
        line-height: 20px !important;
        font-weight: 500 !important;
        white-space: nowrap !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart {
        flex: 0 0 52px !important;
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 52px !important;
        height: 52px !important;
        min-width: 52px !important;
        margin: 0 !important;
        padding: 0 !important;
        z-index: 4 !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart ul,
    header.header_type_1 .mamaroo-header-v3__cart li {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart .header-button__icon {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 46px !important;
        height: 46px !important;
        margin: 0 !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart .icon-cart {
        width: 36px !important;
        height: 30px !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart .cart-count,
    header.header_type_1 .mamaroo-header-v3__cart .header-button__cart-count {
        position: absolute !important;
        top: -6px !important;
        right: -6px !important;
        min-width: 22px !important;
        height: 22px !important;
        padding: 0 6px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 999px !important;
        background: #f4f6f8 !important;
        color: #0f1f30 !important;
        font-size: 13px !important;
        line-height: 22px !important;
        font-weight: 800 !important;
        box-sizing: border-box !important;
    }

    header.header_type_1 .mamaroo-header-v3__service {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(340px, 430px) !important;
        align-items: center !important;
        gap: 18px 26px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        overflow: visible !important;
    }

    header.header_type_1 .mamaroo-header-v3__links,
    header.header_type_1 .mamaroo-header-v3__links.mamaroo-top-info-menu {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 8px 16px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        overflow: visible !important;
        white-space: normal !important;
    }

    header.header_type_1 .mamaroo-header-v3__links li {
        display: inline-flex !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        list-style: none !important;
    }

    header.header_type_1 .mamaroo-header-v3__links a {
        display: inline-block !important;
        color: #0b1724 !important;
        font-size: 14px !important;
        line-height: 20px !important;
        font-weight: 750 !important;
        letter-spacing: -0.01em !important;
        text-decoration: none !important;
        opacity: 1 !important;
        white-space: nowrap !important;
    }

    header.header_type_1 .mamaroo-header-v3__search,
    header.header_type_1 .mamaroo-header-v3__search.search {
        display: block !important;
        width: 100% !important;
        max-width: 430px !important;
        margin: 0 !important;
        padding: 0 !important;
        justify-self: end !important;
        overflow: visible !important;
    }

    header.header_type_1 .mamaroo-header-v3__search form {
        display: flex !important;
        align-items: stretch !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    header.header_type_1 .mamaroo-header-v3__search input {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        width: auto !important;
        height: 46px !important;
        margin: 0 !important;
        padding: 0 16px !important;
        font-size: 16px !important;
        line-height: 22px !important;
        box-sizing: border-box !important;
    }

    header.header_type_1 .mamaroo-header-v3__search button,
    header.header_type_1 .mamaroo-header-v3__search .search__icon {
        flex: 0 0 96px !important;
        width: 96px !important;
        min-width: 96px !important;
        height: 46px !important;
        margin: 0 !important;
        padding: 0 12px !important;
        font-weight: 800 !important;
        box-sizing: border-box !important;
    }

    /* Main catalog row under header: keep it universal and aligned with header width. */
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 0 42px !important;
        width: min(1400px, calc(100vw - 80px)) !important;
        max-width: 1400px !important;
        margin: 0 auto 26px !important;
        padding: 16px 0 !important;
        border-top: 1px solid rgba(31,48,68,0.12) !important;
        border-bottom: 1px solid rgba(31,48,68,0.12) !important;
        list-style: none !important;
        box-sizing: border-box !important;
    }

    body > .menu-h.center-menu.hide-sm.hide-xs > li,
    ul.menu-h.center-menu.hide-sm.hide-xs > li {
        display: inline-flex !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        list-style: none !important;
    }

    body > .menu-h.center-menu.hide-sm.hide-xs > li > a,
    ul.menu-h.center-menu.hide-sm.hide-xs > li > a {
        display: inline-block !important;
        color: #050b12 !important;
        font-size: 20px !important;
        line-height: 26px !important;
        font-weight: 850 !important;
        letter-spacing: -0.02em !important;
        text-decoration: none !important;
        padding: 0 !important;
    }
}@media screen and (min-width: 901px) and (max-width: 1199px) {
    header.header_type_1 .mamaroo-header-v3__inner,
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs {
        width: calc(100vw - 60px) !important;
    }

    header.header_type_1 .mamaroo-header-v3__inner {
        padding: 26px 0 18px !important;
    }

    header.header_type_1 .mamaroo-header-v3__top {
        grid-template-columns: minmax(260px, 380px) minmax(260px, 1fr) !important;
        gap: 24px !important;
        margin-bottom: 18px !important;
    }

    header.header_type_1 .mamaroo-header-v3__logo-img,
    header.header_type_1 img.mamaroo-header-v3__logo-img.mamaroo-logo-main {
        width: clamp(300px, 38vw, 380px) !important;
    }

    header.header_type_1 .mamaroo-header-v3__phone {
        font-size: 24px !important;
    }

    header.header_type_1 .mamaroo-header-v3__time {
        font-size: 14px !important;
    }

    header.header_type_1 .mamaroo-header-v3__service {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    header.header_type_1 .mamaroo-header-v3__search,
    header.header_type_1 .mamaroo-header-v3__search.search {
        max-width: 100% !important;
        justify-self: stretch !important;
    }

    header.header_type_1 .mamaroo-header-v3__links a {
        font-size: 14px !important;
        line-height: 20px !important;
    }

    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs {
        gap: 0 36px !important;
        margin-bottom: 22px !important;
    }

    body > .menu-h.center-menu.hide-sm.hide-xs > li > a,
    ul.menu-h.center-menu.hide-sm.hide-xs > li > a {
        font-size: 19px !important;
        line-height: 25px !important;
    }
}@media screen and (min-width: 1200px) and (max-width: 1399px) {
    header.header_type_1 .mamaroo-header-v3__inner,
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs {
        width: calc(100vw - 80px) !important;
    }

    header.header_type_1 .mamaroo-header-v3__service {
        grid-template-columns: minmax(0, 1fr) minmax(320px, 400px) !important;
    }
}@media screen and (min-width: 1400px) {
    header.header_type_1 .mamaroo-header-v3__inner,
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs {
        width: min(1400px, calc(100vw - 120px)) !important;
    }
}@media screen and (min-width: 901px) and (max-width: 1399px) {
    #js-product-page .product__gallery,
    #js-product-page .product__gallery-image,
    #js-product-page #product-core-image {
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    #js-product-page .product__gallery-image .product__slider-product,
    #js-product-page .product__gallery-image .product__slider-product .slick-list,
    #js-product-page .product__gallery-image .product__slider-product .slick-track,
    #js-product-page .product__gallery-image .product__slider-product .slick-slide,
    #js-product-page .product__gallery-image .mobile-slide,
    #js-product-page .product__gallery-image .js-product-image-slider {
        min-height: 0 !important;
        height: auto !important;
        max-height: 470px !important;
    }

    #js-product-page .product__gallery-image .product__slider-product .slick-slide img,
    #js-product-page .product__gallery-image .mobile-slide img,
    #js-product-page #product-core-image img {
        display: block !important;
        width: auto !important;
        height: auto !important;
        max-width: 100% !important;
        max-height: 470px !important;
        object-fit: contain !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}@media screen and (min-width: 901px) {
    /* Wider commercial canvas: header, main content, category nav and footer align to one wide grid. */
    header.header_type_1 .mamaroo-header-v3__inner,
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs,
    main.wrap,
    #main-content.wrap,
    #main-content .container,
    main.wrap .container,
    footer .container {
        width: min(1520px, calc(100vw - 80px)) !important;
        max-width: 1520px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }

    /* Pull the shop up: remove the excessive top air without sticking elements to the browser chrome. */
    header.header_type_1 .mamaroo-header-v3__inner {
        padding-top: 10px !important;
        padding-bottom: 18px !important;
    }

    header.header_type_1 .mamaroo-header-v3__top {
        margin-bottom: 16px !important;
    }

    /* Logo remains strong but no longer creates a tall empty top band. */
    header.header_type_1 .mamaroo-header-v3__logo-img,
    header.header_type_1 img.mamaroo-header-v3__logo-img.mamaroo-logo-main {
        width: clamp(340px, 28vw, 500px) !important;
        max-height: 132px !important;
    }

    /* Stronger, more commercial cart zone. */
    header.header_type_1 .mamaroo-header-v3__right {
        gap: 30px !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart {
        flex-basis: 84px !important;
        width: 84px !important;
        min-width: 84px !important;
        height: 78px !important;
        margin-top: 3px !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart .header-button__icon {
        width: 74px !important;
        height: 74px !important;
        border-radius: 14px !important;
        transition: background .18s ease, box-shadow .18s ease !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart .header-button__icon:hover {
        background: rgba(15, 31, 48, 0.045) !important;
        box-shadow: 0 4px 16px rgba(15,31,48,0.08) !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart .icon-cart {
        width: 54px !important;
        height: 46px !important;
        color: #0f1f30 !important;
        stroke-width: 2.4px !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart .cart-count,
    header.header_type_1 .mamaroo-header-v3__cart .header-button__cart-count {
        top: -7px !important;
        right: -7px !important;
        min-width: 25px !important;
        height: 25px !important;
        padding: 0 7px !important;
        background: #eef2f6 !important;
        color: #0f1f30 !important;
        border: 1px solid rgba(15,31,48,0.12) !important;
        font-size: 14px !important;
        line-height: 23px !important;
        font-weight: 850 !important;
    }

    /* Utility links should read as real shop navigation, not legal microtext. */
    header.header_type_1 .mamaroo-header-v3__service {
        gap: 16px 30px !important;
    }

    header.header_type_1 .mamaroo-header-v3__links,
    header.header_type_1 .mamaroo-header-v3__links.mamaroo-top-info-menu {
        gap: 10px 20px !important;
    }

    header.header_type_1 .mamaroo-header-v3__links a {
        color: #06111d !important;
        font-size: 15.5px !important;
        line-height: 22px !important;
        font-weight: 800 !important;
        letter-spacing: -0.012em !important;
    }

    header.header_type_1 .mamaroo-header-v3__links a:hover {
        color: #0f2a44 !important;
        text-decoration: underline !important;
        text-underline-offset: 4px !important;
    }

    /* Search scales with the wider header, but never runs off-screen. */
    header.header_type_1 .mamaroo-header-v3__search,
    header.header_type_1 .mamaroo-header-v3__search.search {
        max-width: 520px !important;
    }

    header.header_type_1 .mamaroo-header-v3__search input {
        height: 48px !important;
        font-size: 16px !important;
    }

    header.header_type_1 .mamaroo-header-v3__search button,
    header.header_type_1 .mamaroo-header-v3__search .search__icon {
        height: 48px !important;
        flex-basis: 104px !important;
        width: 104px !important;
        min-width: 104px !important;
    }

    /* Main catalog row: wider, clearer and visually aligned with the shop canvas. */
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs {
        gap: 0 48px !important;
        margin-bottom: 28px !important;
        padding-top: 17px !important;
        padding-bottom: 17px !important;
    }

    body > .menu-h.center-menu.hide-sm.hide-xs > li > a,
    ul.menu-h.center-menu.hide-sm.hide-xs > li > a {
        font-size: 21px !important;
        line-height: 28px !important;
        font-weight: 850 !important;
    }
}@media screen and (min-width: 901px) and (max-width: 1199px) {
    header.header_type_1 .mamaroo-header-v3__inner,
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs,
    main.wrap,
    #main-content.wrap,
    #main-content .container,
    main.wrap .container,
    footer .container {
        width: calc(100vw - 40px) !important;
        max-width: none !important;
    }

    header.header_type_1 .mamaroo-header-v3__inner {
        padding-top: 8px !important;
        padding-bottom: 16px !important;
    }

    header.header_type_1 .mamaroo-header-v3__top {
        grid-template-columns: minmax(260px, 390px) minmax(300px, 1fr) !important;
        gap: 20px !important;
        margin-bottom: 14px !important;
    }

    header.header_type_1 .mamaroo-header-v3__logo-img,
    header.header_type_1 img.mamaroo-header-v3__logo-img.mamaroo-logo-main {
        width: clamp(300px, 40vw, 390px) !important;
        max-height: 116px !important;
    }

    header.header_type_1 .mamaroo-header-v3__phone {
        font-size: 23px !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart {
        flex-basis: 74px !important;
        width: 74px !important;
        min-width: 74px !important;
        height: 70px !important;
        margin-top: 3px !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart .header-button__icon {
        width: 66px !important;
        height: 66px !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart .icon-cart {
        width: 49px !important;
        height: 42px !important;
        stroke-width: 2.4px !important;
    }

    header.header_type_1 .mamaroo-header-v3__links a {
        font-size: 15px !important;
        line-height: 21px !important;
    }

    header.header_type_1 .mamaroo-header-v3__search,
    header.header_type_1 .mamaroo-header-v3__search.search {
        max-width: 100% !important;
    }

    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs {
        gap: 0 34px !important;
        margin-bottom: 22px !important;
    }
}@media screen and (min-width: 1200px) and (max-width: 1399px) {
    header.header_type_1 .mamaroo-header-v3__inner,
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs,
    main.wrap,
    #main-content.wrap,
    #main-content .container,
    main.wrap .container,
    footer .container {
        width: calc(100vw - 60px) !important;
        max-width: none !important;
    }

    header.header_type_1 .mamaroo-header-v3__service {
        grid-template-columns: minmax(0, 1fr) minmax(360px, 480px) !important;
    }
}@media screen and (min-width: 1400px) {
    header.header_type_1 .mamaroo-header-v3__inner,
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs,
    main.wrap,
    #main-content.wrap,
    #main-content .container,
    main.wrap .container,
    footer .container {
        width: min(1520px, calc(100vw - 96px)) !important;
        max-width: 1520px !important;
    }
}@media screen and (min-width: 901px) {
    /* Stronger utility links, but still commercial, not banner-like. */
    header.header_type_1 .mamaroo-header-v3__links a {
        font-size: 16.5px !important;
        line-height: 24px !important;
        font-weight: 850 !important;
    }
}@media screen and (min-width: 901px) and (max-width: 1399px) {
    header.header_type_1 .mamaroo-header-v3__inner,
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs,
    main.wrap,
    #main-content.wrap,
    #main-content .container,
    main.wrap .container,
    footer .container {
        width: calc(100% - 88px) !important;
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
        min-width: 0 !important;
    }

    header.header_type_1 .mamaroo-header-v3,
    header.header_type_1 .mamaroo-header-v3__top,
    header.header_type_1 .mamaroo-header-v3__service,
    header.header_type_1 .mamaroo-header-v3__search,
    header.header_type_1 .mamaroo-header-v3__search form,
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs,
    main.wrap,
    main.wrap .container,
    #main-content.wrap,
    #main-content .container,
    .mamaroo-tiles-wrapfull-v12,
    .mamaroo-tiles-wrapfull-v12__inner {
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    header.header_type_1 .mamaroo-header-v3__top {
        grid-template-columns: minmax(260px, 420px) minmax(260px, 1fr) !important;
        gap: 24px !important;
    }

    header.header_type_1 .mamaroo-header-v3__logo-img,
    header.header_type_1 img.mamaroo-header-v3__logo-img.mamaroo-logo-main {
        width: clamp(300px, 32vw, 420px) !important;
        max-height: 124px !important;
    }

    header.header_type_1 .mamaroo-header-v3__service {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    header.header_type_1 .mamaroo-header-v3__links,
    header.header_type_1 .mamaroo-header-v3__links.mamaroo-top-info-menu {
        gap: 8px 22px !important;
    }

    header.header_type_1 .mamaroo-header-v3__search,
    header.header_type_1 .mamaroo-header-v3__search.search {
        width: 100% !important;
        max-width: 100% !important;
        justify-self: stretch !important;
    }
}@media screen and (min-width: 901px) and (max-width: 1199px) {
    header.header_type_1 .mamaroo-header-v3__inner,
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs,
    main.wrap,
    #main-content.wrap,
    #main-content .container,
    main.wrap .container,
    footer .container {
        width: calc(100% - 56px) !important;
    }

    header.header_type_1 .mamaroo-header-v3__links a {
        font-size: 16px !important;
        line-height: 23px !important;
    }

    header.header_type_1 .mamaroo-header-v3__search button,
    header.header_type_1 .mamaroo-header-v3__search .search__icon {
        flex-basis: 94px !important;
        width: 94px !important;
        min-width: 94px !important;
    }
}@media screen and (min-width: 1200px) and (max-width: 1399px) {
    header.header_type_1 .mamaroo-header-v3__inner,
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs,
    main.wrap,
    #main-content.wrap,
    #main-content .container,
    main.wrap .container,
    footer .container {
        width: calc(100% - 96px) !important;
    }
}@media screen and (min-width: 901px) {
    /* Header utility links: these are commercial service links, not micro-legal text. */
    header.header_type_1 .mamaroo-header-v3__links,
    header.header_type_1 .mamaroo-header-v3__links.mamaroo-top-info-menu {
        display: flex !important;
        align-items: center !important;
        flex-wrap: wrap !important;
        gap: 12px 30px !important;
        min-width: 0 !important;
    }

    header.header_type_1 .mamaroo-header-v3__links li {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
    }

    header.header_type_1 .mamaroo-header-v3__links a {
        display: inline-block !important;
        color: #06111d !important;
        font-size: 18px !important;
        line-height: 27px !important;
        font-weight: 850 !important;
        letter-spacing: -0.012em !important;
        white-space: nowrap !important;
        text-decoration: none !important;
    }

    header.header_type_1 .mamaroo-header-v3__links a:hover {
        color: #0f2a44 !important;
        text-decoration: underline !important;
        text-underline-offset: 4px !important;
    }

    /* Keep the service row balanced: links can wrap by link, search remains a stable block. */
    header.header_type_1 .mamaroo-header-v3__service {
        align-items: center !important;
    }
}@media screen and (min-width: 901px) and (max-width: 1199px) {
    header.header_type_1 .mamaroo-header-v3__links,
    header.header_type_1 .mamaroo-header-v3__links.mamaroo-top-info-menu {
        gap: 10px 24px !important;
    }

    header.header_type_1 .mamaroo-header-v3__links a {
        font-size: 17px !important;
        line-height: 26px !important;
    }
}@media screen and (min-width: 768px) {
    .mamaroo-footer .mamaroo-footer__row {
        display: grid !important;
        grid-template-columns: minmax(180px, .78fr) minmax(260px, 1fr) minmax(330px, 1.15fr) !important;
        gap: 28px 70px !important;
        align-items: start !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .mamaroo-footer .mamaroo-footer__row > .footer-section,
    .mamaroo-footer .mamaroo-footer__row > [class*="col-"] {
        display: block !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        flex: none !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }

    .mamaroo-footer .h5.header,
    .mamaroo-footer .footer-section-toggle,
    .mamaroo-footer .footer-section-title-static {
        display: block !important;
        margin: 0 0 16px !important;
        color: #06111d !important;
        font-size: 19px !important;
        line-height: 25px !important;
        font-weight: 850 !important;
        letter-spacing: -0.012em !important;
    }

    .mamaroo-footer .footer-menu-static li,
    .mamaroo-footer .footer__address > div {
        margin-bottom: 10px !important;
    }

    .mamaroo-footer .footer-menu-static a,
    .mamaroo-footer .footer__address a {
        display: inline-block !important;
        color: #06111d !important;
        font-size: 16.5px !important;
        line-height: 24px !important;
        font-weight: 520 !important;
        white-space: nowrap !important;
        text-decoration: none !important;
    }

    .mamaroo-footer .footer-menu-static a:hover,
    .mamaroo-footer .footer__address a:hover {
        color: #0f2a44 !important;
        text-decoration: underline !important;
        text-underline-offset: 4px !important;
    }
}@media screen and (min-width: 768px) and (max-width: 1050px) {
    .mamaroo-footer .mamaroo-footer__row {
        grid-template-columns: minmax(160px, .7fr) minmax(230px, .95fr) minmax(310px, 1.25fr) !important;
        gap: 24px 42px !important;
    }

    .mamaroo-footer .footer-menu-static a,
    .mamaroo-footer .footer__address a {
        font-size: 15.5px !important;
        line-height: 23px !important;
    }
}@media screen and (min-width: 768px) {
    /* Header service/info links: apply to the real desktop/tablet header band, including 768-900px. */
    header.header_type_1 .mamaroo-header-v3__service .mamaroo-header-v3__links,
    header.header_type_1 .mamaroo-header-v3__service ul.mamaroo-top-info-menu,
    .mamaroo-header-v3 .mamaroo-header-v3__service .mamaroo-top-info-menu {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 10px 24px !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    header.header_type_1 .mamaroo-header-v3__service .mamaroo-header-v3__links li,
    header.header_type_1 .mamaroo-header-v3__service ul.mamaroo-top-info-menu li,
    .mamaroo-header-v3 .mamaroo-header-v3__service .mamaroo-top-info-menu li {
        display: inline-flex !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        list-style: none !important;
        white-space: nowrap !important;
    }

    header.header_type_1 .mamaroo-header-v3__service .mamaroo-header-v3__links a,
    header.header_type_1 .mamaroo-header-v3__service ul.mamaroo-top-info-menu a,
    .mamaroo-header-v3 .mamaroo-header-v3__service .mamaroo-top-info-menu a {
        display: inline-block !important;
        color: #06111d !important;
        font-size: 16.5px !important;
        line-height: 25px !important;
        font-weight: 700 !important;
        letter-spacing: -0.01em !important;
        white-space: nowrap !important;
        text-decoration: none !important;
        opacity: 1 !important;
    }

    header.header_type_1 .mamaroo-header-v3__service .mamaroo-header-v3__links a:hover,
    header.header_type_1 .mamaroo-header-v3__service ul.mamaroo-top-info-menu a:hover,
    .mamaroo-header-v3 .mamaroo-header-v3__service .mamaroo-top-info-menu a:hover {
        color: #0f2a44 !important;
        text-decoration: underline !important;
        text-underline-offset: 4px !important;
    }

    /* E05E made footer links look like the active navigation. Keep the no-wrap footer, but return normal text weight. */
    .mamaroo-footer .footer-menu-static a,
    .mamaroo-footer .footer__address a {
        font-size: 16px !important;
        line-height: 24px !important;
        font-weight: 500 !important;
        white-space: nowrap !important;
    }

    .mamaroo-footer .footer__address,
    .mamaroo-footer .footer__address div,
    .mamaroo-footer .footer-menu-static,
    .mamaroo-footer .footer-menu-static li {
        font-weight: 400 !important;
    }
}@media screen and (min-width: 768px) and (max-width: 900px) {
    header.header_type_1 .mamaroo-header-v3__service .mamaroo-header-v3__links,
    header.header_type_1 .mamaroo-header-v3__service ul.mamaroo-top-info-menu,
    .mamaroo-header-v3 .mamaroo-header-v3__service .mamaroo-top-info-menu {
        gap: 8px 18px !important;
    }

    header.header_type_1 .mamaroo-header-v3__service .mamaroo-header-v3__links a,
    header.header_type_1 .mamaroo-header-v3__service ul.mamaroo-top-info-menu a,
    .mamaroo-header-v3 .mamaroo-header-v3__service .mamaroo-top-info-menu a {
        font-size: 15.75px !important;
        line-height: 24px !important;
        font-weight: 700 !important;
    }
}@media screen and (min-width: 1200px) {
    header.header_type_1 .mamaroo-header-v3__service .mamaroo-header-v3__links a,
    header.header_type_1 .mamaroo-header-v3__service ul.mamaroo-top-info-menu a,
    .mamaroo-header-v3 .mamaroo-header-v3__service .mamaroo-top-info-menu a {
        font-size: 17px !important;
        line-height: 26px !important;
        font-weight: 700 !important;
    }
}@media screen and (min-width: 768px) {
    /* Header service links should be readable, but not bold like the footer/category menu. */
    header.header_type_1 .mamaroo-header-v3__service .mamaroo-header-v3__links a,
    header.header_type_1 .mamaroo-header-v3__service ul.mamaroo-top-info-menu a,
    .mamaroo-header-v3 .mamaroo-header-v3__service .mamaroo-top-info-menu a {
        font-weight: 500 !important;
        font-size: 16.5px !important;
        line-height: 25px !important;
        letter-spacing: -0.004em !important;
    }

    /* Footer: keep it visually on the same content canvas and avoid the gray block feeling wider than the page body. */
    .mamaroo-footer > .container,
    footer.mamaroo-footer > .container,
    footer.footer.mamaroo-footer > .container {
        width: min(1360px, calc(100% - 88px)) !important;
        max-width: 1360px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }

    .mamaroo-footer .mamaroo-footer__row {
        grid-template-columns: minmax(180px, .78fr) minmax(280px, 1.05fr) minmax(360px, 1.22fr) !important;
        gap: 28px 74px !important;
    }
}@media screen and (min-width: 901px) and (max-width: 1199px) {
    .mamaroo-footer > .container,
    footer.mamaroo-footer > .container,
    footer.footer.mamaroo-footer > .container {
        width: calc(100% - 56px) !important;
        max-width: none !important;
    }

    .mamaroo-footer .mamaroo-footer__row {
        grid-template-columns: minmax(160px, .75fr) minmax(240px, 1fr) minmax(330px, 1.25fr) !important;
        gap: 24px 46px !important;
    }
}@media screen and (min-width: 1200px) {
    header.header_type_1 .mamaroo-header-v3__service .mamaroo-header-v3__links a,
    header.header_type_1 .mamaroo-header-v3__service ul.mamaroo-top-info-menu a,
    .mamaroo-header-v3 .mamaroo-header-v3__service .mamaroo-top-info-menu a {
        font-size: 17px !important;
        line-height: 26px !important;
        font-weight: 500 !important;
    }
}@media screen and (min-width: 1400px) {
    .mamaroo-footer > .container,
    footer.mamaroo-footer > .container,
    footer.footer.mamaroo-footer > .container {
        width: min(1360px, calc(100% - 112px)) !important;
        max-width: 1360px !important;
    }
}@media screen and (min-width: 768px) {
    header.header_type_1 .mamaroo-header-v3__service .mamaroo-header-v3__links a,
    header.header_type_1 .mamaroo-header-v3__service ul.mamaroo-top-info-menu a,
    .mamaroo-header-v3 .mamaroo-header-v3__service .mamaroo-top-info-menu a {
        font-weight: 500 !important;
        font-size: 16px !important;
        line-height: 25px !important;
        letter-spacing: 0 !important;
    }

    footer.mamaroo-footer,
    footer.footer.mamaroo-footer {
        background: transparent !important;
        padding-top: 48px !important;
        padding-bottom: 42px !important;
    }

    footer.mamaroo-footer > .mamaroo-footer-v2__container,
    footer.footer.mamaroo-footer > .mamaroo-footer-v2__container {
        width: min(1320px, calc(100% - 96px)) !important;
        max-width: 1320px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 42px 56px 24px !important;
        background: #f6f7f8 !important;
        box-sizing: border-box !important;
    }

    footer.mamaroo-footer .mamaroo-footer-v2__grid {
        display: grid !important;
        grid-template-columns: minmax(190px, 0.82fr) minmax(310px, 1.12fr) minmax(430px, 1.45fr) !important;
        gap: 32px 84px !important;
        align-items: start !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    footer.mamaroo-footer .mamaroo-footer-v2__section {
        min-width: 0 !important;
        width: auto !important;
        padding: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    footer.mamaroo-footer .h5.header,
    footer.mamaroo-footer .footer-section-title-static,
    footer.mamaroo-footer .footer-section-toggle {
        margin: 0 0 15px !important;
        color: #06111d !important;
        font-size: 18px !important;
        line-height: 24px !important;
        font-weight: 750 !important;
        letter-spacing: 0 !important;
    }

    footer.mamaroo-footer .footer-section-toggle {
        display: block !important;
        width: 100% !important;
        border: 0 !important;
        background: transparent !important;
        padding: 0 !important;
        text-align: left !important;
        cursor: default !important;
    }

    footer.mamaroo-footer .footer-toggle-icon {
        display: none !important;
    }

    footer.mamaroo-footer .footer-menu-static,
    footer.mamaroo-footer .footer__address {
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        display: block !important;
    }

    footer.mamaroo-footer .footer-menu-static li,
    footer.mamaroo-footer .footer__address > div {
        margin: 0 0 10px !important;
        padding: 0 !important;
        list-style: none !important;
    }

    footer.mamaroo-footer .footer-menu-static a,
    footer.mamaroo-footer .footer__address a {
        display: inline-block !important;
        color: #06111d !important;
        font-size: 15.5px !important;
        line-height: 22px !important;
        font-weight: 450 !important;
        white-space: nowrap !important;
        text-decoration: none !important;
    }

    footer.mamaroo-footer .footer-menu-static a:hover,
    footer.mamaroo-footer .footer__address a:hover {
        color: #0f2a44 !important;
        text-decoration: underline !important;
        text-underline-offset: 4px !important;
    }

    footer.mamaroo-footer .mamaroo-footer-v2__hr {
        margin: 34px 0 18px !important;
        border: 0 !important;
        border-top: 1px solid rgba(15, 42, 68, .12) !important;
    }

    footer.mamaroo-footer .mamaroo-footer-v2__rules,
    footer.mamaroo-footer .hint.mamaroo-footer-v2__rules {
        margin: 0 !important;
        color: #5e6670 !important;
        font-size: 13.5px !important;
        line-height: 20px !important;
        font-weight: 400 !important;
    }
}@media screen and (min-width: 768px) and (max-width: 1050px) {
    footer.mamaroo-footer > .mamaroo-footer-v2__container,
    footer.footer.mamaroo-footer > .mamaroo-footer-v2__container {
        width: calc(100% - 56px) !important;
        max-width: none !important;
        padding: 34px 32px 22px !important;
    }

    footer.mamaroo-footer .mamaroo-footer-v2__grid {
        grid-template-columns: minmax(150px, .75fr) minmax(250px, 1.05fr) minmax(350px, 1.35fr) !important;
        gap: 26px 42px !important;
    }

    footer.mamaroo-footer .footer-menu-static a,
    footer.mamaroo-footer .footer__address a {
        font-size: 14.5px !important;
        line-height: 21px !important;
    }
}@media screen and (min-width: 901px) {
    footer.mamaroo-footer > .mamaroo-footer-v2__container,
    footer.footer.mamaroo-footer > .mamaroo-footer-v2__container {
        width: min(1520px, calc(100% - 80px)) !important;
        max-width: 1520px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }
}@media screen and (min-width: 901px) and (max-width: 1199px) {
    footer.mamaroo-footer > .mamaroo-footer-v2__container,
    footer.footer.mamaroo-footer > .mamaroo-footer-v2__container {
        width: calc(100% - 40px) !important;
        max-width: none !important;
    }
}@media screen and (min-width: 1200px) and (max-width: 1399px) {
    footer.mamaroo-footer > .mamaroo-footer-v2__container,
    footer.footer.mamaroo-footer > .mamaroo-footer-v2__container {
        width: calc(100% - 60px) !important;
        max-width: none !important;
    }
}@media screen and (min-width: 1400px) {
    footer.mamaroo-footer > .mamaroo-footer-v2__container,
    footer.footer.mamaroo-footer > .mamaroo-footer-v2__container {
        width: min(1520px, calc(100% - 96px)) !important;
        max-width: 1520px !important;
    }
}@media screen and (min-width: 901px) {
    :root {
        --mamaroo-e05j-canvas-pad: clamp(24px, 3.2vw, 72px);
    }

    /* SIDEBAR03: в режиме бокового меню (nav-type-3) сайдбар уже даёт свой
       собственный "коридор" от края экрана - дублирующий canvas-pad поверх
       него убираем полностью, обнулив переменную здесь же, в её области
       видимости. header/main.wrap/#main-content.wrap подхватят 0 через
       padding-left/right:var(--canvas-pad), футер - через свою формулу
       ширины calc(100% - 2*var(--canvas-pad)), которая станет чистые 100%.
       Оставлено переопределяемым для будущих экспериментов - если позже
       понадобится небольшой воздух вместо нуля, меняется одно число здесь,
       остальные три места сами подхватят новое значение. */
    .nav-type-3 {
        --mamaroo-e05j-canvas-pad: 0px;
    }

    /* SIDEBAR11: после display:none на .mamaroo-header-v3__brand (SIDEBAR10)
       двухколоночная grid-сетка .mamaroo-header-v3__top осталась, но с одним
       спрятанным элементом авто-размещение CSS Grid бросает единственный
       оставшийся (телефон/корзина) в первую колонку вместо второй - оттого
       и смещение влево. Закрепляю явно, ширины самих колонок не трогаю. */
    .nav-type-3 header.header_type_1 .mamaroo-header-v3__right {
        grid-column: 2;
    }

    /* Header, catalog navigation, main content and footer must use one wide page canvas. */
    header.header_type_1 .mamaroo-header-v3__inner,
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs,
    main.wrap,
    #main-content.wrap,
    footer.mamaroo-footer > .mamaroo-footer-v2__container,
    footer.footer.mamaroo-footer > .mamaroo-footer-v2__container {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    header.header_type_1 .mamaroo-header-v3__inner,
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs,
    main.wrap,
    #main-content.wrap,
    footer.mamaroo-footer > .mamaroo-footer-v2__container,
    footer.footer.mamaroo-footer > .mamaroo-footer-v2__container {
        padding-left: var(--mamaroo-e05j-canvas-pad) !important;
        padding-right: var(--mamaroo-e05j-canvas-pad) !important;
    }

    /* Inner containers must not re-create the narrow centered column. */
    main.wrap .container,
    #main-content .container,
    main.wrap > .container,
    #main-content.wrap > .container,
    .mamaroo-tiles-wrapfull-v12,
    .mamaroo-tiles-wrapfull-v12__inner {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    main.wrap .container,
    #main-content .container,
    main.wrap > .container,
    #main-content.wrap > .container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Footer keeps the rebuilt E05H columns, but sits on the same wide canvas as the page. */
    footer.mamaroo-footer > .mamaroo-footer-v2__container,
    footer.footer.mamaroo-footer > .mamaroo-footer-v2__container {
        max-width: none !important;
    }
}@media screen and (min-width: 901px) and (max-width: 1199px) {
    :root {
        --mamaroo-e05j-canvas-pad: 28px;
    }
}@media screen and (min-width: 1200px) and (max-width: 1399px) {
    :root {
        --mamaroo-e05j-canvas-pad: 40px;
    }
}@media screen and (min-width: 1400px) {
    :root {
        --mamaroo-e05j-canvas-pad: clamp(48px, 3.6vw, 72px);
    }
}@media screen and (min-width: 901px) {
    /* Catalog menu horizontal rules: keep the wide menu, but draw rules only across the inner content width. */
    body > .menu-h.center-menu.hide-sm.hide-xs,
    ul.menu-h.center-menu.hide-sm.hide-xs {
        position: relative !important;
        border-top: 0 !important;
        border-bottom: 0 !important;
    }

    body > .menu-h.center-menu.hide-sm.hide-xs:before,
    ul.menu-h.center-menu.hide-sm.hide-xs:before,
    body > .menu-h.center-menu.hide-sm.hide-xs:after,
    ul.menu-h.center-menu.hide-sm.hide-xs:after {
        content: "" !important;
        position: absolute !important;
        left: var(--mamaroo-e05j-canvas-pad, clamp(24px, 3.2vw, 72px)) !important;
        right: var(--mamaroo-e05j-canvas-pad, clamp(24px, 3.2vw, 72px)) !important;
        height: 1px !important;
        background: rgba(31, 48, 68, 0.12) !important;
        pointer-events: none !important;
        display: block !important;
    }

    body > .menu-h.center-menu.hide-sm.hide-xs:before,
    ul.menu-h.center-menu.hide-sm.hide-xs:before {
        top: 0 !important;
    }

    body > .menu-h.center-menu.hide-sm.hide-xs:after,
    ul.menu-h.center-menu.hide-sm.hide-xs:after {
        bottom: 0 !important;
    }

    /* Footer panel: its gray surface should sit on the same inner content canvas, not on the outer padded canvas. */
    footer.mamaroo-footer > .mamaroo-footer-v2__container,
    footer.footer.mamaroo-footer > .mamaroo-footer-v2__container {
        width: calc(100% - (2 * var(--mamaroo-e05j-canvas-pad, clamp(24px, 3.2vw, 72px)))) !important;
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: clamp(30px, 3vw, 56px) !important;
        padding-right: clamp(30px, 3vw, 56px) !important;
        box-sizing: border-box !important;
    }

    /* Footer inner separator follows the footer content grid, not the outer page edge. */
    footer.mamaroo-footer .mamaroo-footer-v2__hr {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}@media screen and (min-width: 901px) and (max-width: 1199px) {
    footer.mamaroo-footer > .mamaroo-footer-v2__container,
    footer.footer.mamaroo-footer > .mamaroo-footer-v2__container {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }
}
/* LAYOUT03: у .product__gallery было жёсткое max-width:600px (в style.css),
   не зависящее от того, сколько места реально доступно в колонке на широких
   экранах - отсюда и пустота справа после LAYOUT02 (тот убрал только левый
   отступ режима 3, но не увеличивал сам предел ширины). Увеличиваю именно
   для режимов 1/2 - через :has(), проверяя отсутствие того же самого
   product__gallery__lp класса, который LAYOUT02 сделал специфичным для
   режима 3. Если у браузера нет :has() - жизнь останется как была (просто
   не увеличится), никакой поломки не будет ни в одном случае. */
@media screen and (min-width: 992px) {
    .product__gallery:has(#product-core-image:not(.product__gallery__lp)) {
        max-width: 100% !important;
    }
}

/* LAYOUT04/05: ограничение ширины товарного блока. body сейчас разрешён до
   2000px - на широких мониторах колонка галереи (50% от этого) получала
   около 1000px, и квадратное фото пыталось стать настолько же высоким.
   Значение 1400px (не 1200) выбрано специально - ровно столько же, сколько
   уже стоит у шапки (.mamaroo-header-v3__inner{max-width:1400px}) - чтобы
   товарный блок и шапка визуально совпадали по ширине, без шва между
   "широкой шапкой" и "узким контентом", который был заметен при 1200px. */
@media screen and (min-width: 1400px) {
    .product {
        max-width: 1400px;
        margin-left: auto;
        margin-right: auto;
    }
}

/* LAYOUT06: сузили весь сайт целиком, не только товарную страницу - по
   просьбе, раз шапка/товар уже выровнены на 1400px, остальные страницы
   (главная, категории, корзина) были ограничены только body{max-width:2000px}
   - заметно шире. Меняем именно этот один параметр у body, остальные его
   свойства (цвет, шрифт, отступы) не трогаем. На мобильных (это правило
   грузится только с 768px) эффекта нет физически - там и так уже уже. */
@media screen and (min-width: 1400px) {
    body {
        max-width: 1400px !important;
    }
}

/* SIDEBAR04: в режиме сайдбара (nav-type-3) body { padding-left:270px }
   вычитает эти 270px из тех же 1400 (body здесь фактически ведёт себя как
   border-box) - из-за этого main.wrap/#main-content.wrap получались 1130px
   вместо полных 1400. Даём body на 270px больше именно в этом режиме, чтобы
   после вычитания коридора сайдбара центральная часть осталась ровно 1400px,
   как и в режиме без сайдбара. Значение зависит от 1400 (стр. выше) и от
   270px из body.nav-type-3{padding-left:270px} - если поменяется один из
   двух, нужно поправить и здесь. */
@media screen and (min-width: 1400px) {
    body.nav-type-3 {
        max-width: 1670px !important;
    }
}

/* COSMETIC01: тоньше и менее скруглённая рамка у миниатюр галереи
   (режимы 2 и 3, используют одни и те же правила - отдельного правила
   для режима 2 не было). Было border:2px solid ...; border-radius:var(--radius)
   (var(--radius) в корневых переменных - величина заметная, судя по
   остальным border-radius в теме - от 8 до 14px). Стало 1px и 4px. */
.product__gallery__more-images .image {
    border-width: 1px !important;
    border-radius: 4px !important;
}
.product__gallery__more-images .selected {
    border-width: 1px !important;
}
.product__gallery__more-images .more-hide {
    border-radius: 4px !important;
}

/* COSMETIC02/03/04: заголовок товара (H1) поменьше - было 32px на десктопе,
   затем 26px, теперь 22px. Отступы сверху/снизу выровнены - было 10px/20px
   (несимметрично), стало 12px/12px.
   ВАЖНО (COSMETIC04): равных 12px/12px у самого H1 оказалось недостаточно -
   у хлебных крошек есть свой padding-bottom:15px (не margin, просто
   складывается), у галереи свой margin-top:20px - оба этих чужих отступа
   искажали итоговую видимую дистанцию с каждой стороны заголовка. Обнулил
   их, чтобы единственным источником отступа сверху/снизу оставался сам H1 -
   тогда видимый результат гарантированно симметричен, независимо от того,
   схлопываются ли margin'ы в этом месте разметки или складываются. */
@media screen and (min-width: 901px) {
    .product__price-block__header {
        font-size: 22px !important;
        line-height: 26px !important;
        margin: 12px 0 !important;
    }
    .breadcrumbs ul {
        padding-bottom: 0 !important;
    }
    .product__gallery {
        margin-top: 0 !important;
    }
}

/* SEARCHPOPUPFIX01 — keep desktop live-search results out of header flow.
   The custom header search was not covered by the stock .t-line/.full-width-search
   popup positioning, so AJAX results expanded the header vertically. */
@media screen and (min-width: 769px) {
    header.header_type_1 .mamaroo-header-v3__search,
    header.header_type_1 .mamaroo-header-v3__search.search {
        position: relative !important;
        overflow: visible !important;
        z-index: 10006;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup {
        position: absolute !important;
        top: calc(100% + 8px) !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        background: #fff !important;
        color: var(--body-color, #1f1f1f);
        z-index: 10005 !important;
        box-shadow: 0 16px 32px rgba(0,0,0,.12);
    }
}

/* SEARCHPOPUPFIX02 — compact desktop live-search dropdown.
   Keep FIX01 overlay behavior, but present results as a moderate-width list:
   small image on the left, name/price on the right, five rows + Show all.
   CSS only: search AJAX/logic and requested product image URLs are untouched. */
@media screen and (min-width: 769px) {
    header.header_type_1 .mamaroo-header-v3__search > .search-popup {
        left: auto !important;
        right: 0 !important;
        width: 560px !important;
        max-width: calc(100vw - 32px) !important;
        overflow: hidden !important;
        border: 1px solid rgba(0,0,0,.08);
        border-radius: 2px;
        box-shadow: 0 14px 34px rgba(0,0,0,.14) !important;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_block {
        position: relative;
        padding-top: 32px;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .hint-text {
        position: absolute;
        top: 9px;
        left: 12px;
        font-size: 12px;
        line-height: 16px;
        color: var(--gray-color, #777);
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .icon-close {
        position: absolute;
        top: 8px;
        right: 9px;
        width: 18px;
        height: 18px;
        display: block;
        cursor: pointer;
        background: url(../img/close.svg) center/14px 14px no-repeat;
        opacity: .65;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_search {
        border-bottom: 1px solid #e8e8e8;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row {
        display: table;
        table-layout: fixed;
        width: 100%;
        min-height: 76px;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_cell {
        display: table-cell;
        vertical-align: middle;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .image {
        width: 82px;
        height: 76px;
        padding: 6px 8px 6px 10px;
        text-align: center;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .image a {
        width: 64px;
        height: 64px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .image img {
        width: auto !important;
        height: auto !important;
        max-width: 64px !important;
        max-height: 64px !important;
        padding: 0 !important;
        object-fit: contain;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .name {
        width: auto;
        padding: 8px 14px 8px 4px;
        line-height: 16px;
        text-align: left !important;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .name > a {
        display: block;
        margin: 0 0 4px;
        color: var(--body-color, #1f1f1f);
        font-size: 13px;
        line-height: 17px;
        font-weight: 500;
        text-decoration: none;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .name > a:hover {
        color: var(--main-color, #e30027);
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .price {
        font-size: 16px;
        line-height: 18px;
        font-weight: 600;
        white-space: nowrap;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .price s {
        display: inline;
        margin-left: 8px;
        color: var(--gray-color, #888);
        font-size: 12px;
        line-height: 16px;
        font-weight: 400;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_search_link {
        margin: 12px 0;
        text-align: center;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_search_link .btn {
        padding: 7px 15px;
        font-size: 12px;
        line-height: 16px;
    }
}

/* SEARCHPOPUPFIX03 — scale live-search for 3440x1440-class desktop screens.
   Geometry from FIX02 is preserved (560px popup, overlay behavior).
   Only visual density is increased: larger product images, slightly larger
   typography and controls, plus a subtle row hover. CSS only. */
@media screen and (min-width: 769px) {
    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_block {
        padding-top: 36px;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .hint-text {
        top: 10px;
        left: 14px;
        font-size: 13px;
        line-height: 18px;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .icon-close {
        top: 9px;
        right: 10px;
        width: 20px;
        height: 20px;
        background-size: 15px 15px;
        opacity: .72;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row {
        min-height: 96px;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row:hover {
        background: rgba(0,0,0,.025);
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .image {
        width: 106px;
        height: 96px;
        padding: 6px 10px 6px 12px;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .image a {
        width: 84px;
        height: 84px;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .image img {
        max-width: 84px !important;
        max-height: 84px !important;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .name {
        padding: 10px 16px 10px 4px;
        line-height: 18px;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .name > a {
        margin-bottom: 5px;
        font-size: 14px;
        line-height: 18px;
        font-weight: 500;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .price {
        font-size: 17px;
        line-height: 20px;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_row .price s {
        font-size: 13px;
        line-height: 18px;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_search_link {
        margin: 14px 0;
    }

    header.header_type_1 .mamaroo-header-v3__search > .search-popup .ajax_search_link .btn {
        padding: 8px 18px;
        font-size: 13px;
        line-height: 18px;
    }
}

/* LRN HOMEHEAD01 — compact sidebar type and a stable type-2 header search.
   The stock full-width search used to enter normal page flow and push the
   homepage down on every click. It now overlays the page below the header.
   Lorena's phone alignment is restored after the universal header rules. */
@media screen and (min-width: 901px) {
    body.nav-type-3 header.header_type_2 {
        position: relative !important;
        z-index: 30 !important;
        overflow: visible !important;
    }

    body.nav-type-3 header.header_type_2 .t-line__contact__number,
    body.nav-type-3 header.header_type_2 .t-line__contact__number span,
    body.nav-type-3 header.header_type_2 .t-line__contact__time,
    body.nav-type-3 header.header_type_2 .t-line__contact__time span {
        text-align: left !important;
    }

    body.nav-type-3 header.header_type_2 > .full-width-search {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 1px 20px 20px !important;
        display: block !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateY(-6px) !important;
        transition: opacity .16s ease, transform .16s ease, visibility 0s linear .16s !important;
        background: #f6f7f7 !important;
        box-shadow: 0 12px 24px rgba(0, 0, 0, .08) !important;
        box-sizing: border-box !important;
        z-index: 10004 !important;
    }

    body.nav-type-3 header.header_type_2 > .full-width-search.active {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translateY(0) !important;
        transition-delay: 0s !important;
    }
}
