:root{color-scheme:dark;--bg:#061326;--bg2:#071b35;--text:#f3f8ff;--muted:#aec2df;--cyan:#24cef4;--blue:#1684ff;--line:#23608a6b;--shadow:0 20px 65px #00132f99}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--bg);color:var(--text);font:400 16px/1.65 Manrope,system-ui,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.13;letter-spacing:-.045em}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #63ddff;outline-offset:4px}.container{width:min(1240px,calc(100% - 48px));margin-inline:auto}.text-gradient{background:linear-gradient(115deg,#50e8ff 3%,#1cc8f5 40%,#1280f9);-webkit-background-clip:text;background-clip:text;color:transparent}.reading-progress{position:fixed;top:0;left:0;width:0;height:3px;background:linear-gradient(90deg,#1389fa,#2ce7ed);z-index:1000}.skip-link{position:absolute;left:12px;top:-90px;background:#fff;color:#001a30;padding:12px;z-index:300}.skip-link:focus{top:12px}.site-header{position:fixed;inset:0 0 auto;z-index:100;background:#041327c9;border-bottom:1px solid #6cc4ff23;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:background .3s,box-shadow .3s}.site-header.scrolled{background:#03101ff0;box-shadow:0 10px 35px #00132955}.nav{height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:11px;font-size:25px;letter-spacing:.02em;font-weight:800;white-space:nowrap}.brand-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;color:#fff;font-weight:800;font-size:27px;background:linear-gradient(140deg,#1c83ff,#11d6eb);box-shadow:0 4px 22px #089eff60}.nav-items{display:flex;align-items:center;gap:31px}.nav-link{font-size:14px;font-weight:700;color:#d5e2f6;transition:color .2s;position:relative}.nav-link:after{content:"";position:absolute;height:2px;bottom:-11px;left:0;width:0;background:var(--cyan);transition:width .25s}.nav-link:hover,.nav-link.active{color:#fff}.nav-link:hover:after,.nav-link.active:after{width:100%}.button{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 22px;min-height:48px;border-radius:11px;font-weight:800;font-size:13px;line-height:1.25;transition:transform .25s,box-shadow .25s,background .25s;white-space:nowrap}.button:hover{transform:translateY(-3px)}.button-primary{background:linear-gradient(100deg,#1387ff,#0ec8f0);color:#fff;box-shadow:0 10px 28px #0788fb40}.button-primary:hover{box-shadow:0 15px 32px #06baf960}.button-ghost{border-color:#2a94d6;background:#031b32a8;color:#f2f7ff}.button-ghost:hover{background:#083456}.menu-toggle{display:none}.hero{min-height:790px;position:relative;padding:170px 0 104px;background:#04152b url('assets/fondo-inicio.webp') center/cover no-repeat;overflow:hidden}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#021025ef 0%,#03142dbb 42%,#041b3670 78%,#03132959 100%),linear-gradient(0deg,#021020ad,transparent 30%);pointer-events:none}.hero-layout{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;min-height:500px}.hero-copy{max-width:640px}.eyebrow{color:#40e0fd;font-size:12px;letter-spacing:.19em;font-weight:800;margin:0 0 24px}.pulsing-dot{width:9px;height:9px;margin-right:8px;display:inline-block;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 6px #17d6fd27;animation:pulse 2.5s ease-in-out infinite}@keyframes pulse{50%{box-shadow:0 0 0 12px #17d6fd08}}h1{font-size:clamp(46px,5.2vw,78px);font-weight:800;max-width:690px;margin-bottom:25px;line-height:1.13;letter-spacing:-.06em}.hero-description{max-width:610px;font-size:16px;color:#d7e8ff;line-height:1.9}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.highlights{display:flex;flex-wrap:wrap;gap:12px 18px;color:#bcdef7;font-size:11px;margin-top:34px}.highlights span::first-letter{color:#22d7f0}.hero-visual{height:500px;position:relative;display:grid;place-items:center;isolation:isolate}.hero-visual:before{content:"";position:absolute;inset:13% 8%;border-radius:50%;background:#008ffe70;filter:blur(82px);z-index:-1}.orbit{position:absolute;border:1px solid #1b9ff45c;border-radius:50%;width:80%;height:75%;animation:orbit 13s ease-in-out infinite alternate}.orbit-a{transform:rotate(24deg)}.orbit-b{transform:rotate(-24deg);width:97%;height:67%;animation-delay:-4s}@keyframes orbit{to{transform:rotate(7deg) scale(1.05)}}.laptop{position:relative;width:min(97%,560px);margin-top:12px;transform:perspective(1100px) rotateY(-8deg) rotateX(3deg);animation:float 6s ease-in-out infinite;filter:drop-shadow(0 20px 30px #00132be0)}@keyframes float{50%{translate:0 -13px}}.laptop-screen{border:12px solid #0c1d34;border-bottom-width:16px;border-radius:21px 21px 8px 8px;background:white;padding:2px;aspect-ratio:1.55;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #4da8da}.laptop-screen img{width:100%;height:100%;object-fit:contain;background:white}.laptop-hinge{height:5px;background:#385771;width:92%;margin:auto}.laptop-bottom{height:20px;background:linear-gradient(#a1c4d9,#3a729c 65%,#0c2a4f);border-radius:2px 2px 42% 42%;width:110%;margin-left:-5%}.float-card{position:absolute;right:0;bottom:12%;padding:14px 21px;border:1px solid #338acc;border-radius:14px;background:#06203ce8;backdrop-filter:blur(10px);font-size:12px;font-weight:800;box-shadow:var(--shadow);animation:float 5s ease-in-out infinite reverse}.float-card i{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--cyan);vertical-align:middle;margin:0 6px}.mini-orb{color:var(--cyan);font-size:17px}.hero-spark{position:absolute;color:#39e7ff;text-shadow:0 0 20px #14c3fe;font-size:27px;animation:twinkle 3s infinite alternate}.spark-one{top:15%;right:1%}.spark-two{bottom:20%;left:2%}@keyframes twinkle{to{opacity:.2;transform:scale(.7)}}.scroll-hint{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);z-index:2;display:flex;align-items:center;gap:10px;font-size:11px;color:#d0e2f8;letter-spacing:.07em}.scroll-hint span{height:24px;width:15px;border:1px solid #92cced;border-radius:12px;position:relative}.scroll-hint span:after{content:"";width:3px;height:6px;background:#43e9ff;position:absolute;top:4px;left:5px;border-radius:5px;animation:scroll 1.5s infinite}@keyframes scroll{to{transform:translateY(8px);opacity:0}}.section{padding:110px 0;position:relative}.services-section{background:#06142b url('assets/fondo-servicios.webp') center/cover no-repeat}.services-section:before,.projects-section:before,.team-section:before{content:"";position:absolute;inset:0;background:#031124b8;pointer-events:none}.section .container{position:relative;z-index:1}.section-heading{text-align:center;max-width:710px;margin:0 auto 46px}.section h2{font-size:clamp(34px,4vw,52px);margin-bottom:17px}.section-heading .eyebrow{margin-bottom:14px}.section-heading>p:last-child,.project-intro>p:not(.eyebrow){color:var(--muted);max-width:600px}.section-heading>p:last-child{margin:auto}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.glass-card{background:linear-gradient(145deg,#0d2b4bdc,#061b36e6);border:1px solid #348acc57;box-shadow:inset 0 1px #98e6ff12,0 15px 40px #000e2b35;border-radius:22px}.service-card{padding:30px;min-height:255px;position:relative;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s}.service-card:after{content:"";position:absolute;width:120px;height:120px;right:-65px;top:-65px;background:#07bff633;filter:blur(36px);border-radius:50%;transition:transform .5s}.service-card:hover{transform:translateY(-8px);border-color:#2bdafb;box-shadow:0 25px 55px #009cf522}.service-card:hover:after{transform:translate(-38px,38px)}.service-icon{display:grid;place-items:center;width:55px;height:55px;background:#0c50845e;color:#43e3ff;border:1px solid #338fc36e;border-radius:14px;font-size:32px;line-height:1}.service-card h3{font-size:19px;letter-spacing:-.03em;margin:20px 0 10px}.service-card p{color:#b8cde6;font-size:13px;line-height:1.8;margin-bottom:20px}.service-card a{font-weight:800;font-size:12px;color:#4fe4ff}.service-card a span{margin-left:6px}.projects-section{background:#06162e url('assets/fondo-proyectos.webp') center/cover no-repeat}.project-layout{display:grid;grid-template-columns:.82fr 1.65fr;gap:30px;align-items:center}.project-intro .eyebrow{margin-bottom:17px}.project-intro p:not(.eyebrow){line-height:1.85}.project-intro .button{margin-top:16px}.project-feature{padding:22px;display:grid;grid-template-columns:1.04fr .95fr;align-items:center;gap:25px}.project-image-link{transition:transform .35s;display:block}.project-image-link:hover{transform:scale(1.03) rotate(-1deg)}.project-browser{border:7px solid #122c49;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 20px 30px #000b269c}.browser-top{height:30px;display:flex;align-items:center;gap:5px;padding:0 12px;background:#e8edf3}.browser-top span{width:7px;height:7px;background:#ff8b76;border-radius:50%}.browser-top span:nth-child(2){background:#ffd070}.browser-top span:nth-child(3){background:#65c996}.browser-top small{margin-left:auto;color:#55718f;font:600 10px Manrope}.browser-content img{width:100%;aspect-ratio:1.7;object-fit:cover}.project-info h3{font-size:32px;margin:14px 0}.project-info p,.project-info li{color:var(--muted);font-size:13px;line-height:1.8}.project-info ul{list-style:none;padding:0;margin:17px 0 22px}.project-info li:before{content:"✓";display:inline-grid;place-items:center;background:#0cb1e549;color:white;width:18px;height:18px;border-radius:50%;margin-right:9px;font-size:11px}.pill{color:#58eaff;background:#0faad52a;border:1px solid #12c9e760;border-radius:999px;display:inline-block;font-size:10px;font-weight:800;letter-spacing:.13em;padding:6px 12px}.team-section{background:linear-gradient(180deg,#071a34,#061326)}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.team-card{text-align:center;padding:33px 25px;transition:transform .3s,border-color .3s}.team-card:hover{transform:translateY(-7px);border-color:#3fe4ff}.team-avatar{height:94px;width:94px;border-radius:22px;margin:auto auto 23px;display:grid;place-items:center;font-size:28px;font-weight:800;color:#eafbff;background:linear-gradient(140deg,#147de2,#18c6e6);box-shadow:0 12px 30px #00b4ff26}.team-card:nth-child(2) .team-avatar{background:linear-gradient(140deg,#1169bb,#555acb)}.team-card:nth-child(3) .team-avatar{background:linear-gradient(140deg,#04a9bb,#0a74c9)}.team-card h3{font-size:20px;margin-bottom:8px}.team-card p{font-size:13px;color:#3de5ff;margin-bottom:12px}.team-card>span{font-size:12px;color:var(--muted)}.member-line{height:1px;background:#53c9fc36;margin:16px auto;width:70%}.contact-section{background:linear-gradient(#061326ee,#061326e8),url('assets/fondo-inicio.webp') center/cover}.contact-panel{background:linear-gradient(115deg,#092f56de,#031b35e8);border:1px solid #219fda7a;box-shadow:var(--shadow);border-radius:25px;display:grid;grid-template-columns:1fr .88fr;align-items:start;gap:45px;padding:48px}.contact-panel>div>p:not(.eyebrow){color:var(--muted);max-width:480px}.contact-form-area form{display:grid;gap:8px}.contact-form-area label{font-size:12px;font-weight:700;color:#cce7f7;margin-top:4px}.contact-form-area input,.contact-form-area textarea,.contact-form-area select{width:100%;border:1px solid #477b9c;background:#05172c;color:#f0f8ff;border-radius:10px;padding:12px 14px;resize:vertical}.contact-form-area .button{margin-top:10px}.form-status{color:#9ebcd4;font-size:11px;line-height:1.5;margin:8px 0 0}.footer{background:#020c1d;border-top:1px solid #2d699047;padding:33px 0}.footer-inner{display:flex;justify-content:space-between;gap:25px;align-items:center}.footer .brand{font-size:19px}.footer .brand-symbol{width:33px;height:33px;font-size:21px}.footer p,.footer-inner>span{font-size:11px;color:var(--muted);margin:8px 0 0}.footer nav{display:flex;gap:22px;flex-wrap:wrap}.footer nav a{font-size:12px;color:#bdd5ec}.footer nav a:hover{color:#47e6ff}.back-top{position:fixed;bottom:22px;right:20px;width:45px;height:45px;border-radius:12px;border:1px solid #47bde6;background:#106eb9;color:white;font-size:22px;z-index:90;opacity:0;pointer-events:none;transform:translateY(15px);transition:.3s;box-shadow:0 8px 25px #001c40bb}.back-top.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:translateY(0)}.service-card:nth-child(2),.team-card:nth-child(2){transition-delay:.09s}.service-card:nth-child(3),.team-card:nth-child(3){transition-delay:.18s}.service-card:nth-child(4){transition-delay:.05s}.service-card:nth-child(5){transition-delay:.13s}.service-card:nth-child(6){transition-delay:.21s}@media(max-width:1100px){.hero-layout{grid-template-columns:1.1fr 1fr}.hero{min-height:720px}.hero-visual{height:400px}.float-card{right:-4%}.project-layout{grid-template-columns:1fr}.project-intro{max-width:680px}}@media(max-width:800px){.nav{height:72px}.menu-toggle{display:flex;border:1px solid #397a9c;background:#0b2b48;border-radius:10px;width:45px;height:43px;align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-toggle span{height:2px;width:21px;background:#e4f7ff;transition:transform .2s,opacity .2s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-7px) rotate(-45deg)}.nav-items{position:absolute;top:72px;left:0;right:0;display:flex;align-items:stretch;flex-direction:column;gap:0;padding:10px 24px 20px;background:#051a30f9;border-bottom:1px solid #3488ac75;box-shadow:0 24px 40px #00132bcc;opacity:0;visibility:hidden;transform:translateY(-10px);transition:.2s}.nav-items.open{opacity:1;visibility:visible;transform:translateY(0)}.nav-link{padding:12px}.nav-link:after{display:none}.nav-cta{margin-top:12px}.hero{padding:125px 0 83px}.hero-layout{grid-template-columns:1fr;gap:16px}.hero-copy{max-width:680px}.hero-visual{height:385px;max-width:580px;width:100%;margin:auto}.hero h1{font-size:clamp(43px,8vw,68px)}.service-grid{grid-template-columns:repeat(2,1fr)}.project-feature{grid-template-columns:1fr 1fr}.contact-panel{grid-template-columns:1fr}.section{padding:78px 0}}@media(max-width:580px){.container{width:min(100% - 32px,1240px)}.brand{font-size:21px}.brand-symbol{height:36px;width:36px;font-size:22px}.hero{padding-top:122px}.hero h1{font-size:clamp(39px,11vw,58px)}.hero-description{font-size:14px;line-height:1.75}.eyebrow{font-size:10px;letter-spacing:.12em}.hero-actions .button{width:100%}.highlights{font-size:10px}.hero-visual{height:290px}.float-card{font-size:10px;padding:10px;right:0;bottom:10%}.service-grid,.team-grid,.project-feature{grid-template-columns:1fr}.service-card{min-height:auto}.project-feature{padding:18px}.section{padding:66px 0}.section h2{font-size:36px}.contact-panel{padding:25px 20px;gap:22px}.footer-inner{align-items:flex-start;flex-direction:column}.footer nav{gap:14px}.scroll-hint{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
