
/* ==========================================================================
   THEME UPDATE — Brand colour #AA03CE + Black Gradient
   Capsule floating blur nav • Extra motion • Legal pages
   ========================================================================== */

:root{
  --primary:#AA03CE;
  --primary-dark:#7a0296;
  --secondary:#3d0049;
  --accent-teal:#22c1a4;
  --accent-orange:#e6019e;
  --accent-pink:#ff4fd8;
  --grad: linear-gradient(120deg, #000000 0%, #4b0060 45%, #AA03CE 100%);
  --grad-2: linear-gradient(120deg, #AA03CE, #ff4fd8);
  --grad-dark: linear-gradient(135deg, #000000 0%, #26002e 55%, #AA03CE 130%);
}

/* ---------- Capsule floating blur nav ---------- */
.site-header{
  position:sticky;top:0;z-index:1000;background:transparent;border-bottom:none;
  padding:16px 12px 0;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;
  transition:padding .3s ease;
}
.site-header .nav{
  max-width:1180px;margin:0 auto;padding:10px 14px 10px 22px;
  background:rgba(10,8,14,.62);
  border:1px solid rgba(170,3,206,.35);
  border-radius:999px;
  backdrop-filter:blur(20px) saturate(180%);
  -webkit-backdrop-filter:blur(20px) saturate(180%);
  box-shadow:0 10px 40px rgba(0,0,0,.25), 0 0 0 1px rgba(255,255,255,.02) inset;
  transition:box-shadow .3s ease, transform .3s ease, background .3s ease;
}
.site-header.scrolled{padding-top:8px}
.site-header.scrolled .nav{
  box-shadow:0 14px 46px rgba(170,3,206,.28), 0 0 0 1px rgba(255,255,255,.03) inset;
  transform:translateY(2px);
}
.site-header .brand img{height:34px}
.site-header .nav-links a{color:#e7e2ee}
.site-header .nav-links a:hover,.site-header .nav-links a.active{
  background:rgba(170,3,206,.28);color:#fff;
}
.site-header .nav-toggle span{background:#fff}
.site-header .nav-cta.btn-primary{box-shadow:0 8px 22px rgba(170,3,206,.45)}

@media(max-width:992px){
  .site-header{padding:12px 14px 0}
  .site-header .nav{padding:8px 10px 8px 16px}
}

/* ---------- Topbar tint ---------- */
.topbar{background:#050005}
.topbar a:hover{color:var(--accent-pink)}

/* ---------- Hero: black-to-magenta gradient ---------- */
.hero{
  background:radial-gradient(circle at 15% 20%, rgba(170,3,206,.35), transparent 45%),
             radial-gradient(circle at 85% 80%, rgba(170,3,206,.22), transparent 50%),
             linear-gradient(160deg, #060005 0%, #1a0020 55%, #2c0035 100%);
  padding-top:150px;
}
.hero::before,.hero::after{display:none}
.hero .eyebrow{background:rgba(170,3,206,.16);color:#ff8ff0;border:1px solid rgba(170,3,206,.4)}
.hero h1{color:#fff}
.hero h1 .grad-text{background:linear-gradient(120deg,#ff8ff0,#AA03CE);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{color:#c9bdd4}
.hero .pill{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#dccbe6}
.floating-card{background:rgba(20,14,24,.75);backdrop-filter:blur(14px);border:1px solid rgba(170,3,206,.3);color:#fff}
.floating-card .fc-title{color:#c9bdd4}
.floating-card .fc-value{color:#fff}

/* ---------- Stats / footer: deepen to true black gradient ---------- */
.stats-bar,.site-footer{
  background:linear-gradient(160deg,#050005 0%,#0d0010 60%,#180020 100%);
}
.contact-info-card{background:linear-gradient(160deg,#050005,#1c0022)}

/* ---------- CTA band glow ---------- */
.cta-band{background:var(--grad);position:relative}
.cta-band::after{
  content:'';position:absolute;inset:-2px;border-radius:inherit;padding:2px;
  background:linear-gradient(120deg,transparent,rgba(255,255,255,.35),transparent);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  animation:sheen 3.2s linear infinite;pointer-events:none;
}
@keyframes sheen{0%{background-position:-200% 0}100%{background-position:200% 0}}
.cta-band .btn-primary{color:#AA03CE}

/* ---------- Extra motion ---------- */
.service-card,.portfolio-item,.team-card,.mv-card,.why-card,.job-card,.process-card{
  transition:transform .35s cubic-bezier(.22,1,.36,1), box-shadow .35s ease, border-color .35s ease;
}
.btn-primary{position:relative;overflow:hidden}
.btn-primary::before{
  content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(255,255,255,.35),transparent);
  transform:translateX(-120%);transition:transform .6s ease;
}
.btn-primary:hover::before{transform:translateX(120%)}
.eyebrow{transition:transform .3s ease}
.section-head .eyebrow:hover{transform:translateY(-2px)}
.testi-avatar{background:var(--grad)}
.mv-icon{background:var(--grad)}
.stat-num span{background:linear-gradient(120deg,#ff8ff0,#AA03CE);-webkit-background-clip:text;background-clip:text;color:transparent}

@keyframes pulseGlow{0%,100%{box-shadow:0 0 0 0 rgba(170,3,206,.35)}50%{box-shadow:0 0 0 10px rgba(170,3,206,0)}}
.job-card:hover,.portfolio-item:hover,.team-card:hover,.service-card:hover{animation:pulseGlow 1.6s ease-in-out infinite}

/* ---------- Legal pages ---------- */
.legal-content{max-width:820px;margin:0 auto}
.legal-content h2{font-size:20px;margin:34px 0 12px;color:var(--ink)}
.legal-content h2:first-child{margin-top:0}
.legal-content p{color:var(--muted);margin-bottom:14px;font-size:15px;line-height:1.75}
.legal-content ul{margin:0 0 14px 0;display:flex;flex-direction:column;gap:8px}
.legal-content ul li{color:var(--muted);font-size:15px;padding-left:22px;position:relative;line-height:1.65}
.legal-content ul li::before{content:'';position:absolute;left:0;top:9px;width:7px;height:7px;border-radius:50%;background:var(--primary)}

/* ---------- Footer legal row ---------- */
.footer-legal-row{
  display:flex;gap:22px;flex-wrap:wrap;justify-content:center;padding:20px 0 0;
  border-top:1px solid rgba(255,255,255,.08);margin-top:6px;
}
.footer-legal-row a{font-size:13px;color:#aab1d1;transition:.2s}
.footer-legal-row a:hover{color:var(--accent-pink)}

@media(max-width:640px){
  .hero{padding-top:130px}
  .footer-legal-row{gap:14px}
}
