/* --- Tipografía fluida --- */
h1 { font-size: clamp(1.75rem, 3vw + 1.1rem, 3.75rem); line-height: 1.15; }
h2 { font-size: clamp(1.5rem, 2.25vw + 1rem, 3rem);   line-height: 1.2; }
h3 { font-size: clamp(1.25rem, 1.5vw + 0.9rem, 2.25rem); }
h4 { font-size: clamp(1.125rem, 1.1vw + 0.875rem, 1.875rem); }
h5 { font-size: clamp(1rem, 0.75vw + 0.85rem, 1.5rem); }
h6 { font-size: clamp(0.875rem, 0.5vw + 0.75rem, 1rem); }

/* Texto de cuerpo y párrafos */
body, p, li, td, label {
  font-size: clamp(0.9375rem, 0.5vw + 0.8rem, 1.125rem);
}

/* --- Contenedores: padding lateral en móvil --- */
@media (max-width: 768px) {
  .wp-block-cover__inner-container,
  .wp-block-group.has-global-padding,
  .wp-block-group.alignwide {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}

@media (max-width: 480px) {
  .wp-block-cover__inner-container,
  .wp-block-group.has-global-padding {
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }
}

/* --- Evitar texto desbordado --- */
h1, h2, h3, h4, h5, h6, p, li, a, span, td, label {
  word-break: break-word;
  overflow-wrap: break-word;
}

/* --- Imágenes nunca desbordan --- */
img, video, iframe, svg {
  max-width: 100%;
  height: auto;
}

/* --- Botones apilados en móvil muy pequeño --- */
@media (max-width: 480px) {
  .wp-block-buttons {
    flex-direction: column;
    align-items: stretch;
  }
  .wp-block-button__link {
    width: 100%;
    text-align: center;
  }
}
