body{
    font-size: 16px;
    line-height: 1.5;
    margin: 0;
    padding: 0;
    font-weight: 400;
    color: #323232;
    font-family: "Inter Tight", sans-serif;
    background-color: #F9F9F9;
}

.layout{
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    background: unset !important;
}

.layout__content{
    max-width: 100% !important;
    background-color: unset !important;
    margin: unset !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    background: unset !important;
}

.container {
    max-width: 1920px;
    padding-left: 50px;
    padding-right: 50px;
    margin-right: auto;
    margin-left: auto;
}



@media (max-width: 1200px){
    .container{
        padding-left: 25px;
        padding-right: 25px;
    }
}

@media (max-width: 920px){
    .container{
        padding-left: 15px;
        padding-right: 15px;
    }
}

a,
a.nav-link{
    color: black;
}

a:hover,
a.nav-link:hover,
a.nav-link:focus{
    color: #7F0F1D;
}

b{
    font-weight: bold;
}


/* BOOTSTRAP CUSTOM
================================
================================*/
.btn{
    height: 52px;
    border-radius: 52px 0 52px 0;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 5px;
    font-size: 16px;
    font-weight: 400;
    padding-left: 2rem;
    padding-right: 2rem;
    font-weight: 500;
}

@media (max-width: 1440px){
    .btn{
        border-radius: 44px 0 44px 0;
    }
}

@media (max-width: 579px){
    .btn{
        height: 52px;
        font-size: 16px;
        border-radius: 52px 0 52px 0;
        padding-left:  1rem;
        padding-right: 1rem;
    }
}

.btn:focus{
    box-shadow: 0 0 0 .25rem rgba(204, 204, 204, .5);
}

a.btn{
    display: flex;
    align-items: center;
}

.btn-chery {
    --bs-btn-color: #fff;
    --bs-btn-bg: #7F0F1D;
    --bs-btn-border-color: #7F0F1D;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #bb2d3b;
    --bs-btn-hover-border-color: #b02a37;
    --bs-btn-focus-shadow-rgb: 225, 83, 97;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #b02a37;
    --bs-btn-active-border-color: #a52834;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #7F0F1D;
    --bs-btn-disabled-border-color: #7F0F1D
}
.btn-light {
    --bs-btn-color: #000;
    --bs-btn-bg: #f8f3f4;
    --bs-btn-border-color: #f8f3f4;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #d3d4d5;
    --bs-btn-hover-border-color: #c6c7c8;
    --bs-btn-focus-shadow-rgb: 211, 212, 213;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #c6c7c8;
    --bs-btn-active-border-color: #babbbc;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: #f8f3f4;
    --bs-btn-disabled-border-color: #f8f3f4
}

.btn-chery:hover,
.btn-chery:focus{
    color: white !important;
}

/* FONT FAMILY
================================
================================*/
.IPS{
    font-family: "IBM Plex Serif", serif;
}

/* FONT WEIGHT
================================
================================*/
.fw-100{
    font-weight: 100 !important;
}
.fw-200{
    font-weight: 200 !important;
}
.fw-300{
    font-weight: 300 !important;
}
.fw-400{
    font-weight: 400 !important;
}
.fw-500{
    font-weight: 500 !important;
}
.fw-600{
    font-weight: 600 !important;
}
.fw-700{
    font-weight: 700 !important;
}
.fw-800{
    font-weight: 800 !important;
}
.fw-900{
    font-weight: 900 !important;
}

/* FONT SIZE 
================================
================================*/


/* LOST CSS
================================
================================*/


/* COLOR & BACKGROUND
================================
================================*/


/* MOBILE NAV SWIPE 
================================
================================*/
.nav-side-menu{
    flex-direction: column;
    row-gap: .5rem;
}

.nav-side-menu li a{
    padding: 0;
    font-size: 32px;
    font-family: "IBM Plex Serif", serif;
    font-style: italic;
    font-weight: 500;
}

.nav-side-menu li a img{
    width: 14px;
    height: 8px;
    object-fit: cover;
    margin-left: .5rem;
    transition: .4s;
}

.nav-side-menu li a[aria-expanded="true"] img{
    transform: scale(1,-1);
}

.dynamic-side-contacts{
    display: flex;
    align-items: start;
    justify-content: space-between;
    column-gap: 1rem;
    width: 100%;
}

.dynamic-side-contacts .info-email-phone{
    flex-direction: column;
    align-items: start;
    row-gap: 1rem;
}

.dynamic-side-contacts .info-email-phone a{
    color: #1E100F;
    font-size: 20px;
}

.dynamic-side-contacts .nav-socials{
    column-gap: .5rem;
}

.dynamic-side-body-bottom .info-data{
    color: #1E100F;
    font-weight: 500;
}

.dynamic-side-body-bottom .nav-bottom-footer{
    margin-top: 1rem;
    justify-content: start;
    column-gap: 2rem;
}

.dynamic-side-body-bottom .nav-bottom-footer li a{
    color: #1E100F;
}

.nav-side-menu .header-submenu{
    position: initial;
    opacity: 1;
    visibility: visible;
    padding: 1rem 0;
    width: 100%;
    border-bottom: 1px solid #ccc;
    border-radius: 0;
    max-height: 215px;
}

.nav-side-menu .header-submenu .nav-header-submenu{
    height: calc(215px - 2.5rem);
}

.nav-side-menu .header-submenu .nav-header-submenu{
    row-gap: 1rem;
}

.nav-side-menu .header-submenu .nav-header-submenu li a{
    font-size: 14px;
    font-family: "Inter Tight", sans-serif;
    font-style: normal;
}

.dynamic-side-body-bottom .nav-bottom-footer li a:hover{
    color: #762020;
}

/* HEADER 
================================
================================*/
.header{
    border-bottom: 1px solid #e5d7d8;
}

.header-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 1rem;
    align-items: center;
    padding: 1.5rem 0;
}

.logo{
    display: flex;
    align-items: center;
    column-gap: .5rem;
    text-decoration: none;
    font-size: 17px;
    font-weight: 500;
    transition: .4s;
}

.header .logo{
    color: #1E100F;
}
.header .logo:hover{
    color: #7F0F1D;
}

@media (max-width: 1024px){
    .logo{
        font-size: 15px;
    }
}

/* HEADER MENU */
.nav-header-menu{
    column-gap: 1.65rem;
    justify-content: center;
}

.nav-header-menu li{
    position: relative;
}

.nav-header-menu li a{
    padding: 0;
    font-weight: 500;
}

.nav-header-menu li a img{
    margin-left: .25rem;
}

.header-submenu{
    position: absolute;
    top: 30px;
    left: -100%;
    width: 250px;
    max-height: 280px;
    background-color: white;
    border-radius: 30px;
    padding: 1.25rem;
    box-shadow: 0 0 1px #efefef;
    z-index: 2;
    opacity: 0;
    visibility: hidden;
    transition: .2s;
}

.nav-header-submenu{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    row-gap: .75rem;
    column-count: unset;
    background-color: white;
    height: calc(280px - 2.5rem);
    overflow-y: auto;
    padding-right: 1rem;
}

.nav-header-submenu li a{
    display: flex;
    align-items: center;
    column-gap: .5rem;
}

.nav-header-submenu li a span.catalog-info-var{
    height: 20px;
    font-size: 12px;
}

.nav-header-submenu::-webkit-scrollbar {
    width: 4px;
    border-radius: 8px;
}

.nav-header-submenu::-webkit-scrollbar:horizontal {
    height: 8px;
}

.nav-header-submenu::-webkit-scrollbar-track {
    background: #DEC1CE;
    border-radius: 10px;
    width: 2px;
}

.nav-header-submenu::-webkit-scrollbar-thumb {
    background: #7F0F1D;
    border-radius: 10px;
}

.nav-header-submenu::-webkit-scrollbar-thumb:hover {
    background: #561A35;
}

.nav-header-submenu::-webkit-scrollbar-thumb:active {
    background: #787878;
}

.nav-header-submenu::-webkit-scrollbar-corner {
    background: red;
}

.nav-header-menu li:hover .header-submenu{
    opacity: 1;
    visibility: visible;
}

.nav-header-menu li img{
    transition: .4s;
}

.nav-header-menu li:hover img{
    transform: scale(1,-1);
}

@media (max-width: 1024px){
    .nav-header-menu{
        column-gap: 1.25rem;
    }
}

/* HEADER TOOLS */
.nav-header-tools{
    column-gap: 1.75rem;
    justify-content: end;
}

.nav-header-tools li a{
    position: relative;
    padding: 0;
}

.nav-header-tools li a img{
    transition: .4s;
}

.nav-header-tools li a:hover img{
    transform: scale(1.1);
    opacity: .75;
}

.nav-header-tools li a .count{
    position: absolute;
    top: -1rem;
    right: -1.25rem;
    width: 24px;
    height: 24px;
    background-color: rgba(127, 15, 29, .05);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    line-height: 1;
    border-top-left-radius: 8px;
    border-bottom-right-radius: 8px;
    font-size: 10px;
    color: #7F0F1D;
    font-weight: 500;
}

.nav-header-tools li a .count.cart-empty,
.nav-header-tools li a .count.favorites-empty{
    opacity: 0;
}

@media (max-width: 1200px){
    .header-grid{
        grid-template-columns: 1fr 1.5fr 1fr;
    }
}

@media (max-width: 920px){
    .header-grid{
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        padding: 1.25rem 0;
    }
    .header-grid a.js-menu{
        width: 50px;
        height: 50px;
        border-radius: 20px 0 20px 0;
    }

    .nav-header-tools{
        margin-top: 1.5rem;
        width: 100%;
        justify-content: space-between;
        padding-right: 24px;
    }

    .nav-header-tools li a img{
        width: 28px;
        height: 28px;
    }
}

/* NAVIGATION
================================
================================*/
.nav-header-tools li{
    position: relative;
}

header .form-search{
    position: absolute;
    top: -7px;
    right: -.25rem;
    bottom: 0;
    height: 40px;
    opacity: 0;
    visibility: hidden;
    transition: .4s;
    width: 320px;
    z-index: 11;
}

header .form-search.show{
    opacity: 1;
    visibility: visible;
}

header .form-search input{
    height: 40px;
    padding-left: 2.5rem;
}

.form-search .btn-search{
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 40px;
    background-color: transparent;
    border: 0;
}

.form-search .btn-search-close{
    position: absolute;
    top: 0;
    right: 1rem;
    bottom: 0;
    margin: auto;
    width: 12px;
    height: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

@media (max-width: 920px){
    .nav-header-tools{
        position: relative;
    }
    .nav-header-tools li{
        position: initial;
    }
    header .form-search{
        width: 100%;
        right: 0;
        top: -14px;
        height: 50px;
    }
    header .form-search input{
        height: 100%;
    }
    .form-search .btn-search{
        width: 50px;
        height: 50px;
    }
    header .form-search .btn-search-close{
        width: 12px;
        height: 12px;
    }

    header .form-search .btn-search-close img{
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    header .nav-header-tools li a{
        transition: .4s;
    }

    header .nav-header-tools:has(.form-search.show) li a.nav-link{
        opacity: 0;
        visibility: hidden;
    }
}

/* MODALs
================================
================================ */
#insales-quick-checkout-dialog{
    margin: auto;
    bottom: 0;
    transition: .4s;
    height: fit-content;
    border-radius: 50px 0 50px 0;
}

#insales-quick-checkout-dialog #client_phone{
    height: 60px;
}

#insales-quick-checkout-dialog .m-input--checkbox #client_consent_to_personal_data + span{
    position: relative;
    width: 20px;
    min-width: 20px;
    height: 20px;
    border: 2px solid #7F0F1D;
    display: block;
    border-radius: 4px;
    top: .35rem;
}

#insales-quick-checkout-dialog .m-input--checkbox #client_consent_to_personal_data + span::after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 16px;
    height: 16px;
    background-image: url(check-chery.svg);
    background-position: center;
    background-repeat: no-repeat;
    transform: unset;
    opacity: 0;
    transition: .4s;
}
#insales-quick-checkout-dialog .m-input--checkbox #client_consent_to_personal_data:checked + span::after{
    opacity: 1;
}

#insales-quick-checkout-dialog .m-input--checkbox label[for="client_consent_to_personal_data"]{
    margin-bottom: 0;
}

#insales-quick-checkout-dialog .m-input--checkbox .m-input-caption{
    margin-left: 0;
}

#insales-quick-checkout-dialog textarea.m-input-field{
    background-color: #f8f3f4;
    border-radius: 5px;
    border: 1px solid #f1e8e9;
}

#insales-quick-checkout-dialog .m-modal-wrapper form{
    display: flex;
    flex-direction: column;
}

#insales-quick-checkout-dialog .m-input{
    order: 1;
}
#insales-quick-checkout-dialog .m-input--checkbox{
    order: 2;
}

#insales-quick-checkout-dialog .m-modal-footer{
    order: 3;
}

#insales-quick-checkout-dialog .m-modal-footer button{
    width: 100%;
    height: 60px;
    background-color: #7F0F1D;
    border-radius: 90px 0 90px 0;
    font-family: "Inter Tight", sans-serif;
}

#insales-quick-checkout-dialog .m-modal-heading{
    font-size: 32px;
    font-family: "IBM Plex Serif", serif;
    font-style: italic;
}

/* AGE 18 */
.widget-type_wine-adult .age-banner{
    max-width: 450px;
    word-break: break-word;
    border-radius: 50px 0 50px 0;
    overflow: unset;
}

.age-banner-mask{
    position: fixed;
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .5);
    z-index: 5;
}

.age-banner .block-title{
    margin-bottom: 0;
    font-size: 32px;
    font-weight: 500;
    text-wrap: auto;
    white-space: normal;
    word-break: auto-phrase;
}

.age-text{
    padding: 0 2rem;
    text-wrap: auto;
    white-space: normal;
    word-break: auto-phrase;
}

.age-link{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    width: 100%;
}



.age-link a{
    width: 100%;
    height: 52px;
    font-size: 18px;
}

.age-link a.js-age-button.button_in{
    background-color: #7F0F1D;
}

.age-link a.js-age-button.button_in:hover{
    background-color: #A81427;
}


@media (max-width: 579px){
    .age-link{
        display: flex;
        flex-direction: column;
        row-gap: 1rem;
    }
}

/* MAIN INDEX 
================================
================================*/
.main-block{
    margin-top:    7rem;
    margin-bottom: 7rem;
}

@media (max-width: 579px){
    .main-block{
        margin-top:    2rem;
        margin-bottom: 3rem;
    }
}

/* TOP TITLE */
.main-block-title{
    margin-top: 2rem;
    margin-bottom: 2rem;
    font-size: 80px;
    line-height: 1;
}

.top-title i{
    color: #7F0F1D;
    font-weight: 600;
}

@media (max-width: 1200px){
    .top-title{
        font-size: 65px;
        line-height: 1.2;
    }
}

@media (max-width: 768px){
    .top-title{
        font-size: 50px;
    }
}

@media (max-width: 579px){
    .top-title{
        font-size: 40px;
    }
}

/* MAIN BANNER */
.main-block-slider{
    margin-top: 2.5rem;
}

.main-block-header{
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 1rem;
}

.main-slider{
    margin-top: 1.5rem;
    max-height: 750px;
}

.main-slider .cover{
    height: 100%;
}

.main-slider .cover img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.swiper-tools{
    width: 162px;
    height: 42px;
    display: grid;
    grid-template-columns: 50px 2fr 50px;
    align-items: center;
}

.swiper-tools .swiper-pagination,
.swiper-tools .swiper-button-prev,
.swiper-tools .swiper-button-next{
    position: initial;
    margin-top: 0;
}

.swiper-tools .swiper-button-prev,
.swiper-tools .swiper-button-next{
    position: relative;
    width: 42px;
    height: 42px;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
}

.swiper-tools .swiper-button-prev::after,
.swiper-tools .swiper-button-next::after{
    position: absolute;
    content: '';
    width: 100%;
    height: 25px;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background-position: center;
    background-repeat: no-repeat;
}

.swiper-tools .swiper-button-prev::after{
    background-image: url(arrow-left-chery.svg);
}
.swiper-tools .swiper-button-next::after{
    background-image: url(arrow-right-chery.svg);
}

.swiper-tools .swiper-pagination{
    height: 10px;
    display: flex;
    column-gap: .25rem;
    justify-content: center;
}

.swiper-tools .swiper-pagination .swiper-pagination-bullet{
    margin: 0;
    height: 10px;
    width: 10px;
    transition: .4s;
}

.swiper-pagination-bullet-active{
    background-color: #7F0F1D;
    transition: .4s;
}

@media (max-width: 579px){
    .main-block-header{
        flex-direction: column;
        row-gap: 2rem;
        align-items: start;
    }
    .main-block-header .btn{
        width: 100%;
    }
    .main-slider{
        height: 50vh;
    }
}


/* WHY WE */
.block-title{
    font-size: 55px;
    font-weight: 500;
    line-height: 1;
    margin-bottom: 3rem;
    color: #1E100F;
}

.block-title i{
    font-family: "IBM Plex Serif", serif;
}

.block-title:has(+ .block-subtitle){
    margin-bottom: 1.5rem;
    font-size: 52px;
}

.block-subtitle{
    font-size: 24px;
}



.list-advantages{
    margin: 3.5rem 0;
}

.box-advantages{
    background-color: white;
    border: 3px solid #efeded;
    border-radius: 50% 0 50% 0;
    padding: 1.5rem;
    transition: .4s;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.box-advantages-count{
    font-size: 150px;
    font-style: italic;
    color: #f4f3f4;
    line-height: 1;
    font-family: "IBM Plex Serif", serif;
    font-weight: 500;
    text-align: end;
    margin-top: -2rem;
    margin-bottom: 2rem;
    transition: .4s;
}

.box-advantages-title{
    font-size: 32px;
    font-weight: 500;
    font-family: "IBM Plex Serif", serif;
    font-style: italic;
    color: #7F0F1D;
    line-height: 1.2;
    padding-right: 5rem;
    margin-top: auto;
    transition: .4s;

}

.box-advantages-desc{
    font-size: 14px;
    margin-top: .5rem;
    color: #1E100F;
    transition: .4s;
}

.box-advantages:hover{
    background-color: #7F0F1D;
    border-color: #7F0F1D;
}
.box-advantages:hover .box-advantages-count,
.box-advantages:hover .box-advantages-title,
.box-advantages:hover .box-advantages-desc{
    color: #F9F9F9;
}

    .list-advantages:hover .row [class^="col"]:first-child .box-advantages:not(:hover){
        background-color: white;
        border-color: #efeded;
    }

    .list-advantages:hover .row [class^="col"]:first-child .box-advantages:not(:hover) .box-advantages-title{
        color: #7F0F1D;
    }
    .list-advantages:hover .row [class^="col"]:first-child .box-advantages:not(:hover) .box-advantages-desc{
        color: #1E100F;
    }

    .list-advantages .row [class^="col"]:first-child .box-advantages {
        background-color: #7F0F1D;
        border-color: #7F0F1D;
    }

    .list-advantages .row [class^="col"]:first-child .box-advantages .box-advantages-title,
    .list-advantages .row [class^="col"]:first-child .box-advantages .box-advantages-desc{
        color: white;
    }

@media (max-width: 1550px){
    .box-advantages-title{
        font-size: 20px;
    }
}

@media (max-width: 579px){
    .list-advantages .row [class^="col"]:first-child .box-advantages {
        background-color: #7F0F1D;
    }

    .list-advantages .row [class^="col"]:first-child .box-advantages .box-advantages-title,
    .list-advantages .row [class^="col"]:first-child .box-advantages .box-advantages-desc{
        color: white;
    }

    .list-advantages .box-advantages:hover{
        background-color: white;
        border-color: #efeded;
    }

    .list-advantages .box-advantages:hover .box-advantages-count{
        color: #f4f3f4;
    }
    .list-advantages .box-advantages:hover .box-advantages-title,
    .list-advantages .box-advantages:hover .box-advantages-desc{
        color: #7F0F1D;
    }

    .list-advantages:hover .row [class^="col"]:first-child .box-advantages:not(:hover){
        background-color: #7F0F1D;
        border-color: #7F0F1D;
    }

    .list-advantages:hover .row [class^="col"]:first-child .box-advantages:not(:hover) .box-advantages-title{
        color: white;
    }
    .list-advantages:hover .row [class^="col"]:first-child .box-advantages:not(:hover) .box-advantages-desc{
        color: white;
    }

    .block-title{
        font-size: 32px;
        margin-bottom: 2rem;
    }

    .main-block-why{
        margin-top: 4.25rem;
        margin-bottom: 2rem;
    }

    .list-advantages{
        margin-top: 2rem;
    }

    .box-advantages{
        border-radius: 50px 0 50px 0;
        padding: .5rem;
        height: 100%;
        display: flex;
        flex-direction: column;
    }

    .list-advantages{
        margin-bottom: 0;
    }

    .list-advantages .row .col-lg-3:not(:first-child) .box-advantages{
        aspect-ratio: 1/1;
        display: flex;
        flex-direction: column;
    }
    .box-advantages-count{
        font-size: 70px;
        font-weight: 400;
        margin-top: -1rem;
        margin-bottom: .25rem;
    }
    .box-advantages-title{
        font-size: 18px;
        padding-right: 0;
        margin-top: auto;
    }
    .box-advantages-desc{
        margin-top: .25rem;
        line-height: 1.2;
    }
}

/* BLOCK CATALOG */
.box-catalog{
    aspect-ratio: 3/4;
    display: flex;
    flex-direction: column;
    background-color: white;
    border: 3px solid #efeded;
    border-radius: 100px 0 100px 0;
    padding: 1.5rem 0 1.5rem 0;
}

.box-catalog .cover{
    position: relative;
    aspect-ratio: 1/1;
    display: block;
    overflow: hidden;
}

.box-catalog .cover a{
    display: block;
}

.box-catalog .cover img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: .4s;
}

.box-catalog:hover .cover img{
    transform: scale(1.1);
}

.box-catalog .cover .labels{
    position: absolute;
    top: 0;
    left: 1.5rem;
}

.box-catalog .cover .labels label{
    background-color: #7F0F1D;
    color: white;
    font-size: 14px;
    line-height: 1.2;
    width: 100px;
    height: 100px;
    border-radius: 50px 0 50px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.catalog-info{
    margin-top: auto;
    padding: 0 1.5rem 0 1.5rem;
}

.catalog-info-title-var{
    display: flex;
    align-items: center;
    column-gap: .5rem;
}

.catalog-info-title{
    font-size: 24px;
    text-decoration: none;
    transition: .4s;
}

.catalog-info-var{
    height: 26px;
    background-color: #30050E;
    padding: .3rem .5rem .15rem .5rem;
    color: white;
    line-height: 1;
}

.catalog-info-desc{
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: calc(1.4rem * 2);
    max-height: calc(1.4rem * 2);
}

.circle-catalog-wrapper{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    height: 100%;
}

.circle-catalog{
    width: 100%;
    aspect-ratio: 1/1;
    border-radius: 100%;
    background-color: #7F0F1D;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 24px;
    text-decoration: none;
    color: white;
    transition: .4s;
}

.circle-catalog:hover{
    background-color: #A81427;
}

.circle-catalog span{
    color: white;
    transition: .4s;
}

.circle-catalog:hover span{
    transform: scale(1.1);
}

@media (max-width: 1550px){
    .box-catalog{
        border-radius: 60px 0 60px 0;        
    }
    .catalog-info-title{
        font-size: 20px;
        line-height: 1.2;
    }
    .catalog-info-var{
        font-size: 14px;
    }

    .box-catalog .cover .labels label{
        height: 60px;
        border-radius: 40px 0 40px 0;
    }
}

@media (max-width: 1200px){
    .catalog-info{
        padding: 0 1rem 0 1rem;
    }
}

@media (max-width: 1024px){
    .box-catalog{
        padding: .75rem 0 .75rem;
    }
    .catalog-info{
        padding: 0 .75rem 0 .75rem;
    }
    .catalog-info-title{
        font-size: 18px;
    }
    .catalog-info-var{
        font-size: 12px;
        padding: .2rem .25rem .5rem .15rem;
        height: 20px;
        line-height: 1;
    }
    .catalog-info-desc{
        font-size: 14px;
    }
}

@media (max-width: 579px){
    .box-catalog{
        padding: .5rem 0 .5rem 0;
        border-radius: 50px 0 50px 0;
    }
    .catalog-info{
        padding: 0 .5rem 0 .5rem;
    }
    .catalog-info-title{
        font-size: 14px;
        line-height: 1.2;
    }
    .catalog-info-desc{
        font-size: 14px;
        -webkit-line-clamp: 1;
        min-height: calc(1.2rem * 1);
        max-height: calc(1.2rem * 1);
    }

    .box-catalog .cover .labels{
        top: .5rem;
        left: .75rem;
    }

    .box-catalog .cover .labels label{
        width: 74px;
        height: 58px;
        padding: 0 .25rem;
        font-size: 12px;
        border-radius: 30px 0 30px 0;
    }

    .main-block-catalog .block-title{
        margin-bottom: 2.5rem;
    }

    .catalog-info-var{
        font-size: 12px;
        height: auto;
    }

    .catalog-info-var{
        padding-bottom: .25rem;
        text-align: center;
    }

    .circle-catalog{
        font-size: 18px;
        text-wrap: wrap;
        aspect-ratio: unset;
        height: 100%;
        border-radius: 30px 0 30px 0;
        padding-left: 3rem;
        padding-right: 3rem;
        line-height: 1.3;
    }
}

/* PRODUCT */
.box-product{
    aspect-ratio: 3/4;
    display: flex;
    flex-direction: column;
    background-color: white;
    border: 3px solid #efeded;
    border-radius: 100px 0 100px 0;
    /*padding: 1.5rem 0 1.5rem 0;*/
    padding: 0 0 1.5rem 0;
    overflow: clip;
}

.box-product .cover{
    position: relative;
    aspect-ratio: 1/1;
    display: block;
    overflow: hidden;
    /*padding: 1.5rem;*/
    padding-bottom: 1rem;
}

.box-product .cover a{
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.box-product .cover img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .4s;
}

.box-product:hover .cover img{
    transform: scale(1.1);
}

.box-product .cover .labels{
    position: absolute;
    top: 1.5rem;
    left: 1.5rem;
}

.box-product .cover .labels label{
    background-color: #7F0F1D;
    color: white;
    font-size: 14px;
    line-height: 1.2;
    width: 100px;
    height: 100px;
    border-radius: 50px 0 50px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.box-product-fav{
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 40px;
    height: 40px;
    border-radius: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(255, 255, 255, .75);
}

.box-product .box-product-fav .favorites_btn,
.box-item-tools .favorites_btn{
    background-color: transparent;
    position: initial;
    border-radius: unset;
}

.box-product .box-product-fav .favorites_btn::before,
.box-item-tools .favorites_btn::before{
    display: none;
}

.product-fav .favorites_btn,
.product-fav .favorites_btn:hover,
.box-product-fav .favorites_btn,
.box-product-fav .favorites_btn:hover,
.box-item-tools .favorites_btn,
.box-item-tools .favorites_btn:hover{
    width: 26px;
    height: 26px;
    background-image: url('favorite.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    will-change: transform;
    transition: .4s;
}

.product-fav .favorites_btn.favorites-added,
.box-product-fav .favorites_btn.favorites-added,
.box-item-tools .favorites_btn.favorites-added{
    background-image: url('favorite-active.svg');
}

.product-fav .favorites_btn:hover,
.box-product-fav .favorites_btn:hover,
.box-item-tools .favorites_btn:hover{
    transform: scale(1.1);
    opacity: .5;
}

.product-info{
    position: sticky;
    top: 1rem;
}

.box-product-info{
    margin-top: auto;
    padding: 0 1.5rem 0 1.5rem;
}

.box-product-info-title{
    font-size: 24px;
    text-decoration: none;
    transition: .4s;
    font-weight: 500;

    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: calc(1.3em * 2);
    max-height: calc(1.3em * 2);
    text-decoration: none;
}

.box-product-prices{
    margin: 1rem 0;
    display: flex;
    align-items: center;
    column-gap: .5rem;
}

.box-product-prices span{
    font-weight: 500;
}

.box-product-prices span,
.box-product-prices del{
    font-size: 24px;
    line-height: 1;
}

.box-product-prices del{
    color: #8d8787;
}

.box-product-bttons{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.box-product-bttons .btn{
    padding: .5rem;
}

.box-product-bttons .btn-chery{
    border-bottom-right-radius: 0;
}
.box-product-bttons .btn-light{
    border-top-left-radius: 0;
    color: #7F0F1D;
}

@media (max-width: 1550px){
    .box-product{
        border-radius: 60px 0 60px 0;
    }

    .box-product-bttons .btn{
        font-size: 14px;
    }
    .box-product .cover .labels label{
        height: 60px;
        border-radius: 40px 0 40px 0;
    }
}

@media (max-width: 1200px){
    .box-product{
        padding: 1rem 0 1rem 0;
    }

    .box-product-info-title{
        font-size: 18px;
    }
    .box-product-prices span, 
    .box-product-prices del{
        font-size: 20px;
    }
    .box-product-info{
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .box-product .cover .labels{
        top: .25rem;
        left: .5rem;
    }
    .box-product-fav{
        top: .5rem;
    }

    .box-product-bttons{
        display: flex;
        flex-direction: column;
        row-gap: .5rem;
    }

    .box-product-bttons .btn{
        border-radius: 50px 0 50px 0;
        font-size: 14px;
    }
}

@media (max-width: 579px){
    .box-product .cover .labels{
        top: .25rem;
        left: .5rem;
    }
    .box-product .cover .labels label{
        height: 40px;
        padding: .25rem 1rem;
        width: auto;
    }

    .box-product-fav{
        top: .25rem;
        right: .25rem;
        width: 32px;
        height: 32px;
    }
    .box-product .box-product-fav .favorites_btn{
        width: 20px;
        height: 20px;
    }

    .main-block-products{
        margin-top: 4rem;
    }

    .main-block-products .row .col:nth-child(n+5){
        display: none;
    }

    .box-product{
        border-radius: 50px 0 50px 0;
        padding: .5rem 0 .5rem 0;
    }
    .box-product-info{
        padding: 0 .5rem 0 .5rem;
    }
    .box-product-info-title{
        font-size: 14px;
        line-height: 1.2;
    }

    .box-product-prices{
        margin: .75rem 0;
    }

    .box-product-prices span,
    .box-product-prices del{
        font-size: 14px;
    }
}

/* WHOSALE */
.list-advantages:has(+ .nav-whosale){
    margin-bottom: 1.5rem;
}

.nav-whosale{
    justify-content: center;
    column-gap: 2rem;
    align-items: center;
}

.nav-whosale li a{
    padding: 0;
}

.nav-whosale li a.btn{
    padding: .5rem 2rem;
}

.nav-whosale li a.phone{
    display: flex;
    align-items: center;
    column-gap: .5rem;
    font-size: 20px;
}

.nav-whosale li a.phone img{
    transition: .4s;
}

.nav-whosale li a.phone:hover img{
    transform: rotate(45deg);
}

@media (max-width: 579px){
    .block-title:has(+ .block-subtitle){
        font-size: 32px;
    }
    .block-subtitle{
        font-size: 16px;
    }

    .nav-whosale{
        width: 100%;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        row-gap: 1rem;
    }
    .nav-whosale li{
        width: 100%;
    }

    .nav-whosale li a.phone{
        justify-content: center;
        text-align: center;
    }
}

/* ABOUT */
.main-block-about .block-title{
    margin-bottom: 4rem;
}

.box-about-desc{
    font-size: 24px;
    line-height: 1.4;
    font-weight: 500;
}

.box-about-desc p{
    margin-bottom: .5rem;
}

.box-about-btn{
    margin-top: 2rem;
    margin-bottom: 1.5rem;
}

.box-about-btn .btn{
    border-radius: 30px;
    height: 52px;
    display: inline-flex;
    font-weight: 500;
    border: 3px solid #d0c8ca;
    color: #1E100F;
}

.box-about-btn .btn:hover,
.box-about-btn .btn:focus{
    background-color: #d0c8ca;
}

.main-block-about .cover{
    aspect-ratio: 1/1;
    display: block;
    overflow: hidden;
    border-radius: 150px 0 150px 0;
}

.main-block-about .cover img{
    transition: .4s;
}

.main-block-about .cover:hover img{
    transform: scale(1.1);
}

.box-about-gallery .row .col:first-child .cover{
    border-radius: 0 150px 0 150px;
}

@media (max-width: 1024px){
    .main-block-about .cover{
        border-radius: 100px 0 100px 0;
    }
    .main-block-about .cover img{
        object-fit: cover;
        object-position: center;
        width: 100%;
        height: 100%;
    }
    .box-about-gallery .row .col:first-child .cover{
        border-radius: 0 65px 0 65px;
    }
    .main-block-about .cover{
        aspect-ratio: 1/1;
        border-radius: 65px 0 65px 0;
    }
    .main-block-about .cover{
        aspect-ratio: 2/1;
    }
    .box-about-desc{
        font-size: 20px;
    }
}

@media (max-width: 768px){
    .box-about-desc{
        margin-top: 1rem;
    }
}

@media (max-width: 579px){
    .main-block-about{
        margin-top: 4rem;
    }
    .main-block-about .block-title{
        text-align: center;
        margin-bottom: 2rem;
    }
    .main-block-about .cover{
        aspect-ratio: 2/1;
        border-radius: 90px 0 90px 0;
    }

    .box-about-gallery .cover{
        aspect-ratio: 1/1;
    }

    .box-about-desc{
        margin-top: 1rem;
        font-size: 18px;
    }
    .box-about-btn{
        margin-top: 1rem;
        margin-bottom: 1rem;
    }
    .box-about-btn .btn{
        width: 100%;
    }
}

/* REVIEWS */
.box-review{
    padding: 1rem;
    background-color: white;
    border: 3px solid #f5f3f3;
    border-radius: 50px 0 50px 0;
    padding: 1rem;
}

.box-review-title{
    font-size: 20px;
    line-height: 1.3;
    font-weight: 500;
}

.box-review-desc{
    line-height: 1.2;
    color: #615857;
    margin-top: 1rem;

    display: -webkit-box;
    -webkit-line-clamp: 7;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: calc(1.2rem * 7);
    max-height: calc(1.2rem * 7);
}

.box-review .cover{
    aspect-ratio: 1/1;
    display: block;
    overflow: hidden;
    background-color: #efefef;
    border-radius: 30px;
}

.box-review .cover img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.carousel-reviews .swiper-slide{
    height: auto;
}

.carousel-reviews .swiper-slide .box-review{
    height: 100%;
}

.block-review-tools,
.block-carousel-tools{
    display: flex;
    align-items: center;
    justify-items: center;
    margin-top: 2.5rem;
    width: 100%;
}

.block-review-tools .swiper-tools,
.block-carousel-tools .swiper-tools{
    margin: 0 auto;
    width: fit-content;
    column-gap: 1rem;
}

.block-review-tools .swiper-tools .swiper-pagination,
.block-carousel-tools .swiper-tools .swiper-pagination{
    height: 40px;
}

.block-review-tools .swiper-pagination .swiper-pagination-bullet,
.block-carousel-tools .swiper-pagination .swiper-pagination-bullet{
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 14px;
    font-weight: 500;
    border-radius: 4px;
    background-color: transparent;
    border: 3px solid transparent;
    opacity: 1;
}

.block-review-tools .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active,
.block-carousel-tools .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
    border-color: #efeded;
    background-color: transparent;
}

.block-review-tools:has(.swiper-tools .swiper-button-next.swiper-button-lock){
    display: none;
}

@media (max-width: 579px){
    .carousel-reviews .swiper-slide .box-review{
        border-radius: 20px;
        padding: .5rem;
    }
    .box-review-title{
        font-size: 18px;
    }
    .box-review-city{
        font-size: 14px;
    }
    .box-review-desc{
        font-size: 14px;
        margin-top: .5rem;
    }
    .box-review .cover{
        aspect-ratio: 1.25/1;
        border-radius: 10px;
    }
    .block-review-tools .swiper-tools{
        display: flex;
        align-items: center;
        justify-content: center;
        column-gap: 1rem;
        width: 100%;
    }
    .block-review-tools .swiper-tools .swiper-pagination{
        width: fit-content;
    }
}

/* FAQ */
.main-block-faq .accordion{
    margin-top: 3.5rem;
}

.accordion-item:first-of-type>.accordion-header .accordion-button{
    background-color: transparent;
    box-shadow: none;
    border-radius: 0;
}

.accordion-body{
    padding-left: 0;
    padding-right: 0;
}

.accordion-button{
    background-color: transparent;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 2rem;
    font-size: 24px;
    font-weight: 500;
    font-family: "Inter Tight", sans-serif;
    transition: .4s;
}

.accordion-button[aria-expanded="true"]{
    padding-bottom: 0;
}

.accordion-button:focus{
    box-shadow: none;
}


.accordion-item,
.accordion-button:not(.collapsed){
    border: 0;
    background-color: transparent;
    box-shadow: none;
    color: #1E100F;
}

.accordion-item{
    border-bottom: 1px solid #ccc;
}

.accordion-item:last-of-type>.accordion-header .accordion-button.collapsed,
.accordion-item:last-of-type{
    border-radius: 0;
}

.accordion-body{
    color: #5f5655;
}

@media (max-width: 579px){
    .main-block-faq{
        margin-top: 4rem;
    }
    .accordion-button{
        font-size: 20px;
    }
    .accordion-body{
        font-size: 14px;
    }
}

/* BOTTOM POSTER */
.main-block-bottom{
    height: 220px;
    background-image: url(bottom-poster.jpg);
    background-size: auto;
    background-position: center;
    padding: 3rem 0;
    margin-bottom: 0;
}

.main-block-bottom .block-title{
    margin-bottom: 2rem;
}

.block-bottom-phone{
    display: flex;
    align-items: center;
    justify-content: center;
}

.block-bottom-phone a{
    font-size: 20px;
    font-weight: 500;
    color: white;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 1rem;
}

.block-bottom-phone a img{
    transition: .4s;
}

.block-bottom-phone a:hover img{
    transform: rotate(45deg);
}

@media (max-width: 920px){
    .main-block-bottom{
        padding: 1.5rem 0;
    }
}

@media (max-width: 579px){
    .main-block-bottom{
        height: 160px;
    }
    .main-block-bottom .block-title{
        margin-bottom: 1rem;
        font-weight: 400;
    }
}

/* COLLECTION 
================================
================================*/
/* BREADCRUMBS */
.main-block-breadcrumbs{
    border-bottom: 1px solid #e5d7d8;
    margin-top: 0;
    margin-bottom: 2rem;
}

.nav-breadcrumbs{
    justify-content: center;
    padding: 1.5rem 0;
}

.nav-breadcrumbs li .nav-link{
    position: relative;
}

.nav-breadcrumbs li .nav-link{
    padding: 0;
    line-height: 1;
}

.nav-breadcrumbs li + li .nav-link{
    padding-left: 2.5rem;
}

.nav-breadcrumbs li + li .nav-link::before{
    position: absolute;
    content: '';
    width: 6px;
    height: 12px;
    background-image: url(angle-right-dark.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    left: 1.15rem;
    top: 2px;
    bottom: 0;
    margin: auto;
}

.nav-breadcrumbs li + li .nav-link{
    color: black;
}

@media (max-width: 579px){
    .nav-breadcrumbs{
        justify-content: start;
        row-gap: .75rem;
        column-gap: 1rem;
    }
    .nav-breadcrumbs li + li .nav-link{
        padding-left: 1.5rem;
    }
    .nav-breadcrumbs li + li .nav-link::before{
        left: 0;
    }
}

/* COLLECTION CATALOG */
body.template-is-collection .catalog-info-title{
    font-size: 18px;
}

body.template-is-collection .catalog-info-desc{
    min-height: calc(1.3rem * 1);
    max-height: calc(1.3rem * 1);
    -webkit-line-clamp: 1;
    margin-top: .25rem;
}

body.template-is-collection .main-block-catalog{
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.carousel-catalog-button{
    margin-top: 1rem;
}

.carousel-catalog .swiper-wrapper{
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    column-gap: 15px;
    row-gap: 15px;
}

.carousel-catalog .swiper-tools{
    display: none;
}

@media (max-width: 1550px){
    .main-block-catalog{
        overflow: hidden;
    }
    .carousel-catalog{
        overflow: visible;
    }
    .carousel-catalog .swiper-wrapper{
        display: flex;
        column-gap: unset;
    }
    .carousel-catalog .swiper-tools{
        width: 100%;
        display: block;
        border-radius: 2px;
        overflow: hidden;
        height: auto;
    }
    
    .carousel-catalog .swiper-pagination{
        position: relative;
        margin-top: 1rem;
        height: 4px;
        border-radius: 2px;
    }
    
    .carousel-catalog .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{
        background-color: #7F0F1D;
        border-radius: 2px;
    }
}

/* COLLECTION BODY */
.main-block-collection{
    margin-top: 3rem;
}

.main-block-collection .dropdown-toggle{
    border-radius: 10px;
    background-color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .5rem 1rem;
    font-size: 14px;
    font-weight: 500;
}

.main-block-collection .dropdown-menu li a{
    font-size: 14px;
    font-weight: 500;
}

/* SIDEBAR */
.box-filter{
    border-bottom: 1px solid #ccc;
    padding: 1rem 0;
}

.filter-title{
    font-size: 28px;
    font-weight: 600;
    color: #7F0F1D;
    margin-top: 2rem;
    text-transform: uppercase;
    line-height: 1;
}

.box-filter{
    border-bottom: 1px solid rgba(33, 33, 33, .15);
    padding: 1.75rem 0;
}

.box-filter-title{
    position: relative;
    font-size: 14px;
    text-decoration: none;
    display: flex;
    cursor: pointer;
}

.box-filter-title::after{
    position: absolute;
    content: '';
    width: 12px;
    height: 9px;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background-image: url(angle-down-dark.svg);
    background-repeat: no-repeat;
    background-position: center;
    transition: .4s;
}

.box-filter-title[aria-expanded="true"]::after{
    transform: scale(1,-1);
}

.filter-price input[type="text"]{
    width: 100%;
    height: 40px;
    border: 2px solid #dad4d6;
    text-align: center;
    font-weight: 500;
    border-radius: 6px;
}

.filter-price input[type="text"]:focus{
    outline: none;
}

.filter-price-delimetr{
    position: relative;
    width: 100%;
    height: 100%;
    display: block;
}

.filter-price-delimetr::after{
    position: absolute;
    content: '';
    width: 100%;
    height: 2px;
    background-color: rgba(33, 33, 33, .15);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}


.box-filter .noUi-target{
    height: 4px;
    background-color: #dddddd;
    box-shadow: unset;
    border: 0;
    border-radius: 6px;
}

.box-filter .noUi-horizontal .noUi-handle{
    top: -8px;
    width: 20px;
    height: 20px;
    border-radius: 20px;
    border: 3px solid #7F0F1D;
    box-shadow: unset;
    right: -10px;
}

.box-filter .noUi-horizontal .noUi-handle::after,
.box-filter .noUi-horizontal .noUi-handle::before,
.box-filter .noUi-horizontal .noUi-handle *{
    display: none;
}

.box-filter .noUi-connect{
    background-color: #7F0F1D;
}


/* FITLER SIMPLE */
.nav-filter{
    row-gap: .6rem;
    flex-direction: column;
    max-height: 600px;
    overflow-y: auto;
    column-count: 1;
    flex-wrap: nowrap;
    margin-top: 1rem;
    padding-right: 1rem;
}

.dropdown-menu.nav-filter.show{
    display: flex;
}

.dropdown-menu.nav-filter{
    padding: .5rem;
}

.nav-filter label{
    display: flex;
    align-items: start;
    column-gap: .75rem;
    cursor: pointer;
    padding: 0 2px;
}

.nav-filter label span.checkbox{
    position: relative;
    width: 20px;
    min-width: 20px;
    height: 20px;
    border: 2px solid #7F0F1D;
    display: block;
    border-radius: 4px;
    top: .35rem;
}

.nav-filter label span.checkbox::before{
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 16px;
    height: 16px;
    background-image: url(check-chery.svg);
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0;
    transition: .4s;
}

.nav-filter label input{
    display: none;
}

.nav-filter label input:checked + span.checkbox::before{
    opacity: 1;
}

.nav-filter label span.text{
    font-size: 14px;
}

.nav-filter label input:checked ~ span.text{
    font-weight: 500;
}

.nav-filter label span.count{
    font-size: 15px;
    font-weight: 500;
    color: #7F0F1D;
    margin-left: 1rem;
}

.box-filter-apply-reset{
    display: flex;
    flex-direction: column;
    row-gap: .75rem;
}

.box-filter-apply-reset button{
    width: 100%;
}

.box-filter-apply-reset a{
    background-color: #f2edee;
    color: #7F0F1D;
}

/* COLLECTION LIST */
.filter-sidebar-tools .box-filter{
    border-bottom: 0;
}

@media (max-width: 920px){
    #dynamicFilters{
        position: fixed;
        top: 0;
        left: 0;
    }

    .collection-sort-filter{
        display: flex;
        align-items: center;
        column-gap: 1rem;
        justify-content: space-between;
    }

    .js-collection-filters{
        width: 50px;
        height: 50px;
        background-color: #e5d7d8;
        border-radius: 20px 0 20px 0;
    }

    .filter-sidebar{
        padding: 1rem;
        background-color: white;
        height: calc(100% - 81px - 146px);
        overflow-y: auto;
    }
    #dynamicFilters .filter{
        position: initial;
        visibility: visible;
        transform: unset;
        padding-bottom: 0;
        height: 100%;
    }

    #dynamicFilters .widget-type_wine-filter,
    #dynamicFilters .layout__content{
        height: 100%;
    }

    .box-filter{
        padding: 1rem 0;
    }

    .box-filter:first-child{
        padding-top: 0;
    }

    .nav-filter{
        height: auto;
        max-height: 100%;
        overflow: hidden;
    }

    .filter-sidebar-tools{
        padding: 1rem;
    }
}

/* PAGINATION */
.nav-pagintaion{
    justify-content: center;
    column-gap: .25rem;
    margin-top: 3rem;
}

.nav-pagintaion li .nav-link:not(.arrows){
    padding: 0;
    width: 40px;
    height: 40px;
    border-radius: 6px;
    border: 3px solid transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #1E100F;
    background-color: #F9F9F9;
}

.nav-pagintaion li .nav-link.active{
    border-color: #efeded;
    color: #1E100F;
}

.nav-pagintaion li .nav-link.arrows img{
    transition: .4s;
}

.nav-pagintaion li .nav-link.arrows:hover img{
    transform: scale(1.1);
}

.nav-pagintaion li:first-child .nav-link.arrows:hover img{
    transform: translateX(-.25rem);
}

.nav-pagintaion li:last-child .nav-link.arrows:hover img{
    transform: translateX(.25rem);
}

/* SIDEBAR 
================================
================================*/


/* PRODUCT 
================================
================================*/
.main-block-product{
    margin-top: 1rem;
    overflow: clip;
}

/* GALLERY */

/* PRODUCT INFO */
.product-info-title{
    font-size: 40px;
    font-style: italic;
    line-height: 1.2;
    font-weight: 500;
}

.product-info-prices{
    margin: 1rem 0;
    display: flex;
    align-items: center;
    column-gap: .5rem;
}

.product-info-prices span{
    font-size: 20px;
}

.product-info-prices del{
    font-size: 16px;
    color: #756d6d;
}

.product-info-desc{
    font-weight: 500;
    margin-bottom: .5rem;
}

.product-info-buttons{
    display: flex;
    align-items: center;
    column-gap: 0;
}

.product-info-buttons .btn{
    width: 100%;
    font-weight: 500;
}

.product-info-buttons .btn.btn-chery{
    border-radius: 52px 0 0 0;
}
.product-info-buttons .btn.btn-light{
    border-radius: 0 0 52px 0;
    background-color: #f2edee;
    color: #7F0F1D;
}

@media (max-width: 579px){
    .product-info-title{
        font-size: 30px;
        line-height: 1.2;
    }
}

/* GALLERY */
.product-gallery{
    position: relative;
    aspect-ratio: 1.5/1;
    border-radius: 100px 0 100px 0;
    border: 3px solid #efeded;
    overflow: hidden;
}

.product-gallery .gallery-images{
    height: 100%;
}

.product-gallery .swiper-slide{
    background-color: white;
}

.product-gallery .swiper-slide img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

@media (max-width: 579px){
    .product-gallery{
        aspect-ratio: 1/1;
    }
}

/* THUMBS */
.product-thumbs{
    position: relative;
    height: 136px;
    margin-top: 1rem;
}

.product-thumbs .swiper-slide{
    aspect-ratio: 1/1;
    border: 3px solid #efeded;
    border-radius: 50px 0 50px 0;
    background-color: white;
    transition: border .4s;
    overflow: hidden;
    cursor: pointer;
}

.product-thumbs .swiper-slide.swiper-slide-thumb-active{
    border-color: #7F0F1D;
}

.product-thumbs .swiper-button-prev::after,
.product-thumbs .swiper-button-next::after{
    font-size: 14px;
    color: #30050E;
}

.product-thumbs .swiper-button-prev{
    left: 2rem;
}
.product-thumbs .swiper-button-next{
    right: 2rem;
}

.gallery-thumbs .swiper-slide img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-fav{
    position: absolute;
    top:   1.5rem;
    right: 1.5rem;
    z-index: 2;
}

@media (max-width: 1400px){
    .product-thumbs .swiper-button-prev{
        left: 1rem;
    }
    .product-thumbs .swiper-button-next{
        right: 1rem;
    }
}

@media (max-width: 1200px){
    .product-thumbs{
        height: 100px;
    }
}

@media (max-width: 1024px){
    .product-thumbs{
        height: 86px;
    }
}

@media (max-width: 920px){
    .product-thumbs{
        height: 123px;
    }
}

@media (max-width: 579px){
    .product-thumbs{
        height: 92px;
    }
    .product-thumbs .swiper{
        overflow: visible;
    }
    .product-thumbs .swiper-slide{
        border-radius: 35px 0 35px 0;
    }
}

/* PRODUCT TABS */
.product-tabs{
    margin-top: 2rem;
}

.nav-product-tabs{
    border-radius: 50px 0 50px 0;
    overflow: hidden;
    width: fit-content;
}

.nav-product-tabs li button{
    height: 54px;
    background-color: #f2edee;
    padding: .5rem 5rem;
    display: flex;
    align-items: center;
    column-gap: .5rem;
    color: #7F0F1D;
}

.nav-product-tabs li button:hover,
.nav-product-tabs li button:focus{
    color: #7F0F1D;
}

.nav-product-tabs li button.active{
    background-color: #e5d7d8;
}

#pills-productContent{
    margin-top: 2rem;
}

.tab-product-char{
    display: flex;
    flex-direction: column;
    row-gap: .5rem;
}

.product-char-title-value{
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    column-gap: 1rem;
}

.char-title{
    font-size: 20px;
    font-weight: 500;
}

.char-value{
    font-size: 16px;
    font-weight: 500;
}

.tab-content .block-review-tools .swiper-tools{
    justify-content: start;
    margin: 0;
}

.tab-content-review-btn{
    padding: 2rem 0;
}

.tab-content-review-btn .btn{
    border: 3px solid #d0c8ca;
    border-radius: 50px;
    padding: .5re 2rem;
    font-weight: 500;
}

.box-reivew{
    background-color: white;
    padding: 1.5rem;
    border-radius: 30px;
    display: flex;
    flex-direction: column;
    row-gap: 1rem;
}

.box-reivew-close{
    text-align: end;
}

.box-reivew-stars{
    height: 60px;
    background-color: #f8f3f4;
    padding: .5rem 1rem;
    border-radius: 5px;
    border: 1px solid #f1e8e9;
}

.star-rating{
  display: flex;
  align-items: center;
  justify-content: start;
  flex-direction: row-reverse;
  column-gap: .25rem;
  column-gap: .5rem;
  height: 100%;
}

.star-label{
  width:  27px;
  height: 27px;
  min-width:  27px;
  min-height: 27px;
  display: block;
  transition: .4s;
  cursor: pointer;
  background-image: url(star.svg) !important;
}

/* Активное состояние для выбранной звезды и всех предыдущих */
input.star-radio:checked ~ .star-label,
input.star-radio:checked + .star-label {
  background-image: url(stara.svg) !important;
}

/* Эффект при наведении: подсвечиваем текущую звезду и все предыдущие */
.star-label:hover,
.star-label:hover ~ .star-label {
  background-image: url(stara.svg) !important;
  opacity: 0.7;
}

/* Сбрасываем состояние при наведении на контейнер */
.star-rating:hover .star-label {
  background-image: url(star.svg) !important;
  opacity: 1;
}

.star-rating:hover .star-label:hover,
.star-rating:hover .star-label:hover ~ .star-label {
  background-image: url(stara.svg) !important;
  opacity: 0.7;
}

.star-radio {
  display: none;
}

.box-review-band label{
    margin-bottom: .25rem;
}

.box-review-band textarea{
    height: 150px;
}

.review-upload{
    height: 150px;
    background-color: #f8f3f4;
    border: 1px solid #f1e8e9;
    border-radius: 5px;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    row-gap: .75rem;
    color: #b58488;
    cursor: pointer;
}

.box-review-band-upload{
    display: flex;
    flex-direction: column;
}

.box-review-band-upload label input{
    opacity: 0;
    visibility: hidden;
    display: none;
}

.box-review-band-upload label.review-upload span.file-upload{
    display: none;
}

.box-review-band-upload label.review-upload span.file-empty{
    display: block;
}

.box-review-band-upload label.review-upload input.has-file ~ span.file-empty{
    display: none;
}

.box-review-band-upload label.review-upload input.has-file ~ span.file-upload{
    display: block;
}

label.review-upload-file input{
    display: none;
}

textarea,
input[type="text"],
input[type="tel"],
input[type="email"]{
    background-color: #f8f3f4;
    padding: .5rem 1rem;
    border-radius: 6px;
    width: 100%;
    border: 1px solid #f1e8e9;
    transition: .4s;
}

textarea:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus{
    box-shadow: 0 0 0 .15rem rgba(204, 204, 204, .5);
    outline: none;
}

textarea::placeholder,
input[type="text"]::placeholder,
input[type="tel"]::placeholder,
input[type="email"]::placeholder{
    color: rgba(8, 71, 52, .35);
}

input[type="text"]{
    height: 60px;
}

.box-review-band-info{
    font-size: 14px;
}

.box-review-band .btn{
    border-radius: 10px;
}

@media (max-width: 920px){
    .nav-product-tabs li button{
        padding: .5rem 4rem;
    }
}

@media (max-width: 768px){
    .nav-product-tabs li button{
        padding: .5rem 3rem;
    }
}


@media (max-width: 579px){
    .nav-product-tabs{
        flex-wrap: nowrap;
        overflow-x: auto;
        width: 100%;
        padding-bottom: .5rem;
        border-radius: 0;
    }
    .nav-product-tabs li:first-child button{
        border-top-left-radius: 20px;
    }
    .nav-product-tabs li:last-child button{
        border-bottom-right-radius: 20px;
    }
    .nav-product-tabs li button{
        padding: .5rem 2rem;
        text-wrap: nowrap;
        flex-wrap: nowrap;
    }
    .char-title{
        font-size: 16px;
        font-weight: 500;
    }
    .box-reivew{
        padding: 1rem;
    }
}

/* POSTER INFO */
.main-block-poster{
    background-image: url(poster.jpg);
    background-position: center;
    background-size: cover;
    padding: 3rem 0;
}

.poster-info .block-title{
    margin-bottom: 0;
    color: white;
}

.poster-desc{
    text-align: center;
    color: white;
    font-size: 24px;
    margin: 2rem 0;
}

.poster-info .nav li a{
    color: white;
}

@media (max-width: 579px){
    .poster-desc{
        font-size: 16px;
        margin: 1.5rem 0;
    }
    .main-block-poster{
        padding: 1.5rem 0;
    }
}

/* SIMILAR / RELATED */
.main-block-carousel{
    overflow: hidden;
}

.main-block-carousel .swiper{
    overflow: visible;
}

.main-block-carousel .swiper {
    width: 100%;
    height: 100%;
    margin-left: auto;
    margin-right: auto;
}

.main-block-carousel .swiper-grid-column>.swiper-wrapper{
    flex-direction: column;
    flex-wrap: wrap;
    width: 100% !important;
}

.main-block-carousel .swiper-slide {
    height: calc((100% - 15px) / 2) !important;

    display: flex;
    justify-content: center;
    align-items: center;
}

/* CART 
================================
================================*/
.main-block-cart .block-title i{
    position: relative;
}
.main-block-cart .block-title i b{
    position: absolute;
    top: 0;
    left: 100%;
    font-size: 18px;
    font-family: "Inter Tight", sans-serif;
    text-wrap: nowrap;
    font-weight: 400;
    color: #252525;
}

.box-item{
    background-color: white;
    border-radius: 90px 10px 90px 10px;
    padding: 1rem;
    margin-bottom: 1rem;
}

.box-item.cart-item{
    display: block;
}

.box-item .cover{
    border: 3px solid #f5f3f3;
    border-radius: 70px 0 70px 0;
    display: block;
    overflow: hidden;
}

.box-item .cover img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: .4s;
}

.box-item:hover .cover img{
    transform: scale(1.1);
}

.box-item-title{
    font-size: 24px;
    font-style: italic;
    font-family: "IBM Plex Serif", serif;
    line-height: 1.2;
    font-weight: 500;
    text-decoration: none;
}

.box-product-prices-qty{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.box-product-price,
.box-product-price-all{
    font-size: 24px;
    font-weight: 500;
}

.box-item .box-product-prices{
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: .25rem;
}

.box-item .box-product-prices del{
    font-size: 16px;
    color: #bbb;
}

.quantity{
    display: grid;
    grid-template-columns: 30px 50px 30px;
    column-gap: .5rem;
    align-items: center;
}

.quantity .btn-qty{
    width: 30px;
    height: 30px;
    border-radius: 30px;
    background-color: #eadcdd;
    border: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.quantity input{
    height: 30px;
    padding: 0;
    text-align: center;
    background-color: transparent;
    border: 0;
}

.quantity input:focus{
    box-shadow: none;
}

.box-item-tools{
    display: flex;
    align-items: center;
    justify-content: end;
    column-gap: 1.5rem;
    padding-right: .5rem;
}

.box-item-tools a img{
    width: 30px;
    object-fit: contain;
    transition: .4s;
}

.box-item-tools a:hover img{
    transform: scale(1.1) rotate(15deg);
}

@media (max-width: 1440px){
    .box-product-prices-qty{
        margin-top: 1rem;
    }
}

@media (max-width: 1200px){
    .main-block-cart{
        margin-top: 4rem;
    }
    .box-item-title{
        font-size: 20px;
    }
    .box-item-tools a img{
        width: 20px;
        height: 20px;
        object-fit: scale-down;
    }
}

@media (max-width: 579px){
    .main-block-cart .block-title i{
        padding: 0 .5rem;
    }

    .cart-list{
        background-color: white;
        border-radius: 15px;
        padding: 1rem;
    }

    .box-item{
        background: transparent;
        border-radius: 0;
        border-bottom: 1px solid #eadcdd;
        padding: 0;
        padding-bottom: 1rem;
        margin-bottom: 1rem;
    }

    .box-item:last-child{
        border-bottom: 0;
        margin-bottom: 0;
        padding-bottom: 0;
    }

    .box-item-title{
        font-size: 16px;
    }

    .box-item .cover{
        border: 1px solid #f5f3f3;
        border-radius: 20px 0 20px 0;
    }

    .box-item-tools{
        padding-right: 0;
    }
    .box-item-tools a img{
        width: 20px;
        height: 20px;
        object-fit: scale-down;
    }
    .box-product-price, 
    .box-product-price-all{
        font-size: 16px;
    }

    .quantity{
        display: grid;
        grid-template-columns: repeat(3, 30px);
    }

    .quantity input{
        width: 30px;
    }
}

/* CART CHECKOUT */
.box-checkout{
    position: sticky;
    top: 3rem;
    background-color: white;
    padding: 1rem;
    border-radius: 90px 0 90px 0;
    display: flex;
    flex-direction: column;
    row-gap: 1rem;
}

.box-checkout-title{
    font-size: 24px;
    font-weight: 500;
    font-family: "IBM Plex Serif", serif;
    font-style: italic;
}

.box-checkout-band{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.box-checkout-band-count{
    font-size: 16px;
    font-weight: 400;
}

.box-checkout-band-summ{
    font-size: 32px;
    font-weight: 500;
    font-family: "IBM Plex Serif", serif;
    font-style: italic;
}

.form-discount{
    display: flex;
    align-items: center;
    column-gap: 1rem;
}

.form-discount input{
    height: 52px;
}

.form-discount .btn{
    width: 52px;
    height: 52px;
    border-radius: 10px;
}

.box-checkout-band-discount{
    margin-top: 1rem;
}

.box-checkout-band-discount .insales-ui-discount-item{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.box-checkout-band.box-checkout-band-discount .box-checkout-band-value,
.box-checkout-band.box-checkout-band-discount .box-checkout-band-value .insales-ui-discounts{
    width: 100%;
}

/* FOOTER 
================================
================================*/
.footer{
    background-color: #7F0F1D;
    padding: 3rem 0;
    color: white;
}

.footer .logo{
    color: white;
}

.nav-footer-menu{
    column-count: 2;
    display: block;
}

.nav-footer-menu li a{
    color: white;
    font-weight: 500;
    transition: .4s;
    padding: .25rem 0;
}

.nav-footer-menu:has(> li a:hover) li a{
    opacity: .5;
    transition: .4s;
}

.nav-footer-menu li a:hover,
.nav-footer-menu li a:focus{
    opacity: 1 !important;
    color: white;
}

.info-address{
    font-size: 24px;
}

.info-address,
.info-timework{
    font-weight: 500;
}

.info-timework{
    margin-top: .75rem;
}

.info-email-phone{
    display: flex;
    flex-direction: column;
    align-items: end;
    row-gap: .5rem;
}

.info-email-phone a{
    display: flex;
    align-items: center;
    column-gap: 1rem;
    font-size: 20px;
    text-decoration: none;
    color: white;
    transition: .4s;
}

.info-email-phone:has(> a:hover) a{
    opacity: .5;
    transition: .4s;
}

.info-email-phone a:hover{
    opacity: 1 !important;
    transition: .4s;
}

.nav-socials{
    justify-content: end;
    column-gap: 1rem;
}

.nav-socials li a{
    width: 40px;
    height: 40px;
    border-radius: 10px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.nav-socials li a img{
    transition: .4s;
}

.nav-socials li a:hover img{
    transform: scale(1.1) rotate(15deg);
}


.nav-bottom-footer{
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 1rem;
    row-gap: 1rem;
}

.nav-bottom-footer li a{
    color: white;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    padding: 0;
    transition: .4s;
}

.nav-bottom-footer:has(> li a:hover) li a{
    opacity: .5;
}

.nav-bottom-footer li a:hover{
    opacity: 1 !important;
    color: white;
}

@media (max-width: 579px){
    .footer{
        padding: 1.25rem 0;
    }
    .footer-top{
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .info-address{
        font-size: 20px;
    }

    .info-email-phone{
        flex-direction: row;
        justify-content: space-between;
    }
    .info-email-phone a{
        font-size: 18px;
    }

    .nav-socials li a{
        width:  32px;
        height: 32px;
    }

    .nav-bottom-footer{
        row-gap: .4rem;
        flex-direction: column;
        align-items: start;
    }

    .nav-bottom-footer li a{
        font-size: 12px;
    }
}
