/* 1. Use a more-intuitive box-sizing model */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* 3. Enable keyword animations */
@media (prefers-reduced-motion: no-preference) {
  html {
    interpolate-size: allow-keywords;
  }
}

body {
  line-height: 1.25;
  -webkit-font-smoothing: antialiased;
  margin: 0;
  /* the SITE's default font: Elementor kit global typography when defined,
     otherwise a neutral sans fallback (never the browser serif default) */
  font-family: var(--e-global-typography-text-font-family, Arial), sans-serif;
  overflow-x:none;
}

/* 6. Improve media defaults */
img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

/* 7. Inherit fonts for form controls */
input,
button,
textarea,
select {
  font: inherit;
  cursor:pointer;
  color:#000;
}

::placeholder {
  color:#050505;
}

/* 8. Avoid text overflows */
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

/* 9. Improve line wrapping */
p {
  text-wrap: pretty;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance;
}


/* Scrollbar */
/* Firefox (uncomment to work in Firefox, although other properties will not work!)  */
* {
  scrollbar-width: thin;
  scrollbar-color: #090909 #EEEEEE;
}

/* Chrome, Edge and Safari */
*::-webkit-scrollbar {
  height: 10px;
  width: 10px;
}
*::-webkit-scrollbar-track {
  border-radius: 0px;
  background-color: #EEEEEE;
}

*::-webkit-scrollbar-track:hover {
  background-color: #DDDDDD;
}

*::-webkit-scrollbar-track:active {
  background-color: #DDDDDD;
}

*::-webkit-scrollbar-thumb {
  border-radius: 1px;
  background-color: #090909;
}

*::-webkit-scrollbar-thumb:hover {
  background-color: #050505;
}

*::-webkit-scrollbar-thumb:active {
  background-color: #010101;
}

a, a:visited, a:focus {
  color:#1a3c6e;
}
a:hover {
  color:#06224d;
}

.oweb-p p {
  margin:0;
  padding:0;
}

/* Product Loop */
.oweb-product_loop_title {
    margin: 0;
    padding: 0;
    font-size: 18px !important;
}

.oweb-product_loop_brand {
    margin: 0;
    padding: 0;
    font-size: 14px !important;
}


/* Product Page */
/* Short Description */
/* Qty */
.quantity .qty {
    width: 100%;
}
/* Image Slider */
.woocommerce-product-gallery__image img {
    width: 100%;
}

ol.flex-control-nav.flex-control-thumbs {
    display: flex;
    overflow: auto;
    list-style: none;
    padding: 0;
    margin: 0 !important;
}

ol.flex-control-nav.flex-control-thumbs li {
  padding: 0 !important;
  cursor: pointer;
}
/* Base layout */
.woocommerce-product-gallery.woocommerce-product-gallery--with-images {
    display: flex;
    flex-direction: row-reverse;
    align-items: stretch; /* force equal heights */
    gap: 10px;
    max-height: 822px;
}

/* Main image area */
.woocommerce-product-gallery.woocommerce-product-gallery--with-images .flex-viewport {
    width: 80%;
    height: auto !important; /* auto height but matches thumbnails because of parent stretch */
    margin: 0 !important;
}

/* Thumbnails column */
.woocommerce-product-gallery.woocommerce-product-gallery--with-images 
    ol.flex-control-nav.flex-control-thumbs {
    width: 20%;
    display: flex;
    flex-direction: column;
    height: auto !important;
    max-height: none !important;
    overflow-y: auto;
    gap:10px;
}
/* Fix thumbnail images */
.woocommerce-product-gallery.woocommerce-product-gallery--with-images 
    ol.flex-control-nav.flex-control-thumbs li {
      padding: 0 !important;
}

.woocommerce-product-gallery.woocommerce-product-gallery--with-images 
    ol.flex-control-nav.flex-control-thumbs img {
    width: 100%;
    height: auto; /* keep proportion */
    display: block;
}

@media(max-width:1280px) {
  .woocommerce-product-gallery.woocommerce-product-gallery--with-images {
    flex-direction: column;
    max-height: 100%;
  }
  .woocommerce-product-gallery.woocommerce-product-gallery--with-images .flex-viewport, .woocommerce-product-gallery.woocommerce-product-gallery--with-images 
    ol.flex-control-nav.flex-control-thumbs {
    width:100%;
    flex-direction: row;
  }
  .woocommerce-product-gallery.woocommerce-product-gallery--with-images ol.flex-control-nav.flex-control-thumbs li {
      flex: 1;
  }
}

/* Sale Badge - OWEB: Discount Rules */
.oweb-discount-badge {
    position: absolute;
    z-index: 1;
    right: 0;
    padding: 5px;
    font-size: 14px;
    background: #e1e1e1;
    border-radius: 0 5px;
}


/* Hide lightbox button */
a.woocommerce-product-gallery__trigger {
    display:none
}

/* Product Varations */
.woo-variation-swatches .variable-items-wrapper {
  justify-content: center !important;
}

.woo-variation-swatches.wvs-show-label .variations td,
.woo-variation-swatches.wvs-show-label .variations th,
.woo-variation-swatches.wvs-show-label .variations td label {
  text-align: center;
}

/* Product Tabs */
ul.tabs.wc-tabs {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

ul.tabs.wc-tabs li {
    background: #ddd;
    transition: all .3s ease;
    padding: 20px;
}

ul.tabs.wc-tabs li.active, ul.tabs.wc-tabs li:hover {
    background: #f2f2f2;
}

.wc-tab {
    background: #f2f2f2;
    padding: 20px;
    width: 100%;
}

/* Elementor Search */
label.e-search-label {
    display: none !important;
}

/* Wishlist */
.tinv-wraper.woocommerce.tinv-wishlist.tinvwl-shortcode-add-to-cart {
    position: absolute;
    bottom: 5px;
    left: 5px;
    width: 25px;
    height: 25px;
    z-index: 1;
}
.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {
  width:100% !important;
  height:100% !important;
}
a.tinvwl-position-shortcode:before {
    content: "" !important;
    display: inline-block !important;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'><path fill='%23000' d='M458.4 64.3C400.6 15.7 311.3 23 256 79.3 200.7 23 111.4 15.6 53.6 64.3-21.6 127.6-10.6 230.8 43 285.5l175.4 178.7c10 10.2 23.4 15.9 37.6 15.9 14.3 0 27.6-5.6 37.6-15.8L469 285.6c53.5-54.7 64.7-157.9-10.6-221.3zm-23.6 187.5L259.4 430.5c-2.4 2.4-4.4 2.4-6.8 0L77.2 251.8c-36.5-37.2-43.9-107.6 7.3-150.7 38.9-32.7 98.9-27.8 136.5 10.5l35 35.7 35-35.7c37.8-38.5 97.8-43.2 136.5-10.6 51.1 43.1 43.5 113.9 7.3 150.8z'/></svg>") !important;
    z-index: 99;
    fill: #000;
    color: #000;
  
    margin: 0 !important;
  	position:relative !important;
    top: 0 !important;
    left: 0 !important;
    width: 100%;
    height: 100%;
}

a.tinvwl-position-shortcode.tinvwl-product-in-list:before {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'><path fill='%23000' d='M462.3 62.6C407.5 15.9 326 24.3 275.7 76.2L256 96.5l-19.7-20.3C186.1 24.3 104.5 15.9 49.7 62.6c-62.8 53.6-66.1 149.8-9.9 207.9l193.5 199.8c12.5 12.9 32.8 12.9 45.3 0l193.5-199.8c56.3-58.1 53-154.3-9.8-207.9z'/></svg>") !important;
}

/* Price */

/* Variations */
.woocommerce-variation-availability { display:none; }

table.variations {
  margin: 0 !important;
  border-collapse: collapse;
  width: 100%;
}

table.variations tr {
  display: flex;
  align-items: center;
  gap: 12px;
}

table.variations th.label {
  text-align: start;
  padding: 0;
  font-weight: 600;
  font-size: 14px;
  white-space: nowrap;
}

table.variations td.value {
  flex: 1;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

table.variations select {
  width: 100%;
  padding: 10px 14px;
  border: 1.5px solid #e0e0e0;
  border-radius: 10px;
  background: #fff;
  font-size: 14px;
  font-weight: 500;
  color: #1a1a1a;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left 12px center;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

table.variations select:hover {
  border-color: #bbb;
}

table.variations select:focus {
  outline: none;
  border-color: #1a1a1a;
  box-shadow: 0 0 0 3px rgba(26, 26, 26, 0.08);
}

table.variations a.reset_variations {
  font-size: 12px;
  color: #999;
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.2s ease;
}

table.variations a.reset_variations:hover {
  color: #1a1a1a;
}

/* Add to Cart Row */
.woocommerce-variation-add-to-cart.variations_button,
.cart:not(.variations_form) .quantity + .single_add_to_cart_button {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
}

.woocommerce-variation-add-to-cart .quantity,
.cart:not(.variations_form) .quantity {
  flex: 0 0 auto;
}

.woocommerce-variation-add-to-cart .quantity .qty,
.cart:not(.variations_form) .quantity .qty {
  width: 56px;
  height: 48px;
  text-align: center;
  border: 1.5px solid #e0e0e0;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  background: #fff;
  padding: 0;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  -moz-appearance: textfield;
}

.woocommerce-variation-add-to-cart .quantity .qty::-webkit-inner-spin-button,
.woocommerce-variation-add-to-cart .quantity .qty::-webkit-outer-spin-button,
.cart:not(.variations_form) .quantity .qty::-webkit-inner-spin-button,
.cart:not(.variations_form) .quantity .qty::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.woocommerce-variation-add-to-cart .quantity .qty:focus,
.cart:not(.variations_form) .quantity .qty:focus {
  outline: none;
  border-color: #1a1a1a;
  box-shadow: 0 0 0 3px rgba(26, 26, 26, 0.08);
}

/* Add to Cart Button */
.single_add_to_cart_button {
  flex: 1;
  height: 48px;
  border: none;
  border-radius: 10px;
  background: #1a1a1a;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.25s ease, transform 0.15s ease, box-shadow 0.25s ease;
}

.single_add_to_cart_button:hover {
  background: #333;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
}

.single_add_to_cart_button:active {
  transform: scale(0.98);
}

/* Add to cart disabled */
.single_add_to_cart_button.disabled,
button.disabled {
  cursor: not-allowed !important;
  opacity: .5;
  background: #1a1a1a !important;
  color: #fff !important;
}

/* Single Variation Price */
.woocommerce-variation-price {
  margin-top: 10px;
}

.woocommerce-variation-price .price {
  font-size: 22px;
  font-weight: 700;
  color: #1a1a1a;
}



/* Filters */
i.bapf_colaps_smb.fa.fa-chevron-up:before {
    content: "";
    border: solid black;
    border-width: 0 3px 3px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
}

i.bapf_colaps_smb.fa.fa-chevron-down:before {
    content: "";
    border: solid black;
    border-width: 0 3px 3px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}

/* === PRICE FILTER – MODERN STYLE LIKE IMAGE 1 === */

/* Remove ugly default field look */
.widget_price_filter .price_slider_wrapper {
    padding: 0;
    background: transparent;
}

/* Slider base */
.widget_price_filter .ui-slider {
    position: relative;
    height: 4px;
    background: #000;
    border: none;
    border-radius: 10px;
}

/* Active range */
.widget_price_filter .ui-slider-range {
    background: #000;
    border-radius: 10px;
}

/* Slider handles */
.widget_price_filter .ui-slider-handle {
    width: 14px;
    height: 14px;
    background: #eee;
    border: 0 solid #000;
    border-radius: 50%;
    top: -6px;
    cursor: pointer;
}

.widget_price_filter .ui-slider-handle:hover {
  background:#ddd;
}
/* Remove focus glow */
.widget_price_filter .ui-slider-handle:focus {
    outline: none;
    box-shadow: none;
}

/* Price text */
.widget_price_filter .price_label {
    margin-top: 8px;
    font-size: 14px;
    color: #000;
}

/* Remove button styling */
.widget_price_filter button.button {
    background: none;
    border: none;
    padding: 0;
    font-weight: 600;
    cursor: pointer;
    text-decoration: underline;
}

/* Clean layout */
.widget_price_filter .price_slider_amount {
    text-align: left;
}


/* Menu Cart */
.fkcart-shortcode-price {
  display: none;
}
svg.fkcart-icon-checkout {
    height: 23px;
}

/* ============================================================
   OWEB — Product tabs skin (single product)
   Replaces the legacy OWEB_Product_Fields::frontend_tab_styles()
   inline CSS when that class is gated off (oweb_wc_product_fields
   schema active — see SeoBundleEnforcer / ProductFieldsEnforcer).
   On legacy-on sites the legacy inline <style> in wp_footer still
   wins the cascade, so this section is effectively dormant there.
   Palette: ink #171A20 · accent #3E6AE1 · line #E6E6DF · muted #5C617A
   ============================================================ */

.woocommerce-tabs {
    margin-top: 48px;
    position: relative;
}

/* --- Tab bar: clean pill headers --- */
.woocommerce-tabs ul.tabs,
.woocommerce div.product .woocommerce-tabs ul.tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px;
    padding: 0 !important;
    margin: 0 0 16px !important;
    border: none !important;
    list-style: none !important;
    overflow: visible;
}
.woocommerce-tabs ul.tabs::before,
.woocommerce-tabs ul.tabs::after {
    display: none !important;
    border: none !important;
}
.woocommerce-tabs ul.tabs li,
.woocommerce div.product .woocommerce-tabs ul.tabs li {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.woocommerce-tabs ul.tabs li::before,
.woocommerce-tabs ul.tabs li::after {
    display: none !important;
}

.woocommerce-tabs ul.tabs li a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    display: inline-flex;
    align-items: center;
    padding: 10px 20px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid #E6E6DF;
    color: #5C617A;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.2;
    text-decoration: none !important;
    white-space: nowrap;
    transition: color .25s ease, background .25s ease, border-color .25s ease,
                box-shadow .25s ease, transform .25s ease;
}
.woocommerce-tabs ul.tabs li a:hover,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
    color: #171A20;
    border-color: #3E6AE1;
    transform: translateY(-1px);
}
.woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    background: #171A20;
    border-color: #171A20;
    color: #fff;
    box-shadow: 0 6px 16px rgba(23, 26, 32, .18);
}
.woocommerce-tabs ul.tabs li a:focus-visible {
    outline: 2px solid #3E6AE1;
    outline-offset: 2px;
}

/* --- Tab content panel --- */
.woocommerce-tabs .panel,
.woocommerce div.product .woocommerce-tabs .panel {
    padding: 28px 30px;
    margin: 0 0 2em;
    background: #FCFCFA;
    border: 1px solid #E6E6DF;
    border-radius: 14px;
    box-shadow: none;
    animation: oweb-tab-enter .4s cubic-bezier(.4, 0, .2, 1);
}
@keyframes oweb-tab-enter {
    from { opacity: 0; transform: translateY(14px); }
    to   { opacity: 1; transform: translateY(0); }
}
/* WooCommerce duplicates the tab title as an <h2> inside the panel —
   keep it, but make it a proper panel heading. */
.woocommerce-tabs .panel > h2:first-child,
.woocommerce div.product .woocommerce-tabs .panel > h2:first-child {
    margin: 0 0 14px;
    font-size: 18px;
    font-weight: 700;
    color: #171A20;
}
.oweb-tab-content {
    font-size: 15px;
    line-height: 1.85;
    color: #171A20;
}
.oweb-tab-content p:last-child {
    margin-bottom: 0;
}

/* --- FAQ accordion (שאלות ותשובות tab) --- */
.oweb-front-faq {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.oweb-front-faq-item {
    background: #fff;
    border: 1px solid #E6E6DF;
    border-radius: 12px;
    overflow: hidden;
    transition: border-color .3s ease, box-shadow .3s ease;
}
.oweb-front-faq-item:hover {
    border-color: #D8D8CF;
    box-shadow: 0 2px 12px rgba(23, 26, 32, .05);
}
.oweb-front-faq-item.open {
    border-color: #3E6AE1;
    box-shadow: 0 6px 24px rgba(62, 106, 225, .10);
}
.oweb-front-faq-q {
    padding: 18px 22px;
    font-weight: 700;
    font-size: 15px;
    color: #171A20;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    user-select: none;
    transition: background .2s ease;
}
.oweb-front-faq-q:hover {
    background: #FCFCFA;
}
.oweb-front-faq-q-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    border-radius: 50%;
    background: #F1F1EB;
    color: #5C617A;
    transition: background .35s ease, color .35s ease;
}
.oweb-front-faq-q-icon svg {
    width: 14px;
    height: 14px;
    transition: transform .35s cubic-bezier(.4, 0, .2, 1);
}
.oweb-front-faq-item.open .oweb-front-faq-q-icon {
    background: #3E6AE1;
    color: #fff;
}
.oweb-front-faq-item.open .oweb-front-faq-q-icon svg {
    transform: rotate(180deg);
}
.oweb-front-faq-a-wrap {
    overflow: hidden;
    max-height: 0;
    transition: max-height .4s cubic-bezier(.4, 0, .2, 1);
}
.oweb-front-faq-a {
    padding: 18px 22px 20px;
    border-top: 1px solid #F1F1EB;
    font-size: 14.5px;
    line-height: 1.85;
    color: #5C617A;
}
.oweb-front-faq-a p:last-child {
    margin-bottom: 0;
}

/* --- Videos grid (סרטונים tab) --- */
.oweb-front-videos {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    align-items: start;
}
.oweb-front-video-item {
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #E6E6DF;
    box-shadow: 0 2px 12px rgba(23, 26, 32, .06);
    transition: box-shadow .3s ease, transform .3s ease;
}
.oweb-front-video-item:hover {
    box-shadow: 0 6px 20px rgba(23, 26, 32, .12);
    transform: translateY(-2px);
}
/* Horizontal videos (YouTube, Vimeo) */
.oweb-front-video-item iframe {
    width: 100% !important;
    aspect-ratio: 16 / 9;
    height: auto !important;
    display: block;
}
/* Vertical videos (TikTok, YouTube Shorts, Reels) */
.oweb-video-vertical iframe {
    aspect-ratio: 9 / 16;
    max-height: 450px;
    margin: 0 auto;
}
/* TikTok embed cleanup */
.oweb-video-vertical .tiktok-embed {
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
    min-width: 0 !important;
}
.oweb-video-vertical .tiktok-embed > section {
    display: none;
}

/* --- Responsive --- */
@media (max-width: 768px) {
    .woocommerce-tabs {
        margin-top: 28px;
    }
    .woocommerce-tabs ul.tabs,
    .woocommerce div.product .woocommerce-tabs ul.tabs {
        gap: 6px;
    }
    .woocommerce-tabs ul.tabs li a,
    .woocommerce div.product .woocommerce-tabs ul.tabs li a {
        padding: 8px 14px;
        font-size: 12.5px;
    }
    .woocommerce-tabs .panel,
    .woocommerce div.product .woocommerce-tabs .panel {
        padding: 20px 16px;
        border-radius: 10px;
    }
    .oweb-front-faq-q {
        padding: 14px 16px;
        font-size: 14px;
    }
    .oweb-front-faq-a {
        padding: 12px 16px 14px;
    }
    .oweb-front-videos {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }
    .oweb-video-vertical iframe {
        max-height: 280px;
    }
}

/* ── Header & footer navigation links — tidy, consistent, branded hover ── */
.elementor-location-header nav a {
  transition: color .15s ease;
}
.elementor-location-header nav a:hover,
.elementor-location-header nav .current-menu-item > a {
  color: #3E6AE1 !important;
}

.elementor-location-footer a:not(.elementor-social-icon) {
  color: #171A20;
  text-decoration: none;
  transition: color .15s ease;
}
.elementor-location-footer a:not(.elementor-social-icon):hover {
  color: #3E6AE1;
}
/* quick-nav menu lists: breathing room between rows */
.elementor-location-footer .elementor-widget-nav-menu a,
.elementor-location-footer .widget_nav_menu a,
.elementor-location-footer .menu a {
  display: inline-block;
  padding: 3px 0;
  line-height: 1.75;
}
