/* ==========================================================================
   hero.css — hero sections, glass stat cards, "how it works" timeline
   ========================================================================== */
.pm-hero { position: relative; }

/* Glassmorphism stat cards (dark hero / CTA sections) */
.pm-glass {
  background: rgba(255,255,255,.08);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: .75rem;
}
.pm-glass-strong {
  background: rgba(255,255,255,.10);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 1rem;
}

/* "How it works" zig-zag timeline */
.pm-timeline-row { opacity: 0; animation: pmFadeUp .6s ease-out forwards; }
.timeline-number {
  width: 5rem; height: 5rem; border-radius: 1rem; color: #fff;
  font-weight: 800; font-size: 1.75rem;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 15px 30px -8px rgba(0,0,0,.2);
}
.timeline-card { border-radius: 1rem; padding: 2rem; box-shadow: 0 20px 40px -10px rgba(0,0,0,.15); color: #fff; max-width: 28rem; }
.timeline-icon-chip {
  width: 4rem; height: 4rem; border-radius: 1rem;
  background: rgba(255,255,255,.2);
  backdrop-filter: blur(6px);
  display: flex; align-items: center; justify-content: center;
}
.timeline-badge { display: inline-block; padding: .25rem 1rem; border-radius: 50rem; background: rgba(255,255,255,.3); backdrop-filter: blur(6px); }
@media (max-width: 991.98px) {
  .timeline-node { display: none !important; }
}

/* Tracking-page / dashboard mockups used in feature sections */
.mock-card { border: 2px solid #e5e7eb; border-radius: 1rem; box-shadow: 0 25px 50px -12px rgba(0,0,0,.20); }
.mock-dot { width: .75rem; height: .75rem; border-radius: 50%; }
.mock-progress-track { height: .5rem; border-radius: 50rem; background: rgba(255,255,255,.2); overflow: hidden; }
.mock-progress-fill { height: 100%; border-radius: 50rem; background: #4ade80; }
.mock-blur-blob { position: absolute; border-radius: 50%; filter: blur(40px); opacity: .3; z-index: -1; }
