/* XTEND Motion & Interaction v1 — XAE landing implementation.
   Standalone, progressive and CSS-only fallback; no CodePen third-party assets. */
:root{--xae-motion-blue:#4685fa;--xae-motion-mint:#68e4d4}
body[data-xae-landing] .nav,body[data-xae-landing] .menu-toggle{display:none!important}
.xae-sticky{position:sticky;top:72px;z-index:14;background:#0b2042ed;border-bottom:1px solid #7ba7e93e;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.xae-sticky-track{position:relative;display:flex;gap:5px;justify-content:center;align-items:center;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:6px max(12px,env(safe-area-inset-right))}
.xae-sticky-track::-webkit-scrollbar{display:none}
.xae-sticky a{display:flex;position:relative;flex:0 0 auto;align-items:center;justify-content:center;color:#b9cbe7;padding:10px 15px;border-radius:12px;font-size:12px;font-weight:700;white-space:nowrap;scroll-snap-align:center;transition:color .2s,background .2s}
.xae-sticky a::after{content:"";height:2px;width:calc(100% - 28px);position:absolute;bottom:3px;left:14px;background:#7cb4ff;transform:scaleX(0);transform-origin:center;transition:transform .3s;box-shadow:0 0 10px #71abff}
.xae-sticky a[aria-current="location"]{color:#fff;background:#2d60bc5e}
.xae-sticky a[aria-current="location"]::after{transform:scaleX(1)}
.xae-sticky a:focus-visible{outline:2px solid #a5caff;outline-offset:-2px}
html{scroll-padding-top:125px}
body[data-xae-landing] section[id]{scroll-margin-top:125px}
body[data-xae-landing] .hero{isolation:isolate}
.xae-hero-depth{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.xae-depth-grid{position:absolute;inset:-22%;background:linear-gradient(#6ca0ff15 1px,transparent 1px),linear-gradient(90deg,#6ca0ff15 1px,transparent 1px);background-size:52px 52px;transform:translate3d(0,var(--xae-depth-a,0px),0);mask-image:radial-gradient(ellipse at 65% 50%,#000,transparent 76%)}
.xae-depth-halo{position:absolute;inset:-30%;background:radial-gradient(ellipse at 72% 45%,#367bff53,transparent 40%),radial-gradient(ellipse at 20% 75%,#2dcbd22d,transparent 30%);filter:blur(15px);transform:translate3d(0,var(--xae-depth-b,0px),0)}
.xae-depth-lines{position:absolute;inset:0;opacity:.8;background:repeating-linear-gradient(115deg,transparent 0 74px,#6b97eb16 75px 76px,transparent 77px 150px);mask-image:linear-gradient(90deg,transparent,#000,transparent);transform:translate3d(0,var(--xae-depth-c,0px),0)}
body[data-xae-landing] .hero-layout{position:relative;z-index:1}
body[data-xae-landing] .orbits{transform:translate3d(0,var(--xae-depth-orbit,0px),0)}
body[data-xae-landing] #soluciones{position:relative}
body[data-xae-landing] .grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}
body[data-xae-landing] .card.xae-capability{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;min-height:170px;padding:22px 12px;cursor:pointer;animation:xae-float-card 7.2s ease-in-out infinite;border-color:#74a9ff54;box-shadow:0 10px 38px #05163233}
body[data-xae-landing] .card.xae-capability:nth-child(2n){animation-delay:-1.8s}
body[data-xae-landing] .card.xae-capability:nth-child(3n){animation-delay:-3.6s}
body[data-xae-landing] .card.xae-capability::after{content:"";position:absolute;inset:-50%;pointer-events:none;background:conic-gradient(from 0deg,transparent 0deg,transparent 260deg,#6dbbff33 305deg,transparent 350deg);animation:xae-card-light 10s linear infinite;opacity:.55;mask-image:radial-gradient(ellipse at center,transparent 30%,#000 70%)}
body[data-xae-landing] .card.xae-capability:hover,body[data-xae-landing] .card.xae-capability:focus-within{animation-play-state:paused;transform:translateY(-5px) scale(1.02);border-color:#8cbeff;box-shadow:0 16px 37px #2c7ce354}
body[data-xae-landing] .card.xae-capability .ico{position:relative;z-index:1;grid-area:auto;width:66px;height:66px;flex:none;margin:0;align-self:auto;filter:drop-shadow(0 0 10px #5f9bff65)}
body[data-xae-landing] .card.xae-capability h3{position:relative;z-index:1;grid-area:auto;font-size:clamp(13px,1.7vw,17px);line-height:1.35;margin:0;max-width:230px}
body[data-xae-landing] .card.xae-capability p{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body[data-xae-landing] .card.xae-capability a{position:absolute;z-index:3;inset:0;display:block;overflow:hidden;color:transparent!important;font-size:0!important;margin:0;opacity:0}
body[data-xae-landing] .card.xae-capability a:focus-visible{outline:3px solid #c3dfff;outline-offset:-5px;border-radius:17px;opacity:1}
@keyframes xae-float-card{0%,100%{translate:0 0}50%{translate:0 -7px}}
@keyframes xae-card-light{to{rotate:360deg}}
body[data-xae-landing] .flow-sec{scroll-margin-top:125px}
body[data-xae-landing] .flow-intro-condensed{max-width:680px}
body[data-xae-landing] .flow-board{overflow:hidden}
body[data-xae-landing] .steps.xae-workflow{position:relative;display:block!important;height:490px;margin:20px 0 0;overflow:hidden;isolation:isolate}
.xae-graph{position:absolute;inset:0;width:100%;height:100%}
.xae-graph svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;z-index:0;pointer-events:none}
.xae-graph path{fill:none;stroke:#407bd3;stroke-width:3;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-dasharray:8 10;animation:xae-edge-motion 2.7s linear infinite;opacity:.75}
.xae-graph path:nth-child(even){animation-delay:-1.3s}
@keyframes xae-edge-motion{to{stroke-dashoffset:-36}}
.xae-node{position:absolute;z-index:1;left:var(--node-x);top:var(--node-y);transform:translate(-50%,-50%) scale(.94);min-width:0;width:min(27%,172px);min-height:82px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:10px 8px;border:1px solid #8aaee2;border-radius:13px;background:linear-gradient(145deg,#fcfeff,#e6f1ff);color:#17345e;text-align:center;box-shadow:0 9px 22px #0c376325;opacity:.5;transition:opacity .5s,transform .5s,border-color .5s,box-shadow .5s}
.xae-node.is-live{opacity:1;transform:translate(-50%,-50%) scale(1);border-color:#2c76e2;box-shadow:0 10px 28px #2c76e23c}
.xae-node b{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#d9e8ff;color:#2860bf;font-size:10px}
.xae-node strong{font-size:12px;line-height:1.2;overflow-wrap:anywhere}
.xae-node small{font-size:10px;color:#5b7798;line-height:1.25}
.xae-graph.xae-complete .xae-node{width:min(31%,174px)}
.xae-graph.xae-complete .xae-node[data-center="true"]{width:min(34%,190px)}
body[data-xae-landing] .layers{gap:17px}
body[data-xae-landing] .arch-grid{display:block}
body[data-xae-landing] .layer.xae-layer{position:relative;display:grid;text-align:left;color:#eff5ff;font:inherit;gap:8px;justify-content:stretch;align-content:center;min-height:148px;cursor:pointer;border-color:#557eb0}
body[data-xae-landing] .layer.xae-layer:focus-visible{outline:3px solid #9bc6ff;outline-offset:3px}
body[data-xae-landing] .layer.xae-layer span.xae-layer-tag{font-size:11px;letter-spacing:.14em}
body[data-xae-landing] .layer.xae-layer strong{font-size:clamp(13px,1.6vw,17px)}
body[data-xae-landing] .layer.xae-layer small{font-size:11px}
body[data-xae-landing] .layer.xae-layer .xae-layer-extra{display:block;font-size:11px;color:#d5e7ff;line-height:1.5;margin-top:3px;opacity:1}
body[data-xae-landing] .layer.xae-layer .xae-layer-extra[hidden]{display:none}
body[data-xae-landing] .layer.xae-layer[aria-expanded=true]{border-color:#83b4ff;background:#1c4273;box-shadow:0 14px 26px #142f6670}
body[data-xae-landing] .arch-mark{pointer-events:none}
body[data-xae-landing] .arch-copy{display:none}
body[data-xae-landing] .architecture .section-copy{max-width:760px}
body[data-xae-landing] .contact-layout{display:block;max-width:820px}
body[data-xae-landing] #contacto .contact-panel{display:none}
body[data-xae-landing] .xp-contact-dialog .contact-panel{display:block}
body[data-xae-landing] #direct-contact{margin-top:20px}
body[data-xae-landing] .xp-contact-buttons #xp-lead-send:disabled{display:none}
body[data-xae-landing] .xp-contact-buttons #xp-wa-send{background:#2459c5;color:white;font-weight:750;border-color:#2459c5}
body[data-xae-landing] #xp-contact-modal .xp-modal-card{width:min(580px,calc(100vw - 28px))}
body[data-xae-landing] #xp-contact-modal .contact-panel{padding:5px 7px}
body[data-xae-landing] .xp-footer-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px}
body[data-xae-landing] .xp-footer-choices .xp-summary,body[data-xae-landing] .xp-footer-choices .xp-foot-person{width:100%;min-width:0;min-height:68px;height:100%;margin:0;border-radius:12px}
body[data-xae-landing] .xp-footer-choices .xp-foot-person{display:flex;gap:8px;align-items:center;justify-content:center;text-align:center;padding:12px}
body[data-xae-landing] .xp-footer-choices .xp-summary{padding:9px 11px;gap:7px}
body[data-xae-landing] .xp-footer-choices .xp-summary-text strong{font-size:12px;white-space:normal}
body[data-xae-landing] .xp-footer-choices .xp-summary-text small{display:none}
body[data-xae-landing] .xp-footer-choices .xp-summary-icon{flex:none;width:31px;height:31px}
body[data-xae-landing] .xp-footer-choices .xp-chevron{display:none}
body[data-xae-landing] .xp-back{width:40px;height:40px;padding:9px;justify-content:center}
body[data-xae-landing] #xp-back-label{display:none!important}
body[data-xae-landing] .xp-modal{align-items:center!important;justify-content:center!important;padding:max(12px,env(safe-area-inset-top)) 14px max(12px,env(safe-area-inset-bottom))!important;overflow:hidden;overscroll-behavior:contain}
body[data-xae-landing] .xp-modal-card{width:min(480px,100%)!important;max-height:min(87dvh,860px);overflow-y:auto;border-radius:20px!important;margin:auto}
body[data-xae-landing] .xp-contact-dialog .xp-modal-card{max-height:min(88dvh,880px);scrollbar-gutter:stable}
[data-theme="light"] .xae-sticky{background:#e6f0ffeb;border-color:#7299c545}
[data-theme="light"] .xae-sticky a{color:#41618c}
[data-theme="light"] .xae-sticky a[aria-current="location"]{color:#144077;background:#c2d9ff}
[data-theme="light"] body[data-xae-landing] .layer.xae-layer{color:#143a68}
[data-theme="light"] body[data-xae-landing] .layer.xae-layer .xae-layer-extra{color:#235180}
@media(max-width:690px){
 .xae-sticky{top:65px}
 .xae-sticky-track{justify-content:flex-start;padding:5px 10px;gap:1px}
 .xae-sticky a{font-size:11px;padding:10px 13px}
 body[data-xae-landing] section[id]{scroll-margin-top:115px}
 body[data-xae-landing] .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 body[data-xae-landing] .card.xae-capability{min-height:140px;padding:16px 7px;gap:10px}
 body[data-xae-landing] .card.xae-capability .ico{width:55px;height:55px}
 body[data-xae-landing] .card.xae-capability h3{font-size:12px}
 body[data-xae-landing] .steps.xae-workflow{height:475px}
 .xae-node{width:40%;min-height:79px;padding:8px 5px}
 .xae-node strong{font-size:11px}.xae-node small{font-size:9px}
 .xae-graph.xae-complete .xae-node{width:41%}
 .xae-graph.xae-complete .xae-node[data-center="true"]{width:44%}
 body[data-xae-landing] .layer.xae-layer{min-height:138px;padding:13px 10px}
 body[data-xae-landing] .layers{gap:12px}
 body[data-xae-landing] .arch-mark{width:56px;height:56px}
 body[data-xae-landing] .xp-footer-choices .xp-foot-person{font-size:11px}
 body[data-xae-landing] .xp-modal-card{max-height:calc(100dvh - 64px)}
}
@media(max-width:360px){
 body[data-xae-landing] .xp-footer-choices .xp-summary-text strong{font-size:10px}
 body[data-xae-landing] .xp-footer-choices .xp-foot-person{font-size:10px;padding:8px}
}
@media(prefers-reduced-motion:reduce){
 .xae-sticky a,.xae-sticky a::after,.xae-node{transition:none!important}
 .xae-depth-grid,.xae-depth-halo,.xae-depth-lines{transform:none!important}
 body[data-xae-landing] .orbits{transform:none!important}
 body[data-xae-landing] .card.xae-capability,body[data-xae-landing] .card.xae-capability::after,.xae-graph path{animation:none!important}
 .xae-node{opacity:1!important;transform:translate(-50%,-50%) scale(1)!important}
}
