/* NOVA CTA global 20.3.74 — aislado, portable y responsive. */
.nova-global-cta {
  --gcta-ink:#041b31;--gcta-blue:#0074c7;--gcta-cyan:#31b4e7;--gcta-gold:#f6bd00;
  --gcta-orange:#ff5300;--gcta-green:#73bc25;
  position:relative;isolation:isolate;box-sizing:border-box;
  width:min(1560px,calc(100% - 36px));max-width:1560px;
  margin:clamp(35px,4vw,66px) auto;overflow:hidden;border-radius:24px;
  border:1px solid rgba(74,182,243,.46);
  background:linear-gradient(115deg,#031629 0%,#062a4a 50%,#003c6f 100%);
  box-shadow:0 30px 100px rgba(0,16,38,.40),inset 0 1px 0 rgba(255,255,255,.14);
  font-family:'Inter',Arial,sans-serif;color:#f8fbff;text-align:center;
}
.nova-global-cta,.nova-global-cta *, .nova-global-cta *::before,.nova-global-cta *::after{box-sizing:border-box}
.nova-global-cta::before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;
 background:radial-gradient(ellipse 45% 80% at 50% -38%,rgba(49,180,231,.35),transparent 85%),radial-gradient(ellipse 42% 80% at -14% 112%,rgba(255,83,0,.18),transparent 85%),radial-gradient(ellipse 35% 60% at 110% 104%,rgba(0,144,255,.32),transparent 90%)}
.nova-global-cta::after{content:"";position:absolute;inset:-90% auto -90% -40%;width:32%;z-index:-1;pointer-events:none;transform:rotate(26deg) translateX(-240%);background:linear-gradient(90deg,transparent,rgba(142,221,255,.11),transparent);animation:novaGctaSweep 12s ease-in-out infinite}
.nova-gcta-grid{position:absolute;inset:0;z-index:-2;pointer-events:none;opacity:.7;background:repeating-linear-gradient(0deg,transparent 0 78px,rgba(118,191,234,.045) 79px,transparent 80px),repeating-linear-gradient(90deg,transparent 0 78px,rgba(118,191,234,.045) 79px,transparent 80px)}
.nova-gcta-orbit{position:absolute;z-index:-1;width:390px;height:390px;border:1px solid rgba(67,201,250,.19);border-radius:50%;left:-230px;bottom:-250px;box-shadow:0 0 0 48px rgba(49,180,231,.025),0 0 0 110px rgba(49,180,231,.015),inset 0 0 70px rgba(49,180,231,.08);animation:novaGctaFloat 9s ease-in-out infinite;pointer-events:none}
.nova-gcta-corner{position:absolute;width:22px;height:22px;pointer-events:none;opacity:.85}.nova-gcta-corner-one{top:17px;left:17px;border-top:2px solid #4cc3ef;border-left:2px solid #4cc3ef}.nova-gcta-corner-two{right:17px;bottom:17px;border-right:2px solid #ffae16;border-bottom:2px solid #ffae16}
.nova-gcta-inner{position:relative;z-index:1;margin:0 auto;max-width:1370px;padding:clamp(42px,4.6vw,66px) clamp(18px,4vw,64px) clamp(38px,4vw,56px)}
.nova-gcta-eyebrow{display:inline-flex;align-items:center;justify-content:center;gap:11px;max-width:100%;border:1px solid rgba(49,180,231,.5);border-radius:100px;padding:10px 17px;background:rgba(2,33,60,.60);backdrop-filter:blur(12px);color:#b7e9ff;font:700 11px/1.35 'Inter',sans-serif;letter-spacing:.13em;text-transform:uppercase}
.nova-gcta-beacon{width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:var(--gcta-green);box-shadow:0 0 0 5px rgba(115,188,37,.13),0 0 18px rgba(115,188,37,.65);animation:novaGctaPulse 2s ease-in-out infinite}
.nova-global-cta .nova-gcta-title{margin:24px auto 17px!important;padding:0!important;max-width:1250px;color:#f8fbff!important;font:700 clamp(43px,5.2vw,76px)/.97 'Barlow Condensed','Arial Narrow',sans-serif!important;letter-spacing:-.008em!important;text-transform:uppercase!important;text-wrap:balance}
.nova-global-cta .nova-gcta-title span{display:inline;color:#ffbf1a;background:linear-gradient(105deg,#fff5b4,#ffcf2a 35%,#ff8b00 69%,#ffc727);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 8px 20px rgba(255,159,0,.2))}
.nova-global-cta .nova-gcta-desc{max-width:840px;margin:0 auto 27px!important;color:#c9dfef!important;font:300 clamp(15px,1.4vw,18px)/1.58 'Inter',Arial,sans-serif!important;letter-spacing:0!important;text-align:center!important;text-wrap:pretty}
.nova-gcta-actions{display:flex;align-items:stretch;justify-content:center;gap:13px;flex-wrap:wrap}
.nova-global-cta .nova-gcta-button{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:57px;padding:0 24px;overflow:hidden;text-decoration:none!important;border:1px solid transparent;border-radius:6px;color:#fff;font:700 clamp(17px,1.8vw,20px)/1 'Barlow Condensed',sans-serif!important;letter-spacing:.035em;text-transform:uppercase;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background .3s ease,color .3s ease}
.nova-gcta-button svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s ease}
.nova-gcta-button::before{content:"";position:absolute;inset:-90% auto -90% -60%;width:38%;z-index:-1;transform:rotate(28deg) translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.44),transparent);transition:transform .7s ease}
.nova-gcta-button:hover::before{transform:rotate(28deg) translateX(630%)}.nova-gcta-button:hover{transform:translateY(-5px)}.nova-gcta-button:hover svg:last-child{transform:translate(3px,-3px)}.nova-gcta-button:focus-visible{outline:3px solid #fff;outline-offset:4px}
.nova-global-cta .nova-gcta-primary{background:linear-gradient(110deg,#ff5300,#ff8900);border-color:#ffa124;box-shadow:0 10px 30px rgba(255,83,0,.26)}.nova-global-cta .nova-gcta-primary:hover{background:linear-gradient(110deg,#ff6e00,#ffb000);box-shadow:0 18px 42px rgba(255,83,0,.43)}
.nova-global-cta .nova-gcta-secondary{background:rgba(0,47,87,.35);border-color:rgba(49,180,231,.78);color:#e6f8ff}.nova-global-cta .nova-gcta-secondary:hover{color:#fff;background:rgba(49,180,231,.18);border-color:#70dcff;box-shadow:0 14px 35px rgba(0,174,255,.18)}
.nova-gcta-divider{display:flex;align-items:center;gap:13px;max-width:400px;margin:25px auto 0;color:#fec33a}.nova-gcta-divider::before,.nova-gcta-divider::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,rgba(107,207,255,.5),transparent)}.nova-gcta-divider span{font-size:20px;animation:novaGctaSpin 15s linear infinite}
.nova-global-cta .nova-gcta-signoff{margin:10px 0 0!important;color:#accde3!important;font:600 10px/1.5 'Inter',Arial,sans-serif!important;letter-spacing:.13em;text-transform:uppercase}
/* Solo mientras el nuevo CTA exista y se haya elegido sustituir el pre-footer anterior. */
body:has(> .nova-global-cta[style*="--nova-hide-legacy:1"]) > .footer-prelude{display:none!important}
/* Capa de iluminación ambiental: no recibe clics ni afecta al layout. */
.nova-site-glow{position:fixed;inset:0;z-index:30;pointer-events:none;overflow:hidden;opacity:var(--nova-glow-strength,.22);mix-blend-mode:screen;contain:strict}
.nova-site-glow::before,.nova-site-glow::after{content:"";position:absolute;width:min(60vw,750px);height:min(60vw,750px);border-radius:50%;filter:blur(80px);background:radial-gradient(circle,rgba(28,166,249,.47),rgba(7,85,145,.14) 40%,transparent 75%);will-change:transform}
.nova-site-glow::before{top:-23%;left:-16%;animation:novaGctaAmbientOne 24s ease-in-out infinite alternate}.nova-site-glow::after{right:-20%;bottom:-32%;background:radial-gradient(circle,rgba(0,143,255,.38),rgba(6,99,164,.09) 40%,transparent 74%);animation:novaGctaAmbientTwo 30s ease-in-out infinite alternate}
@keyframes novaGctaSweep{0%,27%{transform:rotate(26deg) translateX(-240%)}65%,100%{transform:rotate(26deg) translateX(850%)}}
@keyframes novaGctaPulse{50%{box-shadow:0 0 0 8px rgba(115,188,37,.04),0 0 24px rgba(115,188,37,.9)}}
@keyframes novaGctaFloat{50%{transform:translateY(-24px) rotate(6deg)}}
@keyframes novaGctaSpin{to{transform:rotate(360deg)}}
@keyframes novaGctaAmbientOne{to{transform:translate(33vw,16vh) scale(1.1)}}
@keyframes novaGctaAmbientTwo{to{transform:translate(-29vw,-18vh) scale(1.13)}}
@media(max-width:840px){.nova-global-cta{width:calc(100% - 28px);border-radius:18px;margin:34px auto}.nova-gcta-inner{padding:53px 23px 43px}.nova-global-cta .nova-gcta-title{font-size:clamp(42px,8vw,64px)!important}}
@media(max-width:520px){.nova-global-cta{width:calc(100% - 20px);margin:23px auto;border-radius:14px}.nova-gcta-inner{padding:43px 18px 36px}.nova-gcta-eyebrow{font-size:9px;letter-spacing:.07em;padding:9px 11px}.nova-global-cta .nova-gcta-title{font-size:clamp(39px,10vw,52px)!important;line-height:1!important}.nova-global-cta .nova-gcta-desc{font-size:15px!important}.nova-gcta-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.nova-global-cta .nova-gcta-button{min-height:55px;width:100%;padding:0 12px;font-size:19px!important}.nova-site-glow::before,.nova-site-glow::after{filter:blur(50px)}}
@media(prefers-reduced-motion:reduce){.nova-global-cta *, .nova-global-cta *::before,.nova-global-cta *::after,.nova-site-glow::before,.nova-site-glow::after{animation:none!important;transition:none!important}}

/* V20.3.88: protect long English headlines and translated CTA labels from
   horizontal clipping without changing the editable desktop values. */
.nova-global-cta .nova-gcta-inner,.nova-global-cta .nova-gcta-actions{min-width:0;max-width:100%;}
.nova-global-cta .nova-gcta-title{min-width:0;max-width:100%;white-space:normal!important;overflow-wrap:break-word;}
.nova-global-cta .nova-gcta-button{min-width:0;max-width:100%;}
.nova-global-cta .nova-gcta-button>span{min-width:0;overflow-wrap:break-word;}
@media(max-width:1150px){
  html[lang^="en"] .nova-global-cta .nova-gcta-title{font-size:clamp(38px,4.3vw,66px)!important;}
}
