@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;
    }
}



/* ==========================================================================
   NUNA_HEADER02 — restrained brand header, 2026-08-21
   Keeps the existing Modus/MamaRoo header markup and search/cart mechanics.
   ========================================================================== */
@media screen and (min-width: 768px) {
    header.header_type_1 .mamaroo-header-v3__inner {
        padding-top: 20px !important;
        padding-bottom: 13px !important;
    }

    header.header_type_1 .mamaroo-header-v3__top {
        margin-bottom: 13px !important;
        gap: 24px !important;
    }

    .nav-type-3 header.header_type_1 .mamaroo-header-v3__top {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    header.header_type_1 .mamaroo-header-v3__right {
        gap: 14px !important;
    }

    header.header_type_1 .mamaroo-header-v3__phone {
        color: #10233e !important;
        font-size: 22px !important;
        line-height: 1.08 !important;
        font-weight: 650 !important;
        letter-spacing: -0.015em !important;
    }

    header.header_type_1 .mamaroo-header-v3__time {
        margin-top: 3px !important;
        color: #7a828c !important;
        font-size: 12.5px !important;
        line-height: 17px !important;
        font-weight: 400 !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart {
        flex-basis: 44px !important;
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
    }

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

    header.header_type_1 .mamaroo-header-v3__cart .icon-cart {
        width: 31px !important;
        height: 27px !important;
        color: #10233e !important;
    }

    header.header_type_1 .mamaroo-header-v3__cart .cart-count,
    header.header_type_1 .mamaroo-header-v3__cart .header-button__cart-count {
        top: -5px !important;
        right: -5px !important;
        min-width: 19px !important;
        height: 19px !important;
        padding: 0 5px !important;
        font-size: 11px !important;
        line-height: 19px !important;
        font-weight: 650 !important;
        background: #f1f3f5 !important;
        color: #10233e !important;
    }

    header.header_type_1 .mamaroo-header-v3__service {
        grid-template-columns: minmax(0, 1fr) minmax(320px, 400px) !important;
        gap: 14px 24px !important;
    }

    header.header_type_1 .mamaroo-header-v3__links,
    header.header_type_1 .mamaroo-header-v3__links.mamaroo-top-info-menu {
        gap: 6px 17px !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 {
        color: #4f5965 !important;
        font-size: 13px !important;
        line-height: 19px !important;
        font-weight: 450 !important;
        letter-spacing: 0 !important;
        transition: color .2s ease !important;
    }

    header.header_type_1 .mamaroo-header-v3__service .mamaroo-header-v3__links a:hover,
    .mamaroo-header-v3 .mamaroo-header-v3__service .mamaroo-top-info-menu a:hover {
        color: #10233e !important;
        text-decoration: none !important;
    }

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

    header.header_type_1 .mamaroo-header-v3__search input {
        height: 40px !important;
        padding: 0 14px !important;
        border: 1px solid #dfe3e7 !important;
        border-right: 0 !important;
        background: #fff !important;
        color: #16243a !important;
        font-size: 14px !important;
        line-height: 20px !important;
        box-shadow: none !important;
    }

    header.header_type_1 .mamaroo-header-v3__search input::placeholder {
        color: #9aa1a9 !important;
        opacity: 1 !important;
    }

    header.header_type_1 .mamaroo-header-v3__search button,
    header.header_type_1 .mamaroo-header-v3__search .search__icon {
        flex: 0 0 74px !important;
        width: 74px !important;
        min-width: 74px !important;
        height: 40px !important;
        padding: 0 10px !important;
        border: 1px solid #10233e !important;
        background: #10233e !important;
        color: #fff !important;
        font-size: 12px !important;
        line-height: 38px !important;
        font-weight: 600 !important;
        box-shadow: none !important;
    }
}

@media screen and (min-width: 768px) and (max-width: 1100px) {
    header.header_type_1 .mamaroo-header-v3__service {
        grid-template-columns: minmax(0, 1fr) minmax(280px, 350px) !important;
        gap: 12px 18px !important;
    }
    header.header_type_1 .mamaroo-header-v3__service .mamaroo-header-v3__links a,
    .mamaroo-header-v3 .mamaroo-header-v3__service .mamaroo-top-info-menu a {
        font-size: 12px !important;
    }
}
