/* =============================================================
   PRIMEVIEW — css/main.css
   Full responsive stylesheet: Dark Cyberpunk Premium
   Fonts: Barlow Condensed (display) + DM Sans (body)
   ============================================================= */

/* ── CSS VARIABLES ─────────────────────────────────────────── */
:root {
  --bg:         #08090F;
  --bg2:        #0D0E1C;
  --bg3:        #131427;
  --card:       rgba(255,255,255,0.03);
  --card-hover: rgba(255,255,255,0.06);
  --border:     rgba(124,58,237,0.25);
  --border2:    rgba(124,58,237,0.12);
  --purple:     #7C3AED;
  --purple2:    #9F67FF;
  --purple3:    #C4A8FF;
  --cyan:       #22D3EE;
  --green:      #10B981;
  --green-wa:   #25D366;
  --yellow:     #F59E0B;
  --red:        #EF4444;
  --white:      #F0EEFF;
  --muted:      #6B7280;
  --muted2:     #4B5563;
  --display:    'Barlow Condensed', sans-serif;
  --body:       'DM Sans', sans-serif;
  --radius:     12px;
  --radius-lg:  20px;
  --shadow:     0 20px 60px rgba(0,0,0,0.5);
  --glow:       0 0 40px rgba(124,58,237,0.25);
  --nav-h:      72px;
  --container:  1200px;
  --section-py: 100px;
}

/* ── RESET & BASE ──────────────────────────────────────────── */
*,*::before,*::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }
body {
  background:var(--bg);
  color:var(--white);
  font-family:var(--body);
  line-height:1.65;
  overflow-x:hidden;
  min-height:100vh;
}
body::before {
  content:'';
  position:fixed; inset:0; z-index:0; pointer-events:none;
  background-image:
    linear-gradient(rgba(124,58,237,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(124,58,237,0.04) 1px, transparent 1px);
  background-size:44px 44px;
}
img { max-width:100%; height:auto; }
a  { text-decoration:none; color:inherit; }
ul { list-style:none; }
button { border:none; background:none; cursor:pointer; font-family:inherit; }

/* ── TYPOGRAPHY ────────────────────────────────────────────── */
h1,h2,h3,h4 {
  font-family:var(--display);
  line-height:1.05;
  letter-spacing:-.01em;
}
h1 { font-size:clamp(2.4rem,5.5vw,4.4rem); font-weight:900; }
h2 { font-size:clamp(2rem,4vw,3.2rem);     font-weight:800; }
h3 { font-size:1.15rem; font-weight:700; }
p  { color:var(--muted); }
.accent-text {
  background:linear-gradient(135deg,var(--purple2),var(--cyan));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
}

/* ── LAYOUT ────────────────────────────────────────────────── */
.container {
  width:100%; max-width:var(--container);
  margin:0 auto; padding:0 24px;
}
.section-header {
  text-align:center; margin-bottom:60px;
}
.section-header h2 { margin-bottom:16px; }
.section-header p  { max-width:600px; margin:0 auto; font-size:1.05rem; }
.section-tag {
  display:inline-block;
  font-family:var(--body); font-size:.72rem; font-weight:700;
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--purple2);
  background:rgba(124,58,237,0.1);
  border:1px solid rgba(124,58,237,0.25);
  border-radius:100px; padding:.3rem 1rem;
  margin-bottom:1rem;
}

/* ── SCROLL REVEAL ─────────────────────────────────────────── */
.reveal {
  opacity:0; transform:translateY(28px);
  transition:opacity .65s ease, transform .65s ease;
  transition-delay:var(--delay,0ms);
}
.reveal.visible { opacity:1; transform:none; }

/* ── BUTTONS ───────────────────────────────────────────────── */
.btn-primary {
  display:inline-flex; align-items:center; gap:.5rem;
  background:var(--purple); color:#fff;
  border:1px solid var(--purple);
  border-radius:var(--radius);
  padding:.8rem 1.8rem;
  font-family:var(--display); font-size:1.05rem; font-weight:700;
  letter-spacing:.03em;
  transition:background .2s, transform .15s, box-shadow .2s;
  cursor:pointer; white-space:nowrap;
}
.btn-primary:hover { background:#6D28D9; box-shadow:0 0 30px rgba(124,58,237,.5); transform:translateY(-1px); }
.btn-xl { padding:1rem 2.4rem; font-size:1.15rem; border-radius:14px; }
.btn-outline {
  display:inline-flex; align-items:center; gap:.5rem;
  background:rgba(124,58,237,0.1);
  border:1px solid rgba(124,58,237,0.4);
  color:var(--purple2);
  border-radius:var(--radius);
  padding:.8rem 1.8rem;
  font-family:var(--display); font-size:1.05rem; font-weight:700;
  transition:all .2s; cursor:pointer; white-space:nowrap;
}
.btn-outline:hover { background:rgba(124,58,237,0.2); color:var(--white); }
.btn-wa {
  display:inline-flex; align-items:center; gap:.5rem;
  background:var(--green-wa); color:#fff;
  border:1px solid var(--green-wa);
  border-radius:var(--radius);
  padding:.8rem 1.8rem;
  font-family:var(--display); font-size:1.05rem; font-weight:700;
  transition:background .2s, transform .15s; cursor:pointer; white-space:nowrap;
}
.btn-wa:hover { background:#128C7E; transform:translateY(-1px); }

/* ── NAVIGATION ────────────────────────────────────────────── */
.pv-nav {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  height:var(--nav-h);
  background:rgba(8,9,15,0.8);
  backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border2);
  transition:background .3s, border-color .3s;
}
.pv-nav.scrolled {
  background:rgba(8,9,15,0.97);
  border-bottom-color:var(--border);
}
.nav-container {
  display:flex; align-items:center; justify-content:space-between;
  height:100%; max-width:var(--container);
  margin:0 auto; padding:0 24px; gap:1.5rem;
}
.nav-logo { display:flex; align-items:center; gap:0; }
.logo-prime { font-family:var(--display); font-size:1.6rem; font-weight:900; color:var(--white); letter-spacing:-.02em; }
.logo-view  { font-family:var(--display); font-size:1.6rem; font-weight:900; color:var(--purple2); letter-spacing:-.02em; }
.nav-links {
  display:flex; align-items:center; gap:2rem; list-style:none;
}
.nav-links a {
  font-size:.9rem; font-weight:500; color:var(--muted);
  transition:color .2s; white-space:nowrap;
}
.nav-links a:hover { color:var(--white); }
.nav-right  { display:flex; align-items:center; gap:.8rem; flex-shrink:0; }
.nav-wa-btn {
  display:flex; align-items:center; gap:.4rem;
  color:var(--green-wa); font-size:.85rem; font-weight:600;
  border:1px solid rgba(37,211,102,0.3);
  border-radius:8px; padding:.4rem .9rem;
  transition:background .2s;
}
.nav-wa-btn:hover { background:rgba(37,211,102,0.1); }
.nav-cta-btn {
  background:var(--purple); color:#fff;
  border-radius:8px; padding:.45rem 1.1rem;
  font-size:.85rem; font-weight:700; font-family:var(--display);
  transition:background .2s;
}
.nav-cta-btn:hover { background:#6D28D9; }
/* Language Switcher */
.lang-switcher {
  display:flex; align-items:center; gap:2px;
  background:rgba(255,255,255,0.04);
  border:1px solid var(--border2);
  border-radius:8px; padding:3px;
}
.lang-switcher a {
  font-size:.75rem; font-weight:700;
  color:var(--muted); padding:.28rem .55rem;
  border-radius:5px; white-space:nowrap;
  transition:all .18s;
}
.lang-switcher a:hover, .lang-switcher a.active {
  background:var(--purple); color:#fff;
}
/* Mobile burger */
.nav-burger {
  display:none; flex-direction:column; gap:5px;
  padding:4px; background:none; border:none; cursor:pointer;
}
.nav-burger span {
  display:block; width:22px; height:2px;
  background:var(--white); border-radius:2px;
  transition:transform .25s, opacity .25s;
}
.nav-burger.open span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.nav-burger.open span:nth-child(2) { opacity:0; }
.nav-burger.open span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* ── HERO ──────────────────────────────────────────────────── */
.pv-hero {
  min-height:100vh;
  padding: calc(var(--nav-h) + 60px) 0 80px;
  position:relative; overflow:hidden;
  display:flex; align-items:center;
}
.hero-grid-bg {
  position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(124,58,237,0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(124,58,237,0.08) 1px, transparent 1px);
  background-size:60px 60px;
  mask-image:radial-gradient(ellipse 80% 80% at 50% 0%, black, transparent);
}
.hero-glow {
  position:absolute; top:-15%; left:50%; transform:translateX(-50%);
  width:80vw; height:60vh;
  background:radial-gradient(ellipse,rgba(124,58,237,0.2) 0%,transparent 70%);
  pointer-events:none;
}
.hero-inner {
  position:relative; z-index:1;
  display:grid; grid-template-columns:1fr 1fr;
  gap:60px; align-items:center;
}
.hero-content { max-width:600px; }
.hero-live-badge {
  display:inline-flex; align-items:center; gap:.6rem;
  background:rgba(239,68,68,0.1);
  border:1px solid rgba(239,68,68,0.3);
  border-radius:100px; padding:.35rem 1rem;
  font-size:.78rem; font-weight:700; color:#FCA5A5;
  margin-bottom:1.6rem;
  animation:fadeDown .6s ease both;
}
.live-dot {
  width:8px; height:8px; border-radius:50%;
  background:var(--red);
  box-shadow:0 0 8px var(--red);
  animation:pulse 1.5s infinite;
}
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.5;transform:scale(.8)} }
@keyframes fadeDown { from{opacity:0;transform:translateY(-12px)} to{opacity:1;transform:none} }
h1 .h1-line1 {
  display:block; color:var(--white);
  font-size:clamp(1.6rem,3.5vw,2.6rem);
  font-weight:700; margin-bottom:.3rem;
  animation:fadeRight .7s ease .1s both;
}
h1 .h1-line2 {
  display:block;
  background:linear-gradient(135deg,var(--white) 30%,var(--purple2));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
  animation:fadeRight .7s ease .2s both;
}
@keyframes fadeRight { from{opacity:0;transform:translateX(-20px)} to{opacity:1;transform:none} }
.hero-sub {
  font-size:1.05rem; color:var(--muted); line-height:1.7;
  margin:1.4rem 0 2rem;
  animation:fadeUp .7s ease .3s both;
}
@keyframes fadeUp { from{opacity:0;transform:translateY(16px)} to{opacity:1;transform:none} }
.hero-ctas {
  display:flex; gap:1rem; flex-wrap:wrap;
  animation:fadeUp .7s ease .4s both;
}
.hero-trust {
  display:flex; align-items:center; gap:.8rem;
  flex-wrap:wrap; margin-top:2rem;
  animation:fadeUp .7s ease .5s both;
}
.trust-item {
  display:flex; align-items:center; gap:.35rem;
  font-size:.82rem; color:var(--muted);
}
.trust-divider { width:1px; height:16px; background:var(--border2); }
/* Hero TV Visual */
.hero-visual {
  display:flex; justify-content:center; align-items:center;
  animation:fadeUp .8s ease .3s both;
}
.tv-mock { position:relative; }
.tv-screen {
  width:460px; max-width:100%;
  background:var(--bg2);
  border:1px solid var(--border);
  border-radius:16px;
  overflow:hidden;
  box-shadow:var(--glow), var(--shadow);
}
.tv-channel-bar {
  display:flex; align-items:center; gap:.6rem;
  padding:.7rem 1rem;
  background:rgba(124,58,237,0.15);
  border-bottom:1px solid var(--border2);
}
.tv-live-dot { width:8px; height:8px; border-radius:50%; background:var(--red); animation:pulse 1.5s infinite; }
.tv-ch-name  { font-family:var(--display); font-size:.85rem; font-weight:700; flex:1; }
.tv-ch-num   { font-family:var(--display); font-size:.75rem; color:var(--cyan); border:1px solid var(--cyan); padding:.1rem .4rem; border-radius:4px; }
.tv-content-grid {
  display:grid; grid-template-columns:1fr 1fr 1fr;
  gap:8px; padding:10px;
}
.tv-card {
  aspect-ratio:16/9;
  background:var(--c,var(--purple));
  border-radius:8px;
  display:flex; align-items:center; justify-content:center;
  font-size:.8rem; font-weight:700;
  opacity:.9; font-family:var(--display);
  letter-spacing:.04em;
  transition:opacity .2s;
}
.tv-card:hover { opacity:1; }
.tv-stats-row {
  display:flex; justify-content:space-around;
  padding:.8rem 1rem;
  border-top:1px solid var(--border2);
}
.tv-stat { text-align:center; }
.tv-stat-num { display:block; font-family:var(--display); font-size:1.3rem; font-weight:900; color:var(--purple2); }
.tv-stat span:last-child { font-size:.7rem; color:var(--muted); }
.tv-base {
  width:40%; height:10px; margin:0 auto;
  background:var(--bg3); border-radius:0 0 8px 8px;
}

/* ── STATS BAR ─────────────────────────────────────────────── */
.pv-stats {
  padding:50px 0;
  background:var(--bg2);
  border-top:1px solid var(--border2);
  border-bottom:1px solid var(--border2);
  position:relative; z-index:1;
}
.stats-grid {
  display:grid; grid-template-columns:repeat(5,1fr);
  gap:30px;
}
.stat-item { text-align:center; }
.stat-num {
  font-family:var(--display); font-size:2.6rem; font-weight:900;
  color:var(--purple2);
  background:linear-gradient(135deg,var(--purple2),var(--cyan));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
  line-height:1; display:block;
}
.stat-label { font-size:.78rem; color:var(--muted); margin-top:.4rem; text-transform:uppercase; letter-spacing:.07em; }

/* ── FEATURES ──────────────────────────────────────────────── */
.pv-features { padding:var(--section-py) 0; }
.features-grid {
  display:grid; grid-template-columns:repeat(4,1fr);
  gap:20px;
}
.feat-card {
  background:var(--card);
  border:1px solid var(--border2);
  border-radius:var(--radius);
  padding:1.8rem;
  transition:border-color .2s, background .2s, transform .2s, box-shadow .2s;
}
.feat-card:hover {
  border-color:var(--border);
  background:var(--card-hover);
  transform:translateY(-4px);
  box-shadow:var(--glow);
}
.feat-icon { font-size:2rem; margin-bottom:1rem; display:block; }
.feat-card h3 { color:var(--white); margin-bottom:.5rem; font-size:1rem; }
.feat-card p  { font-size:.85rem; color:var(--muted); line-height:1.6; }

/* ── SPORTS ────────────────────────────────────────────────── */
.pv-sports {
  padding:var(--section-py) 0;
  background:var(--bg2);
}
.live-badge {
  display:inline-flex; align-items:center; gap:.5rem;
  background:rgba(239,68,68,0.1);
  border:1px solid rgba(239,68,68,0.3);
  border-radius:100px; padding:.3rem .9rem;
  font-size:.75rem; font-weight:700; color:#FCA5A5;
  margin-bottom:.8rem;
}
.sports-pills {
  display:flex; flex-wrap:wrap; gap:12px;
  justify-content:center; margin-bottom:40px;
}
.sport-pill {
  display:flex; align-items:center; gap:.5rem;
  background:var(--card);
  border:1px solid var(--border2);
  border-radius:100px; padding:.55rem 1.2rem;
  font-size:.88rem; font-weight:600;
  transition:all .2s; cursor:default;
}
.sport-pill:hover { border-color:var(--border); background:rgba(124,58,237,0.12); color:var(--purple2); }
.sport-emoji { font-size:1.1rem; }
.sports-cta { text-align:center; }
.sports-cta .btn-primary { margin-bottom:.8rem; }
.sports-cta p { font-size:.9rem; color:var(--muted); }
.sports-cta strong { color:var(--white); }

/* ── PRICING ───────────────────────────────────────────────── */
.pv-pricing { padding:var(--section-py) 0; }
.flash-banner {
  display:flex; align-items:center; justify-content:center;
  gap:1rem; flex-wrap:wrap;
  background:rgba(239,68,68,0.07);
  border:1px solid rgba(239,68,68,0.25);
  border-radius:var(--radius); padding:1rem 1.5rem;
  margin-bottom:40px;
  font-size:.9rem; font-weight:600; color:#FCA5A5;
}
.flash-dot { width:8px; height:8px; border-radius:50%; background:var(--red); animation:pulse 1.5s infinite; }
.countdown { display:flex; align-items:center; gap:.3rem; }
.cd-unit { text-align:center; }
.cd-unit span { font-family:var(--display); font-size:1.4rem; font-weight:900; color:var(--white); }
.cd-unit small { display:block; font-size:.65rem; color:var(--muted); }
.cd-sep { font-family:var(--display); font-size:1.4rem; font-weight:900; color:var(--purple2); }
.pricing-grid {
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:24px; margin-bottom:32px;
}
.price-card {
  background:var(--card);
  border:1px solid var(--border2);
  border-radius:var(--radius-lg);
  padding:2rem;
  position:relative;
  transition:border-color .2s, transform .2s, box-shadow .2s;
  /* Flex column so dual buttons always sit at bottom */
  display:flex;
  flex-direction:column;
}
.price-card:hover { border-color:var(--border); transform:translateY(-4px); box-shadow:var(--shadow); }
.price-card.featured {
  background:linear-gradient(160deg,rgba(124,58,237,0.15),rgba(124,58,237,0.05));
  border-color:var(--border);
  box-shadow:var(--glow);
  transform:scale(1.02);
}
.price-card.featured:hover { transform:scale(1.02) translateY(-4px); }
.popular-badge {
  position:absolute; top:-14px; left:50%; transform:translateX(-50%);
  background:linear-gradient(90deg,var(--purple),#9F67FF);
  color:#fff; border-radius:100px; padding:.3rem 1.2rem;
  font-size:.75rem; font-weight:700; white-space:nowrap;
}
.plan-header { margin-bottom:1.2rem; }
.plan-name { font-family:var(--display); font-size:1.3rem; font-weight:700; color:var(--white); }
.plan-duration { font-size:.8rem; color:var(--muted); margin-top:.2rem; }
.plan-price { margin-bottom:1.2rem; }
.plan-old { font-size:.9rem; color:var(--muted); text-decoration:line-through; margin-bottom:.2rem; }
.plan-curr { font-family:var(--display); font-size:1.4rem; font-weight:700; color:var(--muted); vertical-align:top; margin-top:.3rem; }
.plan-amount { font-family:var(--display); font-size:3rem; font-weight:900; color:var(--white); line-height:1; }
.plan-save { display:inline-block; margin-top:.4rem; font-size:.78rem; font-weight:700; color:var(--green); background:rgba(16,185,129,0.1); border:1px solid rgba(16,185,129,0.2); border-radius:6px; padding:.2rem .6rem; }
.plan-note { font-size:.78rem; color:var(--muted); margin-bottom:1rem; }
.plan-feats { margin-bottom:1.2rem; display:flex; flex-direction:column; gap:.5rem; }
.plan-feats li { font-size:.85rem; color:var(--muted); display:flex; align-items:flex-start; gap:.6rem; }
.pf-check { color:var(--purple2); font-size:.75rem; flex-shrink:0; margin-top:.15rem; }
.plan-btn { display:block; width:100%; text-align:center; border-radius:var(--radius); padding:.85rem; font-family:var(--display); font-size:1rem; font-weight:700; }
.pricing-footer {
  display:flex; flex-wrap:wrap; justify-content:center;
  gap:1.5rem; padding-top:24px;
}
.pf-trust { display:flex; align-items:center; gap:.5rem; font-size:.85rem; color:var(--muted); }
.pf-trust a:hover { color:var(--green-wa); }

/* ── TESTIMONIALS ──────────────────────────────────────────── */
.pv-testimonials {
  padding:var(--section-py) 0;
  background:var(--bg2);
}
.testi-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.testi-card {
  background:var(--card); border:1px solid var(--border2);
  border-radius:var(--radius); padding:1.6rem;
  transition:border-color .2s;
}
.testi-card:hover { border-color:var(--border); }
.testi-stars { color:var(--yellow); font-size:1rem; margin-bottom:.8rem; letter-spacing:2px; }
.testi-text { font-size:.88rem; color:var(--muted); line-height:1.65; margin-bottom:1.2rem; font-style:italic; }
.testi-author { display:flex; align-items:center; gap:.75rem; }
.testi-avatar {
  width:38px; height:38px; border-radius:50%;
  background:linear-gradient(135deg,var(--purple),var(--cyan));
  display:flex; align-items:center; justify-content:center;
  font-family:var(--display); font-size:1rem; font-weight:700; flex-shrink:0;
}
.testi-name { font-size:.88rem; font-weight:700; color:var(--white); }
.testi-loc  { font-size:.78rem; color:var(--muted); }

/* ── FAQ ───────────────────────────────────────────────────── */
.pv-faq { padding:var(--section-py) 0; }
.faq-list { max-width:760px; margin:0 auto; display:flex; flex-direction:column; gap:12px; }
.faq-item {
  background:var(--card); border:1px solid var(--border2);
  border-radius:var(--radius); overflow:hidden;
  transition:border-color .2s;
}
.faq-item:hover { border-color:var(--border); }
.faq-q {
  width:100%; display:flex; justify-content:space-between; align-items:center;
  padding:1.1rem 1.4rem; gap:1rem;
  font-size:.95rem; font-weight:600; color:var(--white);
  text-align:left; cursor:pointer;
}
.faq-q:hover { color:var(--purple2); }
.faq-icon { font-size:1.3rem; color:var(--purple2); transition:transform .25s; flex-shrink:0; }
.faq-item.open .faq-icon { transform:rotate(45deg); }
.faq-a { max-height:0; overflow:hidden; transition:max-height .35s ease; }
.faq-item.open .faq-a { max-height:300px; }
.faq-a p { padding:.2rem 1.4rem 1.2rem; font-size:.9rem; color:var(--muted); line-height:1.65; }

/* ── FINAL CTA ─────────────────────────────────────────────── */
.pv-final-cta {
  padding:120px 0; text-align:center;
  position:relative; overflow:hidden;
}
.final-glow {
  position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  width:70vw; height:70vh;
  background:radial-gradient(ellipse,rgba(124,58,237,0.18) 0%,transparent 65%);
  pointer-events:none;
}
.final-inner { position:relative; z-index:1; }
.final-inner h2 { margin-bottom:1.2rem; }
.final-inner p  { font-size:1.05rem; margin-bottom:2rem; max-width:520px; margin-left:auto; margin-right:auto; }
.final-ctas { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; margin-bottom:2rem; }
.final-trust {
  display:flex; flex-wrap:wrap; justify-content:center;
  gap:1.5rem; font-size:.85rem; color:var(--muted);
}

/* ── FOOTER ────────────────────────────────────────────────── */
.pv-footer {
  background:var(--bg2);
  border-top:1px solid var(--border2);
  padding:60px 0 30px;
}
.footer-container { max-width:var(--container); margin:0 auto; padding:0 24px; }
.footer-top { display:grid; grid-template-columns:1fr 2fr; gap:60px; margin-bottom:40px; }
.footer-brand { display:flex; flex-direction:column; gap:.8rem; }
.footer-tagline { font-size:.88rem; color:var(--muted); }
.footer-wa-link {
  display:inline-flex; align-items:center; gap:.5rem;
  font-size:.88rem; color:var(--green-wa); font-weight:600;
}
.footer-links { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.footer-col { display:flex; flex-direction:column; gap:.6rem; }
.footer-col h4 { font-family:var(--display); font-size:.9rem; font-weight:700; color:var(--white); margin-bottom:.4rem; }
.footer-col a { font-size:.85rem; color:var(--muted); transition:color .2s; }
.footer-col a:hover { color:var(--white); }
.footer-bottom {
  display:flex; justify-content:space-between; align-items:center;
  padding-top:24px; border-top:1px solid var(--border2);
  flex-wrap:wrap; gap:1rem;
}
.footer-bottom p { font-size:.82rem; color:var(--muted2); }
.footer-bottom .lang-switcher { background:none; border:none; }

/* ── FLOATING WHATSAPP ─────────────────────────────────────── */
.wa-float {
  position:fixed; bottom:28px; right:28px; z-index:9999;
  width:60px; height:60px; border-radius:50%;
  background:var(--green-wa);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 24px rgba(37,211,102,0.45), 0 0 0 0 rgba(37,211,102,.4);
  animation:waPulse 2.5s infinite;
  transition:transform .2s;
}
.wa-float:hover { transform:scale(1.08); }
.wa-float svg { width:32px; height:32px; }
@keyframes waPulse {
  0%   { box-shadow:0 4px 24px rgba(37,211,102,.45),0 0 0 0 rgba(37,211,102,.4); }
  70%  { box-shadow:0 4px 24px rgba(37,211,102,.45),0 0 0 14px rgba(37,211,102,0); }
  100% { box-shadow:0 4px 24px rgba(37,211,102,.45),0 0 0 0 rgba(37,211,102,0); }
}
.wa-tooltip {
  position:absolute; right:70px; top:50%; transform:translateY(-50%);
  background:var(--bg2); border:1px solid var(--border2);
  color:var(--white); border-radius:8px;
  padding:.4rem .9rem; white-space:nowrap;
  font-size:.82rem; font-weight:600;
  opacity:0; pointer-events:none; transition:opacity .2s;
}
.wa-float:hover .wa-tooltip { opacity:1; }

/* ── FOOTER LANG SWITCHER ──────────────────────────────────── */
.pv-lang-switcher, .lang-switcher {
  display:flex; align-items:center; gap:4px;
  flex-wrap:wrap;
}
.pv-lang-switcher a, .lang-switcher a {
  font-size:.75rem; font-weight:700;
  color:var(--muted); padding:.28rem .55rem;
  border-radius:5px; white-space:nowrap;
  transition:all .18s;
}
.pv-lang-switcher a:hover, .pv-lang-switcher a.active,
.lang-switcher a:hover, .lang-switcher a.active {
  background:var(--purple); color:#fff;
}

/* ── SCROLLBAR ─────────────────────────────────────────────── */
::-webkit-scrollbar { width:5px; }
::-webkit-scrollbar-track { background:var(--bg); }
::-webkit-scrollbar-thumb { background:var(--purple); border-radius:3px; }

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE — TABLET (max 1024px)
═══════════════════════════════════════════════════════════════ */
@media (max-width:1024px) {
  :root { --section-py:70px; }
  .hero-inner { grid-template-columns:1fr; }
  .hero-visual { display:none; }
  .hero-content { max-width:100%; text-align:center; }
  .hero-trust { justify-content:center; }
  .hero-ctas { justify-content:center; }
  .features-grid { grid-template-columns:repeat(2,1fr); }
  .testi-grid { grid-template-columns:repeat(2,1fr); }
  .stats-grid { grid-template-columns:repeat(3,1fr); gap:20px; }
  .pricing-grid { gap:16px; }
  .price-card.featured { transform:none; }
  .footer-top { grid-template-columns:1fr; }
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE — MOBILE (max 768px)
═══════════════════════════════════════════════════════════════ */
@media (max-width:768px) {
  :root { --section-py:60px; --nav-h:60px; }

  /* FIX: backdrop-filter on nav creates a containing block for fixed children.
     Remove it on mobile so .nav-links position:fixed fills the viewport. */
  .pv-nav {
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
  }

  /* Nav */
  .nav-burger { display:flex; }
  .nav-wa-btn span { display:none; }
  .nav-cta-btn { display:none; }
  .lang-switcher { display:none; }
  /* Mobile overlay */
  .nav-links {
    display:none;
    position:fixed;
    top:var(--nav-h); left:0; right:0; bottom:0;
    background:rgba(8,9,15,0.97);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
    flex-direction:column;
    gap:0;
    padding:0;
    margin:0;
    list-style:none;
    z-index:9990;
    overflow-y:auto;
    border-top:1px solid rgba(124,58,237,0.2);
  }
  .nav-links.open { display:flex !important; }
  .nav-links li { border-bottom:1px solid rgba(255,255,255,0.05); }
  .nav-links a {
    display:block;
    font-family:var(--display);
    font-size:1.3rem; font-weight:700;
    letter-spacing:.04em; text-transform:uppercase;
    color:var(--white);
    padding:1.1rem 1.5rem;
    transition:background .15s, color .15s, padding-left .15s;
  }
  .nav-links a:hover {
    background:rgba(124,58,237,0.12);
    color:var(--purple2);
    padding-left:2rem;
  }
  body.nav-open { overflow:hidden; }

  /* Hero */
  h1 .h1-line2 { font-size:clamp(1.8rem,8vw,3rem); }
  .hero-trust .trust-divider { display:none; }
  .hero-trust { gap:.6rem; }

  /* Stats */
  .stats-grid { grid-template-columns:repeat(2,1fr); }

  /* Features */
  .features-grid { grid-template-columns:1fr; }

  /* Sports */
  .sports-pills { gap:8px; }
  .sport-pill { font-size:.8rem; padding:.45rem 1rem; }

  /* Pricing */
  .pricing-grid { grid-template-columns:1fr; }
  .price-card.featured { order:-1; }
  .flash-banner { flex-direction:column; text-align:center; gap:.7rem; }

  /* Testimonials */
  .testi-grid { grid-template-columns:1fr; }

  /* Footer */
  .footer-links { grid-template-columns:1fr 1fr; }
  .footer-bottom { flex-direction:column; text-align:center; }
  .footer-bottom .pv-lang-switcher { justify-content:center; }

  /* WhatsApp */
  .wa-float { bottom:20px; right:20px; width:54px; height:54px; }
  .wa-float svg { width:28px; height:28px; }

  /* Final CTA */
  .final-ctas { flex-direction:column; align-items:center; }
  .final-trust { gap:.8rem; font-size:.8rem; }
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE — SMALL MOBILE (max 480px)
═══════════════════════════════════════════════════════════════ */
@media (max-width:480px) {
  .btn-xl { padding:.85rem 1.6rem; font-size:1rem; }
  .hero-ctas { flex-direction:column; }
  .hero-ctas .btn-xl { text-align:center; justify-content:center; }
  .stats-grid { grid-template-columns:1fr 1fr; }
  .footer-links { grid-template-columns:1fr; }
  .pricing-footer { flex-direction:column; align-items:center; }
}


/* ════════════════════════════════════════════════════════════
   TRUST ICONS — customisable images in hero
════════════════════════════════════════════════════════════ */
.trust-icon-img {
  width:22px; height:22px;
  object-fit:contain;
  filter:brightness(1.1);
  flex-shrink:0;
}
.trust-item {
  display:flex; align-items:center; gap:.4rem;
  font-size:.82rem; color:var(--muted);
}
.trust-item svg { color:var(--purple2); flex-shrink:0; }

/* ════════════════════════════════════════════════════════════
   SPORT LOGOS GRID — replaces emoji pills
════════════════════════════════════════════════════════════ */
.sports-logos-grid {
  display:grid;
  grid-template-columns:repeat(6, 1fr);
  gap:16px;
  margin-bottom:48px;
}
.sport-logo-pill {
  display:flex; flex-direction:column; align-items:center;
  gap:.7rem;
  background:var(--card);
  border:1px solid var(--border2);
  border-radius:var(--radius);
  padding:1.2rem .8rem .9rem;
  text-align:center;
  transition:border-color .2s, background .2s, transform .2s, box-shadow .2s;
  cursor:default;
}
.sport-logo-pill:hover {
  border-color:var(--border);
  background:rgba(124,58,237,0.1);
  transform:translateY(-3px);
  box-shadow:0 8px 28px rgba(0,0,0,0.3);
}
.sport-logo-img {
  width:52px; height:52px;
  object-fit:contain;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,0.4));
  transition:transform .2s;
}
.sport-logo-pill:hover .sport-logo-img { transform:scale(1.08); }
.sport-logo-emoji {
  font-size:2.2rem; line-height:1;
  display:block;
  transition:transform .2s;
}
.sport-logo-pill:hover .sport-logo-emoji { transform:scale(1.08); }
.sport-logo-name {
  font-family:var(--display);
  font-size:.78rem; font-weight:700;
  color:var(--white);
  letter-spacing:.04em;
  text-transform:uppercase;
  line-height:1.2;
}

/* Responsive sport logos grid */
@media (max-width:1024px) {
  .sports-logos-grid { grid-template-columns:repeat(4, 1fr); }
}
@media (max-width:768px) {
  .sports-logos-grid { grid-template-columns:repeat(3, 1fr); gap:12px; }
  .sport-logo-pill { padding:.9rem .6rem .7rem; }
  .sport-logo-img  { width:44px; height:44px; }
  .sport-logo-emoji { font-size:1.8rem; }
  .sport-logo-name  { font-size:.7rem; }
}
@media (max-width:480px) {
  .sports-logos-grid { grid-template-columns:repeat(2, 1fr); }
}

/* ════════════════════════════════════════════════════════════
   MOVIES & SERIES — TMDB INFINITE SCROLL SECTION
════════════════════════════════════════════════════════════ */
.pv-movies {
  padding:var(--section-py) 0;
  background:var(--bg2);
  overflow:hidden;
  position:relative;
}
.movies-header {
  text-align:center; margin-bottom:48px;
}
.movies-header h2 { margin-bottom:14px; }
.movies-header p  { font-size:1rem; color:var(--muted); max-width:560px; margin:0 auto; }
.movies-cta {
  text-align:center;
  margin-top:40px;
}
.movies-cta p {
  margin-top:.8rem;
  font-size:.85rem; color:var(--muted);
}

/* Marquee container */
.marquee-wrap {
  width:100%;
  overflow:hidden;
  margin-bottom:16px;
  /* Edge fade */
  -webkit-mask-image:linear-gradient(to right, transparent 0, black 5%, black 95%, transparent 100%);
  mask-image:       linear-gradient(to right, transparent 0, black 5%, black 95%, transparent 100%);
  /* Pause on hover */
}
.marquee-wrap:hover .marquee-row { animation-play-state:paused; }

/* Marquee inner row */
.marquee-row {
  display:flex; align-items:stretch; gap:14px;
  width:max-content;
  padding:8px 0;
  animation:marqueeScroll var(--marquee-speed, 40s) linear infinite;
}
.marquee-row--reverse {
  animation-name:marqueeScrollReverse;
}

@keyframes marqueeScroll {
  from { transform:translateX(0); }
  to   { transform:translateX(-50%); }
}
@keyframes marqueeScrollReverse {
  from { transform:translateX(-50%); }
  to   { transform:translateX(0); }
}

/* Poster card */
.poster-card {
  flex-shrink:0;
  width:150px;
  border-radius:10px;
  overflow:hidden;
  position:relative;
  background:var(--bg3);
  border:1px solid var(--border2);
  transition:transform .25s, border-color .25s, box-shadow .25s;
  cursor:pointer;
}
.poster-card:hover {
  transform:scale(1.06) translateY(-4px);
  border-color:var(--border);
  box-shadow:0 12px 36px rgba(0,0,0,0.6), 0 0 0 1px rgba(124,58,237,0.3);
  z-index:2;
}
.poster-img {
  width:100%; height:225px;
  object-fit:cover; display:block;
  transition:transform .35s;
}
.poster-card:hover .poster-img { transform:scale(1.04); }

.poster-placeholder {
  width:100%; height:225px;
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(160deg, var(--bg3), rgba(124,58,237,0.15));
}
.poster-placeholder span {
  font-family:var(--display); font-size:4rem; font-weight:900;
  color:var(--purple2); opacity:.4;
}

/* Overlay on hover */
.poster-overlay {
  position:absolute; bottom:0; left:0; right:0;
  background:linear-gradient(to top, rgba(8,9,15,0.95) 0%, transparent 100%);
  padding:.7rem .65rem .6rem;
  transform:translateY(4px);
  opacity:0; transition:opacity .25s, transform .25s;
}
.poster-card:hover .poster-overlay { opacity:1; transform:none; }
.poster-title {
  display:block;
  font-family:var(--display); font-size:.8rem; font-weight:700;
  color:var(--white); line-height:1.25;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.poster-year {
  display:inline-block; margin-top:.25rem;
  font-size:.68rem; color:var(--purple3);
  font-weight:600;
}

/* Responsive — hide reverse row on small screens */
@media (max-width:640px) {
  .marquee-wrap--reverse { display:none; }
  .poster-card { width:120px; }
  .poster-img, .poster-placeholder { height:180px; }
}


/* ════════════════════════════════════════════════════════════
   NAV LOGO — Site Identity Image
════════════════════════════════════════════════════════════ */
.nav-logo-img {
  height:clamp(28px, 5.5vw, 40px);
  width:auto;
  max-width:clamp(100px, 30vw, 160px);
  object-fit:contain;
  display:block;
  filter:brightness(1.05);
}
@media (max-width:768px) {
  .nav-logo-img {
    height:28px;
    max-width:120px;
  }
}

/* ════════════════════════════════════════════════════════════
   MOBILE NAV — Dark Full-Screen Overlay
════════════════════════════════════════════════════════════ */
@keyframes pvNavSlide {
  from { opacity:0; transform:translateY(-8px); }
  to   { opacity:1; transform:none; }
}
@media (max-width:768px) {
  body.nav-open { overflow:hidden; }
}

/* ════════════════════════════════════════════════════════════
   TV MOCK CARD — image support (responsive, fit-to-cell)
════════════════════════════════════════════════════════════ */
.tv-card--img {
  position:relative;
  overflow:hidden;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.tv-card-img {
  /* object-fit:contain so logo/image fits inside without cropping */
  width:100%; height:100%;
  object-fit:contain;
  display:block;
  /* slight padding so image doesn't touch the edges */
  padding:6px;
  box-sizing:border-box;
}
.tv-card-label {
  position:absolute; bottom:0; left:0; right:0;
  background:linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.3) 60%, transparent 100%);
  padding:.25rem .35rem .2rem;
  font-size:clamp(.5rem, 1.1vw, .62rem); font-weight:700;
  font-family:var(--display);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  letter-spacing:.03em;
  line-height:1.2;
}

/* ════════════════════════════════════════════════════════════
   IBO PLAYER PRO SECTION
════════════════════════════════════════════════════════════ */
.pv-ibo {
  padding:var(--section-py) 0;
  background:var(--bg);
  position:relative;
  overflow:hidden;
}
.pv-ibo::before {
  content:'';
  position:absolute; inset:0;
  background:
    radial-gradient(ellipse 60% 50% at 80% 50%, rgba(124,58,237,0.1) 0%, transparent 70%),
    radial-gradient(ellipse 40% 40% at 20% 50%, rgba(34,211,238,0.05) 0%, transparent 60%);
  pointer-events:none;
}
.ibo-inner {
  display:grid; grid-template-columns:1fr 1fr;
  gap:64px; align-items:center;
  position:relative; z-index:1;
}
.ibo-content { max-width:520px; }
.ibo-content .section-tag { margin-bottom:.8rem; }
.ibo-content h2 { margin-bottom:1.2rem; }
.ibo-content p  { margin-bottom:1.4rem; line-height:1.7; font-size:.95rem; }
.ibo-feats {
  display:flex; flex-direction:column; gap:.5rem;
  margin-bottom:1.8rem;
  list-style:none;
}
.ibo-feats li {
  display:flex; align-items:center; gap:.6rem;
  font-size:.88rem; color:var(--muted);
}
.ibo-feats .pf-check { color:var(--purple2); flex-shrink:0; }
.ibo-price-row {
  display:flex; flex-direction:column; gap:1.2rem;
}
.ibo-price-badge {
  display:inline-flex; align-items:baseline; gap:.3rem;
  background:rgba(124,58,237,0.1);
  border:1px solid var(--border);
  border-radius:10px; padding:.6rem 1.2rem;
  width:fit-content;
}
.ibo-from { font-size:.75rem; color:var(--muted); font-weight:500; }
.ibo-amount {
  font-family:var(--display); font-size:2rem; font-weight:900; color:var(--white);
}
.ibo-curr { font-size:.82rem; color:var(--muted); }
.ibo-ctas {
  display:flex; gap:.8rem; flex-wrap:wrap;
}
.ibo-main-btn { font-size:1rem !important; padding:.85rem 1.6rem !important; }
.ibo-note {
  font-size:.78rem !important; color:var(--muted) !important;
  margin-top:.9rem !important; margin-bottom:0 !important;
}

/* ── App Compatibility Marquee ── */
.ibo-apps-wrap {
  display:flex; flex-direction:column; gap:12px;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(to right, transparent, black 8%, black 92%, transparent);
  mask-image:       linear-gradient(to right, transparent, black 8%, black 92%, transparent);
}
.ibo-compat-label {
  font-size:.75rem; font-weight:700; letter-spacing:.1em;
  text-transform:uppercase; color:var(--muted2);
  margin-bottom:.2rem !important; text-align:center;
}
.ibo-marquee-wrap {
  overflow:hidden;
  width:100%;
}
.ibo-marquee-wrap:hover .ibo-marquee-row { animation-play-state:paused; }
.ibo-marquee-row {
  display:flex; gap:10px; width:max-content;
  animation:iboScroll var(--ms, 28s) linear infinite;
}
.ibo-marquee-row--rev {
  animation-name:iboScrollRev;
}
@keyframes iboScroll    { from{transform:translateX(0)} to{transform:translateX(-50%)} }
@keyframes iboScrollRev { from{transform:translateX(-50%)} to{transform:translateX(0)} }

/* App Logo Pills */
.app-logo-pill {
  display:flex; flex-direction:column; align-items:center; gap:.6rem;
  flex-shrink:0;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.07);
  border-radius:16px; padding:1.2rem 1.4rem;
  transition:border-color .2s, background .2s, transform .2s;
  cursor:default;
  min-width:96px;
}
.app-logo-pill:hover {
  border-color:var(--ac, var(--purple));
  background:rgba(255,255,255,0.06);
  transform:translateY(-3px);
}
.app-icon {
  font-size:2rem; line-height:1;
  width:64px; height:64px;
  display:flex; align-items:center; justify-content:center;
  background:var(--ac, var(--purple));
  border-radius:14px; flex-shrink:0;
}
.app-name {
  font-size:.85rem; font-weight:700;
  font-family:var(--display); letter-spacing:.04em;
  color:var(--white); white-space:nowrap; text-align:center;
}

/* IBO Responsive */
@media (max-width:1024px) {
  .ibo-inner { grid-template-columns:1fr; gap:40px; }
  .ibo-content { max-width:100%; }
  .ibo-apps-wrap {
    -webkit-mask-image:none; mask-image:none;
  }
}
@media (max-width:640px) {
  .ibo-ctas { flex-direction:column; }
  .ibo-marquee-wrap--rev { display:none; }
}

/* App logo image (when custom image uploaded via Customizer) */
.app-logo-img {
  width:64px; height:64px;
  object-fit:contain;
  border-radius:14px;
  display:block;
  flex-shrink:0;
}

/* ── FOOTER LOGO ────────────────────────────────────────────── */
.footer-logo-link {
  display:inline-flex; align-items:center;
  text-decoration:none;
}
.footer-logo-img {
  height:clamp(28px, 4vw, 36px);
  width:auto;
  max-width:140px;
  object-fit:contain;
  display:block;
  opacity:.9;
  transition:opacity .2s;
}
.footer-logo-img:hover { opacity:1; }


/* ════════════════════════════════════════════════════════════
   MOBILE NAV — Language Switcher
   Hidden on desktop, compact pill row inside mobile menu
════════════════════════════════════════════════════════════ */

/* ── DESKTOP: completely invisible ── */
.nav-links > li.nav-mobile-langs,
#navLinks > li.nav-mobile-langs {
  display:none !important;
}

/* ── MOBILE: compact pill row ── */
@media (max-width:768px) {
  .nav-links > li.nav-mobile-langs,
  #navLinks > li.nav-mobile-langs {
    display:block !important;
    padding:.55rem 1rem .65rem !important;
    border-bottom:none !important;
    border-top:1px solid rgba(124,58,237,0.18) !important;
    background:rgba(124,58,237,0.05);
  }
  /* Pills — much smaller than the main nav links */
  .nav-mobile-langs a {
    display:inline-flex !important;
    align-items:center !important;
    gap:.3rem !important;
    width:auto !important;
    margin:.2rem .15rem !important;
    padding:.22rem .55rem !important;
    border-radius:5px !important;
    border:1px solid rgba(255,255,255,0.08) !important;
    border-bottom:1px solid rgba(255,255,255,0.08) !important;
    background:rgba(255,255,255,0.04) !important;
    font-size:.68rem !important;
    font-weight:600 !important;
    text-transform:none !important;
    letter-spacing:.02em !important;
    color:rgba(255,255,255,.5) !important;
    text-decoration:none !important;
    transition:background .15s, color .15s !important;
    /* Critical: prevent the nav-links a:hover rule from shifting padding-left */
    padding-left:.55rem !important;
  }
  .nav-mobile-langs a.active {
    background:rgba(124,58,237,.28) !important;
    border-color:rgba(124,58,237,.45) !important;
    color:#fff !important;
  }
  .nav-mobile-langs a:hover {
    background:rgba(124,58,237,.15) !important;
    color:#fff !important;
    padding-left:.55rem !important;
  }
  .mob-lang-flag { font-size:.85rem; }
  .mob-lang-name { font-size:.66rem; }
}

/* ════════════════════════════════════════════════════════════
   PRICING — Dual Payment Buttons (Card + PayPal)
════════════════════════════════════════════════════════════ */
.plan-buy-label {
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--muted);
  margin-bottom:.45rem;
  margin-top:auto;   /* pushes button area to bottom of flex card */
  padding-top:.8rem;
  text-align:center;
}
.plan-dual-btns {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:.6rem;
  width:100%;
  flex-shrink:0;
}
.plan-pay-btn {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  padding:.7rem .5rem;
  border-radius:10px;
  font-family:var(--display);
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.04em;
  text-decoration:none;
  transition:transform .15s, box-shadow .15s, background .15s;
  border:1.5px solid transparent;
  white-space:nowrap;
}
.plan-pay-btn:hover {
  transform:translateY(-2px);
  box-shadow:0 6px 20px rgba(0,0,0,0.35);
}
.plan-pay-btn svg { flex-shrink:0; }

/* Card button — solid purple */
.plan-pay-btn--card {
  background:var(--purple);
  color:#fff;
  border-color:var(--purple);
}
.plan-pay-btn--card:hover {
  background:#6d28d9;
  border-color:#6d28d9;
}

/* Featured card — card btn gets stronger gradient */
.plan-dual-btns--featured .plan-pay-btn--card {
  background:linear-gradient(135deg, var(--purple), var(--cyan));
  border-color:transparent;
  box-shadow:0 4px 18px rgba(124,58,237,0.35);
}
.plan-dual-btns--featured .plan-pay-btn--card:hover {
  box-shadow:0 6px 24px rgba(124,58,237,0.5);
}

/* PayPal button — PayPal brand colours */
.plan-pay-btn--paypal {
  background:#003087;
  color:#fff;
  border-color:#003087;
}
.plan-pay-btn--paypal:hover {
  background:#001f5c;
  border-color:#001f5c;
}

/* ════════════════════════════════════════════════════════════
   HERO — Customizable Background Image + Overlay
════════════════════════════════════════════════════════════ */
.hero-bg-overlay {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: #08090f;
  opacity: 0;
  pointer-events: none;
}
.pv-hero[style*="background-image"] .hero-bg-overlay {
  opacity: 0.55;
}
.hero-grid-bg { z-index: 1; }
.hero-glow    { z-index: 1; }

@media (max-width: 768px) {
  .pv-hero {
    background-attachment: scroll !important;
    background-position: center top !important;
  }
}
@media (max-width: 480px) {
  .pv-hero { background-position: 60% center !important; }
}

/* ════════════════════════════════════════════════════════════
   SEO CONTENT BLOCK — E-E-A-T + keyword-rich text
════════════════════════════════════════════════════════════ */
.pv-seo-block {
  padding: 60px 0 40px;
  background: var(--bg2);
  border-top: 1px solid var(--border2);
  border-bottom: 1px solid var(--border2);
}
.seo-block-inner { max-width: 860px; margin: 0 auto; text-align: center; }
.seo-block-inner h2 {
  font-family: var(--display);
  font-size: clamp(1.3rem, 2.5vw, 1.8rem);
  font-weight: 800;
  color: var(--white);
  margin-bottom: 1rem;
}
.seo-block-inner p {
  font-size: .92rem;
  color: var(--muted);
  line-height: 1.75;
  margin-bottom: 2rem;
}
.seo-trust-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.2rem 2rem;
}
.seo-trust-item {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: .82rem;
  font-weight: 600;
  color: var(--muted);
}
.seo-trust-item svg { color: var(--purple2); flex-shrink: 0; }
@media (max-width: 768px) {
  .seo-trust-row { gap: .8rem 1.2rem; }
  .seo-trust-item { font-size: .78rem; }
}
