/* Consolidated component styles extracted from the legacy custom HTML widgets (deduplicated, colors/fonts tokenised). */
.ipx-channels {
    --accent: var(--ipb-gold);
    --accent2: var(--ipb-gold-2);
    --card: var(--ipb-card);
    --cardborder: var(--ipb-card-border);
    --text: #ffffff;
    --muted: var(--ipb-muted);
    font-family:var(--ipb-font-body);
    color: var(--text);
  }

  .ipx-channels * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }

  .ipxc-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    max-width: 1240px;
    margin: 0 auto;
  }

  @media (max-width: 1024px) {
    .ipxc-grid {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  @media (max-width: 560px) {
    .ipxc-grid {
      grid-template-columns: 1fr;
    }
  }

  .ipxc-card {
    background: var(--card);
    border: 1px solid var(--cardborder);
    border-radius: 12px;
    padding: 28px 24px;
    display: flex;
    gap: 18px;
    align-items: flex-start;
    transition: transform .3s, border-color .3s, box-shadow .3s;
  }

  .ipxc-card:hover {
    transform: translateY(-6px);
    border-color: var(--accent);
    box-shadow: 0 14px 34px rgba(212, 175, 55, .18);
  }

  .ipxc-icon {
    width: 58px;
    height: 58px;
    flex-shrink: 0;
    border-radius: 14px;
    background: var(--accent);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    transition: transform .3s;
  }

  .ipxc-card:hover .ipxc-icon {
    transform: scale(1.1) rotate(-5deg);
  }

  .ipxc-card h3 {
    font-size: 19px;
    font-weight: 700;
    margin-bottom: 6px;
  }

  .ipxc-count {
    color: var(--muted);
    font-size: 14.5px;
    margin-bottom: 10px;
    display: block;
  }

  .ipx-channels a.ipxc-link {
    color: var(--accent2) !important;
    font-size: 14px;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 4px;
    transition: color .25s;
  }

  .ipx-channels a.ipxc-link:hover {
    color: #ffffff !important;
  }

.ipx-edu {
    --accent: var(--ipb-gold);
    --accent2: var(--ipb-gold-2);
    --card: var(--ipb-card);
    --cardborder: var(--ipb-card-border);
    font-family:var(--ipb-font-body);
    color: #fff;
  }
  .ipx-edu * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }
  .ipxe-head {
    text-align: center;
    max-width: 760px;
    margin: 0 auto 46px;
  }
  .ipxe-tag {
    display: inline-block;
    color: var(--accent2);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 14px;
  }
  .ipxe-title {
    font-size: 36px;
    font-weight: 800;
    line-height: 1.25;
    color: #fff;
  }
  .ipxe-title span {
    color: var(--accent2);
  }
  @media (max-width: 600px) {
    .ipxe-title {
      font-size: 27px;
    }
  }
  .ipxe-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: 1240px;
    margin: 0 auto 36px;
  }
  @media (max-width: 900px) {
    .ipxe-grid {
      grid-template-columns: 1fr;
      max-width: 600px;
    }
  }
  .ipxe-card {
    background: var(--card);
    border: 1px solid var(--cardborder);
    border-radius: 16px;
    padding: 32px 28px;
    transition: transform .3s, border-color .3s;
  }
  .ipxe-card:hover {
    transform: translateY(-6px);
    border-color: var(--accent);
  }
  .ipxe-card h3 {
    font-size: 19px;
    font-weight: 700;
    margin-bottom: 14px;
    color: #fff;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--accent);
    display: inline-block;
  }
  .ipxe-card p {
    font-size: 14.5px;
    line-height: 1.85;
    color: #ffffff;
  }
  .ipxe-link {
    display: block;
    text-align: center;
  }
  .ipxe-link a {
    display: inline-block;
    color: var(--accent2);
    font-weight: 700;
    font-size: 15.5px;
    text-decoration: underline;
    text-underline-offset: 5px;
    transition: color .25s;
  }
  .ipxe-link a:hover {
    color: #fff;
  }

.ipx-compare {
    --accent: var(--ipb-gold);
    --accent2: var(--ipb-gold-2);
    --card: var(--ipb-card);
    --cardborder: var(--ipb-card-border);
    --text: #ffffff;
    --muted: var(--ipb-muted);
    --green: #3ddc84;
    font-family:var(--ipb-font-body);
    color: var(--text);
  }

  .ipx-compare * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }

  .ipxcp-wrap {
    max-width: 860px;
    margin: 0 auto;
    background: var(--card);
    border: 1px solid var(--cardborder);
    border-radius: 16px;
    overflow: hidden;
  }

  .ipxcp-table {
    width: 100%;
    border-collapse: collapse;
  }

  .ipxcp-table th,
  .ipxcp-table td {
    padding: 18px 22px;
    text-align: center;
    font-size: 15px;
    border-bottom: 1px solid #232323;
  }

  .ipxcp-table tr:last-child td {
    border-bottom: none;
  }

  .ipxcp-table td:first-child {
    text-align: left;
    color: var(--muted);
    font-weight: 600;
  }

  /* Header */
  .ipxcp-table thead th {
    font-size: 17px;
    font-weight: 800;
    padding: 22px;
  }

  .ipxcp-table thead th:first-child {
    text-align: left;
  }

  .ipx-compare .ipxcp-col-us {
    background: rgba(212, 175, 55, .10);
    border-left: 2px solid var(--accent);
    border-right: 2px solid var(--accent);
  }

  .ipx-compare thead .ipxcp-col-us {
    color: var(--accent2) !important;
    border-top: 2px solid var(--accent);
  }

  .ipx-compare tbody tr:last-child .ipxcp-col-us {
    border-bottom: 2px solid var(--accent);
  }

  /* Alternating table rows */
  .ipxcp-table tbody tr:nth-child(even) td:not(.ipxcp-col-us) {
    background: #181818;
  }

  .ipxcp-yes {
    color: var(--green);
    font-weight: 700;
  }

  .ipxcp-no {
    color: #777;
    font-weight: 600;
  }

  .ipxcp-strong {
    color: #fff;
    font-weight: 700;
  }

  @media (max-width: 560px) {
    .ipxcp-table th,
    .ipxcp-table td {
      padding: 13px 10px;
      font-size: 13px;
    }

    .ipxcp-table thead th {
      font-size: 14px;
      padding: 15px 10px;
    }
  }

.ipx-pricing2 {
    --accent: var(--ipb-gold);
    --accent2: var(--ipb-gold-2);
    --gold: var(--ipb-gold-2);
    --green: #3ddc84;
    --card: #0d0d0d;
    --cardborder: #2c2c2c;
    --text: #fff;
    --muted: #cfd3da;
    font-family:var(--ipb-font-body);
    color: var(--text);
  }

  .ipx-pricing2 * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }

  .ipx2-toggle {
    display: flex;
    justify-content: center;
    gap: 16px;
    margin: 0 auto 44px;
  }

  .ipx-pricing2 button.ipx2-tbtn {
    padding: 13px 36px;
    border-radius: 8px;
    font-size: 17px;
    font-weight: 700;
    cursor: pointer;
    background: transparent !important;
    color: var(--muted) !important;
    border: 2px solid #3a3a3a !important;
    transition: all .25s;
    font-family: inherit;
  }

  .ipx-pricing2 button.ipx2-tbtn:hover {
    color: #fff !important;
  }

  .ipx-pricing2 button.ipx2-tbtn.active {
    border-color: var(--accent) !important;
    color: var(--accent2) !important;
    background: transparent !important;
  }

  @media (max-width: 560px) {
    .ipx2-tbtn {
      padding: 11px 22px;
      font-size: 15px;
    }
  }

  .ipx2-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    max-width: 1280px;
    margin: 0 auto;
  }

  @media (max-width: 1024px) {
    .ipx2-grid {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  @media (max-width: 600px) {
    .ipx2-grid {
      grid-template-columns: 1fr;
    }
  }

  .ipx2-card {
    background: var(--card);
    border: 1px solid var(--cardborder);
    border-radius: 10px;
    padding: 30px 22px 26px;
    text-align: center;
    position: relative;
    transition: transform .3s, border-color .3s, box-shadow .3s;
  }

  .ipx-pricing2 .ipx2-card:hover {
    transform: translateY(-6px);
    border-color: var(--accent) !important;
    box-shadow: 0 16px 38px rgba(212, 175, 55, .15);
  }

  .ipx-pricing2 .ipx2-card.popular {
    border-color: var(--accent) !important;
  }

  .ipx-pricing2 .ipx2-badge {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--accent) !important;
    color: #000 !important;
    font-size: 11.5px;
    font-weight: 700;
    padding: 4px 14px;
    border-radius: 20px;
    letter-spacing: .5px;
    white-space: nowrap;
  }

  .ipx2-title {
    font-size: 26px;
    font-weight: 800;
    text-transform: uppercase;
    margin-bottom: 6px;
    border-bottom: 2px solid #fff;
    display: inline-block;
    padding-bottom: 4px;
  }

  .ipx2-server {
    color: var(--muted);
    font-size: 13px;
    font-weight: 600;
    margin: 10px 0 16px;
  }

  .ipx2-price {
    font-size: 42px;
    font-weight: 800;
    color: var(--gold);
    margin-bottom: 8px;
  }

  .ipx2-price small {
    font-size: 18px;
    font-weight: 700;
    vertical-align: middle;
  }

  .ipx2-discount {
    color: var(--accent2);
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: .5px;
    text-transform: uppercase;
    margin-bottom: 20px;
  }

  .ipx2-discount s {
    opacity: .95;
  }

  .ipx2-feats {
    list-style: none;
    text-align: left;
    margin-bottom: 8px;
  }

  .ipx2-feats li {
    padding: 7px 0;
    font-size: 13.5px;
    color: var(--muted);
    display: flex;
    gap: 9px;
    align-items: flex-start;
    line-height: 1.5;
  }

  .ipx2-feats li::before {
    content: "✓";
    color: var(--gold);
    font-weight: 800;
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: rgba(253, 187, 35, .15);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    margin-top: 2px;
  }

  .ipx2-guarantee {
    list-style: none;
    text-align: left;
    margin-bottom: 22px;
  }

  .ipx2-guarantee li {
    padding: 7px 0;
    font-size: 13.5px;
    color: var(--green);
    font-weight: 600;
    display: flex;
    gap: 9px;
    align-items: flex-start;
    line-height: 1.5;
  }

  .ipx2-guarantee li::before {
    content: "➜";
    color: var(--green);
    flex-shrink: 0;
    margin-top: 1px;
  }

  .ipx-pricing2 a.ipx2-btn {
    display: block;
    text-align: center;
    background: transparent !important;
    color: #fff !important;
    text-decoration: none;
    font-weight: 700;
    padding: 13px;
    border-radius: 6px;
    font-size: 15px;
    border: 2px solid var(--accent) !important;
    transition: all .25s;
    margin-bottom: 16px;
    text-transform: uppercase;
    letter-spacing: .5px;
  }

  .ipx-pricing2 a.ipx2-btn:hover {
    background: var(--accent) !important;
    color: #000 !important;
  }

  .ipx2-interac {
    display: inline-flex;
    align-items: center;
    gap: 0;
    font-size: 13px;
    font-weight: 800;
    border-radius: 4px;
    overflow: hidden;
    border: 1px solid #444;
  }

  .ipx2-interac span:first-child {
    background: #f5b700;
    color: #000;
    padding: 5px 8px;
    font-style: italic;
  }

  .ipx2-interac span:last-child {
    background: #1a1a1a;
    color: #fff;
    padding: 5px 10px;
  }

.ipx-devices-full {
    --accent: var(--ipb-gold);
    --accent2: var(--ipb-gold-2);
    --icon: #f5f5f5;
    --muted: var(--ipb-muted);
    font-family:var(--ipb-font-body);
    color: #fff;
  }
  .ipx-devices-full * { box-sizing: border-box; margin: 0; padding: 0; }

  .ipxdf-head { max-width: 900px; margin-bottom: 46px; }
  @media (max-width: 900px) { .ipxdf-head { display: block; } }

  .ipxdf-flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px;
    flex-wrap: wrap;
    max-width: 1240px;
    margin: 0 auto 46px;
  }

  .ipxdf-tag {
    display: block;
    color: var(--accent) !important;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 12px;
  }

  .ipxdf-title {
    font-size: 38px;
    font-weight: 800;
    line-height: 1.15;
    color: #fff;
    max-width: 560px;
  }
  @media (max-width: 600px) { .ipxdf-title { font-size: 28px; } }

  .ipxdf-text {
    font-size: 15.5px;
    line-height: 1.85;
    color: var(--muted);
    max-width: 380px;
    padding-top: 10px;
  }

  .ipxs-row{display:flex;justify-content:center;align-items:flex-start;gap:4.5%;
    max-width:1240px;margin:0 auto;flex-wrap:wrap;row-gap:34px}
  @media(max-width:700px){.ipxs-row{gap:26px}}

  .ipx-devices-full a.ipxs-item{display:flex;flex-direction:column;align-items:center;gap:14px;
    text-decoration:none !important;transition:transform .3s;color:inherit !important}
  .ipx-devices-full a.ipxs-item:hover{transform:translateY(-6px)}

  .ipxs-item svg{width:60px;height:60px;stroke:var(--icon);fill:none;stroke-width:1.6;
    stroke-linecap:round;stroke-linejoin:round;transition:stroke .3s}
  .ipx-devices-full a.ipxs-item:hover svg{stroke:var(--accent) !important}
  @media(max-width:700px){.ipxs-item svg{width:46px;height:46px}}

  .ipxs-label{color:var(--muted);font-size:14px;font-weight:600;transition:color .3s}
  .ipx-devices-full a.ipxs-item:hover .ipxs-label{color:#fff !important}

.ipx-gta {
    --accent: var(--ipb-gold);
    --accent2: var(--ipb-gold-2);
    --card: var(--ipb-card);
    --cardborder: var(--ipb-card-border);
    --text: #ffffff;
    --muted: var(--ipb-muted);
    font-family:var(--ipb-font-body);
    color: var(--text);
  }
  .ipx-gta * { box-sizing: border-box; margin: 0; padding: 0; }

  .ipxg-head {
    text-align: center;
    max-width: 760px;
    margin: 0 auto 40px;
  }
  .ipxg-tag {
    display: inline-block;
    color: var(--accent2);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 14px;
  }
  .ipxg-title {
    font-size: 34px;
    font-weight: 800;
    line-height: 1.25;
    color: #fff;
    margin-bottom: 16px;
  }
  .ipxg-title span { color: var(--accent2); }
  @media (max-width: 600px) { .ipxg-title { font-size: 26px; } }

  .ipxg-text {
    font-size: 15.5px;
    line-height: 1.85;
    color: var(--muted);
  }

  .ipxg-cities {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    max-width: 900px;
    margin: 0 auto;
  }

  .ipx-gta .ipxg-chip {
    background: var(--card) !important;
    border: 1px solid var(--cardborder);
    border-radius: 999px;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 600;
    color: var(--text) !important;
    transition: border-color .25s, color .25s, transform .25s;
  }

  .ipx-gta .ipxg-chip:hover {
    border-color: var(--accent) !important;
    color: var(--accent2) !important;
    transform: translateY(-3px);
  }

  .ipx-gta .ipxg-chip.ipxg-main {
    background: var(--accent) !important;
    border-color: var(--accent) !important;
    color: #000 !important;
    font-weight: 700;
  }

  .ipx-gta .ipxg-chip.ipxg-main:hover {
    color: #000 !important;
  }

.ipx-steps {
    --accent: var(--ipb-gold);
    --accent2: var(--ipb-gold-2);
    --card: var(--ipb-card);
    --cardborder: var(--ipb-card-border);
    --text: #ffffff;
    --muted: var(--ipb-muted);
    font-family:var(--ipb-font-body);
    color: var(--text);
  }
  .ipx-steps * { box-sizing: border-box; margin: 0; padding: 0; }

  .ipxst-flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px;
    flex-wrap: wrap;
    max-width: 1240px;
    margin: 0 auto 50px;
  }

  .ipxst-tag {
    display: block;
    color: var(--accent) !important;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 12px;
  }

  .ipxst-title {
    font-size: 38px;
    font-weight: 800;
    line-height: 1.15;
    color: #fff;
    max-width: 560px;
  }
  @media (max-width: 600px) { .ipxst-title { font-size: 28px; } }

  .ipxst-text {
    font-size: 15.5px;
    line-height: 1.85;
    color: var(--muted);
    max-width: 380px;
    padding-top: 10px;
  }

  .ipxst-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: 1240px;
    margin: 0 auto;
    position: relative;
  }
  @media (max-width: 900px) {
    .ipxst-grid { grid-template-columns: 1fr; max-width: 480px; }
  }

  .ipxst-card {
    background: var(--card);
    border: 1px solid var(--cardborder);
    border-radius: 16px;
    padding: 40px 28px 32px;
    text-align: center;
    position: relative;
    transition: transform .3s, border-color .3s;
  }
  .ipx-steps .ipxst-card:hover {
    transform: translateY(-6px);
    border-color: var(--accent) !important;
  }

  .ipx-steps .ipxst-num {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: var(--accent) !important;
    color: #000 !important;
    font-size: 19px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    position: relative;
    z-index: 2;
  }

  .ipxst-card:not(:last-child)::before {
    content: "";
    position: absolute;
    top: 63px;
    left: calc(50% + 23px);
    width: calc(100% + 24px - 46px);
    border-top: 2px dashed var(--cardborder);
    z-index: 1;
  }
  @media (max-width: 900px) {
    .ipxst-card:not(:last-child)::before { display: none; }
  }

  .ipxst-icon { font-size: 26px; margin-bottom: 16px; }

  .ipxst-card h3 {
    font-size: 19px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 12px;
  }

  .ipxst-card p {
    font-size: 14px;
    line-height: 1.75;
    color: var(--muted);
  }

.ipx-testi {
    --accent: var(--ipb-gold);
    --accent2: var(--ipb-gold-2);
    --star: var(--ipb-gold-2);
    --green: #3ddc84;
    --card: var(--ipb-card);
    --cardborder: var(--ipb-card-border);
    --text: #ffffff;
    --muted: var(--ipb-muted);
    font-family:var(--ipb-font-body);
    color: var(--text);
  }
  .ipx-testi * { box-sizing: border-box; margin: 0; padding: 0; }

  .ipxt-flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px;
    flex-wrap: wrap;
    max-width: 1240px;
    margin: 0 auto 46px;
  }

  .ipxt-tag {
    display: block;
    color: var(--accent) !important;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 12px;
  }

  .ipxt-title {
    font-size: 38px;
    font-weight: 800;
    line-height: 1.15;
    color: #fff;
    max-width: 460px;
  }
  @media (max-width: 600px) { .ipxt-title { font-size: 28px; } }

  .ipxt-text {
    font-size: 15.5px;
    line-height: 1.85;
    color: var(--muted);
    max-width: 400px;
    padding-top: 10px;
  }

  .ipxt-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    max-width: 1280px;
    margin: 0 auto;
  }
  @media (max-width: 1024px) { .ipxt-grid { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 560px) { .ipxt-grid { grid-template-columns: 1fr; } }

  .ipx-testi .ipxt-card {
    background: var(--card);
    border: 1px solid var(--cardborder);
    border-radius: 14px;
    padding: 26px 22px 22px;
    position: relative;
    transition: transform .3s, border-color .3s;
  }
  .ipx-testi .ipxt-card:hover {
    transform: translateY(-6px);
    border-color: var(--accent) !important;
  }

  .ipxt-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 14px;
  }

  .ipxt-stars { color: var(--star); font-size: 13px; letter-spacing: 2px; }

  .ipxt-quote {
    font-size: 30px;
    line-height: 1;
    color: rgba(212, 175, 55, .35);
    font-family: Georgia, serif;
    font-weight: 700;
  }

  .ipxt-card p.ipxt-body {
    font-size: 14px;
    line-height: 1.7;
    font-style: italic;
    color: #e5e5e5;
    margin-bottom: 20px;
  }

  .ipxt-person { display: flex; align-items: center; gap: 12px; }

  .ipx-testi .ipxt-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--accent) !important;
    color: #000 !important;
    font-weight: 800;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }

  .ipxt-name { font-size: 14px; font-weight: 700; color: #fff; }
  .ipxt-city { font-size: 12.5px; color: var(--muted); margin-bottom: 4px; }
  .ipxt-verified { font-size: 12px; color: var(--green); font-weight: 600; }

.ipx-faq {
    --accent: var(--ipb-gold);
    --accent2: var(--ipb-gold-2);
    --card: var(--ipb-card);
    --cardborder: #4a3a10;
    --text: #ffffff;
    --muted: var(--ipb-muted);
    font-family:var(--ipb-font-body);
    color: var(--text);
  }
  .ipx-faq * { box-sizing: border-box; margin: 0; padding: 0; }

  .ipxf-head { text-align: center; margin-bottom: 40px; }
  .ipxf-tag {
    display: block;
    color: var(--accent) !important;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 10px;
  }
  .ipxf-title { font-size: 34px; font-weight: 800; color: #fff; }
  @media (max-width: 600px) { .ipxf-title { font-size: 26px; } }

  .ipxf-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px 24px;
    max-width: 1100px;
    margin: 0 auto;
  }
  @media (max-width: 800px) { .ipxf-grid { grid-template-columns: 1fr; } }

  .ipx-faq .ipxf-item {
    background: var(--card);
    border: 1px solid var(--cardborder) !important;
    border-radius: 10px;
    overflow: hidden;
    transition: border-color .25s;
    height: fit-content;
  }

  .ipx-faq .ipxf-item.open { border-color: var(--accent) !important; }

  .ipx-faq .ipxf-q {
    width: 100%;
    background: transparent;
    border: none;
    text-align: left;
    padding: 18px 20px;
    font-family: inherit;
    font-size: 14.5px;
    font-weight: 700;
    color: var(--accent2) !important;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
  }

  .ipx-faq .ipxf-plus {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: rgba(212, 175, 55, .15) !important;
    color: var(--accent2) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 800;
    transition: transform .25s;
  }
  .ipx-faq .ipxf-item.open .ipxf-plus { transform: rotate(45deg); }

  .ipxf-a {
    max-height: 0;
    overflow: hidden;
    transition: max-height .3s ease;
  }
  .ipxf-a-inner {
    padding: 0 20px 18px;
    font-size: 13.5px;
    line-height: 1.75;
    color: var(--muted);
  }

.ipx-reseller {
    --accent: var(--ipb-gold);
    --accent2: var(--ipb-gold-2);
    --green: #3ddc84;
    --text: #ffffff;
    --muted: #d8dae0;
    font-family:var(--ipb-font-body);
    color: var(--text);
  }
  .ipx-reseller * { box-sizing: border-box; margin: 0; padding: 0; }

  .ipxr-wrap {
    max-width: 1240px;
    margin: 0 auto;
    background: radial-gradient(ellipse at top left, rgba(212,175,55,.10), #0d0d0d 60%);
    border: 1px solid #2c2410;
    border-radius: 20px;
    padding: 48px;
    display: flex;
    gap: 50px;
    flex-wrap: wrap;
    align-items: center;
  }
  @media (max-width: 900px) { .ipxr-wrap { padding: 32px 24px; } }

  .ipxr-left { flex: 1 1 420px; }
  .ipxr-right { flex: 1 1 360px; display: flex; flex-direction: column; gap: 14px; }

  .ipxr-tag {
    display: block;
    color: var(--accent) !important;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 14px;
  }

  .ipxr-title {
    font-size: 36px;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 18px;
  }
  .ipxr-title span { color: var(--accent2); }
  @media (max-width: 600px) { .ipxr-title { font-size: 26px; } }

  .ipxr-text {
    font-size: 15px;
    line-height: 1.8;
    color: var(--muted);
    margin-bottom: 26px;
    max-width: 480px;
  }

  .ipx-reseller a.ipxr-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--accent) !important;
    color: #000 !important;
    font-weight: 700;
    font-size: 15px;
    padding: 14px 28px;
    border-radius: 8px;
    text-decoration: none !important;
    transition: transform .2s, box-shadow .2s;
  }
  .ipx-reseller a.ipxr-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(212,175,55,.3);
  }

  .ipx-reseller .ipxr-item {
    background: #101010;
    border: 1px solid var(--ipb-card-border);
    border-radius: 12px;
    padding: 18px 20px;
    display: flex;
    gap: 12px;
    align-items: flex-start;
    font-size: 14px;
    line-height: 1.6;
    color: var(--muted);
  }
  .ipx-reseller .ipxr-item.ipxr-highlight {
    border-color: var(--accent) !important;
    background: rgba(212,175,55,.06);
  }

  .ipxr-item .ipxr-check {
    color: var(--green);
    font-weight: 800;
    flex-shrink: 0;
    margin-top: 1px;
  }
  .ipxr-item.ipxr-highlight .ipxr-check { color: var(--accent2) !important; }

  .ipxr-item b { color: #fff; }

.ipx-contact { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:var(--ipb-card-border);
    font-family:var(--ipb-font-body); color:#fff; }
  .ipx-contact *{box-sizing:border-box;margin:0;padding:0}
  .ipxct-head{text-align:center;max-width:720px;margin:0 auto 44px}
  .ipxct-tag{display:inline-block;color:var(--accent2);font-size:14px;font-weight:700;
    letter-spacing:2px;text-transform:uppercase;margin-bottom:14px}
  .ipxct-title{font-size:36px;font-weight:800;line-height:1.25;color:#fff}
  .ipxct-title span{color:var(--accent2)}
  @media(max-width:600px){.ipxct-title{font-size:27px}}
  .ipxct-sub{color:#ffffff;font-size:15.5px;line-height:1.8;margin-top:14px}
  .ipxct-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1100px;margin:0 auto}
  @media(max-width:860px){.ipxct-grid{grid-template-columns:1fr;max-width:480px}}
  .ipx-contact .ipxct-card{background:var(--card);border:1px solid var(--cardborder);border-radius:16px;
    padding:36px 28px;text-align:center;text-decoration:none !important;display:block;
    transition:transform .3s,border-color .3s,box-shadow .3s}
  .ipx-contact .ipxct-card:hover{transform:translateY(-8px);border-color:var(--accent) !important;
    box-shadow:0 16px 38px rgba(212,175,55,.16)}
  .ipxct-icon{width:66px;height:66px;border-radius:50%;margin:0 auto 18px;font-size:30px;
    display:flex;align-items:center;justify-content:center;
    background:rgba(212,175,55,.12);border:1px solid rgba(212,175,55,.3);transition:background .3s}
  .ipx-contact .ipxct-card:hover .ipxct-icon{background:var(--accent) !important}
  .ipxct-card.wa .ipxct-icon{background:rgba(37,211,102,.12);border-color:rgba(37,211,102,.4)}
  .ipx-contact .ipxct-card.wa:hover .ipxct-icon{background:#25D366 !important}
  .ipx-contact .ipxct-card.wa:hover{border-color:#25D366 !important;box-shadow:0 16px 38px rgba(37,211,102,.16)}
  .ipxct-card h3{font-size:18px;font-weight:700;color:#fff;margin-bottom:8px}
  .ipxct-card p{font-size:13.5px;line-height:1.7;color:#ffffff;margin-bottom:12px}
  .ipx-contact .ipxct-action{color:var(--accent2) !important;font-size:14.5px;font-weight:700}
  .ipx-contact .ipxct-card.wa .ipxct-action{color:#25D366 !important}

.ipx-finalcta {
    --accent: var(--ipb-gold);
    --accent2: var(--ipb-gold-2);
    font-family:var(--ipb-font-body);
    color: #fff;
  }
  .ipx-finalcta * { box-sizing: border-box; margin: 0; padding: 0; }

  .ipxfc-wrap {
    max-width: 1240px;
    margin: 0 auto;
    background: radial-gradient(ellipse at center, rgba(212,175,55,.14), #0a0a0a 65%);
    border: 1px solid rgba(212,175,55,.35);
    border-radius: 20px;
    padding: 56px 40px;
    text-align: center;
  }
  @media (max-width: 600px) { .ipxfc-wrap { padding: 40px 22px; } }

  .ipx-finalcta .ipxfc-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--accent2) !important;
    font-size: 13px;
    font-weight: 700;
    border: 1px solid rgba(212,175,55,.4);
    border-radius: 999px;
    padding: 8px 18px;
    margin-bottom: 22px;
  }

  .ipxfc-title {
    font-size: 34px;
    font-weight: 800;
    line-height: 1.25;
    margin-bottom: 16px;
  }
  .ipxfc-title span { color: var(--accent2); }
  @media (max-width: 600px) { .ipxfc-title { font-size: 24px; } }

  .ipxfc-sub {
    font-size: 15.5px;
    line-height: 1.8;
    color: #cfd3da;
    max-width: 560px;
    margin: 0 auto 30px;
  }

  .ipxfc-actions {
    display: flex;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 18px;
  }

  .ipx-finalcta a.ipxfc-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--accent) !important;
    color: #000 !important;
    font-weight: 700;
    font-size: 15px;
    padding: 15px 30px;
    border-radius: 999px;
    text-decoration: none !important;
    transition: transform .2s, box-shadow .2s;
  }
  .ipx-finalcta a.ipxfc-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(212,175,55,.3);
  }

  .ipx-finalcta a.ipxfc-secondary {
    display: inline-flex;
    align-items: center;
    background: transparent !important;
    color: #fff !important;
    font-weight: 700;
    font-size: 15px;
    padding: 15px 30px;
    border-radius: 999px;
    border: 1px solid #3a3a3a !important;
    text-decoration: none !important;
    transition: border-color .2s, color .2s;
  }
  .ipx-finalcta a.ipxfc-secondary:hover {
    border-color: var(--accent) !important;
    color: var(--accent2) !important;
  }

  .ipxfc-note {
    font-size: 13px;
    color: #9a9da5;
  }

.ipxabout-story { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --muted:#c9cbd1; font-family:var(--ipb-font-body); color:#fff; }
  .ipxabout-story * { box-sizing:border-box; margin:0; padding:0; }
  .ipxabout-story-wrap { max-width:820px; margin:0 auto; }
  .ipxabout-story h2 { font-size:28px; font-weight:800; margin-bottom:16px; text-align:center; }
  @media (max-width:600px){ .ipxabout-story h2{ font-size:22px; } }
  .ipxabout-story p { font-size:15px; line-height:1.85; color:var(--muted); margin-bottom:16px; }
  .ipxabout-story a { color: var(--accent2) !important; text-decoration:underline; }

.ipxabout-values { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:var(--ipb-card-border); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; text-align:center; }
  .ipxabout-values * { box-sizing:border-box; margin:0; padding:0; }
  .ipxabout-values h2 { font-size:28px; font-weight:800; margin-bottom:30px; }
  @media (max-width:600px){ .ipxabout-values h2{ font-size:22px; } }
  .ipxabout-values-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; max-width:1100px; margin:0 auto; }
  @media (max-width:900px){ .ipxabout-values-grid{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:560px){ .ipxabout-values-grid{ grid-template-columns:1fr; } }
  .ipxabout-values .card { background:var(--card); border:1px solid var(--cardborder); border-radius:14px; padding:24px 18px; transition:border-color .3s, transform .3s; }
  .ipxabout-values .card:hover { border-color: var(--accent) !important; transform:translateY(-5px); }
  .ipxabout-values .icon { font-size:26px; margin-bottom:12px; }
  .ipxabout-values h3 { font-size:15.5px; font-weight:700; margin-bottom:8px; }
  .ipxabout-values p { font-size:13px; line-height:1.6; color:var(--muted); }

.ipxabout-stats { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); font-family:var(--ipb-font-body); color:#fff; text-align:center; }
  .ipxabout-stats * { box-sizing:border-box; margin:0; padding:0; }
  .ipxabout-stats h2 { font-size:26px; font-weight:800; margin-bottom:30px; }
  .ipxabout-stats-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; max-width:900px; margin:0 auto; }
  @media (max-width:700px){ .ipxabout-stats-grid{ grid-template-columns:repeat(2,1fr); } }
  .ipxabout-stats .num { font-size:34px; font-weight:800; color: var(--accent) !important; margin-bottom:6px; }
  .ipxabout-stats .label { font-size:13px; color:var(--ipb-muted); }

.ipxabout-cta { --accent:var(--ipb-gold); font-family:var(--ipb-font-body); text-align:center; color:#fff; }
  .ipxabout-cta * { box-sizing:border-box; margin:0; padding:0; }
  .ipxabout-cta h2 { font-size:26px; font-weight:800; margin-bottom:10px; }
  .ipxabout-cta p { font-size:15px; color:#c9cbd1; margin-bottom:18px; }
  .ipxabout-cta .actions { display:flex; justify-content:center; gap:14px; flex-wrap:wrap; }
  .ipxabout-cta a.primary { background: var(--accent) !important; color:#000 !important; font-weight:700; padding:13px 26px; border-radius:999px; text-decoration:none !important; }
  .ipxabout-cta a.secondary { background:transparent !important; color:#fff !important; font-weight:700; padding:13px 26px; border-radius:999px; border:1px solid #3a3a3a !important; text-decoration:none !important; }

/* =========================================================
   HOW TO INSTALL IPTV ON ANDROID — BRAMPTON IPTV 4K
   HERO REMAINS SEPARATE / UNCHANGED
========================================================= */

.bad-page{
  --gold:var(--ipb-gold);
  --gold2:var(--ipb-gold-2);
  --bg:#080808;
  --card:#121212;
  --card2:#181818;
  --border:#292929;
  --muted:#b8bbc4;
  --white:#fff;

  width:100%;
  background:var(--bg);
  color:var(--white);
  font-family:var(--ipb-font-body);
}

.bad-page *{
  box-sizing:border-box;
}

.bad-wrap{
  max-width:1120px;
  margin:0 auto;
  padding:78px 24px;
}

.bad-page section{
  margin-bottom:88px;
}

.bad-page section:last-child{
  margin-bottom:0;
}

.bad-eyebrow{
  display:block;
  margin-bottom:10px;
  color:var(--gold2);
  text-transform:uppercase;
  letter-spacing:2px;
  font-size:12px;
  font-weight:800;
  text-align:center;
}

.bad-page h2{
  margin:0 0 16px;
  color:#fff;
  font-size:34px;
  line-height:1.25;
  font-weight:800;
  text-align:center;
}

.bad-page h3{
  margin:0 0 9px;
  color:#fff;
  font-size:17px;
  line-height:1.4;
  font-weight:700;
}

.bad-page h4{
  margin:0 0 5px;
  color:#fff;
  font-size:14px;
  font-weight:700;
}

.bad-page p{
  color:var(--muted);
  line-height:1.8;
}

.bad-page a{
  color:var(--gold2);
}

.bad-intro{
  max-width:810px;
  margin:0 auto 36px;
  text-align:center;
  color:var(--muted);
  font-size:15px;
  line-height:1.85;
}


/* INTRO */

.bad-intro-box{
  max-width:900px;
  margin:0 auto;
  padding:31px 32px;
  background:linear-gradient(145deg,#151515,#0d0d0d);
  border:1px solid var(--border);
  border-radius:16px;
}

.bad-intro-box p{
  margin:0 0 15px;
  font-size:14.5px;
}

.bad-intro-box p:last-child{
  margin-bottom:0;
}

.bad-note{
  margin-top:22px;
  padding:21px 22px;
  background:rgba(212,175,55,.05);
  border:1px solid rgba(212,175,55,.30);
  border-left:4px solid var(--gold);
  border-radius:0 12px 12px 0;
}

.bad-note strong{
  color:#fff;
}

.bad-note p{
  margin:6px 0 0;
  font-size:13.5px;
}


/* TOC */

.bad-toc{
  max-width:820px;
  margin:0 auto;
  padding:27px;
  background:var(--card);
  border:1px solid rgba(212,175,55,.35);
  border-radius:15px;
}

.bad-toc-title{
  margin-bottom:17px;
  color:#fff;
  font-size:18px;
  font-weight:800;
  text-align:center;
}

.bad-toc ol{
  columns:2;
  column-gap:42px;
  margin:0;
  padding-left:24px;
}

.bad-toc li{
  margin-bottom:10px;
  color:var(--gold2);
  break-inside:avoid;
}

.bad-toc a{
  color:#fff !important;
  font-size:13.5px;
  text-decoration:none !important;
}


/* DEVICE TYPES */

.bad-device-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.bad-device{
  padding:24px 21px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
}

.bad-device-icon{
  width:44px;
  height:44px;
  margin-bottom:15px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:11px;
  background:rgba(212,175,55,.10);
  border:1px solid rgba(212,175,55,.30);
  font-size:21px;
}

.bad-device p{
  margin:0;
  font-size:13.3px;
}


/* STEPS */

.bad-steps{
  max-width:900px;
  margin:0 auto;
}

.bad-step{
  display:flex;
  gap:18px;
  padding:22px 0;
  border-bottom:1px solid #292929;
}

.bad-step:last-child{
  border-bottom:0;
}

.bad-step-number{
  flex:0 0 36px;
  width:36px;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--gold);
  color:#000;
  font-size:13px;
  font-weight:900;
}

.bad-step p{
  margin:0;
  font-size:13.7px;
}


/* LOGIN TYPES */

.bad-method-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}

.bad-method{
  padding:27px 24px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:15px;
}

.bad-method p{
  margin:0;
  font-size:13.5px;
}


/* OFFICIAL SOURCE */

.bad-source{
  max-width:900px;
  margin:0 auto;
  padding:29px;
  background:var(--card2);
  border-left:4px solid var(--gold);
  border-radius:0 14px 14px 0;
}

.bad-source h2{
  text-align:left;
  font-size:27px;
  margin-bottom:12px;
}

.bad-source p{
  margin:0 0 13px;
  font-size:13.8px;
}

.bad-source p:last-child{
  margin-bottom:0;
}

.bad-source a{
  text-decoration:underline;
  text-underline-offset:3px;
}


/* TIPS */

.bad-tips{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}

.bad-tip{
  display:flex;
  gap:14px;
  padding:20px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:13px;
}

.bad-check{
  flex:0 0 29px;
  width:29px;
  height:29px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  color:var(--gold2);
  font-weight:900;
}

.bad-tip strong{
  display:block;
  margin-bottom:4px;
  color:#fff;
  font-size:14px;
}

.bad-tip span{
  display:block;
  color:var(--muted);
  font-size:12.8px;
  line-height:1.65;
}


/* INTERNAL LINKS */

.bad-related{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.bad-related-card{
  display:block;
  padding:23px 21px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
  text-decoration:none !important;
  transition:.25s ease;
}

.bad-related-card:hover{
  transform:translateY(-3px);
  border-color:var(--gold);
}

.bad-related-card h3{
  color:#fff !important;
}

.bad-related-card p{
  margin:0 0 8px;
  font-size:12.8px;
}

.bad-related-card span{
  color:var(--gold2);
  font-size:12px;
  font-weight:700;
}


/* FAQ */

.bad-faq{
  max-width:850px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.bad-faq-item{
  overflow:hidden;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:12px;
}

.bad-faq-item.open{
  border-color:rgba(212,175,55,.7);
}

.bad-faq-q{
  width:100%;
  padding:18px 20px;
  background:transparent;
  border:0;
  color:#fff;
  font-family:inherit;
  font-size:14px;
  font-weight:700;
  text-align:left;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}

.bad-plus{
  flex:0 0 25px;
  width:25px;
  height:25px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  color:var(--gold2);
  transition:.25s;
}

.bad-faq-item.open .bad-plus{
  transform:rotate(45deg);
}

.bad-faq-a{
  max-height:0;
  overflow:hidden;
  transition:max-height .35s ease;
}

.bad-faq-content{
  padding:0 20px 19px;
  color:var(--muted);
  font-size:13.5px;
  line-height:1.75;
}


/* CTA */

.bad-cta{
  padding:45px 28px;
  text-align:center;
  background:
    radial-gradient(circle at top,rgba(212,175,55,.12),transparent 45%),
    var(--card);
  border:1px solid rgba(212,175,55,.35);
  border-radius:18px;
}

.bad-cta p{
  max-width:650px;
  margin:0 auto 25px;
  font-size:14px;
}

.bad-actions{
  display:flex;
  justify-content:center;
  gap:13px;
  flex-wrap:wrap;
}

.bad-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 27px;
  border-radius:8px;
  text-decoration:none !important;
  font-size:14px;
  font-weight:800;
}

.bad-primary{
  background:var(--gold2);
  border:1px solid var(--gold2);
  color:#000 !important;
}

.bad-secondary{
  background:transparent;
  border:1px solid #444;
  color:#fff !important;
}


/* RESPONSIVE */

@media(max-width:900px){
  .bad-device-grid,
  .bad-related{
    grid-template-columns:1fr;
  }
}

@media(max-width:700px){

  .bad-wrap{
    padding:58px 18px;
  }

  .bad-page section{
    margin-bottom:67px;
  }

  .bad-page h2{
    font-size:25px;
  }

  .bad-method-grid,
  .bad-tips{
    grid-template-columns:1fr;
  }

  .bad-toc ol{
    columns:1;
  }

  .bad-intro-box{
    padding:23px 20px;
  }

  .bad-source{
    padding:25px 21px;
  }
}

/* =========================================================
   BEST IPTV APP FOR APPLE TV — BRAMPTON IPTV 4K
   HERO REMAINS SEPARATE / UNCHANGED
========================================================= */

.batv-page{
  --gold:var(--ipb-gold);
  --gold2:var(--ipb-gold-2);
  --bg:#080808;
  --card:#121212;
  --card2:#181818;
  --border:#292929;
  --muted:#b8bbc4;
  --white:#fff;

  width:100%;
  background:var(--bg);
  color:var(--white);
  font-family:var(--ipb-font-body);
}

.batv-page *{
  box-sizing:border-box;
}

.batv-wrap{
  max-width:1120px;
  margin:0 auto;
  padding:78px 24px;
}

.batv-page section{
  margin-bottom:88px;
}

.batv-page section:last-child{
  margin-bottom:0;
}

.batv-eyebrow{
  display:block;
  margin-bottom:10px;
  color:var(--gold2);
  text-transform:uppercase;
  letter-spacing:2px;
  font-size:12px;
  font-weight:800;
  text-align:center;
}

.batv-page h2{
  margin:0 0 16px;
  color:#fff;
  font-size:34px;
  line-height:1.25;
  font-weight:800;
  text-align:center;
}

.batv-page h3{
  margin:0 0 9px;
  color:#fff;
  font-size:17px;
  line-height:1.4;
  font-weight:700;
}

.batv-page h4{
  margin:0 0 5px;
  color:#fff;
  font-size:14px;
  font-weight:700;
}

.batv-page p{
  color:var(--muted);
  line-height:1.8;
}

.batv-page a{
  color:var(--gold2);
}

.batv-intro{
  max-width:810px;
  margin:0 auto 36px;
  text-align:center;
  color:var(--muted);
  font-size:15px;
  line-height:1.85;
}


/* INTRO */

.batv-intro-box{
  max-width:900px;
  margin:0 auto;
  padding:31px 32px;
  background:linear-gradient(145deg,#151515,#0d0d0d);
  border:1px solid var(--border);
  border-radius:16px;
}

.batv-intro-box p{
  margin:0 0 15px;
  font-size:14.5px;
}

.batv-intro-box p:last-child{
  margin-bottom:0;
}

.batv-note{
  margin-top:22px;
  padding:21px 22px;
  background:rgba(212,175,55,.05);
  border:1px solid rgba(212,175,55,.30);
  border-left:4px solid var(--gold);
  border-radius:0 12px 12px 0;
}

.batv-note strong{
  color:#fff;
}

.batv-note p{
  margin:6px 0 0;
  font-size:13.5px;
}


/* TOC */

.batv-toc{
  max-width:820px;
  margin:0 auto;
  padding:27px;
  background:var(--card);
  border:1px solid rgba(212,175,55,.35);
  border-radius:15px;
}

.batv-toc-title{
  margin-bottom:17px;
  color:#fff;
  font-size:18px;
  font-weight:800;
  text-align:center;
}

.batv-toc ol{
  columns:2;
  column-gap:42px;
  margin:0;
  padding-left:24px;
}

.batv-toc li{
  margin-bottom:10px;
  color:var(--gold2);
  break-inside:avoid;
}

.batv-toc a{
  color:#fff !important;
  text-decoration:none !important;
  font-size:13.5px;
}


/* CHOOSING */

.batv-criteria{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:17px;
}

.batv-criterion{
  padding:23px 19px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
}

.batv-icon{
  width:43px;
  height:43px;
  margin-bottom:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:11px;
  background:rgba(212,175,55,.10);
  border:1px solid rgba(212,175,55,.30);
  font-size:20px;
}

.batv-criterion p{
  margin:0;
  font-size:13px;
}


/* PLAYER OPTIONS */

.batv-player-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}

.batv-player{
  padding:27px 24px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:15px;
}

.batv-player-label{
  display:inline-block;
  margin-bottom:12px;
  padding:5px 10px;
  border-radius:20px;
  background:rgba(212,175,55,.11);
  color:var(--gold2);
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.5px;
}

.batv-player p{
  margin:0 0 13px;
  font-size:13.5px;
}

.batv-player ul{
  margin:0;
  padding-left:20px;
}

.batv-player li{
  margin-bottom:7px;
  color:var(--muted);
  font-size:12.8px;
  line-height:1.55;
}


/* STEPS */

.batv-steps{
  max-width:900px;
  margin:0 auto;
}

.batv-step{
  display:flex;
  gap:18px;
  padding:22px 0;
  border-bottom:1px solid #292929;
}

.batv-step:last-child{
  border-bottom:0;
}

.batv-step-number{
  flex:0 0 36px;
  width:36px;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--gold);
  color:#000;
  font-size:13px;
  font-weight:900;
}

.batv-step p{
  margin:0;
  font-size:13.7px;
}


/* APP STORE SOURCE */

.batv-source{
  max-width:900px;
  margin:0 auto;
  padding:29px;
  background:var(--card2);
  border-left:4px solid var(--gold);
  border-radius:0 14px 14px 0;
}

.batv-source h2{
  text-align:left;
  font-size:27px;
  margin-bottom:12px;
}

.batv-source p{
  margin:0 0 13px;
  font-size:13.8px;
}

.batv-source p:last-child{
  margin-bottom:0;
}

.batv-source a{
  text-decoration:underline;
  text-underline-offset:3px;
}


/* TIPS */

.batv-tips{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}

.batv-tip{
  display:flex;
  gap:14px;
  padding:20px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:13px;
}

.batv-check{
  flex:0 0 29px;
  width:29px;
  height:29px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  color:var(--gold2);
  font-weight:900;
}

.batv-tip strong{
  display:block;
  margin-bottom:4px;
  color:#fff;
  font-size:14px;
}

.batv-tip span{
  display:block;
  color:var(--muted);
  font-size:12.8px;
  line-height:1.65;
}


/* RELATED */

.batv-related{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.batv-related-card{
  display:block;
  padding:23px 21px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
  text-decoration:none !important;
  transition:.25s ease;
}

.batv-related-card:hover{
  transform:translateY(-3px);
  border-color:var(--gold);
}

.batv-related-card h3{
  color:#fff !important;
}

.batv-related-card p{
  margin:0 0 8px;
  font-size:12.8px;
}

.batv-related-card span{
  color:var(--gold2);
  font-size:12px;
  font-weight:700;
}


/* FAQ */

.batv-faq{
  max-width:850px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.batv-faq-item{
  overflow:hidden;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:12px;
}

.batv-faq-item.open{
  border-color:rgba(212,175,55,.7);
}

.batv-faq-q{
  width:100%;
  padding:18px 20px;
  background:transparent;
  border:0;
  color:#fff;
  font-family:inherit;
  font-size:14px;
  font-weight:700;
  text-align:left;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}

.batv-plus{
  flex:0 0 25px;
  width:25px;
  height:25px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  color:var(--gold2);
  transition:.25s;
}

.batv-faq-item.open .batv-plus{
  transform:rotate(45deg);
}

.batv-faq-a{
  max-height:0;
  overflow:hidden;
  transition:max-height .35s ease;
}

.batv-faq-content{
  padding:0 20px 19px;
  color:var(--muted);
  font-size:13.5px;
  line-height:1.75;
}


/* CTA */

.batv-cta{
  padding:45px 28px;
  text-align:center;
  background:
    radial-gradient(circle at top,rgba(212,175,55,.12),transparent 45%),
    var(--card);
  border:1px solid rgba(212,175,55,.35);
  border-radius:18px;
}

.batv-cta p{
  max-width:650px;
  margin:0 auto 25px;
  font-size:14px;
}

.batv-actions{
  display:flex;
  justify-content:center;
  gap:13px;
  flex-wrap:wrap;
}

.batv-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 27px;
  border-radius:8px;
  text-decoration:none !important;
  font-size:14px;
  font-weight:800;
}

.batv-primary{
  background:var(--gold2);
  border:1px solid var(--gold2);
  color:#000 !important;
}

.batv-secondary{
  background:transparent;
  border:1px solid #444;
  color:#fff !important;
}


/* RESPONSIVE */

@media(max-width:900px){

  .batv-criteria{
    grid-template-columns:repeat(2,1fr);
  }

  .batv-related{
    grid-template-columns:1fr;
  }

}

@media(max-width:700px){

  .batv-wrap{
    padding:58px 18px;
  }

  .batv-page section{
    margin-bottom:67px;
  }

  .batv-page h2{
    font-size:25px;
  }

  .batv-player-grid,
  .batv-tips,
  .batv-criteria{
    grid-template-columns:1fr;
  }

  .batv-toc ol{
    columns:1;
  }

  .batv-intro-box{
    padding:23px 20px;
  }

  .batv-source{
    padding:25px 21px;
  }

}

.ipxcl-cats { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:var(--ipb-card-border); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxcl-cats * { box-sizing:border-box; margin:0; padding:0; }
  .ipxcl-head { text-align:center; max-width:760px; margin:0 auto 36px; }
  .ipxcl-head h2 { font-size:32px; font-weight:800; margin-bottom:14px; }
  @media (max-width:600px){ .ipxcl-head h2{ font-size:24px; } }
  .ipxcl-head p { font-size:15px; line-height:1.8; color:var(--muted); }
  .ipxcl-head a { color: var(--accent2) !important; text-decoration:underline; }
  .ipxcl-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; max-width:1200px; margin:0 auto; }
  @media (max-width:1024px){ .ipxcl-grid{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:560px){ .ipxcl-grid{ grid-template-columns:1fr; } }
  .ipxcl-cats .card { background:var(--card); border:1px solid var(--cardborder); border-radius:12px; padding:22px 20px; transition:border-color .3s, transform .3s; }
  .ipxcl-cats .card:hover { border-color: var(--accent) !important; transform:translateY(-5px); }
  .ipxcl-cats .icon { font-size:24px; margin-bottom:10px; }
  .ipxcl-cats h3 { font-size:16px; font-weight:700; margin-bottom:6px; }
  .ipxcl-cats .count { font-size:12.5px; color: var(--accent2) !important; font-weight:700; }

.ipxcl-sa { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:var(--ipb-card-border); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxcl-sa * { box-sizing:border-box; margin:0; padding:0; }
  .ipxcl-sa-wrap { max-width:820px; margin:0 auto; text-align:center; }
  .ipxcl-sa h2 { font-size:28px; font-weight:800; margin-bottom:16px; }
  @media (max-width:600px){ .ipxcl-sa h2{ font-size:22px; } }
  .ipxcl-sa p { font-size:15px; line-height:1.85; color:var(--muted); margin-bottom:16px; }
  .ipxcl-sa-tags { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-top:22px; }
  .ipxcl-sa .tag { background:var(--card); border:1px solid var(--cardborder); border-radius:999px; padding:9px 18px; font-size:13.5px; font-weight:600; }

.ipxcl-info { --accent2:var(--ipb-gold-2); font-family:var(--ipb-font-body); color:#fff; }
  .ipxcl-info * { box-sizing:border-box; margin:0; padding:0; }
  .ipxcl-info-wrap { max-width:820px; margin:0 auto; }
  .ipxcl-info h2 { font-size:28px; font-weight:800; margin-bottom:16px; text-align:center; }
  @media (max-width:600px){ .ipxcl-info h2{ font-size:22px; } }
  .ipxcl-info p { font-size:15px; line-height:1.85; color:#c9cbd1; margin-bottom:14px; }
  .ipxcl-info a { color: var(--accent2) !important; text-decoration:underline; }

.ipxcl-faq { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:#4a3a10; --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxcl-faq * { box-sizing:border-box; margin:0; padding:0; }
  .ipxcl-faq-head { text-align:center; margin-bottom:34px; }
  .ipxcl-faq h2 { font-size:30px; font-weight:800; }
  @media (max-width:600px){ .ipxcl-faq h2{ font-size:23px; } }
  .ipxcl-faq-list { max-width:820px; margin:0 auto; display:flex; flex-direction:column; gap:12px; }
  .ipxcl-faq .item { background:var(--card); border:1px solid var(--cardborder) !important; border-radius:10px; overflow:hidden; }
  .ipxcl-faq .item.open { border-color: var(--accent) !important; }
  .ipxcl-faq .q { width:100%; background:transparent; border:none; text-align:left; padding:16px 20px; font-family:inherit; font-size:14.5px; font-weight:700; color: var(--accent2) !important; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:12px; }
  .ipxcl-faq .plus { flex-shrink:0; width:22px; height:22px; border-radius:50%; background:rgba(212,175,55,.15) !important; color: var(--accent2) !important; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:800; transition:transform .25s; }
  .ipxcl-faq .item.open .plus { transform:rotate(45deg); }
  .ipxcl-faq .a { max-height:0; overflow:hidden; transition:max-height .3s ease; }
  .ipxcl-faq .a-inner { padding:0 20px 16px; font-size:13.5px; line-height:1.7; color:var(--muted); }

.ipxcl-cta { --accent:var(--ipb-gold); font-family:var(--ipb-font-body); text-align:center; color:#fff; }
  .ipxcl-cta * { box-sizing:border-box; margin:0; padding:0; }
  .ipxcl-cta p { font-size:15px; color:#c9cbd1; margin-bottom:16px; }
  .ipxcl-cta a { display:inline-block; background: var(--accent) !important; color:#000 !important; font-weight:700; padding:13px 28px; border-radius:999px; text-decoration:none !important; }

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap');
.ctp,.ctp *{box-sizing:border-box}
.ctp{--accent:var(--ipb-gold);--accent2:var(--ipb-gold-2);--bg:#0d0d0d;--card:var(--ipb-card);--bd:var(--ipb-card-border);--mut:#a9a9a9;font-family:var(--ipb-font-body);color:#fff;line-height:1.65}
.ctp h1{font-size:clamp(30px,5vw,44px);font-weight:800;margin:0 0 16px;color:#fff;text-align:center}
.ctp h2{font-size:clamp(22px,4vw,28px);font-weight:700;margin:0 0 16px;color:#fff}
.ctp p{color:#d7d7d7;margin:0 0 16px}
.ctp a{color:var(--accent2) !important;text-decoration:none;font-weight:600}
.ctp a:hover{text-decoration:underline}

.ctp-hero{max-width:820px;margin:0 auto 50px;text-align:center}
.ctp-tag{display:inline-block;color:var(--accent) !important;font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:14px}
.ctp-hero p.sub{font-size:15.5px;color:var(--mut);max-width:600px;margin:0 auto 26px}
.ctp-hero-badges{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;font-size:13px;color:var(--mut)}
.ctp a.ctp-wabtn{display:inline-flex;align-items:center;gap:8px;background:var(--accent) !important;color:#000 !important;font-weight:700;font-size:15px;padding:14px 28px;border-radius:999px;text-decoration:none !important;margin-bottom:22px;transition:transform .2s}
.ctp a.ctp-wabtn:hover{transform:translateY(-2px);text-decoration:none}

.ctp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1100px;margin:0 auto}
@media(max-width:860px){.ctp-grid{grid-template-columns:1fr;max-width:480px}}
.ctp .ctp-card{background:var(--card);border:1px solid var(--bd);border-radius:16px;padding:32px 26px;text-align:center;text-decoration:none !important;display:block;transition:transform .3s,border-color .3s,box-shadow .3s}
.ctp .ctp-card:hover{transform:translateY(-8px);border-color:var(--accent) !important;box-shadow:0 16px 38px rgba(212,175,55,.16)}
.ctp-icon{width:60px;height:60px;border-radius:50%;margin:0 auto 16px;font-size:26px;display:flex;align-items:center;justify-content:center;background:rgba(212,175,55,.12);border:1px solid rgba(212,175,55,.3)}
.ctp .ctp-card.wa .ctp-icon{background:rgba(37,211,102,.12);border-color:rgba(37,211,102,.4)}
.ctp .ctp-card.wa:hover{border-color:#25D366 !important;box-shadow:0 16px 38px rgba(37,211,102,.16)}
.ctp .ctp-card.wa:hover .ctp-icon{background:#25D366 !important}
.ctp-card h3{font-size:17px;font-weight:700;color:#fff;margin-bottom:8px}
.ctp-card p{font-size:13.5px;color:var(--mut);margin-bottom:10px}
.ctp .ctp-action{color:var(--accent2) !important;font-size:13.5px;font-weight:700}
.ctp .ctp-card.wa .ctp-action{color:#25D366 !important}

.ctp-form-wrap{max-width:700px;margin:0 auto;background:var(--card);border:1px solid var(--bd);border-radius:16px;padding:32px}
.ctp-form-wrap h2{text-align:center}
.ctp-form-wrap p.sub{text-align:center;font-size:14px;color:var(--mut);margin-bottom:0}

.ctp-cta{text-align:center;background:linear-gradient(135deg,#1a1608,#121212);border:1px solid rgba(212,175,55,.35);border-radius:18px;padding:34px 22px;max-width:820px;margin:0 auto}
.ctp-cta p{margin-bottom:20px}
.ctp a.ctp-btn{display:inline-block;background:var(--accent) !important;color:#000 !important;font-weight:700;padding:13px 28px;border-radius:999px;text-decoration:none !important}

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap');
.fqp,.fqp *{box-sizing:border-box}
.fqp{--accent:var(--ipb-gold);--accent2:var(--ipb-gold-2);--bg:#0d0d0d;--card:var(--ipb-card);--bd:#4a3a10;--mut:var(--ipb-muted);font-family:var(--ipb-font-body);color:#fff;line-height:1.65}
.fqp h1{font-size:clamp(30px,5vw,44px);font-weight:800;margin:0 0 16px;color:#fff;text-align:center}
.fqp p{color:#d7d7d7;margin:0 0 16px}
.fqp a{color:var(--accent2) !important;text-decoration:none;font-weight:600}
.fqp a:hover{text-decoration:underline}

.fqp-hero{max-width:760px;margin:0 auto 50px;text-align:center}
.fqp-tag{display:inline-block;color:var(--accent) !important;font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:14px}
.fqp-hero p.sub{font-size:15.5px;color:var(--mut);max-width:600px;margin:0 auto 26px}
.fqp a.fqp-wabtn{display:inline-flex;align-items:center;gap:8px;background:var(--accent) !important;color:#000 !important;font-weight:700;font-size:15px;padding:14px 28px;border-radius:999px;text-decoration:none !important;transition:transform .2s}
.fqp a.fqp-wabtn:hover{transform:translateY(-2px);text-decoration:none}

.fqp-cat{max-width:820px;margin:0 auto 36px}
.fqp-cat h2{font-size:19px;font-weight:800;color:var(--accent) !important;margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px}
.fqp-list{display:flex;flex-direction:column;gap:12px}
.fqp .item{background:var(--card);border:1px solid var(--bd) !important;border-radius:10px;overflow:hidden}
.fqp .item.open{border-color:var(--accent) !important}
.fqp .q{width:100%;background:transparent;border:none;text-align:left;padding:16px 20px;font-family:inherit;font-size:14.5px;font-weight:700;color:var(--accent2) !important;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px}
.fqp .plus{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:rgba(212,175,55,.15) !important;color:var(--accent2) !important;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;transition:transform .25s}
.fqp .item.open .plus{transform:rotate(45deg)}
.fqp .a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.fqp .a-inner{padding:0 20px 16px;font-size:13.5px;line-height:1.7;color:var(--mut)}

.fqp-cta{text-align:center;background:linear-gradient(135deg,#1a1608,#121212);border:1px solid rgba(212,175,55,.35);border-radius:18px;padding:34px 22px;max-width:700px;margin:0 auto}
.fqp-cta p{margin-bottom:20px}
.fqp a.fqp-btn{display:inline-block;background:var(--accent) !important;color:#000 !important;font-weight:700;padding:13px 28px;border-radius:999px;text-decoration:none !important}

.ipxfs-intro { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:var(--ipb-card-border); font-family:var(--ipb-font-body); color:#fff; }
  .ipxfs-intro * { box-sizing:border-box; margin:0; padding:0; }
  .ipxfs-intro-wrap { max-width:820px; margin:0 auto; }
  .ipxfs-intro h2 { font-size:28px; font-weight:800; margin-bottom:16px; text-align:center; }
  @media (max-width:600px){ .ipxfs-intro h2{ font-size:22px; } }
  .ipxfs-intro p { font-size:15px; line-height:1.85; color:#c9cbd1; margin-bottom:14px; }
  .ipxfs-intro a { color: var(--accent2) !important; text-decoration:underline; }
  .ipxfs-warn { background:var(--card); border:1px solid var(--cardborder); border-left:3px solid var(--accent) !important; border-radius:10px; padding:18px 20px; margin-top:20px; }
  .ipxfs-warn p { font-size:13.5px; margin-bottom:8px; }
  .ipxfs-warn b { color:#fff; }

.ipxfs-steps { --accent:var(--ipb-gold); --card:var(--ipb-card); --cardborder:var(--ipb-card-border); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxfs-steps * { box-sizing:border-box; margin:0; padding:0; }
  .ipxfs-steps-wrap { max-width:780px; margin:0 auto; }
  .ipxfs-steps h2 { font-size:28px; font-weight:800; margin-bottom:28px; text-align:center; }
  @media (max-width:600px){ .ipxfs-steps h2{ font-size:22px; } }
  .ipxfs-row { display:flex; gap:18px; align-items:flex-start; padding:18px 0; border-bottom:1px solid #232323; }
  .ipxfs-row:last-child { border-bottom:none; }
  .ipxfs-steps .num { flex-shrink:0; width:32px; height:32px; border-radius:50%; border:2px solid var(--accent) !important; color: var(--accent) !important; font-weight:800; font-size:14px; display:flex; align-items:center; justify-content:center; }
  .ipxfs-row h3 { font-size:16px; font-weight:700; margin-bottom:6px; }
  .ipxfs-row p { font-size:14px; line-height:1.7; color:var(--muted); }

.ipxfs-models { --accent2:var(--ipb-gold-2); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxfs-models * { box-sizing:border-box; margin:0; padding:0; }
  .ipxfs-models-wrap { max-width:780px; margin:0 auto; }
  .ipxfs-models h2 { font-size:24px; font-weight:800; margin-bottom:14px; text-align:center; }
  @media (max-width:600px){ .ipxfs-models h2{ font-size:20px; } }
  .ipxfs-models p { font-size:14.5px; line-height:1.8; color:var(--muted); margin-bottom:12px; }
  .ipxfs-models a { color: var(--accent2) !important; text-decoration:underline; }

.ipxfs-faq { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:#4a3a10; --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxfs-faq * { box-sizing:border-box; margin:0; padding:0; }
  .ipxfs-faq-head { text-align:center; margin-bottom:34px; }
  .ipxfs-faq h2 { font-size:28px; font-weight:800; }
  @media (max-width:600px){ .ipxfs-faq h2{ font-size:22px; } }
  .ipxfs-faq-list { max-width:800px; margin:0 auto; display:flex; flex-direction:column; gap:12px; }
  .ipxfs-faq .item { background:var(--card); border:1px solid var(--cardborder) !important; border-radius:10px; overflow:hidden; }
  .ipxfs-faq .item.open { border-color: var(--accent) !important; }
  .ipxfs-faq .q { width:100%; background:transparent; border:none; text-align:left; padding:16px 20px; font-family:inherit; font-size:14.5px; font-weight:700; color: var(--accent2) !important; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:12px; }
  .ipxfs-faq .plus { flex-shrink:0; width:22px; height:22px; border-radius:50%; background:rgba(212,175,55,.15) !important; color: var(--accent2) !important; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:800; transition:transform .25s; }
  .ipxfs-faq .item.open .plus { transform:rotate(45deg); }
  .ipxfs-faq .a { max-height:0; overflow:hidden; transition:max-height .3s ease; }
  .ipxfs-faq .a-inner { padding:0 20px 16px; font-size:13.5px; line-height:1.7; color:var(--muted); }

.ipxfs-cta { --accent:var(--ipb-gold); font-family:var(--ipb-font-body); text-align:center; color:#fff; }
  .ipxfs-cta * { box-sizing:border-box; margin:0; padding:0; }
  .ipxfs-cta p { font-size:15px; color:#c9cbd1; margin-bottom:16px; }
  .ipxfs-cta .actions { display:flex; justify-content:center; gap:14px; flex-wrap:wrap; }
  .ipxfs-cta a.primary { background: var(--accent) !important; color:#000 !important; font-weight:700; padding:13px 26px; border-radius:999px; text-decoration:none !important; }
  .ipxfs-cta a.secondary { background:transparent !important; color:#fff !important; font-weight:700; padding:13px 26px; border-radius:999px; border:1px solid #3a3a3a !important; text-decoration:none !important; }

/* =========================================================
   IPTV FREE TRIAL — BRAMPTON IPTV 4K
   COMPLETE CONTENT BLOCK
========================================================= */

.b4k-trial {
  --gold: var(--ipb-gold);
  --gold2: var(--ipb-gold-2);
  --black: #080808;
  --card: #121212;
  --card2: #181818;
  --border: #292929;
  --muted: #b7b9c2;
  --white: #ffffff;
  background: var(--black);
  color: var(--white);
  font-family:var(--ipb-font-body);
  width: 100%;
}

.b4k-trial * {
  box-sizing: border-box;
}

.b4k-trial-wrap {
  max-width: 1120px;
  margin: 0 auto;
  padding: 78px 24px;
}

.b4k-trial section {
  margin-bottom: 90px;
}

.b4k-trial section:last-child {
  margin-bottom: 0;
}

.b4k-trial .eyebrow {
  display: block;
  text-align: center;
  color: var(--gold2);
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 10px;
}

.b4k-trial h2 {
  color: var(--white);
  font-size: 34px;
  line-height: 1.25;
  font-weight: 800;
  text-align: center;
  margin: 0 0 16px;
}

.b4k-trial .section-intro {
  max-width: 760px;
  margin: 0 auto 38px;
  color: var(--muted);
  text-align: center;
  font-size: 15px;
  line-height: 1.8;
}

.b4k-trial h3 {
  margin: 0 0 9px;
  color: var(--white);
  font-size: 17px;
  line-height: 1.4;
}

.b4k-trial p {
  color: var(--muted);
  line-height: 1.8;
}

.b4k-trial a {
  color: var(--gold2);
}

.b4k-trial a.external-source {
  color: var(--gold2) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

.b4k-trial .gold {
  color: var(--gold2);
}


/* WHAT TO TEST */

.b4k-check-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.b4k-check {
  background: linear-gradient(145deg, var(--card), #0d0d0d);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 25px 22px;
  min-height: 175px;
}

.b4k-check .icon {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(212,175,55,.10);
  border: 1px solid rgba(212,175,55,.28);
  border-radius: 10px;
  font-size: 21px;
  margin-bottom: 17px;
}

.b4k-check p {
  margin: 0;
  font-size: 13.5px;
}


/* TEST CHECKLIST */

.b4k-test-box {
  border: 1px solid rgba(212,175,55,.34);
  border-radius: 18px;
  background:
    radial-gradient(circle at 10% 0%, rgba(212,175,55,.10), transparent 35%),
    var(--card);
  padding: 34px;
}

.b4k-test-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
}

.b4k-test-item {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 15px;
  background: rgba(255,255,255,.025);
  border-radius: 10px;
}

.b4k-test-num {
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--gold);
  color: #000;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
}

.b4k-test-item strong {
  display: block;
  color: #fff;
  font-size: 14px;
  margin-bottom: 4px;
}

.b4k-test-item span {
  color: var(--muted);
  font-size: 12.8px;
  line-height: 1.6;
}


/* HOW IT WORKS */

.b4k-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.b4k-step {
  position: relative;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 30px 24px;
}

.b4k-step-no {
  font-size: 42px;
  line-height: 1;
  font-weight: 900;
  color: rgba(212,175,55,.20);
  margin-bottom: 18px;
}

.b4k-step p {
  font-size: 13.5px;
  margin: 0;
}


/* LOCAL SECTION */

.b4k-local {
  max-width: 900px;
  margin: 0 auto;
  background: var(--card2);
  border-left: 4px solid var(--gold);
  border-radius: 0 14px 14px 0;
  padding: 32px 34px;
}

.b4k-local h2 {
  text-align: left;
  font-size: 27px;
  margin-bottom: 14px;
}

.b4k-local p {
  margin: 0;
  font-size: 14.5px;
}


/* PREP LINKS */

.b4k-prep-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.b4k-prep-card {
  display: block;
  text-decoration: none !important;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 24px 22px;
  transition: .25s ease;
}

.b4k-prep-card:hover {
  border-color: var(--gold);
  transform: translateY(-3px);
}

.b4k-prep-card h3 {
  color: #fff !important;
}

.b4k-prep-card p {
  font-size: 13px;
  margin: 0 0 9px;
}

.b4k-prep-card span {
  color: var(--gold2);
  font-size: 12.5px;
  font-weight: 700;
}


/* CTA */

.b4k-cta {
  text-align: center;
  border: 1px solid rgba(212,175,55,.35);
  background:
    linear-gradient(135deg, rgba(212,175,55,.10), rgba(0,0,0,.10)),
    var(--card);
  padding: 42px 24px;
  border-radius: 18px;
}

.b4k-cta h2 {
  margin-bottom: 10px;
}

.b4k-cta p {
  max-width: 680px;
  margin: 0 auto 24px;
  font-size: 14px;
}

.b4k-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 13px;
  flex-wrap: wrap;
}

.b4k-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 27px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none !important;
  transition: .25s ease;
}

.b4k-btn.primary {
  background: var(--gold2);
  color: #000 !important;
  border: 1px solid var(--gold2);
}

.b4k-btn.primary:hover {
  transform: translateY(-2px);
}

.b4k-btn.secondary {
  background: transparent;
  color: #fff !important;
  border: 1px solid #444;
}

.b4k-btn.secondary:hover {
  border-color: var(--gold);
}


/* FAQ */

.b4k-faq-list {
  max-width: 850px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.b4k-faq-item {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
}

.b4k-faq-item.open {
  border-color: rgba(212,175,55,.70);
}

.b4k-faq-q {
  width: 100%;
  border: 0;
  background: transparent;
  color: #fff;
  font-family: inherit;
  font-size: 14.5px;
  font-weight: 700;
  text-align: left;
  padding: 18px 20px;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
}

.b4k-faq-plus {
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  border-radius: 50%;
  background: rgba(212,175,55,.12);
  color: var(--gold2);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .25s ease;
}

.b4k-faq-item.open .b4k-faq-plus {
  transform: rotate(45deg);
}

.b4k-faq-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height .35s ease;
}

.b4k-faq-a-inner {
  padding: 0 20px 19px;
  color: var(--muted);
  font-size: 13.5px;
  line-height: 1.75;
}


/* RESPONSIVE */

@media (max-width: 850px) {
  .b4k-check-grid,
  .b4k-steps,
  .b4k-prep-grid {
    grid-template-columns: 1fr;
  }

  .b4k-test-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .b4k-trial-wrap {
    padding: 58px 18px;
  }

  .b4k-trial section {
    margin-bottom: 68px;
  }

  .b4k-trial h2 {
    font-size: 25px;
  }

  .b4k-local {
    padding: 26px 22px;
  }

  .b4k-local h2 {
    font-size: 23px;
  }

  .b4k-test-box {
    padding: 22px 15px;
  }
}

/* =========================================================
   HOW TO SETUP IPTV ON PC — BRAMPTON IPTV 4K
   HERO REMAINS SEPARATE / UNCHANGED
========================================================= */

.bpc-page {
  --gold:var(--ipb-gold);
  --gold2:var(--ipb-gold-2);
  --bg:#080808;
  --card:#121212;
  --card2:#181818;
  --border:#292929;
  --muted:#b8bbc4;
  --white:#ffffff;

  width:100%;
  background:var(--bg);
  color:var(--white);
  font-family:var(--ipb-font-body);
}

.bpc-page * {
  box-sizing:border-box;
}

.bpc-wrap {
  max-width:1120px;
  margin:0 auto;
  padding:78px 24px;
}

.bpc-page section {
  margin-bottom:88px;
}

.bpc-page section:last-child {
  margin-bottom:0;
}

.bpc-eyebrow {
  display:block;
  margin-bottom:10px;
  color:var(--gold2);
  text-transform:uppercase;
  letter-spacing:2px;
  font-size:12px;
  font-weight:800;
  text-align:center;
}

.bpc-page h2 {
  margin:0 0 16px;
  color:#fff;
  font-size:34px;
  line-height:1.25;
  font-weight:800;
  text-align:center;
}

.bpc-page h3 {
  margin:0 0 9px;
  color:#fff;
  font-size:17px;
  line-height:1.4;
  font-weight:700;
}

.bpc-page h4 {
  margin:0 0 5px;
  color:#fff;
  font-size:14px;
  font-weight:700;
}

.bpc-page p {
  color:var(--muted);
  line-height:1.8;
}

.bpc-page a {
  color:var(--gold2);
}

.bpc-section-intro {
  max-width:800px;
  margin:0 auto 36px;
  text-align:center;
  font-size:15px;
  line-height:1.85;
  color:var(--muted);
}


/* =========================================================
   INTRO
========================================================= */

.bpc-intro-box {
  max-width:900px;
  margin:0 auto;
  padding:31px 32px;
  background:linear-gradient(145deg,#151515,#0d0d0d);
  border:1px solid var(--border);
  border-radius:16px;
}

.bpc-intro-box p {
  margin:0 0 15px;
  font-size:14.5px;
}

.bpc-intro-box p:last-child {
  margin-bottom:0;
}

.bpc-notice {
  margin-top:22px;
  padding:20px 22px;
  background:rgba(212,175,55,.05);
  border:1px solid rgba(212,175,55,.30);
  border-left:4px solid var(--gold);
  border-radius:0 12px 12px 0;
}

.bpc-notice strong {
  color:#fff;
}

.bpc-notice p {
  margin:6px 0 0;
  font-size:13.5px;
}


/* =========================================================
   TABLE OF CONTENTS
========================================================= */

.bpc-toc {
  max-width:820px;
  margin:0 auto;
  padding:27px;
  background:var(--card);
  border:1px solid rgba(212,175,55,.35);
  border-radius:15px;
}

.bpc-toc-title {
  margin-bottom:17px;
  color:#fff;
  font-size:18px;
  font-weight:800;
  text-align:center;
}

.bpc-toc ol {
  columns:2;
  column-gap:44px;
  margin:0;
  padding-left:24px;
}

.bpc-toc li {
  margin-bottom:10px;
  color:var(--gold2);
  break-inside:avoid;
}

.bpc-toc a {
  color:#fff !important;
  text-decoration:none !important;
  font-size:13.5px;
}

.bpc-toc a:hover {
  color:var(--gold2) !important;
}


/* =========================================================
   REQUIREMENTS
========================================================= */

.bpc-requirements {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.bpc-requirement {
  padding:24px 21px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
}

.bpc-num {
  width:34px;
  height:34px;
  margin-bottom:15px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  border:1px solid rgba(212,175,55,.35);
  color:var(--gold2);
  font-size:13px;
  font-weight:900;
}

.bpc-requirement p {
  margin:0;
  font-size:13.3px;
}


/* =========================================================
   METHOD CARDS
========================================================= */

.bpc-method {
  max-width:900px;
  margin:0 auto 28px;
  padding:31px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:16px;
}

.bpc-method:last-child {
  margin-bottom:0;
}

.bpc-method-head {
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:10px;
}

.bpc-method-icon {
  width:45px;
  height:45px;
  flex:0 0 45px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:11px;
  background:rgba(212,175,55,.10);
  border:1px solid rgba(212,175,55,.30);
  font-size:21px;
}

.bpc-method-head h3 {
  margin:0;
  font-size:20px;
}

.bpc-method-description {
  margin:0 0 24px;
  font-size:13.8px;
}

.bpc-step-row {
  display:flex;
  gap:16px;
  padding:17px 0;
  border-top:1px solid #272727;
}

.bpc-step-circle {
  width:29px;
  height:29px;
  flex:0 0 29px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:2px solid var(--gold);
  color:var(--gold2);
  font-size:12px;
  font-weight:900;
}

.bpc-step-row p {
  margin:0;
  font-size:13px;
}


/* =========================================================
   WINDOWS / MAC NOTES
========================================================= */

.bpc-platform-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

.bpc-platform {
  padding:25px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
}

.bpc-platform h3 {
  font-size:19px;
}

.bpc-platform p {
  margin:0 0 10px;
  font-size:13.5px;
}

.bpc-platform p:last-child {
  margin-bottom:0;
}


/* =========================================================
   TIPS
========================================================= */

.bpc-tips {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}

.bpc-tip {
  display:flex;
  gap:14px;
  padding:20px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:13px;
}

.bpc-check {
  width:29px;
  height:29px;
  flex:0 0 29px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  color:var(--gold2);
  font-weight:900;
}

.bpc-tip strong {
  display:block;
  margin-bottom:4px;
  color:#fff;
  font-size:14px;
}

.bpc-tip span {
  color:var(--muted);
  font-size:12.8px;
  line-height:1.65;
}


/* =========================================================
   OFFICIAL SOURCES
========================================================= */

.bpc-official {
  max-width:900px;
  margin:0 auto;
  padding:28px;
  background:var(--card2);
  border-left:4px solid var(--gold);
  border-radius:0 14px 14px 0;
}

.bpc-official h2 {
  text-align:left;
  font-size:25px;
  margin-bottom:12px;
}

.bpc-official p {
  margin:0 0 11px;
  font-size:13.5px;
}

.bpc-official p:last-child {
  margin-bottom:0;
}

.bpc-official a {
  text-decoration:underline;
  text-underline-offset:3px;
}


/* =========================================================
   FAQ
========================================================= */

.bpc-faq {
  max-width:850px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.bpc-faq-item {
  overflow:hidden;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:12px;
}

.bpc-faq-item.open {
  border-color:rgba(212,175,55,.70);
}

.bpc-faq-q {
  width:100%;
  padding:18px 20px;
  background:transparent;
  border:0;
  color:#fff;
  font-family:inherit;
  font-size:14px;
  font-weight:700;
  text-align:left;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}

.bpc-plus {
  width:25px;
  height:25px;
  flex:0 0 25px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  color:var(--gold2);
  transition:.25s;
}

.bpc-faq-item.open .bpc-plus {
  transform:rotate(45deg);
}

.bpc-faq-a {
  max-height:0;
  overflow:hidden;
  transition:max-height .35s ease;
}

.bpc-faq-content {
  padding:0 20px 19px;
  color:var(--muted);
  font-size:13.5px;
  line-height:1.75;
}


/* =========================================================
   RELATED GUIDES
========================================================= */

.bpc-related {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.bpc-related-card {
  display:block;
  padding:23px 21px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
  text-decoration:none !important;
  transition:.25s;
}

.bpc-related-card:hover {
  transform:translateY(-3px);
  border-color:var(--gold);
}

.bpc-related-card h3 {
  color:#fff !important;
  font-size:16px;
}

.bpc-related-card p {
  margin:0 0 8px;
  font-size:12.8px;
}

.bpc-related-card span {
  color:var(--gold2);
  font-size:12px;
  font-weight:700;
}


/* =========================================================
   CTA
========================================================= */

.bpc-cta {
  padding:45px 28px;
  text-align:center;
  background:
    radial-gradient(circle at top,rgba(212,175,55,.12),transparent 45%),
    var(--card);
  border:1px solid rgba(212,175,55,.35);
  border-radius:18px;
}

.bpc-cta p {
  max-width:650px;
  margin:0 auto 25px;
  font-size:14px;
}

.bpc-actions {
  display:flex;
  justify-content:center;
  gap:13px;
  flex-wrap:wrap;
}

.bpc-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 27px;
  border-radius:8px;
  text-decoration:none !important;
  font-size:14px;
  font-weight:800;
}

.bpc-primary {
  background:var(--gold2);
  border:1px solid var(--gold2);
  color:#000 !important;
}

.bpc-secondary {
  background:transparent;
  border:1px solid #444;
  color:#fff !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:900px) {
  .bpc-requirements,
  .bpc-related {
    grid-template-columns:1fr;
  }
}

@media(max-width:700px) {
  .bpc-wrap {
    padding:58px 18px;
  }

  .bpc-page section {
    margin-bottom:67px;
  }

  .bpc-page h2 {
    font-size:25px;
  }

  .bpc-platform-grid,
  .bpc-tips {
    grid-template-columns:1fr;
  }

  .bpc-toc ol {
    columns:1;
  }

  .bpc-intro-box,
  .bpc-method {
    padding:23px 20px;
  }
}

.ipxp-intro { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); font-family:var(--ipb-font-body); color:#fff; text-align:center; }
  .ipxp-intro * { box-sizing:border-box; margin:0; padding:0; }
  .ipxp-intro-wrap { max-width: 760px; margin: 0 auto; }
  .ipxp-intro-tag { display:block; color: var(--accent) !important; font-size:14px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; margin-bottom:12px; }
  .ipxp-intro h2 { font-size:32px; font-weight:800; margin-bottom:14px; }
  .ipxp-intro p { font-size:15px; line-height:1.8; color:#c9cbd1; margin-bottom:8px; }

.ipxp-dev { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --icon:#f5f5f5; --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxp-dev * { box-sizing:border-box; margin:0; padding:0; }
  .ipxp-dev-flex { display:flex; justify-content:space-between; align-items:flex-start; gap:40px; flex-wrap:wrap; max-width:1240px; margin:0 auto 46px; }
  .ipxp-dev-tag { display:block; color: var(--accent) !important; font-size:14px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; margin-bottom:12px; }
  .ipxp-dev-title { font-size:34px; font-weight:800; line-height:1.2; max-width:520px; }
  @media (max-width:600px){ .ipxp-dev-title{ font-size:26px; } }
  .ipxp-dev-text { font-size:15px; line-height:1.8; color:var(--muted); max-width:380px; padding-top:8px; }
  .ipxs-row{display:flex;justify-content:center;align-items:flex-start;gap:4.5%;max-width:1240px;margin:0 auto;flex-wrap:wrap;row-gap:34px}
  @media(max-width:700px){.ipxs-row{gap:26px}}
  .ipxp-dev a.ipxs-item{display:flex;flex-direction:column;align-items:center;gap:14px;text-decoration:none !important;transition:transform .3s;color:inherit !important}
  .ipxp-dev a.ipxs-item:hover{transform:translateY(-6px)}
  .ipxs-item svg{width:56px;height:56px;stroke:var(--icon);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:stroke .3s}
  .ipxp-dev a.ipxs-item:hover svg{stroke:var(--accent) !important}
  .ipxs-label{color:var(--muted);font-size:13.5px;font-weight:600;transition:color .3s}
  .ipxp-dev a.ipxs-item:hover .ipxs-label{color:#fff !important}

.ipxp-order { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:var(--ipb-card-border); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; text-align:center; }
  .ipxp-order * { box-sizing:border-box; margin:0; padding:0; }
  .ipxp-order h2 { font-size:32px; font-weight:800; max-width:760px; margin:0 auto 40px; }
  @media (max-width:600px){ .ipxp-order h2{ font-size:24px; } }
  .ipxp-order-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; max-width:1100px; margin:0 auto; }
  @media (max-width:800px){ .ipxp-order-grid{ grid-template-columns:1fr; max-width:420px; } }
  .ipxp-order .card { background:var(--card); border:1px solid var(--cardborder); border-radius:14px; padding:30px 22px; text-align:left; transition:border-color .3s, transform .3s; }
  .ipxp-order .card:hover { border-color: var(--accent) !important; transform:translateY(-5px); }
  .ipxp-order .num { width:36px; height:36px; border-radius:50%; background: var(--accent) !important; color:#000 !important; font-weight:800; display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
  .ipxp-order h3 { font-size:17px; font-weight:700; margin-bottom:10px; }
  .ipxp-order p { font-size:13.5px; line-height:1.7; color:var(--muted); }
  .ipxp-order a { color: var(--accent2) !important; font-weight:700; text-decoration:underline; }

.ipxp-incl { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; text-align:center; }
  .ipxp-incl * { box-sizing:border-box; margin:0; padding:0; }
  .ipxp-incl h2 { font-size:32px; font-weight:800; max-width:700px; margin:0 auto 34px; }
  @media (max-width:600px){ .ipxp-incl h2{ font-size:24px; } }
  .ipxp-incl-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px 28px; max-width:960px; margin:0 auto; text-align:left; }
  @media (max-width:700px){ .ipxp-incl-grid{ grid-template-columns:1fr; max-width:420px; } }
  .ipxp-incl-item { display:flex; gap:10px; align-items:flex-start; font-size:14px; color:var(--muted); }
  .ipxp-incl-item .check { color: var(--accent2) !important; font-weight:800; flex-shrink:0; }

.ipxp-multi { --accent2:var(--ipb-gold-2); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; text-align:center; }
  .ipxp-multi * { box-sizing:border-box; margin:0; padding:0; }
  .ipxp-multi-wrap { max-width:760px; margin:0 auto; }
  .ipxp-multi h2 { font-size:28px; font-weight:800; margin-bottom:14px; }
  @media (max-width:600px){ .ipxp-multi h2{ font-size:22px; } }
  .ipxp-multi p { font-size:15px; line-height:1.8; color:var(--muted); margin-bottom:8px; }
  .ipxp-multi a { color: var(--accent2) !important; font-weight:700; text-decoration:underline; }

.ipxp-interac { --accent:var(--ipb-gold); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; text-align:center; }
  .ipxp-interac * { box-sizing:border-box; margin:0; padding:0; }
  .ipxp-interac-wrap { max-width:760px; margin:0 auto; }
  .ipxp-interac h2 { font-size:26px; font-weight:800; margin-bottom:14px; }
  .ipxp-interac p { font-size:15px; line-height:1.8; color:var(--muted); margin-bottom:8px; }
  .ipxp-interac .warn { display:inline-block; margin-top:10px; font-size:13px; color:#f0c964; background:rgba(212,175,55,.08); border:1px solid rgba(212,175,55,.3); border-radius:8px; padding:10px 18px; }

.ipxp-faq { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:#4a3a10; --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxp-faq * { box-sizing:border-box; margin:0; padding:0; }
  .ipxp-faq-head { text-align:center; margin-bottom:34px; }
  .ipxp-faq-tag { display:block; color: var(--accent) !important; font-size:13px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; margin-bottom:10px; }
  .ipxp-faq h2 { font-size:30px; font-weight:800; }
  @media (max-width:600px){ .ipxp-faq h2{ font-size:23px; } }
  .ipxp-faq-list { max-width:820px; margin:0 auto; display:flex; flex-direction:column; gap:12px; }
  .ipxp-faq .item { background:var(--card); border:1px solid var(--cardborder) !important; border-radius:10px; overflow:hidden; }
  .ipxp-faq .item.open { border-color: var(--accent) !important; }
  .ipxp-faq .q { width:100%; background:transparent; border:none; text-align:left; padding:16px 20px; font-family:inherit; font-size:14.5px; font-weight:700; color: var(--accent2) !important; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:12px; }
  .ipxp-faq .plus { flex-shrink:0; width:22px; height:22px; border-radius:50%; background:rgba(212,175,55,.15) !important; color: var(--accent2) !important; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:800; transition:transform .25s; }
  .ipxp-faq .item.open .plus { transform:rotate(45deg); }
  .ipxp-faq .a { max-height:0; overflow:hidden; transition:max-height .3s ease; }
  .ipxp-faq .a-inner { padding:0 20px 16px; font-size:13.5px; line-height:1.7; color:var(--muted); }

.ipxp-resell { --accent:var(--ipb-gold); font-family:var(--ipb-font-body); text-align:center; color:#fff; }
  .ipxp-resell * { box-sizing:border-box; margin:0; padding:0; }
  .ipxp-resell p { font-size:15px; color:#c9cbd1; margin-bottom:14px; }
  .ipxp-resell a { display:inline-block; color: var(--accent) !important; font-weight:700; text-decoration:underline; }

.ipxp-cost { --accent2:var(--ipb-gold-2); font-family:var(--ipb-font-body); color:#fff; }
  .ipxp-cost * { box-sizing:border-box; margin:0; padding:0; }
  .ipxp-cost-wrap { max-width:820px; margin:0 auto; }
  .ipxp-cost h2 { font-size:28px; font-weight:800; margin-bottom:18px; text-align:center; }
  @media (max-width:600px){ .ipxp-cost h2{ font-size:22px; } }
  .ipxp-cost p { font-size:15px; line-height:1.85; color:#c9cbd1; margin-bottom:14px; }
  .ipxp-cost a { color: var(--accent2) !important; text-decoration:underline; }

.ipxp-why { --accent:var(--ipb-gold); --card:var(--ipb-card); --cardborder:var(--ipb-card-border); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; text-align:center; }
  .ipxp-why * { box-sizing:border-box; margin:0; padding:0; }
  .ipxp-why h2 { font-size:32px; font-weight:800; max-width:700px; margin:0 auto 34px; }
  @media (max-width:600px){ .ipxp-why h2{ font-size:24px; } }
  .ipxp-why-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; max-width:1100px; margin:0 auto; text-align:left; }
  @media (max-width:900px){ .ipxp-why-grid{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:560px){ .ipxp-why-grid{ grid-template-columns:1fr; } }
  .ipxp-why .card { background:var(--card); border:1px solid var(--cardborder); border-radius:12px; padding:24px 20px; transition:border-color .3s, transform .3s; }
  .ipxp-why .card:hover { border-color: var(--accent) !important; transform:translateY(-5px); }
  .ipxp-why h3 { font-size:16px; font-weight:700; margin-bottom:8px; }
  .ipxp-why p { font-size:13px; line-height:1.6; color:var(--muted); }

.ipxp-finalmini { --accent:var(--ipb-gold); font-family:var(--ipb-font-body); text-align:center; color:#fff; }
  .ipxp-finalmini * { box-sizing:border-box; margin:0; padding:0; }
  .ipxp-finalmini p { font-size:15px; color:#c9cbd1; margin-bottom:18px; }
  .ipxp-finalmini .actions { display:flex; justify-content:center; gap:14px; flex-wrap:wrap; }
  .ipxp-finalmini a.primary { background: var(--accent) !important; color:#000 !important; font-weight:700; padding:13px 26px; border-radius:999px; text-decoration:none !important; }
  .ipxp-finalmini a.secondary { background:transparent !important; color:#fff !important; font-weight:700; padding:13px 26px; border-radius:999px; border:1px solid #3a3a3a !important; text-decoration:none !important; }

.ipxpriv { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --muted:#c9cbd1; font-family:var(--ipb-font-body); color:#fff; }
  .ipxpriv * { box-sizing:border-box; margin:0; padding:0; }
  .ipxpriv-wrap { max-width:820px; margin:0 auto; }
  .ipxpriv-head { text-align:center; margin-bottom:36px; }
  .ipxpriv-head h1 { font-size:34px; font-weight:800; margin-bottom:8px; }
  @media (max-width:600px){ .ipxpriv-head h1{ font-size:26px; } }
  .ipxpriv-head .updated { font-size:13px; color: var(--accent2) !important; font-weight:600; }
  .ipxpriv-intro { font-size:15px; line-height:1.85; color:var(--muted); margin-bottom:30px; }
  .ipxpriv-sec { margin-bottom:26px; }
  .ipxpriv-sec h2 { font-size:18px; font-weight:700; color: var(--accent) !important; margin-bottom:10px; padding-bottom:8px; border-bottom:1px solid var(--ipb-card-border); }
  .ipxpriv-sec p { font-size:14px; line-height:1.8; color:var(--muted); }
  .ipxpriv a { color: var(--accent2) !important; text-decoration:underline; }

.ipxref { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:var(--ipb-card-border); --muted:#c9cbd1; font-family:var(--ipb-font-body); color:#fff; }
  .ipxref * { box-sizing:border-box; margin:0; padding:0; }
  .ipxref-wrap { max-width:820px; margin:0 auto; }
  .ipxref-head { text-align:center; margin-bottom:36px; }
  .ipxref-head h1 { font-size:34px; font-weight:800; margin-bottom:8px; }
  @media (max-width:600px){ .ipxref-head h1{ font-size:26px; } }
  .ipxref-head .updated { font-size:13px; color: var(--accent2) !important; font-weight:600; }
  .ipxref-intro { font-size:15px; line-height:1.85; color:var(--muted); margin-bottom:30px; }
  .ipxref-badge { display:flex; gap:14px; align-items:flex-start; background:var(--card); border:1px solid var(--cardborder); border-left:3px solid var(--accent) !important; border-radius:10px; padding:18px 20px; margin-bottom:30px; }
  .ipxref-badge .ic { font-size:24px; }
  .ipxref-badge p { margin:0; font-size:14px; color:#fff; font-weight:600; }
  .ipxref-sec { margin-bottom:26px; }
  .ipxref-sec h2 { font-size:18px; font-weight:700; color: var(--accent) !important; margin-bottom:10px; padding-bottom:8px; border-bottom:1px solid var(--ipb-card-border); }
  .ipxref-sec p, .ipxref-sec li { font-size:14px; line-height:1.8; color:var(--muted); }
  .ipxref-sec ul { padding-left:20px; margin-top:6px; }
  .ipxref-sec li { margin-bottom:6px; }
  .ipxref a { color: var(--accent2) !important; text-decoration:underline; }

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap');
.stv,.stv *{box-sizing:border-box}
.stv{--red:var(--ipb-gold);--accent:var(--ipb-gold-2);--bg:#0d0d0d;--card:var(--ipb-card);--bd:var(--ipb-card-border);--mut:#a9a9a9;font-family:var(--ipb-font-body);color:#fff;line-height:1.65;max-width:960px;margin:0 auto}
.stv h2{font-size:clamp(22px,4vw,30px);font-weight:700;margin:0 0 16px;color:#fff}
.stv h3{font-size:clamp(17px,3vw,21px);font-weight:600;margin:0 0 10px;color:#fff}
.stv p{color:#d7d7d7;margin:0 0 16px}
.stv a{color:var(--accent) !important;text-decoration:none;font-weight:600}
.stv a:hover{text-decoration:underline}
.stv-toc{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:18px 22px;margin:0 0 24px}
.stv-toc strong{display:block;margin-bottom:8px;color:#fff}
.stv-toc a{display:inline-block;margin:3px 14px 3px 0;font-size:14.5px}
.stv-note{display:flex;gap:14px;align-items:flex-start;background:var(--card);border:1px solid var(--bd);border-left:4px solid var(--red) !important;border-radius:12px;padding:18px 20px;margin:0 0 26px}
.stv-note .ic{font-size:24px;line-height:1}
.stv-note p{margin:0;font-size:14.5px;color:#cfcfcf}
.stv-need{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:14px 0 0}
.stv-need .it{background:var(--card);border:1px solid var(--bd);border-radius:14px;padding:22px 16px;text-align:center}
.stv-need .it .n{width:46px;height:46px;border-radius:50%;background:rgba(212,175,55,.14) !important;border:1px solid rgba(212,175,55,.4) !important;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;font-size:22px}
.stv-need .it h3{font-size:16px;margin:0 0 6px}
.stv-need .it p{font-size:13.5px;color:var(--mut);margin:0}
.stv-app{background:linear-gradient(180deg,#181818,#121212);border:1px solid var(--bd);border-radius:16px;padding:22px;margin:0 0 18px}
.stv-app .tag{display:inline-block;background:var(--red) !important;color:#000 !important;font-size:12px;font-weight:700;padding:4px 12px;border-radius:30px;margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}
.stv-app p{margin:0}
.stv-steps{counter-reset:s;list-style:none;padding:0;margin:8px 0 0}
.stv-steps li{position:relative;padding:0 0 18px 52px}
.stv-steps li:before{counter-increment:s;content:counter(s);position:absolute;left:0;top:-2px;width:34px;height:34px;background:var(--red) !important;color:#000 !important;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px}
.stv-steps li:not(:last-child):after{content:"";position:absolute;left:16px;top:34px;bottom:2px;width:2px;background:var(--bd)}
.stv-steps li h3{font-size:16.5px;margin:4px 0 4px}
.stv-steps li p{font-size:14px;margin:0;color:#c4c4c4}
.rcmp-wrap{overflow-x:auto;border:1px solid var(--bd);border-radius:14px;margin:6px 0 0}
.rcmp{width:100%;border-collapse:collapse;min-width:520px}
.rcmp th,.rcmp td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--bd);font-size:14.5px}
.rcmp thead th{background:#101010;color:#fff;font-weight:700}
.rcmp thead th.prem{color:var(--accent) !important}
.rcmp td:first-child{color:#cfcfcf;font-weight:600}
.rcmp td.c{text-align:center}
.rcmp tbody tr:last-child td{border-bottom:none}
.rcmp .yes{color:var(--red) !important;font-weight:800}
.rcmp .no{color:#5a5a5a;font-weight:800}
.rcmp .colprem{background:rgba(212,175,55,.06) !important}
.rplan-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;align-items:stretch;margin-top:6px}
.rplan-card{position:relative;background:var(--card);border:1px solid var(--bd);border-radius:18px;padding:30px 26px;display:flex;flex-direction:column}
.rplan-card.pop{border:1.5px solid var(--red) !important;box-shadow:0 0 24px rgba(212,175,55,.25)}
.rplan-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--red) !important;color:#000 !important;font-size:12px;font-weight:700;letter-spacing:.5px;padding:5px 16px;border-radius:30px;text-transform:uppercase;white-space:nowrap}
.rplan-name{font-size:20px;font-weight:700;margin:0 0 4px}
.rplan-tier{font-size:13px;color:var(--mut);margin:0 0 16px}
.rplan-price{display:flex;align-items:flex-start;justify-content:center;gap:4px;margin:0 0 2px}
.rplan-price .cur{font-size:18px;font-weight:600;margin-top:6px}
.rplan-price .amt{font-size:42px;font-weight:800;line-height:1}
.rplan-price .per{font-size:13px;color:var(--mut);align-self:flex-end;margin-bottom:6px}
.rplan-sub{text-align:center;color:var(--accent) !important;font-weight:600;font-size:13.5px;margin:0 0 20px}
.rplan-list{list-style:none;padding:0;margin:0 0 24px;flex:1}
.rplan-list li{display:flex;gap:10px;align-items:flex-start;padding:8px 0;font-size:14.5px;color:#d7d7d7;border-bottom:1px solid rgba(255,255,255,.05)}
.rplan-list li:before{content:"✓";color:var(--red) !important;font-weight:800;flex:0 0 auto}
.rplan-btn{display:block;text-align:center;padding:14px 22px;border-radius:50px;font-weight:700;font-size:15px;text-decoration:none}
.rplan-btn.prim{background:var(--red) !important;color:#000 !important}
.rplan-btn.prim:hover{background:var(--accent) !important}
.rplan-btn.ghost{background:transparent !important;color:#fff !important;border:1px solid var(--bd)}
.rplan-btn.ghost:hover{border-color:var(--red) !important}
.stv-faq details{background:#0d0d0d;border:1px solid var(--red) !important;border-radius:12px;padding:0 22px;margin-bottom:14px;box-shadow:0 0 10px rgba(212,175,55,.12);transition:box-shadow .25s}
.stv-faq details[open]{box-shadow:0 0 18px rgba(212,175,55,.28)}
.stv-faq summary{cursor:pointer;list-style:none;padding:20px 0;font-weight:600;font-size:16px;display:flex;justify-content:space-between;align-items:center;gap:14px;color:var(--red) !important}
.stv-faq summary::-webkit-details-marker{display:none}
.stv-faq summary:after{content:"+";flex:0 0 auto;color:var(--red) !important;font-size:20px;font-weight:700;width:30px;height:30px;border:1.5px solid var(--red) !important;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}
.stv-faq details[open] summary:after{content:"\2212"}
.stv-faq details p{padding:0 0 20px;font-size:14.5px;color:#cfcfcf;margin:0;line-height:1.7}
.stv-cta{text-align:center;background:linear-gradient(135deg,#1a1608,#121212);border:1px solid rgba(212,175,55,.35);border-radius:18px;padding:34px 22px;margin:0}
.stv-cta h2{margin-top:0}
.stv-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:20px}
.stv-btn{display:inline-block;padding:14px 30px;border-radius:50px;font-weight:700;font-size:15px}
.stv-btn.prim{background:var(--red) !important;color:#000 !important}
.stv-btn.prim:hover{background:var(--accent) !important;text-decoration:none}
.stv-btn.ghost{background:transparent !important;color:#fff !important;border:1px solid var(--bd)}
.stv-btn.ghost:hover{border-color:var(--red) !important;text-decoration:none}
@media(max-width:640px){.stv-need{grid-template-columns:1fr}.rplan-grid{grid-template-columns:1fr}}
/* pricing tabs */
.stv-tabs{margin:0}
.stv-tabs input{position:absolute;opacity:0;pointer-events:none}
.stv-tablabels{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid var(--bd)}
.stv-tablabels label{cursor:pointer;padding:12px 20px;font-weight:600;font-size:15px;color:var(--mut);border:1px solid transparent;border-bottom:none;border-radius:10px 10px 0 0;transition:.2s}
.stv-tablabels label:hover{color:#fff}
.stv-tabpane{display:none;background:var(--card);border:1px solid var(--bd);border-radius:0 12px 12px 12px;padding:24px}
#r-std:checked~.stv-tablabels label[for="r-std"],
#r-prem:checked~.stv-tablabels label[for="r-prem"]{color:#fff;background:var(--card);border-color:var(--bd)}
#r-std:checked~.stv-panes .ps1,#r-prem:checked~.stv-panes .ps2{display:block}
.pack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}
.pack{position:relative;background:#0d0d0d;border:1px solid var(--bd);border-radius:14px;padding:26px 16px 22px;text-align:center;display:flex;flex-direction:column}
.pack.best{border:1.5px solid var(--red) !important;box-shadow:0 0 18px rgba(212,175,55,.22)}
.pack-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--red) !important;color:#000 !important;font-size:11px;font-weight:700;letter-spacing:.5px;padding:4px 12px;border-radius:30px;text-transform:uppercase;white-space:nowrap}
.pack .cr{font-size:17px;font-weight:700;margin-bottom:6px}
.pack .pr{font-size:30px;font-weight:800;color:#fff;margin-bottom:4px}
.pack .pc{font-size:12.5px;color:var(--mut);margin-bottom:18px;flex:1}
.pack-btn{display:block;padding:11px 16px;border-radius:50px;font-weight:700;font-size:14px;text-decoration:none}
.pack-btn.prim{background:var(--red) !important;color:#000 !important}.pack-btn.prim:hover{background:var(--accent) !important}
.pack-btn.ghost{background:transparent !important;color:#fff !important;border:1px solid var(--bd)}.pack-btn.ghost:hover{border-color:var(--red) !important}
@media(max-width:640px){.pack-grid{grid-template-columns:1fr}}

/* =========================================================
   HOW TO INSTALL IPTV — BRAMPTON IPTV 4K
   SEO / RANK MATH OPTIMIZED CONTENT
   HERO REMAINS SEPARATE
========================================================= */

.b4k-install {
  --gold:var(--ipb-gold);
  --gold2:var(--ipb-gold-2);
  --bg:#080808;
  --card:#121212;
  --card2:#181818;
  --border:#292929;
  --muted:#b8bbc3;
  --white:#fff;

  background:var(--bg);
  color:var(--white);
  width:100%;
  font-family:var(--ipb-font-body);
}

.b4k-install * {
  box-sizing:border-box;
}

.b4k-wrap {
  max-width:1120px;
  margin:0 auto;
  padding:76px 24px;
}

.b4k-install section {
  margin-bottom:88px;
}

.b4k-install section:last-child {
  margin-bottom:0;
}

.b4k-eyebrow {
  display:block;
  color:var(--gold2);
  text-transform:uppercase;
  letter-spacing:2px;
  font-size:12px;
  font-weight:800;
  text-align:center;
  margin-bottom:10px;
}

.b4k-install h2 {
  color:#fff;
  font-size:34px;
  line-height:1.25;
  font-weight:800;
  text-align:center;
  margin:0 0 16px;
}

.b4k-install h3 {
  color:#fff;
  font-size:17px;
  font-weight:700;
  line-height:1.4;
  margin:0 0 9px;
}

.b4k-install p {
  color:var(--muted);
  line-height:1.8;
}

.b4k-intro {
  max-width:820px;
  margin:0 auto 34px;
  text-align:center;
  font-size:15px;
  line-height:1.85;
}

.b4k-install a {
  color:var(--gold2);
}


/* ================================
   INTRODUCTION
================================ */

.b4k-introbox {
  max-width:900px;
  margin:0 auto;
  background:linear-gradient(145deg,#151515,#0d0d0d);
  border:1px solid var(--border);
  border-radius:16px;
  padding:30px 32px;
}

.b4k-introbox p {
  margin:0 0 15px;
  font-size:14.5px;
}

.b4k-introbox p:last-child {
  margin-bottom:0;
}

.b4k-note {
  margin-top:22px;
  padding:21px;
  background:rgba(212,175,55,.05);
  border:1px solid rgba(212,175,55,.30);
  border-left:4px solid var(--gold);
  border-radius:0 12px 12px 0;
}

.b4k-note strong {
  color:#fff;
}

.b4k-note p {
  font-size:13.5px;
  margin:6px 0 0;
}


/* ================================
   TABLE OF CONTENTS
================================ */

.b4k-toc {
  max-width:800px;
  margin:0 auto;
  background:var(--card);
  border:1px solid rgba(212,175,55,.35);
  border-radius:15px;
  padding:27px;
}

.b4k-toc-title {
  color:#fff;
  font-size:18px;
  font-weight:800;
  margin-bottom:18px;
  text-align:center;
}

.b4k-toc ol {
  margin:0;
  padding-left:22px;
  columns:2;
  column-gap:45px;
}

.b4k-toc li {
  margin:0 0 11px;
  color:var(--gold2);
  break-inside:avoid;
}

.b4k-toc a {
  color:#fff !important;
  text-decoration:none !important;
  font-size:13.5px;
}

.b4k-toc a:hover {
  color:var(--gold2) !important;
}


/* ================================
   DEVICE GRID
================================ */

.b4k-device-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:17px;
}

.b4k-device {
  display:block;
  padding:24px 18px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
  text-align:center;
  text-decoration:none !important;
  transition:.25s ease;
}

.b4k-device:hover {
  transform:translateY(-4px);
  border-color:var(--gold);
}

.b4k-device-icon {
  width:48px;
  height:48px;
  margin:0 auto 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  background:rgba(212,175,55,.08);
  border:1px solid rgba(212,175,55,.28);
  font-size:22px;
}

.b4k-device strong {
  display:block;
  color:#fff;
  font-size:14px;
  margin-bottom:5px;
}

.b4k-device span {
  color:var(--gold2);
  font-size:12px;
}


/* ================================
   STEPS
================================ */

.b4k-steps {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}

.b4k-step {
  background:var(--card);
  border:1px solid var(--border);
  border-radius:15px;
  padding:28px 23px;
}

.b4k-step-number {
  width:35px;
  height:35px;
  margin-bottom:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--gold);
  color:#000;
  font-size:13px;
  font-weight:900;
}

.b4k-step p {
  margin:0;
  font-size:13.5px;
}


/* ================================
   REQUIREMENTS
================================ */

.b4k-check-grid {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}

.b4k-check {
  display:flex;
  gap:14px;
  padding:20px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:13px;
}

.b4k-check-icon {
  flex:0 0 29px;
  width:29px;
  height:29px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  color:var(--gold2);
  font-weight:900;
}

.b4k-check strong {
  display:block;
  color:#fff;
  font-size:14px;
  margin-bottom:4px;
}

.b4k-check span {
  display:block;
  color:var(--muted);
  font-size:12.8px;
  line-height:1.65;
}


/* ================================
   EXTERNAL SOURCE
================================ */

.b4k-source {
  max-width:850px;
  margin:0 auto;
  padding:25px 27px;
  background:var(--card2);
  border-left:4px solid var(--gold);
  border-radius:0 14px 14px 0;
}

.b4k-source h3 {
  margin-bottom:8px;
}

.b4k-source p {
  margin:0;
  font-size:13.5px;
}

.b4k-source a {
  text-decoration:underline;
  text-underline-offset:3px;
}


/* ================================
   FAQ
================================ */

.b4k-faq {
  max-width:850px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.b4k-faq-item {
  background:var(--card);
  border:1px solid var(--border);
  border-radius:12px;
  overflow:hidden;
}

.b4k-faq-item.open {
  border-color:rgba(212,175,55,.7);
}

.b4k-faq-q {
  width:100%;
  background:transparent;
  border:0;
  padding:18px 20px;
  color:#fff;
  font-family:inherit;
  font-size:14px;
  font-weight:700;
  text-align:left;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  cursor:pointer;
}

.b4k-plus {
  width:25px;
  height:25px;
  flex:0 0 25px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  color:var(--gold2);
  transition:.25s;
}

.b4k-faq-item.open .b4k-plus {
  transform:rotate(45deg);
}

.b4k-faq-a {
  max-height:0;
  overflow:hidden;
  transition:max-height .35s ease;
}

.b4k-faq-content {
  padding:0 20px 19px;
  color:var(--muted);
  font-size:13.5px;
  line-height:1.75;
}


/* ================================
   CTA
================================ */

.b4k-cta {
  padding:45px 28px;
  background:
    radial-gradient(circle at top,rgba(212,175,55,.12),transparent 45%),
    var(--card);
  border:1px solid rgba(212,175,55,.35);
  border-radius:18px;
  text-align:center;
}

.b4k-cta p {
  max-width:650px;
  margin:0 auto 25px;
  font-size:14px;
}

.b4k-actions {
  display:flex;
  justify-content:center;
  gap:13px;
  flex-wrap:wrap;
}

.b4k-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 27px;
  border-radius:8px;
  text-decoration:none !important;
  font-size:14px;
  font-weight:800;
}

.b4k-btn-primary {
  background:var(--gold2);
  border:1px solid var(--gold2);
  color:#000 !important;
}

.b4k-btn-secondary {
  background:transparent;
  border:1px solid #444;
  color:#fff !important;
}


/* ================================
   RESPONSIVE
================================ */

@media(max-width:900px) {
  .b4k-device-grid {
    grid-template-columns:repeat(2,1fr);
  }

  .b4k-steps {
    grid-template-columns:1fr;
  }
}

@media(max-width:650px) {
  .b4k-wrap {
    padding:58px 18px;
  }

  .b4k-install section {
    margin-bottom:66px;
  }

  .b4k-install h2 {
    font-size:25px;
  }

  .b4k-device-grid,
  .b4k-check-grid {
    grid-template-columns:1fr;
  }

  .b4k-introbox {
    padding:23px 20px;
  }

  .b4k-toc ol {
    columns:1;
  }
}

.ipxleg { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --muted:#c9cbd1; font-family:var(--ipb-font-body); color:#fff; }
  .ipxleg * { box-sizing:border-box; margin:0; padding:0; }
  .ipxleg-wrap { max-width:820px; margin:0 auto; }
  .ipxleg-head { text-align:center; margin-bottom:36px; }
  .ipxleg-head h1 { font-size:34px; font-weight:800; margin-bottom:8px; }
  @media (max-width:600px){ .ipxleg-head h1{ font-size:26px; } }
  .ipxleg-head .updated { font-size:13px; color: var(--accent2) !important; font-weight:600; }
  .ipxleg-intro { font-size:15px; line-height:1.85; color:var(--muted); margin-bottom:30px; }
  .ipxleg-sec { margin-bottom:26px; }
  .ipxleg-sec h2 { font-size:18px; font-weight:700; color: var(--accent) !important; margin-bottom:10px; padding-bottom:8px; border-bottom:1px solid var(--ipb-card-border); }
  .ipxleg-sec p, .ipxleg-sec li { font-size:14px; line-height:1.8; color:var(--muted); }
  .ipxleg-sec ul { padding-left:20px; margin-top:6px; }
  .ipxleg-sec li { margin-bottom:6px; }
  .ipxleg a { color: var(--accent2) !important; text-decoration:underline; }

.ipxdmca { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --muted:#c9cbd1; font-family:var(--ipb-font-body); color:#fff; }
  .ipxdmca * { box-sizing:border-box; margin:0; padding:0; }
  .ipxdmca-wrap { max-width:820px; margin:0 auto; }
  .ipxdmca-head { text-align:center; margin-bottom:36px; }
  .ipxdmca-head h1 { font-size:34px; font-weight:800; margin-bottom:8px; }
  @media (max-width:600px){ .ipxdmca-head h1{ font-size:26px; } }
  .ipxdmca-head .updated { font-size:13px; color: var(--accent2) !important; font-weight:600; }
  .ipxdmca-intro { font-size:15px; line-height:1.85; color:var(--muted); margin-bottom:30px; }
  .ipxdmca-sec { margin-bottom:26px; }
  .ipxdmca-sec h2 { font-size:18px; font-weight:700; color: var(--accent) !important; margin-bottom:10px; padding-bottom:8px; border-bottom:1px solid var(--ipb-card-border); }
  .ipxdmca-sec p, .ipxdmca-sec li { font-size:14px; line-height:1.8; color:var(--muted); }
  .ipxdmca-sec ul { padding-left:20px; margin-top:6px; }
  .ipxdmca-sec li { margin-bottom:6px; }
  .ipxdmca a { color: var(--accent2) !important; text-decoration:underline; }

.ipxstv-steps { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:var(--ipb-card-border); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxstv-steps * { box-sizing:border-box; margin:0; padding:0; }
  .ipxstv-steps-wrap { max-width:820px; margin:0 auto; }
  .ipxstv-steps h2 { font-size:26px; font-weight:800; margin-bottom:8px; text-align:center; }
  @media (max-width:600px){ .ipxstv-steps h2{ font-size:21px; } }
  .ipxstv-steps-sub { font-size:13.5px; color: var(--accent) !important; font-weight:700; text-transform:uppercase; letter-spacing:.5px; text-align:center; display:block; margin-bottom:10px; }
  .ipxstv-steps-intro { font-size:14.5px; color:var(--muted); text-align:center; margin-bottom:26px; }
  .ipxstv-method { margin-bottom:28px; }
  .ipxstv-method h3.title { font-size:17px; font-weight:700; margin-bottom:14px; color: var(--accent) !important; }
  .ipxstv-row { display:flex; gap:16px; align-items:flex-start; padding:12px 0; border-bottom:1px solid #232323; }
  .ipxstv-row:last-child { border-bottom:none; }
  .ipxstv-steps .num { flex-shrink:0; width:28px; height:28px; border-radius:50%; border:2px solid var(--accent) !important; color: var(--accent) !important; font-weight:800; font-size:13px; display:flex; align-items:center; justify-content:center; }
  .ipxstv-row h4 { font-size:14.5px; font-weight:700; margin-bottom:4px; }
  .ipxstv-row p { font-size:13.5px; line-height:1.65; color:var(--muted); }

.ipxstv-tips { --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:var(--ipb-card-border); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxstv-tips * { box-sizing:border-box; margin:0; padding:0; }
  .ipxstv-tips-wrap { max-width:820px; margin:0 auto; }
  .ipxstv-tips h2 { font-size:24px; font-weight:800; margin-bottom:14px; }
  .ipxstv-tips p { font-size:14.5px; line-height:1.8; color:var(--muted); margin-bottom:14px; }
  .ipxstv-tips a { color: var(--accent2) !important; text-decoration:underline; }
  .ipxstv-alt { background:var(--card); border:1px solid var(--cardborder); border-radius:12px; padding:18px 20px; margin-top:18px; }
  .ipxstv-alt h3 { font-size:15px; font-weight:700; margin-bottom:8px; }
  .ipxstv-alt p { font-size:13.5px; margin:0; }

.ipxstv-faq { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:#4a3a10; --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxstv-faq * { box-sizing:border-box; margin:0; padding:0; }
  .ipxstv-faq-head { text-align:center; margin-bottom:30px; }
  .ipxstv-faq h2 { font-size:26px; font-weight:800; }
  .ipxstv-faq-list { max-width:800px; margin:0 auto; display:flex; flex-direction:column; gap:12px; }
  .ipxstv-faq .item { background:var(--card); border:1px solid var(--cardborder) !important; border-radius:10px; overflow:hidden; }
  .ipxstv-faq .item.open { border-color: var(--accent) !important; }
  .ipxstv-faq .q { width:100%; background:transparent; border:none; text-align:left; padding:16px 20px; font-family:inherit; font-size:14.5px; font-weight:700; color: var(--accent2) !important; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:12px; }
  .ipxstv-faq .plus { flex-shrink:0; width:22px; height:22px; border-radius:50%; background:rgba(212,175,55,.15) !important; color: var(--accent2) !important; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:800; transition:transform .25s; }
  .ipxstv-faq .item.open .plus { transform:rotate(45deg); }
  .ipxstv-faq .a { max-height:0; overflow:hidden; transition:max-height .3s ease; }
  .ipxstv-faq .a-inner { padding:0 20px 16px; font-size:13.5px; line-height:1.7; color:var(--muted); }
  .ipxstv-faq .a-inner a { color: var(--accent2) !important; text-decoration:underline; }

.ipxstv-cta { --accent:var(--ipb-gold); font-family:var(--ipb-font-body); text-align:center; color:#fff; }
  .ipxstv-cta * { box-sizing:border-box; margin:0; padding:0; }
  .ipxstv-cta h2 { font-size:26px; font-weight:800; margin-bottom:10px; }
  .ipxstv-cta p { font-size:15px; color:#c9cbd1; margin-bottom:18px; }
  .ipxstv-cta .actions { display:flex; justify-content:center; gap:14px; flex-wrap:wrap; }
  .ipxstv-cta a.primary { background: var(--accent) !important; color:#000 !important; font-weight:700; padding:13px 26px; border-radius:999px; text-decoration:none !important; }
  .ipxstv-cta a.secondary { background:transparent !important; color:#fff !important; font-weight:700; padding:13px 26px; border-radius:999px; border:1px solid #3a3a3a !important; text-decoration:none !important; }

/* =========================================================
   HOW TO SETUP IPTV ON ROKU — BRAMPTON IPTV 4K
   HERO REMAINS SEPARATE / UNCHANGED
========================================================= */

.brk-page{
  --gold:var(--ipb-gold);
  --gold2:var(--ipb-gold-2);
  --bg:#080808;
  --card:#121212;
  --card2:#181818;
  --border:#292929;
  --muted:#b8bbc4;
  --white:#fff;

  width:100%;
  background:var(--bg);
  color:var(--white);
  font-family:var(--ipb-font-body);
}

.brk-page *{
  box-sizing:border-box;
}

.brk-wrap{
  max-width:1120px;
  margin:0 auto;
  padding:78px 24px;
}

.brk-page section{
  margin-bottom:88px;
}

.brk-page section:last-child{
  margin-bottom:0;
}

.brk-eyebrow{
  display:block;
  margin-bottom:10px;
  color:var(--gold2);
  text-transform:uppercase;
  letter-spacing:2px;
  font-size:12px;
  font-weight:800;
  text-align:center;
}

.brk-page h2{
  margin:0 0 16px;
  color:#fff;
  font-size:34px;
  line-height:1.25;
  font-weight:800;
  text-align:center;
}

.brk-page h3{
  margin:0 0 9px;
  color:#fff;
  font-size:17px;
  line-height:1.4;
  font-weight:700;
}

.brk-page h4{
  margin:0 0 5px;
  color:#fff;
  font-size:14px;
  font-weight:700;
}

.brk-page p{
  color:var(--muted);
  line-height:1.8;
}

.brk-page a{
  color:var(--gold2);
}

.brk-intro{
  max-width:810px;
  margin:0 auto 36px;
  text-align:center;
  color:var(--muted);
  font-size:15px;
  line-height:1.85;
}


/* INTRO */

.brk-intro-box{
  max-width:900px;
  margin:0 auto;
  padding:31px 32px;
  background:linear-gradient(145deg,#151515,#0d0d0d);
  border:1px solid var(--border);
  border-radius:16px;
}

.brk-intro-box p{
  margin:0 0 15px;
  font-size:14.5px;
}

.brk-intro-box p:last-child{
  margin-bottom:0;
}

.brk-note{
  margin-top:22px;
  padding:21px 22px;
  background:rgba(212,175,55,.05);
  border:1px solid rgba(212,175,55,.30);
  border-left:4px solid var(--gold);
  border-radius:0 12px 12px 0;
}

.brk-note strong{
  color:#fff;
}

.brk-note p{
  margin:6px 0 0;
  font-size:13.5px;
}


/* TOC */

.brk-toc{
  max-width:820px;
  margin:0 auto;
  padding:27px;
  background:var(--card);
  border:1px solid rgba(212,175,55,.35);
  border-radius:15px;
}

.brk-toc-title{
  margin-bottom:17px;
  color:#fff;
  font-size:18px;
  font-weight:800;
  text-align:center;
}

.brk-toc ol{
  columns:2;
  column-gap:42px;
  margin:0;
  padding-left:24px;
}

.brk-toc li{
  margin-bottom:10px;
  color:var(--gold2);
  break-inside:avoid;
}

.brk-toc a{
  color:#fff !important;
  font-size:13.5px;
  text-decoration:none !important;
}


/* REQUIREMENTS */

.brk-needs{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.brk-need{
  padding:24px 21px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
}

.brk-num{
  width:34px;
  height:34px;
  margin-bottom:15px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  border:1px solid rgba(212,175,55,.35);
  color:var(--gold2);
  font-size:13px;
  font-weight:900;
}

.brk-need p{
  margin:0;
  font-size:13.3px;
}


/* METHODS */

.brk-method{
  max-width:900px;
  margin:0 auto 28px;
  padding:31px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:16px;
}

.brk-method:last-child{
  margin-bottom:0;
}

.brk-method-head{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:18px;
}

.brk-icon{
  width:45px;
  height:45px;
  flex:0 0 45px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:11px;
  background:rgba(212,175,55,.10);
  border:1px solid rgba(212,175,55,.30);
  font-size:21px;
}

.brk-method-head h3{
  margin:0;
  font-size:20px;
}

.brk-row{
  display:flex;
  gap:16px;
  padding:17px 0;
  border-top:1px solid #272727;
}

.brk-circle{
  flex:0 0 29px;
  width:29px;
  height:29px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:2px solid var(--gold);
  color:var(--gold2);
  font-size:12px;
  font-weight:900;
}

.brk-row p{
  margin:0;
  font-size:13px;
}


/* COMPATIBILITY */

.brk-compat{
  max-width:900px;
  margin:0 auto;
  padding:29px;
  background:var(--card2);
  border-left:4px solid var(--gold);
  border-radius:0 14px 14px 0;
}

.brk-compat h2{
  text-align:left;
  font-size:27px;
  margin-bottom:12px;
}

.brk-compat p{
  margin:0 0 13px;
  font-size:13.8px;
}

.brk-compat p:last-child{
  margin-bottom:0;
}

.brk-compat a{
  text-decoration:underline;
  text-underline-offset:3px;
}


/* TROUBLESHOOTING TIPS */

.brk-tips{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}

.brk-tip{
  display:flex;
  gap:14px;
  padding:20px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:13px;
}

.brk-check{
  flex:0 0 29px;
  width:29px;
  height:29px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  color:var(--gold2);
  font-weight:900;
}

.brk-tip strong{
  display:block;
  margin-bottom:4px;
  color:#fff;
  font-size:14px;
}

.brk-tip span{
  display:block;
  color:var(--muted);
  font-size:12.8px;
  line-height:1.65;
}


/* RELATED GUIDES */

.brk-related{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.brk-related-card{
  display:block;
  padding:23px 21px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
  text-decoration:none !important;
  transition:.25s ease;
}

.brk-related-card:hover{
  transform:translateY(-3px);
  border-color:var(--gold);
}

.brk-related-card h3{
  color:#fff !important;
}

.brk-related-card p{
  margin:0 0 8px;
  font-size:12.8px;
}

.brk-related-card span{
  color:var(--gold2);
  font-size:12px;
  font-weight:700;
}


/* FAQ */

.brk-faq{
  max-width:850px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.brk-faq-item{
  overflow:hidden;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:12px;
}

.brk-faq-item.open{
  border-color:rgba(212,175,55,.7);
}

.brk-faq-q{
  width:100%;
  padding:18px 20px;
  background:transparent;
  border:0;
  color:#fff;
  font-family:inherit;
  font-size:14px;
  font-weight:700;
  text-align:left;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}

.brk-plus{
  flex:0 0 25px;
  width:25px;
  height:25px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  color:var(--gold2);
  transition:.25s;
}

.brk-faq-item.open .brk-plus{
  transform:rotate(45deg);
}

.brk-faq-a{
  max-height:0;
  overflow:hidden;
  transition:max-height .35s ease;
}

.brk-faq-content{
  padding:0 20px 19px;
  color:var(--muted);
  font-size:13.5px;
  line-height:1.75;
}


/* CTA */

.brk-cta{
  padding:45px 28px;
  text-align:center;
  background:
    radial-gradient(circle at top,rgba(212,175,55,.12),transparent 45%),
    var(--card);
  border:1px solid rgba(212,175,55,.35);
  border-radius:18px;
}

.brk-cta p{
  max-width:650px;
  margin:0 auto 25px;
  font-size:14px;
}

.brk-actions{
  display:flex;
  justify-content:center;
  gap:13px;
  flex-wrap:wrap;
}

.brk-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 27px;
  border-radius:8px;
  text-decoration:none !important;
  font-size:14px;
  font-weight:800;
}

.brk-primary{
  background:var(--gold2);
  border:1px solid var(--gold2);
  color:#000 !important;
}

.brk-secondary{
  background:transparent;
  border:1px solid #444;
  color:#fff !important;
}


/* RESPONSIVE */

@media(max-width:900px){
  .brk-needs,
  .brk-related{
    grid-template-columns:1fr;
  }
}

@media(max-width:700px){

  .brk-wrap{
    padding:58px 18px;
  }

  .brk-page section{
    margin-bottom:67px;
  }

  .brk-page h2{
    font-size:25px;
  }

  .brk-tips{
    grid-template-columns:1fr;
  }

  .brk-toc ol{
    columns:1;
  }

  .brk-intro-box,
  .brk-method{
    padding:23px 20px;
  }

  .brk-compat{
    padding:25px 21px;
  }
}

.ipxfm-ov { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:var(--ipb-card-border); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxfm-ov * { box-sizing:border-box; margin:0; padding:0; }
  .ipxfm-ov-wrap { max-width:820px; margin:0 auto; }
  .ipxfm-ov h2 { font-size:26px; font-weight:800; margin-bottom:14px; }
  .ipxfm-ov p { font-size:15px; line-height:1.8; color:var(--muted); margin-bottom:14px; }
  .ipxfm-ov a { color: var(--accent2) !important; text-decoration:underline; }
  .ipxfm-toc { background:var(--card); border:1px solid var(--cardborder); border-radius:12px; padding:16px 20px; margin:18px 0 24px; }
  .ipxfm-toc strong { display:block; margin-bottom:8px; }
  .ipxfm-toc a { display:inline-block; margin:3px 14px 3px 0; font-size:13.5px; }
  .ipxfm-note { display:flex; gap:12px; align-items:flex-start; background:var(--card); border:1px solid var(--cardborder); border-left:3px solid var(--accent) !important; border-radius:10px; padding:16px 18px; margin-bottom:24px; }
  .ipxfm-note p { margin:0; font-size:13.5px; }
  .ipxfm-need { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
  @media (max-width:700px){ .ipxfm-need{ grid-template-columns:1fr; } }
  .ipxfm-need .it { background:var(--card); border:1px solid var(--cardborder); border-radius:12px; padding:18px 16px; }
  .ipxfm-need .it .n { width:36px; height:36px; border-radius:50%; background:rgba(212,175,55,.14) !important; border:1px solid rgba(212,175,55,.4) !important; display:flex; align-items:center; justify-content:center; margin-bottom:10px; font-weight:800; color: var(--accent2) !important; }
  .ipxfm-need h3 { font-size:15px; font-weight:700; margin-bottom:6px; }
  .ipxfm-need p { font-size:13px; margin:0; }

.ipxfm-steps { --accent:var(--ipb-gold); --card:var(--ipb-card); --cardborder:var(--ipb-card-border); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxfm-steps * { box-sizing:border-box; margin:0; padding:0; }
  .ipxfm-steps-wrap { max-width:820px; margin:0 auto; }
  .ipxfm-steps h2 { font-size:26px; font-weight:800; margin-bottom:8px; }
  .ipxfm-steps-sub { font-size:13.5px; color:var(--accent); font-weight:700; text-transform:uppercase; letter-spacing:.5px; margin-bottom:16px; display:block; }
  .ipxfm-steps-intro { font-size:14.5px; color:var(--muted); margin-bottom:24px; }
  .ipxfm-method { margin-bottom:28px; }
  .ipxfm-method h3.title { font-size:17px; font-weight:700; margin-bottom:14px; color: var(--accent) !important; }
  .ipxfm-row { display:flex; gap:16px; align-items:flex-start; padding:12px 0; border-bottom:1px solid #232323; }
  .ipxfm-row:last-child { border-bottom:none; }
  .ipxfm-steps .num { flex-shrink:0; width:28px; height:28px; border-radius:50%; border:2px solid var(--accent) !important; color: var(--accent) !important; font-weight:800; font-size:13px; display:flex; align-items:center; justify-content:center; }
  .ipxfm-row h4 { font-size:14.5px; font-weight:700; margin-bottom:4px; }
  .ipxfm-row p { font-size:13.5px; line-height:1.65; color:var(--muted); }

.ipxfm-tips { --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:var(--ipb-card-border); --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxfm-tips * { box-sizing:border-box; margin:0; padding:0; }
  .ipxfm-tips-wrap { max-width:820px; margin:0 auto; }
  .ipxfm-tips h2 { font-size:24px; font-weight:800; margin-bottom:14px; }
  .ipxfm-tips p { font-size:14.5px; line-height:1.8; color:var(--muted); margin-bottom:14px; }
  .ipxfm-tips a { color: var(--accent2) !important; text-decoration:underline; }
  .ipxfm-alt { background:var(--card); border:1px solid var(--cardborder); border-radius:12px; padding:18px 20px; margin-top:18px; }
  .ipxfm-alt h3 { font-size:15px; font-weight:700; margin-bottom:8px; }
  .ipxfm-alt p { font-size:13.5px; margin:0; }

.ipxfm-faq { --accent:var(--ipb-gold); --accent2:var(--ipb-gold-2); --card:var(--ipb-card); --cardborder:#4a3a10; --muted:var(--ipb-muted); font-family:var(--ipb-font-body); color:#fff; }
  .ipxfm-faq * { box-sizing:border-box; margin:0; padding:0; }
  .ipxfm-faq-head { text-align:center; margin-bottom:30px; }
  .ipxfm-faq h2 { font-size:26px; font-weight:800; }
  .ipxfm-faq-list { max-width:800px; margin:0 auto; display:flex; flex-direction:column; gap:12px; }
  .ipxfm-faq .item { background:var(--card); border:1px solid var(--cardborder) !important; border-radius:10px; overflow:hidden; }
  .ipxfm-faq .item.open { border-color: var(--accent) !important; }
  .ipxfm-faq .q { width:100%; background:transparent; border:none; text-align:left; padding:16px 20px; font-family:inherit; font-size:14.5px; font-weight:700; color: var(--accent2) !important; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:12px; }
  .ipxfm-faq .plus { flex-shrink:0; width:22px; height:22px; border-radius:50%; background:rgba(212,175,55,.15) !important; color: var(--accent2) !important; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:800; transition:transform .25s; }
  .ipxfm-faq .item.open .plus { transform:rotate(45deg); }
  .ipxfm-faq .a { max-height:0; overflow:hidden; transition:max-height .3s ease; }
  .ipxfm-faq .a-inner { padding:0 20px 16px; font-size:13.5px; line-height:1.7; color:var(--muted); }
  .ipxfm-faq .a-inner a { color: var(--accent2) !important; text-decoration:underline; }

.ipxfm-cta { --accent:var(--ipb-gold); font-family:var(--ipb-font-body); text-align:center; color:#fff; }
  .ipxfm-cta * { box-sizing:border-box; margin:0; padding:0; }
  .ipxfm-cta h2 { font-size:26px; font-weight:800; margin-bottom:10px; }
  .ipxfm-cta p { font-size:15px; color:#c9cbd1; margin-bottom:18px; }
  .ipxfm-cta .actions { display:flex; justify-content:center; gap:14px; flex-wrap:wrap; }
  .ipxfm-cta a.primary { background: var(--accent) !important; color:#000 !important; font-weight:700; padding:13px 26px; border-radius:999px; text-decoration:none !important; }
  .ipxfm-cta a.secondary { background:transparent !important; color:#fff !important; font-weight:700; padding:13px 26px; border-radius:999px; border:1px solid #3a3a3a !important; text-decoration:none !important; }

/* =========================================================
   HOW TO SETUP IPTV ON ANDROID PHONE
   BRAMPTON IPTV 4K
   HERO IS SEPARATE AND REMAINS UNCHANGED
========================================================= */

.bap-page{
  --gold:var(--ipb-gold);
  --gold2:var(--ipb-gold-2);
  --bg:#080808;
  --card:#121212;
  --card2:#181818;
  --border:#292929;
  --muted:#b8bbc4;
  --white:#fff;

  width:100%;
  background:var(--bg);
  color:var(--white);
  font-family:var(--ipb-font-body);
}

.bap-page *{
  box-sizing:border-box;
}

.bap-wrap{
  max-width:1120px;
  margin:0 auto;
  padding:78px 24px;
}

.bap-page section{
  margin-bottom:88px;
}

.bap-page section:last-child{
  margin-bottom:0;
}

.bap-eyebrow{
  display:block;
  margin-bottom:10px;
  color:var(--gold2);
  text-transform:uppercase;
  letter-spacing:2px;
  font-size:12px;
  font-weight:800;
  text-align:center;
}

.bap-page h2{
  margin:0 0 16px;
  color:#fff;
  font-size:34px;
  line-height:1.25;
  font-weight:800;
  text-align:center;
}

.bap-page h3{
  margin:0 0 9px;
  color:#fff;
  font-size:17px;
  line-height:1.4;
  font-weight:700;
}

.bap-page h4{
  margin:0 0 5px;
  color:#fff;
  font-size:14px;
  font-weight:700;
}

.bap-page p{
  color:var(--muted);
  line-height:1.8;
}

.bap-page a{
  color:var(--gold2);
}

.bap-section-intro{
  max-width:810px;
  margin:0 auto 36px;
  color:var(--muted);
  text-align:center;
  font-size:15px;
  line-height:1.85;
}


/* =========================================================
   INTRO
========================================================= */

.bap-intro-box{
  max-width:900px;
  margin:0 auto;
  padding:31px 32px;
  background:linear-gradient(145deg,#151515,#0d0d0d);
  border:1px solid var(--border);
  border-radius:16px;
}

.bap-intro-box p{
  margin:0 0 15px;
  font-size:14.5px;
}

.bap-intro-box p:last-child{
  margin-bottom:0;
}

.bap-note{
  margin-top:22px;
  padding:21px 22px;
  background:rgba(212,175,55,.05);
  border:1px solid rgba(212,175,55,.30);
  border-left:4px solid var(--gold);
  border-radius:0 12px 12px 0;
}

.bap-note strong{
  color:#fff;
}

.bap-note p{
  margin:6px 0 0;
  font-size:13.5px;
}


/* =========================================================
   TOC
========================================================= */

.bap-toc{
  max-width:820px;
  margin:0 auto;
  padding:27px;
  background:var(--card);
  border:1px solid rgba(212,175,55,.35);
  border-radius:15px;
}

.bap-toc-title{
  margin-bottom:17px;
  color:#fff;
  font-size:18px;
  font-weight:800;
  text-align:center;
}

.bap-toc ol{
  columns:2;
  column-gap:42px;
  margin:0;
  padding-left:24px;
}

.bap-toc li{
  margin-bottom:10px;
  color:var(--gold2);
  break-inside:avoid;
}

.bap-toc a{
  color:#fff !important;
  font-size:13.5px;
  text-decoration:none !important;
}

.bap-toc a:hover{
  color:var(--gold2) !important;
}


/* =========================================================
   REQUIREMENTS
========================================================= */

.bap-requirements{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.bap-requirement{
  padding:24px 21px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
}

.bap-num{
  width:34px;
  height:34px;
  margin-bottom:15px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  border:1px solid rgba(212,175,55,.35);
  color:var(--gold2);
  font-size:13px;
  font-weight:900;
}

.bap-requirement p{
  margin:0;
  font-size:13.3px;
}


/* =========================================================
   STEPS
========================================================= */

.bap-steps{
  max-width:900px;
  margin:0 auto;
}

.bap-step{
  display:flex;
  gap:18px;
  padding:24px 0;
  border-bottom:1px solid #292929;
}

.bap-step:last-child{
  border-bottom:0;
}

.bap-step-number{
  flex:0 0 36px;
  width:36px;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--gold);
  color:#000;
  font-size:13px;
  font-weight:900;
}

.bap-step p{
  margin:0;
  font-size:13.7px;
}


/* =========================================================
   LOGIN METHODS
========================================================= */

.bap-method-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}

.bap-method{
  padding:27px 24px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:15px;
}

.bap-method-icon{
  width:44px;
  height:44px;
  margin-bottom:15px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:11px;
  background:rgba(212,175,55,.10);
  border:1px solid rgba(212,175,55,.30);
  font-size:20px;
}

.bap-method p{
  margin:0;
  font-size:13.5px;
}


/* =========================================================
   WIFI / MOBILE DATA
========================================================= */

.bap-network{
  max-width:900px;
  margin:0 auto;
  padding:30px;
  background:var(--card2);
  border-left:4px solid var(--gold);
  border-radius:0 14px 14px 0;
}

.bap-network h2{
  margin-bottom:12px;
  text-align:left;
  font-size:27px;
}

.bap-network p{
  margin:0 0 13px;
  font-size:13.8px;
}

.bap-network p:last-child{
  margin-bottom:0;
}

.bap-network a{
  text-decoration:underline;
  text-underline-offset:3px;
}


/* =========================================================
   TIPS
========================================================= */

.bap-tips{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}

.bap-tip{
  display:flex;
  gap:14px;
  padding:20px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:13px;
}

.bap-check{
  flex:0 0 29px;
  width:29px;
  height:29px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  color:var(--gold2);
  font-weight:900;
}

.bap-tip strong{
  display:block;
  margin-bottom:4px;
  color:#fff;
  font-size:14px;
}

.bap-tip span{
  display:block;
  color:var(--muted);
  font-size:12.8px;
  line-height:1.65;
}


/* =========================================================
   RELATED GUIDES
========================================================= */

.bap-related{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.bap-related-card{
  display:block;
  padding:23px 21px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
  text-decoration:none !important;
  transition:.25s ease;
}

.bap-related-card:hover{
  transform:translateY(-3px);
  border-color:var(--gold);
}

.bap-related-card h3{
  color:#fff !important;
}

.bap-related-card p{
  margin:0 0 8px;
  font-size:12.8px;
}

.bap-related-card span{
  color:var(--gold2);
  font-size:12px;
  font-weight:700;
}


/* =========================================================
   FAQ
========================================================= */

.bap-faq{
  max-width:850px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.bap-faq-item{
  overflow:hidden;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:12px;
}

.bap-faq-item.open{
  border-color:rgba(212,175,55,.70);
}

.bap-faq-q{
  width:100%;
  padding:18px 20px;
  background:transparent;
  border:0;
  color:#fff;
  font-family:inherit;
  font-size:14px;
  font-weight:700;
  text-align:left;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}

.bap-plus{
  flex:0 0 25px;
  width:25px;
  height:25px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(212,175,55,.12);
  color:var(--gold2);
  transition:.25s;
}

.bap-faq-item.open .bap-plus{
  transform:rotate(45deg);
}

.bap-faq-a{
  max-height:0;
  overflow:hidden;
  transition:max-height .35s ease;
}

.bap-faq-content{
  padding:0 20px 19px;
  color:var(--muted);
  font-size:13.5px;
  line-height:1.75;
}


/* =========================================================
   CTA
========================================================= */

.bap-cta{
  padding:45px 28px;
  text-align:center;
  background:
    radial-gradient(circle at top,rgba(212,175,55,.12),transparent 45%),
    var(--card);
  border:1px solid rgba(212,175,55,.35);
  border-radius:18px;
}

.bap-cta p{
  max-width:650px;
  margin:0 auto 25px;
  font-size:14px;
}

.bap-actions{
  display:flex;
  justify-content:center;
  gap:13px;
  flex-wrap:wrap;
}

.bap-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 27px;
  border-radius:8px;
  text-decoration:none !important;
  font-size:14px;
  font-weight:800;
}

.bap-primary{
  background:var(--gold2);
  border:1px solid var(--gold2);
  color:#000 !important;
}

.bap-secondary{
  background:transparent;
  border:1px solid #444;
  color:#fff !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:900px){

  .bap-requirements,
  .bap-related{
    grid-template-columns:1fr;
  }

}

@media(max-width:700px){

  .bap-wrap{
    padding:58px 18px;
  }

  .bap-page section{
    margin-bottom:67px;
  }

  .bap-page h2{
    font-size:25px;
  }

  .bap-method-grid,
  .bap-tips{
    grid-template-columns:1fr;
  }

  .bap-toc ol{
    columns:1;
  }

  .bap-intro-box{
    padding:23px 20px;
  }

  .bap-network{
    padding:25px 21px;
  }

}