/*
  IngSoft V84.40 — Hero premium equilibrado y marca 3D profesional
  Reemplaza la presencia 3D dominante de V84.39 por una marca de agua tecnológica
  sobria, legible y editorialmente equilibrada. No modifica motores científicos,
  observatorio.js, selector geográfico ni lógica del Laboratorio Celso-AQ.
*/

:root{
  --v8440-ink:#ffffff;
  --v8440-soft:#dff3ff;
  --v8440-cyan:#39c8ff;
  --v8440-cyan-strong:#19b9f2;
  --v8440-navy:#06152a;
  --v8440-navy-deep:#020a16;
  --v8440-red:#f02435;
}

/* Hero institucional: impacto científico sin exceso decorativo. */
.premium-hero-3d{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 76% 28%, rgba(57,200,255,.15), transparent 28%),
    radial-gradient(circle at 42% 12%, rgba(16,96,180,.16), transparent 36%),
    linear-gradient(135deg, #020a16 0%, #07172c 55%, #06152a 100%) !important;
  border-bottom:1px solid rgba(139,212,255,.20) !important;
}
.premium-hero-3d::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background-image:
    linear-gradient(rgba(139,212,255,.038) 1px, transparent 1px),
    linear-gradient(90deg, rgba(139,212,255,.038) 1px, transparent 1px),
    radial-gradient(circle at 74% 48%, rgba(57,200,255,.08), transparent 26%) !important;
  background-size:72px 72px,72px 72px,100% 100% !important;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.96), rgba(0,0,0,.76) 72%, transparent 100%) !important;
}

/* La marca 3D deja de ser protagonista y funciona como sello de fondo. */
.premium-hero-3d::after{
  content:"" !important;
  position:absolute !important;
  z-index:1 !important;
  pointer-events:none !important;
  right:clamp(-110px,-5vw,-35px) !important;
  top:clamp(120px,16vw,210px) !important;
  width:clamp(300px,35vw,560px) !important;
  height:clamp(300px,35vw,560px) !important;
  background:url('/assets/img/ingsoft/brand/logo-ingsoft-isotipo-dark.png?v=84.42') center/contain no-repeat !important;
  opacity:.16 !important;
  filter:drop-shadow(0 0 34px rgba(57,200,255,.22)) drop-shadow(0 22px 58px rgba(0,0,0,.46)) saturate(1.04) !important;
  transform:perspective(980px) rotateY(-12deg) rotateX(4deg) translateZ(0) !important;
}
.premium-hero-3d > *,
.premium-hero-3d :is(.wide,.v91-wrap,.hero-grid,.v91-hero-grid){
  position:relative !important;
  z-index:2 !important;
}

/* Hero compacto: no usar altura artificial de pantalla completa. */
body :is(.premium-hero-3d .hero-grid,.premium-hero-3d .v91-hero-grid){
  min-height:clamp(560px,72vh,760px) !important;
  padding-top:clamp(3.6rem,6vh,5.5rem) !important;
  padding-bottom:clamp(3.2rem,6vh,5.4rem) !important;
}
body.page-datasets .premium-hero-3d .hero-grid,
body.page-home .premium-hero-3d .hero-grid,
body.page-publicaciones .premium-hero-3d .hero-grid,
body.page-citar .premium-hero-3d .hero-grid,
body.page-contacto .premium-hero-3d .hero-grid{
  min-height:clamp(560px,72vh,760px) !important;
  padding-top:clamp(3.6rem,6vh,5.4rem) !important;
  padding-bottom:clamp(3.2rem,6vh,5.2rem) !important;
}

.premium-hero-3d h1{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:0 10px 30px rgba(0,0,0,.32), 0 0 18px rgba(57,200,255,.10) !important;
}
.premium-hero-3d :is(.hero-lead,p){
  color:var(--v8440-soft) !important;
  -webkit-text-fill-color:var(--v8440-soft) !important;
}
.premium-hero-3d .eyebrow{
  background:rgba(255,255,255,.98) !important;
  border:2px solid var(--v8440-cyan-strong) !important;
  color:#071832 !important;
  -webkit-text-fill-color:#071832 !important;
  box-shadow:0 14px 34px rgba(0,0,0,.18), 0 0 0 1px rgba(255,255,255,.55) inset !important;
}
.premium-hero-3d .eyebrow::before{
  background:var(--v8440-red) !important;
  box-shadow:none !important;
}
.premium-hero-3d .eyebrow span{display:none !important;}

.premium-hero-3d :is(.btn-primary,.btn-secondary){
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  border-color:rgba(189,238,255,.62) !important;
  background:linear-gradient(135deg,#159fe0 0%,#28c7de 100%) !important;
  box-shadow:0 14px 32px rgba(21,174,236,.20) !important;
}

/* Tarjeta visual: más sólida, menos transparente y con jerarquía editorial. */
.premium-hero-3d :is(.brand-stage,.hero-panel,.v8099-hero-media){
  position:relative !important;
  max-width:min(100%,560px) !important;
  padding:clamp(.7rem,.95vw,.95rem) !important;
  border-radius:28px !important;
  border:1.7px solid rgba(139,212,255,.34) !important;
  background:
    radial-gradient(circle at 72% 24%, rgba(57,200,255,.13), transparent 34%),
    linear-gradient(145deg, rgba(8,28,52,.98), rgba(2,10,22,.98)) !important;
  box-shadow:0 28px 72px rgba(0,0,0,.34), 0 0 38px rgba(57,200,255,.10) !important;
  transform:perspective(1100px) rotateY(-1.3deg) rotateX(.7deg) !important;
  overflow:hidden !important;
}
.premium-hero-3d :is(.brand-stage,.hero-panel,.v8099-hero-media)::after{
  content:"" !important;
  position:absolute !important;
  inset:-45% -36% auto auto !important;
  width:58% !important;
  height:78% !important;
  transform:rotate(18deg) !important;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.11), transparent) !important;
  pointer-events:none !important;
}
.premium-hero-3d :is(.brand-stage img,.hero-panel img,.v8099-hero-media img){
  display:block !important;
  width:100% !important;
  max-height:clamp(210px,30vh,330px) !important;
  min-height:clamp(185px,24vh,260px) !important;
  object-fit:cover !important;
  border-radius:22px !important;
  filter:saturate(1.08) contrast(1.04) drop-shadow(0 16px 38px rgba(0,0,0,.30)) !important;
}
.premium-hero-3d .brand-stage-caption{
  background:rgba(2,10,22,.86) !important;
  border:1px solid rgba(139,212,255,.32) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
.premium-hero-3d .brand-stage-caption span{
  color:#bdeeff !important;
  -webkit-text-fill-color:#bdeeff !important;
}
.premium-hero-3d .brand-stage-caption strong{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* Página Datos: presencia fuerte pero no monumental. */
body.page-datasets .premium-hero-3d .hero-grid{
  grid-template-columns:minmax(0,1fr) minmax(360px,560px) !important;
  gap:clamp(2rem,4vw,4.4rem) !important;
}
body.page-datasets .premium-hero-3d h1{
  max-width:700px !important;
  font-size:clamp(3rem,5.8vw,5.65rem) !important;
  line-height:.94 !important;
}
body.page-datasets .premium-hero-3d .hero-lead{
  max-width:680px !important;
  font-size:clamp(1.04rem,1.15vw,1.24rem) !important;
  line-height:1.52 !important;
  font-weight:850 !important;
}

/* Página Citar: claridad académica por encima de decoración. */
body.page-citar .premium-hero-3d .hero-grid{
  grid-template-columns:minmax(340px,.88fr) minmax(430px,1.12fr) !important;
  gap:clamp(2rem,4vw,4.8rem) !important;
}
body.page-citar .premium-hero-3d .hero-panel{
  max-width:min(100%,640px) !important;
  background:linear-gradient(145deg, rgba(8,28,52,.99), rgba(2,10,22,.99)) !important;
}
body.page-citar .premium-hero-3d::after{
  opacity:.12 !important;
  right:clamp(-160px,-8vw,-70px) !important;
}

/* Mantener observatorio operativo y laboratorio libres de cambios funcionales. */
body.page-observatorio .premium-hero-3d,
body.lab-page .premium-hero-3d{
  background:inherit !important;
}

@media(max-width:1120px){
  .premium-hero-3d::after{right:-170px!important;top:130px!important;width:500px!important;height:500px!important;opacity:.12!important;}
  body.page-datasets .premium-hero-3d .hero-grid,
  body.page-citar .premium-hero-3d .hero-grid{grid-template-columns:1fr!important;}
  .premium-hero-3d :is(.brand-stage,.hero-panel,.v8099-hero-media){max-width:min(100%,680px)!important;}
}
@media(max-width:720px){
  .premium-hero-3d::after{opacity:.08!important;right:-250px!important;top:170px!important;width:500px!important;height:500px!important;}
  body :is(.premium-hero-3d .hero-grid,.premium-hero-3d .v91-hero-grid){min-height:auto!important;padding-top:3.2rem!important;padding-bottom:3rem!important;}
  .premium-hero-3d h1{font-size:clamp(2.4rem,12vw,4rem)!important;}
  .premium-hero-3d :is(.brand-stage img,.hero-panel img,.v8099-hero-media img){min-height:180px!important;max-height:250px!important;}
}
