/* WE ENERGY — Etapa 34. Sistema corporativo, navegación local y mapa aprobado. */
* { box-sizing:border-box; }
:root {
  --we-bg:#101820;
  --we-header:rgba(18,31,41,.72);
  --we-header-border:rgba(239,243,246,.12);
  --we-text:#edf1f4;
  --we-muted:#b8c4cc;
  --we-orange:#e88322;
  --we-topbar-h:72px;
  --we-width:1360px;
}
html,body {margin:0;min-height:100%;}
html {background:var(--we-bg);scroll-behavior:auto;}
body {
  width:100%;min-height:100vh;min-height:100dvh;overflow-x:hidden;
  background:var(--we-bg);color:var(--we-text);
  font-family:"Nunito",Arial,sans-serif;-webkit-font-smoothing:antialiased;
}
a,button,input,select,textarea {font:inherit;}
button {cursor:pointer;}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {
  outline:2px solid #f4a75f;outline-offset:3px;
}
.we-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;
}
#mapa,#capacidad-operativa,#contacto {scroll-margin-top:calc(var(--we-topbar-h) + 12px);}

/* Encabezado estático: la segunda barra ya no se contrae ni se desplaza al hacer scroll. */
.we-hero {
  position:relative;z-index:1200;width:100%;overflow:visible;
  padding-top:var(--we-topbar-h);
  background:
    radial-gradient(circle at 14% 22%, rgba(232,131,34,.06), transparent 15%),
    radial-gradient(circle at 31% 34%, rgba(255,255,255,.045), transparent 18%),
    radial-gradient(circle at 54% 42%, rgba(77,132,214,.10), transparent 24%),
    linear-gradient(90deg, rgba(12,24,36,.84) 0%, rgba(15,32,48,.82) 22%, rgba(18,45,72,.80) 48%, rgba(15,41,66,.82) 74%, rgba(9,21,34,.86) 100%);
  border-bottom:1px solid rgba(239,243,246,.11);
  box-shadow:0 2px 14px rgba(0,0,0,.13);
  opacity:1;transform:none;
}
.we-hero.is-ready {opacity:1;}
.we-topbar {
  position:fixed;top:0;left:0;right:0;z-index:1300;width:100%;height:var(--we-topbar-h);
  background:
    radial-gradient(circle at 14% 22%, rgba(232,131,34,.06), transparent 15%),
    radial-gradient(circle at 31% 34%, rgba(255,255,255,.045), transparent 18%),
    radial-gradient(circle at 54% 42%, rgba(77,132,214,.10), transparent 24%),
    linear-gradient(90deg, rgba(12,24,36,.80) 0%, rgba(15,32,48,.79) 22%, rgba(18,45,72,.77) 48%, rgba(15,41,66,.79) 74%, rgba(9,21,34,.82) 100%);
  border-bottom:1px solid rgba(239,243,246,.09);
  box-shadow:0 2px 12px rgba(0,0,0,.12);
  -webkit-backdrop-filter:blur(13px) saturate(118%);
  backdrop-filter:blur(13px) saturate(118%);
  transition:border-color 220ms ease;
  animation:we-topbar-entrada 920ms cubic-bezier(.22,1,.36,1) 70ms both;
  will-change:transform,opacity;
}
@keyframes we-topbar-entrada {
  0% {transform:translate3d(0,-105%,0);opacity:0;}
  42% {opacity:.72;}
  100% {transform:translate3d(0,0,0);opacity:1;}
}
.we-topbar__inner {
  width:min(100%,1488px);height:100%;margin:auto;
  padding:0 clamp(18px,3vw,42px);
  display:flex;align-items:center;gap:clamp(18px,3vw,45px);min-width:0;
}
.we-topbar__brand {
  display:inline-flex;flex:0 0 auto;align-items:center;padding:5px 0;
  color:inherit;text-decoration:none;transition:opacity 220ms ease;
}
.we-topbar__brand:hover {opacity:.88;}
.we-topbar__brand img {display:block;width:clamp(185px,16vw,218px);height:auto;max-height:59px;object-fit:contain;}
.we-topbar__nav {display:flex;align-items:center;justify-content:center;gap:clamp(16px,2.2vw,34px);flex:1;min-width:0;}
.we-topbar__nav a {
  position:relative;display:inline-flex;align-items:center;min-height:45px;
  padding:12px 0;color:#dbe4eb;text-decoration:none;white-space:nowrap;
  font-size:12px;font-weight:700;letter-spacing:.045em;
  transition:color 210ms ease;
}
.we-topbar__nav a::after {
  content:"";position:absolute;left:0;right:0;bottom:7px;height:2px;
  background:var(--we-orange);transform:scaleX(0);transform-origin:left;
  transition:transform 250ms cubic-bezier(.22,1,.36,1);
}
.we-topbar__nav a:hover,.we-topbar__nav a:focus-visible {color:#ffffff;}
.we-topbar__nav a:hover::after,.we-topbar__nav a:focus-visible::after {transform:scaleX(1);}
.we-topbar__cta {
  flex:0 0 auto;display:inline-flex;align-items:center;justify-content:space-between;
  gap:14px;min-height:42px;padding:10px 16px;border:1px solid #ea8a2b;
  border-radius:4px;background:linear-gradient(180deg,#ef9b47 0%, #ea8a2b 100%);color:#162534;
  box-shadow:0 10px 22px rgba(232,131,34,.18);
  font-size:13px;font-weight:300;text-decoration:none;white-space:nowrap;letter-spacing:.02em;
  transition:background-color 200ms,border-color 200ms, transform 200ms ease, box-shadow 200ms ease;
}
.we-topbar__cta:hover {background:linear-gradient(180deg,#f3a65b 0%, #ef9439 100%);border-color:#f3a65b;box-shadow:0 12px 26px rgba(232,131,34,.24);transform:translateY(-1px);}
.we-topbar__menu {display:none;flex:0 0 44px;width:44px;height:44px;padding:11px;border:1px solid #51606b;border-radius:3px;background:transparent;color:#edf1f4;}
.we-topbar__menu span {display:block;height:1.5px;background:currentColor;margin:4px 0;transition:transform 200ms,opacity 200ms;}
.we-topbar__menu[aria-expanded="true"] span:first-child {transform:translateY(5.5px) rotate(45deg);}
.we-topbar__menu[aria-expanded="true"] span:nth-child(2) {opacity:0;}
.we-topbar__menu[aria-expanded="true"] span:last-child {transform:translateY(-5.5px) rotate(-45deg);}

/* Segunda barra estática: sin animación ni cambios de tamaño/opacidad al desplazarse. */
.we-presentacion {
  background:transparent;color:#edf1f4;
  padding:14px clamp(20px,4vw,64px) 18px;
  max-height:none;
  opacity:1;overflow:visible;
  transform:none;
  will-change:auto;
  transition:none;
}
.we-presentacion.is-ready {transform:none;opacity:1;}
.we-presentacion__inner {
  width:min(100%,var(--we-width));margin:auto;display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.95fr);
  align-items:center;gap:clamp(20px,3vw,42px);
}
.we-presentacion__eyebrow,.we-capacidad__eyebrow,.we-contacto__eyebrow,.we-consulta__eyebrow {
  display:block;margin:0 0 9px;color:#f2a24e;font-size:12px;font-weight:300 !important;
  letter-spacing:2.3px;line-height:1.55;text-transform:uppercase;opacity:.98;
}
.we-presentacion h1 {
  margin:0;max-width:590px;font-size:clamp(24px,2.05vw,31px);
  line-height:1.12;font-weight:300;letter-spacing:-.03em;color:#ffffff;
}
.we-presentacion__contenido {
  padding-left:clamp(15px,1.6vw,22px);
  border-left:3px solid rgba(232,131,34,.78);
  background:linear-gradient(90deg, rgba(255,255,255,.018), rgba(255,255,255,0));
}
.we-presentacion__contenido>p {
  margin:0;max-width:610px;color:#f3f7fa;font-size:14px;line-height:1.68;font-weight:300;
  text-wrap:balance;
}
.we-presentacion__contenido>.we-boton {margin-top:14px;}
.we-boton {
  display:inline-flex;align-items:center;justify-content:space-between;gap:18px;
  min-height:44px;padding:11px 18px;border:1px solid transparent;border-radius:3px;
  font:700 12px/1.5 "Nunito",Arial,sans-serif;text-decoration:none;
  cursor:pointer;transition:background-color 200ms,border-color 200ms,color 200ms;
}
.we-boton--principal {background:linear-gradient(180deg,#ef9b47 0%, #ea8a2b 100%);color:#162534;border-color:#ea8a2b;box-shadow:0 10px 22px rgba(232,131,34,.14);}
.we-boton--principal:hover {background:linear-gradient(180deg,#f3a65b 0%, #ef9439 100%);border-color:#f3a65b;box-shadow:0 12px 26px rgba(232,131,34,.20);}
.we-boton--alternativo {color:#e5ebef;background:transparent;border-color:#52616d;}
.we-boton--alternativo:hover {background:rgba(255,255,255,.055);border-color:#91a2ad;}

/* Mapa y encuadre original. No se altera la geometría del SVG. */
.seccion-mapa {
  width:100%;min-width:0;height:calc(100vh - var(--we-topbar-h));
  height:calc(100dvh - var(--we-topbar-h));min-height:0;
  overflow:hidden;background:var(--we-bg);
}
.mapa {width:100%;height:100%;min-width:0;overflow:hidden;position:relative;background:#162735;}
.mapa__escena {width:100%;height:100%;min-width:0;overflow:hidden;}
.mapa__escena > svg {
  display:block;width:100%;height:100%;max-width:none;max-height:none;
  flex:none;overflow:hidden;shape-rendering:auto;text-rendering:optimizeLegibility;
}
.mapa__ayuda {display:none;}
html.we-layout-loading .mapa__escena {opacity:0;}
.mapa__escena {transition:opacity 260ms ease;}

/* Recursos operativos: una sección de consulta, no un catálogo decorativo. */
.we-capacidad {
  background:linear-gradient(180deg,#e9eff3 0%,#e4ebf0 100%);color:#24313b;
  border-top:1px solid #c9d4dc;border-bottom:1px solid #cbd6de;
  padding:clamp(48px,5vw,72px) clamp(20px,4vw,64px) clamp(44px,4.6vw,64px);
}
.we-capacidad__inner {width:min(100%,var(--we-width));margin:auto;}
.we-capacidad__eyebrow {color:#bf6e24;}
.we-capacidad__intro {max-width:790px;margin-bottom:28px;}
.we-capacidad__intro h2 {
  margin:0 0 12px;font-size:clamp(29px,2.8vw,40px);font-weight:400;
  line-height:1.2;letter-spacing:-.025em;
}
.we-capacidad__intro>p:last-child {margin:0;color:#5b6b77;font-size:15px;font-weight:400;line-height:1.65;}
.we-capacidad__grid {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;}
.we-recurso {min-width:0;padding:23px 19px;background:rgba(255,255,255,.70);border:1px solid #cbd6de;border-radius:3px;box-shadow:0 4px 14px rgba(31,50,64,.035);}
.we-recurso__numero {display:block;margin-bottom:20px;color:#bc691c;font-size:clamp(32px,3vw,42px);font-weight:200;line-height:1;font-variant-numeric:tabular-nums;}
.we-recurso h3 {margin:0 0 9px;font-size:14px;font-weight:700;line-height:1.4;}
.we-recurso p {margin:0;color:#64737d;font-size:12px;font-weight:400;line-height:1.65;}
.we-capacidad__footer {margin-top:23px;padding:19px 0 0;border-top:1px solid #c5d1da;}
.we-capacidad__footer-label {display:block;margin-bottom:7px;color:#a65b18;font-size:10px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;}
.we-capacidad__footer p {max-width:840px;margin:0;color:#61717c;font-size:12px;font-weight:400;line-height:1.65;}
.we-reveal {opacity:1;transform:none;}
.we-reveal.we-pending {opacity:0;transform:translate3d(0,16px,0);transition:opacity 580ms ease,transform 580ms cubic-bezier(.22,1,.36,1);}
.we-reveal.we-pending.is-visible {opacity:1;transform:none;}

/* Contacto: menos campos, lenguaje más directo y composición más limpia. */
.we-contacto {
  position:relative;overflow:hidden;
  background:
    linear-gradient(90deg, rgba(8,18,30,.98) 0%, rgba(11,28,46,.98) 16%, rgba(13,41,69,.96) 40%, rgba(17,58,96,.90) 56%, rgba(12,36,60,.95) 76%, rgba(7,17,28,.98) 100%);
  color:#edf1f4;border-top:1px solid rgba(255,255,255,.08);
  padding:clamp(54px,6vw,92px) clamp(20px,4vw,64px) clamp(48px,5vw,76px);
}
.we-contacto__fondo {
  position:absolute;inset:0;pointer-events:none;opacity:.72;
  background:
    radial-gradient(circle at 18% 56%, rgba(255,255,255,.08), transparent 16%),
    radial-gradient(circle at 38% 42%, rgba(61,119,206,.12), transparent 20%),
    radial-gradient(circle at 70% 48%, rgba(72,136,222,.13), transparent 24%),
    radial-gradient(circle at 83% 40%, rgba(255,255,255,.075), transparent 18%),
    linear-gradient(90deg, rgba(255,255,255,.025), rgba(255,255,255,0) 30%, rgba(255,255,255,0) 70%, rgba(255,255,255,.022));
}
.we-contacto__inner {position:relative;z-index:1;width:min(100%,var(--we-width));margin:auto;}
.we-contacto__encabezado {
  display:grid;justify-items:center;text-align:center;gap:14px;margin:0 auto 34px;max-width:880px;
}
.we-contacto__encabezado .we-contacto__eyebrow {margin:0;color:#f3a35a;}
.we-contacto__encabezado h2 {
  margin:0;max-width:760px;font-size:clamp(36px,4.6vw,68px);font-weight:700;line-height:.98;letter-spacing:-.03em;
}
.we-contacto__encabezado>p:last-child {margin:0;max-width:760px;color:#c6d3db;font-size:16px;line-height:1.72;}
.we-contacto__columnas {
  display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);
  align-items:start;gap:22px;
}
.we-consulta,.we-contacto__directo {
  min-width:0;border:1px solid rgba(255,255,255,.10);border-radius:4px;
  background:rgba(22,33,45,.92);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
}
.we-consulta {padding:clamp(26px,2.8vw,38px);}
.we-consulta__cabecera {padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.12);}
.we-consulta__eyebrow {margin-bottom:8px;color:#f3a35a;}
.we-consulta h3 {margin:0 0 8px;font-size:28px;font-weight:400;line-height:1.18;}
.we-consulta__cabecera>p:last-child {margin:0;color:#b4c2cb;font-size:13px;line-height:1.7;}
.we-consulta__grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;margin-top:24px;}
.we-campo {display:flex;min-width:0;flex-direction:column;gap:8px;}
.we-campo--full {grid-column:1/-1;}
.we-campo>span {color:#d7e0e6;font-size:12px;font-weight:700;line-height:1.4;}
.we-campo>span span {color:#f1a35c;}
.we-campo input,.we-campo select,.we-campo textarea {
  display:block;width:100%;min-width:0;max-width:100%;min-height:52px;padding:14px 15px;
  border:1px solid #415361;border-radius:3px;background:#162432;color:#edf1f4;
  font:400 14px/1.5 "Nunito",Arial,sans-serif;outline:none;
  transition:border-color 180ms,box-shadow 180ms,background-color 180ms;
}
.we-campo select {color-scheme:dark;}
.we-campo input::placeholder,.we-campo textarea::placeholder {color:#96a7b2;opacity:1;}
.we-campo input:focus,.we-campo select:focus,.we-campo textarea:focus {
  border-color:#f0a25a;box-shadow:0 0 0 1px #f0a25a;background:#192a39;
}
.we-campo textarea {resize:vertical;min-height:156px;}
.we-campo--mensaje {margin-top:18px;}
.we-consulta__acciones {display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:23px;}
.we-consulta__aviso {margin:14px 0 0;color:#aebec9;font-size:11px;line-height:1.6;}
.we-consulta__estado {margin:10px 0 0;color:#b9d6c6;font-size:12px;line-height:1.6;}
.we-consulta__estado:empty {display:none;}
.we-contacto__directo {padding:clamp(26px,2.8vw,38px);}
.we-contacto__directo h3 {margin:0 0 12px;font-size:30px;font-weight:300;line-height:1.18;letter-spacing:-0.02em;}
.we-contacto__directo-texto {margin:0;color:#b7c4cc;font-size:14px;line-height:1.75;}
.we-contacto__canales {display:grid;gap:0;margin-top:24px;border-top:1px solid rgba(255,255,255,.11);}
.we-contacto__canal {display:grid;grid-template-columns:38px minmax(0,1fr);gap:14px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.11);}
.we-contacto__canal-icono {display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(232,131,34,.25);border-radius:3px;color:#f1a35c;font-size:20px;line-height:1;}
.we-contacto__canal-etiqueta {display:block;margin-bottom:8px;color:#f1a35c;font-size:10px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;}
.we-contacto__canal a {display:inline-block;color:#e6edf1;text-decoration:none;font-size:16px;font-weight:600;line-height:1.65;overflow-wrap:anywhere;}
.we-contacto__canal a:hover {color:#f1a35c;}
.we-contacto__canal a span {margin-left:5px;color:#f1a35c;}
.we-contacto__canal-icono svg {display:block;}
.we-contacto__canal-icono--whatsapp svg {display:block;width:20px;height:20px;transform:translateY(.2px);}

/* Responsive */
@media(max-width:1150px) {
  .we-topbar__inner {gap:20px;padding-inline:24px;}
  .we-topbar__brand img {width:190px;}
  .we-topbar__nav {gap:17px;}
  .we-topbar__nav a {font-size:11px;}
  .we-topbar__cta {gap:10px;padding-inline:12px;}
  .we-capacidad__grid {grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:980px) {
  .we-presentacion__inner {grid-template-columns:1fr;gap:16px;}
  .we-presentacion__contenido>p {max-width:780px;}
  .we-contacto__encabezado {gap:12px;margin-bottom:28px;}
  .we-contacto__encabezado .we-contacto__eyebrow {margin-bottom:0;}
  .we-contacto__columnas {grid-template-columns:1fr;gap:18px;}
  .we-contacto__directo {display:grid;grid-template-columns:1fr 1fr;gap:0 30px;}
  .we-contacto__directo>.we-contacto__eyebrow,.we-contacto__directo>h3,.we-contacto__directo-texto {grid-column:1/-1;}
  .we-contacto__canales {grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
}
@media(max-width:850px) {
  :root {--we-topbar-h:68px;}
  .we-topbar__inner {padding-inline:18px;gap:13px;}
  .we-topbar__brand {margin-right:auto;}
  .we-topbar__brand img {width:190px;max-height:54px;}
  .we-topbar__menu {display:block;}
  .we-topbar__nav {
    display:none;position:absolute;top:100%;left:0;right:0;
    padding:12px 18px 16px;background:rgba(18,31,41,.98);
    border-bottom:1px solid rgba(239,243,246,.16);box-shadow:0 12px 24px rgba(0,0,0,.20);
    flex-direction:column;align-items:stretch;gap:0;
  }
  .we-topbar__nav.is-open {display:flex;}
  .we-topbar__nav a {width:100%;min-height:48px;padding:13px 8px;font-size:13px;}
  .we-topbar__nav a::after {left:8px;right:auto;width:42px;bottom:5px;}
  .we-topbar__cta {min-height:42px;font-size:11px;}
  .seccion-mapa {height:auto;min-height:calc(100dvh - var(--we-topbar-h));overflow:visible;}
  .mapa {height:calc(100dvh - var(--we-topbar-h));min-height:440px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;}
  .mapa__escena {width:max(100%,960px);height:100%;}
  .mapa__ayuda {display:block;margin:0;padding:10px 18px 12px;text-align:center;background:#192630;color:#b8c4cc;font-size:12px;}
}
@media(max-width:640px) {
  .we-presentacion {padding:12px 20px 16px;}
  .we-presentacion h1 {font-size:28px;}
  .we-presentacion__contenido>.we-boton {width:100%;}
  .we-capacidad {padding:46px 20px 43px;}
  .we-capacidad__grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .we-recurso {padding:20px 16px;}
  .we-recurso__numero {font-size:34px;margin-bottom:14px;}
  .we-capacidad__footer {margin-top:20px;}
  .we-contacto {padding:46px 20px 40px;}
  .we-contacto__encabezado h2 {font-size:32px;}
  .we-consulta,.we-contacto__directo {padding:23px 20px;}
  .we-consulta__grid {grid-template-columns:1fr;gap:16px;}
  .we-campo input,.we-campo select,.we-campo textarea {font-size:16px;}
  .we-consulta__acciones {flex-direction:column;align-items:stretch;}
  .we-consulta__acciones .we-boton {width:100%;}
  .we-contacto__directo {display:block;}
  .we-contacto__canales {grid-template-columns:1fr;gap:0;}
}
@media(max-width:480px) {
  .we-topbar__brand img {width:178px;}
  .we-topbar__cta {display:none;}
}
@media(max-width:380px) {
  .we-topbar__brand img {width:166px;}
  .we-capacidad__grid {grid-template-columns:1fr;}
}
@media(prefers-reduced-motion:reduce) {
  .we-topbar,.we-topbar__brand,.we-topbar__nav a,.we-topbar__nav a::after,
  .we-topbar__cta,.we-topbar__menu span,.we-presentacion,.we-boton,
  .mapa__escena,.we-reveal.we-pending,.we-campo input,.we-campo select,.we-campo textarea {
    transition:none!important;
  }
  .we-reveal.we-pending {opacity:1;transform:none;}
}

/* Etapa 38: barra simplificada y tipografía ExtraLight coherente con los rótulos del mapa. */
.we-topbar__inner {justify-content:space-between;}
.we-topbar__brand {margin-right:auto;}
@media(max-width:480px){.we-topbar__cta{display:inline-flex;font-size:11px;padding:10px 12px;gap:8px}.we-topbar__brand img{width:160px}}


/* Encabezado unificado responsive */
@media (max-width: 900px) {
  .we-presentacion__inner {grid-template-columns:1fr;gap:18px;}
  .we-presentacion__contenido {max-width:none;}
}

@media (max-width: 680px) {
  .we-topbar__brand img {width:168px;max-height:52px;}
  .we-topbar__cta {padding:10px 13px;min-height:39px;}
  .we-presentacion {padding-left:18px;padding-right:18px;}
  .we-presentacion h1 {font-size:clamp(24px,7vw,32px);}
  .we-presentacion__contenido>p {font-size:14px;line-height:1.68;}
}


/* Etapa 45 */
.we-consulta__cabecera > p:last-child {display:none;}


/* ETAPA 46 — navegación contextual y jerarquía tipográfica corporativa */
.we-context-nav {
  position:relative;z-index:5;background:#122331;color:#d8e1e7;
  border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.08);
}
.we-context-nav__inner {
  width:min(100%,var(--we-width));min-height:58px;margin:auto;padding:0 clamp(20px,4vw,64px);
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.we-context-nav__label {
  color:#93a4af;font-size:10px;font-weight:600;letter-spacing:1.7px;text-transform:uppercase;
}
.we-context-nav__links {display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.we-context-nav__links a {
  display:inline-flex;align-items:center;gap:9px;padding:9px 12px;border-radius:3px;
  color:#dbe4ea;text-decoration:none;font-size:12px;font-weight:600;letter-spacing:.02em;
  border:1px solid transparent;transition:color 180ms ease,background-color 180ms ease,border-color 180ms ease;
}
.we-context-nav__links a span {color:var(--we-orange);font-size:14px;}
.we-context-nav__links a:hover,.we-context-nav__links a:focus-visible {
  color:#fff;background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.10);
}

/* Una sola familia tipográfica, con pesos distintos según función. */
body {font-weight:400;}
.we-presentacion h1,.we-capacidad__intro h2,.we-contacto__encabezado h2,
.we-consulta h3,.we-contacto__directo h3 {font-weight:300;}
.we-presentacion__contenido>p,.we-capacidad__intro>p:last-child,
.we-recurso p,.we-capacidad__footer p,.we-contacto__encabezado>p:last-child,
.we-consulta__cabecera>p:last-child,.we-contacto__directo-texto {font-weight:400;}
.we-presentacion__eyebrow,.we-capacidad__eyebrow,.we-contacto__eyebrow,.we-consulta__eyebrow,
.we-capacidad__footer-label,.we-contacto__canal-etiqueta {font-weight:600 !important;}
.we-recurso h3,.we-campo>span,.we-topbar__cta,.we-boton,.we-contacto__canal a {font-weight:600;}
.we-campo input,.we-campo select,.we-campo textarea {font-weight:400;}
.we-topbar__cta {font-weight:600;}

@media(max-width:720px) {
  .we-context-nav__inner {min-height:64px;align-items:flex-start;flex-direction:column;gap:5px;padding-top:12px;padding-bottom:12px;}
  .we-context-nav__links {width:100%;}
  .we-context-nav__links a {padding-left:0;padding-right:13px;}
}


.we-consulta[aria-busy="true"] {pointer-events:none;}
.we-consulta__estado.is-loading {color:#c7d7e2;}
.we-consulta__estado.is-success {color:#bfe7c8;}
.we-consulta__estado.is-error {color:#f3be9b;}
.we-boton:disabled {opacity:.84;cursor:progress;}
.we-campo input:focus,.we-campo textarea:focus {
  border-color:rgba(241,163,92,.65);
  box-shadow:0 0 0 3px rgba(241,163,92,.11);
}
.we-consulta__cabecera {margin-bottom:2px;}
.we-consulta h3 {margin-bottom:10px;}
.we-contacto__directo h3 {max-width:none;}
.we-contacto__canal {align-items:start;}
.we-contacto__canal a {transition:color .24s ease;}


/* Etapa 50: protección básica del formulario y estados de envío. */
.we-honeypot {
  position:absolute !important;width:1px !important;height:1px !important;
  padding:0 !important;margin:-1px !important;overflow:hidden !important;
  clip:rect(0,0,0,0) !important;white-space:nowrap !important;border:0 !important;
}
.we-consulta__estado {min-height:1.4em;}

@media (max-width: 900px) {
  .we-contacto__directo h3 {font-size:28px;}
}

/* Etapa 54 — luz más atmosférica y entrada elegante del header. */
#we-energy-u-ruta_glow,
#we-energy-u-cola-curva-larga,
#we-energy-u-cola-curva-corta,
#we-energy-cabeza-movil {mix-blend-mode:screen;}
@media (prefers-reduced-motion: reduce) {
  .we-hero {animation:none;}
}


/* Franja institucional final — referencia aportada por el usuario. */
.we-footer {
  width:100%;
  height:66px;
  min-height:66px;
  display:flex;
  align-items:center;
  background:#242220;
  color:#aea298;
  padding:0 50px;
}
.we-footer__inner {
  width:100%;
  margin:0;
  font-size:15px;
  line-height:1;
  font-weight:400;
  letter-spacing:0;
}

@media(max-width:640px) {
  .we-footer {
    height:58px;
    min-height:58px;
    padding:0 20px;
  }
  .we-footer__inner {font-size:12px;}
}


/* Ajuste de proporciones según la referencia visual aportada el 22/09/2026.
   No altera estructura, colores, animaciones, mapa ni funcionamiento. */

/* Encabezado: proporciones ligeramente mayores, como en la referencia. */
:root { --we-topbar-h:80px; }
.we-topbar__brand img {
  width:clamp(220px,16.5vw,270px);
  max-height:66px;
}
.we-topbar__cta {
  min-height:50px;
  padding:12px 20px;
  font-size:14px;
}

/* Contacto: jerarquía tipográfica y densidad equivalentes a la referencia. */
.we-consulta,
.we-contacto__directo {
  padding:clamp(36px,3vw,46px);
}
.we-consulta__cabecera {
  padding-bottom:28px;
}
.we-consulta__eyebrow,
.we-contacto__directo > .we-contacto__eyebrow {
  font-size:13px;
  letter-spacing:2.5px;
}
.we-consulta h3 {
  font-size:clamp(34px,2.45vw,40px);
  line-height:1.14;
  font-weight:300;
}
.we-contacto__directo h3 {
  font-size:clamp(34px,2.55vw,41px);
  line-height:1.18;
  font-weight:300;
}
.we-contacto__directo-texto {
  font-size:16px;
  line-height:1.75;
}
.we-campo > span {
  font-size:13px;
  line-height:1.4;
}
.we-campo input,
.we-campo select,
.we-campo textarea {
  font-size:16px;
  padding:15px 17px;
}
.we-campo input,
.we-campo select {
  min-height:58px;
}
.we-campo textarea {
  min-height:166px;
  line-height:1.55;
}
.we-boton {
  min-height:52px;
  padding:13px 24px;
  font-size:14px;
}
.we-contacto__canal-etiqueta {
  font-size:11px;
  letter-spacing:1.5px;
}
.we-contacto__canal a {
  font-size:18px;
}
.we-contacto__canal {
  padding:27px 0;
}
.we-contacto__canal-icono {
  width:46px;
  height:46px;
}

/* Franja final: proporción equivalente a la captura (aprox. 9 % de la altura). */
.we-footer {
  height:clamp(78px,9vh,106px);
  min-height:clamp(78px,9vh,106px);
  padding:0 40px;
}
.we-footer__inner {
  font-size:13px;
  line-height:1.25;
}

/* Mantener la adaptación móvil sin que las proporciones se vuelvan excesivas. */
@media(max-width:640px) {
  :root { --we-topbar-h:72px; }
  .we-topbar__brand img {
    width:190px;
    max-height:58px;
  }
  .we-topbar__cta {
    min-height:44px;
    padding:10px 14px;
    font-size:12px;
  }
  .we-consulta,
  .we-contacto__directo {
    padding:27px 22px;
  }
  .we-consulta h3,
  .we-contacto__directo h3 {
    font-size:30px;
  }
  .we-contacto__directo-texto {
    font-size:15px;
  }
  .we-campo > span {
    font-size:12px;
  }
  .we-campo input,
  .we-campo select,
  .we-campo textarea {
    font-size:16px;
  }
  .we-footer {
    height:72px;
    min-height:72px;
    padding:0 20px;
  }
  .we-footer__inner {
    font-size:12px;
  }
}
