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

body{
background:#fff;
color:#333;
line-height:1.7;
}

.container{
width:90%;
max-width:1200px;
margin:auto;
}

section{
padding:100px 0;
}

/* HERO */

.hero{
height:100vh;
position:relative;
background:
linear-gradient(
135deg,
rgba(3,15,40,.92),
rgba(0,102,255,.75)
),
url('assets/img/hero-bg.jpg');

background-size:cover;
background-position:center;
display:flex;
justify-content:center;
align-items:center;
text-align:center;
color:#fff;
}

.hero-content h1{
font-size:65px;
font-weight:700;
margin-bottom:20px;
}

.hero-content p{
font-size:22px;
max-width:800px;
margin:auto;
}

.hero-buttons{
margin-top:40px;
}

.btn-primary{
background:#0066ff;
padding:15px 35px;
color:white;
text-decoration:none;
border-radius:50px;
margin-right:10px;
transition:.3s;
}

.btn-secondary{
background:white;
padding:15px 35px;
color:#0066ff;
text-decoration:none;
border-radius:50px;
}

.btn-primary:hover{
background:#0050d8;
}

/* SECTION */

.section-title{
text-align:center;
margin-bottom:60px;
}

.section-title h2{
font-size:40px;
color:#0f172a;
}

/* ABOUT */

.about{
background:#f8fafc;
}

.about p{
font-size:18px;
text-align:center;
max-width:900px;
margin:auto;
}

/* SERVICES */

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

.service-card{
background:white;
padding:35px;
border-radius:20px;
box-shadow:0 5px 25px rgba(0,0,0,.08);
transition:.4s;
}

.service-card:hover{
transform:translateY(-10px);
box-shadow:0 15px 40px rgba(0,102,255,.2);
}

.service-card h3{
margin-bottom:15px;
color:#0066ff;
}

/* STATS */

.stats{
background:#0066ff;
color:white;
}

.stats-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
text-align:center;
}

.stats h2{
font-size:55px;
}

/* WHY US */

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

.why-card{
padding:35px;
background:#fff;
border-radius:15px;
box-shadow:0 5px 20px rgba(0,0,0,.08);
}

/* CTA */

.cta{
background:#0f172a;
color:white;
text-align:center;
}

.cta h2{
font-size:45px;
margin-bottom:20px;
}

/* CONTACT */

.contact{
background:#f8fafc;
}

.contact form{
max-width:800px;
margin:auto;
display:flex;
flex-direction:column;
gap:20px;
}

.contact input,
.contact textarea{

padding:15px;
border:1px solid #ddd;
border-radius:10px;
font-size:16px;

}

.contact button{

background:#0066ff;
color:white;
padding:15px;
border:none;
border-radius:10px;
cursor:pointer;
font-size:18px;

}

/* MOBILE */

@media(max-width:768px){

.hero-content h1{
font-size:40px;
}

.hero-content p{
font-size:18px;
}

.stats-grid{
grid-template-columns:repeat(2,1fr);
gap:30px;
}

}
/* TOP BAR */

.topbar{

background:#001233;
color:white;
padding:10px 0;
font-size:14px;

}

.topbar i{

color:#00d4ff;
margin-right:5px;

}

/* NAVBAR */

.custom-navbar{

background:rgba(0,0,0,.25);

backdrop-filter:blur(12px);

transition:.4s;

padding:15px 0;

}

.navbar-brand{

font-size:28px;
font-weight:700;

}

.logo-text{

color:white;

}

.highlight{

color:#00d4ff;

}

.nav-link{

color:white !important;

margin-left:15px;

font-weight:500;

}

.nav-link:hover{

color:#00d4ff !important;

}

.nav-btn{

margin-left:20px;
border-radius:30px;
padding:10px 25px;

}

/* STICKY EFFECT */

.scrolled{

background:#001233 !important;

box-shadow:0 5px 20px rgba(0,0,0,.15);

}

/* =========================
   NAVBAR
========================= */

.custom-navbar{

background:rgba(0,0,0,.35);
backdrop-filter:blur(15px);

padding:18px 0;

transition:.4s ease;

z-index:9999;
}

.brand-text{

font-size:28px;
font-weight:700;
color:#fff;
margin-left:10px;
}

.highlight{

color:#00d4ff;
}

/* NAV LINKS */

.navbar-nav .nav-link{

color:#fff !important;

font-size:16px;

font-weight:500;

padding:10px 18px !important;

position:relative;

transition:.3s;
}

.navbar-nav .nav-link:hover{

color:#00d4ff !important;

}

.navbar-nav .nav-link::after{

content:'';

position:absolute;

left:50%;

bottom:0;

width:0;

height:2px;

background:#00d4ff;

transition:.4s;

transform:translateX(-50%);
}

.navbar-nav .nav-link:hover::after{

width:70%;
}

/* GET QUOTE BUTTON */

.quote-btn{

background:linear-gradient(
135deg,
#00d4ff,
#0066ff
);

padding:12px 28px;

border-radius:50px;

color:white;

text-decoration:none;

font-weight:600;

transition:.4s;

box-shadow:
0 5px 20px rgba(0,102,255,.3);

}

.quote-btn:hover{

transform:translateY(-3px);

color:white;

box-shadow:
0 10px 30px rgba(0,102,255,.5);

}

/* SCROLL EFFECT */

.navbar-scrolled{

background:#081120 !important;

box-shadow:
0 5px 25px rgba(0,0,0,.2);

}

/* MOBILE MENU */

.navbar-toggler{

border:none;

color:white;

font-size:24px;
}

.navbar-toggler:focus{

box-shadow:none;
}

/* ABOUT PAGE */

.page-banner{
background:
linear-gradient(
135deg,
rgba(0,20,60,.9),
rgba(0,102,255,.8)
),
url('../img/banner.jpg');

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

padding:150px 0 100px;

color:white;
text-align:center;
}

.page-banner h1{
font-size:55px;
font-weight:700;
}

.about-company{
padding:100px 0;
}

.about-company h2{
margin-bottom:20px;
font-weight:700;
color:#0f172a;
}

.mission-vision{
background:#f8fafc;
padding:80px 0;
}

.mv-card{
background:white;
padding:40px;
border-radius:20px;
box-shadow:0 5px 25px rgba(0,0,0,.08);
height:100%;
}

.core-values{
padding:100px 0;
}

.value-card{
background:white;
padding:30px;
border-radius:20px;
text-align:center;
box-shadow:0 5px 25px rgba(0,0,0,.08);
transition:.4s;
}

.value-card:hover{
transform:translateY(-10px);
}

.why-us{
background:#f8fafc;
padding:100px 0;
}

.why-box{
background:white;
padding:30px;
border-radius:20px;
box-shadow:0 5px 25px rgba(0,0,0,.08);
}

.about-stats{
background:#0066ff;
color:white;
padding:80px 0;
}

.about-stats h2{
font-size:50px;
font-weight:700;
}

.about-cta{
padding:100px 0;
background:#0f172a;
color:white;
}
/* SERVICES PAGE */

.services-intro{
padding:80px 0;
}

.services-section{
padding:80px 0;
background:#f8fafc;
}

.service-box{

background:#fff;

padding:35px;

border-radius:20px;

height:100%;

box-shadow:0 10px 30px rgba(0,0,0,.08);

transition:.4s;

text-align:center;
}

.service-box:hover{

transform:translateY(-10px);

box-shadow:0 15px 40px rgba(0,102,255,.2);
}

.service-icon{

font-size:50px;

color:#0066ff;

margin-bottom:20px;
}

.service-box h3{

font-size:22px;

margin-bottom:15px;
}

.service-process{

padding:100px 0;
}

.process-box{

text-align:center;

padding:30px;
}

.process-box span{

display:inline-block;

width:70px;

height:70px;

line-height:70px;

border-radius:50%;

background:#0066ff;

color:white;

font-size:24px;

font-weight:bold;

margin-bottom:20px;
}

.why-services{

padding:100px 0;

background:#f8fafc;
}

.feature-box{

background:white;

padding:30px;

border-radius:20px;

text-align:center;

box-shadow:0 5px 25px rgba(0,0,0,.08);
}
/* =========================
   PROJECTS PAGE
========================= */

.projects-intro{
padding:80px 0;
}

.project-categories{
padding:20px 0 40px;
}

.category-buttons{
display:flex;
justify-content:center;
gap:15px;
flex-wrap:wrap;
}

.cat-btn{
padding:10px 20px;
border:none;
background:#e9eef7;
border-radius:30px;
cursor:pointer;
transition:.3s;
font-weight:500;
}

.cat-btn.active,
.cat-btn:hover{
background:#0066ff;
color:white;
}

/* PROJECT CARDS */

.projects-section{
padding:80px 0;
background:#f8fafc;
}

.project-card{
background:#fff;
border-radius:20px;
overflow:hidden;
box-shadow:0 10px 30px rgba(0,0,0,.08);
transition:.4s;
}

.project-card img{
width:100%;
height:220px;
object-fit:cover;
}

.project-card:hover{
transform:translateY(-10px);
box-shadow:0 20px 50px rgba(0,102,255,.2);
}

.project-content{
padding:20px;
}

.project-content h4{
color:#0f172a;
margin-bottom:10px;
}

/* PROJECT STATS */

.project-stats{
background:#0066ff;
color:white;
padding:80px 0;
}

.project-stats h2{
font-size:50px;
font-weight:700;
}