/* PLANTILLA MAESTRA v1 — Gobierno Municipal aplicada a Tu Municipio */
body:has(#modulo_1769){
  --pm-guinda:#6b1930;
  --pm-guinda-oscuro:#501023;
  --pm-guinda-claro:#963054;
  --pm-dorado:#b08a3e;
  --pm-dorado-claro:#c5a055;
  --pm-fondo:#f7f4f1;
  --pm-borde:#e5ddd8;
  --pm-texto:#392f32;
  --pm-gris:#655b5e;
}
body:has(#modulo_1769) .header-pagetitle,
body:has(#modulo_1769) #container_lateral,
body:has(#modulo_1769) #container_lateral *{
  font-family:Aptos,"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,sans-serif!important;
}
body:has(#modulo_1769) #container_lateral > .modulo_Html{
  margin:0!important;
  padding:0!important;
  background:transparent!important;
}
body:has(#modulo_1769) #container_lateral > .modulo_Html > [class^="tu-municipio-"],
body:has(#modulo_1769) #container_lateral > .modulo_Html > .tu-municipio-page{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  background:transparent!important;
  color:var(--pm-texto)!important;
}

/* Encabezado idéntico a Gobierno Municipal */
body:has(#modulo_1769) #container_lateral :is(.tm-titulo,.tmf-titulo,.tc-titulo){
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  display:block!important;
  box-sizing:border-box!important;
  width:100%!important;
  margin:0!important;
  padding:34px 34px 9px!important;
  border:1px solid rgba(176,138,62,.5)!important;
  border-bottom:0!important;
  border-radius:18px 18px 0 0!important;
  background:linear-gradient(135deg,var(--pm-guinda-oscuro) 0%,#711b39 58%,var(--pm-guinda-claro) 100%)!important;
  color:#fff!important;
  font-size:34px!important;
  font-weight:780!important;
  line-height:1.12!important;
  letter-spacing:0!important;
  text-transform:none!important;
  box-shadow:0 12px 30px rgba(80,16,35,.17)!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-titulo,.tmf-titulo,.tc-titulo)::before{
  content:"Municipio de Coyotepec";
  position:relative;
  z-index:2;
  display:table;
  margin:0 0 13px;
  padding:5px 11px;
  border-radius:999px;
  background:var(--pm-dorado-claro);
  color:#3b1723;
  font-size:12px;
  font-weight:800;
  line-height:1.35;
  letter-spacing:.45px;
  text-transform:uppercase;
}
body:has(#modulo_1769) #container_lateral :is(.tm-titulo,.tmf-titulo,.tc-titulo)::after{
  content:"";
  position:absolute;
  z-index:0;
  right:-55px;
  top:-75px;
  width:250px;
  height:250px;
  border-radius:50%;
  background:rgba(255,255,255,.06);
}
body:has(#modulo_1769) #container_lateral :is(.tm-linea,.tmf-linea,.tc-linea){
  display:none!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-subtitulo,.tmf-subtitulo,.tc-subtitulo){
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 20px!important;
  padding:4px 34px 30px!important;
  border:1px solid rgba(176,138,62,.5)!important;
  border-top:0!important;
  border-radius:0 0 18px 18px!important;
  background:linear-gradient(135deg,var(--pm-guinda-oscuro) 0%,#711b39 58%,var(--pm-guinda-claro) 100%)!important;
  color:#f7edf0!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.6!important;
  box-shadow:0 12px 30px rgba(80,16,35,.17)!important;
}

/* Bloques principales */
body:has(#modulo_1769) #container_lateral :is(.tm-presentacion,.tm-seccion,.tmf-seccion,.tc-seccion){
  box-sizing:border-box!important;
  width:100%!important;
  margin:0 0 20px!important;
  padding:20px!important;
  border:1px solid var(--pm-borde)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(76,35,47,.07)!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-seccion-titulo,.tmf-seccion-titulo,.tc-seccion-titulo){
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  box-sizing:border-box!important;
  width:100%!important;
  margin:0 0 15px!important;
  padding:13px 16px!important;
  border:1px solid #eee5e1!important;
  border-left:4px solid var(--pm-dorado)!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#fff,#fbf7f4)!important;
  color:var(--pm-guinda)!important;
  box-shadow:none!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-seccion-titulo,.tmf-seccion-titulo,.tc-seccion-titulo) h2{
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--pm-guinda)!important;
  font-size:22px!important;
  font-weight:760!important;
  line-height:1.2!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-seccion-icono,.tm-item-icono,.tmf-item-icono,.tc-item-icono){
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  width:40px!important;
  height:40px!important;
  margin:0!important;
  border:0!important;
  border-radius:11px!important;
  background:linear-gradient(145deg,var(--pm-guinda-oscuro),#9b315a)!important;
  color:#fff!important;
  font-size:17px!important;
  box-shadow:0 5px 12px rgba(107,25,48,.2)!important;
}

/* Evitar contenedores dentro de contenedores */
body:has(#modulo_1769) #container_lateral .tm-contenido-principal{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(240px,34%)!important;
  align-items:start!important;
  gap:18px!important;
  margin:0 0 20px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-card,.tmf-card,.tc-card,.tm-destacado,.tm-identidad,.tc-gastronomia){
  box-sizing:border-box!important;
  margin:0 0 18px!important;
  padding:20px!important;
  border:1px solid var(--pm-borde)!important;
  border-left:4px solid var(--pm-dorado)!important;
  border-radius:14px!important;
  background:#fff!important;
  color:var(--pm-texto)!important;
  box-shadow:0 6px 18px rgba(76,35,47,.07)!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-card-barra,.tmf-card-barra,.tc-card-barra){
  display:none!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-card-contenido,.tmf-card-contenido,.tc-card-contenido){
  padding:0!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-card,.tmf-card,.tc-card,.tm-destacado,.tm-identidad,.tc-gastronomia) h2{
  margin:0 0 12px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--pm-guinda)!important;
  font-size:22px!important;
  font-weight:760!important;
  line-height:1.25!important;
}

/* Rejillas y tarjetas */
body:has(#modulo_1769) #container_lateral :is(.tm-grid,.tmf-grid,.tc-grid){
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:13px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-item,.tmf-item,.tc-item,.tc-gastronomia-item){
  box-sizing:border-box!important;
  min-width:0!important;
  margin:0!important;
  padding:17px!important;
  border:1px solid #e7dfdb!important;
  border-radius:14px!important;
  background:#fff!important;
  color:var(--pm-texto)!important;
  box-shadow:0 5px 15px rgba(70,43,50,.06)!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-item,.tmf-item,.tc-item,.tc-gastronomia-item) h3{
  margin:12px 0 8px!important;
  color:var(--pm-guinda)!important;
  font-size:17px!important;
  font-weight:740!important;
  line-height:1.25!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-item,.tmf-item,.tc-item,.tc-gastronomia-item) p{
  margin:0!important;
  color:var(--pm-gris)!important;
  font-size:14px!important;
  line-height:1.55!important;
}

/* Imágenes */
body:has(#modulo_1769) #container_lateral .tm-imagen{
  box-sizing:border-box!important;
  margin:0!important;
  padding:12px!important;
  border:1px solid var(--pm-borde)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(76,35,47,.07)!important;
}
body:has(#modulo_1769) #container_lateral .tm-imagen img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:520px!important;
  object-fit:contain!important;
  margin:0 auto!important;
  border:0!important;
  border-radius:10px!important;
}
body:has(#modulo_1769) #container_lateral .tm-imagen-caption{
  margin:9px 0 0!important;
  color:#766b6e!important;
  font-size:12.5px!important;
  line-height:1.4!important;
  text-align:center!important;
}

/* Información secundaria y cierre */
body:has(#modulo_1769) #container_lateral :is(.tm-informacion,.tmf-informacion,.tc-informacion){
  box-sizing:border-box!important;
  margin:16px 0 0!important;
  padding:15px 17px!important;
  border:0!important;
  border-radius:13px!important;
  background:#f7f1f3!important;
  color:var(--pm-guinda)!important;
  box-shadow:none!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-nota,.tmf-nota,.tc-nota){
  display:flex!important;
  justify-content:space-between!important;
  gap:14px!important;
  box-sizing:border-box!important;
  margin:16px 0 0!important;
  padding:15px 18px!important;
  border:0!important;
  border-radius:13px!important;
  background:#f7f1f3!important;
  color:var(--pm-guinda)!important;
  font-size:14px!important;
  font-weight:700!important;
  box-shadow:none!important;
}

/* Gobierno: barrios, áreas y presidencias bajo la misma plantilla */
body:has(#modulo_1769) #container_lateral :is(.tm-localidades,.tm-administracion,.tm-presidentes){
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:12px!important;
  width:100%!important;
}
body:has(#modulo_1769) #container_lateral :is(.tm-localidad,.tm-area,.tm-presidente){
  box-sizing:border-box!important;
  margin:0!important;
  padding:15px!important;
  border:1px solid #e7dfdb!important;
  border-left:4px solid var(--pm-dorado)!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 5px 15px rgba(70,43,50,.06)!important;
}
body:has(#modulo_1769) #container_lateral .tm-presidencia{
  margin:0 0 18px!important;
  border:1px solid rgba(176,138,62,.5)!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,var(--pm-guinda-oscuro),#711b39 58%,var(--pm-guinda-claro))!important;
  box-shadow:0 12px 30px rgba(80,16,35,.17)!important;
}
body:has(#modulo_1769) #container_lateral .tm-presidencia h2{
  color:#fff!important;
  font-family:Aptos,"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,sans-serif!important;
}

/* Responsive */
@media(max-width:900px){
  body:has(#modulo_1769) #container_lateral .tm-contenido-principal{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:640px){
  body:has(#modulo_1769) #container_lateral :is(.tm-titulo,.tmf-titulo,.tc-titulo){
    padding:25px 21px 8px!important;
    font-size:27px!important;
  }
  body:has(#modulo_1769) #container_lateral :is(.tm-subtitulo,.tmf-subtitulo,.tc-subtitulo){
    padding:3px 21px 24px!important;
    font-size:14px!important;
  }
  body:has(#modulo_1769) #container_lateral :is(.tm-presentacion,.tm-seccion,.tmf-seccion,.tc-seccion){
    padding:14px!important;
  }
  body:has(#modulo_1769) #container_lateral :is(.tm-grid,.tmf-grid,.tc-grid,.tm-localidades,.tm-administracion,.tm-presidentes){
    grid-template-columns:1fr!important;
  }
  body:has(#modulo_1769) #container_lateral :is(.tm-nota,.tmf-nota,.tc-nota){
    flex-direction:column!important;
  }
}

/* v1.1 — contraste y coherencia interna */
body:has(#modulo_1769) #container_lateral > .modulo_Html > [class^="tu-municipio-"] > :is(.tm-subtitulo,.tmf-subtitulo,.tc-subtitulo),
body:has(#modulo_1769) #container_lateral > .modulo_Html > .tu-municipio-page > .tm-subtitulo{
  color:#f7edf0!important;
  -webkit-text-fill-color:#f7edf0!important;
  opacity:1!important;
}
body:has(#modulo_1769) #container_lateral .tm-imagen > .tm-imagen-caption{
  position:static!important;
  inset:auto!important;
  display:block!important;
  margin:8px 0 0!important;
  padding:0 2px!important;
  border:0!important;
  background:transparent!important;
  color:#766b6e!important;
  -webkit-text-fill-color:#766b6e!important;
  opacity:1!important;
  text-align:center!important;
}
body:has(#modulo_1769) #container_lateral .tm-presentacion > h2{
  box-sizing:border-box!important;
  width:100%!important;
  margin:0 0 15px!important;
  padding:13px 16px!important;
  border:1px solid #eee5e1!important;
  border-left:4px solid var(--pm-dorado)!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#fff,#fbf7f4)!important;
  color:var(--pm-guinda)!important;
  font-size:22px!important;
  font-weight:760!important;
  line-height:1.2!important;
  box-shadow:none!important;
}
body:has(#modulo_1769) .header-page .header-pagetitle{
  position:relative!important;
  z-index:5!important;
  opacity:1!important;
  color:#fffdf9!important;
}

/* v1.2 — extensión de la plantilla maestra: SIPINNA, Visita Coyotepec y Tu Gobierno */
body:has(#modulo_1755),
body:has(#modulo_1636),
body:has(#modulo_655){
  --pm-guinda:#6b1930;
  --pm-guinda-oscuro:#501023;
  --pm-guinda-claro:#963054;
  --pm-dorado:#b08a3e;
  --pm-fondo:#f7f4f1;
  --pm-borde:#e5ddd8;
  --pm-texto:#392f32;
  --pm-gris:#655b5e;
}
body:has(#modulo_1755) #modulo_1755,
body:has(#modulo_1636) #modulo_1636,
body:has(#modulo_655) #modulo_655,
body:has(#modulo_655) #container_lateral,
body:has(#modulo_655) #container_lateral *{
  font-family:Aptos,"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,sans-serif!important;
}

/* SIPINNA */
body:has(#modulo_1755) #modulo_1755{
  margin:0!important;
  padding:0!important;
  background:transparent!important;
}
body:has(#modulo_1755) .sipinna-coyotepec{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  color:var(--pm-texto)!important;
  font-family:Aptos,"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,sans-serif!important;
}
body:has(#modulo_1755) .sp-linea{display:none!important;}
body:has(#modulo_1755) .sp-titulo{
  box-sizing:border-box!important;
  width:100%!important;
  margin:0!important;
  padding:31px 34px 10px!important;
  border:1px solid rgba(176,138,62,.48)!important;
  border-bottom:0!important;
  border-radius:18px 18px 0 0!important;
  background:linear-gradient(135deg,var(--pm-guinda-oscuro) 0%,#711b39 58%,var(--pm-guinda-claro) 100%)!important;
  color:#fffdf9!important;
  font-size:34px!important;
  font-weight:780!important;
  line-height:1.15!important;
  box-shadow:0 12px 30px rgba(80,16,35,.16)!important;
}
body:has(#modulo_1755) .sp-titulo::before{
  content:"SIPINNA · COYOTEPEC";
  display:block!important;
  width:max-content!important;
  margin:0 0 15px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  background:var(--pm-dorado)!important;
  color:var(--pm-guinda-oscuro)!important;
  font-size:11px!important;
  font-weight:820!important;
  letter-spacing:.08em!important;
  line-height:1!important;
}
body:has(#modulo_1755) .sp-subtitulo{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 20px!important;
  padding:5px 34px 29px!important;
  border:1px solid rgba(176,138,62,.48)!important;
  border-top:0!important;
  border-radius:0 0 18px 18px!important;
  background:linear-gradient(135deg,var(--pm-guinda-oscuro) 0%,#711b39 58%,var(--pm-guinda-claro) 100%)!important;
  color:#f7edf0!important;
  font-size:16px!important;
  line-height:1.6!important;
  box-shadow:0 12px 30px rgba(80,16,35,.16)!important;
}
body:has(#modulo_1755) :is(.sp-card,.sp-video,.sp-item){
  box-sizing:border-box!important;
  border:1px solid var(--pm-borde)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 7px 20px rgba(70,43,50,.07)!important;
}
body:has(#modulo_1755) .sp-card{border-left:4px solid var(--pm-dorado)!important;}
body:has(#modulo_1755) .sp-card-barra{display:none!important;}
body:has(#modulo_1755) .sp-card-contenido{padding:22px!important;}
body:has(#modulo_1755) .sp-destacado{
  box-sizing:border-box!important;
  border:1px solid rgba(176,138,62,.5)!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,var(--pm-guinda-oscuro),#711b39 58%,var(--pm-guinda-claro))!important;
  box-shadow:0 10px 26px rgba(80,16,35,.15)!important;
}
body:has(#modulo_1755) .sp-seccion-titulo{
  box-sizing:border-box!important;
  width:100%!important;
  margin:0 0 15px!important;
  padding:13px 16px!important;
  border:1px solid #eee5e1!important;
  border-left:4px solid var(--pm-dorado)!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#fff,#fbf7f4)!important;
}
body:has(#modulo_1755) .sp-seccion-titulo h2,
body:has(#modulo_1755) .sp-video h2,
body:has(#modulo_1755) .sp-card h2,
body:has(#modulo_1755) .sp-item h3{
  color:var(--pm-guinda)!important;
}
body:has(#modulo_1755) .sp-item{
  min-height:0!important;
  padding:18px!important;
  border-left:4px solid var(--pm-dorado)!important;
}
body:has(#modulo_1755) .sp-item:hover{
  transform:translateY(-2px)!important;
  border-color:var(--pm-dorado)!important;
  box-shadow:0 10px 24px rgba(70,43,50,.11)!important;
}
body:has(#modulo_1755) .sp-video{
  margin-top:19px!important;
  padding:18px!important;
}
body:has(#modulo_1755) .sp-video-contenedor{border-radius:12px!important;}
body:has(#modulo_1755) .sp-nota{display:none!important;}

/* Visita Coyotepec */
body:has(#modulo_1636) #modulo_1636{
  margin:0!important;
  padding:0!important;
  background:transparent!important;
}
body:has(#modulo_1636) .visita-coyotepec{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  color:var(--pm-texto)!important;
  font-family:Aptos,"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,sans-serif!important;
}
body:has(#modulo_1636) .vc-linea{display:none!important;}
body:has(#modulo_1636) .vc-titulo{
  box-sizing:border-box!important;
  width:100%!important;
  margin:0!important;
  padding:31px 34px 10px!important;
  border:1px solid rgba(176,138,62,.48)!important;
  border-bottom:0!important;
  border-radius:18px 18px 0 0!important;
  background:linear-gradient(135deg,var(--pm-guinda-oscuro) 0%,#711b39 58%,var(--pm-guinda-claro) 100%)!important;
  color:#fffdf9!important;
  font-size:34px!important;
  font-weight:780!important;
  line-height:1.15!important;
  box-shadow:0 12px 30px rgba(80,16,35,.16)!important;
}
body:has(#modulo_1636) .vc-titulo::before{
  content:"DESCUBRE COYOTEPEC";
  display:block!important;
  width:max-content!important;
  margin:0 0 15px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  background:var(--pm-dorado)!important;
  color:var(--pm-guinda-oscuro)!important;
  font-size:11px!important;
  font-weight:820!important;
  letter-spacing:.08em!important;
  line-height:1!important;
}
body:has(#modulo_1636) .vc-subtitulo{
  box-sizing:border-box!important;
  width:100%!important;
  margin:0 0 20px!important;
  padding:5px 34px 29px!important;
  border:1px solid rgba(176,138,62,.48)!important;
  border-top:0!important;
  border-radius:0 0 18px 18px!important;
  background:linear-gradient(135deg,var(--pm-guinda-oscuro) 0%,#711b39 58%,var(--pm-guinda-claro) 100%)!important;
  color:#f7edf0!important;
  font-size:16px!important;
  line-height:1.6!important;
  box-shadow:0 12px 30px rgba(80,16,35,.16)!important;
}
body:has(#modulo_1636) .vc-grid{
  gap:14px!important;
}
body:has(#modulo_1636) .vc-card{
  min-height:0!important;
  border:1px solid var(--pm-borde)!important;
  border-left:4px solid var(--pm-dorado)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 7px 20px rgba(70,43,50,.07)!important;
}
body:has(#modulo_1636) .vc-card:hover{
  transform:translateY(-2px)!important;
  border-color:var(--pm-dorado)!important;
  box-shadow:0 10px 24px rgba(70,43,50,.11)!important;
}
body:has(#modulo_1636) .vc-card-barra{display:none!important;}
body:has(#modulo_1636) .vc-card-contenido{padding:19px!important;}
body:has(#modulo_1636) .vc-card h3{color:var(--pm-guinda)!important;}
body:has(#modulo_1636) .vc-card-icono{
  background:#f7f1f3!important;
  color:var(--pm-guinda)!important;
  border-radius:10px!important;
}
body:has(#modulo_1636) .vc-btn{
  border:0!important;
  border-radius:9px!important;
  background:#f7f1f3!important;
  color:var(--pm-guinda)!important;
}
body:has(#modulo_1636) .vc-btn:hover{
  background:var(--pm-guinda)!important;
  color:#fff!important;
}
body:has(#modulo_1636) a.vc-btn[href="/visita-coyotepec"],
body:has(#modulo_1636) a.vc-btn[href="https://www.coyotepec.gob.mx/visita-coyotepec"],
body:has(#modulo_1636) .vc-nota{
  display:none!important;
}

/* Tu Gobierno: menú y páginas documentales */
body:has(#modulo_655) #modulo_655{
  box-sizing:border-box!important;
  margin:0!important;
  padding:14px!important;
  border:1px solid var(--pm-borde)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(70,43,50,.07)!important;
}
body:has(#modulo_655) #menu_lateral{
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
body:has(#modulo_655) #menu_lateral li{
  margin:0 0 6px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  list-style:none!important;
}
body:has(#modulo_655) #menu_lateral li:last-child{margin-bottom:0!important;}
body:has(#modulo_655) #menu_lateral a{
  display:flex!important;
  align-items:center!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-height:48px!important;
  padding:11px 13px!important;
  border:1px solid transparent!important;
  border-radius:11px!important;
  background:transparent!important;
  color:var(--pm-texto)!important;
  font-size:14px!important;
  font-weight:650!important;
  line-height:1.25!important;
  text-decoration:none!important;
  white-space:normal!important;
}
body:has(#modulo_655) #menu_lateral a:hover{
  border-color:#eadde1!important;
  background:#f8f2f4!important;
  color:var(--pm-guinda)!important;
}
body:has(#modulo_655) #menu_lateral li.selected a{
  border-color:var(--pm-guinda)!important;
  background:linear-gradient(135deg,var(--pm-guinda-oscuro),var(--pm-guinda-claro))!important;
  color:#fff!important;
  box-shadow:0 7px 16px rgba(80,16,35,.16)!important;
}
body:has(#modulo_1652) #container_lateral::before,
body:has(#modulo_659) #container_lateral::before,
body:has(#modulo_660) #container_lateral::before,
body:has(#modulo_662) #container_lateral::before,
body:has(#modulo_663) #container_lateral::before{
  display:block!important;
  box-sizing:border-box!important;
  width:100%!important;
  margin:0 0 18px!important;
  padding:33px 30px!important;
  border:1px solid rgba(176,138,62,.48)!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,var(--pm-guinda-oscuro) 0%,#711b39 58%,var(--pm-guinda-claro) 100%)!important;
  color:#fffdf9!important;
  font-size:31px!important;
  font-weight:780!important;
  line-height:1.15!important;
  box-shadow:0 12px 30px rgba(80,16,35,.16)!important;
}
body:has(#modulo_1652) #container_lateral::before{content:"Organigrama";}
body:has(#modulo_659) #container_lateral::before{content:"Aplicabilidad";}
body:has(#modulo_660) #container_lateral::before{content:"Sesiones del Comité";}
body:has(#modulo_662) #container_lateral::before{content:"Guía de Archivos";}
body:has(#modulo_663) #container_lateral::before{content:"Catálogo Documental";}

body:has(#modulo_655) #container_lateral > .modulo_Lista{
  box-sizing:border-box!important;
  width:100%!important;
  margin:0 0 16px!important;
  padding:17px!important;
  border:1px solid var(--pm-borde)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 7px 20px rgba(70,43,50,.07)!important;
}
body:has(#modulo_655) #container_lateral > .modulo_Lista > h2{
  box-sizing:border-box!important;
  width:100%!important;
  margin:0 0 14px!important;
  padding:13px 15px!important;
  border:1px solid #eee5e1!important;
  border-left:4px solid var(--pm-dorado)!important;
  border-radius:11px!important;
  background:linear-gradient(135deg,#fff,#fbf7f4)!important;
  color:var(--pm-guinda)!important;
  font-size:20px!important;
  font-weight:760!important;
  line-height:1.25!important;
}
body:has(#modulo_655) #container_lateral > .modulo_Lista > ul{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:10px!important;
  margin:0!important;
  padding:0!important;
}
body:has(#modulo_655) #container_lateral > .modulo_Lista > ul > li{
  box-sizing:border-box!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  list-style:none!important;
}
body:has(#modulo_655) #container_lateral > .modulo_Lista > ul > li > a{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  box-sizing:border-box!important;
  min-height:62px!important;
  height:100%!important;
  padding:12px 13px!important;
  border:1px solid #e9e0dc!important;
  border-left:4px solid var(--pm-dorado)!important;
  border-radius:11px!important;
  background:#fff!important;
  color:var(--pm-texto)!important;
  font-size:13.5px!important;
  font-weight:650!important;
  line-height:1.35!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
body:has(#modulo_655) #container_lateral > .modulo_Lista > ul > li > a::before{
  content:"PDF";
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 38px!important;
  width:38px!important;
  height:38px!important;
  border-radius:9px!important;
  background:#f7f1f3!important;
  color:var(--pm-guinda)!important;
  font-size:10px!important;
  font-weight:850!important;
  letter-spacing:.04em!important;
}
body:has(#modulo_655) #container_lateral > .modulo_Lista > ul > li > a:hover{
  border-color:#d9c7cc!important;
  background:#fbf7f8!important;
  color:var(--pm-guinda)!important;
  transform:translateY(-1px)!important;
}
body:has(#modulo_655) #container_lateral > .modulo_Lista > ul > li > a > img{
  display:none!important;
}
body:has(#modulo_1652) #modulo_1652{
  box-sizing:border-box!important;
  width:100%!important;
  margin:0!important;
  padding:17px!important;
  border:1px solid var(--pm-borde)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 7px 20px rgba(70,43,50,.07)!important;
}
body:has(#modulo_1652) #modulo_1652 > a{
  position:relative!important;
  display:block!important;
}
body:has(#modulo_1652) #modulo_1652 img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  margin:0!important;
  border-radius:12px!important;
}
body:has(#modulo_1652) #modulo_1652 > a::after{
  content:"PDF · Abrir organigrama";
  position:absolute!important;
  right:14px!important;
  bottom:14px!important;
  padding:9px 12px!important;
  border-radius:9px!important;
  background:rgba(80,16,35,.94)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:760!important;
}
body:has(#modulo_1757) .tgi-lema{display:none!important;}

/* Único ajuste autorizado en Nomenclatura y Escudo: imagen ligeramente mayor */
@media (min-width:901px){
  body:has(#modulo_1770) #modulo_1770 .tm-contenido-principal,
  body:has(#modulo_1772) #modulo_1772 .tm-contenido-principal{
    grid-template-columns:minmax(0,1.55fr) minmax(300px,.9fr)!important;
  }
}
body:has(#modulo_1770) #modulo_1770 .tm-imagen img,
body:has(#modulo_1772) #modulo_1772 .tm-imagen img{
  display:block!important;
  width:100%!important;
  max-width:300px!important;
  height:auto!important;
  margin:0 auto!important;
}

@media (max-width:900px){
  body:has(#modulo_1755) .sp-intro,
  body:has(#modulo_1755) .sp-grid,
  body:has(#modulo_1636) .vc-grid{
    grid-template-columns:1fr!important;
  }
}
@media (max-width:640px){
  body:has(#modulo_1755) .sp-titulo,
  body:has(#modulo_1636) .vc-titulo{
    padding:25px 21px 8px!important;
    font-size:27px!important;
  }
  body:has(#modulo_1755) .sp-subtitulo,
  body:has(#modulo_1636) .vc-subtitulo{
    padding:3px 21px 24px!important;
    font-size:14px!important;
  }
  body:has(#modulo_655) #container_lateral > .modulo_Lista > ul{
    grid-template-columns:1fr!important;
  }
}


/* v1.2.1 — visibilidad del título superior en las secciones ampliadas */
body:has(#modulo_655) .header-page .header-pagetitle,
body:has(#modulo_1755) .header-page .header-pagetitle,
body:has(#modulo_1636) .header-page .header-pagetitle{
  position:relative!important;
  z-index:5!important;
  opacity:1!important;
  visibility:visible!important;
  color:#fffdf9!important;
}
