/* Final contact call-to-action: spacious, responsive, and consistent with IKREA. */
#contacto.contact-cta{position:relative;isolation:isolate;overflow:hidden;padding:50px 0!important;background:radial-gradient(ellipse at 78% 0%,rgba(136,37,240,.5),transparent 47%),linear-gradient(115deg,#18072f 0%,#270b4c 58%,#17072e 100%)!important;color:#fff}
#contacto.contact-cta::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.9;background:radial-gradient(ellipse 55% 85% at 86% 110%,rgba(255,103,31,.26),transparent 72%),radial-gradient(ellipse 45% 65% at 9% 0%,rgba(118,25,205,.3),transparent 72%)}
#contacto.contact-cta::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.6;background:repeating-radial-gradient(ellipse 70% 50% at 83% 125%,transparent 0 27px,rgba(255,112,45,.23) 28px,transparent 29px,transparent 41px);transform:rotate(-4deg) scale(1.15)}
#contacto .cta-inner{display:grid!important;grid-template-columns:minmax(0,1.2fr) auto!important;gap:32px!important;align-items:center!important;min-height:0!important}
#contacto .cta-inner>div:first-child{min-width:0}
#contacto .cta-inner .section-tag{display:flex;flex-direction:column;align-items:flex-start;gap:9px;font-size:13px!important;line-height:1.4;font-weight:800;letter-spacing:.07em;color:#ff812f!important;margin:0 0 17px!important}
#contacto .cta-inner .section-tag::after{content:"";display:block;width:104px;height:2px;background:linear-gradient(90deg,#ff812f,transparent)}
#contacto .cta-inner h2{font-size:clamp(30px,2.9vw,44px)!important;line-height:1.16!important;letter-spacing:-.035em!important;font-weight:800!important;margin:0 0 18px!important;max-width:680px}
#contacto .cta-inner h2 em{font-style:normal;color:#ff792d!important}
#contacto .cta-inner p{font-size:15px!important;line-height:1.65!important;color:#e7dff2!important;max-width:620px!important;margin:0!important}
#contacto .cta-actions{display:flex!important;align-items:center!important;justify-content:flex-end;flex-wrap:wrap;gap:14px!important}
#contacto .cta-actions a{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 20px;border-radius:999px;text-decoration:none!important;font-size:13px!important;font-weight:700!important;white-space:nowrap;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease,color .2s ease}
#contacto .cta-actions .btn-primary{background:linear-gradient(110deg,#ff8d35,#ff591b)!important;color:#fff!important;border:1px solid transparent!important;box-shadow:0 10px 24px rgba(255,91,27,.25)!important}
#contacto .cta-actions .btn-primary:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(255,91,27,.38)!important}
#contacto .cta-actions .cta-whatsapp{background:rgba(255,255,255,.04);color:#fff!important;border:1px solid rgba(255,255,255,.65)!important}
#contacto .cta-actions .cta-whatsapp:hover{transform:translateY(-3px);background:rgba(255,255,255,.14)}
#contacto .cta-actions a:focus-visible{outline:3px solid #ffb06f;outline-offset:4px}
@media(max-width:1100px){#contacto .cta-inner{grid-template-columns:1fr!important;gap:26px!important}#contacto .cta-actions{justify-content:flex-start!important}}
@media(max-width:700px){#contacto.contact-cta{padding:50px 0!important}#contacto .cta-inner{gap:25px!important}#contacto .cta-inner h2{font-size:32px!important}#contacto .cta-actions{display:grid!important;grid-template-columns:1fr;gap:12px!important;width:100%}#contacto .cta-actions a{width:100%;white-space:normal;text-align:center}}
@media(prefers-reduced-motion:reduce){#contacto .cta-actions a{transition:none!important}}

/* Animated luminous ribbons and moving glow behind the content. */
#contacto.contact-cta{background:radial-gradient(ellipse at 78% 0%,rgba(136,37,240,.5),transparent 47%),linear-gradient(115deg,#18072f 0%,#270b4c 58%,#17072e 100%)!important}
#contacto.contact-cta::before{z-index:0;opacity:.95;background:radial-gradient(ellipse 38% 95% at 78% 100%,rgba(255,105,24,.43),transparent 75%),radial-gradient(ellipse 32% 90% at 45% 0%,rgba(179,39,255,.34),transparent 78%);background-size:130% 130%;animation:ik-contact-glow 10s ease-in-out infinite alternate}
#contacto.contact-cta::after{z-index:0;inset:-45% -10%;opacity:.9;background:repeating-radial-gradient(ellipse 74% 49% at 75% 85%,transparent 0 26px,rgba(255,110,33,.16) 27px,rgba(255,140,44,.42) 28px,transparent 29px,transparent 47px),repeating-radial-gradient(ellipse 66% 54% at 38% 25%,transparent 0 34px,rgba(185,59,255,.25) 35px,transparent 37px,transparent 57px);filter:drop-shadow(0 0 12px rgba(249,82,255,.45));transform:rotate(-7deg) scale(1.12);transform-origin:70% 50%;animation:ik-contact-ribbons 14s ease-in-out infinite alternate}
#contacto .cta-inner{z-index:2}
@keyframes ik-contact-glow{0%{background-position:0% 35%;filter:brightness(.85)}100%{background-position:100% 65%;filter:brightness(1.28)}}
@keyframes ik-contact-ribbons{0%{transform:translate3d(-2%,2%,0) rotate(-8deg) scale(1.12);opacity:.65}50%{opacity:1}100%{transform:translate3d(3%,-3%,0) rotate(-3deg) scale(1.22);opacity:.85}}
@media(prefers-reduced-motion:reduce){#contacto.contact-cta::before,#contacto.contact-cta::after{animation:none!important}}

/* Luminous curved ribbons across the CTA background, behind readable content. */
#contacto .cta-light-waves{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.9;overflow:visible}
#contacto .cta-inner{z-index:2!important}
#contacto.contact-cta::after{z-index:0!important;opacity:.24!important}
#contacto .cta-wave-line{animation:ik-cta-wave-breathe 8s ease-in-out infinite;transform-origin:center}
#contacto .cta-wave-secondary{animation-delay:-2s}
#contacto .cta-wave-third{animation-delay:-4s}
#contacto .cta-wave-bottom{animation-delay:-3s}
@keyframes ik-cta-wave-breathe{0%,100%{opacity:.55;transform:translateY(0)}50%{opacity:1;transform:translateY(-12px)}}
@media(max-width:700px){#contacto .cta-light-waves{width:175%;left:-40%;opacity:.65}}
@media(prefers-reduced-motion:reduce){#contacto .cta-wave-line{animation:none!important}}

/* CTA buttons follow the site's shared .btn / .btn-primary design language. */
#contacto .cta-actions{padding:12px 9px;overflow:visible}
#contacto .cta-actions a{position:relative;min-height:48px;padding:0 23px;border-radius:30px;font-size:12px!important;font-weight:700!important;gap:16px;letter-spacing:normal;will-change:transform;transition:filter .2s ease,box-shadow .2s ease!important}
#contacto .cta-actions .btn-primary{background:linear-gradient(95deg,#ff631d,#ff8427)!important;color:#fff!important;border:1px solid transparent!important;box-shadow:0 7px 20px #ff641f25!important;animation:ik-cta-float-up 3.6s ease-in-out infinite}
#contacto .cta-actions .cta-whatsapp{background:transparent!important;color:#fff!important;border:1px solid rgba(255,255,255,.75)!important;box-shadow:none!important;animation:ik-cta-float-up 3.6s ease-in-out -1.8s infinite}
#contacto .cta-actions .btn-primary:hover{box-shadow:0 10px 25px #ff631c40!important}
#contacto .cta-actions .cta-whatsapp:hover{background:rgba(255,255,255,.12)!important;box-shadow:0 7px 20px rgba(0,0,0,.15)!important}
#contacto .cta-actions a:hover{animation-play-state:paused;filter:brightness(1.06)}
@keyframes ik-cta-float-up{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-7px,0)}}
@media(max-width:700px){#contacto .cta-actions{padding:8px 7px;width:100%}#contacto .cta-actions a{min-height:48px;padding:12px 20px}}
@media(prefers-reduced-motion:reduce){#contacto .cta-actions a{animation:none!important;will-change:auto;transform:none!important}}

/* Shared cosmic-space background treatment from Sobre Impacto and Soluciones. */
#contacto.contact-cta::before{inset:-8%;z-index:0;opacity:.75;background:radial-gradient(ellipse 44% 55% at 20% 35%,rgba(136,42,240,.43),transparent 80%),radial-gradient(ellipse 48% 60% at 86% 68%,rgba(255,99,32,.26),transparent 80%),radial-gradient(circle at 12% 18%,rgba(181,66,255,.7) 1.5px,transparent 2px),radial-gradient(circle at 89% 23%,rgba(255,111,38,.8) 2px,transparent 3px);background-size:100% 100%;animation:ikrea-nebula-drift 24s ease-in-out infinite alternate}
#contacto.contact-cta::after{inset:-8%;z-index:0!important;opacity:.65!important;filter:none;background:radial-gradient(1px 1px at 13% 22%,rgba(255,255,255,.9) 99%,transparent),radial-gradient(2px 2px at 32% 76%,rgba(200,156,255,.8) 99%,transparent),radial-gradient(1px 1px at 58% 19%,rgba(255,255,255,.85) 99%,transparent),radial-gradient(2px 2px at 82% 64%,rgba(255,171,110,.85) 99%,transparent),radial-gradient(1px 1px at 94% 34%,rgba(255,255,255,.8) 99%,transparent),repeating-radial-gradient(ellipse 700px 230px at 52% 123%,transparent 0 20px,rgba(155,58,241,.13) 21px 22px,transparent 23px 39px);animation:ikrea-stars-drift 38s linear infinite alternate}
#contacto .cta-light-waves{z-index:1}
#contacto .cta-inner{position:relative;z-index:2!important}
@keyframes ikrea-nebula-drift{from{transform:translate3d(-3%,1%,0) scale(1)}to{transform:translate3d(4%,-3%,0) scale(1.12)}}
@keyframes ikrea-stars-drift{from{transform:translate3d(-2%,1%,0)}to{transform:translate3d(3%,-3%,0)}}
@media(prefers-reduced-motion:reduce){#contacto.contact-cta::before,#contacto.contact-cta::after{animation:none!important}}

/* Reuse the same animated canvas starfield as Soluciones and Sobre Impacto. */
#contacto .solution-cosmos{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
#contacto .solution-cosmos canvas{display:block;width:100%;height:100%;opacity:1}
#contacto .cta-light-waves{z-index:1}
#contacto .cta-inner{position:relative;z-index:2!important}
@media(prefers-reduced-motion:reduce){#contacto .solution-cosmos{opacity:.55}}

/* Full Soluciones atmosphere in final CTA: glowing nebulae, twinkling stars and breathing depth. */
#contacto.contact-cta{background:radial-gradient(ellipse at 53% 52%,rgba(92,28,174,.44),transparent 39%),radial-gradient(ellipse at 95% 100%,rgba(163,25,133,.25),transparent 43%),linear-gradient(112deg,#100622,#18072e 53%,#110524)!important}
#contacto.contact-cta::before{inset:-18%!important;opacity:.82!important;filter:blur(26px);background:radial-gradient(ellipse 30% 27% at 24% 52%,rgba(151,65,255,.38),transparent 78%),radial-gradient(ellipse 36% 32% at 69% 40%,rgba(93,40,237,.42),transparent 79%),radial-gradient(ellipse 26% 24% at 85% 81%,rgba(255,91,73,.27),transparent 77%),radial-gradient(ellipse 34% 24% at 42% 86%,rgba(185,48,198,.23),transparent 80%);animation:ikrea-nebula-drift 24s ease-in-out infinite alternate}
#contacto.contact-cta::after{inset:-10%!important;opacity:.85!important;filter:none;mask-image:none;background:radial-gradient(circle at 8% 13%,rgba(255,255,255,.9) 0 1px,transparent 2px),radial-gradient(circle at 24% 73%,rgba(201,166,255,.9) 0 1.4px,transparent 2.5px),radial-gradient(circle at 39% 24%,rgba(255,255,255,.8) 0 1px,transparent 2px),radial-gradient(circle at 58% 82%,rgba(255,167,117,.85) 0 1.3px,transparent 2.5px),radial-gradient(circle at 76% 18%,rgba(213,176,255,.9) 0 1.5px,transparent 3px),radial-gradient(circle at 91% 62%,rgba(255,255,255,.85) 0 1px,transparent 2px),radial-gradient(circle at 66% 56%,rgba(205,152,255,.85) 0 1px,transparent 2px),radial-gradient(circle at 15% 45%,rgba(255,148,103,.9) 0 1.2px,transparent 2.5px),radial-gradient(circle at 49% 9%,rgba(255,255,255,.8) 0 1px,transparent 2px),radial-gradient(circle at 95% 92%,rgba(197,147,255,.85) 0 1.5px,transparent 3px);animation:ikrea-stars-drift 38s linear infinite alternate}
#contacto .cta-atmosphere{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.82;background:radial-gradient(ellipse 31% 37% at 17% 79%,rgba(129,45,242,.23),transparent 84%),radial-gradient(ellipse 34% 46% at 80% 29%,rgba(166,48,223,.26),transparent 84%),radial-gradient(ellipse 24% 28% at 87% 89%,rgba(255,104,47,.2),transparent 85%);animation:ikrea-nebula-glow 16s ease-in-out infinite alternate}
@keyframes ikrea-nebula-glow{from{opacity:.48}to{opacity:.85}}
#contacto .solution-cosmos{z-index:1}
#contacto .cta-light-waves{z-index:1;opacity:.68}
#contacto .cta-inner{z-index:2!important}
@media(prefers-reduced-motion:reduce){#contacto .cta-atmosphere{animation:none!important}}

/* CTA actions: two right-aligned stacked buttons, matching description text size. */
#contacto .cta-actions{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:flex-end!important;justify-content:center!important;gap:14px!important;width:max-content;max-width:100%;margin-left:auto;padding:12px 9px}
#contacto .cta-actions a{font-size:15px!important;line-height:1.65!important;width:100%;min-height:50px;white-space:normal;text-align:center}
@media(max-width:1100px){#contacto .cta-actions{margin-left:auto;align-items:flex-end!important;justify-content:center!important}}
@media(max-width:700px){#contacto .cta-actions{width:100%;align-items:stretch!important;margin-left:0;padding:8px 7px}#contacto .cta-actions a{width:100%;font-size:15px!important}}

/* Single CTA button: give heading the remaining horizontal space. */
@media(min-width:701px){
#contacto.contact-cta .cta-inner{grid-template-columns:minmax(0,1fr) minmax(230px,275px)!important;gap:clamp(22px,3vw,48px)!important}
#contacto.contact-cta .cta-inner h2{max-width:none!important;text-wrap:balance}
#contacto.contact-cta .cta-actions{width:100%!important;max-width:275px!important;justify-content:flex-end!important}
#contacto.contact-cta .cta-actions .btn-primary{width:100%;box-sizing:border-box}
}
@media(max-width:700px){#contacto.contact-cta .cta-inner h2{max-width:none!important}}

/* Full-width section edges: keep CTA square like adjacent homepage sections. */
#contacto.contact-cta{border-radius:0!important}

/* Full-bleed CTA and compact single action. */
#contacto.contact-cta{border-radius:0!important;clip-path:none!important}
#contacto .cta-actions{width:auto!important;max-width:none!important;padding:0!important}
#contacto .cta-actions .btn-primary{width:auto!important;min-height:42px!important;padding:0 17px!important;font-size:12px!important;gap:9px!important;white-space:nowrap!important}
@media(max-width:700px){#contacto .cta-actions .btn-primary{width:auto!important;max-width:100%!important;min-height:42px!important;font-size:12px!important}}

/* Defensive compatibility: hide obsolete secondary action even in cached Home HTML. */
#contacto .cta-actions .cta-whatsapp{display:none!important}
#contacto .cta-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important}
#contacto .cta-actions .btn-primary{flex:0 0 auto!important;width:max-content!important;max-width:100%!important;min-height:42px!important;padding:0 17px!important}

/* Single source of truth for the quote button and its attached mascot. */
#contacto .cta-actions{position:relative!important;transform:translateY(58px)!important;overflow:visible!important}
#contacto.contact-cta .cta-actions .btn-primary{position:relative!important;isolation:isolate;box-sizing:border-box!important;flex:0 0 auto!important;width:max-content!important;max-width:100%!important;min-height:68px!important;padding:5px 24px!important;font-size:14px!important;line-height:1.3!important;gap:5px!important;white-space:nowrap!important}
#contacto.contact-cta .cta-actions .btn-primary span{font-size:inherit!important;line-height:inherit!important}
#contacto.contact-cta .cta-actions .btn-primary::before{content:"";position:absolute;left:50%;right:auto;bottom:calc(100% - 9px);width:clamp(115px,12vw,165px);aspect-ratio:3/2;transform:translateX(-50%);background:url("assets/images/chico-cotizacion.webp") center bottom/contain no-repeat;pointer-events:none;z-index:2}
@media(max-width:700px){#contacto .cta-actions{transform:translateY(45px)!important}#contacto.contact-cta .cta-actions .btn-primary{min-height:68px!important;padding:5px 24px!important}#contacto.contact-cta .cta-actions .btn-primary::before{width:115px}}

/* Same eyebrow separator used in “Confianza que impulsa resultados”. */
#contacto.contact-cta .section-tag{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:9px!important;margin-bottom:17px!important}
#contacto.contact-cta .section-tag::after{content:"";display:block;width:104px;height:2px;background:linear-gradient(90deg,#ff792d,transparent);flex:none}

/* Visible divider anchored directly to the CTA eyebrow text. */
#contacto.contact-cta .cta-inner>div:first-child>.section-tag{display:table!important;position:relative!important;margin-bottom:28px!important;padding-bottom:13px!important}
#contacto.contact-cta .cta-inner>div:first-child>.section-tag::after{content:""!important;display:block!important;position:absolute!important;left:0!important;bottom:0!important;width:104px!important;height:2px!important;background:linear-gradient(90deg,#ff792d,transparent)!important;opacity:1!important;visibility:visible!important}

/* Slightly deeper night backdrop; preserve stars, ribbons and all foreground elements. */
#contacto.contact-cta{background:radial-gradient(ellipse at 53% 52%,rgba(76,21,151,.39),transparent 39%),radial-gradient(ellipse at 95% 100%,rgba(132,19,113,.20),transparent 43%),linear-gradient(112deg,#0c041b 0%,#130523 53%,#0d041c 100%)!important}

/* Final CTA: darker continuous section without a visible perimeter. */
#contacto.contact-cta{background:radial-gradient(ellipse at 53% 52%,rgba(57,15,117,.29),transparent 39%),radial-gradient(ellipse at 95% 100%,rgba(95,14,85,.14),transparent 43%),linear-gradient(112deg,#080213 0%,#0e031a 53%,#090215 100%)!important;border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important}
