body.oc-loading,body.oc-loading *{cursor:wait !important}
.stripe-loading-indicator{height:5px;background:transparent;position:fixed;top:0;left:0;width:100%;overflow:hidden;z-index:2000}
.stripe-loading-indicator .stripe,.stripe-loading-indicator .stripe-loaded{height:5px;display:block;background:#0090c0;position:absolute;-webkit-box-shadow:inset 0 1px 1px -1px #FFF,inset 0 -1px 1px -1px #FFF;box-shadow:inset 0 1px 1px -1px #FFF,inset 0 -1px 1px -1px #FFF}
.stripe-loading-indicator .stripe{width:100%;-webkit-animation:oc-infinite-loader 60s linear;animation:oc-infinite-loader 60s linear}
.stripe-loading-indicator .stripe-loaded{width:0;opacity:0;filter:alpha(opacity=0)}
.stripe-loading-indicator.loaded{opacity:0;filter:alpha(opacity=0);-webkit-transition:opacity 0.4s linear;transition:opacity 0.4s linear;-webkit-transition-delay:0.3s;transition-delay:0.3s}
.stripe-loading-indicator.loaded .stripe-loaded{opacity:1;filter:alpha(opacity=100);-webkit-transition:width 0.3s linear;transition:width 0.3s linear;width:100% !important}
.stripe-loading-indicator.hide{display:none}
body > p.flash-message{position:fixed;width:500px;left:50%;top:13px;margin-left:-250px;color:#ffffff;font-size:14px;padding:10px 30px 10px 15px;z-index:10300;word-wrap:break-word;text-shadow:0 -1px 0px rgba(0,0,0,0.15);text-align:center;-webkit-box-shadow:0 1px 6px rgba(0,0,0,0.12),0 1px 4px rgba(0,0,0,0.24);box-shadow:0 1px 6px rgba(0,0,0,0.12),0 1px 4px rgba(0,0,0,0.24);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}
body > p.flash-message.fade{opacity:0;filter:alpha(opacity=0);-webkit-transition:all 0.5s,width 0s;transition:all 0.5s,width 0s;-webkit-transform:scale(0.9);-ms-transform:scale(0.9);transform:scale(0.9)}
body > p.flash-message.fade.in{opacity:1;filter:alpha(opacity=100);-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}
body > p.flash-message.success{background:#8da85e}
body > p.flash-message.error{background:#cc3300}
body > p.flash-message.warning{background:#f0ad4e}
body > p.flash-message.info{background:#5fb6f5}
body > p.flash-message button.close{float:none;position:absolute;right:10px;top:8px;color:white;font-size:21px;line-height:1;font-weight:bold;opacity:0.2;filter:alpha(opacity=20);padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none;outline:none}
body > p.flash-message button.close:hover,body > p.flash-message button.close:focus{color:white;text-decoration:none;cursor:pointer;opacity:0.5;filter:alpha(opacity=50)}
@media (max-width:768px){body > p.flash-message{left:10px;right:10px;top:10px;margin-left:0;width:auto}
}
[data-request][data-request-validate] [data-validate-for]:not(.visible),[data-request][data-request-validate] [data-validate-error]:not(.visible){display:none}
a.oc-loading:after,button.oc-loading:after,span.oc-loading:after{content:'';display:inline-block;vertical-align:middle;margin-left:.4em;height:1em;width:1em;animation:oc-rotate-loader 0.8s infinite linear;border:.2em solid currentColor;border-right-color:transparent;border-radius:50%;opacity:0.5;filter:alpha(opacity=50)}
@-moz-keyframes oc-rotate-loader{0%{-moz-transform:rotate(0deg)}
100%{-moz-transform:rotate(360deg)}
}
@-webkit-keyframes oc-rotate-loader{0%{-webkit-transform:rotate(0deg)}
100%{-webkit-transform:rotate(360deg)}
}
@-o-keyframes oc-rotate-loader{0%{-o-transform:rotate(0deg)}
100%{-o-transform:rotate(360deg)}
}
@-ms-keyframes oc-rotate-loader{0%{-ms-transform:rotate(0deg)}
100%{-ms-transform:rotate(360deg)}
}
@keyframes oc-rotate-loader{0%{transform:rotate(0deg)}
100%{transform:rotate(360deg)}
}
@-moz-keyframes oc-infinite-loader{0%{width:0}
10%{width:42%}
20%{width:63%}
30%{width:78.75%}
40%{width:88.59375%}
50%{width:94.130859375%}
60%{width:97.07244873046875%}
70%{width:98.58920574188232%}
80%{width:99.35943391174078%}
90%{width:99.74755670045852%}
100%{width:99.9423761471391%}
}
@-webkit-keyframes oc-infinite-loader{0%{width:0}
10%{width:42%}
20%{width:63%}
30%{width:78.75%}
40%{width:88.59375%}
50%{width:94.130859375%}
60%{width:97.07244873046875%}
70%{width:98.58920574188232%}
80%{width:99.35943391174078%}
90%{width:99.74755670045852%}
100%{width:99.9423761471391%}
}
@-o-keyframes oc-infinite-loader{0%{width:0}
10%{width:42%}
20%{width:63%}
30%{width:78.75%}
40%{width:88.59375%}
50%{width:94.130859375%}
60%{width:97.07244873046875%}
70%{width:98.58920574188232%}
80%{width:99.35943391174078%}
90%{width:99.74755670045852%}
100%{width:99.9423761471391%}
}
@-ms-keyframes oc-infinite-loader{0%{width:0}
10%{width:42%}
20%{width:63%}
30%{width:78.75%}
40%{width:88.59375%}
50%{width:94.130859375%}
60%{width:97.07244873046875%}
70%{width:98.58920574188232%}
80%{width:99.35943391174078%}
90%{width:99.74755670045852%}
100%{width:99.9423761471391%}
}
@keyframes oc-infinite-loader{0%{width:0}
10%{width:42%}
20%{width:63%}
30%{width:78.75%}
40%{width:88.59375%}
50%{width:94.130859375%}
60%{width:97.07244873046875%}
70%{width:98.58920574188232%}
80%{width:99.35943391174078%}
90%{width:99.74755670045852%}
100%{width:99.9423761471391%}
}

.hidden {
    display: none !important;
}

.ThumbsGallery__thumbItem[data-active=true] {
    opacity: .5;
    -webkit-filter: grayscale(25%);
    filter: grayscale(25%);
}

.SiteHeader__topGrid {
    grid-template-columns: auto 1fr auto;
}

.search-page {
    display: none;
}

.CatalogPage .Breadcrumbs {
    margin-bottom: 0;
}

.ProductCard__orderButton {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    height: 40px;
    max-width: 176px;
}

.CatalogPage__aside .bx-filter {
    border: 1px solid #e4e4e4;
    margin-top: 30px;
}

.CatalogPage__aside .bx-filter .bx-filter-section {
    background: white;
}

.CatalogPage__aside .bx-filter .col-lg-12, 
.CatalogPage__aside .bx-filter .col-xs-12  {
    padding-left: 20px;
}

.CatalogPage__aside .bx-filter .bx-filter-title {
    padding-left: 15px;
}

.CatalogPage__aside .bx-filter .bx-filter-parameters-box-hint {
    color: var(--button-default-color);
    --button-default-color: #cf2225;
}

.CatalogPage__aside .bx-filter .bx-filter-parameters-box-hint:hover {
    border-color: var(--button-hover-color);
    --button-hover-color: #cf2225;
}

.CatalogPage__aside .bx-filter .bx-filter-section .btn.btn-themes {

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    overflow: visible;
    vertical-align: middle;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    height: 48px;
    margin: 0;
    padding: 0 16px;
    font: inherit;
    font-weight: 600;
    font-size: 1rem;
    line-height: 1;
    white-space: nowrap;
    text-decoration: none;
    border-radius: 2px;
    -webkit-transition: 0.25s ease-in-out;
    transition: 0.25s ease-in-out;
    -webkit-transition-property: color, border, background-color, box-shadow;
    transition-property: color, border, background-color, box-shadow;
    color: var(--button-default-color);
    border: 1px solid var(--button-default-border);
    background-color: var(--button-default-background);
    box-shadow: var(--button-default-shadow);
    
    --button-default-color: #fff;
    --button-default-border: #cf2225;
    --button-default-background: #cf2225;
    --button-hover-color: #fff;
    --button-hover-border: #b01d1f;
    --button-hover-background: #b01d1f;
    --button-focus-color: #fff;
    --button-focus-border: #9a191b;
    --button-focus-background: #b01d1f;
    --button-active-color: #fff;
    --button-active-border: #b01d1f;
    --button-active-background: #b01d1f;
    --button-active-shadow: inset 1px 1px 14px rgba(79, 17, 17, 0.26);
    --button-disabled-color: #fff;
    --button-disabled-border: transparent;
    --button-disabled-background: rgba(176, 29, 31, 0.4);
}

.CatalogPage__aside .bx-filter .bx-filter-section .btn.btn-link {
    color: var(--button-default-color);
    --button-default-color: #cf2225;
    --button-default-background: #fff;
    --button-hover-color: #cf2225;
    --button-hover-background: #fff;
    --button-focus-color: #cf2225;
    --button-focus-background: #fff;
    --button-active-color: #cf2225;
    --button-active-background: #fff;
    --button-disabled-color: rgba(207, 34, 37, 0.4);
    --button-disabled-border: hsla(0, 0%, 74.1%, 0.4);
    --button-disabled-background: #fff;
}


.CatalogSorts__select {
    min-width: auto;
}

.CatalogPage__sorts {
    display: flex;
    flex-direction: row;
    gap: 10px;
}

.filter-catalog__view-btn--mobile {
    display: none;
    width: 30%;
}

.filter-catalog__view-btn--mobile .Button {
    min-width: auto;
    height: 100%;
}

.CatalogPage .filter .module__side--filter .smartfilter {
    padding: 20px;
}

.CatalogPage .filter .module__side--filter .form__title {
    font-size: 18px;
    margin-bottom: 10px;
    color: #000;
}

.CatalogPage .filter .module__side--filter .form__content {
    margin-bottom: 10px;
}

.CatalogPage .filter .module__side--filter .btn.btn-link {
    color: #cf2225;
}

.product-detail__select-props {
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin-bottom: 30px;
}

.product-detail__select-props .select-props__offer {
    display: flex;
    flex-direction: row;
	justify-content: center;
    flex-wrap: wrap;

    border: none;
    position: relative;
    padding: 0;

    gap: 10px;
}


.product-detail__select-props .select-props__offer .input.input--radio + label {
    display: inline-block;
}

.ProductPage .ProductDetails__header {
    margin-bottom: 20px;
}

.ProductPage .product-detail__select-props {
    flex-direction: row;
    margin-right: 50px;
}

.ProductPage .product-detail__select-props span {
    font-weight: bold;
    color: #000;
    margin-right: 10px;
}

.ProductPage .ProductDetails__buyOptionsWrapper {
    display: flex;
    margin-bottom: 20px;
}

.ProductPage .ProductDetails__buyOptionsWrapper span.Counter--productPage-title {
    font-weight: bold;
    color: #000;
    margin-right: 10px;
}

.ProductPage .Counter {
    height: 20px;
    border: none;
}

.ProductPage .Counter__inputWrapper {
    max-width: 20px;
    line-height: normal;
    margin: 0;
}

.ProductPage .Counter__button {
    min-width: 30px;
}

.ProductPage .ProductPage__aval-price {
    margin-left: 0;
    margin-bottom: 20px;
}

.ProductPage .ProductPage__price {
    font-weight: bold;
}

.ProductPage .select-grind {
    border: 1px solid #c7c7c7;
    margin-bottom: 40px;
}

.ProductPage .select-grind_title {
    color: #000;
    padding: 10px 12px;
    cursor: pointer;
	font-weight: bold;
}

.ProductPage .select-grind_title:after {
    content: url('../icons/angle-down-thick.svg');
    float: right;
}

.ProductPage .select-grind_title.open:after {
    transform: rotate(180deg);
}

.ProductPage .select_grind_val {
    border: none;
    padding: 2px 12px 6px;
}

.ProductPage .select_grind_val-item {
    margin-bottom: 5px;
}

.ProductPage .select_grind_val-item input[type='radio'],
.ProductPage .select_grind_val-item label {
    margin: 0;
    cursor: pointer;
}

.ProductPage .select_grind_val-item label {
    color: #000;
    margin-left: 5px;
}

.ProductPage .select_grind_val-item input[type='radio'] {
    position: relative;
    height: 16px;
    width: 16px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    vertical-align: text-top;
}

.ProductPage .select_grind_val-item input[type='radio']::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    background-color: white;
    border: 1px solid #000;
}

.ProductPage .select_grind_val-item input[type='radio']:checked::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #000;
    transform: translate(-50%, -50%);
    visibility: visible;
}

.input.input--radio {
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    height: 1px;
    font-size: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.input.input--radio + label {
    border: 1px solid #dcdcdc;
    padding: 10px 20px;
    transition: all 0.3s ease;
    cursor: pointer;
}


.input.input--radio:checked + label {
    background-color: #cf2225;
    border-color: #cf2225;
    color: white;
}

.input.input--radio + label:hover,
.input.input--radio + label:focus,
.input.input--radio + label:focus-visible {
    border-color: #cf2225;
}

@media (max-width: 768px) {
    .filter-catalog__view-btn--mobile {
        display: block;
    }

    .CatalogPage .filter .module__side--filter {
        opacity: 0;
        visibility: hidden;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        position: fixed;
        z-index: 102;
        margin: 0 0 0 -20px;
        top: 200%;
        bottom: 0;
        width: 100vw;
        height: 100vh;
        overflow-y: scroll;
        overflow-x: hidden;
        background: rgba(0, 0, 0, 0.4);
    }

    .CatalogPage .filter .module__side--filter.active {
        opacity: 1;
        visibility: visible;
        top: 0;
    }

    .CatalogPage .filter .module__side--filter .bx-filter  {
        margin-top: 250px;
        padding-bottom: 50px;

        height: 80%;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        background-color: white;
        border-radius: 40px 40px 0 0;

        box-sizing: content-box;
        max-width: 1264px;
        margin-left: auto;
        margin-right: auto;
        padding-left: 16px;
        padding-right: 16px;
    }

    .CatalogPage .filter .module__side--filter .smartfilter {
        padding: 0;
        padding-bottom: 30px;

    }

    .no-scroll {
        overflow: hidden;
    }


    .CatalogPage .filter .module__side--filter .smartfilter .form__actions {
        padding: 0;
        background: #F6F6F6;
        position: fixed;
        left: 0;
        bottom: 0;
        width: 100%;
        padding: 12px 20px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        z-index: 999;
    }

    .CatalogPage .filter .bx-filter .bx-filter-popup-result {
        bottom: 58px !important;
    }

    .CatalogPage .filter .module__side--filter .bx-filter .form__title {
        background: white;
        text-align: center;
        padding-top: 33px;
        padding-bottom: 22px;
        border-radius: 40px 40px 0 0;
        display: block;
        font-weight: bold;
        font-size: 16px;
        border-bottom: 1px solid #F6F6F6;
        margin-bottom: 20px;
    }
}


@media (max-width: 999px) {
    .CatalogPage__aside {
        display: block;
    }
    
    .CatalogPage__aside .CategoriesList {
        display: none;
    }
}