:root{--navy:#123b63;--navy-2:#092d50;--green:#168c72;--green-2:#0e725d;--yellow:#f4c542;--ink:#14263a;--muted:#607087;--off:#f5f8fb;--line:#dce5ee;--white:#fff;--shadow:0 18px 50px rgba(18,59,99,.12);--radius:24px;--container:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--white);line-height:1.6}body.high-contrast{--navy:#001e3c;--green:#006b55;--muted:#334155}img{max-width:100%;display:block}a{color:inherit}.container{width:min(var(--container),calc(100% - 40px));margin-inline:auto}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:8px;left:8px;z-index:9999;padding:10px 16px;background:#fff;color:#000;transform:translateY(-150%)}.skip-link:focus{transform:none}
.utility-bar{background:var(--navy-2);color:#fff;font-size:.8rem}.utility-inner{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:20px}.utility-inner nav{display:flex;align-items:center;gap:22px}.utility-inner a{text-decoration:none;color:#fff}.contrast-toggle{border:1px solid rgba(255,255,255,.4);color:#fff;background:transparent;border-radius:6px;padding:1px 7px;font-weight:700;cursor:pointer}
.site-header{position:sticky;top:0;background:rgba(255,255,255,.97);z-index:100;box-shadow:0 8px 25px rgba(8,38,65,.06)}.pattern-strip{height:7px;background:#fff url('../images/lineas-tipicas.png') center/auto 34px repeat-x}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand img{width:66px;height:66px;object-fit:contain}.brand span{display:flex;flex-direction:column}.brand strong{font-size:1.35rem;line-height:1.2;color:var(--navy);letter-spacing:.015em}.brand small{color:var(--muted);font-size:.78rem}.main-nav{display:flex;align-items:center;gap:28px}.main-nav>a{text-decoration:none;font-weight:700;font-size:.9rem;color:var(--navy);position:relative}.main-nav>a:not(.nav-cta)::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;background:var(--green);transform:scaleX(0);transition:.25s}.main-nav>a:hover::after,.main-nav>a:focus-visible::after{transform:scaleX(1)}.main-nav .nav-cta{display:inline-flex;align-items:center;gap:9px;padding:12px 18px;background:var(--green);color:#fff;border-radius:12px;box-shadow:0 8px 20px rgba(22,140,114,.24)}.nav-cta svg{width:19px;fill:none;stroke:currentColor;stroke-width:1.9}.menu-toggle{display:none;border:0;background:transparent;padding:9px;cursor:pointer}.menu-toggle span:not(.sr-only){display:block;width:26px;height:2px;background:var(--navy);margin:5px}
.hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#f8fbfd 0%,#edf6f2 100%);padding:70px 0 112px}.hero-pattern{position:absolute;inset:0 0 0 48%;background:url('../images/patron-amazonico.png') top right/auto 220px repeat;opacity:.32;mix-blend-mode:multiply}.hero-grid{position:relative;display:grid;grid-template-columns:1fr .95fr;gap:55px;align-items:center}.eyebrow,.kicker{display:inline-flex;align-items:center;gap:8px;color:var(--navy);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.eyebrow{background:var(--yellow);border-radius:999px;padding:8px 15px;text-transform:none;letter-spacing:0;font-size:.86rem}.eyebrow svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.8}.hero h1{font-size:clamp(2.7rem,4.4vw,4.65rem);line-height:1.03;letter-spacing:-.045em;color:var(--navy);margin:20px 0 22px;max-width:720px}.hero h1 em{font-style:normal;color:var(--green)}.hero-copy>p{font-size:1.08rem;color:var(--muted);max-width:620px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 22px;border-radius:12px;text-decoration:none;font-weight:800;transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--navy);color:#fff;box-shadow:0 12px 24px rgba(18,59,99,.2)}.btn-secondary{background:#fff;color:var(--navy);border:1px solid #a8bacb}.hero-visual{position:relative;min-height:430px}.hero-photo{position:absolute;inset:18px 58px 0 20px;margin:0;border-radius:34px;overflow:hidden;box-shadow:var(--shadow);background:#ccd8df;z-index:2}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.shape{position:absolute;border-radius:34px}.shape-yellow{background:var(--yellow);width:55%;height:55%;left:0;top:0}.shape-green{background:var(--green);width:42%;height:50%;right:28px;bottom:-12px}.river-inset{position:absolute;z-index:4;right:-6px;top:170px;width:132px;height:190px;margin:0;border:6px solid #fff;border-radius:25px;overflow:hidden;box-shadow:0 14px 34px rgba(18,59,99,.22)}.river-inset img{width:100%;height:100%;object-fit:cover}.slider-control{position:absolute;z-index:5;right:35px;bottom:-18px;background:#fff;display:flex;align-items:center;gap:11px;border-radius:999px;padding:8px 14px;box-shadow:0 10px 24px rgba(18,59,99,.18);color:var(--navy)}.slider-control span{font-size:1.5rem;line-height:1}.slider-control i{width:8px;height:8px;border-radius:50%;background:#dce5ee}.slider-control i.active{background:var(--green)}
.quick-access{position:relative;margin-top:-62px;z-index:5}.quick-panel{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:22px;box-shadow:var(--shadow);padding:14px}.quick-panel>a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:18px 16px;text-decoration:none;border-right:1px solid var(--line);border-radius:15px;transition:background .2s,transform .2s}.quick-panel>a:last-child{border-right:0}.quick-panel>a:hover{background:var(--off);transform:translateY(-2px)}.quick-panel strong,.quick-panel small{display:block}.quick-panel strong{font-size:.9rem;color:var(--navy);line-height:1.25}.quick-panel small{color:var(--muted);font-size:.75rem;margin-top:3px}.quick-panel b{color:var(--green);font-size:1.35rem}.quick-icon{width:45px;height:45px;border-radius:13px;display:grid;place-items:center}.quick-icon svg{width:25px;fill:none;stroke:currentColor;stroke-width:1.8}.quick-icon.blue{background:#e6f0ff;color:#1766be}.quick-icon.green{background:#e1f6ef;color:#168c72}.quick-icon.yellow{background:#fff4cc;color:#d79a00}.quick-icon.mint{background:#def4ee;color:#0d8067}
.section{padding:105px 0}.services{background:#fff}.section-heading{text-align:center;max-width:700px;margin:0 auto 45px}.section-heading h2,.about-copy h2,.news-inner h2{font-size:clamp(2rem,3.4vw,3rem);line-height:1.15;letter-spacing:-.035em;color:var(--navy);margin:10px 0}.section-heading p{color:var(--muted);margin:0}.kicker{color:var(--green)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{position:relative;padding:34px;border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#a8d8cc}.service-number{position:absolute;right:24px;top:18px;font-size:3.2rem;color:#eef3f7;font-weight:900}.service-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:linear-gradient(135deg,var(--navy),var(--green));color:#fff;margin-bottom:24px}.service-icon svg{width:32px;fill:none;stroke:currentColor;stroke-width:1.7}.service-card h3{position:relative;color:var(--navy);font-size:1.3rem;margin:0 0 10px}.service-card p{color:var(--muted);font-size:.94rem;min-height:75px}.text-link{color:var(--green);font-weight:800;font-size:.9rem}.portal-card{background:#f6fbf9}
.news-banner{background:var(--navy);color:#fff;position:relative;overflow:hidden}.news-banner::after{content:"";position:absolute;inset:0;background:url('../images/lineas-tipicas.png') center/auto 80px repeat;opacity:.08}.news-inner{position:relative;z-index:1;min-height:270px;display:flex;align-items:center;justify-content:space-between;gap:40px}.news-inner>div{max-width:680px}.news-inner h2{color:#fff;margin-top:8px}.news-inner p{color:#dce8f2}.kicker.light{color:var(--yellow)}.btn-light{background:#fff;color:var(--navy);white-space:nowrap}
.about{background:var(--off)}.about-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center}.about-image{position:relative}.about-image img{width:100%;height:440px;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.about-ribbon{position:absolute;left:28px;right:28px;bottom:-20px;background:var(--yellow);color:var(--navy);font-weight:800;text-align:center;border-radius:12px;padding:13px}.about-copy>p{color:var(--muted);font-size:1.03rem}.values{display:grid;gap:14px;margin-top:26px}.values article{display:flex;align-items:center;gap:13px}.values article>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#dff4ee;color:var(--green);font-weight:900}.values h3,.values p{margin:0}.values h3{font-size:1rem;color:var(--navy)}.values p{font-size:.87rem;color:var(--muted)}
.site-footer{position:relative;background:var(--navy-2);color:#fff;padding-top:58px}.footer-pattern{position:absolute;inset:0 0 auto;height:10px;background:url('../images/lineas-tipicas.png') center/auto 45px repeat-x;filter:brightness(0) invert(1);opacity:.9}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr .7fr;gap:55px;padding-bottom:42px}.footer-brand{display:flex;gap:15px;align-items:center}.footer-brand img{width:74px}.footer-brand strong{font-size:1.25rem}.footer-brand p,.footer-grid p{margin:.5rem 0 0;color:#c9d8e6;font-size:.88rem}.footer-grid h2{font-size:1rem;color:var(--yellow);margin:0 0 12px}.footer-grid>div:last-child{display:flex;flex-direction:column}.footer-grid a{color:#fff;text-decoration:none;margin-bottom:7px;font-size:.9rem}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);padding:17px 0;display:flex;justify-content:space-between;font-size:.8rem;color:#c9d8e6}.footer-bottom a{color:#fff;text-decoration:none}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn,.quick-panel>a,.service-card{transition:none}}
@media(max-width:1000px){.main-nav{gap:16px}.main-nav>a{font-size:.82rem}.brand small{display:none}.hero-grid{grid-template-columns:1fr 1fr;gap:30px}.quick-panel{grid-template-columns:1fr 1fr}.quick-panel>a:nth-child(2){border-right:0}.service-card{padding:26px}}
@media(max-width:780px){.container{width:min(100% - 28px,var(--container))}.utility-inner>span{display:none}.utility-inner{justify-content:flex-end}.utility-inner nav{gap:14px}.header-inner{min-height:76px}.brand img{width:54px;height:54px}.brand strong{font-size:1rem}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:83px;left:14px;right:14px;flex-direction:column;align-items:stretch;background:#fff;border-radius:16px;box-shadow:var(--shadow);padding:18px}.main-nav.open{display:flex}.main-nav>a{padding:8px}.main-nav .nav-cta{justify-content:center}.hero{padding:50px 0 95px}.hero-pattern{inset:45% 0 0}.hero-grid{grid-template-columns:1fr}.hero h1{font-size:2.75rem}.hero-visual{min-height:380px}.quick-panel{grid-template-columns:1fr}.quick-panel>a{border-right:0;border-bottom:1px solid var(--line)}.quick-panel>a:last-child{border-bottom:0}.service-grid{grid-template-columns:1fr}.service-card p{min-height:auto}.news-inner{padding:55px 0;flex-direction:column;align-items:flex-start}.about-grid{grid-template-columns:1fr;gap:55px}.about-image img{height:340px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-bottom{flex-direction:column;gap:6px}.section{padding:75px 0}}
@media(max-width:480px){.utility-inner a:first-child{display:none}.brand span small{display:none}.hero h1{font-size:2.35rem}.hero-actions{flex-direction:column}.btn{width:100%}.hero-visual{min-height:320px}.hero-photo{inset:15px 24px 0 5px}.river-inset{width:92px;height:130px;right:-4px;top:150px;border-width:4px}.slider-control{right:18px;bottom:-15px}.quick-access{margin-top:-45px}.about-image img{height:280px}}

/* Composición fiel al mockup aprobado: sin patrones ni líneas decorativas. */
.container{width:92%;max-width:1720px}
.site-header{box-shadow:0 4px 18px rgba(8,38,65,.06)}
.header-inner{min-height:82px}
.hero{isolation:isolate;background:#edf7fa;padding:38px 0 92px}
.hero::before{content:"";position:absolute;z-index:-2;inset:0;background:url('../images/docente-estudiantes.png') center 52%/cover no-repeat;filter:blur(3px);transform:scale(1.02);opacity:.22}
.hero::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(247,252,254,.98) 0%,rgba(247,252,254,.88) 39%,rgba(238,248,246,.24) 70%,rgba(238,248,246,.2) 100%)}
.hero-grid{grid-template-columns:1fr 1.06fr;gap:28px}
.hero h1{font-size:clamp(3rem,4.35vw,4.3rem);max-width:650px;margin:16px 0 14px}
.hero-copy>p{font-size:1rem;line-height:1.55;max-width:590px}
.hero-actions{margin-top:24px}
.hero-visual{min-height:400px}
.hero-photo{inset:0 68px 0 22px;border-radius:38px}
.shape-yellow{left:-8px;top:28px;width:56%;height:58%;border-radius:42px}
.shape-green{right:34px;bottom:-8px;width:45%;height:62%;border-radius:40px}
.river-inset{right:-2px;top:154px;width:124px;height:176px}
.slider-control{right:20px;bottom:-17px}
.quick-access{margin-top:-48px}
.quick-panel{padding:13px 17px;border-radius:21px}
.quick-panel>a{padding:13px 15px}
.news-ticker{background:#fff;border-top:1px solid #eef2f6;border-bottom:1px solid #e5ebf1}
.ticker-inner{min-height:58px;display:flex;align-items:center;gap:19px;white-space:nowrap;overflow:hidden}
.ticker-inner strong{display:flex;align-items:center;gap:8px;color:var(--navy);font-size:.92rem}
.ticker-inner strong span{font-size:1.25rem}
.ticker-inner a{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--muted);font-size:.76rem;min-width:max-content}
.ticker-inner a i{width:7px;height:7px;background:var(--green);border-radius:50%}
.ticker-divider{width:1px;height:24px;background:#dce5ee;flex:0 0 auto}
.ticker-arrows{margin-left:auto;color:var(--navy);font-size:1.35rem;background:#f3f6f9;padding:3px 12px;border-radius:999px}
.site-footer{padding-top:52px}
.main-nav .search-button{width:42px;height:42px;padding:0;border-radius:50%;background:#f1f5f8;display:grid;place-items:center}
.main-nav .search-button svg{width:21px;fill:none;stroke:var(--navy);stroke-width:2.2}
.main-nav .search-button::after{display:none}
.main-nav>a>span{font-size:.8rem;margin-left:3px}
.contrast-toggle{font-weight:500;border:0;padding:0;background:none}
.hero{padding:44px 0 90px}
.hero::before{opacity:.34;background-position:center 66%;filter:blur(2px)}
.hero::after{background:linear-gradient(90deg,rgba(247,252,254,.96) 0%,rgba(247,252,254,.78) 37%,rgba(238,248,246,.12) 67%,rgba(238,248,246,.06) 100%)}
.hero-visual{min-height:465px}
.hero-photo{inset:0 78px 0 22px}
.river-inset{top:178px;width:142px;height:202px}
.hero h1{font-size:clamp(3.3rem,4.25vw,4.75rem);max-width:700px}
.hero-copy>p{max-width:650px;font-size:1.05rem}
.quick-panel>a{padding-top:11px;padding-bottom:11px}

@media(max-width:1000px){.container{width:calc(100% - 40px)}.hero{padding:38px 0 84px}.hero-visual{min-height:410px}.hero-photo{inset:0 58px 0 16px}.river-inset{top:160px;width:120px;height:174px}}
@media(max-width:780px){.container{width:calc(100% - 28px)}.hero{padding-top:42px}.hero::before{background-position:center;opacity:.13}.hero::after{background:rgba(247,252,254,.9)}.hero-grid{grid-template-columns:1fr}.hero-visual{min-height:370px}.ticker-inner a:nth-of-type(2),.ticker-inner .ticker-divider:nth-of-type(2){display:none}.ticker-arrows{display:none}}
@media(max-width:480px){.header-inner{min-height:72px}.hero h1{font-size:2.45rem}.hero-visual{min-height:310px}.hero-photo{inset:5px 26px 0 4px;border-radius:27px}.river-inset{top:128px;width:86px;height:122px}.quick-access{margin-top:-42px}.ticker-inner{gap:10px}.ticker-inner a{overflow:hidden;text-overflow:ellipsis}.ticker-divider{display:none}}

/* Corrección solicitada: se conservan las dimensiones originales y solo cambia el fondo. */
.container{width:min(var(--container),calc(100% - 40px));max-width:none}
.hero{padding:26px 0 64px}
.hero::before{background-image:url('../images/rio-madre-de-dios.png');background-position:center 56%;background-size:cover;filter:blur(2px);transform:scale(1.02);opacity:.24}
.hero::after{background:linear-gradient(90deg,rgba(247,252,254,.98) 0%,rgba(247,252,254,.88) 39%,rgba(238,248,246,.24) 70%,rgba(238,248,246,.2) 100%)}
.hero-visual{min-height:350px}
.hero-photo{inset:0 68px 0 22px}
.hero-photo img{object-position:center 52%}
.river-inset{right:-2px;top:154px;width:124px;height:176px}
.hero h1{font-size:clamp(3rem,4.35vw,4.3rem);max-width:650px}
.hero-copy>p{font-size:1rem;max-width:590px}
@media(max-width:1000px){.container{width:calc(100% - 40px)}.hero{padding:38px 0 84px}.hero-visual{min-height:410px}.hero-photo{inset:0 58px 0 16px}.river-inset{top:160px;width:120px;height:174px}}
@media(max-width:780px){.container{width:calc(100% - 28px)}.hero{padding-top:42px}.hero::before{opacity:.16}.hero::after{background:rgba(247,252,254,.9)}.hero-visual{min-height:370px}}
@media(max-width:480px){.hero-visual{min-height:310px}.hero-photo{inset:5px 26px 0 4px}.river-inset{top:128px;width:86px;height:122px}}

/* Composición construida con elementos independientes, sin recortar el mockup. */
.hero-visual{overflow:visible}
.contour-lines{position:absolute;z-index:0;top:-22px;right:-70px;width:260px;height:300px;background:url('../images/topografia.svg') top right/300px auto no-repeat;opacity:.85}
.hero-photo{inset:0 68px 0 22px}
.hero-photo img{object-position:center 57%}
.shape-yellow{left:-8px;top:26px;width:58%;height:58%;border-radius:42px}
.shape-green{right:34px;bottom:-8px;width:46%;height:62%;border-radius:40px}
.river-inset{right:-2px;top:154px;width:124px;height:176px}
.slider-control{right:20px;bottom:-17px}
@media(max-width:480px){.contour-lines{right:-20px;width:150px;height:200px;background-size:220px auto}.hero-photo{inset:5px 26px 0 4px}.river-inset{top:128px;width:86px;height:122px}}

/* Ajustes de la actualización 8 solicitados. */
.contour-lines{display:none}
.shape-green{right:10px;bottom:-14px;width:55%;height:68%}
.river-inset{border-width:3px}
.hero-photo .hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 57%;opacity:0;transition:opacity .7s ease}
.hero-photo .hero-slide.active{opacity:1}
.hero-photo .hero-slide:nth-child(2){object-position:center}
.hero-photo .hero-slide:nth-child(3){object-position:center 58%}
.slider-control button{border:0;background:transparent;color:var(--navy);padding:0;cursor:pointer;font:inherit}
.slider-control .slide-prev,.slider-control .slide-next{font-size:1.5rem;line-height:1;width:18px;height:24px}
.slider-control .slide-dot{width:8px;height:8px;border-radius:50%;background:#dce5ee}
.slider-control .slide-dot.active{background:var(--green)}
@media(prefers-reduced-motion:reduce){.hero-photo .hero-slide{transition:none}}

/* Ajustes finales de bordes, inclinación y profundidad. */
.river-inset{border-width:5px}
.hero-photo{border:5px solid #fff;transform:rotate(-1.6deg);transform-origin:center;box-shadow:0 18px 42px rgba(18,59,99,.18)}
.shape-yellow{transform:rotate(-1.6deg);transform-origin:center}
.shape-green{transform:rotate(-1.6deg);transform-origin:center}
