/* ================================================================
   maverick_partner_program_enhance.css
   Additive visual-polish layer for the Partner Program page.
   Loaded AFTER maverick_partner_program_v2.css. Fully reversible:
   remove this stylesheet's <link>, the reveal <script>, and the
   inline head script to return to the previous design.
   ================================================================ */

/* ---- 1. Ambient depth behind the flat near-black ---------------- */
body.partner-program-v2::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(44% 32% at 84% 4%, rgba(17,220,202,.14), transparent 62%),
    radial-gradient(40% 34% at 8% 22%, rgba(57,255,136,.10), transparent 60%),
    radial-gradient(48% 40% at 66% 70%, rgba(17,220,202,.06), transparent 62%),
    radial-gradient(52% 42% at 40% 98%, rgba(216,255,25,.06), transparent 60%);
}
body.partner-program-v2 .header,
body.partner-program-v2 .main,
body.partner-program-v2 .footer{position:relative;z-index:1}

/* ---- 2. Signature gradient on the headline numbers ------------- */
.partner-program-v2 .pn-hero-proof dt,
.partner-program-v2 .pn-position-count strong,
.partner-program-v2 .pn-ledger-head strong{
  background:linear-gradient(118deg,var(--pn-cyan),var(--pn-green) 52%,var(--pn-lime));
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.partner-program-v2 .pn-position-count{
  box-shadow:0 0 40px -14px rgba(216,255,25,.5);
}
/* small boxed counters — soft neon lift */
.partner-program-v2 .pn-position-tabs button>b,
.partner-program-v2 .pn-map-supply b,
.partner-program-v2 .pn-map-delivery>article>b{
  box-shadow:0 0 16px -6px rgba(57,255,136,.55), inset 0 0 14px -9px rgba(17,220,202,.7);
}
.partner-program-v2 .pn-position-tabs button[aria-selected="true"]>b{
  border-color:rgba(216,255,25,.6);
  box-shadow:0 0 20px -5px rgba(216,255,25,.6);
}

/* ---- 3. Panel depth + brand glow ------------------------------- */
.partner-program-v2 .pn-position-explorer,
.partner-program-v2 .pn-network-map,
.partner-program-v2 .pn-value-grid,
.partner-program-v2 .pn-connect-section,
.partner-program-v2 .pn-seat-ledger,
.partner-program-v2 .pn-connect-console{
  box-shadow:0 34px 90px -46px rgba(0,0,0,.9);
}
.partner-program-v2 .pn-hero{
  box-shadow:0 52px 140px -60px rgba(17,220,202,.42), 0 30px 80px -46px rgba(0,0,0,.9);
}
.partner-program-v2 .pn-founding-section,
.partner-program-v2 .pn-final-cta{
  box-shadow:0 46px 130px -60px rgba(216,255,25,.4), 0 26px 70px -46px rgba(0,0,0,.85);
}

/* ---- 4. Interactive life --------------------------------------- */
.partner-program-v2 .pn-value-grid article,
.partner-program-v2 .pn-map-supply>div,
.partner-program-v2 .pn-map-delivery>article,
.partner-program-v2 .pn-seat-row i,
.partner-program-v2 .pn-faq-list details,
.partner-program-v2 .pn-connection-chips span,
.partner-program-v2 .pn-boundary-copy span{
  transition:background .25s ease,border-color .25s ease,transform .2s ease,box-shadow .25s ease,color .2s ease;
}
.partner-program-v2 .pn-value-grid article:hover{
  background:#0a1813;box-shadow:inset 0 2px 0 var(--pn-green), 0 24px 60px -40px rgba(17,220,202,.5);
}
.partner-program-v2 .pn-map-supply>div:hover,
.partner-program-v2 .pn-map-delivery>article:hover{
  border-color:rgba(57,255,136,.6);transform:translateY(-2px);
  box-shadow:0 18px 44px -28px rgba(57,255,136,.5);
}
.partner-program-v2 .pn-seat-row i:hover{
  transform:translateY(-2px);border-color:var(--pn-lime);
  box-shadow:0 0 18px -4px rgba(216,255,25,.65);
}
.partner-program-v2 .pn-faq-list details[open]{
  box-shadow:inset 2px 0 0 var(--pn-lime);
}
.partner-program-v2 .pn-connection-chips span:hover,
.partner-program-v2 .pn-boundary-copy span:hover{
  border-color:rgba(216,255,25,.55);color:#eef4f0;
}
.partner-program-v2 .btn.primary{
  box-shadow:0 10px 30px -16px rgba(57,255,136,.55)!important;
}
.partner-program-v2 .btn.primary:hover{
  box-shadow:0 16px 40px -12px rgba(57,255,136,.7)!important;
}

/* ---- 5. Eyebrow accent tick ------------------------------------ */
.partner-program-v2 .pn-section .eyebrow::before,
.partner-program-v2 .pn-hero .kicker::before{
  content:"";display:inline-block;width:24px;height:2px;margin-right:11px;
  vertical-align:middle;border-radius:2px;
  background:linear-gradient(90deg,var(--pn-cyan),var(--pn-lime));
}

/* ---- 6. Hero connection diagram — glow + directional flow ------ */
.partner-program-v2 .pn-hero-rails .rail-cyan{filter:drop-shadow(0 0 2px rgba(17,220,202,.45))}
.partner-program-v2 .pn-hero-rails .rail-green{
  filter:drop-shadow(0 0 3px rgba(57,255,136,.6));
  stroke-dasharray:6 8;animation:pnFlow 1.25s linear infinite;
}
.partner-program-v2 .pn-hero-rails circle{animation:pnPulse 2.6s ease-in-out infinite}
.partner-program-v2 .pn-hero-rails circle:nth-of-type(2n){animation-delay:.4s}
.partner-program-v2 .pn-hero-rails circle:nth-of-type(3n){animation-delay:.8s}
.partner-program-v2 .pn-core-mark{box-shadow:0 0 46px -12px rgba(57,255,136,.32)}
.partner-program-v2 .pn-map-core{box-shadow:0 0 46px -14px rgba(17,220,202,.35)}
@keyframes pnFlow{to{stroke-dashoffset:-28}}
@keyframes pnPulse{0%,100%{opacity:.4}50%{opacity:1}}

/* ---- 7. Scroll reveal (progressive, fail-safe) ----------------- */
html.pn-anim body.partner-program-v2 .pn-hero,
html.pn-anim body.partner-program-v2 .pn-section{
  opacity:0;transform:translateY(22px);
  transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);
}
html.pn-anim body.partner-program-v2 .pn-reveal-in,
html.pn-reveal-all body.partner-program-v2 .pn-hero,
html.pn-reveal-all body.partner-program-v2 .pn-section{
  opacity:1!important;transform:none!important;
}

/* ---- 9. Count-up width stability ------------------------------- */
.partner-program-v2 .pn-hero-proof dt,
.partner-program-v2 .pn-position-count strong,
.partner-program-v2 .pn-ledger-head strong,
.partner-program-v2 .pn-map-supply b,
.partner-program-v2 .pn-map-delivery>article>b,
.partner-program-v2 .pn-position-tabs button>b{font-variant-numeric:tabular-nums}

/* ---- 10. Cursor spotlight on the hero (JS drives --mx/--my) ----- */
.partner-program-v2 .pn-hero{
  --mx:72%;--my:8%;
  background:
    radial-gradient(360px 300px at var(--mx) var(--my), rgba(57,255,136,.13), transparent 68%),
    #06100d;
}

/* ---- 11. Travelling current pulse on the connection-layer line -- */
.partner-program-v2 .pn-network-map:after{
  background:
    linear-gradient(90deg, transparent 42%, rgba(216,255,25,.95) 50%, transparent 58%),
    linear-gradient(90deg,var(--pn-cyan),var(--pn-green),var(--pn-lime));
  background-size:220% 100%, 100% 100%;
  background-repeat:no-repeat;
  opacity:.6;
  animation:pnComet 3.4s linear infinite;
}
@keyframes pnComet{0%{background-position:120% 0, 0 0}100%{background-position:-120% 0, 0 0}}

/* ---- 12. Energised rotating gradient border on the final CTA ---- */
@property --pn-a{syntax:'<angle>';initial-value:0deg;inherits:false}
.partner-program-v2 .pn-final-cta{position:relative;isolation:isolate}
.partner-program-v2 .pn-final-cta::before{
  content:"";position:absolute;inset:-1.5px;z-index:-1;border-radius:15px;padding:1.5px;
  background:conic-gradient(from var(--pn-a), var(--pn-cyan), var(--pn-lime), var(--pn-green), var(--pn-cyan));
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  opacity:.85;animation:pnSpin 6s linear infinite;
}
@keyframes pnSpin{to{--pn-a:360deg}}

/* ---- 13. Position-tab swap flash ------------------------------- */
.partner-program-v2 .pn-position-panel{transition:opacity .18s ease}
.partner-program-v2 .pn-position-panel.pn-swapping{opacity:.35}

/* ---- 14. OEM technology categories (ranges, per docs) ---------- */
.partner-program-v2 .pn-oem-cats{margin-top:26px;padding-top:22px;border-top:1px solid var(--pn-line)}
.partner-program-v2 .pn-cat-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.partner-program-v2 .pn-cat-chips span{display:inline-flex;align-items:center;gap:10px;padding:9px 13px;
  border:1px solid rgba(17,220,202,.22);border-radius:8px;background:rgba(8,17,14,.6);
  font-family:var(--display);font-size:13px;color:#d7e0dc}
.partner-program-v2 .pn-cat-chips b{font:700 11px/1 var(--pn-mono);color:var(--pn-lime);
  padding:3px 6px;border:1px solid rgba(216,255,25,.3);border-radius:5px}
.partner-program-v2 .pn-oem-cats .pn-footnote{margin-top:12px}

/* ---- 8. Motion opt-out ----------------------------------------- */
@media(prefers-reduced-motion:reduce){
  .partner-program-v2 .pn-hero-rails .rail-green{animation:none;stroke-dasharray:none}
  .partner-program-v2 .pn-hero-rails circle{animation:none}
  .partner-program-v2 .pn-network-map:after{animation:none}
  .partner-program-v2 .pn-final-cta::before{animation:none}
  html.pn-anim body.partner-program-v2 .pn-hero,
  html.pn-anim body.partner-program-v2 .pn-section{opacity:1;transform:none}
}
