:root{--navy:#0d2f52;--blue:#123c70;--green:#46a52f;--ink:#102e59;--muted:#5f718a;--soft:#f6f9fc;--line:#dce5ed}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}.wrap{width:min(1180px,calc(100% - 44px));margin:auto}.header{height:74px;background:#fff;position:sticky;top:0;z-index:20;box-shadow:0 1px 8px rgba(10,35,61,.08)}.nav{height:100%;display:flex;align-items:center;gap:32px}.brand{height:64px;width:205px;display:flex;align-items:center}.brand img{width:185px;height:58px;object-fit:contain}.nav nav{display:flex;gap:28px;align-self:stretch;align-items:center;margin-left:auto}.nav nav a{height:100%;display:flex;align-items:center;position:relative;color:#102e59;text-decoration:none;font-size:14px;padding:0 1px}.nav nav a:after{content:"";position:absolute;left:0;right:0;bottom:12px;height:3px;background:transparent}.nav nav a:hover,.nav nav a.active{color:var(--green)}.nav nav a:hover:after,.nav nav a.active:after{background:var(--green)}.contact-btn{background:var(--green);color:#fff;text-decoration:none;font-weight:700;font-size:13px;padding:13px 20px;border-radius:4px}.menu-btn{display:none}.hero{height:520px;position:relative;overflow:hidden;color:#fff}.hero>img{width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,29,48,.82),rgba(3,29,48,.34) 62%,rgba(3,29,48,.08))}.hero-copy{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.hero-copy>span{font-size:14px;font-weight:800;letter-spacing:.09em;color:#fff}.hero h1{font-size:48px;line-height:1.04;margin:8px 0 15px;max-width:680px}.hero p{font-size:16px;line-height:1.55;max-width:760px;margin:0 0 26px}.btn{display:inline-flex;align-items:center;gap:18px;background:var(--green);color:#fff;text-decoration:none;padding:14px 22px;border-radius:4px;font-weight:700;font-size:14px}.hero-dots{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);display:flex;gap:10px}.hero-dots i{display:block;width:24px;height:4px;border-radius:5px;background:rgba(255,255,255,.45)}.hero-dots i.active{background:var(--green)}.pillars{background:#fff}.pillars-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:28px 0}.pillar{text-align:center;padding:0 28px;border-right:1px solid var(--line)}.pillar:last-child{border-right:0}.pillar-icon{height:37px;color:var(--green);font-size:32px;line-height:37px;font-weight:700}.pillar h3{font-size:16px;margin:11px 0 8px}.pillar p{font-size:13px;line-height:1.45;color:var(--muted);margin:0}.company-block{display:grid;grid-template-columns:1fr 1fr;min-height:430px;background:#f5f9fc}.company-media{position:relative;min-height:430px;overflow:hidden;color:#fff}.company-media img{width:100%;height:100%;position:absolute;object-fit:cover}.company-media:after{content:"";position:absolute;inset:0;background:rgba(5,36,58,.15)}.company-media .play{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-65%);width:62px;height:62px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center;font-size:21px;padding-left:4px}.company-media strong{position:absolute;z-index:2;left:0;right:0;top:63%;text-align:center;font-size:14px}.company-copy{display:flex;align-items:center;background:linear-gradient(115deg,#fff,#eef6fb)}.copy-inner{max-width:540px;padding:58px 65px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.09em;color:var(--green)}.company-copy h2,.section-head h2{font-size:35px;line-height:1.1;margin:10px 0 17px}.company-copy p{font-size:16px;line-height:1.65;color:var(--muted);margin-bottom:24px}.sustainability{height:360px;position:relative;overflow:hidden;color:#fff}.sustainability>img{position:absolute;width:100%;height:100%;object-fit:cover}.sustainability-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,43,72,.94) 0%,rgba(7,43,72,.84) 42%,rgba(7,43,72,.20) 78%)}.sustainability-copy{position:absolute;inset:0;display:flex;justify-content:center;flex-direction:column;align-items:flex-start}.eyebrow.light{color:#8fd34c}.sustainability h2{font-size:34px;line-height:1.12;margin:10px 0 16px}.sustainability p{max-width:570px;line-height:1.55;margin:0 0 20px;font-size:15px}.actions{display:flex;gap:12px}.btn-outline{border:1px solid #fff;color:#fff;text-decoration:none;padding:11px 18px;border-radius:4px;font-size:13px;font-weight:700}.btn-outline.blue{border-color:#1682ed;color:#0874dd;background:#fff}.section{padding:58px 0 70px}.news-section{background:#fff}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:27px}.section-head h2{margin-bottom:0}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.card{border:1px solid var(--line);background:#fff;border-radius:5px;overflow:hidden;box-shadow:0 6px 20px rgba(17,50,76,.06);transition:.2s}.card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(17,50,76,.12)}.card>a{text-decoration:none;color:inherit}.card img{width:100%;height:190px;object-fit:cover;display:block}.card-body{padding:17px 19px 20px}.card time{font-size:12px;color:var(--muted)}.card h3{font-size:17px;line-height:1.25;margin:9px 0 20px;min-height:43px}.read-more{font-size:13px;color:#0780e9;font-weight:700}.footer{background:var(--navy);color:#fff;padding:28px 0}.footer-inner{display:flex;align-items:center;gap:60px}.footer-logo{width:170px;height:90px;object-fit:contain;filter:brightness(0) invert(1);opacity:.98}.footer-nav{display:flex;align-items:center;flex-wrap:wrap;gap:18px;font-size:12px}.footer-nav a{color:#fff;text-decoration:none;opacity:.92}.footer-nav small{flex-basis:100%;opacity:.65}.top{margin-left:auto;color:#fff;text-decoration:none;width:34px;height:34px;background:rgba(255,255,255,.1);border-radius:50%;display:grid;place-items:center}.menu-btn{background:none;border:0;font-size:25px}@media(max-width:850px){.header{height:68px}.brand{width:155px}.brand img{width:150px}.contact-btn{display:none}.menu-btn{display:block;margin-left:auto}.nav nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;flex-direction:column;gap:0;padding:10px 22px;box-shadow:0 8px 15px rgba(0,0,0,.08)}.nav nav.open{display:flex}.nav nav a{width:100%;height:auto;padding:13px 0}.nav nav a:after{bottom:7px;width:35px;right:auto}.hero{height:570px}.hero h1{font-size:39px}.hero p{font-size:15px}.pillars-grid{grid-template-columns:1fr 1fr;row-gap:30px}.pillar:nth-child(2){border-right:0}.company-block{grid-template-columns:1fr}.company-media{min-height:320px}.copy-inner{padding:48px 30px}.sustainability{height:440px}.news-grid{grid-template-columns:1fr}.section-head{align-items:flex-start;gap:18px;flex-direction:column}.footer-inner{align-items:flex-start;gap:20px;flex-direction:column}.top{position:absolute;right:22px}.footer-logo{width:150px}.footer-nav{gap:12px 18px}}@media(max-width:520px){.wrap{width:min(100% - 30px,1180px)}.hero h1{font-size:34px}.pillars-grid{grid-template-columns:1fr}.pillar{border-right:0;border-bottom:1px solid var(--line);padding:20px 10px}.pillar:last-child{border-bottom:0}.company-copy h2,.section-head h2{font-size:30px}.sustainability h2{font-size:30px}}

/* Entrega 3: video original en Nuestra Empresa + separación visual antes de Sostenibilidad */
.company-video{background:#082b47;}
.company-video iframe,.company-video video{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;object-fit:cover;background:#082b47;}
.company-video:after{display:none;}
.sustainability{margin-top:28px;}
@media(max-width:850px){.sustainability{margin-top:20px;}}

/* Nuestra Empresa */
.inner-hero{height:360px;position:relative;overflow:hidden;color:#fff}.inner-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.inner-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,39,66,.88),rgba(6,39,66,.34) 70%)}.inner-hero-copy{position:relative;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.inner-hero h1{font-size:48px;margin:8px 0 10px}.inner-hero p{font-size:17px;margin:0}.empresa-intro-grid,.empresa-detail-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:center}.empresa-detail-grid{grid-template-columns:1.18fr .82fr}.empresa-photo{overflow:hidden;border-radius:5px;box-shadow:0 14px 35px rgba(10,42,69,.12)}.empresa-photo.tall{height:530px}.empresa-photo.landscape{height:520px}.empresa-photo img{width:100%;height:100%;object-fit:cover}.empresa-text h2{font-size:38px;margin:9px 0 20px}.empresa-text p{font-size:15px;line-height:1.75;color:var(--muted);text-align:justify}.empresa-facts{background:var(--navy);color:#fff}.facts-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:32px 0}.fact{text-align:center;padding:7px 24px;border-right:1px solid rgba(255,255,255,.18)}.fact:last-child{border-right:0}.fact strong{display:block;font-size:27px;color:#fff;margin-bottom:7px}.fact span{font-size:13px;line-height:1.4;opacity:.78}.empresa-detail{background:var(--soft)}.empresa-video-section{padding:65px 0 75px;background:linear-gradient(120deg,#0b3154,#0d466f);color:#fff}.empresa-video-copy h2{font-size:35px;margin:8px 0 25px}.empresa-youtube{position:relative;width:100%;aspect-ratio:16/9;max-height:600px;border-radius:6px;overflow:hidden;background:#071f34;box-shadow:0 16px 45px rgba(0,0,0,.22)}.empresa-youtube iframe,.empresa-youtube video{position:absolute;inset:0;width:100%;height:100%;border:0}.empresa-youtube video{object-fit:cover;background:#071f34}@media(max-width:850px){.inner-hero{height:300px}.inner-hero h1{font-size:39px}.empresa-intro-grid,.empresa-detail-grid{grid-template-columns:1fr;gap:35px}.empresa-photo.tall,.empresa-photo.landscape{height:390px}.facts-grid{grid-template-columns:1fr 1fr}.fact:nth-child(2){border-right:0}.fact:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.18)}.empresa-detail-grid .empresa-photo{order:-1}}@media(max-width:520px){.inner-hero h1{font-size:34px}.empresa-text h2{font-size:31px}.facts-grid{grid-template-columns:1fr}.fact{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.18)}.fact:last-child{border-bottom:0}.empresa-photo.tall,.empresa-photo.landscape{height:320px}}

/* Entrega 5: Sostenibilidad */
.sustainability-hero>img{filter:saturate(.9)}.sustainability-intro{background:#fff}.sustain-intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:65px;align-items:center}.sustain-copy h2,.sustain-heading h2{font-size:38px;line-height:1.12;margin:10px 0 18px}.sustain-copy p,.sustain-heading p{font-size:15px;line-height:1.75;color:var(--muted)}.sustain-photo{height:360px;border-radius:6px;overflow:hidden;box-shadow:0 14px 35px rgba(10,42,69,.12)}.sustain-photo img{width:100%;height:100%;object-fit:cover}.sustain-partners{background:var(--soft);padding:38px 0}.partner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;align-items:center;margin-top:24px}.partner-grid img{width:100%;height:85px;object-fit:contain;background:#fff;padding:13px;border:1px solid var(--line);border-radius:5px}.sustain-heading{max-width:800px;margin-bottom:32px}.sustain-cards{display:grid;grid-template-columns:1fr 1fr;gap:28px}.sustain-card{position:relative;height:330px;overflow:hidden;border-radius:6px;color:#fff;text-decoration:none;box-shadow:0 12px 30px rgba(10,42,69,.12)}.sustain-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,38,64,.9),rgba(4,38,64,.05) 70%)}.sustain-card img{width:100%;height:100%;object-fit:cover;transition:.35s}.sustain-card:hover img{transform:scale(1.035)}.sustain-card div{position:absolute;z-index:2;left:28px;right:28px;bottom:25px}.sustain-card span{font-size:11px;font-weight:800;letter-spacing:.1em;color:#9bdf58}.sustain-card h3{font-size:25px;margin:6px 0 12px}.sustain-card b{font-size:13px}.sustain-highlight{background:var(--navy);color:#fff;padding:34px 0}.sustain-highlight .wrap{display:flex;align-items:baseline;gap:18px}.sustain-highlight strong{font-size:38px}.sustain-highlight span{font-size:18px}.sustain-detail-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:center}.sustain-detail-photo{height:480px;overflow:hidden;border-radius:6px;box-shadow:0 14px 35px rgba(10,42,69,.12)}.sustain-detail-photo img{width:100%;height:100%;object-fit:cover}.social-amount{margin-top:28px;padding:22px 25px;background:var(--navy);color:#fff;border-radius:5px;display:flex;flex-direction:column;gap:5px}.social-amount strong{font-size:30px}.social-amount span{font-size:14px;line-height:1.5}@media(max-width:850px){.sustain-intro-grid,.sustain-detail-grid{grid-template-columns:1fr;gap:35px}.partner-grid{grid-template-columns:1fr 1fr}.sustain-cards{grid-template-columns:1fr}.sustain-highlight .wrap{align-items:flex-start;flex-direction:column;gap:5px}.sustain-detail-photo{height:380px}}@media(max-width:520px){.sustain-copy h2,.sustain-heading h2{font-size:31px}.partner-grid{grid-template-columns:1fr 1fr;gap:12px}.partner-grid img{height:72px}.sustain-card{height:290px}.sustain-highlight strong{font-size:32px}.sustain-highlight span{font-size:16px}.sustain-detail-photo{height:320px}}

/* Hotfix: videos institucionales sin controles nativos */
video::-webkit-media-controls{display:none!important;} video::-webkit-media-controls-enclosure{display:none!important;}

/* Hotfix Sostenibilidad: banner HD corporativo */
.sustainability-hero{height:420px;background:#0b3557;}
.sustainability-hero>img{filter:none;object-position:center center;}
@media(max-width:850px){.sustainability-hero{height:340px}.sustainability-hero>img{object-position:62% center;}}
@media(max-width:520px){.sustainability-hero{height:310px}.sustainability-hero>img{object-position:68% center;}}

/* Hotfix banner Sostenibilidad: la imagen ya contiene su composición y textos. */
.sustainability-hero{height:420px;background:#0b3557;}
.sustainability-hero>img{filter:none;object-position:center center;}
.sustainability-hero .inner-hero-shade,.sustainability-hero .inner-hero-copy{display:none!important;}
@media(max-width:850px){.sustainability-hero{height:340px}.sustainability-hero>img{object-position:center center;}}
@media(max-width:520px){.sustainability-hero{height:260px}.sustainability-hero>img{object-position:center center;}}

/* Ambiental hero - imagen HD integrada */
.ambiental-hero{height:420px;background:#0b3557;}
.ambiental-hero>img{width:100%;height:100%;object-fit:cover;object-position:center center;filter:none;}
@media(max-width:850px){.ambiental-hero{height:340px}.ambiental-hero>img{object-position:center center;}}
@media(max-width:520px){.ambiental-hero{height:260px}.ambiental-hero>img{object-position:center center;}}

/* Hotfix banners Empresa + Social: imágenes web HD + texto HTML accesible */
.empresa-hero-hd,.social-hero-hd{height:420px;background:#0b3557;}
.empresa-hero-hd>img,.social-hero-hd>img{width:100%;height:100%;object-fit:cover;filter:none;}
.empresa-hero-hd>img{object-position:center 46%;}
.social-hero-hd>img{object-position:center center;}
.empresa-hero-hd .inner-hero-shade,.social-hero-hd .inner-hero-shade{display:block!important;background:linear-gradient(90deg,rgba(5,36,61,.80) 0%,rgba(5,36,61,.52) 38%,rgba(5,36,61,.10) 74%,rgba(5,36,61,.03) 100%);}
.empresa-hero-hd .inner-hero-copy,.social-hero-hd .inner-hero-copy{display:flex!important;}
@media(max-width:850px){.empresa-hero-hd,.social-hero-hd{height:340px}.empresa-hero-hd>img{object-position:58% center}.social-hero-hd>img{object-position:60% center}}
@media(max-width:520px){.empresa-hero-hd,.social-hero-hd{height:300px}.empresa-hero-hd>img{object-position:63% center}.social-hero-hd>img{object-position:68% center}.empresa-hero-hd .inner-hero-shade,.social-hero-hd .inner-hero-shade{background:linear-gradient(90deg,rgba(5,36,61,.86),rgba(5,36,61,.36))}}

/* Hotfix: hero HD de Nuestra Empresa y menu activo por ruta */
.empresa-hero-generated{height:420px;position:relative;overflow:hidden;background:#0b3557;}
.empresa-hero-generated>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center center;}
@media(max-width:850px){.empresa-hero-generated{height:340px}.empresa-hero-generated>img{object-position:48% center}}
@media(max-width:520px){.empresa-hero-generated{height:290px}.empresa-hero-generated>img{object-position:43% center}}

/* Noticias */
.news-hero{min-height:300px;display:flex;align-items:center;background:linear-gradient(100deg,rgba(5,44,74,.96),rgba(5,85,125,.78)),url('/images/Banner-Empresa-HD.jpg') center 55%/cover no-repeat;color:#fff}.news-hero h1{font-size:48px;margin:8px 0}.news-hero p{font-size:18px}.news-grid .card-body p{color:#63717b;line-height:1.55;font-size:14px}.news-detail{padding:70px 0 90px}.article-wrap{max-width:900px}.article-back{display:inline-block;margin-bottom:32px;color:#0d7653;font-weight:700}.news-detail time{display:block;color:#71808b;font-weight:600}.news-detail h1{font-size:44px;line-height:1.12;color:#073b60;margin:12px 0 20px}.news-detail .lead{font-size:20px;line-height:1.65;color:#53636d}.article-cover{width:100%;max-height:560px;object-fit:cover;border-radius:10px;margin:28px 0}.article-content{font-size:17px;line-height:1.8;color:#354650}.article-content p{margin:0 0 20px}
/* Administración */
.admin-bg{min-height:100vh;background:#f2f6f8;display:grid;place-items:center}.admin-login{width:min(430px,92vw);background:#fff;padding:38px;border-radius:12px;box-shadow:0 16px 50px rgba(0,30,50,.12)}.admin-login img{width:190px;display:block;margin:0 auto 25px}.admin-login h1{color:#073b60}.admin-login label,.news-form label{display:block;font-weight:700;color:#24414f;margin:16px 0}.admin-login input,.news-form input,.news-form textarea,.news-form select{display:block;width:100%;box-sizing:border-box;margin-top:7px;padding:12px;border:1px solid #cad5db;border-radius:6px;font:inherit}.admin-error{background:#fff0f0;color:#a22;padding:10px;border-radius:6px}.admin-section h1{color:#073b60}.admin-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:30px}.inline-form{display:inline}.admin-link{border:0;background:none;color:#51636e;margin-left:18px;cursor:pointer}.admin-table-wrap{overflow:auto;background:#fff;border-radius:8px;box-shadow:0 5px 20px rgba(0,40,65,.08)}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:16px;text-align:left;border-bottom:1px solid #e5ecef}.status{padding:5px 9px;border-radius:20px;font-size:12px;font-weight:700}.status.published{background:#e4f5ed;color:#16704f}.status.draft{background:#eef1f3;color:#65727a}.narrow{max-width:900px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.admin-preview{max-width:360px;max-height:220px;object-fit:cover;border-radius:8px}.danger-btn{margin-top:25px;border:1px solid #b52d2d;color:#b52d2d;background:#fff;padding:10px 16px;border-radius:5px;cursor:pointer}@media(max-width:700px){.news-detail h1{font-size:34px}.admin-head{display:block}.form-grid{grid-template-columns:1fr}}
/* Entrega 6.3 - Administración y seguridad */
.admin-bg{background:linear-gradient(135deg,rgba(5,45,74,.96),rgba(8,75,93,.88)),url('/images/PortadaHidroaltoWeb.jpg') center/cover fixed!important;position:relative}
.admin-bg:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 80% 20%,rgba(80,180,75,.18),transparent 32%);pointer-events:none}
.admin-login{width:min(350px,90vw)!important;padding:27px 30px!important;border-radius:16px!important;box-shadow:0 22px 65px rgba(0,20,35,.35)!important;position:relative;z-index:1}
.admin-login img{width:145px!important;margin:0 auto 15px!important}.admin-login h1{text-align:center;margin:4px 0 2px;font-size:27px}.admin-kicker{display:block;text-align:center;color:#45a735;font-size:11px;font-weight:800;letter-spacing:.12em}.admin-login-sub{text-align:center;color:#6b7d86;font-size:13px;margin:0 0 15px}.admin-login label{margin:12px 0!important;font-size:13px}.admin-login input{padding:10px 11px!important}.admin-login .btn{width:100%;margin-top:5px}.admin-ok{background:#e9f7ef;color:#17643f;padding:11px 13px;border-radius:7px;margin:0 0 18px}.admin-link-button{display:inline-block;padding:10px 14px;border:1px solid #cad8df;border-radius:6px;text-decoration:none;color:#0a466d;background:#fff;margin-right:8px}.credential-grid{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:24px}.admin-panel{background:#fff;padding:24px;border-radius:10px;box-shadow:0 5px 20px rgba(0,40,65,.08)}.admin-panel h2{margin-top:0;color:#073b60}.admin-panel label{display:block;font-weight:700;color:#24414f;margin:13px 0}.admin-panel input{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:10px;border:1px solid #cad5db;border-radius:6px}.admin-panel .btn{margin-top:18px}.credential-user{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid #e5ecef}.credential-user>div span,.credential-user>div small{display:block;color:#65727a;margin-top:3px}.credential-user details{text-align:right}.credential-user summary{cursor:pointer;color:#0872b9}.credential-user form{margin-top:8px}.credential-user form input{min-width:220px}.credential-user form button{margin-top:5px;padding:7px 10px;cursor:pointer}@media(max-width:800px){.credential-grid{grid-template-columns:1fr}.credential-user{display:block}.credential-user details{text-align:left;margin-top:10px}}

.admin-panel select{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:10px;border:1px solid #cad5db;border-radius:6px;background:#fff;font:inherit}.admin-panel small{display:block;margin-top:10px;color:#65727a;line-height:1.45}.role-badge{display:inline-block!important;width:max-content;margin-top:7px!important;padding:4px 8px;border-radius:20px;font-size:11px;font-weight:800}.role-admin{background:#e7f0f8;color:#073b60!important}.role-editor{background:#e9f7e7;color:#27751d!important}
/* Entrega 6.5 - Contacto */
.contact-hero{min-height:300px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(5,43,72,.96),rgba(5,76,101,.72)),url('/images/Banner-Social-HD.jpg') center 52%/cover no-repeat}.contact-hero h1{font-size:48px;margin:8px 0 10px}.contact-hero p{font-size:18px;margin:0;max-width:620px;line-height:1.55}.contact-section{padding:75px 0 90px;background:linear-gradient(180deg,#f7fafc,#fff)}.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:start}.contact-info{padding-top:18px}.contact-info h2{font-size:38px;line-height:1.12;margin:10px 0 18px;color:#073b60}.contact-info>p{font-size:16px;line-height:1.75;color:#60717d;max-width:500px}.contact-card{margin-top:32px;display:flex;gap:16px;align-items:center;padding:20px;background:#fff;border:1px solid #e0e9ee;border-radius:10px;box-shadow:0 8px 25px rgba(0,45,70,.06)}.contact-icon{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:#eaf6e7;color:#39972d;font-size:20px}.contact-card small{display:block;color:#71818a;margin-bottom:5px}.contact-card a{font-size:17px;font-weight:800;color:#073b60;text-decoration:none}.contact-social{margin-top:30px}.contact-social strong{display:block;color:#073b60;margin-bottom:13px}.contact-social div{display:flex;gap:10px;flex-wrap:wrap}.contact-social a{border:1px solid #d6e2e8;padding:9px 13px;border-radius:6px;color:#0b608f;text-decoration:none;font-size:13px;font-weight:700;background:#fff}.contact-form-card{background:#fff;border-radius:14px;padding:34px 38px;box-shadow:0 18px 55px rgba(6,48,72,.12);border-top:4px solid var(--green)}.contact-form-card h2{font-size:28px;color:#073b60;margin:0 0 6px}.contact-form-card>p{color:#71818a;margin:0 0 24px}.contact-form-card label{display:block;font-size:13px;font-weight:800;color:#24414f;margin:0 0 17px}.contact-form-card input,.contact-form-card textarea{display:block;width:100%;margin-top:7px;border:1px solid #cad7de;border-radius:7px;padding:12px 13px;font:inherit;outline:none;background:#fbfdfe}.contact-form-card textarea{resize:vertical;min-height:140px}.contact-form-card input:focus,.contact-form-card textarea:focus{border-color:#45a735;box-shadow:0 0 0 3px rgba(69,167,53,.10)}.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form-card span.field-validation-error{display:block;color:#a52b2b;font-size:11px;margin-top:5px}.contact-error{color:#a52b2b;margin-bottom:14px}.contact-ok{background:#e8f7e8;color:#246f20;padding:12px 14px;border-radius:7px;margin-bottom:18px}.contact-submit{border:0;cursor:pointer;font:inherit}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}@media(max-width:850px){.contact-grid{grid-template-columns:1fr;gap:38px}.contact-hero{min-height:260px}.contact-hero h1{font-size:40px}}@media(max-width:520px){.contact-section{padding:50px 0 65px}.contact-form-card{padding:25px 20px}.contact-form-grid{grid-template-columns:1fr;gap:0}.contact-info h2{font-size:32px}.contact-hero h1{font-size:35px}}

/* Entrega 6.5.2 - refinamiento Contactenos */
.brand{height:70px;width:220px}.brand img{width:210px;height:64px;object-fit:contain;display:block}.contact-hero{min-height:360px;position:relative;background:linear-gradient(90deg,rgba(4,38,64,.86) 0%,rgba(4,48,74,.60) 45%,rgba(4,48,74,.18) 100%),url('/images/PortadaHidroaltoWeb.jpg') center 48%/cover no-repeat}.contact-hero-copy{position:relative;z-index:1}.contact-hero h1{font-size:52px;text-shadow:0 2px 16px rgba(0,0,0,.22)}.contact-social div{gap:12px}.contact-social .social-link{display:inline-flex;align-items:center;gap:9px;padding:10px 14px;border-radius:8px;transition:.18s ease}.contact-social .social-link:hover{transform:translateY(-2px);border-color:#9fc4d8;box-shadow:0 7px 18px rgba(5,50,80,.09)}.social-link svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.social-link svg .fill{fill:currentColor;stroke:none}.social-link svg .fill-white{fill:currentColor;stroke:none}.contact-submit:disabled{opacity:.68;cursor:wait}.contact-error-box{background:#fff1f1;border:1px solid #efc2c2;color:#8d2525;padding:12px 14px;border-radius:7px;margin-bottom:18px}.contact-ok{background:#e8f7e8;border:1px solid #b9dfb6;color:#246f20;padding:12px 14px;border-radius:7px;margin-bottom:18px}@media(max-width:850px){.brand{width:180px}.brand img{width:170px}.contact-hero{min-height:310px;background-position:58% center}}@media(max-width:520px){.brand{width:155px}.brand img{width:148px}.contact-hero{min-height:280px;background-position:62% center}.contact-hero h1{font-size:38px}}
.turnstile-wrap{margin:2px 0 20px;min-height:65px}.contact-submit:disabled{opacity:.65;cursor:not-allowed}.contact-error-box{background:#fff1f1;color:#9a2727;border:1px solid #f1cccc;padding:12px 14px;border-radius:7px;margin-bottom:18px}

/* Entrega 6.6.1 - CAPTCHA propio, sin servicios externos */
.captcha-box{margin:4px 0 22px;padding:16px;border:1px solid #d9e5eb;border-radius:10px;background:#f8fbfc}.captcha-head{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:11px}.captcha-head strong{font-size:13px;color:#24414f}.captcha-head span{font-size:11px;color:#71818a}.captcha-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}.captcha-row img{display:block;width:250px;max-width:calc(100% - 52px);height:76px;border:1px solid #d1dee5;border-radius:9px;background:#f4f8fa;user-select:none}.captcha-refresh{width:42px;height:42px;border:1px solid #cad9e1;border-radius:50%;background:#fff;color:#0b608f;font-size:24px;line-height:1;cursor:pointer}.captcha-refresh:hover{border-color:#45a735;color:#39972d}.captcha-refresh:disabled{opacity:.55;cursor:wait}.contact-form-card .captcha-label{margin-bottom:0}.contact-form-card .captcha-label input{text-transform:uppercase;letter-spacing:.16em;font-weight:800;max-width:250px}@media(max-width:520px){.captcha-head{display:block}.captcha-head span{display:block;margin-top:4px}.captcha-row img{height:auto}}

/* Entrega 6.7 - Nuestra Empresa / rediseño corporativo */
.empresa-corporate-intro{padding:88px 0 92px;background:#fff}.empresa-corporate-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:72px;align-items:center}.empresa-corporate-copy h2,.empresa-section-head h2,.empresa-commitment h2{font-size:clamp(34px,4vw,52px);line-height:1.06;margin:10px 0 24px;color:#073b60;letter-spacing:-.025em}.empresa-corporate-copy p,.empresa-operation-copy p{color:#5e707c;font-size:16px;line-height:1.78}.empresa-corporate-copy .empresa-lead{font-size:20px;line-height:1.55;color:#24495f;font-weight:600}.empresa-feature-photo{margin:0;position:relative;border-radius:3px 34px 3px 3px;overflow:hidden;min-height:500px;box-shadow:0 24px 60px rgba(5,45,70,.16)}.empresa-feature-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(4,35,57,.82) 100%);pointer-events:none}.empresa-feature-photo img{width:100%;height:500px;display:block;object-fit:cover;object-position:center}.empresa-feature-photo figcaption{position:absolute;z-index:2;left:30px;right:30px;bottom:25px;color:#fff;display:flex;justify-content:space-between;align-items:end;gap:20px}.empresa-feature-photo figcaption strong{font-size:20px}.empresa-feature-photo figcaption span{font-size:13px;opacity:.82}.empresa-date-line{margin-top:32px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;color:#46a52f;font-weight:800}.empresa-date-line i{height:2px;background:linear-gradient(90deg,#46a52f,#b8d8ae)}.empresa-date-line small{grid-column:1/-1;color:#7b8b95;font-size:11px;font-weight:600;letter-spacing:.03em}.empresa-facts-premium{background:#073b60;padding:0}.empresa-facts-premium .facts-grid{min-height:155px;align-items:stretch}.empresa-facts-premium .fact{display:flex;flex-direction:column;justify-content:center;border-right:1px solid rgba(255,255,255,.14);padding:26px 28px}.empresa-facts-premium .fact:first-child{border-left:1px solid rgba(255,255,255,.14)}.empresa-facts-premium .fact strong{color:#fff;font-size:35px;line-height:1;margin-bottom:11px}.empresa-facts-premium .fact strong em{font-style:normal;font-size:15px;color:#8dd47d;letter-spacing:.02em}.empresa-facts-premium .fact span{color:rgba(255,255,255,.72);font-size:12px;line-height:1.4}.empresa-operation{padding:95px 0;background:#f5f8fa}.empresa-section-head{max-width:720px;margin-bottom:42px}.empresa-section-head>p{color:#71818a;font-size:17px;margin-top:-10px}.empresa-operation-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center}.empresa-operation-visual{height:520px;position:relative;overflow:hidden;border-radius:24px 4px 24px 4px;box-shadow:0 20px 50px rgba(6,45,67,.13)}.empresa-operation-visual>img{width:100%;height:100%;object-fit:cover;object-position:center}.empresa-transmission-card{position:absolute;left:25px;bottom:25px;width:min(330px,calc(100% - 50px));background:rgba(255,255,255,.94);backdrop-filter:blur(8px);padding:20px 22px;border-left:4px solid #46a52f}.empresa-transmission-card strong{display:block;color:#073b60;font-size:30px;margin-bottom:5px}.empresa-transmission-card span{display:block;color:#5e707c;font-size:12px;line-height:1.5}.empresa-operation-copy h3{font-size:25px;color:#073b60;margin:0 0 12px}.empresa-divider{width:56px;height:3px;background:#46a52f;margin:30px 0}.empresa-commitment{padding:78px 0;background:linear-gradient(120deg,#073b60,#0a5872);color:#fff}.empresa-commitment-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:80px;align-items:start}.empresa-commitment h2{color:#fff;margin-bottom:0}.empresa-commitment p{margin:0 0 17px;color:rgba(255,255,255,.78);font-size:16px;line-height:1.75}.empresa-video-premium{padding:90px 0 100px;background:#071f34}.empresa-section-head-light{margin-bottom:32px}.empresa-section-head-light h2{color:#fff}.empresa-video-premium .empresa-local-video{border-radius:20px;overflow:hidden;box-shadow:0 28px 70px rgba(0,0,0,.28)}.empresa-video-premium video{display:block;width:100%;max-height:650px;object-fit:cover}
@media(max-width:900px){.empresa-corporate-grid,.empresa-operation-grid,.empresa-commitment-grid{grid-template-columns:1fr;gap:40px}.empresa-feature-photo,.empresa-feature-photo img{min-height:400px;height:400px}.empresa-operation-visual{height:430px}.empresa-commitment-grid{gap:20px}.empresa-facts-premium .facts-grid{grid-template-columns:1fr 1fr}.empresa-facts-premium .fact:nth-child(3){border-left:1px solid rgba(255,255,255,.14)}}
@media(max-width:560px){.empresa-corporate-intro,.empresa-operation{padding:60px 0}.empresa-corporate-copy h2,.empresa-section-head h2,.empresa-commitment h2{font-size:34px}.empresa-feature-photo,.empresa-feature-photo img{min-height:330px;height:330px}.empresa-feature-photo figcaption{left:20px;right:20px;bottom:18px;display:block}.empresa-feature-photo figcaption span{display:block;margin-top:5px}.empresa-facts-premium .facts-grid{grid-template-columns:1fr}.empresa-facts-premium .fact,.empresa-facts-premium .fact:first-child,.empresa-facts-premium .fact:nth-child(3){border-left:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.empresa-operation-visual{height:360px}.empresa-video-premium{padding:65px 0 75px}}


/* Entrega 6.7.1 - Home: primera pantalla limpia y sin controles de carrusel */
@media (min-width:851px){
  .hero{height:calc(100svh - 86px - 142px);min-height:0;}
  .pillars{height:142px;}
  .pillars-grid{height:100%;padding:28px 0;align-items:center;}
}
.hero-dots{display:none!important;}

/* Entrega 6.7.2 - navegación por pantallas y logo HD */
.header{height:86px;}
.brand{height:82px;width:190px;overflow:visible;}
.brand img{width:150px;height:auto;max-height:82px;object-fit:contain;display:block;image-rendering:auto;}

/* El ancla deja Nuestra Empresa justo debajo del header, pero conserva
   la altura natural/original del bloque y del video. */
#empresa{scroll-margin-top:86px;}
#empresa .home-company-video{width:100%;height:100%;object-fit:cover;display:block;}

/* Cada bloque principal se comporta como una pantalla al desplazarse por anclas. */
html{scroll-padding-top:86px;}

@media(max-width:850px){
  .header{height:76px;}
  .brand{height:72px;width:160px;}
  .brand img{width:132px;max-height:72px;}
  #empresa{scroll-margin-top:76px;}
  #empresa .company-media,#empresa .company-copy{height:auto;min-height:390px;}
  html{scroll-padding-top:76px;}
}
@media(max-width:520px){
  .brand{width:145px;}
  .brand img{width:122px;}
}

/* Entrega 6.7.3 - Home: primera vista completa + Empresa con altura natural */
@media (min-width:851px) and (max-height:760px){
  .hero{height:calc(100svh - 86px - 132px);}
  .pillars{height:132px;}
  .pillars-grid{padding:20px 0;}
  .pillar h3{margin:8px 0 5px;}
}

/* Entrega 6.7.4 - Home: composición final según referencia */
@media (min-width:851px){
  /* En Inicio subimos el contenido para mostrar completos los cuatro bloques
     y dejamos una respiración blanca antes de la siguiente sección. */
  .hero{height:calc(100svh - 86px - 142px - 34px);min-height:430px;}
  .pillars{height:142px;margin-bottom:34px;background:#fff;}
  .pillars-grid{height:100%;padding:22px 0;align-items:center;}

  /* Nuestra Empresa conserva una altura corporativa compacta; no se estira al viewport. */
  #empresa.company-block{min-height:370px;}
  #empresa .company-media,#empresa .company-copy{min-height:370px;height:370px;}
  #empresa .copy-inner{padding:44px 65px;}

  /* El ancla empieza exactamente bajo el encabezado. El espacio anterior no aparece al navegar. */
  #empresa{scroll-margin-top:86px;}
}

@media (min-width:851px) and (max-height:760px){
  .hero{height:calc(100svh - 86px - 132px - 28px);min-height:390px;}
  .pillars{height:132px;margin-bottom:28px;}
  .pillars-grid{padding:16px 0;}
  #empresa.company-block,#empresa .company-media,#empresa .company-copy{min-height:350px;height:350px;}
}

/* Entrega 6.7.5 - Correccion exacta del ancla #empresa.
   Evita sumar scroll-padding + scroll-margin (doble desplazamiento de 86px). */
html{scroll-padding-top:0;}
#empresa{scroll-margin-top:86px;}
@media(max-width:850px){
  html{scroll-padding-top:0;}
  #empresa{scroll-margin-top:76px;}
}
