

.body__overlay,
.modal {
    visibility: hidden;
    position: fixed;
    opacity: 0
}

.search-bl .search-input,
.top-middle-bl .search-box .search-input {
    min-height: 42px;
    -moz-appearance: textfield;
    text-overflow: ellipsis;
    white-space: nowrap
}

.advantages-work-bl ul li,
.header-intro ul li,
ul.list-green-marker li {
    background-image: url("../images/list-marker-green.png");
    background-position: left top
}

ul.list-marker {
    list-style: none;
}
ul.list-marker li {
    padding-left: 30px;
    background-image: url("../images/list-marker-green.png");
    background-position: left top;
    background-repeat: no-repeat;
    background-size: auto 15px;
}




.header .phone a:hover,
.mobile-nav .menu li a:hover,
.mobile-nav .menu li.active > a,
.product-box .whatsapp-order a,
.sidebar .list-categories ul li.active a,
.social ul li a:hover,
a {
    color: var(--primary)
}



.blog-bl .title-h3,
.blog-page .articles .card .post-info .hits,
.main-list-articles .card .post-info .hits,
.modal-fast-order,
.module-products .title-h3,
.result-filter-link > span,
.sidebar .list-articles .post-item .post-info .hits,
.text-center {
    text-align: center
}

.no-scroll,
.product__slider__thumbs {
    overflow: hidden
}

.bg-gray {
    background-color: #fcfcfc
}





.card .price,
h2 {
    font-weight: 600
}

.blog-post .post-info,
.cart-r-col form .form-control,
.filter-fields-box .field-value,
.filter__fields-box .field-value,
.review-form .form-group,
ol li,
ul li {
    margin-bottom: 10px
}

.fixed-link-btn {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 9;
    display: flex;
    color: #fff;
    text-decoration: none;
    background-color: var(--primary);
    padding: 10px 20px;
    border-radius: 5px;
    align-items: center;
    line-height: 0;
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 500;
    animation: 2s infinite radial-pulse
}

.mobile-nav .close-btn span,
.navbar-toggle {
    font-size: 25px;
    line-height: 40px;
    margin-left: auto
}

.fixed-link-btn .fa {
    margin-right: 10px
}

@keyframes radial-pulse {
    0% {
        box-shadow: 0 0 0 0 var(--primary)
    }

    30% {
        box-shadow: 0 0 0 10px rgba(226, 4, 23, 0)
    }
}

.hide-modal {
    position: fixed;
    left: -3000px;
    z-index: 101
}

.modal {
    left: -3000px;
    top: 50%;
    transform: translate(-3000px, -50%);
    z-index: 999;
    background-color: #fff;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
    border-radius: 3px;
    padding: 15px
}

.col-filter .close-btn,
.modal .close-btn {
    position: absolute;
    top: 15px;
    right: 15px
}

.modal.active {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    opacity: 1;
    visibility: visible
}

.modal-header {
    font-weight: 700;
    padding-bottom: 15px
}

.modal-fast-order .product-title {
    padding: 10px 0;
    border-bottom: 1px solid #eee
}

.modal-fast-order .product-title a,
.module-reviews .review-about-tour a:hover,
.product-box .whatsapp-order a:hover,
.reviews .reviews-list .review-item .review-about-tour a:hover {
    text-decoration: none
}

.modal-fast-order .product-price {
    font-weight: 800;
    padding: 10px 0
}

.modal-fast-order .note {
    font-size: 14px;
    margin-bottom: 10px
}

.modal-fast-order .input-phone {
    display: block;
    width: 100%;
    margin-bottom: 15px;
    border: 1px solid #ccc;
    border-radius: 3px;
    font-size: 20px;
    padding: 8px 10px
}

.loader2,
.loader2::after {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    box-sizing: border-box
}

.modal-fast-order .process-message,
.modal-fast-order .success-message {
    text-align: center;
    display: none;
    margin-bottom: 10px
}

.modal-fast-order .process-message span {
    margin-top: 10px
}

.list-products .product-card.open .hidden-content,
.modal-fast-order .process-message.show,
.modal-fast-order .success-message.show,
.simple-filter-box .open .dropdown-filter__box,
.sort-box .sort-box-dropdown.open {
    display: block
}

.modal-fast-order .success-message {
    font-size: 14px
}

.loader2 {
    display: inline-block;
    border-top: 4px solid #e30707;
    border-right: 4px solid transparent;
    animation: 1s linear infinite rotation2
}

.loader2::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    border-left: 4px solid var(--primary);
    border-bottom: 4px solid transparent;
    animation: .5s linear infinite reverse rotation2
}

@keyframes rotation2 {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(360deg)
    }
}

.body__overlay {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5);
    z-index: 99;
    -webkit-transition: .3s;
    transition: .3s
}

.body__overlay.active {
    opacity: 1;
    visibility: visible;
    z-index: 100
}




.mobile-nav .close-btn {
    text-align: right;
    padding: 30px 30px 0
}

.mobile-nav .close-btn span {
    color: #555;
    display: table;
    height: 40px;
    width: 40px;
    text-align: center;
    cursor: pointer
}

.mobile-nav .wrapper {
    margin: 30px auto 0;
    padding: 0 40px;
}
.mobile-nav .default-menu{
    margin-top: 20px;
}
.navbar-toggle {
    background: 0 0;
    border: none;
    color: #fff;
    display: table
}

.smartphoto {
    background-color: rgba(0, 0, 0, .7)
}

.blog-page .articles .card .post-info .comments,
.main-list-articles .card .post-info .comments,
.sidebar .list-articles .post-item .post-info .comments,
.text-right {
    text-align: right
}

.line-through {
    text-decoration: line-through
}



.main-page header h1 {
    font-weight: 500;
    font-size: 50px;
    text-transform: uppercase;
    margin: 20px 0 50px
}

.main-page header .header-btn {
    background-color: var(--primary);
    color: #fff;
    display: table;
    text-decoration: none;
    padding: 10px 25px;
    border-radius: 3px;
    font-size: 13px;
    margin: auto;
    text-transform: uppercase;
    font-weight: 500
}

.blog-post .tags a,
.breadcrumb li,
.social ul li,
.top-menu ul li {
    display: inline-block
}

.main-page .btn-blue {
    background-color: var(--secondary) !important
}




.mobile-nav {
    position: fixed !important;
    top: -10000%;
    left: 0;
    height: 100vh;
    width: 100%;
    overflow-y: scroll;
    z-index: 105;
    background-color: #fff;
    opacity: 0;
    -webkit-transition: opacity .2s ease-in-out;
    transition: opacity .2s ease-in-out
}

.mobile-nav.active {
    top: 0;
    left: 0;
    opacity: 1
}

.header .phone .fa,
.mobile-nav .phone .fa,
footer .phone .fa {
    color: #fff;
    margin-right: 10px
}

.header .phone a,
.mobile-nav .phone a,
footer .phone a {
    text-decoration: none;
    color: #fff;
    font-weight: 500;
    -webkit-transition: .4s;
    -o-transition: .4s;
    transition: .4s
}

.mobile-nav .phone,
.module-product-slider {
    margin: 20px 0
}

#cart_form,
.mobile-nav .social,
.module-products {
    margin-bottom: 30px
}

footer .phone,
footer .social {
    margin-top: 14px
}

.header-intro ul,
.sidebar .list-categories ul,
.social ul,
.top-menu ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.social ul li a {
    text-decoration: none;
    color: #fff;
    display: block;
    padding: 0 10px;
    -webkit-transition: .4s;
    -o-transition: .4s;
    transition: .4s
}

.top-menu-bl {
    background: #f5f5f5;
    padding: 3px 0
}

.top-menu ul li {
    padding-right: 30px
}

.cabinet-link a,
.top-menu ul li a {
    color: #4f5c64;
    font-size: 15px;
    line-height: 30px;
    text-decoration: none;
    font-weight: 600
}
.mobile-nav .default-menu ul li a:hover{
    text-decoration: none;
}
.mobile-nav .default-menu ul li a,
.mobile-nav .default-menu ul li span {
    line-height: 30px;
}
.cabinet-link a:hover,
.footer-menu a:hover,
.top-menu ul li a:hover {
    text-decoration: underline
}

.review-form .form-group .review-load-photo label{
    margin: 0
}

.top-phone .phone-note {
    text-align: right;
    font-size: 13px
}



.top-phone a img {
    margin-right: 10px;
    width: 17px;
    height: 17px
}

.cart-products .product,
.reviews .admin-answer-box .admin-form-answer,
.top-middle-bl {
    padding: 10px 0
}



.search-bl .btn-catalog,
.top-middle-bl .search-box .search-input {
    font-size: 14px;
    line-height: 20px;
    max-width: 100%;
    font-style: normal
}

.top-middle-bl .search-box {
    align-self: center
}

.top-middle-bl .search-box .search-input {
    width: 100%;
    border: 1px solid #ccc;
    background-image: url("../images/search-for-field-gray.svg");
    color: #555;
    background-position: 10px 50%;
    background-repeat: no-repeat;
    padding: 9px 8px 9px 44px;
    border-radius: 6px;
    outline: 0 !important;
    overflow: hidden;
    font-weight: 400;
    text-align: left;
    cursor: text;
    transition: .15s
}

.top-middle-bl .search-box .search-input::-moz-placeholder,
.top-middle-bl .search-box .search-input::-webkit-input-placeholder {
    color: #999;
    opacity: .5
}

.top-middle-bl .search-box .search-input:focus {
    background-color: #fff;
    background-image: url("../images/search-for-field-gray.svg");
    color: #555
}

.cabinet-link a,
.product-page .product-box strong {
    color: #555
}





.menu li,
.module-product-slider .title-h3 {
    margin-bottom: 0
}



.blog-page .articles .card .post-info,
.blog-post .post-info,
.main-list-articles .post-info,
.mobile-nav .main-menu li {
    padding: 0
}





.mobile-nav .main-menu li,
.mobile-nav .top-menu ul li {
    display: block;
    padding-right: 0;
    text-align: left;
    position: relative;
}

.mobile-nav .default-menu li a,
.mobile-nav .default-menu li span {
    padding: 4.5px 0 5px;
    display: inline-block;
    text-decoration: none;
}

.mobile-nav .main-menu .menu,
footer .main-menu .menu {
    text-align: left;
    padding: 0;
}

.mobile-nav .menu li .link-as-title,
.mobile-nav .menu li a {
    color: #555;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    cursor: pointer
}
.mobile-nav .menu li.parent > a,
.mobile-nav .menu li.parent > .link-as-title {
    position: relative;
    padding-right: 25px
}

.mobile-nav .menu li.parent > .caret{
    position: absolute;
    right: 30px;
    top: 12px;
    width: 16px;
    height: 16px;
    margin-top: -1px;
    border-radius: 2px;
    background: var(--secondary);
    z-index: 1;
}
.mobile-nav .menu li.parent > .caret::after {
    content: "";
    position: absolute;
    right: 4px;
    top: 8px;
    margin-top: -1px;
    border: 4px solid transparent;
    border-top: 4px solid #fff;
    z-index: 2;
}

.mobile-nav .main-menu .menu .sub-menu li a {
    display: block;
    text-transform: uppercase;
    font-size: 12px;
    color: #555;
    padding: 10px 0!important;
    text-decoration: none
}

.mobile-nav .main-menu li.active > a {
    color: var(--primary) !important
}

.mobile-nav .sub-menu {
    height: 0;
    overflow: hidden;
    transition: all 300ms ease-in-out;
}

.mobile-nav .sub-menu.open {
    height: auto
}

.search-bl {
    position: relative;
    background: linear-gradient(104.86deg, var(--primary) .62%, #8a00f4 100.62%);
    padding: 15px 0
}

.search-bl .btn-catalog {
    background: #f7f5f7;
    color: var(--primary);
    font-weight: 600;
    position: relative;
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    height: 42px;
    padding: 0 12px 0 44px;
    border: 1px solid transparent;
    border-radius: 6px;
    outline: 0;
    text-align: center;
    text-decoration: none !important;
    cursor: pointer
}

.search-bl .btn-catalog-icon {
    position: absolute;
    left: 0;
    top: 0
}

.search-bl .cart-link,
.search-bl .favorites-link {
    display: block;
    line-height: 0;
    color: #fff;
    position: relative
}

.cart-link .count_cart_products,
.favorites-link .count_favourites {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: -2px;
    right: -7px;
    color: var(--primary);
    font-size: 10px;
    font-style: normal;
    font-weight: 800;
    line-height: 10px;
    box-shadow: 0 4px 10px rgba(34, 45, 74, 0.2);
}

.top-middle-bl .cart-link .count_cart_products,
.top-middle-bl .favorites-link .count_favourites {
    position: absolute;
    top: -.3125rem;
    right: -.3125rem;
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 50%;
    background-color: var(--primary);
    color: #fff;
    font-size: .75rem;
    font-weight: 500;
    text-align: center;
    line-height: 1.25rem
}

.search-bl .btn-catalog-icon::after,
.search-bl .btn-catalog-icon::before {
    position: absolute;
    border-radius: 2px;
    background: var(--primary);
    left: 15px;
    height: 2px;
    transition: .3s;
    content: ""
}

.favorites-link .count_favourites {
    top: -5px
}

.search-bl .btn-catalog-icon::before {
    width: 17px;
    box-shadow: 0 12px 0 var(--primary);
    top: 12px
}

.search-bl .btn-catalog-icon::after {
    width: 12px;
    top: 18px
}

.search-bl .search-input {
    width: 100%;
    max-width: 100%;
    border: 0;
    background-color: rgba(247, 245, 247, .3);
    background-image: url("../images/search-for-field-white.svg");
    color: #fff;
    background-position: 10px 50%;
    background-repeat: no-repeat;
    padding: 9px 8px 9px 44px;
    border-radius: 6px;
    outline: 0 !important;
    overflow: hidden;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    text-align: left;
    cursor: text;
    transition: .15s
}

.search-bl .search-input::-moz-placeholder,
.search-bl .search-input::-webkit-input-placeholder {
    color: #fff;
    opacity: .5
}

.search-bl .search-input:focus {
    background-color: #fff;
    background-image: url("../images/search-for-field-gray.svg");
    color: #333
}

.breadcrumb-bl {
    background-color: #f6f7fb;
    border-bottom: 1px solid #ebebeb
}

.breadcrumb {
    margin: 0;
    padding: 20px 0;
    list-style: none
}

.breadcrumb li,
.filter_count_products {
    font-size: 13px
}

.breadcrumb li a {
    color: #b7c0ca;
    text-decoration: none
}

.breadcrumb li span.last {
    color: #888;
    font-weight: 500
}

.breadcrumb .divider {
    color: #ececec
}

.main-slides .slide {
    background-color: var(--bg-color);
    padding: 30px 0
}

.main-slides h2 {
    font-weight: 600;
    color: #62976d;
    text-transform: uppercase;
    font-size: 35px;
    margin-top: 50px
}

.main-slides .slide .sub-title {
    font-weight: 700;
    font-size: 25px
}

.main-slides .slide .btn-box {
    display: table;
    margin-top: 50px
}

.main-slides .slide-image,
.rate-area > label:active {
    position: relative
}

.main-slides .slide .image-shadow {
    position: absolute;
    bottom: -10px;
    left: 20%;
    width: 60%;
    height: 20px;
    background: rgba(0, 0, 0, .06);
    filter: blur(10px);
    border-radius: 50%
}

.main-intro-text {
    text-align: center;
    padding: 30px 0
}

.main-intro-text .title-h3 {
    font-size: 30px;
    color: #555;
    text-transform: none
}

.module-links-box {
    margin-bottom: 15px;
    overflow: hidden;
    margin-left: -15px;
    padding: 0 15px;
    margin-right: -15px
}

.module-links-box .swiper-scrollbar {
    bottom: -5px
}

.module-links-box .links {
    margin: 0 0 10px;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    white-space: nowrap
}

.module-links-box .links li {
    padding: 0 6px
}

.module-links-box .swiper-slide {
    width: auto
}

.current-filters-box ul li .reset-form,
.current-filters-box ul li span,
.module-links-box .links li a {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    transition: background-color .3s;
    font-size: 14px;
    line-height: 20px;
    color: #535353;
    max-width: 100%;
    display: block;
    padding: 7px 15px;
    border-radius: 44px;
    background-color: #f1f1f5;
    text-decoration: none;
    position: relative
}

.current-filters-box ul li .reset-form:hover,
.module-links-box .links li a:hover {
    background-color: #e8e8f0;
    cursor: pointer
}

.list-products .product-list-row {
    margin-right: -10px !important;
    margin-left: -10px !important
}

.list-products .product-list-row .product-item {
    padding-left: 10px !important;
    padding-right: 10px !important;
    margin-bottom: 20px
}



.advantages-with-icons-box .bl,
.confirm-btn-cart-box,
.module-products .link-more,
.opt-header-slide .block,
.opt-header-slide .btn-box {
    margin: auto;
    display: table
}

.about-bl img,
.opt-bl img {
    max-width: 470px;
    border-radius: 10px;
    width: 100%
}

.about-bl .link-more,
.opt-bl .link-more {
    display: table
}

.about-bl .link-more a,
.module-products .link-more a,
.opt-bl .link-more a {
    padding-left: 30px;
    padding-right: 30px
}

.opt-bl .lead {
    font-size: 22px;
    font-weight: 300
}

.opt-header-slide,
.slide-p {
    background-image: url(../images/slides/slide-1.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 446px;
    display: flex;
    align-items: center
}

.slide-p {
    background-image: url(../images/slides/slide-p-bg.jpg)
}

.opt-header-slide .block {
    max-width: 800px;
    padding-bottom: 20px;
    padding-top: 20px
}

.opt-header-slide .block h1 {
    color: var(--secondary);
    font-weight: 400;
    margin: 10px 0 30px;
    text-align: center;
    text-transform: uppercase
}

.opt-header-slide .block p {
    color: #888;
    font-size: 25px;
    margin: 40px 0;
    text-align: center;
    text-transform: uppercase
}

.main-slides .opt-header-slide h2,
.page-reviews .reviews .review-form,
.product-box .buttons-box {
    margin-top: 20px
}

.main-slides .opt-header-slide .block p {
    margin: 30px 0
}

.opt-header-slide .block p.lead {
    color: #ff115a
}

.opt-header-slide hr {
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: none;
    border-top: 1px solid rgba(0, 0, 0, .1)
}

.opt-header-slide .block .footer a,
.slide .footer a {
    display: table;
    margin: auto;
    text-decoration: none
}

.opt-header-slide .block .footer a .phone_icon,
.opt-header-slide .block .footer a .whatsapp_icon,
.slide .footer a .whatsapp_icon {
    display: inline-table;
    float: left;
    height: 2rem;
    margin-right: 20px;
    width: 2rem
}

.opt-header-slide .block .footer a .phone_icon img,
.opt-header-slide .block .footer a .whatsapp_icon img {
    aspect-ratio: 1/1
}

.opt-header-slide .block .footer a .whatsapp_icon i,
.slide .footer a .whatsapp_icon i {
    color: #62976d
}

.opt-header-slide .block .footer a span,
.slide .footer a span {
    color: #555;
    display: inline-table;
    font-family: Helvetica, sans-serif;
    font-size: 28px;
    line-height: 30px
}

.advantages-with-icons-box {
    border-bottom: 1px solid #c6c6c6;
    border-top: 1px solid #c6c6c6;
    padding: 20px 0
}

.advantages-with-icons-box .prem_icon {
    display: inline-table;
    fill: var(--primary);
    float: left;
    height: 50px;
    margin-right: 10px;
    width: 50px
}

.advantages-with-icons-box span {
    color: #737373;
    display: inline-table;
    font-size: 14px;
    padding-top: 3px
}

.advantages-with-icons-box span strong {
    color: #555;
    display: block;
    font-size: 16px
}

.advantages-with-icons-box .colс {
    border-left: 1px solid #c6c6c6;
    border-right: 1px solid #c6c6c6
}

.product-card {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    margin: 0 auto 15px auto;
    background: #fff;
    font-weight: 400;
    transition: box-shadow .15s
}

.btn-full,
.btn-o {
    height: 42px;
    width: 100%;
    cursor: pointer;
    outline: 0
}

.product-card::before {
    position: absolute;
    content: "";
    top: -10px;
    left: -10px;
    height: calc(100% + 10px);
    width: calc(100% + 20px);
    z-index: -1;
    transition: .2s;
    border-color: transparent;
    border-radius: 5px;
    background: #fff
}

.product-card:hover::before {
    box-shadow: 0 10px 50px rgba(68, 68, 53, .2)
}

.module-product-slider .product-card:hover::before {
    box-shadow: 0 10px 20px rgba(68, 68, 53, .2)
}

.list-products .product-card .image a,
.product-card .product-image a {
    display: block;
    line-height: 0;
    width: 100%;
    padding-bottom: 100%;
    overflow: hidden;
    position: relative;
    border-radius: 5px;
}

.product-card .image a img,
.product-card .product-image img {
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    aspect-ratio: 1/1;
}
.c-type-2 .list-products .product-card .image a,
.c-type-2 .product-card .product-image a {
    padding-bottom: 130%;
}
.c-type-2 .product-card .image a img,
.c-type-2 .product-card .product-image img {
    aspect-ratio: unset;
}
.blog-page .articles .card .post-info > span,
.main-list-articles .card .post-info > span,
.product-card .price-box,
.product-card .price-note,
.sidebar .list-articles .post-item .post-info > span {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%
}

.product-card .btn-buy-box {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%
}

.product-card .btn-buy-small {
    background: var(--primary);
    border: none;
    cursor: pointer;
    line-height: 0;
    color: #fff;
    display: flex;
    align-items: center;
    padding: 4px 15px 3px;
    border-radius: 3px;
    text-decoration: none;
    font-size: 13px;
    height: 26px;
}
.product-card .btn-buy-small i{
    margin: 5px 0 5px 5px;
}

.product-card .btn-buy-small:hover {
    background: 0 0
}

.product-card .btn-buy-small svg {
    fill: #fff;
    margin-left: 10px;
    height: 18px
}

.product-card .btn-buy-small:hover svg {
    fill: #555
}

.cart-r-col form .error-form,
.list-products .product-card.open .btn-buy-small,
.rating-area:not(:checked) > input {
    display: none
}

.product-card .card-content {
    padding: 10px 0 0;
    border-top: 1px solid #e5e5e5
}

.product-card .card-content .price-note {
    font-size: 13px;
    color: #aaa;
}
.product-card .card-content .composition {
    border-top: 1px solid #e5e5e5;
    color: #555;
    font-size: 13px;
    line-height: 18px
}

.product-card .card-content .btn-full {
    border-radius: 1px
}

.product-card .card-content .btn-o {
    border: none;
    text-decoration: underline
}

.product-card .labels-box {
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 1
}

.product-badge {
    display: block;
    padding: 4px 8px 3px;
    border-radius: 0 10px;
    color: #fff;
    font-size: 13px;
    line-height: 12px;
    margin-bottom: 10px
}

.btn-full,
.btn-full span,
.btn-o,
.card .card-image,
.filter-buttons-box,
.price-box,
.product__slider__thumbs .slider__image,
.sidebar .list-articles .post-item .post-image a {
    display: flex
}

.btn-full,
.btn-o,
.reset-form,
.result-filter-link {
    line-height: 22px;
    font-size: 15px;
    text-decoration: none
}

.labels-box .badge-discount {
    background: #cb2b29
}

.labels-box .badge-hit {
    background: #c480f9
}

.list-products .product-card .btn-add-to-favorites {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 1;
    background-color: rgba(255, 255, 255, .9);
    border: none;
    line-height: 0;
    display: flex;
    border-radius: 50%;
    font-size: 15px;
    text-align: center;
    align-items: center;
    width: 32px;
    height: 32px;
    cursor: pointer
}

.list-products .product-card .btn-add-to-favorites svg {
    margin-top: 3px;
    margin-left: 1px
}

.list-products .product-card .hidden-content {
    display: none;
    font-size: 14px
}

.product-card .title {
    margin: 10px 0 auto;
    padding: 0 0 10px
}

.product-card .title a {
    text-decoration: none;
    color: #555;
    font-size: 15px;
    font-weight: 500;
    display: block;
    overflow: hidden
}

.price-box {
    flex-wrap: wrap;
    margin-bottom: 10px;
    align-items: center
}

.product-card .price-box .price,
.review-form .rf-title {
    font-size: 18px;
    color: #555;
    font-weight: 700
}

.product-card .price-box .old-price {
    text-decoration: line-through;
    padding: 0 10px;
    color: #999;
    font-size: 12px
}

.price-box .badge-discount span {
    background: linear-gradient(104.86deg, var(--primary) .62%, var(--secondary) 100.62%);
    border-radius: 8px;
    color: #fff;
    padding: 3px 8px 2px;
    font-size: 11px;
    line-height: 1;
    display: block
}

.btn-full {
    align-items: center;
    justify-content: center;
    background-color: var(--primary);
    border: 0;
    border-radius: 21px;
    color: #fff;
    transition: .15s
}

.btn-full span {
    position: relative;
    margin: auto;
    line-height: 24px
}

.btn-full span svg {
    margin-right: 10px;
    height: 22px
}

.btn-buy:hover {
    background-color: var(--secondary)
}

.btn-o {
    align-items: center;
    justify-content: center;
    border: 2px solid #999;
    background: #fff;
    padding: 0;
    margin-top: 15px;
    border-radius: 6px;
    color: #333;
    transition: .15s
}

.btn-o:hover {
    border-color: #666
}

.list-products .product-card .composition {
    line-height: 20px
}

.ui-button,
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
html .ui-button.ui-state-disabled:active,
html .ui-button.ui-state-disabled:hover {
    border: 2px solid #fff !important;
    background-color: var(--primary) !important;
    font-weight: 400;
    color: #454545 !important;
    border-radius: 50%;
    outline: 0
}

.col-filter.open {
    top: 60px;
    z-index: 90;
    background-color: #fff
}

.price-range-block .ui-widget.ui-widget-content {
    position: relative;
    border: none !important;
    background: 0 0 !important
}

.price-range-block .ui-widget.ui-widget-content::before {
    position: absolute;
    content: "";
    top: 2px;
    left: 0;
    background-color: #eaeaea;
    height: 4px;
    width: 100%;
    z-index: -1
}

.price-filter-range .ui-widget-header {
    background: var(--primary) !important;
    height: 4px !important;
    border: none !important;
    margin-top: 2px
}

.filter-field-title {
    padding: 10px 0;
    font-weight: 700;
    color: #333
}

.ui-slider-horizontal {
    height: .6em;
    margin-top: 20px;
    margin-bottom: 15px;
    margin-left: 10px;
    width: calc(100% - 20px)
}

.ui-widget-header {
    background: var(--primary)
}

.reset-form {
    background-color: #f1f1f5;
    color: #4d4d4d;
    margin-top: 20px;
    display: table;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
    margin-right: 10px;
    height: 36px;
    padding: 10px;
    border-radius: 3px
}

.result-filter-link,
.result-filter-link:hover,
.reviews .load-more-reviews:hover {
    background-color: var(--primary)
}

.result-filter-link {
    margin-top: 20px;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    width: 100%;
    height: 42px;
    border: 0;
    border-radius: 3px;
    outline: 0;
    color: #fff;
    transition: .15s
}

.price-range-field {
    width: calc(50% - 5px);
    min-height: 42px;
    padding: 9px 8px 9px 12px;
    border: 1px solid #e8e8f0;
    border-radius: 6px;
    outline: 0 !important;
    overflow: hidden;
    background: #e8e8f0;
    color: #333;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: text;
    transition: .15s
}

.sort-box {
    display: table;
    margin-left: auto;
    position: relative
}

.filter-fields-box .field-value label,
.filter__fields-box .field-value label,
.sort-box-label {
    display: flex;
    align-items: center;
    cursor: pointer
}

.sort-box-label svg {
    fill: #666
}

.pagination-bottom nav .page-next,
.sort-box-label span {
    padding-left: 5px
}

.sort-box .sort-box-dropdown {
    display: none;
    padding: 2px;
    border: 2px solid #f7f5f7;
    border-radius: 10px;
    box-shadow: 0 4px 16px rgba(29, 0, 52, .05);
    background: #fff;
    position: absolute;
    top: calc(100% + 8px) !important;
    left: 0 !important;
    transform: translateZ(0);
    z-index: 101
}

.sort-box .sort-box-dropdown ul {
    padding: 0;
    margin: 0;
    list-style: none
}

.sort-box .sort-box-dropdown a {
    text-decoration: none;
    color: #555;
    display: block;
    padding: 7px 10px;
    transition: .15s;
    font-size: 14px
}

.sort-box .sort-box-dropdown a:hover {
    background-color: #fafafa
}

.search-results-block {
    position: relative;
    display: block;
    clear: both
}

.pagination-bottom,
.product-box .buttons-box button,
.reviews .review-answer .answer-wrapper,
.simple-filter-box {
    margin-bottom: 20px
}

.simple-filter-box .filter__fields-box,
.simple-filter-box form {
    display: flex;
    margin-left: -6px;
    margin-right: -6px
}

.simple-filter-box .filter--toggle {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
    padding: 0 6px;
    position: relative
}

.simple-filter-box .filter__label {
    padding: 7px 12px 5px;
    border-radius: 8px;
    box-shadow: 0 2px 16px rgba(0, 0, 0, .08);
    font-size: 14px;
    display: flex;
    cursor: pointer;
    font-weight: 400;
    position: relative
}

.simple-filter-box .count_values {
    font-size: 10px;
    line-height: 13px;
    text-transform: uppercase;
    color: #fff;
    font-weight: 700;
    display: block;
    min-width: 16px;
    text-align: center;
    background: #f55123;
    padding: 2px 5px 1px;
    border-radius: 13px;
    position: absolute;
    top: -4px;
    right: -4px
}

.simple-filter-box .filter__label .angle__filter {
    font-size: 12px;
    padding-left: 10px;
    align-self: center;
    opacity: .5;
    transition: .3s
}

.simple-filter-box .filter__label:hover .angle__filter .fa {
    transition: .3s
}

.simple-filter-box .open .filter__label .angle__filter .fa {
    transform: rotate(180deg)
}

.simple-filter-box .filter__label:hover .angle__filter {
    opacity: 1
}

.filters-icon {
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url(data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M6.5%204a1.5%201.5%200%201%201-3%200%201.5%201.5%200%200%201%203%200Zm1.459.5a3%203%200%200%201-5.918%200H.75a.75.75%200%200%201%200-1.5h1.42a3.001%203.001%200%200%201%205.66%200h7.42a.75.75%200%200%201%200%201.5H7.959Zm5.87%205.5h1.421a.75.75%200%200%201%200%201.5h-1.291a3%203%200%200%201-5.918%200H.75a.75.75%200%200%201%200-1.5h7.42a3.001%203.001%200%200%201%205.66%200ZM12.5%2011a1.5%201.5%200%201%201-3%200%201.5%201.5%200%200%201%203%200Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain
}

.simple-filter-box .filter__button__done,
.simple-filter-box .filter__button__reset {
    text-align: center;
    display: block;
    border-radius: 6px;
    cursor: pointer;
    font-size: 14px;
    line-height: 36px;
    border: none;
    width: 100%;
    padding: 0;
    text-decoration: none
}

.simple-filter-box .filter__button__reset {
    background-color: #f1f1f5;
    color: #4d4d4d
}

.simple-filter-box .filter__button__reset:hover {
    background-color: #e8e8f0
}

.btn-green,
.simple-filter-box .filter__button__done {
    background-color: var(--primary);
    color: #fff
}

.simple-filter-box .filter__button__done:hover {
    background-color: var(--secondary)
}

.cart-list-products .cart-products,
.current-filters-box {
    margin-top: 15px
}

.current-filters-box ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    width: 100%;
    flex-wrap: wrap
}

.current-filters-box ul li {
    margin-top: 10px;
    margin-right: 10px
}

.current-filters-box ul li .reset-form {
    border: none;
    margin-top: 0;
    height: unset
}

.current-filters-box ul li span {
    padding: 8px 40px 6px 15px
}

.filter-remove-item {
    transition: background .3s;
    border-radius: 50%;
    text-align: center;
    width: 20px;
    height: 20px;
    display: inline-block;
    font-size: 0;
    line-height: 1;
    border: none;
    cursor: pointer;
    background-color: #b9b9c1;
    position: absolute;
    top: calc(50% - 10px);
    right: 12px
}

.filter-remove-item:hover {
    background-color: #858588
}

.filter-remove-item::after,
.filter-remove-item::before {
    transition: background .3s;
    background-color: #fff;
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg)
}

.filter-remove-item::before {
    width: 2px;
    height: 11px
}

.filter-remove-item::after {
    width: 11px;
    height: 2px
}

.filter__desktop__box {
    position: fixed;
    top: 0;
    width: 340px;
    height: 100%;
    transition: .2s linear;
    z-index: 1000;
    background: #fff
}

.filter__desktop__box.open {
    right: 0
}

.filter__desktop__box form {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%
}

.filter__desktop__box .filter-header {
    display: flex;
    padding: 24px 40px;
    align-items: center
}

.filter__desktop__box .filter-header .filter-title {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
    font-weight: 700;
    font-size: 20px
}

.filter__desktop__box .filter-header .close-btn {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%
}

.filter__desktop__box .filter-header .close-btn span,
.review-form .review-load-photo label img {
    cursor: pointer
}

.filter__desktop__box .filter-content-fields {
    overflow-y: auto;
    scrollbar-color: #d3d4dd transparent;
    scrollbar-width: thin;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    margin-right: 10px;
    padding: 24px 40px
}

.filter__desktop__box .filter-footer {
    flex: 0 0 auto;
    box-shadow: 0 2px 16px rgba(0, 0, 0, .08);
    padding: 12px 40px 24px
}

.filter__buttons__box {
    margin-left: -5px !important;
    margin-right: -5px !important;
    margin-top: 20px
}

.filter__buttons__box > div {
    padding-left: 5px !important;
    padding-right: 5px !important
}

.open-side-filter-button .filters-icon {
    margin-right: 10px;
    opacity: .6
}

.simple-filter-box .dropdown-filter__box {
    display: none;
    flex-direction: column;
    align-items: flex-start;
    width: 296px;
    padding: 20px;
    position: absolute;
    top: calc(100% + 20px);
    left: calc(50% - 296px / 2);
    border-radius: 8px;
    box-shadow: 0 0 20px rgba(0, 0, 0, .1);
    background: #fff;
    z-index: 91
}

.simple-filter-box .dropdown-filter__box::before {
    content: '';
    display: block;
    position: absolute;
    top: -12px;
    left: calc(50% - 12px);
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-bottom: 12px solid #fff
}

.filter-fields-box .field-header {
    padding: 8px 18px 8px 0;
    color: #333;
    font-size: 16px;
    font-weight: 600;
    line-height: 22px
}

.filter-fields-box .filter-field-value-checkbox,
.filter__fields-box .filter-field-value-checkbox {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    border: 1px solid #cacaca;
    border-radius: 6px;
    outline: 0 !important;
    background: #fff;
    margin: 0 !important;
    cursor: pointer
}

.filter-fields-box .filter-field-value-checkbox:checked,
.filter__fields-box .filter-field-value-checkbox:checked {
    border-color: var(--primary);
    background: var(--primary) url("../images/i-check.svg") 50% no-repeat;
    opacity: 1 !important
}

.filter-fields-box .field-value .field-value-title,
.filter__fields-box .field-value .field-value-title {
    padding-left: 10px
}

.product-page .product-box {
    box-shadow: 0 .3rem 1.525rem -.375rem rgba(0, 0, 0, .1) !important;
    padding: 15px;
    border-radius: 7px;
    background-color: #fff;
    color: #777
}

.product-images-wrapper .slider {
    display: flex;
    flex-wrap: wrap;
    gap: 15px
}

.product__slider__images,
.product__slider__images .swiper-container {
    flex-shrink: 0;
    position: relative
}

.product__slider__images .swiper-slide,
.product__slider__images .swiper-slide .slider__image {
    display: flex;
    align-items: center;
    justify-content: center
}

.product__slider__images .swiper-slide .slider__image {
    border-radius: 7px;
    overflow: hidden;
    height: 100%;
}
.product__slider__images .swiper-slide .slider__image img{
    object-fit: cover;
    width: 100%;
    height: auto;
}

.product__slider__thumbs img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 7px
}

.header-title,
.product-box .product-name-main {
    margin-top: 0;
    font-weight: 700;
    font-size: 25px;
    color: #555
}

.product-box .short-text {
    background-color: var(--bg-color);
    padding: 10px;
    border-radius: 7px
}

.product-box .buttons-box .btn-buy {
    padding: 0 40px
}

.product-box .buttons-box .btn-buy-one-click {
    margin-top: 0
}

.product-box .btn-add-to-favorites {
    background: 0 0;
    border: none;
    line-height: 0;
    cursor: pointer
}

.btn-add-to-favorites.inf svg path {
    fill: var(--primary);
    color: var(--primary)
}

.product-box .price-box {
    border-top: 1px solid rgba(105, 120, 112, .25);
    padding-top: 20px;
    margin-top: 20px;
    margin-bottom: 20px
}

.product-box .price-box .price {
    font-size: 24px;
    color: var(--primary);
    font-weight: 800
}

.product-box .price-box .price span {
    color: #555;
    font-weight: 700
}

.product-box .price-box .old-price {
    text-decoration: line-through;
    padding: 0 10px;
    color: #999
}

.product-box .product-delivery .item-wrapper {
    text-align: center;
    display: table;
    margin: auto
}

.product-box .product-delivery .delivery-title {
    font-size: 13px;
    position: relative;
    color: #999
}

.cart-page .qty-bl,
.product-box .product-delivery .delivery-text {
    font-weight: 700
}

.product-box .product-delivery .delivery-title.delivery-city,
.product-box .product-delivery .delivery-title.delivery-price {
    padding-left: 22px
}

.product-box .product-delivery .delivery-title.delivery-city svg {
    position: absolute;
    top: -3px;
    left: 0
}

.product-box .product-delivery .delivery-title.delivery-price svg {
    position: absolute;
    top: 2px;
    left: 0
}

.product-box .whatsapp-order {
    background-color: var(--bg-color);
    padding: 1px 15px;
    font-size: 13px;
    border-radius: 7px
}

.cart-r-col p {
    font-size: 13px;
    color: #777
}

.cart-r-col form .form-control label {
    display: block;
    font-weight: 700;
    font-size: 15px;
    color: #777
}

.cart-r-col form .form-control input,
.cart-r-col form .form-control textarea {
    border: 1px solid #e4e4e4;
    border-radius: 3px;
    background: 0 0;
    display: block;
    width: 100%;
    font-size: 18px;
    padding: 8px 10px;
    color: #777;
    outline: 0
}

.cart-products .product,
.sidebar .list-categories ul li {
    border-bottom: 1px solid #eee
}

.cart-r-col form .form-control textarea {
    font-size: 15px;
    font-family: Lato, Arial, sans-serif, serif;
    min-height: 100px
}

.error-form {
    color: red;
    font-size: 12px;
    display: none
}

.cart-r-col ul {
    list-style: none;
    padding: 0
}

#payment_ul li,
#shipment_ul li {
    margin-bottom: 0 !important
}

#payment_ul li label,
#shipment_ul li label {
    display: block;
    padding: 3px 0;
    font-size: 15px;
    color: #777
}

.cart-list-products h3,
.cart-r-col form h3,
.cart-r-col h2 {
    font-weight: 700;
    letter-spacing: .5px;
    color: #4e6073;
    font-size: 17px;
    margin-bottom: 0
}

.cart-list-products h3,
.cart-r-col h2 {
    font-size: 22px;
    margin: 0
}

.order-create .cart-total {
    font-weight: 800;
    border-top: 1px solid #eee;
    padding-top: 20px;
    margin-bottom: 20px;
    font-size: 20px
}

.order-create .delivery-note {
    margin-top: 10px;
    margin-bottom: 20px
}

.cart-r-col form button {
    margin: auto
}

.cart-list-products {
    background-color: #fff;
    border-radius: 10px;
    padding-top: 15px;
    padding-bottom: 15px;
    font-size: 15px
}

.cart-product-image a {
    display: block;
    width: 100px;
    height: 100px
}

.cart-product-image a img {
    display: flex;
    object-fit: cover;
    width: 100%;
    height: 100%
}

.cart-product-title {
    width: 400px
}

.cart-product-title a {
    color: #555;
    text-decoration: none;
    font-size: 17px
}

.qty-bl {
    background: #f7f5f7;
    display: inline-flex;
    width: 130px;
    height: 40px;
    padding: 0 8px;
    border-radius: 8px;
    z-index: 1;
    user-select: none
}

.qty-bl button {
    border: none;
    background: 0 0;
    cursor: pointer;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    color: var(--primary);
    transition: .15s
}

.quantity__input {
    flex: 1 1 30px;
    width: 30px;
    height: 100%;
    padding: 0;
    border: 0;
    outline: 0;
    background: 0 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    text-align: center
}

.how-work-bl ol.numeric-list li,
.white-bg {
    padding-left: 15px;
    padding-right: 15px
}

.btn-cart-item-delete,
.cart-page .qty-bl button {
    background: 0 0;
    border: none;
    cursor: pointer
}

.blog-page h2,
.cart-product-sum {
    font-size: 20px
}

.advantages-work-bl ul li,
.header-intro,
.header-intro ul li,
ul.list-green-marker li {
    background-repeat: no-repeat
}

.btn-cart-item-delete svg path {
    fill: #999
}

.cart-product-price {
    font-size: 13px;
    color: #777;
    margin-top: 1px
}

.cart-page .qty-bl button {
    font-weight: 700;
    font-size: 18px;
    opacity: .3;
    padding: 7px
}

.cart-page .qty-bl input {
    width: 40px;
    font-weight: 700;
    font-size: 17px;
    color: #4e6073;
    text-align: center;
    padding: 7px;
    border: 1px solid #e6e6e6;
    border-radius: 5px
}

.cart-bottom {
    text-align: right;
    padding-top: 10px;
    color: #777
}

.cart-bottom .cart-total {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: .5px;
    color: #4e6073;
    text-align: left;
    margin-bottom: 20px;
    min-width: 200px
}

.slider__products .swiper-wrapper {
    align-items: stretch;
    padding: 20px 0 30px
}

.slider__products .swiper-wrapper .swiper-slide {
    height: auto
}

.slider__products .swiper-wrapper .swiper-slide .price-box {
    margin-top: auto;
    margin-bottom: 0
}

.slider__products .swiper-wrapper .swiper-slide .btn-buy {
    margin-top: 15px
}

.container-bg,
.white-bg {
    background-color: #fff;
    border-radius: 5px;
    margin-top: 20px;
    margin-bottom: 20px;
    padding-bottom: 20px;
    position: relative;
    z-index: 8
}

.blog-post ol li,
.blog-post ul li {
    margin-bottom: 7px
}

.blog-page h2 {
    font-weight: 500;
    margin: 15px 0
}

.blog-page .categories a,
.blog-post .tags a {
    color: #464646;
    background-color: #fbfbfb;
    display: block;
    padding: 10px 15px;
    text-decoration: none;
    margin-bottom: 15px;
    -webkit-transition: .2s;
    -o-transition: .24s;
    transition: .2s
}

.blog-post .tags {
    margin-top: 30px
}

.blog-page .categories a:hover,
.blog-post .tags a:hover {
    color: #fff;
    background-color: var(--primary)
}

.page-optom .breadcrumb {
    padding-bottom: 0
}

.header-intro {
    background-image: url("../images/header-intro-bg.webp");
    color: #fff;
    padding: 70px 0
}

.header-intro h1 {
    text-transform: uppercase;
    color: #fff !important;
    margin-bottom: 60px
}

.header-intro ul li {
    font-weight: 600;
    padding-left: 35px;
    margin-bottom: 15px
}

.header-intro a.btn-open-form {
    display: table !important;
    line-height: 46px;
    text-decoration: none;
    font-weight: 900
}

.page-optom .title-h4 {
    font-size: 28px;
    font-weight: 600;
    color: #555
}

.p-bl {
    background: #e9ecf5;
    border-radius: 60px;
    padding: 30px 50px
}

.p-bl p {
    font-size: 20px;
    color: #333
}

.p-bl ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap
}

.p2-bl {
    background-color: #f2f2f2
}

.how-work-bl .sub-title {
    font-size: 20px;
    font-weight: 700
}

.how-work-bl ol.numeric-list {
    margin-top: 30px;
    padding: 0;
    list-style: none;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
    counter-reset: item
}

.how-work-bl ol.numeric-list li {
    position: relative;
    padding-top: 40px;
    margin-bottom: 40px
}

.how-work-bl ol.numeric-list li::before {
    position: absolute;
    content: counter(item, decimal-leading-zero) ".";
    counter-increment: item;
    width: 2em;
    left: 15px;
    top: 0;
    font-size: 30px;
    font-weight: 900;
    color: #292f3b;
    line-height: 25px
}



.title-h3-2 {
    font-size: 28px;
    text-transform: uppercase;
    font-weight: 700;
    color: #555
}

.p3-bl {
    background-color: #e9ecf5;
    border-radius: 20px;
    padding: 30px;
    font-size: 18px;
    font-weight: 600;
    color: #333
}

.footer-menu ul,
.list-green-marker {
    margin: 10px 0 0;
    padding: 0;
    list-style: none
}

ul.list-green-marker li {
    font-size: 20px;
    font-weight: 600;
    padding-left: 35px;
    margin-bottom: 15px;
    color: #333
}

.advantages-work-bl {
    color: #fff;
    padding: 80px 0;
    margin-bottom: 30px
}

.advantages-work-bl .title-h3 {
    font-size: 28px;
    font-weight: 900;
    text-transform: uppercase
}

.advantages-work-bl ul {
    margin: 40px 0 0;
    padding: 0;
    list-style: none
}

.advantages-work-bl ul li {
    padding-left: 50px;
    font-weight: 700;
    margin-bottom: 40px
}

.advantages-work-bl p {
    font-weight: 800
}
.advantages-work-bl a {
    text-decoration: none;
}

.btn-open-form {
    background: 0 0;
    border: none;
    display: flex;
    height: 46px;
    border-radius: 23px;
    text-align: center;
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 500;
    align-items: center;
    padding: 0 80px;
    cursor: pointer
}

.btn-red {
    background-color: #d10303;
    color: #fff
}

.header-intro p strong {
    font-weight: 600;
    color: #fff
}

.video-embed-wrapper {
    position: relative;
    height: 0;
    padding-bottom: 56.25%;
    margin: 15px 0
}

.video-embed-wrapper iframe {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0
}

.page-price .tour-category .tours .tour {
    background: #fff;
    -webkit-box-shadow: 0 8px 20px 0 rgba(43, 67, 88, .1);
    box-shadow: 0 8px 20px 0 rgba(43, 67, 88, .1);
    border-radius: 5px;
    padding: 15px;
    margin-bottom: 20px;
    overflow: hidden
}

.page-price .tour-category .tours .tour .tour-title {
    position: relative;
    z-index: 1
}

.page-price .tour-category .tours .tour .tour-title::before {
    position: absolute;
    content: "";
    height: calc(100% + 15px);
    width: calc(100% + 30px);
    top: -15px;
    left: -15px;
    background-color: #fbfbfb;
    z-index: -1
}

.page-price .tour-category .tours .tour h3 {
    font-weight: 500;
    font-size: 20px;
    margin: 17px 0
}

.btn-primary,
.page-price .tour-category .tours .tour .read-more {
    background-color: var(--primary);
    color: #fff;
    display: table;
    text-decoration: none;
    padding: 5px 15px;
    border-radius: 3px;
    font-size: 13px
}

.page-price .tour-category .tours .tour .tour-program {
    align-items: center;
    position: relative;
    padding-top: 10px;
    padding-bottom: 10px
}

.page-price .tour-category .tours .tour .tour-program::before {
    position: absolute;
    content: "";
    width: calc(100% - 30px);
    top: 0;
    left: 15px;
    border-top: 1px solid #eee
}

.page-price .tour-category .tours .tour .program-name,
.tours h2 {
    font-weight: 500
}

.page-price .tour-category .tours .tour .regularity {
    font-size: 13px;
    margin-top: 10px;
    color: #8a8a8a
}

.page-price .tour-category .tours .tour .price-col .title {
    font-weight: 500;
    color: #979797
}

.page-price .tour-category .tours .tour .price-col .price {
    margin-top: 10px;
    font-weight: 600
}

.title-h3 {
    margin: 20px 0 10px;
    font-size: 18px;
    font-weight: 500
}

.sidebar .list-categories ul li a {
    display: block;
    text-decoration: none;
    padding: 10px;
    color: #555
}

.sidebar .list-articles .post-item {
    margin-bottom: 20px;
    box-shadow: 0 10px 15px rgba(0, 0, 0, .03);
    border-radius: 5px;
    padding-bottom: 10px;
    background-color: #fff
}

.sidebar .list-articles .post-item .post-image a img {
    object-fit: cover;
    width: 100%;
    border-radius: 5px 5px 0 0
}

.blog-page .articles .card .post-info,
.blog-post .post-info,
.main-list-articles .post-info,
.sidebar .list-articles .post-item .post-info {
    font-size: 12px;
    padding: 10px 10px 5px;
    color: #b9b9b9;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

.blog-post .post-info .comments,
.blog-post .post-info .hits {
    margin-left: 20px
}

.sidebar .list-articles .post-item .post-title {
    padding: 0 10px
}

.sidebar .list-articles .post-item .post-title a {
    text-decoration: none;
    font-weight: 500;
    color: #555;
    display: block
}



.rating-area {
    overflow: hidden;
    display: table
}

.rating-area:not(:checked) > label {
    float: right;
    width: 42px;
    padding: 0;
    cursor: pointer;
    font-size: 32px;
    line-height: 32px;
    color: #d3d3d3
}

.rating-area > label:before {
    font-family: FontAwesome
}

.rating-area > input:checked + label:hover,
.rating-area > input:checked + label:hover ~ label,
.rating-area > input:checked ~ label,
.rating-area > input:checked ~ label:hover,
.rating-area > input:checked ~ label:hover ~ label,
.rating-area > label:hover ~ input:checked ~ label {
    color: #f7ce0a
}

.rating-area:not(:checked) > label:hover,
.rating-area:not(:checked) > label:hover::before,
.rating-area:not(:checked) > label:hover ~ label,
.rating-area:not(:checked) > label:hover ~ label::before {
    color: #f7ce0a;
    content: '★'
}

.rating-area > input:checked + label::before,
.rating-area > input:checked + label::before ~ label::before,
.rating-area > label:hover ~ input ~ label::before {
    content: '★'
}

.swiper-pagination-bullet-active {
    background: #555
}

.module-reviews {
    padding: 20px 0
}

.module-reviews .swiper-pagination {
    bottom: 0
}

.module-reviews .module-title.title-h3 span,
.module-title.title-h3 {
    font-weight: 700;
    font-size: 20px
}



.module .nav-box-top {
    position: absolute;
    height: 22px;
    top: 7px;
    right: 15px;
    display: -ms-flexbox;
    display: flex;
    z-index: 1
}

.module .nav-box-top .reviews-module-button-prev,
.module .nav-box-top .swiper-module-button-prev {
    -moz-transform: scale(-1, 1);
    -webkit-transform: scale(-1, 1);
    -o-transform: scale(-1, 1);
    transform: scale(-1, 1);
    margin-right: 10px
}

.module .nav-box-top .reviews-module-button-next svg,
.module .nav-box-top .reviews-module-button-prev svg,
.module .nav-box-top .swiper-module-button-next svg,
.module .nav-box-top .swiper-module-button-prev svg {
    fill: #888;
    width: 22px;
    height: 22px;
    cursor: pointer
}





.module-reviews .review-about-tour {
    padding-bottom: 10px;
    font-size: 13px;
    font-weight: 500;
    color: #555
}

.module-reviews .review-about-tour a {
    color: var(--secondary)
}



.tour-category .module .nav-box-top {
    right: 15px
}

.module-reviews-full .item {
    background-color: #fff;
    padding: 15px;
    border-radius: 5px
}



.module-reviews .module-title {
    padding-bottom: 0;
    margin-top: 0
}



.reviews {
    border-top: 1px solid #eee
}

.reviews-title small {
    display: inline-table;
    background-color: #00b2f2;
    color: #fff;
    height: 26px;
    border-radius: 13px;
    text-align: center;
    font-size: 16px;
    padding: 0 8px;
    line-height: 26px
}

.reviews .reviews-list .review-avatar {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    margin-bottom: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 36px;
    background-color: #222d4a;
    line-height: 50px
}

.reviews .reviews-list .review-avatar span {
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    text-transform: uppercase;
    display: table;
    width: 100%;
    text-align: center;
    font-family: Rotonda, Arial, sans-serif
}

.review-about {
    font-size: 13px;
    color: #406484
}

.review-about a {
    color: #0094ca
}

.reviews .reviews-list .review-item {
    background-color: #f7f8f9;
    padding: 15px;
    border-radius: 5px;
    margin-bottom: 15px;
    position: relative;
    z-index: 1
}

.reviews .reviews-list .review-item::before {
    content: "";
    position: absolute;
    left: -20px;
    top: 25px;
    width: 0;
    height: 0;
    border-color: transparent #f7f8f9 transparent transparent;
    border-style: solid;
    border-width: 0 34px 34px 0
}

.reviews .reviews-list .r-name {
    font-weight: 700;
    font-family: Rotonda, Arial, sans-serif;
    font-size: 15px;
    color: #406484
}

.reviews .reviews-list .review-item .date {
    color: #406484;
    text-align: right;
    font-size: 13px
}

.reviews .reviews-list .review-item .r-title {
    color: #406484;
    font-size: 15px;
    font-weight: 700;
    opacity: .4;
    margin: 10px 0;
    display: none
}

.footer-form,
.reviews .review-media,
.reviews .reviews-list .review-item .r-text,
.reviews-page .review-media {
    padding-top: 10px
}

.review-form .review-load-photo,
.reviews .item {
    overflow: hidden;
    padding: 5px;
    max-width: 100%;
    display: flex;
    position: relative
}

.reviews .reviews-list .review-item .review-about-tour {
    margin: 10px 0;
    color: #9cadbb;
    font-size: 13px
}

.reviews .reviews-list .review-item .review-about-tour a {
    color: #406484
}

.reviews-num {
    font-size: 13px;
    color: #999;
    margin-left: 10px;
    padding-top: 1px;
    display: inline-table
}

.reviews .item {
    -ms-flex: 0 0 100px;
    flex: 0 0 100px;
    width: 100px;
    height: 100px
}

.review-form .review-load-photo {
    -ms-flex: 0 0 60px;
    flex: 0 0 60px;
    width: 60px;
    height: 60px
}

.review-form .select-css {
    display: block;
    font-size: 16px;
    font-family: sans-serif;
    font-weight: 700;
    color: #444;
    line-height: 1.3;
    padding: .6em 1.4em .5em .8em;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0;
    border: 1px solid #aaa;
    border-radius: 5px;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-color: #fff;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat, repeat;
    background-position: right .7em top 50%, 0 0;
    background-size: .65em auto, 100%
}

.review-form .form-group input,
.review-form .form-group label,
.review-form .rf-title,
.review-form button,
.reviews-title {
    font-family: Rotonda, Arial, sans-serif
}

.review-form .select-css::-ms-expand {
    display: none
}

.review-form .select-css:hover {
    border-color: #888
}

.review-form .select-css:focus {
    color: #222;
    outline: 0
}

.review-form .select-css option {
    font-weight: 400
}

.review-form .review-load-photo .close {
    position: absolute;
    cursor: pointer;
    top: 5px;
    right: 5px;
    display: none;
    height: 15px;
    width: 15px;
    background-image: url("../images/icon-close.png");
    background-repeat: no-repeat;
    background-position: bottom left;
    z-index: 1
}

.review-form .review-load-photo img,
.reviews .item img {
    object-fit: cover;
    border-radius: 5px;
    width: 100%;
    height: 100%
}

#form-review .r-f-success-msg,
.contact-form .r-f-success-msg {
    display: none;
    color: #6a6a6a;
    font-size: 13px;
    margin-top: 20px
}
#recaptchaError,
#form-review .r-f-error,
.contact-form .r-f-error {
    display: none;
    color: #fd2020;
    font-size: 11px;
    margin-top: 5px;
}
#recaptchaError{
    display: block;
}
.reviews .reviews-list {
    background-color: #fff;
    border-radius: 40px;
    position: relative;
    z-index: 2
}

.reviews .no-comments {
    padding-bottom: 15px
}

.reviews-title {
    font-weight: 700;
    font-size: 20px;
    letter-spacing: .3px;
    color: #4e6073;
    margin-bottom: 20px
}

.pagination-bottom nav .page-prev.disabled,
.tour-page .review .review-about-tour {
    display: none
}



.review-form .form-group label {
    color: #555;
    display: block;
    font-weight: 700;
    margin-bottom: 10px
}

.review-form .form-group input,
.review-form .form-group textarea {
    color: #777;
    font-size: 15px;
    display: block;
    background-color: #fff;
    width: 100%
}

.review-form .form-group input {
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 8px 10px;
    font-weight: 700
}

.review-form .form-group textarea {
    border: 1px solid #ccc;
    border-radius: 5px;
    min-height: 100px;
    padding: 5px 10px;
    outline: 0
}

.review-form button {
    display: table;
    border: none;
    background-color: var(--primary);
    margin: 20px auto 0;
    font-size: 15px;
    font-weight: 700;
    height: 30px;
    border-radius: 15px;
    line-height: 30px;
    text-align: center;
    padding: 0 20px;
    cursor: pointer;
    color: #fff
}

.page-reviews .reviews {
    border-top: none
}

.reviews .review-form {
    position: relative;
    z-index: 1;
    color: #555;
    padding: 15px;
    min-width: 320px;
    background-color: #f7f8f9;
    border-radius: 5px
}

.reviews .admin-answer-box {
    padding: 0 0 20px
}

.reviews .admin-answer-box .open-admin-form-answer {
    color: #a5b0b9;
    font-size: 13px;
    display: table;
    margin-left: auto
}

.reviews .admin-answer-box .open-admin-form-answer:hover {
    text-decoration: none;
    color: #8d949a
}

.reviews .admin-answer-box .admin-form-answer textarea {
    display: block;
    width: 100%;
    min-height: 100px;
    outline: 0;
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 10px
}

.reviews .admin-answer-box .admin-form-answer .send-button {
    cursor: pointer;
    display: table;
    margin-top: 20px;
    background-color: #547f99;
    border: none;
    color: #fff;
    font-size: 13px;
    line-height: 20px;
    padding: 5px 15px;
    border-radius: 5px
}

.reviews .to-review-form {
    display: table;
    color: var(--primary);
    font-weight: 700;
    margin: 10px 0 20px
}

.reviews .load-more-reviews {
    display: table;
    margin: 10px auto 20px;
    background-color: var(--primary);
    border: none;
    color: #fff;
    padding: 8px 15px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 13px
}

.reviews .loader {
    margin: 10px auto 20px
}



.open-filter-button {
    margin-top: 0;
    margin-bottom: 15px
}

.pagination-bottom nav {
    padding: 10px 0;
    margin-top: 20px
}

.pagination-bottom nav ul {
    padding: 0;
    list-style: none;
    display: flex;
    align-items: center
}

.pagination-bottom nav ul li {
    margin-bottom: 0;
    margin-left: 2px;
    margin-right: 2px;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%
}

.pagination-bottom nav ul li a {
    text-decoration: none;
    color: #555;
    position: relative;
    transition: .5s
}

.pagination-bottom nav ul li .page-link-c {
    align-self: center;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    height: 37px;
    width: 37px;
    text-decoration: none;
    color: #555;
    font-family: Rotonda, Arial, sans-serif;
    position: relative
}

.pagination-bottom nav ul li.page-item-num a:hover {
    background-color: #f1f1f5
}

.pagination-bottom nav ul li.active span {
    background-color: #adb5ca;
    color: #fff
}

.pagination-bottom nav .page-link-next {
    padding-right: 20px;
    padding-left: 5px
}

.pagination-bottom nav .page-link-f span {
    font-size: 14px;
    font-weight: 400
}

.pagination-bottom nav .arrow {
    display: inline-block;
    background: url("data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M7.361.238a.977.977%200%20011.278%200l7.097%206.377a.755.755%200%20010%201.147.977.977%200%2001-1.278%200L8%201.96%201.542%207.762a.977.977%200%2001-1.277%200%20.755.755%200%20010-1.147L7.36.238z%22%20fill%3D%22%23000%22%2F%3E%3Crect%20width%3D%222%22%20height%3D%2216%22%20rx%3D%221%22%20transform%3D%22matrix(-1%200%200%201%209%200)%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
    cursor: pointer;
    width: 11px;
    height: 11px;
    transition: .5s;
    position: relative;
    top: 1px
}

.pagination-bottom nav .arrow.prev {
    transform: rotate(-90deg);
    margin-right: 10px
}

.pagination-bottom nav .arrow.next {
    transform: rotate(90deg);
    margin-left: 10px
}

.pagination-bottom nav .page-link-prev,
.pagination-bottom nav .page-prev {
    padding-right: 5px
}





.loader {
    display: table;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    position: relative;
    animation: 1s linear infinite rotate
}

.loader::after,
.loader::before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 5px solid #387bbd;
    animation: 2s linear infinite prixClipFix
}

.loader::after {
    transform: rotate3d(90, 90, 0, 180deg);
    border-color: #ff3d00
}

@keyframes rotate {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(360deg)
    }
}

@keyframes prixClipFix {
    0% {
        clip-path: polygon(50% 50%, 0 0, 0 0, 0 0, 0 0, 0 0)
    }

    50% {
        clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 0, 100% 0, 100% 0)
    }

    100%,
    75% {
        clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 100% 100%, 100% 100%)
    }
}

.catalog-optom-bl ul {
    list-style: none;
    margin: 0 -5px;
    padding: 0
}

.catalog-optom-bl ul li {
    display: inline-block;
    margin-bottom: 10px;
    margin-left: 5px;
    margin-right: 5px;
    padding: 7px 10px;
    line-height: 1;
    background-color: #e9ecf5;
    color: #464646;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 700
}
