/** Халава **/
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;600;700&display=swap');

/* @font-face {
    font-family: 'Helvetica';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(./fonts/helvetica_regular.otf) format('opentype');
} */

body {
    overflow-y: auto;
}

.newpopup {
    font-family: 'Montserrat', sans-serif !important;
    box-shadow: 1px 1px 5px #e6e6e6;
    border: 1px solid #E6E6E6;
    border-radius: 7px;
    background: #fff;
    /*background-size: 24px;*/
    background-position: center;
    font-weight: bold;
    display: inline-block;
    /* width: 326px; */
    width: max-content;
    height: 147px;
    /* position: fixed; */
    /* left: 100px; */
    /* bottom: 100px; */
    z-index: 1000;
    padding-left: 3px;
    position: initial;
}

.newpopup__dis {
    font-family: 'Montserrat', sans-serif !important;
    box-shadow: 1px 1px 5px #e6e6e6;
    border: 1px solid #E6E6E6;
    border-radius: 7px;
    background: #fff;
    /*background-size: 24px;*/
    background-position: center;
    font-weight: bold;
    display: inline-block;
    /* width: 326px; */
    width: max-content;
    height: 147px;
    /* position: fixed; */
    /* left: 100px; */
    /* bottom: 100px; */
    z-index: 1000;
    padding-left: 3px;
    position: initial;
}

.newpopup.minify {
    width: 46px;
    height: 46px;
    overflow: hidden;
    cursor: pointer;
}

.minify_logo {
    display: none;
}

.newpopup.minify .minify_logo {
    display: block;
    position: absolute;
    background: url(https://bonafide.ru/local/templates/new_bf/img/halva/minify_logo.svg) no-repeat #fff center;
    width: 100%;
    height: 100%;
    left: 1px;
    top: 0;
}

.np_inner {
    display: inline-block;
    width: 42px;
    margin: auto;
    height: 36px;
    vertical-align: middle;
    border-radius: 7px;
    margin-top: 2px;
    white-space: nowrap;
}

.np_inner:first-child {
    /*margin-left: 3px;*/
}

.newpopup_logo {
    /*background-size: 100px;*/
    color: pink;
    background-image: url(https://bonafide.ru/local/templates/new_bf/img/halva/popup_wide-logo.svg);
    background-repeat: no-repeat;
    background-position: left;
    width: 86px;
    height: 24px;
    margin-top: 11px;
    margin-left: 16px;
}

.newpopup_full-price {
    line-height: 40px;
    text-align: center;
    text-decoration-line: line-through;
    vertical-align: center;
    font-size: 12px;
    opacity: 0.5;
    min-width: 42px;
    width: auto;
}

.newpopup_quart-price {
    line-height: 40px;
    font-size: 16px;
    margin-left: 0px;
    text-align: center;
    min-width: 42px;
    width: auto;
}

.newpopup_question {
    background: url(https://bonafide.ru/local/templates/new_bf/img/halva/popup-question.svg) no-repeat #fff;
    height: 29px;
    width: 34px;
    background-position: center;
    /* margin-right: -0.5em; */
    cursor: pointer;
}

.newpopup_question__dis {
    background: url(https://bonafide.ru/local/templates/new_bf/img/halva/popup-question.svg) no-repeat #fff;
    height: 29px;
    width: 34px;
    background-position: center;
    /* margin-right: -0.5em; */
    cursor: pointer;
}

.newpopup_close {
    background: url(https://bonafide.ru/local/templates/new_bf/img/halva/popup_close.svg) no-repeat #fff;
    background-position: center;
    cursor: pointer;
    /*display: none;*/
    /*float: right;*/
}

.right_side {
    float: right;
}

.header_halva_product_new .right_side {
    text-align: right;
}

.content_side {
    padding: 16px;
}

.header__halva_parts {
    font-weight: 600;
    font-size: 14px;
}

.price__halva_parts {
    margin-top: 15px;
}

.price__halva_parts .price_part {
    display: inline-block;
    width: 75px;
    margin-right: 8px;
    vertical-align: top;
    border-top: outset;
    border-color: #FD0E7E;
}

/*.price__halva_parts .price_part:before {
    content: '';
    background: #FD0E7E;
    left: 0;
    width: 100%;
    height: 2px;
    position: absolute;
    border-radius: 15px;
}*/

.payment_date__halva_parts {
    color: #C2C2C2;
    font-size: 12px;
    top: 2px;
    display: block;
    font-weight: 100;
}

.payment_parts__halva_parts {
    font-weight: bold;
    font-size: 14px;
}

.modal-popup {
    position: fixed;
    /*position: absolute;*/
    width: 100%;
    height: 100%;
    /* background-color: rgba(0,0,0,0.8); */
    background-color: rgba(0, 0, 0, 0);
    top: 0;
    left: 0;
    z-index: 1001;
    visibility: hidden;
    overflow-y: scroll;
    transition: .2s;
}

.modal-popup.hm-visible {
    background-color: rgba(0, 0, 0, 0.8) !important;
}

.mp-body {
    position: relative;
    top: 50px;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px 10px;
    transform: scaleX(0);
    transition: .2s;
    opacity: 0;
}

.modal-popup.hm-visible .mp-body {
    transform: scaleX(1) !important;
    opacity: 1;
    transition: .2s;
}

.mp-content {
    background-color: #fff;
    box-shadow: 1px 1px 20px #111;
    color: #000;
    min-height: 675px;
    width: 483px;
    /* left: 398px; */
    top: 32px;
    border-radius: 16px;
    padding: 16px 24px;
}

.mp-header {
    margin-bottom: 24px;
}

.mp-logo {
    height: 32px;
    width: 115px;
    background: url(https://bonafide.ru/local/templates/new_bf/img/halva/mp-logo.svg) no-repeat #fff;
    background-size: contain;
    display: inline-block;
}

.mp-close {
    float: right;
    display: inline-block;
    vertical-align: center;
    background: url(https://bonafide.ru/local/templates/new_bf/img/halva/mp-close.svg) no-repeat #fff;
    background-size: contain;
    height: 25px;
    width: 25px;
    cursor: pointer;
}

.mp-expand_header {
    cursor: pointer;
    display: grid;
    grid-template-columns: auto 19px;
}

.mp-text_for-clients {
    display: block;
    font-family: Roboto;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 16px;
    letter-spacing: 0px;
    text-align: left;
    color: #FD0E7E;
    height: auto;
    margin-bottom: 16px;

    display: grid;
    grid-template-columns: max-content max-content;
    grid-column-gap: 17px;
}

.mp-text_pay-25 {
    display: block;
    /* font-family: Montserrat; */
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 32px;
    letter-spacing: 0px;
    text-align: left;
    text-transform: uppercase;
    margin-bottom: 24px;
    color: #2D2D2D;
}

.mp-payment_plan {
    margin-bottom: 26px;
}

.mp-plan_block {
    display: inline-block;
    background-color: #f4f4f4;
    border-radius: 10px;
    width: 105px;
    height: 60px;
    margin: 3px;
    vertical-align: top;
    margin: 0px 0px;
    padding: 8px;
}

.mp-text_when {
    /*font-family: Helvetica;*/
    font-family: 'MONTSERRAT';
    white-space: nowrap;
    font-size: 11px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
    letter-spacing: 0px;
    text-align: left;
    color: #2d2d2d;
    text-align: center;
    opacity: 0.5;
    margin-bottom: 4px;
}

.mp-text_25 {
    /* font-family: Montserrat; */
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
    letter-spacing: 0px;
    text-align: left;
    color: #2D2D2D;
    text-align: center;
    margin-top: auto;
}

.mp-add_goods {
    display: block;
    width: 100%;
    margin-bottom: 18px;
}

.mp-img_steps {
    display: inline-block;
    vertical-align: top;
}

.mp-banks-block p.mp-text_steps {
    margin-left: 0;
}

.mp-text_steps {
    display: inline-block;
    color: rgba(45, 45, 45, 0.7);
    font-family: Roboto;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0px;
    text-align: left;
    margin-left: 10px;
    margin-bottom: 0;
    margin-top: 0;
}

.mp-text_steps b {
    color: #2d2d2d;
    font-weight: 600;
}

.mp-img_banks {
    /*display: inline-block;*/
    margin-left: 40px;
    display: grid;
    grid-template-columns: 17px 17px 17px;
    width: 100%;
    max-width: 62px;
    float: left;
}

.mp-arrow {
    display: inline-block;
    transition: .5s;
    transform: rotate(180deg);
    margin-top: 13px
}

.area_show .mp-arrow {
    transform: rotate(0deg) !important;
}


.mp-details {
    margin: 0 auto;
    text-align: center;
    /*overflow: hidden;*/
}

.mp-text_details {
    display: inline-block;
    /*margin: 0 auto;*/
    margin-bottom: 0;
    padding: 10px 20px;
    /* font-family: Montserrat; */
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 18px;
    letter-spacing: 0px;
    text-align: left;
    color: #2D2D2D;
    white-space: nowrap;
    text-decoration: none;
    -o-transition: padding-left 250ms ease-out;
    -webkit-transition: padding-left 250ms ease-out;
    -moz-transition: padding-left 250ms ease-out;
    padding-left: 0;
}

.area_show .mp-text_details {
    margin-bottom: 17px;
}

.mp-questioin {
    font-family: Roboto;
    font-size: 14px;
    font-style: normal;

    font-weight: 500;
    line-height: 18px;
    letter-spacing: 0px;
    text-align: left;
    color: #2D2D2D;
}

.mp-answer {
    font-family: Roboto;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: 0px;
    text-align: left;
    color: rgba(45, 45, 45, 0.7);
    margin-bottom: 15px;
}

.mp-text_questions {
    /* font-family: Montserrat; */
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: 21px;
    letter-spacing: 0px;
    text-align: center;
}

.mp-text_number {
    /* font-family: Montserrat; */
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 21px;
    letter-spacing: 0px;
    text-align: center;
}

.mp-expanded_area {
    display: none;
}

.mobile_text_halva {
    display: none;
}

.header_halva_product_dis {
    display: flex;
    margin-left: 10px;
}

.logo_halva_product_dis {
    width: 100px;
    margin: 10px 0px 0px 0px;
}

.header_halva_product_new {
    display: flex;
    justify-content: space-between;
    margin-left: 10px;
    margin: 0 0 17px 10px;
}

.logo_halva_product_new {
    width: 100px;
    margin: 0px 0px 0px 5px;
}

/* релиз 15.01.25 10 строк */
.product-info-headnote__article {
    /* margin-top: 15px; */
    /* margin-bottom: 15px; */
    /* font-weight: 700; */
}

.product-info-headnote__article {
    margin-top: 6px;
    margin-bottom: 8px;
    font-weight: 700;
}

.product-main h1 {
    color: #000;
}

.product-container .cost.prices.detail .price.font_mxs {
    margin: 0;
    color: #000;
}

.product-view--mix .product-main .js-sales.active {
    display: none;
}

/* релиз 15.01.25 22 строки */
.product-main .prices_block {
    /* display: flex; */
    /* align-items: baseline; */
    /* margin-bottom: 30px; */
}

.product-main .prices_block {
    margin-bottom: 0px;
    padding-bottom: 30px;
    border-bottom: 1px solid #E6E6E6;
}

.product-main .prices_block .bonus-system-block {
    /* padding-left: 9px; */
    /* font-size: 1em; */
    /* font-weight: 500; */
    /* color: #000; */
}

.product-main .prices_block .bonus-system-block {
    padding-left: 9px;
    font-size: 1em;
    font-weight: 500;
    color: #FD0E7E;
}

.product-main .prices_block .bonus-system-block:after {
    display: none !important;
}

.bx_catalog_item_scu ul {
    font-size: 0px;
    margin-top: 10px;
    margin-block: 10px;
    display: flex;
    gap: 8px;
    width: calc(50% + 55px);
}

.catalog_detail .sku_props .bx_item_detail_size ul li {
    width: 100%;
    border: 1px solid #000;
    font-weight: 600;
    margin: 0;
}

/* релиз 15.01.25 6 строк */
.product-main-inner {
    /* max-width: 400px; */
}

.product-main-inner {
    max-width: 100%;
}

.product-action {
    margin-top: 30px;
    /* border-top: 1px solid #E6E6E6; */
}

.product-view--mix.product-view--mix-wide .buy_block .counter_wrapp.list {
    width: 100%;
    padding-right: 0px;
    max-width: 100%;
}

.buy_block .js-item-action[data-action="favorite"] {
    width: 100%;
    max-width: 100%;
    clear: both;
}

.detail_marketplaces_rating {
    display: flex;
    gap: 10px;
}

.detail_marketplaces_rating a {
    border: 2px solid;
    border-radius: 10px;
    width: 33%;
    text-align: center;
    padding: 15px;
}

.detail_marketplaces_rating a span {
    display: block;
    font-weight: 700;
    font-size: 20px;
}

.detail_marketplaces_rating a.marketplaces_rating_ozon {
    border-color: #0e54fe;
}

.detail_marketplaces_rating a.marketplaces_rating_WB {
    border-color: rgba(201, 17, 172, 1);
}

.product-main h1,
.category-container h3,
.tab_slider_wrapp .top_block h3,
.font_lg {
    font-size: 15px;
}

@media (min-width: 1001px) {

    /* релиз 15.01.25 8 строк */
    /* .product-main h1,  */
    .category-container h3,
    .tab_slider_wrapp .top_block h3,
    .font_lg {
        font-size: 25px;
    }

    .product-main h1 {
        font-size: 20px;
        padding-top: 30px;
        border-top: 1px solid #E6E6E6;
    }
}

@media (max-width: 1279px) {

    .newpopup {
        height: 0 !important;
    }

    .newpopup__dis {
        height: 0 !important;
    }

    .np-wrapper {
        display: block !important;
    }

    .newpopup_question {
        left: 0px !important;
    }

    .mobile_text_halva_dis {
        display: flex !important;
        align-items: baseline !important;
        justify-content: center !important;
        margin: 0 45px 0px 0px !important;
    }

    .mobile_text_halva {
        align-items: baseline;
        display: flex !important;
        align-items: center;
        justify-content: space-between;
    }

    .logo_halva_product_dis {
        margin: 10px 0px 0px 20px;
    }

    .header_halva_product_dis {
        display: none;
    }

    .header_halva_product_new {
        display: none;
    }

    .content_side {
        display: none;
    }

    .mobile_text_halva {
        display: block;
    }

    .newpopup {
        height: 50px;
        /* width: 385px; */
        width: max-content;
        background: none;
        box-shadow: none;
        border: none;
    }

    .newpopup__dis {
        height: 50px;
        /* width: 385px; */
        width: max-content;
        background: none;
        box-shadow: none;
        border: none;
    }

    .newpopup_question {
        background-color: revert;
        left: -45px;
        height: 23px;
    }

    .newpopup_question__dis {
        background-color: revert;
        left: -45px;
        height: 23px;
    }

    .mobile_text_halva {
        font-weight: 100;
    }

    .mobile_text_halva span {
        font-weight: 600;
    }

    .np-wrapper {
        align-items: flex-end;
        display: flex;
        justify-content: space-evenly;
        align-content: stretch;
        flex-wrap: wrap;
        flex-direction: row;
        font-family: 'Roboto';
    }

    .newpopup_logo {
        margin-left: 10px;
    }
}

@media (max-width: 430px) {
    .newpopup {
        width: 100%;
    }

    .newpopup_question {
        left: 0;
        width: 20px;
    }

    .newpopup_question__dis {
        left: 0;
        width: 20px;
    }

    .np-wrapper {
        font-size: 14px;
    }

    .newpopup_logo {
        margin-left: 5px;
    }
}

/* desktop */
@media (min-width: 769px) {
    .mp-header-red {
        /*color*/
        background: linear-gradient(107.4deg, #EC568A -1.27%, #F13B49 102.78%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        text-fill-color: transparent;
    }
}

/* Shoppable image: hotspots */
.product-gallery-with-hotspots {
    position: relative;
}

.product-gallery-with-hotspots .product-hotspots-layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 5;
}

.product-gallery-with-hotspots .product-hotspot {
    position: absolute;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #FD0E7E;
    box-shadow: 0 0 0 0 rgba(253, 14, 126, 0.6);
    transform: translate(-50%, -50%);
    pointer-events: auto;
    cursor: pointer;
}

.product-gallery-with-hotspots .product-hotspot::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #fff;
    transform: translate(-50%, -50%);
}

.product-gallery-with-hotspots .product-hotspot::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 2px solid rgba(253, 14, 126, 0.6);
    transform: translate(-50%, -50%);
    animation: product-hotspot-pulse 1.8s ease-out infinite;
}

@keyframes product-hotspot-pulse {
    0% {
        transform: translate(-50%, -50%) scale(0.7);
        opacity: 1;
    }

    70% {
        transform: translate(-50%, -50%) scale(1.15);
        opacity: 0;
    }

    100% {
        transform: translate(-50%, -50%) scale(1.15);
        opacity: 0;
    }
}

.product-gallery-with-hotspots .product-hotspot-popup {
    position: absolute;
    min-width: 180px;
    max-width: 240px;
    background: #ffffff;
    border-radius: 8px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
    padding: 10px 12px;
    z-index: 10;
    pointer-events: auto;
}

.product-gallery-with-hotspots .product-hotspot-popup__inner {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: #000;
}

.product-gallery-with-hotspots .product-hotspot-popup__image-wrap {
    flex: 0 0 56px;
    width: 56px;
    height: 68px;
    /* немного вертикальнее: высота ~+20% к ширине */
    border-radius: 6px;
    overflow: hidden;
    background: #f5f5f5;
    margin-right: 10px;
}

.product-gallery-with-hotspots .product-hotspot-popup__image-wrap img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.product-gallery-with-hotspots .product-hotspot-popup__title {
    font-size: 13px;
    line-height: 1.4;
    font-weight: 500;
}

.product-gallery-with-hotspots .product-hotspot-popup__close {
    position: absolute;
    top: 4px;
    right: 6px;
    font-size: 16px;
    line-height: 1;
    color: #b0b0b0;
    cursor: pointer;
}


/* mobile */
@media (max-width: 768px) {
    .newpopup {
        left: 15px;
        bottom: 75px;
    }

    .newpopup_close {
        margin-left: 10px !important;
        width: 22px;
        margin-right: 10px;
    }

    .mp-content {
        padding: 19px 16px;
        position: sticky;
    }

    .mp-close {
        width: 16px;
        height: 16px;
        position: absolute;
        top: 10px;
        right: 10px;
    }

    .mp-text_for-clients>.mp-header-red {
        display: block;
        font-family: 'Ubuntu';
        font-style: normal;
        font-weight: 500;
        font-size: 12px;
        line-height: 16px;
        color: #FD0E7E !important;
    }

    .mp-text_for-clients>.mp-header-red~.mp-header-red {
        display: none;
    }

    .mp-text_pay-25 {
        font-family: 'Ubuntu';
        font-style: normal;
        font-weight: 700;
        font-size: 20px;
        line-height: 28px;
        /* or 140% */

        display: flex;
        align-items: center;
        text-transform: uppercase;

        color: #222222;
        margin-bottom: 20px;
    }

    .mp-payment_plan {
        display: grid;
        grid-template-columns: auto auto;
        grid-template-rows: auto auto;
        grid-row-gap: 12px;
        grid-column-gap: 16px;
    }

    .mp-plan_block {
        width: 143px;
    }

    .mp-text_when {
        font-family: 'PT Sans';
        font-style: normal;
        font-weight: 400;
        font-size: 12px;
        line-height: 16px;
        color: #2D2D2D;

        opacity: 0.5;
    }

    .mp-text_steps {
        font-family: 'PT Sans';
        font-style: normal;
        font-weight: 400;
        font-size: 14px;
        line-height: 24px;
        color: rgba(45, 45, 45, 0.7);
    }

    .mp-text_details {
        font-family: 'Ubuntu';
        font-style: normal;
        font-weight: 700;
        font-size: 14px;
        line-height: 18px;
        color: #2D2D2D;
    }

    .mp-questioin {
        font-family: 'Ubuntu';
        font-style: normal;
        font-weight: 500;
        font-size: 14px;
        line-height: 16px;
        color: rgba(45, 45, 45, 0.7);
    }

    .mp-answer {
        font-family: 'PT Sans';
        font-style: normal;
        font-weight: 400;
        font-size: 14px;
        line-height: 18px;
        color: rgba(45, 45, 45, 0.7);
    }

    .mp-text_questions {
        font-family: 'Ubuntu';
        font-style: normal;
        font-weight: 700;
        font-size: 12px;
        line-height: 20px;
        color: rgba(45, 45, 45, 0.7);
        margin-bottom: 0px;
    }

    .mp-text_number>a {
        font-family: 'Ubuntu';
        font-style: normal;
        font-weight: 500;
        font-size: 16px;
        line-height: 20px;
        color: #646464;
        text-decoration: none;
    }
}

/** end Халва **/

/* ==============================
   3-уровневое отображение цен (detail)
   ============================== */
.bf-triple-price {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 12px;
    max-width: 100%;
}

.bf-price-row {
    display: flex;
    flex-direction: column;
    gap: 0;
    line-height: 1.3;
}

.bf-price-label {
    font-size: 10px;
    color: #999;
    white-space: nowrap;
    line-height: 1.2;
}

.bf-price-row .price {
    display: block;
}

.bf-rrp-price .values_wrapper {
    font-size: 12px;
    color: #aaa;
    text-decoration: line-through;
    white-space: nowrap;
}

.bf-our-price .values_wrapper {
    font-size: 13px;
    color: #888;
    text-decoration: line-through;
    white-space: nowrap;
}

.bf-our-price--main .values_wrapper {
    font-size: inherit;
    color: inherit;
    text-decoration: none;
}

.bf-our-price--main .bf-price-label {
    color: #666;
}

.bf-your-price {
    flex-basis: 100%;
    width: 100%;
}

.bf-your-price .bf-price-label {
    color: #e53935;
    font-weight: 600;
}

.bf-your-price .values_wrapper {
    color: #e53935;
    white-space: nowrap;
}

@media (max-width: 767px) {
    .bf-triple-price {
        gap: 3px 8px;
    }

    .bf-price-label {
        font-size: 9px;
    }

    .bf-rrp-price .values_wrapper {
        font-size: 11px;
    }

    .bf-our-price .values_wrapper {
        font-size: 12px;
    }
}