/* ==========================================================================
   Alicante Renace — CSS propio del tema (independiente del JS de Superfood).
   Cabecera: menú horizontal centrado, logo + botón "Todos con la Roja" a la
   izquierda, submenús desplegables por hover. Aplica en TODAS las páginas.
   ========================================================================== */

.eltdf-page-header .eltdf-position-left-inner {
  display: flex;
  align-items: center;
  gap: 18px;
}

.eltdf-page-header {
  position: relative;
  z-index: 9990;
  background: #fff;
}

.eltdf-page-header .eltdf-fixed-wrapper {
  padding-top: 25px;
  padding-bottom: 10px;
  box-sizing: border-box;
  background: #fff;
}

.eltdf-page-header .eltdf-menu-area {
  background: #fff;
  box-shadow: 0 10px 28px rgba(31, 59, 39, .09);
}

.eltdf-page-header .eltdf-fixed-wrapper.fixed,
.eltdf-page-header .eltdf-fixed-wrapper.is-sticky,
.eltdf-page-header .eltdf-sticky-header {
  z-index: 9995 !important;
  background: #fff !important;
  box-shadow: 0 12px 30px rgba(31, 59, 39, .13);
}

.eltdf-page-header .eltdf-menu-area .eltdf-grid,
.eltdf-page-header .eltdf-menu-area .eltdf-vertical-align-containers {
  display: grid;
  grid-template-columns: minmax(320px, 1fr) auto minmax(320px, 1fr);
  align-items: center;
  width: min(1440px, calc(100% - 34px));
  margin: 0 auto;
}

.eltdf-page-header .eltdf-position-center,
.eltdf-page-header .eltdf-position-center-inner {
  display: flex;
  align-items: center;
  justify-content: center;
}

.eltdf-main-menu > ul {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.eltdf-main-menu > ul > li {
  position: relative;
  float: none;
  list-style: none;
  z-index: 10030;
}
.eltdf-main-menu > ul > li > a {
  display: flex;
  align-items: center;
  min-height: 100px;
  padding: 0 16px;
  color: #2e3530;
  text-decoration: none;
  font-weight: 800;
  font-size: 16px;
}
.eltdf-main-menu > ul > li > a:hover,
.eltdf-main-menu > ul > li.current-menu-item > a {
  color: #167c55;
}

/* Submenús: el walker de WordPress genera .sub-menu (con guion); el CSS del tema
   original ocultaba .sub_menu (guion bajo), por eso hay que gestionarlos aquí. */
.eltdf-main-menu .sub-menu {
  position: absolute;
  left: 0;
  top: 100%;
  display: none;
  min-width: 240px;
  flex-direction: column;
  margin: 0;
  padding: 8px;
  list-style: none;
  background: #fff;
  border: 1px solid #e2e9df;
  border-radius: 0 0 16px 16px;
  box-shadow: 0 16px 30px rgba(31, 59, 39, .15);
  z-index: 10040;
}
.eltdf-main-menu > ul > li.menu-item-has-children::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  height: 14px;
  z-index: 10035;
}
.eltdf-main-menu > ul > li:hover > .sub-menu,
.eltdf-main-menu > ul > li:focus-within > .sub-menu,
.eltdf-main-menu .sub-menu li:hover > .sub-menu,
.eltdf-main-menu .sub-menu li:focus-within > .sub-menu {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}
.eltdf-main-menu .sub-menu li {
  position: relative;
  float: none;
  list-style: none;
}
.eltdf-main-menu .sub-menu .sub-menu {
  top: -9px;
  left: calc(100% + 8px);
  border-radius: 16px;
}
.eltdf-main-menu .sub-menu a {
  display: block;
  min-width: 210px;
  padding: 9px 12px;
  color: #34513d;
  text-decoration: none;
  font-weight: 700;
  white-space: normal;
}
.eltdf-main-menu .sub-menu a:hover {
  color: #167c55;
  background: #f2f7ef;
}

/* El tema marca <body class="eltdf-light-header"> y su CSS pinta el menú en BLANCO
   (pensado para cabecera transparente sobre hero). Nuestra cabecera es blanca, así
   que forzamos texto oscuro y visible en todas las páginas. */
.eltdf-page-header .eltdf-main-menu > ul > li > a,
.eltdf-page-header .eltdf-main-menu > ul > li > a:visited { color: #2e3530 !important; }
.eltdf-page-header .eltdf-main-menu > ul > li > a:hover,
.eltdf-page-header .eltdf-main-menu > ul > li.current-menu-item > a,
.eltdf-page-header .eltdf-main-menu > ul > li.current-menu-ancestor > a { color: #167c55 !important; }

/* Portada: wpautop mete <br> entre las 3 tarjetas del bloque; en el grid ocupan
   celdas y descuadran la tarjeta central. Los neutralizamos. */
.arenace-editorial-features > br,
.arenace-editorial-home > br,
.arenace-home-feature-grid > br { display: none !important; }

/* Botón "Todos con la Roja" (lo inyectaba el plugin editorial; en el tema propio
   lo emitimos nosotros, así que aseguramos su aspecto). */
.arenace-spain-world-cup {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 96px;
  max-width: 96px;
  min-height: 50px;
  max-height: 57px;
  gap: 2px;
  padding: 5px 8px;
  border-radius: 12px;
  background: #c9382c;
  color: #fff;
  text-align: center;
  text-decoration: none;
  font-weight: 800;
  font-size: 11px;
  line-height: 1.05;
  box-shadow: 0 6px 16px rgba(160, 40, 30, .28);
}
.arenace-spain-world-cup:hover { background: #b12f24; }
.arenace-spain-world-cup__label {
  display: block;
  max-width: 100%;
  white-space: normal;
}
.arenace-spain-world-cup__label span {
  display: block;
}
.arenace-spain-world-cup__flag img { height: 1em; width: auto; vertical-align: -.12em; }

/* Contenedor de listados (blog/archivo/single) para que respire sin el framework. */
.eltdf-container { width: min(1300px, calc(100% - 40px)); margin: 60px auto; }
.eltdf-container .entry-title { color: #214f35; }
.eltdf-blog-holder article { margin-bottom: 48px; padding-bottom: 40px; border-bottom: 1px solid #e6ede2; }

/* Meta de noticia (tiempo de lectura + visitas) */
.arenace-post-meta { display: flex; flex-wrap: wrap; gap: 18px; margin: 0 0 22px; color: #6a7a6d; font-size: 14px; font-weight: 700; }

/* Botones de compartir / imprimir / email */
.arenace-share { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin: 34px 0 8px; padding-top: 22px; border-top: 1px solid #e6ede2; }
.arenace-share__label { font-weight: 800; color: #244f35; margin-right: 4px; }
.arenace-share__btn { display: inline-flex; align-items: center; padding: 8px 15px; border: 1px solid #cfe0c8; border-radius: 999px; background: #fff; color: #2f6f45; font: 700 13px/1 inherit; text-decoration: none; cursor: pointer; }
.arenace-share__btn:hover { color: #fff; background: #39734b; border-color: #39734b; }

/* Agradecimiento integrado en la seccion de especies */
.arenace-species-thanks { display: grid; grid-template-columns: minmax(260px, .9fr) minmax(320px, 1.1fr); gap: 28px; align-items: center; margin: 34px 0 42px; padding: 22px; border: 1px solid #dce8d5; border-radius: 8px; background: #f7faf3; }
.arenace-species-thanks__image { margin: 0; }
.arenace-species-thanks__image img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 8px; }
.arenace-species-thanks__content h3 { margin: 4px 0 12px; color: #214f35; font-size: 24px; line-height: 1.18; }
.arenace-species-thanks__content p { margin: 0 0 12px; color: #3f5546; font-size: 15px; line-height: 1.62; }
.arenace-species-thanks__eyebrow { margin-bottom: 6px !important; color: #6f8b42 !important; text-transform: uppercase; font-size: 11px !important; font-weight: 900; letter-spacing: .08em; }
.arenace-species-thanks__link { display: inline-flex; align-items: center; min-height: 38px; padding: 0 16px; border: 1px solid #39734b; border-radius: 999px; background: #39734b; color: #fff !important; font-size: 13px; font-weight: 800; text-decoration: none; }
.arenace-species-thanks__link:hover { background: #2f613f; border-color: #2f613f; }
@media (max-width: 760px) { .arenace-species-thanks { grid-template-columns: 1fr; padding: 16px; } .arenace-species-thanks__content h3 { font-size: 20px; } }

/* Barra de consentimiento de cookies */
.arenace-cookie-bar { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 999999; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; max-width: 1100px; margin: 0 auto; padding: 18px 22px; border: 1px solid rgba(47,111,69,.18); border-radius: 18px; background: #fff; box-shadow: 0 18px 50px rgba(20,50,30,.22); }
.arenace-cookie-bar p { margin: 0; flex: 1 1 320px; color: #3f5546; font-size: 14px; line-height: 1.5; }
.arenace-cookie-bar a { color: #2f6f45; font-weight: 700; }
.arenace-cookie-bar__actions { display: flex; gap: 10px; flex: 0 0 auto; }
.arenace-cookie-bar button { padding: 11px 22px; border: 2px solid #39734b; border-radius: 999px; background: #fff; color: #2f6f45; font: 800 14px/1 inherit; cursor: pointer; }
.arenace-cookie-bar button.is-primary { color: #fff; background: #39734b; }
@media (max-width: 560px) { .arenace-cookie-bar { flex-direction: column; align-items: stretch; } .arenace-cookie-bar__actions button { flex: 1; } }

/* item_showcase (alternancia) y blog_list (columnas) por si el CSS del tema no cubre todo */
.eltdf-is-item-holder { margin-bottom: 18px; }
.eltdf-is-title { color: #214f35; margin: 0 0 6px; }
.eltdf-blog-list-holder .eltdf-blog-list { display: grid; gap: 22px; margin: 0; padding: 0; list-style: none; }
.eltdf-blog-list-columns-4 .eltdf-blog-list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.eltdf-blog-list-columns-3 .eltdf-blog-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.eltdf-blog-list-columns-2 .eltdf-blog-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.eltdf-bli { list-style: none; }
.eltdf-bli-image img { width: 100%; height: 200px; object-fit: cover; border-radius: 14px; display: block; }
.eltdf-bli-title { font-size: 18px; margin: 12px 0 8px; }
.eltdf-bli-title a { color: #214f35; text-decoration: none; }
@media (max-width: 1000px) { .eltdf-blog-list-holder .eltdf-blog-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .eltdf-blog-list-holder .eltdf-blog-list { grid-template-columns: 1fr; } }

/* Modales (aviso legal + copyright) */
.arenace-modal { position: fixed; inset: 0; z-index: 1000000; display: grid; place-items: center; padding: 20px; background: rgba(17,39,25,.72); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.arenace-modal[hidden] { display: none !important; }
.arenace-modal__dialog { position: relative; width: min(760px, 100%); max-height: 86vh; overflow: auto; padding: 40px 34px; border-radius: 20px; background: #fffdf8; box-shadow: 0 30px 80px rgba(0,0,0,.35); }
.arenace-modal__eyebrow { margin: 0 0 6px; color: #588253; text-transform: uppercase; letter-spacing: .12em; font-size: 11px; font-weight: 900; }
.arenace-modal__content { font-size: 13.5px; line-height: 1.65; color: #3f4b42; }
.arenace-modal__content h1, .arenace-modal__content h2, .arenace-modal__content h3 { color: #214f35; line-height: 1.2; }
.arenace-modal__content a { color: #2f6f45; font-weight: 700; }
.arenace-modal__close { position: absolute; top: 12px; right: 12px; width: 42px; height: 42px; border: 0; border-radius: 50%; background: #f0ece2; color: #4e3b2e; font-size: 26px; line-height: 1; cursor: pointer; }
body.arenace-modal-open { overflow: hidden; }

/* Aviso legal como página: contenido con letra más pequeña */
.page-id-11173 .eltdf-full-width-inner,
.page-id-11173 .eltdf-content-inner,
.page-id-11173 .wpb_text_column { font-size: 13.5px; line-height: 1.65; }

/* ===== Refuerzo de cabecera para TODAS las páginas (gana a style_dynamic de Superfood) ===== */
.eltdf-page-header .eltdf-menu-area,
.eltdf-page-header .eltdf-fixed-wrapper { width: 100% !important; background: #fff !important; }
.eltdf-page-header .eltdf-menu-area { background: #fff !important; }
.eltdf-page-header .eltdf-menu-area .eltdf-grid {
  display: block !important;
  width: min(1440px, calc(100% - 34px)) !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  float: none !important;
}
.eltdf-page-header .eltdf-menu-area .eltdf-vertical-align-containers {
  display: grid !important;
  grid-template-columns: minmax(420px, 1fr) auto minmax(420px, 1fr) !important;
  column-gap: 22px;
  align-items: center !important;
  width: 100% !important;
}
.eltdf-page-header .eltdf-position-left,
.eltdf-page-header .eltdf-position-center,
.eltdf-page-header .eltdf-position-right,
.eltdf-page-header .eltdf-position-left-inner,
.eltdf-page-header .eltdf-position-center-inner { display: flex !important; align-items: center !important; }
.eltdf-page-header .eltdf-position-center,
.eltdf-page-header .eltdf-position-center-inner { justify-content: center !important; }
.eltdf-page-header .eltdf-main-menu > ul { display: flex !important; align-items: center !important; justify-content: center !important; flex-wrap: wrap; }
.eltdf-page-header .eltdf-main-menu > ul > li { float: none !important; }
.eltdf-page-header .eltdf-logo-wrapper,
.eltdf-page-header .eltdf-logo-wrapper a,
.eltdf-page-header .eltdf-logo-wrapper img {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.eltdf-page-header .eltdf-logo-wrapper {
  flex: 0 0 auto;
  max-width: 220px;
}
.eltdf-page-header .eltdf-logo-wrapper img {
  width: auto !important;
  max-width: 196px !important;
  max-height: 66px !important;
  object-fit: contain;
}
.eltdf-page-header .eltdf-position-left,
.eltdf-page-header .eltdf-position-center {
  min-width: 0;
}
.eltdf-page-header .eltdf-position-left-inner {
  flex-wrap: nowrap;
  gap: 26px !important;
  min-width: 0;
}
.eltdf-page-header .eltdf-main-menu > ul > li > a {
  min-height: 86px;
  padding-inline: 10px;
  font-size: 14px;
}
.eltdf-page-header .arenace-spain-world-cup {
  flex: 0 0 auto;
  transform: scale(.82);
  transform-origin: left center;
  margin-left: 8px;
}

@media (max-width: 1380px) {
  .eltdf-page-header .eltdf-menu-area .eltdf-vertical-align-containers {
    grid-template-columns: minmax(360px, 1fr) auto minmax(220px, 1fr) !important;
  }
  .eltdf-page-header .eltdf-main-menu > ul > li > a {
    min-height: 76px;
    padding-inline: 8px;
    font-size: 13px;
  }
  .eltdf-page-header .eltdf-logo-wrapper img {
    max-width: 175px !important;
  }
  .arenace-spain-world-cup {
    transform: scale(.68);
    transform-origin: left center;
    margin-left: 4px;
  }
}

/* Pie vacío del tema: ocultar la franja blanca del fondo */
footer.eltdf-page-footer:empty,
.arenace-legacy-footer:empty { display: none !important; }

/* Botón "Todos con la Roja": bandera SVG + pelota que bota */
.arenace-spain-world-cup__media { display: inline-flex; align-items: flex-end; justify-content: center; gap: 7px; height: 24px; }
.arenace-spain-world-cup__flag { display: inline-flex; align-items: center; }
.arenace-spain-world-cup__flag svg { width: 30px; height: 20px; border-radius: 2px; box-shadow: 0 0 0 1px rgba(0,0,0,.18); display: block; }
.arenace-spain-world-cup__ball { display: inline-flex; align-items: center; height: 24px; }
@keyframes arenace-ball-bounce { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-4px); } }

/* Ajuste final: bandera y texto sin fondo; la pelota bota a la derecha. */
.arenace-spain-world-cup {
  width: auto;
  max-width: 150px;
  min-height: 60px;
  max-height: none;
  flex-direction: row;
  align-items: center;
  gap: 9px;
  padding: 0 2px;
  border-radius: 0;
  background: transparent !important;
  color: #c60b1e;
  box-shadow: none;
}
.arenace-spain-world-cup:hover {
  background: transparent !important;
  color: #a80818;
}
.arenace-spain-world-cup__copy {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 3px;
  min-width: 58px;
}
.arenace-spain-world-cup__media {
  height: auto;
}
.arenace-spain-world-cup__flag svg {
  width: 44px;
  height: 29px;
  border-radius: 3px;
  box-shadow: 0 2px 5px rgba(0,0,0,.18);
}
.arenace-spain-world-cup__label {
  color: #9f0717;
  font-size: 11px;
  line-height: 1.02;
  letter-spacing: .01em;
  text-shadow: 0 1px 0 #fff;
}
.arenace-spain-world-cup__ball {
  width: 60px;
  height: 62px;
  align-items: flex-end;
}
.arenace-spain-world-cup__ball img {
  width: 56px;
  height: 60px;
  display: block;
  object-fit: contain;
  filter: drop-shadow(0 5px 5px rgba(0,0,0,.16));
  animation: arenace-ball-bounce 0.82s ease-in-out infinite;
}
