/* =========================================================
   nudo — añadidos para WordPress
   (styles.css es el mismo del diseño en HTML; aquí va lo que solo existe en WordPress)
   ========================================================= */

/* barra de administración: el encabezado fijo y el menú del celular bajan con ella */
.admin-bar .site-header { top: 32px; }
.admin-bar .menu { padding-top: 128px; }
@media (max-width: 782px) {
  .admin-bar .site-header { top: 46px; }
  .admin-bar .menu { padding-top: 142px; }
}
@media (max-width: 600px) {
  /* en pantallas pequeñas la barra no es fija: el encabezado vuelve arriba al bajar */
  .admin-bar .site-header.scrolled { top: 0; }
}

.nowrap { white-space: nowrap; }

/* cambio de idioma (es / en): al final del menú, un poco más apagado */
.nav .lang { opacity: .65; transition: opacity .3s; }
.nav .lang:hover, .nav .lang:focus-visible { opacity: 1; }
.menu-foot { display: flex; flex-wrap: wrap; gap: 8px 24px; }
.menu-foot .lang { font-family: var(--head); }

/* imágenes a todo el ancho: nunca más altas que la pantalla (una página vertical
   a sangre ocuparía dos pantallas); la imagen se centra en su franja */
.b-full img, .b-full video { max-height: 88vh; object-fit: contain; }

/* bloque «Imagen o video a todo el ancho» con ancho mediano o pequeño */
.b-full.is-mediano, .b-full.is-pequeno { width: 100%; justify-self: center; }
.b-full.is-mediano { max-width: 760px; }
.b-full.is-pequeno { max-width: 520px; }

/* textos del editor: párrafos, títulos y listas dentro de un .b-text */
.b-text > * { margin: 0; }
.b-text > * + * { margin-top: 1em; }
.b-text h2, .b-text h3, .b-text h4 { font-family: var(--head); font-weight: 400; letter-spacing: -.02em; line-height: 1.1; }
.b-text h2 { font-size: clamp(26px, 2.6vw, 38px); }
.b-text h3, .b-text h4 { font-size: clamp(21px, 1.8vw, 28px); }
.b-text * + h2, .b-text * + h3 { margin-top: 1.4em; }
.b-text ul, .b-text ol { padding-left: 1.2em; }
.has-text-align-center { text-align: center; }
.has-text-align-right { text-align: right; }

/* nosotras: tantas columnas como personas, y el texto al lado */
@media (min-width: 901px) {
  .nos-grid { grid-template-columns: repeat(var(--personas, 2), minmax(0, 320px)) minmax(0, 1fr); }
}

/* página sin plantilla (p. ej. política de privacidad) */
.page-text { max-width: 68ch; }
