:root {
    --main: #000000;
    --secondary: #fda043;
    --accent: #bac9ac;
    --accent_second: #ebdbcb;
    --light: #ffffff;
    --dark: #000000;
    --heading: #000000;
    --body: #363636;
    --bodybg: #ffffff;
    --btn-color: #ffffff;
    --btn-color2: #ffffff;
    --btn-bgcolor: #fda043;
    --btn-bgcolor2: #000000;
    --e-global-color-primary: #000000;
    --e-global-color-secondary: #000000;
    --menu-color: #000000;
}



/*  Main.
------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Urbanist';
    font-weight: 500;
}
a:not(.woocommerce-review-link):not(:has(.banner-title)),
a:not(.woocommerce-review-link):not(:has(.banner-title)):hover {
    color:              #ff7043;
    text-decoration:    none;
}
a:not(.woocommerce-review-link):not(:has(.banner-title)) span.elementor-icon-list-text {
    background: none !important;
}
b,
strong {
    color: #000;
}
table th,
table td {
    padding: 0.4em;
}
i,
svg.e-font-icon-svg path {
    transition: color 0.3s, fill 0.3s;
}
.btn-theme {
    background-color:   #000;
    color:              #ffffff;
    height:             50px;
    padding:            0 40px;
    text-align:         center;
    line-height:        50px;
}
button.btn-theme {
    border: 0;
}
.search-no-results header p,
.error404 header p {
    margin-bottom: 0;
}
.with-margin p:not(:last-child) {
    margin-bottom: 20px;
}
.no-margin p {
    margin: 0;
}
.no-margin-bottom p {
    margin-bottom: 0;
}
.no-margin-div,
.no-margin-div div:not(.elementor-widget-wrap) {
    margin: 0 !important;
}
.margin-bottom-20 {
    margin-bottom: 20px !important;
}
.margin-auto {
    margin: auto;
}
.text-center-header-menu,
.text-center {
    text-align: center;
}
.text-center-header-menu ul.sub-menu {
    text-align: left;
}



/*  CookieYes.
------------------------------------- */
.cky-consent-container [data-cky-tag="powered-by"] {
    display: none !important;
}
.cky-consent-container .cky-notice-des,
.cky-modal .cky-preference-content-wrapper,
.cky-modal .cky-audit-table .cky-cookie-des-table {
    font-weight: 500 !important;
}



/*  Login page/popup.
------------------------------------- */
.jws-form-login-popup {
    margin: auto;
    width:  90%;
    left:   0;
    right:  0;
}
.jws-form-login-popup .jws-form-content {
    padding: 30px 35px;
}
.jws-form-login-popup .in-register .slick-list {
    height: auto !important;
}
.jws-form-login-popup .jws-close {
    padding: 35px 32px 0 0;
}
body.woocommerce-account form .toggle-password2,
.jws-form-login-popup form .toggle-password2 {
    cursor: pointer;
}
body.woocommerce-account form input,
.jws-form-login-popup form input {
    font-family: 'Urbanist';
    font-weight: 500;
}
body.woocommerce-account a.change-form,
.jws-form-login-popup a.change-form {
    color: #000 !important;
}
.jws-form-login-popup .popup-message {
    margin: 20px 0 0 !important;
    height: auto !important; /* Just in case, because I think some browsers don't show the error because of height still being set from the error showing animation. Most likely it's from the nonce being cached (which I added it in the "ESI Nonces"). */
}



/*  Back to top.
------------------------------------- */
a.backToTop {
    color: #000 !important;
}



/*  Crop video at sides.
------------------------------------- */
.crop-video-at-sides {
    width:      calc(100% - 50px) !important;
    margin:     0 25px;
    overflow:   hidden;
}
.crop-video-at-sides video {
    width:          calc(100% + 50px) !important;
    margin-left:    -25px;
    max-width:      unset;
}



/*  Hover zoom efect.
------------------------------------- */
.hover-zoom a:hover,
a.hover-zoom:hover {
    cursor: zoom-in;
}
.hover-zoom a:hover::before,
a.hover-zoom:hover::before {
    content:            '';
    display:            block;
    position:           absolute;
    top:                20px;
    right:              20px;
    width:              32px;
    height:             32px;
    z-index:            1;
    border:             1px solid;
    border-radius:      5px;
    background-color:   #fff;
    color:              #000;
}
.hover-zoom a:hover::after,
a.hover-zoom:hover::after {
    content:    '↕';
    display:    block;
    position:   absolute;
    top:        23px;
    right:      28px;
    z-index:    2;
    font-size:  26px;
    transform:  rotate(45deg);
    color:      #000;
}



/*  Slick slider.
------------------------------------- */
.main-product:has(li.mnm_item) .slick-dots,
.convert-to-carousel-on-mobile .slick-dots {
    margin: 10px 0 0 !important;
    width:  100%;
}
.main-product:has(li.mnm_item) .slick-dots li,
.convert-to-carousel-on-mobile .slick-dots li {
    margin: 0 7px;
}
.main-product:has(li.mnm_item) .slick-dots li button,
.convert-to-carousel-on-mobile .slick-dots li button {
    top:    5px;
    margin: 5px 0;
    width:  15px;
    height: 15px;
}
.main-product:has(li.mnm_item) .slick-dots li button::before,
.convert-to-carousel-on-mobile .slick-dots li button::before {
    opacity:        1;
    border-color:   #000;
}
.main-product:has(li.mnm_item) .slick-dots li button::after,
.convert-to-carousel-on-mobile .slick-dots li button::after {
    top:                5px;
    width:              5px;
    height:             5px;
    border-color:       #000;
    background-color:   #000;
}
.convert-to-carousel-on-mobile.white-dots .slick-dots li button::before,
.convert-to-carousel-on-mobile.white-dots .slick-dots li button::after {
    border-color: #fff;
}
.convert-to-carousel-on-mobile.white-dots .slick-dots li button::after {
    background-color: #fff;
}
.main-product:has(li.mnm_item) .slick-dots li.slick-active button::after,
.convert-to-carousel-on-mobile .slick-dots li.slick-active button::after {
    transform: scale(0.6);
}
.main-product:has(li.mnm_item) .slick-dots li button svg,
.convert-to-carousel-on-mobile .slick-dots li button svg {
    display: none;
}
.convert-to-carousel-on-mobile .slick-arrow.prev-item {
    top:        calc(50% - -3px);
    left:       -40px;
    transform:  translateY(-50%) rotate(-180deg);
}
.convert-to-carousel-on-mobile.arrows-inside .slick-arrow.prev-item {
    left: 10px;
}
.convert-to-carousel-on-mobile .slick-arrow.next-item {
    right: -40px;
}
.convert-to-carousel-on-mobile.arrows-inside .slick-arrow.next-item {
    right: 10px;
}
.convert-to-carousel-on-mobile .slick-arrow i {
    font-size:      30px;
    font-weight:    normal;
    color:          #000;
}
.convert-to-carousel-on-mobile.white-arrows .slick-arrow i {
    color: #fff;
}
@media (max-width: 767px) {
    .convert-to-carousel-on-mobile:not(.full-width) .elementor-container {
        width: 50%;
    }
}



/*  Header.
------------------------------------- */
/* Promotional section. */
header .promotional-section a {
    color: #fff !important;
}

/* Sticky header. */
@media (min-width: 1024px) and (max-width: 1024px) { /* On this screen size there is a bug and the sticky header doesn't work, but it leaves a big gap below itself. */
    header .cafe-sticky-row-container + .cafe-sticky-row-container {
        height: auto !important;
    }
}

/* Menu. */
header ul.nav {
    align-items: center;
}
header ul.nav li.border a {
    border:         1px solid #000;
    border-radius:  10px !important;
    padding:        5px 10px !important;
}
header ul.nav li.border a:hover,
header ul.nav li.border.current-menu-item a {
    border-color: var(--e-global-color-94f483f);
}

/* Mobile menu. */
.jws-offcanvas ul.nav button.btn-sub-menu {
    top: 3px !important;
}
.jws-offcanvas ul.nav li.current_page_item a {
    color: var(--e-global-color-94f483f) !important;
}
.jws-offcanvas ul.nav li.border a span {
    margin-left:    -10px;
    border:         1px solid #fff;
    border-radius:  10px !important;
    padding:        5px 10px !important;
    transition:     0.3s ease;
}
.jws-offcanvas ul.nav li.border a:hover span,
.jws-offcanvas ul.nav li.border.current-menu-item a span {
    border-color: var(--e-global-color-94f483f);
}

/* Language switcher. */
header .elementor-widget-wpml-language-switcher .wpml-ls-legacy-dropdown {
    padding:    5px;
    width:      auto;
    height:     34px;
}
header .elementor-widget-wpml-language-switcher .wpml-ls-legacy-dropdown a.js-wpml-ls-item-toggle {
    display:            inline-block;
    border:             0;
    padding:            0;
    background-color:   #fff;
}
header .elementor-widget-wpml-language-switcher .wpml-ls-legacy-dropdown a.js-wpml-ls-item-toggle::after {
    display: none;
}
header .elementor-widget-wpml-language-switcher .wpml-ls-legacy-dropdown ul li {
    display:            flex;
    justify-content:    center;
    padding-bottom:     5px;
}
header .elementor-widget-wpml-language-switcher .wpml-ls-legacy-dropdown ul.wpml-ls-sub-menu,
header .elementor-widget-wpml-language-switcher .wpml-ls-legacy-dropdown ul.wpml-ls-sub-menu a {
    border:             0;
    padding:            0;
    background-color:   #fff;
}
header .elementor-widget-wpml-language-switcher .wpml-ls-legacy-dropdown ul.wpml-ls-sub-menu {
    display:        none;
    left:           -8px;
    border-radius:  5px;
    padding:        10px 5px;
    width:          40px;
    box-shadow:     0px -3px 10px -3px rgba(0, 0, 0, 0.25);
}
header .elementor-widget-wpml-language-switcher .wpml-ls-legacy-dropdown ul li:hover ul.wpml-ls-sub-menu {
    display: block;
}
header .elementor-widget-wpml-language-switcher .wpml-ls-legacy-dropdown ul.wpml-ls-sub-menu li {
    padding: 0;
}
header .elementor-widget-wpml-language-switcher .wpml-ls-legacy-dropdown ul.wpml-ls-sub-menu li:not(:first-child) {
    margin-top: 10px;
}
header .elementor-widget-wpml-language-switcher .wpml-ls-legacy-dropdown img {
    width:  23px;
    height: 23px;
}

/* My account icon. */
header .my-account .elementor-button-content-wrapper {
    height: 34px;
}
@media (max-width: 1023px) {
    header .my-account .elementor-button-content-wrapper {
        height: 28px;
    }
}



/*  Footer.
------------------------------------- */
/* Toggle mobile menu. */
@media (max-width: 767px) {
    .elementor-element:has(.jws-menu-list.toggle-mobile),
    .elementor-element:has(.jws-menu-list.toggle-mobile) .elementor-widget-container {
        margin-bottom: 0;
    }
    .jws-menu-list.toggle-mobile h3 {
        display:            flex;
        justify-content:    space-between;
        margin:             0 !important;
        padding-bottom:     10px;
    }
    .jws-menu-list.toggle-mobile h3::after {
        content:    '\e824';
        transition: transform 0.15s;
    }
    .jws-menu-list.toggle-mobile:has(ul[style*="overflow: hidden"]) h3::after,
    .jws-menu-list.toggle-mobile:has(ul[style*="display: block"]) h3::after {
        transform: rotate(90deg);
    }
}
@media (min-width: 768px) {
    .jws-menu-list.toggle-mobile ul {
        display: block !important;
    }
}

/* Shape divider. */
footer .rotate-shape .elementor-shape-top {
    top:        -19px;
    transform:  rotate(180deg);
}
@media (max-width: 1441px) {
    footer .rotate-shape .elementor-shape-top {
        top: -9px;
    }
}

/* Menus. */
.elementor-widget-menu_list ul li {
    display:    inline-block !important;
    width:      100%;
}



/*  Elementor.
------------------------------------- */
/* Social icons. */
.elementor-social-icon {
    font-size: 14px !important; /* Fix, because otherwise they get resized when the page is cached. */
}

/* Author box. */
@media (max-width: 767px) {
    .elementor-widget-author-box .elementor-author-box {
        display: block;
    }
    .elementor-widget-author-box .elementor-author-box .elementor-author-box__avatar {
        margin: 0 0 20px 0;
    }
}

/* Form. */
.elementor-widget-form form.elementor-form .elementor-message {
    margin-bottom: 0;
}
@media (max-width: 767px) {
    .elementor-widget-form form.elementor-form input {
        border-radius: 10px !important;
    }
    .elementor-widget-form form.elementor-form button {
        margin-top:     10px;
        border-radius:  10px !important;
    }
}

/* Label. */
.elementor-field-label {
    cursor: unset;
}

/* Arrows for what's inside section. */
@media (min-width: 1442px) {
    .elementor-widget-jws_info_box.arrow-left .elementor-widget-container::before,
    .elementor-widget-jws_info_box.arrow-right .elementor-widget-container::before {
        content:        '';
        position:       absolute;
        top:            50%;
        transform:      translateY(-50%);
        border-top:     15px solid transparent;
        border-bottom:  15px solid transparent;
    }
    .elementor-widget-jws_info_box.arrow-left .elementor-widget-container::before {
        left:           -15px;
        border-right:   15px solid #f5e6cc;
    }
    .elementor-widget-jws_info_box.arrow-right .elementor-widget-container::before {
        right:          -15px;
        border-left:    15px solid #f5e6cc;
    }
}

/* Icon list items. */
ul.elementor-icon-list-items {
    padding: 0;
}

/* Image box. */
@media (max-width: 767px) {
    .elementor-widget-image-box .elementor-image-box-wrapper {
        display:        flex;
        align-items:    center;
    }
    .elementor-widget-image-box .elementor-image-box-wrapper .elementor-image-box-content {
        padding-left: 20px;
    }
}

/* Info box. */
.elementor-widget-jws_info_box .box-icon {
    display: none !important;
}
.elementor-widget-jws_info_box .box-more {
    border-radius: 50px;
}

/* Testimonial slider. */
.elementor-widget-jws_testimonial_slider .testimonials_slider_thumbnail {
    display: none;
}
.elementor-widget-jws_testimonial_slider .average-rating,
.elementor-widget-jws_testimonial_slider .average-rating .jws-star-rating,
.elementor-widget-jws_testimonial_slider .average-rating .jws-star-rating .jws-star-rated {
    height: 20px;
}
.elementor-widget-jws_testimonial_slider .average-rating {
    margin-bottom: 0;
}
.elementor-widget-jws_testimonial_slider .average-rating .jws-star-rating .jws-star-rated::before {
    right: 0;
}
.elementor-widget-jws_testimonial_slider .testimonials-info {
    display:    block !important;
    text-align: center !important;
}
.elementor-widget-jws_testimonial_slider .slick-dots {
    margin-top: 25px !important;
}
.elementor-widget-jws_testimonial_slider .custom_dots li {
    margin: 0 2px;
}
.elementor-widget-jws_testimonial_slider .custom_dots li button {
    top:    5px;
    margin: 5px 2px;
    width:  20px;
    height: 20px;
}
.elementor-widget-jws_testimonial_slider .custom_dots li button::after {
    top:                5px;
    width:              10px;
    height:             10px;
    background-color:   #fff !important;
}
.elementor-widget-jws_testimonial_slider .custom_dots li.slick-active button::after {
    transform: scale(0.6);
}
.elementor-widget-jws_testimonial_slider .custom_dots li button svg {
    display: none;
}

/* Nutritionist section/slider. */
.elementor-section.nutritionist-section {
    overflow: hidden;
}
.elementor-section.nutritionist-section .slick-list {
    padding-bottom: 125px;
    overflow:       visible;
}
.elementor-section.nutritionist-section .slick-list .slick-track {
    display: flex;
}
.elementor-section.nutritionist-section .slick-list .slick-track .slick-slide { /* Slides. */
    display:    flex;
    height:     auto;
}
.elementor-section.nutritionist-section .slick-list .slick-track .slick-slide:not(.slick-active) {
    opacity:    0.15;
    transition: opacity 0.5s; /* Same as slide change transition. */
}
.elementor-section.nutritionist-section .slick-list:has(.slick-slide.slick-active:nth-child(2)) .slick-track .slick-slide.slick-cloned:last-child,
.elementor-section.nutritionist-section .slick-list:has(.slick-slide.slick-active:nth-last-child(2)) .slick-track .slick-slide.slick-cloned:first-child {
    opacity: 1;
}
.elementor-section.nutritionist-section .slider-dots-box { /* Dots. */
    z-index: 1;
}
.elementor-section.nutritionist-section .slider-dots-box li button {
    top:    5px;
    margin: 5px 2px;
    width:  20px;
    height: 20px;
}
.elementor-section.nutritionist-section .slider-dots-box li button::before {
    opacity:        1;
    border-color:   #6B8E23;
}
.elementor-section.nutritionist-section .slider-dots-box li button::after {
    top:                5px;
    width:              10px;
    height:             10px;
    background-color:   #6B8E23;
}
.elementor-section.nutritionist-section .slider-dots-box li.slick-active button::after {
    transform: scale(0.6);
}
.elementor-section.nutritionist-section .slider-dots-box li button svg {
    display: none;
}
.elementor-section.nutritionist-section .custom_navs .jws-carousel-btn.nav_left { /* Navigation. */
    transform: translateY(-50%) rotate(-180deg);
}
.elementor-section.nutritionist-section .elementor-column .elementor-widget-wrap::before { /* Ribbon. */
    content:                    '';
    position:                   absolute;
    top:                        0;
    bottom:                     0;
    right:                      15px;
    height:                     100%;
    width:                      45px;
    background-color:           rgba(0, 0, 0, 0.25);
    border-top-right-radius:    30px;
}
.elementor-section.nutritionist-section .nutritionist-popup { /* Popup for longer reviews. */
    position: unset;
}
.elementor-section.nutritionist-section .nutritionist-popup .jws-box-title-heading,
.elementor-section.nutritionist-section .nutritionist-popup .box-content {
    display: none;
}
.elementor-section.nutritionist-section .nutritionist-popup .box-content {
    position:           absolute;
    margin:             15px !important;
    border-radius:      50px;
    padding:            40px;
    top:                0;
    right:              0;
    bottom:             0;
    left:               0;
    z-index:            1;
    color:              #000 !important;
    background-color:   #fff;
    cursor:             pointer;
}
.elementor-section.nutritionist-section .nutritionist-popup .box-content p {
    margin:         1em 0;
    font-size:      26px; /* Same as the shorter review. */
    font-weight:    bold; /* Same as the shorter review. */
}
.elementor-section.nutritionist-section .nutritionist-popup .box-content p:first-child {
    margin-top: 0;
}
.elementor-section.nutritionist-section .nutritionist-popup .box-content p:last-child {
    margin-bottom: 0;
}
@media (max-width: 767px) {
    .elementor-section.nutritionist-section .nutritionist-popup .box-content {
        padding: 30px;
    }
    .elementor-section.nutritionist-section .nutritionist-popup .box-content p {
        font-size: 18px;
    }
}



/*  About us.
------------------------------------- */
/* Custom carousel. */
.elementor-widget-n-carousel.custom-carousel .swiper-slide:not(.swiper-slide-active) {
    opacity:    0.25;
    transition: opacity 0.5s; /* Same as slide change transition. */
}
.elementor-widget-n-carousel.custom-carousel .swiper-slide:not(.swiper-slide-active) {
    cursor: pointer;
}
.elementor-widget-n-carousel.custom-carousel .swiper-slide-duplicate {
    opacity:        0 !important;
    pointer-events: none;
}
.elementor-widget-n-carousel.custom-carousel .elementor-swiper-button.swiper-button-disabled {
    pointer-events: none;
}
.elementor-widget-n-carousel.custom-carousel .elementor-swiper-button svg {
    width:  1.5em !important;
    height: 1.5em !important;
    fill:   #6B8E23 !important;
}



/*  Ingredients.
------------------------------------- */
.elementor-section:has(section.ingredients-section) .colored-title h2 {
    margin-bottom:  10px !important;
    border-radius:  10px;
    padding:        5px 15px;
}
.elementor-section:has(section.ingredients-section) .box-content > p:not(:last-child),
.elementor-section:has(section.ingredients-section) .box-content > ul:not(:last-child) {
    margin-bottom: 20px;
}
.elementor-section section.ingredients-section:not(:first-child) h2 {
    margin-top: 50px;
}
.elementor-section section.ingredients-section h2 strong {
    display: inline-block;
}
@media (max-width: 499px) {
    .elementor-section section.ingredients-section {
        overflow-x: scroll;
    }
}

/* Blueberry. */
.elementor-section.blueberry .colored-title h2 {
    background-color:   #322c73;
    color:              #fff !important;
}
.elementor-section.blueberry section.ingredients-section h2 strong {
    padding:            5px 10px;
    color:              #312c73;
    background-color:   #eae6fd;
}
.elementor-section.blueberry section.ingredients-section table {
    background-color:   #322c73;
    color:              #fff;
}
.elementor-section.blueberry section.ingredients-section table strong {
    color: #fff;
}

/* Apple. */
.elementor-section.apple .colored-title h2 {
    background-color:   #c07039;
    color:              #fff !important;
}
.elementor-section.apple section.ingredients-section h2 strong {
    padding:            5px 10px;
    color:              #c07039;
    background-color:   #ffe5d5;
}
.elementor-section.apple section.ingredients-section table {
    background-color:   #c07039;
    color:              #fff;
}
.elementor-section.apple section.ingredients-section table strong {
    color: #fff;
}

/* Vanilla. */
.elementor-section.vanilla .colored-title h2 {
    background-color:   #f4e6cc;
    color:              #000 !important;
}
.elementor-section.vanilla section.ingredients-section h2 strong {
    padding:            5px 10px;
    color:              #f4e6cc;
    background-color:   #000;
}
.elementor-section.vanilla section.ingredients-section table {
    background-color:   #f4e6cc;
    color:              #000;
}
.elementor-section.vanilla section.ingredients-section table strong {
    color: #000;
}



/*  Policy pages.
------------------------------------- */
.policy-page ol {
    padding-left: 20px;
}
.policy-page ol:not(:first-of-type) {
    margin-top: 20px;
}
.policy-page ol ol {
    margin-bottom: 20px;
}



/*  Product page.
------------------------------------- */
/* Description. */
.main-product:has(li.mnm_item) .woocommerce-product-details__short-description h2 {
    font-size:      16px;
    line-height:    1.5;
}
.main-product:has(li.mnm_item) .woocommerce-product-details__short-description .benefits-section {
    display:                grid;
    display:                none !important;
    grid-template-columns:  repeat(2, 1fr);
    list-style:             none;
    margin:                 auto;
    padding:                10px 0;
    width:                  650px;
    text-align:             left;
    font-weight:            bold;
}
.main-product:has(li.mnm_item) .woocommerce-product-details__short-description .benefits-section .benefit {
    padding: 0 20px;
}
.main-product:has(li.mnm_item) .woocommerce-product-details__short-description .benefits-section .benefit p {
    margin: 0;
}
@media (max-width: 767px) {
    .main-product:has(li.mnm_item) .woocommerce-product-details__short-description .benefits-section {
        display:    block;
        width:      auto;
        text-align: center;
    }
    .main-product:has(li.mnm_item) .woocommerce-product-details__short-description .benefits-section .benefit {
        padding: 0;
    }
}

/* Product options on top. */
/* .main-product:has(li.mnm_item) .quantity-buttons {
    padding-bottom: 15px;
} */
.main-product:has(li.mnm_item) .quantity-buttons ul {
    display: none !important;
}
.main-product:has(li.mnm_item) .quantity-buttons h2 {
    margin-bottom:  0;
    font-size:      22px;
    font-weight:    bold;
}
.main-product:has(li.mnm_item) .related-product .summary-add-to-cart-form > .wcsatt-options-wrapper {
    display: none;
}
.main-product:has(li.mnm_item) .quantity-buttons ul,
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul {
    display:            flex;
    justify-content:    center;
    padding:            0;
}
.main-product:has(li.mnm_item) .quantity-buttons ul li,
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li {
    display:        flex;
    flex-direction: column;
    flex:           1;
    position:       relative;
    padding:        10px;
    list-style:     none;
}
.main-product:has(li.mnm_item) .quantity-buttons ul li span.upsell-message {
    display:                    block;
    margin:                     -7px auto 0 auto;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius:  5px;
    padding:                    8px 10px;
    width:                      75%;
    line-height:                1;
    font-size:                  12px;
    background-color:           #ddd;
    user-select:                none;
    cursor:                     pointer;
}
.main-product:has(li.mnm_item) .quantity-buttons ul li span.upsell-message:hover,
.main-product:has(li.mnm_item) .quantity-buttons ul li label:hover + span.upsell-message,
.main-product:has(li.mnm_item) .quantity-buttons ul li label:has(input[checked]) + span.upsell-message {
    background-color: #6B8E2330;
}
.main-product:has(li.mnm_item) .quantity-buttons ul li label,
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label {
    list-style:         none;
    margin:             0;
    border:             2px solid #ddd;
    border-radius:      10px;
    padding:            10px;
    width:              100%;
    overflow:           hidden;
    font-weight:        bold;
    background-color:   #fff;
    cursor:             pointer;
    user-select:        none;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li:has(.disabled) {
    cursor: not-allowed;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label.disabled {
    text-decoration:    line-through;
    opacity:            0.2; /* Same as disabled ATC button. */
    pointer-events:     none;
    user-select:        none;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label.disabled span.price {
    text-decoration: line-through;
}
.main-product:has(li.mnm_item) .quantity-buttons ul li label {
    padding: 2px;
}
.main-product:has(li.mnm_item) .quantity-buttons ul li label:hover,
.main-product:has(li.mnm_item) .quantity-buttons ul li label:has(input[checked]),
.main-product:has(li.mnm_item) .quantity-buttons ul li label.hover-on-upsell-message,
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label:hover,
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label:has(input[checked]) {
    border-color: #6B8E23;
}
.main-product:has(li.mnm_item) .quantity-buttons ul li label .highlight,
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label .highlight {
    display:                    inline-block;
    position:                   absolute;
    top:                        -7px;
    left:                       50%;
    transform:                  translateX(-50%);
    border-top-left-radius:     5px;
    border-top-right-radius:    5px;
    padding:                    0 8px;
    text-transform:             uppercase;
    line-height:                1.5;
    font-size:                  12px;
    font-weight:                bold;
    white-space:                nowrap;
    background-color:           #ddd;
}
.main-product:has(li.mnm_item) .quantity-buttons ul li label > span {
    display: block;
}
.main-product:has(li.mnm_item) .quantity-buttons ul li label > input + span {
    font-weight: bold;
}
.main-product:has(li.mnm_item) .quantity-buttons ul li label > span:last-child {
    font-size: 75%;
}
.main-product:has(li.mnm_item) .quantity-buttons ul li label input,
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label input {
    display: none;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label span {
    margin:     0;
    padding:    0;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label span.price {
    display: inline-flex;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label span.price del {
    margin-right:   0.25em;
    color:          #aaa;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label span.discounts {
    font-size:      14px;
    vertical-align: top;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label span.discounts span.discount {
    margin-left:        2px;
    border-radius:      5px;
    padding:            2px 6px;
    background-color:   #ddd;
}
.main-product:has(li.mnm_item) .quantity-buttons ul li label:hover .highlight,
.main-product:has(li.mnm_item) .quantity-buttons ul li label:has(input[checked]) .highlight,
.main-product:has(li.mnm_item) .quantity-buttons ul li label.hover-on-upsell-message .highlight,
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label:hover .highlight,
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label:has(input[checked]) .highlight,
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label:hover span.discounts span.discount,
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label:has(input[checked]) span.discounts span.discount {
    color:              #fff;
    background-color:   #6B8E23;
}
@media (max-width: 549px) {
    .main-product:has(li.mnm_item) .quantity-buttons ul li label,
    .main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label {
        padding: 5px;
    }
}
@media (max-width: 767px) {
    .main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul {
        flex-direction: column;
    }
    .main-product:has(li.mnm_item) .quantity-buttons ul li,
    .main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li {
        padding: 5px 0;
    }
    .main-product:has(li.mnm_item) .quantity-buttons ul li span.upsell-message {
        width: 90%;
    }
    .main-product:has(li.mnm_item) .quantity-buttons ul li label .highlight,
    .main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper div:not(.benefits) > ul > li label .highlight {
        top: -12px;
    }
}
@media (max-width: 992px) {
    .main-product:has(li.mnm_item) .quantity-buttons h2 {
        margin-bottom: 30px;
    }
}

/* Benefits. */
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart {
    display:        flex;
    flex-direction: column;
}
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart .benefits {
    margin: auto;
    width:  450px;
}
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart.fixed {
    position:           fixed;
    left:               0;
    bottom:             0;
    padding:            6px 10px 8px;
    width:              100%;
    z-index:            100;
    background-color:   #fff;
    box-shadow:         0px -3px 10px -3px rgba(0, 0, 0, 0.25);
}
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart.fixed .mnm_data {
    margin-bottom:  0;
    border-bottom:  0;
    padding-top:    4px;
    font-size:      14px;
}
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart.fixed .mnm_data p {
    margin-bottom: 5px !important;
}
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart.fixed .wcsatt-options-wrapper,
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart.fixed .wcsatt-options-wrapper .wcsatt-options-product-prompt {
    margin: 0;
}
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart.fixed .benefits ul {
    padding-top:    8px;
    font-size:      12px;
    line-height:    1.5;
}
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart.fixed .benefits ul.subscription li:not(.one-item.active):not(.two-items.active)::before,
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart.fixed .benefits ul.one-time-purchase li.one-time-purchase:not(.one-item.active):not(.two-items.active)::before {
    top: 0 !important;
}
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart.fixed .benefits ul li.one-item.active::before,
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart.fixed .benefits ul li.two-items.active::before,
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart.fixed .benefits ul.one-time-purchase li:not(.one-time-purchase)::before {
    top: -5px !important;
}
.main-product:has(li.mnm_item) .related-product .single_add_to_cart_button + .benefits {
    display: none;
}
.main-product:has(li.mnm_item) .related-product .benefits { /* Without .woocommerce-mix-and-match-add-to-cart, so it also applies to benefits on the top of the product page. */
    text-align: left;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper .benefits {
    border-bottom-right-radius: 5px;
    border-bottom-left-radius:  5px;
    width:                      90%;
    font-size:                  14px;
    background-color:           #ddd;
    user-select:                none;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper label:has(input[checked]) + .benefits {
    background-color: #6B8E2330;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper label.disabled + .benefits {
    opacity: 0.2;
}
.main-product:has(li.mnm_item) .related-product .benefits ul {
    display:                grid;
    grid-template-columns:  auto auto;
    padding:                20px 0 0 30px;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper .benefits ul {
    padding:            8px 0 10px 60px;
    justify-content:    unset;
}
.main-product:has(li.mnm_item) .related-product .benefits li {
    position:   relative;
    list-style: none;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper .benefits ul li {
    padding: 0 35px 0 0;
}
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper .benefits ul.subscription li.hide-for-subscription,
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper .benefits ul.one-time-purchase li.hide-for-one-time-purchase,
.main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper .benefits ul li.hide-in-payment-options {
    display: none;
}
.main-product:has(li.mnm_item) .related-product .benefits li strong {
    border-radius:      5px;
    padding:            2px 6px;
    color:              #fff;
    background-color:   #6B8E23;
}
.main-product:has(li.mnm_item) .related-product .benefits ul.subscription li:not(.one-item.active):not(.two-items.active)::before,
.main-product:has(li.mnm_item) .related-product .benefits ul.one-time-purchase li.one-time-purchase:not(.one-item.active):not(.two-items.active)::before {
    content:        '';
    position:       absolute;
    left:           -20px;
    top:            2px;
    width:          6px;
    height:         15px;
    border:         solid #6B8E23;
    border-width:   0 2px 2px 0;
    border-radius:  1px;
    transform:      rotate(45deg);
}
.main-product:has(li.mnm_item) .related-product .benefits ul li.one-item.active,
.main-product:has(li.mnm_item) .related-product .benefits ul li.two-items.active,
.main-product:has(li.mnm_item) .related-product .benefits ul.one-time-purchase li:not(.one-time-purchase) {
    opacity: 0.2;
}
/* .main-product:has(li.mnm_item) .related-product .benefits ul li.one-item.active::before,
.main-product:has(li.mnm_item) .related-product .benefits ul li.two-items.active::before,
.main-product:has(li.mnm_item) .related-product .benefits ul.one-time-purchase li:not(.one-time-purchase)::before {
    content:    '✖';
    position:   absolute;
    left:       -24px;
    top:        0;
    font-size:  18px;
    color:      red;
} */
@media (max-width: 767px) {
    .main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper .benefits {
        font-size: 14px;
    }
}
@media (max-width: 549px) {
    .main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper .benefits ul {
        padding: 8px 0 10px 40px;
    }
    /* .main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper .benefits ul {
        display:        flex;
        flex-direction: column;
        margin:         auto;
        width:          250px;
    }
    .main-product:has(li.mnm_item) .related-product .wcsatt-options-wrapper .benefits ul li {
        padding: 0;
    } */
    .main-product:has(li.mnm_item) .related-product .benefits ul li.one-item.active::before,
    .main-product:has(li.mnm_item) .related-product .benefits ul li.two-items.active::before,
    .main-product:has(li.mnm_item) .related-product .benefits ul.one-time-purchase li:not(.one-time-purchase)::before {
        top: -1px;
    }
}
 
/* Product title. */
.main-product:has(li.mnm_item) h1.product-title {
    font-weight: bold;
}

/* YITH Points & Rewards. */
.main-product:has(li.mnm_item) .related-product .yith-par-message {
    margin-bottom: 0 !important;
}

/* Mix and Match products. */
.main-product:has(li.mnm_item) > .container .row > div:nth-child(1),
.main-product:has(li.mnm_item) > .container .row > div:nth-child(2),
.main-product:has(li.mnm_item) > .container .row > div:nth-child(3),
.main-product:has(li.mnm_item) > .container .row > div:nth-child(4) .price,
.main-product:has(li.mnm_item) > .container .row > div:nth-child(4) .sale,
.main-product:has(li.mnm_item) > .container .row > div:nth-child(4) .availability,
.main-product:has(li.mnm_item) > .container .row > div:nth-child(4) .first-payment-date,
.main-product:has(li.mnm_item) > .container .row > div:nth-child(4) #ppcp-recaptcha-v2-container, /* PayPal recaptha. */
.main-product:has(li.mnm_item) > .container .row > div:nth-child(4) .product_meta,
.main-product:has(li.mnm_item) .product-tabs,
.main-product:has(li.mnm_item) .comment-section,
.main-product:has(li.mnm_item) .related-product .mnm_reset,
.main-product:has(li.mnm_item) .related-product .mnm_data .price,
.main-product:has(li.mnm_item) .related-product .mnm_message,
.main-product:has(li.mnm_item) .related-product .mnm_availability,
.main-product:has(li.mnm_item) .related-product .woocommerce-mix-and-match-add-to-cart .jws-quantity-wrap {
    display: none !important;
}
.main-product:has(li.mnm_item) {
    padding-bottom: 0;
}
.main-product:has(li.mnm_item) > .container .row > div:nth-child(4) {
    flex:         0 0 100%;
    max-width:    100%;
    text-align:   center;
}
.main-product:has(li.mnm_item) > .container .row > div:nth-child(4) .summary {
    margin-top: 0;
}
.main-product:has(li.mnm_item) > .container .row > div:nth-child(4) .woocommerce-product-details__short-description {
    margin-bottom:  2em;
    border-top:     unset !important;
    border-color:   #ddd;
    padding:        0 0 1.5em;
}
.main-product:has(li.mnm_item) .related-product {
    margin-top: 0;
    background: transparent;
}
.main-product:has(li.mnm_item) .related-product form.mnm_form {
    position:   relative;
    padding:    0;
}
.main-product:has(li.mnm_item) .related-product .summary-add-to-cart-form {
    text-align: center;
}
.main-product:has(li.mnm_item) .related-product ul.products {
    display: flex;
    padding: 0;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item {
    padding: 10px;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item > a {
    margin-top:     2px;
    font-weight:    bold;
    font-size:      14px;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .product-thumbnail a {
    display:    block;
    position:   relative;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .product-details {
    display:            flex;
    flex-direction:     column;
    justify-content:    space-between;
    margin:             0;
    height:             100%;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .product-details h2 {
    margin-bottom:  0;
    padding-bottom: 10px;
    font-size:      22px;
    line-height:    1;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .product-details h3 {
    margin-bottom:  0;
    padding-bottom: 10px;
    font-size:      18px;
    line-height:    1;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .product-details .price:has(.subscription-details) {
    display: none;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .product-details .price {
    margin-top: 8px;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .product-details .price > span {
    border:         1px solid #6b8e23;
    border-radius:  5px;
    padding:        4px 8px;
    color:          #6B8E23;
    font-weight:    bold;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .product-details span.nutritional-value {
    font-size:  14px;
    color:      #000;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .jws-quantity-wrap {
    margin-right:   0;
    max-width:      unset;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .jws-quantity-wrap span:not(.add-to-cart-overlay) {
    height:             auto;
    width:              auto;
    top:                0;
    border-radius:      0;
    padding:            8px;
    background-color:   #eee;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .jws-quantity-wrap span.add-to-cart-overlay {
    position:           absolute;
    top:                0;
    display:            flex;
    justify-content:    center;
    align-items:        center;
    border-radius:      10px;
    padding:            0 8px;
    width:              100%;
    height:             100%;
    line-height:        1;
    font-weight:        bold;
    color:              #fff;
    background-color:   #6B8E23;
    z-index:            1;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .jws-quantity-wrap span.add-to-cart-overlay.full {
    background-color:   #aaa;
    cursor:             not-allowed;
    user-select:        none;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .jws-quantity-wrap span.jws-qty-minus {
    left:                       0;
    border-top-left-radius:     10px;
    border-bottom-left-radius:  10px;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .jws-quantity-wrap span.jws-qty-plus {
    right:                      0;
    border-top-right-radius:    10px;
    border-bottom-right-radius: 10px;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .jws-quantity-wrap span.jws-qty-plus.full {
    opacity:    0.2;
    cursor:     not-allowed;
}
.main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .jws-quantity-wrap input {
    width:          150px;
    min-height:     40px;
    border-radius:  10px;
    border-color:   transparent;
    user-select:    none;
    cursor:         default;
}
.main-product:has(li.mnm_item) .related-product .mnm_data {
    display:            flex;
    justify-content:    center;
    margin-bottom:      2.5em;
    border-bottom:      1px solid #ddd;
    padding-bottom:     1em;
    padding-top:        2.5em;
}
.main-product:has(li.mnm_item) .related-product .mnm_data .mnm_price { /* This is needed so the slide down animation doesn't show. */
    display:        block !important;
    height:         22px !important;
    margin-bottom:  20px !important;
}
.main-product:has(li.mnm_item) .related-product .mnm_data .meals-text {
    color: #6B8E23;
}
@media (max-width: 549px) {
    body:has(li.mnm_item) footer .elementor-section:last-child {
        padding-bottom: 150px;
    }
    .main-product:has(li.mnm_item) .related-product ul.products li.mnm_item .product-details h3 {
        font-size: 16px;
    }
    .main-product:has(li.mnm_item) .related-product .summary-add-to-cart-form {
        margin-bottom: 1em;
    }
    .main-product:has(li.mnm_item) .related-product ul.products {
        flex-wrap: wrap;
    }
    .main-product:has(li.mnm_item) .related-product ul.products li {
        width: 50%;
    }
    .main-product:has(li.mnm_item) .related-product ul.products li:last-child:nth-child(odd) {
        width: 100%;
    }
    .main-product:has(li.mnm_item) .related-product ul.products li:last-child:nth-child(odd) .product-thumbnail {
        margin: auto;
        width:  50%;
    }
}

/* ATC button. */
.main-product:has(li.mnm_item) .related-product .single_add_to_cart_button {
    margin:             auto;
    border-radius:      10px;
    padding:            10px;
    width:              450px;
    background-color:   #6B8E23;
    color:              #fff;
    font-weight:        bold;
}
.main-product:has(li.mnm_item) .related-product .single_add_to_cart_button::after {
    display: none;
}
.main-product:has(li.mnm_item) .related-product .single_add_to_cart_button.disabled {
    cursor: default;
}
.main-product:has(li.mnm_item) .related-product .single_add_to_cart_button span {
    margin:         0 0 0 0.25em;
    vertical-align: unset;
    opacity:        1; /* This is needed so the loading class doesn't hide the price. */
}
@media (max-width: 549px) {
    .main-product:has(li.mnm_item) .related-product .single_add_to_cart_button {
        margin: 5px 0 0;
        width:  auto;
    }
}



/*  Product popup.
------------------------------------- */
.mfp-wrap .mfp-content {
    padding: 0 25px;
}
.mfp-wrap .mfp-content .woosq-popup {
    margin:         50px auto;
    width:          auto;
    max-width:      500px;
    max-height:     unset;
    border-radius:  15px;
}
.mfp-wrap .mfp-content .woosq-popup .mfp-close {
    margin: 10px 10px 0 0;
}
.mfp-wrap .mfp-content .woosq-popup .product {
    display: block !important;
}
.mfp-wrap .mfp-content .woosq-popup .product > div {
    width:  100% !important;
    height: auto !important;
}

/* Gallery. */
.mfp-wrap .mfp-content .woosq-popup .product:has(.blueberry) .thumbnails {
    background-color: #eae6fd;
}
.mfp-wrap .mfp-content .woosq-popup .product:has(.apple) .thumbnails {
    background-color: #ffe5d5;
}
.mfp-wrap .mfp-content .woosq-popup .product:has(.vanilla) .thumbnails {
    background-color: #fbf8ee;
}
.mfp-wrap .mfp-content .woosq-popup .product .thumbnails,
.mfp-wrap .mfp-content .woosq-popup .product .thumbnails .slick-track,
.mfp-wrap .mfp-content .woosq-popup .product .thumbnails .slick-track img {
    max-height: 500px;
}
.mfp-wrap .mfp-content .woosq-popup .product .thumbnails .slick-arrow.slick-prev::before {
    margin-left: 5px;
}
.mfp-wrap .mfp-content .woosq-popup .product .thumbnails .slick-arrow.slick-next::before {
    margin-right: -5px;
}
.mfp-wrap .mfp-content .woosq-popup .product .thumbnails .slick-dots li,
.mfp-wrap .mfp-content .woosq-popup .product .thumbnails .slick-dots li button {
    width:  auto;
    height: auto;
}
.mfp-wrap .mfp-content .woosq-popup .product .thumbnails .slick-dots li button {
    padding: 5px 8px;
}
.mfp-wrap .mfp-content .woosq-popup .product .thumbnails .slick-dots li.slick-active button::before {
    position:   unset;
    opacity:    1;
}
.mfp-wrap .mfp-content .woosq-popup .product .thumbnails .slick-dots li.slick-active button::after {
    display: none;
}

/* Highlighted ingredients. */
.mfp-wrap .mfp-content .woosq-popup .product .product-description .highlighted-ingredients {
    text-align: center;
}
.mfp-wrap .mfp-content .woosq-popup .product .product-description .highlighted-ingredients div {
    display:        inline-block;
    margin:         5px;
    border-radius:  25px;
    padding:        10px 20px;
}
.mfp-wrap .mfp-content .woosq-popup .product:has(.blueberry) .product-description .highlighted-ingredients div {
    color:              #fff;
    background-color:   #322c73;
}
.mfp-wrap .mfp-content .woosq-popup .product:has(.apple) .product-description .highlighted-ingredients div {
    color:              #fff;
    background-color:   #c2713a;
}
.mfp-wrap .mfp-content .woosq-popup .product:has(.vanilla) .product-description .highlighted-ingredients div {
    background-color: #f6e8cd;
}

/* Nutrition table. */
.mfp-wrap .mfp-content .woosq-popup .product .product-description h4 {
    padding:    5px;
    text-align: center;
}
.mfp-wrap .mfp-content .woosq-popup .product .product-description h5 {
    font-weight: bold;
}
.mfp-wrap .mfp-content .woosq-popup .product .product-description h5:first-of-type {
    text-align: center;
}
.mfp-wrap .mfp-content .woosq-popup .product .product-description h5:not(:first-of-type) {
    margin-top: 20px;
}
.mfp-wrap .mfp-content .woosq-popup .product .product-description h5.table-heading {
    text-align: left;
    font-size:  30px;
}
.mfp-wrap .mfp-content .woosq-popup .product .product-description h5.table-heading:not(:has(strong)) {
    font-weight: normal;
}
.mfp-wrap .mfp-content .woosq-popup .product .product-description section.ingredients-section table.vitamins-and-minerals th {
    font-weight: normal;
}
.mfp-wrap .mfp-content .woosq-popup .product:has(.blueberry) .product-description h4,
.mfp-wrap .mfp-content .woosq-popup .product:has(.blueberry) .product-description table,
.mfp-wrap .mfp-content .woosq-popup .product:has(.blueberry) .product-description table strong {
    color:              #fff;
    background-color:   #322c73;
}
.mfp-wrap .mfp-content .woosq-popup .product:has(.blueberry) .product-description h5.table-heading,
.mfp-wrap .mfp-content .woosq-popup .product:has(.blueberry) .product-description h5.table-heading strong {
    color: #322c73;
}
.mfp-wrap .mfp-content .woosq-popup .product:has(.apple) .product-description h4,
.mfp-wrap .mfp-content .woosq-popup .product:has(.apple) .product-description table,
.mfp-wrap .mfp-content .woosq-popup .product:has(.apple) .product-description table strong {
    color:              #fff;
    background-color:   #c2713a;
}
.mfp-wrap .mfp-content .woosq-popup .product:has(.apple) .product-description h5.table-heading,
.mfp-wrap .mfp-content .woosq-popup .product:has(.apple) .product-description h5.table-heading strong {
    color: #c2713a;
}
.mfp-wrap .mfp-content .woosq-popup .product:has(.vanilla) .product-description h4,
.mfp-wrap .mfp-content .woosq-popup .product:has(.vanilla) .product-description table,
.mfp-wrap .mfp-content .woosq-popup .product:has(.vanilla) .product-description table strong {
    background-color: #f6e8cd;
}
.mfp-wrap .mfp-content .woosq-popup .product:has(.vanilla) .product-description h5.table-heading {
    margin-bottom:      0;
    padding:            5px 10px;
    line-height:        40px;
    background-color:   #000;
}
.mfp-wrap .mfp-content .woosq-popup .product:has(.vanilla) .product-description h5.table-heading,
.mfp-wrap .mfp-content .woosq-popup .product:has(.vanilla) .product-description h5.table-heading strong {
    color: #f6e8cd;
}
.mfp-wrap .mfp-content .woosq-popup .product:has(.vanilla) .product-description table tr {
    border-color: #000;
}
@media (max-width: 499px) {
    .mfp-wrap .mfp-content .woosq-popup .product .product-description section.ingredients-section {
        overflow-x: scroll;
    }
}

/* CTA button. */
body.single-product .mfp-wrap .mfp-content .woosq-popup .product p:has(a) {
    display: none;
}
.mfp-wrap .mfp-content .woosq-popup .product p:has(a) {
    text-align: center;
}
.mfp-wrap .mfp-content .woosq-popup .product p a {
    display:        inline-block;
    padding:        10px 20px;
    border-radius:  50px;
    font-weight:    700;
    letter-spacing: 1px;
    font-size:      14px;
    text-transform: uppercase;
    color:          #fff;
    background:     #6B8E23;
}

/* Reviews. */
.mfp-wrap .mfp-content .woosq-popup .woosq-text:not(:has(.comment-section .container .woocommerce-Reviews)),
.mfp-wrap .mfp-content .woosq-popup .product .main-product > *:not(.comment-section),
.mfp-wrap .mfp-content .woosq-popup .product .main-product .comment-section .related-product,
.mfp-wrap .mfp-content .woosq-popup .product .main-product .comment-section .review-based > *:last-child,
.mfp-wrap .mfp-content .woosq-popup .product .main-product .comment-section .jws-reviewsAggregate-controls-item {
    display: none;
}
.mfp-wrap .mfp-content .woosq-popup .product .main-product {
    padding-bottom: 0;
}
.mfp-wrap .mfp-content .woosq-popup .product .main-product .comment-section {
    margin: 0;
}
.mfp-wrap .mfp-content .woosq-popup .product .main-product .comment-section .review-based > *:first-child {
    flex:       0 0 100%;
    max-width:  100%;
}
.mfp-wrap .mfp-content .woosq-popup .product .main-product .comment-section .review-based .product-reviews {
    text-align: center;
}
.mfp-wrap .mfp-content .woosq-popup .product .main-product .comment-section .review-based .product-reviews .ratings-list {
    border:     0;
    max-width:  251px;
}
.mfp-wrap .mfp-content .woosq-popup .product .main-product .comment-section .tabs_review_questios h5 {
    margin-right: 10px;
}



/*  Checkout page.
------------------------------------- */
/* Coupon for a free shaker. */
body.woocommerce-checkout .wfacp_coupon_field_msg .wfacp_single_coupon_msg:has(a[data-coupon="subscription-product"]),
body.woocommerce-checkout .woocommerce-message .wfacp_coupon_success:has(a[data-coupon="subscription-product"]),
body.woocommerce-checkout .wfacp_collapsible_order_summary_wrap .woocommerce-message:has(.wfacp_coupon_success:only-child a[data-coupon="subscription-product"]),
body.woocommerce-checkout .cart-discount.coupon-subscription-product {
    display: none;
}

/* Notices. */
body.woocommerce-checkout .wfacp-notices-wrapper { /* Notices on top of the checkout. */
    display: none;
}
body.woocommerce-checkout .wfacp_mini_cart_start_h .checkout_coupon .wfacp_coupon_msg .woocommerce-message {
    margin:     0 !important;
    min-height: 0 !important;
}
body.woocommerce-checkout .wfacp_collapsible_order_summary_wrap .wfacp_coupon_notices > * {
    margin: 12px 0 0 !important;
}
@media (min-width: 1024px) {
    body.woocommerce-checkout .woocommerce-message > *,
    body.woocommerce-checkout .wfacp_coupon_notices > * {
        margin: 8px 0 0 !important;
    }
}

/* Colored background. */
@media (max-width: 1023px) {
    body.woocommerce-checkout .elementor-section {
        background-image: none !important;
    }
}

/* Theme elements. */
body.woocommerce-checkout .backToTop,
body.woocommerce-checkout .jws-form-login-popup {
    display: none;
}
body.woocommerce-checkout .woocommerce-input-wrapper:has(.jws-error) input {
    border-color: var(--e-global-color-94f483f) !important;
}
body.woocommerce-checkout .jws-error a,
body.woocommerce-checkout .jws-error a strong {
    font-size:      12px !important;
    line-height:    1 !important;
    color:          #e15334 !important;
    font-weight:    normal;
}
body.woocommerce-checkout .jws-error a {
    display:    block;
    margin-top: 8px !important;
}

/* Restore removed products. */
body.woocommerce-checkout .wfacp_product_restore_wrap {
    display: none;
}

/* Collapsible order summary. */
body.woocommerce-checkout .wfacp_collapsible_order_summary_wrap .wfacp_mb_cart_accordian {
    padding: 16px 15px !important;
}
body.woocommerce-checkout .wfacp_collapsible_order_summary_wrap table th {
    color: #000 !important;
}

/* Order summary. */
body.woocommerce-checkout .wfacp_order_summary_container img {
    background-color: #fff;
}
body.woocommerce-checkout .wfacp_order_summary_container .subscription-switch-direction {
    display: none;
}
body.woocommerce-checkout .wfacp_order_summary_container .variation {
    display: flex;
}
body.woocommerce-checkout .wfacp_order_summary_container .variation > * {
    align-self: center;
    margin:     0 !important;
}
body.woocommerce-checkout .wfacp_order_summary_container .variation span {
    display:            inline-block !important;
    margin:             0 0 0 4px;
    border-radius:      3px;
    padding:            4px 8px;
    line-height:        1 !important;
    font-size:          12px !important;
    color:              #fff !important;
    background-color:   #6B8E23;
}
body.woocommerce-checkout .wfacp_order_summary_container .shop_table:not(:has(.shipping_total_fee)) .cart-subtotal th,
body.woocommerce-checkout .wfacp_order_summary_container .shop_table:not(:has(.shipping_total_fee)) .cart-subtotal td {
    padding-bottom: 16px !important;
}
body.woocommerce-checkout .wfacp_order_summary_container .order-total td {
    padding: 12px 0 10px 12px !important;
}
body.woocommerce-checkout .wfacp_order_summary_container [class*="coupon"] td {
    text-transform: none !important;
}
body.woocommerce-checkout .wfacp_order_summary_container [class*="coupon"] .wfacp_coupon_code {
    text-transform: uppercase;
}
body.woocommerce-checkout .wfacp_order_summary_container [class*="coupon"] a.woocommerce-remove-coupon {
    color: #6B8E23 !important;
}

/* Upsell. */
body.woocommerce-checkout .wfob_bump_wrapper .bwf_display_flex > .wfob_pro_txt_wrap {
    display: flex !important;
}
body.woocommerce-checkout .wfob_bump_wrapper .bwf_display_flex > .wfob_pro_txt_wrap > .wfob_pro_txt_wrap {
    padding-left: 10px;
}
body.woocommerce-checkout .wfob_bump_wrapper .wfob_price_container {
    margin-bottom: 8px !important;
}
body.woocommerce-checkout .wfob_bump_wrapper label {
    width:  auto !important;
    cursor: text !important;
}
body.woocommerce-checkout form.checkout .wfob_bump_wrapper {
    margin: 0 0 16px !important;
}

/* Mobile coupon code field. */
@media (min-width: 993px) {
    body.woocommerce-checkout .wfacp-section:has(.wfacp_woocommerce_form_coupon) {
        display: none;
    }
}
body.woocommerce-checkout .wfacp-section:has(.wfacp_woocommerce_form_coupon) .wfacp_coupon_field_box {
    margin-top: 0 !important;
}
body.woocommerce-checkout .wfacp-section:has(.wfacp_woocommerce_form_coupon) .wfacp_coupon_field_box button.wfacp-coupon-field-btn {
    padding:    10px 20px !important;
    min-height: 46px !important;
}

/* Shipping methods. */
body.woocommerce-checkout .wfacp_shipping_options .border > label {
    display: none !important;
}
body.woocommerce-checkout .wfacp_shipping_options .wfacp_recuring_shiping_count_one ul li input[type="radio"] {
    display: block !important;
}
body.woocommerce-checkout .wfacp_shipping_options .wfacp_recuring_shiping_count_one ul li label {
    padding-left: 25px !important;
}
body.woocommerce-checkout .wfacp_shipping_options .wfacp_recuring_shiping_count_one ul li:has(input.shipping_method[id*="free"]) .wfacp_shipping_price {
    display: none;
}

/* Payment options. */
body.woocommerce-checkout #payment ul.payment_methods li input[type="radio"] {
    margin-right: 6px !important;
}

/* GLS parcel locker info section. */
body.woocommerce-checkout #gls-pickup-info {
    margin-bottom:  15px !important;
    padding:        15px 20px !important;
    border:         1px solid rgba(0, 0, 0, 0.1) !important;
    border-radius:  10px !important;
}

/* Klaviyo newsletter checkbox. */
body.woocommerce-checkout #kl_newsletter_checkbox_field {
    clear: both;
}



/*  Order received page.
------------------------------------- */
/* Colored background. */
@media (max-width: 1023px) {
    body.woocommerce-order-received .elementor-section {
        background-image: none !important;
    }
}

/* Theme elements. */
body.woocommerce-order-received .jws-form-login-popup {
    display: none;
}

/* Customer details. */
body.woocommerce-order-received .elementor-customer-details-wrapper a {
    color: #6B8E23 !important;
}
body.woocommerce-order-received .elementor-customer-details-wrapper p {
    color: #000;
}
body.woocommerce-order-received .elementor-customer-details-wrapper .wffn_wfty_wc_thankyou * {
    font-size:      14px;
    font-weight:    400;
}
body.woocommerce-order-received .elementor-customer-details-wrapper .wffn_wfty_wc_thankyou p:not(:first-of-type) {
    margin: 0;
}
body.woocommerce-order-received .elementor-customer-details-wrapper .wffn_wfty_wc_thankyou p:first-of-type {
    margin-bottom: 0;
}

/* Order details. */
body.woocommerce-order-received .elementor-order-details-wrapper .wfty_p_img {
    z-index: 1; /* This is needed so the link is clickable on the whole image. */
}
body.woocommerce-order-received .elementor-order-details-wrapper img {
    background-color: #fff;
}
body.woocommerce-order-received .elementor-order-details-wrapper .wfty_info p {
    display:            inline-block !important;
    margin:             0 0 0 2px;
    border-radius:      3px;
    padding:            4px 8px;
    line-height:        1 !important;
    font-size:          12px;
    color:              #fff !important;
    background-color:   #6B8E23;
}
body.woocommerce-order-received .elementor-order-details-wrapper .wfty_leftDiv,
body.woocommerce-order-received .elementor-order-details-wrapper .wfty_rightDiv {
    padding: 12px 0 !important;
}
body.woocommerce-order-received .elementor-order-details-wrapper .wfty_pro_list hr {
    display: none;
}
body.woocommerce-order-received .elementor-order-details-wrapper .wfty_pro_list:last-of-type .wfty_leftDiv {
    padding-bottom: 20px !important;
}
body.woocommerce-order-received .elementor-order-details-wrapper .wfty_pro_list .mnm_child_item_arrow_wrap {
    font-size: 80% !important;
}
body.woocommerce-order-received .elementor-order-details-wrapper .wfty_pro_list .mnm_child_item_arrow_wrap::before {
    font-family:        'WC-Mix-And-Match';
    content:            '\f148';
    display:            inline-block;
    margin-right:       0.5em;
    font-weight:        400;
    font-variant:       normal;
    text-transform:     none;
    line-height:        1;
    text-decoration:    none;
    opacity:            0.25;
    transform:          rotate(90deg) scaleX(1);
}
body.woocommerce-order-received .elementor-order-details-wrapper table tr:not(:last-child) {
    border: none;
}
body.woocommerce-order-received .elementor-order-details-wrapper:not(:has(.wfty_subscription)) table tr:last-child {
    border-bottom: 0;
}
body.woocommerce-order-received .elementor-order-details-wrapper .wfty_order_details ~ * a, /* In case there are links or texts on the bottom. */
body.woocommerce-order-received .elementor-order-details-wrapper .wfty_order_details ~ a {
    color: #6B8E23;
}
body.woocommerce-order-received .elementor-order-details-wrapper .wfty_order_details ~ p {
    margin-top: 0;
}
body.woocommerce-order-received .elementor-order-details-wrapper .wfty_order_details ~ [class*="wt_pklist_invoice"] {
    display: none;
}

/* BACS details. */
body.woocommerce-order-received .woocommerce-bacs-bank-details {
    clear:      both;
    padding:    20px 0;
}
body.woocommerce-order-received .woocommerce-bacs-bank-details * {
    color: #000 !important;
}

/* Subscription section. */
@media (min-width: 601px) {
    body.woocommerce-order-received .wfty_subscription td.subscription-id {
        display: table-cell !important;
    }
}
body.woocommerce-order-received .wfty_subscription td.subscription-id a strong {
    color: #6B8E23 !important;
}
body.woocommerce-order-received .wfty_subscription td.subscription-actions a {
    border-radius: 4px !important;
}

/* GLS parcel locker info section. */
body.woocommerce-order-received .woocommerce-order-details > div:not(:has(br)) {
    display: none;
}
body.woocommerce-order-received .woocommerce-order-details > div {
    padding:        1rem 1.5rem !important;
    border:         1px solid rgba(0, 0, 0, 0.1) !important;
    border-radius:  0.25rem;
}
body.woocommerce-order-received .woocommerce-order-details > div br:last-child {
    display: none;
}



/*  WebToffee PDF Invoices.
------------------------------------- */
.wt_pklist_invoice_print,
.wt_pklist_invoice_print ~ br {
    display: none !important;
}



/*  My account page.
------------------------------------- */
body.woocommerce-account .woocommerce {
    padding: 50px 15px 75px;
}
body.woocommerce-account .woocommerce::after {
    content:    '';
    display:    block;
    clear:      both;
}
body.woocommerce-account .woocommerce p:empty {
    display: none;
}
body.woocommerce-account .woocommerce mark {
    background-color: #fdd9bf;
}
body.woocommerce-account .woocommerce header:not(.title),
body.woocommerce-account .woocommerce fieldset:not(.wc-payment-form) {
    margin-top: 3em;
}
body.woocommerce-account .woocommerce fieldset legend {
    margin-bottom: 20px;
}
@media (max-width: 767px) {
    body.woocommerce-account #my-account-menu {
        float:          none !important;
        margin-right:   0 !important;
        width:          100%;
        margin-bottom:  25px;
    }
    body.woocommerce-account .woocommerce-MyAccount-content {
        float: none !important;
        width: 100% !important;
    }
}

/* Lost password pages. */
body.woocommerce-account form.lost_reset_password {
    max-width: unset;
}
body.woocommerce-account form.lost_reset_password p:has(button.button) {
    clear: both;
}

/* YITH Customize My Account Page. */
body.woocommerce-account .woocommerce .user-profile .user-avatar::after { /* User profile. */
    background-color: #ff7043;
}
body.woocommerce-account .woocommerce .user-profile .user-avatar img {
    border-radius: 10px;
}
body.woocommerce-account .woocommerce .user-profile .user-info .logout a {
    border-radius: 5px;
}
body.woocommerce-account .woocommerce .yith-wcmap-banner { /* Banner. */
    flex:           0 1 200px;
    border-color:   #000;
    border-radius:  10px;
    padding:        0;
}
body.woocommerce-account .woocommerce .yith-wcmap-banner a {
    padding:    25px;
    height:     100%;
    color:      #000;
}
body.woocommerce-account .woocommerce .yith-wcmap-banner a i {
    font-size: 50px;
}
body.woocommerce-account .woocommerce .yith-wcmap-banner a h3 {
    line-height: 1.5;
}
body.woocommerce-account .woocommerce .yith-wcmap-banner a .banner-counter {
    background-color: #ff7043;
}
@media (min-width: 768px) and (max-width: 972px) {
    body.woocommerce-account .woocommerce .user-profile .user-avatar {
        margin-bottom: 15px;
    }
}

/* Menu on the left. */
body.woocommerce-account .woocommerce ul.myaccount-menu > li:has(.active),
body.woocommerce-account.woocommerce-view-order .woocommerce ul.myaccount-menu > li:has(.yith-orders),
body.woocommerce-account.woocommerce-view-subscription .woocommerce ul.myaccount-menu > li:has(.yith-woo-subscription) {
    border-color: var(--ywcmap-items-border-color-hover) !important;
}
body.woocommerce-account .woocommerce ul.myaccount-menu li p {
    margin: 0;
}
body.woocommerce-account .woocommerce ul.myaccount-menu li .item-icon {
    display: inline-block !important;
}
body.woocommerce-account .woocommerce ul.myaccount-menu ul.myaccount-submenu li:first-child p {
    padding-top: 0;
}

/* Select2 dropdown. */
body.woocommerce-account .select2-container .select2-selection--single,
body.woocommerce-account .select2-container .select2-selection--multiple {
    border-radius:  10px;
    border-color:   #aaa;
}
body.woocommerce-account .select2-container .select2-selection__arrow {
    top:    -1px;
    right:  -5px;
}
body.woocommerce-account .select2-dropdown {
    border-bottom-left-radius:  10px;
    border-bottom-right-radius: 10px;
}
body.woocommerce-account .select2-dropdown .select2-search__field {
    border-radius:  10px;
    padding:        0 15px;
}

/* Forms. */
body.woocommerce-account .woocommerce form em {
    color: #BDBDBD;
}
body.woocommerce-account .woocommerce form:not(#ywpar-share-points) input {
    margin:         0 !important;
    border-radius:  10px;
}
body.woocommerce-account .woocommerce form p:has(button) {
    margin-top: 0;
}
body.woocommerce-account .woocommerce form button {
    height: 52px !important;
}
body.woocommerce-account .woocommerce form button.show-password-input {
    position:           absolute;
    margin:             0;
    min-width:          auto;
    height:             auto !important;
    background-color:   transparent;
}
body.woocommerce-account .woocommerce form button:not(.show-password-input) {
    margin:             0;
    border-radius:      10px;
    padding:            16px 35px;
    background-color:   #ff7043 !important;
}

/* Orders table. */
body.woocommerce-account .woocommerce table.shop_table a.woocommerce-button { /* List of all orders. */
    display:    block;
    margin:     0 !important;
    padding:    0 !important;
}
body.woocommerce-account .woocommerce table.shop_table td:not(.woocommerce-orders-table__cell-order-actions) a.woocommerce-button {
    text-align: left;
}
body.woocommerce-account .woocommerce h2.woocommerce-order-details__title { /* On the order page. */
    text-align: left;
}
body.woocommerce-account .woocommerce table.order_details tr th,
body.woocommerce-account .woocommerce table.order_details tr td {
    padding: 15px 0.4em;
}
body.woocommerce-account .woocommerce table.order_details {
    margin-bottom: 20px;
}
body.woocommerce-account .woocommerce table.order_details ul.wc-item-meta li p {
    display:    inline-block;
    margin:     0;
}
body.woocommerce-account .woocommerce .woocommerce-customer-details p {
    margin: 0;
}
@media (max-width: 767px) {
    body.woocommerce-account .woocommerce table.woocommerce-orders-table tr th { /* List of all orders. */
        padding-top:    20px;
        padding-left:   20px;
        padding-right:  20px;
    }
    body.woocommerce-account:not(.woocommerce-view-subscription) .woocommerce table.woocommerce-orders-table tr td {
        padding-left:   20px;
        padding-right:  20px;
    }
    body.woocommerce-account .woocommerce table.woocommerce-orders-table tr td:last-child {
        padding-bottom: 20px;
    }
    body.woocommerce-account .woocommerce table.woocommerce-orders-table .woocommerce-orders-table__cell-order-number {
        display: block;
    }
    body.woocommerce-account .woocommerce table.woocommerce-orders-table p {
        margin: 0;
    }
    body.woocommerce-account .woocommerce table.woocommerce-orders-table tr:nth-child(2n) th,
    body.woocommerce-account .woocommerce table.woocommerce-orders-table tr:nth-child(2n) td {
        background-color: rgba(0, 0, 0, 0.025);
    }
}
@media (min-width: 768px) {
    body.woocommerce-account .woocommerce table.woocommerce-orders-table tbody th,
    body.woocommerce-account .woocommerce table.woocommerce-orders-table tbody td {
        padding: 15px 0.4em;
    }
}

/* Subscription table. */
body.woocommerce-account .woocommerce table.my_account_subscriptions tr td.woocommerce-orders-table__cell-subscription-actions a.view { /* List of all subscriptions. */
    display: none;
}
body.woocommerce-account .woocommerce table.my_account_subscriptions tr td.woocommerce-orders-table__cell-subscription-actions a.view-edit {
    padding:            5px 10px !important;
    border-radius:      5px;
    text-align:         center;
    color:              #fff;
    background-color:   #ff7043;
}
body.woocommerce-account .woocommerce .woocommerce-MyAccount-content:has(.subscription_details) table.shop_table { /* On the subscription page. */
    margin-bottom: 3em;
}
body.woocommerce-account .woocommerce table.subscription_details tr th,
body.woocommerce-account .woocommerce table.subscription_details tr td {
    padding: 15px 0.4em;
}
body.woocommerce-account .woocommerce table.subscription_details a.change_payment_method {
    display: none;
}
body.woocommerce-account .woocommerce table.subscription_details a.subscription_renewal_early {
    display: inline-block;
}
body.woocommerce-account .woocommerce table.subscription_details a.subscription_renewal_early,
body.woocommerce-account .woocommerce table.order_details a.wcs-switch-link {
    padding:            5px 10px !important;
    border-radius:      5px;
    text-align:         center;
    color:              #fff;
    background-color:   #ff7043;
}
@media (max-width: 767px) {
    body.woocommerce-account .woocommerce table.my_account_subscriptions tr td:first-child { /* List of all subscriptions. */
        padding-top:    20px;
        padding-left:   20px;
        padding-right:  20px;
    }
    body.woocommerce-account .woocommerce table.my_account_subscriptions tr td {
        padding-left:   20px;
        padding-right:  20px;
    }
    body.woocommerce-account .woocommerce table.my_account_subscriptions tr td:last-child {
        padding-bottom: 20px;
    }
    body.woocommerce-account .woocommerce table.my_account_subscriptions .woocommerce-orders-table__cell-subscription-id {
        text-align: left !important;
    }
    body.woocommerce-account .woocommerce table.my_account_subscriptions .woocommerce-orders-table__cell-subscription-id::before {
        display: none;
    }
    body.woocommerce-account .woocommerce table.my_account_subscriptions .woocommerce-orders-table__cell-subscription-actions {
        text-align: right !important;
    }
}

/* Subscription renewal popup. */
body.woocommerce-account .woocommerce div[id*="wcs-early-renewal-modal"] {
    display: none;
}
body.woocommerce-account .woocommerce div[id*="wcs-early-renewal-modal"].open { /* This and above is just so it doesn't show subscription renewal popup on page load. */
    display: flex;
}
body.woocommerce-account .woocommerce div[id*="wcs-early-renewal-modal"] header {
    margin: 0;
}
body.woocommerce-account .woocommerce div[id*="wcs-early-renewal-modal"] header button.close:hover {
    color: #000;
}
body.woocommerce-account .woocommerce div[id*="wcs-early-renewal-modal"] p.wcs_early_renew_modal_note br,
body.woocommerce-account .woocommerce div[id*="wcs-early-renewal-modal"] p.wcs_early_renew_modal_note a {
    display: none;
}
body.woocommerce-account .woocommerce div[id*="wcs-early-renewal-modal"] table.shop_table {
    margin-bottom: 1em !important;
}
body.woocommerce-account .woocommerce div[id*="wcs-early-renewal-modal"] a#early_renewal_modal_submit {
    margin:             0.5em 0;
    border-radius:      10px;
    padding:            16px 35px;
    color:              #fff;
    background-color:   #ff7043;    
}

/* Fields. */
body.woocommerce-account .woocommerce p.woocommerce-form-row--first,
body.woocommerce-account .woocommerce p.woocommerce-form-row--last {
    width: 50%;
}
body.woocommerce-account .woocommerce p.woocommerce-form-row--first {
    padding-right: 5px;
}
body.woocommerce-account .woocommerce p.woocommerce-form-row--last {
    padding-left: 5px;
}

/* Addresses table. */
body.woocommerce-account .woocommerce .woocommerce-customer-details .woocommerce-column,
body.woocommerce-account .woocommerce .woocommerce-Addresses .woocommerce-Address {
    margin: 0;
}
body.woocommerce-account .woocommerce .woocommerce-customer-details .woocommerce-column address,
body.woocommerce-account .woocommerce .woocommerce-Addresses .woocommerce-Address address {
    border-radius:  10px;
    margin-top:     20px;
}
body.woocommerce-account .woocommerce .woocommerce-address-fields p[id*="email"] {
    margin-bottom: 0;
}
body.woocommerce-account .woocommerce .woocommerce-address-fields p[id*="address_1"] {
    margin-bottom: 10px;
}
body.woocommerce-account .woocommerce .woocommerce-address-fields p[id*="address_2"] {
    margin-top: 10px;
}
body.woocommerce-account .woocommerce .woocommerce-address-fields p[id*="city"],
body.woocommerce-account .woocommerce .woocommerce-address-fields p[id*="state"],
body.woocommerce-account .woocommerce .woocommerce-address-fields p[id*="postcode"] {
    width: 100% !important;
}

/* Notices. */
body.woocommerce-account .woocommerce .woocommerce-error,
body.woocommerce-account .woocommerce .woocommerce-info {
    border-radius:  10px;
    color:          #000;
}
body.woocommerce-account.woocommerce-orders .woocommerce .woocommerce-info,
body.woocommerce-account .woocommerce .no_subscriptions,
body.woocommerce-account.woocommerce-payment-methods .woocommerce .woocommerce-info {
    background-color: #fdd9bf;
}
body.woocommerce-account .woocommerce .woocommerce-error {
    background-color: #ffd3d3;
}
body.woocommerce-account .woocommerce .woocommerce-error li:not(.cart-empty)::before {
    margin: -2px 4px 0 0;
    color:  red;
}
body.woocommerce-account .woocommerce .woocommerce-error li a {
    float: right;
}
body.woocommerce-account.woocommerce-orders .woocommerce .woocommerce-info::before,
body.woocommerce-account .woocommerce .no_subscriptions::before,
body.woocommerce-account.woocommerce-payment-methods .woocommerce .woocommerce-info::before {
    content:        '\E814';
    font-family:    'jws_icon';
    font-size:      22px;
    font-weight:    bold;
    margin-right:   2px;
    display:        inline-block;
    vertical-align: middle;
    margin-top:     -4px;
    color:          #ff7043;
}

/* Payment methods. */
body.woocommerce-account .woocommerce .woocommerce-Payment ul {
    padding:        0;
    list-style:     none;
}
body.woocommerce-account .woocommerce .woocommerce-Payment ul li label {
    margin-left: 5px;
}
body.woocommerce-account .woocommerce .woocommerce-Payment ul li label img {
    position:   relative;
    top:        -1px;
}

/* YITH Points & Rewards. */
body.woocommerce-account.woocommerce-points-and-rewards #history table.ywpar_points_rewards .ywpar_points_rewards-order {
    display: none;
}
body.woocommerce-account.woocommerce-points-and-rewards #ywpar_banner {
    border-radius:  10px;
    padding:        40px;
}
body.woocommerce-account.woocommerce-points-and-rewards #ywpar_banner h3 {
    font-size: 31.25px;
}
body.woocommerce-account.woocommerce-points-and-rewards #share_points > p:first-of-type {
    display: none;
}
body.woocommerce-account.woocommerce-points-and-rewards #share_points form {
    padding-top: 10px;
}
body.woocommerce-account.woocommerce-points-and-rewards #share_points p {
    margin-bottom: 20px;
}
body.woocommerce-account.woocommerce-points-and-rewards .ywpar_points_rewards th.ywpar_points_rewards-points {
    text-align: center;
}
body.woocommerce-account.woocommerce-points-and-rewards form#ywpar-share-points input#ywpar_share_points_to_share {
    margin:     0 5px;
    padding:    0 10px;
    min-width:  60px;
    max-width:  60px;
}
body.woocommerce-account.woocommerce-points-and-rewards form#ywpar-share-points input#ywpar_share_points_to_share ~ span {
    text-transform: lowercase;
}
body.woocommerce-account.woocommerce-points-and-rewards form#ywpar-share-points input#ywpar-share-points__submit {
    margin:             10px;
    border-radius:      10px;
    border:             0;
    padding:            10px 10px 8px;
    font-size:          14px;
    letter-spacing:     1px;
    font-weight:        bold;
    color:              #fff;
    background-color:   #ff7043;
    text-transform:     uppercase;
    vertical-align:     middle;
}
@media (max-width: 767px) {
    body.woocommerce-account.woocommerce-points-and-rewards #ywpar_banner,
    body.woocommerce-account.woocommerce-points-and-rewards #share_points {
        padding: 20px;
    }
    body.woocommerce-account.woocommerce-points-and-rewards #share_points table.ywpar_points_rewards {
        background-color: #fff;
    }
    body.woocommerce-account.woocommerce-points-and-rewards #history table.ywpar_points_rewards tr td:first-child,
    body.woocommerce-account.woocommerce-points-and-rewards #share_points table.ywpar_points_rewards tr td:first-child {
        padding-top:    20px !important;
        padding-left:   20px !important;
        padding-right:  20px !important;
    }
    body.woocommerce-account.woocommerce-points-and-rewards #history table.ywpar_points_rewards tr td,
    body.woocommerce-account.woocommerce-points-and-rewards #share_points table.ywpar_points_rewards tr td,
    body.woocommerce-account.woocommerce-points-and-rewards #share_points table.ywpar_points_rewards tr td.ywpar-share-points-code {
        padding:    0.4em 20px !important;
        text-align: right !important;
    }
    body.woocommerce-account.woocommerce-points-and-rewards #share_points table.ywpar_points_rewards tr td.ywpar-share-points-code #ywpar-copy-to-clipboard-wrapper {
        margin-left:    auto;
        max-width:      175px;
    }
    body.woocommerce-account.woocommerce-points-and-rewards #history table.ywpar_points_rewards tr td:last-child,
    body.woocommerce-account.woocommerce-points-and-rewards #share_points table.ywpar_points_rewards tr td:last-child {
        padding-bottom: 20px !important;
    }
    body.woocommerce-account.woocommerce-points-and-rewards #history table.ywpar_points_rewards td.ywpar_points_rewards-points span,
    body.woocommerce-account.woocommerce-points-and-rewards #share_points table.ywpar_points_rewards td.ywpar_points_rewards-points span {
        display:        inline-block !important;
        margin-right:   10px;
    }
}

/* YITH Affiliates. */
body.woocommerce-account .yith-wcaf {
    padding: 0;
}
body.woocommerce-account .yith-wcaf .become-an-affiliate-form {
    margin:     0;
    max-width:  100%;
}