/* ============================================
   Fondos profesionales por sección + animaciones
   ============================================ */

/* === Fondos por sección (clase asignada via body[data-page]) === */
body[data-page="home"]::before,
body[data-page="tienda"]::before,
body[data-page="nosotros"]::before,
body[data-page="servicios"]::before,
body[data-page="portafolio"]::before,
body[data-page="contacto"]::before,
body[data-page="publicaciones"]::before,
body[data-page="carrito"]::before,
body[data-page="checkout"]::before {
  content: ''; position: fixed; inset: 0; z-index: -1;
  pointer-events: none;
  transition: opacity .6s ease;
}

body[data-page="home"]::before {
  background:
    radial-gradient(900px circle at 12% 18%, rgba(10,132,255,.18), transparent 55%),
    radial-gradient(800px circle at 88% 70%, rgba(94,92,230,.14), transparent 55%),
    radial-gradient(700px circle at 50% 110%, rgba(48,209,88,.10), transparent 55%);
}
body[data-page="tienda"]::before {
  background:
    radial-gradient(700px circle at 80% 15%, rgba(10,132,255,.14), transparent 50%),
    radial-gradient(600px circle at 10% 80%, rgba(94,92,230,.10), transparent 50%),
    linear-gradient(180deg, transparent, rgba(10,14,26,.4));
}
body[data-page="nosotros"]::before {
  background:
    radial-gradient(900px circle at 20% 30%, rgba(94,92,230,.18), transparent 55%),
    radial-gradient(700px circle at 80% 70%, rgba(10,132,255,.14), transparent 55%);
}
body[data-page="servicios"]::before {
  background:
    radial-gradient(800px circle at 25% 20%, rgba(48,209,88,.14), transparent 55%),
    radial-gradient(700px circle at 80% 80%, rgba(10,132,255,.12), transparent 55%);
}
body[data-page="portafolio"]::before {
  background:
    radial-gradient(900px circle at 15% 25%, rgba(10,132,255,.16), transparent 55%),
    radial-gradient(700px circle at 85% 60%, rgba(94,92,230,.14), transparent 55%);
}
body[data-page="contacto"]::before {
  background:
    radial-gradient(900px circle at 30% 40%, rgba(48,209,88,.12), transparent 55%),
    radial-gradient(700px circle at 75% 30%, rgba(10,132,255,.16), transparent 55%);
}
body[data-page="publicaciones"]::before {
  background:
    radial-gradient(800px circle at 15% 35%, rgba(94,92,230,.14), transparent 55%),
    radial-gradient(700px circle at 80% 70%, rgba(10,132,255,.12), transparent 55%);
}
body[data-page="carrito"]::before,
body[data-page="checkout"]::before {
  background:
    radial-gradient(700px circle at 50% 0%, rgba(10,132,255,.10), transparent 50%);
}

/* === Asegurar contraste de textos === */
.section-title, h1, h2, h3 { color: #fff !important; }
.section-sub, .text-muted-clean { color: rgba(255,255,255,.7) !important; }

/* === Animaciones de entrada con Intersection Observer === */
[data-anim] { opacity: 0; will-change: transform, opacity; transition: opacity .7s ease, transform .7s cubic-bezier(.2,.8,.2,1); }
[data-anim="fade-up"]    { transform: translateY(40px); }
[data-anim="fade-in"]    { transform: none; }
[data-anim="slide-left"] { transform: translateX(-40px); }
[data-anim="slide-right"]{ transform: translateX(40px); }
[data-anim="zoom"]       { transform: scale(.92); }

[data-anim].in-view {
  opacity: 1 !important;
  transform: translate(0,0) scale(1) !important;
}

/* Stagger automático para hijos */
[data-anim-children] > * {
  opacity: 0; transform: translateY(30px);
  transition: opacity .6s ease, transform .6s cubic-bezier(.2,.8,.2,1);
}
[data-anim-children].in-view > * { opacity: 1; transform: none; }
[data-anim-children].in-view > *:nth-child(1) { transition-delay: .05s; }
[data-anim-children].in-view > *:nth-child(2) { transition-delay: .12s; }
[data-anim-children].in-view > *:nth-child(3) { transition-delay: .19s; }
[data-anim-children].in-view > *:nth-child(4) { transition-delay: .26s; }
[data-anim-children].in-view > *:nth-child(5) { transition-delay: .33s; }
[data-anim-children].in-view > *:nth-child(6) { transition-delay: .40s; }
[data-anim-children].in-view > *:nth-child(7) { transition-delay: .47s; }
[data-anim-children].in-view > *:nth-child(8) { transition-delay: .54s; }

/* Respetar reduced motion */
@media (prefers-reduced-motion: reduce) {
  [data-anim], [data-anim-children] > * { opacity: 1 !important; transform: none !important; transition: none !important; }
}

/* ===== Color dorado #F0B04A para text-muted ===== */
.text-muted,
.text-muted-gold {
  color: #F0B04A !important;
}
.text-muted.small,
.text-muted-small,
.text-muted-lead,
.section-sub,
.card-tech p.text-muted,
footer .text-muted,
.product-card .cat,
.pub-card-excerpt,
.service-pro-desc,
.team-bio,
.stat-label {
  color: #F0B04A !important;
}
/* Excepciones: mantener gris en admin */
.adm-sidebar .text-muted,
.adm-main .text-muted { color: rgba(255,255,255,.55) !important; }

/* ===== Logo responsive (controlado desde public.php, aquí solo base) ===== */
.navbar-brand {
  display: flex; align-items: center; gap: 10px;
  font-weight: 800; font-size: 1.4rem;
}
.navbar-brand img { transition: all .3s; }
