/* ==========================================================
   Portal Monagas - Estabilidad visual y rendimiento 2026
   Capa final: corrige deformaciones, huecos, justificado agresivo
   y efectos costosos sin alterar la identidad institucional.
   ========================================================== */
html{overflow-x:hidden}
body{overflow-x:hidden!important}
main#contenido,main#contenido *{min-width:0}
img,video,iframe,svg{max-width:100%}
img,video{height:auto}

/* Ritmo vertical predecible */
main#contenido section{padding-block:clamp(38px,5vw,72px)}
main#contenido .page-hero{padding-top:clamp(34px,4vw,58px);padding-bottom:clamp(22px,3vw,36px)}
.container{width:100%;max-width:var(--max,1240px);margin-inline:auto}
.section-head{align-items:flex-start!important;gap:20px!important}
.section-head>*{min-width:0}

/* Ninguna cuadrícula debe estirar tarjetas vacías hasta la altura de otra. */
.grid-2,.grid-3,.grid-4,.grid-5,.detail-grid{align-items:start!important}
.grid-2>*,.grid-3>*,.grid-4>*,.grid-5>*,.detail-grid>*{height:auto!important;min-height:0!important;align-self:start!important}
.card,.info-item,.page-box{height:auto!important;min-height:0!important}
.card{overflow:hidden!important}
.card>*{max-width:100%}

/* Texto: se elimina el justificado global que abría huecos entre palabras. */
main#contenido p,
main#contenido li,
main#contenido .hero-copy,
main#contenido .card p,
main#contenido .info-item,
main#contenido .section-head p{
  text-align:left!important;
  text-align-last:auto!important;
  text-indent:0!important;
  word-spacing:normal!important;
  letter-spacing:normal;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:auto!important;
  -webkit-hyphens:auto!important;
}
/* Solo documentos / lectura larga conservan justificación y sangría. */
body[data-page-path^="gobernacion/historia"] .history-content p,
.news-rich-content p{
  text-align:justify!important;
  text-align-last:left!important;
  text-indent:1.45rem!important;
  hyphens:auto!important;
  -webkit-hyphens:auto!important;
  overflow-wrap:normal!important;
  line-height:1.76!important;
}
.history-content p{max-width:78ch}
.news-rich-content{max-width:82ch}

/* Títulos y enlaces nunca deben salirse o abrir la cuadrícula. */
h1,h2,h3,h4,.nav-link,.btn,.card-link{overflow-wrap:break-word;word-break:normal}
.btn,.card-link{white-space:normal!important}

/* Formularios públicos: alturas, baseline y separación uniformes. */
.form{align-items:start!important;gap:16px!important}
.form>*,.form label{min-width:0!important}
.form label{align-self:start!important;align-content:start!important}
.form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.form select{height:48px!important;min-height:48px!important;line-height:1.25!important}
.form textarea{min-height:132px!important;line-height:1.55!important}
.form input,.form select,.form textarea{max-width:100%!important}
.form select{text-overflow:ellipsis}
.support-form-section{overflow:hidden}
.support-form-section>.form{box-shadow:none!important;border-radius:18px!important;padding:18px!important}
.support-name-grid{align-items:start!important}
.support-name-grid>label{display:grid!important;grid-template-rows:auto 48px!important;gap:7px!important}
.support-name-grid .field-label{display:flex!important;align-items:baseline!important;gap:8px!important;min-height:21px!important;flex-wrap:wrap}
.support-name-grid .support-field-hint{display:inline!important;margin:0!important;font-size:.72rem!important;font-weight:700!important;color:#718096!important}
.support-inline,.support-inline.phone{align-items:stretch!important}
.support-inline>*,.support-inline.phone>*{height:48px!important;min-height:48px!important}

/* Multimedia enriquecida: nunca sale de la tarjeta. */
.rich-canvas,.news-rich-content{overflow-wrap:break-word}
.rich-canvas img,.news-rich-content img{display:block;max-width:100%!important;height:auto!important;margin:1rem auto;border-radius:14px}
.rich-canvas video,.news-rich-content video{display:block;width:100%!important;max-width:100%!important;height:auto!important;margin:1rem auto;border-radius:14px}
.rich-canvas iframe,.news-rich-content iframe{display:block;width:100%!important;max-width:100%!important;aspect-ratio:16/9;height:auto!important;min-height:0!important;margin:1rem auto;border:0;border-radius:14px}

/* Rendimiento: se neutralizan efectos 3D, partículas visuales y filtros caros. */
.portal-particles,.neon-cursor-aura,.portal-scroll-progress{display:none!important}
.neon-tilt,.neon-tilt:hover,.card:hover,.service-item:hover,.sistema-card:hover{
  transform:none!important;
  filter:none!important;
}
.ux-reveal,.ux-reveal.ux-visible{opacity:1!important;transform:none!important;transition:none!important}
main#contenido .card,
main#contenido .btn,
main#contenido .card-link,
.header .nav-link{
  will-change:auto!important;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease!important;
}
main#contenido .card:hover{box-shadow:0 14px 34px rgba(15,35,55,.10)!important}

/* Chat: mantener funcional sin blur/filtros continuos. */
#chatAssistant .chat-btn,#chatAssistant .chat-btn img,#chatAssistant .chat-window,#chatAssistant .chat-nudge{
  will-change:auto!important;
  filter:none!important;
}
#chatAssistant .chat-window{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

@media(max-width:900px){
  .grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .detail-grid{grid-template-columns:1fr!important}
}
@media(max-width:720px){
  main#contenido section{padding-block:34px}
  .grid-2,.grid-3,.grid-4,.grid-5{grid-template-columns:1fr!important}
  .page-box,.card{padding:20px!important}
  .form{grid-template-columns:1fr!important;padding:18px!important}
  .form .full{grid-column:1!important}
  .support-inline,.support-inline.phone{grid-template-columns:1fr!important}
  body[data-page-path^="gobernacion/historia"] .history-content p,
  .news-rich-content p{
    text-align:left!important;
    text-indent:0!important;
    hyphens:none!important;
  }
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
