/* ============================================================
   MOBILE RESPONSIVE — Северные Стрелы 2.0
   Breakpoints:
     1200px — fluid containers, no header centering
      900px — tablet: hide big logo, fix block padding
      640px — mobile: logo+search 48/48, no cart, dark nav
      400px — small phone: 1-col
   ============================================================ */


/* ── 1. Fluid containers (≤ 1200px) ── */
@media (max-width: 1200px) {

    /* Remove column-centering so bars stretch full width */
    .a2_0-header-centering-wrapper {
        align-items: stretch !important;
    }

    .a2_0-upper-top-bar-inner,
    .a2_0-top-bar-inner {
        width: 100% !important;
        padding-left: 20px;
        padding-right: 20px;
        box-sizing: border-box;
    }

    #menu_top .menu_items.cla {
        width: 100% !important;
        padding-left: 20px;
        padding-right: 20px;
        box-sizing: border-box;
    }

    .a2_0-footer-inner {
        width: 100% !important;
        padding: 0 20px;
        box-sizing: border-box;
    }
}


/* ── 2. Tablet (≤ 900px) ── */
@media (max-width: 900px) {

    /* shrink search */
    .search-input   { width: 220px !important; }
    #search_input_block { width: 220px !important; }

    /* hide big decorative logo in О НАС */
    .a2_0_block_image { display: none !important; }

    /* inner container — no horizontal padding here to avoid
       white side-strips on the coloured НОВИНКИ block */
    .a2_0_inner {
        width: 100% !important;
        box-sizing: border-box;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* push padding into the actual content children instead */
    .a2_0_block_title {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    .a2_0_block_content {
        width: 100% !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
        box-sizing: border-box;
    }

    /* НОВИНКИ: 2×2 */
    .a2_0_products_content {
        flex-wrap: wrap !important;
        gap: 20px !important;
    }

    .a2_0_products_content .product {
        width: calc(50% - 10px) !important;
        margin: 0 !important;
        box-sizing: border-box;
    }

    /* О НАС */
    .a2_0_big_text { width: 100% !important; }
    .a2_0_block_content.a2_0_block_content_column { width: 100% !important; }

    /* inner pages */
    .wrapper_inner {
        padding: 20px !important;
        box-sizing: border-box;
    }
}


/* ── 3. Mobile (≤ 640px) ── */
@media (max-width: 640px) {

    /* ── Upper bar: hide ── */
    .a2_0-upper-top-bar { display: none !important; }

    /* ── HEADER ──
       Single row: [Logo 48%]  [Search 48%]   Cart = hidden
    */
    .a2_0-top-bar {
        position: static !important;
        height: auto !important;
        min-height: auto !important;
    }

    .a2_0-top-bar-inner {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        height: auto !important;
        padding: 8px 15px !important;
        box-sizing: border-box;
        gap: 8px;
        align-items: center;
    }

    /* Logo — left, 48% of header */
    .header_logo.a2_0-top-bar-inner-left-inner {
        flex: 0 0 48% !important;
        width: 48% !important;
        height: auto !important;
    }

    .header_logo img {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
    }

    /* Right inner — right, 48%, only contains search */
    .a2_0-top-bar-inner-right-inner {
        flex: 0 0 48% !important;
        width: 48% !important;
        margin-left: auto !important;
        margin-right: 0 !important;
        height: auto !important;
        align-items: center;
    }

    /* Cart — hidden on mobile */
    a.a2_0-cart,
    .a2_0-cart {
        display: none !important;
    }

    /* Search — full width inside right-inner */
    .a2_0-search-form {
        width: 100% !important;
        margin: 0 !important;
    }

    #search_input_block {
        width: 100% !important;
    }

    .search-input {
        width: 100% !important;
        height: 48px !important;
        font-size: 13px !important;
        box-sizing: border-box;
    }

    #button_search {
        margin-left: calc(100% - 45px) !important;
    }


    /* ── NAV: hamburger ── */
    #menu_top {
        height: auto !important;
        min-height: 44px !important;
        padding: 0 !important;
        justify-content: flex-start !important;
        position: relative !important;
    }

    #menu_top .menu_items.cla {
        width: 100% !important;
        padding: 0 !important;
        position: static !important;
        align-items: stretch;
    }

    /* hide desktop nav items */
    .menu_item.a2_0_menu_item,
    .menu_item.a2_0_menu_item_catalog {
        display: none !important;
    }

    /* show hamburger — dark grey */
    #menu_top .menu_item_menu320 {
        display: flex !important;
        width: 100%;
        align-items: stretch;
        background: #48484A;
        padding: 0 15px;
    }

    /* Override common.css: .menu_item:hover .menu_item__link { background: #327dad }
       and .menu_item_menu320:hover .submenu_item_menu_menu320 { background: #fff }
       Both fire on mobile tap and corrupt the menu colours */
    #menu_top .menu_item_menu320 .menu_item__link,
    #menu_top .menu_item_menu320:hover .menu_item__link,
    #menu_top .menu_item_menu320:active .menu_item__link {
        display: flex !important;
        align-items: center;
        color: white !important;
        background: transparent !important;
        padding: 0 15px;
        height: 44px;
        font-size: 15px;
        font-weight: 600;
        width: 100%;
        text-decoration: none;
        line-height: 1;
    }

    #menu_top .submenu_item_menu_menu320,
    #menu_top .menu_item_menu320:hover .submenu_item_menu_menu320 {
        background: #2d2d2f !important;
    }

    #menu_top .menu_item_menu320 .menu_item__link::before {
        content: '☰';
        margin-right: 10px;
        font-size: 20px;
        line-height: 1;
    }

    /* dropdown */
    #menu_top .submenu_item_menu_menu320 {
        display: none;
        position: absolute;
        top: 44px;
        left: 0;
        right: 0;
        width: 100%;
        z-index: 9999;
        box-shadow: 0 6px 16px rgba(0,0,0,0.35);
    }

    .submenu_item_menu_menu320 ul {
        margin: 0;
        padding: 6px 0;
        list-style: none;
    }

    .submenu_item_menu_menu320 ul li a {
        display: block;
        padding: 13px 30px;
        color: white !important;
        font-size: 15px;
        font-weight: 500;
        text-decoration: none !important;
        border-bottom: 1px solid rgba(255,255,255,0.07);
        transition: background 0.15s;
    }

    .submenu_item_menu_menu320 ul li:last-child a { border-bottom: none; }

    .submenu_item_menu_menu320 ul li a:hover { background: #48484A; }

    .submenu_items { display: none !important; }


    /* ── MAIN PAGE BLOCKS ── */

    .a2_0_block { padding: 20px 20px !important; }

    .a2_0_inner {
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box;
    }

    .a2_0_block_title {
        font-size: 20px !important;
        margin-top: 10px !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    .a2_0_block_content {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    /* hide decorative bg art */
    .a2_0_background { display: none !important; }
    .a2_0_block_image { display: none !important; }

    /* МЫ ПРЕДЛАГАЕМ — 2×2 */
    .a2_0_block_content.a2_0_offers_content,
    .a2_0_block_content.a2_0_block_content_row.a2_0_offers_content {
        flex-wrap: wrap !important;
        gap: 0 !important;
        margin-top: 16px !important;
        width: 100% !important;
        justify-content: space-between;
    }

    .a2_0_advantage_divider { display: none !important; }

    .a2_0_advantage_block {
        width: 50% !important;
        padding: 16px 10px !important;
        box-sizing: border-box;
        align-items: center;
    }

    .a2_0_advantage_title {
        font-size: 13px !important;
        margin-top: 10px !important;
    }

    .a2_0_advantage_description {
        font-size: 12px !important;
        margin-top: 8px !important;
    }

    .a2_0_advantage_image {
        max-width: 42px !important;
        height: auto !important;
        width: auto !important;
    }

    /* НОВИНКИ — 2×2 */
    .a2_0_products_content {
        flex-wrap: wrap !important;
        gap: 12px !important;
        margin-top: 16px !important;
        width: 100% !important;
    }

    .a2_0_products_content .product {
        width: calc(50% - 6px) !important;
        margin: 0 !important;
        box-sizing: border-box;
    }

    .a2_0_products_content .product .product_title h3 { font-size: 12px !important; }
    .a2_0_products_content .product .product_buy_block_price { font-size: 12px !important; }
    .a2_0_products_content .product .button_product_buy {

    }

    /* О НАС */
    .a2_0_block_content.a2_0_block_content_column.a2_0_about_content {
        width: 100% !important;
        margin-top: 16px !important;
    }

    .a2_0_big_text {
        width: 100% !important;
        font-size: 15px !important;
    }

    .a2_0_big_text.a2_0_big_text_mt_30 { margin-top: 16px !important; }
    .a2_0_big_text.a2_0_big_text_mt_20 { margin-top: 12px !important; }

    .a2_0_big_button {
        max-width: 100% !important;
        width: 100% !important;
        font-size: 16px !important;
        height: 52px !important;
        margin-top: 20px !important;
        margin-bottom: 16px !important;
    }


    /* ── FOOTER ── */
    .a2_0-footer-inner {
        width: 100% !important;
        padding: 0 !important;
    }

    .footer_blocks {
        flex-direction: column !important;
        padding: 20px 15px 0 !important;
    }

    .footer_block { width: 100% !important; padding: 0px 20px; }
    .footer_block_company { margin-left: 0 !important; margin-top: 20px; }

    .footer_block_inforamtions {
        float: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-top: 20px;
    }

    .footer_block ul {
        padding: 0;
        margin: 0 0 6px;
    }

    .copyright {
        padding: 15px;
        font-size: 12px;
        line-height: 1.6;
    }


    /* ── INNER PAGES ── */
    .wrapper_inner {
        padding: 25px 35px !important;
        box-sizing: border-box;
    }

    .wrapper_inner img {
        max-width: 100%;
        height: auto;
    }

    .wrapper_inner table {
        width: 100% !important;
        font-size: 13px;
    }
}


/* ── 4. Small phones (≤ 400px) ── */
@media (max-width: 400px) {

    .header_logo img { max-width: auto !important; }

    /* МЫ ПРЕДЛАГАЕМ — single column, horizontal card */
    .a2_0_advantage_block {
        width: 100% !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 14px;
        padding: 12px 0 !important;
        border-bottom: 1px solid #f0f0f0;
        text-align: left !important;
    }

    .a2_0_advantage_block:last-child { border-bottom: none; }

    .a2_0_advantage_title,
    .a2_0_advantage_description {
        text-align: left !important;
        margin-top: 4px !important;
    }

    .a2_0_advantage_image {
        flex-shrink: 0;
        max-width: 36px !important;
    }

    /* НОВИНКИ — single column */
    .a2_0_products_content .product { width: 100% !important; }


}


@media (min-width: 768px) {
    .slider_general_item__image {
        height: 557px;
    }
}