:root{
  --ps-v4-ink:#0b1220;
  --ps-v4-ink-2:#101a30;
  --ps-v4-accent:#5b7cfa;
  --ps-v4-accent-2:#8e5bff;
}

body.ps-page--pulse{
  color:rgba(255,255,255,.92);
}

body.ps-page--pulse h1,
body.ps-page--pulse h2,
body.ps-page--pulse h3,
body.ps-page--pulse h4,
body.ps-page--pulse h5,
body.ps-page--pulse h6{
  color:rgba(255,255,255,.96);
}

body.ps-page--pulse .ps-muted{
  color:rgba(255,255,255,.76) !important;
}

body.ps-page--pulse a{
  color:rgba(255,255,255,.92);
}

body.ps-page--pulse a:hover{
  color:rgba(255,255,255,.98);
}

body.ps-v4 .ps-btn--ghost{
  border-color: rgba(255,255,255,.14);
  background: rgba(255,255,255,.04);
}

body.ps-v4 .ps-btn--ghost:hover{
  border-color: rgba(255,255,255,.26);
  background: rgba(255,255,255,.07);
  box-shadow: 0 0 0 1px rgba(255,255,255,.08), 0 18px 60px rgba(0,0,0,.44);
}

body.ps-v4{
  background-color:#070b14;
  background-image: url("../img/cinematic-background-image.png");
  background-size: cover;
  background-position: center top;
  background-attachment: fixed;
  background-repeat: no-repeat;
}

body.ps-v4::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background: radial-gradient(1000px 520px at 20% 10%, rgba(91,124,250,.20), transparent 60%),
              radial-gradient(900px 520px at 80% 10%, rgba(142,91,255,.14), transparent 60%),
              linear-gradient(180deg, rgba(7,11,20,.65), rgba(7,11,20,.88));
}

body.ps-v4 #hudCanvas{
  display:none;
}

body.ps-v4 .bg-grid,
body.ps-v4 .bg-stars{
  animation:none !important;
}

body.ps-v4 .bg-stack{
  display:none;
}

body.ps-v4 .bg-grid{
  opacity:.18;
}

body.ps-v4 .bg-stars{
  opacity:.60;
}

body.ps-v4 .bg-glow{
  opacity:.28;
}

.ps-v4-hero{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  background:radial-gradient(1200px 500px at 15% 25%, rgba(91,124,250,.25), transparent 60%),
             radial-gradient(900px 400px at 85% 15%, rgba(142,91,255,.18), transparent 55%),
             linear-gradient(180deg, rgba(16,26,48,.95), rgba(11,18,32,.95));
  border:1px solid rgba(255,255,255,.08);
}

.ps-v4-hero__grid{
  background-image:url("../img/hud-grid.svg");
  background-size:cover;
  opacity:.22;
  position:absolute;
  inset:0;
  pointer-events:none;
}

.ps-v4-heroPulseBg{
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.55;
  filter:saturate(1.05) contrast(1.05);
}

.ps-v4-heroPulseBg::after{
  content:"";
  position:absolute;
  inset:0;
  background: radial-gradient(900px 480px at 35% 30%, rgba(0,0,0,.08), rgba(0,0,0,.40)),
              linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.62));
}

.ps-v4-heroPulse{
  position:absolute;
  inset:0;
}

.ps-v4-heroPulse .v2-tableStage{
  transform: translate3d(0, 0, 0) scale(0.98);
  transform-origin: center top;
}

.ps-v4-heroPulse .v2-heroMask{
  opacity:.35;
}

.ps-v4-heroPulse .v2-filmgrain{
  opacity:.08;
}

.ps-v4-heroPulse #v2fx{
  opacity:.75;
}

.ps-v4-heroPulse .v2-grid{
  opacity:.18;
}

.ps-v4-heroPulse .v2-space{
  opacity:.60;
}

.ps-v4-heroPulse .v2-tableSurface{
  box-shadow:none;
}

.ps-v4-heroPulse .v2-nodeSub{
  opacity:.70;
}

.ps-v4-heroPulse .v2-th,
.ps-v4-heroPulse .v2-td{
  user-select:none;
}

.ps-v4-kicker{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.35rem .65rem;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  color:rgba(255,255,255,.85);
  font-size:.9rem;
}

.ps-v4-section{
  padding:72px 0;
}

.ps-v4-card{
  border-radius:18px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  padding:22px;
}

.ps-v4-card h3{
  margin:0 0 .5rem 0;
}

.ps-v4-list{
  margin:0;
  padding-left:1.1rem;
}

.ps-v4-pill{
  display:inline-block;
  padding:.25rem .55rem;
  border-radius:999px;
  font-weight:600;
  background:rgba(91,124,250,.15);
  border:1px solid rgba(91,124,250,.25);
  color:rgba(255,255,255,.9);
  font-size:.85rem;
}

.ps-v4-quote{
  border-left:3px solid rgba(91,124,250,.6);
  padding-left:16px;
}

.ps-v4-pricing{
  border-radius:20px;
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.10);
}

.ps-v4-pricing .ps-v4-price{
  font-size:2rem;
  font-weight:800;
  letter-spacing:-0.02em;
}

.ps-v4-small{
  font-size:.95rem;
  color:rgba(255,255,255,.75);
}

.ps-v4-badge{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  font-weight:700;
  font-size:.85rem;
  padding:.25rem .55rem;
  border-radius:999px;
  background:rgba(142,91,255,.15);
  border:1px solid rgba(142,91,255,.25);
  color:rgba(255,255,255,.92);
}

.ps-v4-sticky{
  position:sticky;
  top:12px;
}

@media (max-width: 768px){
  .ps-v4-section{ padding:52px 0; }
}
