:root {
    --pe-main-color: #D12121;
    --accent-color: #E57C76;
    --accent-color-light: #FFECEC;
}

/* Shop */
.woocommerce div.product form.cart .button.single_add_to_cart_button,
.woocommerce-page.woocommerce-checkout #payment #place_order,
.woocommerce.woocommerce-checkout #payment #place_order,
.woocommerce #content table.cart td.actions .button,
.woocommerce table.cart td.actions .button,
.woocommerce-page #content table.cart td.actions .button,
.woocommerce-page table.cart td.actions .button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce ul.products li.product a.button {
    font-family: "Open Sans", Sans-serif;
    font-size: 15px;
    /* color: #353535; */
    color: #fff;
    font-weight: 700;
    letter-spacing: 0.5px;
    width: 100%;
    padding: 12px 24px;
    border: 1px solid var(--pe-main-color);
    border-radius: 30px;
    background-color: var(--pe-main-color);
    transition: all .3s;
}

.woocommerce-page #content table.cart tr td.actions button.button {
    width: auto;
}

.woocommerce div.product form.cart .button.single_add_to_cart_button:hover,
.woocommerce-page.woocommerce-checkout #payment #place_order:hover,
.woocommerce.woocommerce-checkout #payment #place_order:hover,
.woocommerce #content table.cart td.actions .button:hover,
.woocommerce table.cart td.actions .button:hover,
.woocommerce-page #content table.cart td.actions .button:hover,
.woocommerce-page table.cart td.actions .button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce ul.products li.product a.button:hover {
    color: var(--pe-main-color);
    background-color: transparent;
}

.woocommerce ul.products .astra-shop-summary-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    height: 100%;
}

.woocommerce ul.products li.product a.ast-loop-product__link {
    margin-bottom: 10px;
}

.woocommerce ul.products li.product .astra-shop-summary-wrap .price {
    font-size: 1em;
    color: var(--pe-main-color);
    margin-top: auto;
}

.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
    background: var(--accent-color-light);
}

/* Single product */
.summary form.cart {
    display: flex;
}

/* Cart */
.woocommerce-page #content table.cart td.actions .input-text {
    border-radius: 30px;
    padding: 12px;
    max-height: 39px;
}

/* Courses grid */
.acallcsf-search-result-wrapper .pe-course__item,
.archive .pe-course__item {
    margin-bottom: 50px;
}

.acallcsf-search-result-wrapper {
    margin-top: 50px;
}

.pe-course__item--link,
.pe-course__item--image,
.pe-course__item--duration svg,
.simplefavorite-button svg {
    display: block;
}

.pe-course__item--image {
    position: relative;
}

.pe-course__item--image img {
    width: 100%;
}

.pe-course__item--image .simplefavorite-button {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 6px 6px 5px;
    background: rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    z-index: 100;
}

.pe-course__item--header {
    padding: 10px 0 10px;
}

.pe-course__item--meta {
    /* margin: 2px 0 8px; */
    margin: 2px 0 0;
}

.pe-course__item--title {
    margin-top: 8px;
}

.pe-course__item__categories,
.pe-course__item--author,
.pe-course__item--duration {
    font-family: 'Poppins', serif;
}

.pe-course__item__categories {
    font-size: 12px;
    color: #999999;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.pe-course__item .pe-course__item--title {
    /* font-family: 'Playfair Display', sans-serif; */
    font-size: 16px;
    color: rgba(0,0,0, 0.86);
}

.pe-course__item--bottom-info,
.pe-course__item--author-info,
.pe-course__item--duration  {
    display: flex;
}

.pe-course__item--bottom-info,
.pe-course__item--duration,
.pe-course__item--author-info,
.pe-course__item--duration  {
    align-items: center;
}

.pe-course__item--bottom-info {
    justify-content: space-between;
    border-top: 1px solid #e0e0e0;
}

.pe-course__item--author-info,
.pe-course__item--duration {
    margin-top: 10px;
}

.pe-course__item--author-avatar {
    width: 22px;
    height: 22px;
}

.pe-course__item--author-avatar img {
    display: block;
    border-radius: 50%;
}

.pe-course__item .pe-course__item--author {
    font-family: 'Playfair Display', sans-serif;
    font-size: 13px;
    color: #404040;
    margin: 0 0 0 10px;
}

.pe-course__item--duration-wrap {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    /* padding-top: 10px; */
    /* margin-top: 10px; */
    /* border-top: 1px solid #e0e0e0; */
}

.pe-course__item--duration {
    font-size: 15px;
    line-height: 1.4;
    background-color: var(--accent-color-light);
    padding: 8px;
    border-radius: 8px;
}

.pe-course__item--duration svg {
    margin-right: 4px;
}

.simplefavorite-button path {
    fill: var(--accent-color);
}

.pe-course__item--duration path {
    fill: #292929;
}

@media (min-width: 768px) {
    .acallcsf-search-result-wrapper,
    .archive .site-main > .ast-row {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        column-gap: 24px;
    }
    .archive .pe-course__item {
        width: auto;
    }
    .pe-course__item--title.nowrap {
        text-overflow: ellipsis;
        overflow: hidden;
        white-space: nowrap;
    }
}

@media (min-width: 922px) {
    .acallcsf-search-result-wrapper,
    .archive .site-main > .ast-row {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
    }
}

/* Slider */
.elementor-swiper-button {
    border: 1px solid rgba(0, 0, 0, 0.12) !important;
    border-radius: 50%;
    padding: 12px;
    box-shadow: rgba(0, 0, 0, 0.04) 0px 0px 1px 0px, rgba(0, 0, 0, 0.04) 0px 2px 6px 0px, rgba(0, 0, 0, 0.04) 0px 10px 20px 0px;
    background: #fff;
}

.elementor-swiper-button.elementor-swiper-button-prev {
    transform: translate(-33%, -50%) !important;
}
.elementor-swiper-button.elementor-swiper-button-next {
    transform: translate(33%, -50%) !important;
}

div.elementor-element div.swiper ~ div.elementor-swiper-button svg {
    width: 32px;
    height: 32px;
}

.elementor-swiper-button svg path {
    fill: var(--accent-color);
}

/* Archive */
.pe-archive__banner {
    border: 1px solid rgba(0, 0, 0, 0.12);
    margin-bottom: 30px;
}

.pe-archive__description {
    padding: 15px 30px;
}

.pe-archive__description h2 {
    font-size: 28px;
    color: #351e15;
    line-height: 34px;
    margin: 0px 0px 12px;
}

.pe-archive__description p {
    font-size: 19px;
    color: #313131;
    line-height: 28px;
    margin: 12px 0px 24px;
}

.pe-archive__description h2 + p {
    margin: 24px 0px 24px;
}

.pe-archive__description p:nth-child(1) {
    font-size: 11px;
    color: #51a3aa;
    margin: 0;
}

.pe-archive__title--wrapper {
    margin-bottom: 40px;
}

.pe-archive__title--wrapper .pe-archive__title {
    font-size: 24px;
    color: #351e15;
    line-height: 120%;
}


.pe-archive__title--wrapper .pe-archive__short-desc {
    font-size: 16px;
    color: #313131;
    line-height: 148%;
    margin-top: 4px;
}

.acallcsf-search-form--wrapper + .site-main {
    margin-top: 50px;
}

@media (min-width: 992px) {
    .pe-archive__banner {
        display: flex;
    }
    .pe-archive__banner--img,
    .pe-archive__description {
        flex: 1 0 50%;
    }

    .pe-archive__banner--img img {
        height: 100%;
        object-fit: cover;
    }

    .pe-archive__description {
        padding: 32px 64px;
    }
}

/* Single course */
.pe-single-topic-course-info,
.pe-course-duration-info,
.pe-course-duration-info .pe-course-duration,
.pe-course-category-info,
.pe-single-topic-course-buttons {
    display: flex;
}

.pe-single-topic-course-info,
.pe-course-duration-info .pe-course-duration,
.pe-single-topic-course-buttons {
    align-items: center;
}

.pe-single-topic-course-info {
    /* justify-content: space-between; */
}

.pe-course-duration-info,
.pe-course-category-info {
    flex-direction: column;
}

.pe-course-duration-info + .pe-course-category-info {
    padding-left: 10px;
    margin-left: 10px;
    border-left: 1px solid rgba(0, 0, 0, 0.12);
} 

.pe-course-duration-label,
.pe-course-category-label {
    font-size: 13px;
    color: rgba(0, 0, 0, 0.4);
    line-height: 19px;
}
.pe-course-duration-info .pe-course-duration svg {
    margin-right: 4px;
    display: block;
}

.pe-course-duration-info .pe-course-duration path {
    fill: #292929;
}

.pe-course-duration-info .pe-course-duration,
.pe-course-category-info .pe-course-category {
    color: #292929;
}

.pe-single-topic-course-buttons {
    margin-left: auto;
}

.pe-single-topic-course-info .simplefavorite-button {
    margin-left: 10px;
    padding: 7px;
    cursor: pointer;
}

.pe-single-topic-course-info .simplefavorite-button,
.pe-single-topic-course-buttons .sfwd-mark-complete .learndash_mark_complete_button {
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 4px;
}

.pe-single-topic-course-buttons .sfwd-mark-complete .learndash_mark_complete_button {
    font-size: 0;
    width: 40px;
    height: 40px;
    background-color: transparent !important;
    padding: 0;
    background-image: url(../img/check-mark-icon-v1.svg);
    background-repeat: no-repeat;
    background-position: center center;
}

.pe-single-topic-course-buttons form.sfwd-mark-complete:after {
    display: none;
}