/*======================================
  GLOBAL RESET
=======================================*/

*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

html{
scroll-behavior:smooth;
}

body{

background:linear-gradient(135deg,#070b1a,#111827,#1e1b4b);

color:#fff;

overflow-x:hidden;

line-height:1.7;

}

/*======================================
SCROLLBAR
=======================================*/

::-webkit-scrollbar{
width:10px;
}

::-webkit-scrollbar-track{
background:#0f172a;
}

::-webkit-scrollbar-thumb{
background:#06b6d4;
border-radius:20px;
}

/*======================================
LINKS
=======================================*/

a{
text-decoration:none;
color:#fff;
}

img{
max-width:100%;
display:block;
}

/*======================================
NAVBAR
=======================================*/

nav{

position:fixed;

top:0;

left:0;

width:100%;

padding:18px 8%;

display:flex;

justify-content:space-between;

align-items:center;

background:rgba(8,15,35,.88);

backdrop-filter:blur(20px);

z-index:999;

border-bottom:1px solid rgba(255,255,255,.08);

transition:.4s;

}

.logo{

display:flex;

align-items:center;

gap:12px;

}

.logo img{

width:55px;

height:55px;

object-fit:contain;

}

.logo h2{

font-size:28px;

font-weight:700;

background:linear-gradient(90deg,#06b6d4,#3b82f6);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

nav ul{

display:flex;

list-style:none;

gap:35px;

}

nav ul li{

position:relative;

}

nav ul li a{

font-size:16px;

font-weight:500;

transition:.35s;

}

nav ul li a:hover{

color:#06b6d4;

}

nav ul li::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:2px;

background:#06b6d4;

transition:.3s;

}

nav ul li:hover::after{

width:100%;

}

/*======================================
HERO
=======================================*/

.hero{

width:90%;

margin:auto;

padding-top:150px;

padding-bottom:80px;

display:grid;

grid-template-columns:repeat(2,1fr);

align-items:center;

gap:60px;

}

.hero h1{

font-size:58px;

font-weight:700;

line-height:1.2;

margin-bottom:25px;

}

.hero h1 span{

color:#06b6d4;

}

.hero p{

font-size:18px;

color:#cbd5e1;

margin-bottom:35px;

}

/*======================================
BUTTONS
=======================================*/

.hero-btn{

display:flex;

gap:20px;

flex-wrap:wrap;

}

.btn{

padding:15px 35px;

border-radius:50px;

font-weight:600;

display:inline-block;

transition:.35s;

}

.btn-primary{

background:#06b6d4;

color:#fff;

}

.btn-primary:hover{

transform:translateY(-5px);

box-shadow:0 12px 30px rgba(6,182,212,.4);

}

.btn-outline{

border:2px solid #06b6d4;

color:#06b6d4;

}

.btn-outline:hover{

background:#06b6d4;

color:#fff;

}

/*======================================
HERO IMAGE
=======================================*/

.hero-image{

display:flex;

justify-content:center;

}

.hero-image img{

max-width:520px;

animation:floating 5s infinite ease-in-out;

filter:drop-shadow(0 20px 40px rgba(0,0,0,.4));

}

@keyframes floating{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-18px);

}

100%{

transform:translateY(0);

}

}

/*======================================
SECTION TITLE
=======================================*/

.section-title{

text-align:center;

margin:80px auto 50px;

}

.section-title h2{

font-size:42px;

margin-bottom:15px;

font-weight:700;

}

.section-title p{

color:#cbd5e1;

font-size:18px;

}

/*======================================
RESPONSIVE
=======================================*/

@media(max-width:991px){

.hero{

grid-template-columns:1fr;

text-align:center;

}

.hero h1{

font-size:42px;

}

.hero-btn{

justify-content:center;

}

nav{

padding:15px 5%;

}

nav ul{

display:none;

}

.logo h2{

font-size:24px;

}

}

@media(max-width:576px){

.hero{

padding-top:120px;

}

.hero h1{

font-size:34px;

}

.hero p{

font-size:16px;

}

.btn{

padding:12px 25px;

font-size:15px;

}

}
/*======================================
SERVICES SECTION
=======================================*/

.services{

padding:80px 8%;

}

.service-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:30px;

margin-top:50px;

}

.service-card{

background:rgba(255,255,255,.05);

backdrop-filter:blur(15px);

border:1px solid rgba(255,255,255,.08);

border-radius:20px;

padding:35px 25px;

text-align:center;

transition:.4s;

position:relative;

overflow:hidden;

}

.service-card::before{

content:"";

position:absolute;

top:0;

left:-100%;

width:100%;

height:100%;

background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);

transition:.7s;

}

.service-card:hover::before{

left:100%;

}

.service-card:hover{

transform:translateY(-12px);

box-shadow:0 20px 40px rgba(6,182,212,.25);

border-color:#06b6d4;

}

.service-card i{

font-size:55px;

color:#06b6d4;

margin-bottom:20px;

}

.service-card h3{

font-size:24px;

margin-bottom:15px;

}

.service-card p{

color:#cbd5e1;

font-size:15px;

line-height:1.8;

}

/*======================================
ABOUT SECTION
=======================================*/

.about{

padding:90px 8%;

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

align-items:center;

}

.about-left img{

border-radius:25px;

box-shadow:0 20px 50px rgba(0,0,0,.35);

}

.about-right h2{

font-size:42px;

margin-bottom:20px;

}

.about-right p{

color:#cbd5e1;

margin-bottom:20px;

font-size:17px;

line-height:1.9;

}

/*======================================
WHY CHOOSE US
=======================================*/

.why{

padding:80px 8%;

}

.why-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

gap:25px;

margin-top:45px;

}

.why-box{

background:#111827;

border-radius:20px;

padding:35px;

text-align:center;

transition:.35s;

border:1px solid rgba(255,255,255,.08);

}

.why-box:hover{

transform:translateY(-10px);

background:#0f172a;

}

.why-box i{

font-size:45px;

margin-bottom:18px;

color:#06b6d4;

}

.why-box h3{

margin-bottom:15px;

font-size:22px;

}

.why-box p{

color:#cbd5e1;

font-size:15px;

}

/*======================================
STATISTICS
=======================================*/

.stats{

padding:80px 8%;

display:grid;

grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

gap:25px;

}

.stat{

background:linear-gradient(135deg,#06b6d4,#2563eb);

padding:40px;

border-radius:20px;

text-align:center;

transition:.4s;

}

.stat:hover{

transform:scale(1.05);

}

.stat h2{

font-size:48px;

font-weight:700;

margin-bottom:10px;

}

.stat p{

font-size:18px;

}

/*======================================
TECHNOLOGY
=======================================*/

.technology{

padding:80px 8%;

}

.tech-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(150px,1fr));

gap:20px;

margin-top:45px;

}

.tech-grid span{

background:#111827;

padding:20px;

text-align:center;

border-radius:15px;

font-weight:600;

border:1px solid rgba(255,255,255,.08);

transition:.35s;

}

.tech-grid span:hover{

background:#06b6d4;

transform:translateY(-8px);

}

/*======================================
RESPONSIVE
=======================================*/

@media(max-width:991px){

.about{

grid-template-columns:1fr;

text-align:center;

}

.about-left{

order:1;

}

.about-right{

order:2;

}

.about-right h2{

font-size:34px;

}

.service-grid,

.why-grid,

.stats,

.tech-grid{

grid-template-columns:1fr;

}

}
/*======================================
PORTFOLIO
======================================*/

.portfolio{
padding:90px 8%;
}

.portfolio .service-card img{
width:100%;
height:220px;
object-fit:cover;
border-radius:15px;
margin-bottom:20px;
transition:.4s;
}

.portfolio .service-card:hover img{
transform:scale(1.05);
}

/*======================================
PRICING
======================================*/

.pricing{
padding:90px 8%;
}

.pricing .service-card{
padding:45px 30px;
}

.pricing h1{
font-size:45px;
color:#06b6d4;
margin:20px 0;
}

.pricing p{
margin:12px 0;
}

.pricing .service-card:hover{
background:linear-gradient(135deg,#06b6d4,#2563eb);
}

.pricing .service-card:hover h1,
.pricing .service-card:hover h3,
.pricing .service-card:hover p{
color:#fff;
}

/*======================================
TESTIMONIAL
======================================*/

.testimonial{
padding:90px 8%;
}

.testimonial .why-box{
position:relative;
}

.testimonial .why-box::before{

content:"★★★★★";

display:block;

font-size:20px;

color:#FFD700;

margin-bottom:20px;

}

/*======================================
FAQ
======================================*/

.faq{
padding:90px 8%;
}

.faq .service-card{

text-align:left;

}

.faq h3{

color:#06b6d4;

margin-bottom:15px;

font-size:22px;

}

.faq p{

line-height:1.8;

}

/*======================================
CONTACT
======================================*/

.contact{

padding:100px 8%;

text-align:center;

background:linear-gradient(135deg,#0f172a,#111827);

}

.contact h2{

font-size:45px;

margin-bottom:20px;

}

.contact p{

color:#cbd5e1;

margin-bottom:35px;

font-size:18px;

}

/*======================================
FOOTER
======================================*/

footer{

background:#050816;

padding:70px 8% 30px;

margin-top:80px;

text-align:center;

border-top:1px solid rgba(255,255,255,.08);

}

footer h2{

font-size:34px;

margin-bottom:15px;

color:#06b6d4;

}

footer p{

color:#cbd5e1;

margin:12px 0;

}

footer hr{

margin:35px auto;

width:70%;

border:1px solid rgba(255,255,255,.08);

}

/*======================================
FLOATING BUTTONS
======================================*/

.whatsapp-btn,
.call-btn{

position:fixed;

right:25px;

width:60px;

height:60px;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

font-size:28px;

color:#fff;

text-decoration:none;

z-index:9999;

transition:.3s;

box-shadow:0 10px 25px rgba(0,0,0,.4);

}

.whatsapp-btn{

bottom:25px;

background:#25D366;

}

.call-btn{

bottom:100px;

background:#06b6d4;

}

.whatsapp-btn:hover,
.call-btn:hover{

transform:scale(1.12);

}

/*======================================
ANIMATIONS
======================================*/

.fade-up{

opacity:0;

transform:translateY(50px);

transition:1s;

}

.fade-up.show{

opacity:1;

transform:translateY(0);

}

@keyframes pulse{

0%{

box-shadow:0 0 0 0 rgba(6,182,212,.6);

}

70%{

box-shadow:0 0 0 18px rgba(6,182,212,0);

}

100%{

box-shadow:0 0 0 0 rgba(6,182,212,0);

}

}

.btn-primary{

animation:pulse 2.5s infinite;

}

/*======================================
RESPONSIVE
======================================*/

@media(max-width:768px){

.section-title h2{

font-size:30px;

}

.contact h2{

font-size:30px;

}

.pricing h1{

font-size:34px;

}

footer{

padding:50px 20px;

}

.whatsapp-btn,
.call-btn{

width:55px;

height:55px;

font-size:24px;

right:15px;

}

.call-btn{

bottom:85px;

}

}

@media(max-width:480px){

.hero h1{

font-size:30px;

}

.hero p{

font-size:15px;

}

.btn{

width:100%;

text-align:center;

}

.section-title{

margin:60px auto 30px;

}

.service-card{

padding:25px;

}

}