:root{
--primary:#0d5c2f;
--secondary:#2e7d32;
--light:#f8f9fa;
--dark:#1a1a1a;
}

body{
font-family:'Montserrat',sans-serif;
overflow-x:hidden;
}

.custom-navbar{
background:#fff;
box-shadow:0 2px 20px rgba(0,0,0,.08);
padding:15px 0;
}

.nav-link{
font-weight:600;
color:#222 !important;
margin:0 10px;
}

.nav-link:hover{
color:var(--primary) !important;
}

.btn-success{
background:var(--primary);
border:none;
}

.footer-section{
background:#0b0b0b;
color:#fff;
padding:80px 0 30px;
}

.footer-links{
list-style:none;
padding:0;
}

.footer-links li{
margin-bottom:10px;
}

.footer-links a{
color:#ddd;
text-decoration:none;
}

.hero-slider{
margin-top:100px;
}

.hero-bg{
height:100vh;
background-size:cover;
background-position:center;
position:relative;
display:flex;
align-items:center;
}

.hero-overlay{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:linear-gradient(
90deg,
rgba(0,0,0,0.85),
rgba(0,0,0,0.55),
rgba(0,0,0,0.20)
);
}

.hero-content{
position:relative;
z-index:2;
max-width:850px;
color:#fff;
}

.hero-subtitle{
display:inline-block;
font-size:15px;
letter-spacing:3px;
font-weight:600;
margin-bottom:20px;
color:#8bc34a;
}

.hero-content h1{
font-size:72px;
font-weight:800;
line-height:1.1;
margin-bottom:25px;
}

.hero-content p{
font-size:20px;
line-height:1.8;
max-width:700px;
margin-bottom:35px;
color:#f1f1f1;
}

.hero-buttons{
display:flex;
gap:15px;
flex-wrap:wrap;
}

.hero-btn-primary{
background:#0d5c2f;
color:#fff;
padding:16px 40px;
font-weight:600;
border-radius:0;
}

.hero-btn-primary:hover{
background:#084622;
color:#fff;
}

.hero-btn-outline{
border:2px solid #fff;
color:#fff;
padding:16px 40px;
border-radius:0;
font-weight:600;
}

.hero-btn-outline:hover{
background:#fff;
color:#111;
}

.carousel-control-prev,
.carousel-control-next{
width:5%;
}

@media(max-width:991px){

.hero-content h1{
font-size:50px;
}

.hero-content p{
font-size:18px;
}

}

@media(max-width:768px){

.hero-bg{
height:85vh;
}

.hero-content h1{
font-size:36px;
}

.hero-content p{
font-size:16px;
}

.hero-buttons{
flex-direction:column;
}

.hero-btn-primary,
.hero-btn-outline{
width:100%;
text-align:center;
}

}
/* ABOUT SECTION */

.about-section{
padding:100px 0;
background:#fff;
}

.section-tag{
color:#0d5c2f;
font-weight:700;
letter-spacing:2px;
font-size:14px;
}

.section-title{
font-size:32px;
font-weight:700;
line-height:1.2;
margin:20px 0;
color:#111;
}

.about-text{
font-size:17px;
line-height:1.9;
color:#666;
margin-bottom:20px;
}

.about-image{
overflow:hidden;
border-radius:10px;
}

.about-image img{
transition:.5s;
}

.about-image:hover img{
transform:scale(1.05);
}


/* COUNTER SECTION */

.counter-section{
background:#0d5c2f;
padding:80px 0;
}

.counter-box{
padding:20px;
}

.counter-box h2{
font-size:55px;
font-weight:800;
color:#fff;
margin-bottom:10px;
}

.counter-box p{
font-size:18px;
color:#d9d9d9;
margin:0;
}

@media(max-width:768px){

.section-title{
font-size:32px;
}

.counter-box h2{
font-size:36px;
}

.counter-box{
margin-bottom:25px;
}

}
.business-section{
padding:100px 0;
background:#f8f9fa;
}

.section-desc{
max-width:700px;
margin:auto;
color:#666;
font-size:17px;
}

.business-card{
position:relative;
overflow:hidden;
height:450px;
border-radius:8px;
cursor:pointer;
}

.business-card img{
width:100%;
height:100%;
object-fit:cover;
transition:.6s;
}

.business-overlay{
position:absolute;
bottom:0;
left:0;
width:100%;
padding:30px;
background:linear-gradient(
to top,
rgba(0,0,0,.95),
rgba(0,0,0,.2)
);
color:#fff;
}

.business-overlay h4{
font-size:24px;
font-weight:700;
margin-bottom:10px;
}

.business-overlay p{
font-size:15px;
line-height:1.7;
}

.business-card:hover img{
transform:scale(1.1);
}

.business-card:hover .business-overlay{
background:linear-gradient(
to top,
rgba(13,92,47,.95),
rgba(13,92,47,.4)
);
}
.projects-section{
padding:100px 0;
background:#fff;
}

.project-card{
position:relative;
overflow:hidden;
border-radius:10px;
height:350px;
}

.project-card.large{
height:500px;
}

.project-card img{
width:100%;
height:100%;
object-fit:cover;
transition:.7s;
}

.project-overlay{
position:absolute;
bottom:0;
left:0;
width:100%;
padding:30px;
background:linear-gradient(
to top,
rgba(0,0,0,.95),
rgba(0,0,0,.1)
);
color:#fff;
}

.project-overlay span{
display:inline-block;
background:#0d5c2f;
padding:5px 12px;
font-size:12px;
margin-bottom:15px;
}

.project-overlay h3,
.project-overlay h4{
font-weight:700;
margin-bottom:15px;
}

.project-overlay a{
color:#fff;
text-decoration:none;
font-weight:600;
}

.project-card:hover img{
transform:scale(1.1);
}

.project-card:hover .project-overlay{
background:linear-gradient(
to top,
rgba(13,92,47,.95),
rgba(13,92,47,.3)
);
}

.sustainability-section{
padding:120px 0;
background:
linear-gradient(rgba(13,92,47,.85),
rgba(13,92,47,.85)),
url('assets/images/sustainability.jpg');
background-size:cover;
background-position:center;
color:#fff;
text-align:center;
}

.sustainability-section span{
letter-spacing:3px;
font-weight:600;
}

.sustainability-section h2{
font-size:54px;
font-weight:800;
margin:20px 0;
}

.sustainability-section p{
max-width:800px;
margin:auto;
font-size:18px;
line-height:1.9;
margin-bottom:30px;
}
.clients-section{
padding:100px 0;
background:#fff;
overflow:hidden;
}

.logo-slider{
position:relative;
overflow:hidden;
width:100%;
}

.logo-track{
display:flex;
align-items:center;
gap:80px;
width:max-content;
animation:scroll 25s linear infinite;
}

.logo-track img{
height:70px;
width:auto;
filter:grayscale(100%);
opacity:.7;
transition:.4s;
}

.logo-track img:hover{
filter:none;
opacity:1;
transform:scale(1.05);
}

@keyframes scroll{

0%{
transform:translateX(0);
}

100%{
transform:translateX(-50%);
}

}
.cta-banner{
position:relative;
padding:120px 0;
background:url('img/cta-bg.jpg');
background-size:cover;
background-position:center;
overflow:hidden;
}

.cta-overlay{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.65);
}

.cta-banner .container{
position:relative;
z-index:2;
}

.cta-tag{
display:inline-block;
color:#8bc34a;
font-weight:700;
letter-spacing:3px;
margin-bottom:20px;
}

.cta-banner h2{
font-size:60px;
font-weight:800;
color:#fff;
margin-bottom:25px;
}

.cta-banner p{
font-size:20px;
line-height:1.8;
color:#eee;
max-width:800px;
margin:auto;
margin-bottom:40px;
}

.cta-buttons{
display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;
}

.cta-buttons .btn{
padding:16px 40px;
font-weight:600;
}

@media(max-width:768px){

.cta-banner h2{
font-size:38px;
}

.cta-banner p{
font-size:16px;
}

}

.contact-section{
padding:100px 0;
background:#f8f9fa;
}

.contact-desc{
font-size:17px;
color:#666;
margin-bottom:35px;
}

.contact-info-box{
display:flex;
gap:20px;
margin-bottom:30px;
align-items:flex-start;
}

.contact-icon{
width:60px;
height:60px;
background:#0d5c2f;
color:#fff;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
font-size:22px;
flex-shrink:0;
}

.contact-info-box h5{
font-weight:700;
margin-bottom:8px;
}

.contact-info-box p{
margin:0;
color:#666;
}

.contact-info-box a{
text-decoration:none;
color:#666;
}

.contact-form-box{
background:#fff;
padding:40px;
border-radius:15px;
box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.contact-form-box .form-control{
height:55px;
border-radius:8px;
}

.contact-form-box textarea.form-control{
height:auto;
}

.contact-form-box button{
padding:15px 40px;
font-weight:600;
}
.footer-main{
background:#0a0f0c;
color:#fff;
padding:80px 0 20px;
}

.footer-main h5{
margin-bottom:25px;
font-weight:700;
}

.footer-main p{
color:#cfcfcf;
line-height:1.8;
}

.footer-main ul{
padding:0;
list-style:none;
}

.footer-main ul li{
margin-bottom:12px;
}

.footer-main ul li a{
color:#cfcfcf;
text-decoration:none;
transition:.3s;
}

.footer-main ul li a:hover{
color:#8bc34a;
}

.social-icons{
display:flex;
gap:10px;
margin-top:25px;
}

.social-icons a{
width:42px;
height:42px;
background:#0d5c2f;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
color:#fff;
text-decoration:none;
}

.footer-bottom{
padding-top:20px;
color:#aaa;
}
.page-banner{
height:500px;
background:url('img/about1.jpg');
background-size:cover;
background-position:center;
position:relative;
display:flex;
align-items:center;
}

.banner-overlay{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.55);
}

.banner-content{
position:relative;
z-index:2;
color:#fff;
text-align:center;
}

.banner-content h1{
font-size:70px;
font-weight:800;
margin-bottom:15px;
}

.banner-content p{
font-size:22px;
}

.vision-mission-section{
padding:100px 0;
background:#f8f9fa;
}

.vm-card{
background:#fff;
padding:50px;
border-radius:12px;
height:100%;
box-shadow:0 10px 30px rgba(0,0,0,.05);
transition:.4s;
}

.vm-card:hover{
transform:translateY(-8px);
}

.vm-icon{
width:80px;
height:80px;
background:#0d5c2f;
color:#fff;
display:flex;
align-items:center;
justify-content:center;
font-size:32px;
border-radius:50%;
margin-bottom:25px;
}

.vm-card h3{
font-weight:700;
margin-bottom:20px;
}

.vm-card p{
color:#666;
line-height:1.9;
}


/* CORE VALUES */

.core-values-section{
padding:100px 0;
background:#fff;
}

.value-card{
background:#fff;
padding:40px 30px;
text-align:center;
border-radius:12px;
box-shadow:0 5px 20px rgba(0,0,0,.05);
transition:.4s;
height:100%;
}

.value-card:hover{
transform:translateY(-8px);
background:#0d5c2f;
color:#fff;
}

.value-card i{
font-size:50px;
margin-bottom:20px;
color:#0d5c2f;
}

.value-card:hover i{
color:#fff;
}

.value-card p{
color:#666;
}

.value-card:hover p{
color:#fff;
}
.timeline-section{
padding:100px 0;
background:#f8f9fa;
}

.timeline{
position:relative;
max-width:900px;
margin:auto;
}

.timeline::before{
content:'';
position:absolute;
left:50%;
top:0;
width:4px;
height:100%;
background:#0d5c2f;
transform:translateX(-50%);
}

.timeline-item{
position:relative;
width:50%;
padding:20px 40px;
margin-bottom:50px;
}

.timeline-item:nth-child(odd){
left:0;
text-align:right;
}

.timeline-item:nth-child(even){
left:50%;
}

.timeline-year{
display:inline-block;
background:#0d5c2f;
color:#fff;
padding:10px 20px;
font-weight:700;
border-radius:30px;
margin-bottom:15px;
}

.timeline-content{
background:#fff;
padding:25px;
border-radius:10px;
box-shadow:0 5px 20px rgba(0,0,0,.08);
}

.timeline-content h4{
font-weight:700;
margin-bottom:15px;
}

.timeline-content p{
margin:0;
color:#666;
line-height:1.8;
}

@media(max-width:768px){

.timeline::before{
left:20px;
}

.timeline-item{
width:100%;
left:0 !important;
text-align:left !important;
padding-left:60px;
padding-right:0;
}

}
.process-section{
padding:100px 0;
}

.process-card{
background:#fff;
padding:40px 30px;
border-radius:15px;
text-align:center;
height:100%;
position:relative;
box-shadow:0 10px 30px rgba(0,0,0,.08);
transition:.4s;
}

.process-card:hover{
transform:translateY(-10px);
}

.process-number{
position:absolute;
top:15px;
right:20px;
font-size:40px;
font-weight:800;
color:#e9ecef;
}

.process-card i{
font-size:50px;
color:#0d5c2f;
margin-bottom:20px;
}

.process-card h4{
font-weight:700;
margin-bottom:15px;
}

.process-card p{
color:#666;
line-height:1.8;
}
.industry-card{
background:#fff;
padding:40px;
text-align:center;
border-radius:15px;
box-shadow:0 5px 20px rgba(0,0,0,.08);
transition:.4s;
}

.industry-card:hover{
background:#0d5c2f;
color:#fff;
transform:translateY(-8px);
}

.industry-card i{
font-size:50px;
margin-bottom:20px;
color:#0d5c2f;
}

.industry-card:hover i{
color:#fff;
}

.industry-card{
background:#fff;
padding:40px;
text-align:center;
border-radius:15px;
box-shadow:0 5px 20px rgba(0,0,0,.08);
transition:.4s;
}

.industry-card:hover{
background:#0d5c2f;
color:#fff;
transform:translateY(-8px);
}

.industry-card i{
font-size:50px;
margin-bottom:20px;
color:#0d5c2f;
}

.industry-card:hover i{
color:#fff;
}

.first-service-section{
    margin-top:80px;
}
.service-detail{
   padding-top: 65px;
    padding-bottom: 97px;
}
.esg-card{
background:#fff;
padding:40px;
border-radius:15px;
height:100%;
box-shadow:0 10px 30px rgba(0,0,0,.08);
transition:.4s;
}

.esg-card:hover{
transform:translateY(-10px);
}

.esg-card i{
font-size:55px;
color:#0d5c2f;
margin-bottom:20px;
}

.esg-card h3{
font-weight:700;
margin-bottom:20px;
}

.esg-card ul{
padding-left:20px;
}

.esg-card li{
margin-bottom:10px;
}
.stat-card{
background:#0d5c2f;
color:#fff;
padding:40px 20px;
border-radius:15px;
text-align:center;
}

.stat-card h2{
font-size:50px;
font-weight:800;
margin-bottom:10px;
}
.future-goal{
background:#fff;
padding:25px;
margin-bottom:20px;
border-left:5px solid #0d5c2f;
box-shadow:0 5px 20px rgba(0,0,0,.08);
font-weight:600;
}

.future-goal span{
color:#0d5c2f;
font-size:22px;
font-weight:700;
margin-right:15px;
}

