/* Evaflex | Product Card 1.1.2. Scoped styles: no changes to other WooCommerce cards. */
.elementor-widget-evaflex_product_card,
.elementor-widget-evaflex_product_card .elementor-widget-container { min-width: 0; }
.elementor-widget-evaflex_product_card .elementor-widget-container { height: 100%; }
.evx-card,
.evx-card * { box-sizing: border-box; }
.evx-card {
  --evx-hover-up: 5px;
  position: relative; width: 100%; min-width: 0; height: 100%;
  background: #fff; border: 1px solid #eaf1f6; border-style: solid; border-radius: 18px;
  display: flex; flex-direction: column; overflow: visible;
  box-shadow: 0 7px 22px rgba(8, 52, 88, .09);
  transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease;
  isolation: isolate;
}
.evx-card:hover { transform: translateY(calc(-1 * var(--evx-hover-up))); border-color: #a4d66e; box-shadow: 0 14px 30px rgba(8,52,88,.15); }
.evx-card__media {
  width: 100%; flex: 0 0 auto; height: 195px; position: relative;
  padding: 16px 16px 7px; background-color: #fff; border-radius: 12px 12px 0 0;
  display: flex; align-items: center; justify-content: center; overflow: hidden;
}
.evx-card__media-link { position: relative; display: flex; height: 100%; width: 100%; min-width: 0; align-items: center; justify-content: center; text-decoration: none; }
.evx-card__image {
  display: block; object-fit: contain; object-position: center; width: auto; height: 100%; max-width: 100%; max-height: 100%;
  margin: 0 auto; border: 0; box-shadow: none; border-radius: 0; transform: scale(1); transition: transform .35s ease, opacity .3s ease;
}
.evx-card--zoom:hover .evx-card__image:not(.evx-card__image--second) { transform: scale(1.055); }
.evx-card__image--second { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; }
.evx-card--second-image:hover .evx-card__image:not(.evx-card__image--second) { opacity: 0; }
.evx-card--second-image:hover .evx-card__image--second { opacity: 1; }
.evx-card__badges { position: absolute; top: 10px; left: 10px; display: flex; flex-wrap: wrap; align-items: flex-start; gap: 5px; z-index: 5; max-width: 60%; }
.evx-card__badge { display: inline-flex; align-items: center; justify-content: center; padding: 4px 9px; border-radius: 40px; font-size: 11px; font-weight: 700; line-height: 1.3; white-space: nowrap; }
.evx-card__badge--sale { background: #ed1889; color: white; }
.evx-card__badge--new { background: #75bd3b; color: white; }
.evx-card__fav {
  position: absolute; z-index: 7; right: var(--evx-fav-right, 10px); top: var(--evx-fav-top, 10px); width: 34px; height: 34px;
  background: #fff; border: 1px solid transparent; border-radius: 50%; padding: 7px; display: flex;
  align-items: center; justify-content: center; cursor: pointer; color: #67727e;
  box-shadow: 0 3px 9px rgba(12,43,75,.07); transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
.evx-card__fav:hover { color: #ed1689; background: #fff0f7; transform: scale(1.08); }
.evx-card__fav[aria-pressed="true"] { color: #ed1689; }
.evx-card__fav[aria-pressed="true"] svg { fill: currentColor; }
.evx-card__fav svg { width: 18px; height: 18px; flex: 0 0 auto; }
.evx-card__fav-off, .evx-card__fav-on { display: inline-flex; align-items:center; justify-content:center; }
.evx-card__fav-on { display:none; }
.evx-card__fav[aria-pressed="true"] .evx-card__fav-on { display:inline-flex; }
.evx-card__fav[aria-pressed="true"] .evx-card__fav-off { display:none; }
.evx-card__fav:focus-visible,.evx-card__button:focus-visible,.evx-card a:focus-visible, .evx-card__qty-input:focus-visible { outline: 2px solid #006dad; outline-offset: 3px; }
.evx-card__body { padding: 0 15px 15px; flex: 1 1 auto; display: flex; flex-direction: column; align-items: stretch; gap: 7px; text-align: center; min-width: 0; }
.evx-card__category { font-size: 11px; color: #609b43; font-weight: 600; }
.evx-card__title { color: #075ba1; font-size: 14px; font-weight: 800; line-height: 1.25; margin: 0; padding: 0; border: 0; min-width: 0; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; overflow-wrap: anywhere; }
.evx-card__title a { color: inherit; text-decoration: none; transition: color .2s ease; }
.evx-card__title a:hover { color: #78ba34; }
.evx-card__desc { color: #5a6672; font-size: 12px; line-height: 1.45; }
.evx-card__stock { color: #438d38; font-size: 11px; }
.evx-card__rating { display: flex; justify-content: center; }
.evx-card__rating .star-rating { margin: 0 !important; float: none !important; }
.evx-card__rating .star-rating::before, .evx-card__rating .star-rating span::before { color: #ffb900; }
.evx-card__price { color: #ee1584; font-weight: 800; font-size: 19px; line-height: 1.2; margin: 0; min-width: 0; }
.evx-card__price ins { color: inherit; background: transparent; text-decoration: none; }
.evx-card__price del { color: #91a1aa; font-size: .73em; font-weight: 500; opacity: 1; }
.evx-card__buy { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; margin-top: auto; min-width: 0; }
.evx-card__buy--inline { flex-wrap: nowrap; }
.evx-card__buy--inline .evx-card__button { flex: 1 1 auto; min-width: 0; width: auto; }
.evx-card__buy--stacked { flex-direction: column; }
.evx-card__qty-label { flex: 0 0 auto; margin: 0; padding: 0; }
.evx-card__qty-input { display: block; width: 65px; height: 40px; padding: 2px 5px; margin: 0; color: #163e60; border: 1px solid #dce5ed; background: #fff; border-radius: 9px; text-align: center; font-size: 14px; }
.evx-card__button,
.evx-card__button:visited {
  display: inline-flex; flex: 0 1 auto; align-items: center; justify-content: center;
  min-height: 41px; width: 100%; max-width: 100%; gap: 7px;
  border: 1px solid transparent; border-radius: 24px; padding: 7px 12px;
  background: #75be37; color: #fff;   font-size: 12px; font-weight: 700; line-height: 1.2;
  text-align: center; text-decoration: none; box-shadow: none;
  cursor: pointer; white-space: normal; overflow-wrap: anywhere;
  transition: background-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.evx-card__button:hover,.evx-card__button:focus-visible { background: #0762a4; color: #fff; text-decoration: none; }
.evx-card__button:disabled { cursor: wait; opacity: .72; }
.evx-card__button-text { min-width: 0; }
.evx-card__button-icon { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; font-size: 15px; line-height: 1; }
.evx-card__button-icon svg { width: 1em; height: 1em; fill: currentColor; }
/* Suppress only the WooCommerce inline "View cart" link created inside Evaflex cards.
   Keep added_to_cart events active so Elementor Menu Cart still opens. */
.evx-card .evx-card__buy > a.added_to_cart,
.evx-card .evx-card__buy > a.wc-forward.added_to_cart,
.evx-card .evx-card__buy .added_to_cart:not(.evx-card__button) { display: none !important; }
.evx-card__feedback { width: 100%; font-size: 11px; line-height: 1.25; color: #267322; }
.evx-card__feedback:empty { display: none; }
.evx-card__feedback.is-error { color: #c62742; }
.evx-card__notice { border: 1px dashed #83b9e1; border-radius: 12px; color: #17639a; padding: 20px; background: #eff8ff; font-size: 13px; }
@media (prefers-reduced-motion: reduce) {
 .evx-card, .evx-card * { transition: none !important; animation: none !important; }
 .evx-card:hover { transform: none !important; }
}

/* Four fully functional corner anchors. Offset values are Elementor responsive CSS variables. */
.evx-card--fav-tl .evx-card__fav { right:auto; left:var(--evx-fav-left,10px); top:var(--evx-fav-top,10px); }
.evx-card--fav-br .evx-card__fav { top:auto; bottom:var(--evx-fav-bottom,10px); right:var(--evx-fav-right,10px); }
.evx-card--fav-bl .evx-card__fav { top:auto; right:auto; bottom:var(--evx-fav-bottom,10px); left:var(--evx-fav-left,10px); }
