/* D&M — Segunda edición: composición, materia y movimiento. */
body{background:var(--ambiente,var(--papel));transition:background-color .9s ease}
.lectura{position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:var(--oro);transform:scaleX(var(--lectura,0));transform-origin:left;pointer-events:none}
.principios li{display:flex;align-items:center;gap:10px}
.principios li::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--oro-oscuro);flex:none}
.entes{background:#fff;padding:40px 0}
.entes-lista{align-items:center}
.entes-lista li{display:flex;min-height:60px;flex-direction:column;justify-content:center}
.logo-institucion{width:100%;height:62px;object-fit:contain;mix-blend-mode:multiply}
.entes-lista li:nth-child(3) img{max-width:142px;margin:auto}
.logo-institucion.logo-contraloria{width:140px;max-width:100%;height:62px;object-fit:cover;margin:auto}
.ente-ico{font-size:1rem;margin-bottom:4px}
.btn{position:relative;overflow:hidden;border-radius:2px;transition:background .35s,color .35s,border-color .35s,transform .5s var(--curva),box-shadow .5s}
.btn::after{content:'↗';margin-left:18px;font-size:1.1em;transition:transform .45s var(--curva)}
.btn:hover::after{transform:translate(3px,-3px)}
.nav-cta::after,.cookies .btn::after{display:none}
.btn-oro:hover{box-shadow:0 8px 30px #c9ac7d22}
.enlace-texto{position:relative;border:0}
.enlace-texto::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform-origin:left;transition:transform .45s var(--curva)}
.enlace-texto:hover::after{transform:scaleX(.55)}
/* Práctica: líneas abiertas, sin tarjetas, iconos genéricos ni números. */
#areas{border-top:0}
.especialidades-composicion{display:grid;grid-template-columns:.75fr 1.25fr;gap:72px;align-items:stretch}
.especialidades-foto{position:relative;overflow:hidden;min-height:540px}
.especialidades-foto img{height:100%;width:100%;object-fit:cover;object-position:64% center}
.especialidades-foto::after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0d1921d9)}
.especialidades-foto figcaption{position:absolute;bottom:32px;left:30px;right:24px;z-index:1;color:#fff;font-size:1rem;line-height:1.6;letter-spacing:-.02em}
.areas{display:block;border:0;counter-reset:none}
.area{display:block;border:0;border-bottom:1px solid #aeb9b85c;padding:30px 52px 30px 0;position:relative;transition:padding-left .55s var(--curva),border-color .4s,background .4s}
.area:first-child{border-top:1px solid #aeb9b85c}
.area::before{display:none}
.area::after{content:'↗';position:absolute;right:3px;top:30px;font-size:1.45rem;color:var(--oro-oscuro);transition:transform .5s var(--curva),color .3s}
.area h3{font-size:clamp(1.35rem,2vw,1.85rem);line-height:1.3;max-width:none}
.area p{margin-top:12px;font-size:.875rem;line-height:1.8;max-width:570px}
.area-mas{display:block;font-size:.6875rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;margin-top:15px;text-decoration:none;color:var(--gris)}
.area:hover,.area:focus-visible{padding-left:16px;background:transparent;border-color:var(--oro-oscuro)}
.area:hover::after{transform:translate(3px,-3px);color:var(--tinta)}
/* Ruta: amarillo mineral, azul tinta, cambios de pestaña suaves. */
#rutas{background:#efe1bc;position:relative;isolation:isolate;overflow:clip}
#rutas::before{content:'';position:absolute;width:720px;height:720px;border:1px solid #b2996940;border-radius:50%;right:-300px;top:-360px;z-index:-1;pointer-events:none}
#rutas .sobrelinea{color:#78613c!important}
.ventana{border-color:#9a845647}
.rutas{grid-template-columns:.9fr 1.1fr;min-height:550px}
.rutas-lista{border-right:1px solid #9a845647;padding:26px 40px 26px 0}
.rutas-lista button{border-color:#9a84563d;padding:24px 20px;align-items:center;justify-content:space-between;gap:22px;transition:background .45s,color .45s,transform .45s var(--curva)}
.rutas-lista button[aria-selected=true]{background:var(--tinta);color:#fff}
.rutas-lista button[aria-selected=true]::before{display:none}
.rutas-lista button[aria-selected=true] small{color:#c3ced0}
.rutas-lista button:not([aria-selected=true]):hover{background:#f8f0d9}
.ruta-flecha{font-size:1.45rem;color:#967a47;transition:transform .45s var(--curva)}
.rutas-lista button[aria-selected=true] .ruta-flecha{color:#e2c990;transform:rotate(45deg)}
.rutas-paneles{position:relative;min-width:0;align-self:start}
.paneles-animados{position:relative}
.paneles-animados.cambiando-panel{overflow:clip}
.paneles-animados>.ruta,.paneles-animados>.demo-panel{animation:none}
.ruta{padding:44px 0 44px 48px;animation:entrada-ruta .6s var(--curva)}
.ruta .linea{gap:22px}
.linea li{border-color:#9a845647;padding-left:15px}
.linea li::before{content:'';position:absolute;left:0;top:22px;width:4px;height:4px;border-radius:50%;background:#927849}
@keyframes entrada-ruta{from{opacity:0;transform:translateX(15px)}to{opacity:1;transform:none}}
/* Herramienta propia: demostración interactiva, no captura de un producto real. */
.tecno{padding:110px 0;background:#11252e;overflow:clip}
.tecno::after{content:'';position:absolute;width:600px;height:600px;right:-370px;bottom:-400px;border:1px solid #c9ac7d3a;border-radius:50%;pointer-events:none}
.tecno-fila{grid-template-columns:.85fr 1.15fr;gap:66px}
.tecno-texto h2{font-size:clamp(2rem,3.3vw,3.2rem)}
.tecno-puntos{margin:22px 0 30px}
.tecno-puntos li{padding:12px 0}
.tecno-visual{min-width:0;padding:0}
.demo{background:#f6f7f3;color:var(--tinta);border:1px solid #dfe6e2;border-radius:9px;overflow:hidden;box-shadow:0 35px 80px #06121a55;position:relative}
.demo-marca{padding:19px 23px;display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid #dce1dd}
.demo-marca>span:first-child{display:flex;align-items:center;gap:14px}
.demo-marca b{font:600 28px/1 var(--marca)}
.demo-marca>span:first-child>span{font-size:.6875rem;border-left:1px solid #b5c1bd;padding-left:14px}
.demo-privado{font-size:.5625rem;letter-spacing:.035em;color:#657971;display:flex;align-items:center;gap:6px}
.demo-privado::before{content:'';height:5px;width:5px;border-radius:50%;background:#79978b}
.demo-saludo{display:flex;align-items:center;justify-content:space-between;padding:24px 26px 20px}
.demo-etiqueta{font-size:.625rem;letter-spacing:.1em;text-transform:uppercase;color:#718078}
.demo-saludo h3{font-size:1.5rem;line-height:1.2;margin-top:10px}
.demo-avatar{width:36px;height:36px;border:1px solid #d2dbd3;border-radius:50%;display:grid;place-items:center;font-size:.625rem;color:#718078}
.demo-tabs{display:flex;padding:0 26px;border-bottom:1px solid #d7dfd8;gap:24px}
.demo-tabs button{border:0;background:transparent;position:relative;padding:10px 0 14px;font-size:.6875rem;color:#5f716b;font-weight:500}
.demo-tabs button::after{content:'';height:2px;position:absolute;left:0;right:0;bottom:-1px;background:var(--tinta);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--curva)}
.demo-tabs button[aria-selected=true]{color:var(--tinta)}
.demo-tabs button[aria-selected=true]::after{transform:scaleX(1)}
.demo-tabs button:hover{color:#a17f47}
.demo-escenario{padding:24px 26px 0;min-height:286px}
.demo-panel{animation:demo-entrar .65s var(--curva)}
.demo-subtitulo{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px;font-size:.625rem;font-weight:600}
.demo-subtitulo span:last-child{font-size:.5625rem;font-weight:400;color:#6c7d73}
.demo-expediente{display:flex;align-items:center;gap:12px;border:0;border-bottom:1px solid #dce2dc;background:transparent;width:100%;text-align:left;padding:16px 0}
button.demo-expediente{background:#e7eee7;margin:0 -12px;padding:16px 12px;width:calc(100% + 24px);border-radius:4px;transition:background .3s,transform .4s var(--curva)}
button.demo-expediente:hover{background:#dae6db;transform:translateX(3px)}
.demo-archivo{color:#819388;font-size:1rem;flex:none}
.demo-expediente b{display:block;font-size:.6875rem;font-weight:500;line-height:1.5}
.demo-expediente small{display:block;font-size:.5625rem;color:#6d7d76;margin-top:3px}
.demo-estado{margin-left:auto;white-space:nowrap;background:#d9e5d8;color:#405e48;padding:4px 7px;border-radius:3px;font-size:.5rem;letter-spacing:.01em}
.demo-estado.neutro{background:#e9ece7;color:#5d7166}
.demo-ayuda{font-size:.5625rem;color:#728177;padding:18px 0 8px;display:flex;justify-content:space-between;gap:14px}
.demo-historia{padding:4px 0 0 8px}
.demo-historia li{position:relative;padding:0 26px 27px 25px;border-left:1px solid #c5d2c7;font-size:.75rem}
.demo-historia li::before{content:'';position:absolute;left:-4px;top:4px;width:7px;height:7px;background:#a5b7a9;border-radius:50%}
.demo-historia li:last-child{border-color:transparent;padding-bottom:15px}
.demo-historia small{display:block;font-size:.625rem;color:#728177;margin-top:5px}
.demo-historia b{position:absolute;right:3px;top:0;font-weight:400;color:#64806b}
.demo-historia .actual::before{background:var(--oro-oscuro);box-shadow:0 0 0 4px #c9ac7d26}
.demo-nota{display:flex;gap:12px;padding:12px 14px;background:#e7ece5;font-size:.625rem;color:#52685b;border-left:2px solid #aabdaa}
.demo-nota>span{color:#a88752}
.demo-panorama{display:flex;gap:40px;align-items:center;padding:15px 14px 30px}
.demo-orbita{width:130px;height:130px;border-radius:50%;background:conic-gradient(#253f47 0 33%,#c8ab7d 33% 66%,#a8bfb0 66% 100%);display:grid;place-items:center;flex:none;transform:rotate(-25deg)}
.demo-orbita>span{width:105px;height:105px;border-radius:50%;background:#f6f7f3;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.5625rem;color:#718078;transform:rotate(25deg)}
.demo-orbita b{font-size:2.25rem;font-weight:500;line-height:1.2;color:var(--tinta)}
.demo-panorama ul{flex:1;font-size:.6875rem}
.demo-panorama li{display:flex;align-items:center;gap:8px;margin:13px 0}
.demo-panorama li b{margin-left:auto;font-weight:500}
.demo-panorama i{width:5px;height:5px;background:#253f47;border-radius:50%;flex:none}
.demo-panorama li:nth-child(2) i{background:#c8ab7d}.demo-panorama li:nth-child(3) i{background:#a8bfb0}
.demo-pie{border-top:1px solid #dce2dc;padding:12px 20px;display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:.5rem;color:#6e7c76}
.demo-reproduccion{border:0;background:transparent;font-size:.5625rem;display:flex;gap:10px;align-items:center;padding:5px;color:#435e50;white-space:nowrap}
.demo-reproduccion:hover{color:#9a7843}
.demo-progreso{height:2px;background:#e0e7df}
.demo-progreso span{display:block;width:100%;height:100%;background:#b29a70;transform:scaleX(0);transform-origin:left}
.demo.reproduciendo .demo-progreso span{animation:demo-tiempo 7s linear forwards}
.tecno-firma{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;color:#cfb68f;font-size:.625rem;margin-top:22px;letter-spacing:.025em}
.tecno-firma span{color:#9caeb4}
@keyframes demo-tiempo{to{transform:scaleX(1)}}
@keyframes demo-entrar{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
/* Método: imagen de atmósfera y secuencia desplegable. */
.metodo-composicion{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}
.metodo-foto{position:sticky;top:calc(var(--nav) + 35px);height:510px;overflow:hidden}
.metodo-foto img{width:100%;height:100%;object-fit:cover;object-position:45% center}
.metodo-foto::after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#0d1921e8)}
.metodo-foto figcaption{position:absolute;bottom:36px;left:30px;right:24px;color:#f6f5eb;z-index:1;font-size:1.25rem;letter-spacing:-.03em;line-height:1.45}
.metodo-foto figcaption>span{display:block;color:#c9ac7d;font-size:.625rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:20px}
.etapa{position:relative;border-bottom:1px solid #bac7c04f}
.etapa summary{display:flex;align-items:center;gap:22px;padding:25px 0;cursor:pointer;list-style:none}
.etapa summary::-webkit-details-marker{display:none}
.etapa summary>span:nth-child(2){flex:1}
.etapa small{display:block;font-size:.625rem;letter-spacing:.12em;text-transform:uppercase;color:#78877c;margin-bottom:9px}
.etapa strong{font-size:clamp(1.15rem,1.7vw,1.6rem);font-weight:500;letter-spacing:-.035em;line-height:1.3;display:block}
.etapa-marca{width:9px;height:9px;border:1px solid #8d9c91;border-radius:50%;flex:none;position:relative;transition:background .4s,box-shadow .4s}
.etapa[open] .etapa-marca{background:var(--oro-oscuro);border-color:var(--oro-oscuro);box-shadow:0 0 0 6px #c9ac7d2b}
.etapa summary:hover .etapa-marca{background:var(--oro)}
.etapa .acordeon-cuerpo>div{padding:0 35px 24px 31px}
.etapa .acordeon-cuerpo p{font-size:.875rem;color:var(--gris)}
.etapa p.etapa-resultado{border-left:1px solid #af9875;padding-left:18px;margin-top:23px;font-size:.8125rem;color:var(--tinta)}
.etapa-resultado>span{display:block;font-size:.5625rem;color:#8b734e;letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px}
.acordeon-icono{position:relative;width:27px;height:27px;border:1px solid #a7b3aa80;border-radius:50%;flex:none;transition:transform .45s var(--curva),background .35s,border-color .35s}
.acordeon-icono::before,.acordeon-icono::after{content:'';position:absolute;background:#6e8076;width:9px;height:1px;left:8px;top:12px;transition:transform .4s}
.acordeon-icono::after{transform:rotate(90deg)}
details[open] .acordeon-icono{background:var(--tinta);border-color:var(--tinta)}
details[open] .acordeon-icono::before,details[open] .acordeon-icono::after{background:white}
details[open] .acordeon-icono::after{transform:rotate(0)}
details.cerrando .acordeon-icono{background:transparent;border-color:#a7b3aa80}
details.cerrando .acordeon-icono::before,details.cerrando .acordeon-icono::after{background:#6e8076}
details.cerrando .acordeon-icono::after{transform:rotate(90deg)}
.acordeon-cuerpo{overflow:hidden}
.acordeon-cuerpo p{animation:none!important}
/* Logos institucionales y pausa fotográfica. */
.trayectoria{background:#fff;padding:64px 0}
.entidades-lista{border-top:0;padding-top:10px;gap:35px}
.entidades-lista>span{flex:1;max-width:190px}
.entidades-lista img{height:55px;width:100%;object-fit:contain;mix-blend-mode:multiply}
.banda{padding:64px 48px;isolation:isolate;background:var(--tinta);overflow:hidden}
.banda::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#152831fa 10%,#152831d9 64%,#15283199),url('../img/arquitectura-editorial.jpg') center 57%/cover;z-index:-1;transition:transform 1.5s var(--curva)}
.banda:hover::before{transform:scale(1.035)}
/* Blog: fotografía y tipografía editorial, sin numeración. */
.perspectivas{background:transparent;border-top:0;padding-top:96px}
.perspectivas-cabecera{border-bottom:1px solid #adb6ab77;padding-bottom:34px;margin-bottom:40px}
.perspectivas h2{font-size:clamp(3rem,6vw,5.5rem);letter-spacing:-.065em}
.perspectivas-cabecera>p{max-width:360px}
.articulos{grid-template-columns:1.18fr 1fr 1fr;gap:32px}
.articulo,.articulo-principal{border:0;background:transparent;padding:0;grid-row:auto;color:var(--tinta);overflow:visible}
.articulo-imagen{position:relative;height:285px;background:none;overflow:hidden;transform:none!important}
.articulo-imagen img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--curva),filter .8s;filter:saturate(.75)}
.articulo-principal .articulo-imagen{height:340px}
.articulo:hover .articulo-imagen img{transform:scale(1.055);filter:saturate(1)}
.articulo-sello{position:absolute;bottom:15px;left:15px;background:#f2eee5e8;backdrop-filter:blur(8px);font-size:.5625rem;letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;color:var(--tinta)}
.articulo-contenido{padding:25px 0 0;background:transparent;display:flex;flex-direction:column;flex:1}
.articulo-tipo,.articulo-principal .articulo-tipo{color:#8a7048;font-size:.5625rem;letter-spacing:.08em;padding:0}
.articulo h3,.articulo-principal h3{font-size:clamp(1.25rem,1.9vw,1.65rem);margin:16px 0;line-height:1.3;transition:color .3s}
.articulo:hover h3{color:#7c6038}
.articulo-contenido>p:not(.articulo-tipo){color:var(--gris);font-size:.8125rem}
.articulo-meta,.articulo-principal .articulo-meta{border-top:1px solid #adb6ab77;margin-top:25px;padding-top:16px;font-size:.5625rem;color:#738074}
/* Preguntas: lectura clara y aperturas suaves. */
.preguntas-fila{grid-template-columns:.8fr 1.2fr;gap:90px}
.preguntas-fila>.encabezado{position:sticky;top:calc(var(--nav) + 35px)}
.preguntas-fila>.encabezado>p{max-width:320px}
.preguntas-ayuda{display:flex;align-items:center;justify-content:space-between;gap:28px;text-decoration:none;border-top:1px solid #aebaae80;padding:25px 0 0;margin-top:40px;max-width:340px;font-size:.6875rem;color:#718074}
.preguntas-ayuda b{display:block;color:var(--tinta);font-weight:500;font-size:.8125rem;margin-top:6px}
.preguntas-ayuda>span:last-child{font-size:1.6rem;color:#8b744e;transition:transform .4s var(--curva)}
.preguntas-ayuda:hover>span:last-child{transform:translate(4px,-4px)}
.preguntas{border:0}
.preguntas details{border:0;border-top:1px solid #b8c6ba90;padding:0 20px;transition:background .5s}
.preguntas details:last-child{border-bottom:1px solid #b8c6ba90}
.preguntas details[open]{background:#fff9}
.preguntas summary{padding:27px 0;gap:25px;font-size:.9375rem}
.preguntas summary::after{display:none}
.preguntas summary:hover .acordeon-icono{transform:rotate(90deg);border-color:var(--oro-oscuro)}
.preguntas details[open] summary:hover .acordeon-icono{transform:none}
.preguntas details p{padding:0 48px 27px 0;font-size:.875rem;line-height:1.85}
/* Contacto sin formulario: una invitación directa. */
#contacto{background:var(--noche);color:#f0f3ed;position:relative;overflow:hidden}
.contacto-fila{grid-template-columns:1.2fr .8fr;gap:100px;align-items:center}
.contacto-texto h2{font-size:clamp(2.5rem,4.2vw,4.2rem);line-height:1.15;letter-spacing:-.055em}
.contacto-texto h2 em{font-style:normal;color:var(--oro)}
.contacto-texto .sobrelinea{color:var(--oro)!important}
.contacto-texto>p:not(.sobrelinea){color:#b4c2c5;max-width:450px;font-size:.9375rem;margin:27px 0 36px}
.contacto-enlace{display:flex;align-items:center;justify-content:space-between;gap:25px;text-decoration:none;border-top:1px solid #82989960;border-bottom:1px solid #82989960;padding:26px 0;font-size:1.05rem;max-width:550px;transition:color .35s}
.contacto-enlace small{display:block;font-size:.75rem;color:#98aeb3;margin-top:7px}
.contacto-flecha{width:54px;height:54px;border-radius:50%;background:var(--oro);color:var(--noche);display:grid;place-items:center;font-size:1.5rem;flex:none;transition:transform .5s var(--curva),background .4s}
.contacto-enlace:hover{color:var(--oro)}
.contacto-enlace:hover .contacto-flecha{transform:rotate(45deg);background:#e3cea9}
.contacto-texto>p.contacto-reserva{font-size:.6875rem;color:#8c9fa5;margin:20px 0 0;max-width:450px}
.contacto-foto{height:240px;overflow:hidden;margin-bottom:32px}
.contacto-foto img{height:100%;width:100%;object-fit:cover;object-position:center 46%}
.contacto-lateral .datos{gap:20px}
.contacto-lateral .datos li{font-size:.8125rem;color:#b7c4c7}
.contacto-lateral .datos a{font-size:.9375rem;color:#e6eae6}
.contacto-lateral .datos span{color:#c9ac7d;font-size:.5625rem;margin-bottom:6px}
/* Un footer compuesto, no una repetición gigante del logotipo. */
.pie{background:#10212a;padding:64px 0 28px;border-top:1px solid #ffffff19}
.pie-superior{display:grid;grid-template-columns:1.1fr .8fr 1fr;gap:60px;padding-bottom:56px}
.pie-identidad>p{font-size:1.25rem;line-height:1.5;letter-spacing:-.03em;color:#e0e6e2;margin:28px 0 20px}
.pie-identidad>span{font-size:.625rem;letter-spacing:.12em;text-transform:uppercase;color:#879ba3}
.pie-superior>nav{display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:.75rem}
.pie-titulo{display:block;font-size:.5625rem;text-transform:uppercase;letter-spacing:.15em;color:var(--oro);margin-bottom:14px}
.pie-contacto{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:.75rem}
.pie-contacto .pie-titulo{margin-bottom:8px}
.pie-contacto p{font-size:.6875rem;line-height:1.8;color:#8ea4ab;margin-top:6px}
.pie-contacto>a:first-of-type{overflow-wrap:anywhere}
.pie-superior nav a{transition:color .3s,transform .4s var(--curva)}
.pie-superior nav a:hover{transform:translateX(5px)}
.volver-arriba{margin-top:15px;border-bottom:1px solid #617b8166;padding-bottom:6px;display:flex;gap:35px}
.pie-legal{font-size:.5625rem;border-color:#ffffff19;color:#8ba0a6}
.pie-legal nav{gap:12px 24px}
.cookies{background:#10212a;color:#a5b7bb;border-color:#ffffff19}
.cookies .btn{background:#213b44;color:#d5e0df}
.cookies a{color:#d5e0df}
/* Apariciones y fotografía. Sin alterar el desplazamiento nativo. */
.motion-ready .rev{transition:opacity .85s var(--curva),transform .95s var(--curva);transition-delay:var(--retard,0ms)}
.motion-ready .rev:not(.visto){transform:translateY(28px)}
.revelar-img img{transition:transform 1.5s var(--curva)}
.motion-ready .revelar-img:not(.visto) img{transform:scale(1.09)}
.revelar-img:hover img{transform:scale(1.035)}
/* Traveling: profundidad suave ligada al scroll, con encuadre sobredimensionado. */
.viaje-foto>.hero-fondo,.viaje-foto>img{translate:0 var(--viaje-y,0px);scale:var(--viaje-escala,1.1)}
.viaje-visible>.hero-fondo,.viaje-visible>img{will-change:translate,scale}
.motion-ready .revelar-img{clip-path:inset(0);transition:opacity .85s var(--curva),transform .95s var(--curva),clip-path 1.15s var(--curva)}
.motion-ready .revelar-img:not(.visto){clip-path:inset(0 0 12% 0)}
.motion-ready .encabezado h2,.motion-ready .perspectivas-cabecera h2{transition:transform 1s var(--curva);transition-delay:80ms}
.motion-ready .encabezado:not(.visto) h2,.motion-ready .perspectivas-cabecera:not(.visto) h2{transform:translateY(14px)}
.hero-texto>.rev{animation:entrada-portada 1s var(--curva) both}
.hero-texto>.rev:nth-child(2){animation-delay:90ms}
.hero-texto>.rev:nth-child(3){animation-delay:180ms}
.hero-texto>.rev:nth-child(4){animation-delay:270ms}
@keyframes entrada-portada{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.rutas-lista button,.etapa summary,.preguntas summary{-webkit-tap-highlight-color:transparent}
.legal[open]{animation:dialogo-entrar .35s var(--curva)}
.legal::backdrop{transition:opacity .23s ease;opacity:1}
.legal.cerrando-legal::backdrop{opacity:0}
.btn:active{transform:translateY(1px) scale(.985);transition-duration:.12s}
.demo-tabs button:active,.demo-reproduccion:active{transform:translateY(1px)}
.rutas-lista button:active .ruta-flecha{scale:.85;transition-duration:.12s}
@keyframes dialogo-entrar{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:980px){
  .menu-movil,.menu-movil.abierto{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:#0d1921fa;backdrop-filter:blur(18px);border-top:1px solid #ffffff19;padding:0 36px;max-height:0;overflow:hidden;visibility:hidden;transition:max-height .55s var(--curva),padding .55s var(--curva),visibility .55s}
  .menu-movil.abierto{max-height:calc(100dvh - var(--nav));overflow:auto;visibility:visible;padding:16px 36px 30px}
  .menu-movil a{transition:color .25s,transform .4s var(--curva)}
  .menu-movil a:hover{color:var(--oro);transform:translateX(4px)}
}
@media(min-width:1600px){.especialidades-foto{min-height:590px}.demo-escenario{min-height:330px}.demo-expediente{padding-block:20px}.metodo-foto{height:570px}}
@media(max-width:1180px){.especialidades-composicion{gap:45px;grid-template-columns:.7fr 1.3fr}.tecno-fila{gap:40px;grid-template-columns:.85fr 1.15fr}.tecno-texto h2{font-size:2.35rem}.demo-escenario{padding-inline:20px}.demo-panorama{gap:24px}.metodo-composicion{gap:55px}.contacto-fila{gap:70px}.preguntas-fila{gap:55px}.articulos{gap:25px}.articulo-imagen{height:240px}.articulo-principal .articulo-imagen{height:290px}.pie-superior{gap:40px}}
@media(max-width:980px){.especialidades-composicion{gap:35px}.especialidades-foto{min-height:580px}.area{padding-top:24px;padding-bottom:24px}.area h3{font-size:1.4rem}.area p{font-size:.8125rem}.rutas{grid-template-columns:.95fr 1.05fr}.rutas-lista{padding-right:24px}.ruta{padding-left:30px}.tecno-fila{grid-template-columns:1fr;gap:45px}.tecno-texto{max-width:650px}.tecno-texto h2{font-size:2.7rem}.tecno-puntos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.tecno-puntos li{align-content:start;border:0;border-top:1px solid #ffffff20}.tecno-visual{max-width:650px;width:100%;margin-inline:auto}.metodo-composicion{gap:35px;grid-template-columns:.9fr 1.1fr}.metodo-foto{height:490px}.metodo-foto figcaption{left:24px;font-size:1.1rem}.articulos{grid-template-columns:1fr 1fr;gap:40px 28px}.articulo-principal{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;gap:30px}.articulo-principal .articulo-imagen{height:340px}.articulo-principal .articulo-contenido{padding-top:10px}.articulo-principal h3{font-size:1.5rem}.articulo-imagen{height:250px}.contacto-fila{gap:40px}.contacto-texto h2{font-size:2.8rem}.contacto-enlace{font-size:.875rem}.contacto-flecha{width:44px;height:44px}.pie-superior{grid-template-columns:1.05fr .8fr 1fr;gap:28px}.pie .logo{gap:10px}.pie .logo-sigla{font-size:32px}.pie .logo-nombre{font-size:7px}}
@media(max-width:700px){.principios li{max-width:105px;font-size:.625rem;gap:7px}.logo-institucion{height:52px}.entes-lista{gap:30px}.entes-lista li{align-items:center;text-align:center;font-size:.625rem}.entes-lista li:nth-child(3) img{max-width:120px}.entes>.contenedor{gap:25px}.entes-titulo{text-align:center}.especialidades-composicion{grid-template-columns:1fr;gap:30px}.especialidades-foto{height:270px;min-height:0}.especialidades-foto img{object-position:center 54%}.especialidades-foto figcaption{left:24px;bottom:24px;font-size:.875rem}.area{padding:25px 35px 25px 0}.area h3{font-size:1.45rem}.area p{font-size:.875rem}.area-mas{font-size:.5625rem}.area::after{top:23px}.rutas{grid-template-columns:1fr}.rutas-lista{border-right:0;border-bottom:1px solid #9a845647;padding:12px 0 24px}.rutas-lista button{min-height:0;padding:19px 16px}.ruta{padding:30px 0}.ruta h3{font-size:1.6rem}.tecno{padding:72px 0}.tecno-texto h2{font-size:2rem}.tecno-puntos{display:block;margin-top:22px}.tecno-puntos li{padding:12px 0}.tecno-marca{font-size:.75rem}.demo-marca{padding:16px}.demo-marca>span:first-child{gap:10px}.demo-marca>span:first-child>span{padding-left:10px;font-size:.5625rem}.demo-privado{font-size:.5rem}.demo-saludo{padding:24px 18px 20px}.demo-saludo h3{font-size:1.35rem}.demo-tabs{padding-inline:18px;gap:24px}.demo-tabs button{font-size:.625rem}.demo-escenario{padding:20px 18px 0;min-height:320px}.demo-subtitulo{gap:15px;align-items:start;font-size:.5625rem}.demo-subtitulo span:last-child{font-size:.5rem;text-align:right}.demo-expediente{gap:9px;padding-block:17px;flex-wrap:wrap}.demo-expediente>span:nth-child(2){flex:1;min-width:140px}.demo-expediente b{font-size:.625rem}.demo-expediente small{font-size:.5rem}.demo-estado{padding:3px 5px;font-size:.4375rem}.demo-panorama{gap:20px;padding:20px 0 30px}.demo-orbita{width:110px;height:110px}.demo-orbita>span{width:89px;height:89px}.demo-panorama ul{font-size:.625rem}.demo-nota{font-size:.5625rem}.demo-historia li{font-size:.6875rem;padding-bottom:33px}.demo-historia small{font-size:.5625rem}.demo-pie{padding:12px 14px;font-size:.4375rem;gap:10px}.demo-reproduccion{font-size:.5rem}.tecno-firma{font-size:.5625rem;gap:8px}.metodo-composicion{grid-template-columns:1fr;gap:25px}.metodo-foto{position:relative;top:auto;height:330px}.metodo-foto img{object-position:center 45%}.metodo-foto figcaption{bottom:25px;font-size:1.1rem}.metodo-foto figcaption>span{margin-bottom:12px}.etapa summary{padding:23px 0;gap:18px}.etapa strong{font-size:1.25rem}.etapa .acordeon-cuerpo>div{padding-left:27px;padding-right:25px}.etapa small{font-size:.5625rem}.banda{padding:35px 28px}.trayectoria{padding:48px 0}.entidades-lista{gap:30px 20px;flex-wrap:wrap}.entidades-lista>span{flex:1 1 120px;max-width:160px}.entidades-lista img{height:48px}.perspectivas{padding-top:65px}.perspectivas h2{font-size:3.1rem}.perspectivas-cabecera{padding-bottom:27px}.articulos{grid-template-columns:1fr;gap:40px}.articulo-principal{grid-column:auto;display:flex;gap:0}.articulo-imagen,.articulo-principal .articulo-imagen{height:260px}.articulo-principal .articulo-contenido,.articulo-contenido{padding:22px 0 0}.articulo h3,.articulo-principal h3{font-size:1.4rem;margin:14px 0}.articulo-meta{margin-top:22px}.preguntas-fila{grid-template-columns:1fr;gap:15px}.preguntas-fila>.encabezado{position:static}.preguntas-ayuda{margin-top:27px;padding-top:20px;max-width:none}.preguntas details{padding-inline:14px}.preguntas summary{padding:23px 0;font-size:.875rem;gap:18px}.preguntas details p{padding-right:15px;font-size:.8125rem}.contacto-fila{grid-template-columns:1fr;gap:45px}.contacto-texto h2{font-size:2.6rem}.contacto-texto>p:not(.sobrelinea){margin:24px 0 28px}.contacto-enlace{font-size:.9375rem;padding:23px 0}.contacto-texto>p.contacto-reserva{font-size:.625rem;margin-bottom:0}.contacto-foto{height:200px}.contacto-lateral .datos{grid-template-columns:1fr;gap:22px}.pie{padding-top:48px}.pie-superior{grid-template-columns:1fr 1fr;gap:40px 28px;padding-bottom:40px}.pie-identidad{grid-column:span 2;border-bottom:1px solid #ffffff19;padding-bottom:32px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:20px}.pie-identidad>p{font-size:1rem;margin:0}.pie-identidad>span{font-size:.5625rem}.pie-superior>nav{font-size:.6875rem;gap:12px}.pie-contacto{font-size:.625rem;gap:13px}.pie-contacto p{font-size:.625rem}.pie-legal{gap:20px;font-size:.5rem;line-height:1.8}.pie-legal nav{gap:9px 18px}.volver-arriba{gap:22px}.cookies{padding-bottom:80px}}
@media(max-width:370px){.demo-privado{display:none}.demo-expediente>span:nth-child(2){min-width:130px}.demo-estado{margin-left:22px}.demo-escenario{min-height:345px}.demo-panorama{gap:16px}.demo-orbita{width:90px;height:90px}.demo-orbita>span{width:73px;height:73px}.demo-orbita b{font-size:1.75rem}.demo-tabs{gap:18px}.contacto-texto h2{font-size:2.2rem}.contacto-enlace{font-size:.8125rem}.pie-identidad{grid-template-columns:1fr}.pie-identidad>p{max-width:none}.pie-superior{gap:28px 20px}.pie .logo-sigla{font-size:34px}.contacto-flecha{width:40px;height:40px}.principios li{font-size:.5625rem}}
@media(prefers-reduced-motion:reduce){body{transition:none}.motion-ready .rev:not(.visto){opacity:1;transform:none}.motion-ready .revelar-img:not(.visto) img{transform:none}.demo.reproduciendo .demo-progreso span{animation:none}.revelar-img:hover img,.articulo:hover .articulo-imagen img{transform:none}}
@media(prefers-reduced-motion:reduce){
  .viaje-foto>.hero-fondo,.viaje-foto>img{translate:none!important;scale:1!important;will-change:auto}
  .motion-ready .revelar-img:not(.visto){clip-path:none}
  .motion-ready .encabezado:not(.visto) h2,.motion-ready .perspectivas-cabecera:not(.visto) h2{transform:none}
}

/* Especialidades: el desplazamiento al pasar el mouse se hace con transform sobre el contenido
   (no con padding, que reacomoda el texto en cada cuadro) y no hereda el retardo de la aparición. */
.motion-ready .area.rev { transition: opacity .85s var(--curva) var(--retard,0ms), transform .95s var(--curva) var(--retard,0ms), border-color .4s ease, background .4s ease }
.area:hover, .area:focus-visible { padding-left: 0 }
.area > * { transition: transform .55s var(--curva) }
.area:hover > *, .area:focus-visible > * { transform: translateX(16px) }
@media (hover: none) { .area:hover > * { transform: none } }
@media (prefers-reduced-motion: reduce) { .area > * { transition: none } .area:hover > *, .area:focus-visible > * { transform: none } }
.area { transition: border-color .45s ease, background-color .45s ease }
.motion-ready .area.rev { transition: opacity .85s var(--curva) var(--retard,0ms), transform .95s var(--curva) var(--retard,0ms), border-color .45s ease, background-color .45s ease }
.area h3 { transition: transform .55s var(--curva), color .45s ease }
.area:hover, .area:focus-visible { background-color: rgba(255,255,255,.45) }
.area:hover h3, .area:focus-visible h3 { color: var(--oro-oscuro) }

/* Comentario 8 de Gabriel (3-oct): el rótulo "Experiencia institucional" va centrado como su título. */
.encabezado-centro .sobrelinea { text-align: center; justify-content: center; margin-left: auto !important; margin-right: auto !important }
/* La demo quedó con un solo panel (el panorama): sin pestañas, sin reproducir y sin barra de avance. */
.demo-escenario { min-height: 0; padding-bottom: 6px }
