/* ============================================================
   DARK PREMIUM TECH THEME — FPR Networks (2026-06-10)
   Loads after main.min.css. Overrides all previous themes.
   Palette: near-black navy, single cyan accent, glass surfaces.
   Headline font: Space Grotesk. Body: Inter. Mono: JetBrains Mono.
   ============================================================ */

:root{
  --dk-bg:#05080f;
  --dk-bg-2:#0a1226;
  --dk-surface:#0b1120;
  --dk-glass:rgba(255,255,255,0.03);
  --dk-border:rgba(0,194,255,0.14);
  --dk-border-soft:rgba(255,255,255,0.07);
  --dk-cyan:#00c2ff;
  --dk-cyan-bright:#4dd8ff;
  --dk-text:#e9eefb;
  --dk-dim:#9aa8c7;
  --dk-faint:#66738f;
  --dk-glow:0 0 40px rgba(0,194,255,0.18);
  --font-head:'Space Grotesk','Inter',system-ui,sans-serif;
}

/* ---------- Base ---------- */
html,body{background:var(--dk-bg) !important;color:var(--dk-text) !important}
body{background:
  radial-gradient(1200px 600px at 70% -10%, rgba(0,194,255,0.07), transparent 60%),
  radial-gradient(900px 500px at 10% 20%, rgba(0,80,160,0.10), transparent 55%),
  var(--dk-bg) !important}
.cosmic-bg{display:none !important}
.grid-overlay{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:1 !important;
  background-image:linear-gradient(rgba(0,194,255,0.025) 1px,transparent 1px),
  linear-gradient(90deg,rgba(0,194,255,0.025) 1px,transparent 1px) !important;
  background-size:64px 64px !important;mask-image:linear-gradient(180deg,rgba(0,0,0,0.9),transparent 70%)}

h1,h2,h3,h4,.hero-headline,.section-header h2{font-family:var(--font-head) !important;
  color:var(--dk-text) !important;letter-spacing:-0.03em !important;font-style:normal !important}
p{color:var(--dk-dim)}
html body .gradient-text,.gradient-text,h1 .gradient-text,h2 .gradient-text,
.hero-headline .gradient-text,.hero .hero-headline .gradient-text,
.hero.hero-galaxy .hero-headline .gradient-text,
html body .hero.hero-galaxy .hero-headline .gradient-text{background:linear-gradient(120deg,var(--dk-cyan-bright),var(--dk-cyan) 55%,#0077b3) !important;
  -webkit-background-clip:text !important;background-clip:text !important;
  -webkit-text-fill-color:transparent !important;font-style:normal !important;filter:none !important;font-weight:700 !important}

/* ---------- Header ---------- */
.site-header{background:rgba(5,8,15,0.78) !important;backdrop-filter:blur(22px) saturate(140%) !important;
  border-bottom:1px solid var(--dk-border-soft) !important}
.site-header .logo::before{background:none !important;-webkit-text-fill-color:#ffffff !important;color:#fff !important}
.site-header .logo::after{color:var(--dk-cyan) !important}
.site-header .logo .header-location{background:rgba(0,194,255,0.06) !important;border:1px solid var(--dk-border) !important;
  color:var(--dk-dim) !important;box-shadow:none !important}
.site-header .logo img[src$="fpr-seo-logo.svg"]{background:#0b1120 !important;
  box-shadow:0 4px 18px rgba(0,0,0,0.5),0 0 0 2px rgba(0,194,255,0.35) !important}
.nav-links a{color:var(--dk-dim) !important}
.nav-links a:hover{color:#fff !important;background:rgba(0,194,255,0.08) !important}
.nav-links .dropdown,.has-sub .dropdown{background:#0b1120 !important;border:1px solid var(--dk-border) !important;
  box-shadow:0 18px 50px rgba(0,0,0,0.6) !important}
.has-sub .dropdown a{color:var(--dk-dim) !important}
.has-sub .dropdown a:hover{color:#fff !important}
.burger span{background:#fff !important}

/* ---------- Buttons ---------- */
.btn{border-radius:6px !important;font-family:'Inter',sans-serif !important;font-weight:600 !important;
  letter-spacing:0.01em !important;text-transform:none !important}
.btn-primary{background:var(--dk-cyan) !important;color:#021018 !important;border:1px solid var(--dk-cyan) !important;
  box-shadow:0 0 0 rgba(0,194,255,0) !important;transition:all .25s ease !important}
.btn-primary:hover{background:var(--dk-cyan-bright) !important;border-color:var(--dk-cyan-bright) !important;
  box-shadow:0 8px 32px rgba(0,194,255,0.35) !important;transform:translateY(-2px) !important;color:#021018 !important}
.btn-primary::before{display:none !important}
.btn-ghost{background:transparent !important;color:var(--dk-text) !important;
  border:1px solid rgba(255,255,255,0.22) !important;box-shadow:none !important}
.btn-ghost:hover{border-color:var(--dk-cyan) !important;color:var(--dk-cyan-bright) !important;
  background:rgba(0,194,255,0.06) !important;box-shadow:none !important}

/* ---------- Hero ---------- */
.hero,.hero.hero-galaxy{background:
  linear-gradient(180deg,rgba(5,8,15,0.55) 0%,rgba(5,8,15,0.75) 65%,#05080f 100%),
  url('/uploads/hero-dark-bg.jpg') center/cover no-repeat,
  #05080f !important;min-height:92vh}
.hero-video-overlay{background:linear-gradient(180deg,rgba(5,8,15,0.72) 0%,rgba(5,8,15,0.88) 70%,#05080f 100%) !important}
.hero-headline,.hero .hero-headline,.hero.hero-galaxy .hero-headline{color:#ffffff !important;
  font-family:var(--font-head) !important;font-weight:700 !important;text-shadow:none !important;
  font-size:clamp(2.6rem,5.4vw,4.6rem) !important;line-height:1.04 !important;letter-spacing:-0.035em !important;animation:none !important}
.hero-sub,.hero .hero-sub{color:var(--dk-dim) !important;font-size:1.12rem !important;font-weight:400 !important;
  text-shadow:none !important;max-width:560px}
.eyebrow,.hero .eyebrow{background:transparent !important;border:0 !important;padding:0 0 0 16px !important;
  color:var(--dk-cyan) !important;font-family:'JetBrains Mono',ui-monospace,monospace !important;
  font-size:0.72rem !important;letter-spacing:0.3em !important;font-weight:600 !important;
  text-transform:uppercase !important;text-shadow:none !important;box-shadow:none !important;position:relative !important}
.eyebrow::before{content:'' !important;position:absolute !important;left:0 !important;top:50% !important;
  width:9px !important;height:1px !important;background:var(--dk-cyan) !important;transform:translateY(-50%) !important;
  border-radius:0 !important;animation:none !important;box-shadow:none !important}

/* Hide all legacy sci-fi chrome */
.hud-frame,.hud-telemetry,.scan-line,.hyperspace,.hyperspace::before,.hyperspace::after,
.hero-rocket-launch,.texas-star,.hologram-overlay,.globe-stage::after{display:none !important}
#globe-canvas{filter:drop-shadow(0 10px 60px rgba(0,194,255,0.25)) !important;opacity:0.9}

/* Hero stats — glass strip */
.hero-stats,.loc-stats,.city-stats{background:rgba(11,17,32,0.7) !important;backdrop-filter:blur(14px) !important;
  border:1px solid var(--dk-border) !important;border-radius:8px !important;box-shadow:var(--dk-glow) !important}
.stat-num{font-family:var(--font-head) !important;font-weight:700 !important;background:none !important;
  -webkit-text-fill-color:var(--dk-cyan-bright) !important;color:var(--dk-cyan-bright) !important;filter:none !important}
.stat-label{color:var(--dk-faint) !important;font-weight:600 !important;text-transform:uppercase;
  letter-spacing:0.08em;font-size:0.78rem !important;text-shadow:none !important}

/* ---------- Locations dropdown ---------- */
.locations-dropdown{background:var(--dk-surface) !important;border:1px solid var(--dk-border) !important;
  border-radius:8px !important;box-shadow:0 10px 40px rgba(0,0,0,0.45) !important}
.locations-dropdown[open]{box-shadow:0 16px 60px rgba(0,194,255,0.12) !important}
.locations-dropdown summary{background:var(--dk-surface) !important}
.locations-dropdown summary:hover{background:#0e1630 !important}
.ld-eyebrow{color:var(--dk-cyan) !important}
.ld-title{color:var(--dk-text) !important;font-family:var(--font-head) !important}
.ld-title .gradient-text{background:linear-gradient(120deg,var(--dk-cyan-bright),var(--dk-cyan)) !important;
  -webkit-background-clip:text !important;background-clip:text !important;-webkit-text-fill-color:transparent !important}
.ld-hint{color:var(--dk-faint) !important}
.ld-arrow{color:var(--dk-cyan) !important}
.ld-content{border-top:1px solid var(--dk-border-soft) !important}
.ld-cities a{background:rgba(255,255,255,0.03) !important;border:1px solid var(--dk-border-soft) !important;
  border-radius:6px !important;color:var(--dk-dim) !important}
.ld-cities a::before{background:var(--dk-cyan) !important;box-shadow:0 0 8px rgba(0,194,255,0.6) !important}
.ld-cities a:hover{background:rgba(0,194,255,0.10) !important;color:#fff !important;
  border-color:var(--dk-border) !important;box-shadow:0 6px 18px rgba(0,194,255,0.15) !important}
.ld-footer a{color:var(--dk-cyan) !important}
.ld-footer a:hover{color:var(--dk-cyan-bright) !important}

/* ---------- Sections / cards ---------- */
.section{padding:110px 0 !important;background:transparent !important}
.section.office-bg{background:transparent !important}
.office-bg::before{background-image:none !important;background:transparent !important;filter:none !important}
.office-bg::after{background:transparent !important}
.section-header h2{font-size:clamp(2rem,4vw,3.1rem) !important}
.section-header p{color:var(--dk-dim) !important}
.card,.post-card,.price-card,.step,.contact-info li{background:var(--dk-glass) !important;
  border:1px solid var(--dk-border-soft) !important;border-radius:8px !important;box-shadow:none !important;
  transition:all .3s ease !important}
.card:hover,.post-card:hover,.price-card:hover{border-color:var(--dk-border) !important;
  background:rgba(0,194,255,0.04) !important;transform:translateY(-3px) !important;
  box-shadow:0 16px 50px rgba(0,0,0,0.4),0 0 30px rgba(0,194,255,0.08) !important}
.card h3,.step h4{color:var(--dk-text) !important}
.card p,.step p{color:var(--dk-dim) !important}
.card-icon{background:rgba(0,194,255,0.07) !important;border:1px solid var(--dk-border) !important;
  border-radius:6px !important}
.card-icon::after{display:none !important}
.card-link{color:var(--dk-cyan) !important}
.card-link:hover{color:var(--dk-cyan-bright) !important}
.image-frame{border-radius:8px !important;border:1px solid var(--dk-border-soft) !important;
  box-shadow:0 24px 70px rgba(0,0,0,0.5) !important;overflow:hidden}
.image-frame img{opacity:0.92}

/* ---------- CTA banner ---------- */
.cta-banner{background:linear-gradient(135deg,#0b1120 0%,#0e1a38 100%) !important;
  border:1px solid var(--dk-border) !important;border-radius:10px !important;box-shadow:var(--dk-glow) !important}
.cta-banner::before,.cta-banner::after{display:none !important}
.cta-banner h2{color:#fff !important}
.cta-banner p{color:var(--dk-dim) !important}

/* ---------- Footer ---------- */
.site-footer{background:#04060c !important;border-top:1px solid var(--dk-border-soft) !important;
  color:var(--dk-dim) !important;margin-top:80px !important;padding-top:80px !important}
.site-footer::before{display:none !important}
.site-footer h5{color:#fff !important;font-family:var(--font-head) !important}
.site-footer .footer-grid li a{color:var(--dk-faint) !important}
.site-footer .footer-grid li a:hover{color:var(--dk-cyan-bright) !important}
.site-footer .footer-brand p{color:var(--dk-faint) !important}
.site-footer .footer-brand a[href^="tel"]{color:var(--dk-cyan) !important}
.site-footer .logo::before{-webkit-text-fill-color:#fff !important;color:#fff !important;background:none !important}
.site-footer .logo::after{color:var(--dk-cyan) !important}
.site-footer .footer-bottom{color:var(--dk-faint) !important;border-top:1px solid var(--dk-border-soft) !important}
.site-footer img[src$="fpr-seo-logo.svg"]{background:#0b1120;border-radius:50%;padding:4px;
  box-shadow:0 0 0 2px rgba(0,194,255,0.25)}

/* ---------- Cookie banner / misc ---------- */
.cookie-banner{background:#0b1120 !important;border:1px solid var(--dk-border) !important;
  color:var(--dk-dim) !important;box-shadow:0 18px 60px rgba(0,0,0,0.6) !important}
.cookie-banner a{color:var(--dk-cyan) !important}
.cb-accept{background:var(--dk-cyan) !important;color:#021018 !important}
.cb-decline{background:transparent !important;color:var(--dk-dim) !important;
  border:1px solid rgba(255,255,255,0.2) !important}
.skip-link{background:var(--dk-cyan) !important;color:#021018 !important}

::selection{background:rgba(0,194,255,0.3);color:#fff}

/* ---------- Hero ranking dashboard (replaces globe) ---------- */
.rank-dash{background:rgba(8,13,28,0.85);backdrop-filter:blur(16px);border:1px solid var(--dk-border);
  border-radius:10px;padding:22px 22px 18px;max-width:480px;margin:0 auto;
  box-shadow:0 30px 80px rgba(0,0,0,0.5),0 0 60px rgba(0,194,255,0.08);
  font-family:'JetBrains Mono',ui-monospace,monospace}
.rd-head{display:flex;align-items:center;gap:7px;padding-bottom:14px;border-bottom:1px solid var(--dk-border-soft)}
.rd-dot{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,0.15)}
.rd-dot:first-child{background:rgba(255,95,86,0.7)}
.rd-dot:nth-child(2){background:rgba(255,189,46,0.7)}
.rd-dot:nth-child(3){background:rgba(39,201,63,0.7)}
.rd-title{margin-left:10px;font-size:0.66rem;letter-spacing:0.18em;color:var(--dk-dim);font-weight:600}
.rd-status{margin-left:auto;font-size:0.6rem;letter-spacing:0.12em;color:#27c93f;animation:rdPulse 2s ease-in-out infinite}
@keyframes rdPulse{0%,100%{opacity:1}50%{opacity:0.4}}
.rd-rows{padding:14px 0 6px}
.rd-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px dashed rgba(255,255,255,0.05)}
.rd-row:last-child{border-bottom:0}
.rd-kw{font-size:0.78rem;color:var(--dk-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.rd-delta{font-size:0.68rem;color:#27c93f;font-weight:700;flex-shrink:0}
.rd-pos{font-size:0.92rem;color:var(--dk-cyan-bright);font-weight:700;flex-shrink:0;min-width:30px;text-align:right;
  text-shadow:0 0 12px rgba(0,194,255,0.5)}
.rd-graph{width:100%;height:80px;display:block;margin:8px 0 4px}
.rd-foot{padding-top:12px;border-top:1px solid var(--dk-border-soft);font-size:0.72rem;color:var(--dk-faint);
  display:flex;align-items:baseline;gap:8px}
.rd-big{font-family:'Space Grotesk','Inter',sans-serif;font-size:1.5rem;font-weight:700;color:var(--dk-cyan-bright)}
@media (max-width:720px){.rank-dash{max-width:100%;padding:16px 14px 14px}.rd-kw{font-size:0.7rem}}

/* ---------- Card icons (SVG) ---------- */
.card-icon{display:flex;align-items:center;justify-content:center}
.card-icon svg{width:26px;height:26px;filter:drop-shadow(0 0 8px rgba(0,194,255,0.4))}
