{"id":3079,"date":"2025-03-07T00:50:07","date_gmt":"2025-03-07T00:50:07","guid":{"rendered":"https:\/\/trexiptv-8k.com\/?page_id=3079"},"modified":"2026-09-29T02:35:05","modified_gmt":"2026-09-29T02:35:05","slug":"1-month-subscription","status":"publish","type":"page","link":"https:\/\/trexiptv-8k.com\/en\/1-month-subscription\/","title":{"rendered":"1-month-subscription"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3079\" class=\"elementor elementor-3079\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f413496 e-con-full e-flex e-con e-parent\" data-id=\"f413496\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f212bf2 elementor-widget elementor-widget-html\" data-id=\"f212bf2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"background-color: #fff3cd; color: #856404; padding: 10px; border: 1px solid #ffeeba; border-radius: 5px; margin-bottom: 20px;\">\r\n    \u26a0\ufe0f <strong>Note:<\/strong> Submitting this form does <u>not<\/u> complete your order. You will receive payment instructions by email. Your subscription will be activated only after we receive your payment.\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-4f9bcac elementor-section-stretched elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"4f9bcac\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;stretch_section&quot;:&quot;section-stretched&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-top-column elementor-element elementor-element-f8173a0\" data-id=\"f8173a0\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-665cfba elementor-widget elementor-widget-html\" data-id=\"665cfba\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \u2705 Final 1-Month IPTV Pricing Card (Cloned from 3-Month Structure) -->\r\n<div class=\"pricing-card\" id=\"pricing-card\">\r\n  <!-- Current Plan Header -->\r\n  <div class=\"plan-header\">\r\n    <h3 id=\"plan-title\">1 Month \u2013 1 Connection<\/h3>\r\n    <p class=\"price\" id=\"main-price\">\r\n      <span id=\"original-price\">11,99&nbsp;\u20ac<\/span>\r\n      <span id=\"discounted-price\" style=\"display:none; font-weight:600; color:green;\">\r\n        \u2192 <strong><span id=\"final-price\">9.00<\/span>&nbsp;\u20ac<\/strong>\r\n      <\/span>\r\n    <\/p>\r\n    <p id=\"savings-text\" style=\"font-size:13px; margin-top:-10px; display:none; color:#0073aa;\"><\/p>\r\n  <\/div>\r\n\r\n  <!-- Features List -->\r\n  <ul class=\"features-list\">\r\n    <li><i class=\"fas fa-check-circle\"><\/i> +9,000 Channels<\/li>\r\n    <li><i class=\"fas fa-check-circle\"><\/i> +10,000 Films & Series<\/li>\r\n    <li><i class=\"fas fa-check-circle\"><\/i> 4K\/8K\/FHD\/HD\/SD Quality<\/li>\r\n    <li><i class=\"fas fa-check-circle\"><\/i> Adult +18<\/li>\r\n   \r\n    <li><i class=\"fas fa-check-circle\"><\/i> Free & Auto Updates<\/li>\r\n    <li><i class=\"fas fa-check-circle\"><\/i> TV Guide (EPG)<\/li>\r\n    <li><i class=\"fas fa-check-circle\"><\/i> Anti Buffering<\/li>\r\n    <li><i class=\"fas fa-check-circle\"><\/i> 24\/7 Support<\/li>\r\n    \r\n     <li><i class=\"fas fa-times-circle\"><\/i> Free App Activation<\/li>\r\n  <\/ul>\r\n\r\n  <!-- Enhanced Plan Switcher -->\r\n  <div class=\"plan-switcher-mini\">\r\n    <div class=\"divider\"><\/div>\r\n    <p class=\"switcher-text\">Prefer a different plan?\r\n      <a href=\"\/pricing\" target=\"_blank\" class=\"switcher-link\">\r\n        <span class=\"link-text\">Compare all plans<\/span>\r\n        <i class=\"fas fa-external-link-alt\"><\/i>\r\n      <\/a>\r\n    <\/p>\r\n  <\/div>\r\n<\/div>\r\n\r\n<style>\r\n.pricing-card {\r\n  position: relative;\r\n  padding-bottom: 5px;\r\n}\r\n.plan-switcher-mini {\r\n  margin-top: 8px;\r\n  padding: 12px 0 8px;\r\n}\r\n.divider {\r\n  height: 1px;\r\n  background: linear-gradient(90deg, transparent, #e0e0e0 20%, #e0e0e0 80%, transparent);\r\n  margin: 10px 0 12px;\r\n}\r\n.switcher-link {\r\n  color: #2a7fdb;\r\n  text-decoration: none;\r\n  font-weight: 500;\r\n  display: inline-flex;\r\n  align-items: center;\r\n  gap: 5px;\r\n  padding: 4px 8px;\r\n  border-radius: 4px;\r\n  transition: all 0.25s ease;\r\n}\r\n.switcher-link:hover {\r\n  background-color: #f0f7ff;\r\n  text-decoration: none;\r\n  transform: translateY(-1px);\r\n}\r\n.switcher-link .link-text::after {\r\n  content: '';\r\n  position: absolute;\r\n  bottom: -1px;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 1px;\r\n  background-color: currentColor;\r\n  transform: scaleX(0);\r\n  transition: transform 0.25s ease;\r\n}\r\n.switcher-link:hover .link-text::after {\r\n  transform: scaleX(1);\r\n}\r\n.switcher-link i {\r\n  font-size: 11px;\r\n  transition: transform 0.2s ease;\r\n}\r\n.switcher-link:hover i {\r\n  transform: translateX(2px);\r\n}\r\n@media (max-width: 480px) {\r\n  .plan-switcher-mini { padding: 10px 0; }\r\n  .switcher-link { padding: 3px 6px; }\r\n}\r\n<\/style>\r\n\r\n<script>\r\nconst priceMap = { 1: 11.99, 2: 19.99, 3: 27.99, 4: 36.99 };\r\nconst couponDiscounts = {\r\n  \"SAVE2\": 2\r\n};\r\n\r\ndocument.addEventListener(\"DOMContentLoaded\", function () {\r\n  const priceEl = document.getElementById(\"main-price\");\r\n  const titleEl = document.getElementById(\"plan-title\");\r\n  const savingsText = document.getElementById(\"savings-text\");\r\n\r\n  const urlParams = new URLSearchParams(window.location.search);\r\n  let currentConn = parseInt(urlParams.get(\"conn\")) || 1;\r\n  const couponCode = urlParams.get(\"coupon\") || \"\";\r\n\r\n  function updatePricing(conn, coupon = \"\") {\r\n    if (!priceMap[conn]) conn = 1;\r\n\r\n    const basePrice = priceMap[conn];\r\n    const upperCoupon = coupon.toUpperCase();\r\n    const discountAmount = couponDiscounts[upperCoupon] || 0;\r\n    const finalPrice = Math.max(basePrice - discountAmount, 0);\r\n\r\n    \/\/ Update title\r\n    titleEl.textContent = `1 Month \u2013 ${conn} Connection${conn > 1 ? 's' : ''}`;\r\n\r\n    if (discountAmount > 0) {\r\n      priceEl.innerHTML = `\r\n        <div style=\"font-weight:600; font-size: 2rem; color: #198754;\">\r\n          <del style=\"color:#444; font-weight:500;\"> ${basePrice} \u20ac<\/del>\r\n          &nbsp;\u2192 <span style=\"font-weight:700;\">\ud83c\udf89 ${finalPrice.toFixed(2)} \u20ac<\/span>\r\n        <\/div>\r\n        <p style=\"font-size:14px; color:#0073aa; margin-top:4px;\">\r\n          You save \u20ac${discountAmount.toFixed(2)}\r\n        <\/p>\r\n      `;\r\n    } else {\r\n      priceEl.innerHTML = `<span style=\"font-size: 2rem; font-weight: bold; color: #00aaff;\">${basePrice} \u20ac<\/span>`;\r\n    }\r\n\r\n    \/\/ Update URL\r\n    urlParams.set(\"conn\", conn);\r\n    if (coupon) {\r\n      urlParams.set(\"coupon\", coupon);\r\n    } else {\r\n      urlParams.delete(\"coupon\");\r\n    }\r\n    history.replaceState({}, \"\", `?${urlParams.toString()}`);\r\n  }\r\n\r\n  \/\/ Expose function for order form JS\r\n  window.update1MonthPricingCard = updatePricing;\r\n\r\n  \/\/ Init with current settings\r\n  updatePricing(currentConn, couponCode);\r\n\r\n  \/\/ Listen to events from form\r\n  document.addEventListener(\"connectionChanged\", function (e) {\r\n    updatePricing(e.detail.conn, e.detail.coupon);\r\n  });\r\n});\r\n<\/script>\r\n\r\n\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-66 elementor-top-column elementor-element elementor-element-044d8f3\" data-id=\"044d8f3\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-e9eb257 elementor-widget elementor-widget-html\" data-id=\"e9eb257\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- =========================================================\n     TREX IPTV - 1 MONTH ORDER FORM\n     Improved reusable layout\n     ========================================================= -->\n\n<div\n  id=\"trexiptv-form-wrapper\"\n  class=\"trex-order-wrapper\"\n  data-no-dynamic-translation=\"1\"\n  data-plan=\"1 Month Subscription\"\n  data-default-conn=\"1\"\n>\n\n  <!-- =======================================================\n       TOP SUCCESS \/ ERROR MESSAGE\n       ======================================================= -->\n  <div\n    id=\"form-response\"\n    class=\"trex-response\"\n    role=\"alert\"\n    aria-live=\"polite\"\n    aria-atomic=\"true\"\n  >\n    <div class=\"trex-response-icon\" id=\"response-icon\">\u2713<\/div>\n\n    <div class=\"trex-response-content\">\n      <div class=\"trex-response-title\" id=\"response-title\"><\/div>\n      <div class=\"trex-response-text\" id=\"response-text\"><\/div>\n    <\/div>\n\n    <button\n      type=\"button\"\n      class=\"trex-response-close\"\n      id=\"response-close\"\n      aria-label=\"Close message\"\n    >\u00d7<\/button>\n  <\/div>\n\n\n  <!-- =======================================================\n       HEADER\n       ======================================================= -->\n  <div class=\"trex-form-header\">\n\n    <div class=\"trex-form-kicker\">\n      <span class=\"trex-kicker-dot\"><\/span>\n      TREX IPTV\n    <\/div>\n\n    <h2 id=\"form-title\">\n      1 Month Subscription \u2013 1 Connection\n    <\/h2>\n\n    <p class=\"trex-form-subtitle\">\n      Choose the number of connections that suits you and complete your order below.\n    <\/p>\n\n    <div class=\"trex-trust-row\">\n      <span>\u2713 Fast Activation<\/span>\n      <span>\u2713 Stable Streaming<\/span>\n      <span>\u2713 Secure Order<\/span>\n    <\/div>\n\n  <\/div>\n\n\n  <!-- =======================================================\n       FORM\n       ======================================================= -->\n  <form id=\"trexiptv-form\" method=\"post\" novalidate>\n\n    <input\n      type=\"hidden\"\n      name=\"plan\"\n      id=\"trex-plan\"\n      value=\"1 Month Subscription\"\n    >\n\n    <input\n      type=\"hidden\"\n      name=\"refcode\"\n      id=\"trex-refcode\"\n      value=\"5\"\n    >\n\n    <input\n      type=\"hidden\"\n      name=\"conn\"\n      id=\"conn-count\"\n      value=\"1\"\n    >\n\n    <!-- Display\/helper value only.\n         Server-side PHP must recalculate the real amount. -->\n    <input\n      type=\"hidden\"\n      name=\"final_price\"\n      id=\"final-price-value\"\n      value=\"11.99\"\n    >\n\n    <input\n      type=\"hidden\"\n      name=\"action\"\n      value=\"trexiptv_send_mail\"\n    >\n\n\n    <!-- =====================================================\n         CUSTOMER INFORMATION\n         ===================================================== -->\n    <div class=\"trex-section\">\n\n      <div class=\"trex-section-heading\">\n        <span class=\"trex-section-number\">1<\/span>\n        <div>\n          <strong>Your Information<\/strong>\n          <small>Enter your details to receive the order confirmation.<\/small>\n        <\/div>\n      <\/div>\n\n      <div class=\"trex-fields-grid\">\n\n        <div class=\"trex-field\">\n          <label for=\"trex-name\">\n            Name <span class=\"required\">*<\/span>\n          <\/label>\n\n          <input\n            id=\"trex-name\"\n            type=\"text\"\n            name=\"name\"\n            autocomplete=\"name\"\n            placeholder=\"Your full name\"\n            required\n          >\n        <\/div>\n\n\n        <div class=\"trex-field\">\n          <label for=\"trex-email\">\n            Email <span class=\"required\">*<\/span>\n          <\/label>\n\n          <input\n            id=\"trex-email\"\n            type=\"email\"\n            name=\"email\"\n            autocomplete=\"email\"\n            placeholder=\"you@example.com\"\n            required\n          >\n        <\/div>\n\n\n        <div class=\"trex-field trex-field-full\">\n          <label for=\"trex-country\">\n            Country <span class=\"required\">*<\/span>\n          <\/label>\n\n          <input\n            id=\"trex-country\"\n            type=\"text\"\n            name=\"country\"\n            autocomplete=\"country-name\"\n            placeholder=\"Your country\"\n            required\n          >\n        <\/div>\n\n      <\/div>\n    <\/div>\n\n\n    <!-- =====================================================\n         CONNECTION SELECTION\n         ===================================================== -->\n    <div class=\"trex-section\">\n\n      <div class=\"trex-section-heading\">\n        <span class=\"trex-section-number\">2<\/span>\n\n        <div>\n          <strong>Choose Connections<\/strong>\n          <small>Select how many devices you want to use.<\/small>\n        <\/div>\n      <\/div>\n\n\n      <div class=\"trex-current-selection\" id=\"current-selection\">\n        <span class=\"selection-label\">Current selection<\/span>\n\n        <span class=\"selection-value\">\n          <span id=\"current-conn-number\">1<\/span>\n          <span id=\"current-conn-label\">Connection<\/span>\n        <\/span>\n      <\/div>\n\n\n      <!-- MOBILE \/ TABLET CARDS -->\n      <div\n        class=\"pricing-grid\"\n        id=\"trex-pricing-grid\"\n        data-trex-pricing\n      >\n\n        <button type=\"button\" class=\"pricing-option active\" data-conn=\"1\">\n          <span class=\"option-top\">\n            <span class=\"option-icon\">\u25a3<\/span>\n          <\/span>\n          <span class=\"conn-count\">1 Connection<\/span>\n          <span class=\"price\" data-price-for=\"1\">\u20ac11.99<\/span>\n          <span class=\"option-check\">\u2713<\/span>\n        <\/button>\n\n\n        <button type=\"button\" class=\"pricing-option\" data-conn=\"2\">\n          <span class=\"option-top\">\n            <span class=\"option-icon\">\u25a3<\/span>\n          <\/span>\n          <span class=\"conn-count\">2 Connections<\/span>\n          <span class=\"price\" data-price-for=\"2\">\u20ac19.99<\/span>\n          <span class=\"option-check\">\u2713<\/span>\n        <\/button>\n\n\n        <button type=\"button\" class=\"pricing-option popular-option\" data-conn=\"3\">\n          <span class=\"popular-badge\">POPULAR<\/span>\n          <span class=\"option-top\">\n            <span class=\"option-icon\">\u25a3<\/span>\n          <\/span>\n          <span class=\"conn-count\">3 Connections<\/span>\n          <span class=\"price\" data-price-for=\"3\">\u20ac27.99<\/span>\n          <span class=\"option-check\">\u2713<\/span>\n        <\/button>\n\n\n        <button type=\"button\" class=\"pricing-option\" data-conn=\"4\">\n          <span class=\"option-top\">\n            <span class=\"option-icon\">\u25a3<\/span>\n          <\/span>\n          <span class=\"conn-count\">4 Connections<\/span>\n          <span class=\"price\" data-price-for=\"4\">\u20ac36.99<\/span>\n          <span class=\"option-check\">\u2713<\/span>\n        <\/button>\n\n      <\/div>\n\n\n      <!-- DESKTOP SWITCHER -->\n      <div id=\"connection-switcher\">\n\n        <button type=\"button\" class=\"conn-btn active\" data-conn=\"1\">\n          <span class=\"conn-main\">1 Connection<\/span>\n          <span class=\"conn-price\">\u20ac11.99<\/span>\n        <\/button>\n\n        <button type=\"button\" class=\"conn-btn\" data-conn=\"2\">\n          <span class=\"conn-main\">2 Connections<\/span>\n          <span class=\"conn-price\">\u20ac19.99<\/span>\n        <\/button>\n\n        <button type=\"button\" class=\"conn-btn\" data-conn=\"3\">\n          <span class=\"conn-main\">3 Connections<\/span>\n          <span class=\"conn-price\">\u20ac27.99<\/span>\n          <span class=\"desktop-popular\">POPULAR<\/span>\n        <\/button>\n\n        <button type=\"button\" class=\"conn-btn\" data-conn=\"4\">\n          <span class=\"conn-main\">4 Connections<\/span>\n          <span class=\"conn-price\">\u20ac36.99<\/span>\n        <\/button>\n\n      <\/div>\n\n    <\/div>\n\n\n    <!-- =====================================================\n         COUPON\n         ===================================================== -->\n    <div class=\"trex-section\">\n\n      <div class=\"trex-section-heading\">\n        <span class=\"trex-section-number\">3<\/span>\n\n        <div>\n          <strong>Have a Coupon?<\/strong>\n          <small>Enter your promotional code below.<\/small>\n        <\/div>\n      <\/div>\n\n\n      <div class=\"coupon-box\">\n\n        <div class=\"coupon-input-group\">\n\n          <div class=\"coupon-input-wrap\">\n            <span class=\"coupon-icon\">%<\/span>\n\n            <input\n              type=\"text\"\n              name=\"coupon\"\n              id=\"coupon-code\"\n              placeholder=\"Enter coupon code\"\n              autocomplete=\"off\"\n              spellcheck=\"false\"\n            >\n          <\/div>\n\n          <button\n            type=\"button\"\n            id=\"apply-coupon-btn\"\n            class=\"apply-coupon-btn\"\n          >\n            Apply\n          <\/button>\n\n        <\/div>\n\n        <div\n          id=\"coupon-message\"\n          class=\"coupon-message\"\n          aria-live=\"polite\"\n        ><\/div>\n\n        <div class=\"coupon-note\">\n          <span>\u2713<\/span>\n          SAVE2 is available for this 1-month plan.\n        <\/div>\n\n      <\/div>\n\n    <\/div>\n\n\n    <!-- =====================================================\n         PRICE SUMMARY\n         ===================================================== -->\n    <div id=\"price-summary\" class=\"price-summary\">\n\n      <div class=\"summary-header\">\n        <span>Order Summary<\/span>\n        <span class=\"summary-lock\">\ud83d\udd12<\/span>\n      <\/div>\n\n      <div id=\"original-price\" class=\"summary-row\" style=\"display:none;\">\n        <span>Original Price<\/span>\n        <span id=\"original-price-value\">\u20ac11.99<\/span>\n      <\/div>\n\n      <div id=\"discount-amount\" class=\"summary-row discount-row\" style=\"display:none;\">\n        <span>Discount<\/span>\n        <span id=\"discount-value\">-\u20ac0.00<\/span>\n      <\/div>\n\n      <div class=\"summary-row selected-plan-row\">\n        <span>\n          <span id=\"summary-plan\">1 Month<\/span>\n          \u00b7\n          <span id=\"summary-connections\">1 Connection<\/span>\n        <\/span>\n\n        <span id=\"final-price-amount\" class=\"final-price\">\u20ac11.99<\/span>\n      <\/div>\n\n    <\/div>\n\n\n    <!-- =====================================================\n         SUBMIT\n         ===================================================== -->\n    <button\n      type=\"submit\"\n      id=\"submit-btn\"\n      class=\"submit-btn\"\n      data-trex-buy-now\n    >\n      <span class=\"submit-icon\">\u2192<\/span>\n\n      <span class=\"submit-text\">Order Now<\/span>\n\n      <span class=\"submit-price\" id=\"submit-price\">\u20ac11.99<\/span>\n    <\/button>\n\n\n    <div class=\"secure-note\">\n      <span>\ud83d\udd12<\/span>\n      Your information is securely processed.\n    <\/div>\n\n  <\/form>\n\n<\/div>\n\n\n<style>\n\n\/* =========================================================\n   GLOBAL\n   ========================================================= *\/\n\n#trexiptv-form-wrapper,\n#trexiptv-form-wrapper * {\n  box-sizing: border-box;\n}\n\n#trexiptv-form-wrapper {\n  width: 100%;\n  max-width: 760px;\n  margin: 0 auto;\n  font-family: Inter, \"Segoe UI\", Roboto, Arial, sans-serif;\n  color: #1d2433;\n}\n\n\n\/* =========================================================\n   HEADER\n   ========================================================= *\/\n\n.trex-form-header {\n  text-align: center;\n  margin-bottom: 24px;\n}\n\n.trex-form-kicker {\n  display: inline-flex;\n  align-items: center;\n  gap: 7px;\n  padding: 7px 13px;\n  margin-bottom: 10px;\n  border-radius: 999px;\n  background: #eef7ff;\n  color: #0073aa;\n  font-size: 12px;\n  font-weight: 800;\n  letter-spacing: .08em;\n}\n\n.trex-kicker-dot {\n  width: 8px;\n  height: 8px;\n  border-radius: 50%;\n  background: #20b26b;\n  box-shadow: 0 0 0 4px rgba(32,178,107,.12);\n}\n\n#form-title {\n  margin: 0;\n  font-size: clamp(25px, 4vw, 34px);\n  line-height: 1.2;\n  font-weight: 800;\n  letter-spacing: -.02em;\n  color: #111827;\n}\n\n.trex-form-subtitle {\n  margin: 10px auto 0;\n  max-width: 620px;\n  color: #6b7280;\n  font-size: 14px;\n  line-height: 1.6;\n}\n\n.trex-trust-row {\n  display: flex;\n  justify-content: center;\n  flex-wrap: wrap;\n  gap: 8px 16px;\n  margin-top: 14px;\n  font-size: 12px;\n  color: #4b5563;\n  font-weight: 600;\n}\n\n\n\/* =========================================================\n   TOP RESPONSE MESSAGE\n   ========================================================= *\/\n\n.trex-response {\n  position: relative;\n  display: none;\n  align-items: center;\n  gap: 14px;\n  margin-bottom: 20px;\n  padding: 16px 48px 16px 16px;\n  border-radius: 14px;\n  overflow: hidden;\n  animation: trexResponseIn .35s ease;\n}\n\n.trex-response.show {\n  display: flex;\n}\n\n.trex-response.success {\n  background: linear-gradient(135deg, #e9fff2, #f7fffa);\n  border: 1px solid #9ce8bb;\n  color: #17643a;\n  box-shadow: 0 8px 25px rgba(23,100,58,.08);\n}\n\n.trex-response.error {\n  background: linear-gradient(135deg, #fff0f0, #fff9f9);\n  border: 1px solid #f2aaaa;\n  color: #9a2323;\n  box-shadow: 0 8px 25px rgba(154,35,35,.08);\n}\n\n.trex-response::after {\n  content: \"\";\n  position: absolute;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  height: 3px;\n  opacity: .65;\n  background: currentColor;\n}\n\n.trex-response-icon {\n  flex: 0 0 42px;\n  width: 42px;\n  height: 42px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  border-radius: 50%;\n  background: currentColor;\n  color: #fff;\n  font-size: 21px;\n  font-weight: 800;\n}\n\n.trex-response-title {\n  font-size: 16px;\n  font-weight: 800;\n  margin-bottom: 3px;\n}\n\n.trex-response-text {\n  font-size: 13px;\n  line-height: 1.5;\n  opacity: .9;\n}\n\n.trex-response-close {\n  position: absolute;\n  right: 13px;\n  top: 10px;\n  width: 28px;\n  height: 28px;\n  border: 0;\n  background: transparent;\n  color: currentColor;\n  font-size: 25px;\n  line-height: 1;\n  cursor: pointer;\n  opacity: .65;\n}\n\n.trex-response-close:hover {\n  opacity: 1;\n}\n\n@keyframes trexResponseIn {\n  from {\n    opacity: 0;\n    transform: translateY(-10px);\n  }\n  to {\n    opacity: 1;\n    transform: translateY(0);\n  }\n}\n\n\n\/* =========================================================\n   FORM\n   ========================================================= *\/\n\n#trexiptv-form {\n  background: #fff;\n  padding: 28px;\n  border-radius: 18px;\n  border: 1px solid #e5e7eb;\n  box-shadow:\n    0 18px 50px rgba(15,23,42,.08),\n    0 2px 8px rgba(15,23,42,.03);\n}\n\n.trex-section {\n  margin-bottom: 26px;\n}\n\n.trex-section:last-of-type {\n  margin-bottom: 20px;\n}\n\n.trex-section-heading {\n  display: flex;\n  align-items: center;\n  gap: 11px;\n  margin-bottom: 16px;\n}\n\n.trex-section-number {\n  display: flex;\n  flex: 0 0 31px;\n  width: 31px;\n  height: 31px;\n  align-items: center;\n  justify-content: center;\n  border-radius: 50%;\n  background: #0073aa;\n  color: #fff;\n  font-size: 13px;\n  font-weight: 800;\n}\n\n.trex-section-heading strong {\n  display: block;\n  color: #111827;\n  font-size: 16px;\n}\n\n.trex-section-heading small {\n  display: block;\n  margin-top: 2px;\n  color: #8a94a6;\n  font-size: 12px;\n}\n\n\n\/* =========================================================\n   INPUTS\n   ========================================================= *\/\n\n.trex-fields-grid {\n  display: grid;\n  grid-template-columns: repeat(2, minmax(0, 1fr));\n  gap: 16px;\n}\n\n.trex-field-full {\n  grid-column: 1 \/ -1;\n}\n\n.trex-field label {\n  display: block;\n  margin-bottom: 7px;\n  color: #2f3747;\n  font-size: 13px;\n  font-weight: 700;\n}\n\n.required {\n  color: #dc3545;\n}\n\n.trex-field input {\n  width: 100%;\n  height: 49px;\n  padding: 0 14px;\n  border: 1px solid #d9dee7;\n  border-radius: 10px;\n  background: #fff;\n  color: #1f2937;\n  outline: none;\n  font-size: 14px;\n  transition:\n    border-color .2s,\n    box-shadow .2s,\n    background .2s;\n}\n\n.trex-field input::placeholder {\n  color: #a0a8b7;\n}\n\n.trex-field input:hover {\n  border-color: #bfc7d4;\n}\n\n.trex-field input:focus {\n  border-color: #0073aa;\n  box-shadow: 0 0 0 4px rgba(0,115,170,.10);\n}\n\n\n\/* =========================================================\n   SELECTION\n   ========================================================= *\/\n\n.trex-current-selection {\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  gap: 15px;\n  margin-bottom: 13px;\n  padding: 11px 14px;\n  border-radius: 10px;\n  background: #f6f9fc;\n  border: 1px solid #e4edf5;\n}\n\n.selection-label {\n  color: #687386;\n  font-size: 13px;\n}\n\n.selection-value {\n  color: #0073aa;\n  font-size: 14px;\n  font-weight: 800;\n}\n\n\n\/* =========================================================\n   MOBILE CARDS\n   ========================================================= *\/\n\n.pricing-grid {\n  display: grid;\n  grid-template-columns: repeat(2, minmax(0, 1fr));\n  gap: 12px;\n}\n\n.pricing-option {\n  position: relative;\n  appearance: none;\n  width: 100%;\n  border: 2px solid #dbe3ea;\n  border-radius: 14px;\n  padding: 16px 12px;\n  background: #fff;\n  color: #273244;\n  cursor: pointer;\n  text-align: center;\n  transition:\n    transform .18s ease,\n    border-color .18s ease,\n    background .18s ease,\n    box-shadow .18s ease;\n}\n\n.pricing-option:hover {\n  transform: translateY(-2px);\n  border-color: #74b4d4;\n  box-shadow: 0 10px 25px rgba(0,115,170,.10);\n}\n\n.pricing-option.active {\n  border-color: #0073aa;\n  background: linear-gradient(145deg, #0073aa, #00618f);\n  color: #fff;\n  box-shadow: 0 10px 26px rgba(0,115,170,.23);\n}\n\n.option-top {\n  display: flex;\n  justify-content: center;\n  margin-bottom: 6px;\n}\n\n.option-icon {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 32px;\n  height: 32px;\n  border-radius: 9px;\n  background: #eef7ff;\n  color: #0073aa;\n  font-size: 14px;\n}\n\n.pricing-option.active .option-icon {\n  background: rgba(255,255,255,.16);\n  color: #fff;\n}\n\n.conn-count {\n  display: block;\n  font-size: 13px;\n  font-weight: 700;\n}\n\n.price {\n  display: block;\n  margin-top: 6px;\n  font-size: 23px;\n  font-weight: 900;\n  letter-spacing: -.02em;\n}\n\n.option-check {\n  position: absolute;\n  top: 9px;\n  right: 9px;\n  width: 21px;\n  height: 21px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  border-radius: 50%;\n  background: rgba(255,255,255,.22);\n  color: #fff;\n  font-size: 12px;\n  font-weight: 900;\n  opacity: 0;\n  transform: scale(.75);\n  transition: .18s;\n}\n\n.pricing-option.active .option-check {\n  opacity: 1;\n  transform: scale(1);\n}\n\n.popular-badge {\n  position: absolute;\n  top: -9px;\n  right: 10px;\n  padding: 4px 8px;\n  border-radius: 999px;\n  background: #ffd54a;\n  color: #222;\n  font-size: 9px;\n  font-weight: 900;\n  letter-spacing: .05em;\n  box-shadow: 0 3px 8px rgba(0,0,0,.10);\n}\n\n\n\/* =========================================================\n   DESKTOP SWITCHER\n   ========================================================= *\/\n\n#connection-switcher {\n  display: none;\n  grid-template-columns: repeat(4, minmax(0, 1fr));\n  gap: 9px;\n}\n\n.conn-btn {\n  position: relative;\n  appearance: none;\n  min-height: 56px;\n  padding: 9px 10px;\n  border: 2px solid #dbe3ea;\n  border-radius: 11px;\n  background: #fff;\n  color: #334155;\n  cursor: pointer;\n  text-align: center;\n  transition:\n    border-color .18s,\n    background .18s,\n    transform .18s,\n    box-shadow .18s;\n}\n\n.conn-btn:hover {\n  border-color: #74b4d4;\n  transform: translateY(-1px);\n}\n\n.conn-btn.active {\n  background: #0073aa;\n  color: #fff;\n  border-color: #0073aa;\n  box-shadow: 0 8px 20px rgba(0,115,170,.20);\n}\n\n.conn-main {\n  display: block;\n  font-size: 13px;\n  font-weight: 800;\n}\n\n.conn-price {\n  display: block;\n  margin-top: 3px;\n  font-size: 12px;\n  font-weight: 700;\n  opacity: .82;\n}\n\n.desktop-popular {\n  position: absolute;\n  top: -8px;\n  right: 7px;\n  padding: 3px 6px;\n  border-radius: 999px;\n  background: #ffd54a;\n  color: #222;\n  font-size: 8px;\n  font-weight: 900;\n}\n\n\n\/* =========================================================\n   COUPON\n   ========================================================= *\/\n\n.coupon-box {\n  padding: 15px;\n  border: 1px solid #e4eaf0;\n  border-radius: 13px;\n  background: #f9fbfd;\n}\n\n.coupon-input-group {\n  display: flex;\n  gap: 9px;\n}\n\n.coupon-input-wrap {\n  position: relative;\n  flex: 1;\n}\n\n.coupon-icon {\n  position: absolute;\n  left: 13px;\n  top: 50%;\n  transform: translateY(-50%);\n  width: 22px;\n  height: 22px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  border-radius: 6px;\n  background: #e9f7ef;\n  color: #198754;\n  font-size: 12px;\n  font-weight: 900;\n}\n\n#coupon-code {\n  width: 100%;\n  height: 46px;\n  padding: 0 14px 0 43px;\n  border: 1px solid #d3dce6;\n  border-radius: 10px;\n  background: #fff;\n  outline: none;\n  font-size: 13px;\n  text-transform: uppercase;\n  transition: .2s;\n}\n\n#coupon-code:focus {\n  border-color: #0073aa;\n  box-shadow: 0 0 0 4px rgba(0,115,170,.08);\n}\n\n.apply-coupon-btn {\n  min-width: 100px;\n  height: 46px;\n  border: 0;\n  border-radius: 10px;\n  background: #198754;\n  color: #fff;\n  font-size: 13px;\n  font-weight: 800;\n  cursor: pointer;\n  transition: .2s;\n}\n\n.apply-coupon-btn:hover {\n  filter: brightness(.95);\n  transform: translateY(-1px);\n}\n\n.apply-coupon-btn.remove-mode {\n  background: #6c757d;\n}\n\n.coupon-message {\n  min-height: 20px;\n  margin-top: 7px;\n  font-size: 12px;\n  font-weight: 700;\n}\n\n.coupon-message.success {\n  color: #198754;\n}\n\n.coupon-message.error {\n  color: #dc3545;\n}\n\n.coupon-note {\n  display: flex;\n  align-items: center;\n  gap: 6px;\n  margin: 3px 0 0;\n  color: #7a8493;\n  font-size: 11px;\n}\n\n\n\/* =========================================================\n   PRICE SUMMARY\n   ========================================================= *\/\n\n.price-summary {\n  margin-top: 4px;\n  padding: 17px;\n  border: 1px solid #e2e8ef;\n  border-radius: 14px;\n  background: linear-gradient(145deg, #f8fafc, #fff);\n}\n\n.summary-header {\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  padding-bottom: 10px;\n  margin-bottom: 3px;\n  border-bottom: 1px solid #e9edf2;\n  color: #3a4352;\n  font-size: 13px;\n  font-weight: 800;\n}\n\n.summary-row {\n  display: flex;\n  justify-content: space-between;\n  gap: 15px;\n  padding: 7px 0;\n  color: #667085;\n  font-size: 13px;\n}\n\n.summary-row > span:last-child {\n  font-weight: 700;\n  color: #374151;\n}\n\n.discount-row > span:last-child {\n  color: #198754;\n}\n\n.selected-plan-row {\n  margin-top: 5px;\n  padding-top: 12px;\n  border-top: 1px dashed #dfe5ec;\n  color: #293241;\n  font-weight: 800;\n}\n\n.selected-plan-row > span:last-child {\n  color: #0073aa;\n}\n\n.final-price {\n  font-size: 22px !important;\n  font-weight: 900 !important;\n}\n\n\n\/* =========================================================\n   SUBMIT BUTTON\n   ========================================================= *\/\n\n.submit-btn {\n  position: relative;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: 10px;\n  width: 100%;\n  min-height: 56px;\n  margin-top: 18px;\n  padding: 12px 18px;\n  border: 0;\n  border-radius: 12px;\n  background: linear-gradient(135deg, #0073aa, #005d89);\n  color: #fff;\n  font-size: 16px;\n  font-weight: 900;\n  cursor: pointer;\n  box-shadow: 0 12px 26px rgba(0,115,170,.20);\n  transition:\n    transform .18s,\n    box-shadow .18s,\n    opacity .18s;\n}\n\n.submit-btn:hover:not(:disabled) {\n  transform: translateY(-2px);\n  box-shadow: 0 16px 30px rgba(0,115,170,.25);\n}\n\n.submit-btn:active:not(:disabled) {\n  transform: translateY(0);\n}\n\n.submit-btn:disabled {\n  cursor: wait;\n  opacity: .72;\n}\n\n.submit-icon {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 24px;\n  height: 24px;\n  border-radius: 50%;\n  background: rgba(255,255,255,.16);\n  font-size: 15px;\n}\n\n.submit-price {\n  padding-left: 4px;\n  font-size: 15px;\n  opacity: .88;\n}\n\n.secure-note {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: 6px;\n  margin-top: 10px;\n  color: #8993a3;\n  font-size: 11px;\n}\n\n\n\/* =========================================================\n   LOADING\n   ========================================================= *\/\n\n.trex-loading-dots {\n  display: inline-flex;\n  gap: 3px;\n}\n\n.trex-loading-dots span {\n  width: 5px;\n  height: 5px;\n  border-radius: 50%;\n  background: currentColor;\n  animation: trexDot 1s infinite ease-in-out;\n}\n\n.trex-loading-dots span:nth-child(2) {\n  animation-delay: .15s;\n}\n\n.trex-loading-dots span:nth-child(3) {\n  animation-delay: .30s;\n}\n\n@keyframes trexDot {\n  0%, 60%, 100% {\n    opacity: .35;\n    transform: translateY(0);\n  }\n\n  30% {\n    opacity: 1;\n    transform: translateY(-3px);\n  }\n}\n\n\n\/* =========================================================\n   RESPONSIVE\n   ========================================================= *\/\n\n@media (max-width: 767px) {\n\n  #trexiptv-form {\n    padding: 19px;\n    border-radius: 15px;\n  }\n\n  .trex-fields-grid {\n    grid-template-columns: 1fr;\n  }\n\n  .trex-field-full {\n    grid-column: auto;\n  }\n\n  .coupon-input-group {\n    flex-direction: column;\n  }\n\n  .apply-coupon-btn {\n    width: 100%;\n  }\n\n}\n\n@media (min-width: 768px) {\n\n  .pricing-grid {\n    display: none;\n  }\n\n  #connection-switcher {\n    display: grid;\n  }\n\n}\n\n@media (max-width: 420px) {\n\n  #trexiptv-form {\n    padding: 16px;\n  }\n\n  #form-title {\n    font-size: 24px;\n  }\n\n  .trex-response {\n    align-items: flex-start;\n    padding: 14px 40px 14px 13px;\n  }\n\n  .trex-response-icon {\n    flex-basis: 36px;\n    width: 36px;\n    height: 36px;\n    font-size: 18px;\n  }\n\n  .trex-current-selection {\n    align-items: flex-start;\n    flex-direction: column;\n  }\n\n  .final-price {\n    font-size: 20px !important;\n  }\n\n}\n\n<\/style>\n\n\n<script>\n\ndocument.addEventListener(\"DOMContentLoaded\", function () {\n\n  \/* =======================================================\n     1-MONTH CONFIGURATION\n     ======================================================= *\/\n\n  const CONFIG = {\n    plan: \"1 Month Subscription\",\n\n    prices: {\n      1: 11.99,\n      2: 19.99,\n      3: 27.99,\n      4: 36.99\n    },\n\n    coupons: {\n      SAVE2: {\n        discount: 2\n      }\n    },\n\n    defaultConn: 1,\n    defaultRefcode: \"5\"\n  };\n\n\n  \/* =======================================================\n     ELEMENTS\n     ======================================================= *\/\n\n  const wrapper = document.getElementById(\"trexiptv-form-wrapper\");\n  const form = document.getElementById(\"trexiptv-form\");\n\n  if (!wrapper || !form) {\n    return;\n  }\n\n  const submitBtn = document.getElementById(\"submit-btn\");\n  const submitText = submitBtn.querySelector(\".submit-text\");\n  const submitPrice = document.getElementById(\"submit-price\");\n\n  const responseEl = document.getElementById(\"form-response\");\n  const responseIcon = document.getElementById(\"response-icon\");\n  const responseTitle = document.getElementById(\"response-title\");\n  const responseText = document.getElementById(\"response-text\");\n  const responseClose = document.getElementById(\"response-close\");\n\n  const planInput = document.getElementById(\"trex-plan\");\n  const refInput = document.getElementById(\"trex-refcode\");\n  const connInput = document.getElementById(\"conn-count\");\n  const finalPriceInput = document.getElementById(\"final-price-value\");\n\n  const formTitle = document.getElementById(\"form-title\");\n\n  const currentConnNumber = document.getElementById(\"current-conn-number\");\n  const currentConnLabel = document.getElementById(\"current-conn-label\");\n\n  const summaryPlan = document.getElementById(\"summary-plan\");\n  const summaryConnections = document.getElementById(\"summary-connections\");\n\n  const finalPriceDisplay = document.getElementById(\"final-price-amount\");\n\n  const originalPriceEl = document.getElementById(\"original-price\");\n  const originalPriceValue = document.getElementById(\"original-price-value\");\n\n  const discountEl = document.getElementById(\"discount-amount\");\n  const discountValue = document.getElementById(\"discount-value\");\n\n  const couponInput = document.getElementById(\"coupon-code\");\n  const couponMessage = document.getElementById(\"coupon-message\");\n  const applyBtn = document.getElementById(\"apply-coupon-btn\");\n\n  const connButtons = document.querySelectorAll(\".conn-btn\");\n  const pricingOptions = document.querySelectorAll(\".pricing-option\");\n\n  let currentConn = CONFIG.defaultConn;\n  let currentCoupon = \"\";\n  let couponApplied = false;\n  let couponData = null;\n  let submitting = false;\n\n\n  \/* =======================================================\n     HELPERS\n     ======================================================= *\/\n\n  function money(value) {\n    return \"\u20ac\" + Number(value).toFixed(2);\n  }\n\n  function connectionLabel(conn) {\n    return Number(conn) === 1 ? \"Connection\" : \"Connections\";\n  }\n\n  function planShortName(plan) {\n    return plan\n      .replace(\/subscription\/gi, \"\")\n      .replace(\/\\s+\/g, \" \")\n      .trim();\n  }\n\n\n  \/* =======================================================\n     TOP RESPONSE\n     ======================================================= *\/\n\n  function showResponse(type, title, message) {\n\n    responseEl.classList.remove(\"success\", \"error\");\n    responseEl.classList.add(type, \"show\");\n\n    responseIcon.textContent =\n      type === \"success\" ? \"\u2713\" : \"!\";\n\n    responseTitle.textContent = title;\n    responseText.textContent = message;\n\n    setTimeout(function () {\n      wrapper.scrollIntoView({\n        behavior: \"smooth\",\n        block: \"start\"\n      });\n    }, 50);\n  }\n\n  function hideResponse() {\n    responseEl.classList.remove(\"show\");\n  }\n\n  responseClose.addEventListener(\"click\", hideResponse);\n\n\n  \/* =======================================================\n     URL PARAMETERS\n     ======================================================= *\/\n\n  const urlParams =\n    new URLSearchParams(window.location.search);\n\n\n  \/* ?conn=2 *\/\n\n  if (urlParams.has(\"conn\")) {\n\n    const requestedConn =\n      parseInt(urlParams.get(\"conn\"), 10);\n\n    if (\n      Number.isInteger(requestedConn) &&\n      Object.prototype.hasOwnProperty.call(\n        CONFIG.prices,\n        requestedConn\n      )\n    ) {\n      currentConn = requestedConn;\n    }\n  }\n\n\n  \/* ?coupon=SAVE2 *\/\n\n  if (urlParams.has(\"coupon\")) {\n\n    const requestedCoupon =\n      (urlParams.get(\"coupon\") || \"\")\n        .trim()\n        .toUpperCase();\n\n    if (requestedCoupon) {\n      couponInput.value = requestedCoupon;\n    }\n  }\n\n\n  \/* Existing ?ref= logic *\/\n\n  if (urlParams.has(\"ref\")) {\n\n    const requestedRef =\n      (urlParams.get(\"ref\") || \"\").trim();\n\n    if (requestedRef) {\n      refInput.value = requestedRef;\n    } else {\n      refInput.value = CONFIG.defaultRefcode;\n    }\n\n  } else {\n\n    refInput.value = CONFIG.defaultRefcode;\n\n  }\n\n  planInput.value = CONFIG.plan;\n\n\n  \/* =======================================================\n     PRICE CALCULATION\n     ======================================================= *\/\n\n  function getBasePrice() {\n    return Number(CONFIG.prices[currentConn] || 0);\n  }\n\n  function getDiscount() {\n\n    if (\n      couponApplied &&\n      couponData &&\n      Number(couponData.discount) > 0\n    ) {\n      return Number(couponData.discount);\n    }\n\n    return 0;\n  }\n\n  function getFinalPrice() {\n    return Math.max(\n      0,\n      getBasePrice() - getDiscount()\n    );\n  }\n\n  function updatePrices() {\n\n    const basePrice = getBasePrice();\n    const discount = getDiscount();\n    const finalPrice = getFinalPrice();\n\n\n    \/* Helper\/display value only *\/\n    finalPriceInput.value =\n      finalPrice.toFixed(2);\n\n\n    finalPriceDisplay.textContent =\n      money(finalPrice);\n\n    submitPrice.textContent =\n      money(finalPrice);\n\n\n    summaryPlan.textContent =\n      planShortName(CONFIG.plan);\n\n    summaryConnections.textContent =\n      currentConn + \" \" +\n      connectionLabel(currentConn);\n\n\n    if (discount > 0) {\n\n      originalPriceEl.style.display = \"flex\";\n      discountEl.style.display = \"flex\";\n\n      originalPriceValue.textContent =\n        money(basePrice);\n\n      discountValue.textContent =\n        \"-\" + money(discount);\n\n    } else {\n\n      originalPriceEl.style.display = \"none\";\n      discountEl.style.display = \"none\";\n\n    }\n\n\n    pricingOptions.forEach(function (option) {\n\n      const conn =\n        parseInt(option.dataset.conn, 10);\n\n      let price =\n        Number(CONFIG.prices[conn] || 0);\n\n      if (couponApplied && couponData) {\n        price = Math.max(\n          0,\n          price - Number(couponData.discount)\n        );\n      }\n\n      const priceElement =\n        option.querySelector(\".price\");\n\n      if (priceElement) {\n        priceElement.textContent =\n          money(price);\n      }\n\n    });\n\n\n    connButtons.forEach(function (button) {\n\n      const conn =\n        parseInt(button.dataset.conn, 10);\n\n      let price =\n        Number(CONFIG.prices[conn] || 0);\n\n      if (couponApplied && couponData) {\n        price = Math.max(\n          0,\n          price - Number(couponData.discount)\n        );\n      }\n\n      const priceElement =\n        button.querySelector(\".conn-price\");\n\n      if (priceElement) {\n        priceElement.textContent =\n          money(price);\n      }\n\n    });\n\n  }\n\n\n  \/* =======================================================\n     CONNECTION SELECTION\n     ======================================================= *\/\n\n  function updateSelection() {\n\n    const suffix =\n      connectionLabel(currentConn);\n\n    currentConnNumber.textContent =\n      currentConn;\n\n    currentConnLabel.textContent =\n      suffix;\n\n    formTitle.textContent =\n      \"1 Month Subscription \u2013 \" +\n      currentConn + \" \" +\n      suffix;\n\n    connInput.value =\n      currentConn;\n\n\n    pricingOptions.forEach(function (option) {\n\n      const conn =\n        parseInt(option.dataset.conn, 10);\n\n      const active =\n        conn === currentConn;\n\n      option.classList.toggle(\n        \"active\",\n        active\n      );\n\n      option.setAttribute(\n        \"aria-pressed\",\n        active ? \"true\" : \"false\"\n      );\n\n    });\n\n\n    connButtons.forEach(function (button) {\n\n      const conn =\n        parseInt(button.dataset.conn, 10);\n\n      const active =\n        conn === currentConn;\n\n      button.classList.toggle(\n        \"active\",\n        active\n      );\n\n      button.setAttribute(\n        \"aria-pressed\",\n        active ? \"true\" : \"false\"\n      );\n\n    });\n\n\n    updatePrices();\n\n\n    \/* Compatibility with pricing-card scripts *\/\n    document.dispatchEvent(\n      new CustomEvent(\n        \"connectionChanged\",\n        {\n          detail: {\n            conn: currentConn,\n            coupon: currentCoupon || \"\"\n          }\n        }\n      )\n    );\n\n  }\n\n\n  pricingOptions.forEach(function (option) {\n\n    option.addEventListener(\n      \"click\",\n      function () {\n\n        if (submitting) {\n          return;\n        }\n\n        const conn =\n          parseInt(option.dataset.conn, 10);\n\n        if (\n          !Number.isInteger(conn) ||\n          !Object.prototype.hasOwnProperty.call(\n            CONFIG.prices,\n            conn\n          )\n        ) {\n          return;\n        }\n\n        currentConn = conn;\n        updateSelection();\n\n      }\n    );\n\n  });\n\n\n  connButtons.forEach(function (button) {\n\n    button.addEventListener(\n      \"click\",\n      function () {\n\n        if (submitting) {\n          return;\n        }\n\n        const conn =\n          parseInt(button.dataset.conn, 10);\n\n        if (\n          !Number.isInteger(conn) ||\n          !Object.prototype.hasOwnProperty.call(\n            CONFIG.prices,\n            conn\n          )\n        ) {\n          return;\n        }\n\n        currentConn = conn;\n        updateSelection();\n\n      }\n    );\n\n  });\n\n\n  \/* =======================================================\n     COUPON\n     ======================================================= *\/\n\n  function resetCoupon() {\n\n    currentCoupon = \"\";\n    couponApplied = false;\n    couponData = null;\n\n    couponInput.readOnly = false;\n    couponInput.value = \"\";\n\n    applyBtn.disabled = false;\n    applyBtn.classList.remove(\"remove-mode\");\n    applyBtn.textContent = \"Apply\";\n\n    couponMessage.textContent = \"\";\n    couponMessage.className = \"coupon-message\";\n\n    updateSelection();\n\n  }\n\n\n  function applyCoupon() {\n\n    if (submitting) {\n      return;\n    }\n\n\n    if (couponApplied) {\n\n      resetCoupon();\n      couponInput.focus();\n\n      return;\n\n    }\n\n\n    const code =\n      couponInput.value\n        .trim()\n        .toUpperCase();\n\n\n    if (!code) {\n\n      couponMessage.textContent =\n        \"Please enter a coupon code.\";\n\n      couponMessage.className =\n        \"coupon-message error\";\n\n      return;\n\n    }\n\n\n    if (!CONFIG.coupons[code]) {\n\n      couponMessage.textContent =\n        \"This coupon code is not valid for this plan.\";\n\n      couponMessage.className =\n        \"coupon-message error\";\n\n      return;\n\n    }\n\n\n    currentCoupon = code;\n    couponApplied = true;\n    couponData = CONFIG.coupons[code];\n\n    couponInput.value = code;\n    couponInput.readOnly = true;\n\n    applyBtn.disabled = false;\n    applyBtn.classList.add(\"remove-mode\");\n    applyBtn.textContent = \"Remove\";\n\n    couponMessage.textContent =\n      \"\u2713 Coupon applied successfully.\";\n\n    couponMessage.className =\n      \"coupon-message success\";\n\n    updateSelection();\n\n  }\n\n\n  applyBtn.addEventListener(\n    \"click\",\n    applyCoupon\n  );\n\n\n  couponInput.addEventListener(\n    \"keydown\",\n    function (event) {\n\n      if (event.key === \"Enter\") {\n\n        event.preventDefault();\n\n        applyCoupon();\n\n      }\n\n    }\n  );\n\n\n  \/* Auto-apply valid URL coupon *\/\n\n  if (\n    couponInput.value &&\n    CONFIG.coupons[\n      couponInput.value.toUpperCase()\n    ]\n  ) {\n\n    setTimeout(\n      function () {\n        applyCoupon();\n      },\n      120\n    );\n\n  }\n\n\n  \/* =======================================================\n     SUBMIT\n     ======================================================= *\/\n\n  form.addEventListener(\n    \"submit\",\n    function (event) {\n\n      event.preventDefault();\n\n\n      if (submitting) {\n        return;\n      }\n\n\n      if (!form.checkValidity()) {\n\n        form.reportValidity();\n\n        showResponse(\n          \"error\",\n          \"Please check your information\",\n          \"Make sure all required fields are completed correctly.\"\n        );\n\n        return;\n\n      }\n\n\n      submitting = true;\n\n      submitBtn.disabled = true;\n\n      submitText.textContent =\n        \"Processing\";\n\n      submitPrice.innerHTML =\n        '<span class=\"trex-loading-dots\">' +\n          '<span><\/span>' +\n          '<span><\/span>' +\n          '<span><\/span>' +\n        '<\/span>';\n\n      hideResponse();\n\n\n      const formData =\n        new FormData(form);\n\n\n      \/*\n       * Important:\n       * server-side PHP remains authoritative for plan,\n       * connection, coupon and final amount.\n       *\/\n\n      formData.set(\n        \"plan\",\n        CONFIG.plan\n      );\n\n      formData.set(\n        \"conn\",\n        String(currentConn)\n      );\n\n      formData.set(\n        \"coupon\",\n        currentCoupon\n      );\n\n\n      const params =\n        new URLSearchParams();\n\n\n      formData.forEach(\n        function (value, key) {\n          params.append(key, value);\n        }\n      );\n\n\n      fetch(\n        \"\/wp-admin\/admin-ajax.php\",\n        {\n          method: \"POST\",\n\n          headers: {\n            \"Content-Type\":\n              \"application\/x-www-form-urlencoded; charset=UTF-8\"\n          },\n\n          body:\n            params.toString(),\n\n          credentials:\n            \"same-origin\"\n        }\n      )\n\n      .then(\n        function (response) {\n\n          if (!response.ok) {\n            throw new Error(\n              \"Server returned HTTP \" +\n              response.status\n            );\n          }\n\n          return response.json();\n\n        }\n      )\n\n      .then(\n        function (data) {\n\n          if (data && data.success) {\n\n            showResponse(\n              \"success\",\n              \"Order received successfully!\",\n              \"Your confirmation email has been sent. Please check your Inbox and Spam\/Junk folder.\"\n            );\n\n\n            \/*\n             * Reset customer values only after\n             * a successful submission.\n             *\/\n\n            form.reset();\n\n\n            planInput.value =\n              CONFIG.plan;\n\n\n            \/*\n             * Preserve ?ref= after reset.\n             *\/\n\n            refInput.value =\n              urlParams.has(\"ref\")\n                ? (\n                    urlParams.get(\"ref\") || \"\"\n                  ).trim() ||\n                  CONFIG.defaultRefcode\n                : CONFIG.defaultRefcode;\n\n\n            currentConn =\n              CONFIG.defaultConn;\n\n            currentCoupon =\n              \"\";\n\n            couponApplied =\n              false;\n\n            couponData =\n              null;\n\n\n            couponInput.readOnly =\n              false;\n\n            couponInput.value =\n              \"\";\n\n            couponMessage.textContent =\n              \"\";\n\n            couponMessage.className =\n              \"coupon-message\";\n\n\n            applyBtn.disabled =\n              false;\n\n            applyBtn.classList.remove(\n              \"remove-mode\"\n            );\n\n            applyBtn.textContent =\n              \"Apply\";\n\n\n            updateSelection();\n\n\n          } else {\n\n            showResponse(\n              \"error\",\n              \"Order could not be completed\",\n              data && data.message\n                ? data.message\n                : \"We could not process your order. Please try again.\"\n            );\n\n          }\n\n        }\n      )\n\n      .catch(\n        function (error) {\n\n          console.error(\n            \"Trex order error:\",\n            error\n          );\n\n          showResponse(\n            \"error\",\n            \"Something went wrong\",\n            \"We could not complete your request right now. Please try again.\"\n          );\n\n        }\n      )\n\n      .finally(\n        function () {\n\n          submitting = false;\n\n          submitBtn.disabled = false;\n\n          submitText.textContent =\n            \"Order Now\";\n\n          submitPrice.textContent =\n            money(getFinalPrice());\n\n        }\n      );\n\n    }\n  );\n\n\n  \/* =======================================================\n     INITIALIZE\n     ======================================================= *\/\n\n  updateSelection();\n\n});\n\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t<div class=\"elementor-element elementor-element-8efa173 e-flex e-con-boxed e-con e-parent\" data-id=\"8efa173\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a8fab57 elementor-widget elementor-widget-image\" data-id=\"a8fab57\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"340\" height=\"148\" src=\"https:\/\/trexiptv-8k.com\/wp-content\/uploads\/2025\/06\/trust-pilot-orders.png\" class=\"attachment-large size-large wp-image-5601\" alt=\"trust-pilot-orders\" srcset=\"https:\/\/trexiptv-8k.com\/wp-content\/uploads\/2025\/06\/trust-pilot-orders.png 340w, https:\/\/trexiptv-8k.com\/wp-content\/uploads\/2025\/06\/trust-pilot-orders-300x131.png 300w, https:\/\/trexiptv-8k.com\/wp-content\/uploads\/2025\/06\/trust-pilot-orders-18x8.png 18w\" sizes=\"(max-width: 340px) 100vw, 340px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6eb6dfb e-flex e-con-boxed e-con e-parent\" data-id=\"6eb6dfb\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-47d0334 elementor-widget elementor-widget-heading\" data-id=\"47d0334\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">How It Works<\/h2>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eb83104 e-grid e-con-boxed e-con e-parent\" data-id=\"eb83104\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ed8fada elementor-widget elementor-widget-html\" data-id=\"ed8fada\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"text-align: center; padding: 30px;\">\r\n  <div style=\"width: 60px; height: 60px; border-radius: 50%; background-color: #2955FF; color: white; display: flex; align-items: center; justify-content: center; font-size: 20px; font-weight: bold; margin: 0 auto 15px;\">\r\n    01\r\n  <\/div>\r\n  <h3 style=\"font-size: 20px; font-weight: 700; margin-bottom: 10px;\">Subscribe<\/h3>\r\n  <p style=\"font-size: 14px; color: #666;\">Choose any of our subscription plans \u2013 includes a 24-hour free trial to test the service before committing.<\/p>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-19af2b0 elementor-widget elementor-widget-html\" data-id=\"19af2b0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"text-align: center; padding: 30px;\">\r\n  <div style=\"width: 60px; height: 60px; border-radius: 50%; background-color: #2955FF; color: white; display: flex; align-items: center; justify-content: center; font-size: 20px; font-weight: bold; margin: 0 auto 15px;\">\r\n    02\r\n  <\/div>\r\n  <h3 style=\"font-size: 20px; font-weight: 700; margin-bottom: 10px;\">Install<\/h3>\r\n  <p style=\"font-size: 14px; color: #666;\">Download your preferred IPTV app or contact our support team. We'll help you get everything set up step by step \u2013 for free.<\/p>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9a8f038 elementor-widget elementor-widget-html\" data-id=\"9a8f038\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"text-align: center; padding: 30px;\">\r\n  <div style=\"width: 60px; height: 60px; border-radius: 50%; background-color: #2955FF; color: white; display: flex; align-items: center; justify-content: center; font-size: 20px; font-weight: bold; margin: 0 auto 15px;\">\r\n    03\r\n  <\/div>\r\n  <h3 style=\"font-size: 20px; font-weight: 700; margin-bottom: 10px;\">Login<\/h3>\r\n  <p style=\"font-size: 14px; color: #666;\">Enter the login credentials we emailed to you and start watching instantly on your device.<\/p>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3c23f85 e-flex e-con-boxed e-con e-parent\" data-id=\"3c23f85\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8c8f3d8 elementor-widget elementor-widget-heading\" data-id=\"8c8f3d8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\"> What Our Customers Are Saying<\/h2>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7763244 e-grid e-con-boxed e-con e-parent\" data-id=\"7763244\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5f5b29e elementor-widget elementor-widget-html\" data-id=\"5f5b29e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"background: #fff; border-radius: 12px; box-shadow: 0 4px 12px rgba(0,0,0,0.08); padding: 20px; text-align: center;\">\r\n  <div style=\"font-size: 22px; color: #2955FF; font-weight: bold; margin-bottom: 10px;\">\u2605\u2605\u2605\u2605\u2605<\/div>\r\n  <p style=\"font-size: 15px; color: #444;\">\u201cSuper smooth streaming and really helpful support. I was up and running in minutes.\u201d<\/p>\r\n  <div style=\"margin-top: 10px; font-weight: bold;\">Ahmed R.<\/div>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30517e3 elementor-widget elementor-widget-html\" data-id=\"30517e3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"background: #fff; border-radius: 12px; box-shadow: 0 4px 12px rgba(0,0,0,0.08); padding: 20px; text-align: center;\">\r\n  <div style=\"font-size: 22px; color: #2955FF; font-weight: bold; margin-bottom: 10px;\">\u2605\u2605\u2605\u2605\u2605<\/div>\r\n  <p style=\"font-size: 15px; color: #444;\">\u201cBest IPTV experience I\u2019ve had. Channels work without freezing. Highly recommended!\u201d<\/p>\r\n  <div style=\"margin-top: 10px; font-weight: bold;\">Laura D.<\/div>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-331d56b elementor-widget elementor-widget-html\" data-id=\"331d56b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"background: #fff; border-radius: 12px; box-shadow: 0 4px 12px rgba(0,0,0,0.08); padding: 20px; text-align: center;\">\r\n  <div style=\"font-size: 22px; color: #2955FF; font-weight: bold; margin-bottom: 10px;\">\u2605\u2605\u2605\u2605\u2605<\/div>\r\n  <p style=\"font-size: 15px; color: #444;\">\u201cThe 24-hour trial convinced me. Great value, and the support team is fast!\u201d<\/p>\r\n  <div style=\"margin-top: 10px; font-weight: bold;\">Khalid M.<\/div>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-826aad6 e-flex e-con-boxed e-con e-parent\" data-id=\"826aad6\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-81630e0 elementor-widget elementor-widget-heading\" data-id=\"81630e0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Why People Trust Us<\/h2>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-48d946a e-grid e-con-boxed e-con e-parent\" data-id=\"48d946a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fc4b385 elementor-widget elementor-widget-html\" data-id=\"fc4b385\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"text-align: center;\">\r\n  <img decoding=\"async\" src=\"https:\/\/img.icons8.com\/ios-filled\/50\/2955FF\/help.png\" alt=\"24\/7 Support\" width=\"40\" style=\"margin-bottom: 10px;\" \/>\r\n  <div style=\"font-size: 16px; font-weight: 600; color: #000;\">24\/7 Live Support<\/div>\r\n  <p style=\"font-size: 14px; color: #666; margin-top: 5px;\">Get help anytime via email, chat, or Telegram.<\/p>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a17b722 elementor-widget elementor-widget-html\" data-id=\"a17b722\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"text-align: center;\">\r\n  <img decoding=\"async\" src=\"https:\/\/img.icons8.com\/ios-filled\/50\/2955FF\/refund.png\" alt=\"Money Back\" width=\"40\" style=\"margin-bottom: 10px;\" \/>\r\n  <div style=\"font-size: 16px; font-weight: 600; color: #000;\">7-Day Money-Back<\/div>\r\n  <p style=\"font-size: 14px; color: #666; margin-top: 5px;\">Not satisfied? Get a full refund within 7 days.<\/p>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c737093 elementor-widget elementor-widget-html\" data-id=\"c737093\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"text-align: center;\">\r\n  <img decoding=\"async\" src=\"https:\/\/img.icons8.com\/ios-filled\/50\/2955FF\/lock-2.png\" alt=\"Secure Payment\" width=\"40\" style=\"margin-bottom: 10px;\" \/>\r\n  <div style=\"font-size: 16px; font-weight: 600; color: #000;\">100% Secure & Private<\/div>\r\n  <p style=\"font-size: 14px; color: #666; margin-top: 5px;\">Your data is safe. We respect your privacy fully.<\/p>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-92f96c1 e-flex e-con-boxed e-con e-parent\" data-id=\"92f96c1\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2310edd elementor-widget elementor-widget-html\" data-id=\"2310edd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"text-align: center; margin: 0px 0;\">\r\n  <a href=\"#pricing-card\" style=\"\r\n    display: inline-block;\r\n    background: linear-gradient(135deg, #2955FF, #3B82F6);\r\n    color: #fff;\r\n    padding: 14px 32px;\r\n    font-size: 18px;\r\n    font-weight: 600;\r\n    border-radius: 8px;\r\n    text-decoration: none;\r\n    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\r\n    transition: all 0.3s ease;\r\n  \"\r\n  onmouseover=\"this.style.transform='scale(1.05)'\"\r\n  onmouseout=\"this.style.transform='scale(1)'\"\r\n  >\r\n    \ud83c\udf81 Get My IPTV Access Now\r\n  <\/a>\r\n  <p style=\"margin-top: 10px; font-size: 14px; color: #777;\">\r\n    Instant setup \u00b7 No credit card charged until confirmation\r\n  <\/p>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c283d10 e-flex e-con-boxed e-con e-parent\" data-id=\"c283d10\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7f679db elementor-widget elementor-widget-heading\" data-id=\"7f679db\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Got Questions? We\u2019ve Got Answers<\/h2>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-5451b74a elementor-section-stretched elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"5451b74a\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;stretch_section&quot;:&quot;section-stretched&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-12fdf7f4\" data-id=\"12fdf7f4\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t<div class=\"elementor-element elementor-element-85a067a e-flex e-con-boxed e-con e-parent\" data-id=\"85a067a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-af8c181 elementor-widget elementor-widget-html\" data-id=\"af8c181\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- STICKY DOCK v5 \u2014 Free Trial \u2022 Devices (TV) \u2022 Telegram \u2022 Top -->\r\n<trex-sticky-dock-v5\r\n  threshold=\"200\"\r\n  bottom-desktop=\"170\"\r\n  bottom-mobile=\"250\"\r\n  right-desktop=\"16\"\r\n  right-mobile=\"16\"\r\n  label-hide-delay=\"4000\"\r\n  trial-href=\"https:\/\/t.co\/Oj37jqRMiD\"\r\n  tg-href=\"https:\/\/t.me\/TrexIPTV_Support\"\r\n  devices-href=\"\/devices\"\r\n    style=\"--devices:#FF7A00;\" \r\n><\/trex-sticky-dock-v5>\r\n\r\n<script>\r\n(() => {\r\n  if (customElements.get('trex-sticky-dock-v5')) return;\r\n\r\n  class TrexStickyDockV5 extends HTMLElement {\r\n    connectedCallback() {\r\n      if (this.shadowRoot) return;\r\n      const sr = this.attachShadow({ mode: 'open' });\r\n\r\n      const threshold   = +(this.getAttribute('threshold') || 200);\r\n      const bDesk       = +(this.getAttribute('bottom-desktop') || 170);\r\n      const bMob        = +(this.getAttribute('bottom-mobile')   || 250);\r\n      const rDesk       = +(this.getAttribute('right-desktop')  || 16);\r\n      const rMob        = +(this.getAttribute('right-mobile')    || 16);\r\n      const hideDelay   = +(this.getAttribute('label-hide-delay') || 4000);\r\n      const trialHref   = this.getAttribute('trial-href')    || '#';\r\n      const tgHref      = this.getAttribute('tg-href')       || '#';\r\n      const devicesHref = this.getAttribute('devices-href')  || '\/devices';\r\n\r\n      const style = document.createElement('style');\r\n      style.textContent = `\r\n        :host{\r\n          --gap: 10px;\r\n          --right: 16px;\r\n          --bottom: 170px;\r\n          --chip-bg: rgba(255,255,255,.94);\r\n          --chip-text: #0f172a;\r\n          --shadow: 0 10px 28px rgba(0,0,0,.16), 0 2px 6px rgba(0,0,0,.12);\r\n          --trial:   #7C3AED;\r\n          --devices: #0EA5E9;   \/* Devices button color *\/\r\n          --tg:      #229ED9;\r\n          --accent:  #df0e0e;   \/* Back to top *\/\r\n          position: fixed;\r\n          right: calc(var(--right) + env(safe-area-inset-right));\r\n          bottom: calc(var(--bottom) + env(safe-area-inset-bottom));\r\n          z-index: 2147483000;\r\n          pointer-events: none;\r\n          font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;\r\n        }\r\n        .dock{ display:flex; flex-direction:column; gap:var(--gap); opacity:0; transform:translateY(8px);\r\n               transition:opacity .22s ease, transform .22s ease; pointer-events:auto; }\r\n        :host(.visible) .dock{ opacity:1; transform:translateY(0); }\r\n\r\n        .btn{ display:inline-flex; align-items:center; gap:10px; background:var(--chip-bg); color:var(--chip-text);\r\n              border:1px solid rgba(0,0,0,.06); border-radius:999px; padding:8px 12px; font-weight:700; font-size:14px;\r\n              text-decoration:none; box-shadow:var(--shadow); transition:transform .15s ease, box-shadow .15s ease, padding .15s ease; }\r\n        .btn:hover{ transform:translateY(-1px); }\r\n        .ico{ display:grid; place-items:center; width:34px; height:34px; border-radius:50%; color:#fff; flex:0 0 34px; position:relative; }\r\n        .trial .ico{   background:var(--trial); }\r\n        .devices .ico{ background:var(--devices); }\r\n        .tg .ico{      background:var(--tg); }\r\n        .top .ico{     background:var(--accent); }\r\n\r\n        \/* Breathing (clearer) *\/\r\n        @keyframes breathe{ 0%,100%{transform:scale(1)} 50%{transform:scale(1.14)} }\r\n        @keyframes ring{ 0%{opacity:.18; transform:scale(1)} 50%{opacity:.06; transform:scale(1.34)} 100%{opacity:.18; transform:scale(1)} }\r\n        .trial .ico, .devices .ico{ animation:breathe 2.8s ease-in-out infinite; }\r\n        .devices .ico{ animation-delay:.1s }\r\n        .trial .ico::before, .devices .ico::before{\r\n          content:\"\"; position:absolute; inset:-10px; border-radius:999px; background:currentColor; filter:blur(6px);\r\n          animation:ring 2.8s ease-in-out infinite;\r\n        }\r\n        .devices .ico::before{ animation-delay:.1s }\r\n\r\n        \/* Staggered entrance *\/\r\n        :host(.visible) .btn:nth-child(1){ animation:pop .24s ease both .02s }\r\n        :host(.visible) .btn:nth-child(2){ animation:pop .24s ease both .08s }\r\n        :host(.visible) .btn:nth-child(3){ animation:pop .24s ease both .14s }\r\n        :host(.visible) .btn:nth-child(4){ animation:pop .24s ease both .20s }\r\n        @keyframes pop{ from{transform:translateY(6px) scale(.98); opacity:0} to{transform:translateY(0) scale(1); opacity:1} }\r\n\r\n        :host(.compact) .btn{ padding:6px } :host(.compact) .btn .label{ display:none }\r\n        :host(.compact) .btn:hover, :host(.compact) .btn:focus-within{ padding:8px 12px }\r\n        :host(.compact) .btn:hover .label, :host(.compact) .btn:focus-within .label{ display:inline }\r\n\r\n        @media (max-width:767px){ :host{ --right:${rMob}px; --bottom:${bMob}px } .btn{ font-size:13px; padding:8px 10px } }\r\n        @media (min-width:768px){ :host{ --right:${rDesk}px; --bottom:${bDesk}px } }\r\n\r\n        @media (prefers-reduced-motion:reduce){\r\n          .dock,.btn{ transition:none } :host(.visible) .btn{ animation:none }\r\n          .trial .ico,.devices .ico{ animation:none } .trial .ico::before,.devices .ico::before{ animation:none }\r\n        }\r\n      `;\r\n\r\n      const wrap = document.createElement('div');\r\n      wrap.className = 'dock';\r\n      wrap.innerHTML = `\r\n        <!-- FREE TRIAL -->\r\n        <a class=\"btn trial\" href=\"${trialHref}\" target=\"_blank\" rel=\"noopener\" aria-label=\"Start FREE TRIAL\">\r\n          <span class=\"ico\">\r\n            <svg class=\"starburst\" viewBox=\"0 0 24 24\" width=\"18\" height=\"18\" aria-hidden=\"true\">\r\n              <path fill=\"currentColor\" d=\"M12 2l2.2 3.8 4.3-.5-1.9 3.9 3.1 3-4.1.9-1.6 4-2.9-3-3 3-1.6-4-4.1-.9 3.1-3-1.9-3.9 4.3.5L12 2z\"\/>\r\n            <\/svg>\r\n          <\/span>\r\n          <span class=\"label\">FREE TRIAL<\/span>\r\n        <\/a>\r\n\r\n        <!-- DEVICES (Classic TV with antenna) -->\r\n        <a class=\"btn devices\" href=\"${devicesHref}\" aria-label=\"Browse Devices\" title=\"Browse Devices\">\r\n          <span class=\"ico\">\r\n            <svg viewBox=\"0 0 24 24\" width=\"18\" height=\"18\" aria-hidden=\"true\">\r\n              <g fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n                <!-- Screen -->\r\n                <rect x=\"3\" y=\"6\" width=\"18\" height=\"11\" rx=\"2\"><\/rect>\r\n                <!-- Antennas -->\r\n                <line x1=\"12\" y1=\"6\" x2=\"7.5\" y2=\"2.5\"><\/line>\r\n                <line x1=\"12\" y1=\"6\" x2=\"16.5\" y2=\"2.5\"><\/line>\r\n                <!-- Base -->\r\n                <line x1=\"8\" y1=\"19.5\" x2=\"16\" y2=\"19.5\"><\/line>\r\n              <\/g>\r\n            <\/svg>\r\n          <\/span>\r\n          <span class=\"label\">Devices<\/span>\r\n        <\/a>\r\n\r\n        <!-- TELEGRAM -->\r\n        <a class=\"btn tg\" href=\"${tgHref}\" target=\"_blank\" rel=\"noopener\" aria-label=\"Open Telegram Support\">\r\n          <span class=\"ico\">\r\n            <svg viewBox=\"0 0 24 24\" width=\"18\" height=\"18\" aria-hidden=\"true\">\r\n              <path fill=\"currentColor\" d=\"M9.036 15.803l-.376 5.302c.537 0 .768-.23 1.046-.506l2.511-2.41 5.205 3.81c.955.525 1.638.25 1.9-.884l3.445-16.17c.306-1.436-.518-1.997-1.445-1.648L1.116 9.493c-1.386.539-1.365 1.315-.236 1.664l5.23 1.632 12.139-7.65c.57-.346 1.09-.154.662.192\"\/>\r\n            <\/svg>\r\n          <\/span>\r\n          <span class=\"label\">Telegram<\/span>\r\n        <\/a>\r\n\r\n        <!-- BACK TO TOP -->\r\n        <button class=\"btn top\" type=\"button\" aria-label=\"Back to Top\" title=\"Back to Top\">\r\n          <span class=\"ico\">\r\n            <svg viewBox=\"0 0 24 24\" width=\"18\" height=\"18\" aria-hidden=\"true\">\r\n              <path fill=\"currentColor\" d=\"M12 4l-8 8h6v8h4v-8h6z\"\/>\r\n            <\/svg>\r\n          <\/span>\r\n          <span class=\"label\">Top<\/span>\r\n        <\/button>\r\n      `;\r\n\r\n      sr.append(style, wrap);\r\n\r\n      \/\/ show after scroll + auto-compact\r\n      let compactTimer=null;\r\n      const setCompact=(on)=>this.classList.toggle('compact',on);\r\n      const startCompact=()=>{ clearTimeout(compactTimer); compactTimer=setTimeout(()=>setCompact(true),hideDelay); };\r\n      const onScroll=()=>{ if (scrollY>=threshold){ if(!this.classList.contains('visible')){ this.classList.add('visible'); setCompact(false); startCompact(); } } else { this.classList.remove('visible'); clearTimeout(compactTimer); setCompact(false); } };\r\n      onScroll();\r\n      addEventListener('scroll',()=>requestAnimationFrame(onScroll),{passive:true});\r\n\r\n      \/\/ expand labels on hover\/focus\r\n      let recompact=null; const dock=sr.querySelector('.dock');\r\n      const expand=()=>{ clearTimeout(recompact); setCompact(false); };\r\n      const schedule=()=>{ clearTimeout(recompact); recompact=setTimeout(()=>setCompact(true),1200); };\r\n      dock.addEventListener('mouseenter',expand,{passive:true});\r\n      dock.addEventListener('mouseleave',schedule,{passive:true});\r\n      dock.addEventListener('focusin',expand);\r\n      dock.addEventListener('focusout',schedule);\r\n\r\n      \/\/ Top\r\n      sr.querySelector('.btn.top').addEventListener('click',(e)=>{ e.preventDefault(); scrollTo({top:0,behavior:'smooth'}); });\r\n    }\r\n  }\r\n  customElements.define('trex-sticky-dock-v5', TrexStickyDockV5);\r\n})();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u26a0\ufe0f Note: Submitting this form does not complete your order. You will receive payment instructions by email. Your subscription will be activated only after we receive your payment. 1 Month \u2013 1 Connection 11,99&nbsp;\u20ac \u2192 9.00&nbsp;\u20ac +9,000 Channels +10,000 Films &#038; Series 4K\/8K\/FHD\/HD\/SD Quality Adult +18 Free &#038; Auto Updates TV Guide (EPG) Anti Buffering [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-3079","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>1-month-subscription - Trex IPTV<\/title>\n<meta name=\"description\" content=\"Get a 1 Month IPTV Subscription with HD &amp; 4K streaming. Enjoy sports, movies &amp; more with no buffering. Sign up now for instant access!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/trexiptv-8k.com\/en\/1-month-subscription\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"1-month-subscription - Trex IPTV\" \/>\n<meta property=\"og:description\" content=\"Get a 1 Month IPTV Subscription with HD &amp; 4K streaming. Enjoy sports, movies &amp; more with no buffering. Sign up now for instant access!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/trexiptv-8k.com\/en\/1-month-subscription\/\" \/>\n<meta property=\"og:site_name\" content=\"Trex IPTV\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-29T02:35:05+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/trexiptv-8k.com\/wp-content\/uploads\/2025\/06\/trust-pilot-orders.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"17 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/trexiptv-8k.com\\\/1-month-subscription\\\/\",\"url\":\"https:\\\/\\\/trexiptv-8k.com\\\/1-month-subscription\\\/\",\"name\":\"1-month-subscription - Trex IPTV\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/trexiptv-8k.com\\\/en\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/trexiptv-8k.com\\\/1-month-subscription\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/trexiptv-8k.com\\\/1-month-subscription\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/trexiptv-8k.com\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/trust-pilot-orders.png\",\"datePublished\":\"2025-03-07T00:50:07+00:00\",\"dateModified\":\"2026-09-29T02:35:05+00:00\",\"description\":\"Get a 1 Month IPTV Subscription with HD & 4K streaming. Enjoy sports, movies & more with no buffering. Sign up now for instant access!\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/trexiptv-8k.com\\\/1-month-subscription\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/trexiptv-8k.com\\\/1-month-subscription\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/trexiptv-8k.com\\\/1-month-subscription\\\/#primaryimage\",\"url\":\"https:\\\/\\\/trexiptv-8k.com\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/trust-pilot-orders.png\",\"contentUrl\":\"https:\\\/\\\/trexiptv-8k.com\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/trust-pilot-orders.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/trexiptv-8k.com\\\/1-month-subscription\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/trexiptv-8k.com\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"1-month-subscription\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/trexiptv-8k.com\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/trexiptv-8k.com\\\/en\\\/\",\"name\":\"trex iptv\",\"description\":\"TREX IPTV Stream Unlimited Channels, Movies, TV Shows, and More Watch On the Go Huge Library Watch On the Go Free Test 24 hr Experience the Best IPTV Service with TREX IPTV High-Quality Streaming Unlimited Access 24\\\/7 Customer Support Free Test 24 hr Last Seasons of Popular Shows with TREX IPTV Exclusive Access Binge-Worthy\",\"publisher\":{\"@id\":\"https:\\\/\\\/trexiptv-8k.com\\\/en\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/trexiptv-8k.com\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/trexiptv-8k.com\\\/en\\\/#organization\",\"name\":\"trex iptv\",\"url\":\"https:\\\/\\\/trexiptv-8k.com\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/trexiptv-8k.com\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/trexiptv-8k.com\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/ChatGPT-Image-Aug-4-2025-10_43_08-PM-1.png\",\"contentUrl\":\"https:\\\/\\\/trexiptv-8k.com\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/ChatGPT-Image-Aug-4-2025-10_43_08-PM-1.png\",\"width\":1024,\"height\":1024,\"caption\":\"trex iptv\"},\"image\":{\"@id\":\"https:\\\/\\\/trexiptv-8k.com\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"1-month-subscription - Trex IPTV","description":"Get a 1 Month IPTV Subscription with HD & 4K streaming. Enjoy sports, movies & more with no buffering. Sign up now for instant access!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/trexiptv-8k.com\/en\/1-month-subscription\/","og_locale":"en_US","og_type":"article","og_title":"1-month-subscription - Trex IPTV","og_description":"Get a 1 Month IPTV Subscription with HD & 4K streaming. Enjoy sports, movies & more with no buffering. Sign up now for instant access!","og_url":"https:\/\/trexiptv-8k.com\/en\/1-month-subscription\/","og_site_name":"Trex IPTV","article_modified_time":"2026-09-29T02:35:05+00:00","og_image":[{"url":"https:\/\/trexiptv-8k.com\/wp-content\/uploads\/2025\/06\/trust-pilot-orders.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"17 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/trexiptv-8k.com\/1-month-subscription\/","url":"https:\/\/trexiptv-8k.com\/1-month-subscription\/","name":"1-month-subscription - Trex IPTV","isPartOf":{"@id":"https:\/\/trexiptv-8k.com\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/trexiptv-8k.com\/1-month-subscription\/#primaryimage"},"image":{"@id":"https:\/\/trexiptv-8k.com\/1-month-subscription\/#primaryimage"},"thumbnailUrl":"https:\/\/trexiptv-8k.com\/wp-content\/uploads\/2025\/06\/trust-pilot-orders.png","datePublished":"2025-03-07T00:50:07+00:00","dateModified":"2026-09-29T02:35:05+00:00","description":"Get a 1 Month IPTV Subscription with HD & 4K streaming. Enjoy sports, movies & more with no buffering. Sign up now for instant access!","breadcrumb":{"@id":"https:\/\/trexiptv-8k.com\/1-month-subscription\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/trexiptv-8k.com\/1-month-subscription\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/trexiptv-8k.com\/1-month-subscription\/#primaryimage","url":"https:\/\/trexiptv-8k.com\/wp-content\/uploads\/2025\/06\/trust-pilot-orders.png","contentUrl":"https:\/\/trexiptv-8k.com\/wp-content\/uploads\/2025\/06\/trust-pilot-orders.png"},{"@type":"BreadcrumbList","@id":"https:\/\/trexiptv-8k.com\/1-month-subscription\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/trexiptv-8k.com\/en\/"},{"@type":"ListItem","position":2,"name":"1-month-subscription"}]},{"@type":"WebSite","@id":"https:\/\/trexiptv-8k.com\/en\/#website","url":"https:\/\/trexiptv-8k.com\/en\/","name":"trex iptv","description":"TREX IPTV Stream Unlimited Channels, Movies, TV Shows, and More Watch On the Go Huge Library Watch On the Go Free Test 24 hr Experience the Best IPTV Service with TREX IPTV High-Quality Streaming Unlimited Access 24\/7 Customer Support Free Test 24 hr Last Seasons of Popular Shows with TREX IPTV Exclusive Access Binge-Worthy","publisher":{"@id":"https:\/\/trexiptv-8k.com\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/trexiptv-8k.com\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/trexiptv-8k.com\/en\/#organization","name":"trex iptv","url":"https:\/\/trexiptv-8k.com\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/trexiptv-8k.com\/en\/#\/schema\/logo\/image\/","url":"https:\/\/trexiptv-8k.com\/wp-content\/uploads\/2025\/08\/ChatGPT-Image-Aug-4-2025-10_43_08-PM-1.png","contentUrl":"https:\/\/trexiptv-8k.com\/wp-content\/uploads\/2025\/08\/ChatGPT-Image-Aug-4-2025-10_43_08-PM-1.png","width":1024,"height":1024,"caption":"trex iptv"},"image":{"@id":"https:\/\/trexiptv-8k.com\/en\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/trexiptv-8k.com\/en\/wp-json\/wp\/v2\/pages\/3079","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/trexiptv-8k.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/trexiptv-8k.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/trexiptv-8k.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/trexiptv-8k.com\/en\/wp-json\/wp\/v2\/comments?post=3079"}],"version-history":[{"count":5,"href":"https:\/\/trexiptv-8k.com\/en\/wp-json\/wp\/v2\/pages\/3079\/revisions"}],"predecessor-version":[{"id":8422,"href":"https:\/\/trexiptv-8k.com\/en\/wp-json\/wp\/v2\/pages\/3079\/revisions\/8422"}],"wp:attachment":[{"href":"https:\/\/trexiptv-8k.com\/en\/wp-json\/wp\/v2\/media?parent=3079"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}