*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

body{

background:#07111f;
color:#fff;
}

section{

padding:100px 8%;
}

.container{

max-width:1300px;
margin:auto;
}

/* HERO */

.hero{

min-height:90vh;
display:flex;
align-items:center;
background:
linear-gradient(rgba(6,14,28,.85),rgba(6,14,28,.9)),
url('../assets/images/hero-bg.jpg');

background-size:cover;
background-position:center;
}

.hero h5{

color:#39b8ff;
font-size:18px;
letter-spacing:3px;
text-transform:uppercase;
margin-bottom:20px;
}

.hero h1{

font-size:65px;
font-weight:800;
line-height:1.1;
margin-bottom:25px;
}

.hero p{

font-size:19px;
color:#bfc7d6;
max-width:720px;
line-height:1.8;
margin-bottom:40px;
}

.btn-primary{

display:inline-block;
padding:18px 42px;
border-radius:50px;

background:linear-gradient(90deg,#246BFD,#25C7F7);

color:#fff;
font-weight:600;
text-decoration:none;
transition:.4s;
}

.btn-primary:hover{

transform:translateY(-4px);
box-shadow:0 15px 35px rgba(37,199,247,.35);

}

/* SERVICES */

.services{

background:#091423;
}

.section-title{

text-align:center;
margin-bottom:70px;
}

.section-title h2{

font-size:45px;
margin-bottom:15px;
}

.section-title p{

color:#9aa8bd;
}

.grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:30px;
}

.card{

background:#111d31;
padding:35px;
border-radius:20px;
transition:.35s;
border:1px solid rgba(255,255,255,.05);

}

.card:hover{

transform:translateY(-10px);

border-color:#2bbcff;

}

.card h3{

margin-bottom:18px;
}

.card p{

color:#aab6c8;
line-height:1.8;
}

/* FEATURES */

.features{

background:#07111f;
}

.features-list{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:25px;
margin-top:50px;
}

.feature{

background:#101b2e;
padding:28px;
border-radius:18px;
}

.feature h4{

margin-bottom:12px;
color:#2dc6ff;
}

.feature p{

color:#b2bfd0;
line-height:1.7;
}

/* PROCESS */

.process{

background:#091423;
}

.steps{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
gap:25px;
margin-top:60px;
}

.step{

background:#111d31;
padding:30px;
text-align:center;
border-radius:18px;
}

.step span{

width:60px;
height:60px;
display:inline-flex;
align-items:center;
justify-content:center;

background:linear-gradient(90deg,#246BFD,#25C7F7);

border-radius:50%;

font-size:22px;
font-weight:bold;

margin-bottom:20px;
}

/* CTA */

.cta{

text-align:center;
}

.cta h2{

font-size:48px;
margin-bottom:20px;
}

.cta p{

max-width:750px;
margin:auto;
color:#b8c2d2;
margin-bottom:40px;
line-height:1.8;
}

@media(max-width:768px){

.hero h1{

font-size:42px;

}

section{

padding:70px 20px;
}

}