/* PJ hero spheres — decorative. Sits in the lower band of the hero visual,
   below the face, and never intercepts pointer events. */
.pjp-spheres{position:absolute;left:-64px;bottom:-26px;width:330px;height:150px;pointer-events:none;z-index:2}
.pjp-sphere{position:absolute;display:block;border-radius:50%;transition:transform 360ms cubic-bezier(.22,.8,.3,1);will-change:transform}
.pjp-sphere-core{display:block;width:100%;height:100%;border-radius:50%;
  background:
    radial-gradient(circle at 68% 72%, rgba(255,170,120,.9) 0 2.5%, rgba(242,140,85,.35) 5%, rgba(242,140,85,0) 9%),
    radial-gradient(circle at 32% 28%, rgba(255,255,255,.55) 0 6%, rgba(255,255,255,0) 30%),
    radial-gradient(circle at 40% 36%, var(--pjs-a,#3B74F0) 0%, var(--pjs-b,#17243D) 78%);
  box-shadow:0 14px 26px -12px rgba(16,42,67,.55), inset -6px -8px 16px rgba(8,18,34,.35)}
.pjp-sphere.is-pulse .pjp-sphere-core{animation:pjpPulse 320ms ease-out}
@keyframes pjpPulse{0%{transform:scale(1)}45%{transform:scale(1.08)}100%{transform:scale(1)}}
.pjp-sphere-1{width:112px;height:112px;left:0;top:30px;--pjs-a:#2A5FD8;--pjs-b:#102A43}
.pjp-sphere-2{width:76px;height:76px;left:112px;top:66px;--pjs-a:#2563EB;--pjs-b:#17243D}
.pjp-sphere-3{width:92px;height:92px;left:186px;top:6px;--pjs-a:#1E4FA8;--pjs-b:#102A43}
.pjp-sphere-4{width:56px;height:56px;left:270px;top:84px;--pjs-a:#4F86F7;--pjs-b:#17243D}
.pjp-sphere-5{width:64px;height:64px;left:84px;top:0;--pjs-a:#3567D6;--pjs-b:#102A43}
.pjp-spheres.is-static .pjp-sphere{transition:none}
/* Phones/tablets: a small static band below the portrait. No pointer logic. */
@media (max-width:767px){
  .pjp-spheres{position:relative;left:auto;bottom:auto;width:200px;height:80px;margin:14px auto 0}
  .pjp-sphere-4,.pjp-sphere-5{display:none}
  .pjp-sphere-1{width:64px;height:64px;left:0;top:10px}
  .pjp-sphere-2{width:44px;height:44px;left:72px;top:30px}
  .pjp-sphere-3{width:56px;height:56px;left:126px;top:0}
}
@media (prefers-reduced-motion:reduce){.pjp-sphere{transition:none}.pjp-sphere.is-pulse .pjp-sphere-core{animation:none}}
