/* IPTV Charleroi v1.3.80 — Single consolidated homepage pricing CSS
   Audit result: the previous pricing implementation had 8 cascade layers (73→80).
   This file consolidates those layers into one section-specific CSS file to reduce CSS fragmentation.
   Scope: homepage futuristic pricing section only (.ipch-pricing-concept / .ipch-plan-*).
   Preserve cascade order to avoid visual regression. */


/* ===== Consolidated from 73-pricing-futuristic-concept-rebuild.css ===== */

/* IPTV Charleroi v1.3.72 — Futuristic pricing concept rebuild */
.ipch-pricing-concept {
  position: relative;
  overflow: hidden;
  padding: 72px 0 54px;
  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,.95), transparent 24%),
    radial-gradient(circle at 88% 2%, rgba(255,255,255,.92), transparent 22%),
    linear-gradient(180deg, #f7f8fc 0%, #fbfbfd 38%, #f2f3f7 100%);
}

.ipch-pricing-concept::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(125deg, rgba(255,255,255,.85), transparent 26%, transparent 74%, rgba(255,255,255,.72)),
    radial-gradient(circle at 50% -4%, rgba(10,17,37,.035), transparent 40%);
}

.ipch-pricing-shell {
  position: relative;
  z-index: 1;
}

.ipch-pricing-heading {
  max-width: 980px;
  margin: 0 auto 34px;
  text-align: center;
}

.ipch-pricing-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 42px;
  padding: 0 24px;
  border-radius: 999px;
  border: 1px solid rgba(15,23,42,.07);
  background: rgba(255,255,255,.7);
  box-shadow: 0 12px 28px rgba(15,23,42,.05), inset 0 1px 0 rgba(255,255,255,.95);
  color: #0f162d;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .42em;
  text-transform: uppercase;
}

.ipch-pricing-kicker .kicker-dot {
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: radial-gradient(circle at 32% 32%, #ff6b6b, #ec111d 72%);
  box-shadow: 0 0 0 5px rgba(236,17,29,.08), 0 8px 22px rgba(236,17,29,.26);
}

.ipch-pricing-heading h2 {
  margin: 18px 0 10px;
  font-size: clamp(42px, 5vw, 72px);
  line-height: .93;
  letter-spacing: -.06em;
  text-transform: uppercase;
  font-style: italic;
  font-weight: 950;
  color: #ef131f;
}

.ipch-pricing-heading h2 span {
  color: #0a1022;
}

.ipch-pricing-heading p {
  margin: 0 auto;
  max-width: 760px;
  color: #606d84;
  font-size: clamp(18px, 1.8vw, 22px);
  line-height: 1.45;
}

.ipch-pricing-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  align-items: end;
}

.ipch-plan-card {
  position: relative;
  isolation: isolate;
  border-radius: 34px;
  min-height: 738px;
  padding: 28px 18px 18px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.58)),
    linear-gradient(180deg, #fdfdff 0%, #f7f7fa 100%);
  border: 1px solid rgba(238,17,29,.13);
  box-shadow:
    0 24px 60px rgba(15,23,42,.08),
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 0 0 2px rgba(255,255,255,.55);
  overflow: hidden;
  transition: transform .32s cubic-bezier(.2,.8,.2,1), box-shadow .32s cubic-bezier(.2,.8,.2,1), border-color .25s ease;
}

.ipch-plan-card:hover,
.ipch-plan-card:focus-within {
  transform: translateY(-8px);
  box-shadow:
    0 32px 72px rgba(15,23,42,.11),
    0 12px 30px rgba(238,17,29,.08),
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 0 0 2px rgba(255,255,255,.58);
  border-color: rgba(238,17,29,.22);
}

.ipch-plan-frame,
.ipch-plan-card::before,
.ipch-plan-card::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.ipch-plan-frame {
  inset: 10px;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.92);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.95);
}

.ipch-plan-card::before {
  inset: 0;
  background:
    radial-gradient(circle at 50% -10%, rgba(255,255,255,.95), transparent 34%),
    radial-gradient(circle at 88% 4%, rgba(238,17,29,.08), transparent 20%);
}

.ipch-plan-card::after {
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 -18px 30px rgba(255,255,255,.28);
}

.ipch-plan-inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 88px 18px 0;
  text-align: center;
}

.ipch-plan-tech-badge {
  position: absolute;
  top: 30px;
  left: 50%;
  transform: translateX(-50%);
  width: 114px;
  height: 114px;
  z-index: 3;
}

.ipch-plan-tech-badge::before,
.ipch-plan-tech-badge::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 28px;
}

.ipch-plan-tech-badge::before {
  background:
    linear-gradient(145deg, #ffffff 0%, #f0f1f5 100%);
  border: 1px solid rgba(215,220,230,.88);
  box-shadow:
    0 16px 32px rgba(15,23,42,.08),
    inset 0 1px 0 rgba(255,255,255,.97),
    inset 0 -5px 12px rgba(200,206,216,.34);
}

.ipch-plan-tech-badge::after {
  inset: 12px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(246,248,252,.94));
  border: 1px solid rgba(218,223,232,.8);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.98);
}

.ipch-plan-tech-badge span {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  z-index: 2;
  color: #ef121e;
  font-size: 24px;
  font-weight: 950;
  letter-spacing: -.04em;
}

.ipch-plan-tech-badge span::before {
  content: "073";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  top: 28px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 16px;
  color: #ef121e;
}

.ipch-plan-micro {
  margin: 0 0 8px;
  color: #242b3d;
  font-size: 17px;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.ipch-plan-card h3 {
  margin: 0;
  font-size: clamp(26px, 2vw, 38px);
  line-height: 1.05;
  letter-spacing: -.045em;
  color: #11172c;
}

.ipch-plan-tagline {
  margin: 8px 0 0;
  color: #333d53;
  font-size: 17px;
  line-height: 1.4;
}

.ipch-plan-divider {
  width: 54px;
  height: 4px;
  border-radius: 999px;
  margin: 18px auto 18px;
  background: linear-gradient(90deg, transparent, rgba(238,17,29,.8), transparent);
  box-shadow: 0 0 18px rgba(238,17,29,.18);
}

.ipch-plan-price {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 10px;
  margin-bottom: 26px;
}

.ipch-plan-price strong {
  color: #0c1230;
  font-size: clamp(56px, 4vw, 78px);
  line-height: .92;
  font-weight: 950;
  letter-spacing: -.06em;
}

.ipch-plan-price span {
  color: #11172c;
  font-size: 28px;
  font-weight: 900;
  line-height: 1;
  margin-bottom: 9px;
}

.ipch-plan-features {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;
}

.ipch-plan-features li {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 46px;
  padding: 10px 12px;
  text-align: left;
  border-radius: 18px;
  background: rgba(255,255,255,.66);
  border: 1px solid rgba(15,23,42,.05);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.95), 0 8px 20px rgba(15,23,42,.03);
  color: #13192f;
  font-size: 15px;
  font-weight: 760;
}

.ipch-plan-features i {
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: linear-gradient(145deg, rgba(255,255,255,.96), rgba(248,249,252,.96));
  border: 1px solid rgba(238,17,29,.14);
  color: #ef121e;
  font-size: 13px;
  box-shadow: 0 8px 16px rgba(238,17,29,.08);
}

.ipch-plan-cta {
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 52px;
  padding: 0 18px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(245,246,249,.98));
  border: 1px solid rgba(15,23,42,.05);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.97), 0 12px 26px rgba(15,23,42,.05);
  color: #263047;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.ipch-plan-cta i {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: linear-gradient(135deg, #ff5a67 0%, #ef121e 100%);
  color: #fff;
  box-shadow: 0 10px 22px rgba(238,17,29,.24);
}

.ipch-plan-cta:hover,
.ipch-plan-cta:focus-visible {
  transform: translateY(-1px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.97), 0 16px 32px rgba(15,23,42,.07);
}

.ipch-plan-card--featured {
  min-height: 770px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,249,250,.78)),
    linear-gradient(180deg, #fffdfd 0%, #fff2f4 100%);
  border-color: rgba(238,17,29,.22);
  box-shadow:
    0 34px 82px rgba(238,17,29,.13),
    0 16px 34px rgba(15,23,42,.09),
    inset 0 1px 0 rgba(255,255,255,.98),
    inset 0 0 0 2px rgba(255,255,255,.62);
}

.ipch-plan-card--featured:hover,
.ipch-plan-card--featured:focus-within {
  box-shadow:
    0 42px 96px rgba(238,17,29,.18),
    0 16px 36px rgba(15,23,42,.10),
    inset 0 1px 0 rgba(255,255,255,.98),
    inset 0 0 0 2px rgba(255,255,255,.64);
}

.ipch-plan-featured-core {
  position: absolute;
  inset: auto 16px 16px 16px;
  top: 16px;
  border-radius: 30px;
  border: 1px solid rgba(238,17,29,.18);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.76), 0 0 28px rgba(238,17,29,.12);
  pointer-events: none;
}

.ipch-plan-hex-badge {
  position: absolute;
  top: 14px;
  left: 50%;
  width: 100px;
  height: 100px;
  transform: translateX(-50%);
  z-index: 4;
  clip-path: polygon(25% 6.7%, 75% 6.7%, 100% 50%, 75% 93.3%, 25% 93.3%, 0% 50%);
  background: linear-gradient(145deg, #ff7f86 0%, #ee151f 48%, #b30711 100%);
  box-shadow: 0 18px 34px rgba(238,17,29,.32), inset 0 1px 0 rgba(255,255,255,.36);
  display: grid;
  place-items: center;
}

.ipch-plan-hex-badge::before {
  content: "";
  position: absolute;
  inset: 10px;
  clip-path: inherit;
  background: linear-gradient(145deg, rgba(255,255,255,.18), rgba(255,255,255,.02));
  border: 1px solid rgba(255,255,255,.22);
}

.ipch-plan-hex-badge span {
  position: relative;
  z-index: 1;
  color: #fff;
  font-size: 22px;
  font-weight: 950;
  letter-spacing: -.03em;
}

.ipch-plan-chip {
  align-self: center;
  min-height: 38px;
  margin: 0 0 14px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(15,23,42,.06);
  color: #3a4152;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.ipch-plan-card--featured h3,
.ipch-plan-card--featured .ipch-plan-price strong,
.ipch-plan-card--featured .ipch-plan-price span {
  color: #ef121e;
}

.ipch-plan-cta--featured {
  background: linear-gradient(135deg, #ff514f 0%, #ed111d 55%, #cd0811 100%);
  border-color: rgba(255,255,255,.16);
  color: #fff;
  box-shadow: 0 20px 38px rgba(238,17,29,.22), inset 0 1px 0 rgba(255,255,255,.24);
}

.ipch-plan-cta--featured i {
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
}.ipch-pricing-assurance {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin-top: 28px;
  padding: 18px 22px;
  border-radius: 28px;
  background: rgba(255,255,255,.64);
  border: 1px solid rgba(15,23,42,.05);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.96), 0 18px 44px rgba(15,23,42,.05);
}

.ipch-assurance-item {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 58px;
}

.ipch-assurance-item i {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(238,17,29,.14);
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(247,248,252,.96));
  color: #ef121e;
  box-shadow: 0 10px 20px rgba(238,17,29,.08);
}

.ipch-assurance-item strong {
  display: block;
  margin-bottom: 2px;
  color: #12192f;
  font-size: 15px;
  font-weight: 900;
}

.ipch-assurance-item span {
  color: #636f84;
  font-size: 14px;
  line-height: 1.35;
}

@media (max-width: 1400px) {
  .ipch-pricing-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ipch-plan-card,
  .ipch-plan-card--featured {
    min-height: 700px;
  }

  .ipch-pricing-assurance {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 780px) {
  .ipch-pricing-concept {
    padding: 58px 0 36px;
  }

  .ipch-pricing-kicker {
    letter-spacing: .22em;
    font-size: 12px;
    padding-inline: 18px;
  }

  .ipch-pricing-heading h2 {
    margin-top: 16px;
    font-size: clamp(34px, 10vw, 48px);
  }

  .ipch-pricing-heading p {
    font-size: 17px;
  }

  .ipch-pricing-grid,
  .ipch-pricing-assurance {
    grid-template-columns: 1fr;
  }

  .ipch-plan-card,
  .ipch-plan-card--featured {
    min-height: auto;
    padding: 24px 14px 14px;
    border-radius: 28px;
  }

  .ipch-plan-frame {
    inset: 8px;
    border-radius: 22px;
  }

  .ipch-plan-tech-badge {
    top: 26px;
    width: 94px;
    height: 94px;
  }

  .ipch-plan-inner {
    padding: 78px 12px 0;
  }

  .ipch-plan-card h3 {
    font-size: 22px;
  }

  .ipch-plan-tagline {
    font-size: 15px;
  }

  .ipch-plan-price strong {
    font-size: 50px;
  }

  .ipch-plan-price span {
    font-size: 23px;
  }

  .ipch-plan-features li {
    min-height: 42px;
    font-size: 14px;
  }

  .ipch-plan-cta {
    min-height: 50px;
    font-size: 12px;
    padding-inline: 14px;
  }

  .ipch-plan-cta span {
    max-width: calc(100% - 50px);
    text-align: left;
  }

  .ipch-plan-hex-badge {
    width: 86px;
    height: 86px;
    top: 18px;
  }.ipch-pricing-assurance {
    gap: 14px;
    padding: 16px;
    border-radius: 22px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ipch-plan-card {
    transition: none !important;
  }

  .ipch-plan-card:hover,
  .ipch-plan-card:focus-within {
    transform: none !important;
  }
}


/* ===== Consolidated from 74-pricing-futuristic-concept-refinement.css ===== */

/* IPTV Charleroi v1.3.73 — Futuristic pricing concept refinement
   Scope: second pass on the new pricing concept, closer to the validated white/silver/red futuristic mockup. */

.ipch-pricing-concept {
  padding: 86px 0 62px;
  background:
    radial-gradient(circle at 50% -14%, rgba(255,255,255,1) 0%, rgba(255,255,255,.92) 18%, transparent 44%),
    linear-gradient(118deg, rgba(255,255,255,.94) 0 13%, transparent 13.2% 86.8%, rgba(255,255,255,.92) 87%),
    linear-gradient(180deg, #f6f8fc 0%, #fbfcff 46%, #eef1f6 100%);
}

.ipch-pricing-concept::before {
  background:
    linear-gradient(118deg, transparent 0 6%, rgba(181,190,206,.15) 6.2% 6.55%, transparent 6.8% 92.8%, rgba(181,190,206,.14) 93% 93.35%, transparent 93.6%),
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.95), transparent 28%),
    repeating-linear-gradient(90deg, rgba(15,23,42,.028) 0 1px, transparent 1px 112px);
  opacity: .88;
}

.ipch-pricing-concept::after {
  content: "";
  position: absolute;
  left: 5%;
  right: 5%;
  bottom: 104px;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(239,18,30,.14), rgba(255,255,255,.82), rgba(239,18,30,.14), transparent);
  box-shadow: 0 0 36px rgba(255,255,255,.9), 0 0 42px rgba(239,18,30,.12);
  pointer-events: none;
}

.ipch-pricing-heading {
  margin-bottom: 42px;
}

.ipch-pricing-kicker {
  min-height: 39px;
  padding: 0 28px;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.98), transparent 50%),
    linear-gradient(180deg, rgba(255,255,255,.78), rgba(241,244,250,.66));
  border-color: rgba(15,23,42,.055);
  box-shadow: 0 16px 34px rgba(15,23,42,.055), inset 0 1px 0 rgba(255,255,255,1);
}

.ipch-pricing-heading h2 {
  font-size: clamp(50px, 5.45vw, 84px);
  text-shadow: 0 20px 42px rgba(15,23,42,.075);
}

.ipch-pricing-heading p {
  color: #5d6677;
  font-weight: 600;
}

.ipch-pricing-grid {
  gap: 28px;
  align-items: end;
  max-width: 1720px;
  margin-inline: auto;
}

.ipch-plan-card {
  min-height: 720px;
  padding: 24px 18px 18px;
  border-radius: 30px;
  background:
    radial-gradient(circle at 50% -8%, rgba(255,255,255,.96), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,.70), rgba(255,255,255,.48)),
    linear-gradient(180deg, #f8fafc, #f2f4f8);
  border-color: rgba(156, 166, 184, .22);
  box-shadow:
    0 28px 64px rgba(15,23,42,.08),
    0 10px 24px rgba(15,23,42,.045),
    inset 0 1px 0 rgba(255,255,255,1),
    inset 0 0 0 1px rgba(255,255,255,.72);
  transform-style: preserve-3d;
}

.ipch-plan-card.is-tilting {
  transform:
    perspective(1100px)
    rotateX(var(--ipch-tilt-y, 0deg))
    rotateY(var(--ipch-tilt-x, 0deg))
    translateY(-7px);
}

.ipch-plan-card::before {
  background:
    radial-gradient(circle at 50% -8%, rgba(255,255,255,.96), transparent 34%),
    radial-gradient(circle at 78% 0%, rgba(237,18,30,.065), transparent 20%),
    linear-gradient(145deg, rgba(255,255,255,.34), transparent 42%);
}

.ipch-plan-card::after {
  inset: 0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.86) 0 1px, transparent 1px 24px),
    linear-gradient(225deg, rgba(255,255,255,.55) 0 1px, transparent 1px 24px);
  opacity: .18;
  box-shadow: inset 0 -22px 34px rgba(255,255,255,.32);
}

.ipch-plan-frame {
  inset: 9px;
  border-radius: 24px;
  border-color: rgba(255,255,255,.88);
  background:
    linear-gradient(90deg, rgba(255,255,255,.34), transparent 8% 92%, rgba(255,255,255,.3)),
    linear-gradient(180deg, rgba(255,255,255,.22), transparent 24% 76%, rgba(255,255,255,.28));
}

.ipch-plan-frame::before,
.ipch-plan-frame::after {
  content: "";
  position: absolute;
  width: 58px;
  height: 58px;
  border-color: rgba(255,255,255,.78);
  pointer-events: none;
}

.ipch-plan-frame::before {
  top: 10px;
  left: 10px;
  border-top: 1px solid;
  border-left: 1px solid;
  border-radius: 16px 0 0 0;
}

.ipch-plan-frame::after {
  right: 10px;
  bottom: 10px;
  border-right: 1px solid;
  border-bottom: 1px solid;
  border-radius: 0 0 16px 0;
}

.ipch-plan-inner {
  padding: 92px 20px 0;
}

.ipch-plan-tech-badge {
  top: 22px;
  width: 118px;
  height: 108px;
  filter: drop-shadow(0 18px 24px rgba(15,23,42,.085));
}

.ipch-plan-tech-badge::before {
  border-radius: 34px;
  transform: skewX(-7deg);
  background:
    radial-gradient(circle at 40% 18%, #fff, transparent 34%),
    linear-gradient(145deg, #f8fafc 0%, #dfe4ee 100%);
  border-color: rgba(255,255,255,.92);
  box-shadow:
    0 18px 36px rgba(15,23,42,.10),
    inset 0 1px 0 rgba(255,255,255,1),
    inset 0 -8px 14px rgba(148,158,176,.24);
}

.ipch-plan-tech-badge::after {
  inset: 17px 20px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(238,242,248,.92));
}

.ipch-plan-tech-badge span {
  padding-top: 26px;
  font-size: 26px;
  color: rgba(239,18,30,.82);
  text-shadow: 0 10px 16px rgba(239,18,30,.12);
}

.ipch-plan-tech-badge span::before {
  content: "";
  width: 16px;
  height: 16px;
  top: 27px;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2h2v3h6V2h2v3h3a2 2 0 0 1 2 2v13a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h3V2Zm13 8H4v10h16V10ZM6 12h4v3H6v-3Zm6 0h4v3h-4v-3Z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2h2v3h6V2h2v3h3a2 2 0 0 1 2 2v13a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h3V2Zm13 8H4v10h16V10ZM6 12h4v3H6v-3Zm6 0h4v3h-4v-3Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.ipch-plan-micro {
  margin-bottom: 10px;
  color: #151b2c;
  font-size: 13px;
  letter-spacing: .34em;
  font-weight: 850;
}

.ipch-plan-card h3 {
  font-size: clamp(28px, 2.08vw, 42px);
  color: #10162a;
  text-shadow: 0 12px 30px rgba(15,23,42,.055);
}

.ipch-plan-tagline {
  margin-top: 9px;
  color: #30394b;
  font-size: 17px;
}

.ipch-plan-divider {
  margin: 20px auto;
  height: 3px;
  width: 66px;
}

.ipch-plan-price {
  margin-bottom: 26px;
}

.ipch-plan-price strong {
  color: #0c1226;
  font-size: clamp(58px, 4.2vw, 82px);
  text-shadow: 0 18px 34px rgba(15,23,42,.08);
}

.ipch-plan-features {
  gap: 10px;
}

.ipch-plan-features li {
  min-height: 43px;
  padding: 8px 12px;
  border-radius: 15px;
  background: rgba(255,255,255,.58);
  border-color: rgba(255,255,255,.68);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.92),
    0 8px 18px rgba(15,23,42,.035);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.ipch-plan-features i {
  width: 28px;
  height: 28px;
  flex-basis: 28px;
  color: #ef121e;
  background: rgba(255,255,255,.72);
}

.ipch-plan-cta {
  min-height: 54px;
  margin-top: auto;
  border-radius: 16px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.82), rgba(246,248,252,.74));
  border-color: rgba(255,255,255,.86);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    0 14px 24px rgba(15,23,42,.05);
}

.ipch-plan-cta span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ipch-plan-card--featured {
  min-height: 775px;
  transform: translateY(-20px);
  background:
    radial-gradient(circle at 50% -10%, rgba(255,255,255,1), transparent 30%),
    radial-gradient(circle at 68% 6%, rgba(239,18,30,.16), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,247,248,.62)),
    linear-gradient(180deg, #fff 0%, #fff1f3 100%);
  border-color: rgba(239,18,30,.38);
  box-shadow:
    0 44px 98px rgba(239,18,30,.18),
    0 16px 38px rgba(15,23,42,.12),
    inset 0 1px 0 rgba(255,255,255,1),
    inset 0 0 0 1px rgba(255,255,255,.72);
}

.ipch-plan-card--featured:hover,
.ipch-plan-card--featured:focus-within {
  transform: translateY(-28px);
}

.ipch-plan-card--featured.is-tilting {
  transform:
    perspective(1100px)
    rotateX(var(--ipch-tilt-y, 0deg))
    rotateY(var(--ipch-tilt-x, 0deg))
    translateY(-26px);
}

.ipch-plan-featured-core {
  inset: 12px;
  border-radius: 28px;
  border-color: rgba(239,18,30,.28);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.72),
    0 0 0 1px rgba(239,18,30,.08),
    0 0 38px rgba(239,18,30,.17);
}

.ipch-plan-hex-badge {
  top: -8px;
  width: 116px;
  height: 116px;
  filter: drop-shadow(0 18px 26px rgba(239,18,30,.32));
}

.ipch-plan-hex-badge span {
  font-size: 25px;
}

.ipch-plan-card--featured .ipch-plan-inner {
  padding-top: 112px;
}

.ipch-plan-chip {
  min-height: 34px;
  padding: 0 20px;
  margin-bottom: 18px;
  color: #202839;
  letter-spacing: .22em;
  background: rgba(255,255,255,.68);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.94);
}

.ipch-plan-card--featured h3 {
  color: #ef121e;
  font-size: clamp(31px, 2.3vw, 46px);
}

.ipch-plan-card--featured .ipch-plan-price strong {
  font-size: clamp(66px, 4.65vw, 92px);
  color: #d80d18;
}

.ipch-plan-card--featured .ipch-plan-price span {
  color: #d80d18;
}

.ipch-plan-card--featured .ipch-plan-features li {
  background: rgba(255,255,255,.64);
  border-color: rgba(255,255,255,.76);
}

.ipch-plan-card--featured .ipch-plan-cta--featured {
  min-height: 60px;
  border-radius: 16px;
  box-shadow:
    0 24px 42px rgba(239,18,30,.28),
    inset 0 1px 0 rgba(255,255,255,.24);
}.ipch-pricing-assurance {
  margin-top: 16px;
  border-radius: 24px;
  background: rgba(255,255,255,.72);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

@media (min-width: 1401px) {
  .ipch-plan-card:nth-child(1),
  .ipch-plan-card:nth-child(3) {
    transform: translateY(8px);
  }

  .ipch-plan-card:nth-child(2) {
    transform: translateY(2px);
  }

  .ipch-plan-card:nth-child(1):hover,
  .ipch-plan-card:nth-child(3):hover,
  .ipch-plan-card:nth-child(1):focus-within,
  .ipch-plan-card:nth-child(3):focus-within {
    transform: translateY(0);
  }
}

@media (max-width: 1400px) {
  .ipch-plan-card--featured {
    transform: none;
  }

  .ipch-plan-card--featured:hover,
  .ipch-plan-card--featured:focus-within,
  .ipch-plan-card--featured.is-tilting {
    transform: translateY(-8px);
  }
}

@media (max-width: 780px) {
  .ipch-pricing-concept {
    padding: 64px 0 40px;
  }

  .ipch-pricing-heading {
    margin-bottom: 26px;
  }

  .ipch-pricing-heading h2 {
    font-size: clamp(34px, 11vw, 52px);
    letter-spacing: -.055em;
  }

  .ipch-plan-card,
  .ipch-plan-card--featured {
    min-height: auto;
    transform: none;
  }

  .ipch-plan-card:hover,
  .ipch-plan-card:focus-within,
  .ipch-plan-card--featured:hover,
  .ipch-plan-card--featured:focus-within,
  .ipch-plan-card.is-tilting,
  .ipch-plan-card--featured.is-tilting {
    transform: none;
  }

  .ipch-plan-tech-badge {
    width: 96px;
    height: 92px;
  }

  .ipch-plan-inner {
    padding-top: 82px;
  }

  .ipch-plan-card--featured .ipch-plan-inner {
    padding-top: 104px;
  }

  .ipch-plan-card h3,
  .ipch-plan-card--featured h3 {
    font-size: 25px;
  }

  .ipch-plan-price strong,
  .ipch-plan-card--featured .ipch-plan-price strong {
    font-size: 52px;
  }

  .ipch-plan-features li {
    min-height: 42px;
    font-size: 14px;
  }

  .ipch-plan-cta {
    min-height: 52px;
  }

  .ipch-pricing-assurance {
    margin-top: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ipch-plan-card,
  .ipch-plan-card--featured,
  .ipch-plan-cta {
    transition: none !important;
  }
}


/* ===== Consolidated from 75-pricing-screenshot-corrections.css ===== */

/* IPTV Charleroi v1.3.74 — Pricing screenshot corrections
   Scope: fixes the first real render of the futuristic pricing rebuild.
   Fixes: hidden micro labels, clipped featured hexagon, price € wrapping, blank VOD icons, CTA truncation and washed featured CTA. */

.ipch-pricing-concept {
  padding-top: 74px;
  padding-bottom: 54px;
}

.ipch-pricing-grid {
  gap: clamp(18px, 1.55vw, 26px);
}

/* Overall card proportions: less vertical heaviness, more balanced with the mockup. */
.ipch-pricing-concept .ipch-plan-card {
  min-height: 650px;
  padding: 20px 16px 16px;
  border-radius: 28px;
  overflow: hidden;
}

.ipch-pricing-concept .ipch-plan-card--featured {
  min-height: 704px;
  transform: translateY(-14px);
}

.ipch-pricing-concept .ipch-plan-card--featured:hover,
.ipch-pricing-concept .ipch-plan-card--featured:focus-within {
  transform: translateY(-20px);
}

/* Badge + copy spacing: the previous render hid the micro label behind the badge. */
.ipch-pricing-concept .ipch-plan-inner {
  padding: 126px 16px 0;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-inner {
  padding-top: 142px;
}

.ipch-pricing-concept .ipch-plan-tech-badge {
  top: 20px;
  width: 98px;
  height: 94px;
}

.ipch-pricing-concept .ipch-plan-tech-badge::before {
  border-radius: 28px;
}

.ipch-pricing-concept .ipch-plan-tech-badge::after {
  inset: 16px 18px;
}

.ipch-pricing-concept .ipch-plan-tech-badge span {
  padding-top: 23px;
  font-size: 23px;
}

.ipch-pricing-concept .ipch-plan-tech-badge span::before {
  top: 25px;
  width: 14px;
  height: 14px;
}

.ipch-pricing-concept .ipch-plan-micro,
.ipch-pricing-concept .ipch-plan-chip {
  position: relative;
  z-index: 2;
  opacity: 1;
  visibility: visible;
}

.ipch-pricing-concept .ipch-plan-micro {
  margin-bottom: 8px;
  font-size: 12px;
  letter-spacing: .30em;
  line-height: 1;
}

.ipch-pricing-concept .ipch-plan-chip {
  min-height: 31px;
  margin-bottom: 13px;
  font-size: 11px;
}

/* Titles should feel like premium pricing labels, not broken blocks. */
.ipch-pricing-concept .ipch-plan-card h3 {
  max-width: 100%;
  font-size: clamp(27px, 1.75vw, 34px);
  line-height: 1.02;
  letter-spacing: -.05em;
  white-space: nowrap;
}

.ipch-pricing-concept .ipch-plan-card--featured h3 {
  font-size: clamp(30px, 2.05vw, 40px);
}

.ipch-pricing-concept .ipch-plan-tagline {
  margin-top: 7px;
  font-size: 15px;
}

.ipch-pricing-concept .ipch-plan-divider {
  margin: 17px auto 17px;
}

/* Fix euro wrapping below the price. */
.ipch-pricing-concept .ipch-plan-price {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  white-space: nowrap !important;
  min-width: 0;
  margin-bottom: 22px;
}

.ipch-pricing-concept .ipch-plan-price strong {
  flex: 0 0 auto;
  font-size: clamp(52px, 3.55vw, 70px);
  line-height: .88;
  letter-spacing: -.065em;
}

.ipch-pricing-concept .ipch-plan-price span {
  display: inline-block !important;
  flex: 0 0 auto;
  margin: 0 0 8px !important;
  font-size: 22px !important;
  line-height: 1 !important;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-price strong {
  font-size: clamp(60px, 4.25vw, 84px);
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-price span {
  font-size: 26px !important;
  margin-bottom: 10px !important;
}

/* Benefit rows: cleaner, less bulky, with icons that stay visible. */
.ipch-pricing-concept .ipch-plan-features {
  gap: 9px;
}

.ipch-pricing-concept .ipch-plan-features li {
  min-height: 38px;
  padding: 7px 10px;
  border-radius: 13px;
  font-size: 13px;
  line-height: 1.15;
  font-weight: 850;
}

.ipch-pricing-concept .ipch-plan-features i {
  width: 24px;
  height: 24px;
  flex-basis: 24px;
  font-size: 12px;
  color: #ef121e !important;
}

/* Explicit local VOD icon fallback in case FontAwesome webfont/cache delays it. */
.ipch-pricing-concept .ipch-plan-features .fa-film::before {
  content: "" !important;
  display: inline-block !important;
  width: 1em !important;
  height: 1em !important;
  background-color: currentColor !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 4h18v16H3V4Zm2 2v3h3V6H5Zm5 0v12h4V6h-4Zm6 0v3h3V6h-3ZM5 11v2h3v-2H5Zm11 0v2h3v-2h-3ZM5 15v3h3v-3H5Zm11 0v3h3v-3h-3Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 4h18v16H3V4Zm2 2v3h3V6H5Zm5 0v12h4V6h-4Zm6 0v3h3V6h-3ZM5 11v2h3v-2H5Zm11 0v2h3v-2h-3ZM5 15v3h3v-3H5Zm11 0v3h3v-3h-3Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* CTAs: no truncation, no washed featured CTA. */
.ipch-pricing-concept .ipch-plan-cta {
  min-height: 48px;
  padding: 0 12px 0 15px;
  border-radius: 14px;
  gap: 8px;
}

.ipch-pricing-concept .ipch-plan-cta span {
  min-width: 0;
  max-width: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: clamp(9px, .62vw, 11px);
  letter-spacing: .10em;
}

.ipch-pricing-concept .ipch-plan-cta i {
  width: 34px;
  height: 34px;
  flex-basis: 34px;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured {
  min-height: 54px;
  background:
    radial-gradient(circle at 25% 0%, rgba(255,255,255,.28), transparent 34%),
    linear-gradient(135deg, #ff3c45 0%, #ef121e 55%, #c80510 100%) !important;
  color: #fff !important;
  opacity: 1 !important;
  border-color: rgba(255,255,255,.18) !important;
  box-shadow:
    0 24px 42px rgba(239,18,30,.30),
    inset 0 1px 0 rgba(255,255,255,.26) !important;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
  color: #fff !important;
  font-size: clamp(10px, .72vw, 12px);
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured i {
  color: #fff !important;
  background: rgba(255,255,255,.16) !important;
}

/* Featured hexagon no longer clipped. */
.ipch-pricing-concept .ipch-plan-hex-badge {
  top: 16px;
  width: 96px;
  height: 96px;
}

.ipch-pricing-concept .ipch-plan-hex-badge span {
  font-size: 22px;
}.ipch-pricing-concept .ipch-pricing-assurance {
  margin-top: 22px;
}

@media (min-width: 1401px) {
  .ipch-pricing-concept .ipch-plan-card:nth-child(1),
  .ipch-pricing-concept .ipch-plan-card:nth-child(3) {
    transform: translateY(5px);
  }

  .ipch-pricing-concept .ipch-plan-card:nth-child(1):hover,
  .ipch-pricing-concept .ipch-plan-card:nth-child(3):hover,
  .ipch-pricing-concept .ipch-plan-card:nth-child(1):focus-within,
  .ipch-pricing-concept .ipch-plan-card:nth-child(3):focus-within {
    transform: translateY(-3px);
  }
}

@media (max-width: 1400px) {
  .ipch-pricing-concept .ipch-plan-card,
  .ipch-pricing-concept .ipch-plan-card--featured {
    min-height: auto;
    transform: none;
  }

  .ipch-pricing-concept .ipch-plan-card--featured:hover,
  .ipch-pricing-concept .ipch-plan-card--featured:focus-within,
  .ipch-pricing-concept .ipch-plan-card--featured.is-tilting {
    transform: translateY(-6px);
  }
}

@media (max-width: 780px) {
  .ipch-pricing-concept .ipch-plan-card h3,
  .ipch-pricing-concept .ipch-plan-card--featured h3 {
    white-space: normal;
    font-size: 25px;
  }

  .ipch-pricing-concept .ipch-plan-inner,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-inner {
    padding-top: 100px;
  }

  .ipch-pricing-concept .ipch-plan-tech-badge {
    width: 88px;
    height: 84px;
  }

  .ipch-pricing-concept .ipch-plan-hex-badge {
    width: 84px;
    height: 84px;
    top: 14px;
  }

  .ipch-pricing-concept .ipch-plan-price strong,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-price strong {
    font-size: 50px;
  }

  .ipch-pricing-concept .ipch-plan-cta span,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
    font-size: 11px;
    letter-spacing: .06em;
  }
}


/* ===== Consolidated from 76-pricing-mockup-balance-polish.css ===== */

/* IPTV Charleroi v1.3.75 — Pricing mockup balance polish
   Scope: visual polish after second screenshot review.
   Fixes: price euro spacing, black corner harshness, bottom assurance blank rocket icon, CTA legibility and card visual balance. */

.ipch-pricing-concept {
  padding-top: 68px;
  padding-bottom: 50px;
}

.ipch-pricing-grid {
  max-width: 1680px;
}

/* Card proportions closer to the clean mockup: less empty top/bottom and softer frame lines. */
.ipch-pricing-concept .ipch-plan-card {
  min-height: 626px;
  border-radius: 27px;
  background:
    radial-gradient(circle at 50% -8%, rgba(255,255,255,.98), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,.74), rgba(255,255,255,.52)),
    linear-gradient(180deg, #fafbfe, #f2f5f8);
}

.ipch-pricing-concept .ipch-plan-card--featured {
  min-height: 684px;
}

.ipch-pricing-concept .ipch-plan-frame::before,
.ipch-pricing-concept .ipch-plan-frame::after {
  width: 46px;
  height: 46px;
  border-color: rgba(16, 22, 38, .26);
}

.ipch-pricing-concept .ipch-plan-frame::before {
  top: 10px;
  left: 10px;
}

.ipch-pricing-concept .ipch-plan-frame::after {
  right: 10px;
  bottom: 10px;
}

/* Technical badge balance. */
.ipch-pricing-concept .ipch-plan-tech-badge {
  top: 18px;
  width: 92px;
  height: 90px;
}

.ipch-pricing-concept .ipch-plan-tech-badge::before {
  box-shadow:
    0 14px 28px rgba(15,23,42,.085),
    inset 0 1px 0 rgba(255,255,255,1),
    inset 0 -7px 14px rgba(148,158,176,.22);
}

.ipch-pricing-concept .ipch-plan-inner {
  padding-top: 115px;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-inner {
  padding-top: 132px;
}

.ipch-pricing-concept .ipch-plan-micro {
  margin-bottom: 8px;
  color: #171d30;
  font-size: 11px;
  letter-spacing: .34em;
}

.ipch-pricing-concept .ipch-plan-card h3 {
  font-size: clamp(28px, 1.62vw, 33px);
  line-height: 1.03;
}

.ipch-pricing-concept .ipch-plan-card--featured h3 {
  font-size: clamp(31px, 2vw, 40px);
}

.ipch-pricing-concept .ipch-plan-tagline {
  font-size: 14.5px;
  color: #333d52;
}

.ipch-pricing-concept .ipch-plan-divider {
  margin: 15px auto 15px;
}

/* Keep the euro attached to the price instead of drifting or wrapping. */
.ipch-pricing-concept .ipch-plan-price {
  width: max-content !important;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  gap: 5px !important;
  align-items: flex-end !important;
}

.ipch-pricing-concept .ipch-plan-price strong {
  font-size: clamp(50px, 3.35vw, 66px);
  letter-spacing: -.062em;
}

.ipch-pricing-concept .ipch-plan-price span {
  font-size: 20px !important;
  margin-bottom: 7px !important;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-price strong {
  font-size: clamp(58px, 4.05vw, 78px);
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-price span {
  font-size: 24px !important;
  margin-bottom: 9px !important;
}

/* Cleaner benefit rows: still readable, but less pill-heavy. */
.ipch-pricing-concept .ipch-plan-features {
  gap: 8px;
}

.ipch-pricing-concept .ipch-plan-features li {
  min-height: 36px;
  padding: 7px 10px;
  border-radius: 12px;
  background:
    radial-gradient(circle at 100% 0%, rgba(239,18,30,.025), transparent 36%),
    rgba(255,255,255,.58);
  border-color: rgba(255,255,255,.74);
  font-size: 12.8px;
}

.ipch-pricing-concept .ipch-plan-features i {
  width: 23px;
  height: 23px;
  flex-basis: 23px;
  font-size: 11px;
}

/* CTA: keep action visible, not truncated, with premium control. */
.ipch-pricing-concept .ipch-plan-cta {
  min-height: 47px;
  padding-left: 14px;
  padding-right: 9px;
}

.ipch-pricing-concept .ipch-plan-cta span {
  color: #232b40;
  font-size: clamp(9px, .58vw, 10.5px);
  letter-spacing: .09em;
}

.ipch-pricing-concept .ipch-plan-cta i {
  width: 32px;
  height: 32px;
  flex-basis: 32px;
}

/* Featured offer: stronger but not oversized/clipped. */
.ipch-pricing-concept .ipch-plan-card--featured {
  transform: translateY(-12px);
}

.ipch-pricing-concept .ipch-plan-card--featured:hover,
.ipch-pricing-concept .ipch-plan-card--featured:focus-within {
  transform: translateY(-18px);
}

.ipch-pricing-concept .ipch-plan-hex-badge {
  top: 14px;
  width: 90px;
  height: 90px;
}

.ipch-pricing-concept .ipch-plan-featured-core {
  inset: 11px;
}.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured {
  min-height: 52px;
  padding-left: 16px;
  padding-right: 10px;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
  color: #fff;
  font-size: clamp(10px, .66vw, 11.5px);
  letter-spacing: .10em;
}

/* Bottom assurance strip: fix blank rocket icon and align visual rhythm. */
.ipch-pricing-concept .ipch-pricing-assurance {
  margin-top: 18px;
  padding: 15px 20px;
  border-radius: 22px;
}

.ipch-pricing-concept .ipch-assurance-item {
  min-height: 54px;
}

.ipch-pricing-concept .ipch-assurance-item i {
  width: 38px;
  height: 38px;
  flex-basis: 38px;
}

.ipch-pricing-concept .ipch-assurance-item .fa-rocket::before {
  content: "" !important;
  display: inline-block !important;
  width: 1em !important;
  height: 1em !important;
  background-color: currentColor !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2c3.1.4 6 3.2 6.4 6.4L22 12l-4.2 1.4-1.2 3.6-3.6 1.2L12 22l-3.6-3.6C5.2 18 2.4 15.1 2 12l3.6-1 1.2-3.6 3.6-1.2L12 2Zm0 3.2-.45 1.6-.23.82-.82.23-2.48.83-.83 2.48-.23.82-.82.23-1.6.45a8.3 8.3 0 0 0 6.8 6.8l.45-1.6.23-.82.82-.23 2.48-.83.83-2.48.23-.82.82-.23 1.6-.45A8.3 8.3 0 0 0 12 5.2Zm1.8 4a1.9 1.9 0 1 1-2.7 2.7 1.9 1.9 0 0 1 2.7-2.7ZM6 18l-2 2 .6-3.2L6 18Zm10-12 2-2-.6 3.2L16 6Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2c3.1.4 6 3.2 6.4 6.4L22 12l-4.2 1.4-1.2 3.6-3.6 1.2L12 22l-3.6-3.6C5.2 18 2.4 15.1 2 12l3.6-1 1.2-3.6 3.6-1.2L12 2Zm0 3.2-.45 1.6-.23.82-.82.23-2.48.83-.83 2.48-.23.82-.82.23-1.6.45a8.3 8.3 0 0 0 6.8 6.8l.45-1.6.23-.82.82-.23 2.48-.83.83-2.48.23-.82.82-.23 1.6-.45A8.3 8.3 0 0 0 12 5.2Zm1.8 4a1.9 1.9 0 1 1-2.7 2.7 1.9 1.9 0 0 1 2.7-2.7ZM6 18l-2 2 .6-3.2L6 18Zm10-12 2-2-.6 3.2L16 6Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

@media (max-width: 1400px) {
  .ipch-pricing-concept .ipch-plan-card,
  .ipch-pricing-concept .ipch-plan-card--featured {
    min-height: auto;
    transform: none;
  }
}

@media (max-width: 780px) {
  .ipch-pricing-concept {
    padding-top: 54px;
  }

  .ipch-pricing-concept .ipch-plan-inner,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-inner {
    padding-top: 92px;
  }

  .ipch-pricing-concept .ipch-plan-tech-badge {
    width: 82px;
    height: 78px;
  }

  .ipch-pricing-concept .ipch-plan-hex-badge {
    width: 78px;
    height: 78px;
    top: 12px;
  }

  .ipch-pricing-concept .ipch-plan-card h3,
  .ipch-pricing-concept .ipch-plan-card--featured h3 {
    white-space: normal;
  }

  .ipch-pricing-concept .ipch-plan-price strong,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-price strong {
    font-size: 49px;
  }

  .ipch-pricing-concept .ipch-plan-price span,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-price span {
    font-size: 20px !important;
  }
}


/* ===== Consolidated from 77-pricing-bottom-action-final-polish.css ===== */

/* IPTV Charleroi v1.3.76 — Pricing bottom action final polish
   Scope: screenshot correction for lower card areas and assurance icon after v1.3.75.
   Fixes: visible bottom-right frame collision, weak CTAs, excessive letter spacing, and blank activation icon. */

.ipch-pricing-concept .ipch-plan-card {
  padding-bottom: 20px;
}

/* The decorative corner was visually colliding with the CTA area on desktop. */
.ipch-pricing-concept .ipch-plan-frame::after {
  right: 14px;
  bottom: 18px;
  width: 38px;
  height: 38px;
  border-color: rgba(16, 22, 38, .16);
  opacity: .72;
}

.ipch-pricing-concept .ipch-plan-frame::before {
  border-color: rgba(16, 22, 38, .20);
  opacity: .78;
}

/* CTAs become real premium action bars instead of tiny labels with a floating red dot. */
.ipch-pricing-concept .ipch-plan-cta {
  position: relative;
  z-index: 5;
  min-height: 50px;
  padding: 0 10px 0 17px;
  border-radius: 16px;
  overflow: hidden;
  background:
    radial-gradient(circle at 22% 0%, rgba(255,255,255,.94), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,.88), rgba(244,247,252,.82));
  border: 1px solid rgba(255,255,255,.90);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.98),
    0 14px 26px rgba(15,23,42,.055);
}

.ipch-pricing-concept .ipch-plan-cta::before {
  content: "";
  position: absolute;
  inset: -45% auto -45% -34%;
  width: 28%;
  transform: rotate(18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.82), transparent);
  opacity: .58;
  transition: left .55s cubic-bezier(.2,.8,.2,1);
  pointer-events: none;
}

.ipch-pricing-concept .ipch-plan-card:hover .ipch-plan-cta::before,
.ipch-pricing-concept .ipch-plan-card:focus-within .ipch-plan-cta::before {
  left: 115%;
}

.ipch-pricing-concept .ipch-plan-cta span {
  position: relative;
  z-index: 1;
  display: block;
  color: #20283c;
  font-size: clamp(10px, .68vw, 12px);
  line-height: 1;
  font-weight: 950;
  letter-spacing: .055em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ipch-pricing-concept .ipch-plan-cta i {
  position: relative;
  z-index: 1;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  background:
    radial-gradient(circle at 35% 35%, rgba(255,255,255,.38), transparent 36%),
    linear-gradient(135deg, #ff4c55 0%, #ef121e 60%, #ca0711 100%);
  box-shadow:
    0 12px 22px rgba(239,18,30,.22),
    inset 0 1px 0 rgba(255,255,255,.22);
}

/* Featured CTA stays stronger and never looks washed-out. */
.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured {
  min-height: 54px;
  padding-left: 18px;
  padding-right: 10px;
  background:
    radial-gradient(circle at 24% 0%, rgba(255,255,255,.27), transparent 34%),
    linear-gradient(135deg, #ff313c 0%, #ee101b 54%, #c60610 100%) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  box-shadow:
    0 24px 44px rgba(239,18,30,.30),
    inset 0 1px 0 rgba(255,255,255,.25) !important;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
  color: #fff !important;
  font-size: clamp(11px, .72vw, 12.5px);
  letter-spacing: .075em;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured i {
  background:
    radial-gradient(circle at 35% 35%, rgba(255,255,255,.26), transparent 36%),
    rgba(255,255,255,.15) !important;
  border: 1px solid rgba(255,255,255,.18);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 10px 22px rgba(0,0,0,.10);
}

/* Slightly tighter bottom area to avoid the cropped-looking feeling in screenshots. */
.ipch-pricing-concept .ipch-plan-features {
  margin-bottom: 12px;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-features {
  margin-bottom: 13px;
}/* Bottom assurance strip icon rhythm + fix activation icon after HTML switch to fa-bolt. */
.ipch-pricing-concept .ipch-pricing-assurance {
  margin-top: 16px;
}

.ipch-pricing-concept .ipch-assurance-item i {
  color: #ef121e !important;
  background:
    radial-gradient(circle at 34% 24%, rgba(255,255,255,.98), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.96), rgba(247,248,252,.94));
}

.ipch-pricing-concept .ipch-assurance-item .fa-bolt::before {
  content: "" !important;
  display: inline-block !important;
  width: 1em !important;
  height: 1em !important;
  background-color: currentColor !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M13 2 4 13h7l-1 9 10-13h-7l1-7Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M13 2 4 13h7l-1 9 10-13h-7l1-7Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

@media (max-width: 780px) {
  .ipch-pricing-concept .ipch-plan-frame::after {
    bottom: 14px;
    right: 12px;
    width: 32px;
    height: 32px;
  }

  .ipch-pricing-concept .ipch-plan-cta,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured {
    min-height: 52px;
  }

  .ipch-pricing-concept .ipch-plan-cta span,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
    font-size: 11px;
    letter-spacing: .045em;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ipch-pricing-concept .ipch-plan-cta::before {
    display: none !important;
  }
}


/* ===== Consolidated from 78-pricing-cta-label-standardization.css ===== */

/* IPTV Charleroi v1.3.77 — Pricing CTA label standardization
   Scope: pricing buttons only.
   Change: all pricing CTAs now use a single commercial label: "Commander maintenant !" */

.ipch-pricing-concept .ipch-plan-cta span,
.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
  font-size: clamp(10.5px, .72vw, 12.5px);
  letter-spacing: .035em;
  text-transform: uppercase;
  font-weight: 950;
}

.ipch-pricing-concept .ipch-plan-cta {
  padding-left: 16px;
  padding-right: 10px;
}

@media (max-width: 780px) {
  .ipch-pricing-concept .ipch-plan-cta span,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
    font-size: 12px;
    letter-spacing: .02em;
  }
}


/* ===== Consolidated from 79-pricing-cta-exact-label-case-fix.css ===== */

/* IPTV Charleroi v1.3.78 — Pricing CTA exact label case fix
   Scope: pricing CTAs only.
   Fix: keep the visible label exactly as requested: "Commander maintenant !" instead of forced uppercase. */

.ipch-pricing-concept .ipch-plan-cta span,
.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
  text-transform: none !important;
  letter-spacing: -.005em !important;
  font-size: clamp(13px, .82vw, 15px) !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.ipch-pricing-concept .ipch-plan-cta {
  min-height: 52px;
  padding-left: 18px;
  padding-right: 10px;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured {
  min-height: 54px;
  padding-left: 18px;
}

@media (max-width: 780px) {
  .ipch-pricing-concept .ipch-plan-cta span,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
    font-size: 14px !important;
    letter-spacing: -.01em !important;
  }
}


/* ===== Consolidated from 80-pricing-featured-bottom-distortion-fix.css ===== */

/* IPTV Charleroi v1.3.79 — Featured pricing bottom distortion fix
   Scope: featured 12-month pricing card only.
   Fixes: truncated CTA label, cramped lower area, and distorted bottom visual balance. */

.ipch-pricing-concept .ipch-plan-card--featured {
  padding-bottom: 24px;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-inner {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-features {
  margin-bottom: 16px;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured {
  width: 100%;
  min-height: 52px;
  margin-top: auto;
  padding: 0 8px 0 16px !important;
  border-radius: 16px;
  overflow: hidden;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  max-width: calc(100% - 44px);
  font-size: clamp(10.6px, 0.70vw, 12.2px) !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: clip !important;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured i {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
}/* Keep the lower frame line away from the CTA so it no longer looks broken. */
.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-frame::after {
  right: 12px;
  bottom: 20px;
  width: 32px;
  height: 32px;
  opacity: .55;
}

@media (max-width: 780px) {
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured {
    min-height: 54px;
    padding-left: 15px !important;
    padding-right: 8px !important;
  }

  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
    max-width: calc(100% - 42px);
    font-size: 11.2px !important;
  }}


/* ===== v1.3.82 — Pricing feature icons visibility + full CTA label fix =====
   Scope: same single pricing CSS file, no extra pricing stylesheet added. */

.ipch-pricing-concept .ipch-plan-features li {
  gap: 11px;
}

.ipch-pricing-concept .ipch-plan-features i {
  width: 27px !important;
  height: 27px !important;
  min-width: 27px !important;
  flex: 0 0 27px !important;
  display: inline-grid !important;
  place-items: center !important;
  border-radius: 999px !important;
  background:
    radial-gradient(circle at 34% 24%, rgba(255,255,255,.28), transparent 34%),
    linear-gradient(135deg, #ff3541 0%, #ef121e 60%, #c80612 100%) !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.42) !important;
  box-shadow:
    0 8px 18px rgba(239,18,30,.20),
    inset 0 1px 0 rgba(255,255,255,.28) !important;
  opacity: 1 !important;
}

.ipch-pricing-concept .ipch-plan-features i::before {
  opacity: 1 !important;
  background-color: currentColor !important;
}

/* Make the CTA read fully: "Commander maintenant !" */
.ipch-pricing-concept .ipch-plan-cta,
.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured {
  width: 100% !important;
  min-height: 52px !important;
  padding: 0 8px 0 15px !important;
  gap: 8px !important;
}

.ipch-pricing-concept .ipch-plan-cta span,
.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
  display: block !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  max-width: none !important;
  color: inherit;
  font-size: clamp(11.6px, .68vw, 13.2px) !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: -.025em !important;
  text-transform: none !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

.ipch-pricing-concept .ipch-plan-cta i,
.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured i {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  flex: 0 0 32px !important;
}

.ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
  color: #fff !important;
  font-size: clamp(11.8px, .72vw, 13.5px) !important;
}

@media (max-width: 780px) {
  .ipch-pricing-concept .ipch-plan-cta,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured {
    min-height: 54px !important;
    padding-left: 15px !important;
    padding-right: 8px !important;
  }

  .ipch-pricing-concept .ipch-plan-cta span,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
    font-size: 13px !important;
    letter-spacing: -.02em !important;
  }

  .ipch-pricing-concept .ipch-plan-features i {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    flex-basis: 26px !important;
  }
}

@media (max-width: 370px) {
  .ipch-pricing-concept .ipch-plan-cta span,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured span {
    font-size: 12.2px !important;
  }

  .ipch-pricing-concept .ipch-plan-cta i,
  .ipch-pricing-concept .ipch-plan-card--featured .ipch-plan-cta--featured i {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    flex-basis: 30px !important;
  }
}

