/* Diseño v2 (Tailwind + estos estilos). Reemplaza a estilo.css conforme se migran las páginas. */

html { background: #01262f; scroll-behavior: smooth; scroll-padding-top: 5rem; }

/* Hero: mar del header original bajo un degradado de la paleta */
.hero {
  background-image:
    linear-gradient(100deg, rgba(1, 38, 47, .96) 25%, rgba(1, 38, 47, .55) 100%),
    url('../imagenes/header.jpg');
  background-size: cover;
  background-position: center;
}

/* Contenedor de AdSense: nunca más ancho que su columna */
.ad-box {
  max-width: 100%;
  overflow: hidden;
  min-height: 120px;
  padding: .75rem;
  border-radius: 1rem;
  background: rgba(255, 255, 255, .6);
  contain: layout paint;
}

.ad-box ins.adsbygoogle {
  display: block !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

/* Anuncios que AdSense inserta directo en el body (auto ads): que no rompan el pie */
body > ins.adsbygoogle,
body > .google-auto-placed {
  max-width: 100% !important;
  overflow: hidden !important;
  background: #01262f;
  margin: 0 !important;
}

/* Contenido de artículos (HTML guardado desde el administrador) */
.contenido { line-height: 1.75; font-size: 1.0625rem; overflow-wrap: anywhere; }
.contenido > * + * { margin-top: 1rem; }
.contenido h1, .contenido h2, .contenido h3, .contenido h4 { font-weight: 800; line-height: 1.25; margin-top: 2rem; color: #01262f; }
.contenido h1 { font-size: 1.875rem; }
.contenido h2 { font-size: 1.5rem; padding-bottom: .35rem; border-bottom: 3px solid #31d5ee; }
.contenido h3 { font-size: 1.25rem; }
.contenido h4 { font-size: 1.1rem; }
.contenido a { color: #c4472a; font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.contenido a:hover { color: #eb6c44; }
.contenido ul { list-style: disc; padding-left: 1.5rem; }
.contenido ol { list-style: decimal; padding-left: 1.5rem; }
.contenido li + li { margin-top: .35rem; }
.contenido img, .contenido video { max-width: 100%; height: auto; border-radius: .75rem; }
.contenido iframe { max-width: 100%; }
.contenido blockquote { border-left: 4px solid #31d5ee; background: #fff; padding: .75rem 1rem; border-radius: 0 .75rem .75rem 0; }
.contenido table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.contenido th, .contenido td { border: 1px solid rgba(60, 37, 0, .2); padding: .5rem .75rem; }
.contenido th { background: #fedcba; }
.contenido .img-fluid { max-width: 100%; height: auto; }

/* Resumen recortado a 3 líneas en listados */
.recorte-3 { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
