/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* 
    LEGEND
    1. BASE STYLES
    2. HEADER
        2.1. MENU
        2.2. LOGIN MENU
        2.2.1. LOGIN MENU: Mobile Styling
        2.3. SEARCH FUNCTION
        2.3.1 SEARCH FUCNTION: Mobile Styling
        2.4. SHOPPING BAG
    3. BODY
        3.1. GRAVITY FORMS
        3.2. HOMEPAGE SHORTCODE SLIDERS
    4. WOOCOMMERCE
        4.1. CART
        4.2. CHECKOUT
        4.3. ORDER CONFIRMATION
        4.4. BUY BOX
        4.5. PDP
        4.6. SHOP
    5. SEARCH RESULTS
    6. FOOTER
    7. MEDIA QUERIES
*/

/* --- 1. BASE STYLES --- */
button,
input,
a,
[type=button]:focus,
[type=submit]:focus,
button:focus {
    outline: none;
}

button {
    line-height: 1 !important;
}

/* clears the ‘X’ from Chrome */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
    display: none;
}

/* - KLAVIYO STYLE OVERRIDES - */
body button.klaviyo-close-form,
body button.klaviyo-close-form:hover,
body button.klaviyo-close-form:focus {
    border: none;
    padding: 0px;
    background: transparent;
}

/* -- FIX FOR AVALARA STYLE OVERRIDES -- */
label {
    text-indent: initial;
    padding-left: initial;
    margin-bottom: initial;
}

/* --- 2. HEADER --- */
/* --- 2.1. MENU --- */
nav.e--pointer-underline ul li .elementor-item:after {
    width: 70%;
    margin-left: 70%;
    left: -55%;
}

/* --- 2.2. LOGIN MENU --- */
#customer-account-item,
.rc-loggedin .rc-act span,
#rc-login a {
    font-size: 20px;
    font-weight: 600;
    text-decoration: none;
    color: #f0f0f0;
    fill: #f0f0f0;
}

#customer-account-item:hover::after {
    height: 2px;
    content: "";
    bottom: 0;
    background-color: #f0f0f0;
    display: block;
    position: absolute;
    transition: .3s;
    transition-timing-function: cubic-bezier(.58, .3, .005, 1);
    width: 70%;
    left: -55%;
    margin-left: 70%;
    z-index: 2;
}

@media only screen and (min-width: 768px) {
    #customer-account-submenu-desktop {
        box-shadow: rgb(0 0 0 / 50%) 0px 1px 4px 0px;
        width: 250px !important;
        padding: 10px 0px;
        border: solid 3px #0f301d;
        background-color: #f1f0f4;
    }
}

#customer-account-submenu-desktop a:hover,
#customer-account-submenu-desktop li.cp-act a:hover {
    color: #f1f0f4;
    background-color: #0f301d;
}

#customer-account-submenu-desktop a,
.customer-account-submenu-mobile a {
    font-size: 18px;
    text-decoration: none;
    padding: 12px 25px !important;
    font-weight: 700;
    border: none;
    color: #0f301d;
}

#customer-account-submenu-desktop li.cp-act,
.customer-account-submenu-mobile li.rc-act span {
    padding-bottom: 10px;
}

#customer-account-submenu-desktop li.cp-act span {
    font-size: 18px;
    text-decoration: none;
    font-weight: 700;
    color: #a2402b;
    padding: 0px 25px;
}

#customer-account-submenu-desktop li.cp-act a {
    font-size: 18px;
    text-decoration: none;
    padding: 13px 25px;
    font-weight: 700;
    color: #0f301d;
    border: none;
}

/*Hide account menu injection on desktop/tablet*/
@media only screen and (min-width: 768px) {

    li.rc-loggedin,
    li#rc-login {
        display: none !important;
    }
}

/* - 2.2.1. LOGIN MENU: Mobile Styling - */
@media only screen and (max-width: 767px) {
    li.rc-loggedin {
        padding: 13px 20px !important;
    }

    li.rc-loggedin .rc-act span {
        display: flex;
        align-items: center;
    }

    li.rc-loggedin .rc-act span::after {
        content: " ";
        background-image: url('/wp-content/uploads/2022/12/Polygon-6.svg');
        display: block;
        background-size: 15px 15px;
        width: 15px;
        height: 15px;
        margin-left: 10px;
    }

    li.rc-loggedin .rc-act span.menu-open::after {
        transform: rotate(180deg);
    }

    .rc-act .customer-account-submenu-mobile.menu-open {
        display: block !important;
        position: static;
        background-color: transparent;
    }

    .rc-act .customer-account-submenu-mobile.menu-open a {
        color: #f1f0f4;
        font-weight: 600;
    }
}

/* --- 2.3. SEARCH FUNCTION --- */
#search_outer {
    display: none;
}

#search_outer .form-inputs {
    width: 1px;
    transition: width .7s ease-in-out, background .7s ease-in-out, opacity .5s ease-in-out;
    position: absolute;
    top: -8px;
    right: 20px;
    left: auto;
    z-index: 10;
    display: flex;
    align-items: center;
    border-radius: 50px;
    padding: 5px 20px;
    opacity: 0;
}

#search_outer.showing .form-inputs {
    width: 600px;
    background: #f1f0f4;
    opacity: 1;
}

#search_outer.showing .form-inputs input {
    background: #f1f0f4;
    opacity: 1;
}

#search_outer .form-inputs input {
    border: none;
    background: transparent;
    transition: background 1s ease-in-out .5s;
    opacity: 0;
}

#search_outer .form-inputs .close-button,
#search_outer_mobile .form-inputs-mobile .close-button {
    margin-top: 6px;
}

#rc_nav__search svg,
#search_outer svg {
    cursor: pointer;
}

/* - 2.3.1 SEARCH FUCNTION: Mobile Styling - */
#search_outer_mobile {
    display: none;
    opacity: 0;
    transition: opacity .5s ease-in-out;
    position: fixed;
}

#search_outer_mobile.showing {
    display: flex !important;
    justify-content: center;
    align-items: center;
    right: 0px;
    top: 0px;
    background: #0f301d;
    width: 100vw;
    height: 115px;
    z-index: 10;
    opacity: 1;
}

#search_outer_mobile.showing form {
    display: flex;
    align-items: center;
}

#search_outer_mobile.showing .form-inputs-mobile {
    display: flex;
    align-items: center;
    border-radius: 50px;
    padding: 5px 12px;
}

#search_outer_mobile.showing .form-inputs-mobile {
    width: 85vw;
    background: #f1f0f4;
}

#search_outer_mobile.showing .form-inputs-mobile input {
    background: #f1f0f4;
}

#search_outer_mobile .form-inputs-mobile input {
    border: none;
}

#search_outer_mobile.showing form .close-button {
    margin: 10px 10px 0px 10px;
}


/* --- 2.4. SHOPPING BAG --- */
#rc_nav__shopping_bag .counter-circle {
    position: absolute;
    top: 3px;
    right: -2px;
    background-color: #f1f0f4;
    min-width: 1.7em;
    height: 1.6em;
    border-radius: 100%;
    color: #0f301d;
    text-align: center;
    font-size: 10px;
    line-height: 1.5em;
    padding-right: 2px;
}

#rc_nav__shopping_bag:hover svg path {
    fill: rgb(241 240 244 / 60%);
}

.rc-hidden {
    display: none !important;
}

@media only screen and (max-width: 767px) {
    #rc_nav__shopping_bag .counter-circle {
        padding-right: 1px;
    }
}

/* --- 3. BODY --- */
/* --- 3.1. GRAVITY FORMS --- */
.gform_wrapper.gravity-theme .gform-body .gfield_label {
    font-size: 18px;
    font-weight: 400;
}

.gform_wrapper.gravity-theme .gform-body .gfield input,
.gform_wrapper.gravity-theme .gform-body textarea {
    font-size: 16px;
    color: #0d301d;
}

.gform_wrapper.gravity-theme .gform-body .gfield input::placeholder,
.gform_wrapper.gravity-theme .gform-body textarea::placeholder {
    color: #798981;
}

.gform_wrapper.gravity-theme .gform_footer input[type="submit"] {
    color: #a2402b;
    border-color: #a2402b;
    width: auto;
    text-align: center;
    line-height: 1 !important;
}

.gform_wrapper.gravity-theme .gform_footer input[type="submit"]:hover,
.gform_wrapper.gravity-theme .gform_footer input[type="submit"]:focus {
    color: #F1F0F4;
    background-color: #a2402b;
}

/*Confirmation messaging*/
div.gform_confirmation_message {
    font-size: 18px;
    font-family: 'Open Sans';
    font-weight: bold;
    color: #0f301d;
    font-style: italic;
}

/*Error messaging*/
.gform_wrapper .gfield_error label {
    color: #303230 !important;
}

.gform_wrapper .gfield_error [aria-invalid=true] {
    border: 2px solid #c22e0f !important;
}

.gform_wrapper .gfield_validation_message,
.gform_wrapper .validation_message {
    background: none !important;
    border: none !important;
    margin-top: 0px !important;
    padding: 5px 0px 13px 0px !important;
    font-weight: bold !important;
    color: #c22e0f !important;
}

.gform_wrapper .gform_validation_errors>h2 {
    color: #c02b0a !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 21px !important;
}

.gform_wrapper .gform_validation_errors {
    border: 2px solid #c22e0f !important;
}

/* --- 3.2. HOMEPAGE SHORTCODE SLIDERS --- */
/*Featured Products*/
#feature_products .slick-slide img {
    max-width: 326px;
    margin: auto;
}

#feature_products .slick-slide h3,
#feature_products .slick-slide p {
    text-align: center;
}

#feature_products .slick-slide h3 {
    color: #0f301d;
    font-weight: 900;
    margin: 12px 0px 16px 0px;
    text-transform: uppercase;
}

#feature_products .slick-slide div>div {
    max-width: 80%;
    margin: auto;
}

#feature_products .slick-slide div>div a {
    display: flex;
    justify-content: center;
    text-decoration: none;
    margin-top: 25px;
}

#shop-all {
    margin-top: 60px;
    display: flex;
    justify-content: center;
}

#shop-all button {
    border-color: #a2402b;
    color: #a2402b;
}

#shop-all button:hover,
#shop-all button:focus {
    background-color: #a2402b;
    color: #FFFFFF;
}

/*slick slider enable and style on mobile only*/
@media screen and (max-width: 980px) and (min-width: 768px) {
    .rc-slickslider {
        width: 80% !important;
        margin: auto;
    }
}

@media screen and (max-width: 980px) {
    .rc-slickslider {
        width: 100%;
        overflow: hidden;
    }

    .rc-slickslider img {
        width: 100%;
    }

    .slick-dots {
        display: flex;
        justify-content: center;
        padding-left: 0;
        margin-top: 25px;
    }

    .slick-dots li button {
        display: block;
        width: 18px;
        height: 18px;
        padding: 0;
        border: 2px solid #798981;
        border-radius: 100%;
        background-color: transparent;
        text-indent: -9999px;
        margin: 0px 10px;
    }

    .slick-dots li.slick-active button {
        background-color: #798981;
    }

    .slick-dots li::marker {
        font-size: 0px;
    }

    #shop-all {
        margin-top: 50px;
    }

    #customer_reviews .slick-slide {
        min-height: auto !important;
    }
}

/*Customer Reviews*/
#customer_reviews .slick-track {
    display: flex;
    justify-content: space-between;
}

#customer_reviews .slick-slide {
    border: solid 1px #798981;
    padding: 10px 20px;
    margin-right: 25px;
    min-height: 380px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

#customer_reviews .slick-slide:last-child {
    margin-right: 0px;
}

#customer_reviews .slick-slide h3 {
    color: #a2402b;
    font-size: 30px;
}

#customer_reviews .slick-slide h6 {
    color: #0f301d;
}

#customer_reviews .slick-slide svg {
    margin-right: 5px;
}

#customer_reviews .slick-slide .customer-name {
    display: flex;
}

#customer_reviews .slick-slide .customer-name p {
    margin-left: 5px;
}

/* --- 4. WOOCOMMERCE --- */
/* Chrome, Safari, Edge, Opera */
.product-quantity input::-webkit-outer-spin-button,
.product-quantity input::-webkit-inner-spin-button,
.rc-qty-counter input::-webkit-outer-spin-button,
.rc-qty-counter input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row .select2-selection__rendered {
    color: #0d301d;
}

.woocommerce form .form-row input.input-text::placeholder,
.woocommerce form .form-row textarea::placeholder,
.woocommerce form .form-row .select2-selection__rendered::placeholder {
    color: #798981;
}

/* 4.1. --- CART --- */
body.woocommerce-cart .page .elementor-section .elementor-container {
    max-width: 1140px;
    margin: 50px auto;
}

body.woocommerce-cart h6 {
    font-size: 20px;
    font-weight: normal;
    color: #0f301d;
    position: relative;
}

body.woocommerce-cart h6::after {
    content: "";
    position: absolute;
    bottom: -7px;
    left: 0;
    width: 130px;
    height: 1px;
    background: #0f301d;
}

.woocommerce-cart-form thead tr,
.woocommerce-cart-form tbody .cart_item {
    display: grid;
    grid-template-columns: 156px 1fr 150px 180px 100px 100px;
    align-items: center;
}

.woocommerce-cart-form tbody tr+tr:nth-child(even) {
    display: grid;
    grid-template-columns: 1fr 560px;
    border-bottom: 1px solid #979797;
    margin: 10px 0;
}

.woocommerce-cart-form tbody .cart_item .product-name a {
    font-size: 24px;
    color: #0f301d;
    font-weight: bold;
    text-decoration: none;
}

.woocommerce-cart-form tbody .cart_item .product-name p {
    margin-top: 10px;
    font-size: 15px;
}

.woocommerce-cart-form tbody .cart_item .product-name {
    text-align: left !important;
}

.woocommerce-page table.shop_table_responsive tr td.product-name::before {
    display: none;
}

.tr-divider td {
    height: 0px;
    padding: 0px !important;
}

.shop_table_responsive th,
.shop_table_responsive td {
    border: none !important;
    background: #f1f0f4 !important;
    font-weight: normal !important;
}

.woocommerce-cart-form__contents,
.woocommerce table.shop_table {
    border: none;
}

body.woocommerce-cart .woocommerce {
    padding-top: 20px;
}

.woocommerce-cart-form th {
    font-size: 18px;
    font-weight: bold !important;
    color: #798981 !important;
}

body .woocommerce-cart-form th.product-subtotal {
    text-align: left;
}

.woocommerce-cart table.cart img,
.woocommerce-checkout table.cart img {
    width: 100%;
    max-width: 180px;
}

.woocommerce-page .product-thumbnail .remove {
    display: none;
}

body.woocommerce-cart .sub-description p:first-child {
    font-size: 24px;
    font-weight: bold;
    color: #0f301d;
}

body.woocommerce-cart .sub-description p:last-child {
    font-size: 15px;
    color: #303230;
}

body.woocommerce-cart .product-price,
body.woocommerce-cart .product-quantity,
body.woocommerce-cart .product-subtotal {
    color: #656965;
}

body.woocommerce-cart .product-quantity>span {
    font-weight: bold;
    color: #0f301d;
    display: inline-block;
    vertical-align: middle;
    height: 24px;
}

.product-quantity>div {
    width: 84px;
    background: #0f301d;
    border-radius: 50px;
    border: 1px solid #0f301d;
    overflow: hidden;
    padding-left: 11px;
    display: inline-block;
    text-align: left;
    vertical-align: middle;
    margin-left: 10px;
}

.product-quantity .rc-qty,
.product-quantity .rc-qty:hover,
.product-quantity .rc-qty:focus {
    padding: 3px;
    font-size: 12px;
    background: #0f301d;
    border: none;
    color: #ffffff;
    box-shadow: none;
    height: 25px;
}

.product-quantity .quantity {
    display: inline;
}

.product-quantity .input-text.qty.text {
    width: 24px;
    padding: 0;
    border: none;
    -webkit-appearance: none;
    margin: 0;
    height: 25px;
    padding-top: 2px;
    background-color: #0f301d;
    color: #ffffff;
}

.woocommerce-cart-form__contents .product-remove a {
    width: auto;
    font-size: 16px !important;
    text-decoration: underline;
    font-weight: normal !important;
    color: #656965 !important;
}

.woocommerce a.remove:hover {
    color: #000000 !important;
    background: transparent;
}

body.woocommerce-cart .product-price,
body.woocommerce-cart .product-quantity,
body.woocommerce-cart .product-subtotal {
    text-align: center;
}

.woocommerce table.shop_table td.product-subtotal > span {
    display: block;
    text-align: left;
}

.tr-divider {
    border-bottom: 1px solid #798981;
}

body.woocommerce-cart .cart_totals .coupon {
    display: grid;
    grid-template-columns: auto 188px;
    grid-column-gap: 10px;
    padding-bottom: 16px;
}

body.woocommerce-cart .cart_totals #cart_page_coupon_code_label {
    grid-column: 1 / -1;
}

body.woocommerce-cart .cart_totals .cart_page_coupon {
    background: #798981;
    color: #ffffff;
    font-size: 20px;
    border-radius: 0;
}

body.woocommerce-cart .cart_totals h2 {
    text-transform: uppercase;
    font-size: 24px;
    color: #0f301d;
}

.woocommerce-cart .cart-collaterals .cart_totals table small {
    color: #6B6B6B !important;
}

body.woocommerce-cart .cart_totals .shop_table {
    color: #0f301d;
}

body.woocommerce-cart .cart_totals .shop_table th,
body.woocommerce-cart .cart_totals .shop_table .cart-subtotal td {
    font-weight: bold !important;
}

.cart-page-buttons .wc-proceed-to-checkout button {
    color: #a2402b;
    border-color: #a2402b;
    padding: 6px 29px;
}

.cart-page-buttons .wc-proceed-to-checkout button:hover,
.cart-page-buttons .wc-proceed-to-checkout button:focus {
    background: #a2402b;
    color: #ffffff;
}

body.woocommerce-cart .continue-shopping,
body.woocommerce-cart .wc-proceed-to-checkout {
    display: inline-block;
}

body.woocommerce-cart .wc-proceed-to-checkout {
    padding: 0px 10px;
}

.woocommerce-info {
    border-top-color: #a2402b;
}

.woocommerce-info::before {
    color: #a2402b;
}

/* 4.2. --- CHECKOUT --- */
body.woocommerce-checkout .page .elementor-section .elementor-container {
    max-width: 1140px;
    margin: 50px auto;
}

.woocommerce-shipping-fields__field-wrapper .required,
.woocommerce-billing-fields__field-wrapper .required,
#wc-authorize-net-cim-credit-card-credit-card-form .required,
.form-row .checkbox .required {
    color: #a2402b !important;
}

body.woocommerce-checkout h4 {
    color: #0f301d;
    text-transform: capitalize;
}

.select2-container--default .select2-selection--single {
    border-radius: 0px;
    min-height: 40px;
    border: 1px solid #798981;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 36px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 36px;
}

/*order review*/
.product-container .cart_item {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    margin-bottom: 20px;
    position: relative;
}

.product-container .cart_item .product-image {
    max-width: 90px;
}

.product-container .cart_item .product-info {
    margin-left: 20px;
}

.product-container .cart_item .product-info h5 a {
    font-size: 24px;
    font-weight: bold;
    color: #0f301d;
    text-decoration: none;
}

.product-container .cart_item .product-info h5 {
    font-weight: bold;
    font-size: 20px;
    margin: 0px;
}

.product-container .cart_item .product-info p,
.product-container .cart_item .product-info span {
    font-size: 15px;
    margin-bottom: 0px;
    line-height: 1em;
}

.product-container .product-price {
    text-align: right;
}

.product-container .product-price a {
    color: #798981;
    position: absolute;
    top: 0px;
    right: 0px;
    font-size: 16px;
    line-height: normal;
    font-weight: normal;
}

.product-container .product-price .amount {
    display: block;
}

/*coupon*/
#order_review #rc_coupon_section {
    border-radius: 0px;
    border: solid 1px #979797;
    padding: 20px;
    margin: 2em 0;
    text-align: left;
    max-width: 100%;
}
.cart-discount th {
    text-align: left;
}
.woocommerce-checkout .cart-discount td {
    text-align: right;
    position: relative;
}
.woocommerce-checkout .cart-discount td .woocommerce-remove-coupon {
    position: absolute;
    right: -16px;
    top: 4px;
}
.woocommerce-remove-coupon {
    text-decoration: none !important;
}

#cart_page_coupon_code_label {
    display: block;
}

#order_review #cart_page_coupon_code {
    width: 70% !important;
    height: 46px;
}

#order_review #rc_coupon_section .cart_page_coupon {
    margin-top: 0;
    padding: 13px 10px!important;
    float: right;
    width: 25%;
    background: #798981;
    color: #ffffff;
    font-size: 20px;
    border-radius: 0;
}

form.checkout_coupon.woocommerce-form-coupon button,
form.checkout_coupon.woocommerce-form-coupon button:hover {
    background: #798981;
    color: #ffffff;
    font-size: 20px;
    border-radius: 0;
}

/* - ROUND UP GEMS - */

.roundup-switcher input[disabled], .roundup-switcher input[disabled]+.round {
    pointer-events: none;
}

/*totals*/
.checkout #order_review .order-review {
    background-color: transparent;
    border-bottom: 1px solid #979797;
    border-top: 1px solid #979797;
}

.checkout #order_review .order-review tbody tr:first-child {
    padding-top: 20px;
}

.checkout #order_review .order-review tbody tr {
    display: flex;
}

.checkout #order_review .order-review td,
.checkout #order_review .order-review tr th {
    border: none;
    background-color: #F1F0F4;
}

.woocommerce .woocommerce-checkout-review-order-table table.order-review tr td,
.woocommerce .woocommerce-checkout-review-order-table table.order-review tr th {
    padding: 4px 0;
    line-height: 1.6;
}

.checkout #order_review .order-review tbody tr td {
    margin-left: auto;
    font-size: 16px;
}

.woocommerce ul#shipping_method {
    list-style: none outside;
    margin: 0;
    padding: 0;
}

.woocommerce .woocommerce-checkout-review-order-table table.order-review ul#shipping_method li {
    margin-bottom: 0;
}

.woocommerce ul#shipping_method li {
    margin: 0 0 0.5em;
    line-height: 1.5em;
    list-style: none outside;
}

.woocommerce ul#shipping_method li input {
    margin: 3px 0.4375em 0 0;
    vertical-align: top;
}

.woocommerce ul#shipping_method li label {
    display: inline;
}

.checkout #order_review .order-review tbody tr:last-child {
    padding-bottom: 20px;
}

.checkout #order_review .order-review tbody tr.order-total>* {
    padding-bottom: 0;
}

.checkout #order_review .order-review tbody tr.order-total td .woocommerce-Price-amount {
    font-size: 22px;
}

/*GEMS style*/
.roundup-feature {
    padding: 16px 11px 25px 20px;
    border: solid 1px #979797;
    margin-bottom: 25px;
    position: relative;
}

.roundup-copy {
    width: calc(100% - 125px);
}

.roundup-copy p:first-child,
.roundup-copy span {
    font-weight: bold;
}

.roundup-logo {
    max-width: 207px;
    position: absolute;
    right: 0;
    bottom: 10px;
}

.roundup-switcher {
    position: absolute;
    top: 20px;
    right: 23px;
}

label.switch {
    display: none;
}

#roundup {
    opacity: 0;
    width: 0;
    height: 0;
}

.rslider.round {
    border-radius: 34px;
    width: 60px;
    height: 34px;
    position: relative;
    display: inline-block;
}

.rslider {
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: .4s;
    transition: .4s;
}

.rslider:before {
    position: absolute;
    content: "";
    height: 26px;
    width: 26px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
}

.rslider.round:before {
    border-radius: 50%;
}

input:checked+.rslider {
    background-color: #798981;
}

input:checked+.rslider:before {
    -webkit-transform: translateX(26px);
    -ms-transform: translateX(26px);
    transform: translateX(26px);
}

.roundup-billing {
    position: absolute;
    top: 70px;
    right: 23px;
    width: 106px;
    font-size: 14px;
    line-height: normal;
    color: #303230;
    text-align: right;
    font-style: italic;
}

/*payment*/
#add_payment_method #payment,
.woocommerce #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment,
.woocommerce-page #payment {
    background-color: transparent;
}

.woocommerce-checkout #payment div.payment_box {
    background-color: transparent;
    line-height: inherit;
    font-size: inherit;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0px;
}

#add_payment_method #payment div.payment_box::before,
.woocommerce-cart #payment div.payment_box::before,
.woocommerce-checkout #payment div.payment_box::before {
    display: none;
}

#wc-authorize-net-cim-credit-card-credit-card-form {
    border: 1px solid #798981;
}

.woocommerce-terms-and-conditions-wrapper label {
    line-height: 1.3em !important;
}

.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
    float: none;
    background-color: transparent;
    color: #a2402b;
    width: 100%;
    margin-top: 20px;
    border: 3px solid #a2402b;
    border-radius: 0;
}

.woocommerce #payment #place_order:hover,
.woocommerce-page #payment #place_order:hover {
    background-color: #a2402b;
    color: #F1F0F4;
}

.woocommerce-checkout .button.sv-wc-payment-gateway-payment-form-manage-payment-methods {
    display: block;
    width: fit-content;
}

.woocommerce-checkout.woocommerce form .form-row label, .woocommerce-checkout.woocommerce-page form .form-row label {
    display: inline-block;
}

/* -- SMARTY ADDRESS SUGGESTIONS CHECKOUT --*/
#shipping_address_1_list, #billing_address_1_list {
    list-style: none;
    padding: 0px;
    position: absolute;
    z-index: 10;
    background-color: #fff;
    border: 1px solid #d3d3d3;
    overflow-y: scroll;
    min-width: 541px;
    max-width: 542px;    
    max-height: 250px;
    box-shadow: 0px 2px 5px 2px rgb(0 0 0 / 5%);
}
#shipping_address_1_list .ui-menu-item div, #billing_address_1_list .ui-menu-item div {
    padding: 5px 10px;
    border-bottom: 1px solid #d3d3d3;
    cursor: pointer;
}
#shipping_address_1_list .ui-menu-item .ui-state-active, #billing_address_1_list .ui-menu-item .ui-state-active {
    background-color: rgb(0 114 188 / 15%);
}
@media only screen and (max-width: 1200px) and (min-width: 768px) {
    #shipping_address_1_list, #billing_address_1_list {
        width: 47%;
        min-width: auto;
        max-width: none;
    }
}
@media only screen and (max-width: 768px) and (min-width: 500px) {
    #shipping_address_1_list, #billing_address_1_list {
        width: 99%;
        min-width: auto;
        max-width: none;
    }
}
@media only screen and (max-width: 500px) {
    #shipping_address_1_list, #billing_address_1_list {
        width: 98%;
        min-width: auto;
        max-width: none;
    }
}

/* - SMARTY CONFIRM ADDRESS WITH SWEETALERT2 - */
.swal2-container .swal2-popup {
    border-radius: 0px;
    color: #303230;
}

.swal2-container .swal2-html-container {
    color: #303230;
}

.swal2-container .swal2-styled.swal2-confirm {
    background-color: #a2402b;
    color: #ffffff;
    border: 3px solid #a2402b;
    border-radius: 0;
}

.swal2-container .swal2-styled.swal2-confirm:hover {
    background-color: transparent;
    color: #a2402b;
    background-image: none !important;
    box-shadow: none;
}

.swal2-container .swal2-styled.swal2-confirm:focus {
    box-shadow: none;
}

.swal2-container .swal2-styled.swal2-confirm:active {
    background-image: none !important;
}

.swal2-container .swal2-styled.swal2-cancel {
    background-color: transparent;
    color: #0f301d;
    border: 3px solid #0f301d;
    border-radius: 0;
}

.swal2-container .swal2-styled.swal2-cancel:hover,
.swal2-container .swal2-styled.swal2-cancel:focus,
.swal2-container .swal2-styled.swal2-cancel:active {
    background-color: #0f301d;
    color: #ffffff;
    background-image: none !important;
    box-shadow: none;
}

/* 4.3. --- ORDER CONFIRMATION --- */
#order_summary {
    display: flex;
}

#order_summary span {
    font-size: 15px;
    margin: 0px 30px;
}

#order_summary p {
    font-weight: bold;
    margin: 3px 30px;
}

#order_summary div {
    border-right: 1px dashed #798981;
}

#order_summary div:last-child {
    border-right: none;
}

#order_summary div:first-child p,
#order_summary div:first-child span {
    margin-left: 0px;
}

#order-confirmation .order-header h4 {
    margin-top: 30px;
    color: #0f301d;
}

.oc-order-details,
.confirmation-totals,
.oc-billing--body,
.oc-shipping--body {
    padding-left: 15px;
}

.oc-order-details .items-wrap {
    display: grid;
    grid-template-columns: 1fr 140px;
    grid-gap: 1px;
    background: #979797;
    padding-bottom: 1px;
}

.oc-order-details .items-wrap .oc-items--heading h5 {
    font-size: 18px;
    color: #0f301d;
    padding-left: 15px;
}

.oc-order-details .items-wrap .oc-items--heading,
.oc-order-details .items-wrap .oc-item--info>div,
.oc-order-details .items-wrap .oc-item--total {
    background-color: #f1f0f4;
}

.oc-item--info>div {
    display: grid;
    grid-template-columns: 1fr auto;
}

.oc-item--info .item-info {
    display: grid;
    grid-template-columns: auto 1fr;
    padding: 10px 15px;
    align-items: center;
}

.oc-item--info .item-info img {
    display: block;
}

.oc-item--info .item-info .item-image {
    max-width: 105px;
}

.oc-item--info .item-info .item-title {
    padding-left: 50px;
    font-size: 16px;
}

.oc-item--info .item-info .item-title h5 {
    margin: 0px 0px 8px 0px;
    font-size: 16px;
}

.oc-item--info .item-info .item-title a {
    color: #303230;
    text-decoration: none;
    font-size: 16px;
    font-weight: bold;
}

.oc-item--info .item-info .item-title p {
    display: inline-block;
    padding-left: 6px;
}

.oc-item--info .item-info .item-title p:first-child {
    display: block;
    font-weight: bold;
}

.oc-item--total {
    padding: 25px 0px 0px 15px;
}

.oc-item--total .item-total {
    font-weight: bold;
}

.oc-item--total #total-label {
    display: none;
}

.confirmation-totals {
    margin: 35px 0px;
    padding-bottom: 25px;
    border-bottom: 1px solid #979797;
}

.confirmation-totals .totals-group {
    display: flex;
}

.confirmation-totals .totals-group p {
    padding-right: 6px;
    font-weight: bold;
}

.confirmation-totals .totals-group:last-child p {
    color: #0f301d;
}

.oc-bs {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.oc-biling--address h4,
.oc-shipping--address h4 {
    color: #0f301d;
}

.oc-billing--body address,
.oc-shipping--body address,
.oc-shipping--body em {
    font-style: normal;
    margin-bottom: 15px;
    line-height: 2.2em;
}


/* --- 4.4. BUY BOX --- */
#one-time,
#auto-ship {
    display: none;
}

.rc-bb--copy span {
    font-size: 20px;
    color: #0f301d;
}

.rc-bb--copy span:last-child {
    font-weight: bold;
}

.rc-bb--selection label {
    display: grid;
    grid-template-columns: 25px 1fr;
    grid-gap: 14px;
    position: relative;
    cursor: pointer;
    font-size: inherit;
    transition: all 300ms ease;
    align-items: center;
}

.rc-bb--selection label:hover .rc-bb--copy {
    border: 3px solid #0f301d;
}

.rc-bb :checked+label .rc-bb--copy {
    background: #0f301d;
    border: none;
    padding: 15px;
}

.rc-bb :checked+label .rc-bb--copy span {
    color: #fff;
}

.rc-bb .checkmark {
    display: block;
    position: relative;
    border-radius: 50px;
    height: 25px;
    width: 25px;
    background: #C9C5C5;
    transition: all 300ms ease;
}

.rc-bb :checked+label .checkmark {
    display: block;
    position: relative;
    border-radius: 50px;
    height: 25px;
    width: 25px;
    background: #fff;
    border: 1px solid #0f301d;
    transition: all 300ms ease;
}

.rc-bb :checked+label .checkmark:after {
    content: "";
    position: absolute;
    display: block;
    left: 3px;
    top: 3px;
    width: 17px;
    height: 17px;
    background-color: #0f301d;
    border-radius: 50px;
}

.rc-bb--copy {
    user-select: none;
    text-align: left;
    padding: 12px;
    border-radius: 15px;
    border: 3px solid #F1F0F4;
}

.rc-bb--copy span:last-child {
    white-space: nowrap;
}

.rc-bb--selection {
    margin-bottom: 30px;
}

.rc-bb--selection {
    display: grid;
    grid-row-gap: 10px;
}

.rc-bb--one {
    order: 2;
}

.rc-bb--footer {
    display: flex;
    align-items: center;
}

.rc_label__qty {
    margin-right: 16px;
}

.rc-qty-counter {
    width: 84px;
    background: #fff;
    border-radius: 50px;
    border: 1px solid #0f301d;
    overflow: hidden;
    display: inline-block;
    vertical-align: middle;
    padding-left: 8px;
}

.rc_label__qty>span {
    font-size: 15px;
    font-weight: bold;
    padding-right: 5px;
}

.rc_label__qty .rc-qty-counter {
    width: 83px;
    background: #0f301d;
    height: 25px;
}

.woocommerce .rc_label__qty .rc-qty-counter .quantity {
    display: inline-block;
    vertical-align: top;
    height: 23px;
}

.rc_label__qty .rc-qty-counter button {
    margin-left: 0px;
    font-size: 15px;
    font-weight: normal;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-left: 0px !important;
    background: #0f301d;
    line-height: 23px;
    vertical-align: top;
}

.rc_label__qty .rc-qty-counter button.rc-qty--minus {
    padding: 0px 2px 0px 5px;
}

.rc_label__qty .rc-qty-counter button.rc-qty--plus {
    padding: 0px 5px 0px 2px;
}

.rc-qty-counter button {
    padding: 3px 5px;
    background: #0f301d;
    border: none;
    color: #ffffff;
    height: 23px;
}

.elementor-menu-cart__main .rc-qty-counter .item_quantity,
.rc-qty-counter #rc_product_qty {
    width: 24px;
    padding: 0;
    border: none;
    display: inline-block;
    text-align: center;
    font-size: 15px;
    line-height: 23px;
    vertical-align: middle;
    background: #0f301d;
    background-color: #0f301d;
    color: #ffffff;
    vertical-align: top;
}

.rc-bb .add button {
    background: #a2402b;
    border-color: #a2402b;
    color: #ffffff;
}

.rc-bb .add button:hover {
    background: #f1f0f4;
    border-color: #a2402b;
    color: #a2402b;
}

/*Product description list*/
.elementor-widget-woocommerce-product-content ul {
    padding-left: 15px;
}

.elementor-widget-woocommerce-product-content ul li {
    margin-bottom: 1.7rem;
}

/*Product images*/
.wpgs-thumb {
    width: 100px !important;
    float: right !important;
}

.slick-vertical .slick-slide {
    width: 80px !important;
    margin-bottom: 14px;
}

.fancybox-navigation {
    display: none;
}

a.pdf-link {
    font-weight: bold;
}
/* --- 4.5. PDP --- */
.oos-button {
    margin-top: 30px;
    background-color: #0f301d !important;
    color: #ffffff !important;
}
/* - ACCORDIONS - */
.pi-info--l1 {
    border-bottom: 1px solid #798981;
    margin-bottom: 20px;
}

.pi-info--title {
    margin-bottom: 20px;
    display: grid;
    grid-template-columns: 1fr 18px;
    padding: 0 35px;
    align-items: center;
    cursor: pointer;
    user-select: none;
}

.pi-info--title h2 {
    margin: 0px;
    color: #0f301d;
    font-size: 32px;
}

.pi-info--title .accordion-icon,
.pi-works--accordion-icon {
    transform: rotate(45deg);
    transition: transform .2s ease-in-out;
}

.pi-info--inner {
    padding: 10px 60px;
}

.pi-info--inner em {
    font-size: 15px;
    color: #656965;
}

.pi-info--inner p.shorter {
    line-height: 1.3em;
}

.pi-info--outer,
.pi-works,
.pi-take--outer,
.pi-works--content {
    display: none;
}

.pi-info--l1.active .pi-info--title .accordion-icon,
.pi-works--title.active .pi-works--accordion-icon {
    transform: rotate(0deg);
}

.pi-info--l1.active .pi-info--outer,
.pi-info--l1.active .pi-take--outer {
    display: block;
}

.pi-info--l1.active .pi-works {
    display: grid;
}

.pi-works--title.active+div {
    display: block;
}

/*How it works accordion*/
.pi-works {
    grid-row-gap: 20px;
    padding: 10px 35px 30px 35px;
    margin-right: 30px;
}

.pi-works--title {
    display: grid;
    grid-template-columns: max-content auto max-content;
    grid-column-gap: 16px;
    align-items: center;
    cursor: pointer;
}

.pi-works--title-inner h3 {
    font-family: "DM Serif Display", Sans-serif;
    font-weight: normal;
    color: #0d301d;
    font-size: 32px;
}

.pi-works--icon {
    width: 100px;
}
.pi-works--content {
    margin-left: 116px;
    margin-right: 34px;
}

.pi-works--content p {
    margin-bottom: 18px;
}

.pi-works--content .superscript {
    font-size: 0.7em;
    vertical-align: text-top;
    position: relative;
    top: -3px;
}

/*How to take accordion*/
.pi-take--inner {
    margin-bottom: 90px;
}

.pi-take--inner::after {
    content: "";
    position: absolute;
    border-bottom: solid 1px #798981;
    width: 300px;
    padding-top: 35px;
    left: 50%;
    margin-left: -150px;
}

.pi-take--inner:last-child::after {
    display: none;
}

.pi-take--inner:last-child {
    margin-bottom: 40px;
}

.pi-take--icons {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    text-align: center;
    padding: 10px 60px;
    margin-right: 34px;
}

.pi-take--icons img {
    max-width: 120px;
}

.pi-take--title h4 {
    font-size: 32px;
    color: #0f301d;
    text-align: center;
}

.pi-take--icons h4 {
    margin-top: 20px;
    color: #0f301d;
    max-width: 210px;
    margin-left: auto;
    margin-right: auto;
    font-size: 25px;
}

.pi-take--directions {
    margin: 10px 0px;
    text-align: center;
}


/*How it Works custom styles - box product*/
.pi-works--content .icon-div {
    margin-right: 25px;
}

.pi-works--content .content-div {
    margin-left: 70px;
    margin-bottom: 20px;
}

.pi-info--outer h2 {
    margin-left: -25px;
    color: #0f301d;
    margin-top: 35px;
}

/*Content Area ACF styles - Daily Balance & Daily Essentials PDP*/

.pdp-content-area h2,
.pdp-content-area p {
    text-align: center;
    color: #0f301d;
}

.pdp-content-area p {
    width: 55%;
    margin: auto;
    font-size: 22px;
    line-height: 1.4em;
}
/* --- 4.6. SHOP --- */
.woocommerce div.product .out-of-stock {
    color: #9b9ea2;
    font-size: 20px;
    font-weight: 800;
    text-transform: uppercase;
}
.products .outofstock .button {
    color: #ffffff !important;
    border-color: #0f301d !important;
    background-color: #0f301d !important;
    font-size: 20px !important;
}

.rc-ordering select.orderby {
    border: 1px solid #000000;
    background: #ffffff;
    font-size: 16px;
    padding: 8px 16px;
    color: #000000;
}

.sold_out {
    position: absolute;
    margin-top: -41px;
    background: #0f301d;
    border-radius: 50px;
    padding: 1px 8px;
    color: #fff;
    left: 12px;
    font-size: 16px;
    font-weight: bold;
}
.woocommerce .product.outofstock h2 {
    color: #9b9ea2 !important;
}

/* --- 5. SEARCH RESULTS --- */
#page_title,
#number_search_results,
#search_grid_products {
    text-align: center;
    color: #0f301d;
}

#search_grid_products,
#search_grid_other {
    display: grid;
    grid-template-columns: minmax(calc(25% - 60px), 210px) minmax(calc(25% - 60px), 210px) minmax(calc(25% - 60px), 210px) minmax(calc(25% - 60px), 210px);
    text-align: center;
    align-content: space-around;
    justify-content: space-between;
    grid-gap: 20px;
    grid-row-gap: 50px;
}

#search_product_title,
#search_other_title {
    font-size: 28px;
    font-weight: bold;
    color: #0f301d;
}

#search_product_title,
#search_other_title,
#search_grid_products,
#search_grid_other {
    padding: 20px;
    max-width: 1110px;
    margin-left: auto;
    margin-right: auto;
}

#search_line {
    margin-top: 50px;
    margin-bottom: 30px;
}

#search_grid_products .search-card {
    max-width: 210px;
    margin-left: auto;
    margin-right: auto;
}

.search-card-title a {
    color: #0f301d;
    font-size: 23px;
    font-weight: 800;
    text-decoration: none;
}

.search-card .search-card-product-button {
    border: 3px solid #a2402b;
    width: 100%;
    display: block;
    text-decoration: none;
    font-size: 20px;
    padding: 2px 10px;
    font-weight: bold;
}

.search-card .search-card-product-button:hover,
.search-card .search-card-product-button:focus {
    color: #ffffff;
    background-color: #a2402b;
}

#search_grid_other .search-card-product-button {
    border: 3px solid #0f301d;
    color: #0f301d;
}

#search_grid_other .search-card-product-button:hover,
#search_grid_other .search-card-product-button:focus {
    color: #ffffff;
    background-color: #0f301d;
}

/* - SEARCH PAGE SEARCH BAR - */
#results_form_outer {
    max-width: 715px;
    margin: 40px auto 50px;
    padding: 0px 10px;
}

#results_form_outer form {
    border-color: #0f301d;
    border-width: 0px 0px 0px 0px;
    border: 1px solid;
    border-radius: 50px;
    background: #f1f0f4;
    min-height: 62px;
}

#results_form_outer #results-form-inputs {
    display: grid;
    grid-template-columns: 1fr auto;
    min-height: 62px;
}

#results_form_outer .search-results-form-input {
    background: transparent;
    border: none;
    padding-left: 35px;
    font-size: 18px;
    color: #0f301d;
}

#results_form_outer .results-form-inputs {
    display: grid;
    grid-template-columns: 1fr auto;
    min-height: 62px;
}

#results_form_outer label {
    cursor: pointer;
    max-height: 62px;
}

#results_form_outer svg {
    align-self: center;
    height: 62px;
    width: 62px;
    padding: 11px;
    margin-right: 10px;
}

#results_form_outer input::placeholder {
    color: #0f301d;
    font-style: italic;
}

/* --- 6. FOOTER --- */
#footer_menu li a, #footer_menu__2 li a {
    display: inline-block;
}

#footer_menu li a::after, #footer_menu__2 li a::after {
    height: 2px;
    content: "";
    bottom: 0;
    background-color: #f0f0f0;
    display: block;
    position: absolute;
    transition: .3s;
    transition-timing-function: cubic-bezier(.58, .3, .005, 1);
    width: 90%;
    margin-left: 90%;
    left: -85%;
    z-index: 2;
    opacity: 0;
}

#footer_menu li a:hover::after, #footer_menu__2 li a:hover::after, #footer_menu li a:focus::after, #footer_menu__2 li a:focus::after {
    opacity: 1;
}

/* --- 7. MEDIA QUERIES --- */
/* --- DESKTOP --- */
@media only screen and (min-width: 768px) {
    .pi-info--inner .pi-faq {
        padding-left: 30px;
    }

    /*Divider within how it works - Core Kit PDP*/
    .postid-44 .pi-works--title:first-child {
        position: relative;
    }

    /* .postid-44 .pi-works--title:first-child::after {
        content: "";
        width: 100%;
        border-bottom: 1px solid #798981;
        position: absolute;
        top: 130px;
    } */

    .postid-44 .pi-works--title:nth-last-child(2) {
        padding-top: 20px !important;
        border-top: 1px solid #798981;
    }

    /* .postid-44 .pi-works--title.active:first-child::after {
        top: 440px;
    } */
}

@media only screen and (max-width: 1100px) {
    #feature_products .slick-slide img {
        max-width: 310px;
    }
}

@media only screen and (min-width: 1025px) {
    body.woocommerce-checkout .page .elementor-section .elementor-container {
        padding: 20px;
    }
}

/* --- MOBILE --- */
@media only screen and (max-width: 1024px) {

    /*Product images*/
    .woocommerce div.product div.images img {
        max-width: 75vw;
        margin: auto;
    }

    .slick-slide img.zoomImg {
        display: none !important;
    }

    .wpgs-thumb {
        width: 100% !important;
        margin-top: 0px;
    }

    .wpgs-thumb.slick-slider .slick-track {
        width: 75vw !important;
        margin: auto;
        transform: none !important;
    }

    .slick-slider .thumbnail_image {
        margin-right: 7px;
        margin-top: 15px;
        width: 17% !important;
    }

    .slick-slider .thumbnail_image:first-child {
        margin-left: 1px;
    }

    .slick-slider .thumbnail_image:last-child {
        margin-right: 0px;
    }

    /*checkout page*/
    body.woocommerce-checkout .page .elementor-section .elementor-container {
        margin: 20px 5%;
    }

    .woocommerce-checkout #payment div.payment_box {
        padding: 0px !important;
    }
}

@media only screen and (max-width: 385px) {
    .slick-slider .thumbnail_image {
        width: 17% !important;
        margin-right: 5px;
    }
}

@media only screen and (min-width: 768px) {
    body.woocommerce-cart .page .elementor-section .elementor-container {
        padding: 0px 20px;
    }
}
@media only screen and (max-width: 767px) {

    .postid-44 .pi-works--content {
        border-bottom: none;
    }
    .postid-44 .pi-works {
        grid-row-gap: 10px;
    }
    .postid-44 .pi-works--title:nth-last-child(2) {
        border-top: 1px solid #798981;
        padding-top: 12px;
    }
    .woocommerce div.product .out-of-stock+a {
        padding: 5px !important;
    }
    /*Buy box*/
    .rc-bb {
        max-width: 300px;
        margin-left: auto;
        margin-right: auto;
    }

    .rc-bb .checkmark, .rc-bb :checked+label .checkmark {
        height: 18px;
        width: 18px;
    }

    .rc-bb :checked+label .checkmark:after {
        left: 3px;
        top: 3px;
        width: 10px;
        height: 10px;
    }

    .rc-bb--copy span {
        font-size: 16px;
    }

    .rc-bb--selection label {
        grid-template-columns: 18px 1fr;
    }

    .rc-bb--selection {
        grid-row-gap: 20px;
    }

    .rc-bb--footer {
        display: block;
    }

    .rc_label__qty {
        margin-right: 0px;
        margin-bottom: 30px;
        display: grid;
        grid-template-columns: 40px 100px;
        justify-content: center;
        align-items: center;
    }

    .rc_label__qty>span {
        text-align: right;
        padding-right: 10px;
    }

    .rc_label__qty .rc-qty-counter {
        width: 100px;
        height: 38px;
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        padding-left: 0px;
        align-items: center;
        justify-content: center;
    }

    .rc_label__qty .rc-qty-counter button.rc-qty--minus {
        font-size: 20px;
        height: 36px;
    }

    .woocommerce .rc_label__qty .rc-qty-counter .quantity {
        height: 36px;
    }

    .elementor-menu-cart__main .rc-qty-counter .item_quantity, .rc-qty-counter #rc_product_qty {
        height: 36px;
        font-size: 20px;
    }

    .rc_label__qty .rc-qty-counter button.rc-qty--plus {
        height: 36px;
        font-size: 20px;
    }

    .product-quantity .rc-qty, .product-quantity .rc-qty:hover, .product-quantity .rc-qty:focus {
        height: 36px;
        font-size: 20px;
        font-weight: normal;
    }

    .pi-info--title h2 {
        font-size: 18px;
        padding-left: 10px;
        margin: 0px;
    }

    .cart_item .product-quantity {
        display: grid !important;
        grid-template-columns: 1fr auto 100px;
        justify-content: center;
        align-items: center;
    }

    .woocommerce table.shop_table_responsive tr td::before, .woocommerce-page table.shop_table_responsive tr td::before {
        text-align: left;
    }

    .product-quantity>div {
        width: 100px;
        display: grid;
        padding: 0px;
        grid-template-columns: 1fr 1fr 1fr;
        height: 38px;
    }

    .product-quantity .rc-qty, .product-quantity .rc-qty:hover, .product-quantity .rc-qty:focus {
        height: 36px;
        font-size: 20px;
        font-weight: normal;
    }

    .product-quantity .input-text.qty.text {
        height: 36px;
        width: 100%;
        font-size: 20px;
    }

    .pi-works--title-inner h3 {
        margin-top: 0px;
        font-size: 18px;
        margin-bottom: 0px;
    }

    .pi-info--title,
    .pi-info--l1 {
        margin-bottom: 14px;
    }

    .pi-works {
        margin-right: 0px;
    }

    .pi-works--title {
        margin-right: 18px;
    }

    .pi-works--title-inner {
        align-items: center;
        display: grid;
    }

    .pi-info--outer h2 {
        font-size: 18px;
        margin-left: 0px;
    }

    .pi-works--icon {
        width: 60px;
    }

    .pi-works--title,
    .pi-info--title {
        align-items: center;
    }

    .pi-info--inner,
    .pi-works {
        padding: 10px;
    }

    .pi-info--title {
        padding: 0px;
    }

    .pi-works--content {
        margin-left: 5px;
        margin-right: 5px;
        border-bottom: solid 1px #798981;
    }

    .pi-works--content:last-child {
        border-bottom: none;
    }

    .pi-info--title .accordion-icon,
    .pi-works--accordion-icon {
        transform: rotate(45deg) scale(.7);

    }

    .pi-info--title .accordion-icon {
        position: relative;
        right: 10px;
    }

    .pi-info--l1.active .pi-info--title .accordion-icon,
    .pi-works--title.active .pi-works--accordion-icon {
        transform: rotate(0deg) scale(.7);
    }

    .pi-take--inner {
        margin-bottom: 50px;
    }

    .pi-take--inner::after {
        padding-top: 0px;
    }

    .pi-take--inner:last-child {
        margin-bottom: 0px;
    }

    .pi-take--inner:last-child .pi-take--directions {
        margin-bottom: 15px;
    }

    .pi-take--inner .pi-take--directions {
        padding-bottom: 25px;
    }

    .pi-take--title h4 {
        font-size: 20px;
    }

    .pi-take--icons img {
        max-width: 90px;
    }

    .pi-take--icons h4 {
        margin-top: 10px;
        font-size: 18px;
    }

    .pi-take--icons {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        margin-right: 0px;
    }

    .pi-take--icon {
        margin-bottom: 20px;
    }

    .pi-take--outer h5 {
        font-size: 18px;
    }

    /*Content area ACF*/

    .pdp-content-area h2 {
        font-size: 19px;
        padding: 0px 25px;
    }

    .pdp-content-area p {
        width: 75%;
        font-size: 16px;
    }

    /* --- SEARCH RESULTS --- */
    #page_title {
        font-size: 24px;
    }

    #number_search_results {
        font-size: 18px;
    }

    #results_form_outer {
        margin: 25px auto;
    }

    #results_form_outer form {
        min-height: 34px;
    }

    #results_form_outer .results-form-inputs {
        min-height: 34px;
        height: 34px;
    }

    #results_form_outer .search-results-form-input {
        padding-left: 23px;
        font-size: 14px;
        height: 34px;
    }

    #results_form_outer svg {
        height: 34px;
        width: 34px;
        padding: 8px;
    }

    #search_product_title,
    #search_other_title,
    #search_grid_products,
    #search_grid_other {
        text-align: center;
        font-size: 20px;
    }

    #search_grid_products,
    #search_grid_other {
        grid-template-columns: minmax(calc(50% - 17px), 1fr) minmax(calc(50% - 17px), 1fr);
        grid-gap: 17px;
        padding: 10px;
    }

    .search-card-title a,
    #search_grid_products .search-card-title {
        font-size: 16px;
    }

    .search-card .search-card-product-button {
        border: 2px solid #a2402b;
        font-size: 13px;
    }

    #results_form_outer label {
        max-height: 34px;
    }

    /* - CART - */
    .woocommerce-cart table.cart .cart_item {
        display: grid;
        grid-template-columns: 1fr;
        position: relative;
    }

    .woocommerce-cart-form {
        padding: 0px 8px;
    }

    .woocommerce-cart table.cart .product-thumbnail {
        display: block;
        order: 2;
        text-align: left !important;
    }

    .woocommerce-cart table.cart img,
    .woocommerce-checkout table.cart img {
        width: 100%;
        max-width: 140px;
    }

    .woocommerce-checkout table.cart a {
        float: right;
    }

    .woocommerce-cart table.cart .cart_item .product-price,
    .woocommerce-cart table.cart .cart_item .product-quantity,
    .woocommerce-cart table.cart .cart_item .product-subtotal {
        order: 5;
    }

    .woocommerce-cart table.cart .cart_item .product-remove {
        display: none;
    }

    .woocommerce-cart .product-thumbnail::before,
    .woocommerce-cart .tr-divider td::before,
    .woocommerce-cart .product-name::before {
        display: none;
    }

    .woocommerce-page table.shop_table_responsive tr td .sub-description p {
        text-align: left !important;
    }

    .woocommerce-page .product-thumbnail .remove {
        display: block;
        float: right;
        width: auto;
        font-size: 16px !important;
        text-decoration: underline;
        font-weight: normal !important;
        color: #656965 !important;
    }

    .woocommerce-page .product-price,
    .woocommerce-page .product-quantity,
    .woocommerce-page .product-subtotal,
    .woocommerce-page .cart-subtotal,
    .woocommerce-page .woocommerce-shipping-totals,
    .woocommerce-page .tax-rate-avatax-tx-state-tax,
    .woocommerce-page .order-total {
        font-size: 16px;
    }

    .woocommerce-cart-form tbody tr+tr:nth-child(even) {
        grid-template-columns: 1fr;
    }

    .woocommerce-page .woocommerce-Price-amount {
        padding-right: 16px;
        text-align: right !important;
    }

    .woocommerce-cart .cart-discount .woocommerce-Price-amount {
        padding-right: 5px;
    }

    .woocommerce-page .woocommerce-Price-amount+span {
        padding-right: 16px;
        text-align: right !important;
    }

    .woocommerce-checkout .product-price .woocommerce-Price-amount {
        padding-right: 0px;
    }

    .product-container .cart_item .product-info h5 {
        margin-bottom: 0px;
    }

    .product-container .cart_item .product-info .sub-description {
        padding-bottom: 13px;
    }

    .product-container .cart_item .product-info .product-quantity {
        line-height: 2em;
    }

    .woocommerce-page .coupon {
        display: block !important;
        text-align: center;
        padding-bottom: 30px;
        max-width: 330px;
        margin-left: auto;
        margin-right: auto;
    }

    .woocommerce-page .coupon .cart_page_coupon {
        margin-top: 16px;
        width: 100%;
    }

    .woocommerce-page .coupon h2,
    .woocommerce-page .coupon hr,
    .woocommerce-page .coupon .shop_table {
        padding-left: 10px;
        padding-right: 10px;
    }

    .woocommerce-page .coupon .shop_table {
        font-size: 16px;
    }

    body.woocommerce-cart .continue-shopping,
    body.woocommerce-cart .wc-proceed-to-checkout {
        display: block;
        text-align: center;
    }

    .cart-page-buttons .continue-shopping button,
    .cart-page-buttons .wc-proceed-to-checkout button {
        width: 100%;
        max-width: 330px;
        margin-bottom: 16px;
    }

    body.woocommerce-cart .wc-proceed-to-checkout {
        padding: 0px;
    }

    body.woocommerce-cart .cart_totals h2 {
        font-size: 19px;
        padding: 0px 12px;
    }

    body.woocommerce-cart .cart_totals hr {
        margin: 0px 12px;
    }

    body.woocommerce-cart h6 {
        margin-left: 12px;
    }

    .product-container .cart_item .product-info h5 a {
        font-size: 20px;
    }

    /* - CHECKOUT - */
    .woocommerce-checkout .cart-discount td .woocommerce-remove-coupon {
        right: 0;
    }

    /*gravity forms submit button*/
    .gform_wrapper.gravity-theme .gform_footer input[type="submit"] {
        margin: auto;
    }

    /*order confirmation page*/
    #order_summary {
        display: block;
        margin-top: 30px;
    }

    #order_summary div {
        border-right: none;
    }

    #order_summary span {
        margin: 0px;
    }

    #order_summary p {
        margin: 3px 0px 25px 0px;
    }

    #order-confirmation .order-header h4 {
        margin: 30px 0px 20px 0px;
    }

    .oc-order-details {
        padding: 0px;
    }

    .confirmation-totals,
    .oc-billing--body,
    .oc-shipping--body {
        padding: 0px 8px;
    }

    .confirmation-totals,
    .oc-shipping--body {
        padding-left: 8px;
    }

    .oc-billing--body {
        padding: 0px;
    }

    .confirmation-totals {
        margin: 28px 0px;
    }
    #order-confirmation h4 {
        font-size: 24px;
    }

    .oc-order-details .items-wrap {
        grid-template-columns: 1fr;
        grid-gap: 0px;
        padding-bottom: 0px;
    }

    .oc-order-details .items-wrap .oc-items--heading {
        display: none;
    }

    .oc-item--info .item-info {
        display: flex;
        flex-direction: column-reverse;
        padding: 25px 0px 0px 0px;
        align-items: flex-start;
    }

    .oc-item--info .item-info .item-title {
        padding-left: 0px;
    }

    .oc-item--info .item-info .item-image {
        max-width: 145px;
    }

    .oc-item--total {
        padding: 20px 0px;
        display: flex;
        justify-content: space-between;
        border-bottom: 1px solid #979797;
    }

    .oc-item--total #total-label {
        display: block;
    }

    .oc-item--total .item-total {
        font-weight: normal;
    }

    .confirmation-totals .totals-group {
        justify-content: space-between;
    }

    .oc-bs {
        grid-template-columns: 1fr;
        padding-left: 8px;
    }

    .oc-shipping--address {
        margin-top: 30px;
    }
}
@media only screen and (max-width: 499px) {
    .post-type-archive-product .post-47 h2, .post-type-archive-product .post-46 h2 {
        width: 160px;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .post-type-archive-product .post-48 h2, 
    .post-type-archive-product .post-49 h2,
    .post-type-archive-product .post-50 h2,
    .post-type-archive-product .post-51 h2 {
        width: 110px;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .products .outofstock .button {
        font-size: 16px !important;
        line-height: 1.4em;
    }
    .sold_out {
        margin-top: -29px;
        left: 6px;
    }
}
@media only screen and (max-width: 450px) {
    .roundup-copy {
        width: calc(100% - 100px);
    }
    .roundup-logo {
        max-width: 150px;
    }
    .checkout_coupon .rc-coupon-code-label {
        font-size: 16px;
    }
    .roundup-feature {
        padding: 10px 10px 10px 10px;
    }
    .roundup-switcher {
        top: 10px;
        right: 10px;
    }
    .roundup-billing {
        top: 56px;
        right: 10px;
    }
    #rc_coupon_section {
        padding: 10px;
    }
    #rc_coupon_section .cart_page_coupon {
        width: 35% !important;
    }
    #order_review #cart_page_coupon_code {
        width: 60% !important;
    }
}