/* Footer (home v5) · propuesta A depurada: sin enlaces repetidos del header ni CTA */
.pf { position: relative; overflow: hidden; margin-top: 0; padding-top: 88px; background: radial-gradient(120% 80% at 85% 0%, #2C2017 0%, #1A130D 60%); color: rgba(255, 255, 255, .62); font-size: 14px; border-radius: 28px 28px 0 0; }
.pf__arriba { display: grid; grid-template-columns: 1.15fr 2fr; gap: 64px; }
.pf__marca img { width: 140px; height: auto; }
.pf__frase { margin-top: 26px; max-width: 19ch; font-family: var(--serif); font-size: 28px; line-height: 1.2; letter-spacing: -0.03em; color: var(--blanco); }
.pf__contacto { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; margin-top: 28px; }
.pf__contacto a { display: inline-flex; align-items: center; gap: 10px; color: rgba(255, 255, 255, .82); transition: color .2s var(--curva-hover); }
.pf__contacto a:hover { color: #F0C38A; }
.pf__contacto .lucide, .pf__contacto svg { width: 17px; height: 17px; flex: none; color: #F0C38A; }
.pf__redes { display: flex; gap: 8px; margin-top: 26px; }
.pf__redes a { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: rgba(255, 255, 255, .06); color: #F0C38A; box-shadow: inset 0 0 0 1px rgba(240, 195, 138, .18); transition: background-color .2s var(--curva-hover), color .2s var(--curva-hover); }
.pf__redes a:hover { background: #F0C38A; color: #1A130D; }
.pf__redes svg { width: 18px; height: 18px; }

.pf__cols { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 40px; }
.pf__col { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.pf__titulo { margin-bottom: 8px; font-family: var(--serif); font-size: 19px; letter-spacing: -0.02em; color: #F0C38A; }
.pf__col a { transition: color .2s var(--curva-hover); }
.pf__col a:hover { color: #F0C38A; }
.pf__dir { color: rgba(255, 255, 255, .86); line-height: 1.5; }
.pf__ref { font-size: 13px; color: rgba(255, 255, 255, .5); }
.pf__horario { display: grid; grid-template-columns: auto auto; column-gap: 14px; row-gap: 4px; margin-top: 8px; padding-top: 14px; border-top: 1px solid rgba(240, 195, 138, .14); font-size: 13px; color: rgba(255, 255, 255, .62); font-variant-numeric: tabular-nums; }
.pf__horario dt { color: rgba(255, 255, 255, .42); }
.pf__llegar { display: inline-flex; align-items: center; gap: 6px; margin-top: 6px; font-size: 13px; color: #F0C38A; }
.pf__llegar .lucide { width: 14px; height: 14px; }

.pf__legal { position: relative; z-index: 2; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 14px 24px; margin-top: 80px; padding-top: 24px; border-top: 1px solid rgba(240, 195, 138, .14); font-size: 12.5px; color: rgba(255, 255, 255, .42); }
.pf__legal div { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; }
.pf__legal a:hover { color: #F0C38A; }
.pf__libro { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: var(--r-pildora); box-shadow: inset 0 0 0 1px rgba(240, 195, 138, .3); color: rgba(255, 255, 255, .8); }
.pf__libro .lucide { width: 14px; height: 14px; color: #F0C38A; }
/* Logotipo gigante (SVG de la marca) recortado por el borde inferior; el degradado dorado se aplica con máscara */
.pf__gigante { display: block; width: min(calc(100% - var(--pad-x) * 2), var(--contenedor)); aspect-ratio: 488 / 129; margin: 64px auto 0; transform: translateY(14%); background: linear-gradient(180deg, rgba(240, 195, 138, .34) 0%, rgba(240, 195, 138, .05) 85%); -webkit-mask: url(../img/radiance-palabra-flores.svg) center / contain no-repeat; mask: url(../img/radiance-palabra-flores.svg) center / contain no-repeat; pointer-events: none; }

/* Botón flotante de WhatsApp (escritorio; en móvil ya está en la barra inferior) */
.wa-flota { position: fixed; right: 24px; bottom: 24px; z-index: 60; display: grid; place-items: center; width: 58px; height: 58px; border-radius: 50%; background: #25D366; color: var(--blanco); box-shadow: 0 8px 24px rgba(37, 211, 102, .35); transition: transform .3s var(--curva); }
.wa-flota:hover { transform: scale(1.06); }
.wa-flota svg { width: 30px; height: 30px; }
.barra-movil__wa svg { width: 24px; height: 24px; }

@media (max-width: 1100px) {
  .pf__arriba { grid-template-columns: 1fr; gap: 56px; }
}
@media (max-width: 899px) {
  .pf { padding-top: 64px; border-radius: 22px 22px 0 0; }
  .pf__frase { font-size: 24px; }
  .pf__cols { grid-template-columns: 1fr 1fr; gap: 40px 24px; }
  .pf__servicios { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px; }
  .pf__servicios .pf__titulo { grid-column: 1 / -1; }
  .pf__legal { margin-top: 56px; flex-direction: column; align-items: flex-start; }
  .pf__gigante { margin-top: 32px; background: linear-gradient(180deg, rgba(240, 195, 138, .5) 0%, rgba(240, 195, 138, .12) 90%); }
}
@media (max-width: 480px) {
  .pf { padding-bottom: 28px; }
  .pf__cols { gap: 36px 18px; }
  .pf__dir { font-size: 13.5px; }
  .pf__horario { column-gap: 10px; }
  .pf__legal div { gap: 12px 18px; }
}
