/* =====================
   TIPOGRAFÍA - Google Fonts
===================== */
@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800&display=swap');

body, p, li, a {
  font-family: 'Nunito', sans-serif !important;
}





/* Eliminar cualquier background en wp-site-blocks */


/* =====================
   HEADER FINAL
===================== */
header.wp-block-template-part,
header.wp-block-template-part .wp-block-group {
  background-color: #7C30FF !important;
  border-radius: 0 !important;
}
/* Menú ítems juntos, no distribuidos */
header .wp-block-navigation .wp-block-navigation__container {
  flex-wrap: nowrap !important;
  gap: 1rem !important;
  justify-content: flex-end !important;
}
/* Colores menú */
header .wp-block-navigation a,
header .wp-block-navigation-item__content {
  color: #ffffff !important;
  font-size: 0.9rem !important;
}
header .wp-block-navigation__submenu-icon svg { stroke: #ffffff !important; }

/* Submenús hacia ABAJO (no a los lados) */
header .wp-block-navigation__submenu-container {
  background-color: #5A1DB0 !important;
  z-index: 9999 !important;
  border-radius: 8px !important;
  top: 100% !important;
  left: 0 !important;
  right: auto !important;
  min-width: 200px !important;
}
header .wp-block-navigation__submenu-container a {
  color: #ffffff !important;
  display: block !important;
  padding: 8px 16px !important;
}
header .wp-block-navigation__submenu-container a:hover {
  background-color: #7C30FF !important;
}

/* Hamburguesa móvil */
header .wp-block-navigation__responsive-container-open { color: #ffffff !important; }
.wp-block-navigation__responsive-container.is-menu-open {
  background-color: #5A1DB0 !important;
}
.wp-block-navigation__responsive-container.is-menu-open a { color: #ffffff !important; }

/* Eliminar completamente cualquier background en wp-site-blocks */
.wp-site-blocks {
  background-image: none !important;
  background: none !important;
}

/* Ocultar título automático de página */
.wp-block-post-title,
.entry-title,
.page-title { display: none !important; }

/* Restaurar tipografía Nunito */
@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800&display=swap');
body, p, li, a, button {
  font-family: 'Nunito', sans-serif !important;
}
h1, h2, h3, h4 {
  font-family: 'Nunito', sans-serif !important;
  font-weight: 800 !important;
}

/* Quitar línea horizontal gris bajo el header */
.entry-header,
.wp-block-post-content > hr:first-child,
.entry-content > hr:first-child,
.page .entry-header { display: none !important; }

/* Tamaños de encabezados controlados */
h1 { font-size: clamp(1.6rem, 3vw, 2.2rem) !important; line-height: 1.2 !important; }
h2 { font-size: clamp(1.2rem, 2.5vw, 1.6rem) !important; line-height: 1.3 !important; }
h3 { font-size: clamp(1rem, 2vw, 1.3rem) !important; line-height: 1.4 !important; }

/* Quitar primer separador HR de cada página */
.entry-content .wp-block-separator:first-child,
.wp-block-post-content > .wp-block-separator:first-of-type {
  display: none !important;
}

/* Ocultar línea horizontal del template (separador ancho) */
.wp-block-separator.alignwide.is-style-wide {
  display: none !important;
}

/* =====================
   CHILLAX - Tipografía del menú
===================== */
@font-face {
  font-family: 'Chillax';
  src: url('https://api.fontshare.com/v2/css?f[]=chillax@400,500,600,700&display=swap') format('woff2');
}

/* Aplicar Chillax al menú de navegación */
header .wp-block-navigation a,
header .wp-block-navigation-item__content,
header .wp-block-navigation .wp-block-navigation-item__label {
  font-family: 'Chillax', 'Nunito', sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.03em !important;
}



/* Logo más grande sin deformar */
header .wp-block-image {
  flex-shrink: 0 !important;
}
header .wp-block-image img {
  width: 104px !important;
  height: 104px !important;
  object-fit: contain !important;
  border-radius: 50% !important;
}

/* =====================
   COMPOSICIÓN Y MÁRGENES
===================== */

/* Ancho máximo del contenido para líneas legibles */
.entry-content,
.wp-block-post-content {
  max-width: 780px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}
/* Portada más ancha para aprovechar el espacio */
.home .entry-content,
.home .wp-block-post-content {
  max-width: 1100px !important;
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}

/* Espacio superior entre header y contenido */
.wp-block-post-content,
.entry-content {
  padding-top: 1.5rem !important;
  padding-bottom: 3rem !important;
}

/* Tamaño del cuerpo de texto más cómodo */
.entry-content p,
.wp-block-post-content p,
.wp-block-paragraph {
  font-size: 1rem !important;
  line-height: 1.75 !important;
  margin-bottom: 1.2rem !important;
}

/* Títulos de página (h1) más proporcionados */
.entry-content h1,
.wp-block-post-content h1,
.wp-block-heading:is(h1) {
  font-size: clamp(1.6rem, 3vw, 2rem) !important;
  margin-bottom: 1.5rem !important;
  line-height: 1.2 !important;
}

/* Subtítulos h2 */
.entry-content h2,
.wp-block-post-content h2,
.wp-block-heading:is(h2) {
  font-size: clamp(1.2rem, 2vw, 1.5rem) !important;
  margin-top: 2rem !important;
  margin-bottom: 0.8rem !important;
  line-height: 1.3 !important;
}

/* Subtítulos h3 */
.entry-content h3,
.wp-block-post-content h3,
.wp-block-heading:is(h3) {
  font-size: clamp(1rem, 1.5vw, 1.2rem) !important;
  margin-top: 1.5rem !important;
  margin-bottom: 0.4rem !important;
}

/* =====================
   PORTADA - reducir espacio vacío superior
===================== */
.home .wp-block-post-content,
.home .entry-content {
  padding-top: 0.5rem !important;
}

/* Columnas de ejes de trabajo - equilibrar */
.home .wp-block-columns {
  gap: 2rem !important;
  align-items: flex-start !important;
}
.home .wp-block-column {
  min-width: 0 !important;
}

/* Contacto - email sin cortar */
.wp-block-post-content .wp-block-column p,
.entry-content .wp-block-column p {
  overflow-wrap: break-word !important;
  word-break: break-word !important;
}

/* Contacto - email y links sin cortar */
.page-id-162 .wp-block-column a,
.page-id-162 .wp-block-column p {
  word-break: break-all !important;
  overflow-wrap: anywhere !important;
  font-size: 0.95rem !important;
}




.home .wp-block-columns .wp-block-column:nth-child(3) p,
.home .wp-block-columns .wp-block-column:nth-child(3) h3 {
  color: #ffffff !important;
}


/* =====================
   ESPACIO VACÍO - SOLUCIÓN AGRESIVA
===================== */
/* Eliminar todo el espacio entre header y contenido */
.wp-site-blocks > main,
main.wp-block-group {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.entry-content,
.wp-block-post-content {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
/* Específico para portada */
.home .entry-content,
.home .wp-block-post-content {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
/* El figure del logo en portada */
.home .wp-block-post-content > figure:first-child,
.home .entry-content > figure:first-child {
  margin-top: 1.5rem !important;
}

/* =====================
   INTERLINEADO - MÁS COMPACTO
===================== */
p, .wp-block-paragraph,
.entry-content p,
.wp-block-post-content p {
  line-height: 1.55 !important;
  margin-bottom: 1rem !important;
}



/* =====================
   ELIMINAR ESPACIO GRANDE DEL TEMA
===================== */
:root {
  --wp--custom--spacing--large: 2rem !important;
  --wp--custom--spacing--small: 0.5rem !important;
  --wp--custom--spacing--outer: 1rem !important;
}
/* Todos los grupos con ese padding hardcoded */
[style*="padding-top:var(--wp--custom--spacing"] {
  padding-top: 1.5rem !important;
}
[style*="padding-bottom:var(--wp--custom--spacing"] {
  padding-bottom: 1.5rem !important;
}

/* =====================
   ELIMINAR ESPACIO - VARIABLE DEL TEMA
===================== */
:root {
  --wp--custom--spacing--medium: 1rem !important;
}
/* Post title y featured image ocultos - sin margen */
.wp-block-post-title { margin: 0 !important; }
.wp-block-post-featured-image { margin: 0 !important; display: none !important; }
/* Separador del template */
.wp-block-separator.alignwide { display: none !important; }
/* Contenedor del contenido de página */
.page .entry-content > *:first-child,
.page .wp-block-post-content > *:first-child {
  margin-top: 0 !important;
}

/* =====================
   INTERLINEADO COMPACTO
===================== */
body,
p,
li,
.wp-block-paragraph,
.entry-content p,
.wp-block-post-content p,
.entry-content li,
.wp-block-post-content li {
  line-height: 1.35 !important;
}

/* =====================
   EJES DE TRABAJO - TARJETAS CUADRADAS
===================== */
/* Las tarjetas son las columnas internas (dentro del layout de 2 columnas) */
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column {
  padding: 1rem 1rem 1.4rem 1rem !important;
  min-height: 0 !important;
  aspect-ratio: 1 / 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  background-image: none !important;
  clip-path: none !important;
  }
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column h4 {
  font-size: 0.78rem !important;
  font-weight: 800 !important;
  margin-top: 0 !important;
  margin-bottom: 0.15rem !important;
}
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column p {
  font-size: 0.65rem !important;
  line-height: 1.3 !important;
  margin-bottom: 0 !important;
}
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(1) {
  background-color: #F0C800 !important;
  border-radius: 8px 20px 10px 18px / 16px 10px 20px 8px !important;
}
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(2) {
  background-color: #50C8DC !important;
  border-radius: 18px 8px 16px 10px / 10px 16px 8px 20px !important;
}
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(3) {
  background-color: #F05000 !important;
  border-radius: 12px 16px 8px 20px / 20px 8px 16px 10px !important;
}
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(3) *,
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(3) h4,
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(3) p {
  color: #ffffff !important;
}
/* La columna izquierda grande (logo + texto) sin estilos de tarjeta */
.home .wp-block-columns > .wp-block-column {
  background-color: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  aspect-ratio: unset !important;
}

/* Logo y menú - forzar tamaño */
header.wp-block-template-part .wp-block-image img {
  width: 104px !important;
  height: 104px !important;
  max-width: 104px !important;
}
header.wp-block-template-part .wp-block-navigation__container {
  gap: 2.5rem !important;
}


/* Mismo color de tarjetas de ejes, en Sobre MAREA */
body.page-id-150 .wp-block-columns > .wp-block-column:nth-child(1) {
  background-color: #F0C800 !important;
  border-radius: 8px 20px 10px 18px / 16px 10px 20px 8px !important;
  padding: 1rem !important;
}
body.page-id-150 .wp-block-columns > .wp-block-column:nth-child(2) {
  background-color: #50C8DC !important;
  border-radius: 18px 8px 16px 10px / 10px 16px 8px 20px !important;
  padding: 1rem !important;
}
body.page-id-150 .wp-block-columns > .wp-block-column:nth-child(3) {
  background-color: #F05000 !important;
  border-radius: 12px 16px 8px 20px / 20px 8px 16px 10px !important;
  padding: 1rem !important;
}
body.page-id-150 .wp-block-columns > .wp-block-column:nth-child(3) *,
body.page-id-150 .wp-block-columns > .wp-block-column:nth-child(3) h4,
body.page-id-150 .wp-block-columns > .wp-block-column:nth-child(3) p {
  color: #ffffff !important;
}

/* Tarjetas ejes clickeables — cursor pointer y hover elevación, en Sobre MAREA */
body.page-id-150 .wp-block-columns > .wp-block-column {
  cursor: pointer !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}
body.page-id-150 .wp-block-columns > .wp-block-column:hover {
  transform: translateY(-10px) scale(1.04) !important;
  box-shadow: 0 16px 32px rgba(0,0,0,0.45) !important;
}


/* Tarjetas más compactas en Sobre MAREA */
body.page-id-150 .wp-block-columns > .wp-block-column h4 {
  font-size: 1.3rem !important;
  margin-bottom: 0.3rem !important;
}
body.page-id-150 .wp-block-columns > .wp-block-column p {
  font-size: 0.85rem !important;
  line-height: 1.4 !important;
}
/* Entrada animada + brillo pulsante en las tarjetas de Sobre MAREA */
body.page-id-150 .wp-block-columns > .wp-block-column:nth-child(1) {
  animation: fadeInUp 0.6s ease 0.2s both, cardPulseYellow 2.5s ease-in-out 1s infinite !important;
}
body.page-id-150 .wp-block-columns > .wp-block-column:nth-child(2) {
  animation: fadeInUp 0.6s ease 0.35s both, cardPulseBlue 2.5s ease-in-out 2.5s infinite !important;
}
body.page-id-150 .wp-block-columns > .wp-block-column:nth-child(3) {
  animation: fadeInUp 0.6s ease 0.5s both, cardPulseOrange 2.5s ease-in-out 4s infinite !important;
}
/* =====================
   FOOTER - ESPACIADO UNIFORME Y COPYRIGHT PEQUEÑO
===================== */
footer .wp-block-buttons {
  margin-bottom: 0.8rem !important;
}
/* Íconos — forzar margen inferior */
footer ul.wp-block-social-links,
footer .wp-block-social-links {
  margin-top: 0 !important;
  margin-bottom: 0.8rem !important;
  padding-bottom: 0 !important;
}
/* Copyright celeste y pequeño */
footer .wp-block-paragraph,
footer .wp-block-group > p,
footer p {
  font-size: 0.7rem !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  color: #50C8DC !important;
}
/* Íconos negros */
footer .wp-block-social-links.is-style-logos-only .wp-social-link {
  color: #000000 !important;
}
footer .wp-block-social-links.is-style-logos-only .wp-social-link svg {
  fill: #000000 !important;
}
footer .wp-block-social-links .wp-social-link svg {
  fill: #000000 !important;
  color: #000000 !important;
}
/* Íconos redes sociales */
footer .wp-block-social-links {
  margin-bottom: 0 !important;
  margin-top: 0 !important;
}
/* Copyright más pequeño que el menú */
footer .wp-block-paragraph,
footer p {
  font-size: 0.7rem !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  opacity: 0.85 !important;
}

/* Tarjetas ejes — alinear al tope */
.home .wp-block-columns .wp-block-column .wp-block-columns {
  align-items: flex-start !important;
}

/* =====================
   ONDA INFERIOR DEL HEADER
===================== */
header.wp-block-template-part {
  position: relative !important;
  overflow: visible !important;
}
header.wp-block-template-part::after {
  content: '' !important;
  position: absolute !important;
  bottom: -34px !important;
  left: 0 !important;
  width: 100% !important;
  height: 36px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 36' preserveAspectRatio='none'%3E%3Cpath d='M0,18 C200,36 400,0 600,18 C800,36 1000,0 1200,18 L1200,0 L0,0 Z' fill='%237C30FF'/%3E%3C/svg%3E") !important;
  background-size: 100% 100% !important;
  background-repeat: no-repeat !important;
  z-index: 10 !important;
  pointer-events: none !important;
}

/* Submenús - bordes redondeados limpios */
header .wp-block-navigation__submenu-container {
  border-radius: 8px !important;
  overflow: hidden !important;
}

/* =====================
   RESPONSIVE MÓVIL
===================== */
@media (max-width: 600px) {

  /* Portada: columnas en vertical */
  .home .wp-block-columns.alignwide {
    flex-direction: column !important;
  }
  .home .wp-block-columns.alignwide > .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
  }

  /* Ejes: una columna por fila en móvil */
  .home .wp-block-columns .wp-block-column .wp-block-columns {
    flex-direction: column !important;
  }
  .home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
    aspect-ratio: unset !important;
    min-height: 0 !important;
    padding: 1.2rem 1.2rem 1.5rem 1.2rem !important;
    margin-bottom: 0.8rem !important;
  }
  /* Texto más legible en las tarjetas móvil */
  .home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column h4 {
    font-size: 1rem !important;
  }
  .home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column p {
    font-size: 0.9rem !important;
  }

  /* Footer: botones en dos filas */
  footer .wp-block-buttons {
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 0.5rem !important;
  }
  footer .wp-block-button {
    flex: 0 0 auto !important;
  }

  /* Contenido portada: padding lateral */
  .home .entry-content,
  .home .wp-block-post-content {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}

/* =====================
   MENÚ HAMBURGUESA MÓVIL - MÁS COMPACTO
===================== */
@media (max-width: 782px) {

  /* Contenedor del menú abierto */
  .wp-block-navigation__responsive-container.is-menu-open {
    padding: 1rem 1.5rem !important;
    justify-content: flex-start !important;
  }

  /* Lista de ítems del menú */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__container {
    gap: 0 !important;
    width: 100% !important;
  }

  /* Cada ítem del menú */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item {
    border-bottom: 1px solid rgba(255,255,255,0.15) !important;
  }

  /* Links del menú */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item__content {
    font-size: 1rem !important;
    padding: 0.6rem 0 !important;
  }

  /* Submenús: ocultos por defecto, se muestran solo al hacer click */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__submenu-container {
    position: static !important;
    background: rgba(255,255,255,0.1) !important;
    border-radius: 0 !important;
    padding: 0 0 0 1rem !important;
    display: none !important;
  }

  /* Mostrar submenú cuando el padre está activo */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item.is-active > .wp-block-navigation__submenu-container,
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item:focus-within > .wp-block-navigation__submenu-container,
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item[aria-expanded="true"] > .wp-block-navigation__submenu-container,
  .wp-block-navigation__responsive-container.is-menu-open
  .has-child.open > .wp-block-navigation__submenu-container {
    display: block !important;
  }

  /* Ítems del submenú */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    font-size: 0.9rem !important;
    padding: 0.4rem 0 !important;
    color: rgba(255,255,255,0.85) !important;
  }

  /* Botón de cierre más compacto */
  .wp-block-navigation__responsive-container-close {
    top: 0.8rem !important;
    right: 1rem !important;
  }
}

/* Ocultar submenús en hamburguesa — todos por defecto */
@media (max-width: 782px) {
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item.has-child
  > .wp-block-navigation__submenu-container {
    display: none !important;
  }
  /* Mostrar solo cuando el ítem tiene aria-expanded="true" */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item.has-child[aria-expanded="true"]
  > .wp-block-navigation__submenu-container,
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-submenu.is-open
  > .wp-block-navigation__submenu-container {
    display: block !important;
  }
}

/* Hover en el logo del header */
header .wp-block-image a {
  display: inline-block !important;
  transition: transform 0.2s ease, opacity 0.2s ease !important;
}
header .wp-block-image a:hover {
  transform: scale(1.08) !important;
  opacity: 1 !important;
  cursor: pointer !important;
}



/* =====================
   HOVER EN BOTONES DEL FOOTER
===================== */
footer .wp-block-button__link {
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.15s ease !important;
}
footer .wp-block-button__link:hover {
  background-color: #50C8DC !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
}

/* Alinear texto con el slider en la 2ª edición festival */
.page-id-154 .wp-block-html {
  margin-left: 65px !important;
  margin-right: 65px !important;
}
.page-id-154 .marea-slider {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.page-id-154 .marea-slider {
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 0 2rem !important;
  box-sizing: border-box !important;
}

/* =====================
   WIGGLE EN BOTONES DE NAVEGACIÓN ENTRE PÁGINAS
===================== */
@keyframes wiggle {
  /* Pausa: 0% a 80% sin movimiento, wiggle en el 80%-100% */
  0%   { transform: rotate(0deg); }
  80%  { transform: rotate(0deg); }
  84%  { transform: rotate(-5deg); }
  88%  { transform: rotate(5deg); }
  92%  { transform: rotate(-3deg); }
  96%  { transform: rotate(3deg); }
  100% { transform: rotate(0deg); }
}
/* Solo botones dentro del contenido — excluye footer y header */
.entry-content .wp-block-button__link,
.wp-block-post-content .wp-block-button__link {
  font-size: 0.85rem !important;
  padding: 0.5rem 1.4rem !important;
  animation: wiggle 5s ease-in-out infinite !important;
  display: inline-block !important;
}

/* Bordes redondeados en botones del contenido */
.entry-content .wp-block-button__link,
.wp-block-post-content .wp-block-button__link {
  border-radius: 100px !important;
}

/* =====================
   REBOTE EN LOGO DEL HEADER
===================== */
@keyframes logoBounce {
  /* Tramo 1 (0%-24%): rebote, igual que el original pero comprimido a un cuarto del ciclo */
  0%    { transform: translateY(0) scale(1) rotate(0deg); }
  5%    { transform: translateY(-12px) scale(1.05) rotate(0deg); }
  10%   { transform: translateY(0) scale(1) rotate(0deg); }
  14%   { transform: translateY(-6px) scale(1.02) rotate(0deg); }
  18%   { transform: translateY(0) scale(1) rotate(0deg); }
  21%   { transform: translateY(-3px) scale(1.01) rotate(0deg); }
  24%   { transform: translateY(0) scale(1) rotate(0deg); }
  /* Tramo 2 (24%-62%): pausa quieto */
  62%   { transform: translateY(0) scale(1) rotate(0deg); }
  /* Tramo 3 (62%-86%): giro completo de 360 grados, sin rebote */
  74%   { transform: translateY(0) scale(1) rotate(360deg); }
  /* Tramo 4 (86%-100%): pausa quieto antes de reiniciar */
  99.99% { transform: translateY(0) scale(1) rotate(360deg); }
  100%  { transform: translateY(0) scale(1) rotate(0deg); }
}
header .wp-block-image a img {
  animation: logoBounce 12s ease-in-out infinite !important;
  display: block !important;
}

/* Rebote en botón Tienda MAREA del footer */

@keyframes footerButtonBounce {
  0%    { transform: translateY(0) scale(1); }
  5%    { transform: translateY(-6px) scale(1.04); }
  10%   { transform: translateY(0) scale(1); }
  14%   { transform: translateY(-3px) scale(1.02); }
  18%   { transform: translateY(0) scale(1); }
  100%  { transform: translateY(0) scale(1); }
}
footer .wp-block-button:first-child .wp-block-button__link {
  animation: footerButtonBounce 6s ease-in-out infinite !important;
  display: inline-block !important;
}

/* =====================
   FADE-IN DE ENTRADA — PORTADA
===================== */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Logo horizontal en portada */
.home .wp-block-columns.alignwide > .wp-block-column:first-child .wp-block-image {
  animation: fadeInUp 0.7s ease both;
  animation-delay: 0.1s;
}
/* Texto descriptivo */
.home .wp-block-columns.alignwide > .wp-block-column:first-child .wp-block-paragraph {
  animation: fadeInUp 0.7s ease both;
  animation-delay: 0.3s;
}
/* Título "Nuestros ejes de trabajo" */
.home .wp-block-columns.alignwide > .wp-block-column:last-child h3 {
  animation: fadeInUp 0.7s ease both;
  animation-delay: 0.5s;
}
/* Tarjeta Festival */
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(1) {
  animation: fadeInUp 0.6s ease both !important;
  animation-delay: 0.65s !important;
}
/* Tarjeta Residencias */
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(2) {
  animation: fadeInUp 0.6s ease both !important;
  animation-delay: 0.8s !important;
}
/* Tarjeta Mediación */
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(3) {
  animation: fadeInUp 0.6s ease both !important;
  animation-delay: 0.95s !important;
}


/* Tarjeta Residencias — brilla cada 5s con delay */
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(2) {
  animation: fadeInUp 0.6s ease 0.8s both, cardShine 5s ease-in-out 3.5s infinite !important;
}
/* Tarjeta Mediación — brilla cada 5s con más delay */
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(3) {
  animation: fadeInUp 0.6s ease 0.95s both, cardShine 5s ease-in-out 5s infinite !important;
}

/* =====================
   PULSO DE BRILLO — TARJETAS EJES
===================== */
@keyframes cardPulseYellow {
  0%, 50%  { transform: scale(1); }
  75%      { transform: scale(1.05); }
  100%     { transform: scale(1); }
}
@keyframes cardPulseBlue {
  0%, 50%  { transform: scale(1); }
  75%      { transform: scale(1.05); }
  100%     { transform: scale(1); }
}
@keyframes cardPulseOrange {
  0%, 50%  { transform: scale(1); }
  75%      { transform: scale(1.05); }
  100%     { transform: scale(1); }
}
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(1) {
  animation: fadeInUp 0.6s ease 0.65s both, cardPulseYellow 2.5s ease-in-out 2s infinite !important;
}
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(2) {
  animation: fadeInUp 0.6s ease 0.8s both, cardPulseBlue 2.5s ease-in-out 3.5s infinite !important;
}
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:nth-child(3) {
  animation: fadeInUp 0.6s ease 0.95s both, cardPulseOrange 2.5s ease-in-out 5s infinite !important;
}



/* Video portada — altura controlada */
#marea-yt-player {
  max-height: 480px !important;
}
#marea-yt-player + script,
#marea-yt-player {
  display: block !important;
}

/* =====================
   ANIMACIÓN LOGO MAREA EN PORTADA
===================== */
@keyframes logoDance {
  0%    { transform: rotate(0deg) scale(1) translateY(0); }
  10%   { transform: rotate(-4deg) scale(1.06) translateY(-8px); }
  20%   { transform: rotate(4deg) scale(1.06) translateY(-8px); }
  30%   { transform: rotate(-3deg) scale(1.04) translateY(-5px); }
  40%   { transform: rotate(3deg) scale(1.04) translateY(-5px); }
  50%   { transform: rotate(-1deg) scale(1.02) translateY(-2px); }
  60%   { transform: rotate(1deg) scale(1) translateY(0); }
  100%  { transform: rotate(0deg) scale(1) translateY(0); }
}
.home .wp-block-columns.alignwide > .wp-block-column:first-child .wp-block-image img {
  animation: logoDance 6s ease-in-out 3s infinite !important;
  display: block !important;
  transform-origin: center bottom !important;
}

/* Margen superior entre video y logo+ejes */
.home .wp-block-columns.alignwide {
  margin-top: 2rem !important;
}

/* =====================
   ÍCONOS BAILANDO — PÁGINAS INTERIORES
===================== */
@keyframes floatDance1 {
  0%   { transform: translateY(0) rotate(0deg); }
  25%  { transform: translateY(-18px) rotate(15deg); }
  50%  { transform: translateY(-8px) rotate(-10deg); }
  75%  { transform: translateY(-20px) rotate(12deg); }
  100% { transform: translateY(0) rotate(0deg); }
}
@keyframes floatDance2 {
  0%   { transform: translateY(0) rotate(0deg); }
  30%  { transform: translateY(-15px) rotate(-14deg); }
  60%  { transform: translateY(-22px) rotate(10deg); }
  100% { transform: translateY(0) rotate(0deg); }
}
@keyframes floatDance3 {
  0%   { transform: translateY(0) rotate(0deg) scale(1); }
  40%  { transform: translateY(-12px) rotate(16deg) scale(1.05); }
  70%  { transform: translateY(-20px) rotate(-12deg) scale(0.97); }
  100% { transform: translateY(0) rotate(0deg) scale(1); }
}
@keyframes floatDance4 {
  0%   { transform: translateY(0) rotate(0deg); }
  20%  { transform: translateY(-20px) rotate(-15deg); }
  55%  { transform: translateY(-10px) rotate(10deg); }
  80%  { transform: translateY(-18px) rotate(-8deg); }
  100% { transform: translateY(0) rotate(0deg); }
}

body:not(.home) .wp-site-blocks { position: relative !important; }

body:not(.home) .wp-site-blocks::before,
body:not(.home) .wp-site-blocks::after,
body:not(.home)::before,
body:not(.home)::after {
  content: '' !important;
  position: absolute !important;
  pointer-events: none !important;
  z-index: 0 !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  opacity: 0.75 !important;
  width: 85px !important;
  height: 85px !important;
}
body:not(.home) .wp-site-blocks::before { top: 220px !important; left: 40px !important; animation: floatDance1 5s ease-in-out infinite !important; }
body:not(.home) .wp-site-blocks::after  { top: 300px !important; right: 40px !important; animation: floatDance2 6s ease-in-out 1s infinite !important; }
body:not(.home)::before { top: 600px !important; left: 40px !important; animation: floatDance3 7s ease-in-out 0.5s infinite !important; }
body:not(.home)::after  { top: 700px !important; right: 40px !important; animation: floatDance4 5.5s ease-in-out 2s infinite !important; }

/* --- Sobre MAREA: 1,2,3,4 --- */
.page-id-150 .wp-site-blocks::before { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_1.png') !important; }
.page-id-150 .wp-site-blocks::after  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_2.png') !important; }
.page-id-150::before                  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_3.png') !important; }
.page-id-150::after                   { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_4.png') !important; }

/* --- Hacedoras: 5,6,7,8 --- */
.page-id-151 .wp-site-blocks::before { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_5.png') !important; }
.page-id-151 .wp-site-blocks::after  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_6.png') !important; }
.page-id-151::before                  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_7.png') !important; }
.page-id-151::after                   { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_8.png') !important; }

/* --- Festival: 2,5,8,10 --- */
.page-id-152 .wp-site-blocks::before { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_2.png') !important; }
.page-id-152 .wp-site-blocks::after  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_5.png') !important; }
.page-id-152::before                  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_8.png') !important; }
.page-id-152::after                   { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_10.png') !important; }

/* --- 1ª edición festival: 3,6,9,1 --- */
.page-id-153 .wp-site-blocks::before { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_3.png') !important; }
.page-id-153 .wp-site-blocks::after  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_6.png') !important; }
.page-id-153::before                  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_9.png') !important; }
.page-id-153::after                   { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_1.png') !important; }

/* --- 2ª edición festival: 4,7,10,2 --- */
.page-id-154 .wp-site-blocks::before { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_4.png') !important; }
.page-id-154 .wp-site-blocks::after  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_7.png') !important; }
.page-id-154::before                  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_10.png') !important; }
.page-id-154::after                   { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_2.png') !important; }

/* --- Residencias: 1,4,7,9 --- */
.page-id-155 .wp-site-blocks::before { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_1.png') !important; }
.page-id-155 .wp-site-blocks::after  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_4.png') !important; }
.page-id-155::before                  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_7.png') !important; }
.page-id-155::after                   { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_9.png') !important; }

/* --- 1ª residencia: 6,8,3,5 --- */
.page-id-156 .wp-site-blocks::before { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_6.png') !important; }
.page-id-156 .wp-site-blocks::after  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_8.png') !important; }
.page-id-156::before                  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_3.png') !important; }
.page-id-156::after                   { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_5.png') !important; }

/* --- 2ª residencia: 2,9,4,6 --- */
.page-id-157 .wp-site-blocks::before { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_2.png') !important; }
.page-id-157 .wp-site-blocks::after  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_9.png') !important; }
.page-id-157::before                  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_4.png') !important; }
.page-id-157::after                   { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_6.png') !important; }

/* --- Mediación: 5,1,8,3 --- */
.page-id-158 .wp-site-blocks::before { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_5.png') !important; }
.page-id-158 .wp-site-blocks::after  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_1.png') !important; }
.page-id-158::before                  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_8.png') !important; }
.page-id-158::after                   { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_3.png') !important; }

/* --- 1ª mediación: 7,10,2,4 --- */
.page-id-159 .wp-site-blocks::before { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_7.png') !important; }
.page-id-159 .wp-site-blocks::after  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_10.png') !important; }
.page-id-159::before                  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_2.png') !important; }
.page-id-159::after                   { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_4.png') !important; }

/* --- Colaborar: 3,8,5,1 --- */
.page-id-160 .wp-site-blocks::before { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_3.png') !important; }
.page-id-160 .wp-site-blocks::after  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_8.png') !important; }
.page-id-160::before                  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_5.png') !important; }
.page-id-160::after                   { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_1.png') !important; }

/* --- Contacto: 9,2,6,4 --- */
.page-id-162 .wp-site-blocks::before { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_9.png') !important; }
.page-id-162 .wp-site-blocks::after  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_2.png') !important; }
.page-id-162::before                  { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_6.png') !important; }
.page-id-162::after                   { background-image: url('https://mareadanzaparainfancias.com/wp-content/uploads/2026/06/Icono_4.png') !important; }

@media (max-width: 782px) {
  body:not(.home) .wp-site-blocks::before,
  body:not(.home) .wp-site-blocks::after,
  body:not(.home)::before,
  body:not(.home)::after { display: none !important; }
}

/* Tarjetas ejes clickeables — cursor pointer y hover elevación */
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column {
  cursor: pointer !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}
.home .wp-block-columns .wp-block-column .wp-block-columns .wp-block-column:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 20px rgba(0,0,0,0.15) !important;
}

/* =====================
   SISTEMA UNIFICADO DE BOTONES — PÁGINAS INTERNAS
   Naranja + texto blanco / hover celeste + subida
===================== */
.entry-content .wp-block-button__link,
.wp-block-post-content .wp-block-button__link {
  background-color: #F05000 !important;
  color: #ffffff !important;
  border-radius: 100px !important;
  border: none !important;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.15s ease !important;
  display: inline-block !important;
}
.entry-content .wp-block-button__link:hover,
.wp-block-post-content .wp-block-button__link:hover {
  background-color: #50C8DC !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
}

/* =====================
   FORMULARIO CONTACTO — COMPACTAR
===================== */
body body .page-id-162 .grunion-field-wrap,
body body .page-id-162 div[class*="grunion-field"][class*="wrap"] {
  margin-bottom: 4px !important;
}
body body .page-id-162 input.grunion-field,
body body .page-id-162 .wp-block-jetpack-input:not(textarea) {
  padding: 6px 12px !important;
}
body body .page-id-162 textarea.grunion-field,
body body .page-id-162 textarea.wp-block-jetpack-input {
  padding: 6px 12px !important;
  min-height: 120px !important;
  height: 120px !important;
}
body body .page-id-162 .wp-block-jetpack-contact-form .wp-block-paragraph {
  display: none !important;
}
body body .page-id-162 .wp-block-jetpack-contact-form .wp-block-button {
  margin-top: 6px !important;
}

/* Íconos redes sociales más grandes en página Contacto */
.page-id-162 .wp-block-social-links {
  flex-wrap: nowrap !important;
  gap: 8px !important;
}
.page-id-162 .wp-block-social-links .wp-block-social-link {
  width: 42px !important;
  height: 42px !important;
}
.page-id-162 .wp-block-social-links .wp-block-social-link-anchor {
  width: 42px !important;
  height: 42px !important;
}
.page-id-162 .wp-block-social-links .wp-block-social-link-anchor svg {
  width: 24px !important;
  height: 24px !important;
}
/* Centrar íconos dentro de sus círculos */
.page-id-162 .wp-block-social-links .wp-block-social-link {
  position: relative !important;
}
.page-id-162 .wp-block-social-links .wp-block-social-link-anchor {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important;
  width: 100% !important;
  height: 100% !important;
}
.page-id-162 .wp-block-social-links .wp-block-social-link-anchor svg {
  width: 22px !important;
  height: 22px !important;
  flex-shrink: 0 !important;
}

/* =====================
   TIPOGRAFÍA GLOBAL — CUERPO DE TEXTO MÁS COMPACTO
===================== */
.entry-content p:not(.wp-block-button *),
.wp-block-post-content p:not(.wp-block-button *) {
  font-size: 0.95rem !important;
  line-height: 1.35 !important;
  margin-bottom: 0.4rem !important;
}
.entry-content h2:not(.wp-block-button *),
.wp-block-post-content h2:not(.wp-block-button *) {
  font-size: 1.4rem !important;
  line-height: 1.25 !important;
  margin-bottom: 0.3rem !important;
}
.entry-content h3:not(.wp-block-button *),
.wp-block-post-content h3:not(.wp-block-button *) {
  font-size: 1.15rem !important;
  line-height: 1.25 !important;
  margin-bottom: 0.25rem !important;
}
.entry-content ul li,
.entry-content ol li,
.wp-block-post-content ul li,
.wp-block-post-content ol li {
  font-size: 0.95rem !important;
  line-height: 1.35 !important;
}
/* Reducir margen superior de los bloques de botones */
.entry-content .wp-block-buttons,
.wp-block-post-content .wp-block-buttons {
  margin-top: 1rem !important;
}
.entry-content h2,
.wp-block-post-content h2 {
  font-size: 1.4rem !important;
  line-height: 1.3 !important;
}
.entry-content h3,
.wp-block-post-content h3 {
  font-size: 1.15rem !important;
  line-height: 1.3 !important;
}
.entry-content ul li,
.entry-content ol li,
.wp-block-post-content ul li,
.wp-block-post-content ol li {
  font-size: 0.95rem !important;
  line-height: 1.35 !important;
}



/* Logo del header — más grande + hover */
header .wp-block-image a img {
  width: 104px !important;
  height: auto !important;
  transition: transform 0.25s ease !important;
}
header .wp-block-image a:hover img {
  transform: scale(1.25) !important;
  filter: brightness(1.15) saturate(1.3) !important;
}

/* Texto del menú principal más grande — solo desktop, no afecta submenús ni móvil */
@media (min-width: 782px) {
  .wp-block-navigation .wp-block-navigation-item > .wp-block-navigation-item__content .wp-block-navigation-item__label {
    font-size: 1.05rem !important;
  }
}

/* Header — violeta exacto del logo MAREA */
header.wp-block-template-part,
header.wp-block-template-part .wp-block-group,
.wp-block-template-part header,
header.has-background {
  background-color: #7C30FF !important;
}

/* =====================
   ONDA ANIMADA — HEADER (movimiento lateral continuo)
   No afecta menú, submenús, ni altura del header
===================== */
@keyframes mareaWaveFlow {
  0%   { background-position-x: 0%; }
  100% { background-position-x: 100%; }
}
header.wp-block-template-part::after {
  background-repeat: repeat-x !important;
  background-size: 35% 140% !important;
  background-position-y: bottom !important;
  animation: mareaWaveFlow 11s linear infinite !important;
}

/* Header — asegurar ancho completo (corrige espacio negro a la derecha) */


/* Header — neutralizar el ancho "alignfull" del grupo interno que sobresalía 16px por lado */
header.wp-block-template-part > .wp-block-group.has-background {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  left: 0 !important;
  right: 0 !important;
}

/* Header — escapar del padding lateral de .wp-site-blocks, con red de seguridad anti-overflow */
header.wp-block-template-part {
  width: calc(100% + 32px) !important;
  margin-left: -16px !important;
  margin-right: -16px !important;
}
html {
  overflow-x: hidden !important;
}

/* Botones imagen Tienda MAREA / Cómo colaborar — tamaño fijo en la home */
.home img.wp-image-778,
.home img.wp-image-777 {
  width: 220px !important;
  height: 220px !important;
  max-width: 220px !important;
  object-fit: contain !important;
}
.home img.wp-image-778:hover,
.home img.wp-image-777:hover {
  transform: scale(1.08) !important;
  transition: transform 0.2s ease !important;
}

/* Animación de "respiración" en los botones imagen Tienda MAREA / Cómo colaborar */
@keyframes ctaBreathe {
  0%, 100% { transform: scale(1); }
  50%      { transform: scale(1.06); }
}
.home img.wp-image-778 {
  animation: ctaBreathe 2.8s ease-in-out infinite !important;
}
.home img.wp-image-777 {
  animation: ctaBreathe 2.8s ease-in-out 1.4s infinite !important;
}
.home img.wp-image-778:hover,
.home img.wp-image-777:hover {
  animation-play-state: paused !important;
  transform: scale(1.1) !important;
  transition: transform 0.2s ease !important;
}

/* Evitar viudas y huérfanas (palabras sueltas al final de párrafo) */
.entry-content p,
.wp-block-post-content p,
.entry-content li,
.wp-block-post-content li {
  text-wrap: pretty !important;
}
.entry-content h1,
.entry-content h2,
.entry-content h3,
.wp-block-post-content h1,
.wp-block-post-content h2,
.wp-block-post-content h3 {
  text-wrap: balance !important;
}