:root {
  --color-primary: #1e3a8a;
  --color-primary-dark: #172554;
  --color-secondary: #10b981;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: system-ui, -apple-system, sans-serif;
}

/* Hide scrollbar on snap carousels (mobile) */
[style*="scrollbar-width:none"]::-webkit-scrollbar { display: none; }

/* Honeypot field — hidden from real users */
.hp-field {
  position: absolute;
  left: -9999px;
}

/* Blog en móvil: una columna, imágenes adaptables y margen lateral */
@media (max-width: 767px) {
  #noticias-home > .max-w-7xl { padding-left: 15px !important; padding-right: 15px !important; }
  #noticias-home #nw-news-featured { display: block !important; width: 100%; }
  #noticias-home #nw-news-featured [class*="grid"] { display: grid !important; grid-template-columns: 1fr !important; gap: 1.5rem !important; }
  #noticias-home #nw-news-featured article, #noticias-home #nw-news-featured [class*="hidden"] { display: block !important; }
  #noticias-home #nw-news-featured img { display: block !important; width: 100% !important; max-width: 100% !important; height: auto !important; object-fit: contain; border-radius: 0.75rem !important; }
  #noticias-home #nw-news-featured article { width: 100% !important; max-width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; overflow: hidden; border-radius: 1rem; text-align: center !important; }
  #noticias-home #nw-news-featured article h2, #noticias-home #nw-news-featured article h3, #noticias-home #nw-news-featured article p, #noticias-home #nw-news-featured article a { text-align: center !important; margin-left: auto; margin-right: auto; }
}

/* Portada en móvil: contenido más compacto y pegado abajo para no tapar las caras */
@media (max-width: 1023px) {
  #hero.hero-responsive { min-height: 100vh !important; min-height: 100svh !important; align-items: flex-end !important; justify-content: center !important; padding-top: 64px !important; padding-bottom: 1rem !important; }
  #hero.hero-responsive .hero-content-wrapper { padding-bottom: 0 !important; padding-left: 0.75rem !important; padding-right: 0.75rem !important; }
  #hero.hero-responsive h1 { font-size: 1.5rem !important; line-height: 1.15 !important; margin-bottom: 0.5rem !important; }
  #hero.hero-responsive p { font-size: 0.8125rem !important; line-height: 1.4 !important; margin-bottom: 0.75rem !important; padding: 0 0.5rem !important; }
  #hero.hero-responsive .hero-content-wrapper .flex.flex-col { flex-direction: row !important; flex-wrap: wrap !important; justify-content: center !important; gap: 0.5rem !important; }
  #hero.hero-responsive a { font-size: 0.8125rem !important; padding: 0.625rem 1rem !important; margin: 0 !important; }
  #hero.hero-responsive .mt-6 { margin-top: 0.625rem !important; gap: 0.375rem !important; }
  #hero.hero-responsive span.rounded-full { font-size: 11px !important; padding: 0.25rem 0.625rem !important; }
}
