/* beewall-site.css · generado por build-css.sh el 2026-09-23 · NO EDITAR: se regenera */

/* ===== header/beewall-fonts.css ===== */
/* Poppins (700/800/900) + Manrope (variable 400-800) autoalojadas, subset latin, woff2. Sin llamadas a Google Fonts (RGPD). */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('fonts/manrope-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/poppins-700-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('fonts/poppins-800-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('fonts/poppins-900-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Kadence declara Overpass y DM Sans en su tipografía (cuerpo y algunos títulos). Ya no cargamos la hoja de
   Google Fonts, que además volvía a descargar Poppins desde gstatic, así que esos dos nombres apuntan aquí
   a Manrope autoalojada: mismo aspecto que el resto de la web y tres peticiones menos a terceros. */
@font-face {
  font-family: 'Overpass';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('fonts/manrope-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('fonts/manrope-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ===== header/beewall-header.css ===== */
/* =====================================================================
   BeeWall · cabecera (Kadence) con la línea de diseño
   ---------------------------------------------------------------------
   Arriba: transparente, con el color del texto adaptado al fondo que hay
   debajo (html.bw-hdr-on-dark / html.bw-hdr-on-light, lo pone
   beewall-header.js). Al bajar: "isla" negra redondeada y flotante; se
   esconde al bajar y vuelve al subir. Logo + wordmark y botón "Hablamos".
   ===================================================================== */
:root { --bw-hdr-ink: #2c2c2c; --bw-hdr-accent: #FFCB05; --bw-hdr-cream: #FCF6E6; }
html.bw-hdr-on-dark { --bw-hdr-ink: #FCF6E6; }
/* El tema aplicaba mix-blend-mode: difference a la cabecera (amarillo → azul). Los colores ya se adaptan por JS. */
#masthead { mix-blend-mode: normal !important; isolation: isolate; }

/* Transparente en TODA la web (como en la home): la cabecera va sobre el contenido, sin franja de color */
#masthead { position: absolute !important; top: 0; left: 0; right: 0; z-index: 100; background: transparent !important; }
#masthead .site-header-upper-wrap, #masthead .site-main-header-wrap, #masthead .site-header-row-container-inner, #masthead .site-header-inner-wrap { background: transparent !important; box-shadow: none !important; }
body.admin-bar #masthead { top: 32px; }
/* Plantillas sin hero propio (entradas, listado del blog, búsqueda, 404): aire para que el título no quede bajo la cabecera */
body.single-post #inner-wrap > .entry-hero:first-child, body.blog #inner-wrap > .entry-hero:first-child, body.search #inner-wrap > .entry-hero:first-child,
body.archive:not(.post-type-archive-bw_proyecto):not(.tax-bw_servicio) #inner-wrap > .entry-hero:first-child { padding-top: 88px; background: var(--global-palette8, #FCF6E6); }
/* Si la plantilla no lleva hero de título, el aire va en el propio contenedor */
body.single-post #inner-wrap:not(:has(> .entry-hero)), body.blog #inner-wrap:not(:has(> .entry-hero)), body.search #inner-wrap:not(:has(> .entry-hero)), body.archive:not(.post-type-archive-bw_proyecto):not(.tax-bw_servicio) #inner-wrap:not(:has(> .entry-hero)) { padding-top: 88px; }

/* Marca: logo hexagonal + wordmark */
/* El enlace (40px) quedaba pegado arriba del bloque .site-branding (74px): centramos el bloque en flex */
#masthead .site-branding { display: flex !important; align-items: center; }
#masthead .site-branding .brand { display: inline-flex !important; align-items: center; align-self: center; gap: 10px; text-decoration: none !important; }
#masthead .site-branding .brand::before { content: ''; width: 40px; height: 40px; flex: none; background: url('https://beewall.es/wp-content/uploads/2024/08/cropped-LOGO_BEEWALL_DEF-1.png') center / contain no-repeat; transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1); }
#masthead .site-branding .brand:hover::before { transform: rotate(-12deg) scale(1.06); }
/* Primer pintado sin JS: el wordmark lo pone el CSS (::after); cuando el JS inserta .bw-wordmark, el ::after desaparece */
#masthead .site-branding .brand:not(:has(.bw-wordmark))::after { content: 'BeeWall'; }
#masthead .site-branding .brand .bw-wordmark, #masthead .site-branding .brand:not(:has(.bw-wordmark))::after { font-family: 'Poppins', sans-serif; font-weight: 900; font-size: 22px; letter-spacing: -0.03em; color: var(--bw-hdr-ink); line-height: 1; transform: translateY(0.07em); /* ajuste óptico: la tinta de Poppins quedaba ~1.5px alta respecto al hexágono */ transition: color 0.3s ease; }

/* Navegación */
#masthead .header-navigation .menu { flex-wrap: nowrap; white-space: nowrap; }
#masthead .header-navigation .menu > li > a { font-family: 'Manrope', sans-serif !important; font-weight: 700 !important; font-size: 12.5px !important; letter-spacing: 0.08em !important; text-transform: uppercase; color: var(--bw-hdr-ink) !important; padding: 0.6em 0.7em !important; position: relative; transition: color 0.3s ease; }
#masthead .header-navigation .menu > li > a::after { content: ''; position: absolute; left: 0.7em; right: 0.7em; bottom: 0.25em; height: 2px; background: var(--bw-hdr-accent); transform: scaleX(0); transform-origin: left; transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1); }
#masthead .header-navigation .menu > li > a:hover::after, #masthead .header-navigation .menu > li.current-menu-item > a::after { transform: scaleX(1); }
#masthead .header-social-wrap .social-button { color: var(--bw-hdr-ink) !important; background: transparent !important; transition: color 0.3s ease, transform 0.3s ease; }
#masthead .header-social-wrap .social-button:hover { color: var(--bw-hdr-accent) !important; transform: translateY(-2px); }
#masthead .mobile-toggle-open-container .menu-toggle-open { color: var(--bw-hdr-ink) !important; background: transparent !important; }

/* Botón Hablamos (lo inserta el JS) */
#masthead .bw-hdr-cta { display: inline-flex; align-items: center; align-self: center; height: auto; line-height: 1; gap: 8px; margin-left: 18px; background: var(--bw-hdr-accent); color: #2c2c2c !important; font-family: 'Poppins', sans-serif; font-weight: 800; font-size: 13px; letter-spacing: 0.02em; padding: 11px 18px; border-radius: 999px; text-decoration: none !important; transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.3s ease; white-space: nowrap; }
#masthead .bw-hdr-cta:hover { box-shadow: 0 12px 28px rgba(44, 44, 44, 0.25); } /* la subida la gestiona beewall-buttons.css (escala, sin saltitos) */
#masthead .bw-hdr-cta i { font-style: normal; transition: transform 0.3s ease; }
#masthead .bw-hdr-cta:hover i { transform: translateX(3px); }

/* Fila de cabecera: transición hacia la isla */
#masthead .site-header-inner-wrap { transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1); }
#masthead .site-main-header-inner-wrap { transition: background 0.4s ease, border-radius 0.4s ease, box-shadow 0.4s ease, padding 0.4s ease, margin 0.4s ease, max-width 0.4s ease, min-height 0.4s ease; }
/* Kadence pinta fondo blanco al fijarse: fuera, la isla lleva el suyo */
#masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start) > .site-header-row-container-inner,
#masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start) .site-main-header-wrap .site-header-row-container-inner { background: transparent !important; box-shadow: none !important; }

/* Isla (al bajar) */
html.bw-hdr-stuck { --bw-hdr-ink: #FCF6E6; }
html.bw-hdr-stuck #masthead .site-main-header-inner-wrap { background: rgba(44, 44, 44, 0.94); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border-radius: 999px; margin: 12px auto 0; max-width: 1240px; min-height: 64px; padding: 0 14px 0 22px; box-shadow: 0 18px 44px rgba(0, 0, 0, 0.28); }
html.bw-hdr-stuck #masthead .site-branding .brand .bw-wordmark, html.bw-hdr-stuck #masthead .site-branding .brand::after { font-size: 20px; }
html.bw-hdr-stuck #masthead .site-branding .brand::before { width: 34px; height: 34px; }
html.bw-hdr-stuck #masthead .header-navigation .menu > li > a { color: var(--bw-hdr-cream) !important; }
html.bw-hdr-stuck #masthead .header-navigation .menu > li > a:hover { color: var(--bw-hdr-accent) !important; }
@media (max-width: 1280px) { #masthead #main-header .header-social-wrap { display: none; } }

/* Móvil: Kadence no fija la cabecera móvil; la fijamos nosotros al bajar (el JS reserva la altura en #mobile-header) */
html.bw-hdr-stuck.bw-hdr-mobile #masthead #mobile-header > .site-header-inner-wrap { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; }
/* Móvil: fila transparente arriba, isla al bajar */
#masthead #mobile-header .site-main-header-inner-wrap { min-height: 64px; }
html.bw-hdr-stuck #masthead #mobile-header .site-main-header-inner-wrap { margin: 10px 12px 0; padding: 0 6px 0 14px; min-height: 58px; max-width: none; }

/* Cajón móvil: negro, ítems gigantes con entrada escalonada */
#mobile-drawer .drawer-inner { background: #2c2c2c !important; color: #FCF6E6; }
#mobile-drawer .drawer-header .menu-toggle-close { color: #FFCB05 !important; }
#mobile-drawer .drawer-header .menu-toggle-close .toggle-close-bar { background: #FFCB05 !important; }
#mobile-drawer .mobile-navigation .menu > li { border: 0 !important; opacity: 0; transform: translateY(18px); }
#mobile-drawer.show-drawer .mobile-navigation .menu > li { animation: bwDrawerIn 0.55s cubic-bezier(0.22, 1, 0.36, 1) forwards; animation-delay: calc(var(--i, 0) * 60ms + 120ms); }
@keyframes bwDrawerIn { to { opacity: 1; transform: none; } }
#mobile-drawer .mobile-navigation .menu > li > a { font-family: 'Poppins', sans-serif !important; font-weight: 900 !important; font-size: clamp(1.9rem, 8.5vw, 2.5rem) !important; letter-spacing: -0.03em; line-height: 1.05; color: #FCF6E6 !important; padding: 12px 0 !important; border: 0 !important; transition: color 0.3s ease, padding-left 0.3s ease; }
#mobile-drawer .mobile-navigation .menu > li > a:hover, #mobile-drawer .mobile-navigation .menu > li.current-menu-item > a { color: #FFCB05 !important; }
#mobile-drawer .drawer-content { padding-top: 24px; }
#mobile-drawer .bw-drawer-foot { margin-top: 36px; padding-top: 24px; border-top: 1px solid rgba(252, 246, 230, 0.15); opacity: 0; animation: bwDrawerIn 0.6s cubic-bezier(0.22, 1, 0.36, 1) forwards; animation-delay: 560ms; }
#mobile-drawer .bw-drawer-foot .bw-hdr-cta { display: inline-flex; align-items: center; gap: 8px; background: #FFCB05; color: #2c2c2c !important; font-family: 'Poppins', sans-serif; font-weight: 800; font-size: 15px; padding: 14px 22px; border-radius: 999px; text-decoration: none !important; }
#mobile-drawer .bw-drawer-foot p { font-family: 'Manrope', sans-serif; font-size: 13px; opacity: 0.6; margin: 16px 0 0; letter-spacing: 0.08em; text-transform: uppercase; }
#mobile-drawer .bw-drawer-foot p a { color: inherit; text-decoration: none; }
@media (prefers-reduced-motion: reduce) {
  #mobile-drawer .mobile-navigation .menu > li, #mobile-drawer .bw-drawer-foot { opacity: 1; transform: none; animation: none; }
  #masthead .site-header-inner-wrap, #masthead .site-main-header-inner-wrap { transition: none; }
}

/* Plantillas que empiezan en oscuro: tinta crema desde el primer pintado (antes el menú era invisible hasta que el JS medía el fondo).
   Solo mientras el JS no ha puesto bw-hdr-on-dark / bw-hdr-on-light. */
html:not(.bw-hdr-on-light):not(.bw-hdr-on-dark) body:is(.error404, .bw-seo, .bw-legal, .blog, .single-post, .search, .post-type-archive-bw_proyecto, .tax-bw_servicio, .page-id-271, .page-id-77, .page-id-78) #masthead { --bw-hdr-ink: #FCF6E6; }

/* Sobre fondo claro (hero amarillo, crema) el acento miel no se ve: hover de redes y subrayado del menú en tinta; miel solo sobre oscuro o en la isla */
html:not(.bw-hdr-on-dark):not(.bw-hdr-stuck) #masthead .header-social-wrap .social-button:hover { color: var(--bw-hdr-ink) !important; opacity: 0.6; }
html:not(.bw-hdr-on-dark):not(.bw-hdr-stuck) #masthead .header-navigation .menu > li > a::after { background: currentColor; }

/* ===== header/beewall-buttons.css ===== */
/* =====================================================================
   BeeWall · Botones: hover "tinta desde el cursor" (site-wide)
   ---------------------------------------------------------------------
   Un círculo del color contrario nace donde entra el cursor (--bwb-x/y,
   los pone beewall-header.js) y llena la píldora; el texto invierte el
   color, la flecha se desplaza 4px y el botón sube 2px. Se aplica a todos
   los botones píldora de la web (home, header, páginas, proyectos, form,
   botones de Kadence). Filtros y pestañas quedan fuera (son toggles).
   ===================================================================== */
:root { --bwb-dark: #2c2c2c; --bwb-honey: #FFCB05; --bwb-cream: #FCF6E6; }

/* Base: por defecto botón oscuro → se llena de miel y la tinta pasa a oscuro */
/* Los colores por defecto van en :where (especificidad 0) para que las variantes de abajo ganen */
:where(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn, .kb-button, .wp-block-button__link, .kb-forms-submit, .bwx-form__box button[type="submit"], .bwx-hero__nav a) { --bwb-fill: var(--bwb-honey); --bwb-ink: var(--bwb-dark); }
html body :is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn, .kb-button, .wp-block-button__link, .kb-forms-submit, .bwx-form__box button[type="submit"], .bwx-hero__nav a) {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  -webkit-tap-highlight-color: transparent;
  transform: translateZ(0); /* capa propia: el recorte redondeado no se pierde mientras anima el círculo */
  transition: color 0.35s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease, border-color 0.35s ease, background-color 0s linear 0s;
}
/* Variantes con fondo miel o ghost → se llenan de oscuro y la tinta pasa a miel */
html body :is(.bw-hdr-cta, .bwx-btn--honey, .bwp2-btn--honey, .kb-button, .bwx-btn--ghost, .bwp2-btn--ghost) { --bwb-fill: var(--bwb-dark); --bwb-ink: var(--bwb-honey); }
/* Chips del hero de Servicios (fondo oscuro, borde crema): miel + tinta oscura */
html body .bwx-hero__nav a { --bwb-fill: var(--bwb-honey); --bwb-ink: var(--bwb-dark); }

/* La tinta: círculo grande (cubre la píldora desde cualquier punto) escalado a 0 */
html body :is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn, .kb-button, .wp-block-button__link, .kb-forms-submit, .bwx-form__box button[type="submit"], .bwx-hero__nav a)::before {
  content: '';
  position: absolute;
  z-index: -1;
  left: var(--bwb-x, 50%);
  top: var(--bwb-y, 50%);
  width: 260%;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  background: var(--bwb-fill);
  transform: translate(-50%, -50%) scale(0);
  transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
  pointer-events: none;
}
html body :is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn, .kb-button, .wp-block-button__link, .kb-forms-submit, .bwx-form__box button[type="submit"], .bwx-hero__nav a):is(:hover, :focus-visible)::before { transform: translate(-50%, -50%) scale(1); }

/* Estado hover: tinta invertida, subida de 2px, sombra suave; el fondo propio no cambia (lo tapa la tinta) */
html body :is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn, .kb-button, .wp-block-button__link, .kb-forms-submit, .bwx-form__box button[type="submit"], .bwx-hero__nav a):is(:hover, :focus-visible) {
  color: var(--bwb-ink) !important;
  /* Escala mínima en vez de subir 2px: crece hacia fuera y el cursor nunca se queda fuera del botón (evitaba saltitos en el borde) */
  transform: translateZ(0) scale(1.03);
  box-shadow: 0 12px 28px rgba(44, 44, 44, 0.18);
  transition: color 0.35s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease, border-color 0.35s ease, background-color 0s linear 0.45s;
}
/* Cuando el círculo ya cubre el botón, el fondo propio pasa al color de la tinta (sin anillo del color original en el borde).
   Solo con .bwb-on, que el JS añade DESPUÉS de leer el color real del botón (si no, leería el fondo ya invertido). */
html body :is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn, .kb-button, .wp-block-button__link, .kb-forms-submit, .bwx-form__box button[type="submit"], .bwx-hero__nav a).bwb-on:is(:hover, :focus-visible) { background-color: var(--bwb-fill) !important; }
/* El header define su propio transition con ID: repetimos aquí las transiciones con la misma fuerza */
#masthead .bw-hdr-cta { transition: color 0.35s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease, background-color 0s linear 0s; }
#masthead .bw-hdr-cta:is(:hover, :focus-visible) { transition: color 0.35s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease, background-color 0s linear 0.45s; }
html body :is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn, .kb-button, .wp-block-button__link, .kb-forms-submit, .bwx-form__box button[type="submit"], .bwx-hero__nav a):is(:hover, :focus-visible) :is(.kt-btn-inner-text, span, b) { color: inherit !important; }
html body :is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn, .kb-button, .wp-block-button__link, .kb-forms-submit, .bwx-form__box button[type="submit"], .bwx-hero__nav a):active { transform: translateZ(0) scale(0.98); transition-duration: 0.15s; }
/* Ghost: el borde pasa al color de la tinta de relleno para que no quede un filo distinto */
html body :is(.bwx-btn--ghost, .bwp2-btn--ghost):is(:hover, :focus-visible) { border-color: var(--bwb-fill); }
html body .bwx-hero__nav a:is(:hover, :focus-visible) { border-color: var(--bwb-fill); }
/* Kadence pinta su propio hover (fondo/color): lo neutralizamos, la tinta lo hace todo */

/* El header fija el color con selectores de ID (!important): el hover necesita la misma fuerza */
#masthead .bw-hdr-cta:is(:hover, :focus-visible), #mobile-drawer .bw-drawer-foot .bw-hdr-cta:is(:hover, :focus-visible) { color: var(--bwb-ink) !important; }
/* Fallback sin JS para botones miel sobre fondo oscuro (isla del header, drawer, sección oscura de la home): tinta crema.
   Con JS, beewall-header.js mide el fondo real detrás de cada botón y fija --bwb-fill/--bwb-ink inline. */
html.bw-hdr-stuck #masthead .bw-hdr-cta, #mobile-drawer .bw-drawer-foot .bw-hdr-cta, html body .kb-button { --bwb-fill: var(--bwb-cream); --bwb-ink: var(--bwb-dark); }

/* Flecha / icono: se desplaza con el cursor */
:is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn) :is(i, svg) { transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1); }
:is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn):is(:hover, :focus-visible) :is(i, svg) { transform: translateX(4px); }
:is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn):is(:hover, :focus-visible) svg path, :is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn):is(:hover, :focus-visible) svg line { stroke: currentColor; }

/* El botón del CTA final de la home lleva efecto imán por GSAP (transform inline): no transicionamos su transform */
html body .bw-cta__btn { transition: color 0.35s ease, box-shadow 0.45s ease; }
html body .bw-cta__btn:is(:hover, :focus-visible) { transform: none; transition: color 0.35s ease, box-shadow 0.45s ease, background-color 0s linear 0.45s; }

/* Foco por teclado visible sin depender del hover */
html body :is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn, .kb-button, .wp-block-button__link, .kb-forms-submit, .bwx-form__box button[type="submit"]):focus-visible { outline: 2px solid var(--bwb-honey); outline-offset: 3px; }

@media (prefers-reduced-motion: reduce) {
  html body :is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn, .kb-button, .wp-block-button__link, .kb-forms-submit, .bwx-form__box button[type="submit"], .bwx-hero__nav a),
  html body :is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn, .kb-button, .wp-block-button__link, .kb-forms-submit, .bwx-form__box button[type="submit"], .bwx-hero__nav a)::before,
  :is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn) :is(i, svg) { transition: none; }
  html body :is(.bw-team__btn, .bw-404__btn, .bw-ft-cta, .bw-cta__btn, .bw-hdr-cta, .bwx-btn, .bwp2-btn, .kb-button, .wp-block-button__link, .kb-forms-submit, .bwx-form__box button[type="submit"], .bwx-hero__nav a):is(:hover, :focus-visible) { transform: none; transition: none; }
}

/* ===== header/beewall-footer.css ===== */
/* =====================================================================
   BeeWall · Footer (site-wide) en la línea de diseño de la home
   ---------------------------------------------------------------------
   El footer sigue siendo el de Kadence (5 columnas de widgets + barra
   inferior); aquí solo se restyla. beewall-header.js añade: el goteo con
   el color real de la sección anterior (--bw-ft-drip), la banda superior
   (.bw-ft-top: wordmark gigante + chips de contacto) y, en móvil, los
   acordeones de las listas de enlaces SEO (.bw-ft-acc).
   ===================================================================== */
#colophon.site-footer { --bw-ft-drip: transparent; position: relative; overflow: hidden; background: #2c2c2c !important; color: #FCF6E6; font-family: 'Manrope', sans-serif; }
#colophon .bw-ft-drip { position: absolute; top: -1px; left: 0; width: 100%; height: clamp(50px, 9vw, 130px); display: block; pointer-events: none; z-index: 3; }
#colophon .bw-ft-drip path { fill: var(--bw-ft-drip); }

/* Banda superior: wordmark + contacto */
/* Misma caja que las secciones de la home: 1400px de contenido + laterales por fuera (content-box); antes el max-width incluía el padding y el footer salía 93px más estrecho */
#colophon .bw-ft-top { box-sizing: content-box; max-width: 1400px; margin: 0 auto; padding: clamp(150px, 16vw, 210px) clamp(20px, 6vw, 96px) 0; }
#colophon .bw-ft-kicker { font-weight: 700; font-size: 12px; letter-spacing: 0.25em; text-transform: uppercase; color: #FFCB05; opacity: 0.85; margin: 0 0 18px; }
#colophon .bw-ft-word { display: flex; align-items: center; gap: 0.14em; font-family: 'Poppins', sans-serif; font-weight: 900; font-size: min(clamp(4rem, 13.5vw, 13rem), 26vh); line-height: 0.9; letter-spacing: -0.05em; color: #FFCB05; margin: 0 0 0 -0.03em; }
#colophon .bw-ft-word::before { content: ''; flex: none; width: 0.62em; height: 0.62em; background: url('https://beewall.es/wp-content/uploads/2024/08/cropped-LOGO_BEEWALL_DEF-1.png') center / contain no-repeat; }
#colophon .bw-ft-row { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 20px 40px; margin-top: clamp(28px, 4vw, 48px); padding-bottom: clamp(36px, 5vw, 56px); border-bottom: 1px solid rgba(252, 246, 230, 0.15); }
#colophon .bw-ft-tag { font-size: clamp(1rem, 1.3vw, 1.2rem); line-height: 1.5; max-width: 480px; opacity: 0.8; margin: 0; }
#colophon .bw-ft-contact { display: flex; flex-wrap: wrap; gap: 10px; }
#colophon .bw-ft-cta { display: inline-flex; align-items: center; gap: 8px; font-family: 'Poppins', sans-serif; font-weight: 800; font-size: 14px; padding: 13px 22px; border-radius: 999px; border: 1.5px solid rgba(252, 246, 230, 0.3); color: #FCF6E6 !important; text-decoration: none !important; white-space: nowrap; }
#colophon .bw-ft-cta--honey { background: #FFCB05; border-color: #FFCB05; color: #2c2c2c !important; }
#colophon .bw-ft-cta i { font-style: normal; }

/* Columnas de widgets */
#colophon .site-footer-row-container-inner { background: transparent !important; }
#colophon .site-container { box-sizing: content-box; max-width: 1400px !important; margin: 0 auto; padding: 0 clamp(20px, 6vw, 96px) !important; }
#colophon .site-top-footer-inner-wrap { display: grid; grid-template-columns: 1.25fr 0.9fr 1fr 1fr 1fr !important; gap: 40px 32px !important; padding: clamp(40px, 5vw, 64px) 0 clamp(40px, 5vw, 64px) !important; }
#colophon .site-footer-section, #colophon .footer-widget-area { text-align: left !important; }
#colophon .footer-widget-area-inner { display: block; }
#colophon .widget { margin: 0 0 14px; }
/* Col 1: marca. El "BeeWall" pequeño sobra (ya está el wordmark gigante); la frase en mayúsculas pasa a Poppins normal */
#colophon .footer-widget1 .widget:first-child { display: none; }
#colophon .footer-widget1 .wp-block-kadence-advancedheading { font-family: 'Poppins', sans-serif !important; font-weight: 800 !important; font-size: clamp(1.15rem, 1.5vw, 1.4rem) !important; line-height: 1.25 !important; letter-spacing: -0.02em; text-transform: none !important; color: #FCF6E6 !important; margin: 0 0 14px; }
#colophon .footer-widget1 p { font-size: 14px; line-height: 1.6; opacity: 0.7; margin: 0; }
/* Títulos de columna como kickers */
#colophon .widget-title { display: inline-flex !important; align-items: center; gap: 10px; font-family: 'Manrope', sans-serif !important; font-weight: 700 !important; font-size: 12px !important; letter-spacing: 0.22em; text-transform: uppercase; color: #FFCB05 !important; line-height: 1.2 !important; margin: 0 0 16px !important; opacity: 1; }
#colophon .widget-title::before { content: ''; width: 22px; height: 2px; background: #FFCB05; flex: none; }
/* Col 2: contacto */
#colophon .footer-widget2 p { font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 1rem; line-height: 1.9; margin: 0; color: #FCF6E6; }
#colophon .footer-widget2 p a { color: #FCF6E6; text-decoration: none; border-bottom: 2px solid rgba(255, 203, 5, 0.35); transition: border-color 0.3s ease, color 0.3s ease; }
#colophon .footer-widget2 p a:hover { color: #FFCB05; border-color: #FFCB05; }
/* Cols 3-5: listas de enlaces SEO locales */
#colophon .widget_nav_menu ul.menu { list-style: none !important; margin: 0 !important; padding: 0 !important; }
#colophon .widget_nav_menu ul.menu li { margin: 0 !important; padding: 0; border: 0 !important; }
#colophon .widget_nav_menu ul.menu li a { display: block; padding: 4px 0; font-size: 13.5px; line-height: 1.4; color: rgba(252, 246, 230, 0.7) !important; text-decoration: none !important; transition: color 0.25s ease, padding-left 0.25s ease; }
#colophon .widget_nav_menu ul.menu li a:hover { color: #FFCB05 !important; padding-left: 6px; }

/* Barra inferior */
#colophon .site-bottom-footer-wrap { border-top: 1px solid rgba(252, 246, 230, 0.15); }
#colophon .site-bottom-footer-inner-wrap { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px 24px; padding: 22px 0 !important; min-height: 0 !important; }
#colophon .footer-html p { font-size: 13px; opacity: 0.6; margin: 0; }
#colophon .footer-social-wrap .social-button { width: 40px; height: 40px; border-radius: 50%; border: 1.5px solid rgba(252, 246, 230, 0.25) !important; background: transparent !important; color: #FCF6E6 !important; display: inline-flex; align-items: center; justify-content: center; margin: 0 4px 0 0 !important; transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease, border-color 0.3s ease; }
#colophon .footer-social-wrap .social-button svg { width: 16px; height: 16px; }
#colophon .footer-social-wrap .social-button:hover { background: #FFCB05 !important; border-color: #FFCB05 !important; color: #2c2c2c !important; transform: translateY(-2px); }

/* Tablet / móvil */
@media (max-width: 1100px) {
  #colophon .site-top-footer-inner-wrap { grid-template-columns: 1fr 1fr !important; }
  #colophon .footer-widget1 { grid-column: 1 / -1; }
}
@media (max-width: 720px) {
  #colophon .bw-ft-top { padding-top: clamp(110px, 24vw, 150px); }
  #colophon .bw-ft-word { font-size: clamp(3.4rem, 19vw, 5rem); }
  #colophon .bw-ft-row { align-items: flex-start; flex-direction: column; }
  #colophon .site-top-footer-inner-wrap { grid-template-columns: 1fr !important; gap: 28px !important; }
  /* Las listas SEO (40 enlaces) van plegadas: el título abre/cierra (JS añade .bw-ft-acc) */
  #colophon .bw-ft-acc .widget-title { cursor: pointer; width: 100%; justify-content: space-between; margin-bottom: 0 !important; padding: 12px 0; border-top: 1px solid rgba(252, 246, 230, 0.12); }
  #colophon .bw-ft-acc .widget-title::after { content: '+'; font-family: 'Poppins', sans-serif; font-weight: 800; font-size: 18px; line-height: 1; transition: transform 0.3s ease; }
  #colophon .bw-ft-acc.is-open .widget-title::after { transform: rotate(45deg); }
  #colophon .bw-ft-acc ul.menu { display: none !important; padding: 4px 0 14px !important; }
  #colophon .bw-ft-acc.is-open ul.menu { display: block !important; }
  #colophon .bw-ft-acc { margin: 0; }
  #colophon .bw-ft-acc + .bw-ft-acc, #colophon .site-footer-section:has(.bw-ft-acc) + .site-footer-section:has(.bw-ft-acc) { margin-top: -28px; }
  #colophon .site-bottom-footer-inner-wrap { flex-direction: column; align-items: flex-start; }
}

/* ===== paginas/beewall-pages.css ===== */
/* =====================================================================
   BeeWall · Blog, artículo y páginas de contenido con la línea de diseño
   (Kadence: solo CSS, sin tocar el marcado → el SEO no cambia)
   ===================================================================== */
:root { --bwp-dark: #2c2c2c; --bwp-honey: #FFCB05; --bwp-cream: #FCF6E6; }

/* ---------- Hero de título (listado del blog, entrada, búsqueda, archivos) ---------- */
body.blog #inner-wrap > .entry-hero:first-child, body.single-post #inner-wrap > .entry-hero:first-child, body.search #inner-wrap > .entry-hero:first-child, body.archive:not(.post-type-archive-bw_proyecto):not(.tax-bw_servicio) #inner-wrap > .entry-hero:first-child {
  background: var(--bwp-dark) !important; color: var(--bwp-cream); padding-top: clamp(140px, 16vh, 200px) !important; padding-bottom: clamp(70px, 9vw, 120px); position: relative; overflow: hidden;
}
/* Kadence pinta su fondo en el contenedor interior y en la capa de overlay: también en negro */
body.blog .entry-hero .entry-hero-container-inner, body.single-post .entry-hero .entry-hero-container-inner, body.search .entry-hero .entry-hero-container-inner, body.archive .entry-hero .entry-hero-container-inner { background: transparent !important; }
body.blog .entry-hero .hero-section-overlay, body.single-post .entry-hero .hero-section-overlay, body.search .entry-hero .hero-section-overlay, body.archive .entry-hero .hero-section-overlay { background: transparent !important; opacity: 0 !important; }
body.blog .entry-hero, body.single-post .entry-hero, body.search .entry-hero, body.archive:not(.post-type-archive-bw_proyecto):not(.tax-bw_servicio) .entry-hero { background: var(--bwp-dark) !important; }
body.blog .entry-hero .entry-header, body.single-post .entry-hero .entry-header, body.search .entry-hero .entry-header, body.archive .entry-hero .entry-header { max-width: 1400px; margin: 0 auto; text-align: left !important; padding: 0 clamp(4px, 2vw, 24px); }
body.blog .entry-hero h1, body.single-post .entry-hero h1, body.search .entry-hero h1, body.archive .entry-hero h1 { font-family: 'Poppins', sans-serif !important; font-weight: 900 !important; color: var(--bwp-honey) !important; letter-spacing: -0.04em; line-height: 0.95 !important; margin: 0 0 18px !important; }
body.blog .entry-hero h1, body.search .entry-hero h1, body.archive .entry-hero h1 { font-size: clamp(3.2rem, 11vw, 11rem) !important; }
body.single-post .entry-hero h1 { font-size: clamp(2.2rem, 4.6vw, 4.6rem) !important; max-width: 20ch; }
body.single-post .entry-hero .entry-meta, body.blog .entry-hero .entry-meta { font-family: 'Manrope', sans-serif; font-weight: 700; font-size: 12px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bwp-cream) !important; opacity: 0.7; }
body.single-post .entry-hero .entry-meta a { color: inherit !important; }
body.blog .entry-hero .archive-description, body.archive .entry-hero .archive-description { font-family: 'Manrope', sans-serif; font-size: clamp(1.05rem, 1.5vw, 1.35rem); max-width: 620px; opacity: 0.85; }
/* goteo de miel bajo el hero (mismo trazado que la home) */
body.blog #inner-wrap > .entry-hero:first-child::after, body.single-post #inner-wrap > .entry-hero:first-child::after, body.search #inner-wrap > .entry-hero:first-child::after, body.archive:not(.post-type-archive-bw_proyecto):not(.tax-bw_servicio) #inner-wrap > .entry-hero:first-child::after {
  content: ''; position: absolute; left: 0; right: 0; bottom: -1px; height: clamp(40px, 7vw, 100px);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 130' preserveAspectRatio='none'%3E%3Cpath fill='%23FCF6E6' d='M0,130 H1440 V102 C1400,102 1392,56 1352,56 C1312,56 1308,102 1256,102 C1204,102 1200,26 1152,26 C1104,26 1100,102 1040,102 C980,102 976,70 936,70 C896,70 892,102 832,102 C772,102 768,12 720,12 C672,12 668,102 600,102 C532,102 528,48 480,48 C432,48 428,102 368,102 C308,102 304,34 248,34 C192,34 188,102 128,102 C68,102 60,64 0,64 Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}

/* ---------- Listado del blog: tarjetas ---------- */
body.blog #primary, body.archive:not(.post-type-archive-bw_proyecto):not(.tax-bw_servicio) #primary, body.search #primary { background: var(--bwp-cream); margin: 0 !important; padding: clamp(48px, 6vw, 96px) 0 clamp(72px, 8vw, 120px); }
body.blog .content-area, body.search .content-area, body.archive .content-area { margin-top: 0 !important; }
body.blog #archive-container, body.search #archive-container, body.archive #archive-container { gap: clamp(32px, 4vw, 56px) clamp(24px, 3vw, 40px); }
.loop-entry.content-bg { background: transparent !important; box-shadow: none !important; border-radius: 0 !important; overflow: visible !important; }
.loop-entry .post-thumbnail { display: block; border-radius: 16px; overflow: hidden; box-shadow: 14px 14px 0 var(--bwp-honey); transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.5s cubic-bezier(0.22, 1, 0.36, 1); background: #e8e2d2; }
.loop-entry .post-thumbnail img { transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1); }
.loop-entry:hover .post-thumbnail { transform: translate(-5px, -5px); box-shadow: 19px 19px 0 var(--bwp-honey); }
.loop-entry:hover .post-thumbnail img { transform: scale(1.04); }
.loop-entry .entry-content-wrap { padding: 28px 8px 0 0 !important; }
.loop-entry .entry-title { font-family: 'Poppins', sans-serif !important; font-weight: 900 !important; font-size: clamp(1.3rem, 1.8vw, 1.7rem) !important; line-height: 1.05 !important; letter-spacing: -0.03em; margin: 0 0 12px !important; }
.loop-entry .entry-title a { color: var(--bwp-dark) !important; text-decoration: none !important; }
.loop-entry .entry-title a:hover { color: var(--bwp-dark) !important; background: linear-gradient(transparent 62%, var(--bwp-honey) 62%); }
.loop-entry .entry-meta { font-family: 'Manrope', sans-serif !important; font-weight: 700 !important; font-size: 12px !important; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bwp-dark) !important; opacity: 0.6; margin-bottom: 12px !important; }
.loop-entry .entry-meta a { color: inherit !important; }
.loop-entry .entry-summary { font-family: 'Manrope', sans-serif; font-size: 15px; line-height: 1.65; opacity: 0.85; }
.loop-entry .entry-footer, .loop-entry .post-more-link { font-family: 'Poppins', sans-serif; font-weight: 800; }
.loop-entry .post-more-link { color: var(--bwp-dark) !important; text-decoration: none !important; border-bottom: 2px solid var(--bwp-honey); }
.loop-entry .entry-taxonomies a, .loop-entry .category-links a { display: inline-block; background: var(--bwp-dark); color: var(--bwp-honey) !important; font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 999px; text-decoration: none !important; }
/* paginación */
.kadence-pagination .page-numbers, .pagination .page-numbers { font-family: 'Poppins', sans-serif; font-weight: 800; border: 2px solid var(--bwp-dark) !important; border-radius: 999px !important; color: var(--bwp-dark) !important; background: transparent !important; }
.kadence-pagination .page-numbers.current, .pagination .page-numbers.current { background: var(--bwp-dark) !important; color: var(--bwp-honey) !important; }

/* ---------- Entrada: tipografía y contenido ---------- */
body.single-post #primary { background: var(--bwp-cream); margin: 0 !important; padding: clamp(48px, 6vw, 88px) 0 clamp(72px, 8vw, 120px); }
body.single-post .content-area { margin-top: 0 !important; }
body.single-post .single-entry.content-bg { background: transparent !important; box-shadow: none !important; }
body.single-post .entry-content-wrap { padding: 0 !important; }
body.single-post .entry-content { font-family: 'Manrope', sans-serif; font-size: clamp(1.05rem, 1.25vw, 1.2rem); line-height: 1.75; color: var(--bwp-dark); max-width: 780px; margin: 0 auto; }
body.single-post .entry-content > p { margin: 0 0 1.4em; }
body.single-post .entry-content > p:first-of-type::first-letter { font-family: 'Poppins', sans-serif; font-weight: 900; font-size: 3.2em; line-height: 0.8; float: left; margin: 0.08em 0.15em 0 0; color: var(--bwp-dark); }
body.single-post .entry-content h2, body.single-post .entry-content h3, body.single-post .entry-content h4 { font-family: 'Poppins', sans-serif !important; font-weight: 900 !important; letter-spacing: -0.03em; line-height: 1.05; color: var(--bwp-dark) !important; margin: 2em 0 0.6em !important; }
body.single-post .entry-content h2 { font-size: clamp(1.7rem, 2.8vw, 2.5rem) !important; padding-left: 20px; border-left: 5px solid var(--bwp-honey); }
body.single-post .entry-content h3 { font-size: clamp(1.3rem, 2vw, 1.7rem) !important; }
body.single-post .entry-content a:not(.wp-block-button__link) { color: var(--bwp-dark); font-weight: 700; text-decoration: none; background: linear-gradient(transparent 60%, var(--bwp-honey) 60%); transition: background-size 0.3s ease; }
body.single-post .entry-content a:not(.wp-block-button__link):hover { background: var(--bwp-honey); }
body.single-post .entry-content ul:not(.wp-block-gallery) { list-style: none; padding-left: 0; margin: 0 0 1.6em; }
body.single-post .entry-content ul:not(.wp-block-gallery) > li { position: relative; padding-left: 30px; margin-bottom: 0.5em; }
body.single-post .entry-content ul:not(.wp-block-gallery) > li::before { content: ''; position: absolute; left: 0; top: 0.55em; width: 14px; height: 16px; background: var(--bwp-honey); clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%); }
body.single-post .entry-content ol { padding-left: 1.4em; font-weight: 500; }
body.single-post .entry-content ol > li::marker { font-family: 'Poppins', sans-serif; font-weight: 900; color: var(--bwp-dark); }
body.single-post .entry-content figure.wp-block-image, body.single-post .entry-content .wp-block-image { margin: 2.2em 0; }
body.single-post .entry-content figure.wp-block-image img, body.single-post .entry-content .wp-block-image img { border-radius: 16px; box-shadow: 16px 16px 0 var(--bwp-honey); width: 100%; height: auto; }
body.single-post .entry-content figcaption { font-size: 13px; opacity: 0.65; margin-top: 26px; text-align: left; }
body.single-post .entry-content blockquote { margin: 2.2em 0; padding: 28px 32px; background: var(--bwp-dark); color: var(--bwp-cream); border-radius: 18px; border: 0; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 1.15em; line-height: 1.4; }
body.single-post .entry-content blockquote p { margin: 0; }
body.single-post .entry-content strong { font-weight: 800; }
body.single-post .entry-content .wp-block-button__link { background: var(--bwp-dark) !important; color: var(--bwp-honey) !important; font-family: 'Poppins', sans-serif; font-weight: 800; border-radius: 999px !important; padding: 16px 28px; }
body.single-post .entry-content table { font-size: 0.95em; }
body.single-post .entry-content > :first-child { margin-top: 0 !important; }
body.single-post .entry-content .kt-adv-heading1007_de3785-6c, body.single-post .entry-content .wp-block-kadence-advancedheading { font-family: 'Poppins', sans-serif !important; font-weight: 900 !important; }
/* pie de la entrada: etiquetas, autor, navegación */
body.single-post .entry-footer, body.single-post .entry-tags { font-family: 'Manrope', sans-serif; }
body.single-post .entry-tags a, body.single-post .entry-footer a { display: inline-block; background: var(--bwp-dark); color: var(--bwp-honey) !important; font-size: 12px; font-weight: 700; padding: 6px 12px; border-radius: 999px; text-decoration: none !important; margin: 0 4px 6px 0; }
body.single-post .post-navigation { max-width: 780px; margin: clamp(48px, 6vw, 80px) auto 0; padding-top: 28px; border-top: 2px solid rgba(44, 44, 44, 0.15); }
body.single-post .post-navigation .nav-links a { font-family: 'Poppins', sans-serif !important; font-weight: 800 !important; color: var(--bwp-dark) !important; text-decoration: none !important; }
body.single-post .post-navigation .post-navigation-sub { font-family: 'Manrope', sans-serif; font-size: 12px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; opacity: 0.6; }
body.single-post .post-navigation .post-navigation-sub small { font-size: inherit; }
/* relacionados (carrusel de Kadence) */
body.single-post .entry-related { background: var(--bwp-dark) !important; color: var(--bwp-cream); position: relative; padding: clamp(110px, 12vw, 160px) 0 clamp(72px, 8vw, 110px) !important; margin-top: 0 !important; }
body.single-post .entry-related::before { content: ''; position: absolute; left: 0; right: 0; top: -1px; height: clamp(40px, 7vw, 100px); background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 130' preserveAspectRatio='none'%3E%3Cpath fill='%23FCF6E6' d='M0,0 H1440 V28 C1400,28 1392,74 1352,74 C1312,74 1308,28 1256,28 C1204,28 1200,104 1152,104 C1104,104 1100,28 1040,28 C980,28 976,60 936,60 C896,60 892,28 832,28 C772,28 768,118 720,118 C672,118 668,28 600,28 C532,28 528,82 480,82 C432,82 428,28 368,28 C308,28 304,96 248,96 C192,96 188,28 128,28 C68,28 60,66 0,66 Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }
body.single-post .entry-related-title { font-family: 'Poppins', sans-serif !important; font-weight: 900 !important; font-size: clamp(1.8rem, 3.6vw, 3.2rem) !important; letter-spacing: -0.03em; color: var(--bwp-honey) !important; margin-bottom: 36px !important; }
body.single-post .entry-related .loop-entry .entry-title a { color: var(--bwp-cream) !important; }
body.single-post .entry-related .loop-entry .entry-meta { color: var(--bwp-cream) !important; }
body.single-post .entry-related .loop-entry .entry-summary { color: var(--bwp-cream); }
body.single-post .entry-related .loop-entry .post-thumbnail { box-shadow: 12px 12px 0 var(--bwp-honey); }
body.single-post .entry-related .splide__arrow { background: var(--bwp-honey) !important; }
/* sin franja crema entre relacionados y el pie */
body.single-post #primary { padding-bottom: 0 !important; }
body.single-post .content-area, body.single-post #inner-wrap, body.single-post .site-main { margin-bottom: 0 !important; padding-bottom: 0 !important; }
body.single-post .entry-related { margin-bottom: 0 !important; }
body.single-post .post-navigation { margin-bottom: clamp(56px, 7vw, 96px); }
/* relacionados: la miniatura no se pisa con el título */
.loop-entry .post-thumbnail, .loop-entry .post-thumbnail-inner { margin-bottom: 8px; }
body.single-post .entry-related .loop-entry .post-thumbnail { margin-bottom: 24px; }
body.single-post .entry-related .loop-entry .entry-content-wrap { padding-top: 12px !important; }
/* comentarios */
body.single-post #comments { max-width: 780px; margin: 48px auto 0; font-family: 'Manrope', sans-serif; }
body.single-post #comments .comments-title, body.single-post #comments .comment-reply-title { font-family: 'Poppins', sans-serif !important; font-weight: 900 !important; }
body.single-post #comments .submit { background: var(--bwp-dark) !important; color: var(--bwp-honey) !important; border-radius: 999px !important; font-family: 'Poppins', sans-serif; font-weight: 800; }

@media (max-width: 768px) {
  body.blog .entry-hero h1, body.search .entry-hero h1, body.archive .entry-hero h1 { font-size: clamp(2.8rem, 15vw, 5rem) !important; }
  .loop-entry .post-thumbnail { box-shadow: 10px 10px 0 var(--bwp-honey); margin-right: 10px; }
  .loop-entry:hover .post-thumbnail { transform: none; box-shadow: 10px 10px 0 var(--bwp-honey); }
  body.single-post .entry-content figure.wp-block-image img { box-shadow: 10px 10px 0 var(--bwp-honey); }
  body.single-post .entry-content h2 { padding-left: 14px; border-left-width: 4px; }
}

/* =====================================================================
   PÁGINAS DE CONTENIDO (Servicios, Nosotros) · bloques bwx-*
   ===================================================================== */
.bwx { font-family: 'Manrope', sans-serif; color: var(--bwp-dark); }
.bwx h1, .bwx h2, .bwx h3, .bwx p { margin: 0; }
/* Kadence mete margen superior a los encabezados del contenido (1.5em): fuera, aquí manda el bloque */
.bwx :is(h1, h2, h3, h4, p, ul, figure, blockquote) { margin-top: 0 !important; }
.bwx .bwx-kicker { margin-bottom: 22px !important; }
.bwx-hero .bwx-title { margin-bottom: 20px !important; }
.bwx [data-split] .w { display: inline-block; white-space: nowrap; }
.bwx [data-split] .ch { display: inline-block; will-change: transform; }
.bwx-kicker { display: inline-flex; align-items: center; gap: 10px; font-weight: 700; font-size: 12px; letter-spacing: 0.22em; text-transform: uppercase; margin: 0 0 22px; }
.bwx-kicker::before { content: ''; width: 28px; height: 2px; background: currentColor; }
.bwx-kicker b { font-weight: 800; padding: 5px 12px; border-radius: 999px; background: var(--bwp-honey); color: var(--bwp-dark); letter-spacing: 0.12em; }
.bwx-inner { max-width: 1400px; margin: 0 auto; }
.bwx-drip { position: absolute; top: -1px; left: 0; width: 100%; height: clamp(50px, 9vw, 130px); display: block; pointer-events: none; z-index: 2; }
.bwx-drip--dark path { fill: var(--bwp-dark); } .bwx-drip--honey path { fill: var(--bwp-honey); } .bwx-drip--cream path { fill: var(--bwp-cream); }
.bwx-btn { display: inline-flex; align-items: center; gap: 10px; background: var(--bwp-dark); color: var(--bwp-honey) !important; font-family: 'Poppins', sans-serif; font-weight: 800; font-size: 1rem; padding: 18px 32px; border-radius: 999px; text-decoration: none !important; transition: transform 0.3s ease, box-shadow 0.3s ease; }
.bwx-btn:hover { transform: translateY(-3px); box-shadow: 0 16px 36px rgba(44, 44, 44, 0.25); }
.bwx-btn--ghost { background: transparent; color: var(--bwp-dark) !important; border: 2px solid var(--bwp-dark); }
.bwx-btn--honey { background: var(--bwp-honey); color: var(--bwp-dark) !important; }
.bwx-title { font-family: 'Poppins', sans-serif; font-weight: 900; letter-spacing: -0.04em; line-height: 0.95; }
/* Hero negro */
.bwx-hero { position: relative; background: var(--bwp-dark); color: var(--bwp-cream); padding: clamp(112px, 13vh, 140px) clamp(20px, 6vw, 96px) clamp(48px, 6vw, 80px); overflow: hidden; }
.bwx-hero .bwx-title { font-size: clamp(3rem, 9vw, 8.5rem); color: var(--bwp-honey); max-width: 10em; padding: 0.06em 0.06em 0.08em 0; clip-path: inset(0 -0.6em); margin-bottom: 20px; }
.bwx-hero__lead { font-size: clamp(1.05rem, 1.5vw, 1.35rem); line-height: 1.55; max-width: 640px; opacity: 0.85; }
.bwx-hero__nav { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.bwx-hero__nav a { border: 1.5px solid rgba(252, 246, 230, 0.3); color: var(--bwp-cream) !important; font-weight: 700; font-size: 13px; padding: 10px 18px; border-radius: 999px; text-decoration: none !important; transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease; }
.bwx-hero__nav a:hover { background: var(--bwp-honey); color: var(--bwp-dark) !important; border-color: var(--bwp-honey); transform: translateY(-2px); }
/* Secciones */
.bwx-sec { position: relative; padding: clamp(130px, 14vw, 180px) clamp(20px, 6vw, 96px) clamp(80px, 9vw, 130px); }
.bwx-sec--cream { background: var(--bwp-cream); } .bwx-sec--honey { background: var(--bwp-honey); } .bwx-sec--dark { background: var(--bwp-dark); color: var(--bwp-cream); }
.bwx-sec--flat { padding-top: clamp(80px, 9vw, 130px); }
.bwx-head { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr); gap: 24px clamp(32px, 5vw, 96px); align-items: end; margin-bottom: clamp(48px, 6vw, 96px); }
.bwx-head .bwx-title { font-size: clamp(2.3rem, 5.2vw, 5.4rem); max-width: 12em; }
.bwx-head__lead { font-size: clamp(1.05rem, 1.35vw, 1.25rem); line-height: 1.6; padding-left: 22px; border-left: 3px solid rgba(44, 44, 44, 0.5); margin-bottom: 0.35em; }
.bwx-sec--dark .bwx-head__lead { border-left-color: rgba(255, 203, 5, 0.6); }
.bwx-sec--dark .bwx-title { color: var(--bwp-honey); }
.bwx-prose { font-size: clamp(1.05rem, 1.3vw, 1.2rem); line-height: 1.7; max-width: 760px; }
.bwx-prose p + p { margin-top: 1.2em; }
.bwx-prose strong, .bwx-prose b { font-weight: 800; }
.bwx-sub { font-family: 'Poppins', sans-serif; font-weight: 900; font-size: clamp(1.4rem, 2.2vw, 2rem); letter-spacing: -0.03em; line-height: 1.1; margin: 0 0 16px; }
/* En sección oscura el tema pinta los h3 y párrafos en oscuro (reglas de Kadence sobre el elemento): se fuerza el crema */
.bwx-sec--dark .bwx-sub, .bwx-sec--dark .bwx-prose, .bwx-sec--dark .bwx-prose p, .bwx-sec--dark .bwx-prose strong { color: var(--bwp-cream); }
/* Lista de servicios: filas grandes */
.bwx-services { list-style: none; margin: 0; padding: 0; border-top: 2px solid rgba(44, 44, 44, 0.15); }
.bwx-service { display: grid; grid-template-columns: 72px minmax(0, 1fr) minmax(0, 1.25fr) 64px; grid-template-areas: 'num title text link' 'num title tags link'; gap: 16px clamp(24px, 4vw, 56px); align-items: start; padding: clamp(32px, 4vw, 56px) 0; border-bottom: 2px solid rgba(44, 44, 44, 0.15); position: relative; transition: padding-left 0.4s cubic-bezier(0.22, 1, 0.36, 1); }
.bwx-service::before { content: ''; position: absolute; inset: 0 -24px; background: var(--bwp-honey); border-radius: 18px; opacity: 0; transform: scaleX(0.98); transition: opacity 0.35s ease, transform 0.35s ease; z-index: 0; }
.bwx-service:hover::before { opacity: 1; transform: none; }
.bwx-service > * { position: relative; z-index: 1; }
.bwx-service__num { grid-area: num; font-family: 'Poppins', sans-serif; font-weight: 900; font-size: clamp(1.4rem, 2vw, 2rem); letter-spacing: -0.03em; opacity: 0.45; padding-top: 0.2em; }
.bwx-service__title { grid-area: title; word-break: keep-all; overflow-wrap: normal; hyphens: none; font-family: 'Poppins', sans-serif; font-weight: 900; font-size: clamp(1.5rem, 2.6vw, 2.5rem); letter-spacing: -0.035em; line-height: 1; }
.bwx-service__text { grid-area: text; font-size: clamp(1rem, 1.2vw, 1.1rem); line-height: 1.7; opacity: 0.9; }
.bwx-service__link { grid-area: link; align-self: center; display: inline-grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: var(--bwp-dark); color: var(--bwp-honey) !important; font-family: 'Poppins', sans-serif; font-weight: 900; font-size: 1.4rem; text-decoration: none !important; transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1); }
.bwx-service:hover .bwx-service__link { transform: rotate(-45deg); }
/* Marquee negro con líneas caladas (CSS puro) */
.bwx-marquee { position: relative; background: var(--bwp-dark); padding: clamp(140px, 15vw, 190px) 0 clamp(56px, 7vw, 96px); overflow: hidden; }
.bwx-marquee__row { display: flex; white-space: nowrap; width: max-content; font-family: 'Poppins', sans-serif; font-weight: 900; font-size: clamp(2.4rem, 6vw, 6rem); line-height: 1.05; letter-spacing: -0.03em; color: var(--bwp-honey); }
.bwx-marquee__row:nth-child(even) { color: transparent; -webkit-text-stroke: 1.5px var(--bwp-honey); }
.bwx-marquee__row span { flex-shrink: 0; padding-right: 0.5em; }
.bwx-marquee__row--r { animation: bwxMarqueeR 80s linear infinite; } .bwx-marquee__row--l { animation: bwxMarqueeL 80s linear infinite; }
@keyframes bwxMarqueeR { from { transform: translateX(-50%); } to { transform: translateX(0); } }
@keyframes bwxMarqueeL { from { transform: translateX(0); } to { transform: translateX(-50%); } }
/* CTA */
.bwx-cta { text-align: center; }
.bwx-cta .bwx-inner { display: flex; flex-direction: column; align-items: center; }
.bwx-cta .bwx-title { font-size: clamp(2.6rem, 7vw, 7rem); margin-bottom: 20px; padding: 0.06em 0.06em 0.08em; clip-path: inset(0 -0.6em); }
.bwx-cta__text { font-size: clamp(1.05rem, 1.5vw, 1.3rem); line-height: 1.5; max-width: 640px; margin: 0 auto 12px; opacity: 0.9; }
.bwx-cta__sub { font-family: 'Poppins', sans-serif; font-weight: 800; font-size: clamp(1.1rem, 1.8vw, 1.5rem); max-width: 720px; margin: 0 auto 36px; }
/* Formulario */
.bwx-form__grid { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: clamp(32px, 5vw, 96px); align-items: start; }
.bwx-form__box { background: #fff; border-radius: 22px; padding: clamp(24px, 3vw, 44px); box-shadow: 18px 18px 0 var(--bwp-honey); }
.bwx-form__box .kb-form, .bwx-form__box .wp-block-kadence-form { margin: 0; }
.bwx-form__box .kb-field label, .bwx-form__box .kadence-blocks-form-field label { font-weight: 700; font-size: 13px; letter-spacing: 0.06em; text-transform: uppercase; }
.bwx-form__box input, .bwx-form__box textarea { border: 2px solid rgba(44, 44, 44, 0.15) !important; border-radius: 12px !important; font-family: 'Manrope', sans-serif; }
.bwx-form__box input:focus, .bwx-form__box textarea:focus { border-color: var(--bwp-honey) !important; box-shadow: none !important; }
.bwx-form__box .kb-forms-submit, .bwx-form__box button[type="submit"] { background: var(--bwp-dark) !important; color: var(--bwp-honey) !important; border-radius: 999px !important; font-family: 'Poppins', sans-serif; font-weight: 800; padding: 16px 28px !important; border: 0 !important; }
.bwx-faq { margin-top: 32px; }
.bwx-faq details { border-top: 2px solid rgba(44, 44, 44, 0.15); padding: 18px 0; }
.bwx-faq details:last-child { border-bottom: 2px solid rgba(44, 44, 44, 0.15); }
.bwx-faq summary { cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 16px; font-family: 'Poppins', sans-serif; font-weight: 800; font-size: 1.1rem; }
.bwx-faq summary::-webkit-details-marker { display: none; }
.bwx-faq summary::after { content: '+'; font-family: 'Poppins', sans-serif; font-weight: 900; font-size: 1.4rem; width: 36px; height: 36px; border-radius: 50%; background: var(--bwp-dark); color: var(--bwp-honey); display: grid; place-items: center; flex: none; transition: transform 0.3s ease; }
.bwx-faq details[open] summary::after { transform: rotate(45deg); }
.bwx-faq details.is-closing summary::after { transform: rotate(0deg); } /* el JS anima el cierre y quita [open] al acabar: el icono vuelve ya */
.bwx-faq details p { margin: 14px 0 0; line-height: 1.7; opacity: 0.9; max-width: 640px; }
/* Fotos con sombra sólida */
.bwx-photos { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: clamp(24px, 3vw, 48px); align-items: end; }
.bwx-photo { position: relative; border-radius: 20px; overflow: hidden; box-shadow: 18px 18px 0 var(--bwp-honey); aspect-ratio: 4 / 3; margin: 0; }
.bwx-photo--tall { aspect-ratio: 3 / 4; }
.bwx-sec--honey .bwx-photo { box-shadow: 18px 18px 0 var(--bwp-dark); }
.bwx-photo img { position: absolute; inset: -8% 0; width: 100%; height: 116%; object-fit: cover; display: block; }
.bwx-photo--static img { position: static; height: auto; inset: auto; }
/* Cita */
.bwx-quote { background: var(--bwp-dark); color: var(--bwp-cream); border-radius: 22px; padding: clamp(28px, 4vw, 48px); box-shadow: 16px 16px 0 var(--bwp-honey); max-width: 640px; }
.bwx-sec--honey .bwx-quote { box-shadow: 16px 16px 0 #fff; }
.bwx-sec--dark .bwx-quote { background: var(--bwp-honey); color: var(--bwp-dark); box-shadow: 16px 16px 0 var(--bwp-cream); } .bwx-sec--dark .bwx-quote p { color: var(--bwp-dark); } /* Nosotros: "¿Quiénes somos?" es oscura desde el 21/09 (las gotas del bloque de equipo cuelgan sobre ella) */
.bwx-quote p { font-family: 'Poppins', sans-serif; font-weight: 900; font-size: clamp(1.5rem, 2.6vw, 2.4rem); letter-spacing: -0.03em; line-height: 1.1; color: var(--bwp-honey); }
.bwx-quote footer { margin-top: 18px; font-size: 13px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; opacity: 0.75; }
.bwx-two { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 96px); align-items: center; }
/* Equipo (misma tarjeta que la home) */
.bwx-team { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(28px, 4vw, 64px); }
.bwx-member__card { position: relative; aspect-ratio: 4 / 5; border-radius: 24px; background: var(--bwp-honey); box-shadow: 18px 18px 0 var(--bwp-cream); transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1); }
.bwx-member__card figure { position: absolute; left: 4%; right: 4%; bottom: 0; top: -14%; margin: 0; }
.bwx-member__card img { width: 100%; height: 100%; object-fit: contain; object-position: bottom center; display: block; filter: grayscale(1) contrast(1.05); transition: filter 0.5s ease, transform 0.6s cubic-bezier(0.22, 1, 0.36, 1); }
.bwx-member:hover .bwx-member__card { transform: translate(-6px, -6px); }
.bwx-member:hover .bwx-member__card img { filter: none; transform: translateY(-2%) scale(1.03); }
.bwx-member__body { padding: 30px 6px 0 0; }
.bwx-member__name { font-family: 'Poppins', sans-serif; font-weight: 900; font-size: clamp(1.4rem, 2vw, 1.9rem); letter-spacing: -0.03em; line-height: 1; margin: 0 0 8px; color: var(--bwp-honey); }
.bwx-member__role { font-size: 12px; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; opacity: 0.7; margin: 0 0 12px; }
.bwx-member__bio { font-size: 15px; line-height: 1.65; opacity: 0.85; }
/* Portfolio (carrusel del plugin) */
.bwx-portfolio .bwp-carousel { margin-top: 8px; }
/* El pie del carrusel (contador, barra, flechas) está pensado para fondo oscuro: en la sección crema va en tinta oscura */
.bwx-portfolio .bwp-carousel-count { color: var(--bwp-dark); opacity: 1; }
.bwx-portfolio .bwp-carousel-progress { background: rgba(44, 44, 44, 0.15); }
.bwx-portfolio .bwp-carousel-btn { border-color: rgba(44, 44, 44, 0.35); color: var(--bwp-dark); }
.bwx-portfolio .bwp-carousel-btn:hover:not(:disabled), .bwx-portfolio .bwp-carousel-btn:focus-visible { background: var(--bwp-dark); border-color: var(--bwp-dark); color: var(--bwp-honey); }
.bwx-foot { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; margin-top: clamp(40px, 5vw, 64px); }
.bwx-foot p { font-weight: 600; font-size: 1.05rem; }
@media (max-width: 900px) {
  .bwx-head, .bwx-form__grid, .bwx-two, .bwx-photos { grid-template-columns: 1fr; }
  .bwx-head { align-items: start; }
  .bwx-service { grid-template-columns: 48px minmax(0, 1fr); grid-template-areas: 'num title' 'num text' 'num tags' 'num link'; }
  .bwx-service__link { justify-self: start; }
  .bwx-team { grid-template-columns: 1fr; gap: 56px; max-width: 420px; }
}
@media (max-width: 768px) {
  .bwx-hero { padding-top: 104px; }
  .bwx-hero .bwx-title { font-size: clamp(2.6rem, 13vw, 4.5rem); }
  .bwx-photo, .bwx-form__box, .bwx-quote, .bwx-member__card { box-shadow: 12px 12px 0 var(--bwp-honey); margin-right: 12px; }
  .bwx-sec--honey .bwx-photo, .bwx-sec--honey .bwx-quote { box-shadow: 12px 12px 0 var(--bwp-dark); }
  .bwx-sec--dark .bwx-quote { box-shadow: 12px 12px 0 var(--bwp-cream); }
  .bwx-member__card { box-shadow: 12px 12px 0 var(--bwp-cream); }
  .bwx-service::before { inset: 0 -12px; }
  .bwx-marquee__row { font-size: 2.2rem; }
}

/* ---------- Relacionados (carrusel Splide de Kadence): rediseño ---------- */
body.single-post .entry-related-inner-content { position: relative; max-width: 1400px; padding-top: 0 !important; margin-top: 0 !important; }
body.single-post .entry-related-inner-content > .entry-related-title:first-child { margin-top: 0 !important; }
body.single-post .entry-related-title { padding-right: 130px; }
body.single-post .entry-related .splide { position: static; } /* las flechas se posicionan respecto al contenedor del título */
body.single-post .entry-related .splide__arrows { position: absolute; top: 0; right: 0; display: flex; gap: 10px; }
body.single-post .entry-related .splide__arrow { position: static !important; transform: none !important; width: 52px !important; height: 52px !important; border-radius: 50% !important; background: var(--bwp-honey) !important; opacity: 1 !important; border: 0 !important; display: grid; place-items: center; transition: transform 0.3s ease; }
body.single-post .entry-related .splide__arrow svg { fill: var(--bwp-dark) !important; width: 18px; height: 18px; }
body.single-post .entry-related .splide__arrow:hover { transform: translateY(-2px); }
body.single-post .entry-related .splide__arrow--prev svg { transform: scaleX(-1); }
body.single-post .entry-related .loop-entry { display: flex; flex-direction: column; height: 100%; }
body.single-post .entry-related .loop-entry .post-thumbnail { border-radius: 14px; box-shadow: 12px 12px 0 var(--bwp-honey); margin: 0 12px 26px 0; aspect-ratio: 3 / 2; display: block; }
body.single-post .entry-related .loop-entry .post-thumbnail-inner, body.single-post .entry-related .loop-entry .post-thumbnail img { height: 100%; object-fit: cover; }
body.single-post .entry-related .loop-entry .entry-content-wrap { padding: 0 8px 0 0 !important; display: flex; flex-direction: column; flex: 1; }
body.single-post .entry-related .loop-entry .entry-title { font-size: clamp(1.15rem, 1.5vw, 1.4rem) !important; }
body.single-post .entry-related .loop-entry .entry-title a { color: var(--bwp-cream) !important; }
body.single-post .entry-related .loop-entry .entry-title a:hover { background: linear-gradient(transparent 62%, rgba(255, 203, 5, 0.5) 62%); }
body.single-post .entry-related .loop-entry .entry-meta { opacity: 0.55; }
body.single-post .entry-related .loop-entry .entry-summary { opacity: 0.8; font-size: 14px; }
body.single-post .entry-related .loop-entry .entry-footer { margin-top: auto; padding-top: 14px; }
body.single-post .entry-related .loop-entry .post-more-link { color: var(--bwp-honey) !important; border-bottom-color: var(--bwp-honey); font-size: 14px; }
body.single-post .entry-related .loop-entry .post-more-link svg { display: none; }
body.single-post .entry-related .splide__pagination { margin-top: 28px; }
body.single-post .entry-related .splide__pagination__page { background: rgba(252, 246, 230, 0.25) !important; width: 10px; height: 10px; opacity: 1 !important; transform: none !important; }
body.single-post .entry-related .splide__pagination__page.is-active { background: var(--bwp-honey) !important; }
@media (max-width: 768px) { body.single-post .entry-related-title { padding-right: 0; } body.single-post .entry-related .splide__arrows { position: static; margin-bottom: 20px; } }

/* ---------- Servicios: chips de entregables + Nosotros: bloques originales ---------- */
.bwx-service__tags { grid-area: tags; display: flex; flex-wrap: wrap; gap: 6px; margin: 14px 0 0; padding: 0; list-style: none; }
.bwx-service__tags li { font-size: 12px; font-weight: 700; padding: 5px 12px; border-radius: 999px; background: var(--bwp-dark); color: var(--bwp-honey); }
.bwx-service:hover .bwx-service__tags li { background: var(--bwp-dark); }
.bwx-hero--split .bwx-inner { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); gap: clamp(24px, 4vw, 64px); align-items: center; }
.bwx-hero__bust { margin: 0; max-width: 520px; justify-self: end; width: 100%; }
.bwx-hero__bust .glitch-img { margin: 0 !important; max-width: none !important; }
.bwx-hero__bust img { width: 100%; height: auto; display: block; }
@media (max-width: 900px) { .bwx-hero--split .bwx-inner { grid-template-columns: 1fr; } .bwx-hero__bust { justify-self: start; max-width: 360px; } }

/* ---------- Ajustes móvil Servicios / Nosotros (19/09) ---------- */
.bwx-kicker { flex-wrap: wrap; row-gap: 8px; }
.bwx-kicker b { white-space: nowrap; }
@media (max-width: 768px) {
  /* Servicios: filas en una columna */
  .bwx-service { grid-template-columns: 1fr; grid-template-areas: 'num' 'title' 'text' 'tags' 'link'; gap: 10px; padding: 28px 0; }
  .bwx-service__num { font-size: 0.9rem; opacity: 0.6; padding: 0; letter-spacing: 0.12em; }
  .bwx-service__title { font-size: clamp(1.5rem, 8vw, 2rem); }
  .bwx-service__link { margin-top: 6px; width: 48px; height: 48px; }
  .bwx-service::before { inset: 0 -12px; }
  .bwx-hero__nav a { font-size: 12px; padding: 9px 14px; }
  .bwx-marquee { padding-top: 110px; }
  .bwx-form__box { padding: 20px; margin-right: 10px; }
  .bwx-cta .bwx-title { font-size: clamp(2.2rem, 11vw, 3.2rem); white-space: normal; }
}

/* ---------- Contacto ---------- */
.bwx-hero .bwx-title--long { font-size: clamp(2.2rem, 5.6vw, 5.6rem); max-width: 14em; }
.bwx-contact { list-style: none; margin: 40px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.bwx-contact li { background: rgba(252, 246, 230, 0.06); border: 1.5px solid rgba(252, 246, 230, 0.15); border-radius: 18px; padding: 20px 22px; display: flex; flex-direction: column; gap: 8px; transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease; }
.bwx-contact li:hover { background: var(--bwp-honey); border-color: var(--bwp-honey); transform: translateY(-3px); }
.bwx-contact li:hover * { color: var(--bwp-dark) !important; }
.bwx-contact__label { font-size: 11px; font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase; opacity: 0.7; }
.bwx-contact a { font-family: 'Poppins', sans-serif; font-weight: 800; font-size: clamp(1rem, 1.35vw, 1.25rem); color: var(--bwp-honey) !important; text-decoration: none !important; line-height: 1.25; overflow-wrap: anywhere; }
.bwx-contact__note { margin: 18px 0 0; font-family: 'Manrope', sans-serif; font-size: 14px; font-weight: 600; letter-spacing: 0.01em; opacity: 0.7; }
.bwx-photo--wide { aspect-ratio: 21 / 9; max-width: 1100px; margin: 0 auto; }
@media (max-width: 900px) { .bwx-contact { grid-template-columns: 1fr; } }
@media (max-width: 768px) { .bwx-hero .bwx-title--long { font-size: clamp(1.9rem, 8.5vw, 2.6rem); } .bwx-photo--wide { aspect-ratio: 4 / 3; } }

/* =====================================================================
   Páginas legales (body.bw-legal: política de privacidad, cookies):
   hero oscuro con el título y contenido tipográfico sin caja blanca.
   ===================================================================== */
body.bw-legal #inner-wrap > .entry-hero { background: var(--bwp-dark) !important; padding: clamp(150px, 18vw, 220px) clamp(20px, 6vw, 96px) clamp(60px, 7vw, 100px) !important; }
body.bw-legal .entry-hero .entry-hero-container-inner, body.bw-legal .entry-hero .entry-header, body.bw-legal .entry-hero .site-container { max-width: 1240px; margin: 0 auto; text-align: left; background: transparent !important; box-shadow: none !important; padding: 0 !important; }
body.bw-legal .entry-hero .entry-title { font-family: 'Poppins', sans-serif; font-weight: 900; font-size: clamp(2.4rem, 6vw, 5rem); letter-spacing: -0.04em; line-height: 0.98; color: var(--bwp-cream) !important; margin: 0; }
body.bw-legal #inner-wrap { background: var(--bwp-cream); }
body.bw-legal #inner-wrap > .entry-hero { margin-bottom: 0 !important; }
body.bw-legal #primary.content-area { margin-top: 0 !important; padding-top: 0 !important; }
body.bw-legal #primary.content-area { background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%20130%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22%232c2c2c%22%20d%3D%22M0%2C0%20H1440%20V28%20C1400%2C28%201392%2C74%201352%2C74%20C1312%2C74%201308%2C28%201256%2C28%20C1204%2C28%201200%2C104%201152%2C104%20C1104%2C104%201100%2C28%201040%2C28%20C980%2C28%20976%2C60%20936%2C60%20C896%2C60%20892%2C28%20832%2C28%20C772%2C28%20768%2C118%20720%2C118%20C672%2C118%20668%2C28%20600%2C28%20C532%2C28%20528%2C82%20480%2C82%20C432%2C82%20428%2C28%20368%2C28%20C308%2C28%20304%2C96%20248%2C96%20C192%2C96%20188%2C28%20128%2C28%20C68%2C28%2060%2C66%200%2C66%20Z%22%2F%3E%3C%2Fsvg%3E") top center / 100% clamp(50px, 9vw, 130px) no-repeat; }
body.bw-legal .content-bg, body.bw-legal .entry-content-wrap, body.bw-legal article.entry { background: transparent !important; box-shadow: none !important; border: 0 !important; padding: 0 !important; }
body.bw-legal .content-container { max-width: none !important; padding: 0 clamp(20px, 6vw, 96px) !important; }
body.bw-legal .entry-content { max-width: 780px; margin: 0 auto; padding: clamp(90px, 11vw, 160px) 0 clamp(60px, 8vw, 120px); font-family: 'Manrope', sans-serif; color: var(--bwp-dark); }
body.bw-legal .entry-content > :first-child { margin-top: 0 !important; }
body.bw-legal .entry-content h2 { font-family: 'Poppins', sans-serif; font-weight: 800; font-size: clamp(1.5rem, 2.4vw, 2rem); letter-spacing: -0.03em; line-height: 1.1; margin: 2.2em 0 0.6em; padding-left: 18px; border-left: 4px solid var(--bwp-honey); }
body.bw-legal .entry-content h3 { font-family: 'Poppins', sans-serif; font-weight: 800; font-size: 1.25rem; margin: 1.8em 0 0.5em; }
body.bw-legal .entry-content :is(p, li) { font-size: 1.05rem; line-height: 1.7; }
body.bw-legal .entry-content a { color: var(--bwp-dark); font-weight: 700; text-decoration: none; background: linear-gradient(transparent 60%, var(--bwp-honey) 60%); transition: background 0.3s ease; }
body.bw-legal .entry-content a:hover { background: var(--bwp-honey); }

/* Caja "Te puede interesar" al final de las entradas (la añade beewall-seo-fix.php) */
body.single-post .bw-post-related { margin: clamp(40px, 6vw, 72px) 0 0; padding: clamp(24px, 3vw, 36px); background: var(--bwp-dark); color: var(--bwp-cream); border-radius: 20px; }
body.single-post .bw-post-related__kicker { font-family: 'Manrope', sans-serif; font-weight: 700; font-size: 12px; letter-spacing: 0.25em; text-transform: uppercase; color: var(--bwp-honey); margin: 0 0 16px; }
body.single-post .bw-post-related ul { list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 14px 24px; }
body.single-post .bw-post-related li { margin: 0 !important; padding: 0 !important; }
body.single-post .bw-post-related li::before { display: none !important; }
body.single-post .bw-post-related a { display: inline-block; font-family: 'Poppins', sans-serif; font-weight: 800; font-size: 1.05rem; color: var(--bwp-cream) !important; text-decoration: none !important; background: none !important; border-bottom: 2px solid var(--bwp-honey); transition: color 0.3s ease; }
body.single-post .bw-post-related a:hover { color: var(--bwp-honey) !important; }
body.single-post .bw-post-related span { display: block; font-size: 14px; opacity: 0.7; margin-top: 4px; }
