@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--bg:#101c22;--panel:#15232a;--mint:#80f4c0;--white:#f2f5f3;--muted:#a1afb4;--line:#2a373d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--white);font-family:'DM Sans',sans-serif;font-size:15px;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--mint);outline-offset:6px}.wrap{max-width:1280px;margin:auto;padding-left:52px;padding-right:52px}.header{height:100px;display:flex;align-items:center;justify-content:space-between;max-width:1440px;padding:0 52px;margin:auto;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:12px}.brand>span{font-family:Manrope,sans-serif;font-size:29px;line-height:1;font-weight:800;letter-spacing:1px}.brand-sub{display:block;font-size:8px;letter-spacing:3px;margin-top:7px;font-weight:600}.header nav{display:flex;gap:34px;font-size:13px;color:#c6d0d3}.header nav a:hover,.text-link:hover,footer a:hover{color:var(--mint)}.header-cta{border:1px solid #4c5c60;padding:12px 18px;border-radius:4px;font-size:13px}.header-cta span{margin-left:25px;color:var(--mint)}.menu{display:none}.hero{display:grid;grid-template-columns:1.04fr 1fr;min-height:690px;padding-top:76px;padding-bottom:54px;gap:25px;align-items:center}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:650;display:flex;align-items:center;gap:9px;color:var(--mint)}.status-dot{height:6px;width:6px;flex:none;border-radius:50%;display:inline-block;background:var(--mint);box-shadow:0 0 10px #80f4c030}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:clamp(52px,5.4vw,76px);letter-spacing:-3.9px;font-weight:500;line-height:1.07;margin:27px 0 24px}h1>span{color:var(--mint)}.hero-copy>p{max-width:405px;color:var(--muted);font-size:16px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:33px}.button{border:0;border-radius:4px;display:inline-flex;gap:25px;align-items:center;justify-content:space-between;padding:17px 21px;font-size:12px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px);background:#a5ffda}.mint{background:var(--mint);color:#10251d}.button span{font-size:20px;font-weight:400;line-height:1}.text-link{background:none;border:0;padding:0;display:inline-flex;align-items:center;gap:20px;font-size:12px}.text-link span{font-size:19px}.hero-foot{margin-top:49px;color:#a1afb4;font-size:11px;display:flex;align-items:center;gap:10px}.location-icon{color:var(--mint);font-size:21px}.hero-art{height:510px;position:relative;isolation:isolate;background:radial-gradient(ellipse at 50% 55%,#2e776126,transparent 64%)}.art-grid{position:absolute;inset:65px -10px 30px;background-image:linear-gradient(#80f4c008 1px,transparent 1px),linear-gradient(90deg,#80f4c008 1px,transparent 1px);background-size:33px 33px;transform:perspective(500px) rotateX(55deg) rotateZ(-25deg);mask-image:radial-gradient(ellipse,#000,transparent 72%)}.orbit{position:absolute;left:50%;top:52%;width:435px;height:225px;border:1px solid #80f4c018;border-radius:50%;transform:translate(-50%,-50%) rotate(-28deg)}.orbit-two{width:490px;height:295px}.art-label{position:absolute;top:18px;left:35px;font-size:8px;letter-spacing:1.1px;color:#a3b4b6;display:flex;gap:8px;align-items:center}.float-label{position:absolute;border:1px solid #446257;background:#192e2bde;backdrop-filter:blur(6px);font-size:11px;padding:12px 15px;border-radius:5px;display:flex;align-items:center;gap:12px;box-shadow:0 10px 30px #0003;z-index:5;animation:float 6s ease-in-out infinite}.float-label>span{color:var(--mint);font-size:19px}.float-label i{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--mint);margin-left:6px}.float-cloud{right:5px;top:105px}.float-code{left:-8px;top:221px;animation-delay:-2s}.float-hardware{right:0;bottom:84px;animation-delay:-4s}.server-scene{position:absolute;left:50%;top:48%;width:250px;height:250px;transform:translate(-50%,-50%)}.platform{width:263px;height:194px;position:absolute;left:-7px;top:163px;transform:rotate(-30deg) skewX(30deg) scaleY(.65);background:#1c3732;border:1px solid #3b7862;box-shadow:-12px 18px 0 #142925,-13px 19px 0 #305345}.platform-top{top:151px;width:250px;height:180px;left:0;background:linear-gradient(140deg,#35694f,#182e2b);border-color:#5b9e7c;box-shadow:0 0 40px #80f4c019}.server{position:absolute;width:174px;height:110px;left:28px;filter:drop-shadow(0 16px 12px #0005)}.s3{top:139px}.s2{top:77px}.s1{top:15px}.server-front{position:absolute;left:0;top:33px;width:119px;height:67px;transform:skewY(30deg);background:linear-gradient(125deg,#263c3d,#172a2d);border:1px solid #4d6961;border-radius:2px;padding:19px 15px}.server-front b{display:block;width:53px;height:3px;background:#80f4c04d;margin:5px 0;box-shadow:0 1px #08181c}.server-front em{position:absolute;right:12px;bottom:14px;background:var(--mint);width:4px;height:4px;border-radius:50%;box-shadow:0 0 10px var(--mint)}.server-side{position:absolute;left:119px;top:33px;width:71px;height:67px;transform:skewY(-30deg);transform-origin:0 0;background:linear-gradient(90deg,#172d2f,#102126);border:1px solid #3c5c53;border-left:0}.server-top{position:absolute;left:35px;top:-26px;width:138px;height:83px;transform:rotate(30deg) skewX(-30deg) scaleY(.86);background:linear-gradient(125deg,#304e47,#597f61);border:1px solid #7da381;border-radius:2px;z-index:2}.s1 .server-top{background:linear-gradient(125deg,#3c6353,#a4c18a)}.server-top img{width:43px;height:43px;display:block;margin:20px auto;opacity:.85;transform:rotate(-5deg)}.core-glow{position:absolute;top:113px;left:27px;width:191px;height:3px;transform:rotate(9deg);background:var(--mint);box-shadow:0 0 24px #80f4c0;opacity:.45;z-index:-1}.art-caption{position:absolute;bottom:5px;left:35px;right:0;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.3px;color:#748b8b;border-top:1px solid #2b3f3e;padding-top:16px}.expertise-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#132128}.strip-inner{display:flex;justify-content:space-between;align-items:center;gap:25px;min-height:87px}.strip-inner>span:first-child{font-size:9px;letter-spacing:1.4px;color:#8d9ea4}.strip-inner>span:not(:first-child){font-family:Manrope;font-size:19px;font-weight:500;color:#dce5e1}.strip-inner b{font-weight:400;color:#58736b;margin-left:22px}.section{padding-top:108px;padding-bottom:108px}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:49px}h2{font-size:clamp(29px,3vw,41px);line-height:1.22;font-weight:500;letter-spacing:-1.6px;margin-top:19px}h2>span{color:var(--muted)}.section-top>p{max-width:335px;color:var(--muted);line-height:1.8;font-size:13px;padding-bottom:3px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:5px;overflow:hidden}.service{background:transparent;border:0;border-right:1px solid var(--line);text-align:left;padding:25px 23px 0;transition:background .2s;min-width:0}.service:last-child{border-right:0}.service:hover{background:#1c302f}.service-number{display:flex;justify-content:space-between;font-size:10px;color:#82969c}.service-number>span{font-size:22px;color:#b1c6bf;line-height:12px;transition:transform .2s}.service:hover .service-number>span{transform:translate(3px,-3px);color:var(--mint)}.service svg{width:44px;height:44px;fill:none;stroke:var(--mint);stroke-width:1.2;margin:37px 0 22px}h3{font-size:20px;font-weight:500;line-height:1.35;letter-spacing:-.5px}.service p{font-size:12px;line-height:1.8;color:var(--muted);margin-top:17px;min-height:64px}.service-tags{display:block;font-size:7px;letter-spacing:.5px;color:#8b9c9f;margin:22px 0 25px;min-height:18px}.service-more{border-top:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;font-size:10px}.service-more>span{color:var(--mint)}.solutions-note{text-align:center;font-size:11px;color:var(--muted);margin-top:27px}.solutions-note>span{color:var(--mint);margin-right:8px}.solutions-note a{color:var(--white);border-bottom:1px solid #537465;padding-bottom:2px}.approach{background:#15232a;border-block:1px solid var(--line)}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:36px;margin-top:65px}.step{font-size:11px;color:var(--mint);display:flex;align-items:center;gap:18px;margin-bottom:25px}.step:after{content:'';height:1px;background:#3c514f;flex:1}.process h3{font-size:22px}.process p{font-size:12px;line-height:1.9;color:var(--muted);margin-top:13px;max-width:230px}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-visual{position:relative;height:410px;background:radial-gradient(ellipse at 60% 50%,#28443e,#18292a 75%);overflow:hidden;border-radius:5px;border:1px solid #36504a}.coord{position:absolute;top:27px;left:28px;z-index:2;font-size:8px;line-height:1.8;letter-spacing:1.8px;color:#aec9bd}.map-lines{position:absolute;inset:-50%;background:repeating-radial-gradient(ellipse at 63% 46%,transparent 0 18px,#80f4c025 19px 20px,transparent 21px 35px);transform:rotate(-29deg) scaleY(.7);border-radius:40%;filter:drop-shadow(0 0 2px #80f4c020)}.map-point{position:absolute;top:42%;left:58%;width:76px;height:76px;border:1px solid #80f4c040;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 20px #80f4c007}.map-point span{width:12px;height:12px;border:3px solid var(--mint);border-radius:50%;box-shadow:0 0 20px #80f4c0}.malaga-word{position:absolute;bottom:35px;left:28px;font-family:Manrope;font-size:49px;letter-spacing:3px;font-weight:500}.malaga-word span{display:block;font-family:'DM Sans';font-size:8px;letter-spacing:2px;margin-top:7px;color:var(--mint)}.visual-cross{position:absolute;right:25px;bottom:30px;color:var(--mint);font-size:25px;font-weight:400}.about-copy>p{font-size:13px;line-height:1.9;color:var(--muted);margin-top:22px}.principles{display:flex;flex-wrap:wrap;gap:15px 22px;border-top:1px solid var(--line);margin-top:28px;padding-top:23px;font-size:10px}.principles b{color:var(--mint);font-weight:400;margin-right:6px}.faq{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.35fr;gap:80px;padding-top:75px;padding-bottom:90px}.faq>div>p{margin-top:17px;color:var(--muted);font-size:13px}.questions details{border-bottom:1px solid var(--line)}.questions summary{padding:23px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;font-size:13px;list-style:none}.questions summary::-webkit-details-marker{display:none}.questions summary span{font-size:20px;color:var(--mint)}.questions details[open] summary span{transform:rotate(45deg)}.questions details p{font-size:12px;line-height:1.9;color:var(--muted);padding:0 35px 24px 0}.contact{background:var(--mint);color:#113329;padding-top:35px;padding-bottom:35px;border-radius:6px;max-width:1176px}.contact .eyebrow{color:#204d3e}.contact .status-dot{background:#24503f;box-shadow:none}.contact-top{display:flex;justify-content:space-between;align-items:center}.contact-top>span{font-size:9px;letter-spacing:1px}.contact-main{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:29px 0}.contact h2{font-size:clamp(35px,4.1vw,55px);letter-spacing:-2px;margin:0;line-height:1.2}.contact h2 span{color:#3e7860}.round-cta{width:89px;height:89px;flex:none;border-radius:50%;border:1px solid #3b8e68;background:none;color:#143d2c;font-size:45px;transition:background .2s,transform .2s}.round-cta:hover{background:#143d2c;color:var(--mint);transform:rotate(6deg)}.contact-bottom{display:flex;align-items:end;justify-content:space-between;border-top:1px solid #3b8e6855;padding-top:24px}.contact-bottom p{font-size:12px;line-height:1.7}.contact-bottom .text-link{font-weight:700}.contact-bottom .text-link:hover{color:#113329;text-decoration:underline}footer{padding-top:60px!important;padding-bottom:24px!important}.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-top{padding-bottom:37px}.footer-top p{font-size:11px;color:var(--muted)}.footer-top>a:last-child{font-size:11px}.footer-bottom{border-top:1px solid var(--line);padding-top:23px;font-size:9px;color:#90a0a6}.footer-bottom button{border:0;background:none;color:inherit;font-size:9px;padding:0}.skip{position:fixed;top:-100px;left:10px;background:var(--mint);color:#111;padding:14px;z-index:100}.skip:focus{top:10px}dialog{background:#17272e;color:var(--white);border:1px solid #425b56;border-radius:9px;padding:45px;width:min(560px,calc(100% - 30px));max-height:90vh;box-shadow:0 35px 100px #0008}dialog::backdrop{background:#061115bc;backdrop-filter:blur(8px)}dialog h2{font-size:34px;margin-bottom:22px}dialog p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:20px}.close{position:absolute;top:14px;right:18px;background:none;border:0;font-size:26px;color:#c1d3cd}.close:hover{color:var(--mint)}dialog ul{padding-left:19px;line-height:2;font-size:13px;margin:25px 0}dialog li::marker{color:var(--mint)}dialog .detail-note{font-size:11px;border-top:1px solid var(--line);padding-top:16px}form{display:grid;gap:16px}label{display:grid;gap:8px;font-size:12px}label>span{color:var(--muted)}input,textarea,select{width:100%;border:1px solid #425550;background:#102127;color:var(--white);padding:12px;border-radius:4px;font-size:13px;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--mint)}textarea{resize:vertical}.form-note{font-size:10px;line-height:1.6;margin:0}#form-result{margin:0;color:var(--mint);font-size:12px}body:has(dialog[open]){overflow:hidden}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media(min-width:1450px){.hero{min-height:740px}.hero-art{transform:scale(1.06)}}
@media(max-width:1050px){.wrap{padding-left:32px;padding-right:32px}.header{padding:0 32px}.hero{gap:0;padding-top:60px;min-height:650px}.hero-art{transform:scale(.87);transform-origin:center right}.hero-actions{gap:18px;flex-wrap:wrap}h1{font-size:60px}.service{padding-left:18px;padding-right:18px}.service h3{font-size:18px}.service-tags{font-size:6px}.about{gap:40px}.contact{margin:0 32px}.section-top{gap:35px}.strip-inner b{margin-left:10px}.strip-inner>span:not(:first-child){font-size:16px}.process{gap:24px}.header nav{gap:24px}.float-code{left:-25px}}
@media(max-width:760px){.wrap{padding-left:24px;padding-right:24px}.header{height:80px;padding:0 24px}.brand>span{font-size:25px}.brand-sub{font-size:7px}.brand img{width:31px}.header nav{display:none;position:absolute;left:0;right:0;top:79px;background:#15252c;padding:25px;border-bottom:1px solid var(--line);z-index:20;flex-direction:column;gap:25px}.header nav.open{display:flex}.header-cta{margin-left:auto;margin-right:17px;padding:10px 12px;font-size:11px}.header-cta span{margin-left:12px}.menu{display:block;background:none;border:0;font-size:21px;padding:4px}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:48px;padding-bottom:29px;overflow:hidden}.hero h1{font-size:clamp(53px,10vw,72px);letter-spacing:-3px}.hero-copy>p{max-width:450px;font-size:14px}.hero-foot{margin-top:29px}.hero-art{width:min(100%,480px);height:450px;align-self:center;margin-top:20px;transform:scale(.94);transform-origin:center}.art-label{left:0;font-size:7px}.float-cloud{right:0}.float-code{left:0}.float-hardware{right:0;bottom:65px}.art-caption{left:0}.orbit{max-width:105%}.orbit-two{max-width:120%}.strip-inner{flex-wrap:wrap;justify-content:space-between;padding-top:24px;padding-bottom:24px;gap:20px}.strip-inner>span:first-child{width:100%}.strip-inner>span:not(:first-child){font-size:12px}.strip-inner b{margin-left:7px}.section{padding-top:70px;padding-bottom:70px}.section-top{display:block;margin-bottom:33px}.section-top>p{margin-top:23px;max-width:420px}.section h2{font-size:32px;letter-spacing:-1.3px}.service-grid{grid-template-columns:repeat(2,1fr)}.service:nth-child(2){border-right:0}.service:nth-child(-n+2){border-bottom:1px solid var(--line)}.service{padding:22px 19px 0}.service svg{margin-top:25px;margin-bottom:19px}.service-tags{font-size:7px;line-height:1.8;min-height:29px}.service p{min-height:66px}.process{grid-template-columns:1fr 1fr;gap:35px;margin-top:40px}.process h3{font-size:20px}.step{margin-bottom:18px}.about{grid-template-columns:1fr;gap:35px}.about-visual{height:340px;order:2}.about-copy h2{font-size:34px}.principles{gap:18px}.faq{grid-template-columns:1fr;gap:25px}.questions summary{font-size:12px}.contact{margin:0 20px;padding:26px 25px}.contact .eyebrow{font-size:8px;letter-spacing:1px}.contact-top>span{display:none}.contact h2{font-size:34px;letter-spacing:-1.5px}.contact-main{gap:12px}.round-cta{width:55px;height:55px;font-size:30px}.contact-bottom{align-items:start;gap:18px}.contact-bottom .text-link{font-size:10px;gap:7px;margin-top:3px}.contact-bottom p{font-size:10px}.footer-top{flex-wrap:wrap;gap:24px}.footer-top p{width:100%;order:3}.footer-top>a:last-child{margin-left:auto}.footer-bottom{flex-wrap:wrap;gap:15px}.footer-bottom>span:nth-child(2){display:none}dialog{padding:36px 26px}dialog h2{font-size:30px}.hero-actions .button{font-size:11px;padding:16px 18px}.hero-actions .text-link{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.footer-mail{font-size:11px;color:var(--mint)}
@media(max-width:760px){.footer-mail{order:4}}
