/* ── SCROLL REVEAL ── */
@keyframes revealUp    { from { opacity:0; transform:translateY(16px)  } to { opacity:1; transform:none } }
@keyframes revealLeft  { from { opacity:0; transform:translateX(-24px) } to { opacity:1; transform:none } }
@keyframes revealRight { from { opacity:0; transform:translateX(24px)  } to { opacity:1; transform:none } }

/* Curva suave tipo iOS: arranca despacio, desacelera suave */
.reveal.visible        { animation: revealUp    1.1s cubic-bezier(0.22, 1, 0.36, 1) both; }
.reveal-left.visible   { animation: revealLeft  1.1s cubic-bezier(0.22, 1, 0.36, 1) both; }
.reveal-right.visible  { animation: revealRight 1.1s cubic-bezier(0.22, 1, 0.36, 1) both; }

/* Delays escalonados */
.delay-1.visible { animation-delay: 0.08s; }
.delay-2.visible { animation-delay: 0.2s; }
.delay-3.visible { animation-delay: 0.32s; }
.delay-4.visible { animation-delay: 0.44s; }

/* ── NAV AL SCROLL ── */
nav { transition: background 0.3s, box-shadow 0.3s; }
nav.scrolled {
  background: rgba(255,255,255,1);
  box-shadow: 0 2px 24px rgba(0,0,0,0.09);
}

/* ── GLOW STATS ── */
.stat-n { transition: text-shadow 0.35s; }
.stat:hover .stat-n { text-shadow: 0 0 28px rgba(200,150,26,0.55); }

/* ── SOMBRA PROP CARDS ── */
.prop-card { transition: background 0.25s, box-shadow 0.25s; }
.prop-card:hover { box-shadow: 0 10px 36px rgba(0,0,0,0.07); }

/* ── ETIQUETAS GALERÍA MÓVIL ── */
.gal-item.in-view .gal-label { opacity: 1; }
