/*
 * PROMOCOMBO — CAMPAÑAS / PRECIO PROMOCIONAL
 * VERSION-COMPAT: RC31_367
 * COMPONENT: PC-CLIENT-CAMPAIGN-DISCOUNT-BADGE
 * DATE: 2026-09-23
 */

/* RC31.278 — Campañas públicas dinámicas. Fuente única: /api/publicidad. */
.pcMarketingCampaignsMobile,
.pcMarketingCampaignsDesktop{min-width:0}
.pcMarketingCampaignsMobile[hidden],
.pcMarketingCampaignsDesktop[hidden]{display:none!important}

.pcCampaigns{width:100%;min-width:0}
.pcCampaigns__rail{
  display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;
  scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;
}
.pcCampaigns__rail::-webkit-scrollbar{display:none}
.pcCampaignCard{
  --pc-campaign-image:none;position:relative;isolation:isolate;overflow:hidden;
  flex:0 0 100%;min-width:100%;min-height:270px;border-radius:24px;
  scroll-snap-align:start;background:#17191f;color:#fff;
  box-shadow:0 18px 46px rgba(18,24,33,.17);
}
.pcCampaignCard::before{
  content:"";position:absolute;inset:0;z-index:-2;background-image:var(--pc-campaign-image);
  background-size:cover;background-position:center;
}
.pcCampaignCard--promo{background:linear-gradient(120deg,#210d0e,#7b1118 58%,#e20d18)}
.pcCampaignCard--dark{background:linear-gradient(120deg,#11151c,#29313d)}
.pcCampaignCard--light{background:linear-gradient(120deg,#fff,#eef1f5);color:#17191f;border:1px solid #e0e4e9}
.pcCampaignCard__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(13,10,12,.91) 0%,rgba(18,12,14,.70) 52%,rgba(12,10,12,.18) 100%)}
.pcCampaignCard--light .pcCampaignCard__shade{background:linear-gradient(90deg,rgba(255,255,255,.97),rgba(255,255,255,.80) 55%,rgba(255,255,255,.24))}
.pcCampaignCard__content{min-height:270px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:32px 38px;max-width:62%}
.pcCampaignCard__content small{font-size:11px;line-height:1;font-weight:950;letter-spacing:.14em;color:#ffcc43;text-transform:uppercase;margin-bottom:9px}
.pcCampaignCard--light .pcCampaignCard__content small{color:#d70d18}
.pcCampaignCard__content h2{margin:0;color:inherit;font-size:clamp(27px,3vw,48px);line-height:.98;letter-spacing:-.035em;font-weight:950;text-wrap:balance}
.pcCampaignCard__content p{margin:11px 0 0;color:rgba(255,255,255,.83);font-size:14px;line-height:1.45;max-width:600px}
.pcCampaignCard--light .pcCampaignCard__content p{color:#5f6873}
.pcCampaignCard__cta{margin-top:18px;min-height:43px;padding:0 18px;border:0;border-radius:12px;background:#e20d18;color:#fff;font-size:13px;font-weight:950;cursor:pointer;box-shadow:0 8px 18px rgba(226,13,24,.20)}
.pcCampaigns__dots{display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 0 0}
.pcCampaigns__dots button{width:7px;height:7px;padding:0;border:0;border-radius:99px;background:#c8cdd4;transition:width .18s ease,background .18s ease;cursor:pointer}
.pcCampaigns__dots button.is-active{width:23px;background:#df0d18}

.pcMarketingCampaignsDesktop{width:min(1240px,calc(100% - 36px));margin:18px auto 26px}

@media(max-width:768px){
  .pcMarketingCampaignsDesktop{display:none!important}
  .pcMarketingCampaignsMobile{display:block;margin:11px 0 15px;padding:0 14px}
  .pcCampaigns__rail{gap:10px;padding:2px 0 5px}
  .pcCampaignCard{flex:0 0 88%;min-width:88%;min-height:185px;border-radius:19px;box-shadow:0 10px 26px rgba(18,24,33,.14)}
  .pcCampaignCard__content{min-height:185px;max-width:78%;padding:18px 17px;justify-content:flex-end}
  .pcCampaignCard__content small{font-size:9px;margin-bottom:6px}
  .pcCampaignCard__content h2{font-size:20px;line-height:1.02;max-width:100%}
  .pcCampaignCard__content p{font-size:11.5px;line-height:1.32;margin-top:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .pcCampaignCard__cta{margin-top:10px;min-height:36px;padding:0 12px;border-radius:10px;font-size:10.5px}
  .pcCampaigns__dots{padding-top:5px}
}

@media(min-width:769px){
  .pcMarketingCampaignsMobile{display:none!important}
}


/* RC31.277 — precio promocional dinámico de campaña */
.productoCard__precioCampana{
    display:flex;
    align-items:center;
    gap:6px;
    margin-top:-4px;
    min-height:17px;
    font-size:10px;
    line-height:1.1;
}
.productoCard__precioCampana s{
    color:#9299a2;
    font-weight:700;
}
.productoCard__precioCampana b{
    max-width:150px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#b20f1a;
    background:#fff0f1;
    border:1px solid rgba(178,15,26,.18);
    border-radius:5px;
    padding:2px 5px;
    font-size:9px;
    line-height:1;
    text-transform:uppercase;
    letter-spacing:.03em;
}
.precioCampanaCarrito{
    display:block;
    margin-top:3px;
    color:#d91422;
    font-size:11px;
    font-weight:800;
}
.precioCampanaCarrito s{
    color:#8d949e;
    font-weight:700;
}


/* RC31.278 — ocupa el lugar exacto de la portada vieja. */
@media(min-width:769px){
  .pcMarketingCampaignsDesktop{
    width:min(1420px,calc(100% - 72px));
    margin:0 auto 22px;
  }
  .pcMarketingCampaignsDesktop .pcCampaignCard{
    min-height:370px;
    border-radius:0 0 26px 26px;
  }
  .pcMarketingCampaignsDesktop .pcCampaignCard__content{
    min-height:370px;
    padding:44px 56px;
    max-width:58%;
  }
}
\n\n/* RC31.279 — bloqueo definitivo del carrusel frontal heredado. */
.portadaPrincipal,
.seccionPortadaCarrusel,
.portadaCarrusel{display:none!important}
.pcMarketingCampaignsDesktop{display:block}
.pcMarketingCampaignsDesktop[hidden]{display:none!important}

/* RC31.283 — banners finales adaptados Web/App, sin remaquetar el diseño */
.pcCampaignCard--artwork::before{background-image:var(--pc-campaign-image-web,var(--pc-campaign-image));background-size:cover;background-position:center;background-repeat:no-repeat;z-index:-1}.pcCampaignCard--artwork{cursor:pointer;background:#0b0d11}.pcCampaignCard--artwork .pcCampaignCard__shade,.pcCampaignCard--artwork .pcCampaignCard__content{display:none!important}.pcCampaignCard__artworkLink{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;cursor:pointer;z-index:3}
@media(max-width:768px){.pcCampaignCard--artwork::before{background-image:var(--pc-campaign-image-app,var(--pc-campaign-image-web,var(--pc-campaign-image)));background-size:cover;background-position:center}.pcCampaignCard--artwork{min-height:185px}}

/* =========================================================
   RC31.285 — BANNERS TERMINADOS POR CANAL
   WEB: 1600×600 (8:3) · APP: 1080×608 (~16:9)
   La pieza se muestra completa, sin blur, estiramiento ni remaquetación.
========================================================= */
@media(min-width:769px){
  .pcMarketingCampaignsDesktop .pcCampaignCard--artwork{
    min-height:0!important;
    aspect-ratio:8/3;
    background:#0d1014;
  }
  .pcMarketingCampaignsDesktop .pcCampaignCard--artwork::before{
    background-image:var(--pc-campaign-image-web,var(--pc-campaign-image))!important;
    background-size:contain!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
  }
}
@media(max-width:768px){
  .pcMarketingCampaignsMobile .pcCampaignCard--artwork{
    min-height:0!important;
    aspect-ratio:16/9;
    background:#0d1014;
  }
  .pcMarketingCampaignsMobile .pcCampaignCard--artwork::before{
    background-image:var(--pc-campaign-image-app,var(--pc-campaign-image-web,var(--pc-campaign-image)))!important;
    background-size:contain!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
  }
}

/* =========================================================
   RC31.286 — TAMAÑO RESPONSIVE DEL CARRUSEL PUBLICITARIO
   Objetivo:
   - Mantener los archivos originales Web 1600×600 y App 1080×608.
   - Reducir solamente el tamaño de PRESENTACIÓN en pantalla.
   - No recortar, no estirar y no editar la imagen del banner.
   - En Web, liberar espacio vertical para mostrar antes el catálogo.
========================================================= */
@media(min-width:769px){
  .pcMarketingCampaignsDesktop{
    width:min(820px,calc(100% - 48px))!important;
    margin:10px auto 14px!important;
  }

  .pcMarketingCampaignsDesktop .pcCampaignCard--artwork{
    width:100%;
    min-height:0!important;
    aspect-ratio:8/3!important;
    border-radius:18px!important;
    background:#0d1014;
  }

  .pcMarketingCampaignsDesktop .pcCampaignCard--artwork::before{
    background-size:contain!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
  }

  .pcMarketingCampaignsDesktop .pcCampaigns__dots{
    padding-top:6px!important;
  }
}

@media(max-width:768px){
  .pcMarketingCampaignsMobile{
    width:100%;
    margin:8px auto 12px!important;
    padding:0 12px!important;
  }

  .pcMarketingCampaignsMobile .pcCampaigns__rail{
    gap:8px!important;
  }

  .pcMarketingCampaignsMobile .pcCampaignCard--artwork{
    flex:0 0 84%!important;
    min-width:84%!important;
    max-width:560px;
    min-height:0!important;
    aspect-ratio:16/9!important;
    border-radius:18px!important;
    background:#0d1014;
  }

  .pcMarketingCampaignsMobile .pcCampaignCard--artwork::before{
    background-size:contain!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
  }
}
