:root{
  --black:#05080b;
  --black2:#0b1117;
  --panel:#111820;
  --blue:#4cb3ff;
  --blue2:#0a7dd4;
  --ice:#dff3ff;
  --white:#f3f7fa;
  --muted:#80909c;
  --line:rgba(223,243,255,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--white);font-family:"Manrope",sans-serif;overflow-x:hidden}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img,video{display:block;width:100%;height:100%;object-fit:cover}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
::selection{background:var(--blue);color:var(--black)}
.loader{position:fixed;inset:0;z-index:300;background:var(--black);display:grid;place-items:center;overflow:hidden}
.loader-logo{font:700 clamp(8rem,25vw,24rem)/1 "Rajdhani",sans-serif;letter-spacing:-.08em}
.loader-scan{position:absolute;left:0;right:0;height:2px;background:var(--blue);box-shadow:0 0 22px var(--blue);animation:scan 1.2s ease-in-out infinite}
@keyframes scan{0%{top:10%}50%{top:90%}100%{top:10%}}
.loader-meta{position:absolute;left:28px;right:28px;bottom:24px;display:flex;justify-content:space-between;font:400 .62rem "DM Mono",monospace;color:var(--blue)}
.header{position:fixed;top:0;left:0;right:0;height:74px;z-index:90;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 28px;background:rgba(5,8,11,.35);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.12)}
.brand{font:700 1.25rem "Rajdhani",sans-serif;letter-spacing:.06em}
.brand span{font:400 .55rem "DM Mono",monospace;color:var(--blue);margin-left:9px}
.desktop-nav{display:flex;gap:28px;font:400 .61rem "DM Mono",monospace;text-transform:uppercase}
.desktop-nav a:hover{color:var(--blue)}
.quote-link{justify-self:end;border:1px solid var(--blue);padding:11px 16px;font:500 .6rem "DM Mono",monospace;text-transform:uppercase}
.menu-toggle{display:none;background:none;border:0}
.menu-toggle span{display:block;width:24px;height:1px;background:white;margin:7px}
.mobile-menu{position:fixed;inset:0;z-index:80;background:var(--blue);color:var(--black);transform:translateY(-101%);visibility:hidden;padding:110px 24px}
.mobile-menu nav{display:flex;flex-direction:column}
.mobile-menu a{display:grid;grid-template-columns:42px 1fr;align-items:baseline;padding:10px 0;border-bottom:1px solid rgba(5,8,11,.25);font:700 clamp(3rem,14vw,6rem)/.9 "Rajdhani",sans-serif;text-transform:uppercase}
.mobile-menu span{font:500 .6rem "DM Mono",monospace}
.hero{height:100svh;min-height:720px;position:relative;overflow:hidden}
.hero-video,.hero-shade,.hero-grid{position:absolute;inset:0}
.hero-shade{background:linear-gradient(90deg,rgba(5,8,11,.92),rgba(5,8,11,.25) 70%),linear-gradient(0deg,rgba(5,8,11,.65),transparent 60%)}
.hero-grid{background-image:linear-gradient(rgba(76,179,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(76,179,255,.08) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(to right,black,transparent 75%)}
.hero-content{position:absolute;left:7vw;right:7vw;bottom:95px;z-index:3}
.hero-kicker{display:flex;justify-content:space-between;font:400 .61rem "DM Mono",monospace;color:var(--blue)}
.hero h1,.services h2,.compare h2,.process h2,.packages h2,.quote-visual h2{font:700 clamp(6rem,14vw,15rem)/.72 "Rajdhani",sans-serif;letter-spacing:-.06em;margin:30px 0 0;text-transform:uppercase}
.hero h1 span,.hero h1 em{display:block}
.hero h1 em{font-style:normal;color:var(--blue);margin-left:11vw}
.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:48px}
.hero-bottom>p{max-width:610px;color:#b5c0c8;line-height:1.7}
.hero-cta{width:270px;height:62px;background:var(--blue);color:var(--black);display:flex;align-items:center;justify-content:space-between;padding:0 20px;font:500 .62rem "DM Mono",monospace}
.hero-tech{position:absolute;right:25px;top:120px;z-index:3;width:170px;display:grid;grid-template-columns:1fr auto;gap:8px 12px;font:400 .54rem "DM Mono",monospace;color:#a7bac8}
.hero-tech strong{color:var(--blue)}
.index{font:400 .61rem "DM Mono",monospace;color:var(--blue)}
.services{padding:130px 6vw;background:var(--black)}
.services-head{display:grid;grid-template-columns:.3fr 1fr .6fr;gap:45px;align-items:end}
.services-head p,.compare-copy p{color:var(--muted);line-height:1.7}
.services h2,.compare h2,.process h2,.packages h2{font-size:clamp(5rem,9vw,10rem)}
.services h2 em,.compare h2 em,.process h2 em,.packages h2 em{font-style:normal;color:var(--blue)}
.service-panels{display:grid;grid-template-columns:repeat(4,1fr);margin-top:85px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.service-panel{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px;min-height:630px;display:flex;flex-direction:column;transition:.3s}
.service-panel:hover{background:var(--panel);transform:translateY(-8px)}
.panel-number{font:400 .58rem "DM Mono",monospace;color:var(--blue)}
.panel-image{height:290px;margin:45px 0 28px;overflow:hidden}
.panel-image img{filter:saturate(.6);transition:.6s}
.service-panel:hover img{transform:scale(1.04);filter:saturate(1)}
.panel-copy h3{font:600 2.3rem/.9 "Rajdhani",sans-serif;margin:0 0 15px}
.panel-copy p{color:var(--muted);line-height:1.6}
.panel-copy span{display:block;margin-top:28px;font:400 .55rem "DM Mono",monospace;color:#9bccec}
.compare{padding:130px 6vw;background:var(--black2)}
.compare-copy{display:grid;grid-template-columns:.3fr 1fr .6fr;gap:45px;align-items:end;margin-bottom:70px}
.compare-box{height:760px;position:relative;overflow:hidden;cursor:ew-resize;user-select:none}
.compare-after,.compare-before,.compare-before img{position:absolute;inset:0}
.compare-before{width:50%;overflow:hidden}
.compare-before img{width:100vw;max-width:none;filter:grayscale(.55) brightness(.7)}
.compare-line{position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--blue);transform:translateX(-1px)}
.compare-line span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:62px;height:62px;border-radius:50%;background:var(--blue);color:var(--black);display:grid;place-items:center;font-size:1.2rem}
.compare-label{position:absolute;top:18px;font:500 .58rem "DM Mono",monospace;background:rgba(5,8,11,.72);padding:8px 10px}
.compare-label.left{left:18px}.compare-label.right{right:18px}
.process{display:grid;grid-template-columns:.75fr 1.25fr;background:var(--ice);color:var(--black);padding:120px 6vw;gap:70px}
.process-title{position:sticky;top:110px;align-self:start}
.process h2 em{color:var(--blue2)}
.process-list{border-top:1px solid rgba(5,8,11,.18)}
.process-list article{display:grid;grid-template-columns:55px .8fr 1.2fr;gap:20px;padding:26px 0;border-bottom:1px solid rgba(5,8,11,.18)}
.process-list article>span{font:500 .58rem "DM Mono",monospace;color:var(--blue2)}
.process-list h3{font:600 2.2rem "Rajdhani",sans-serif;margin:0}
.process-list p{margin:0;color:#4f5e67;line-height:1.6}
.packages{padding:130px 6vw;background:var(--black)}
.packages-head{display:grid;grid-template-columns:.3fr 1.7fr;gap:45px}
.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:80px}
.package-grid article{border:1px solid var(--line);padding:28px;min-height:610px;display:flex;flex-direction:column}
.package-grid article.featured{background:var(--blue);color:var(--black);border-color:var(--blue)}
.package-top{display:flex;justify-content:space-between;font:400 .57rem "DM Mono",monospace}
.package-grid h3{font:700 5rem/.8 "Rajdhani",sans-serif;margin:55px 0 20px}
.package-grid p{color:var(--muted);line-height:1.65}
.package-grid .featured p{color:#14344a}
.package-grid ul{list-style:none;padding:0;margin:30px 0;border-top:1px solid var(--line)}
.package-grid li{padding:12px 0;border-bottom:1px solid var(--line);font-size:.85rem}
.package-grid strong{font:600 2rem "Rajdhani",sans-serif;margin-top:auto}
.package-grid a{margin-top:25px;font:500 .58rem "DM Mono",monospace;color:var(--blue)}
.package-grid .featured a{color:var(--black)}
.work{padding:130px 6vw;background:var(--black2)}
.work-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:60px}
.work-filter{display:flex;gap:8px}
.work-filter button{background:none;border:1px solid var(--line);padding:9px 13px;font:400 .56rem "DM Mono",monospace}
.work-filter button.active{background:var(--blue);color:var(--black);border-color:var(--blue)}
.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.work-grid figure{margin:0;height:560px;position:relative;overflow:hidden}
.work-grid img{filter:saturate(.65);transition:.6s}
.work-grid figure:hover img{transform:scale(1.03);filter:saturate(1)}
.work-grid figcaption{position:absolute;left:16px;right:16px;bottom:14px;display:flex;justify-content:space-between;font:400 .57rem "DM Mono",monospace}
.quote-section{display:grid;grid-template-columns:1fr 1fr;min-height:850px}
.quote-visual{position:relative;overflow:hidden}
.quote-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,8,11,.7),transparent 60%)}
.quote-visual>div{position:absolute;left:45px;bottom:55px;z-index:2}
.quote-visual h2{font-size:clamp(5rem,9vw,9rem);margin-top:18px}
.quote-visual span{font:400 .6rem "DM Mono",monospace;color:var(--blue)}
.quote-section form{background:var(--ice);color:var(--black);padding:80px 65px;display:flex;flex-direction:column;justify-content:center}
.quote-section label{display:grid;gap:8px;margin-bottom:24px}
.quote-section label span{font:500 .58rem "DM Mono",monospace}
.quote-section input,.quote-section select,.quote-section textarea{border:0;border-bottom:1px solid rgba(5,8,11,.24);background:transparent;padding:14px 0;outline:none;border-radius:0}
.quote-section textarea{min-height:110px}
.quote-section form button{height:68px;background:var(--black);color:white;border:0;display:flex;justify-content:space-between;align-items:center;padding:0 20px;font:500 .61rem "DM Mono",monospace}
.quote-section form>p{font-size:.65rem;color:#52616a}
footer{padding:80px 6vw 28px;background:var(--black)}
.footer-logo{font:700 clamp(8rem,24vw,22rem)/.7 "Rajdhani",sans-serif;letter-spacing:-.07em}
.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:70px;padding-top:22px;border-top:1px solid var(--line)}
.footer-grid>div{display:flex;flex-direction:column;gap:10px}
.footer-grid span{font:400 .55rem "DM Mono",monospace;color:var(--blue)}
.footer-grid a,.footer-grid p{font-size:.85rem;margin:0}
@media(max-width:1050px){
  .desktop-nav{display:none}.menu-toggle{display:block}.quote-link{display:none}.header{grid-template-columns:1fr auto}
  .services-head,.compare-copy,.process,.quote-section{grid-template-columns:1fr}
  .service-panels{grid-template-columns:1fr 1fr}
  .process-title{position:static}
  .package-grid{grid-template-columns:1fr}
  .quote-visual{min-height:650px}
}
@media(max-width:720px){
  .header{padding:0 18px}
  .hero-content{left:20px;right:20px}
  .hero h1{font-size:5.3rem}
  .hero h1 em{margin-left:0}
  .hero-bottom{display:grid;gap:25px}
  .hero-cta{width:100%}
  .hero-tech{display:none}
  .services,.compare,.process,.packages,.work{padding:100px 20px}
  .services h2,.compare h2,.process h2,.packages h2{font-size:4.7rem}
  .service-panels,.work-grid,.footer-grid{grid-template-columns:1fr}
  .service-panel{min-height:auto}
  .compare-box{height:500px}
  .compare-before img{width:100vw}
  .process-list article{grid-template-columns:35px 1fr}
  .process-list p{grid-column:2}
  .packages-head{grid-template-columns:1fr}
  .work-head{display:grid;gap:20px}
  .work-filter{flex-wrap:wrap}
  .work-grid figure{height:440px}
  .quote-section form{padding:70px 22px}
  .quote-visual>div{left:22px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}