
/* ===== Navegación y diseño adaptable común ===== */
html { scroll-padding-top: 78px; }
body { overflow-x: clip; }
.site-nav { position: sticky; top: 0; z-index: 10000; background: #5c0f28; color: white; box-shadow: 0 4px 18px #26050d35; font-family: Poppins, Arial, sans-serif; }
.site-nav__inner { max-width: 1248px; margin: auto; padding: 10px clamp(14px, 3vw, 24px); display: flex; justify-content: space-between; align-items: center; gap: 14px; min-height: 66px; }
.site-nav a { color: inherit; text-decoration: none; }
.site-nav__brand { font-size: clamp(.85rem, 2.4vw, 1.05rem); font-weight: 700; line-height: 1.3; }
.site-nav__brand small { display: block; color: #e9b98c; font-size: .7rem; font-weight: 500; letter-spacing: .05em; }
.site-nav__actions { display: flex; align-items: center; gap: 10px; }
.site-nav__home { border: 1px solid #ffffff70; border-radius: 999px; padding: 9px 15px; font-size: .83rem; white-space: nowrap; }
.site-nav__menu { position: relative; }
.site-nav__menu summary { list-style: none; cursor: pointer; border: 1px solid #ffffff80; border-radius: 999px; padding: 9px 15px; font-size: .83rem; font-weight: 600; white-space: nowrap; user-select: none; }
.site-nav__menu summary::-webkit-details-marker { display:none; }
.site-nav__menu[open] summary { background: #7a1838; }
.site-nav__dropdown { position: absolute; right: 0; top: calc(100% + 12px); width: min(355px, calc(100vw - 28px)); max-height: min(70vh, 570px); overflow-y: auto; overscroll-behavior: contain; background: #fff; color: #3c2930; border-radius: 14px; padding: 9px; box-shadow: 0 12px 45px #22071350; display: grid; gap: 3px; }
.site-nav__dropdown a { display: block; border-radius: 8px; padding: 10px 12px; font-size: .85rem; }
.site-nav__dropdown a:hover, .site-nav__dropdown a:focus-visible { background: #f3eee8; color: #7a1838; }
.site-nav__dropdown a[aria-current="page"] { background: #7a1838; color: #fff; font-weight: 700; }
.site-nav__menu summary:focus-visible, .site-nav a:focus-visible { outline: 3px solid #e9b98c; outline-offset: 3px; }
img, video, iframe { max-width: 100%; }
video { height: auto; }
.contenedor, .portada .contenedor, main { min-width: 0; }
@media (max-width: 900px) {
  .portada { min-height: 0 !important; background-image: none !important; }
  .portada > .contenedor { display: flex !important; flex-direction: column !important; gap: 0 !important; padding: 0 !important; }
  .portada .foto-movil { display: block !important; order: 0; width: 100%; height: auto; max-height: 72vh; object-fit: contain; object-position: center; background: #5c0f28; }
  .portada .portada-texto { order: 1; display: flex; flex-direction: column; padding: 22px clamp(16px, 5vw, 32px) 32px !important; width: 100%; min-width: 0; }
  .portada .portada-texto .nombre { order: 0; font-size: clamp(1.9rem, 7vw, 3rem); overflow-wrap: anywhere; }
  .portada .portada-texto .cargo { order: 1; }
  .portada .portada-texto .distrito { order: 2; }
  .portada .portada-texto .logos { order: 3; justify-content: center; margin: 18px 0 22px; gap: 16px; }
  .portada .portada-texto .logos img { max-height: 76px; max-width: 44%; width: auto; object-fit: contain; }
  .portada .portada-texto .bio { order: 4; columns: 1 !important; max-width: 750px; width: 100%; margin-inline: auto; }
  .portada .portada-texto .lema { order: 5; }
  .portada .portada-foto, .portada .contenedor > div[aria-hidden="true"] { display: none !important; }
  .legislativo, .iniciativas-fila, .fotos-dobles, .comisiones, .galeria { grid-template-columns: minmax(0,1fr) !important; }
  .texto-columnas, .vinculacion-texto { columns: 1 !important; }
  .caja-iniciativas .listas { grid-template-columns: minmax(0,1fr) !important; }
  .contenedor { padding-left: 18px; padding-right: 18px; }
  .iniciativas-fila > *, .legislativo > *, .galeria > * { min-width: 0; }
  .barra { gap: 12px; flex-wrap: wrap; }
  .barra img { max-width: 45%; object-fit: contain; }
  .video-informe video, video { max-width: 100%; }
}
@media (max-width: 600px) {
  .site-nav__inner { min-height: 60px; }
  .site-nav__home { display: none; }
  .site-nav__dropdown { right: -2px; }
  .portada .foto-movil { max-height: none; }
  .portada .portada-texto .bio p { text-align: left; overflow-wrap: anywhere; }
  .directorio { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 16px 12px !important; }
  .fotos-dobles, .galeria { gap: 14px; }
  h1, h2, h3 { overflow-wrap: anywhere; }
}
@media (max-width: 380px) { .site-nav__brand { font-size: .78rem; } .site-nav__menu summary { padding: 8px 10px; font-size: .75rem; } }
/* Giselle mantiene su composición móvil original y su video en portada */
@media (max-width: 900px) {
  body.page-giselle .portada .portada-movil-composicion { display: block !important; order: 0; }
  body.page-giselle .portada .video-portada-movil { display: block !important; order: 1; }
  body.page-giselle .portada .portada-texto { order: 2; }
  body.page-giselle .portada .foto-movil { display: none !important; }
  body.page-giselle .portada .portada-texto .logos,
  body.page-giselle .portada .portada-texto .nombre,
  body.page-giselle .portada .portada-texto .cargo,
  body.page-giselle .portada .portada-texto .distrito { display: none !important; }
}
/* Índice principal */
@media (max-width: 900px) {
  .encabezado .contenedor { justify-content: center; }
  .encabezado img { max-width: 44%; max-height: 75px; }
  .directorio { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .texto-columnas { columns: 1 !important; }
}

/* Portada uniforme inspirada en Giselle: nombre, cargo, distrito y logos a la izquierda de la fotografía. */
.portada-movil-unificada { display:none; }
@media(max-width:900px) {
  .portada-movil-unificada {
    display:flex; align-items:center; width:100%; min-height:0; aspect-ratio: 1.67 / 1;
    background-color:#5c0f28; background-image:linear-gradient(90deg,rgba(55,5,9,.38),transparent 66%),var(--portada-foto);
    background-repeat:no-repeat; background-size:cover; background-position:center center;
    color:#fff; overflow:hidden;
  }
  .portada-movil-unificada__datos {width:55%; padding:clamp(10px,3vw,34px); display:flex; flex-direction:column; align-items:center; text-align:center; justify-content:center; gap:0; text-shadow:0 1px 5px #30080a77;}
  .portada-movil-unificada .nombre {font-size:clamp(1.15rem,4.4vw,2.4rem); font-style:italic; font-weight:800; line-height:1.15; margin:0 0 4px; overflow-wrap:normal;}
  .portada-movil-unificada .cargo {font-size:clamp(.83rem,3vw,1.45rem); font-style:italic; line-height:1.3; margin:0 0 4px;}
  .portada-movil-unificada .distrito {font-size:clamp(.78rem,2.8vw,1.25rem); margin:0 0 clamp(8px,2.5vw,22px);}
  .portada-movil-unificada .logos {display:flex; flex-direction:column; align-items:center; gap:clamp(5px,1.4vw,12px); flex-wrap:nowrap; margin:0; width:100%;}
  .portada-movil-unificada .logos img {display:block; width:auto; max-width:min(88%,205px); max-height:clamp(32px,8vw,74px); object-fit:contain;}
  .portada > .contenedor > .foto-movil {display:none !important;}
  .portada .portada-texto > .nombre, .portada .portada-texto > .cargo,
  .portada .portada-texto > .distrito, .portada .portada-texto > .logos {display:none !important;}
  .portada .portada-texto {padding-top:20px !important;}
}
@media(max-width:480px) {
 .portada-movil-unificada {aspect-ratio: 1.55 / 1; background-position:center;}
 .portada-movil-unificada__datos {width:57%; padding:8px;}
 .portada-movil-unificada .nombre {font-size:clamp(1.02rem,4.4vw,1.5rem);}
 .portada-movil-unificada .logos img {max-height:clamp(29px,8vw,43px);}
}

/* Logo azul (Cámara de Diputados): reducción visual del 15% respecto a su tamaño anterior. */
.portada .logos img[alt*="Cámara de Diputados"],
.portada-movil-unificada .logos img[alt*="Cámara de Diputados"],
.portada-movil-identidad .logos img[alt*="Cámara de Diputados"] {
  transform: scale(0.85);
  transform-origin: center center;
}

/* Logo 2° Informe (marcado en azul): 20% menor, solo en las portadas. */
.portada .logos img[src*="Inf%20Blanco"],
.portada-movil-unificada .logos img[src*="Inf%20Blanco"],
.portada-movil-identidad .logos img[src*="Inf%20Blanco"],
.portada .logos img[src*="Inf Blanco"],
.portada-movil-unificada .logos img[src*="Inf Blanco"],
.portada-movil-identidad .logos img[src*="Inf Blanco"] {
  transform: scale(0.8);
  transform-origin: center center;
}

/* Inicio: logo guinda del Segundo Informe 20% más pequeño en escritorio. */
@media (min-width: 901px) {
  .encabezado .contenedor img[alt*="Informe"] {
    transform: scale(0.8);
    transform-origin: center right;
  }
}

/* AJUSTE FINAL: logo guinda del 2.º Informe en la página de inicio.
   20% menos respecto a la versión anterior en TODOS los tamaños.
   Escritorio: 0.8 anterior x 0.8 = 0.64. Móvil: 0.8. */
@media (min-width: 901px) {
  .encabezado .contenedor img[alt*="Informe"] {
    transform: scale(0.64) !important;
    transform-origin: center right;
  }
}
@media (max-width: 900px) {
  .encabezado .contenedor img[alt*="Informe"] {
    transform: scale(0.8) !important;
    transform-origin: center right;
  }
}
