*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{

font-family:'Poppins',sans-serif;
background:#111;
color:#fff;

}

.container{

width:90%;
max-width:1200px;
margin:auto;

}

header{

position:fixed;

top:0;

left:0;

width:100%;

z-index:9999;

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

backdrop-filter:blur(8px);

}

header .container{

display:flex;

align-items:center;

justify-content:space-between;

padding:18px 0;

}

.logo img{

height:80px;

}

nav ul{

display:flex;

list-style:none;

}

nav ul li{

margin-left:35px;

}

nav ul li a{

text-decoration:none;

color:#fff;

font-weight:500;

transition:.3s;

}

nav ul li a:hover{

color:#9acd32;

}

.menu-btn{

display:none;

font-size:28px;

cursor:pointer;

color:#9acd32;

}

.hero{

height:100vh;

background:url('../images/hero.png') center center/cover;

position:relative;

display:flex;

justify-content:center;

align-items:center;

text-align:center;

}

.overlay{

position:absolute;

top:0;

left:0;

width:100%;

height:100%;

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

}

.hero-content{

position:relative;

z-index:2;

}

.hero h1{

font-size:62px;

line-height:1.2;

margin-bottom:20px;

}

.hero p{

font-size:22px;

margin-bottom:40px;

color:#ddd;

}

.btn{

display:inline-block;

padding:16px 40px;

background:#9acd32;

color:#000;

font-weight:700;

text-decoration:none;

border-radius:40px;

transition:.3s;

}

.btn:hover{

background:#fff;

}
section{
padding:100px 0;
}

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

.section-tag{
color:#95C93D;
font-weight:600;
letter-spacing:2px;
}

.about{
background:#181818;
}

.about-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:70px;
align-items:center;
}

.about-image img{
width:100%;
border-radius:15px;
}

.about-content h2{
font-size:45px;
margin:20px 0;
}

.about-content p{
color:#ccc;
line-height:1.9;
margin-bottom:30px;
}

.about-list{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:15px;
margin-bottom:35px;
}

.about-list i{
color:#95C93D;
margin-right:10px;
}

.why-grid,
.service-grid,
.counter-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
}

.why-box,
.service-card{
background:#1f1f1f;
padding:40px;
text-align:center;
border-radius:15px;
transition:.4s;
}

.why-box:hover,
.service-card:hover{
transform:translateY(-10px);
background:#95C93D;
color:#111;
}

.why-box i,
.service-card i{
font-size:45px;
margin-bottom:20px;
color:#95C93D;
}

.why-box:hover i,
.service-card:hover i{
color:#111;
}

.counter{
background:#95C93D;
color:#111;
}

.counter-grid div{
text-align:center;
}

.counter h2{
font-size:55px;
font-weight:800;
}

.counter p{
font-size:18px;
font-weight:600;
}

.cta{
background:#111;
text-align:center;
}

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

.cta p{
max-width:700px;
margin:auto auto 40px;
color:#ccc;
line-height:1.8;
}
.page-banner{

height:420px;

background:url('../images/services-banner.png') center/cover;

position:relative;

display:flex;

align-items:center;

justify-content:center;

text-align:center;

margin-top:95px;

}

.banner-content{

position:relative;

z-index:2;

}

.banner-content h1{

font-size:60px;

margin-bottom:15px;

}

.banner-content p{

font-size:20px;

}

.services-page{

background:#181818;

}

.services-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:35px;

}

.service-box{

background:#222;

padding:45px 30px;

border-radius:18px;

text-align:center;

transition:.35s;

border-bottom:4px solid transparent;

}

.service-box:hover{

transform:translateY(-12px);

border-color:#95C93D;

}

.service-box i{

font-size:55px;

color:#95C93D;

margin-bottom:25px;

}

.service-box h3{

margin-bottom:15px;

}

.service-box p{

color:#cfcfcf;

line-height:1.8;

}

.process{

background:#111;

}

.process-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

text-align:center;

}

.process-grid div{

background:#222;

padding:40px;

border-radius:15px;

}

.process-grid span{

display:inline-flex;

width:70px;

height:70px;

align-items:center;

justify-content:center;

background:#95C93D;

color:#111;

font-size:28px;

font-weight:700;

border-radius:50%;

margin-bottom:20px;

}
.portfolio{

background:#181818;

}

.portfolio-filter{

text-align:center;

margin-bottom:60px;

}

.portfolio-filter button{

padding:14px 30px;

border:none;

margin:8px;

background:#222;

color:#fff;

cursor:pointer;

border-radius:40px;

transition:.3s;

font-size:15px;

}

.portfolio-filter button:hover,
.portfolio-filter button.active{

background:#95C93D;

color:#111;

}

.portfolio-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.portfolio-item{

position:relative;

overflow:hidden;

border-radius:15px;

cursor:pointer;

}

.portfolio-item img{

width:100%;

height:320px;

object-fit:cover;

transition:.5s;

display:block;

}

.portfolio-item:hover img{

transform:scale(1.12);

}

.project-info{

position:absolute;

bottom:-100%;

left:0;

width:100%;

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

padding:25px;

transition:.4s;

}

.portfolio-item:hover .project-info{

bottom:0;

}

.achievement{

background:#95C93D;

color:#111;

padding:80px 0;

}

.achievement-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

text-align:center;

gap:30px;

}

.achievement h2{

font-size:58px;

font-weight:800;

}

.testimonial{

background:#111;

}

.testimonial-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.testimonial-box{

background:#1e1e1e;

padding:40px;

border-radius:15px;

line-height:1.8;

transition:.3s;

}

.testimonial-box:hover{

transform:translateY(-10px);

}
.whatsapp,
.call,
#topBtn{

position:fixed;

right:25px;

width:60px;

height:60px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

color:#fff;

font-size:24px;

z-index:999;

text-decoration:none;

}

.whatsapp{

bottom:25px;

background:#25D366;

}

.call{

bottom:100px;

background:#95C93D;

}

#topBtn{

bottom:175px;

background:#222;

display:none;

}

footer{

background:#111;

padding:80px 0 30px;

}

.footer-grid{

display:grid;

grid-template-columns:2fr 1fr 1fr 1fr;

gap:40px;

}

.footer-grid ul{

list-style:none;

}

.footer-grid ul li{

margin:12px 0;

}

.footer-grid a{

color:#ddd;

text-decoration:none;

}

.social a{

width:45px;

height:45px;

background:#222;

display:inline-flex;

justify-content:center;

align-items:center;

border-radius:50%;

margin-right:10px;

}

.copyright{

border-top:1px solid #333;

margin-top:50px;

padding-top:25px;

text-align:center;

color:#888;

}
/*=========================
ABOUT PAGE
==========================*/

.about-page{

padding:100px 0;

background:#181818;

}

.about-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

align-items:center;

}

.about-image img{

width:100%;

border-radius:15px;

box-shadow:0 15px 35px rgba(0,0,0,.3);

}

.about-content h2{

font-size:46px;

margin:20px 0;

color:#fff;

}

.about-content p{

color:#cfcfcf;

line-height:1.9;

margin-bottom:20px;

}

.section-tag{

color:#95C93D;

font-weight:600;

letter-spacing:2px;

text-transform:uppercase;

}

/*=========================
MISSION
==========================*/

.mission{

padding:100px 0;

background:#111;

}

.mission-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

margin-top:60px;

}

.mission-box{

background:#1e1e1e;

padding:45px 35px;

text-align:center;

border-radius:15px;

transition:.4s;

}

.mission-box:hover{

transform:translateY(-10px);

background:#95C93D;

color:#111;

}

.mission-box i{

font-size:55px;

margin-bottom:20px;

color:#95C93D;

}

.mission-box:hover i{

color:#111;

}

.mission-box h3{

margin-bottom:15px;

font-size:24px;

}

.mission-box p{

line-height:1.8;

}
/*=========================
CONTACT PAGE
==========================*/

.contact-page{

padding:100px 0;

background:#181818;

}

.contact-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:60px;

align-items:start;

}

.contact-details h2{

font-size:42px;

margin-bottom:20px;

}

.contact-details>p{

color:#cfcfcf;

line-height:1.8;

margin-bottom:35px;

}

.contact-box{

display:flex;

align-items:flex-start;

margin-bottom:30px;

}

.contact-box i{

width:60px;

height:60px;

background:#95C93D;

color:#111;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

font-size:22px;

margin-right:20px;

}

.contact-box h4{

margin-bottom:8px;

font-size:20px;

}

.contact-box p{

color:#cfcfcf;

}

/*=========================
CONTACT FORM
==========================*/

.contact-form{

background:#222;

padding:40px;

border-radius:15px;

}

.contact-form input,

.contact-form textarea{

width:100%;

padding:16px 18px;

margin-bottom:20px;

border:none;

border-radius:8px;

background:#2d2d2d;

color:#fff;

font-size:15px;

font-family:Poppins,sans-serif;

}

.contact-form input:focus,

.contact-form textarea:focus{

outline:none;

background:#333;

}

.contact-form textarea{

resize:vertical;

min-height:180px;

}

.contact-form button{

border:none;

cursor:pointer;

width:100%;

}

/*=========================
GOOGLE MAP
==========================*/

.map{

line-height:0;

}

.map iframe{

width:100%;

height:450px;

border:0;

display:block;

}
/*=========================================
FOOTER
=========================================*/

footer{

background:#0b0b0b;

padding:80px 0 30px;

}

.footer-grid{

display:grid;

grid-template-columns:2fr 1fr 1fr 1fr;

gap:50px;

}

.footer-logo{

width:180px;

margin-bottom:25px;

}

.footer-about p{

color:#bdbdbd;

line-height:1.9;

margin-bottom:25px;

}

.footer-title{

font-size:22px;

margin-bottom:25px;

color:#fff;

position:relative;

}

.footer-title::after{

content:"";

position:absolute;

left:0;

bottom:-10px;

width:60px;

height:3px;

background:#95C93D;

}

.footer-links{

list-style:none;

padding:0;

margin:0;

}

.footer-links li{

margin-bottom:14px;

}

.footer-links a{

text-decoration:none;

color:#bdbdbd;

transition:.3s;

}

.footer-links a:hover{

color:#95C93D;

padding-left:8px;

}

.footer-contact{

list-style:none;

padding:0;

margin:0;

}

.footer-contact li{

display:flex;

margin-bottom:18px;

color:#bdbdbd;

line-height:1.7;

}

.footer-contact i{

color:#95C93D;

margin-right:12px;

margin-top:5px;

width:20px;

}

.social{

display:flex;

gap:12px;

margin-top:20px;

}

.social a{

width:45px;

height:45px;

background:#1c1c1c;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

color:#fff;

text-decoration:none;

transition:.3s;

font-size:18px;

}

.social a:hover{

background:#95C93D;

color:#111;

transform:translateY(-5px);

}

.footer-bottom{

border-top:1px solid #222;

margin-top:60px;

padding-top:25px;

display:flex;

justify-content:space-between;

align-items:center;

color:#999;

font-size:15px;

}

.footer-bottom a{

color:#95C93D;

text-decoration:none;

}

.footer-bottom a:hover{

text-decoration:underline;

}