/* ===== IPTV Brampton 4K design system ===== */
@font-face{font-family:"Fira Sans Condensed";font-weight:500;font-style:normal;font-display:swap;src:url(fonts/fira-sans-condensed-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Fira Sans Condensed";font-weight:600;font-style:normal;font-display:swap;src:url(fonts/fira-sans-condensed-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Fira Sans Condensed";font-weight:700;font-style:normal;font-display:swap;src:url(fonts/fira-sans-condensed-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Open Sans";font-weight:400;font-style:normal;font-display:swap;src:url(fonts/open-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Open Sans";font-weight:600;font-style:normal;font-display:swap;src:url(fonts/open-sans-latin-600-normal.woff2) format("woff2")}

:root{
 --ib-bg:#0A0F1C;--ib-surface:#121A2E;--ib-surface-2:#182340;
 --ib-primary:#00C2FF;--ib-primary-dark:#00A3D9;--ib-gold:#FFB800;
 --ib-head:#FFFFFF;--ib-text:#C3CCDA;--ib-border:rgba(255,255,255,.09);
 --ib-radius:14px;--ib-wa:#25D366;--ib-wa-dark:#1DA851;
 --ib-font-head:"Fira Sans Condensed","Arial Narrow",Arial,sans-serif;
 --ib-font-body:"Open Sans",Arial,sans-serif;
}
html,body{background:var(--ib-bg)!important;color:var(--ib-text);font-family:var(--ib-font-body);overflow-x:hidden}
body{line-height:1.7;font-size:16px}
h1,h2,h3,h4,h5,h6{font-family:var(--ib-font-head);color:var(--ib-head);line-height:1.2;font-weight:700}
a{color:var(--ib-primary)}
a:hover{color:#fff}
.entry-content a:not(.ib-btn):not(.button){text-decoration:underline}
img{max-width:100%;height:auto}
.elementor-section,.e-con{--ib-x:0}

/* Buttons: ice-blue + dark text; gold secondary. Text colour forced. */
.ib-btn,.button,button.button,.wp-element-button,.woocommerce a.button,.woocommerce button.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,#place_order{
 display:inline-flex;align-items:center;justify-content:center;gap:8px;background-color:var(--ib-primary)!important;color:var(--ib-bg)!important;
 font-family:var(--ib-font-head);font-weight:700;font-size:16px;letter-spacing:.2px;padding:13px 26px;border:2px solid var(--ib-primary);border-radius:10px;text-decoration:none!important;cursor:pointer;transition:background-color .2s,transform .2s}
.ib-btn:hover,.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,#place_order:hover{background-color:#fff!important;border-color:#fff;color:var(--ib-bg)!important}
.ib-btn--gold{background-color:#2E9BFF!important;border-color:#2E9BFF!important;color:var(--ib-bg)!important}
.ib-btn--gold:hover{background-color:#fff!important;border-color:#fff!important}
.ib-btn--ghost{background-color:transparent!important;color:#fff!important;border-color:var(--ib-border)!important}
.ib-btn--ghost:hover{border-color:var(--ib-primary)!important;color:var(--ib-primary)!important}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--ib-gold);outline-offset:2px}

/* Layout helpers */
.ib-wrap{max-width:1200px;margin:0 auto;padding:0 20px}
.ib-section{padding:72px 0}
.ib-eyebrow{display:inline-block;color:var(--ib-gold);font-family:var(--ib-font-head);font-weight:600;letter-spacing:2px;text-transform:uppercase;font-size:14px;margin-bottom:10px}
.ib-lead{font-size:18px;color:var(--ib-text);max-width:760px}
.ib-grid{display:grid;gap:22px}
.ib-grid--3{grid-template-columns:repeat(3,1fr)}
.ib-grid--4{grid-template-columns:repeat(4,1fr)}
.ib-grid--2{grid-template-columns:repeat(2,1fr)}
.ib-card{background:var(--ib-surface);border:1px solid var(--ib-border);border-radius:var(--ib-radius);padding:26px}
.ib-card h3{font-size:22px;margin:0 0 8px}
.ib-icon{width:44px;height:44px;color:var(--ib-primary);margin-bottom:12px}

/* Breadcrumbs + hero */
.ib-crumbs{font-size:14px;margin-bottom:14px}
.ib-crumbs a{color:var(--ib-text)}
.ib-hero{padding:56px 0 64px;background:radial-gradient(900px 400px at 80% 0,rgba(0,194,255,.12),transparent 60%),var(--ib-bg)}
.ib-hero h1{font-size:clamp(34px,5vw,56px);margin:0 0 16px}
.ib-checks{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:10px 22px}
.ib-checks li::before{content:"\2713";color:var(--ib-primary);margin-right:8px;font-weight:700}

/* Stats */
.ib-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.ib-stat{background:var(--ib-surface);border:1px solid var(--ib-border);border-radius:var(--ib-radius);padding:20px;text-align:center}
.ib-stat b{display:block;font-family:var(--ib-font-head);font-size:30px;color:var(--ib-primary)}

/* Plan cards + tabs */
.ib-tabs{display:flex;gap:8px;justify-content:center;margin:0 0 28px}
.ib-tab{background:var(--ib-surface);color:#fff;border:1px solid var(--ib-border);border-radius:999px;padding:10px 26px;font-family:var(--ib-font-head);font-weight:700;cursor:pointer}
.ib-tab[aria-selected=true]{background:var(--ib-primary);color:var(--ib-bg);border-color:var(--ib-primary)}
.ib-tab[data-tier=premium][aria-selected=true]{background:#2E9BFF;border-color:#2E9BFF}
.ib-plan{position:relative;display:flex;flex-direction:column;background:var(--ib-surface);border:1px solid var(--ib-border);border-radius:var(--ib-radius);padding:26px}
.ib-plan--premium{border-top:3px solid var(--ib-gold)}
.ib-plan--standard{border-top:3px solid var(--ib-primary)}
.ib-badge{position:absolute;top:-12px;right:18px;background:var(--ib-gold);color:var(--ib-bg);font-weight:700;font-size:13px;padding:4px 12px;border-radius:999px}
.ib-price{font-family:var(--ib-font-head);font-size:44px;color:#fff;font-weight:700;line-height:1}
.ib-price small{font-size:16px;color:var(--ib-text)}
.ib-plan ul{list-style:none;padding:0;margin:18px 0;flex:1}
.ib-plan li{padding:5px 0 5px 26px;position:relative;font-size:15px}
.ib-plan li::before{content:"\2713";position:absolute;left:0;color:var(--ib-primary);font-weight:700}
.ib-plan--premium li::before{color:var(--ib-gold)}

/* Table */
.ib-table-wrap{overflow-x:auto}
.ib-table{width:100%;border-collapse:collapse;background:var(--ib-surface);border-radius:var(--ib-radius);overflow:hidden}
.ib-table th,.ib-table td{padding:14px 16px;border-bottom:1px solid var(--ib-border);text-align:left}
.ib-table th{color:#fff;font-family:var(--ib-font-head);background:var(--ib-surface-2)}

/* Steps, FAQ, CTA, box */
.ib-steps{counter-reset:s;display:grid;gap:18px;grid-template-columns:repeat(3,1fr)}
.ib-step{counter-increment:s;background:var(--ib-surface);border:1px solid var(--ib-border);border-radius:var(--ib-radius);padding:24px 24px 24px 72px;position:relative}
.ib-step::before{content:counter(s);position:absolute;left:20px;top:22px;width:36px;height:36px;border-radius:50%;background:var(--ib-primary);color:var(--ib-bg);font-weight:700;display:flex;align-items:center;justify-content:center;font-family:var(--ib-font-head)}
.ib-faq details{background:var(--ib-surface);border:1px solid var(--ib-border);border-radius:12px;margin-bottom:10px;padding:0 20px}
.ib-faq summary{cursor:pointer;padding:16px 0;color:#fff;font-weight:600;font-family:var(--ib-font-head);font-size:18px;list-style:none}
.ib-faq summary::-webkit-details-marker{display:none}
.ib-faq summary::after{content:"+";float:right;color:var(--ib-primary);font-size:24px;line-height:1}
.ib-faq details[open] summary::after{content:"\2212"}
.ib-faq details>div{padding:0 0 16px}
.ib-cta{background:linear-gradient(135deg,var(--ib-surface-2),var(--ib-surface));border:1px solid var(--ib-border);border-radius:20px;padding:44px 28px;text-align:center}
.ib-note{border-left:4px solid var(--ib-gold);background:var(--ib-surface);padding:20px 24px;border-radius:0 12px 12px 0}

/* Header / footer */
.ib-header{position:sticky;top:0;z-index:999;background-color:var(--ib-bg);border-bottom:1px solid var(--ib-border)}
.ib-footer{background:#070B15;border-top:1px solid var(--ib-border);padding:56px 0 0}
.ib-footer-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.ib-footer h4{font-size:17px;margin:0 0 14px}
.ib-footer ul{list-style:none;margin:0;padding:0}
.ib-footer li{margin:7px 0}
.ib-footer a{color:var(--ib-text)}
.ib-footer a:hover{color:var(--ib-primary)}
.ib-footer-bottom{margin-top:36px;padding:20px 0;border-top:1px solid var(--ib-border);font-size:14px;text-align:center}

/* WhatsApp floating button */
.ib-wa{position:fixed;right:18px;bottom:18px;z-index:9999;width:58px;height:58px;border-radius:50%;background-color:var(--ib-wa);color:#fff!important;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.4);transition:background-color .2s}
.ib-wa:hover{background-color:var(--ib-wa-dark)}
.ib-wa svg{width:30px;height:30px;fill:#fff}

/* WooCommerce dark base */
.woocommerce,.woocommerce-page{color:var(--ib-text)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row select,.woocommerce form .form-row textarea,.select2-container .select2-selection{background:var(--ib-surface-2);color:#fff;border:1px solid var(--ib-border);border-radius:8px;padding:12px}
.woocommerce table.shop_table{background:var(--ib-surface);border-color:var(--ib-border);color:var(--ib-text)}
.woocommerce-checkout #payment{background:var(--ib-surface)}

/* Responsive */
@media(max-width:1024px){.ib-grid--4,.ib-footer-cols,.ib-stats{grid-template-columns:repeat(2,1fr)}.ib-grid--3,.ib-steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){.ib-section{padding:48px 0}.ib-grid--3,.ib-grid--2,.ib-steps{grid-template-columns:1fr}.ib-hero{padding:36px 0 44px}.ib-price{font-size:38px}}
@media(max-width:359px){.ib-footer-cols{grid-template-columns:1fr}}
/* iOS Safari black-square guard */
@media(max-width:767px){.ib-hero::before,.ib-hero::after{-webkit-mask-image:none;mask-image:none}*{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}}
@supports(-webkit-touch-callout:none){.ib-hero::before,.ib-hero::after{-webkit-mask-image:none;mask-image:none}*{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;filter:none}}

/* ===== Checkout ===== */
.ib-steps-bar{list-style:none;display:flex;gap:8px;padding:0;margin:0 0 24px;flex-wrap:wrap}
.ib-steps-bar li{flex:1;min-width:140px;text-align:center;padding:10px;border:1px solid var(--ib-border);border-radius:10px;background:var(--ib-surface);font-family:var(--ib-font-head);font-size:15px}
.ib-steps-bar li.on{border-color:var(--ib-primary);color:#fff}
.woocommerce-billing-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.woocommerce-billing-fields__field-wrapper .form-row{width:100%!important;float:none!important;margin:0 0 16px}
.woocommerce-billing-fields__field-wrapper .form-row-wide{grid-column:1/-1}
.woocommerce form .form-row label,.ib-devices legend{color:#fff;font-weight:600}
.ib-devices{border:0;padding:0;margin:0 0 16px}
.ib-device-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.ib-device-grid label{display:flex;align-items:center;gap:8px;background:var(--ib-surface-2);border:1px solid var(--ib-border);border-radius:10px;padding:10px 12px;cursor:pointer;color:#fff}
.ib-mag .description{display:block;font-size:13px;margin-top:4px}
.ib-trust-line{text-align:center;font-size:14px;margin:14px 0 0;overflow-wrap:anywhere}
.ib-interac{background:var(--ib-surface-2);border:1px solid var(--ib-border);border-left:4px solid var(--ib-gold);border-radius:12px;padding:18px 22px;margin:16px 0}
.ib-interac p{margin:0 0 10px}
.ib-copy{background:#2E9BFF;color:var(--ib-bg);border:0;border-radius:6px;padding:4px 12px;font-weight:700;cursor:pointer;margin-left:8px}
.ib-modal{position:fixed;inset:0;z-index:100000;background:rgba(5,8,16,.85);display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto}
.ib-modal[hidden]{display:none}
.ib-modal-box{background:var(--ib-surface);border:1px solid var(--ib-border);border-radius:18px;max-width:620px;width:100%;padding:28px;max-height:92vh;overflow:auto}
.ib-sum{list-style:none;padding:0;margin:14px 0}
.ib-sum li{padding:4px 0}
.ib-modal-btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
@media(max-width:600px){.woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr}.ib-device-grid{grid-template-columns:1fr}}
