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

/*
    Add your custom styles here
*/
/* =========================================================
   Global setup
   ========================================================= */
:root{
  --gold-1:#F9E4A0;
  --gold-2:#C5A048;
  --gold-fill:linear-gradient(90deg,var(--gold-1) 0%,var(--gold-2) 100%);
  --gold-border:linear-gradient(90deg,var(--gold-1) 0%,var(--gold-2) 27%,var(--gold-1) 100%);
  --gold-rim:1.5px;
  --gold-rim-hover:1px;
  --btn-py:.78em;            /* vertical padding for most buttons */
  --btn-px:2.1em;            /* horizontal padding for most buttons */
  --btn-py-alt:.5em;            /* vertical padding for other buttons */
  --text-dark:#525252;
}

/* Base font + links (safe exceptions) */
html, body{max-width:100%!important;}
.site, .elementor-shortcode, .woocommerce-message, button { 
  font-family: 'Afek', sans-serif;
}
b,strong{font-weight:500;}
a:not(.product_type_variable, .ld-enrollment__join-button, .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link,.elementor-button,.e-n-menu-title-container,.ld-button,.add_to_cart_button,.filter-item a,.elementor-heading-title a,#wp-toolbar a,.elementor-post__title a){
  color:#886392!important;transition:500ms!important;text-decoration:none!important;
}
a:not(.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link,.elementor-button,.e-n-menu-title-container,.ld-button,.add_to_cart_button,.filter-item a,.elementor-heading-title a,#wp-toolbar a,.elementor-post__title a):hover{
  text-decoration:underline!important;
}

/* =========================================================
   One clean gold style
   - Use class="btn--gold" on <a>/<button>
   ========================================================= */
.btn--gold,
.elementor-widget-button.btn--gold .elementor-button, .elementor-button--checkout, .elementor-button--view-cart,  .woocommerce-message a {
  position:relative;display:inline-block;border-radius:999px!important;
  padding:calc(var(--btn-py) - var(--gold-rim)) calc(var(--btn-px) - var(--gold-rim));
  border:var(--gold-rim) solid transparent;
  background:var(--gold-fill) padding-box, var(--gold-border) border-box;
  color:#fff!important;font-family:'Afek',sans-serif;font-weight:600;line-height:1;text-decoration:none;
  box-shadow:0 2px 12px rgba(197,160,72,.09);
  transition:filter .25s, box-shadow .25s, transform .08s ease;
}
.btn--gold:hover,
.elementor-widget-button.btn--gold .elementor-button:hover, .elementor-button--checkout:hover, .elementor-button--view-cart:hover{
  filter:brightness(1.04) saturate(1.12);
  box-shadow:0 4px 18px rgba(198,161,61,.20),0 1px 3px #fff4;
}
.btn--gold:active{transform:translateY(1px);}

/* kill any old wrapper visuals if you used the legacy .goldBtn wrapper */
.goldBtn,.elementor-widget-button.goldBtn,.elementor-widget-button.btn--gold{
  background:none!important;padding:0!important;border:0!important;box-shadow:none!important;
}


/* =========================================================
   ELEMENTOR PRODUCT LOOP "Add to cart" (correct widget)
   - default = GOLD
   - hover   = WHITE fill + thin gold outline
   ========================================================= */
.elementor-widget-woocommerce-product-add-to-cart .add_to_cart_button, .e-loop-add-to-cart-form .product_type_variable {
  border-radius:999px!important;
  padding:calc(var(--btn-py) - var(--gold-rim)) calc(var(--btn-px) - var(--gold-rim));
  border:var(--gold-rim) solid transparent!important;
  background:var(--gold-fill) padding-box, var(--gold-border) border-box!important;
  color:#fff !important; font-weight:600; font-family:'Afek',sans-serif;
  box-shadow:0 2px 12px rgba(197,160,72,.09);
  transition:filter .25s, box-shadow .25s, background .25s, color .25s;
}

/* Also cover classic archive/grid buttons (non-Elementor widget) */
.elementor-products-grid .product .add_to_cart_button,
.woocommerce-loop-product__buttons .add_to_cart_button,
.wp-block-woocommerce-cart .add_to_cart_button,
.wc-block-components-product-button .add_to_cart_button {
  border-radius:999px!important;
  padding:calc(var(--btn-py) - var(--gold-rim)) calc(var(--btn-px) - var(--gold-rim));
  border:var(--gold-rim) solid transparent !important;
  background:var(--gold-fill) padding-box, var(--gold-border) border-box !important;
  color:#fff !important;font-weight:600;font-family:'Afek',sans-serif;
  box-shadow:0 2px 12px rgba(197,160,72,.09);
  transition:filter .25s, box-shadow .25s, background .25s, color .25s;
}
.elementor-products-grid .product .add_to_cart_button:hover,
.woocommerce-loop-product__buttons .add_to_cart_button:hover,
.wp-block-woocommerce-cart .add_to_cart_button:hover,
.wc-block-components-product-button .add_to_cart_button:hover {
  background:#fff padding-box, #d5b668 border-box !important;
  border:var(--gold-rim-hover) solid transparent !important;
  color:var(--text-dark)!important; box-shadow:0 3px 14px rgba(197,160,72,.14) !important;
}

/* =========================================================
   WOO CART — proceed to checkout + notices + coupon
   ========================================================= */
.wc-block-cart__submit-button.contained{
  border-radius:999px!important;
  border:var(--gold-rim) solid transparent!important;
  background:var(--gold-fill) padding-box, var(--gold-border) border-box!important;
  box-shadow:0 2px 12px rgba(197,160,72,.09);
}
.wc-block-cart__submit-button.contained,
.wc-block-cart__submit-button.contained .wc-block-components-button__text{
  color:#fff!important;text-decoration-color:#fff!important;
}
.wc-block-cart__submit-button.contained:hover{
  filter:brightness(1.04) saturate(1.12);
  box-shadow:0 4px 18px rgba(198,161,61,.20),0 1px 3px #fff4;
}

/* Notices area */
.woocommerce-notices-wrapper .woocommerce-message{background:#FAF9F7;}

/* Coupon row */
.wc-block-components-totals-coupon__form input{
  border:1px solid #ccc!important;border-radius:12px!important;
}
.wc-block-components-totals-coupon__button.contained{
  border-radius:999px!important;
  border:var(--gold-rim) solid transparent!important;
  background:var(--gold-fill) padding-box, var(--gold-border) border-box!important;
  color:#fff!important;
}

/* Cross-sells styling on cart */
.wp-block-woocommerce-cart-cross-sells-block h2.wp-block-heading{font-size:1.68rem;font-weight:400;}
.wp-block-cart-cross-sells-product__product-title{font-size:1.24rem;line-height:1.2em;}
.wp-block-cart-cross-sells-product__product-image img{border-radius:12px;}

/* =========================================================
   ELEMENTOR FORMS (Submit) + general inputs
   ========================================================= */
.elementor-form .e-form__buttons .elementor-button {
  border-radius:999px!important;
  border:var(--gold-rim) solid transparent!important;
  background:var(--gold-fill) padding-box, var(--gold-border) border-box!important;
  color:#fff !important; font-weight:600; font-family:'Afek',sans-serif;
  padding:calc(var(--btn-py) - var(--gold-rim)) calc(var(--btn-px) - var(--gold-rim));
  box-shadow:0 2px 12px rgba(197,160,72,.09);
  transition:filter .25s, box-shadow .25s;
}
.elementor-form .e-form__buttons .elementor-button:hover{
  filter:brightness(1.04) saturate(1.12);
  box-shadow:0 4px 18px rgba(198,161,61,.20),0 1px 3px #fff4;
}
.comment-form-comment textarea,
.comment-form input,
.wc-block-checkout__form input,
.wc-block-checkout__form select{border-color:#ccc!important;border-radius:12px;}

/* =========================================================
   COMMENTS submit (input[type=submit] cannot use ::before)
   ========================================================= */
.form-submit .submit {
  appearance:none;border-radius:999px!important;cursor:pointer;
  padding:calc(var(--btn-py-alt) - var(--gold-rim)) calc(var(--btn-px) - var(--gold-rim));
  border:var(--gold-rim) solid transparent!important;
  background:var(--gold-fill) padding-box, var(--gold-border) border-box!important;
  color:#fff!important; font-weight:600; font-family:'Afek',sans-serif;
  box-shadow:0 2px 12px rgba(197,160,72,.09);
  transition:filter .25s, box-shadow .25s;
  font-weight:500;
}
.form-submit .submit:hover{
  filter:brightness(1.04) saturate(1.12);
  box-shadow:0 4px 18px rgba(198,161,61,.20),0 1px 3px #fff4;
}

/* =========================================================
   LEARNDASH — Mark Complete + nav links
   ========================================================= */
.sfwd-mark-complete .learndash_mark_complete_button{
  border-radius:999px!important;
  padding:calc(var(--btn-py-alt) - var(--gold-rim)) calc(var(--btn-px) - var(--gold-rim));
  border:var(--gold-rim) solid transparent!important;
  background:var(--gold-fill) padding-box, var(--gold-border) border-box!important;
  color:#fff!important;font-family:'Afek',sans-serif!important;font-weight:500!important;
  box-shadow:0 2px 12px rgba(197,160,72,.09);
  transition:filter .25s, box-shadow .25s;
}
.sfwd-mark-complete .learndash_mark_complete_button:hover,
.sfwd-mark-complete .learndash_mark_complete_button:focus{
  /* keep same shape + family on hover, just a gentle lift */
  filter:brightness(1.05) saturate(1.05);
  box-shadow:0 4px 18px rgba(198,161,61,.20);
  padding:calc(var(--btn-py) - var(--gold-rim)) calc(var(--btn-px) - var(--gold-rim));
}
.ld-navigation a{font-family:'Afek',sans-serif!important;font-weight:400!important;border:1px solid transparent!important;}
.ld-navigation a:hover,.ld-navigation a:focus{color:var(--e-global-color-accent);font-weight:400!important;text-decoration:underline;}

/* =========================================================
   Product grid cards: images + price
   ========================================================= */
.productGridSingle .elementor-widget-theme-post-featured-image img{
  width:100%;height:100%;max-height:160px;object-fit:cover;object-position:center;display:block;border-radius:12px;
}
.productGridSingle .elementor-widget-theme-post-featured-image{width:100%;height:160px;max-height:300px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#faf9f6;}
.productGridSingle{box-shadow:0 0 18px rgba(0,0,0,.08);}
.productGridSingle .price{color:#525252!important;}

/* Woo archive header controls */
.woocommerce-result-count,.woocommerce-ordering{font-family:'Afek';}
/* Apply select styling only on the live front-end */
body:not(.wp-admin):not(.elementor-editor-active) select {
  border: 1px solid #F6F2F7;
  border-radius: 8px;
  padding: .5rem 1rem;
  transition: .3s;
  width: 100%;
  background: #F6F2F7;
}

.orderby{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#f8f5fa;padding-left:32px;position:relative;}
.woocommerce-ordering{position:relative;display:inline-block;}
.woocommerce-ordering::after{
  content:'';position:absolute;left:16px;top:50%;width:18px;height:18px;pointer-events:none;
  background:url('https://haoptimit.ussl.co.il/wp-content/uploads/2025/07/down.svg') center/contain no-repeat;transform:translateY(-50%);
}

/* Empty cart grid polish */
.wp-block-woocommerce-cart{padding:50px 80px 80px;}
.wc-block-cart__empty-cart__title.with-empty-cart-icon:before{background-color:#CFBCD3!important;}
.wp-block-woocommerce-cart .wc-block-grid__product{box-shadow:0 0 24px rgba(0,0,0,.18);border-radius:12px;padding:6px 0!important;}
.wp-block-woocommerce-cart .wc-block-grid__product-link{border-radius:8px!important;}
.wp-block-woocommerce-cart .wc-block-grid__product-image img{border-radius:8px!important;}
.wp-block-woocommerce-cart .wc-block-grid__product-title{font-size:1rem;font-weight:500;color:#252525!important;}
.wp-block-woocommerce-cart .wc-block-grid__product-onsale{border:none!important;background:#CFBCD3!important;color:#fff!important;font-weight:500!important;width:42px;height:42px;display:flex!important;align-items:center;border-radius:24px!important;}
.wp-block-woocommerce-cart .wc-block-grid__product-price{color:#252525!important;}
.wp-block-woocommerce-cart .wc-block-grid__products{margin-top:36px;}

/* =========================================================
   Menu underline “spark” for active/hover
   ========================================================= */
.elementor-widget-n-menu .e-n-menu-heading{justify-content:space-between;}
.e-n-menu-title{position:relative;padding:0!important;}
.e-n-menu-title::before{
  content:'';display:block;position:absolute;top:-12px;left:50%;width:30px;height:2px;background:#d4b362;border-radius:2px;
  transform:translateX(-50%) scaleX(0);transform-origin:center;transition:transform .4s cubic-bezier(.77,0,.18,1);
  box-shadow:0 2px 6px #bfa04630;pointer-events:none;
}
.e-n-menu-title.e-current::before,
.e-n-menu-title:hover::before{transform:translateX(-50%) scaleX(1);}

/* =========================================================
   Instagram gallery height
   ========================================================= */
@media (min-width:1024px){.instagram-gallery-item{height:350px;}}
@media (max-width:1023px){.instagram-gallery-item{height:420px;}}

/* =========================================================
   Floating desktop icon buttons
   ========================================================= */
.floatingBtnsDesktop .elementor-icon{
  background:linear-gradient(300deg,#C5A048 0%,#F9E4A0 100%)!important;
  border:2px solid #DFC274;box-shadow:0 0 10px rgba(0,0,0,.14);
}
.floatingBtnsDesktop .elementor-icon:hover{filter:brightness(1.06);box-shadow:0 0 24px rgba(0,0,0,.14);}

/* ---------- 1. Desktop: use CSS Grid for card layout ---------- */
@media (min-width: 1025px) {
  .wp-block-woocommerce-cart .wc-block-grid__products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr); /* 4 cards per row */
    gap: 2em;
    align-items: stretch; /* all cards same height */
  }
  .wp-block-woocommerce-cart .wc-block-grid__product {
    /* Remove any max-width */
    max-width: unset !important;
  }
}

/* ---------- 2. Tablet: 2 per row ---------- */
@media (min-width: 600px) and (max-width: 1024px) {
  .wp-block-woocommerce-cart .wc-block-grid__products {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5em;
  }
  .wc-block-grid__product {
    max-width: unset !important;
  }
}

/* ---------- 3. Mobile: 1 per row ---------- */
@media (max-width: 599px) {
  .wp-block-woocommerce-cart .wc-block-grid__products {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 1em;
  }
  .wc-block-grid__product {
    max-width: unset !important;
  }
}

/* ---------- 4. Card as flex column ---------- */
.wp-block-woocommerce-cart .wc-block-grid__product {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 4px 32px 0 rgba(0,0,0,0.07);
  /* If you want a border, add here */
  /* border: 1px solid #f4f0e6; */
  overflow: hidden;
  /* Optional: smooth transition on hover */
  transition: box-shadow .2s;
}
.wp-block-woocommerce-cart  .wc-block-grid__product:hover {
  box-shadow: 0 8px 32px 0 rgba(197,160,72,0.13);
}

/* ---------- 5. Button always at the bottom ---------- */
.wp-block-woocommerce-cart .wc-block-grid__product-add-to-cart {
  margin-top: auto;
  padding-bottom: 1.6em; /* adjust for space from card edge */
}

/* ---------- 6. Tidy up margin/padding on title & price ---------- */
.wp-block-woocommerce-cart .wc-block-grid__product-title,
.wp-block-woocommerce-cart .wc-block-grid__product-price {
  margin-bottom: 0.7em;
}

/* ---------- 7. (Optional) Prevent extra card padding ---------- */
.wp-block-woocommerce-cart .wc-block-grid__product {
  padding: 0 0 0 0; /* Remove if cards need inner padding */
}

/* ---------- 8. Responsive image inside card ---------- */
.wp-block-woocommerce-cart .wc-block-grid__product-image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0 0 0 0; /* Match card, remove if not needed */
}

/* =========================================================
   PATCH: when the wrapper itself (.btn--gold) is the direct
   parent of .elementor-add-to-cart, make the WRAPPER naked.
   Keep the inner add-to-cart controls styled as before.
   ========================================================= */

/* Modern browsers */
.btn--gold:has(> .elementor-add-to-cart){
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}

/* Fallback for Elementor widgets (no :has support) */
.elementor-widget-woocommerce-product-add-to-cart.btn--gold,
.elementor-widget-wc-add-to-cart.btn--gold{
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}


/* Typography requirement for the add-to-cart container */
.btn--gold > .elementor-add-to-cart a {
  font-weight:500 !important;
}

.btn--gold > .elementor-add-to-cart:hover a {
 color:#fff !important; 
}


/* LearnDash — Enroll/Join button (gold style, override WP blue) */
#btn-join.ld-enrollment__join-button,
a.ld-enrollment__join-button.btn-join,
a.ld-enrollment__join-button.btn-join.button,
a.ld-enrollment__join-button.btn-join.button-primary,
a.ld-enrollment__join-button.btn-join.wp-element-button {
  position: relative;
  display: inline-block;
  padding: .85em 2em !important;
  border: none !important;
  border-radius: 999px !important;
  background: var(--gold-fill) !important;        /* your gold gradient */
  color: #fff !important;
  font-family: 'Afek', sans-serif !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  box-shadow: 0 2px 12px rgba(197,160,72,.09);
  isolation: isolate;
}

a.ld-enrollment__join-button {
  	background: var(--gold-fill) !important;        /* your gold gradient */
  color: #fff !important;
  font-family: 'Afek', sans-serif !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  box-shadow: 0 2px 12px rgba(197,160,72,.09);
  isolation: isolate;
 	border: 1px solid var(--e-global-color-accent) !important; 
  border-radius:50px !important;
  padding:8px 24px 9px 24px !important;
  transition:300ms;
}

.ld-enrollment__pricing-price {
	direction:rtl !important;  
}

/* gradient rim */
#btn-join.ld-enrollment__join-button::before,
a.ld-enrollment__join-button.btn-join::before, a .ld-enrollment__join-button:before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: var(--gold-rim, 1.5px);
  background: var(--gold-border, linear-gradient(90deg,#F9E4A0 0%,#C5A048 27%,#F9E4A0 100%));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  z-index: -1;
}

/* hover/focus: subtle lift, keep same colors/shape */
#btn-join.ld-enrollment__join-button:hover,
#btn-join.ld-enrollment__join-button:focus,
a.ld-enrollment__join-button.btn-join:hover,
a.ld-enrollment__join-button.btn-join:focus, a.ld-enrollment__join-button:hover, a.ld-enrollment__join-button:focus {
  filter: brightness(1.05) saturate(1.08) !important;
  box-shadow: 0 4px 18px rgba(198,161,61,.20), 0 1px 3px #fff4 !important;
  color: #fff !important;
  background: var(--gold-fill) !important;
}