/* Dream 4K IPTV Canada — site layer (d4ca). Literal colours on purpose: no custom properties. */
body.xhc-body{margin:0;background:#0D0F14;color:#E2E5EB;font-family:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
body.xhc-body *,body.xhc-body *::before,body.xhc-body *::after{box-sizing:border-box}
.xhc a{color:#8AB8FF;text-decoration:none}
.xhc a:hover{color:#C2DAFF}
.xhc h1,.xhc h2,.xhc h3{color:#FFFFFF;font-weight:800;letter-spacing:-.02em;line-height:1.15;margin:0 0 .5em}
.xhc h1{font-size:clamp(32px,5vw,54px)}
.xhc h2{font-size:clamp(26px,3.4vw,38px)}
.xhc h3{font-size:20px;letter-spacing:-.01em}
.xhc p{margin:0 0 1em}
.xhc ul,.xhc ol{margin:0 0 1em;padding-left:1.2em}
.xhc-wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.xhc-narrow{max-width:820px;margin:0 auto;padding:0 20px}
.xhc-sec{padding:72px 0;background:#0D0F14}
.xhc-sec.xhc-alt{background:#14171F}
.xhc-sec-head{max-width:760px;margin:0 0 36px}
.xhc-sec-head.xhc-c{margin:0 auto 36px;text-align:center}
.xhc-eyebrow{display:inline-block;margin:0 0 14px;color:#6AA3FF;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.xhc-lead{font-size:19px;color:#C9CDD6}
.xhc-muted{color:#A3A9B6;font-size:15px}

/* buttons */
.xhc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 26px;border-radius:12px;background:#2E7DFF;color:#FFFFFF!important;font-weight:800;font-size:16px;border:2px solid #2E7DFF;transition:transform .15s,background .15s;cursor:pointer}
.xhc-btn:hover{background:#1F66E5;border-color:#1F66E5;transform:translateY(-1px);color:#FFFFFF!important}
.xhc-btn-ghost{background:transparent;color:#FFFFFF!important;border-color:#3A3F4C}
.xhc-btn-ghost:hover{background:#1F232D;border-color:#555B6A}
.xhc-btn-sm{min-height:40px;padding:0 16px;font-size:14px;border-radius:10px}
.xhc-btn-block{width:100%}
.xhc-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 22px}

/* header */
.xhc-hdr{position:sticky;top:0;z-index:999;background:#0D0F14;border-bottom:1px solid #262A35;font-family:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.admin-bar .xhc-hdr{top:32px}
.xhc-hdr-in{max-width:1160px;margin:0 auto;padding:0 20px;height:70px;display:flex;align-items:center;gap:22px}
.xhc-logo{display:flex;align-items:center;gap:10px;color:#FFFFFF!important;font-weight:900;font-size:20px;letter-spacing:-.02em;text-decoration:none!important;white-space:nowrap}
.xhc-logo img{width:38px;height:38px;border-radius:9px;display:block}
.xhc-logo b{color:#2E7DFF}
.xhc-nav{display:flex;align-items:center;gap:4px;margin-left:auto}
.xhc-nav a{color:#D0D4DC!important;font-weight:600;font-size:15px;padding:8px 12px;border-radius:8px;text-decoration:none!important}
.xhc-nav a:hover,.xhc-nav a.is-on{color:#FFFFFF!important;background:#1F232D}
.xhc-nav .xhc-btn{margin-left:8px;color:#FFFFFF!important;background:#2E7DFF;padding:0 18px;min-height:42px}
.xhc-nav .xhc-btn:hover{background:#1F66E5}
.xhc-burger{display:none;margin-left:auto;width:44px;height:44px;border-radius:10px;border:1px solid #2E3340;background:#181B23;cursor:pointer;align-items:center;justify-content:center}
.xhc-burger span,.xhc-burger span::before,.xhc-burger span::after{display:block;width:20px;height:2px;background:#FFFFFF;position:relative;content:""}
.xhc-burger span::before{position:absolute;top:-6px}
.xhc-burger span::after{position:absolute;top:6px}
#xhc-nt{display:none}
@media (max-width:920px){
 .xhc-burger{display:flex}
 .xhc-nav{display:none;position:absolute;top:70px;left:0;right:0;flex-direction:column;align-items:stretch;gap:2px;padding:12px 16px 18px;background:#0D0F14;border-bottom:1px solid #262A35}
 #xhc-nt:checked ~ .xhc-nav{display:flex}
 .xhc-nav a{padding:12px}
 .xhc-nav .xhc-btn{margin:8px 0 0}
}

/* hero */
.xhc-hero{position:relative;padding:76px 0 64px;background:radial-gradient(800px 420px at 90% 0%,#0F2A5C 0,rgba(13,15,20,0) 65%),radial-gradient(600px 380px at 0% 100%,#1E1A26 0,rgba(13,15,20,0) 60%),#0D0F14;overflow:hidden}
.xhc-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.xhc-hero h1 b{color:#2E7DFF}
.xhc-chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0!important;margin:0}
.xhc-chips li{background:#181B23;border:1px solid #2E3340;color:#E2E5EB;font-size:14px;font-weight:600;padding:6px 12px;border-radius:999px}
.xhc-tv{background:#11141B;border:10px solid #E9EEFB;border-radius:22px;padding:16px;box-shadow:0 30px 80px rgba(0,0,0,.55)}
.xhc-tv-top{display:flex;justify-content:space-between;color:#A3A9B6;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}
.xhc-tv-top b{color:#6AA3FF}
.xhc-row{display:grid;grid-template-columns:64px 1fr auto;gap:10px;align-items:center;background:#1A1E27;border-radius:10px;padding:10px 12px;margin-bottom:8px}
.xhc-row:last-child{margin-bottom:0}
.xhc-row .t{color:#A3A9B6;font-size:12px;font-weight:700}
.xhc-row .n{color:#FFFFFF;font-size:14px;font-weight:700;line-height:1.3}
.xhc-row .n small{display:block;color:#A3A9B6;font-weight:500;font-size:12px}
.xhc-q{font-size:11px;font-weight:800;padding:3px 8px;border-radius:6px;background:#2E7DFF;color:#FFFFFF}
.xhc-q.fhd{background:#2F6BFF}
.xhc-q.hd{background:#3A3F4C}
.xhc-row.on{outline:2px solid #2E7DFF}
.xhc-stand{width:120px;height:14px;margin:0 auto;background:#E9EEFB;border-radius:0 0 10px 10px}

/* stats */
.xhc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;background:#14171F;border-top:1px solid #262A35;border-bottom:1px solid #262A35}
.xhc-stat{padding:26px 18px;text-align:center;border-right:1px solid #262A35}
.xhc-stat:last-child{border-right:0}
.xhc-stat b{display:block;color:#FFFFFF;font-size:28px;font-weight:900;letter-spacing:-.02em}
.xhc-stat span{color:#A3A9B6;font-size:14px;font-weight:600}

/* cards */
.xhc-grid{display:grid;gap:18px}
.xhc-g2{grid-template-columns:repeat(2,1fr)}
.xhc-g3{grid-template-columns:repeat(3,1fr)}
.xhc-g4{grid-template-columns:repeat(4,1fr)}
.xhc-card{background:#181B23;border:1px solid #2A2E39;border-radius:16px;padding:24px;color:#D0D4DC}
.xhc-card h3{margin-bottom:8px}
.xhc-card p:last-child,.xhc-card ul:last-child{margin-bottom:0}
.xhc-ico{width:46px;height:46px;border-radius:12px;background:#242833;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:14px}
.xhc-num{display:inline-flex;width:38px;height:38px;border-radius:50%;background:#2E7DFF;color:#FFFFFF;font-weight:900;align-items:center;justify-content:center;margin-bottom:12px}
.xhc-tick{list-style:none;padding:0!important}
.xhc-tick li{position:relative;padding-left:28px;margin-bottom:8px}
.xhc-tick li::before{content:"";position:absolute;left:0;top:7px;width:16px;height:16px;border-radius:50%;background:#2E7DFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.2l2.5 2.4L12 5.3' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.xhc-note{background:#1B1E26;border:1px solid #353A47;border-left:4px solid #FFC94D;border-radius:12px;padding:16px 18px;color:#E2E5EB;font-size:15px}
.xhc-note b{color:#FFFFFF}

/* pricing */
.xhc-plans{margin-top:8px}
.xhc-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin:0 auto 26px;background:#181B23;border:1px solid #2A2E39;border-radius:14px;padding:6px;width:max-content;max-width:100%}
.xhc-plans input[type=radio]{position:absolute;opacity:0;pointer-events:none}
.xhc-tabs label{cursor:pointer;padding:10px 18px;border-radius:10px;color:#D0D4DC;font-weight:700;font-size:15px;user-select:none}
.xhc-panel{display:none}
.xhc-plans .xhc-r1:checked ~ .xhc-tabs .xhc-l1,.xhc-plans .xhc-r2:checked ~ .xhc-tabs .xhc-l2,.xhc-plans .xhc-r3:checked ~ .xhc-tabs .xhc-l3,.xhc-plans .xhc-r4:checked ~ .xhc-tabs .xhc-l4{background:#2E7DFF;color:#FFFFFF}
.xhc-plans .xhc-r1:checked ~ .xhc-p1,.xhc-plans .xhc-r2:checked ~ .xhc-p2,.xhc-plans .xhc-r3:checked ~ .xhc-p3,.xhc-plans .xhc-r4:checked ~ .xhc-p4{display:grid}
.xhc-panel{grid-template-columns:repeat(4,1fr);gap:16px}
.xhc-plan{position:relative;display:flex;flex-direction:column;background:#181B23;border:1px solid #2A2E39;border-radius:18px;padding:26px 22px}
.xhc-plan.best{background:#111A2C;border:2px solid #2E7DFF;box-shadow:0 20px 50px rgba(46,125,255,.2)}
.xhc-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:#2E7DFF;color:#FFFFFF;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:999px;white-space:nowrap}
.xhc-plan h3{font-size:18px;color:#FFFFFF;margin:0 0 4px}
.xhc-plan .dv{color:#A3A9B6;font-size:14px;font-weight:600}
.xhc-price{margin:16px 0 2px;color:#FFFFFF;font-size:44px;font-weight:900;letter-spacing:-.03em;line-height:1}
.xhc-price sup{font-size:22px;top:-.7em;margin-right:2px}
.xhc-pm{color:#FFC94D;font-size:14px;font-weight:700;min-height:22px;margin-bottom:16px}
.xhc-plan ul{list-style:none;padding:0!important;margin:0 0 20px;font-size:14px;color:#D0D4DC}
.xhc-plan ul li{padding:6px 0 6px 24px;border-bottom:1px solid #242833;position:relative}
.xhc-plan ul li::before{content:"✓";position:absolute;left:2px;color:#6AA3FF;font-weight:900}
.xhc-plan .xhc-btn{margin-top:auto}
.xhc-paynote{text-align:center;margin-top:22px;color:#A3A9B6;font-size:14px}

/* table */
.xhc-tbl-wrap{overflow-x:auto;border-radius:16px;border:1px solid #2A2E39}
.xhc-tbl{width:100%;border-collapse:collapse;min-width:640px;background:#181B23;font-size:15px}
.xhc-tbl th,.xhc-tbl td{padding:14px 16px;text-align:left;border-bottom:1px solid #242833;color:#D0D4DC;vertical-align:top}
.xhc-tbl thead th{background:#14171F;color:#FFFFFF;font-weight:800}
.xhc-tbl td:first-child{color:#FFFFFF;font-weight:700}
.xhc-tbl .ca{background:#1F232D;color:#FFFFFF;font-weight:700}
.xhc-tbl thead th.ca{background:#2E7DFF}
.xhc-tbl tr:last-child td{border-bottom:0}

/* faq */
.xhc-faq{max-width:860px;margin:0 auto}
.xhc-faq details{background:#181B23;border:1px solid #2A2E39;border-radius:14px;margin-bottom:10px;overflow:hidden}
.xhc-faq summary{cursor:pointer;list-style:none;padding:18px 52px 18px 20px;color:#FFFFFF;font-weight:700;font-size:17px;position:relative}
.xhc-faq summary::-webkit-details-marker{display:none}
.xhc-faq summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);color:#6AA3FF;font-size:24px;font-weight:700}
.xhc-faq details[open] summary::after{content:"–"}
.xhc-faq .a{padding:0 20px 18px;color:#D0D4DC}
.xhc-faq .a p:last-child{margin:0}

/* cta band */
.xhc-band{background:linear-gradient(120deg,#2E7DFF 0%,#1650C0 55%,#0A1F47 100%);border-radius:22px;padding:44px 40px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}
.xhc-band h2{margin:0 0 6px;color:#FFFFFF}
.xhc-band p{margin:0;color:#E3EEFF}
.xhc-band .xhc-btn{background:#FFFFFF;color:#0D0F14!important;border-color:#FFFFFF}
.xhc-band .xhc-btn:hover{background:#F3F4F6;color:#0D0F14!important}

/* inner pages */
.xhc-phero{padding:64px 0 40px;background:radial-gradient(700px 360px at 100% 0%,#0F2A5C 0,rgba(13,15,20,0) 65%),#0D0F14;border-bottom:1px solid #262A35}
.xhc-crumbs{font-size:14px;color:#A3A9B6;margin-bottom:14px}
.xhc-crumbs a{color:#A3A9B6}
.xhc-prose{color:#D0D4DC}
.xhc-prose h2{font-size:28px;margin-top:1.6em}
.xhc-prose h3{margin-top:1.4em}
.xhc-prose li{margin-bottom:6px}
.xhc-prose strong{color:#FFFFFF}
.xhc-steps{counter-reset:s;list-style:none;padding:0!important}
.xhc-steps li{counter-increment:s;position:relative;padding:0 0 14px 46px;margin:0}
.xhc-steps li::before{content:counter(s);position:absolute;left:0;top:0;width:32px;height:32px;border-radius:50%;background:#242833;color:#FFFFFF;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:14px}
.xhc-kv{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 1.2em}
.xhc-kv div{background:#181B23;border:1px solid #2A2E39;border-radius:12px;padding:14px}
.xhc-kv b{display:block;color:#FFFFFF;font-size:22px}
.xhc-kv span{color:#A3A9B6;font-size:14px}
.xhc-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.xhc-posts a.xhc-card{display:block;color:#D0D4DC}
.xhc-posts a.xhc-card:hover{border-color:#2E7DFF}
.xhc-posts .k{color:#6AA3FF;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.xhc-posts h3{margin:8px 0}
.xhc-legal{font-size:16px}
.xhc-legal h2{font-size:22px}

/* footer */
.xhc-ftr{background:#08090C;border-top:1px solid #262A35;color:#A3A9B6;font-family:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:15px;line-height:1.6}
.xhc-ftr-in{max-width:1160px;margin:0 auto;padding:56px 20px 28px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:32px}
.xhc-ftr h4{color:#FFFFFF;font-size:14px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin:0 0 14px}
.xhc-ftr ul{list-style:none;padding:0;margin:0}
.xhc-ftr li{margin-bottom:8px}
.xhc-ftr a{color:#D0D4DC!important;text-decoration:none!important}
.xhc-ftr a:hover{color:#FFFFFF!important}
.xhc-ftr p{margin:12px 0 0;color:#A3A9B6}
.xhc-ftr-bot{max-width:1160px;margin:0 auto;padding:18px 20px 28px;border-top:1px solid #1A1D24;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:13px;color:#7A808C}

/* theme pages (checkout, cart, account): hide Blocksy chrome, recolour accents */
body.xhc-theme #site-header,body.xhc-theme header.site-header,body.xhc-theme #site-footer,body.xhc-theme footer.site-footer,body.xhc-theme .ekit-template-content-header,body.xhc-theme .ekit-template-content-footer,body.xhc-theme .elementor-location-header,body.xhc-theme .elementor-location-footer{display:none!important}
body.xhc-theme{background:#FFFFFF;color:#1F2937}
body.xhc-theme .xhc-hdr,body.xhc-theme .xhc-ftr{font-size:15px}
body.xhc-theme .woocommerce #place_order,body.xhc-theme .woocommerce button.button.alt,body.xhc-theme .woocommerce a.button.alt{background:#2E7DFF!important;border-color:#2E7DFF!important;color:#FFFFFF!important}

@media (max-width:1000px){
 .xhc-panel{grid-template-columns:repeat(2,1fr)}
 .xhc-g4{grid-template-columns:repeat(2,1fr)}
 .xhc-ftr-in{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
 .xhc-hero-grid{grid-template-columns:1fr}
 .xhc-g3,.xhc-posts{grid-template-columns:1fr}
 .xhc-stats{grid-template-columns:repeat(2,1fr)}
 .xhc-stat:nth-child(2){border-right:0}
 .xhc-stat{border-bottom:1px solid #262A35}
 .xhc-kv{grid-template-columns:1fr}
}
@media (max-width:600px){
 body.xhc-body{font-size:16px}
 .xhc-sec{padding:52px 0}
 .xhc-hero{padding:48px 0 44px}
 .xhc-panel,.xhc-g2,.xhc-g4{grid-template-columns:1fr}
 .xhc-band{padding:30px 22px}
 .xhc-ftr-in{grid-template-columns:1fr}
 .xhc-tabs label{padding:9px 12px;font-size:14px}
 .xhc-cta-row .xhc-btn{width:100%}
}

/* a11y helpers (theme CSS is not loaded on own pages) */
body.xhc-body .skip-link,body.xhc-body .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.xhc-body .skip-link:focus{width:auto;height:auto;clip:auto;margin:0;top:8px;left:8px;z-index:100000;background:#FFFFFF;color:#0D0F14;padding:10px 14px;border-radius:8px}

/* language switch + flag */
.xhc-lang{display:inline-flex;align-items:center;gap:4px;margin-left:6px;padding:4px;border:1px solid #2E3340;border-radius:9px;background:#181B23}
.xhc-lang a{padding:4px 8px!important;font-size:13px!important;font-weight:800!important;border-radius:6px;color:#A3A9B6!important}
.xhc-lang a.is-on{background:#2E7DFF;color:#FFFFFF!important}
.xhc-logo small{display:block;font-size:10px;font-weight:800;letter-spacing:.18em;color:#6AA3FF;margin-top:-2px}
.xhc-logo span{line-height:1.1}
.xhc-leaf{color:#2E7DFF}
.xhc-cities{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0!important;margin:0 0 1em}
.xhc-cities li{background:#181B23;border:1px solid #2E3340;color:#E2E5EB;border-radius:999px;padding:6px 12px;font-size:14px;font-weight:600}

/* five terms (1/3/6/12/24 months): let the plan cards wrap evenly */
.xhc-panel{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important}
/* Astra + Elementor Pro theme pages: hide the theme header/footer, ours are injected */
body.xhc-theme #masthead,body.xhc-theme header.site-header,body.xhc-theme footer.site-footer,body.xhc-theme .site-footer{display:none!important}
