/* Pacorita — Motion & Reveal */
.scroll-progress {
  position: fixed; top: 0; left: 0; height: 3px; width: 0%; z-index: 10001;
  background: linear-gradient(90deg, var(--red), var(--yellow), var(--green));
  transition: width .1s linear;
  box-shadow: 0 0 12px rgba(255,214,10,.5);
}

.reveal {
  opacity: 0; transform: translateY(36px);
  transition: opacity .75s cubic-bezier(.16,1,.3,1), transform .75s cubic-bezier(.16,1,.3,1);
}
.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal-left { transform: translateX(-36px); }
.reveal-left.visible { transform: translateX(0); }
.reveal-right { transform: translateX(36px); }
.reveal-right.visible { transform: translateX(0); }
.reveal-delay-1 { transition-delay: .1s; }
.reveal-delay-2 { transition-delay: .18s; }
.reveal-delay-3 { transition-delay: .26s; }

@keyframes floatSlow {
  0%, 100% { transform: translate(0, 0) scale(1); }
  50% { transform: translate(-20px, 20px) scale(1.05); }
}

@keyframes pulseGlow {
  0%, 100% { box-shadow: 10px 10px 0 var(--black), var(--shadow-lg); }
  50% { box-shadow: 10px 10px 0 var(--black), 0 0 40px rgba(255,214,10,.2); }
}

.platform-chip { animation: chipIn .55s cubic-bezier(.16,1,.3,1) backwards; }
.platform-chip:nth-child(1) { animation-delay: .08s; }
.platform-chip:nth-child(2) { animation-delay: .12s; }
.platform-chip:nth-child(3) { animation-delay: .16s; }
.platform-chip:nth-child(4) { animation-delay: .2s; }
.platform-chip:nth-child(5) { animation-delay: .24s; }
.platform-chip:nth-child(6) { animation-delay: .28s; }
.platform-chip:nth-child(7) { animation-delay: .32s; }
.platform-chip:nth-child(8) { animation-delay: .36s; }
.platform-chip:nth-child(9) { animation-delay: .4s; }
@keyframes chipIn {
  from { opacity: 0; transform: scale(.88) translateY(8px); }
  to { opacity: 1; transform: scale(1) translateY(0); }
}

.visibility-board { animation: boardPop .65s cubic-bezier(.16,1,.3,1) .15s backwards, pulseGlow 4s ease-in-out 1s infinite; }
@keyframes boardPop {
  from { opacity: 0; transform: translate(10px, 10px); box-shadow: 0 0 0 var(--black); }
  to { opacity: 1; transform: translate(0, 0); box-shadow: 10px 10px 0 var(--black), var(--shadow-lg); }
}

.section-divider {
  text-align: center; padding: 28px 0;
  background: var(--black); color: var(--yellow);
  font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .25em;
  position: relative;
}
.section-divider::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,214,10,.08), transparent);
}

.story-journey__num { transition: transform .3s, background .3s; }
.story-journey__step:hover .story-journey__num { transform: scale(1.08); background: var(--green); color: var(--white); }

.service-card { animation: cardIn .6s cubic-bezier(.16,1,.3,1) backwards; }
.service-card:nth-child(1) { animation-delay: .1s; }
.service-card:nth-child(2) { animation-delay: .2s; }
.service-card:nth-child(3) { animation-delay: .3s; }
@keyframes cardIn {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}
