/* DStv IPTV Service — South Africa green + gold theme (ds- classes) */
:root{
  --ds-bg:#2c4f41;
  --ds-bg2:#507c69;
  --ds-card:#0e2419;
  --ds-line:#1b3d2c;
  --ds-green:#0a9c5c;
  --ds-green2:#0c7c4a;
  --ds-gold:#f5b915;
  --ds-txt:#e8f6ee;
  --ds-mut:#9bc0ac;
}

/* force site header visible on dark theme */
.header.navbar-area{
  background:linear-gradient(135deg,#06150f 0%,#0e2419 100%)!important;
  position:relative!important;box-shadow:0 2px 14px rgba(0,0,0,.3);
}
.header.navbar-area .navbar-brand,
.header.navbar-area .navbar-nav>li>a{color:#e8f6ee!important}
.header.navbar-area .navbar-nav>li>a:hover{color:var(--ds-gold)!important}
.header.navbar-area .add-list-button .btn{background:var(--ds-gold)!important;color:#0a2016!important;border-color:var(--ds-gold)!important}

/* HERO */
.ds-hero{
  background:radial-gradient(900px 500px at 12% -10%,#0f4d31 0%,transparent 55%),
             radial-gradient(700px 500px at 100% 10%,#3a2c05 0%,transparent 50%),
             var(--ds-bg);
  padding:60px 0 70px;color:var(--ds-txt);
}
.ds-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}
.ds-badge{
  display:inline-flex;align-items:center;gap:8px;background:rgba(245,185,21,.13);
  color:var(--ds-gold);border:1px solid rgba(245,185,21,.4);border-radius:50px;
  padding:7px 16px;font-size:.82rem;font-weight:700;margin-bottom:20px;
}
.ds-hero-txt h1{font-size:3rem;line-height:1.12;font-weight:800;color:#fff;margin:0 0 16px}
.ds-hero-txt h1 span{color:var(--ds-green);display:inline-block}
.ds-hero-txt>p{font-size:1.1rem;color:var(--ds-mut);line-height:1.7;margin:0 0 28px;max-width:520px}
.ds-hero-txt>p strong{color:#fff}
.ds-hero-btns{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:30px}
.ds-btn{display:inline-flex;align-items:center;gap:9px;border-radius:11px;padding:14px 26px;font-weight:700;font-size:.98rem;transition:.2s}
.ds-btn--gold{background:var(--ds-gold);color:#0a2016}
.ds-btn--gold:hover{background:#ffc731;color:#0a2016;transform:translateY(-2px)}
.ds-btn--ghost{background:transparent;color:#fff;border:1px solid var(--ds-green)}
.ds-btn--ghost:hover{background:var(--ds-green);color:#fff}
.ds-hero-stats{display:flex;gap:30px}
.ds-hero-stats div{display:flex;flex-direction:column}
.ds-hero-stats b{font-size:1.7rem;color:var(--ds-gold);font-weight:800;line-height:1}
.ds-hero-stats span{color:var(--ds-mut);font-size:.85rem;margin-top:4px}

.ds-hero-card{
  background:linear-gradient(160deg,#0e2419 0%,#0a1d15 100%);
  border:1px solid var(--ds-line);border-radius:20px;padding:26px;
  box-shadow:0 24px 60px rgba(0,0,0,.45);
}
.ds-card-top{display:inline-flex;align-items:center;gap:8px;color:var(--ds-gold);font-weight:700;font-size:.9rem;margin-bottom:18px}
.ds-card-top i{color:#ff4d4d}
.ds-hero-card ul{list-style:none;margin:0;padding:0}
.ds-hero-card li{
  display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--ds-line);
  color:var(--ds-txt);font-weight:600;
}
.ds-hero-card li i{color:var(--ds-green);font-size:1.2rem}
.ds-hero-card li span{margin-left:auto;font-size:.7rem;font-weight:800;background:var(--ds-green);color:#04140d;padding:3px 9px;border-radius:50px}
.ds-card-foot{display:flex;align-items:center;gap:8px;color:var(--ds-mut);font-size:.88rem;margin-top:16px}
.ds-card-foot i{color:var(--ds-green)}

/* TRUST */
.ds-trust{background:var(--ds-bg2);padding:26px 0;border-top:1px solid var(--ds-line);border-bottom:1px solid var(--ds-line)}
.ds-trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.ds-trust-row div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px}
.ds-trust-row i{color:var(--ds-gold);font-size:1.6rem;margin-bottom:4px}
.ds-trust-row b{color:#fff;font-size:1rem}
.ds-trust-row span{color:var(--ds-mut);font-size:.82rem}

/* CATEGORIES */
.ds-cat{background:var(--ds-bg);padding:64px 0}
.ds-h2{text-align:center;color:#fff;font-size:2rem;font-weight:800;margin:0 0 10px}
.ds-note{text-align:center;color:var(--ds-mut);max-width:560px;margin:0 auto 40px}
.ds-cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1050px;margin:0 auto}
.ds-cat-card{background:var(--ds-card);border:1px solid var(--ds-line);border-radius:16px;padding:28px 24px;transition:.25s}
.ds-cat-card:hover{transform:translateY(-6px);border-color:var(--ds-green);box-shadow:0 16px 40px rgba(0,0,0,.4)}
.ds-cat-card i{font-size:2rem;color:var(--ds-gold);margin-bottom:14px;display:block}
.ds-cat-card h3{color:#fff;font-size:1.2rem;font-weight:800;margin:0 0 8px}
.ds-cat-card p{color:var(--ds-mut);font-size:.92rem;line-height:1.6;margin:0}

/* PRICING (site classes styled by main.css; add spacing + gold accents) */
.ds-pricing{background:var(--ds-bg2);padding:64px 0}
.ds-pricing .section-title2 h3{color:#fff;font-weight:800}
.ds-pricing .section-title2 p{color:var(--ds-mut)}

/* DEVICES */
.ds-devices{background:var(--ds-bg);padding:56px 0}
.ds-dev-row{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;max-width:820px;margin:0 auto}
.ds-dev-row span{
  display:inline-flex;align-items:center;gap:9px;background:var(--ds-card);
  border:1px solid var(--ds-line);border-radius:50px;padding:12px 22px;color:var(--ds-txt);font-weight:600;
}
.ds-dev-row i{color:var(--ds-green);font-size:1.15rem}

/* CTA */
.ds-cta{background:linear-gradient(135deg,var(--ds-green2) 0%,#064d2e 100%);padding:60px 0;text-align:center}
.ds-cta h2{color:#fff;font-size:2rem;font-weight:800;margin:0 0 12px}
.ds-cta p{color:#d8f0e3;margin:0 auto 26px;max-width:560px}
.ds-cta .ds-btn--gold{font-size:1.05rem;padding:15px 34px}

/* FAQ */
.ds-faq-sec{background:var(--ds-bg);padding:60px 0}
.ds-faq{max-width:800px;margin:0 auto}
.ds-faq details{background:var(--ds-card);border:1px solid var(--ds-line);border-radius:12px;padding:0 20px;margin-bottom:12px;overflow:hidden}
.ds-faq summary{list-style:none;cursor:pointer;padding:18px 0;color:#fff;font-weight:700;font-size:1.02rem;position:relative;padding-right:34px}
.ds-faq summary::-webkit-details-marker{display:none}
.ds-faq summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);color:var(--ds-gold);font-size:1.5rem;font-weight:400;transition:.2s}
.ds-faq details[open] summary::after{content:"\2212"}
.ds-faq details[open]{border-color:var(--ds-green)}
.ds-faq p{color:var(--ds-mut);margin:0 0 18px;line-height:1.6;font-size:.95rem}
.ds-faq p strong{color:var(--ds-txt)}

/* RESPONSIVE */
@media(max-width:991px){
  .ds-hero-grid{grid-template-columns:1fr;gap:34px}
  .ds-cat-grid{grid-template-columns:repeat(2,1fr)}
  .ds-trust-row{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:575px){
  .ds-hero-txt h1{font-size:2.1rem}
  .ds-cat-grid{grid-template-columns:1fr}
  .ds-hero-stats{gap:20px}
}
