/* Euroflorina · Tarjetas Premium 1.0.0
 * Solo entra en vigor con la clase de WordPress efcat-premium-enabled.
 * Nunca afecta a otros módulos Divi ni a las fichas individuales.
 */
.efcat-premium-enabled .efcat-shop .efcat-grid {
  gap: 28px 20px;
  align-items: stretch;
}
.efcat-premium-enabled .efcat-shop .efcat-product {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 9px;
  margin: 0;
  border: 1px solid #e8e8e8;
  border-radius: 0;
  background: #ffffff;
  box-shadow: 0 0 0 rgba(0,0,0,0);
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}
.efcat-premium-enabled .efcat-shop .efcat-product:hover,
.efcat-premium-enabled .efcat-shop .efcat-product:focus-within {
  border-color: #c9c9c9;
  box-shadow: 0 10px 28px rgba(0,0,0,.07);
}
.efcat-premium-enabled .efcat-shop .efcat-product-image {
  display: flex;
  width: 100%;
  aspect-ratio: 1 / 1;
  padding: 8px;
  background: #fafafa;
  border: 0;
  overflow: hidden;
  align-items: center;
  justify-content: center;
}
.efcat-premium-enabled .efcat-shop .efcat-product-image img {
  width: 100%!important;
  height: 100%!important;
  max-width: 100%!important;
  max-height: 100%!important;
  object-fit: contain!important;
  padding: 0!important;
  margin: 0!important;
  display: block;
  transition: transform .34s ease!important;
}
.efcat-premium-enabled .efcat-shop .efcat-product:hover .efcat-product-image img,
.efcat-premium-enabled .efcat-shop .efcat-product-image:focus-visible img {
  transform: scale(1.035);
}
.efcat-premium-enabled .efcat-shop .efcat-product-details {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 16px 8px 8px;
}
.efcat-premium-enabled .efcat-shop .efcat-product-details h3 {
  min-height: 46px;
  margin: 0 0 10px!important;
  font-family: Arial, sans-serif!important;
  font-size: 14px!important;
  font-weight: 600!important;
  line-height: 1.45!important;
  letter-spacing: .005em!important;
  text-transform: none!important;
  overflow-wrap: anywhere;
  color: #151515!important;
}
.efcat-premium-enabled .efcat-shop .efcat-product-details h3 a {
  color: #111!important;
  text-decoration: none!important;
}
.efcat-premium-enabled .efcat-shop .efcat-product-details h3 a:hover { color: #555!important; }
.efcat-premium-enabled .efcat-shop .efcat-sku {
  font-size: 11px!important;
  color: #777!important;
  margin: 0 0 11px!important;
}
.efcat-premium-enabled .efcat-shop .efcat-price {
  margin: auto 0 13px!important;
  padding-top: 13px;
  font: 700 15px/1.4 Arial,sans-serif!important;
  color: #111!important;
}
.efcat-premium-enabled .efcat-shop .efcat-price * { color: inherit!important; }
.efcat-premium-enabled .efcat-shop .efcat-product-link {
  display: flex!important;
  width: 100%;
  min-height: 43px;
  align-items: center;
  justify-content: center;
  padding: 10px 14px!important;
  margin-top: 0!important;
  background: #111!important;
  border: 1px solid #111!important;
  color: #fff!important;
  border-radius: 0!important;
  text-align: center;
  font: 700 11px/1.35 Arial,sans-serif!important;
  letter-spacing: .085em!important;
  text-transform: uppercase;
  text-decoration: none!important;
  transition: background .2s ease, color .2s ease;
}
.efcat-premium-enabled .efcat-shop .efcat-product-link:hover,
.efcat-premium-enabled .efcat-shop .efcat-product-link:focus-visible {
  background: #fff!important;
  color: #111!important;
}
.efcat-premium-enabled .efcat-shop .efcat-signin {
  display: flex!important;
  width: 100%;
  margin-top: auto!important;
  padding: 10px 12px!important;
  min-height: 45px;
  align-items: center;
  justify-content: center;
  background: #fff!important;
  border: 1px solid #111!important;
  color: #111!important;
  text-align: center;
  font: 700 10px/1.4 Arial,sans-serif!important;
  letter-spacing: .025em;
  text-transform: uppercase;
  text-decoration: none!important;
}
.efcat-premium-enabled .efcat-shop .efcat-signin:hover,
.efcat-premium-enabled .efcat-shop .efcat-signin:focus-visible {
  background: #111!important;
  color: #fff!important;
}
.efcat-premium-enabled .efcat-shop .efcat-product a:focus-visible {
  outline: 2px solid #111;
  outline-offset: 3px;
}
@media (max-width: 767px) {
  .efcat-premium-enabled .efcat-shop .efcat-grid { gap: 18px 12px; }
  .efcat-premium-enabled .efcat-shop .efcat-product { padding: 6px; }
  .efcat-premium-enabled .efcat-shop .efcat-product-image { padding: 5px; }
  .efcat-premium-enabled .efcat-shop .efcat-product-details { padding: 10px 4px 4px; }
  .efcat-premium-enabled .efcat-shop .efcat-product-details h3 {
    font-size: 12px!important;
    min-height: 51px;
    line-height: 1.4!important;
    margin-bottom: 7px!important;
  }
  .efcat-premium-enabled .efcat-shop .efcat-price { font-size: 12px!important; margin-bottom: 10px!important; }
  .efcat-premium-enabled .efcat-shop .efcat-product-link { min-height: 40px; font-size: 10px!important; padding: 8px 7px!important; }
  .efcat-premium-enabled .efcat-shop .efcat-signin { min-height: 46px; font-size: 9px!important; padding: 7px 5px!important; }
}
@media (max-width: 390px) {
  .efcat-premium-enabled .efcat-shop .efcat-grid { gap: 14px 8px; }
  .efcat-premium-enabled .efcat-shop .efcat-product-details h3 { font-size: 11px!important; }
  .efcat-premium-enabled .efcat-shop .efcat-product-link { letter-spacing: .025em!important; }
}
@media (prefers-reduced-motion: reduce) {
  .efcat-premium-enabled .efcat-shop .efcat-product,
  .efcat-premium-enabled .efcat-shop .efcat-product-image img,
  .efcat-premium-enabled .efcat-shop .efcat-product-link {
    transition: none!important;
  }
}
