/* ==========================================================================
   DrinkMe — shared site styles.
   Section 1: static layout fallback (moved from Edits/public/index.html <style id="static-layout-fallback">)
   Section 2: header menu styles (moved from inline <style> in header)
   Section 3: fixes for inner pages (catalog, product, info pages)
   ========================================================================== */

/* ---------- 1. Static layout fallback ---------- */
/* Stable static fallback for the saved Bitrix page. It deliberately comes after remote CSS. */
*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; width: 100%; min-height: 100%; }
body.type {
    font-family: Roboto, Arial, Helvetica, sans-serif !important;
    color: #4b565d;
    background: #fff;
    overflow-x: hidden;
    line-height: 1.45;
}
a { color: inherit; }
img { max-width: 100%; height: auto; }
.clr { clear: both; }
.wrapper { width: min(1180px, calc(100% - 40px)) !important; max-width: 1180px !important; margin-left: auto !important; margin-right: auto !important; }
.content { width: 100% !important; max-width: none !important; }

/* Header */
header { position: relative; z-index: 20; width: 100%; background: #fff; }
.header_all { width: 100%; }
.header_row1 { background: #f4f6f7; border-bottom: 1px solid #e5e8ea; }
.header_row1_inner_wrap { min-height: 38px; display: flex !important; align-items: center; justify-content: space-between; gap: 24px; }
.header_row1 p { margin: 0; font-size: 12px; line-height: 1.3; color: #7a858c; }
.header_phone { margin-left: auto; white-space: nowrap; }
.header_row2 { background: #fff; border-bottom: 1px solid #edf0f1; }
.header_row2_inner { min-height: 90px; display: grid !important; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; }
.header_row2_list1 > ul,
.header_row2_list2 ul { list-style: none; padding: 0; margin: 0; display: flex !important; align-items: center; gap: 18px; }
.header_row2_list1 a, .header_row2_list2 a { text-decoration: none; font-size: 12px; color: #5b676f; }
.header_logo { display: flex; align-items: center; justify-content: center; min-width: 170px; }
.header_logo img { display: block; width: 170px; max-height: 62px; object-fit: contain; }
.header_row2_list2 { display: flex !important; justify-content: flex-end; align-items: center; gap: 18px; }
.header_row2_list2 .list_1 > div > ul { gap: 12px; }
.header_row2_list2 .list_2 ul { gap: 14px; }
.header_row3 { background: #fff; border-bottom: 1px solid #e9edef; }
.header_row3 .content > div { width: 100%; }
.q-new-menu { width: 100%; min-height: 44px; display: flex !important; align-items: center; justify-content: center; overflow: visible !important; }
.q-new-menu > ul { width: 100%; list-style: none; margin: 0 !important; padding: 0 !important; display: flex !important; align-items: stretch; justify-content: center; gap: 0; }
.q-new-menu > ul > li { float: none !important; display: flex !important; align-items: center; width: auto !important; height: 44px !important; line-height: 44px !important; margin: 0 !important; padding: 0 18px !important; position: relative; white-space: nowrap; background: #fff; }
.q-new-menu > ul > li > a { text-decoration: none; font-size: 12px; color: #5b676f; line-height: 44px; }
.q-new-menu > ul > li > a > img { display: none !important; }
.q-new-menu-div { top: 44px !important; z-index: 50; }

/* Hero slider: deterministic static rendering, first frame only */
.index_section { width: 100%; overflow: visible; }
.slider_slim_wrap, .slider_slim { width: 100%; position: relative; overflow: hidden; }
.slider_slim { min-height: 320px; }
.slider_slim_index { display: none !important; width: 100%; }
.slider_slim_index:first-child { display: block !important; }
.slider_slim_index > a { display: block; width: 100%; }
.slider_slim_index_inner { display: block; width: 100%; height: 320px !important; min-height: 320px; background-size: cover !important; background-position: center !important; background-repeat: no-repeat !important; background-color: #eef2f4; }

/* Titles and content */
.title-section { width: 100%; text-align: center; margin: 42px 0 24px; }
.title-section.index { margin-top: 34px; }
.title-section h1, .title-section h2, h1.title, h2.title { margin: 0; text-align: center; font-weight: 400; color: #465159; letter-spacing: .02em; }
.title-section h1 { font-size: clamp(28px, 3vw, 42px); }
.title-section h2 { font-size: clamp(24px, 2.4vw, 34px); }
#content-1, #content-2, #content-3 { width: 100%; clear: both; }
#content-1.js_q_sales { display: none !important; } /* section is empty in the source */
#content-3[style*="display: none"] { display: none !important; }
.goods-section { display: block !important; width: 100% !important; }
.goods-section > .list { display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 18px; width: 100%; align-items: stretch; }
.list_row { float: none !important; width: auto !important; min-width: 0; margin: 0 !important; padding: 18px 14px 16px !important; border: 1px solid #e6e9eb; background: #fff; position: relative; display: flex !important; flex-direction: column; min-height: 500px; }
.qblack-friday { min-height: 20px; }
.qblack-friday img { max-height: 40px; width: auto; }
.bottle { min-height: 250px !important; height: 250px !important; display: block !important; position: relative; margin-bottom: 12px; }
.bottle_counter { display: block !important; width: 100%; height: 100% !important; }
.product-item-image-wrapper { display: block !important; width: 100%; height: 100%; position: relative; text-decoration: none; }
.product-item-image-original { display: block !important; width: 100%; height: 100%; background-size: contain !important; background-repeat: no-repeat !important; background-position: center center !important; }
.product-item-image-slider-slide-container { display: none !important; }
.item-price { display: none !important; }
.select_text_price_mob_wap { display: flex !important; flex-direction: column; flex: 1 1 auto; min-width: 0; }
.select_text_price_mob_wap > .select { margin: 0 0 10px; }
.select_text_price_mob_wap select { width: 100%; min-height: 38px; border: 1px solid #dfe4e7; background: #fff; padding: 6px 9px; color: #5b676f; }
.list_row .text { min-height: 72px !important; height: auto !important; margin: 4px 0 10px; }
.list_row .text p { margin: 0 0 4px; }
.drinkme_product_name { text-decoration: none; font-size: 15px; line-height: 1.35; color: #3f4a51; overflow-wrap: anywhere; }
.drinkme_product_brand { display: block; color: #929ba1; font-size: 13px; }
.price { margin: auto 0 14px; }
.product-item-price-current { margin: 0; font-size: 20px; color: #2f3a40; font-weight: 700; }
.buttons { width: 100%; margin-top: 0; }
.mob_buttons_first_row_wrap { width: 100%; }
.add-cart, .buttons_out_of_stock, .favorites, .buttons_oneclick { width: 100%; }
.add-cart { min-height: 42px; display: flex !important; align-items: stretch; cursor: pointer; }
.add-cart .left { flex: 1; }
.add-cart .left .inactive, .buttons_out_of_stock { min-height: 42px; display: flex; align-items: center; justify-content: center; background: #34bdf0; }
.add-cart .left p, .buttons_out_of_stock p { margin: 0; color: #fff; font-size: 12px; font-weight: 700; }
.add-cart .right { width: 42px; background: #20a9dd; }
.favorites { margin-top: 8px; min-height: 38px; display: flex !important; border: 1px solid #e1e5e7; }
.favorites .left { flex: 1; }
.favorites .left a { min-height: 36px; display: flex; align-items: center; justify-content: center; text-decoration: none; }
.favorites p { margin: 0; font-size: 11px; }
.favorites .right { width: 40px; border-left: 1px solid #e1e5e7; }
.buttons_oneclick { margin-top: 8px; text-align: center; }
.buttons_oneclick p { margin: 0; padding: 9px 6px; font-size: 12px; text-decoration: underline; cursor: pointer; }
.link { clear: both; text-align: center; margin: 30px 0 48px; }
.more_catalog { display: inline-block; padding: 12px 26px; border: 1px solid #40bde9; color: #24aada; text-decoration: none; font-size: 12px; }
.catalog_preloader { display: none !important; }

/* SEO / accordion block */
.accordeon { margin: 28px 0 56px; font-size: 15px; line-height: 1.65; color: #5b676f; }
.accordeon > p { margin: 0 auto 20px; max-width: 980px; text-align: center; }
.ac-head { display: none !important; }
.ac-body { display: block !important; }
.about_seo { width: 50%; float: left; padding: 0 24px; }
.about_seo h2 { font-size: 24px; margin: 18px 0; }
.about_seo p { margin: 0 0 14px; }
.our_advantages { padding-left: 20px; }
.ac-close { display: none !important; }
.span-blue { color: #24b3e7; }
.span-black { color: #222; }

/* Footer */
footer { clear: both; width: 100%; background: #30383d; color: #dbe1e4; }
.footer_all { padding: 42px 0 0; }
.footer_1 .content { display: grid !important; grid-template-columns: 170px 1fr; gap: 42px; align-items: start; }
.footer_logo img { width: 150px; }
.footer_row_inner { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }
.footer_row_inner ul { list-style: none; margin: 0; padding: 0; }
.footer_row_inner li { margin: 0 0 12px; }
.footer_row_inner a { color: #dbe1e4; text-decoration: none; font-size: 12px; }
.footer_text_2 .search { margin-bottom: 18px; }
.search_inner { display: flex; border-bottom: 1px solid #657077; }
.search_inner input { flex: 1; min-width: 0; border: 0; padding: 9px 4px; background: transparent; color: #fff; }
.search_inner button { width: 36px; border: 0; background: transparent; }
.search_fall_out { display: none !important; }
.footer_2 { margin-top: 34px; border-top: 1px solid #485158; }
.footer2_inner { min-height: 70px; display: grid !important; grid-template-columns: 1fr 2fr 1fr; gap: 20px; align-items: center; }
.footer2_inner p { margin: 0; font-size: 11px; color: #aeb7bc; }
.footer_2_text1 { display: flex !important; align-items: center; gap: 8px; }
.footer_2_text1 img { width: 14px; }
.footer_2_text2 { text-align: center; }
.footer_2_text3 { text-align: right; }
.footer_2_text3 a { color: inherit; }
.footer_mob { display: none !important; }

/* All old modal markup must stay out of document flow in static mode. */
.pop_up_block, .popup_form, #shope_mob_drop_down { display: none !important; }

@media (max-width: 1050px) {
    .goods-section > .list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .header_row2_inner { grid-template-columns: 1fr auto 1fr; gap: 14px; }
    .header_row2_list1 > ul, .header_row2_list2 ul { gap: 10px; }
    .q-new-menu > ul > li { padding: 0 10px !important; }
}

@media (max-width: 768px) {
    .wrapper { width: min(100% - 28px, 1180px) !important; }
    .header_row1_inner_wrap { min-height: auto; padding: 9px 0; display: block !important; }
    .header_row1_inner_wrap > div { margin: 2px 0; }
    .header_phone { margin-left: 0; }
    .header_row2_inner { min-height: 72px; grid-template-columns: 1fr auto; }
    .header_row2_list1 { display: none !important; }
    .header_logo { justify-content: flex-start; min-width: 0; }
    .header_logo img { width: 145px; }
    .header_row2_list2 { justify-content: flex-end; }
    .header_row2_list2 .list_1 { display: none !important; }
    .header_row2_list2 .list_2 ul { display: flex !important; }
    .q-new-menu { min-height: auto; height: auto !important; overflow-x: auto !important; overflow-y: hidden !important; -webkit-overflow-scrolling: touch; }
    .q-new-menu > ul { width: max-content !important; min-width: 100%; justify-content: flex-start; flex-wrap: nowrap; }
    .q-new-menu > ul > li { width: auto !important; min-width: max-content; display: flex !important; height: 44px !important; margin: 0 !important; padding: 0 14px !important; overflow: visible !important; }
    .q-new-menu > ul > li > a { padding-left: 0 !important; font-size: 11px; }
    .q-new-menu > ul > li > a > img { display: none !important; }
    .q-new-menu-div { display: none !important; }
    .slider_slim, .slider_slim_index_inner { min-height: 220px !important; height: 220px !important; }
    .title-section { margin: 30px 0 20px; }
    .goods-section > .list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .list_row { min-height: 450px; padding: 14px 10px !important; }
    .bottle { min-height: 210px !important; height: 210px !important; }
    .about_seo { width: 100%; float: none; padding: 0; }
    .footer_1 .content { grid-template-columns: 1fr; gap: 28px; }
    .footer_row_inner { grid-template-columns: 1fr 1fr; }
    .footer_text_3 { grid-column: 1 / -1; }
    .footer2_inner { grid-template-columns: 1fr; gap: 8px; padding: 18px 0; text-align: left; }
    .footer_2_text2, .footer_2_text3 { text-align: left; }
}

@media (max-width: 480px) {
    .goods-section > .list { grid-template-columns: 1fr; }
    .list_row { min-height: 0; }
    .bottle { min-height: 260px !important; height: 260px !important; }
    .slider_slim, .slider_slim_index_inner { min-height: 180px !important; height: 180px !important; }
    .footer_row_inner { grid-template-columns: 1fr; }
    .footer_text_3 { grid-column: auto; }
}

/* ---------- 2. Header menu ---------- */
@media screen and (min-width: 768px) {
    .qnew-wrapper-in {
        margin: 0px 25px;
    }

    .q-new-menu {
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
    }

    .q-new-menu li a img{
        display: none;
    }

    nav {
        background-color: #fff;
    }

    nav ul {
        padding: 0;
        margin: 0;
        list-style: none;
        /*position: relative;*/
    }

    nav ul li {
        display: inline-block;
        font-size: 12px;
        /* text-align: center; */
        margin: 0 0 0 2em;
        /* float: left; */
        display: inline-block;
        background-color: #ffffff;
        line-height: 42px;
        height: 42px;
        border-bottom: 3px solid transparent;
    }
    .border_active{
        border-color: #44c2f1;
    }
    nav a {
        color: #5b676f;
        font-family: 'RobotoRegular';
        text-decoration: none;
        -webkit-transition: all 0.2s;
        -moz-transition: all 0.2s;
        -o-transition: all 0.2s;
        transition: all 0.2s;
        text-transform: uppercase;
        position: relative;
    }

    nav a:hover {
        color: #44c2f0;
        /*background-color: #fff;*/
    }

    nav ul .q-new-menu-div {
        display: none;
        position: absolute;
        top: 42px;
        background: white;
        width: 100%;
        left: 0;
        text-align: left;
        right: 0;
        top: 40px;
        background: #f4f4f4;
        width: 100%;
    }

    .q-new-menu-div .qnew-wrapper {
        max-width: 1024px;
        margin: 0px auto;
    }

    nav ul div span {
        padding: 0px 20px;
    }

    nav ul ul li a {
        padding: 15px;
    }

    nav ul li:hover > .q-new-menu-div {
        display: inherit;
        animation: fade-in 1s;
    }

    @keyframes fade-in {
        from {
            opacity: 0;
        }
        to {
            opacity: 1;
        }
    }

    @keyframes fade-out {
        from {
            opacity: 1;
        }
        to {
            opacity: 0;
        }
    }

    nav ul ul li {
        width: 170px;
        float: none;
        display: list-item;
        position: relative;
        margin: 0px;
        padding: 10px 0px;
    }

    nav ul ul ul li {
        position: relative;
        top: -60px;
        left: 170px;
    }

    .q-sub-menu:before {
        content: ' ';
        background-image: url(/bitrix/templates/main/img/down-pointer.svg);
        background-repeat: no-repeat;
        background-size: 100%;
        width: 10px;
        height: 10px;
        background-position: center center;
        display: block;
        position: absolute;
        top: 4px;
        right: -15px;
        padding: 0px;
    }

    li > a:only-child:after {
        content: '';
    }

    .q-sub-menu.active {
        color: #44c2f1;
    }

    .qnew-wrapper-in .active a {
        color: #44c2f1;
    }
}

@media screen and (max-width: 768px) {
    .q-new-menu{
        overflow: scroll;
        height: 75vh;
    }

    .q-new-menu ul {
        list-style: none;
        margin: 0;
        padding: 0;
        display: block;
        width: 100%;
        font-size: 0;
        /* display: flex; */
        /* justify-content: space-between; */
        /* width: 100%; */
        /* box-sizing: border-box; */
        /* -moz-box-sizing: border-box; */
        /* -webkit-box-sizing: border-box; */
    }

    .q-new-menu ul li {
        width: 100%;
        font-size: 16px;
        margin: 0 0 10px 0;
        overflow: hidden;
        display: block;
        text-align: left;
        line-height: 20px;
        height: auto;
        margin: 10px 0;
    }

    .q-new-menu ul li a {
        /* color: #879095; */
        text-transform: uppercase;
        color: #5b676f;
        font-family: 'RobotoRegular';
        position: relative;
        padding-left: 30px;
    }

    .q-new-menu ul li a img{
        display: unset;
        width: 20px;
        position: absolute;
        left: 0;
        top: 1px;
    }

    /*
    .q-new-menu-div::after {
        background-color: #e3e3e3;
        content:" ";
        height: 300px;
        width: 300px;
        display: block;
    }
    */

    .q-new-menu-div span {
        display: block;
        padding: 10px 0;
    }

    .q-new-menu-div {
        display: none;
        padding: 10px 15px;
        border-top: 1px solid #00adee;
        border-bottom: 1px solid #00adee;
    }
}

/* ---------- 3. Inner pages: fixes and missing styles ----------
   Inner pages share the header/footer markup with the home page, but their Bitrix
   template CSS is not part of the static copy. Some pages still load the legacy
   /bitrix/templates/main/css/main.css, so rules here must win over it too. */

/* 3.0 Neutralise legacy main.css layout constraints */
html body.type { min-width: 0 !important; width: 100% !important; }
body.type *, body.type *::before, body.type *::after { box-sizing: border-box !important; }
body.type .wrapper > .content { padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; }
.catalog-filter-breadcrumb { display: block !important; width: auto !important; }
.catalog-br { padding: 0 !important; width: auto !important; }
.card_goods .row { margin-left: 0 !important; margin-right: 0 !important; }
.card_goods [class*="col-xs-"], .card_goods [class*="col-md-"], .card_goods [class*="col-sm-"] { padding-left: 0 !important; padding-right: 0 !important; width: 100% !important; float: none !important; }
.bx_sale_gift_main_products:empty, .bx_sale_gift_main_products:not(:has(img, a)) { display: none !important; }

/* 3.1 Header & menu */
.q-new-menu, .q-new-menu a, nav a { font-family: Roboto, Arial, Helvetica, sans-serif !important; }
.q-sub-menu:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M1.5 3.5 5 7l3.5-3.5' fill='none' stroke='%235b676f' stroke-width='1.3'/%3E%3C/svg%3E") !important;
}
@media (min-width: 769px) {
    .q-new-menu > ul > li > .q-sub-menu { padding-right: 16px; }
    .q-sub-menu:before { top: 50% !important; right: 0 !important; margin-top: -5px; }
}
.goods_card_content { display: none !important; } /* "added to cart" toast, JS-driven */
.q-new-menu { scrollbar-width: none; }
.q-new-menu::-webkit-scrollbar { display: none; }
.q-new-menu > ul > li.border_active > a { color: #44c2f1; }
/* Dropdown opened by click/tap or keyboard (js/site.js adds li.is-open) */
@media (min-width: 769px) {
    .q-new-menu > ul > li.is-open > .q-new-menu-div,
    .q-new-menu > ul > li:focus-within > .q-new-menu-div { display: block !important; }
}
.q-new-menu-div .qnew-wrapper-in { display: flex; flex-wrap: wrap; justify-content: center; gap: 0 6px; padding: 6px 0; }
.q-new-menu-div .qnew-wrapper-in span { line-height: 40px; }
.q-new-menu-div .qnew-wrapper-in a:hover { color: #44c2f0; }
@media (max-width: 768px) {
    .q-new-menu > ul > li.is-open > .q-new-menu-div {
        display: block !important; position: fixed !important; left: 0; right: 0; z-index: 60;
        padding: 6px 14px; background: #f4f6f7; border-top: 1px solid #44c2f1; border-bottom: 1px solid #e1e5e7;
        box-shadow: 0 8px 18px rgba(48, 56, 61, .12);
    }
    .q-new-menu > ul > li.is-open > .q-new-menu-div .qnew-wrapper-in { display: block; margin: 0; padding: 0; }
    .q-new-menu > ul > li.is-open > .q-new-menu-div span { display: block; padding: 0; line-height: 1; }
    .q-new-menu > ul > li.is-open > .q-new-menu-div a { display: block; padding: 11px 0 !important; font-size: 13px; line-height: 1.3; border-bottom: 1px solid #e5e8ea; }
    .q-new-menu > ul > li.is-open > .q-new-menu-div span:last-child a { border-bottom: 0; }
    .q-new-menu > ul > li.is-open > a.q-sub-menu { color: #44c2f1; }
    .q-sub-menu { padding-right: 16px !important; }
    .q-sub-menu:before {
        content: ''; display: block !important; position: absolute; right: 0; top: 50%; width: 10px; height: 10px; margin-top: -5px;
        background-repeat: no-repeat; background-size: 100%;
    }
}

/* 3.2 Breadcrumbs */
.catalog-filter-breadcrumb { margin: 18px 0 6px; }
.bx-breadcrumb { display: flex !important; flex-wrap: wrap; align-items: center; gap: 4px 6px; margin: 0; padding: 0; font-size: 12px; line-height: 1.5; color: #929ba1; }
.bx-breadcrumb-item { display: inline-flex !important; align-items: center; gap: 6px; float: none !important; margin: 0 !important; height: auto !important; }
.bx-breadcrumb-item a { color: #7a858c; text-decoration: none; }
.bx-breadcrumb-item a:hover { color: #24aada; }
.bx-breadcrumb-item .no-link { color: #a3acb1; }
.bx-breadcrumb-item, .bx-breadcrumb-item a, .bx-breadcrumb-item span { min-width: 0; white-space: normal !important; overflow-wrap: anywhere; text-transform: none !important; }
.bx-breadcrumb > div:not(.bx-breadcrumb-item) { display: none; }

/* 3.3 Generic page content */
body.type #content { width: 100%; padding-bottom: 56px; }
body.type #content h1 { margin: 22px 0 26px; font-size: clamp(26px, 2.6vw, 36px); font-weight: 400; line-height: 1.25; color: #465159; letter-spacing: .02em; text-align: center; }
body.type #content h2 { margin: 30px 0 16px; font-size: clamp(20px, 2vw, 26px); font-weight: 400; line-height: 1.3; color: #465159; }
body.type #content h3 { margin: 22px 0 12px; font-size: 18px; font-weight: 500; color: #465159; }
body.type #content p, body.type #content li { font-size: 15px; line-height: 1.65; color: #5b676f; }
body.type #content p { margin: 0 0 14px; }
body.type #content ul, body.type #content ol { margin: 0 0 18px; padding-left: 22px; }
body.type #content li { margin: 0 0 6px; }
body.type #content p a, body.type #content li a, body.type #content td a { color: #24aada; }
/* keep product cards / buttons exactly as on the home page */
body.type #content .list_row p, body.type #content .buttons p { font-size: 12px; line-height: 1.3; margin: 0; }
body.type #content .add-cart .left p, body.type #content .buttons_out_of_stock p { color: #fff; font-weight: 700; }
body.type #content .favorites p { font-size: 11px; color: #5b676f; }
body.type #content .buttons_oneclick p { margin: 0; padding: 9px 6px; color: #5b676f; }
body.type #content .list_row .text p { margin: 0 0 4px; font-size: 15px; line-height: 1.35; }
body.type #content .list_row a.drinkme_product_name { color: #3f4a51; }
body.type #content .list_row .drinkme_product_brand, body.type #content .list_row .drinkme_product_brand a { color: #929ba1; font-size: 13px; }
body.type #content .product-item-price-current { font-size: 20px; color: #2f3a40; font-weight: 700; }
body.type #content table { width: 100%; border-collapse: collapse; margin: 0 0 20px; font-size: 14px; }
body.type #content td, body.type #content th { border: 1px solid #e6e9eb; padding: 8px 10px; text-align: left; vertical-align: top; }
body.type #content iframe { max-width: 100%; }
.wrapper .wrapper { width: 100% !important; max-width: none !important; }
.title-section h1 { margin: 0 !important; }

/* 3.4 Catalog listing (section pages) */
.list_row [data-entity="quantity-block"], .list_row .title_mobile_count { display: none !important; }
.list_row .select2-container { display: none !important; }
.list_row select.select2-hidden-accessible, .list_row select {
    position: static !important; clip: auto !important; clip-path: none !important; width: 100% !important; height: auto !important;
    min-height: 38px; margin: 0 !important; padding: 6px 9px !important; overflow: visible !important;
    border: 1px solid #dfe4e7 !important; background: #fff; color: #5b676f; font-size: 13px;
}
.list_row .text { height: auto !important; }
/* pages that still load legacy main.css: reset its absolute/floated card internals */
.list_row .select_text_price_mob_wap > .select, .list_row .select { position: static !important; width: 100% !important; height: auto !important; margin: 0 0 10px !important; float: none !important; }
.list_row .text, .list_row .price { position: static !important; float: none !important; width: auto !important; text-align: left !important; padding: 0 !important; }
.list_row .bottle { float: none !important; width: 100% !important; }
.list_row .buttons, .list_row .mob_buttons_first_row_wrap { position: static !important; float: none !important; width: 100% !important; display: block !important; }
.list_row .add-cart, .list_row .favorites { float: none !important; width: 100% !important; height: auto !important; margin-left: 0 !important; margin-right: 0 !important; }
.list_row .add-cart .left, .list_row .favorites .left { float: none !important; width: auto !important; height: auto !important; }
.list_row .add-cart .right, .list_row .favorites .right { float: none !important; height: auto !important; margin: 0 !important; }
.list_row .add-cart .right .inactive, .list_row .add-cart .right span { height: 100%; }
.list_row .buttons_out_of_stock { width: 100% !important; float: none !important; margin: 0 !important; }
.list_row .buttons_oneclick { width: 100% !important; float: none !important; height: auto !important; background: transparent !important; }
.list_row .buttons_oneclick p { color: #5b676f !important; text-transform: none !important; font-weight: 400 !important; }
.list_row .select_text_price_mob_wap { width: auto !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.list_row .add-cart { display: flex !important; flex-direction: row !important; }
.list_row .add-cart .right { width: 42px !important; flex: 0 0 42px; }
.list_row .favorites { display: flex !important; flex-direction: row !important; }
.list_row .favorites .right { width: 40px !important; flex: 0 0 40px; }
.list_row .favorites .left a { display: flex !important; align-items: center; justify-content: center; min-height: 36px; padding: 0 !important; }
.list_row .favorites p { padding: 0 !important; line-height: 1.2 !important; }
.list_row .buttons_oneclick { border: 0 !important; }
.list_row { height: auto !important; overflow: visible !important; }
.list_row .favorites { position: relative !important; top: auto !important; left: auto !important; right: auto !important; bottom: auto !important; height: auto !important; margin: 8px 0 0 !important; border: 1px solid #e1e5e7 !important; background: #fff !important; }
.list_row .favorites .left, .list_row .favorites .right, .list_row .favorites a { position: static !important; }
.list_row .favorites .right { border-left: 1px solid #e1e5e7 !important; }
.title-section, .title-section h1 { background: none !important; color: #465159 !important; padding: 0 !important; }
body.type #content .list_row .product-item-price-current, .list_row .product-item-price-current { color: #2f3a40 !important; }
.header_row2_list1 a, .header_row2_list2 a { white-space: nowrap; }

/* age gate block (legacy pages render it inline) */
#age .wrapper { width: 100% !important; }
#age .age-aproval-title h1 { margin: 0 0 22px !important; text-align: center !important; color: #fff !important; font-weight: 300 !important; font-size: clamp(22px, 2.6vw, 34px) !important; }
.list_row .bottle img { max-height: 100%; object-fit: contain; }
.bx-pagination { margin: 26px 0 0; text-align: center; }
.bx-pagination ul { list-style: none !important; padding: 0 !important; display: flex !important; flex-wrap: wrap; justify-content: center; gap: 6px; }
.bx-pagination li { margin: 0 !important; }
.bx-pagination li a, .bx-pagination li span { display: inline-block; min-width: 34px; padding: 6px 10px; border: 1px solid #e1e5e7; color: #5b676f; text-decoration: none; font-size: 13px; }
.bx-pagination li.bx-active span { border-color: #34bdf0; background: #34bdf0; color: #fff; }

/* 3.5 Product card page */
.card_goods .card-goods-banner:empty { display: none; }
.card_goods.one_clic_item_wrap > div[id^="bx_"] { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: start; padding-top: 18px; }
.card_goods.one_clic_item_wrap > div[id^="bx_"] > .left,
.card_goods.one_clic_item_wrap > div[id^="bx_"] > .right { float: none !important; width: auto !important; min-width: 0; margin: 0 !important; }
.card_goods_slider { position: relative; width: 100% !important; height: auto !important; }
.product-item-detail-slider-block { position: relative; width: 100%; padding: 0 !important; }
.product-item-detail-slider-images-container { position: relative; display: flex !important; align-items: center; justify-content: center; width: 100%; height: 480px !important; border: 1px solid #e6e9eb; background: #fff; overflow: hidden; }
.product-item-detail-slider-image { display: none !important; width: 100%; height: 100%; }
.product-item-detail-slider-image.active { display: flex !important; align-items: center; justify-content: center; }
.product-item-detail-slider-image img { max-width: 100%; max-height: 100%; object-fit: contain; }
.product-item-detail-slider-close, .product-item-detail-slider-left, .product-item-detail-slider-right,
.product-item-label-text, .jameson_dublin_sticker { display: none !important; }
.card_goods .right .title h1, .card_goods h1.drinkme_product_name { margin: 0 0 18px !important; font-size: clamp(24px, 2.4vw, 32px) !important; font-weight: 400 !important; color: #3f4a51 !important; text-align: left !important; line-height: 1.25 !important; }
.card_goods .right .price { margin: 0 0 20px; }
.card_goods .right .price p { margin: 0; }
.product-item-detail-price-current { font-size: 28px; font-weight: 700; color: #2f3a40; }
.product-item-detail-price-old { color: #929ba1; text-decoration: line-through; font-size: 16px; }
.amount_cardgoods { margin: 0 0 22px; }
.amount_cardgoods > p { margin: 0 0 8px !important; font-size: 13px !important; color: #7a858c !important; }
.card_good_scope_ul_wrap ul { list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex; flex-wrap: wrap; gap: 8px; }
.card_good_scope_ul_wrap li { margin: 0 !important; min-width: 56px; padding: 7px 12px; border: 1px solid #dfe4e7; text-align: center; font-size: 13px !important; color: #5b676f; cursor: pointer; }
.card_good_scope_ul_wrap li.selected, .card_good_scope_ul_wrap li:first-child:last-child { border-color: #34bdf0; color: #24aada; }
.card_goods .quantity[data-entity="quantity-block"] { display: none !important; }
.card_goods .right .buttons { max-width: 420px; }
.card_goods .right .text { margin-top: 28px; padding-top: 22px; border-top: 1px solid #e9edef; }
.card_goods .right .text h2 { margin-top: 0 !important; }
#catalog_store_amount_div:empty, .bx-sidebar-block:empty { display: none; }
/* legacy main.css overrides on product pages */
.card_goods .right .title h1, .card_goods h1.drinkme_product_name { text-transform: none !important; letter-spacing: 0 !important; }
.card_goods .right > div { float: none !important; position: static !important; width: auto !important; }
.card_goods .right .price, .card_goods .right .price * { text-align: left !important; float: none !important; }
.card_goods .right .product-item-detail-price-current { color: #2f3a40 !important; font-size: 28px !important; font-weight: 700 !important; width: auto !important; }
.card_goods .right .buttons, .card_goods .right .mob_buttons_first_row_wrap { display: block !important; position: static !important; float: none !important; width: 100% !important; }
.card_goods .right .buttons { max-width: 420px !important; }
.card_goods .right .add-cart { display: flex !important; flex-direction: row !important; width: 100% !important; height: auto !important; float: none !important; margin: 0 !important; }
.card_goods .right .add-cart .left { flex: 1; width: auto !important; float: none !important; height: auto !important; }
.card_goods .right .add-cart .right { flex: 0 0 42px; width: 42px !important; height: auto !important; float: none !important; margin: 0 !important; }
.card_goods .right .favorites { display: flex !important; width: 100% !important; height: auto !important; float: none !important; margin: 8px 0 0 !important; }
.card_goods .right .favorites .left { flex: 1; width: auto !important; float: none !important; height: auto !important; }
.card_goods .right .favorites .left a { display: flex !important; align-items: center; justify-content: center; min-height: 36px; }
.card_goods .right .favorites .right { flex: 0 0 40px; width: 40px !important; float: none !important; height: auto !important; margin: 0 !important; }
.card_goods .right .buttons_oneclick { width: 100% !important; height: auto !important; float: none !important; background: transparent !important; border: 0 !important; margin-top: 8px !important; }
body.type #content .card_goods .right .buttons_oneclick p { color: #5b676f !important; text-transform: none !important; font-weight: 400 !important; background: transparent !important; }
.card_goods .right .text p { text-align: left !important; }
.card_goods .right .text h2 { text-transform: none !important; font-weight: 400 !important; }
.card_goods .left, .card_goods_slider, .product-item-detail-slider-block { position: relative !important; top: auto !important; left: auto !important; height: auto !important; }
.product-item-detail-slider-images-container { position: relative !important; top: auto !important; left: auto !important; right: auto !important; width: 100% !important; margin: 0 !important; }
.card_goods .right .favorites, .card_goods .right .add-cart, .card_goods .right .buttons_oneclick { position: relative !important; top: auto !important; left: auto !important; }
/* sticky-kit (legacy JS) pins the gallery and inserts a spacer div */
.card_goods .left > .card_goods_slider.is_stuck { position: relative !important; top: auto !important; bottom: auto !important; width: 100% !important; }
.card_goods .left > div:not(.card_goods_slider) { display: none !important; }
.card_goods .right .mob_buttons_first_row_wrap, .list_row .mob_buttons_first_row_wrap { padding: 0 !important; margin: 0 !important; }
.card_goods .right .favorites .left, .list_row .favorites .left { display: block !important; }
body.type .card_goods .right .add-cart .left .inactive, body.type .list_row .add-cart .left .inactive { display: flex !important; align-items: center; justify-content: center; width: 100% !important; height: 100%; min-height: 42px; margin: 0 !important; padding: 0 !important; position: static !important; }
body.type .card_goods .right .favorites, body.type .card_goods .right .add-cart { bottom: auto !important; right: auto !important; }
body.type .list_row .buttons, body.type .card_goods .right .buttons { height: auto !important; overflow: visible !important; }
/* button rows: higher specificity than legacy main.css/mobile.css !important rules */
body.type .list_row .mob_buttons_first_row_wrap, body.type .card_goods .right .mob_buttons_first_row_wrap { display: flex !important; flex-direction: column !important; gap: 8px; height: auto !important; }
body.type .list_row .mob_buttons_first_row_wrap > *, body.type .card_goods .right .mob_buttons_first_row_wrap > * { position: relative !important; top: auto !important; bottom: auto !important; left: auto !important; right: auto !important; width: 100% !important; margin: 0 !important; float: none !important; }
body.type .list_row .add-cart, body.type .card_goods .right .add-cart { display: flex !important; flex-direction: row !important; align-items: stretch !important; width: 100% !important; min-height: 42px; }
body.type .list_row .add-cart .left, body.type .card_goods .right .add-cart .left { flex: 1 1 auto !important; min-width: 0 !important; width: auto !important; }
body.type .list_row .add-cart .right, body.type .card_goods .right .add-cart .right { flex: 0 0 42px !important; width: 42px !important; height: auto !important; background: #20a9dd !important; }
body.type .list_row .add-cart .right .inactive, body.type .card_goods .right .add-cart .right .inactive { display: none !important; }
body.type .list_row .add-cart > div, body.type .card_goods .right .add-cart > div,
body.type .list_row .favorites > div, body.type .card_goods .right .favorites > div { position: static !important; }
body.type #content .list_row .price p, body.type #content .list_row .product-item-price-current { font-size: 20px !important; font-weight: 700; color: #2f3a40 !important; line-height: 1.3; }
body.type .list_row .favorites, body.type .card_goods .right .favorites { display: flex !important; flex-direction: row !important; }
body.type .list_row .buttons_oneclick, body.type .card_goods .right .buttons_oneclick { position: static !important; margin-top: 8px !important; }
body.type .title-section { margin: 34px 0 24px !important; }
.q-new-menu-div a { text-decoration: none !important; }
body.type footer .footer_text_2 .search, body.type footer .search_inner { width: 100% !important; max-width: 100% !important; }
body.type #content .card_goods .right .text p, body.type #content .card_goods .right .text li { font-size: 15px !important; line-height: 1.65 !important; color: #5b676f !important; text-align: left !important; }
.card_good_scope_ul_wrap li { float: none !important; width: auto !important; height: auto !important; line-height: 1.4 !important; }

/* "Viewed / similar products" block under the product card */
.detail-viewed h4 { margin: 40px 0 16px; font-size: 20px; font-weight: 400; color: #465159; text-transform: none; }
.catalog-products-viewed .row { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.catalog-products-viewed .row::before, .catalog-products-viewed .row::after { display: none !important; }
.catalog-products-viewed [class*="col-"] { width: auto !important; padding: 0 !important; float: none !important; }
.catalog-products-viewed .list_row { min-height: 0 !important; height: 100%; }
.catalog-products-viewed .list_row .text { text-align: left !important; }
body.type #content .catalog-products-viewed .list_row .text a { color: #3f4a51; text-decoration: none; }
body.type #content .catalog-products-viewed .list_row .text span { color: #929ba1; font-size: 13px; }

/* 3.6 News */
.news_inner > .title { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.news_inner_content .title h1 { font-size: clamp(20px, 2vw, 26px) !important; text-align: left !important; margin-top: 0 !important; }
.news_inner_content .text iframe { display: block; width: 100%; aspect-ratio: 16 / 9; height: auto; margin: 0 0 18px; }
.slider_news { display: none !important; } /* slick slider without its CSS; the static gallery below is used instead */
.slider_news_img { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; margin: 20px 0; }
.slider_news_img .slider_block { margin: 0 !important; width: auto !important; height: auto !important; }
.slider_news_img img { display: block; width: 100%; height: 180px; object-fit: cover; background: #eef2f4; }

/* 3.7 Brands / manufacturer */
.name_production { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 40px; }
.name_production .line { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 30px; align-content: start; width: auto !important; float: none !important; }
.name_production .name { width: auto !important; float: none !important; margin: 0 !important; }
.name_production ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }
.name_production li { margin: 0 0 4px !important; font-size: 14px !important; }
.name_production a { color: #5b676f !important; text-decoration: none; }
.name_production a:hover { color: #24aada !important; }

/* 3.8 Contacts / delivery / info pages */
.contacts_button .content { display: flex !important; justify-content: center; gap: 10px; flex-wrap: wrap; }
.contacts_button .button { float: none !important; width: auto !important; margin: 0 !important; padding: 9px 20px; border: 1px solid #40bde9; color: #24aada; cursor: pointer; }
.contacts_button .button p { margin: 0 !important; font-size: 12px !important; color: inherit !important; text-transform: uppercase; }
.contacts_button .button.active { background: #34bdf0; color: #fff; }
.contacts_info { margin: 26px auto 0; max-width: 760px; text-align: center; }
.map_wrap:empty { display: none; }
body.type .contacts_info ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }
body.type .contacts_info li { margin: 0 0 10px !important; }
body.type .contacts_info img { display: inline-block; width: 18px; height: 18px; vertical-align: middle; }
.payInfoContainer.mobile { display: none !important; }
.payInfoContainer.desctop { display: grid !important; }
.deliveryContainer .title h2, .warning h2 { text-align: center; }
.payInfoContainer { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin: 0 0 24px; }
.payInfoContainer > div { width: auto !important; float: none !important; padding: 20px 22px; border: 1px solid #e6e9eb; }
.bold-theme { font-weight: 700; color: #465159 !important; }
.warning { margin: 0 0 48px; padding: 18px; background: #f4f6f7; }
.warning h2 { margin: 0 !important; font-size: 18px !important; }

/* 3.9 Footer: enforce home-page footer over legacy main.css */
body.type footer { background: #30383d !important; color: #dbe1e4; text-align: left !important; }
body.type footer .footer_all { background: transparent !important; }
body.type footer .footer_row_1 { float: none !important; width: auto !important; }
body.type footer .footer_row_inner > div { float: none !important; width: auto !important; text-align: left !important; margin: 0 !important; }
body.type footer .footer_row_inner a { color: #dbe1e4 !important; font-size: 12px !important; text-align: left !important; }
body.type footer .footer_row_inner ul, body.type footer .footer_row_inner li { text-align: left !important; float: none !important; width: auto !important; padding: 0 !important; }
body.type footer .search_inner button { background: transparent !important; border: 0 !important; height: auto !important; }
body.type footer .search { width: auto !important; float: none !important; }
body.type footer .footer_logo { float: none !important; width: auto !important; }
body.type footer .search_inner { background: transparent !important; border: 0 !important; border-bottom: 1px solid #657077 !important; height: auto !important; }
body.type footer .search_inner input { background: transparent !important; color: #fff !important; height: auto !important; padding: 9px 4px !important; }
body.type footer .footer2_inner > div { float: none !important; width: auto !important; }
body.type footer .footer2_inner p { color: #aeb7bc !important; font-size: 11px !important; }
body.type footer .footer_2_text2 { text-align: center !important; }
body.type footer .footer_2_text3 { text-align: right !important; }
@media (max-width: 768px) {
    body.type footer .footer_2_text2, body.type footer .footer_2_text3 { text-align: left !important; }
}

/* Footer extras (main.js moves the header info row here on mobile) */
.footer_text_mob p { margin: 0 0 6px; font-size: 12px !important; line-height: 1.45; color: #aeb7bc !important; }
.footer_text_mob .header_row1_inner_wrap { display: block !important; min-height: 0; padding: 0; }

@media (max-width: 1050px) {
    .card_goods.one_clic_item_wrap > div[id^="bx_"] { gap: 28px; }
    .product-item-detail-slider-images-container { height: 400px !important; }
}

@media (max-width: 768px) {
    .card_goods.one_clic_item_wrap > div[id^="bx_"] { grid-template-columns: 1fr; gap: 20px; }
    .product-item-detail-slider-images-container { height: 320px !important; }
    .card_goods .right .buttons { max-width: none !important; }
    .catalog-products-viewed .row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .catalog-products-viewed .list_row .bottle { height: 180px !important; min-height: 180px !important; }
    .name_production, .name_production .line { grid-template-columns: 1fr 1fr; gap: 18px 20px; }
    .payInfoContainer { grid-template-columns: 1fr; }
    .payInfoContainer.desctop { display: none !important; }
    .payInfoContainer.mobile { display: block !important; padding: 18px 20px; border: 1px solid #e6e9eb; }
    body.type #content h1 { margin: 16px 0 20px; }
    .footer_text_mob { grid-column: 1 / -1; }
}

@media (max-width: 480px) {
    .name_production, .name_production .line { grid-template-columns: 1fr; }
    .product-item-detail-slider-images-container { height: 280px !important; }
}
