.icp-platform {
  align-items: center;
  display: flex;
  gap: 8px;
}

.icp-platform img {
  display: block;
  height: 17px;
  object-fit: contain;
  width: 17px;
}

/* Version 1.4: an intentionally distinct promotions layout. */
.icp-promotions-page {
  background: linear-gradient(180deg, #06070a 0, #06070a 36rem, #090c12 36rem, #090c12 100%);
}

.icp-promotions-hero {
  position: relative;
  overflow: hidden;
  background: linear-gradient(90deg, rgba(5, 6, 9, 1) 0%, rgba(5, 6, 9, .97) 48%, rgba(5, 6, 9, .4) 100%), radial-gradient(circle at 15% 78%, rgba(255, 32, 86, .34), transparent 32%), #090a0f;
}

.icp-promotions-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .28;
  background-image: linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(90deg, #000, transparent 72%);
}

.icp-hero-grid { min-height: 590px; position: relative; }
.icp-hero-copy { position: relative; z-index: 2; max-width: 670px; }
.icp-hero-copy h1 { max-width: 670px; text-wrap: balance; }
.icp-hero-copy p { font-size: 1.08rem; max-width: 550px; }
.icp-hero-art { border-left: 0; background: transparent; align-self: stretch; }
.icp-hero-art::after { background: linear-gradient(90deg, #06070a 0%, rgba(6, 7, 10, .82) 19%, transparent 52%, rgba(6, 7, 10, .06) 100%); }
.icp-hero-art img { object-position: 57% 30%; }

.icp-promo-nav { margin-top: -34px; position: relative; z-index: 3; padding-top: 0; }
.icp-promo-nav-card { min-height: 156px; border-radius: 12px; border-color: rgba(93, 108, 139, .72); background: linear-gradient(148deg, rgba(20, 27, 42, .98), rgba(9, 12, 19, .98)); }
.icp-promo-nav-card::before { content: ""; display: block; width: 36px; height: 3px; border-radius: 999px; background: var(--icp-pink); box-shadow: 0 0 16px rgba(255, 32, 86, .7); }
.icp-promo-nav-card:hover, .icp-promo-nav-card:focus-visible { outline: none; transform: translateY(-5px); border-color: #ff5c84; }

.icp-network-filter { border: 1px solid #25324a; padding: 7px; border-radius: 14px; background: #0b111b; width: fit-content; max-width: 100%; }
.icp-network-filter button.is-active { background: var(--icp-pink); color: #fff; border-color: var(--icp-pink); box-shadow: 0 7px 18px rgba(255, 32, 86, .25); }

/* The current network is deliberately unmistakable: the catalog starts
   filtered, while the selector remains an obvious control to explore. */
#packs-red .icp-section-heading {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
#packs-red .icp-section-heading p { margin-left: auto; margin-right: auto; }
#packs-objetivo .icp-section-heading {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
#packs-objetivo .icp-section-heading p { margin-left: auto; margin-right: auto; }
#packs-red .icp-network-filter {
  justify-content: center;
  margin: 26px auto 8px;
}
#packs-red .icp-network-filter button {
  position: relative;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}
#packs-red .icp-network-filter button.is-active {
  background: linear-gradient(135deg, #ff2b63, #ff174f);
  border-color: #ff7697;
  box-shadow: 0 0 0 3px rgba(255, 42, 91, .16), 0 9px 24px rgba(255, 30, 82, .42);
  transform: translateY(-1px);
  animation: icp-selected-network 2.4s ease-in-out infinite;
}
#packs-red .icp-network-filter button.is-active::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -7px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #ff5a83;
  box-shadow: 0 0 10px #ff3c70;
  transform: translateX(-50%);
}
#packs-red .icp-network-filter button:hover:not(.is-active),
#packs-red .icp-network-filter button:focus-visible:not(.is-active) {
  color: #fff;
  border-color: #8292b1;
  transform: translateY(-1px);
}
.icp-network-status {
  margin: 0 0 24px;
  color: #90a0b8;
  font-size: .82rem;
  text-align: center;
}
.icp-network-status strong { color: #ff86a2; font-weight: 800; }
@keyframes icp-selected-network {
  0%, 100% { box-shadow: 0 0 0 3px rgba(255, 42, 91, .16), 0 9px 24px rgba(255, 30, 82, .36); }
  50% { box-shadow: 0 0 0 5px rgba(255, 42, 91, .10), 0 11px 28px rgba(255, 30, 82, .55); }
}
@media (prefers-reduced-motion: reduce) {
  #packs-red .icp-network-filter button.is-active { animation: none; }
}
.icp-promo-card, .icp-objective-card, .icp-deal-card { border-radius: 14px; }
.icp-promo-card { border-color: #33425d; }
.icp-promo-card .icp-card-topline { padding-bottom: 14px; border-bottom: 1px solid rgba(125, 145, 180, .18); }
.icp-objective-card { background: linear-gradient(155deg, #151c2c, #0b101a 67%); }
.icp-objective-visual span { width: 42px; height: 42px; background: #0d1420; }
.icp-deal-card { border-color: #31435f; background: linear-gradient(165deg, #111b2a, #090e16 70%); }
.icp-deal-logo { width: 58px; height: 58px; border-radius: 16px; background: #0a101a; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08), 0 14px 30px rgba(0, 0, 0, .24); }
.icp-deal-logo img { width: 32px; height: 32px; }

@media (max-width: 900px) {
  .icp-hero-grid { min-height: 0; }
  .icp-hero-copy { padding: 72px 0 36px; }
  .icp-hero-art { height: 350px; }
  .icp-promo-nav { margin-top: -18px; }
}

@media (max-width: 560px) {
  .icp-hero-copy { padding-top: 54px; }
  .icp-hero-copy h1 { font-size: clamp(2.45rem, 12vw, 3.35rem); }
  .icp-hero-art { height: 320px; }
  .icp-hero-art img { object-position: 52% 26%; }
  .icp-promo-nav { margin-top: -10px; gap: 10px; }
  .icp-promo-nav-card { min-height: 0; padding: 19px; }
  .icp-network-filter { width: 100%; box-sizing: border-box; }
}

/* Brand-specific card identities: official marks, no generic recoloring. */
.icp-promo-card[data-network] .icp-logo-tile,
.icp-deal-card[data-network] .icp-deal-logo { background: #151b28; }
.icp-promo-card[data-network] .icp-logo-tile img,
.icp-deal-card[data-network] .icp-deal-logo img { filter: brightness(0) invert(1); }

.icp-promo-card[data-network="instagram"], .icp-deal-card[data-network="instagram"] { background: linear-gradient(145deg, #351130, #1a1023 58%, #10131d); border-color: #b53079; }
.icp-promo-card[data-network="instagram"] .icp-logo-tile, .icp-deal-card[data-network="instagram"] .icp-deal-logo { background: linear-gradient(135deg, #ffdc80, #fc4f6f 46%, #8a2be2); }
.icp-promo-card[data-network="tiktok"], .icp-deal-card[data-network="tiktok"] { background: linear-gradient(145deg, #08191d, #0b0e16 58%, #25101f); border-color: #23d6e6; }
.icp-promo-card[data-network="tiktok"] .icp-logo-tile, .icp-deal-card[data-network="tiktok"] .icp-deal-logo { background: #07090d; box-shadow: -3px 0 #25f4ee, 3px 0 #fe2c55; }
.icp-promo-card[data-network="facebook"], .icp-deal-card[data-network="facebook"] { background: linear-gradient(145deg, #0e285a, #101b37 58%, #10131d); border-color: #3f7fe6; }
.icp-promo-card[data-network="facebook"] .icp-logo-tile, .icp-deal-card[data-network="facebook"] .icp-deal-logo { background: #1877f2; }
.icp-promo-card[data-network="youtube"], .icp-deal-card[data-network="youtube"] { background: linear-gradient(145deg, #491016, #251015 58%, #10131d); border-color: #ef4444; }
.icp-promo-card[data-network="youtube"] .icp-logo-tile, .icp-deal-card[data-network="youtube"] .icp-deal-logo { background: #ff0033; }
.icp-promo-card[data-network="linkedin"], .icp-deal-card[data-network="linkedin"] { background: linear-gradient(145deg, #0b3153, #0d1f35 58%, #10131d); border-color: #2589c7; }
.icp-promo-card[data-network="linkedin"] .icp-logo-tile, .icp-deal-card[data-network="linkedin"] .icp-deal-logo { background: #0a66c2; }
.icp-promo-card[data-network="spotify"], .icp-deal-card[data-network="spotify"] { background: linear-gradient(145deg, #0c3526, #0c1f1b 58%, #10131d); border-color: #1db954; }
.icp-promo-card[data-network="spotify"] .icp-logo-tile, .icp-deal-card[data-network="spotify"] .icp-deal-logo { background: #1db954; }
.icp-promo-card[data-network="telegram"], .icp-deal-card[data-network="telegram"] { background: linear-gradient(145deg, #0a3658, #0d2133 58%, #10131d); border-color: #31a8e8; }
.icp-promo-card[data-network="telegram"] .icp-logo-tile, .icp-deal-card[data-network="telegram"] .icp-deal-logo { background: #229ed9; }
.icp-promo-card[data-network="twitch"], .icp-deal-card[data-network="twitch"] { background: linear-gradient(145deg, #241349, #17122b 58%, #10131d); border-color: #a970ff; }
.icp-promo-card[data-network="twitch"] .icp-logo-tile, .icp-deal-card[data-network="twitch"] .icp-deal-logo { background: #9146ff; }
.icp-promo-card[data-network="twitter"], .icp-deal-card[data-network="twitter"] { background: linear-gradient(145deg, #17212b, #111923 58%, #10131d); border-color: #a3b2c3; }
.icp-promo-card[data-network="threads"], .icp-deal-card[data-network="threads"] { background: linear-gradient(145deg, #2a1527, #181217 58%, #10131d); border-color: #ea4c89; }

/* Give objectives a distinct editorial visual rather than generic circles. */
.icp-objective-visual { height: 82px; position: relative; overflow: hidden; border: 1px solid rgba(151, 168, 198, .22); border-radius: 10px; padding: 11px; background: linear-gradient(135deg, #121a29, #0b1019); }
.icp-objective-visual::before { content: ""; position: absolute; inset: 0; opacity: .7; background: radial-gradient(circle at 84% 28%, rgba(255, 32, 86, .42), transparent 25%), linear-gradient(120deg, transparent 49%, rgba(255, 255, 255, .08) 50%, transparent 52%); }
.icp-objective-visual span { position: relative; z-index: 1; }
.icp-objective-card[data-objective="tienda-local"] .icp-objective-visual { height: 88px; justify-content: flex-end; padding-right: 18px; background: linear-gradient(145deg, #280d15, #150f16); }
.icp-objective-card[data-objective="tienda-local"] .icp-objective-visual::before { left: 15px; right: auto; top: 25px; bottom: 13px; width: 92px; opacity: 1; border: 2px solid #ff365f; border-radius: 4px 4px 2px 2px; background: repeating-linear-gradient(90deg, #ff365f 0 11px, #f8f2e9 11px 22px); box-shadow: inset 0 -38px #501525, 0 0 26px rgba(255, 35, 82, .35); }
.icp-objective-card[data-objective="tienda-local"] .icp-objective-visual::after { content: ""; position: absolute; left: 49px; bottom: 14px; width: 25px; height: 29px; border: 2px solid #f8f2e9; border-bottom: 0; border-radius: 3px 3px 0 0; }
.icp-objective-card[data-objective="tienda-local"] .icp-objective-visual span { background: #1877f2; }

/* Each objective is its own visual story, while keeping the same card system. */
.icp-objective-card[data-objective="lanzamiento"] .icp-objective-visual {
  justify-content: flex-end;
  background: radial-gradient(circle at 20% 86%, rgba(255, 74, 119, .7), transparent 30%), linear-gradient(135deg, #24132c, #0d1425);
}
.icp-objective-card[data-objective="lanzamiento"] .icp-objective-visual::before {
  left: 20px; top: 13px; width: 34px; height: 58px; opacity: 1; transform: rotate(-30deg); border-radius: 45% 45% 12px 12px; background: linear-gradient(135deg, #f7fbff 0 25%, #fb285f 25% 60%, #8738df 60%); box-shadow: -14px 27px 0 -7px #ff315f, 16px 31px 0 -8px #ff9855;
}
.icp-objective-card[data-objective="lanzamiento"] .icp-objective-visual span { background: #0d1420; border-color: #f33f6d; }

.icp-objective-card[data-objective="marca-personal"] .icp-objective-visual {
  justify-content: flex-start;
  padding-left: 120px;
  background: radial-gradient(circle at 25% 36%, rgba(255, 55, 127, .72), transparent 28%), linear-gradient(135deg, #39142c, #130f1b);
}
.icp-objective-card[data-objective="marca-personal"] .icp-objective-visual::before {
  left: 30px; top: 11px; width: 57px; height: 66px; opacity: 1; border-radius: 52% 52% 12px 12px; background: radial-gradient(circle at 50% 24%, #e6ab86 0 14px, transparent 15px), radial-gradient(ellipse at 50% 54%, #191318 0 29px, transparent 30px), linear-gradient(#21141b 0 43%, #16141b 43%); box-shadow: 0 0 23px rgba(255, 36, 115, .45);
}
.icp-objective-card[data-objective="marca-personal"] .icp-objective-visual span { background: #f02b73; }

.icp-objective-card[data-objective="perfil-profesional"] .icp-objective-visual {
  justify-content: flex-end;
  background: linear-gradient(135deg, #0b2a49, #0b1321);
}
.icp-objective-card[data-objective="perfil-profesional"] .icp-objective-visual::before {
  left: 22px; top: 12px; width: 76px; height: 57px; opacity: 1; border-radius: 6px; background: linear-gradient(90deg, #103d6c 0 30%, transparent 30%), repeating-linear-gradient(180deg, #d3e7ff 0 4px, transparent 4px 12px); border: 1px solid #4f9cd6; box-shadow: 0 10px 20px rgba(4, 41, 78, .45);
}
.icp-objective-card[data-objective="perfil-profesional"] .icp-objective-visual::after { content: "in"; left: 31px; bottom: 18px; width: 18px; height: 18px; color: #fff; background: #0a66c2; font: 800 13px/18px Arial, sans-serif; text-align: center; border-radius: 2px; }
.icp-objective-card[data-objective="perfil-profesional"] .icp-objective-visual span { background: #0a66c2; }

.icp-objective-card[data-objective="comunidad"] .icp-objective-visual {
  justify-content: center;
  background: radial-gradient(circle at 50% 35%, rgba(129, 83, 232, .48), transparent 32%), linear-gradient(135deg, #15142c, #11151d);
}
.icp-objective-card[data-objective="comunidad"] .icp-objective-visual::before { left: 50%; top: 22px; width: 58px; height: 34px; transform: translateX(-50%); opacity: 1; border-radius: 30px 30px 8px 8px; background: radial-gradient(circle at 16px 12px, #efbc93 0 7px, transparent 8px), radial-gradient(circle at 42px 12px, #bc7a58 0 7px, transparent 8px), linear-gradient(90deg, #7537bb 0 50%, #2855c9 50%); box-shadow: -34px 12px 0 -7px #f33c75, 34px 12px 0 -7px #21d5ee; }
.icp-objective-card[data-objective="comunidad"] .icp-objective-visual span { position: absolute; bottom: 10px; background: #0d1420; }
.icp-objective-card[data-objective="comunidad"] .icp-objective-visual span:nth-child(1) { left: 28px; }
.icp-objective-card[data-objective="comunidad"] .icp-objective-visual span:nth-child(2) { right: 28px; }

.icp-objective-card[data-objective="presencia-total"] .icp-objective-visual {
  justify-content: center;
  gap: 9px;
  background: radial-gradient(circle at 50% 50%, rgba(255, 31, 89, .29), transparent 37%), linear-gradient(135deg, #211129, #101726);
}
.icp-objective-card[data-objective="presencia-total"] .icp-objective-visual::before { left: 50%; top: 50%; width: 54px; height: 54px; transform: translate(-50%, -50%) rotate(30deg); opacity: 1; border: 1px solid #ff4b77; border-radius: 8px; background: linear-gradient(135deg, rgba(255, 44, 102, .36), rgba(51, 208, 238, .15)); box-shadow: 0 0 28px rgba(255, 30, 90, .35); }
.icp-objective-card[data-objective="presencia-total"] .icp-objective-visual span { z-index: 2; background: #111827; }

/* Any rotating daily offer inherits its platform's visual language. */
.icp-deal-card[data-network] .icp-deal-logo { transition: transform .2s ease, box-shadow .2s ease; }
.icp-deal-card[data-network]:hover .icp-deal-logo { transform: scale(1.06); }
.icp-deal-card[data-network="instagram"] .icp-deal-logo { box-shadow: 0 0 0 1px #f44c77, 0 14px 30px rgba(221, 50, 133, .28); }
.icp-deal-card[data-network="tiktok"] .icp-deal-logo { box-shadow: -3px 0 #25f4ee, 3px 0 #fe2c55, 0 14px 30px rgba(0, 0, 0, .3); }
.icp-deal-card[data-network="facebook"] .icp-deal-logo { box-shadow: 0 0 0 1px #1877f2, 0 14px 30px rgba(24, 119, 242, .28); }
.icp-deal-card[data-network="youtube"] .icp-deal-logo { box-shadow: 0 0 0 1px #ff0033, 0 14px 30px rgba(255, 0, 51, .25); }
.icp-deal-card[data-network="linkedin"] .icp-deal-logo { box-shadow: 0 0 0 1px #0a66c2, 0 14px 30px rgba(10, 102, 194, .3); }
.icp-deal-card[data-network="spotify"] .icp-deal-logo { box-shadow: 0 0 0 1px #1db954, 0 14px 30px rgba(29, 185, 84, .25); }
.icp-deal-card[data-network="telegram"] .icp-deal-logo { box-shadow: 0 0 0 1px #229ed9, 0 14px 30px rgba(34, 158, 217, .25); }
.icp-deal-card[data-network="twitch"] .icp-deal-logo { box-shadow: 0 0 0 1px #9146ff, 0 14px 30px rgba(145, 70, 255, .25); }

/* Editorial objective imagery, inspired by the compact card reference. */
.icp-objective-visual,
.icp-objective-card[data-objective] .icp-objective-visual {
  height: 124px;
  padding: 0;
  overflow: hidden;
  background: #0b1019;
  border-color: rgba(156, 171, 198, .24);
}
.icp-objective-visual::before,
.icp-objective-visual::after,
.icp-objective-card[data-objective] .icp-objective-visual::before,
.icp-objective-card[data-objective] .icp-objective-visual::after { display: none; }
.icp-objective-image { width: 100%; height: 100%; object-fit: cover; object-position: 68% center; display: block; filter: saturate(.92) contrast(1.04); }
.icp-objective-icons { position: absolute; left: 12px; bottom: 11px; display: flex; gap: 6px; z-index: 2; }
.icp-objective-icons span,
.icp-objective-card[data-objective] .icp-objective-icons span { position: static; width: 27px; height: 27px; background: rgba(8, 12, 20, .9); border: 1px solid rgba(255, 255, 255, .35); box-shadow: 0 4px 12px rgba(0, 0, 0, .35); }
.icp-objective-icons img { width: 14px; height: 14px; filter: brightness(0) invert(1); }
.icp-objective-card[data-objective="tienda-local"] .icp-objective-visual { justify-content: initial; padding: 0; background: #0b1019; }
.icp-objective-card[data-objective="tienda-local"] .icp-objective-icons span { background: #1877f2; }

/* The hero asset contains intentional negative space; render it whole. */
.icp-promotions-hero .icp-hero-art { position: absolute; inset: 0; z-index: 0; height: auto; width: 100%; }
.icp-promotions-hero .icp-hero-art img { width: 100%; height: 100%; object-fit: contain; object-position: right center; }
@media (max-width: 900px) {
  .icp-promotions-hero .icp-hero-art { position: relative; height: 350px; width: 100%; }
  .icp-promotions-hero .icp-hero-art img { object-fit: cover; object-position: 58% 30%; }
}

/* Objective packs follow the supplied compact-card model: a distinct visual
   story on the left, with the offer details clearly legible on the right. */
.icp-objective-grid { gap: 16px; }
.icp-objective-card {
  min-height: 214px;
  overflow: hidden;
  background: linear-gradient(145deg, #121928, #090e17 72%);
}
.icp-objective-card .icp-objective-content {
  display: grid;
  grid-template-columns: 136px minmax(0, 1fr);
  gap: 0 14px;
  align-items: stretch;
  min-height: 214px;
  padding: 10px;
}
.icp-objective-card .icp-objective-visual,
.icp-objective-card[data-objective] .icp-objective-visual {
  grid-column: 1;
  grid-row: 1;
  height: auto !important;
  min-height: 194px;
  width: 100%;
  border: 1px solid rgba(255, 51, 105, .38);
  border-radius: 8px;
  background: #07090e;
  isolation: isolate;
}
.icp-objective-card .icp-objective-visual > img.icp-objective-image {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  display: block !important;
  object-position: center;
  object-fit: cover !important;
  filter: saturate(.98) contrast(1.05);
  z-index: 1;
}
.icp-objective-card .icp-objective-icons {
  left: 8px;
  bottom: 8px;
  gap: 4px;
}
.icp-objective-card .icp-objective-icons span,
.icp-objective-card[data-objective] .icp-objective-icons span {
  width: 23px;
  height: 23px;
  border-color: rgba(255,255,255,.42);
}
.icp-objective-card .icp-objective-icons img { width: 12px; height: 12px; }
.icp-objective-details {
  grid-column: 2;
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: 5px 2px 3px 0;
}
.icp-objective-details h3 {
  margin: 0 0 6px;
  color: #fff;
  font-size: 1.08rem;
  line-height: 1.12;
}
.icp-objective-details p {
  margin: 0;
  color: #bfcae0;
  font-size: .77rem;
  line-height: 1.36;
}
.icp-objective-details .icp-component-list {
  list-style: none;
  margin: 0;
  padding: 0;
  color: #bfcae0;
  font-size: .75rem;
  line-height: 1.38;
}
.icp-objective-details .icp-component-list li {
  position: relative;
  padding-left: 11px;
}
.icp-objective-details .icp-component-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .52em;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--icp-pink);
}
.icp-objective-details .icp-card-footer {
  margin-top: auto;
  padding-top: 12px;
  gap: 8px;
  align-items: end;
}
.icp-objective-details .icp-price del { font-size: .66rem; }
.icp-objective-details .icp-price strong { font-size: 1.15rem; }
.icp-objective-details .icp-buy {
  min-height: 34px;
  padding: 8px 10px;
  font-size: .68rem;
  white-space: nowrap;
}
@media (max-width: 560px) {
  .icp-objective-card { min-height: 188px; }
  .icp-objective-card .icp-objective-content {
    grid-template-columns: 38% minmax(0, 1fr);
    min-height: 188px;
    padding: 8px;
    gap: 0 10px;
  }
  .icp-objective-card .icp-objective-visual,
  .icp-objective-card[data-objective] .icp-objective-visual { min-height: 172px; }
  .icp-objective-details { padding-top: 3px; }
  .icp-objective-details h3 { font-size: 1rem; }
  .icp-objective-details p { font-size: .7rem; }
  .icp-objective-details .icp-component-list { font-size: .66rem; }
  .icp-objective-details .icp-card-footer { padding-top: 8px; }
  .icp-objective-details .icp-price strong { font-size: 1.04rem; }
  .icp-objective-details .icp-buy { font-size: .61rem; padding: 7px 8px; }
}
