/* =========================================================
   NEXTGEN SYSTEMS · ENTERPRISE PREMIUM V3
   Dirección visual integral · 2026-09-27
   Objetivo: acercar el sitio real al mockup premium aprobado.
   ========================================================= */
:root{
  --ng3-bg:#02070d;
  --ng3-bg2:#06131f;
  --ng3-panel:#071a29;
  --ng3-panel2:#0a2438;
  --ng3-cyan:#43ddff;
  --ng3-blue:#0c91f0;
  --ng3-deep:#075b9e;
  --ng3-white:#f5fbff;
  --ng3-muted:#8fa7b8;
  --ng3-line:rgba(91,205,255,.16);
  --ng3-line-strong:rgba(91,205,255,.32);
  --ng3-glow:0 0 34px rgba(29,186,255,.13);
  --ng3-shadow:0 30px 80px rgba(0,0,0,.34);
  --max:1320px;
}

body.theme-premium-v3{
  background:
    radial-gradient(circle at 82% -8%,rgba(8,137,222,.19),transparent 32rem),
    radial-gradient(circle at 12% 22%,rgba(45,216,255,.07),transparent 28rem),
    linear-gradient(180deg,#02070d 0%,#03101a 52%,#061521 100%);
  color:#eaf7fd;
}
body.theme-premium-v3::before{
  opacity:.16;
  background-image:
    linear-gradient(rgba(83,205,255,.03) 1px,transparent 1px),
    linear-gradient(90deg,rgba(83,205,255,.03) 1px,transparent 1px);
  background-size:78px 78px;
  mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.7) 45%,transparent 92%);
}
body.theme-premium-v3::after{
  content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:
    linear-gradient(118deg,transparent 0 28%,rgba(40,174,242,.025) 44%,transparent 58%),
    radial-gradient(circle at 50% 115%,rgba(19,131,201,.08),transparent 34rem);
}

/* ---------- Header ---------- */
.theme-premium-v3 .topbar{
  background:rgba(1,7,12,.86);
  border-bottom:1px solid rgba(71,194,255,.16);
  box-shadow:0 16px 42px rgba(0,0,0,.18);
  backdrop-filter:blur(24px) saturate(150%);
}
.theme-premium-v3 .topbar::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent 5%,rgba(55,204,255,.45) 48%,transparent 95%);
  opacity:.45;pointer-events:none;
}
.theme-premium-v3 .nav{min-height:84px}
.theme-premium-v3 .brand{gap:14px}
.theme-premium-v3 .brand-logo{
  width:50px;height:50px;border-radius:16px;padding:5px;
  box-shadow:0 0 0 1px rgba(83,211,255,.12),0 14px 36px rgba(6,123,190,.16);
}
.theme-premium-v3 .brand-copy strong{font-size:13px;letter-spacing:.19em;color:#f3fbff}
.theme-premium-v3 .brand-copy small{font-size:9px;color:#7893a6}
.theme-premium-v3 .navlinks{gap:27px}
.theme-premium-v3 .navlinks a{font-size:11.5px;color:#b7c8d4;font-weight:800}
.theme-premium-v3 .navlinks a:not(.nav-cta)::after{bottom:-12px;height:2px;background:linear-gradient(90deg,#39deff,#0c8ee8)}
.theme-premium-v3 .navlinks .nav-cta{
  padding:13px 19px!important;border-radius:14px!important;
  background:linear-gradient(135deg,rgba(7,57,90,.92),rgba(7,112,164,.78))!important;
  border:1px solid rgba(70,207,255,.42)!important;
  color:#effaff!important;box-shadow:0 0 26px rgba(28,185,250,.13)!important;
}
.theme-premium-v3 .navlinks .nav-cta:hover{box-shadow:0 0 40px rgba(40,207,255,.23)!important}

/* ---------- HOME HERO ---------- */
.page-home.theme-premium-v3 .premium-hero{
  min-height:660px;padding:58px 0 42px;
  background:
    radial-gradient(circle at 72% 42%,rgba(5,111,183,.18),transparent 33rem),
    linear-gradient(95deg,rgba(0,4,8,.16),rgba(4,24,38,.04));
}
.page-home.theme-premium-v3 .premium-hero::before{
  background:
    linear-gradient(117deg,rgba(27,180,255,.04) 0 1px,transparent 1px 100%),
    radial-gradient(circle at 43% 20%,rgba(70,222,255,.05),transparent 17rem);
  background-size:240px 240px,auto;
}
.page-home.theme-premium-v3 .premium-hero-grid{grid-template-columns:.79fr 1.21fr;gap:42px;align-items:center}
.page-home.theme-premium-v3 .premium-hero-copy{padding:10px 0 20px;z-index:3}
.page-home.theme-premium-v3 .premium-hero .kicker{font-size:9.5px;color:#4fe0ff}
.page-home.theme-premium-v3 .premium-hero .display{
  max-width:610px;margin-top:15px;font-size:clamp(48px,4.95vw,70px);line-height:.98;
  letter-spacing:-.056em;text-wrap:balance;
}
.page-home.theme-premium-v3 .premium-hero .hero-line{display:block}
.page-home.theme-premium-v3 .premium-hero .gradient{
  background:linear-gradient(90deg,#dff9ff 0%,#75e7ff 45%,#29c8ff 70%,#0d91eb 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.page-home.theme-premium-v3 .premium-hero .lead{max-width:610px;margin-top:20px;color:#9bb0be;font-size:14px;line-height:1.78}
.page-home.theme-premium-v3 .hero-actions{margin-top:27px;gap:12px}
.page-home.theme-premium-v3 .premium-btn{min-height:48px;padding:0 20px;border-radius:14px}
.page-home.theme-premium-v3 .premium-btn.primary{
  background:linear-gradient(100deg,#149cf5,#27d8ff);box-shadow:0 16px 34px rgba(8,143,219,.25),0 0 30px rgba(38,215,255,.07)
}
.page-home.theme-premium-v3 .premium-btn.soft{background:rgba(4,17,27,.74);border-color:rgba(92,210,255,.22)}

.page-home.theme-premium-v3 .hero-stats{grid-template-columns:repeat(4,1fr);gap:9px;margin-top:24px}
.page-home.theme-premium-v3 .hero-stat{
  min-height:77px;padding:12px 9px 9px 41px;border-radius:12px;
  border:1px solid rgba(78,196,248,.15);
  background:linear-gradient(145deg,rgba(11,39,58,.74),rgba(4,16,25,.72));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.024);
}
.page-home.theme-premium-v3 .hero-stat-icon{width:25px;height:25px;border-radius:8px}
.page-home.theme-premium-v3 .hero-stat strong{font-size:15px;color:#4cddff}
.page-home.theme-premium-v3 .hero-stat small{font-size:7.3px;line-height:1.35;color:#7d94a5}

.page-home.theme-premium-v3 .premium-hero-visual{min-height:520px;perspective:1600px}
.page-home.theme-premium-v3 .premium-media-frame{
  min-height:500px;height:500px;border-radius:25px;
  border:1px solid rgba(85,210,255,.34);
  background:#06131f;
  box-shadow:0 48px 120px rgba(0,0,0,.52),0 0 52px rgba(31,185,247,.10),inset 0 0 0 1px rgba(255,255,255,.03);
  transform:none;overflow:hidden;
}
.page-home.theme-premium-v3 .premium-media-frame::before{
  content:"NEXTGEN SYSTEMS · CORPORATE CORE";
  position:absolute;left:18px;top:16px;z-index:5;padding:7px 10px;border-radius:9px;
  border:1px solid rgba(81,210,255,.21);background:rgba(3,19,31,.72);backdrop-filter:blur(12px);
  color:#7fe6ff;font-size:7.2px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;
}
.page-home.theme-premium-v3 .premium-media-frame::after{
  content:"ECOSISTEMA ACTIVO";
  position:absolute;right:16px;top:16px;z-index:5;padding:7px 10px 7px 22px;border-radius:999px;
  border:1px solid rgba(85,222,178,.18);background:rgba(4,25,31,.68);color:#9fe8ce;
  font-size:7px;font-weight:900;letter-spacing:.08em;
}
.page-home.theme-premium-v3 .premium-media-frame>img{
  width:100%;height:500px;min-height:500px;object-fit:cover;object-position:center;filter:saturate(1.06) contrast(1.05) brightness(.92);transform:scale(1.015)
}
.page-home.theme-premium-v3 .premium-media-vignette{
  background:linear-gradient(90deg,rgba(0,5,10,.10),transparent 30%,transparent 72%,rgba(0,5,10,.10));
  box-shadow:inset 0 0 80px rgba(0,5,10,.38)
}
.page-home.theme-premium-v3 .premium-media-tag,
.page-home.theme-premium-v3 .premium-zunvora-card{display:none!important}

/* ---------- Portal navigation cards ---------- */
.page-home.theme-premium-v3 .premium-portal-section{padding:2px 0 28px}
.page-home.theme-premium-v3 .premium-portal-grid{gap:11px}
.page-home.theme-premium-v3 .premium-portal-card{
  min-height:165px;padding:16px;border-radius:18px;align-items:end;
  border:1px solid rgba(84,201,252,.18);
  background:linear-gradient(180deg,#0b2234 0%,#06131f 72%);
  box-shadow:0 18px 45px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.025);
}
.page-home.theme-premium-v3 .premium-portal-card::before{
  opacity:.74;background-position:center top;background-size:cover;filter:saturate(.92) contrast(1.04);
  transform:scale(1.01)
}
.page-home.theme-premium-v3 .premium-portal-card::after{
  background:linear-gradient(180deg,rgba(3,10,17,.02) 0%,rgba(3,10,17,.06) 36%,rgba(3,10,17,.88) 69%,#06131f 100%)
}
.page-home.theme-premium-v3 .premium-portal-card.art-empresa::before{background-image:url('company-art-v3.webp')}
.page-home.theme-premium-v3 .premium-portal-card.art-portafolio::before{background-image:url('portfolio-art-v3.webp')}
.page-home.theme-premium-v3 .premium-portal-card.art-soluciones::before{background-image:url('solutions-art-v3.webp')}
.page-home.theme-premium-v3 .premium-portal-card.art-proveedores::before{background-image:url('providers-art-v3.webp')}
.page-home.theme-premium-v3 .premium-portal-card.art-contacto::before{background-image:url('contact-art-v3.webp')}
.page-home.theme-premium-v3 .premium-portal-card:hover{transform:translateY(-6px);border-color:rgba(84,216,255,.43);box-shadow:0 26px 58px rgba(0,0,0,.3),0 0 28px rgba(30,185,247,.08)}
.page-home.theme-premium-v3 .premium-portal-card .portal-icon{
  width:36px;height:36px;border-radius:11px;background:rgba(4,39,61,.78);border-color:rgba(76,209,255,.28);color:#5ee0ff
}
.page-home.theme-premium-v3 .premium-portal-card strong{font-size:18px}
.page-home.theme-premium-v3 .premium-portal-card small{max-width:180px;color:#a0b5c2;font-size:9.2px}
.page-home.theme-premium-v3 .premium-portal-card>b{width:31px;height:31px;background:rgba(5,34,52,.72)}

/* The hero stats already communicate the core facts. Remove duplicated strip. */
.page-home.theme-premium-v3 .premium-trust-strip{display:none}

/* ---------- Homepage rhythm and cards ---------- */
.page-home.theme-premium-v3 .section{padding:78px 0;border-top:1px solid rgba(80,197,249,.055)}
.page-home.theme-premium-v3 .section.compact{padding:62px 0}
.page-home.theme-premium-v3 .section:nth-of-type(even){background:linear-gradient(180deg,rgba(11,36,53,.08),rgba(255,255,255,0))}
.page-home.theme-premium-v3 .section-head{gap:72px;margin-bottom:31px}
.page-home.theme-premium-v3 .section-head h2{font-size:clamp(33px,3.45vw,50px);max-width:720px}
.page-home.theme-premium-v3 .section-head p{max-width:720px;color:#91a8b7}
.page-home.theme-premium-v3 .cards-3{gap:14px}
.page-home.theme-premium-v3 .cap-card,
.page-home.theme-premium-v3 .solution-home-card,
.page-home.theme-premium-v3 .port-card{
  position:relative;overflow:hidden;border-radius:20px;
  border:1px solid rgba(81,197,250,.15);
  background:linear-gradient(145deg,rgba(9,34,51,.93),rgba(4,15,24,.94));
  box-shadow:0 22px 58px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.025);
}
.page-home.theme-premium-v3 .cap-card::before,
.page-home.theme-premium-v3 .solution-home-card::before,
.page-home.theme-premium-v3 .port-card::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 95% 0%,rgba(43,196,255,.08),transparent 35%);
}
.page-home.theme-premium-v3 .cap-card:hover,
.page-home.theme-premium-v3 .solution-home-card:hover,
.page-home.theme-premium-v3 .port-card:hover{border-color:rgba(89,214,255,.34);box-shadow:0 28px 70px rgba(0,0,0,.24),0 0 25px rgba(30,186,248,.05)}
.page-home.theme-premium-v3 .solution-cards-home{gap:13px}
.page-home.theme-premium-v3 .solution-home-card{min-height:170px;padding:23px}
.page-home.theme-premium-v3 .solution-home-card>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;border:1px solid rgba(80,207,255,.23);background:rgba(14,107,155,.13);color:#56ddff}
.page-home.theme-premium-v3 .solution-home-card h3{margin-top:17px;font-size:20px}
.page-home.theme-premium-v3 .solution-home-card p{color:#89a0af}
.page-home.theme-premium-v3 .portfolio-grid{gap:13px}
.page-home.theme-premium-v3 .flagship{border-radius:29px;background:radial-gradient(circle at 92% 12%,rgba(26,185,247,.12),transparent 32%),linear-gradient(145deg,#081d2b,#04101a);border-color:rgba(83,205,255,.18)}
.page-home.theme-premium-v3 .brand-ribbon{background:rgba(4,17,27,.66);border-color:rgba(76,190,244,.12)}

/* ---------- INTERNAL PAGE HERO ---------- */
.theme-premium-v3 .page-hero{
  min-height:0;padding:58px 0 58px;border-bottom:1px solid rgba(83,196,247,.09);
  background:radial-gradient(circle at 82% 34%,rgba(17,147,226,.12),transparent 27rem),linear-gradient(180deg,rgba(5,18,28,.28),rgba(2,9,15,.12));
}
.theme-premium-v3 .page-hero::before{opacity:.13;background-size:88px 88px}
.theme-premium-v3 .page-hero::after{display:none!important}
.theme-premium-v3 .page-hero-grid{grid-template-columns:.95fr 1.05fr;gap:66px;align-items:center}
.theme-premium-v3 .page-hero h1{max-width:720px;margin-top:15px;font-size:clamp(44px,4.55vw,66px);line-height:1.015;letter-spacing:-.055em}
.theme-premium-v3 .page-hero .kicker{color:#52dcff}
.theme-premium-v3 .page-hero-grid>p{
  position:relative;display:flex;align-items:flex-end;min-height:350px;margin:0;padding:235px 24px 22px;
  overflow:hidden;border:1px solid rgba(79,201,253,.22);border-radius:25px;
  background:linear-gradient(180deg,#092338,#071723);
  color:#b2c6d2;font-size:13px;line-height:1.7;
  box-shadow:0 36px 90px rgba(0,0,0,.38),0 0 36px rgba(21,168,239,.06);
  backdrop-filter:none;
}
.theme-premium-v3 .page-hero-grid>p::before{
  content:"";position:absolute;inset:0 0 92px 0;z-index:0;background-position:center;background-size:cover;background-repeat:no-repeat;
  filter:saturate(.95) contrast(1.05) brightness(.86);transform:scale(1.02);
}
.theme-premium-v3 .page-hero-grid>p::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(1,7,12,.04) 8%,rgba(3,12,20,.18) 46%,rgba(4,16,26,.98) 72%,#071723 100%);
}
.theme-premium-v3 .page-hero-grid>p{isolation:isolate}
.theme-premium-v3 .page-hero-grid>p::first-line{color:#dff5ff}
.theme-premium-v3 .page-hero-grid>p{z-index:1}
.theme-premium-v3 .page-hero-grid>p{ text-shadow:0 1px 18px rgba(0,0,0,.4) }
.theme-premium-v3 .page-hero-grid>p{ --hero-text-z:2 }
.theme-premium-v3 .page-hero-grid>p{ }
/* force paragraph text above pseudo layers */
.theme-premium-v3 .page-hero-grid>p{background-clip:padding-box}
.theme-premium-v3 .page-hero-grid>p::selection{background:#18aeea;color:#fff}
.theme-premium-v3 .page-hero-grid>p{box-sizing:border-box}

/* background artwork per internal page */
.page-empresa.theme-premium-v3 .page-hero-grid>p::before{background-image:url('hero-scene-v3.webp');background-position:58% center}
.page-portafolio.theme-premium-v3 .page-hero-grid>p::before{background-image:url('portfolio-art-v3.webp');background-position:center 36%}
.page-soluciones.theme-premium-v3 .page-hero-grid>p::before{background-image:url('solutions-art-v3.webp');background-position:center}
.page-proveedores.theme-premium-v3 .page-hero-grid>p::before{background-image:url('globe-art-v3.webp');background-position:center 58%}
.page-contacto.theme-premium-v3 .page-hero-grid>p::before{background-image:url('contact-art-v3.webp');background-position:center 32%}

/* text visibility above overlays: browser paints text after pseudo elements if pseudo z-index is negative */
.theme-premium-v3 .page-hero-grid>p::before,.theme-premium-v3 .page-hero-grid>p::after{z-index:-1}
.theme-premium-v3 .page-hero-grid>p{z-index:0}

/* ---------- INTERNAL SECTIONS ---------- */
.theme-premium-v3 .section{padding:72px 0}
.theme-premium-v3 .section.compact{padding:54px 0}
.theme-premium-v3 .section-head{gap:60px;margin-bottom:31px}
.theme-premium-v3 .section-head h2{font-size:clamp(32px,3.6vw,49px)}
.theme-premium-v3 .section-head p{color:#90a6b6}

.theme-premium-v3 .identity-grid{gap:14px}
.theme-premium-v3 .identity-card,
.theme-premium-v3 .brand-card,
.theme-premium-v3 .solution-pro-card,
.theme-premium-v3 .process-card,
.theme-premium-v3 .tech-brand-card,
.theme-premium-v3 .contact-form-pro,
.theme-premium-v3 .contact-side-card{
  border:1px solid rgba(80,199,251,.14)!important;
  background:radial-gradient(circle at 100% 0%,rgba(28,181,242,.075),transparent 34%),linear-gradient(145deg,rgba(8,31,47,.94),rgba(4,15,24,.96))!important;
  box-shadow:0 22px 60px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.theme-premium-v3 .identity-card{border-radius:22px;padding:28px}
.theme-premium-v3 .identity-card h2{font-size:clamp(26px,2.5vw,38px)}
.theme-premium-v3 .identity-card p{color:#8ea5b4}
.theme-premium-v3 .brand-card{border-radius:20px;transition:.22s ease}
.theme-premium-v3 .brand-card:hover{transform:translateY(-4px);border-color:rgba(85,214,255,.32)!important;box-shadow:0 28px 72px rgba(0,0,0,.24)!important}
.theme-premium-v3 .brand-card .mono{background:linear-gradient(145deg,#0b87cf,#07517e);box-shadow:0 12px 28px rgba(0,102,163,.18)}
.theme-premium-v3 .filter-btn{border-color:rgba(76,194,246,.14);background:rgba(6,24,37,.75)}
.theme-premium-v3 .filter-btn.active{background:linear-gradient(135deg,#118fdc,#24ccff);color:#fff;border-color:transparent;box-shadow:0 12px 26px rgba(10,143,219,.18)}

.theme-premium-v3 .solution-pro-grid{gap:14px}
.theme-premium-v3 .solution-pro-card{border-radius:21px;padding:27px;min-height:270px;transition:.22s ease}
.theme-premium-v3 .solution-pro-card:hover{transform:translateY(-4px);border-color:rgba(82,211,255,.32)!important}
.theme-premium-v3 .solution-num{background:rgba(13,120,174,.12);border:1px solid rgba(75,208,255,.23);color:#5cddff;border-radius:12px}
.theme-premium-v3 .solution-pro-card h2{font-size:25px}
.theme-premium-v3 .solution-pro-card p,.theme-premium-v3 .solution-pro-card li{color:#8ea5b4}
.theme-premium-v3 .process-card{border-radius:18px}

/* Providers: reduce excessive empty space and make brand grid more visual */
.page-proveedores.theme-premium-v3 .provider-nav-section{top:84px;background:rgba(2,10,17,.91);border-color:rgba(81,198,251,.11)}
.page-proveedores.theme-premium-v3 .provider-nav{padding:10px 0}
.page-proveedores.theme-premium-v3 .section.compact{padding:42px 0}
.page-proveedores.theme-premium-v3 .supplier-intro{padding:28px;border-radius:22px;background:linear-gradient(145deg,rgba(7,29,44,.86),rgba(4,15,24,.88));border:1px solid rgba(80,198,250,.12)}
.page-proveedores.theme-premium-v3 .tech-brand-grid{gap:12px}
.page-proveedores.theme-premium-v3 .tech-brand-card{min-height:142px;border-radius:17px;padding:18px}
.page-proveedores.theme-premium-v3 .tech-logo-wrap{border-radius:15px;background:linear-gradient(145deg,#f8fdff,#d9f3ff);box-shadow:0 14px 32px rgba(0,0,0,.18)}

/* Contact page */
.page-contacto.theme-premium-v3 .contact-360-grid{gap:20px}
.page-contacto.theme-premium-v3 .contact-form-pro{border-radius:26px;padding:31px}
.page-contacto.theme-premium-v3 .contact-form-head h2{font-size:40px}
.page-contacto.theme-premium-v3 .contact-form-head p{color:#91a8b7}
.page-contacto.theme-premium-v3 .field input,
.page-contacto.theme-premium-v3 .field textarea,
.page-contacto.theme-premium-v3 .field select{
  border-color:rgba(83,198,248,.15)!important;background:#06141f!important;color:#eaf8ff!important;border-radius:12px!important;
}
.page-contacto.theme-premium-v3 .field input:focus,
.page-contacto.theme-premium-v3 .field textarea:focus,
.page-contacto.theme-premium-v3 .field select:focus{border-color:rgba(74,213,255,.46)!important;box-shadow:0 0 0 3px rgba(41,185,245,.08)!important}
.page-contacto.theme-premium-v3 .contact-side-card{border-radius:20px;padding:24px}
.page-contacto.theme-premium-v3 .enterprise-submit{background:linear-gradient(100deg,#1398f4,#25d7ff);box-shadow:0 14px 30px rgba(8,140,218,.22)}

/* ---------- CHAT: icon-only trigger + dark premium panel ---------- */
.theme-premium-v3 .nextgen-support-fab{
  right:22px!important;bottom:22px!important;width:58px!important;height:58px!important;min-height:58px!important;padding:0!important;
  border-radius:50%!important;justify-content:center!important;
  border:1px solid rgba(102,224,255,.62)!important;
  background:radial-gradient(circle at 34% 28%,#31d9ff 0%,#0d91e5 34%,#07527f 69%,#05283f 100%)!important;
  box-shadow:0 20px 55px rgba(0,25,45,.58),0 0 0 7px rgba(28,181,245,.075),0 0 34px rgba(45,207,255,.22)!important;
}
.theme-premium-v3 .nextgen-support-fab::before{content:"";position:absolute;inset:7px;border-radius:50%;border:1px solid rgba(255,255,255,.25)}
.theme-premium-v3 .nextgen-support-fab::after{
  content:"Chat de soporte";position:absolute;right:68px;bottom:8px;width:max-content;padding:8px 11px;border-radius:10px;
  border:1px solid rgba(85,204,255,.18);background:rgba(2,14,24,.94);color:#e9f9ff;font-size:9px;font-weight:850;
  opacity:0;visibility:hidden;transform:translateX(6px);transition:.18s ease;pointer-events:none;
}
.theme-premium-v3 .nextgen-support-fab:hover::after,.theme-premium-v3 .nextgen-support-fab:focus-visible::after{opacity:1;visibility:visible;transform:none}
.theme-premium-v3 .nextgen-support-fab .icon{width:36px!important;height:36px!important;background:transparent!important;color:#fff!important}
.theme-premium-v3 .nextgen-support-fab .badge{position:absolute;right:-3px;top:-3px;border:2px solid #03101a}
.theme-premium-v3 .nextgen-support-panel{
  right:22px!important;bottom:94px!important;width:min(395px,calc(100vw - 28px))!important;height:min(620px,calc(100vh - 120px))!important;
  border-radius:22px!important;border:1px solid rgba(80,208,255,.30)!important;
  background:#06131f!important;color:#dff5ff!important;
  box-shadow:0 36px 100px rgba(0,8,17,.68),0 0 44px rgba(30,184,247,.09)!important;
  transform-origin:bottom right;
}
.theme-premium-v3 .nextgen-support-panel.hidden{transform:translateY(14px) scale(.94)!important}
.theme-premium-v3 .ng-chat-head{background:linear-gradient(120deg,#041521,#082a40 55%,#0874ad)!important;border-bottom:1px solid rgba(91,213,255,.16)}
.theme-premium-v3 .ng-chat-mark{background:rgba(19,150,211,.14)!important;border:1px solid rgba(89,218,255,.24);color:#6ae3ff!important}
.theme-premium-v3 .ng-chat-head-copy small{color:#b9dcea}
.theme-premium-v3 .ng-chat-body{background:linear-gradient(180deg,#06131f,#071925)!important;color:#dceef7}
.theme-premium-v3 .ng-chat-start p{color:#8fa8b7}
.theme-premium-v3 .ng-chat-start label{color:#84a1b2}
.theme-premium-v3 .ng-chat-start input,.theme-premium-v3 .ng-chat-start textarea,.theme-premium-v3 .ng-chat-compose textarea{
  border-color:rgba(99,205,255,.17)!important;background:#04111b!important;color:#eaf8ff!important;
}
.theme-premium-v3 .ng-chat-start input::placeholder,.theme-premium-v3 .ng-chat-start textarea::placeholder,.theme-premium-v3 .ng-chat-compose textarea::placeholder{color:#607b8d}
.theme-premium-v3 .ng-chat-primary,.theme-premium-v3 .ng-chat-send{background:linear-gradient(135deg,#0c78b5,#13aeea)!important;box-shadow:0 10px 25px rgba(10,132,194,.18)}
.theme-premium-v3 .ng-chat-note{color:#6f8796}
.theme-premium-v3 .ng-chat-faq{border-color:rgba(84,201,252,.14)!important;background:linear-gradient(180deg,rgba(10,39,58,.82),rgba(5,20,31,.86))!important}
.theme-premium-v3 .ng-chat-faq-head strong{color:#dff5ff}.theme-premium-v3 .ng-chat-faq-head span{color:#6f8a9a}
.theme-premium-v3 .ng-chat-faq-chip{border-color:rgba(92,206,255,.18)!important;background:rgba(7,35,52,.82)!important;color:#9fe9ff!important}
.theme-premium-v3 .ng-chat-faq-chip:hover{border-color:rgba(89,218,255,.46)!important;background:rgba(12,80,115,.48)!important}
.theme-premium-v3 .ng-chat-faq-answer{border-color:rgba(87,210,255,.18)!important;background:rgba(8,64,92,.48)!important;color:#bfe7f7!important}
.theme-premium-v3 .ng-chat-faq-answer strong{color:#64ddff!important}
.theme-premium-v3 .ng-chat-msg{border-color:rgba(104,198,235,.14)!important;background:#0a2030!important;box-shadow:none!important}
.theme-premium-v3 .ng-chat-msg.mine{border-color:rgba(67,199,255,.28)!important;background:#0a3d5a!important}
.theme-premium-v3 .ng-chat-msg.auto{border-color:rgba(77,217,173,.18)!important;background:#0b2d2d!important}
.theme-premium-v3 .ng-chat-msg.system{background:#0a1822!important;border-color:rgba(255,255,255,.07)!important}
.theme-premium-v3 .ng-chat-msg .who{color:#6f8999}.theme-premium-v3 .ng-chat-msg .body{color:#dceef7}
.theme-premium-v3 .ng-chat-status{background:#0a2638!important;color:#92adbd!important}.theme-premium-v3 .ng-chat-status b{color:#58dcff!important}
.theme-premium-v3 .ng-chat-compose{background:#06131f!important;border-color:rgba(82,197,249,.12)!important}
.theme-premium-v3 .ng-chat-human a,.theme-premium-v3 .ng-chat-human button{border-color:rgba(91,205,255,.15)!important;background:#081b28!important;color:#9fdff6!important}
.theme-premium-v3 .ng-chat-loading{color:#7f9dad}

/* ---------- Motion polish ---------- */
.theme-premium-v3 .ng-parallax-shell{will-change:transform}
.theme-premium-v3 main img.ng-parallax-media{will-change:transform,filter}

/* ---------- Responsive ---------- */
@media(max-width:1180px){
  .page-home.theme-premium-v3 .premium-hero-grid{grid-template-columns:1fr;gap:28px}
  .page-home.theme-premium-v3 .premium-hero{padding-top:44px;min-height:auto}
  .page-home.theme-premium-v3 .premium-hero-copy{max-width:900px}
  .page-home.theme-premium-v3 .premium-hero-visual{min-height:auto}
  .page-home.theme-premium-v3 .premium-media-frame,.page-home.theme-premium-v3 .premium-media-frame>img{height:470px;min-height:470px}
  .page-home.theme-premium-v3 .premium-portal-grid{grid-template-columns:repeat(3,1fr)}
  .theme-premium-v3 .page-hero-grid{grid-template-columns:1fr;gap:26px}
  .theme-premium-v3 .page-hero-grid>p{min-height:330px;padding-top:225px}
}
@media(max-width:820px){
  .theme-premium-v3 .nav{min-height:74px}
  .page-home.theme-premium-v3 .premium-hero{padding:38px 0 26px}
  .page-home.theme-premium-v3 .premium-hero .display{font-size:clamp(42px,12vw,60px)}
  .page-home.theme-premium-v3 .hero-stats{grid-template-columns:repeat(2,1fr)}
  .page-home.theme-premium-v3 .premium-media-frame,.page-home.theme-premium-v3 .premium-media-frame>img{height:360px;min-height:360px}
  .page-home.theme-premium-v3 .premium-portal-grid{grid-template-columns:1fr 1fr}
  .theme-premium-v3 .page-hero{padding:48px 0}
  .theme-premium-v3 .page-hero h1{font-size:clamp(39px,10.6vw,56px)}
  .theme-premium-v3 .page-hero-grid>p{min-height:300px;padding:200px 19px 19px;font-size:12px}
  .theme-premium-v3 .section{padding:58px 0}.theme-premium-v3 .section.compact{padding:44px 0}
  .theme-premium-v3 .nextgen-support-fab{right:13px!important;bottom:13px!important;width:54px!important;height:54px!important;min-height:54px!important}
  .theme-premium-v3 .nextgen-support-fab::after{display:none}
  .theme-premium-v3 .nextgen-support-panel{right:7px!important;bottom:76px!important;width:calc(100vw - 14px)!important;height:min(650px,calc(100vh - 88px))!important}
}
@media(max-width:560px){
  .page-home.theme-premium-v3 .premium-portal-grid{grid-template-columns:1fr}
  .page-home.theme-premium-v3 .hero-stats{grid-template-columns:1fr 1fr}
  .page-home.theme-premium-v3 .premium-media-frame,.page-home.theme-premium-v3 .premium-media-frame>img{height:300px;min-height:300px}
  .page-home.theme-premium-v3 .premium-media-frame::before,.page-home.theme-premium-v3 .premium-media-frame::after{font-size:6.5px;padding:6px 8px}
  .theme-premium-v3 .page-hero-grid>p{min-height:280px;padding-top:184px}
  .page-contacto.theme-premium-v3 .contact-form-pro{padding:23px}
}

/* V3 hero artwork layering fix: image is part of the panel background so text stays crisp above it. */
.theme-premium-v3 .page-hero-grid>p::before,
.theme-premium-v3 .page-hero-grid>p::after{display:none!important}
.theme-premium-v3 .page-hero-grid>p{
  background-color:#071723!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%,100% 72%!important;
  background-position:center,center top!important;
}
.page-empresa.theme-premium-v3 .page-hero-grid>p{background-image:linear-gradient(180deg,rgba(1,7,12,.04) 5%,rgba(3,12,20,.16) 44%,rgba(4,16,26,.97) 70%,#071723 100%),url('hero-scene-v3.webp')!important;background-position:center,58% center!important}
.page-portafolio.theme-premium-v3 .page-hero-grid>p{background-image:linear-gradient(180deg,rgba(1,7,12,.02) 5%,rgba(3,12,20,.20) 46%,rgba(4,16,26,.98) 70%,#071723 100%),url('portfolio-art-v3.webp')!important}
.page-soluciones.theme-premium-v3 .page-hero-grid>p{background-image:linear-gradient(180deg,rgba(1,7,12,.02) 5%,rgba(3,12,20,.20) 46%,rgba(4,16,26,.98) 70%,#071723 100%),url('solutions-art-v3.webp')!important}
.page-proveedores.theme-premium-v3 .page-hero-grid>p{background-image:linear-gradient(180deg,rgba(1,7,12,.02) 5%,rgba(3,12,20,.16) 45%,rgba(4,16,26,.98) 70%,#071723 100%),url('globe-art-v3.webp')!important;background-position:center,center 58%!important}
.page-contacto.theme-premium-v3 .page-hero-grid>p{background-image:linear-gradient(180deg,rgba(1,7,12,.02) 5%,rgba(3,12,20,.17) 45%,rgba(4,16,26,.98) 70%,#071723 100%),url('contact-art-v3.webp')!important;background-position:center,center 32%!important}
