/**
 * Theme Name: Recogen v2024
 * Description: Blocksy Child theme
 * Author: Atelier Labo
 * Template: blocksy
 * Text Domain: blocksy
 */
:root {
    --color-black: #333333;
    --color-gray: #eeeeee;
    --color-border-light-gray: #dddddd;
    --color-border-gray: #aaaaaa;
    --color-red: #DA2025;
    --color-green: #00A950;
    --color-blue: #004B8D;
    --color-light-blue: #3BABD8;
    --color-yellow: #FFCE08;
    --gap1: 36px;
    --gap2: calc(var(--gap1)*2);
    --gap24: calc(var(--gap1)/3*2);
}

/* select, textarea, input[type=url], input[type=tel], input[type=text], input[type=time], input[type=date], input[type=datetime], input[type=datetime-local], input[type=email], input[type=number], input[type=search], input[type=password], fieldset .wc-stripe-elements-field, .ff-inherit-theme-style .ff-el-form-control:not([size]):not([multiple]) {
    height: auto;
} */
.flux-checkout .woocommerce form p.form-row>.woocommerce-input-wrapper>strong,
.flux-checkout .woocommerce form p.form-row input[type=email],
.flux-checkout .woocommerce form p.form-row input[type=password],
.flux-checkout .woocommerce form p.form-row input[type=tel],
.flux-checkout .woocommerce form p.form-row input[type=text],
.flux-checkout .woocommerce form p.form-row select,
.flux-checkout .woocommerce form p.form-row textarea {
    height: auto;
}

.ct-container-fluid {
    --theme-container-edge-spacing: calc(100vw - 72px);
}

@media (min-width: 1000px) {
    .ct-container-fluid {
        --theme-container-edge-spacing: calc(100vw - 72px);
    }

    footer .ct-container-fluid {
        --theme-container-edge-spacing: calc(100vw - 144px);
    }
}

.flux-cart-image img {
    height: auto !important;
}

.flux-checkout__content-right #order_review tr.cart_item td.product-name,
.flux-step #order_review tr.cart_item td.product-name {
    font-size: 1.1em;
}

.demo_store:before {
    content: '';
}

.demo_store {
    font-size: 12px;
    text-align: center;
    line-height: 1.3em;
    padding-inline: 12px 36px;
    font-weight: 400;
}

.demo_store .woocommerce-store-notice__dismiss-link {
    background-color: transparent;
    width: 14px;
    height: 14px;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
}

.demo_store .woocommerce-store-notice__dismiss-link:before {
    font-size: 24px;
}

.footer-accepted-payment img {
    height: 16px !important;
    width: auto !important;
    display: block;
}

footer .widget-menu {
    font-size: 14px;
    font-weight: 500;
    row-gap: 1em;
    display: flex;
    flex-direction: column;
}

footer .menu-horizontal .widget-menu {
    font-weight: 300;
    text-align: right;
    flex-direction: row;
    column-gap: 1em;
    align-items: center;
    justify-content: end;
}

footer .widget-title {
    font-size: 14px;
    font-weight: 500;
}

.product-list .widget-menu {
    font-weight: 300;
    row-gap: 0.6em;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 36px;
    grid-row-gap: 10px;
}

.ct-footer [data-row]>div {
    --columns-gap: 72px;
}

[data-footer*="type-1"] .ct-footer [data-row*="middle"]>div {
    display: flex;
}

.ct-footer [data-column=widget-area-1] {
    flex-basis: 50%;
}

.ct-footer .ct-widget.footer-icons {
    margin-top: 1em;
}

.footer-icons .textwidget p {
    display: flex;
    gap: 24px;
}

.footer-icons a {
    display: block;
}

.carousel {
    width: 100%;
}

.carousel .carousel-box .banner {
    display: block;
}

.carousel .carousel-box .banner img {
    display: block;
    width: 100%;
}

.carousel .carousel-box:not(.slick-initialized) {
    position: relative;
}

.carousel .carousel-box:not(.slick-initialized)>.banner {
    position: absolute;
    top: 0;
    left: 0;
    background-color: #eeeeee;
    width: 100%;
    z-index: 2;
    visibility: hidden;
}

.product-grid {
    display: flex;
    flex-wrap: wrap;
    --grid-col: 4;
    gap: var(--gap2);
    --grid-gap: var(--gap2);
}

.product-grid .product {
    display: flex;
    flex-direction: column;
    gap: calc(var(--gap1)/2);
    justify-content: stretch;
    flex-basis: calc((99% - (var(--gap2)*(var(--grid-col) - 1)))/var(--grid-col) - 1px);
    text-align: center;
    overflow: hidden;
}

.product-grid .product .product-top {
    flex-basis: 100%;
    display: flex;
    flex-direction: column;
    gap: calc(var(--gap1)/2);
}

.product-grid .product .product-thumbnail {}

.product-grid .product .product-thumbnail img {
    display: block;
    width: 100%;
    margin: 0 auto;
}

.product-grid .product .product-info {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.product-grid .product .product-info .product-title {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.product-grid .product .product-info .product-title .product-heading {
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    line-height: 18px;
    margin: 0;
}

.product-grid .product .product-info .product-title .product-main-title {
    font-style: normal;
    font-weight: 500;
    font-size: 20px;
    line-height: 26px;
    margin: 0;
}

.product-grid .product .product-info .product-desc {
    font-style: normal;
    font-size: 14px;
    line-height: 22px;
    margin: 0;
}

.product-grid .product .product-info .product-info-link {}

.product-grid .product .product-info .product-info-link a {}

.product-grid .product .product-info .product-action a {}

.cta-secondary {
    display: inline-block;
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 12px;
    text-align: center;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--color-black);
    border-bottom: 1px solid var(--color-black);
    padding-bottom: 6px;
    line-height: 1em;
}

.elementor-button {
    background-color: var(--color-blue);
    padding: 14px 24px;
    border-radius: 36px;
    font-style: normal;
    font-weight: 500;
    font-size: 12px;
    text-transform: uppercase;
    color: var(--color-black);
    line-height: 1em;
}

.button,
.ct-button,
.added_to_cart,
.ct-button-ghost,
[type=submit],
.wp-element-button,
.wp-block-button__link,
button.regform-button,
button[class*=ajax],
.woocommerce button.button,
.woocommerce-message .showlogin,
.woocommerce-message .restore-item,
.forminator-ui[data-design=none] .forminator-button,
.fluentform .ff-el-group button.ff-btn {
    background: linear-gradient(90deg, #004B8D 0%, #00A950 100%);
    padding: 14px 24px;
    border-radius: 36px;
    font-style: normal;
    font-weight: 500;
    font-size: 12px;
    line-height: 1em;
    text-transform: uppercase;
    color: #FFFFFF;
}

button.wpforms-submit {
    background: linear-gradient(90deg, #004B8D 0%, #00A950 100%) !important;
    padding: 14px 36px !important;
    border-radius: 36px !important;
    font-style: normal !important;
    font-weight: 500 !important;
    font-size: 12px !important;
    line-height: 1em !important;
    text-transform: uppercase !important;
    color: #FFFFFF !important;
}

.flux-button,
.flux-checkout #place_order,
.cta-primary:not(.elementor-widget-button),
.cta-primary .elementor-button {
    display: inline-flex;
    padding: 14px 24px;
    gap: 10px;
    background: linear-gradient(90deg, #004B8D 0%, #00A950 100%);
    border-radius: 36px;
    font-style: normal;
    font-weight: 500;
    font-size: 12px;
    line-height: 12px;
    text-transform: uppercase;
    color: #FFFFFF;
    line-height: 1em;
    transition: all 300ms linear;
    align-items: center;
}

.cta-primary:not(.elementor-widget-button):hover,
.cta-primary .elementor-button:hover {
    background: linear-gradient(90deg, #00A950 0%, #004B8D 100%);
}

.cta-primary .price {
    border-right: 1px solid rgba(255, 255, 255, 0.5);
    padding-right: 10px;
    color: #ffffff;
}

.cta-primary .price:empty {
    display: none;
}

.cta-primary .action {
    display: inline-flex;
    gap: 10px;
    text-align: left;
}

.cta-primary:hover {
    color: #ffffff;
}

.cta-primary:not(.elementor-widget-button) .action:after,
.cta-primary .elementor-button:after {
    content: ' ';
    width: 1em;
    height: 1em;
    background: transparent url(images/icon-action-arrow-white.svg) center center/contain;
}

.cta-inverted-white:not(.elementor-widget-button),
.cta-inverted-white .elementor-button {
    background-color: #ffffff;
    color: var(--color-black) !important;
    display: inline-flex;
    gap: 10px;
}

.cta-inverted:not(.elementor-widget-button),
.cta-inverted .elementor-button {
    background-color: transparent;
    color: var(--color-black) !important;
    border: 1px solid var(--color-black);
    display: inline-flex;
    gap: 10px;
}

.cta-inverted-white:not(.elementor-widget-button):after,
.cta-inverted-white .elementor-button:after,
.cta-inverted:not(.elementor-widget-button):after,
.cta-inverted .elementor-button:after {
    content: ' ';
    width: 1em;
    height: 1em;
    background: transparent url(images/icon-action-arrow-black.svg) center center/contain;
}

.badge-status {
    display: inline-block;
    font-style: normal;
    font-weight: 500;
    font-size: 11px;
    line-height: 1em;
    text-transform: uppercase;
    color: #333333;
    padding: 6px 14px;
    border-radius: 4px;
    background-color: var(--color-gray);
    border: 1px solid var(--color-gray);
}

.badge-status.promo {
    color: var(--color-red);
    border: 1px solid var(--color-red);
    background-color: transparent;
}

.badge-status.instock {
    color: var(--color-green);
    border: 1px solid var(--color-green);
    background-color: transparent;
}

header a[data-network=instagram] span {
    background: transparent url(images/icon-instagram.svg) center center/contain no-repeat;
}

header a[data-network=facebook] span {
    background: transparent url(images/icon-facebook.svg) center center/contain no-repeat;
}

.ct-social-box svg {
    opacity: 0;
    height: 18px;
    width: 18px;
}

.press .carousel-box {
    max-width: 960px;
    margin: 0 auto;
}

.press .banner {
    padding: 0 36px;
}

.carousel.press .carousel-box .banner img {
    width: 140px;
    max-width: 140px;
    margin: 0 auto;
}

.carousel .carousel-box .banner.review-box,
.review-box {
    display: flex;
    flex-direction: column;
    padding: 24px;
    gap: calc(var(--gap1)/2);
    background: #FFFFFF;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
    border-radius: 18px;
    margin: 18px;
}

.review-box .review-text {
    font-size: 1em;
}

.review-box .review-who {
    display: flex;
    gap: calc(1em/2);
    align-items: center;
}

.review-box .review-who .review-thumbnail {
    width: 2em;
    height: 2em;
    border-radius: 50%;
    background-color: #eeeeee;
    overflow: hidden;
}

.review-box .review-who .review-thumbnail img {
    display: block;
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
}

.review-box .review-who .review-name {
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    line-height: 18px;
}

.slick-dots li button:before {
    font-size: 9px;
}

.slick-dots li.slick-active button:before {
    color: var(--color-light-blue);
    opacity: 1;
}

.products {
    padding: var(--gap2) var(--gap1);
}

.related.products {
    padding-bottom: var(--gap1);
    padding-top: var(--gap1);
    border-top: 1px solid var(--color-border-gray);
    margin-top: var(--gap2);
}

.related.products .products {
    padding: 0;
}

.products .product .ct-media-container img {
    width: auto;
    display: block;
    margin: 0 auto;
}

.product-info-card {
    display: flex;
    flex-direction: column;
    gap: calc(var(--gap1)/2);
}

.cwginstock-subscribe-form .panel-primary {
    border: 0;
    margin: 0;
    padding: 0;
}

.cwginstock-subscribe-form .panel-primary>.panel-heading {
    background-color: transparent;
    color: var(--color-green);
    padding: 0 0 0.5em;
    border: 0;
}

.cwginstock-panel-heading h4 {
    color: var(--color-green);
}

.swal2-content {
    padding: 0 !important;
}

.cwginstock-panel-body input[type=text],
.cwginstock-panel-body input[type=email] {
    font-size: 14px;
}

.cwginstock-subscribe-form .panel-body {
    padding: 0;
}

.cwgstock_output {
    font-size: 14px;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
    line-height: 1.4em;
}

/* .flux-checkout p {
    margin: 0;
}

.flux-checkout p {
    margin-bottom: 0;
} */

/* .flux-common-wrap__wrapper br,
.flux-checkout__content-wrapper br,
.flux-common-wrap__wrapper p:empty,
.flux-checkout__content-wrapper p:empty {
    display: none;
} */

.flux-checkout__content-wrapper td:empty {
    padding: 0;
}

.flux-checkout__content-wrapper table {
    border-collapse: collapse;
    border: none;
}

.flux-checkout__content-wrapper #order_review th,
.flux-checkout__content-wrapper #order_review td {
    border: 0;
}

/* .flux-step p:not(.form-row) {
    margin-bottom: 0;
} */

/* .flux-checkout__content-wrapper .woocommerce-billing-fields__wrapper,
.flux-checkout__content-wrapper .woocommerce-billing-fields__wrapper p.form-row:last-of-type,
.flux-checkout__content-wrapper .woocommerce-shipping-fields__fields-wrapper,
.flux-checkout__content-wrapper .woocommerce-shipping-fields__wrapper p.form-row:last-of-type {
    margin-bottom: 0;
} */

.flux-checkout__content-wrapper #shipping_method li label,
.flux-checkout__content-wrapper #shipping_method li label * {
    font-size: 14px;
    line-height: 1.2em;
}

.flux-checkout #place_order:before {
    display: none;
}

.flux-checkout #place_order * {
    font-size: 12px;
    line-height: 1em;
}

#payment .payment_methods li.wc_payment_method>input[type=radio]+label,
input[type=radio]+label {
    font-weight: 600;
}

.flux-review-customer__label {
    min-width: 120px;
}

.flux-checkout {}

.elementor-column-gap-default>.elementor-column>.elementor-element-populated {
    padding: 0;
}

.flux-checkout .elementor-widget-wrap {
    padding: 0;
}

.ct-pagination {
    margin-bottom: var(--spacing, 60px);
}

.post-navigation {
    margin-bottom: var(--margin, 60px);
}

[data-prefix="blog"] .hero-section[data-type="type-2"],
[data-prefix="woo_categories"] .hero-section[data-type="type-2"],
[data-prefix="single_page"] .hero-section[data-type="type-2"],
[data-prefix="single_blog_post"] .hero-section[data-type="type-2"],
[data-prefix="categories"] .hero-section[data-type="type-2"] {
    background: linear-gradient(90deg, #004B8D 0%, #00A950 100%);
}

.ct-container-full article.post.hentry,
.ct-container .entries {
    padding-top: var(--gap1);
}

.entry-card a img.wp-post-image {
    border: 1px solid var(--color-gray);
}

.iti,
.iti input,
.iti input[type=tel],
.iti input[type=text] {
    font-size: 14px;
}

label.checkbox span,
label.checkbox {
    font-weight: 500;
    font-size: 14px;
}

.woocommerce-form__label-for-checkbox {
    display: flex;
    align-items: center;
}

/* .woocommerce-form__label-for-checkbox input[type=checkbox] {
    margin-top: 0px !important;
} */

.ct-checkbox:checked,
.comment-form input[type=checkbox]:checked,
#ship-to-different-address-checkbox:checked,
.wc-block-checkbox-list input[type=checkbox]:checked,
.wc-block-checkbox-list .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked,
.woocommerce-form__input[type=checkbox]:checked,
.woocommerce-form__label-for-checkbox input[type=checkbox]:checked,
.woocommerce-input-wrapper input[type=checkbox]:checked,
#wc-stripe-new-payment-method[type=checkbox]:checked,
.ppcp-credit-card-vault[type=checkbox]:checked,
.forminator-ui[data-design=none] .forminator-checkbox input[type=checkbox]:checked,
.wpforms-container:not(.wpforms-container-full) input[type=checkbox]:checked,
.ff-inherit-theme-style input[type=checkbox]:checked,
.wc_payment_method>input[type=radio]:checked,
.woocommerce-shipping-methods input[type=radio]:checked,
.payment_box input[type=radio]:checked,
.mp-ticket-payments input[type=radio]:checked,
.forminator-ui[data-design=none] .forminator-radio input[type=radio]:checked,
.wpforms-container:not(.wpforms-container-full) input[type=radio]:checked,
.ff-inherit-theme-style input[type=radio]:checked {
    background-color: transparent;
}

.ct-checkbox:before,
.comment-form input[type=checkbox]:before,
#ship-to-different-address-checkbox:before,
.wc-block-checkbox-list input[type=checkbox]:before,
.wc-block-checkbox-list .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:before,
.woocommerce-form__input[type=checkbox]:before,
.woocommerce-form__label-for-checkbox input[type=checkbox]:before,
.woocommerce-input-wrapper input[type=checkbox]:before,
#wc-stripe-new-payment-method[type=checkbox]:before,
.ppcp-credit-card-vault[type=checkbox]:before,
.forminator-ui[data-design=none] .forminator-checkbox input[type=checkbox]:before,
.wpforms-container:not(.wpforms-container-full) input[type=checkbox]:before,
.ff-inherit-theme-style input[type=checkbox]:before {
    background-color: transparent;
    width: 12px;
    height: 8px;
    border-radius: 0;
    border-color: #333333;
}

input[type=checkbox]:checked:after {
    display: none;
}

input[type=checkbox]:checked:focus:before {
    outline: none;
}

h2.flux-heading {
    font-size: 20px;
}

.flux-checkout__content-right #order_review .woocommerce-shipping-totals.shipping th,
.flux-step #order_review .woocommerce-shipping-totals.shipping th {
    font-size: 14px;
}

.flux-checkout__content-right #order_review .woocommerce-shipping-totals.shipping th:before,
.flux-step #order_review .woocommerce-shipping-totals.shipping th:before {
    mask-size: contain;
    top: 14px;
    width: 18px;
    height: 18px;
}

.flux-step td[data-title=Shipping] {
    width: 40%;
}

.flux-checkout__content-right td[data-title=Shipping] {
    width: 60%;
}

.flux-checkout__content-right #order_review .woocommerce-shipping-totals.shipping th,
.flux-step #order_review .woocommerce-shipping-totals.shipping th {
    padding-left: 26px;
}

.elementor-widget-container .wpforms-container .wpforms-field,
.elementor-widget-container .wp-core-ui div.wpforms-container .wpforms-field {
    padding: 8px 0px;
}

.elementor-widget-container .wpforms-container .wpforms-field:first-of-type {
    padding-top: 0;
}

.elementor-widget-container div.wpforms-container-full:not(:empty) {
    margin: 0;
}

.slick-prev:before,
.slick-next:before {
    color: var(--color-blue);
}

.out-of-stock-badge {
    display: none;
}

.woocommerce-tabs[data-type*=type-3] [aria-expanded=true] {
    color: var(--color-green);
}

.woocommerce-tabs[data-type*=type-3] .ct-accordion-heading {
    font-size: 1em;
}

.ct-product-add-to-cart .stock.out-of-stock {
    font-weight: bold;
    text-transform: uppercase;
    color: var(--color-red);
    margin-top: 10px;
    margin-bottom: 10px;
    float: left;
    margin-right: var(--gap1);
}

table.variations .reset_variations {
    display: none !important;
}

.woocommerce form p.form-row.hide {
    display: none !important;
}

.checking-field {
    font-size: 0.8em;
}

.flux-cart-order-item__info h3 {
    font-size: 18px;
}

.carousel.home-banners .slick-dotted.slick-slider {
    margin-bottom: 0px;
}

.carousel.home-banners .slick-dots {
    bottom: 10px;
}

.mwb_wpr_product_point {
    width: auto;
    display: inline-block !important;
    font-weight: bold;
    letter-spacing: 0;
    padding: 0.5em 2.5em 0.5em 1em;
}

.woocommerce-MyAccount-content {
    padding: var(--gap1);
    border: 1px solid var(--color-border-light-gray);
}

.my_account_points.account-points-table {
    margin-bottom: 0;
}

.ct-acount-nav {
    border-radius: 0 !important;
}

.checkout-redeemable .flux-heading--redeem {
    margin-bottom: 18px !important;
}

.checkout-redeemable .catalogue-widget {
    border: 1px solid var(--color-border-light-gray);
    margin-bottom: var(--gap1);
    padding: calc(var(--gap1)/2);
}

.checkout-redeemable .catalogue-widget .products {
    display: flex;
    padding: 0;
    flex-wrap: wrap;
    gap: 0;
}

.checkout-redeemable .catalogue-widget .products .product {
    padding: 0 0 calc(var(--gap1)/2);
    text-align: center;
    flex-basis: 33.33%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}

.checkout-redeemable .catalogue-widget .products .product .ct-woo-card-actions {
    flex-basis: 100%;
    display: flex;
    flex-direction: column;
    justify-content: end;
}

.catalogue-widget [data-products] .product figure {
    margin-bottom: calc(var(--gap1)/2);
}

.catalogue-widget [data-products] .product figure img {
    width: 80%;
}

.catalogue-widget [data-products] .product .woocommerce-loop-product__title {
    font-size: 1em;
    line-height: 1.3em;
    margin-bottom: 0.5em;
    flex-shrink: 0;
}

.catalogue-widget [data-products] .product .woocommerce-loop-product__title a {
    font-size: 1em;
    line-height: 1.3em;
    color: var(--color-black);
}

.catalogue-widget [data-products] .product .cta-primary {
    padding: 10px 24px;
    line-height: 1em;
}

.catalogue-widget [data-products] .product .cta-primary .action {
    line-height: 1em;
    color: #ffffff !important;
    font-size: 12px !important;
    align-items: center;
}

.catalogue-widget [data-products] .product .product-info-card {
    gap: calc(var(--gap1) / 3);
}

.catalogue-widget [data-products] .product .badge-status {
    font-size: 9px;
    line-height: 1em;
}

.instruction-box {
    border: 1px dashed var(--color-border-gray);
    padding: 24px;
}

.instruction-box .title {
    font-weight: bold;
    color: var(--color-blue);
    font-size: 1.2rem;
}

.instruction-box .note {
    font-size: 0.9rem;
    margin-top: 18px;
}

.instruction-box .note b {
    font-weight: bold;
    color: var(--color-red);
}

.instruction-table {
    border: 0;
    margin: 18px 0 0;
}

.instruction-table td {
    font-size: 0.9rem;
    border: 0;
    padding: 0;
    vertical-align: top;
}

.instruction-table tr>td:first-of-type {
    padding-right: 18px;
    width: calc(36px + 18px);
}

.instruction-table tr:not(:last-of-type) td {
    padding-bottom: 18px;
}

.instruction-table img {
    width: 36px;
    display: block;
}

.flux-step .sc_info_box {
    padding: calc(var(--gap1)/2) !important;
}

.sc_info_box>p:only-child {
    margin-bottom: 0;
}

#generated_coupon_data_container h2,
#invalid_coupons_list h2 {
    font-size: 20px;
}

#generated_coupon_data_container .expand_collapse,
#invalid_coupons_list .expand_collapse {
    display: none !important;
}

.generated_coupon_details {
    display: none !important;
}

#sc-cc .sc-coupon {
    padding: calc(var(--gap1)/2) !important;
}

#sc-cc .text-sm {
    font-size: 1.1rem !important;
}

#sc-cc .text-xs {
    font-size: 1rem !important;
}

.woocommerce-variation-point,
.woocommerce-standard-point {
    font-weight: bold;
    font-size: 1.1rem;
}

.woocommerce-standard-point {
    margin-bottom: 1.5em;
}

.woocommerce-variation-point .woocommerce_redeem_point span,
.woocommerce-standard-point .woocommerce_redeem_point span {
    color: var(--color-green);
    font-size: 1.2rem;
}

.woopr-expiry-points-table {
    font-size: 0.9rem;
}

.woopr-expiry-points-table tr.woopr-head {
    background-color: var(--color-blue);
    border-color: var(--color-blue);
}

.woopr-expiry-points-table {
    border: 0;
    border-color: var(--color-border-gray);
}

.woopr-expiry-points-table tr th,
.woopr-expiry-points-table tr td {
    border-left: 0;
    border-right: 0;
    padding: 0.5em 1em;
}

.woopr-expiry-points-table tr td {
    border-color: var(--color-border-gray);
}

.woopr-expiry-points-table tr th {
    border-color: var(--color-blue);
}

.woo-pr-details {
    font-size: 0.9rem;
    border-color: var(--color-border-gray);
}

.woo-pr-details tr th {
    background-color: var(--color-blue);
    border-color: var(--color-blue);
    color: #ffffff;
}

.woo-pr-details tr th,
.woo-pr-details tr td {
    padding: 0.5em 1em;
}

.woo-pr-details ol {
    margin: 0;
    display: inline-block;
    padding-left: 1.5em;
}

.dashboard-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 1em;
    align-items: center;
}

.woo-pr-details tfoot {
    background-color: var(--color-border-light-gray);
    font-weight: bold;
}

.woocommerce-form-row .input-radio {
    margin-right: 10px;
}

.form-row#birthday_month_field:after {
    font-size: 0.8em;
    content: 'Note: You are entitled for GOLD Membership Birthday Rewards! Please update your Birthday Month.';
    display: block;
    margin-top: 0.5em;
}

.ct-register-form .acf-label {
    margin-bottom: 0.5em;
}

.ct-register-form .acf-user-register-fields {
    margin-bottom: var(--theme-content-spacing);
}

.form-box {
    display: flex;
    flex-direction: column;
    gap: calc(var(--gap1)/2);
}

.form-box.form-box-wrap {
    flex-wrap: wrap;
    flex-direction: row;
}

.form-box .hide {
    display: none;
}

.form-box label {
    display: block;
    font-weight: 500;
}

.form-box label.error {
    color: red;
    font-size: 0.8rem;
    font-weight: 500;
    background-color: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
    display: block;
}

.form-box select.error,
.form-box input.error,
.form-box textarea.error {}

.form-box .row.flex {
    display: flex;
    gap: calc(var(--gap1)/2);
}

.form-box .flex .col:first-child,
.form-box .flex .col:last-child {
    flex-basis: 100%;
}

.form-box .form-row label {
    display: none;
}

.form-box .row.submit {
    margin-top: calc(var(--gap1)/2);
}

.form-box .form-row.form-row-first,
.form-box .form-row.form-row-last {
    flex-basis: calc(50% - (var(--gap1)/2));
}

.form-box .form-row.form-row-wide {
    flex-basis: 100%;
}

.form-box .form-row .iti {
    display: block;
}

.custom-popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 3001;
}

.custom-popup .custom-popup-overlay {
    background-color: rgba(0, 0, 0, 0.3);
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--gap1);
}

.custom-popup .custom-popup-box {
    background-color: #ffffff;
    padding: var(--gap1);
    max-width: 50%;
    max-height: 100%;
}

.custom-popup .custom-popup-box.fluid {
    max-width: 100%;
}

.custom-popup .custom-popup-box .close-section {
    text-align: right;
    position: relative;
}

.custom-popup .custom-popup-box .close-section .btn-close {
    display: inline-flex;
    font-weight: 400;
    gap: calc(var(--gap1)/2);
    align-items: center;
    line-height: 1em;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(calc(var(--gap1)/2)) translateY(calc(var(--gap1)/2*-1));
}

.custom-popup .custom-popup-box .close-section .btn-close:before {
    content: ' ';
    display: block;
    width: 10px;
    height: 10px;
    background: transparent url(images/icon-close-menu.svg) center center/contain no-repeat;
}

.custom-popup-close {
    display: inline-flex;
    font-weight: 400;
    gap: calc(var(--gap1)/2);
    align-items: center;
    line-height: 1em;
    position: absolute;
    right: calc(var(--gap1)/2);
    top: calc(var(--gap1)/2);
    color: #ffffff;
}

.custom-popup-close:before {
    content: ' ';
    display: block;
    width: 10px;
    height: 10px;
    background: transparent url(images/icon-close-menu-white.svg) center center/contain no-repeat;
}

.custom-popup .custom-popup-box .custom-popup-title {
    padding-bottom: calc(var(--gap1)/2);
    font-size: 1.2rem;
    text-align: center;
    font-weight: 500;
}

.custom-popup .custom-popup-box .custom-popup-content {
    overflow-y: auto;
    max-height: calc(100vh - (var(--gap1)));
}


.custom-form .iti {
    display: block;
}

.custom-form .el {
    position: relative;
}

.please-wait-submit {
    font-weight: 400;
    margin-top: 1em;
}

.el.el-file .file-upload-wrap {
    padding: var(--gap10) var(--gap24);
    width: 100%;
}

.el.el-file label {
    font-weight: 500;
}

.el.el-file input[type=file] {
    visibility: hidden;
    height: 0px;
    overflow: hidden;
    margin: 0 !important;
    padding: 0 !important;
}

.el.el-file .cta {
    position: absolute;
    right: var(--gap24);
    top: var(--gap12);
}

.selected-file {
    font-size: 0.8em;
    line-height: 1.4em;
    padding-top: 0.5em;
}

.selected-file span {
    display: block;
}

.selected-file span.name {
    word-break: break-all;
    display: inline-block;
}

.selected-file span.size {
    display: inline-block;
    margin-left: 1em;
}

.selected-file span.action {}

.selected-file .progress {
    margin-top: 5px;
    line-height: 1em;
}

.selected-file:not(.uploading):not(.uploaded) .progress {
    display: none;
}

.selected-file .progress .progress-line {
    height: 3px;
}

.selected-file.uploading .progress .progress-line,
.selected-file.uploaded .progress .progress-line {}

.selected-file.error {
    color: #ff0000 !important;
}

.selected-file.error .progress .progress-line {
    background-color: #ff0000;
}

.selected-file .progress span.progress-bar {
    display: flex;
    justify-content: space-between;
    padding-top: 5px;
}

.selected-file.error .progress {
    color: #ff0000 !important;
}

.collaborators {
    display: flex;
    flex-wrap: wrap;
    gap: 72px;
    row-gap: 24px;
    margin: 0 auto;
    max-width: 800px;
    justify-content: center;
}

.collaborators .banner {
    display: block;
}

.collaborators .banner .banner-image {
    display: block;
}

.collaborators .banner .banner-image img {
    display: block;
}

.customer-testimonials:not(.full) {
    padding: var(--gap1);
    background: linear-gradient(90deg, #004B8DAA 0%, #00A950AA 100%);
    border-radius: calc(var(--gap1)/2);
    margin-top: var(--gap2);
}

.customer-testimonials h2 {
    --theme-font-weight: 600;
    --theme-text-transform: uppercase;
    --theme-font-size: 24px;
    color: #ffffff;
}

.customer-testimonials h3 {
    --theme-font-weight: 600;
    --theme-text-transform: capitalize;
    --theme-font-size: 18px;
    --theme-heading-color: var(--theme-palette-color-13);
    color: #ffffff;
}

.customer-testimonials.full h3 {
    text-align: center;
}

.testimonial-list {
    list-style: none;
    padding: 0;
    margin: 0;
    margin-bottom: var(--gap1);
    margin-left: calc(var(--gap1)/2 * -1);
    margin-right: calc(var(--gap1)/2 * -1);
}

.customer-testimonials.full .testimonial-list {
    display: flex;
    flex-wrap: wrap;
}

.testimonial-list.noslick {
    display: flex;
}

.testimonial-list li {
    padding: calc(var(--gap1)/3);
}

.customer-testimonials.full .testimonial-list li {
    flex-basis: 33.33%;
}

.testimonial-list li .testi {
    padding: var(--gap1);
    border-radius: calc(var(--gap1)/2);
    background-color: #ffffff;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.testimonial-list li .text {
    font-size: 0.9rem;
    line-height: 1.4em;
    margin-bottom: calc(var(--gap1)/2);
}

.testimonial-list li .text>p:last-of-type {
    margin-bottom: 0;
}

.testimonial-list li .who {
    margin-top: var(--gap);
    font-weight: bold;
    font-size: 0.9rem;
    line-height: 1.4em;
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--joint-diary a:before {}

.diary-box {
    background-color: white;
    padding: var(--gap1);
    border-radius: calc(var(--gap1)/2);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.30);
    font-size: 14px;
    max-width: 720px;
    margin: 0 auto;
}

.diary-box .diary-heading {
    text-align: center;
}

.diary-box .diary-heading .welcome .customer-name {
    font-weight: bold;
    color: var(--color-green);
}

.diary-box .diary-heading .main-title {
    color: var(--color-blue);
    margin: 0.3em 0;
}

.diary-box .diary-heading .diary-month {
    font-weight: 600;
    font-size: 1.3em;
}

.diary-box .diary-heading .diary-month .label {
    
}

.diary-box .diary-heading .diary-month .month {
    color: var(--color-green);
}

.diary-box .diary-heading .diary-intro {
    margin: 0.3em 0;
}
.diary-box .diary-heading .timeline {
    display: flex;
    position: relative;
    margin: var(--gap1) 0;
    font-size: 0.9em;
}
.diary-box .diary-heading .timeline:before {
    content: ' ';
    display: block;
    width: calc(100% - 100%/11);
    height: 6px;
    border-radius: 10px;
    background-color: #eeeeee;
    position: absolute;
    left: calc(100%/11/2);
    top: 3px;
    z-index: 2;
}
.diary-box .diary-heading .timeline:after {
    
}
.diary-box .diary-heading .timeline .month {
    flex-basis: calc(100%/11);
    position: relative;
    line-height: 1em;
    padding-top: 20px;
}
.diary-box .diary-heading .timeline .month:before {
    content: ' ';
    display: block;
    position: absolute;
    z-index: 3;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 12px;
    height: 12px;
    background-color: #aaaaaa;
    border-radius: 50%;
}
.diary-box .diary-heading .timeline .month.done:before {
    background: var(--Recogen-Gradient, linear-gradient(90deg, var(--color-green) 0%, var(--color-blue) 100%));
}
.diary-box .diary-heading .timeline .month.done {
    font-weight: bold;
    color: var(--color-green);
}
.diary-box .diary-heading .timeline .month.done::after {
    content: ' ';
    display: block;
    width: calc(100%);
    height: 6px;
    border-radius: 10px;
    background: var(--Recogen-Gradient, linear-gradient(90deg, var(--color-blue) 0%, var(--color-green) 100%));
    position: absolute;
    left: 50%;
    top: 3px;
    z-index: 2;
}
.diary-box .diary-heading .timeline .month.done.last-done:after {
    width: calc(50%);
}
.diary-box .diary-heading .timeline .month.current {
    font-weight: bold;
    color: var(--color-blue);
}

.diary-box .diary-heading .timeline .month.done.current:after {
    width: calc(0%);
}

.diary-box .diary-content {

}

.diary-box .diary-content .diary-quiz {
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
}

.diary-box .diary-content .diary-quiz .quizes {
    display: flex;
    flex-direction: column;
}

.diary-box .diary-content .diary-quiz .quiz {
    display: flex;
    gap: var(--gap24);
    align-items: center;
    padding: calc(var(--gap1)/2) 0;
}

.diary-box .diary-content .diary-quiz .quizes > .quiz:not(:last-of-type) {
    border-bottom: 1px solid #eeeeee;
}

.diary-box .diary-content .diary-quiz .quiz .count {
    
}

.diary-box .diary-content .diary-quiz .quiz .count .num {
    display: block;
    width: 2em;
    height: 2em;
    line-height: 2em;
    text-align: center;
    border-radius: 50%;
    color: #ffffff;
    background-color: var(--color-blue);
    font-weight: bold;
}

.diary-box .diary-content .diary-quiz .quiz .question {
    font-size: 1.2em;
    font-weight: 500;
    line-height: 1.4em;
    flex-basis: 100%;
}

.diary-box .diary-content .diary-quiz .quiz .choices {
    display: flex;
    gap: var(--gap24);
    align-items: center;
}

.diary-box .diary-content .diary-quiz .quiz .choices .choice {
    display: flex;
    gap: 10px;
    align-items: center;
}

.diary-box .diary-content .diary-quiz .quiz .choices .choice input {
    
}

.diary-box .diary-content .diary-quiz .quiz .choices .choice label {
    line-height: 1em;
}

.diary-box .diary-content .actions {
    text-align: center;
}

.diary-quiz-congratulations {
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: calc(var(--gap1)/2);
}
.diary-quiz-congratulations .congratulations {
    display: flex;
    flex-direction: column;
        align-items: center;
}
.diary-quiz-congratulations .congratulations .congrate-text {
    font-size: 1.5em;
    font-weight: 600;
}
.diary-quiz-congratulations .congratulations .earned-point {
    font-size: 2.4em;
    font-weight: 600;
    background: var(--Recogen-Gradient, linear-gradient(90deg, var(--color-blue) 0%, var(--color-green) 100%));
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.diary-quiz-congratulations .congratulations .next {
    font-size: 16px;
}

.diary-quiz-congratulations .congratulations .advice {
    margin-top: calc(var(--gap1)/2);
    padding: calc(var(--gap1)/2) var(--gap1);
    background-color: #F7DF53;
    font-size: 1.1rem;
    line-height: 1.4em;
    font-weight: 500;
    color: var(--color-black);
    border-radius: calc(var(--gap1)/2);
}

.diary-quiz-congratulations .congratulations .advice > p {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

.diary-quiz-congratulations .congratulations .advice > *:first-child {
    margin-top: 0;
}
.diary-quiz-congratulations .congratulations .advice > *:last-child {
    margin-bottom: 0;
}

.diary-quiz-congratulations .featured-products {
    padding-top: var(--gap1);
}
.diary-quiz-congratulations .featured-products .products {
    
}
.diary-quiz-congratulations .featured-products .product-grid {
    --grid-col: 2;
    justify-content: center;
}

.diary-box .diary-content .diary-quiz.hide,
.diary-box .diary-content .diary-quiz-congratulations.hide {
    display: none;
}