:root{
  --purple:#8c4df4;
  --purple-dark:#6d31d8;
  --orange:#ff9d19;
  --yellow:#ffc52f;
  --green:#9bd72e;
  --blue:#4c82ef;
  --ink:#111018;
  --muted:#767482;
  --line:#e9e7ef;
  --soft:#faf9fd;
  --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"DM Sans",sans-serif;
  color:var(--ink);
  background:#fff;
  overflow-x:hidden;
}
a{text-decoration:none;color:inherit}
img{max-width:100%}
h1,h2,h3,h4,h5,.brand{font-family:"Manrope",sans-serif}
h1,h2,h3,h4,p{margin-top:0}
h2{font-size:clamp(34px,4vw,54px);line-height:1.05;font-weight:800;letter-spacing:-1.8px}
.section-pad{padding:90px 0}
.eyebrow{
  color:var(--purple);
  font-size:12px;
  font-weight:700;
  margin-bottom:10px;
  letter-spacing:.2px;
}
.eyebrow:before{content:"";display:inline-block;width:20px;height:2px;background:var(--orange);vertical-align:middle;margin-right:6px;border-radius:10px}
.page-loader{
  position:fixed;inset:0;background:#fff;z-index:9999;display:grid;place-items:center;transition:opacity .5s,visibility .5s;
}
.page-loader.hide{opacity:0;visibility:hidden}
.loader-orbit{width:50px;height:50px;border:3px solid #eee;border-top-color:var(--purple);border-radius:50%;animation:spin 1s linear infinite;position:relative}
.loader-orbit span{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--orange)}
.loader-orbit span:nth-child(1){top:-5px;left:22px}.loader-orbit span:nth-child(2){right:-4px;top:25px}.loader-orbit span:nth-child(3){left:4px;bottom:1px}
@keyframes spin{to{transform:rotate(360deg)}}

/* Header */
.site-header{position:absolute;top:0;left:0;width:100%;z-index:100}
.navbar{padding:18px 0}
.brand{display:flex;align-items:center;gap:8px;font-size:12px;line-height:.9;font-weight:800}
.brand small{font-size:8px;font-weight:600}
.brand-mark{font-size:24px;transform:rotate(-12deg);display:inline-block}
.nav-link{font-size:11px;font-weight:600;color:#555;position:relative;padding:.55rem .8rem!important}
.nav-link:after{content:"";position:absolute;left:50%;bottom:2px;width:0;height:2px;background:var(--purple);transition:.3s;transform:translateX(-50%)}
.nav-link:hover,.nav-link.active{color:var(--ink)}
.nav-link:hover:after,.nav-link.active:after{width:18px}
.login-link{font-size:11px;font-weight:600}
.btn{border:0;border-radius:999px;font-size:11px;font-weight:700;padding:12px 22px;transition:.3s;box-shadow:none}
.btn-gradient{background:linear-gradient(100deg,#9a55fa,#8040ec);color:#fff;box-shadow:0 12px 28px rgba(140,77,244,.22)}
.btn-gradient:hover{color:#fff;transform:translateY(-3px);box-shadow:0 16px 30px rgba(140,77,244,.3)}
.btn-orange{background:linear-gradient(100deg,#ffb22b,#ff9510);color:#fff;box-shadow:0 10px 22px rgba(255,157,25,.2)}
.btn-orange:hover{color:#fff;transform:translateY(-3px)}

/* Hero */
.hero-section{min-height:730px;padding-top:145px;position:relative}
.hero-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 40%,#f8f7fc 0,rgba(255,255,255,0) 34%);pointer-events:none}
.hero-section h1{font-size:clamp(46px,5.2vw,76px);line-height:.92;letter-spacing:-4px;margin-bottom:25px}
.hero-section h1 strong{font-weight:800}
.scribble{position:relative;display:inline-block;color:#333}
.scribble:after{content:"";position:absolute;left:-4px;right:-4px;bottom:-2px;height:9px;border-bottom:3px solid #ff6c55;border-radius:50%}
.hero-text{max-width:470px;color:var(--muted);font-size:14px;line-height:1.8}
.hero-actions{display:flex;align-items:center;gap:20px;margin-top:27px}
.play-link{font-size:11px;font-weight:700;display:flex;align-items:center;gap:8px}
.play-circle{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#111;color:#fff}
.hero-art{height:480px;position:relative;animation:floatArt 5s ease-in-out infinite}
@keyframes floatArt{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
.paper{position:absolute;left:18%;top:20%;width:52%;height:54%;border-radius:24px;background:#f2f2f0;transform:rotate(-3deg)}
.paper-back{opacity:.55;left:24%;top:27%;transform:rotate(6deg)}
.paper-front{background:#fff;box-shadow:0 18px 45px rgba(27,22,49,.07);padding:28px}
.paper-head{display:flex;gap:6px}.paper-head span{width:7px;height:7px;border-radius:50%;background:#ddd}
.chart-line{height:115px;margin-top:22px;border-bottom:3px solid #eee;position:relative;overflow:hidden}
.chart-line:before{content:"";position:absolute;left:5%;right:5%;top:25px;height:70px;border-top:4px solid #ffb42b;border-radius:50%;transform:rotate(-5deg)}
.chart-line:after{content:"";position:absolute;left:8%;right:5%;top:45px;height:60px;border-top:4px solid #69c6ff;border-radius:50%;transform:rotate(7deg)}
.chart-bars{display:flex;gap:9px;align-items:end;height:50px;margin-top:10px}.chart-bars i{width:18px;background:#e7e7ed;border-radius:4px}.chart-bars i:nth-child(1){height:18px}.chart-bars i:nth-child(2){height:30px}.chart-bars i:nth-child(3){height:43px}.chart-bars i:nth-child(4){height:25px}
.check-card{position:absolute;right:-20px;bottom:20px;width:135px;height:52px;background:#fff;border-radius:12px;box-shadow:0 10px 30px rgba(30,20,60,.1);display:flex;align-items:center;gap:10px;padding:10px}.check-card i{width:25px;height:25px;display:grid;place-items:center;background:#b9efae;color:#319a39;border-radius:7px}.check-card span{width:65px;height:7px;background:#e9e8ee;border-radius:20px}
.hero-orb{position:absolute;border-radius:50%;animation:bob 3.5s ease-in-out infinite}
.orb-purple{width:60px;height:60px;right:8%;bottom:10%;background:linear-gradient(135deg,#ffcd00 0 45%,#18aaf0 45% 72%,#7e55f5 72%);transform:rotate(20deg)}
.orb-blue{display:none}
@keyframes bob{50%{transform:translateY(-12px) rotate(12deg)}}
.floating-dot{position:absolute;border-radius:50%;z-index:5}.dot-green{width:16px;height:16px;background:#9bd72e;right:17%;top:18%}.dot-purple{width:6px;height:6px;background:var(--purple);left:12%;bottom:18%}.dot-orange{width:4px;height:4px;background:var(--orange);right:5%;bottom:36%}
.floating-hourglass{position:absolute;right:36%;top:5%;font-size:38px;filter:drop-shadow(0 8px 12px rgba(0,0,0,.08));animation:spinSlow 7s linear infinite}
.hero-pencil{position:absolute;left:8%;top:16%;font-size:42px;color:#ffb529;transform:rotate(-28deg)}
@keyframes spinSlow{50%{transform:rotate(8deg)}100%{transform:rotate(-8deg)}}
.hero-swoosh{position:absolute;inset:5% 0 0 0;width:100%;height:100%}

/* Generic section */
.section-heading{margin-bottom:34px}
.section-heading h2{font-size:34px;letter-spacing:-1px}
.section-title-row{display:flex;align-items:end;justify-content:space-between;gap:20px}
.section-title-row h2{font-size:36px;margin:0}

/* Features */
.features-section{padding-top:55px}
.feature-grid{border:1px solid var(--line);border-radius:14px;overflow:hidden}
.feature-card{height:100%;padding:32px 27px;min-height:235px;border-right:1px solid var(--line);background:#fff;transition:.35s}
.feature-grid>div:last-child .feature-card{border-right:0}
.feature-card:hover{background:#fff;box-shadow:0 18px 45px rgba(50,35,90,.08);transform:translateY(-4px)}
.feature-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:19px;margin-bottom:22px}
.icon-blue{background:#dcecff;color:#4d8df4}.icon-coral{background:#ffe4df;color:#ff8c75}.icon-green{background:#e2f9d9;color:#62b94d}.icon-purple{background:#eee3ff;color:#9b62ef}
.feature-card h3{font-size:13px;line-height:1.3;margin-bottom:12px}.feature-card p{font-size:10px;color:#8a8891;line-height:1.6;margin-bottom:16px}.feature-card a{font-size:9px;font-weight:700;color:var(--purple)}

/* Solution */
.solution-art{height:500px;position:relative}
.art-glow{position:absolute;width:75%;height:75%;left:8%;top:12%;background:#f4f4f1;border-radius:50px;transform:rotate(2deg)}
.mobile-device{position:absolute;left:20%;bottom:9%;width:190px;height:340px;border:7px solid #dedddc;border-radius:32px;background:#fff;box-shadow:0 22px 35px rgba(20,20,30,.09);transform:rotate(-3deg)}
.mobile-speaker{width:45px;height:7px;background:#ddd;border-radius:20px;margin:13px auto}
.mobile-screen{margin:12px;border-radius:20px;background:#fafafa;height:280px;padding:20px}
.mini-ui{height:10px;background:#e5e3e8;border-radius:20px;margin-bottom:12px}.mini-ui.top{width:55%}.mini-ui.large{height:75px;width:100%;background:linear-gradient(145deg,#eee,#fff)}.mini-pill{height:12px;width:40%;background:#ffb72b;border-radius:20px;margin:15px 0}.mini-ui.small{width:70%}.mini-button{height:25px;width:80%;background:#9b59f4;border-radius:20px;margin-top:28px}
.person{position:absolute;left:42%;bottom:2%;width:190px;height:390px;z-index:4;animation:personFloat 4s ease-in-out infinite}
@keyframes personFloat{50%{transform:translateY(-7px)}}
.person-head{position:absolute;top:25px;left:66px;width:58px;height:64px;background:#f2aa79;border-radius:46% 46% 42% 42%;z-index:3}
.person-hair{position:absolute;top:13px;left:62px;width:65px;height:45px;background:#a9481e;border-radius:55% 35% 45% 15%;z-index:4;transform:rotate(-8deg)}
.person-body{position:absolute;top:90px;left:45px;width:95px;height:130px;background:linear-gradient(160deg,#9954ed,#6e35d6);border-radius:28px 28px 38px 38px;transform:rotate(4deg)}
.person-arm{position:absolute;width:25px;height:135px;background:#9954ed;border-radius:30px;z-index:2}.arm-left{left:28px;top:105px;transform:rotate(24deg)}.arm-right{right:15px;top:113px;transform:rotate(-16deg)}
.person-leg{position:absolute;width:30px;height:160px;background:#e2a66f;border-radius:20px;top:202px;z-index:1}.leg-left{left:70px;transform:rotate(6deg)}.leg-right{left:113px;transform:rotate(-14deg)}
.person-shoe{position:absolute;width:54px;height:25px;background:#fff;border:2px solid #ddd;border-radius:30px 30px 12px 12px;bottom:2px;z-index:5}.shoe-left{left:51px;transform:rotate(4deg)}.shoe-right{left:103px;transform:rotate(-10deg)}
.bell{position:absolute;left:0;bottom:11%;width:80px;height:80px;border-radius:50%;background:#ffd01e;display:grid;place-items:center;color:#fff;font-size:38px;transform:rotate(-10deg);filter:drop-shadow(0 12px 14px rgba(255,184,0,.2))}
.small-float{position:absolute;font-size:24px}.float-one{right:5%;top:18%;color:var(--purple)}.float-two{left:5%;top:6%;color:#ffb526}
.solution-art .person-head,.process-art .person-head,.cta-art .person-head{background:#f2aa79}
.solution-art .person-hair,.process-art .person-hair,.cta-art .person-hair{background:#a9481e}

/* Projects */
.project-card{cursor:pointer}.project-image{height:300px;border-radius:12px;position:relative;overflow:hidden;transition:.45s}.project-card:hover .project-image{transform:translateY(-8px);box-shadow:0 20px 45px rgba(25,20,40,.12)}
.project-pink{background:#f4c8cf;display:grid;place-items:center}.project-paper{background:#f6ebe2;padding:30px 22px;box-shadow:0 15px 30px rgba(70,30,40,.1);font-size:20px;line-height:1.15;transform:rotate(-8deg);color:#222}.project-pin{position:absolute;right:15%;top:13%;color:#ff5d5d}
.project-white{background:#f4f3ef}.package{position:absolute;left:20%;top:24%;width:45%;height:52%;background:#fff;box-shadow:0 18px 30px rgba(0,0,0,.06);padding:25px;color:#b83842;font-size:28px}.package small{display:block;color:#777;font-size:11px}.leaf{position:absolute;width:75px;height:130px;background:#87bd63;border-radius:100% 0 100% 0;transform:rotate(30deg);right:10%;bottom:5%}.leaf-a{right:17%;bottom:4%}.leaf-b{right:2%;bottom:9%;transform:rotate(58deg) scale(.8)}.leaf-c{right:24%;bottom:0;transform:rotate(15deg) scale(.75)}
.project-purple{background:#bba4ff}.phone-stack{position:absolute;left:35%;top:18%;width:100px;height:210px;background:#fff;border-radius:18px;transform:rotate(8deg);box-shadow:0 18px 30px rgba(50,20,100,.15)}.phone-screen{position:absolute;inset:12px;background:linear-gradient(#fff,#eee)}.receipt{position:absolute;right:-55px;bottom:5px;width:95px;height:125px;background:#fff;border-radius:10px;transform:rotate(-11deg);box-shadow:0 15px 30px rgba(50,20,100,.12)}.tiny-star{position:absolute;right:14%;top:18%;color:#fff;font-size:35px}
.project-meta{padding:12px 3px}.project-meta span{font-size:9px;color:#999}.project-meta h3{font-size:13px;margin:2px 0}

/* Process */
.process-step{display:flex;gap:22px;padding:14px 0;transition:.3s}.process-step>span{font-size:13px;color:#b5b2bb}.process-step h4{font-size:13px;margin:0 0 4px}.process-step p{font-size:10px;color:#898791;margin:0;line-height:1.5}.active-step{border-left:3px solid var(--purple);padding-left:15px}
.process-art{height:520px;position:relative}.process-circle{position:absolute;width:72%;height:78%;left:13%;top:8%;border-radius:50%;background:#f6f5f2}.chart-board{position:absolute;right:9%;top:13%;width:180px;height:130px;background:#fff;border-radius:14px;box-shadow:0 15px 30px rgba(0,0,0,.08);padding:25px;display:flex;align-items:end;gap:8px}.bar{width:20px;background:#b9a0ff;border-radius:5px 5px 2px 2px}.b1{height:35px}.b2{height:55px}.b3{height:78px}.b4{height:45px}.chart-label{position:absolute;top:9px;left:20px;font-size:9px;color:#888}.check-board{position:absolute;left:7%;top:38%;background:#fff;border-radius:12px;padding:13px 18px;box-shadow:0 12px 25px rgba(0,0,0,.07);display:flex;gap:8px;align-items:center;font-size:9px}.check-board i{width:25px;height:25px;background:#dff5d8;color:#55b94b;border-radius:7px;display:grid;place-items:center}.process-person{position:absolute;left:38%;bottom:1%;width:180px;height:395px;transform:scale(1.05)}.process-bag{position:absolute;left:6%;bottom:5%;font-size:65px;color:#ff9f22;transform:rotate(-18deg)}

/* Testimonials */
.testimonials-section{padding-top:65px}.testimonial-card{border:1px solid var(--line);border-radius:14px;padding:27px;min-height:205px;transition:.35s}.testimonial-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(40,30,70,.08)}.quote{font-family:Georgia,serif;font-size:45px;color:#b9a0ff;line-height:.7}.testimonial-card p{font-size:11px;color:#777;line-height:1.7}.client{display:flex;align-items:center;gap:10px}.avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#eee}.client strong{display:block;font-size:10px}.client small{display:block;color:#999;font-size:8px}

/* News */
.news-card{display:flex;gap:18px;align-items:center}.news-image{width:43%;min-width:43%;height:155px;border-radius:10px;overflow:hidden;position:relative}.map-image{background:linear-gradient(135deg,#f5f5ef,#d8e0d0)}.map-image:before,.map-image:after{content:"";position:absolute;border:2px solid #b9c6d2;border-radius:50%;width:150px;height:50px;left:-10px;top:50px;transform:rotate(25deg)}.map-image:after{left:40px;top:75px;transform:rotate(-20deg)}.map-image i{position:absolute;left:50%;top:40%;color:#ff8b42;font-size:22px}.purple-news{background:linear-gradient(145deg,#b266ff,#7231e8)}.purple-news span{position:absolute;right:20px;top:12px;color:#fff;font-size:22px}.code-lines{position:absolute;inset:35px 20px;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.3) 0 4px,transparent 4px 15px);transform:skewY(-8deg)}.news-date{font-size:9px;color:#999;margin-bottom:7px}.news-content h3{font-size:16px;line-height:1.25;margin-bottom:12px}.news-content a{font-size:9px;color:var(--purple);font-weight:700}.partner-row{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-top:55px;color:#25252a;font-family:Georgia,serif;font-weight:800;font-size:13px;text-align:center;opacity:.8}.partner-row small{font-size:7px;letter-spacing:2px}

/* CTA */
.cta-section{padding-top:55px}.cta-box{min-height:310px;border-radius:18px;background:#f8f7f3;position:relative;overflow:hidden;padding:55px 45px;display:flex;align-items:center}.cta-content{width:43%;position:relative;z-index:5}.cta-content h2{font-size:44px;margin-bottom:15px}.cta-content p{font-size:11px;color:#777;line-height:1.7;max-width:370px}.cta-art{position:absolute;left:35%;bottom:-18px;width:290px;height:330px}.cta-circle{position:absolute;width:280px;height:280px;border-radius:50%;background:#efeee9;top:5px;left:5px}.cta-person{position:absolute;left:75px;bottom:0;width:170px;height:320px;transform:scale(.9)}.cta-phone{position:absolute;right:-30px;bottom:10px;width:75px;height:50px;background:#5b82ff;border-radius:8px;display:grid;place-items:center;color:#fff;transform:rotate(14deg)}.cta-details{margin-left:auto;width:24%;position:relative;z-index:5}.cta-details div{margin:13px 0}.cta-details small{display:block;color:#777;font-size:9px}.cta-details strong{display:block;font-size:13px}

/* Footer */
.site-footer{padding:70px 0 25px;background:#fff}.footer-about{color:#888;font-size:11px;line-height:1.8;max-width:360px;margin:20px 0}.socials{display:flex;gap:8px}.socials a{width:30px;height:30px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:12px;transition:.3s}.socials a:hover{background:var(--purple);color:#fff;border-color:var(--purple)}.site-footer h5{font-size:13px;margin-bottom:18px}.site-footer> .container a:not(.brand){display:block;font-size:10px;color:#777;margin:10px 0}.site-footer> .container a:not(.brand):hover{color:var(--purple)}.footer-address{display:block;color:#777;font-size:10px;line-height:1.8;margin-top:10px}.footer-bottom{border-top:1px solid var(--line);margin-top:45px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:#999;font-size:9px}.footer-bottom div{display:flex;gap:25px}.footer-bottom a{margin:0!important}

/* Reveal */
.reveal{opacity:0;transform:translateY(35px);transition:opacity .8s ease,transform .8s ease}.reveal-left{opacity:0;transform:translateX(-45px);transition:opacity .8s ease,transform .8s ease}.reveal-right{opacity:0;transform:translateX(45px);transition:opacity .8s ease,transform .8s ease}.is-visible{opacity:1!important;transform:none!important}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}
.back-top{position:fixed;right:22px;bottom:22px;width:42px;height:42px;border:0;border-radius:50%;background:var(--purple);color:#fff;display:grid;place-items:center;z-index:99;opacity:0;visibility:hidden;transition:.3s;box-shadow:0 10px 25px rgba(140,77,244,.25)}.back-top.show{opacity:1;visibility:visible}.back-top:hover{transform:translateY(-4px)}

/* Responsive */
@media(max-width:991.98px){
  .navbar{background:rgba(255,255,255,.95);backdrop-filter:blur(10px)}
  .navbar-collapse{padding:15px 0 5px}.nav-link{padding-left:0!important}.login-link{display:none}
  .hero-section{padding-top:125px;min-height:auto}.hero-art{height:430px}
  .feature-card{border-right:0;border-bottom:1px solid var(--line)}.feature-grid>div:nth-last-child(-n+2) .feature-card{border-bottom:0}
  .solution-art{max-width:560px;margin:auto}.process-art{max-width:600px;margin:auto}
  .cta-content{width:52%}.cta-art{left:38%}.cta-details{width:23%}
}
@media(max-width:767.98px){
  .section-pad{padding:65px 0}.hero-section h1{font-size:51px;letter-spacing:-2.8px}.hero-text{font-size:12px}.hero-art{height:340px;margin-top:-10px}.paper{left:12%;top:15%;width:67%;height:64%}.hero-pencil{font-size:30px}.floating-hourglass{font-size:28px}
  h2{font-size:36px}.section-title-row{align-items:start;flex-direction:column}.section-title-row .btn{align-self:flex-start}
  .solution-art{height:420px}.mobile-device{transform:scale(.8) rotate(-3deg);transform-origin:bottom left;left:7%}.person{transform:scale(.82);transform-origin:bottom center;left:38%}
  .project-image{height:250px}.process-art{height:400px}.process-person{transform:scale(.82);transform-origin:bottom center;left:34%}
  .news-card{align-items:flex-start}.news-image{height:135px}.news-content h3{font-size:14px}
  .partner-row{flex-wrap:wrap;justify-content:center;font-size:11px;margin-top:35px}
  .cta-box{padding:35px 25px;min-height:520px;display:block}.cta-content{width:100%}.cta-art{left:50%;transform:translateX(-50%);bottom:-12px}.cta-details{position:absolute;right:20px;top:35px;width:38%}.cta-content p{max-width:260px}
  .footer-bottom{flex-direction:column}.footer-bottom div{gap:15px}
}
@media(max-width:480px){
  .container{--bs-gutter-x:1.5rem}.hero-section h1{font-size:45px}.hero-actions{gap:12px}.hero-art{height:300px}.hero-swoosh{display:none}
  .feature-card{min-height:200px}.solution-art{height:360px}.mobile-device{left:4%;transform:scale(.68) rotate(-3deg)}.person{left:34%;transform:scale(.72)}
  .news-card{display:block}.news-image{width:100%;height:170px;margin-bottom:15px}.news-content h3{font-size:16px}
  .cta-art{left:48%;transform:translateX(-50%) scale(.85);transform-origin:bottom center}.cta-details{position:relative;right:auto;top:auto;width:100%;display:flex;gap:25px;margin-top:20px}.cta-content h2{font-size:37px}
  .footer-bottom div{flex-wrap:wrap}
}
