/* deluxetv.ca — configuration + guides shared style */
:root{
  --bg:#020228;
  --bg-card:#0f0f3a;
  --bg-card-2:#181851;
  --primary:#A730F9;
  --primary-2:#ab17e9;
  --accent:#4C6AE0;
  --success:#25d366;
  --interac:#FFB100;
  --text:#FFFFFF;
  --text-mute:#b8c1d9;
  --border:rgba(255,255,255,.08);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font:16px/1.6 -apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--primary);text-decoration:none}
a:hover{color:var(--primary-2);text-decoration:underline}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}

/* nav */
.dx-nav{background:rgba(2,2,40,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50}
.dx-nav .wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 24px}
.dx-brand{font-weight:800;font-size:22px;letter-spacing:-.02em;color:#fff}
.dx-brand span{background:linear-gradient(135deg,var(--primary),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}
.dx-nav ul{display:flex;gap:22px;list-style:none;margin:0;padding:0}
.dx-nav a{color:#dfe3f5;font-size:14px;font-weight:500}
.dx-nav a:hover{color:#fff;text-decoration:none}
.dx-nav .cta{background:var(--primary);color:#fff;padding:9px 16px;border-radius:8px;transition:.2s}
.dx-nav .cta:hover{background:var(--primary-2);color:#fff}

/* hero */
.dx-hero{padding:64px 0 48px;text-align:center;background:radial-gradient(ellipse at top,rgba(167,48,249,.18),transparent 60%)}
.dx-hero .eyebrow{display:inline-block;background:rgba(167,48,249,.15);border:1px solid rgba(167,48,249,.35);color:#dfb6ff;font-size:13px;font-weight:600;padding:6px 14px;border-radius:99px;margin-bottom:18px;letter-spacing:.04em;text-transform:uppercase}
.dx-hero h1{font-size:48px;line-height:1.1;margin:0 0 18px;letter-spacing:-.02em;font-weight:800}
.dx-hero h1 span{background:linear-gradient(135deg,var(--primary),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}
.dx-hero p.lead{font-size:18px;color:var(--text-mute);max-width:680px;margin:0 auto 28px}

/* sections */
section.dx{padding:56px 0}
section.dx h2{font-size:32px;margin:0 0 12px;letter-spacing:-.01em}
section.dx .sub{color:var(--text-mute);margin:0 0 32px;font-size:16px}

/* device grid */
.dx-devices{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.dx-device{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:24px;text-align:center;transition:.2s;display:block;color:inherit}
.dx-device:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 16px 40px -16px rgba(167,48,249,.4);text-decoration:none;color:inherit}
.dx-device .icon{width:54px;height:54px;background:linear-gradient(135deg,var(--primary),var(--accent));border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:26px;font-weight:700;margin-bottom:14px}
.dx-device h3{margin:0 0 6px;font-size:18px;font-weight:700}
.dx-device p{margin:0;color:var(--text-mute);font-size:14px}

/* steps */
.dx-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.dx-step{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:24px;position:relative}
.dx-step .n{position:absolute;top:-14px;left:24px;background:var(--primary);color:#fff;width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:15px}
.dx-step h3{margin:8px 0 8px;font-size:18px}
.dx-step p{margin:0;color:var(--text-mute);font-size:14px}

/* numbered list (guide steps) */
.dx-walk{counter-reset:s}
.dx-walk li{list-style:none;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px 20px 20px 64px;margin-bottom:14px;position:relative}
.dx-walk li::before{counter-increment:s;content:counter(s);position:absolute;left:18px;top:18px;width:32px;height:32px;background:linear-gradient(135deg,var(--primary),var(--accent));border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
.dx-walk li h3{margin:0 0 4px;font-size:17px}
.dx-walk li p{margin:0;color:var(--text-mute);font-size:14.5px}
.dx-walk li code{background:rgba(167,48,249,.18);color:#f0d8ff;padding:2px 8px;border-radius:6px;font-size:13px;font-family:SF Mono,Monaco,Consolas,monospace}

/* callouts */
.dx-callout{background:linear-gradient(135deg,rgba(255,177,0,.12),rgba(255,177,0,.04));border:1px solid rgba(255,177,0,.35);border-radius:14px;padding:22px 22px 22px 64px;position:relative;margin:28px 0}
.dx-callout::before{content:"⚠";position:absolute;left:22px;top:18px;font-size:26px}
.dx-callout strong{color:var(--interac)}
.dx-callout.ok{background:linear-gradient(135deg,rgba(37,211,102,.12),rgba(37,211,102,.04));border-color:rgba(37,211,102,.35)}
.dx-callout.ok::before{content:"✓"}
.dx-callout.ok strong{color:var(--success)}

/* FAQ */
.dx-faq{max-width:820px;margin:0 auto}
.dx-faq details{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:16px 20px;margin-bottom:12px}
.dx-faq summary{cursor:pointer;font-weight:600;font-size:17px;list-style:none;display:flex;justify-content:space-between;align-items:center}
.dx-faq summary::after{content:"+";color:var(--primary);font-size:24px;font-weight:300;transition:.2s}
.dx-faq details[open] summary::after{transform:rotate(45deg)}
.dx-faq details[open]{border-color:var(--primary)}
.dx-faq p{color:var(--text-mute);margin:14px 0 0;font-size:15px}

/* CTAs */
.dx-cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.dx-btn{display:inline-block;padding:14px 26px;border-radius:10px;font-weight:600;font-size:15px;transition:.2s}
.dx-btn.primary{background:var(--primary);color:#fff}
.dx-btn.primary:hover{background:var(--primary-2);color:#fff;text-decoration:none}
.dx-btn.ghost{background:transparent;color:#fff;border:1px solid var(--border)}
.dx-btn.ghost:hover{border-color:var(--primary);color:#fff;text-decoration:none}

/* big payment box */
.dx-pay{background:linear-gradient(135deg,var(--bg-card-2),var(--bg-card));border:1px solid var(--border);border-radius:16px;padding:32px;margin:24px 0}
.dx-pay .em{background:#0a0a2c;border:1px dashed var(--primary);padding:14px 18px;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0;font-family:SF Mono,Monaco,Consolas,monospace;font-size:15px}
.dx-pay .em b{color:var(--primary)}
.dx-pay .copy{background:var(--primary);color:#fff;border:0;padding:8px 14px;border-radius:6px;cursor:pointer;font:inherit;font-weight:600}
.dx-pay .copy:hover{background:var(--primary-2)}

/* footer */
.dx-foot{border-top:1px solid var(--border);padding:32px 0;color:var(--text-mute);font-size:14px;text-align:center;margin-top:48px}
.dx-foot a{color:var(--text-mute)}
.dx-foot a:hover{color:#fff}

/* breadcrumb */
.dx-crumb{color:var(--text-mute);font-size:14px;margin-bottom:18px}
.dx-crumb a{color:var(--text-mute)}
.dx-crumb a:hover{color:#fff;text-decoration:none}

@media (max-width:680px){
  .dx-hero h1{font-size:34px}
  .dx-nav ul{display:none}
  section.dx{padding:36px 0}
}