/* ===== SparkCalls - Electric BPO Theme ===== */
:root{
  --ink:#1f2733;          /* charcoal from logo */
  --ink-2:#2c3644;
  --slate:#5a6678;
  --mist:#8b97a8;
  --spark:#d6261f;        /* primary red */
  --spark-2:#a51810;      /* deep red */
  --spark-glow:#ff3b2e;
  --paper:#ffffff;
  --paper-2:#f5f7fa;
  --paper-3:#eaeef3;
  --line:#dde3ec;
  --radius:16px;
  --shadow:0 18px 50px -20px rgba(31,39,51,.35);
  --shadow-sm:0 8px 24px -12px rgba(31,39,51,.28);
  --maxw:1200px;
  --ease:cubic-bezier(.22,.61,.36,1);
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.6;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{font-family:'Sora',sans-serif;line-height:1.1;letter-spacing:-.02em;font-weight:700}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}
section{position:relative}

/* ===== Buttons ===== */
.btn{
  display:inline-flex;align-items:center;gap:.55rem;
  font-family:'Sora',sans-serif;font-weight:600;font-size:.95rem;
  padding:.9rem 1.7rem;border-radius:999px;cursor:pointer;border:none;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s;
}
.btn-spark{background:linear-gradient(135deg,var(--spark),var(--spark-2));color:#fff;box-shadow:0 10px 30px -10px rgba(214,38,31,.6)}
.btn-spark:hover{transform:translateY(-3px);box-shadow:0 18px 40px -12px rgba(214,38,31,.7)}
.btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.btn-ghost:hover{border-color:var(--spark);color:var(--spark);transform:translateY(-3px)}
.btn-light{background:#fff;color:var(--ink)}
.btn-light:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm)}

/* ===== Nav ===== */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  padding:1rem 0;transition:all .4s var(--ease);
}
.nav.scrolled{background:rgba(255,255,255,.85);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line);padding:.65rem 0}
.nav-inner{display:flex;align-items:center;justify-content:space-between}
.nav-logo{display:flex;align-items:center;gap:.6rem;font-family:'Sora';font-weight:800;font-size:1.25rem;color:#fff;transition:color .4s}
.nav.scrolled .nav-logo{color:var(--ink)}
.nav-logo img{height:42px;width:auto}
.nav-links{display:flex;align-items:center;gap:2rem;list-style:none}
.nav-links a{font-size:.95rem;font-weight:500;color:rgba(255,255,255,.88);position:relative;transition:color .3s}
.nav.scrolled .nav-links a{color:var(--slate)}
.nav-links a::after{content:'';position:absolute;left:0;bottom:-5px;width:0;height:2px;background:var(--spark);transition:width .3s var(--ease)}
.nav-links a:hover{color:var(--spark)}.nav-links a:hover::after{width:100%}
.nav-links a.active{color:var(--spark)}.nav-links a.active::after{width:100%}
.nav-cta{padding:.6rem 1.3rem!important;font-size:.88rem!important}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;z-index:1001}
.nav-toggle span{width:26px;height:2.5px;background:#fff;border-radius:2px;transition:all .3s}
.nav.scrolled .nav-toggle span{background:var(--ink)}
.nav-toggle.open span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0}
.nav-toggle.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

/* ===== Hero shared ===== */
.hero-dark{
  background:radial-gradient(120% 120% at 70% 10%,#2c3644 0%,#1f2733 45%,#161c26 100%);
  color:#fff;position:relative;overflow:hidden;
}
.bolt-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none;opacity:.5}
.bolt-bg span{position:absolute;display:block;width:2px;background:linear-gradient(180deg,transparent,var(--spark-glow),transparent);filter:blur(.5px);animation:boltFall linear infinite}
@keyframes boltFall{0%{transform:translateY(-120%) scaleY(.4);opacity:0}10%{opacity:1}90%{opacity:1}100%{transform:translateY(120vh) scaleY(1);opacity:0}}
.grid-glow{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:54px 54px;mask-image:radial-gradient(70% 60% at 60% 30%,#000,transparent);pointer-events:none}

/* ===== Section heading ===== */
.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-family:'Sora';font-weight:600;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--spark)}
.eyebrow::before{content:'';width:26px;height:2px;background:var(--spark)}
.sec-head{max-width:680px;margin-bottom:3.2rem}
.sec-head h2{font-size:clamp(1.9rem,4vw,2.9rem);margin:1rem 0 .8rem}
.sec-head p{color:var(--slate);font-size:1.08rem}
.center{margin-left:auto;margin-right:auto;text-align:center}
.center .eyebrow{justify-content:center}

/* ===== Reveal animation ===== */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.in{opacity:1;transform:none}
.reveal[data-d="1"]{transition-delay:.1s}
.reveal[data-d="2"]{transition-delay:.2s}
.reveal[data-d="3"]{transition-delay:.3s}
.reveal[data-d="4"]{transition-delay:.4s}

/* ===== Footer ===== */
.footer{background:var(--ink);color:rgba(255,255,255,.7);padding:4.5rem 0 2rem}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:2.5rem;margin-bottom:3rem}
.footer-logo{display:flex;align-items:center;gap:.6rem;font-family:'Sora';font-weight:800;font-size:1.3rem;color:#fff;margin-bottom:1rem}
.footer-logo img{height:46px}
.footer p{font-size:.92rem;max-width:300px}
.footer h4{color:#fff;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:1.2rem}
.footer ul{list-style:none}
.footer ul li{margin-bottom:.7rem}
.footer ul a{font-size:.94rem;transition:color .3s}
.footer ul a:hover{color:var(--spark)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:1.8rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;font-size:.86rem}
.footer-bottom a:hover{color:#fff}

/* ===== Responsive ===== */
@media(max-width:860px){
  .nav-links{position:fixed;inset:0 0 0 auto;width:min(78%,320px);background:var(--ink);flex-direction:column;justify-content:center;gap:2.2rem;transform:translateX(100%);transition:transform .4s var(--ease);box-shadow:-20px 0 60px rgba(0,0,0,.4)}
  .nav-links.open{transform:translateX(0)}
  .nav-links a{color:#fff!important;font-size:1.2rem}
  .nav-toggle{display:flex}
  .nav.scrolled .nav-toggle span{background:var(--ink)}
  .nav-toggle.open span{background:#fff!important}
  .footer-grid{grid-template-columns:1fr 1fr;gap:2rem}
}
@media(max-width:520px){.footer-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
