/* 
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-grapezero
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
*/

/*
    Add your custom styles here
*/

body {
    --cpx-gradient: linear-gradient(110deg, var( --e-global-color-secondary ) 0%, var( --e-global-color-primary ) 100%);
}

.gradient-text h1, .gradient-text h2, .gradient-text h3, .gradient-text h4, .gradient-text h5, .gradient-text h6, .gradient-text .elementor-heading-title {
    background: linear-gradient(to bottom right, var(--e-global-color-secondary), var(--e-global-color-primary)); 
    -webkit-text-fill-color: transparent; 
    -webkit-background-clip: text; 

    padding-bottom: .13em; /* Fix early clipping that results in clipping the bottom of J's */
}

.gradient-button a.elementor-button, .form-gradient-button button.elementor-button, .cart-gradient-button .elementor-menu-cart__main a.elementor-button {
    background: linear-gradient(110deg, var( --e-global-color-secondary ) 0%, var( --e-global-color-primary ) 100%) !important;
    transition: all .2s ease-in-out !important;
    background-size: 130% 130% !important;
}
.gradient-button a.elementor-button:hover, .form-gradient-button button.elementor-button:hover, .cart-gradient-button .elementor-menu-cart__main a.elementor-button:hover {
    background-position: 91% 100% !important;
    cursor: pointer;
}

a.elementor-button .elementor-button-icon {
    line-height: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

/* 
This styles all places in WooCommerce where product cards are shown 
It fixes the inconsistency of having to edit every product widget seperately
*/

/* Grid */
.cpx-products.elementor-products-grid ul.products.elementor-grid {
    grid-row-gap: 0px !important;
    grid-column-gap: 0px !important;
}

/* Card */
.cpx-products.elementor-products-grid ul.products.elementor-grid .woocommerce-loop-product__title {
    color: var(--e-global-color-text);
    padding-bottom: .2em;
}

.cpx-products.elementor-products-grid .woocommerce-loop-product__link img.attachment-woocommerce_thumbnail {
    transition: transform .6s cubic-bezier(.19,1,.22,1);
}

.cpx-products.elementor-products-grid .woocommerce-loop-product__link:hover img.attachment-woocommerce_thumbnail {
    transform: translateY(-6px);
}

.cpx-products.elementor-products-grid ul.products.elementor-grid span.price {
    text-align: right;
    color: var(--e-global-color-text);
}

.cpx-products.elementor-products-grid ul.products.elementor-grid span.price ins {
    text-decoration: none;
    font-weight: inherit;
}

.cpx-products.elementor-products-grid ul.products.elementor-grid a.button {
    width: 100%;
    display: block;
    border-radius: 50px;
    background: var(--cpx-gradient);
    color: var(--e-global-color-05a780c);
    text-align: center;
    transition: all .2s ease-in-out !important;
    background-size: 130% 130% !important;
    padding: 15px 25px 15px 25px;
    font-family: var(--e-global-typography-9f0a81d-font-family), Sans-serif;
    font-size: var(--e-global-typography-9f0a81d-font-size);
    font-weight: var(--e-global-typography-9f0a81d-font-weight);
}

.cpx-products.elementor-products-grid ul.products.elementor-grid a.button:hover {
    background-position: 91% 100% !important;
    cursor: pointer;
}

.cpx-products.elementor-products-grid ul.products.elementor-grid a img {
    border-radius: 5px;
}

.cpx-products.elementor-products-grid ul.products.elementor-grid li.product {
    border: 1px solid var(--e-global-color-accent);
    margin-left: -1px;
    margin-bottom: -1px;
    padding: 1.25rem;
}

.cpx-products.elementor-products-grid ul.products.elementor-grid li.product .onsale {
    border-radius: 30px;
    padding: 5px 8px;
    line-height: 1rem;
    height: auto;
    min-height: 0;
    font-size: 14px;
    background-color: var(--e-global-color-accent);
    color: var(--e-global-color-text)
}

.star-rating span:before {
    color: #ffc100 !important;
}

@media screen and (max-width: 768px) {
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product {
        padding: 20px;
    }

    /* Select the first 2 products */
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product:nth-child(-n+2) {
        border-top: none;
    }

    /* Select the last 2 products */
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product:nth-last-child(-n+2) {
        border-bottom: none;
    }

    /* Select the first of every 3 products */
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product:nth-child(2n+1) {
        border-left: none;
    }

    /* Select the last of every 3 products */
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product:nth-child(2n) {
        border-right: none;
    }

    .cpx-products.elementor-products-grid ul.products.elementor-grid a.button {
        font-size: 14px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product {
        padding: 1.5rem;
    }

    /* Select the first 3 products */
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product:nth-child(-n+3) {
        border-top: none;
    }

    /* Select the last 3 products */
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product:nth-last-child(-n+3) {
        border-bottom: none;
    }

    /* Select the first of every 3 products */
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product:nth-child(3n+1) {
        border-left: none;
    }

    /* Select the last of every 3 products */
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product:nth-child(3n) {
        border-right: none;
    }
}
@media screen and (min-width: 1024px) {
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product {
        padding: 2rem;
    }

    /* Select the first 4 products */
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product:nth-child(-n+4) {
        border-top: none;
    }

    /* Select the last 4 products */
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product:nth-last-child(-n+4) {
        border-bottom: none;
    }

    /* For every 4 products, select the first one */
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product:nth-child(4n+1) {
        border-left: none;
    }

    /* For every 4 products, select the last one */
    .cpx-products.elementor-products-grid ul.products.elementor-grid li.product:nth-child(4n) {
        border-right: none;
    }
}

/* Dark mode for product overview */
.cpx-products.cpx-products--dark.elementor-products-grid ul.products.elementor-grid .woocommerce-loop-product__title {
    color: var( --e-global-color-05a780c );
}

.cpx-products.cpx-products--dark.elementor-products-grid ul.products.elementor-grid span.price {
    color: var( --e-global-color-05a780c );
}

/* Product page */

/* Sale flash */
.single-product.woocommerce .elementor-widget-woocommerce-product-images span.onsale {
    background-color: var(--e-global-color-accent);
    color: var(--e-global-color-text);
    border-radius: 50px;
    padding: 5px 8px;
    line-height: 1rem;
    height: auto;
    min-height: 0;
    font-size: 14px;
    display: inline-block;
}

/* Reviews */
.single-product.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce-Reviews #respond .form-submit input[type="submit"] {
    width: 100%;
    display: block !important;
    border-radius: 50px !important;
    background: var(--cpx-gradient) !important;
    color: var(--e-global-color-05a780c) !important;
    text-align: center;
    transition: all .2s ease-in-out !important;
    background-size: 130% 130% !important;
    padding: 15px 25px 15px 25px !important;
    font-family: var(--e-global-typography-9f0a81d-font-family), Sans-serif;
    font-size: var(--e-global-typography-9f0a81d-font-size) !important;
    font-weight: var(--e-global-typography-9f0a81d-font-weight) !important;
}

.single-product.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce-Reviews #respond .form-submit input[type="submit"]:hover {
    background-position: 91% 100% !important;
    cursor: pointer;
}

/* Related */
.related.products > h2 {
    display: block;
    text-align: center;
}

/* Style the revamped shopping cart page */
.cpx-custom-cart .is-large.wc-block-cart .wc-block-cart-items {
    border-bottom: none;
}

.cpx-custom-cart table caption+thead tr:first-child td, .cpx-custom-cart table caption+thead tr:first-child th, .cpx-custom-cart table colgroup+thead tr:first-child td, .cpx-custom-cart table colgroup+thead tr:first-child th, .cpx-custom-cart table thead:first-child tr:first-child td, .cpx-custom-cart table thead:first-child tr:first-child th {
    border-top: none;
}

.cpx-custom-cart .is-large.wc-block-cart .wc-block-cart-items td {
    border-top-color: var(--e-global-color-accent);
}

.cpx-custom-cart .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
    padding: .5rem 0;
    border-radius: 0;
    border-color: var(--e-global-color-accent);
}

.cpx-custom-cart .wc-block-components-quantity-selector:after, .cpx-custom-cart .wc-block-components-totals-wrapper, .cpx-custom-cart .wp-block-woocommerce-cart-order-summary-totals-block {
    border-color: var(--e-global-color-accent);
}

.cpx-custom-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
    color: var(--e-global-color-text);
    font-weight: bold;
}

.cpx-custom-cart .wc-block-components-radio-control .wc-block-components-radio-control__input {
    padding: 0 !important;
}

.cpx-custom-cart .wc-block-components-radio-control .wc-block-components-radio-control__input:checked:before {
    background: var(--e-global-color-secondary);
}

.cpx-custom-cart .is-large.wc-block-cart .wc-block-components-sidebar {
    margin-top: -.3em;
}

.cpx-custom-cart .wc-block-components-sidebar-layout {
    max-width: calc(100vw - 40px);
    margin-left: auto;
    margin-right: auto;
}

.cpx-custom-cart .wc-block-cart__submit-button {
    width: 100%;
    display: block;
    border-radius: 50px;
    background: var(--cpx-gradient);
    color: var(--e-global-color-05a780c);
    text-align: center;
    transition: all .2s ease-in-out !important;
    background-size: 130% 130% !important;
    padding: 15px 25px 15px 25px;
    font-family: var(--e-global-typography-9f0a81d-font-family), Sans-serif;
    font-size: var(--e-global-typography-9f0a81d-font-size);
    font-weight: var(--e-global-typography-9f0a81d-font-weight);
}

.cpx-custom-cart .wc-block-cart__submit-button:hover {
    background-position: 91% 100% !important;
    cursor: pointer;
}

/* Style the revamped checkout page */
/* Regular fields */
.cpx-custom-checkout .wc-block-components-form .wc-block-components-text-input input[type=email], .cpx-custom-checkout .wc-block-components-form .wc-block-components-text-input input[type=number], .cpx-custom-checkout .wc-block-components-form .wc-block-components-text-input input[type=tel], .cpx-custom-checkout .wc-block-components-form .wc-block-components-text-input input[type=text], .cpx-custom-checkout .wc-block-components-form .wc-block-components-text-input input[type=url], .cpx-custom-checkout .wc-block-components-text-input input[type=email], .cpx-custom-checkout .wc-block-components-text-input input[type=number], .cpx-custom-checkout .wc-block-components-text-input input[type=tel], .cpx-custom-checkout .wc-block-components-text-input input[type=text], .cpx-custom-checkout .wc-block-components-text-input input[type=url] {
    border-color: var(--e-global-color-primary);
    border-radius: 15px;
}

.cpx-custom-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input, .cpx-custom-checkout .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input {
    border-color: var(--e-global-color-primary);
    border-radius: 15px;
}

.wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion.is-highlighted, .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion:active, .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion:focus, .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion:hover, .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion.is-highlighted, .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion:active, .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion:focus, .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion:hover {
    background-color: var(--e-global-color-primary) !important;
}

.cpx-custom-checkout .wc-block-components-checkbox__input, .cpx-custom-checkout .wc-block-components-radio-control__input {
    padding: 0 !important;
}

.cpx-custom-checkout .wc-block-components-checkbox .wc-block-components-checkbox__mark {
    margin-left: .3em;
    margin-top: .2em;
}

.cpx-custom-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:checked:before {
    background: var(--e-global-color-secondary);
}

.cpx-custom-checkout .wc-block-components-address-card {
    border-color: var(--e-global-color-primary);
    background: #fff;
}

.cpx-custom-checkout .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
    border-radius: 50px;
    background: var(--cpx-gradient);
    color: var(--e-global-color-05a780c);
    text-align: center;
    transition: all .2s ease-in-out !important;
    background-size: 130% 130% !important;
    padding: 15px 25px 15px 25px;
    font-family: var(--e-global-typography-9f0a81d-font-family), Sans-serif;
    font-size: var(--e-global-typography-9f0a81d-font-size);
    font-weight: var(--e-global-typography-9f0a81d-font-weight);
}

.cpx-custom-checkout .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button:hover {
    background-position: 91% 100% !important;
    cursor: pointer;
}

.cpx-custom-checkout .is-large .wp-block-woocommerce-checkout-order-summary-block {
    border-color: var(--e-global-color-accent);
    background: #fff;
}

.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted, .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted {
    background: #fff;
}

.cpx-custom-checkout .wc-block-components-totals-wrapper, .cpx-custom-checkout .wp-block-woocommerce-checkout-order-summary-totals-block, .cpx-custom-checkout .wc-block-components-totals-wrapper {
    border-top-color: var(--e-global-color-accent);
}

.cpx-custom-checkout .is-large .wc-block-checkout__sidebar {
    top: 155px; /* Sticky distance with header */
}

.cpx-custom-checkout .wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button {
    border-color: var(--e-global-color-primary);
    color: var(--e-global-color-text);
}

.cpx-custom-checkout .wc-block-components-panel__button:hover, .cpx-custom-checkout .wc-block-components-panel__button:focus, .cpx-custom-checkout .wc-block-components-panel__button:active {
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    .cpx-custom-checkout .wc-block-components-address-card {
        flex-direction: column;
    }

    .cpx-custom-checkout .wc-block-components-checkout-step__container {
        max-width: calc(100vw - 40px);
    }

    .cpx-custom-checkout .wc-block-components-address-form__address_2-toggle {
        font-size: .9rem;
    }
}

/* New thankyou page */
.woocommerce-order-received table.shop_table {
    border-color: var(--e-global-color-accent);
    background: #fff;
}

.woocommerce-order-received table.shop_table caption+thead tr:first-child td, .woocommerce-order-received table.shop_table caption+thead tr:first-child th, .woocommerce-order-received table.shop_table colgroup+thead tr:first-child td, .woocommerce-order-received table.shop_table colgroup+thead tr:first-child th, .woocommerce-order-received table.shop_table thead:first-child tr:first-child td, .woocommerce-order-received table.shop_table thead:first-child tr:first-child th, .woocommerce-order-received table.shop_table td {
    border-top-color: var(--e-global-color-accent) !important;
}

.woocommerce-order-received table.shop_table td, .woocommerce-order-received table.shop_table th {
    border-bottom: none;
    border-left: none;
    border-right: none;
}

.woocommerce-order-received table tbody>tr:nth-child(odd)>td, table tbody>tr:nth-child(odd)>th {
    background: transparent;
}

.woocommerce-order-received .woocommerce-customer-details address {
    border-color: var(--e-global-color-primary);
    border-width: 1px;
    background: #fff;
}

.woocommerce-order-received .woocommerce-customer-details address p {
    margin-bottom: 0;
}

@media screen and (max-width: 768px) {
    .woocommerce-order-received .woocommerce-customer-details address {
        margin-bottom: 1em !important; 
    }

    .woocommerce-order-received ul.order_details {
        padding: 0;
        display: grid;
        grid-template-columns: auto;
        grid-row-gap: 15px;
    }

    .woocommerce-order-received ul.order_details::after, .woocommerce-order-received ul.order_details::before {
        display: none;
    }
}

/* For all accordions */
.cpx-faq .elementor-tab-title {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}

.cpx-faq .elementor-tab-title .elementor-accordion-title { 
    transition: color .2s ease;
}

.cpx-faq .elementor-tab-title:hover .elementor-accordion-title {
    color: var( --e-global-color-secondary );
}

.cpx-faq .elementor-accordion-icon > span {
    line-height: 0;
}

.cpx-faq .elementor-tab-content {
    border-radius: 20px;
}

.cpx-faq .elementor-tab-content p:last-child {
    margin-bottom: 0;
}


/* new css 13-02-2025 */
/* .language_section {position:relative;}
.language_section select.language-switcher{width: 100%;
  border: none;
  border-radius: 3px;
  padding: .5rem 1rem;
  transition: all .3s;
  background: #fffcfc;
  appearance: none;
  position: relative;
  color: #7a0435;
  font-weight: 500;padding-right: 45px;cursor: pointer;}
  
.language_section:after{position:absolute;content:'';
    border: solid #8f2d56;
    border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 4px;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  right: 10px;
  top: 12px;
    
}
.language_section select.language-switcher:focus{outline: none;border: 0;}
.language_section select.language-switcher option{cursor: pointer;}
.short_code .elementor-1958 .elementor-element.elementor-element-ba03e59 > .elementor-widget-container {
    background-color: transparent !important;
  } */

.language_section .dropdown-toggle{position: relative;min-width: 180px; text-align: left; border: 0; outline: none; position: relative; font-size: 18px; font-weight: 600; padding: 0.5rem 1.375rem;color: #8f2d56;}
.language_section .dropdown-toggle::after{position:absolute;content:'';
    border: solid #8f2d56;
    border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 4px;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  right: 16px;
  top: 12px;}
  .language_section .dropdown-menu {border: 0; position: absolute; background: #fff;    border-radius: 10px;left: 0; width: 100%;}
  .language_section .dropdown-toggle:hover,  .language_section .dropdown-toggle:focus{color: #fff;background: #8f2d56;}
  .language_section .dropdown-toggle:hover::after {border-color: #fff;}