@import url('https://fonts.googleapis.com/css?family=Poppins:400,500,600,700,900');

* {
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    line-height: 23px;
    font-weight: 400;
    background: #FFFFFF;
    color: #1e1e27;
}

div {
    display: block;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

ul {
    list-style: none;
    margin-bottom: 0px;
}

p {
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    line-height: 1.7;
    font-weight: 500;
    color: #989898;
    -webkit-font-smoothing: antialiased;
    -webkit-text-shadow: rgba(0, 0, 0, .01) 0 0 1px;
    text-shadow: rgba(0, 0, 0, .01) 0 0 1px;
}

p a {
    display: inline;
    position: relative;
    color: inherit;
    border-bottom: solid 2px #fde0db;
    transition: all 200ms ease;
}

a,
a:hover,
a:visited,
a:active,
a:link {
    text-decoration: none;
    -webkit-font-smoothing: antialiased;
    -webkit-text-shadow: rgba(0, 0, 0, .01) 0 0 1px;
    text-shadow: rgba(0, 0, 0, .01) 0 0 1px;
}

p a:active {
    position: relative;
    color: #FF6347;
}

p a:hover {
    color: #FF6347;
    background: #fde0db;
}

p a:hover::after {
    opacity: 0.2;
}

::selection {
    background: #fde0db;
    color: #FF6347;
}

p::selection {
    background: #fde0db;
}

h1 {
    font-size: 72px;
}

h2 {
    font-size: 40px;
}

h3 {
    font-size: 28px;
}

h4 {
    font-size: 24px;
}

h5 {
    font-size: 16px;
}

h6 {
    font-size: 14px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Poppins', sans-serif;
    color: #282828;
    -webkit-font-smoothing: antialiased;
    -webkit-text-shadow: rgba(0, 0, 0, .01) 0 0 1px;
    text-shadow: rgba(0, 0, 0, .01) 0 0 1px;
}

h1::selection,
h2::selection,
h3::selection,
h4::selection,
h5::selection,
h6::selection {}

::-webkit-input-placeholder {
    font-size: 16px;
    font-weight: 500;
    color: #777777;
}

:-moz-placeholder

/* older Firefox*/
    {
    font-size: 16px;
    font-weight: 500;
    color: #777777;
}

::-moz-placeholder

/* Firefox 19+ */
    {
    font-size: 16px;
    font-weight: 500;
    color: #777777;
}

:-ms-input-placeholder {
    font-size: 16px;
    font-weight: 500;
    color: #777777;
}

::input-placeholder {
    font-size: 16px;
    font-weight: 500;
    color: #777777;
}

.form-control {
    color: #db5246;
}

section {
    display: block;
    position: relative;
    box-sizing: border-box;
}

.clear {
    clear: both;
}

.clearfix::before,
.clearfix::after {
    content: "";
    display: table;
}

.clearfix::after {
    clear: both;
}

.clearfix {
    zoom: 1;
}

.float_left {
    float: left;
}

.float_right {
    float: right;
}

.trans_200 {
    transition: all 200ms ease;
}

.trans_300 {
    transition: all 300ms ease;
}

.trans_400 {
    transition: all 400ms ease;
}

.trans_500 {
    transition: all 500ms ease;
}

.fill_height {
    height: 100%;
}

/*********************************
3. Home
*********************************/

.header {
    width: 100%;
    border-bottom: 1px solid #eee;
    background-color: #f2f2f2;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    column-gap: 10px;
    position: relative;
    padding: 0 15px;
}

/*------------------------- header-registration ------------------- */

.header-registration {
    width: 100%;
    background-color: #1e1e27;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding: 5px 0;
}

.header-registration a {
    text-decoration: none;
    font-size: 12px;
    color: #b5aec4;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    column-gap: 5px;
    margin: 5px 5px 5px 5px;
}

.header-registration a:hover {
    color: #fe4c50;
}

.header-registration form {
    display: flex;
    align-items: center;
}

.header-registration form input {
    width: 100px;
    font-size: 12px;
    line-height: 1.4;
    color: #b5aec4;
    border: 1px solid #b5aec4;
    background-color: transparent;
    padding: 5px 10px;
    margin: 5px 5px 5px 0;
}

.header-registration form input::placeholder {
    font-size: 12px;
    line-height: 1.4;
    color: #b5aec4;
}

.header-registration form button {
    font-size: 12px;
    color: #fff;
    line-height: 1.4;
    border: 1px solid #fe4c50;
    background-color: #fe4c50;
    padding: 5px 15px;
    margin: 5px 5px 5px 0;
}

/*------------------------- header-registration end --------------- */

/*-----------------language-block-----------------*/

.language-block {
    width: 75px;
    min-width: 75px;
    position: relative;
    padding: 10px 10px;
    border: 1px solid #e5e5e5;
    background-color: #f7f7f7;
    -webkit-user-select: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    cursor: pointer;
}

@media screen and (max-width: 992px) {
    .language-block {
        order: 1;
    }
}

.language-block.show-mobile {
    display: none;
}

@media screen and (max-width: 992px) {
    .language-block.show-mobile {
        display: block;
    }
}

@media screen and (max-width: 992px) {
    .language-block.hide-mobile {
        display: none;
    }
}

.language-block-head {
    text-transform: uppercase;
    font-size: 14px;
    display: flex;
    align-items: center;
    position: relative;
}

.language-block-head span {
    margin-right: 5px;
}

.language-block-head::after {
    content: "";
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 4px solid #333;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}

.language-block-list {
    list-style: none;
    width: 120px;
    background-color: #fff;
    border: 1px solid #eee;
    box-shadow: 0px 3px 14px -6px rgba(0, 0, 0, 0.4);
    padding: 10px 0;
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 1010;
    display: none;
}

@media screen and (max-width: 992px) {
    .language-block-list {
        right: auto;
        left: 0;
    }
}

.language-block-list.active {
    display: block;
}

.language-block-list li {
    padding: 5px 15px;
}

.language-block-list li:hover {
    background-color: #eee;
}

.language-block-list li a {
    display: block;
    color: #333;
    text-align: left;
}

/*-----------------language-block-end-------------*/

/*********************************
3.4 Main Navigation
*********************************/

.navbar {
    width: auto;
    float: right;
    padding: 0px;
    position: static;
}

.navbar_menu li {
    display: inline-block;
}

.navbar_menu>li>span,
.navbar_menu li a {
    display: block;
    color: #1e1e27;
    font-size: 13px;
    font-weight: 500;
    text-transform: uppercase;
    padding: 20px;
    transition: color 0.3s ease;
}

.navbar_menu>li>span:hover,
.navbar_menu li a:hover {
    color: #b5aec4;
}

.submenu {
    width: 100%;
    background-color: #fff;
    box-shadow: 0px 3px 14px -6px rgba(0, 0, 0, 0.75);
    display: flex;
    flex-wrap: wrap;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 20;
    padding: 20px 15px;
    display: none;
}

.submenu li {
    width: 25%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 15px;
}

@media screen and (max-width: 1200px) {
    .submenu li {
        width: 33.3%;
    }
}

.submenu li a {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    padding: 0;
}

.submenu li a:hover {
    color: #fe4c50;
}

.navbar_menu li:hover .submenu {
    display: flex;
}

/*********************************
3.5 Hamburger Menu
*********************************/

.hamburger_container {
    display: none;
    margin-left: 40px;
}

.hamburger_container i {
    font-size: 24px;
    color: #1e1e27;
    transition: all 300ms ease;
}

.hamburger_container:hover i {
    color: #b5aec4;
}

.hamburger_menu {
    position: fixed;
    top: 0;
    right: -400px;
    width: 400px;
    height: 100vh;
    background: #fff;
    z-index: 10;
    transition: all 300ms ease;
}

.hamburger_menu.active {
    right: 0;
}

.fs_menu_overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 9;
    background-color: rgb(0 0 0 / .3);
    pointer-events: none;
    transition: all 200ms ease;
    display: none;
}

.fs_menu_overlay.active {
    display: block;
}

.hamburger_close {
    position: absolute;
    top: 26px;
    right: 10px;
    padding: 10px;
    z-index: 1;
}

.hamburger_close i {
    font-size: 24px;
    color: #1e1e27;
    transition: all 300ms ease;
}

.hamburger_close:hover i {
    color: #b5aec4;
}

.hamburger_menu_content {
    padding-top: 100px;
    width: 100%;
    height: 100%;
    background-color: #fff;
    box-shadow: 0px 3px 14px -6px rgba(0, 0, 0, 0.75);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding-right: 20px;
    padding-left: 20px;
    overflow-y: scroll;
}

.menu_top_nav {
    width: 100%;
    order: 2;
}

.menu_item {
    display: block;
    position: relative;
    border-bottom: solid 1px #b5aec4;
    vertical-align: middle;
}

.menu_item>span,
.menu_item>a {
    display: block;
    color: #1e1e27;
    font-weight: 500;
    height: 50px;
    line-height: 50px;
    font-size: 14px;
    text-transform: uppercase;
}

.menu_item>span:hover,
.menu_item>a:hover {
    color: #b5aec4;
}

.menu_item>a>i {
    margin-left: 8px;
}

.menu_item.active .menu_selection {
    display: block;
    visibility: visible;
    opacity: 1;
}

.menu_selection {
    margin: 0;
    width: 100%;
    overflow: hidden;
    z-index: 1;
    transition: all 0.3s ease;
    display: block !important;
}

.menu_selection li {
    padding-left: 10px;
    padding-right: 10px;
    line-height: 50px;
}

.menu_selection li a {
    display: block;
    color: #232530;
    border-bottom: solid 1px #dddddd;
    font-size: 13px;
    text-transform: uppercase;
    transition: all 0.3s ease;
    display: flex;
    justify-content: space-between;
}

.menu_selection li a i {
    margin-right: 5px;
}

.menu_selection li a:hover {
    color: #b5aec4;
}

.menu_selection li:last-child a {
    border-bottom: none;
}

/*********************************
3.6 Logo
*********************************/

.header__logo {
    padding: 5px 35px 5px 0;
}

.header__logo a {
    font-size: 24px;
    color: #1e1e27;
    font-weight: 700;
    text-transform: uppercase;
}

.header__logo a img {
    width: 140px;
    max-width: 100%;
    height: auto;
}

.red_button {
    width: auto;
    height: 40px;
    background: #fe4c50;
    transition: all 0.3s ease;
}

.red_button:hover {
    background: #FE7C7F !important;
}

.red_button a {
    display: block;
    color: #FFFFFF;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 500;
    text-align: center;
    line-height: 40px;
    width: 100%;
}

/*********************************
4. Products
*********************************/

.section_title {
    display: inline-block;
    text-align: center;
}

.section_title h2 {
    display: inline-block;
}

.section_title::after {
    display: block;
    position: absolute;
    top: calc(100% + 13px);
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 5px;
    background: #fe4c50;
    content: '';
}

/*********************************
4.1 Product Sorting
*********************************/

.product_sorting_container_bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 24px;
}

.product_sorting_container_bottom .product_sorting {
    float: right;
}

.product_sorting {
    display: inline-block;
}

.product_sorting>li {
    display: inline-block;
    position: relative;
    width: 185px;
    height: 40px;
    line-height: 40px;
    cursor: pointer;
    border: solid 1px #ecedee;
    padding-left: 20px;
    padding-right: 7px;
    margin-right: 16px;
}

.product_sorting_container_bottom .product_sorting>li {
    width: 144px;
    margin-right: 0px;
    padding-right: 12px;
}

.product_sorting_container_bottom .product_sorting li span:nth-child(2) {
    margin-left: 24px;
}

.product_sorting li i {
    float: right;
    line-height: 40px;
    color: #51545f;
}

.product_sorting li ul {
    display: block;
    position: absolute;
    right: 0;
    top: 120%;
    margin: 0;
    width: 100%;
    background: #FFFFFF;
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    box-shadow: 0 15px 25px rgba(63, 78, 100, 0.15);
    -webkit-transition: opacity 0.3s ease;
    -moz-transition: opacity 0.3s ease;
    -ms-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: all 0.3s ease;
}

.product_sorting>li:hover ul {
    visibility: visible;
    opacity: 1;
    top: calc(100% + 1px);
}

.product_sorting li ul li {
    display: block;
    text-align: center;
    padding-left: 10px;
    padding-right: 10px;
}

.product_sorting li ul li span {
    display: block;
    height: 40px;
    line-height: 40px;
    border-bottom: solid 1px #dddddd;
    color: #51545f;
    -webkit-transition: opacity 0.3s ease;
    -moz-transition: opacity 0.3s ease;
    -ms-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: all 0.3s ease;
}

.product_sorting li ul li span:hover {
    color: #b5aec4;
}

.product_sorting li ul li:last-child span {
    border-bottom: none;
}

.product_sorting li span:nth-child(2) {
    margin-left: 71px;
}

.pages {
    display: inline-block;
    float: right;
}

.product_sorting_container_bottom .pages {
    float: left;
}

.page_current {
    display: inline-block;
    position: relative;
    width: 40px;
    height: 40px;
    line-height: 40px;
    cursor: pointer;
    text-align: center;
    border: solid 1px #ecedee;
    margin-right: 16px;
}

.product_sorting_container_bottom .pages .page_current {
    background: #fe4c50;
    border: none;
}

.page_current span {
    color: #51545f;
}

.product_sorting_container_bottom .pages .page_current span {
    color: #FFFFFF;
}

.page_next {
    display: inline-block;
    line-height: 40px;
    cursor: pointer;
}

.page_next:hover i {
    color: #b5aec4;
}

.page_next i {
    font-size: 18px;
    color: #51545f;
}

.showing_results {
    font-size: 16px;
    height: 40px;
    line-height: 40px;
    float: right;
    margin-right: 34px;
}

/*--------------------- social-element ----------------- */

.social-element {
    border-bottom: 1px solid #ebebeb;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5px 15px;
}

.social-element-item {
    display: inline-block;
    width: 40px;
    height: 30px;
    border: 1px solid #ebebeb;
    padding: 3px;
    margin: 0 3px;
}

.social-element-item img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    vertical-align: unset;
}

/*-------------------- social-element end -------------- */

.product_section {
    padding: 20px 0 0 0;
}

/*------------------------- banner ---------------------*/

.banner-top__inner {
    border-radius: 8px;
    background-color: #020001;
    overflow: hidden;
    position: relative;
    padding: 4px;
    margin: 0 0 15px 0;
}

@media screen and (max-width: 640px) {
    .banner-top__inner {
       padding: 2px;
    }
}

.banner-top__inner::before {
    content: '';
    width: 150%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    background: linear-gradient(to bottom,
            transparent 0%,
            transparent calc(50% - 60px),
            rgba(255, 255, 255, 0.2) calc(50% - 40px),
            rgba(255, 255, 255, 1) calc(50% - 5px),
            rgba(255, 255, 255, 1) calc(50% + 5px),
            rgba(255, 255, 255, 0.2) calc(50% + 40px),
            transparent calc(50% + 60px),
            transparent 100%);
    background-size: 50% 100%;
    background-repeat: no-repeat;
    background-position: right;
    animation: glint-spin 5s infinite;
    z-index: 0;
}

.banner-top__content {
    border-radius: 7px;
    position: relative;
    z-index: 1;
}

.banner-top__content a {
    display: block;
    border-radius: 7px;
    overflow: hidden;
}

.banner-top__content img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

@keyframes glint-spin {
    0% {
        transform: rotate(0deg);
    }

    45% {
        transform: rotate(195deg);
    }

    55% {
        transform: rotate(205deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/*------------------------- banner /--------------------*/

/*--------------------- breadcrumbs ------------------*/

.breadcrumbs {
    width: 100%;
    color: #51545f;
    border-bottom: solid 1px #ebebeb;
    overflow: hidden;
    padding: 10px 0;
    margin-bottom: 20px;
}

.breadcrumbs ul li {
    display: inline-block;
    position: relative;
    padding: 0;
    margin-right: 20px;
}

.breadcrumbs ul li:first-child {
    padding-left: 0;
}

.breadcrumbs ul li:not(:first-child) {
    color: #fe4c50;
}

.breadcrumbs ul li:not(:last-child)::after {
    content: "/";
    position: absolute;
    top: 0;
    right: -15px;
}

.breadcrumbs ul li a {
    color: #51545f;
}

.breadcrumbs ul li a:hover {
    color: #fe4c50;
}

/*--------------------- breadcrumbs /-----------------*/

/*----------------Styles for filter collapse----------------*/

.filter-wrapper {
    height: auto;
    overflow: hidden;
    margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
    .filter-wrapper {
        height: 45px;

    }

    .filter-wrapper.open {
        height: auto;
    }
}

.filters-header {
    display: flex;
    align-items: center;
    border: 1px solid #eee;
    padding: 10px;
    display: none;
    position: relative;
    margin-bottom: 20px;
}

.filters-header::after {
    content: "";
    border: 7px solid transparent;
    border-top: 7px solid #ca093c;
    position: absolute;
    top: 40%;
    right: 15px;
}

.filters-header.up::after {
    border-top: 7px solid #000;
    top: 25%;
    transform: rotate(180deg);
}

@media screen and (max-width: 768px) {
    .filters-header {
        display: flex;
    }
}

.filters-header__burger {
    width: 25px;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-right: 15px;
}

.filters-header__burger span {
    display: block;
    height: 2px;
    background-color: #000;
    margin-bottom: 5px;
}

.filters-header__burger span:nth-child(1) {
    width: 100%;
}

.filters-header__burger span:nth-child(2) {
    width: 70%;
}

.filters-header__burger span:nth-child(3) {
    width: 30%;
}

.sidebar_section {
    border-bottom: solid 1px #ebebeb;
}

.sidebar_title h5 {
    font-size: 18px;
    margin-bottom: 21px;
}

.sidebar_categories li.active a {
    color: #fe4c50;
}

.sidebar_categories li.active:hover a {
    color: #fe4c50;
}

.sidebar_categories li a {
    font-size: 14px;
    line-height: 40px;
    color: #51545f;
}

.sidebar_categories li a:hover {
    color: #b5aec4;
}

.sidebar_categories li a span {
    margin-right: 5px;
}

/*---------------------------- Country ----------------------------- */

.country-list .city-list {
    display: flex;
}

.country-list .city-list li {
    list-style: none;
}

.country-list button {
    font-size: 14px;
    color: #fe4c50;
    background-color: transparent;
    border: none;
    outline: none;
    padding: 4px 5px;
    margin-right: 10px;
}

.country-list .btn-open {
    display: none;
}

.country-list .btn-closed {
    display: flex;
}

.country-list.closed .city-list {
    display: none;
}

.country-list.closed .btn-open {
    display: flex;
}

.country-list.closed .btn-closed {
    display: none;
}

.country-list .country {
    display: flex;
    width: 100%;
    font-weight: 400;
    font-size: 16px;
    color: #51545f;
    line-height: 1.2;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0;
    cursor: pointer;
    user-select: none;
}

.country-list .country:hover {
    color: #fe4c50;
}

.country__left-container {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.country__left-container a {
    display: inline-block;
    font-weight: 400;
    font-size: 16px;
    color: #51545f;
    line-height: 1.2;
    padding: 3px 0 3px 28px;
}

.country__left-container a:hover {
    color: #fe4c50;
}

.city-list {
    padding: 7px 30px;
    padding-right: 10px;
    display: flex;
    flex-direction: column;
}

.city-list .city__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.2;
    color: #fe4c50;
    padding: 5px 0;
}

/*---------------------------- Countries end --------------------------- */

#amount {
    margin-top: 8px;
    color: #1e1e27 !important;
    font-size: 16px !important;
    font-weight: 500 !important;
}

.filter_button {
    width: 100%;
    height: 30px;
    background: #1e1e27;
    text-align: center;
    margin-top: 25px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.filter_button:hover {
    background: #34343f;
}

.filter_button span {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 30px;
    color: #FFFFFF;
}

.checkboxes li {
    height: 40px;
    line-height: 40px;
}

.checkboxes li.active i {
    color: #fe4c50;
    margin-right: 21px;
}

.checkboxes li.active i::after {
    display: block;
    position: absolute;
    top: 1px;
    left: 1px;
    font-family: 'FontAwesome';
    font-size: 10px;
    content: '\f00c';
    color: #FFFFFF;
}

.checkboxes {
    height: 200px;
    overflow: hidden;
}

.checkboxes.active {
    height: auto;
}

.checkboxes li i {
    position: relative;
    color: #b3b7c8;
    cursor: pointer;
    margin-right: 22px;
}

.checkboxes li span {
    font-family: 'Poppins', sans-serif;
    color: #51545f;
}

.show_more {
    display: inline-block;
    cursor: pointer;
}

.show_more span {
    height: 40px;
    line-height: 40px;
    color: #fe4c50;
}

.show_more span:first-child {
    margin-right: 11px;
}

/*********************************
7. Main Content
*********************************/

.main_content {
    float: left;
    width: calc(100% - 200px);
    padding-left: 34px;
}

.main-grid .row {
    margin-right: 0;
    margin-left: 0;
}

.main-grid [class^="col"] {
    padding-right: 0;
    padding-left: 0;
}

.product-item {
    cursor: pointer;
}

.product-item::after {
    display: block;
    position: absolute;
    top: 0;
    left: -1px;
    width: calc(100% + 1px);
    height: 100%;
    pointer-events: none;
    content: '';
    border: solid 2px rgba(235, 235, 235, 0);
    border-radius: 3px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.product-item:hover::after {
    box-shadow: 0 25px 29px rgba(63, 78, 100, 0.15);
    border: solid 2px rgba(235, 235, 235, 1);
}

.product-item {
    border: solid 1px #e9e9e9;
}

.product_image {
    width: 100%;
}

.product_image img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.product_info {
    text-align: center;
    padding-left: 10px;
    padding-right: 10px;
}

.product_name {
    margin-top: 10px;
    margin-bottom: 0;
}

.product_name a {
    color: #1e1e27;
    line-height: 20px;
}

.product_name:hover a {
    color: #b5aec4;
}

.product-item .product_price {
    min-height: 25px;
    font-size: 12px;
}

.product_price {
    font-size: 16px;
    color: #fe4c50;
    font-weight: 600;
}

.product_price span {
    font-size: 12px;
    margin-left: 10px;
    color: #b5aec4;
    text-decoration: line-through;
}

.product_bubble {
    text-transform: uppercase;
    background: #fe4c50;
    position: absolute;
    top: 5px;
    right: 5px;
    width: 35px;
    height: 22px;
    border-radius: 3px;
}

.product_bubble span {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #FFFFFF;
    text-align: center;
}

.product_bubble_right::after {
    content: ' ';
    position: absolute;
    width: 0;
    height: 0;
    left: 6px;
    right: auto;
    top: auto;
    bottom: -6px;
    border: 6px solid;
}

.product_bubble_left::after {
    content: ' ';
    position: absolute;
    width: 0;
    height: 0;
    left: auto;
    right: 6px;
    bottom: -6px;
    border: 6px solid;
}

.product_bubble_red::after {
    border-color: transparent transparent transparent #fe4c50;
}

.product_bubble_left::after {
    border-color: #51a042 #51a042 transparent transparent;
}

.product_bubble_red {
    background: #fe4c50;
}

.product_bubble_green {
    background: #51a042;
}

.product_bubble_left {
    left: 15px;
}

.product_bubble_right {
    right: 5px;
}

.single_product_container {
    border-bottom: solid 1px #ebebeb;
  	padding: 20px 0 40px 0;
}

.image_col {
    padding-right: 30px;
}

/*********************************
6. Product Details
*********************************/

.product_details {
    width: 100%;
}

/*----------------------------- single-slider ---------------------------*/

.swiper {
    width: 100%;
    height: 100%;
}

.swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #444;
    display: flex;
    justify-content: center;
    align-items: center;
}

.swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.swiper {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.swiper-slide {
    background-size: cover;
    background-position: center;
}

.swiper-top {
    height: 80%;
    width: 100%;
}

.swiper-thumbs {
    height: 20%;
    box-sizing: border-box;
    padding: 5px 0;
}

.swiper-thumbs .swiper-slide {
    width: 25%;
    height: auto;
}

.swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/*----------------------------- single-slider /--------------------------*/

.product_details_title {
    font-weight: 500px;
    line-height: 30px;
}

.product_details_title h2 {
    font-size: 28px;
}

.product_details_title h2 span {
    font-size: 20px;
}

.product-rating {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.star_rating {
    display: block;
}

.star_rating li {
    display: inline-block;
    margin-right: -2px;
    cursor: pointer;
}

.star_rating li i {
    color: #fac451;
}

.product-rating-item {
    display: inline-block;
    margin: 5px 15px 5px 0;
}

.short-price {
    margin-bottom: 20px;
}

.short-price .rates-content {
    padding: 0;
}

/*-------------------- location-component ----------------- */

.location-component {
    margin-bottom: 20px;
}

.location-head {
    font-weight: 700;
    background-color: #f2f2f2;
    padding: 10px 15px;
}

.location-component ul {
    list-style: none;
    padding: 0 0;
}

.location-component ul li {
    border-bottom: 1px solid #ddd;
    padding: 10px 15px;
}

.location-component ul li a {
    text-decoration: none;
    color: #0e8af0;
}

/*------------------- location-component end -------------- */

.description-wrap {
    margin-bottom: 20px;
}

.description-wrap h1 {
    font-size: 20px;
    line-height: 1.4;
    margin-bottom: 15px;
}

.description-wrap p {
    margin-top: 12px;
}

/*------------------------- Additionally ------------------------- */

.additionally {
    border-top: 1px solid #777;
    border-bottom: 1px solid #777;
    margin-bottom: 30px;
}

.additionally-item {
    display: flex;
    padding: 10px 0;
}

.additionally-item:not(:last-child) {
    border-bottom: 1px solid #ececec;
}

.additionally-name {
    width: 50%;
    font-weight: 700;
}

.additionally-options {
    width: 50%;
    color: #777;
}

/*------------------------- Additionally end --------------------- */

/*********************************
7. Tabs
*********************************/

.tabs_section_container {
    width: 100%;
    padding-bottom: 30px;
    border-bottom: solid 1px #ebebeb;
}

.tabs_container {
    margin-top: 50px;
    margin-bottom: 30px;
}

.tabs {}

.tab {
    margin-right: 50px;
    cursor: pointer;
}

.tab:last-child {
    margin-right: 0px;
}

.tab span {
    height: 40px;
    line-height: 40px;
    font-size: 16px;
    font-weight: 500;
    color: #1e1e27;
}

.tab:hover span {
    color: #b5aec4;
}

.tab.active span {
    color: #fe4c50;
    border-bottom: solid 1px #fe4c50;
}

.tab_container {
    width: 100%;
    display: none;
}

.tab_container.active {
    display: block;
}

/*********************************
7.1 Description
*********************************/

.tab_title {
    margin-bottom: 98px;
}

.tab_title h4 {
    display: inline-block;
    color: #fe4c50;
    border-bottom: solid 1px #fe4c50;
}

.tab_text_block {
    margin-bottom: 133px;
}

.tab_text_block p {
    font-weight: 400;
    margin-top: 10px;
}

.desc_last {
    margin-bottom: 0px;
}

/*-------------------------- Description ------------------------- */

.description-list {
    padding: 15px;
}

.description-list .data__row {
    display: flex;
}

.description-list .data__row .title {
    display: inline-block;
    width: 50%;
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 123.7%;
    color: #fe4c50;
    margin-bottom: 10px;
}

.description-list .data__row .value {
    display: inline-block;
    width: 50%;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 123.7%;
    color: #000000;
    margin-bottom: 10px;
}

.description-list .data__row .value a:not(.social-button) {
    text-transform: capitalize;
    font-size: 14px;
    color: #000000;
}

.description-list .data__row .value a:not(.social-button):hover {
    text-decoration: underline;
}

.contact-social {
    display: flex;
    flex-wrap: wrap;
    padding: 5px 0;
}

.social-button {
    text-decoration: none;
    min-width: 120px;
    min-height: 40px;
    font-size: 13px;
    color: #282828;
    border: 1px solid #ebebeb;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5px 10px;
    margin: 0 5px 10px 0;
    transition: all .3s ease;
}

.social-button:hover {
    color: #282828;
    box-shadow: 0px 3px 14px -6px rgba(0, 0, 0, 0.75);
}

.social-button img {
    margin-right: 5px;
}

/*-------------------------- Description ------------------------- */

/*-------------------------------- Rates ----------------------------- */

.rates-content {
    padding: 15px 0;
}

.rates-head {
    background-color: #f2f2f2;
    display: flex;
}

.rates-body__row {
    display: flex;
    border-bottom: 1px solid #ddd;
}

.rates-head__item {
    font-weight: 700;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 10px 15px;
}

.rates-head__item.half {
    width: 50%;
}

.rates-head__item.quater {
    width: 25%;
}

@media screen and (max-width: 768px) {
    .rates-head__item.half {
        width: 33.3%;
    }

    .rates-head__item.quater {
        width: 33.3%;
        justify-content: center;
    }
}

.rates-body__item {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 10px 15px;
}

.rates-body__item.half {
    width: 50%;
    font-weight: 700;
}

.rates-body__item.payment {
    flex-grow: 1;
    padding: 5px 15px;
}

.rates-body__item.quater {
    width: 25%;
    flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
    .rates-body__item.half {
        width: 33.3%;
    }

    .rates-body__item.payment {
        justify-content: center;
    }

    .rates-body__item.quater {
        width: 33.3%;
        justify-content: center;
    }
}

.rates-body__main-price {
    width: 100%;
    font-size: 14px;
    line-height: 1;
    white-space: nowrap;
    margin: 0;
}

@media screen and (max-width: 768px) {
    .rates-body__main-price {
        text-align: center;
    }
}

.rates-body__icon {
    font-weight: 400;
    font-size: 14px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 5px 25px 5px 0;
}

@media screen and (max-width: 480px) {
    .rates-body__icon {
        width: 100%;
        justify-content: center;
        margin: 5px 0 5px 0;
    }
}

.rates-body__icon:last-child {
    margin: 5px 0 5px 0;
}

.rates-body__icon svg {
    margin-right: 5px;
}

@media screen and (max-width: 640px) {
    .mob-hidden {
        display: none;
    }
}

/*-------------------------------- Rates end ------------------------- */

/*------------------------------ Coments block ----------------------- */

.comments-block-wrap {
    padding: 34px 15px 30px;
    margin-bottom: 30px;
}

.comments-title {
    font-size: 24px;
    font-weight: bold;
    color: #282828;
    line-height: 1.2;
    margin-top: 0;
    padding-bottom: 7px;
    margin-bottom: 30px;
}

.comment-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.comment-list__item {
    border-bottom: 1px solid #ececec;
    padding-bottom: 15px;
    margin-bottom: 20px;
}

.comment-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 15px;
}

.comment-info__author {
    display: flex;
    align-items: center;
}

@media screen and (max-width: 1200px) {
    .comment-info__author {
        margin-bottom: 15px;
    }
}

.comment-rate {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
}

@media screen and (max-width: 1200px) {
    .comment-rate {
        border-top: 1px solid #ececec;
        border-bottom: 1px solid #ececec;
    }
}

@media screen and (max-width: 768px) {
    .comment-rate {
        flex-wrap: wrap;
    }
}

.comment-rate__item {
    padding: 0 10px;
}

@media screen and (max-width: 640px) {
    .comment-rate__item {
        width: 100%;
    }
}

@media screen and (min-width: 640px) {
    .comment-rate__item:not(:first-child) {
        border-left: 1px solid #ececec;
    }
}

.comment-rate__item-row {
    color: #777;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.comment-rate__text {
    min-width: 140px;
    text-align: right;
    padding: 0 5px;
}

@media screen and (max-width: 1200px) {
    .comment-rate__text {
        text-align: left;
    }
}

.comment-rate__star-wrap {
    min-width: 90px;
    padding: 0 5px;
}

.comment-rate__star {
    display: inline-block;
    width: 10px;
    height: 10px;
    line-height: 1;
    border-radius: 2px;
    background-color: #4aa933;
    margin-right: 2px;
    margin-left: auto;
}

.comment-rate__star.empty {
    background-color: #bcbcbc;
}

.comment-author-image {
    min-width: 80px;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    margin-right: 15px;
}

.comment-author-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.comment-author-name {
    font-size: 13px;
    font-weight: bold;
    text-transform: uppercase;
    margin-top: 0;
    margin-bottom: 10px;
}

.comment-date {
    font-weight: 500;
    color: #fe4c50;
    font-size: 14px;
}

.comment-stat {
    display: block;
    color: #777;
}

.comment-form-wrap {
    padding-top: 20px;
}

.comment-form-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.comment-form-input {
    width: 49%;
    font-size: 12px;
    color: #777777;
    border: 1px solid #ececec;
    border-radius: 0;
    padding: 15px 20px;
    margin-bottom: 15px;
}

@media screen and (max-width: 520px) {
    .comment-form-input {
        width: 100%;
    }
}

.comment-form-bottom {
    display: flex;
    align-items: center;
}

.comment-form-btn {
    background-color: #fe4c50;
    color: #fff;
    border: 1px solid #fe4c50;
    letter-spacing: 0.48px;
    font-size: 12px;
    font-weight: bold;
    border-radius: 0;
    margin: 0;
    text-transform: uppercase;
    padding: 13px 48px 13px;
}

/*----------------------------- Coments block end -------------------- */

/*---------------------------- Pagination ----------------------------- */

.pagination-list {
    width: 100%;
    list-style: none;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 50px 0 30px 0;
}

.pagination-list li a {
    text-decoration: none;
    display: inline-block;
    min-width: 40px;
    height: 40px;
    font-weight: 700;
    line-height: 2.6;
    text-align: center;
    border: 1px solid #fe4c50;
    background-color: transparent;
    color: #fe4c50;
    transition: all .3s ease;
    padding: 0 10px;
    margin: 0 3px;
}

.pagination-list li.active a {
    text-decoration: none;
    border: 1px solid #fe4c50;
    background-color: #fe4c50;
    color: #fff;
}

.pagination-list li a:hover {
    text-decoration: none;
    border: 1px solid #fe4c50;
    background-color: #fe4c50;
    color: #fff;
}

/*-------------------------------- About ------------------------- */

.about-section {
    padding: 50px 0;
}

.about-section h1 {
    font-size: 28px;
    margin-bottom: 20px;
}

.about-section p {
    font-size: 14px;
    margin-bottom: 30px;
}

.about-section a {
    font-size: 14px;
}

/*------------------------------- About end ------------------------ */

/*********************************
10. Footer
*********************************/

.footer {
    background: #f2f2f2;
    padding: 40px 15px 10px 15px;
}

.footer-wrap-list {
    list-style: none;
    columns: 150px 6;
    column-gap: 15px;
}

.footer-wrap-list li {
    margin-bottom: 20px;
}

.footer-wrap-list h4 {
    font-size: 18px;
    margin-bottom: 10px;
}

.footer-wrap-list li a {
    display: block;
    color: #282828;
}

.footer-wrap-list li a:hover {
    color: #fe4c50;
}

.cr {
    text-align: center;
    padding: 20px 0 10px 0;
}

.cr p {
    margin: 0;
}

.cr {
    font-size: 14px;
    color: #51545f;
    line-height: 30px;
    overflow: hidden;
    transition: all 300ms ease;
}

.cr a,
.cr i {
    color: #fe4c50;
}