/*==========================
 GOOGLE FONT
==========================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
    scroll-behavior:smooth;
}


body{
    background:#f5f7fb;
    color:#333;
    line-height:1.7;
}


/*==========================
 HEADER
==========================*/

header{

    background:
    linear-gradient(rgba(0,25,70,.85),rgba(0,35,90,.85)),
    url("https://images.unsplash.com/photo-1503387762-592deb58ef4e?auto=format&fit=crop&w=1600&q=80");

    background-size:cover;
    background-position:center;
    min-height:100vh;

}



/*==========================
 NAVBAR
==========================*/

.navbar{

    width:100%;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:18px 8%;

    position:fixed;
    top:0;
    left:0;

    background:rgba(0,0,0,.45);
    backdrop-filter:blur(10px);

    z-index:999;

}



/*==========================
 LOGO
==========================*/


.logo{

    display:flex;
    align-items:center;
    gap:15px;

}


.logo-circle{

    width:65px;
    height:65px;

    border-radius:50%;
    overflow:hidden;

    background:#fff;

    display:flex;
    justify-content:center;
    align-items:center;

    box-shadow:0 3px 12px rgba(0,0,0,.3);

}


.logo-circle img{

    width:100%;
    height:100%;

    object-fit:contain;

    padding:5px;

}



.logo-text h2{

    margin:0;

    color:#ffffff;

    font-size:22px;

    font-weight:800;

    letter-spacing:1px;

    line-height:1.2;

    text-transform:uppercase;

}



.logo-text p{

    margin:3px 0 0;

    color:#ffffff;

    font-size:14px;

    font-weight:600;

    letter-spacing:.5px;

}



/*==========================
 NAV LINKS
==========================*/


.navbar ul{

    display:flex;
    list-style:none;

}


.navbar ul li{

    margin-left:25px;

}


.navbar ul li a{

    color:#fff;

    text-decoration:none;

    font-weight:500;

    transition:.3s;

}


.navbar ul li a:hover{

    color:#ffb400;

}



/*==========================
 BUTTONS
==========================*/


.btn{

    display:inline-block;

    padding:13px 30px;

    background:#ffb400;

    color:#001b4d;

    border-radius:6px;

    text-decoration:none;

    font-weight:600;

    transition:.3s;

}


.btn:hover{

    background:#fff;

    transform:translateY(-3px);

}



.btn2{

    display:inline-block;

    padding:13px 30px;

    background:#25D366;

    color:#fff;

    border-radius:6px;

    text-decoration:none;

    font-weight:600;

    transition:.3s;

}


.btn2:hover{

    transform:translateY(-3px);

}



/*==========================
 HERO
==========================*/


.hero{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:60px;

    padding:170px 8% 80px;

}



.hero-text{

    flex:1;

    color:#fff;

}



.hero-text h1{

    font-size:56px;

    line-height:1.2;

    margin-bottom:20px;

}



.hero-text p{

    font-size:18px;

    margin-bottom:30px;

}



.hero-buttons{

    display:flex;

    gap:15px;

    flex-wrap:wrap;

}



.hero-image{

    flex:1;

    text-align:center;

}



.hero-image img{

    width:100%;

    max-width:550px;

    border-radius:20px;

    box-shadow:0 20px 50px rgba(0,0,0,.35);

}



/*==========================
 SECTIONS
==========================*/


section{

    padding:90px 8%;

}



.section-title{

    text-align:center;

    margin-bottom:50px;

}


.section-title h2{

    color:#003d99;

    font-size:42px;

}



/*==========================
 ABOUT
==========================*/


.about p{

    max-width:1000px;

    margin:auto;

    text-align:center;

    font-size:18px;

}



/*==========================
 SERVICES
==========================*/


.service-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

    gap:30px;

}



.card{

    background:#fff;

    border-radius:15px;

    padding:35px;

    text-align:center;

    transition:.35s;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

}



.card:hover{

    transform:translateY(-10px);

}



.card i{

    font-size:45px;

    color:#ff9800;

    margin-bottom:20px;

}



.card h3{

    color:#003d99;

    margin-bottom:15px;

}



/*==========================
 PORTFOLIO
==========================*/

/*==========================
 PORTFOLIO SECTION
==========================*/

.portfolio{
    background:#f5f7fb;
}


.portfolio-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

    gap:35px;

}



/* Project Card */

.project{

    background:#ffffff;

    border-radius:15px;

    overflow:hidden;

    transition:.35s;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    padding-bottom:20px;

}



.project:hover{

    transform:translateY(-8px);

    box-shadow:0 15px 35px rgba(0,0,0,.15);

}



/* Full Image Display */

.project img{

    width:100%;

    height:350px;

    object-fit:contain;

    background:#ffffff;

    padding:15px;

    display:block;

}



/* Project Title */

.project h3{

    color:#003d99;

    font-size:22px;

    font-weight:600;

    padding:20px 20px 10px;

}



/* Project Description */

.project p{

    color:#555;

    font-size:16px;

    line-height:1.7;

    padding:0 20px;

}



/* Mobile Responsive */

@media(max-width:768px){


.portfolio-grid{

    grid-template-columns:1fr;

}


.project img{

    height:250px;

}


.project h3{

    font-size:20px;

}


}
/*==========================
 FOOTER
==========================*/


footer{

    background:#00173d;

    color:#fff;

    text-align:center;

    padding:25px;

}



/*==========================
 RESPONSIVE
==========================*/


@media(max-width:992px){


.hero{

    flex-direction:column;

    text-align:center;

}


.hero-text h1{

    font-size:42px;

}


.navbar{

    flex-direction:column;

    gap:15px;

}


.navbar ul{

    flex-wrap:wrap;

    justify-content:center;

}


}



@media(max-width:768px){


.logo-text h2{

    font-size:18px;

}


.logo-text p{

    font-size:12px;

}


.hero-text h1{

    font-size:34px;

}


.section-title h2{

    font-size:32px;

}


.btn,
.btn2{

    width:100%;

    text-align:center;

}


.hero-buttons{

    justify-content:center;

}


}


/*==========================
 ABOUT SECTION
==========================*/

.about-content{
    max-width:1000px;
    margin:auto;
}


.about-content p{
    font-size:17px;
    line-height:1.9;
    margin-bottom:25px;
    text-align:justify;
    color:#444;
}


.about-content strong{
    color:#003d99;
    font-weight:600;
}

/*==========================
 CONTACT SECTION CENTER
==========================*/

.contact{

    background:#003d99;

    color:#fff;

    text-align:center;

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

}


.contact .section-title h2{

    color:#fff;

}


.contact h3{

    font-size:28px;

    margin-bottom:25px;

}


.contact p{

    margin:12px 0;

    font-size:18px;

    display:flex;

    justify-content:center;

    align-items:center;

    gap:10px;

}


.contact i{

    color:#ffb400;

    font-size:20px;

}


.contact .btn{

    margin-top:25px;

    display:inline-block;

}


/* Footer */

footer{

    background:#00173d;

    color:#fff;

    text-align:center;

    padding:25px;

}
