/*==================================================
 SHREESAI ADVANCE INDUSTRIAL SOLUTION PVT LTD
 Enterprise Website v8
 Author : ChatGPT
==================================================*/

:root{

--primary:#0A2A4A;
--secondary:#F59E0B;
--dark:#1F2937;
--light:#F8FAFC;
--white:#ffffff;
--text:#555555;
--heading:#1B1B1B;
--border:#E5E5E5;

--shadow:0 10px 35px rgba(0,0,0,.08);
--radius:16px;

}

*{

margin:0;
padding:0;
box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:'Poppins',sans-serif;
background:#F8FAFC;
color:#1F2937;
line-height:1.8;
overflow-x:hidden;

}

/*=========================
Scrollbar
=========================*/

::-webkit-scrollbar{

width:8px;

}

::-webkit-scrollbar-track{

background:#ececec;

}

::-webkit-scrollbar-thumb{

background:var(--primary);
border-radius:50px;

}

::-webkit-scrollbar-thumb:hover{

background:#062a66;

}

/*=========================
Selection
=========================*/

::selection{

background:var(--secondary);
color:#000;

}

/*=========================
Images
=========================*/

img{

max-width:100%;
display:block;

}

/*=========================
Links
=========================*/

a{

text-decoration:none;
transition:.35s;

}

a:hover{

text-decoration:none;

}

/*=========================
Section
=========================*/

section{

padding:100px 0;

}

/*=========================
Titles
=========================*/

.section-subtitle{

display:inline-block;
padding:8px 18px;
background:#eef4ff;
color:var(--primary);
border-radius:50px;
font-weight:600;
font-size:14px;
margin-bottom:15px;

}

.section-title{

font-size:42px;
font-weight:700;
color:var(--heading);
margin-bottom:20px;

}

.section-description{

max-width:720px;
margin:auto;
font-size:17px;

}

/*=========================
Buttons
=========================*/

.btn{

border-radius:50px;
padding:14px 34px;
font-weight:600;
transition:.35s;

}

.btn-warning{

background:var(--secondary);
border:none;
color:#000;

}

.btn-warning:hover{

background:#ffca2c;
transform:translateY(-3px);

}

.btn-primary{

background:var(--primary);
border:none;

}

.btn-primary:hover{

background:#062a66;
transform:translateY(-3px);

}

/*=========================
Loader
=========================*/

.loader-wrapper{

position:fixed;
left:0;
top:0;
width:100%;
height:100%;
background:#fff;
display:flex;
align-items:center;
justify-content:center;
z-index:999999;

}

.loader-hidden{

opacity:0;
visibility:hidden;
transition:.5s;

}

.loader{

width:70px;
height:70px;
border:6px solid #ddd;
border-top:6px solid var(--primary);
border-radius:50%;
animation:spin 1s linear infinite;

}

.loader-wrapper{

flex-direction:column;
text-align:center;

}

.loader-logo{

width:90px;
margin:0 auto 18px;
animation:spin 2s linear infinite;

}

.loader-wrapper h2{

font-size:20px;
font-weight:700;
color:var(--primary);
letter-spacing:1px;

}

.loader-wrapper p{

font-size:13px;
color:var(--text);
margin-top:6px;
margin-bottom:22px;

}

.loader-line{

width:160px;
height:4px;
background:#eee;
border-radius:10px;
overflow:hidden;

}

.loader-line span{

display:block;
width:40%;
height:100%;
background:var(--primary);
border-radius:10px;
animation:loaderMove 1.2s ease-in-out infinite;

}

@keyframes loaderMove{

0%{transform:translateX(-100%);}
100%{transform:translateX(350%);}

}

@keyframes spin{

100%{

transform:rotate(360deg);

}

}

/*=========================
Top Bar
=========================*/

.top-bar{

background:var(--primary);
color:#fff;
font-size:14px;
padding:10px 0;

}

.top-bar .container{

display:flex;
align-items:center;
justify-content:space-between;
flex-wrap:wrap;
gap:8px;

}

.top-bar a{

color:#fff;

}

.top-bar i{

margin-right:8px;

}

.top-left{

display:flex;
align-items:center;
gap:22px;
flex-wrap:wrap;

}

.top-right{

display:flex;
align-items:center;
gap:14px;

}

.top-right a{

color:#fff;
opacity:.85;

}

.top-right a:hover{

opacity:1;
color:var(--secondary);

}

/*=========================
Navbar
=========================*/

.navbar{

padding:18px 0;
background:#fff;
box-shadow:0 8px 30px rgba(0,0,0,.08);
transition:.4s;

}

.navbar-brand{

font-size:28px;
font-weight:700;
color:var(--primary);

}

.navbar-brand span{

color:var(--secondary);

}

.navbar-nav .nav-link{

font-weight:600;
color:#333;
margin-left:18px;
position:relative;

}

.navbar-nav .nav-link:hover{

color:var(--primary);

}

.navbar-nav .nav-link.active{

color:var(--primary);

}

.navbar-nav .nav-link::after{

content:"";
position:absolute;
left:0;
bottom:-5px;
width:0;
height:2px;
background:var(--secondary);
transition:.35s;

}

.navbar-nav .nav-link:hover::after{

width:100%;

}

/* Sticky */

.navbar.sticky{

padding:12px 0;
box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.main-navbar{

position:sticky;
top:0;
z-index:1030;

}

.nav-buttons{

margin-left:20px;

}

.btn-call{

display:inline-flex;
align-items:center;
gap:8px;
background:var(--secondary);
color:#000;
font-weight:600;
padding:10px 24px;
border-radius:50px;
transition:.35s;

}

.btn-call:hover{

background:var(--primary);
color:#fff;
transform:translateY(-2px);

}
/*==================================================
 HERO SECTION
==================================================*/

.hero{

position:relative;
min-height:85vh;
display:flex;
align-items:center;
overflow:hidden;
background: linear-gradient(135deg,#0A2A4A 0%,#123B6B 50%,#1D4E8C 100%);
padding-top:100px;
padding-bottom:80px;

}

/*==================================================
 SITE HERO (SPLIT LAYOUT) - homepage top section
==================================================*/

.site-hero{
display:flex;
flex-wrap:wrap;
min-height:640px;
margin-top:0;
}

.site-hero-left{
flex:1 1 46%;
max-width:46%;
background:linear-gradient(160deg,#0A2A4A 0%,#0F3560 100%);
color:#fff;
padding:150px 60px 70px;
position:relative;
clip-path:polygon(0 0, 100% 0, 88% 100%, 0% 100%);
}

.site-hero-accent-bar{
width:60px;
height:5px;
background:var(--secondary);
margin-bottom:24px;
}

.site-hero-tags{
display:flex;
flex-wrap:wrap;
gap:10px;
margin-bottom:16px;
}

.site-hero-tag{
display:inline-block;
color:var(--secondary);
font-size:.78rem;
font-weight:700;
letter-spacing:1.2px;
text-transform:uppercase;
}

.site-hero-tag-alt{
background:rgba(245,158,11,.15);
border:1px solid var(--secondary);
color:var(--secondary);
padding:6px 14px;
border-radius:30px;
letter-spacing:.4px;
}

.site-hero-company{
color:#9FB4C9;
font-size:.82rem;
font-weight:600;
letter-spacing:.5px;
margin-bottom:14px;
}

.site-hero-heading{
font-size:2.5rem;
font-weight:800;
line-height:1.28;
margin-bottom:20px;
color:#fff;
}

.site-hero-heading span{
color:var(--secondary);
}

.site-hero-sub{
color:#C7D3DF;
font-size:1rem;
line-height:1.8;
margin-bottom:32px;
max-width:440px;
}

.site-hero-right{
flex:1 1 54%;
max-width:54%;
position:relative;
background:url('images/hero.jpg') center/cover no-repeat;
min-height:420px;
}

.site-hero-right::after{
content:"";
position:absolute;
inset:0;
background:linear-gradient(90deg, rgba(10,42,74,.35), transparent 40%);
}

.site-hero-stats{
position:absolute;
right:40px;
bottom:-38px;
background:#fff;
border-radius:14px;
box-shadow:0 16px 40px rgba(0,0,0,.15);
padding:24px 30px;
display:flex;
gap:30px;
z-index:5;
flex-wrap:wrap;
}

.site-hero-stat{
text-align:center;
min-width:96px;
}

.site-hero-stat .num{
font-size:1.6rem;
font-weight:800;
color:var(--primary);
}

.site-hero-stat .num span{
color:var(--secondary);
}

.site-hero-stat .label{
font-size:.74rem;
color:#666;
margin-top:2px;
font-weight:500;
}

/*==================================================
 TRUSTED BY / CLIENT LOGOS STRIP
==================================================*/

.trusted-strip{
background:var(--light);
padding:90px 20px 60px;
}

.trusted-eyebrow{
color:var(--secondary);
font-weight:700;
font-size:.82rem;
letter-spacing:1.5px;
text-transform:uppercase;
}

.trusted-heading{
color:var(--primary);
font-size:1.6rem;
font-weight:800;
margin:8px 0 36px;
}

.trusted-logos{
display:flex;
justify-content:center;
align-items:center;
gap:46px;
flex-wrap:wrap;
margin-bottom:26px;
}

.trusted-logos img{
height:46px;
object-fit:contain;
filter:grayscale(100%);
opacity:.75;
transition:.25s;
}

.trusted-logos img:hover{
filter:grayscale(0%);
opacity:1;
}

.trusted-note{
max-width:760px;
margin:0 auto;
font-size:.92rem;
color:#555;
line-height:1.8;
}

.trusted-note strong{
color:var(--primary);
}

@media(max-width:991px){

.site-hero{
flex-direction:column;
min-height:auto;
}

.site-hero-left{
flex:1 1 100%;
max-width:100%;
clip-path:none;
padding:150px 30px 60px;
text-align:center;
}

.site-hero-accent-bar{
margin-left:auto;
margin-right:auto;
}

.site-hero-tags{
justify-content:center;
}

.site-hero-sub{
margin-left:auto;
margin-right:auto;
}

.site-hero-right{
flex:1 1 100%;
max-width:100%;
min-height:280px;
}

.site-hero-stats{
position:absolute;
left:50%;
right:auto;
bottom:16px;
transform:translateX(-50%);
margin:0;
justify-content:center;
border-radius:14px;
max-width:92%;
}

.trusted-strip{
padding-top:50px;
}

}

@media(max-width:575px){

.site-hero-heading{
font-size:1.9rem;
}

.site-hero-left{
padding:130px 20px 50px;
}

.site-hero-stats{
gap:10px;
padding:16px 14px;
display:grid;
grid-template-columns:repeat(3, 1fr);
}

.site-hero-stat{
min-width:0;
}

.site-hero-stat .num{
font-size:1.3rem;
}

.site-hero-stat .label{
font-size:.66rem;
}

.trusted-logos img{
height:34px;
}

}

/* Overlay */

.hero::before{

content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.25);
z-index:1;

}

/* Animated Background */

.hero::after{

content:"";
position:absolute;
width:700px;
height:700px;
background:rgba(255,255,255,.04);
border-radius:50%;
right:-220px;
top:-180px;
filter:blur(2px);

}

/* Content */

.hero-content{

position:relative;
z-index:5;
color:#fff;

}

.hero-content h6{

display:inline-block;
background:rgba(255,255,255,.12);
padding:10px 22px;
border-radius:50px;
font-size:15px;
font-weight:600;
letter-spacing:1px;
margin-bottom:25px;

}

.hero-content h1{

font-size:64px;
font-weight:800;
line-height:1.2;
margin-bottom:25px;
color:#fff;

}

.hero-content h1 span{

color:var(--secondary);

}

.hero-content p{

font-size:18px;
max-width:620px;
line-height:1.9;
margin-bottom:35px;
opacity:.95;

}

/* Hero Buttons */

.hero-buttons{

display:flex;
gap:18px;
flex-wrap:wrap;

}

.hero-buttons .btn{

padding:15px 35px;
font-size:16px;
font-weight:600;

}

.hero-buttons .btn-primary{

background:#fff;
color:var(--primary);

}

.hero-buttons .btn-primary:hover{

background:var(--secondary);
color:#000;

}

.hero-buttons .btn-warning{

box-shadow:0 10px 30px rgba(255,193,7,.35);

}

/* Hero Image */

.hero-image{

position:relative;
z-index:5;
text-align:center;

}

.hero-image img{

max-width:100%;
animation:heroFloat 5s ease-in-out infinite;
filter:drop-shadow(0 25px 45px rgba(0,0,0,.30));

}

/* Hero classes actually used in the markup */

.hero-overlay{

position:relative;
z-index:5;
color:#fff;
width:100%;

}

.hero-badge{

display:inline-block;
background:rgba(255,255,255,.12);
padding:10px 22px;
border-radius:50px;
font-size:14px;
font-weight:600;
letter-spacing:1px;
margin-bottom:22px;

}

.hero-title{

font-size:52px;
font-weight:800;
line-height:1.25;
margin-bottom:22px;
color:#fff;

}

.hero-title span{

display:block;
color:var(--secondary);

}

.hero-text{

font-size:17px;
max-width:620px;
line-height:1.9;
margin-bottom:35px;
opacity:.95;
color:#fff;

}

.hero-btns{

display:flex;
gap:18px;
flex-wrap:wrap;

}

.hero-logo{

max-width:60%;
animation:heroFloat 5s ease-in-out infinite;
filter:drop-shadow(0 25px 45px rgba(0,0,0,.30));
margin:0 auto;

}

@keyframes heroFloat{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-18px);

}

100%{

transform:translateY(0);

}

}

/* Floating Shapes */

.shape{

position:absolute;
border-radius:50%;
background:rgba(255,255,255,.08);
animation:floatShape 8s linear infinite;

}

.shape.one{

width:80px;
height:80px;
top:18%;
left:8%;

}

.shape.two{

width:45px;
height:45px;
right:12%;
bottom:22%;

}

.shape.three{

width:140px;
height:140px;
left:48%;
bottom:-70px;

}

@keyframes floatShape{

0%{

transform:translateY(0) rotate(0deg);

}

50%{

transform:translateY(-25px) rotate(180deg);

}

100%{

transform:translateY(0) rotate(360deg);

}

}

/* Scroll Down */

.scroll-down{

position:absolute;
left:50%;
bottom:30px;
transform:translateX(-50%);
z-index:10;
color:#fff;
font-size:14px;
text-align:center;

}

.scroll-down span{

display:block;
margin-bottom:10px;
letter-spacing:2px;
font-weight:600;

}

.scroll-down i{

font-size:22px;
animation:scrollBounce 2s infinite;

}

@keyframes scrollBounce{

0%,100%{

transform:translateY(0);

}

50%{

transform:translateY(10px);

}

}

/* Statistics */

.hero-stats{

display:flex;
gap:40px;
margin-top:50px;
flex-wrap:wrap;

}

.hero-stat h2{

font-size:42px;
font-weight:700;
color:var(--secondary);
margin-bottom:8px;

}

.hero-stat p{

margin:0;
font-size:15px;
color:#ddd;

}

/* Responsive */

@media(max-width:991px){

.hero{

text-align:center;
padding-top:140px;

}

.hero-content h1{

font-size:46px;

}

.hero-content p{

margin:auto;
margin-bottom:35px;

}

.hero-buttons{

justify-content:center;

}

.hero-stats{

justify-content:center;

}

.hero-image{

margin-top:50px;

}

}

@media(max-width:576px){

.hero-content h1{

font-size:34px;

}

.hero-content p{

font-size:16px;

}

.hero-buttons .btn{

width:100%;

}

.hero-stat h2{

font-size:30px;

}

}
/*==================================================
 ABOUT SECTION
==================================================*/

.about-section{

background:#fff;
position:relative;
overflow:hidden;

}

.about-img{

width:100%;
border-radius:20px;
box-shadow:0 20px 50px rgba(0,0,0,.12);
transition:.5s;

}

.about-img:hover{

transform:scale(1.03);

}

.about-features{

margin-top:30px;

}

.feature-box{

display:flex;
align-items:center;
gap:15px;
margin-bottom:18px;
padding:15px 20px;
background:#fff;
border-left:4px solid var(--secondary);
border-radius:12px;
box-shadow:0 8px 25px rgba(0,0,0,.06);
transition:.35s;

}

.feature-box:hover{

transform:translateX(8px);
box-shadow:0 15px 30px rgba(0,0,0,.10);

}

.feature-box i{

width:42px;
height:42px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
background:var(--primary);
color:#fff;
font-size:16px;

}

.feature-box span{

font-weight:600;
color:#222;

}

.about-btn{

margin-top:35px;

}

/*==================================================
 MANAGING DIRECTOR
==================================================*/

.director-section{

background:#f8fafc;

}

.director-image{

position:relative;

}

.director-image img{

border-radius:20px;
transition:.4s;
box-shadow:0 18px 40px rgba(0,0,0,.15);

}

.director-image img:hover{

transform:scale(1.02);

}

.director-sign{

margin-top:35px;
padding-left:20px;
border-left:5px solid var(--secondary);

}

.director-sign h4{

font-weight:700;
color:var(--primary);
margin-bottom:6px;

}

.director-sign span{

font-size:15px;
color:#666;

}

/*==================================================
 VISION & MISSION
==================================================*/

.vision-section{

background:#eef5ff;

}

.vision-card{

background:#fff;
padding:40px 30px;
border-radius:20px;
text-align:center;
box-shadow:0 15px 35px rgba(0,0,0,.08);
transition:.35s;
height:100%;

}

.vision-card:hover{

transform:translateY(-10px);

}

.vision-card .icon{

width:80px;
height:80px;
margin:0 auto 25px;
border-radius:50%;
background:var(--primary);
display:flex;
align-items:center;
justify-content:center;

}

.vision-card .icon i{

font-size:34px;
color:#fff;

}

.vision-card h3{

font-size:28px;
margin-bottom:20px;
color:var(--heading);
font-weight:700;

}

.vision-card p{

font-size:16px;
line-height:1.8;

}

/*==================================================
 CORE VALUES
==================================================*/

.core-values{

background:#fff;

}

.value-card{

background:#fff;
padding:35px 25px;
border-radius:18px;
text-align:center;
box-shadow:0 12px 30px rgba(0,0,0,.08);
transition:.35s;
height:100%;
border-top:4px solid transparent;

}

.value-card:hover{

transform:translateY(-10px);
border-top:4px solid var(--secondary);

}

.value-card i{

font-size:42px;
margin-bottom:20px;
color:var(--primary);

}

.value-card h5{

font-size:22px;
font-weight:700;
margin-bottom:15px;
color:#222;

}

.value-card p{

font-size:15px;
line-height:1.8;
color:#666;

}

/*==================================================
 RESPONSIVE
==================================================*/

@media(max-width:991px){

.about-section,
.director-section,
.vision-section,
.core-values{

text-align:center;

}

.about-btn{

text-align:center;

}

.director-sign{

border:none;
padding-left:0;

}

.feature-box{

justify-content:center;

}

}

@media(max-width:576px){

.vision-card{

padding:30px 20px;

}

.value-card{

padding:30px 20px;

}

.section-title{

font-size:30px;

}

}
/*==================================================
 SERVICES SECTION
==================================================*/

.services-section{
    background:#f8fafc;
    position:relative;
}

.service-card{
    background:#fff;
    border-radius:20px;
    padding:40px 30px;
    text-align:center;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    transition:.4s;
    position:relative;
    overflow:hidden;
    height:100%;
}

.service-card::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:5px;
    background:linear-gradient(90deg,var(--primary),var(--secondary));
}

.service-card:hover{
    transform:translateY(-12px);
    box-shadow:0 20px 45px rgba(0,0,0,.15);
}

.service-icon{
    width:90px;
    height:90px;
    margin:0 auto 25px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg,var(--primary),#1f6fe5);
    color:#fff;
    font-size:36px;
    transition:.4s;
}

.service-card:hover .service-icon{
    transform:rotateY(180deg);
    background:linear-gradient(135deg,var(--secondary),#ff9f00);
}

.service-card h4{
    font-size:24px;
    font-weight:700;
    color:var(--heading);
    margin-bottom:18px;
}

.service-card p{
    color:#666;
    line-height:1.8;
    margin-bottom:25px;
}

.service-btn{
    display:inline-block;
    padding:12px 28px;
    border-radius:50px;
    background:var(--primary);
    color:#fff;
    font-weight:600;
    transition:.35s;
}

.service-btn:hover{
    background:var(--secondary);
    color:#000;
}

/*==================================================
 WHY CHOOSE US
==================================================*/

.why-choose-us{
    background:#fff;
}

.choose-item{
    display:flex;
    align-items:flex-start;
    gap:18px;
    margin-bottom:25px;
    padding:18px;
    border-radius:14px;
    transition:.35s;
}

.choose-item:hover{
    background:#f5f8ff;
    transform:translateX(8px);
}

.choose-item i{
    font-size:26px;
    color:var(--secondary);
    margin-top:5px;
}

.choose-item h5{
    font-size:20px;
    color:var(--heading);
    font-weight:700;
    margin-bottom:8px;
}

.choose-item p{
    margin:0;
    color:#666;
}

/*==================================================
 COUNTER SECTION
==================================================*/

.counter-section{
    background:linear-gradient(135deg,var(--primary),#062b69);
    color:#fff;
}

.counter-box{
    padding:40px 20px;
}

.counter-box i{
    font-size:42px;
    color:var(--secondary);
    margin-bottom:20px;
}

.counter-box h2{
    font-size:52px;
    font-weight:700;
    margin-bottom:10px;
    color:#fff;
}

.counter-box p{
    color:#ddd;
    font-size:17px;
    margin:0;
}

/*==================================================
 COMPANY HIGHLIGHTS
==================================================*/

.highlights{
    background:#f8fafc;
}

.highlight-card{
    background:#fff;
    padding:35px 30px;
    border-radius:18px;
    text-align:center;
    box-shadow:0 12px 30px rgba(0,0,0,.08);
    transition:.35s;
    height:100%;
}

.highlight-card:hover{
    transform:translateY(-10px);
}

.highlight-card i{
    font-size:42px;
    color:var(--primary);
    margin-bottom:20px;
}

.highlight-card h4{
    font-size:22px;
    font-weight:700;
    margin-bottom:15px;
    color:var(--heading);
}

.highlight-card p{
    color:#666;
    line-height:1.8;
}

/*==================================================
 RESPONSIVE
==================================================*/

@media(max-width:991px){

.service-card,
.highlight-card,
.counter-box{
    margin-bottom:20px;
}

.choose-item{
    text-align:left;
}

}

@media(max-width:576px){

.service-card{
    padding:30px 22px;
}

.service-icon{
    width:75px;
    height:75px;
    font-size:30px;
}

.counter-box h2{
    font-size:38px;
}

.highlight-card{
    padding:30px 20px;
}

}
/*==================================================
 PROJECTS SECTION
==================================================*/

.projects-section{
    background:#ffffff;
}

.project-card{
    position:relative;
    overflow:hidden;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.10);
    transition:.4s;
    height:100%;
}

.project-card img{
    width:100%;
    height:320px;
    object-fit:cover;
    transition:.6s;
}

.project-card:hover img{
    transform:scale(1.1);
}

.project-overlay{
    position:absolute;
    left:0;
    bottom:0;
    width:100%;
    padding:30px;
    background:linear-gradient(to top,
        rgba(11,61,145,.96),
        rgba(11,61,145,.10));
    color:#fff;
    opacity:0;
    transition:.4s;
}

.project-card:hover .project-overlay{
    opacity:1;
}

.project-overlay span{
    display:inline-block;
    padding:6px 16px;
    background:var(--secondary);
    color:#000;
    border-radius:30px;
    font-size:13px;
    font-weight:600;
    margin-bottom:15px;
}

.project-overlay h4{
    font-size:24px;
    font-weight:700;
    margin-bottom:18px;
}

.project-btn{
    display:inline-block;
    padding:12px 28px;
    background:#fff;
    color:var(--primary);
    border-radius:40px;
    font-weight:600;
    transition:.35s;
}

.project-btn:hover{
    background:var(--secondary);
    color:#000;
}

/*==================================================
 WORK PROCESS
==================================================*/

.work-process{
    background:#f8fafc;
}

.process-card{
    position:relative;
    background:#fff;
    padding:40px 25px;
    text-align:center;
    border-radius:20px;
    box-shadow:0 12px 30px rgba(0,0,0,.08);
    transition:.35s;
    height:100%;
}

.process-card:hover{
    transform:translateY(-10px);
}

.process-number{
    width:70px;
    height:70px;
    margin:0 auto 25px;
    border-radius:50%;
    background:linear-gradient(135deg,var(--primary),#1d63d0);
    color:#fff;
    font-size:26px;
    font-weight:700;
    display:flex;
    align-items:center;
    justify-content:center;
}

.process-card h5{
    font-size:22px;
    font-weight:700;
    margin-bottom:15px;
    color:var(--heading);
}

.process-card p{
    color:#666;
    line-height:1.8;
}

/*==================================================
 CLIENTS SECTION
==================================================*/

.clients-section{
    background:#fff;
}

.client-logo{
    background:#fff;
    border:1px solid #ececec;
    border-radius:15px;
    padding:30px;
    display:flex;
    justify-content:center;
    align-items:center;
    height:140px;
    transition:.35s;
    box-shadow:0 8px 20px rgba(0,0,0,.05);
}

.client-logo:hover{
    transform:translateY(-8px);
    box-shadow:0 15px 35px rgba(0,0,0,.12);
}

.client-logo img{
    max-width:130px;
    max-height:70px;
    filter:grayscale(100%);
    transition:.35s;
}

.client-logo:hover img{
    filter:none;
}

/*==================================================
 TESTIMONIAL
==================================================*/

.testimonial-section{
    background:#f5f8ff;
}

.testimonial-card{
    background:#fff;
    border-radius:20px;
    padding:35px;
    box-shadow:0 12px 30px rgba(0,0,0,.08);
    transition:.35s;
    height:100%;
}

.testimonial-card:hover{
    transform:translateY(-8px);
}

.stars{
    color:#FFC107;
    font-size:22px;
    letter-spacing:2px;
}

.testimonial-card p{
    font-style:italic;
    color:#666;
    line-height:1.9;
}

.testimonial-card h5{
    color:var(--heading);
    font-weight:700;
}

.testimonial-card small{
    color:#888;
}

/*==================================================
 CTA SECTION
==================================================*/

.cta-section{
    background:linear-gradient(135deg,var(--primary),#062a66);
    color:#fff;
    padding:80px 0;
}

.cta-section h2{
    font-size:42px;
    font-weight:700;
    margin-bottom:20px;
}

.cta-section p{
    font-size:17px;
    color:#ddd;
    margin-bottom:0;
}

.cta-section .btn{
    padding:16px 38px;
    font-size:17px;
    font-weight:700;
    box-shadow:0 12px 30px rgba(255,193,7,.35);
}

/*==================================================
 RESPONSIVE
==================================================*/

@media(max-width:991px){

.project-overlay{
    opacity:1;
}

.cta-section{
    text-align:center;
}

.cta-section .text-lg-end{
    text-align:center !important;
    margin-top:30px;
}

}

@media(max-width:576px){

.project-card img{
    height:240px;
}

.project-overlay{
    padding:20px;
}

.project-overlay h4{
    font-size:20px;
}

.process-card,
.testimonial-card{
    padding:28px 20px;
}

.cta-section h2{
    font-size:30px;
}

}
/*==================================================
 CONTACT SECTION
==================================================*/

.contact-section{
    background:#ffffff;
}

.contact-info{
    background:#0B3D91;
    color:#fff;
    padding:45px;
    border-radius:20px;
    height:100%;
}

.info-box{
    display:flex;
    align-items:flex-start;
    margin-bottom:30px;
}

.info-box i{
    width:60px;
    height:60px;
    border-radius:50%;
    background:#FFC107;
    color:#000;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    margin-right:18px;
    flex-shrink:0;
}

.info-box h5{
    font-size:20px;
    font-weight:700;
    margin-bottom:8px;
}

.info-box p{
    margin:0;
    line-height:1.8;
    color:#f3f3f3;
}

.social-links{
    display:flex;
    gap:15px;
}

.social-links a{
    width:45px;
    height:45px;
    border-radius:50%;
    background:#ffffff;
    color:var(--primary);
    display:flex;
    justify-content:center;
    align-items:center;
    transition:.35s;
}

.social-links a:hover{
    background:var(--secondary);
    color:#000;
    transform:translateY(-5px);
}

/*==================================================
 CONTACT FORM
==================================================*/

.contact-form{
    background:#fff;
    padding:45px;
    border-radius:20px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.contact-form .form-control{
    border:1px solid #ddd;
    border-radius:12px;
    padding:15px 18px;
    min-height:55px;
    transition:.35s;
    box-shadow:none;
}

.contact-form textarea.form-control{
    min-height:180px;
    resize:vertical;
}

.contact-form .form-control:focus{
    border-color:var(--primary);
    box-shadow:0 0 0 .2rem rgba(11,61,145,.15);
}

.contact-form button{
    padding:15px 35px;
    border-radius:50px;
    font-weight:600;
}

/*==================================================
 GOOGLE MAP
==================================================*/

.map-section iframe{
    width:100%;
    height:450px;
    border:0;
    display:block;
}

/*==================================================
 FOOTER
==================================================*/

.footer-section{
    background:#081b3a;
    color:#dcdcdc;
    padding:80px 0 0;
}

.footer-title{
    color:#fff;
    font-size:28px;
    font-weight:700;
    margin-bottom:25px;
}

.footer-heading{
    color:#fff;
    font-size:20px;
    margin-bottom:25px;
    font-weight:700;
}

.footer-links{
    list-style:none;
    padding:0;
    margin:0;
}

.footer-links li{
    margin-bottom:14px;
}

.footer-links a{
    color:#dcdcdc;
    transition:.35s;
}

.footer-links a:hover{
    color:var(--secondary);
    padding-left:8px;
}

.footer-social{
    display:flex;
    gap:15px;
}

.footer-social a{
    width:45px;
    height:45px;
    border-radius:50%;
    background:rgba(255,255,255,.08);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:.35s;
}

.footer-social a:hover{
    background:var(--secondary);
    color:#000;
}

.footer-bottom{
    margin-top:60px;
    padding:25px 0;
    border-top:1px solid rgba(255,255,255,.12);
    text-align:center;
    font-size:15px;
}

/*==================================================
 WHATSAPP FLOAT
==================================================*/

.whatsapp-float{
    position:fixed;
    right:25px;
    bottom:95px;
    width:60px;
    height:60px;
    border-radius:50%;
    background:#25D366;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:30px;
    z-index:999;
    box-shadow:0 10px 25px rgba(0,0,0,.25);
    transition:.35s;
}

.whatsapp-float:hover{
    transform:scale(1.1);
    color:#fff;
}

/*==================================================
 BACK TO TOP
==================================================*/

.back-to-top{
    position:fixed;
    right:25px;
    bottom:25px;
    width:55px;
    height:55px;
    border:none;
    border-radius:50%;
    background:var(--primary);
    color:#fff;
    cursor:pointer;
    font-size:18px;
    opacity:0;
    visibility:hidden;
    transition:.35s;
    z-index:999;
    box-shadow:0 10px 25px rgba(0,0,0,.25);
}

.back-to-top.active{
    opacity:1;
    visibility:visible;
}

.back-to-top:hover{
    background:var(--secondary);
    color:#000;
}

/*==================================================
 UTILITY CLASSES
==================================================*/

.shadow-card{
    box-shadow:0 15px 35px rgba(0,0,0,.08);
}

.rounded-xl{
    border-radius:20px;
}

.text-primary-custom{
    color:var(--primary);
}

.bg-primary-custom{
    background:var(--primary);
}

.bg-secondary-custom{
    background:var(--secondary);
}

/*==================================================
 ANIMATIONS
==================================================*/

.fade-up{
    animation:fadeUp .8s ease both;
}

@keyframes fadeUp{

0%{
    opacity:0;
    transform:translateY(40px);
}

100%{
    opacity:1;
    transform:translateY(0);
}

}

.zoom-in{
    animation:zoomIn .8s ease both;
}

@keyframes zoomIn{

0%{
    transform:scale(.9);
    opacity:0;
}

100%{
    transform:scale(1);
    opacity:1;
}

}

/*==================================================
 RESPONSIVE
==================================================*/

@media(max-width:991px){

.contact-info{
    margin-bottom:35px;
}

.footer-section{
    text-align:center;
}

.footer-social,
.social-links{
    justify-content:center;
}

.info-box{
    flex-direction:column;
    align-items:center;
    text-align:center;
}

.info-box i{
    margin-right:0;
    margin-bottom:15px;
}

}

@media(max-width:576px){

.contact-form,
.contact-info{
    padding:30px 20px;
}

.footer-title{
    font-size:24px;
}

.footer-heading{
    font-size:18px;
}

.whatsapp-float{
    width:55px;
    height:55px;
    font-size:26px;
}

.back-to-top{
    width:50px;
    height:50px;
}

}