/*
Theme Name: Aromat
Author: Sergey T
Description: Theme for site aromat home.
Requires PHP: 7.4
Version: 1.0
*/

.catalog-image {
    display: inline-block;
    width: 100%;
    height: 300px;
    position: relative;
    overflow: hidden;
}

.catalog-image img {
    object-fit: scale-down;
    height: 100% !important;
}

a.added_to_cart.wc-forward {
    display: none !important;
}

.swiper-pager.home_slider_brands__navigation {
    display: none;
}

.mobile_slider_navigation {
    display: none;
}

.blog-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 20px;
}

.blog-list article {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    box-shadow: 0 0 32px rgba(0, 0, 0, .1);
    border-radius: 30px;
    background-color: #fff;
    overflow: hidden;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    width: 100%;
}

.blog-list article .post-thumbnail {
    display: inline-block;
    width: 100%;
    height: 350px;
    position: relative;
    overflow: hidden;
}

.blog-list article .post-thumbnail img {
    display: inline-block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog-list article h2 {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 20px 35px 26px;
    font-family: Montserrat, Open Sans, Arial, sans-serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 1.5;
    margin-top: 3px;
    transition: color .2s ease;
}

.blog-list article h2 a {
    font-family: Montserrat, Open Sans, Arial, sans-serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 1.5;
    margin-top: 3px;
    transition: color .2s ease;
    display: block;
    text-decoration: none;
}

.blog-list article h2 {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 20px 35px 10px;
    font-family: Montserrat, Open Sans, Arial, sans-serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 1.5;
    margin-top: 3px;
    transition: color .2s ease;
}

.blog-list article h2 a {
    font-family: Montserrat, Open Sans, Arial, sans-serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 1.5;
    margin-top: 3px;
    transition: color .2s ease;
    display: block;
    text-decoration: none;
}

.post-excerpt {
    font-size: 16px;
    line-height: 24px;
    height: 90px;
    position: relative;
    display: block;
    color: #617283;
    margin-bottom: auto;
    overflow: hidden;
    padding: 0 35px 0;
    margin-bottom: 35px;
}

.post-excerpt:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 70%;
    /*background-image: linear-gradient(0deg, #fff, hsla(0, 0%, 100%, 0));*/
}

.pagination {
    display: block !important;
    text-align: center;
    width: 100%;
}

.pagination span, .pagination a {
    font-weight: 700;
    font-size: 18px;
    margin-left: 15px;
    margin-right: 15px;
    line-height: 29px;
    color: #1e2e42;
    text-decoration: none;
}

.pagination .current {
    color: #75ac6c;
}

.blog-paging-wrapper {
    display: inline-block;
    width: 100%;
    margin-top: 60px;
}

body.single-post h1.entry-title {
    margin-bottom: 2rem;
}

@media (max-width: 767px) {
    body.single-post h1.entry-title {
        font-size: 22px;
        padding-bottom: 1rem;
    }
}

body.single-product del {
    opacity: 0.5;
}

body.single-product .price-single-page.price > span.woocommerce-Price-amount.amount {
    text-decoration: underline;
}

.single-post-image-box:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, #75ac6c, rgba(117, 172, 108, 0) 48.85%, rgba(117, 172, 108, 0) 0);
}

.single-post-image-wrapper {
    display: inline-block;
    position: relative;
    height: 453px;
    padding: 0;
    color: #fff;
    box-sizing: border-box;
    width: 100%;
    overflow: hidden;
    border-top-right-radius: 30px;
    border-top-left-radius: 30px;
}

.single-post-image-wrapper h1 {
    font-weight: 500;
    font-size: 36px;
    line-height: 44px;
    margin-top: 4px;
    display: inline-block;
    position: absolute;
    left: 0;
    bottom: 80px;
    padding-left: 35px;
    padding-right: 35px;
    color: #fff;
}

.single-post-image-wrapper img {
    margin: auto;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    min-width: 100%;
    min-height: 100%;
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.single-post-image-box {
    display: inline-block;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}

@media (max-width: 767px) {
    .single-post-image-wrapper {
        height: auto;
        aspect-ratio: 4 / 3;
    }

    .single-post-image-wrapper img {
        -o-object-fit: contain;
        object-fit: contain;
    }
}

.single-post-wrapper.entry-content {
    display: block;
    width: 70%;
    padding: 40px 0 30px;
    margin: 0 auto;
}

@media (max-width: 767px) {
    .single-post-wrapper.entry-content {
        width: 90%;
    }
}

.single-post-wrapper.entry-content ul.products {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

.single-post-wrapper.entry-content ul.products li.product {
    width: calc((100% - 30px) / 3) !important;
}

@media (max-width: 767px) {
    .single-post-wrapper.entry-content ul.products li.product {
        width: calc(50% - 3px) !important;
    }
}

.error-404-page {
    display: inline-block;
    width: 100%;
    overflow-x: hidden;
}

.error-404-page img {
    display: inline-block;
    width: 100%;
}

.error-page-content {
    display: flex;
    gap: 40px;
    justify-content: center;
    position: relative;
    top: -50px;
}

.error-page-block {
    display: flex;
    flex-direction: column;
    max-width: 580px;
    background: #fff;
    padding: 80px;
}

.error-page-block h4 {
    display: inline-block;
    width: 100%;
    font-size: 28px;
    color: #676767;
    line-height: 40px;
    margin-bottom: 40px;
}

.error-page-content {
    display: flex;
    gap: 40px;
    justify-content: center;
    position: relative;
    top: -50px;
}

.error-page-block {
    display: flex;
    flex-direction: column;
    max-width: 580px;
    background: #fff;
    padding: 80px;
}

.error-page-block h4 {
    display: inline-block;
    width: 100%;
    font-size: 28px;
    color: #676767;
    line-height: 40px;
    margin-bottom: 40px;
}

.error-page-block p {
    display: inline-block;
    width: 100%;
    font-size: 15px;
    color: #676767;
    line-height: 24px;
}

.error-page-content {
    display: flex;
    gap: 40px;
    justify-content: center;
    position: relative;
    top: -50px;
}

.error-page-block {
    display: flex;
    flex-direction: column;
    max-width: 580px;
    background: #fff;
    padding: 80px;
}

.error-page-block h4 {
    display: inline-block;
    width: 100%;
    font-size: 28px;
    color: #676767;
    line-height: 40px;
    margin-bottom: 40px;
}

.error-page-block p {
    display: inline-block;
    width: 100%;
    font-size: 15px;
    color: #676767;
    line-height: 24px;
}

.error-page-block ul {
    display: inline-block;
    width: 100%;
    padding: 0;
    margin: 0;
}

.error-page-block ul li {
    display: flex;
    width: 100%;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    font-size: 15px;
    color: #676767;
    line-height: 17px;
}

.error-page-block ul li:before {
    content: "";
    display: inline-block;
    width: 10px;
    border: 1px solid #676767;
}

.error-page-menu-section {
    display: flex;
    align-items: start;
    gap: 20px;
}

.error-page-menu {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 20px;
}

.error-page-menu a {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 15px;
    color: #676767;
    height: 40px;
    box-shadow: 0 1px 3px 0px #95989A;
    border-radius: 5px;
}

.error-page-menu-section p {
    flex: 1;
}

.separator {
    display: flex;
    border: 1px solid #E6E6E6;
    height: 100%;
}

.woocommerce-loop-product-card__title {
    font-weight: 500;
}

.close-sidebar-menu {
    display: none;
}

.catalog-product-list-wrapper {
    display: grid;
    grid-template-areas:
        'header'
        'main'
        'paging'
        'desc';
}

.catalog-product-list-wrapper .woocommerce-products-header {
    grid-area: header;
}

.catalog-product-list-wrapper ul.products.columns-3 {
    grid-area: main;
}

.catalog-product-list-wrapper nav.woocommerce-pagination {
    grid-area: paging;
}

.catalog-product-list-wrapper .woocomerce-archive-description.mt-5 {
    grid-area: desc;
}

/* Убирает растяжение строк сетки на всю высоту колонки:
   без него при малом числе товаров пустое место распределялось
   между шапкой, товарами и описанием (большие пробелы) */
.catalog-product-list-wrapper {
    align-content: start;
}

/* Пустой блок уведомлений не должен занимать ряд сетки */
.catalog-product-list-wrapper .woocommerce-notices-wrapper:empty {
    display: none;
}

a.button.custom-out-of-stock-class {
    background: #7c858e !important;
}

.wc-block-product-categories-list li:last-child {
    display: none;
}

.woocomerce-archive-description .wpc-custom-selected-terms {
    display: none !important;
}

.wpc-filters-widget-containers-wrapper {
    display: grid;
    grid-template-areas:
        'filter'
        'control'
        'filter-set'
        'chips';
}

.wpc-filters-scroll-container {
    grid-area: filter;
}

.wpc-edit-filter-set {
    grid-area: filter-set;
}

.wpc-filters-widget-top-container.wpc-show-on-desktop {
    grid-area: chips;
    margin-top: 20px;
}

.wpc-filters-widget-controls-container {
    grid-area: control;
}

div#sidebar li {
    list-style: none !important;
}

@media (max-width: 1200px) {
    .catalog-image {
        height: 250px;
    }

    .blog-list {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 768px) {
    .archive .main_wrapper {
        top: 45px !important;
    }

    .archive .main_wrapper #main {
        padding-top: 0 !important;
    }

    .error-page-content {
        flex-direction: column;
    }

    .blog-list {
        grid-template-columns: 1fr;
    }

    .swiper-pager.home_slider_brands__navigation {
        display: block;
        position: relative;
    }

    .swiper-button-next.home_slider_brands__next {
        top: -100px;
        background: #fff;
        border-radius: 50%;
        width: 40px;
        height: 40px;
        right: -16px;
    }

    .swiper-button-next.home_slider_brands__next:after {
        font-size: 15px;
        color: #000;
    }

    .swiper-button-prev.home_slider_brands__prev {
        top: -100px;
        background: #fff;
        border-radius: 50%;
        width: 40px;
        height: 40px;
        left: -20px;
    }

    .swiper-button-prev.home_slider_brands__prev:after {
        font-size: 15px;
        color: #000;
    }

    .swiper-pagination.swiper-pagination-brands.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
        display: none;
    }

    .swiper-pagination.swiper-pagination-new.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
        display: none;
    }

    .swiper-pagination.swiper-pagination-topsales.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
        display: none;
    }

    .swiper-pagination.swiper-pagination-sales.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
        display: none;
    }

    /*mobile arrows*/
    .mobile_slider_navigation.swiper-pager {
        display: block;
        position: relative;
    }

    .mobile_slider_navigation.swiper-pager .swiper-button-next {
        top: -255px;
        background: #fff;
        border-radius: 50%;
        width: 40px;
        height: 40px;
        right: -16px;
        z-index: 999;
        border: 1px solid #ccc;
    }

    .mobile_slider_navigation.swiper-pager .swiper-button-next:after {
        font-size: 15px;
        color: #000;
    }

    .mobile_slider_navigation.swiper-pager .swiper-button-prev {
        top: -255px;
        background: #fff;
        border-radius: 50%;
        width: 40px;
        height: 40px;
        left: -18px;
        border: 1px solid #ccc;
    }

    .mobile_slider_navigation.swiper-pager .swiper-button-prev:after {
        font-size: 15px;
        color: #000;
    }

    /*mobile arrows*/
}

@media (max-width: 500px) {
    .error-page-block {
        padding: 40px;
    }
}

@media (max-width: 500px) {
    .woocommerce ul.products li.product .price {
        font-size: 0.9rem !important;
    }
}

h1.woocommerce-products-header__title.page-title {
    margin-bottom: -4rem;
}

@media (min-width: 768px) {
    h1.woocommerce-products-header__title.page-title {
        max-width: 60%;
    }

    body.tax-product_cat .category-image {
        margin-top: -2rem;
        margin-bottom: 2rem;
    }
}

@media (max-width: 768px) {
    h1.woocommerce-products-header__title.page-title {
        margin-bottom: 0;
    }
}

ul.product-variations-catalog {
    margin-bottom: 0 !important;
}

ul.product-variations-catalog li {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    font-weight: 500;
    color: grey;
    white-space: nowrap;
    gap: 8px;
}

ul.product-variations-catalog li span {
    color: #000;
}

ul.product-variations-catalog li .sep {
    height: 1px;
    width: 100%;
    border-bottom: 1px dashed grey;
}

del.regular bdi, del.regular bdi span {
    color: grey;
}

.woocommerce ul.products li.product .price {
    margin: 0;
    font-size: 17px !important;
    text-align: left;
    font-weight: 500 !important;
}

.woocommerce ul.products li.product .price ins {
    font-weight: 500 !important;
    margin-left: 7px;
}

.woocommerce ul.products li.product a.woocommerce-loop-product__link {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
}

.woocommerce .products ul, .woocommerce ul.products,
.woocommerce ul.products li.product .price {
    width: 100%;
    margin-top: auto;
}

body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-shipping-block.wc-block-components-totals-wrapper {
    display: none;
}

.woocommerce-loop-product__title {
    min-height: unset !important;
}

.copyright {
    padding: 24px 12px;
    text-align: center;
    margin-bottom: -60px;
}

.wpc-posts-found {
	display: none;
}

.wpc-filters-widget-wrapper {
	margin-top: 30px;
}

@media (max-width: 768px) {
    ul.product-variations-catalog li {
        gap: 4px !important;
        font-size: 11px !important;
    }

    .woocommerce ul.products li.product .price {
        font-size: 11px !important;
    }

    .woocommerce ul.products li.product .price > .amount bdi, ul.product-variations-catalog li > .amount bdi {
        font-size: 13px !important;
    }

    .product_card .card .card-footer .price {
        font-size: 11px !important;
    }

    .product_card .card .card-footer .product_price {
        padding-bottom: 10px !important;
    }

    .product_card .card .card-body {
        text-align: left !important;
    }

    .product_card .card .card-body .card-title {
        max-height: unset !important;
    }

    .product_card .card .card-footer {
        min-height: unset !important;
    }

    .copyright {
        margin-bottom: 0;
    }
}

@media (max-width: 767px) {
    .woocommerce-products-header .wpc-filters-open-button-container,
    .sidebar .wpc-filters-open-button-container {
        display: block !important;
    }

    .woocommerce .woocommerce-ordering {
        margin-bottom: 0;
    }

    body .wpc-filters-open-button-container a.wpc-open-close-filters-button {
        margin-bottom: 0;
    }

    .wpc-filters-overlay {
        display: none;
    }
}