
/* FINXARIA V60 R16 — Corregir la experiencia de scroll; R15 se mantiene como base. */
:root{--fx-r16-mint:#55f7d5;--fx-r16-deep:#061629}
html{scroll-padding-top:94px!important;overflow-x:clip}
body{overflow-x:clip}
section[id]{scroll-margin-top:0!important}
#inicio{scroll-margin-top:0!important}
/* El primer cuadro no desplaza ni tapa la galaxia. */
.hero.shell{grid-template-columns:minmax(0,.99fr) minmax(0,1.01fr)!important;grid-template-rows:minmax(450px,auto) auto!important;min-height:clamp(650px,calc(100svh - 210px),900px)!important;align-items:center!important;gap:clamp(8px,1.4vw,20px)!important;padding-top:clamp(34px,4.2vw,64px)!important;padding-bottom:clamp(40px,4vw,58px)!important}
.hero-copy{transform:none!important;align-self:center!important;max-width:none!important}
.hero-visual{height:clamp(470px,43vw,680px)!important;min-height:0!important;transform:translate3d(0,-26px,0)!important;overflow:visible!important}
.hero-visual .galaxy-zone{inset:-14% -22% -8% -10%!important;mask-image:linear-gradient(90deg,transparent 0%,#000 4%,#000 96%,transparent 100%)!important}
.hero-proof{grid-row:2!important;grid-column:1/-1!important;align-items:stretch!important;gap:13px!important}
.hero-proof .proof{min-height:100px!important;padding:15px 17px!important;transition:transform .38s ease,box-shadow .38s ease,border-color .38s ease!important}
.hero-proof .proof .fx-proof-icon{width:35px!important;height:35px!important}
/* Viajero único. Fijación bajo el menú visible y recorrido vertical hasta el cierre. */
#f38-voyager.fx-v60-pinned,#f38-voyager.fx-v60-morph{left:auto!important;right:clamp(8px,2vw,28px)!important;top:var(--fx-voyager-top,94px)!important;width:clamp(145px,14vw,205px)!important;height:clamp(105px,10.6vw,155px)!important;z-index:224!important}
#f38-voyager.fx-v60-pinned{transition:top .28s ease,transform .22s linear!important}
#f38-voyager.fx-v60-morph{transition:none!important}
/* Tierra: verdadera capa persistente tras la galaxia y bajo todos los contenidos. */
#earthLayer,#earthLayer.visible,#earthLayer.featured,#earthLayer.earth-giant{
 position:fixed!important;top:12svh!important;right:-6vw!important;left:auto!important;bottom:auto!important;
 width:min(74vw,1150px)!important;height:86svh!important;z-index:2!important;
 transform:translate3d(0,var(--fx-earth-drift,0px),0) scale(var(--fx-earth-scale,1))!important;
 transform-origin:67% 52%!important;pointer-events:none!important;overflow:hidden!important;
 transition:opacity .65s ease,visibility .65s ease!important;
}
#earthLayer{visibility:hidden!important;opacity:0!important}
#earthLayer.visible,#earthLayer.featured{visibility:visible!important;opacity:.54!important}
#earthLayer.earth-giant{width:min(100vw,1480px)!important;right:-16vw!important;opacity:.38!important}
/* Capas de contenido por delante del planeta, sin paneles opacos adicionales. */
main{position:relative;z-index:3;isolation:isolate}
.orbital-stage#tierra{z-index:auto!important;isolation:auto!important;overflow:visible!important}
/* Método: ruta conectada y tarjetas con progreso, no una lista plana. */
.process-section{padding-block:clamp(65px,6.5vw,95px)!important}
.process-visual-strip{display:none!important} /* Elimina la franja duplicada de R15. */
.process-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;position:relative!important;counter-reset:step}
.process-grid::before{content:"";position:absolute;top:29px;left:8%;right:8%;height:2px;background:linear-gradient(90deg,rgba(35,230,203,.16),#43f7d9,rgba(33,177,255,.38));box-shadow:0 0 17px rgba(60,243,218,.28);z-index:0;pointer-events:none}
.process-step{padding:20px 20px 25px!important;min-height:212px!important;overflow:visible!important;z-index:1;transition:transform .4s ease,border-color .4s ease,box-shadow .4s ease!important}
.process-step::after{height:2px!important;background:linear-gradient(90deg,transparent,#48ffdd,transparent)!important;opacity:.75!important}
.process-step>span{width:55px!important;height:55px!important;font-size:17px!important;background:linear-gradient(135deg,rgba(19,106,103,.76),rgba(4,34,59,.95))!important;box-shadow:0 0 23px rgba(70,255,217,.26)!important;border:1px solid rgba(109,253,230,.71)!important}
.process-step h3{font-size:clamp(18px,1.5vw,23px)!important;margin:0 0 9px!important}
.process-step p{font-size:clamp(12px,.98vw,14px)!important;line-height:1.6!important}
.process-step:hover,.process-step.fx-inview{border-color:rgba(93,255,225,.61)!important;box-shadow:0 20px 55px rgba(0,0,0,.22),inset 0 1px rgba(120,255,223,.17),0 0 20px rgba(54,236,210,.1)!important}
.process-step:hover{transform:translateY(-6px)!important}
/* Dos microlecturas adicionales que cambian con cada dashboard. */
.fx-viz-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.fx-viz-mini article{border:1px solid rgba(87,220,215,.24);border-radius:15px;background:linear-gradient(130deg,rgba(6,37,53,.58),rgba(3,17,30,.7));padding:13px 15px;min-height:104px;display:flex;align-items:center;gap:15px}
.fx-viz-mini small{display:block;font-size:10px;line-height:1.5;color:#b1cfd4}
.fx-viz-mini strong{font-size:14px;color:#e4fff7;line-height:1.35}
.fx-mini-ring{--fx-progress:334.8deg;display:grid;place-items:center;flex:0 0 72px;width:72px;height:72px;border-radius:100%;background:conic-gradient(#56f4d5 var(--fx-progress),rgba(59,115,144,.25) 0);position:relative;box-shadow:0 0 15px rgba(48,245,212,.10)}
.fx-mini-ring::after{content:"";position:absolute;inset:8px;border-radius:50%;background:#071725}
.fx-mini-ring span{z-index:1;color:#ccfff2;font-weight:850;font-size:15px;font-variant-numeric:tabular-nums}
.fx-mini-spark{flex:1 1 115px;width:100%;height:61px;max-width:148px;overflow:visible}
.fx-mini-spark polyline{stroke:#60f8dd;stroke-width:2.8;fill:none;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px rgba(50,240,225,.42))}
/* Footer: proporción compacta equivalente al área de marca superior. */
.footer{min-height:0!important}
.fx-footer-r14-inner{min-height:205px!important;padding-block:22px 18px!important;align-items:center!important;grid-template-columns:minmax(0,1.07fr) minmax(280px,.93fr)!important}
.fx-footer-brand>a{width:min(100%,470px)!important}
.fx-footer-brand p{margin-top:11px!important;font-size:clamp(12px,1vw,14px)!important}
.fx-footer-right{gap:9px!important;padding-left:clamp(18px,2.3vw,35px)!important}
.fx-footer-right h2{font-size:clamp(22px,2.15vw,29px)!important}
.fx-footer-label{font-size:9px!important}
.fx-footer-r14-bottom{padding-block:9px 11px!important}
/* Misma X e I/A finales en el footer que en la cabecera. */
.fx-footer-inline-logo .glyph-i-last,.fx-footer-inline-logo .glyph-a-last{fill:url(#footer-x-fin)!important}
.fx-footer-inline-logo .glyph-x{animation:fxLetterXSlow 5s ease-in-out infinite!important}
.fx-footer-inline-logo .glyph-i-last{animation:fxLetterISlow 5s ease-in-out infinite!important}
.fx-footer-inline-logo .glyph-a-last{animation:fxLetterASlow 5s ease-in-out infinite!important}
.fx-footer-inline-logo .fx-x-intersection{animation:fxXCorePulse 5s ease-in-out infinite!important}
/* Scroll: aparición discreta, nunca ocultar el contenido para quien no tenga JS. */
.fx-scroll-ready .section .section-intro,.fx-scroll-ready .process-step{transition:filter .45s ease,transform .45s ease,box-shadow .45s ease}
.fx-scroll-ready .section .section-intro.fx-inview{filter:drop-shadow(0 0 6px rgba(38,234,204,.09))}
@media(min-width:981px) and (max-height:760px){.hero.shell{grid-template-rows:minmax(385px,auto) auto!important;padding-top:27px!important}.hero-visual{height:500px!important}}
@media(max-width:1180px){.hero-proof{grid-template-columns:repeat(2,minmax(0,1fr))!important}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.process-grid::before{display:none}.hero-visual{height:clamp(420px,47vw,600px)!important}}
@media(max-width:980px){.hero.shell{grid-template-columns:1fr!important;grid-template-rows:auto auto auto!important;min-height:0!important}.hero-copy{grid-row:1!important}.hero-visual{grid-column:1!important;grid-row:2!important;height:clamp(350px,61vw,550px)!important;transform:none!important}.hero-proof{grid-row:3!important}.fx-footer-r14-inner{grid-template-columns:1fr!important;padding-block:25px!important;gap:17px!important}.fx-footer-right{border-left:0!important;border-top:1px solid rgba(72,224,214,.28);padding-top:16px!important;padding-left:0!important}#earthLayer,#earthLayer.visible,#earthLayer.featured{right:-26vw!important;width:135vw!important;height:72svh!important;top:21svh!important}#earthLayer.earth-giant{width:150vw!important;right:-42vw!important}}
@media(max-width:650px){.hero-proof{grid-template-columns:1fr!important}.hero-proof .proof{min-height:77px!important}.process-grid{grid-template-columns:1fr!important}.process-step{min-height:175px!important}.fx-viz-mini{grid-template-columns:1fr}.fx-viz-mini article{min-height:85px}.fx-mini-ring{width:60px;height:60px;flex-basis:60px}.fx-footer-brand>a{width:min(86vw,400px)!important}#f38-voyager.fx-v60-pinned,#f38-voyager.fx-v60-morph{right:8px!important;width:130px!important;height:100px!important}}
@media(prefers-reduced-motion:reduce){.process-step{transition:none!important}.fx-footer-inline-logo .glyph-x,.fx-footer-inline-logo .glyph-i-last,.fx-footer-inline-logo .glyph-a-last,.fx-footer-inline-logo .fx-x-intersection{animation:none!important}}

/* Prioridad específica: vence las reglas heredadas de R12 que fijaban 70% de una fila auto.
   Sin este ajuste, la galaxia tenía altura cero en móvil. */
.hero.shell .hero-visual{position:relative!important;inset:auto!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;width:100%!important;height:clamp(410px,32vw,500px)!important;min-height:410px!important;transform:translate3d(0,-18px,0)!important}
.hero.shell .hero-visual .galaxy-zone{position:absolute!important;inset:-13% -18% -9% -9%!important;width:auto!important;height:auto!important;overflow:visible!important}
@media(min-width:981px) and (max-width:1180px){.hero.shell .hero-visual{height:clamp(390px,37vw,445px)!important;min-height:390px!important}}
@media(max-width:980px){.hero.shell .hero-visual{height:clamp(335px,60vw,540px)!important;min-height:335px!important;transform:none!important}}
@media(max-width:650px){.hero.shell .hero-visual{height:320px!important;min-height:320px!important;margin:4px 0 0!important}.hero.shell .hero-visual .galaxy-zone{inset:-4% -3% -5% -3%!important}}

/* Eliminación de desplazamiento doble: knowledge.css añadía otros 94 px a cada ancla. */
#inicio,#tierra,#servicios,#visualizaciones,#soluciones,#filosofia,#metodo,#conocimiento,#nosotros,#contacto{scroll-margin-top:0!important}
