/* AG Certificaciones - Capa responsive global */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-behavior: smooth; }
body { min-width: 0; overflow-x: hidden; }
img, picture, video, canvas, svg { max-width: 100%; height: auto; }
iframe, embed, object { max-width: 100%; }
input, select, textarea, button { max-width: 100%; font: inherit; }
textarea { resize: vertical; }
pre, code { max-width: 100%; overflow-wrap: anywhere; white-space: pre-wrap; }
.container, .pub-main, main, section, article { min-width: 0; }

/* Tablas: desplazamiento horizontal seguro sin romper la página */
table { max-width: 100%; }
.table-responsive, .responsive-table-wrap { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }

/* Contenido CMS que pueda contener HTML pegado */
.cms-bloque-contenido img,
.cms-bloque-contenido video,
.cms-bloque-contenido iframe,
.cms-bloque-contenido table { max-width: 100% !important; }
.cms-bloque-contenido iframe { width: 100%; }

@media (max-width: 1024px) {
  body { background-attachment: scroll !important; }
  .container { width: 100%; padding-left: 1.25rem; padding-right: 1.25rem; }
  h1 { overflow-wrap: anywhere; }
}

@media (max-width: 768px) {
  html { font-size: 15px; }
  .container { padding-left: 1rem; padding-right: 1rem; }
  section { max-width: 100vw; }
  iframe[src*="youtube"], iframe[src*="youtu.be"], iframe[src*="vimeo"] { aspect-ratio: 16 / 9; height: auto !important; }
  [style*="grid-template-columns"] { min-width: 0; }
  .hero-content { width: calc(100% - 2rem) !important; }
  .slider-controls { max-width: calc(100% - 1rem); }
}

@media (max-width: 480px) {
  html { font-size: 14px; }
  .container { padding-left: .85rem; padding-right: .85rem; }
  h1, h2, h3 { line-height: 1.15; }
  .btn, button, input[type="submit"], input[type="button"] { min-height: 42px; }
}
