/* ============================================================================
   Fuente Poppins — usada ÚNICAMENTE para el logo (.nav-logo)
   Los .ttf están en plain-assets/fonts/poppins/. Las rutas son relativas a
   este archivo (css/logo.css), por eso "../plain-assets/...".
   ========================================================================== */
@font-face {
  font-family: "Poppins";
  src: url("../plain-assets/fonts/poppins/Poppins-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Poppins";
  src: url("../plain-assets/fonts/poppins/Poppins-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* El wordmark del logo usa Poppins (y solo él). */
.nav-logo { font-family: "Poppins", ui-sans-serif, system-ui, sans-serif; }

.text-logo-accent { color: #fe5e1c; }
/* El acento se mantiene aunque el nav pase a estado "scrolled" (fondo blanco),
   así el segundo color del logo se ve también al hacer scroll y en móvil. */
.nav-component.is-scrolled .text-logo-accent { color: #fe5e1c; }

/* ============================================================================
   Marca del logo — cambia de BLANCO a COLOR al hacer scroll
   Arriba, el nav es translúcido oscuro sobre el hero => se ve el logo blanco.
   Al hacer scroll, el JS agrega .is-scrolled al nav (fondo blanco) => color.
   Las dos imágenes se apilan y se hace crossfade con opacity.
   ========================================================================== */
.nav-logo-mark {
  position: relative;
  display: inline-block;
  width: 2.25rem;              /* 36px (igual al ícono anterior en móvil) */
  height: 2.25rem;
  flex-shrink: 0;
}
@media (min-width: 1024px) {
  .nav-logo-mark { width: 2.5rem; height: 2.5rem; }   /* 40px en desktop */
}
.nav-logo-mark .logo-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: opacity .3s ease;
}
.nav-logo-mark .logo-color { opacity: 0; }                              /* oculto arriba */
.nav-component.is-scrolled .nav-logo-mark .logo-white { opacity: 0; }   /* al hacer scroll */
.nav-component.is-scrolled .nav-logo-mark .logo-color { opacity: 1; }

 /* whatsapp */
.wa-float {
  position: fixed; bottom: 1.5rem; right: 1.5rem; z-index: 40;
  display: flex; align-items: center; justify-content: center;
  width: 3.5rem; height: 3.5rem; border-radius: 9999px;
  background: #25d366; color: #fff;
  box-shadow: 0 10px 25px rgba(0,0,0,.2);
  opacity: 0; transform: translateY(1rem) scale(.8); pointer-events: none;
  transition: opacity .3s ease, transform .3s ease, box-shadow .2s ease;
}
.wa-float.is-visible { opacity: 1; transform: translateY(0) scale(1); pointer-events: auto; }
.wa-float:hover { transform: translateY(0) scale(1.08); box-shadow: 0 14px 30px rgba(37,211,102,.45); }
.wa-float svg { width: 2rem; height: 2rem; }
@media (min-width: 1024px) {
  .wa-float { width: 4rem; height: 4rem; bottom: 2rem; right: 2rem; }
  .wa-float svg { width: 2.25rem; height: 2.25rem; }
}
@media (prefers-reduced-motion: reduce) { .wa-float { transition: opacity .3s ease; transform: none; } }