/* Zyon Conditional Gifts · frontend */
.zcg-gift-card,
.zcg-pdp-promos,
.zcg-promotions{box-sizing:border-box}
.zcg-gift-card *,
.zcg-pdp-promos *,
.zcg-promotions *{box-sizing:border-box}

/* Checkout · v0.2.10: compacto, limpio y totalmente parametrizable */
.zcg-gift-card--checkout{
  position:relative!important;
  width:100%!important;
  margin:var(--zcg-checkout-margin-top,5px) 0 var(--zcg-checkout-margin-bottom,0px)!important;
  padding:var(--zcg-checkout-pad-top,9px) var(--zcg-checkout-pad-right,10px) var(--zcg-checkout-pad-bottom,8px) var(--zcg-checkout-pad-left,10px)!important;
  border:var(--zcg-checkout-border-width,1px) solid var(--zcg-checkout-border,#dfe5e1)!important;
  border-radius:var(--zcg-checkout-radius,9px)!important;
  background:var(--zcg-checkout-bg,#fff)!important;
  color:var(--zcg-checkout-text,#17201c)!important;
  font-family:var(--zcg-checkout-font,inherit)!important;
  text-align:left!important;
  line-height:1!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.zcg-gift-card--checkout .zcg-gift-card__head{
  display:grid!important;
  grid-template-columns:var(--zcg-checkout-icon-box,29px) minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:var(--zcg-checkout-header-gap,8px)!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
.zcg-gift-card--checkout .zcg-gift-card__copy{min-width:0!important;margin:0!important;padding:0!important}
.zcg-gift-card--checkout .zcg-gift-card__icon{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:var(--zcg-checkout-icon-box,29px)!important;height:var(--zcg-checkout-icon-box,29px)!important;
  min-width:var(--zcg-checkout-icon-box,29px)!important;min-height:var(--zcg-checkout-icon-box,29px)!important;
  margin:0!important;padding:0!important;
  border:1px solid var(--zcg-checkout-icon-border,#dce7e0)!important;
  border-radius:var(--zcg-checkout-icon-radius,7px)!important;
  background:var(--zcg-checkout-icon-bg,#f4f8f5)!important;
  color:var(--zcg-checkout-accent,#2f6f54)!important;
  font-size:var(--zcg-checkout-icon-size,17px)!important;
  font-weight:400!important;line-height:1!important;
  overflow:visible!important;
}
.zcg-gift-card--checkout .zcg-gift-card__title{
  margin:0!important;padding:0!important;color:var(--zcg-checkout-text,#17201c)!important;
  font-family:var(--zcg-checkout-title-font,inherit)!important;
  font-size:var(--zcg-checkout-title-size,12.5px)!important;
  font-weight:var(--zcg-checkout-title-weight,600)!important;
  line-height:var(--zcg-checkout-title-line,1.15)!important;
  letter-spacing:-.006em!important;
}
.zcg-gift-card--checkout .zcg-gift-card__message{
  margin:var(--zcg-checkout-message-margin-top,2px) 0 0!important;padding:0!important;
  color:var(--zcg-checkout-muted,#66736c)!important;
  font-family:var(--zcg-checkout-text-font,inherit)!important;
  font-size:var(--zcg-checkout-text-size,11.2px)!important;
  font-weight:var(--zcg-checkout-text-weight,400)!important;
  line-height:var(--zcg-checkout-text-line,1.28)!important;
  letter-spacing:0!important;
}
.zcg-gift-card--checkout .zcg-gift-card__nav{
  display:flex!important;align-items:center!important;gap:4px!important;align-self:center!important;
  margin:0!important;padding:0!important;flex:0 0 auto!important;transition:opacity .15s ease!important;
}
.zcg-gift-card--checkout .zcg-gift-card__nav.is-hidden{display:none!important}
.zcg-gift-card--checkout .zcg-gift-card__arrow{
  -webkit-appearance:none!important;appearance:none!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:var(--zcg-checkout-arrow-size,23px)!important;height:var(--zcg-checkout-arrow-size,23px)!important;
  min-width:var(--zcg-checkout-arrow-size,23px)!important;min-height:var(--zcg-checkout-arrow-size,23px)!important;
  max-width:var(--zcg-checkout-arrow-size,23px)!important;max-height:var(--zcg-checkout-arrow-size,23px)!important;
  margin:0!important;padding:0 0 1px!important;
  border:1px solid var(--zcg-checkout-arrow-border,#e3e7e5)!important;
  border-radius:999px!important;background:var(--zcg-checkout-arrow-bg,#fff)!important;
  color:var(--zcg-checkout-arrow-text,#59645e)!important;
  font-family:Arial,sans-serif!important;font-size:var(--zcg-checkout-arrow-font-size,15px)!important;font-style:normal!important;font-weight:400!important;line-height:1!important;
  text-decoration:none!important;text-transform:none!important;letter-spacing:0!important;
  box-shadow:none!important;text-shadow:none!important;outline:0!important;transform:none!important;cursor:pointer!important;
}
.zcg-gift-card--checkout .zcg-gift-card__arrow:hover:not(:disabled),
.zcg-gift-card--checkout .zcg-gift-card__arrow:focus:not(:disabled){
  border-color:var(--zcg-checkout-accent,#2f6f54)!important;color:var(--zcg-checkout-accent,#2f6f54)!important;background:var(--zcg-checkout-arrow-bg,#fff)!important;box-shadow:none!important;transform:none!important;
}
.zcg-gift-card--checkout .zcg-gift-card__arrow:disabled{opacity:.24!important;cursor:default!important}

.zcg-gift-card--checkout .zcg-gift-card__items{
  display:flex!important;align-items:stretch!important;
  gap:var(--zcg-checkout-slider-gap,7px)!important;
  width:100%!important;min-width:0!important;
  margin:var(--zcg-checkout-slider-margin-top,8px) 0 0!important;
  /* El padding superior reserva físicamente espacio para el badge flotante. */
  padding:max(5px,calc(0px - var(--zcg-checkout-badge-top,-4px))) 1px 1px!important;
  border:0!important;background:transparent!important;
  overflow-x:auto!important;overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;scroll-behavior:smooth!important;overscroll-behavior-x:contain!important;
  scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important;cursor:grab!important;outline:0!important;
}
.zcg-gift-card--checkout .zcg-gift-card__items::-webkit-scrollbar{display:none!important}
.zcg-gift-card--checkout .zcg-gift-card__items.is-dragging{cursor:grabbing!important;scroll-snap-type:none!important;user-select:none!important;-webkit-user-select:none!important}
.zcg-gift-card--checkout .zcg-gift-item{
  position:relative!important;display:flex!important;align-items:center!important;
  gap:7px!important;flex:0 0 var(--zcg-checkout-item-width,188px)!important;width:var(--zcg-checkout-item-width,188px)!important;
  min-width:0!important;min-height:var(--zcg-checkout-item-min-height,45px)!important;
  margin:0!important;
  padding:var(--zcg-checkout-item-pad-top,6px) var(--zcg-checkout-item-pad-right,7px) var(--zcg-checkout-item-pad-bottom,6px) var(--zcg-checkout-item-pad-left,6px)!important;
  border:1px solid var(--zcg-checkout-item-border,#e7ebe8)!important;
  border-radius:var(--zcg-checkout-item-radius,8px)!important;
  background:var(--zcg-checkout-item-bg,#fbfcfb)!important;
  scroll-snap-align:start!important;overflow:visible!important;box-shadow:none!important;
}
.zcg-gift-card--checkout .zcg-gift-item:last-child{border-bottom:1px solid var(--zcg-checkout-item-border,#e7ebe8)!important}
.zcg-gift-card--checkout .zcg-gift-item__image{
  width:var(--zcg-checkout-image-size,33px)!important;height:var(--zcg-checkout-image-size,33px)!important;
  min-width:var(--zcg-checkout-image-size,33px)!important;min-height:var(--zcg-checkout-image-size,33px)!important;
  flex:0 0 var(--zcg-checkout-image-size,33px)!important;
  margin:0!important;padding:0!important;overflow:hidden!important;border-radius:6px!important;background:#f3f4f4!important;
}
.zcg-gift-card--checkout .zcg-gift-item__image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;pointer-events:none!important}
.zcg-gift-card--checkout .zcg-gift-item__body{min-width:0!important;flex:1 1 auto!important;margin:0!important;padding:0!important}
.zcg-gift-card--checkout .zcg-gift-item__name{
  display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;
  margin:0!important;padding:0!important;color:var(--zcg-checkout-text,#17201c)!important;
  font-family:var(--zcg-checkout-product-font,inherit)!important;
  font-size:var(--zcg-checkout-product-size,9.4px)!important;
  font-weight:var(--zcg-checkout-product-weight,400)!important;
  line-height:var(--zcg-checkout-product-line,1.18)!important;
  letter-spacing:0!important;
}
.zcg-gift-card--checkout .zcg-gift-item__name span{color:var(--zcg-checkout-muted,#66736c)!important;font-size:.92em!important;font-weight:inherit!important}
.zcg-gift-card--checkout .zcg-gift-item__free{
  position:absolute!important;
  top:var(--zcg-checkout-badge-top,-4px)!important;
  right:var(--zcg-checkout-badge-right,5px)!important;
  bottom:auto!important;left:auto!important;z-index:8!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  margin:0!important;
  padding:var(--zcg-checkout-badge-pad-y,2px) var(--zcg-checkout-badge-pad-x,5px)!important;
  border:1px solid var(--zcg-checkout-badge-border,#cfe1d7)!important;
  border-radius:var(--zcg-checkout-badge-radius,999px)!important;
  background:var(--zcg-checkout-badge-bg,#f4faf6)!important;
  color:var(--zcg-checkout-badge-text,#2f6f54)!important;
  font-family:var(--zcg-checkout-badge-font,inherit)!important;
  font-size:var(--zcg-checkout-badge-size,7.2px)!important;
  font-weight:var(--zcg-checkout-badge-weight,600)!important;
  line-height:1!important;letter-spacing:.025em!important;text-transform:uppercase!important;white-space:nowrap!important;
  box-shadow:0 0 0 1px var(--zcg-checkout-bg,#fff)!important;
  pointer-events:none!important;
}
.zcg-gift-card--checkout .zcg-gift-card__rule-note{
  margin:7px 0 0!important;padding:6px 0 0!important;border-top:1px solid var(--zcg-checkout-item-border,#e7ebe8)!important;
  color:var(--zcg-checkout-muted,#66736c)!important;font-family:var(--zcg-checkout-text-font,inherit)!important;font-size:var(--zcg-checkout-text-size,11.2px)!important;font-weight:var(--zcg-checkout-text-weight,400)!important;line-height:var(--zcg-checkout-text-line,1.28)!important;
}
.zcg-gift-card--empty{background:#fff;box-shadow:none}

/* Thank you / detalle de pedido: conserva un layout sencillo, sin slider. */
.zcg-gift-card--order{margin:20px 0;padding:12px;border:1px solid var(--zcg-checkout-border,#dfe5e1);border-radius:var(--zcg-checkout-radius,9px);background:var(--zcg-checkout-bg,#fff);color:var(--zcg-checkout-text,#17201c);font-family:var(--zcg-checkout-font,inherit)}
.zcg-gift-card--order .zcg-gift-card__nav{display:none!important}
.zcg-gift-card--order .zcg-gift-card__items{display:flex;flex-direction:column;gap:6px;overflow:visible;cursor:default;margin-top:8px}
.zcg-gift-card--order .zcg-gift-item{position:relative;display:flex;align-items:center;gap:8px;width:100%;padding:7px;border:1px solid var(--zcg-checkout-item-border,#e7ebe8);border-radius:8px;background:var(--zcg-checkout-item-bg,#fbfcfb)}

@media(max-width:1024px){
  .zcg-gift-card--checkout{margin-top:var(--zcg-checkout-margin-top-tablet,var(--zcg-checkout-margin-top,5px))!important;margin-bottom:var(--zcg-checkout-margin-bottom-tablet,var(--zcg-checkout-margin-bottom,0px))!important;padding:var(--zcg-checkout-pad-top-tablet,var(--zcg-checkout-pad-top,9px)) var(--zcg-checkout-pad-right-tablet,var(--zcg-checkout-pad-right,10px)) var(--zcg-checkout-pad-bottom-tablet,var(--zcg-checkout-pad-bottom,8px)) var(--zcg-checkout-pad-left-tablet,var(--zcg-checkout-pad-left,10px))!important}
  .zcg-gift-card--checkout .zcg-gift-item{flex-basis:var(--zcg-checkout-item-width-tablet,var(--zcg-checkout-item-width,182px))!important;width:var(--zcg-checkout-item-width-tablet,var(--zcg-checkout-item-width,182px))!important}
  .zcg-gift-card--checkout .zcg-gift-item__free{top:var(--zcg-checkout-badge-top-tablet,var(--zcg-checkout-badge-top,-4px))!important;right:var(--zcg-checkout-badge-right-tablet,var(--zcg-checkout-badge-right,5px))!important}
}
@media(max-width:767px){
  .zcg-gift-card--checkout{margin-top:var(--zcg-checkout-margin-top-mobile,var(--zcg-checkout-margin-top-tablet,5px))!important;margin-bottom:var(--zcg-checkout-margin-bottom-mobile,var(--zcg-checkout-margin-bottom-tablet,0px))!important;padding:var(--zcg-checkout-pad-top-mobile,var(--zcg-checkout-pad-top-tablet,8px)) var(--zcg-checkout-pad-right-mobile,var(--zcg-checkout-pad-right-tablet,8px)) var(--zcg-checkout-pad-bottom-mobile,var(--zcg-checkout-pad-bottom-tablet,7px)) var(--zcg-checkout-pad-left-mobile,var(--zcg-checkout-pad-left-tablet,8px))!important}
  .zcg-gift-card--checkout .zcg-gift-card__head{align-items:center!important}
  .zcg-gift-card--checkout .zcg-gift-item{flex-basis:var(--zcg-checkout-item-width-mobile,var(--zcg-checkout-item-width-tablet,174px))!important;width:var(--zcg-checkout-item-width-mobile,var(--zcg-checkout-item-width-tablet,174px))!important}
  .zcg-gift-card--checkout .zcg-gift-item__free{top:var(--zcg-checkout-badge-top-mobile,var(--zcg-checkout-badge-top-tablet,-4px))!important;right:var(--zcg-checkout-badge-right-mobile,var(--zcg-checkout-badge-right-tablet,5px))!important}
}

/* PDP promotion notice: intentionally slim and sales-focused */
.zcg-pdp-promos{display:flex;flex-direction:column;gap:6px;width:100%;margin:10px 0;color:var(--zcg-pdp-text,#173f2b)}
.zcg-pdp-promo{display:flex;align-items:flex-start;gap:8px;width:100%;padding:var(--zcg-pdp-pad,10px);border:1px solid var(--zcg-pdp-border,#cfe9d8);border-radius:var(--zcg-pdp-radius,8px);background:var(--zcg-pdp-bg,#f3fbf6);box-shadow:0 1px 1px rgba(16,24,40,.015)}
.zcg-pdp-promo__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 19px;width:19px;height:19px;margin-top:1px;border-radius:999px;background:var(--zcg-pdp-accent,#16834b);color:#fff;font-size:10px;font-weight:700;line-height:1}
.zcg-pdp-promo__body{min-width:0;flex:1}
.zcg-pdp-promo__title{margin:0 0 1px;color:var(--zcg-pdp-text,#173f2b);font-size:11.5px;font-weight:600;line-height:1.25;letter-spacing:-.005em}
.zcg-pdp-promo__text{margin:0;color:var(--zcg-pdp-muted,#4d6b5a);font-size:11.5px;font-weight:400;line-height:1.4}
.zcg-pdp-promos--minimal .zcg-pdp-promo{padding:6px 0;border:0;border-radius:0;background:transparent;box-shadow:none}
.zcg-pdp-promos--neutral .zcg-pdp-promo{--zcg-pdp-bg:#fafafa;--zcg-pdp-border:#e7e7e7;--zcg-pdp-text:#252a27;--zcg-pdp-muted:#69706c;--zcg-pdp-accent:#66706a}

/* Store-wide promotions */
.zcg-promotions{width:100%;color:var(--zcg-promo-text,#17201c)}
.zcg-promotions__header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 12px}
.zcg-promotions__heading{margin:0!important;padding:0!important;color:var(--zcg-promo-text,#17201c);font-size:clamp(18px,2vw,24px);font-weight:550;letter-spacing:-.025em;line-height:1.18}
.zcg-promotions__arrows{display:flex;align-items:center;gap:5px}
.zcg-promotions__arrow{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid var(--zcg-promo-border,#e6e9ec);border-radius:999px;background:var(--zcg-promo-bg,#fff);color:var(--zcg-promo-text,#17201c);font:400 20px/1 Arial,sans-serif;cursor:pointer;transition:border-color .18s ease,transform .18s ease,opacity .18s ease}
.zcg-promotions__arrow:hover{border-color:color-mix(in srgb,var(--zcg-promo-accent,#2f6f54) 45%,var(--zcg-promo-border,#e6e9ec));transform:translateY(-1px)}
.zcg-promotions__arrow:disabled{opacity:.28;cursor:default;transform:none}
.zcg-promotions__viewport{overflow:hidden;width:100%}
.zcg-promotions__track{display:grid;grid-template-columns:repeat(var(--zcg-promo-per-view,3),minmax(0,1fr));gap:var(--zcg-promo-gap,14px)}
.zcg-promotions--slider .zcg-promotions__viewport{overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none}
.zcg-promotions--slider .zcg-promotions__viewport::-webkit-scrollbar{display:none}
.zcg-promotions--slider .zcg-promotions__track{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--zcg-promo-per-view,3) - 1) * var(--zcg-promo-gap,14px)) / var(--zcg-promo-per-view,3));gap:var(--zcg-promo-gap,14px);width:auto;min-width:100%}
.zcg-promotions--slider .zcg-promo-card{width:auto;scroll-snap-align:start}
.zcg-promo-card{display:flex;flex-direction:column;min-width:0;padding:var(--zcg-promo-pad,16px);border:1px solid var(--zcg-promo-border,#e6e9ec);border-radius:var(--zcg-promo-radius,12px);background:var(--zcg-promo-bg,#fff);box-shadow:0 1px 2px rgba(16,24,40,.025)}
.zcg-promo-card__top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:20px;margin-bottom:8px}
.zcg-promo-card__badge{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;background:color-mix(in srgb,var(--zcg-promo-accent,#2f6f54) 9%,transparent);color:var(--zcg-promo-accent,#2f6f54);font-size:9px;font-weight:650;text-transform:uppercase;letter-spacing:.055em}
.zcg-promo-card__date{color:var(--zcg-promo-muted,#69746e);font-size:9.5px;font-weight:400}
.zcg-promo-card__title{margin:0!important;padding:0!important;color:var(--zcg-promo-text,#17201c);font-size:15px;font-weight:590;line-height:1.25;letter-spacing:-.015em}
.zcg-promo-card__description{margin-top:5px;color:var(--zcg-promo-muted,#69746e);font-size:11.5px;font-weight:400;line-height:1.45}
.zcg-promo-card__section{margin-top:13px}
.zcg-promo-card__label{margin-bottom:6px;color:var(--zcg-promo-muted,#69746e);font-size:9px;font-weight:650;text-transform:uppercase;letter-spacing:.07em}
.zcg-promo-products{display:flex;gap:6px;overflow:hidden}
.zcg-promo-product{display:flex;align-items:center;gap:6px;min-width:0;flex:1;padding:5px 6px;border:1px solid color-mix(in srgb,var(--zcg-promo-border,#e6e9ec) 85%,transparent);border-radius:7px;color:var(--zcg-promo-text,#17201c)!important;text-decoration:none!important;background:color-mix(in srgb,var(--zcg-promo-bg,#fff) 96%,#000 4%)}
.zcg-promo-product:hover{border-color:color-mix(in srgb,var(--zcg-promo-accent,#2f6f54) 26%,var(--zcg-promo-border,#e6e9ec))}
.zcg-promo-product__image{width:28px;height:28px;flex:0 0 28px;border-radius:5px;overflow:hidden;background:#f6f7f7}
.zcg-promo-product__image img{display:block;width:100%;height:100%;object-fit:cover;margin:0!important}
.zcg-promo-product__name{display:-webkit-box;overflow:hidden;min-width:0;color:inherit;font-size:9.8px;font-weight:500;line-height:1.25;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.zcg-promo-card__conditions{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--zcg-promo-border,#e6e9ec) 72%,transparent)}
.zcg-promo-card__conditions>span{padding-top:1px;color:var(--zcg-promo-muted,#69746e);font-size:8.5px;font-weight:650;text-transform:uppercase;letter-spacing:.065em}
.zcg-promo-card__conditions p{margin:0!important;color:var(--zcg-promo-muted,#69746e);font-size:10.5px;font-weight:400;line-height:1.38}
.zcg-promo-card__giftbox{margin-top:auto;padding-top:13px}
.zcg-promo-gifts{display:flex;flex-direction:column;gap:5px;padding:7px;border-radius:8px;background:color-mix(in srgb,var(--zcg-promo-accent,#2f6f54) 6%,transparent)}
.zcg-promo-gift{display:flex;align-items:center;gap:7px;min-height:34px}
.zcg-promo-gift__image{width:32px;height:32px;flex:0 0 32px;border-radius:6px;overflow:hidden;background:#fff}
.zcg-promo-gift__image img{display:block;width:100%;height:100%;object-fit:cover;margin:0!important}
.zcg-promo-gift__name{min-width:0;flex:1;color:var(--zcg-promo-text,#17201c);font-size:10.5px;font-weight:520;line-height:1.3}
.zcg-promo-gift__name small{color:var(--zcg-promo-muted,#69746e);font-size:9px;font-weight:400}
.zcg-promo-gift__free{display:inline-flex;padding:2px 5px;border-radius:999px;background:#fff;color:var(--zcg-promo-accent,#2f6f54);font-size:8px;font-weight:650;text-transform:uppercase;letter-spacing:.04em}
.zcg-promotions__dots{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:10px}
.zcg-promotions__dot{width:5px;height:5px;border:0;border-radius:999px;padding:0;background:color-mix(in srgb,var(--zcg-promo-muted,#69746e) 28%,transparent);transition:width .18s ease,background .18s ease;cursor:pointer}
.zcg-promotions__dot.is-active{width:16px;background:var(--zcg-promo-accent,#2f6f54)}

@media(max-width:1024px){
  .zcg-promotions__track{grid-template-columns:repeat(var(--zcg-promo-tablet,2),minmax(0,1fr))}
  .zcg-promotions--slider .zcg-promotions__track{grid-auto-columns:calc((100% - (var(--zcg-promo-tablet,2) - 1) * var(--zcg-promo-gap,14px)) / var(--zcg-promo-tablet,2))}
}
@media(max-width:767px){
  .zcg-gift-card{margin:8px 0}
  .zcg-gift-card__message{line-height:1.32}
  .zcg-gift-card__items{gap:5px}
  .zcg-gift-item{flex:0 0 78%;min-width:0;max-width:260px;min-height:36px;padding:4px 5px!important}
  .zcg-gift-item__image{width:26px;height:26px;flex-basis:26px}
  .zcg-pdp-promos{margin:8px 0}
  .zcg-promotions__track{grid-template-columns:repeat(var(--zcg-promo-mobile,1),minmax(0,1fr))}
  .zcg-promotions__header{margin-bottom:9px}
  .zcg-promotions__heading{font-size:18px}
  .zcg-promotions--slider .zcg-promotions__track{grid-auto-columns:calc((100% - (var(--zcg-promo-mobile,1) - 1) * var(--zcg-promo-gap,14px)) / var(--zcg-promo-mobile,1))}
}

/* v0.2.2 · Showcase compacto: promociones en grid, slider solo dentro de regalos */
.zcg-pdp-promos{display:flex!important;flex-direction:column!important;grid-template-columns:none!important;gap:6px;width:100%}
.zcg-pdp-promo{width:100%;min-width:0;box-sizing:border-box}

.zcg-promotions{--zcg-promo-columns:3;--zcg-promo-gift-width:150px}
.zcg-promotions__header{margin:0 0 10px}
.zcg-promotions__heading{font-size:clamp(16px,1.65vw,21px);font-weight:500;letter-spacing:-.018em}
.zcg-promotions__track{display:grid!important;grid-template-columns:repeat(var(--zcg-promo-columns,3),minmax(0,1fr))!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;gap:var(--zcg-promo-gap,12px);width:100%;min-width:0}
.zcg-promo-card{display:flex;flex-direction:column;min-width:0;padding:var(--zcg-promo-pad,12px);border:1px solid var(--zcg-promo-border,#e6e9ec);border-radius:var(--zcg-promo-radius,8px);background:var(--zcg-promo-bg,#fff);box-shadow:none}
.zcg-promo-card__top{min-height:0;margin:0 0 7px}
.zcg-promo-card__badge{padding:2px 6px;font-size:8px;font-weight:550;letter-spacing:.045em;background:color-mix(in srgb,var(--zcg-promo-accent,#2f6f54) 7%,transparent)}
.zcg-promo-card__date{font-size:8.5px;font-weight:350}
.zcg-promo-card__title{font-size:13.5px;font-weight:520;line-height:1.28;letter-spacing:-.012em}
.zcg-promo-card__description{margin-top:4px;font-size:10.5px;font-weight:350;line-height:1.42}
.zcg-promo-card__section{margin-top:10px}
.zcg-promo-card__label{margin:0 0 4px;color:var(--zcg-promo-muted,#69746e);font-size:8.2px;font-weight:560;text-transform:uppercase;letter-spacing:.065em;line-height:1.25}

.zcg-promo-products{display:flex;gap:5px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity}
.zcg-promo-products::-webkit-scrollbar{display:none}
.zcg-promo-product{flex:0 0 auto;max-width:170px;padding:4px 5px;gap:5px;border-radius:6px;background:color-mix(in srgb,var(--zcg-promo-bg,#fff) 97%,#000 3%);scroll-snap-align:start}
.zcg-promo-product__image{width:24px;height:24px;flex-basis:24px;border-radius:4px}
.zcg-promo-product__name{font-size:9px;font-weight:430;line-height:1.2}

.zcg-promo-card__conditions{display:block!important;margin-top:10px;padding-top:9px;border-top:1px solid color-mix(in srgb,var(--zcg-promo-border,#e6e9ec) 70%,transparent)}
.zcg-promo-card__conditions .zcg-promo-card__label{margin-bottom:3px}
.zcg-promo-card__conditions p{margin:0!important;color:var(--zcg-promo-muted,#69746e);font-size:10px;font-weight:350;line-height:1.4}

.zcg-promo-card__giftbox{margin-top:auto;padding-top:11px;min-width:0}
.zcg-promo-card__gifthead{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}
.zcg-promo-card__gifthead .zcg-promo-card__label{margin:0}
.zcg-promo-gifts__nav{display:flex;align-items:center;gap:3px;transition:opacity .15s ease}
.zcg-promo-gifts__nav.is-hidden{visibility:hidden;opacity:0;pointer-events:none}
.zcg-promo-gifts__arrow{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:1px solid color-mix(in srgb,var(--zcg-promo-border,#e6e9ec) 92%,transparent);border-radius:999px;background:transparent;color:var(--zcg-promo-muted,#69746e);font:400 15px/1 Arial,sans-serif;cursor:pointer}
.zcg-promo-gifts__arrow:hover{color:var(--zcg-promo-text,#17201c);border-color:color-mix(in srgb,var(--zcg-promo-accent,#2f6f54) 30%,var(--zcg-promo-border,#e6e9ec))}
.zcg-promo-gifts__arrow:disabled{opacity:.28;cursor:default}
.zcg-promo-gifts-slider{width:100%;min-width:0}
.zcg-promo-gifts__viewport{width:100%;max-width:100%;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none}
.zcg-promo-gifts__viewport::-webkit-scrollbar{display:none}
.zcg-promo-gifts{display:flex!important;flex-direction:row!important;gap:5px!important;width:max-content;min-width:100%;padding:0!important;border-radius:0!important;background:transparent!important}
.zcg-promo-gift{display:flex;align-items:center;gap:6px;flex:0 0 min(var(--zcg-promo-gift-width,150px),calc(100vw - 52px));width:min(var(--zcg-promo-gift-width,150px),calc(100vw - 52px));min-height:36px;padding:5px 6px;border:1px solid color-mix(in srgb,var(--zcg-promo-border,#e6e9ec) 75%,transparent);border-radius:6px;background:color-mix(in srgb,var(--zcg-promo-accent,#2f6f54) 4%,var(--zcg-promo-bg,#fff));scroll-snap-align:start;box-sizing:border-box}
.zcg-promo-gift__image{width:28px;height:28px;flex:0 0 28px;border-radius:5px}
.zcg-promo-gift__name{display:-webkit-box;overflow:hidden;min-width:0;flex:1;font-size:9.3px;font-weight:450;line-height:1.25;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.zcg-promo-gift__name small{font-size:8.5px;font-weight:350}
.zcg-promo-gift__free{padding:2px 4px;font-size:7.2px;font-weight:560;letter-spacing:.035em;background:transparent;border:1px solid color-mix(in srgb,var(--zcg-promo-accent,#2f6f54) 20%,transparent)}

@media(max-width:1024px){
  .zcg-promotions__track{grid-template-columns:repeat(var(--zcg-promo-tablet,2),minmax(0,1fr))!important}
}
@media(max-width:767px){
  .zcg-promotions__track{grid-template-columns:repeat(var(--zcg-promo-mobile,1),minmax(0,1fr))!important}
  .zcg-promo-card{padding:var(--zcg-promo-pad,11px)}
}

/* v0.2.4 · widgets separados, título inline y slider drag desktop */
.zcg-promo-card__giftmeta{display:flex;align-items:baseline;gap:5px;min-width:0;overflow:hidden}
.zcg-promo-card__giftmeta .zcg-promo-card__label{flex:0 0 auto}
.zcg-promo-card__giftsep{flex:0 0 auto;color:var(--zcg-promo-muted,#69746e);font-size:9px;font-weight:350;line-height:1}
.zcg-promo-card__gift-title{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--zcg-promo-text,#17201c);font-size:10.5px;font-weight:520;line-height:1.2;letter-spacing:-.01em;text-transform:none}
.zcg-promotions--title-gift-inline .zcg-promo-card__gifthead{align-items:center}

/* Evita que Elementor / theme / WooCommerce pinten los botones del slider. */
.zcg-promotions .zcg-promo-gifts__arrow{
  -webkit-appearance:none!important;appearance:none!important;box-sizing:border-box!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;max-width:20px!important;max-height:20px!important;
  margin:0!important;padding:0!important;border:1px solid color-mix(in srgb,var(--zcg-promo-border,#e6e9ec) 92%,transparent)!important;
  border-radius:999px!important;background:transparent!important;background-image:none!important;color:var(--zcg-promo-muted,#69746e)!important;
  font-family:Arial,sans-serif!important;font-size:15px!important;font-style:normal!important;font-weight:400!important;line-height:1!important;letter-spacing:0!important;text-transform:none!important;
  box-shadow:none!important;text-shadow:none!important;text-decoration:none!important;transform:none!important;outline:none!important;cursor:pointer!important;overflow:hidden!important;
}
.zcg-promotions .zcg-promo-gifts__arrow:hover,
.zcg-promotions .zcg-promo-gifts__arrow:focus,
.zcg-promotions .zcg-promo-gifts__arrow:active{
  width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;margin:0!important;padding:0!important;
  background:transparent!important;background-image:none!important;color:var(--zcg-promo-text,#17201c)!important;
  border-color:color-mix(in srgb,var(--zcg-promo-accent,#2f6f54) 30%,var(--zcg-promo-border,#e6e9ec))!important;
  box-shadow:none!important;text-decoration:none!important;transform:none!important;
}
.zcg-promotions .zcg-promo-gifts__arrow:disabled{opacity:.28!important;cursor:default!important;transform:none!important}

.zcg-promo-gifts__viewport.is-scrollable{cursor:grab}
.zcg-promo-gifts__viewport.is-dragging{cursor:grabbing!important;scroll-behavior:auto!important;scroll-snap-type:none!important;user-select:none!important;-webkit-user-select:none!important}
.zcg-promo-gifts__viewport.is-dragging *{user-select:none!important;-webkit-user-select:none!important;pointer-events:none!important}
.zcg-promo-gifts__viewport img{-webkit-user-drag:none;user-drag:none;user-select:none;-webkit-user-select:none}

/* El widget contextual puede usarse en PDP y mantener la misma estética sin forzar el grid general. */
.zcg-promotions--product-context .zcg-promotions__track{width:100%}

/* v0.2.5 · badge flotante, medidas responsive y condiciones al pie */
.zcg-promotions .zcg-promo-card{position:relative;overflow:visible}
.zcg-promotions .zcg-promo-card__top{display:block;min-height:0;margin:0!important;padding:0}
.zcg-promotions .zcg-promo-card__badge{
  position:absolute!important;
  top:var(--zcg-promo-badge-y,10px)!important;
  right:var(--zcg-promo-badge-x,10px)!important;
  left:auto!important;
  bottom:auto!important;
  z-index:3;
  margin:0!important;
}
.zcg-promotions .zcg-promo-card__date{display:inline-block;margin:0 0 7px}
.zcg-promotions .zcg-promo-card--has-badge>.zcg-promo-card__title{padding-right:72px}

/* Las condiciones son siempre el último bloque de la tarjeta. */
.zcg-promotions .zcg-promo-card__section--buy{order:20}
.zcg-promotions .zcg-promo-card__giftbox{order:40}
.zcg-promotions .zcg-promo-card__conditions{order:50;width:100%}

.zcg-promotions .zcg-promo-card__conditions--stacked{display:block!important}
.zcg-promotions .zcg-promo-card__conditions--inline{
  display:flex!important;
  flex-wrap:wrap;
  align-items:baseline;
  gap:4px 7px;
}
.zcg-promotions .zcg-promo-card__conditions--inline .zcg-promo-card__label{margin:0!important;flex:0 0 auto}
.zcg-promotions .zcg-promo-card__conditions--inline p{margin:0!important;min-width:0}
.zcg-promotions .zcg-promo-card__conditions--align-left{text-align:left;justify-content:flex-start}
.zcg-promotions .zcg-promo-card__conditions--align-center{text-align:center;justify-content:center}
.zcg-promotions .zcg-promo-card__conditions--align-right{text-align:right;justify-content:flex-end}
.zcg-promotions .zcg-promo-card__conditions--align-center .zcg-promo-card__label,
.zcg-promotions .zcg-promo-card__conditions--align-right .zcg-promo-card__label{align-self:auto}

/* Ancho del carrusel de regalos independiente por breakpoint. */
.zcg-promotions .zcg-promo-gift{
  flex-basis:min(var(--zcg-promo-gift-width,150px),calc(100vw - 52px));
  width:min(var(--zcg-promo-gift-width,150px),calc(100vw - 52px));
}
@media(max-width:1024px){
  .zcg-promotions .zcg-promo-card__badge{top:var(--zcg-promo-badge-y-tablet,var(--zcg-promo-badge-y,10px))!important;right:var(--zcg-promo-badge-x-tablet,var(--zcg-promo-badge-x,10px))!important}
  .zcg-promotions .zcg-promo-gift{flex-basis:min(var(--zcg-promo-gift-width-tablet,var(--zcg-promo-gift-width,150px)),calc(100vw - 52px));width:min(var(--zcg-promo-gift-width-tablet,var(--zcg-promo-gift-width,150px)),calc(100vw - 52px))}
}
@media(max-width:767px){
  .zcg-promotions .zcg-promo-card__badge{top:var(--zcg-promo-badge-y-mobile,var(--zcg-promo-badge-y-tablet,8px))!important;right:var(--zcg-promo-badge-x-mobile,var(--zcg-promo-badge-x-tablet,8px))!important}
  .zcg-promotions .zcg-promo-gift{flex-basis:min(var(--zcg-promo-gift-width-mobile,var(--zcg-promo-gift-width-tablet,220px)),calc(100vw - 34px));width:min(var(--zcg-promo-gift-width-mobile,var(--zcg-promo-gift-width-tablet,220px)),calc(100vw - 34px))}
}
.zcg-promotions .zcg-promo-card--has-badge>.zcg-promo-card__description{padding-right:72px}

/* v0.2.6 · refinado visual + condiciones realmente inline */
.zcg-promotions .zcg-promo-card__badge{
  background:color-mix(in srgb,var(--zcg-promo-accent,#2f6f54) 9%,var(--zcg-promo-bg,#fff) 91%)!important;
  opacity:1!important;
}
.zcg-promotions--conditions-bottom .zcg-promo-card__giftbox{
  margin-top:10px!important;
  padding-top:0!important;
}
.zcg-promotions .zcg-promo-card__conditions--inline{
  display:block!important;
}
.zcg-promotions .zcg-promo-card__conditions--inline p{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  text-align:inherit!important;
}
.zcg-promotions .zcg-promo-card__conditions--inline .zcg-promo-card__condition-label{
  display:inline!important;
  margin:0!important;
  padding:0!important;
  vertical-align:baseline!important;
}
.zcg-promotions .zcg-promo-card__conditions--inline .zcg-promo-card__condition-sep,
.zcg-promotions .zcg-promo-card__conditions--inline .zcg-promo-card__condition-text{
  display:inline!important;
  vertical-align:baseline!important;
}
.zcg-promotions .zcg-promo-card__conditions--align-left{text-align:left!important}
.zcg-promotions .zcg-promo-card__conditions--align-center{text-align:center!important}
.zcg-promotions .zcg-promo-card__conditions--align-right{text-align:right!important}

/* Mount AJAX independiente para FunnelKit: vive justo después del email. */
.zcg-checkout-promo-slot{
  display:block!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0!important;
}
.zcg-checkout-promo-slot[hidden]{display:none!important}
.zcg-checkout-promo-slot .zcg-gift-card--checkout[data-zcg-checkout-placement="after_contact"]{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.zcg-checkout-promo-slot.is-loading{min-height:0!important}
#wfacp_checkout_form .zcg-checkout-promo-slot,
#wfacp-e-form .zcg-checkout-promo-slot{
  float:none!important;
}

/* Fallback visual para tarjetas post-compra que reutilizan las mismas clases. */
.zcg-gift-card--order .zcg-gift-item__image{width:38px;height:38px;flex:0 0 38px;overflow:hidden;border-radius:7px}
.zcg-gift-card--order .zcg-gift-item__image img{display:block;width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important;padding:0!important}
.zcg-gift-card--order .zcg-gift-item__body{min-width:0;flex:1}.zcg-gift-card--order .zcg-gift-item__name{font-size:11px;line-height:1.25;font-weight:500}
.zcg-gift-card--order .zcg-gift-item__free{margin-left:auto;padding:2px 6px;border:1px solid var(--zcg-checkout-badge-border,#cfe1d7);border-radius:999px;background:var(--zcg-checkout-badge-bg,#f4faf6);color:var(--zcg-checkout-badge-text,#2f6f54);font-size:8px;font-weight:600;text-transform:uppercase}


/* v0.2.14 · escaparate general full-width y escala homepage
 * El widget "Promociones con regalo · Todas" se comporta como bloque de homepage:
 * - ocupa el ancho completo del contenedor Elementor;
 * - 1 promo = 100%, 2 promos = 2 columnas, etc. (columnas efectivas se calculan en PHP);
 * - modo destacado aumenta escala, aire y presencia sin tocar el widget contextual de PDP.
 */
.elementor-widget-zcg-promotions{
  width:100%!important;
  max-width:100%!important;
  align-self:stretch!important;
  flex-basis:100%!important;
}
.elementor-widget-zcg-promotions>.elementor-widget-container{
  width:100%!important;
  max-width:100%!important;
}
.zcg-promotions--storewide{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
.zcg-promotions--storewide .zcg-promotions__track{
  width:100%!important;
  max-width:none!important;
}

/* Escala destacada: pensada para homepage/landing. Los controles de Elementor
 * siguen pudiendo sobrescribir tipografías, colores, radio y padding. */
.zcg-promotions--homepage-featured .zcg-promotions__header{
  margin-bottom:18px;
}
.zcg-promotions--homepage-featured .zcg-promotions__heading{
  font-size:clamp(26px,2.6vw,38px);
  font-weight:560;
  line-height:1.08;
  letter-spacing:-.03em;
}
.zcg-promotions--homepage-featured .zcg-promo-card{
  min-width:0;
  padding:var(--zcg-promo-pad,22px);
  border-color:color-mix(in srgb,var(--zcg-promo-accent,#2f6f54) 12%,var(--zcg-promo-border,#e6e9ec));
  border-radius:var(--zcg-promo-radius,14px);
  box-shadow:0 12px 34px rgba(16,24,40,.055);
}
.zcg-promotions--homepage-featured .zcg-promo-card__top{
  margin-bottom:10px!important;
}
.zcg-promotions--homepage-featured .zcg-promo-card__badge{
  padding:4px 9px!important;
  font-size:9.5px;
  font-weight:620;
  letter-spacing:.06em;
}
.zcg-promotions--homepage-featured .zcg-promo-card__date{
  margin-bottom:10px;
  font-size:10.5px;
}
.zcg-promotions--homepage-featured .zcg-promo-card__title{
  font-size:clamp(20px,1.8vw,27px);
  font-weight:570;
  line-height:1.14;
  letter-spacing:-.025em;
}
.zcg-promotions--homepage-featured .zcg-promo-card--has-badge>.zcg-promo-card__title,
.zcg-promotions--homepage-featured .zcg-promo-card--has-badge>.zcg-promo-card__description{
  padding-right:96px;
}
.zcg-promotions--homepage-featured .zcg-promo-card__description{
  max-width:900px;
  margin-top:7px;
  font-size:13.5px;
  font-weight:380;
  line-height:1.45;
}
.zcg-promotions--homepage-featured .zcg-promo-card__section{
  margin-top:18px;
}
.zcg-promotions--homepage-featured .zcg-promo-card__label{
  margin-bottom:8px;
  font-size:10px;
  font-weight:620;
  line-height:1.2;
  letter-spacing:.085em;
}
.zcg-promotions--homepage-featured .zcg-promo-products{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:10px;
  overflow:visible;
}
.zcg-promotions--homepage-featured .zcg-promo-product{
  width:100%;
  max-width:none;
  min-height:62px;
  padding:8px 10px;
  gap:9px;
  border-radius:10px;
  box-sizing:border-box;
}
.zcg-promotions--homepage-featured .zcg-promo-product__image{
  width:44px;
  height:44px;
  flex-basis:44px;
  border-radius:8px;
}
.zcg-promotions--homepage-featured .zcg-promo-product__name{
  font-size:12px;
  font-weight:500;
  line-height:1.28;
}
.zcg-promotions--homepage-featured .zcg-promo-card__giftbox{
  margin-top:18px!important;
  padding-top:0!important;
}
.zcg-promotions--homepage-featured .zcg-promo-card__gifthead{
  margin-bottom:8px;
}
.zcg-promotions--homepage-featured .zcg-promo-card__gift-title{
  font-size:15px;
  font-weight:560;
  line-height:1.2;
}
.zcg-promotions--homepage-featured .zcg-promo-card__giftsep{
  font-size:12px;
}
.zcg-promotions--homepage-featured .zcg-promo-gifts{
  gap:9px!important;
}
.zcg-promotions--homepage-featured .zcg-promo-gift{
  min-height:66px;
  padding:9px 10px;
  gap:10px;
  border-radius:10px;
  box-sizing:border-box;
}
.zcg-promotions--homepage-featured .zcg-promo-gift__image{
  width:46px;
  height:46px;
  flex:0 0 46px;
  border-radius:8px;
}
.zcg-promotions--homepage-featured .zcg-promo-gift__name{
  font-size:12px;
  font-weight:500;
  line-height:1.26;
}
.zcg-promotions--homepage-featured .zcg-promo-gift__name small{
  font-size:10px;
}
.zcg-promotions--homepage-featured .zcg-promo-gift__free{
  padding:3px 6px;
  font-size:8.5px;
  font-weight:620;
}
.zcg-promotions--homepage-featured .zcg-promo-gifts__nav{
  gap:5px;
}
.zcg-promotions--homepage-featured .zcg-promo-gifts__arrow{
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  min-height:28px!important;
  max-width:28px!important;
  max-height:28px!important;
  font-size:18px!important;
}
.zcg-promotions--homepage-featured .zcg-promo-gifts__arrow:hover,
.zcg-promotions--homepage-featured .zcg-promo-gifts__arrow:focus,
.zcg-promotions--homepage-featured .zcg-promo-gifts__arrow:active{
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  min-height:28px!important;
}
.zcg-promotions--homepage-featured .zcg-promo-card__conditions{
  margin-top:18px;
  padding-top:14px;
}
.zcg-promotions--homepage-featured .zcg-promo-card__conditions p{
  font-size:12.5px;
  font-weight:380;
  line-height:1.45;
}

@media(max-width:1024px){
  .zcg-promotions--homepage-featured .zcg-promo-card{
    padding:var(--zcg-promo-pad,18px);
  }
  .zcg-promotions--homepage-featured .zcg-promo-product{
    min-height:56px;
  }
  .zcg-promotions--homepage-featured .zcg-promo-product__image{
    width:38px;height:38px;flex-basis:38px;
  }
}
@media(max-width:767px){
  .elementor-widget-zcg-promotions{
    flex-basis:100%!important;
  }
  .zcg-promotions--homepage-featured .zcg-promotions__header{
    margin-bottom:12px;
  }
  .zcg-promotions--homepage-featured .zcg-promotions__heading{
    font-size:24px;
  }
  .zcg-promotions--homepage-featured .zcg-promo-card{
    padding:var(--zcg-promo-pad,15px);
    border-radius:var(--zcg-promo-radius,12px);
    box-shadow:0 8px 24px rgba(16,24,40,.045);
  }
  .zcg-promotions--homepage-featured .zcg-promo-card__title{
    font-size:19px;
  }
  .zcg-promotions--homepage-featured .zcg-promo-card__description{
    font-size:12px;
  }
  .zcg-promotions--homepage-featured .zcg-promo-products{
    display:flex;
    gap:7px;
    overflow-x:auto;
    scrollbar-width:none;
    scroll-snap-type:x proximity;
  }
  .zcg-promotions--homepage-featured .zcg-promo-products::-webkit-scrollbar{display:none}
  .zcg-promotions--homepage-featured .zcg-promo-product{
    flex:0 0 78%;
    width:auto;
    min-height:54px;
    scroll-snap-align:start;
  }
  .zcg-promotions--homepage-featured .zcg-promo-gift{
    min-height:60px;
  }
  .zcg-promotions--homepage-featured .zcg-promo-gift__image{
    width:42px;height:42px;flex-basis:42px;
  }
  .zcg-promotions--homepage-featured .zcg-promo-card__conditions{
    margin-top:14px;
    padding-top:11px;
  }
}

/* v0.2.16 · slider responsive con slides fraccionarios */
.zcg-promotions__header{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
}
.zcg-promotions__heading{margin:0!important}
.zcg-promotions__nav{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:7px!important;
  margin-left:auto!important;
  flex:0 0 auto!important;
  transition:opacity .18s ease!important;
}
.zcg-promotions__nav.is-hidden{visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.zcg-promotions .zcg-promotions__arrow{
  -webkit-appearance:none!important;appearance:none!important;box-sizing:border-box!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;max-width:32px!important;max-height:32px!important;
  margin:0!important;padding:0!important;
  border:1px solid color-mix(in srgb,var(--zcg-promo-border,#e6e9ec) 90%,transparent)!important;
  border-radius:999px!important;background:var(--zcg-promo-bg,#fff)!important;background-image:none!important;
  color:var(--zcg-promo-muted,#69746e)!important;
  font-family:Arial,sans-serif!important;font-size:19px!important;font-style:normal!important;font-weight:400!important;line-height:1!important;
  letter-spacing:0!important;text-transform:none!important;text-decoration:none!important;
  box-shadow:none!important;text-shadow:none!important;transform:none!important;outline:none!important;
  cursor:pointer!important;overflow:hidden!important;
}
.zcg-promotions .zcg-promotions__arrow:hover,
.zcg-promotions .zcg-promotions__arrow:focus,
.zcg-promotions .zcg-promotions__arrow:active{
  width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;
  background:color-mix(in srgb,var(--zcg-promo-accent,#2f6f54) 5%,var(--zcg-promo-bg,#fff))!important;
  color:var(--zcg-promo-text,#17201c)!important;
  border-color:color-mix(in srgb,var(--zcg-promo-accent,#2f6f54) 30%,var(--zcg-promo-border,#e6e9ec))!important;
  box-shadow:none!important;transform:none!important;
}
.zcg-promotions .zcg-promotions__arrow:disabled{opacity:.25!important;cursor:default!important;transform:none!important}

.zcg-promotions__viewport{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
.zcg-promotions--slider .zcg-promotions__viewport{
  overflow-x:auto!important;
  overflow-y:visible!important;
  scroll-behavior:smooth!important;
  scroll-snap-type:x mandatory!important;
  overscroll-behavior-x:contain!important;
  scrollbar-width:none!important;
  -webkit-overflow-scrolling:touch!important;
}
.zcg-promotions--slider .zcg-promotions__viewport::-webkit-scrollbar{display:none!important}
.zcg-promotions--slider .zcg-promotions__track{
  display:grid!important;
  grid-template-columns:none!important;
  grid-auto-flow:column!important;
  grid-auto-columns:calc((100% - (var(--zcg-promo-slides,3) - 1) * var(--zcg-promo-gap,18px)) / var(--zcg-promo-slides,3))!important;
  gap:var(--zcg-promo-gap,18px)!important;
  width:100%!important;
  min-width:100%!important;
  max-width:none!important;
  overflow:visible!important;
}
.zcg-promotions--slider .zcg-promo-card{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  scroll-snap-align:start!important;
  scroll-snap-stop:normal!important;
}
.zcg-promotions--slider .zcg-promotions__viewport.is-scrollable[data-zcg-promo-drag="yes"]{cursor:grab!important}
.zcg-promotions--slider .zcg-promotions__viewport.is-dragging{
  cursor:grabbing!important;
  scroll-behavior:auto!important;
  scroll-snap-type:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
.zcg-promotions--slider .zcg-promotions__viewport.is-dragging *{
  user-select:none!important;-webkit-user-select:none!important;pointer-events:none!important;
}
.zcg-promotions--slider .zcg-promotions__viewport img{-webkit-user-drag:none!important;user-select:none!important;-webkit-user-select:none!important}

/* Grid inteligente: PHP ya reduce cada breakpoint al número real de promociones. */
.zcg-promotions--grid .zcg-promotions__viewport{overflow:visible!important}
.zcg-promotions--grid .zcg-promotions__track{
  grid-template-columns:repeat(var(--zcg-promo-columns,3),minmax(0,1fr))!important;
}

@media(max-width:1024px){
  .zcg-promotions--slider .zcg-promotions__track{
    grid-template-columns:none!important;
    grid-auto-columns:calc((100% - (var(--zcg-promo-slides-tablet,2) - 1) * var(--zcg-promo-gap,18px)) / var(--zcg-promo-slides-tablet,2))!important;
  }
  .zcg-promotions--grid .zcg-promotions__track{
    grid-template-columns:repeat(var(--zcg-promo-tablet,2),minmax(0,1fr))!important;
  }
}
@media(max-width:767px){
  .zcg-promotions__header{gap:10px!important}
  .zcg-promotions .zcg-promotions__arrow,
  .zcg-promotions .zcg-promotions__arrow:hover,
  .zcg-promotions .zcg-promotions__arrow:focus,
  .zcg-promotions .zcg-promotions__arrow:active{
    width:29px!important;height:29px!important;min-width:29px!important;min-height:29px!important;max-width:29px!important;max-height:29px!important;font-size:17px!important;
  }
  .zcg-promotions--slider .zcg-promotions__track{
    grid-template-columns:none!important;
    grid-auto-columns:calc((100% - (var(--zcg-promo-slides-mobile,1) - 1) * var(--zcg-promo-gap,14px)) / var(--zcg-promo-slides-mobile,1))!important;
  }
  .zcg-promotions--grid .zcg-promotions__track{
    grid-template-columns:repeat(var(--zcg-promo-mobile,1),minmax(0,1fr))!important;
  }
}
.zcg-promotions__header.is-hidden{display:none!important}

/* v0.2.17 · controles responsive compartidos + badge Gratis sobre el borde */
.zcg-promotions .zcg-promotions__track{
  gap:var(--zcg-promo-gap,14px)!important;
}
.zcg-promotions .zcg-promo-card{
  padding:var(--zcg-promo-pad,12px)!important;
  border-radius:var(--zcg-promo-radius,8px)!important;
}

/* Badge de producto regalo centrado exactamente sobre el borde superior. */
.zcg-promotions--gift-badge-border .zcg-promo-gifts__viewport{
  box-sizing:border-box!important;
  padding-top:var(--zcg-promo-free-clearance,10px)!important;
}
.zcg-promotions--gift-badge-border .zcg-promo-gift{
  position:relative!important;
  overflow:visible!important;
}
.zcg-promotions--gift-badge-border .zcg-promo-gift__free{
  position:absolute!important;
  top:0!important;
  right:var(--zcg-promo-free-right,16px)!important;
  left:auto!important;
  bottom:auto!important;
  z-index:5!important;
  margin:0!important;
  transform:translateY(-50%)!important;
  white-space:nowrap!important;
  pointer-events:none!important;
}

@media(max-width:1024px){
  .zcg-promotions .zcg-promotions__track{
    gap:var(--zcg-promo-gap-tablet,var(--zcg-promo-gap,14px))!important;
  }
  .zcg-promotions .zcg-promo-card{
    padding:var(--zcg-promo-pad-tablet,var(--zcg-promo-pad,12px))!important;
    border-radius:var(--zcg-promo-radius-tablet,var(--zcg-promo-radius,8px))!important;
  }
  .zcg-promotions--slider .zcg-promotions__track{
    grid-auto-columns:calc((100% - (var(--zcg-promo-slides-tablet,2) - 1) * var(--zcg-promo-gap-tablet,var(--zcg-promo-gap,14px))) / var(--zcg-promo-slides-tablet,2))!important;
  }
  .zcg-promotions--gift-badge-border .zcg-promo-gifts__viewport{
    padding-top:var(--zcg-promo-free-clearance-tablet,var(--zcg-promo-free-clearance,9px))!important;
  }
  .zcg-promotions--gift-badge-border .zcg-promo-gift__free{
    right:var(--zcg-promo-free-right-tablet,var(--zcg-promo-free-right,12px))!important;
  }
}

@media(max-width:767px){
  .zcg-promotions .zcg-promotions__track{
    gap:var(--zcg-promo-gap-mobile,var(--zcg-promo-gap-tablet,var(--zcg-promo-gap,10px)))!important;
  }
  .zcg-promotions .zcg-promo-card{
    padding:var(--zcg-promo-pad-mobile,var(--zcg-promo-pad-tablet,var(--zcg-promo-pad,9px)))!important;
    border-radius:var(--zcg-promo-radius-mobile,var(--zcg-promo-radius-tablet,var(--zcg-promo-radius,7px)))!important;
  }
  .zcg-promotions--slider .zcg-promotions__track{
    grid-auto-columns:calc((100% - (var(--zcg-promo-slides-mobile,1) - 1) * var(--zcg-promo-gap-mobile,var(--zcg-promo-gap-tablet,var(--zcg-promo-gap,10px)))) / var(--zcg-promo-slides-mobile,1))!important;
  }
  .zcg-promotions--gift-badge-border .zcg-promo-gifts__viewport{
    padding-top:var(--zcg-promo-free-clearance-mobile,var(--zcg-promo-free-clearance-tablet,var(--zcg-promo-free-clearance,8px)))!important;
  }
  .zcg-promotions--gift-badge-border .zcg-promo-gift__free{
    right:var(--zcg-promo-free-right-mobile,var(--zcg-promo-free-right-tablet,var(--zcg-promo-free-right,10px)))!important;
  }
}
