/*=========================
RESET
=========================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    text-decoration:none;
    list-style:none;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Poppins',sans-serif;
    background:#07111c;
    color:#fff;
    overflow-x:hidden;
}

img{
    width:100%;
    display:block;
}

.container{
    width:84%;
    max-width:1600px;
    margin:auto;
}

/*=========================
COLORS
=========================*/

:root{

--gold:#c79b43;
--dark:#07111c;
--black:#02060b;
--white:#fff;
--gray:#c7c7c7;

}

/*=========================
BUTTONS
=========================*/

.gold-btn{

display:inline-block;
padding:15px 35px;
background:var(--gold);
color:#fff;
font-weight:600;
transition:.4s;

}

.gold-btn:hover{

background:#e0b157;
transform:translateY(-3px);

}

/*=========================
HEADER
=========================*/




header>*{

position:relative;
z-index:2;

}

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

.fixed-nav {
    position: fixed;
}

.nox-fixed {
    background: #06101a !important;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.navbar{

top:0;
left:0;
width:100%;
height:90px;

padding:0 8%;

display:flex;
justify-content:space-between;
align-items:center;

z-index:999;

transition:.35s;

}

.navbar.sticky{

background:#07111c;

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

}

.nav-links{

display:flex;
gap:30px;

}

.nav-links li {
    position: relative;
}

.nav-links li a{

color:#fff;

transition:.3s;

}

.nav-links li a:hover{

color:#c79b43;

}

.menu-btn{

display:none;

cursor:pointer;

}

.nav-links{

display:flex;
gap:28px;

}

.sub-menu {
background: black;
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 220px;

    list-style: none;
    padding: 0;
    margin: 0;
    box-shadow: 0 5px 15px rgba(0,0,0,.15);
    z-index: 999;
}

.sub-menu li a {
    display: block;
    padding: 12px 18px;
    color: #333;
    text-decoration: none;
}

.nav-links li:hover > .sub-menu {
    display: block;
}

.sub-menu li:hover {
    background: #f5f5f5;
}

.menu-btn span{

display:block;

width:30px;

height:3px;

background:#fff;

margin:6px 0;

transition:.35s;

}

@media(max-width:992px){

.nav-links{

position:fixed;

top:90px;

left:-100%;

width:100%;

background:#07111c;

display:flex;

flex-direction:column;

padding:40px 0;

text-align:center;

transition:.4s;

}

.nav-links.active{

left:0;

}

.menu-btn{

display:block;

}

.nav-btn{

display:none;

}

}

.menu-btn.open span:nth-child(1){

transform:rotate(45deg) translate(7px,6px);

}

.menu-btn.open span:nth-child(2){

opacity:0;

}

.menu-btn.open span:nth-child(3){

transform:rotate(-45deg) translate(7px,-6px);

}


@media(max-width:992px){

.nav-links{

display:none;

}

.nav-links.active{

display:flex;

position:fixed;

top:90px;
left:0;

width:100%;
height:calc(100vh - 90px);

background:#07111c;

flex-direction:column;

justify-content:flex-start;

align-items:center;

padding-top:50px;

}

}

.logo h2{

font-size:28px;
color:var(--gold);
font-weight:700;

}

.logo span{

font-size:13px;
color:#ddd;

}



.navbar ul li a{

color:#fff;
font-size:15px;
transition:.3s;

}

.navbar ul li a:hover{

color:var(--gold);

}

.nav-btn{

padding:12px 28px;
border:1px solid var(--gold);
color:var(--gold);
transition:.4s;

}

.nav-btn:hover{

background:var(--gold);
color:#fff;

}

/*=========================
HERO
=========================*/

.hero{

height:100vh;
display:flex;
align-items:center;
padding-left:8%;
background:url("../images/hero.jpg") center center/cover no-repeat;
position:relative;

}

.overlay {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .55);
}

.hero-content{
    z-index: 1;
max-width:650px;

}

.hero h1{

font-size:82px;
font-weight:800;
line-height:90px;
margin-bottom:20px;

}

.hero h3{

font-size:34px;
color:var(--gold);
margin-bottom:30px;

}

.hero p{

font-size:20px;
line-height:36px;
color:#ddd;
margin-bottom:45px;

}

.hero-buttons{

display:flex;
gap:25px;
align-items:center;

}

.play-btn{

display:flex;
align-items:center;
gap:12px;
font-size:18px;
color:#fff;

}

.play-btn i{

font-size:42px;
color:var(--gold);

}

/*=========================
STATISTICS
=========================*/

.stats{
    border-top: 2px solid rgba(255, 255, 255, .08);
background:#07111c;
display:grid;
grid-template-columns:repeat(4,1fr);

}

.stats .box{

padding:45px 20px;
text-align:center;
border-right:1px solid rgba(255,255,255,.08);

}

.stats .box:last-child{

border-right:none;

}

.stats h2{

font-size:46px;
color:var(--gold);
margin-bottom:15px;

}

.stats p{

font-size:18px;
color:#ddd;

}

.stats .box svg{
    width:48px;
    height:48px;
    color:#c79b43;
    stroke-width:1.6;
    margin-bottom:18px;
}

.stats .box{
    display:flex;
    flex-direction:column;
    align-items:center;
}


/*=========================
SCROLLBAR
=========================*/

::-webkit-scrollbar{

width:10px;

}

::-webkit-scrollbar-thumb{

background:var(--gold);

}

::-webkit-scrollbar-track{

background:#08111d;

}

/*====================================
ABOUT
====================================*/

.about{

    width:100%;
    display:grid;
    grid-template-columns: 57% 43%;
    align-items:stretch;
    background:#fff;

}

.about-text{

    padding:90px 70px 90px 9%;
    display:flex;
    flex-direction:column;
    justify-content:center;

}

.about-image img{

    width:100%;
    height:100%;
    object-fit:cover;
    display:block;

}

.about span{

    color:#c79b43;
    font-size:14px;
    font-weight:600;
    letter-spacing:2px;
    margin-bottom:20px;

}

.about h2{

    font-size:48px;
    line-height:58px;
    color:#111;
    margin-bottom:25px;

}

.about p{

    color:#555;
    line-height:32px;
    margin-bottom:35px;

}

.about a{

    color:#111;
    font-weight:600;
    transition:.3s;

}

.about a:hover{

    color:#c79b43;
    padding-left:10px;

}

/*====================================
VALUES
====================================*/

.values{
    background:#07111c;
    padding:100px 8%;
    text-align:center;
}

.values h2{
    color:var(--gold);
    font-size:42px;
    margin-bottom:60px;
}

.value-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:25px;
}

.value-grid .item{
    border:1px solid rgba(255,255,255,.08);
    padding:45px 25px;
    transition:.35s;
}

.value-grid .item:hover{
    background:#0d1a28;
    transform:translateY(-8px);
}

.value-grid i{
    font-size:46px;
    color:var(--gold);
    margin-bottom:25px;
}

.value-grid h4{
    margin-bottom:15px;
    font-size:22px;
}

.value-grid p{
    color:#cfcfcf;
    font-size:15px;
    line-height:28px;
}

/*====================================
SERVICES
====================================*/

.services{
    background:#fff;
    color:#111;
    padding:110px 0;
}

.services h2{
    text-align:center;
    font-size:48px;
    margin-bottom:70px;
    position:relative;
}

.services h2::after{
    content:"";
    width:90px;
    height:3px;
    background:var(--gold);
    position:absolute;
    left:50%;
    bottom:-18px;
    transform:translateX(-50%);
}

.service-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:35px;
}

.service-grid a {
    color: #111;
}

.service-grid .card{
    border:1px solid #ececec;
    background:#fff;
    padding:55px 35px;
    text-align:center;
    transition:.35s;
}

.service-grid .card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 40px rgba(0,0,0,.08);
}

.service-grid i{
    font-size:52px;
    color:var(--gold);
    margin-bottom:30px;
}

.service-grid h3{
    font-size:24px;
    margin-bottom:18px;
}

.service-grid p{
    color:#666;
    line-height:30px;
    font-size:16px;
}

/*====================================
ANIMATION
====================================*/

.about,
.values,
.services{
    animation:fadeUp .8s ease;
}

@keyframes fadeUp{

    from{
        opacity:0;
        transform:translateY(40px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}


/*====================================
PROJECTS
====================================*/

.projects{
    background:#07111c;
    padding:110px 8%;
    text-align:center;
}

.projects h2{
    font-size:46px;
    color:#fff;
    margin-bottom:45px;
}

.filters{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:15px;
    margin-bottom:50px;
}

.filters button{
    padding:12px 28px;
    border:1px solid var(--gold);
    background:transparent;
    color:#fff;
    cursor:pointer;
    transition:.3s;
}

.filters button:hover,
.filters .active{
    background:var(--gold);
    color:#fff;
}

.project-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.project{
    overflow:hidden;
    background:#0d1a28;
    border-radius:6px;

}

.project{
    transition: .4s ease;
}

.project.hide{
    opacity:0;
    transform:scale(.8);
}

.project img{
    height:260px;
    object-fit:cover;
    transition:.5s;
}

.project:hover img{
    transform:scale(1.08);
}

.project h3{
    padding:25px;
    font-size:22px;
}

.center-btn{
    margin-top:55px;
}

/*====================================
WHY US
====================================*/

.why-us{

    background:#07111c;
    padding:90px 7%;
    text-align:center;
border-top: 1px solid rgba(255, 255, 255, .08);
}

.why-us h5{

    color:#c79b43;
    font-size:18px;
    margin-bottom:50px;
    letter-spacing:1px;

}

.why-grid{

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

}

.why-card{

    padding:35px 18px;
    border-left:1px solid rgba(255,255,255,.08);
    transition:.35s;

}

.why-card:last-child{

    border-right:1px solid rgba(255,255,255,.08);

}

.why-card:hover{

    background:#0c1825;

}

.why-card i{

    font-size:42px;
    color:#c79b43;
    margin-bottom:22px;

}

.why-card h3{

    color:#fff;
    font-size:16px;
    margin-bottom:14px;

}

.why-card p{

    color:#bdbdbd;
    font-size:14px;
    line-height:24px;

}

@media(max-width:992px){

.why-grid{

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

}

}

@media(max-width:576px){

.why-grid{

grid-template-columns:1fr;

}

}

/*====================================
QUOTE
====================================*/

.quote-section{

    position:relative;

    width:100%;
    height:520px;

    background:url("../images/banner.jpg") center center/cover no-repeat;

    display:flex;
    align-items:center;

}

.quote-overlay{

    position:absolute;

    inset:0;

    background:rgba(3,9,18,.45);

}

.quote-content{

    position:relative;

    z-index:2;

    width:500px;

    margin-left:8%;

}

.quote-icon{

    color:#c79b43;

    font-size:34px;

    margin-bottom:25px;

}

.quote-content h2{

    color: #fff;
    font-size: 22px;
    font-weight: 500;
    line-height: 38px;
    margin-bottom: 45px;

}

.quote-content h3{

    color:#c79b43;

    font-size:26px;

    margin-bottom:8px;

}

.quote-content span{

    color:#d8b067;

    font-size:20px;

}

@media(max-width:992px){

.quote-section{

height:420px;

}

.quote-content{

width:90%;
margin:auto;

}

.quote-content h2{

font-size:30px;
line-height:48px;

}

}

@media(max-width:576px){

.quote-section{

height:360px;

}

.quote-content{

padding:0 20px;

}

.quote-content h2{

font-size:24px;
line-height:38px;

}

.quote-content h3{

font-size:20px;

}

.quote-content span{

font-size:16px;

}

}

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

.contact-section{
border-top: 1px solid rgba(255, 255, 255, .08);
    background:#08111d;

    padding:100px 8%;

    display:grid;

    grid-template-columns:1fr 1.2fr;

    gap:70px;

    align-items:center;

}

.contact-left span{

    color:#c79b43;

    font-size:14px;

    letter-spacing:2px;

    font-weight:600;

}

.contact-left h2{

    color:#fff;

font-size: 40px;
    line-height: 50px;

    margin:18px 0 50px;

}

.contact-item{

    display:flex;

    align-items:flex-start;

    gap:18px;

    margin-bottom:35px;

}

.contact-item i{

    color:#c79b43;

    font-size:26px;

    width:35px;

    margin-top:4px;

}

.contact-item h4{

    color:#cfcfcf;

    font-size:15px;

    margin-bottom:6px;

    font-weight:500;

}

.contact-item p{

    color:#fff;

    font-size:17px;

}

.contact-right form{

    display:flex;

    flex-direction:column;

    gap:0;

}

.contact-right input,

.contact-right textarea{

    width:100%;

    background:#121b27;

    border:1px solid rgba(255,255,255,.08);

    color:#fff;

    padding:18px 20px;

    font-size:16px;

    outline:none;

    margin-bottom:12px;

}

.contact-right input::placeholder,

.contact-right textarea::placeholder{

    color:#b9b9b9;

}

.contact-right textarea{

    resize:none;

    height:170px;

}

.contact-right button{

    margin-top:12px;

    height:56px;

    background:#c79b43;

    border:none;

    color:#fff;

    font-size:16px;

    font-weight:600;

    cursor:pointer;

    transition:.35s;

}

.contact-right button:hover{

    background:#d4aa53;

}

@media(max-width:992px){

.contact-section{

grid-template-columns:1fr;

gap:50px;

}

.contact-left h2{

font-size:36px;

line-height:46px;

}

}

@media(max-width:576px){

.contact-section{

padding:70px 20px;

}

.contact-left h2{

font-size:30px;

line-height:40px;

}

.contact-item{

gap:15px;

}

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

footer{
    background:#06101a;
    color:#fff;
border-top: 1px solid rgba(255, 255, 255, .08);
}

.footer-grid{
    width:84%;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:40px;
    padding:80px 0;
}

.footer-grid h2{
    color:var(--gold);
    margin-bottom:20px;
}

.footer-grid h3{
    margin-bottom:20px;
}

.footer-grid a{
    display:block;
    color:#ddd;
    margin:10px 0;
    transition:.3s;
}

.footer-grid a:hover{
    color:var(--gold);
    padding-left:8px;
}

.footer-grid p{
    color:#bbb;
    line-height:28px;
}

.copyright{
    text-align:center;
    padding:25px;
    border-top:1px solid rgba(255,255,255,.08);
    color:#aaa;
}

/*====================================
RESPONSIVE
====================================*/

@media(max-width:992px){

.navbar{
        flex-direction: row;
        height: auto;
        padding: 20px;
        display: flex;
        justify-content: space-between;
        align-items: center;
}

.navbar ul{
    flex-wrap:wrap;
    justify-content:center;
    margin:20px 0;
}

.hero h1{
    font-size:58px;
    line-height:65px;
}

.hero h3{
    font-size:26px;
}

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

.about,
.contact{
    grid-template-columns:1fr;
}

.value-grid{
    grid-template-columns:repeat(2,1fr);
}

.service-grid{
    grid-template-columns:repeat(2,1fr);
}

.project-grid{
    grid-template-columns:repeat(2,1fr);
}

.why-grid{
    grid-template-columns:repeat(2,1fr);
}

.footer-grid{
    grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:768px){

.hero{
    padding:0 25px;
    text-align:center;
}

.hero-buttons{
    justify-content:center;
    flex-direction:column;
}

.hero h1{
    font-size:44px;
    line-height:52px;
}

.hero h3{
    font-size:22px;
}

.about h2,
.services h2,
.projects h2,
.contact h2,
.values h2,
.why h2,
.quote h2{
    font-size:34px;
}

.stats{
    grid-template-columns:1fr;
}

.value-grid,
.service-grid,
.project-grid,
.why-grid,
.footer-grid{
    grid-template-columns:1fr;
}

.about img{
    height:auto;
}

}
.capitalize {
    text-transform: capitalize;
}
.uppercase {
    text-transform: uppercase;
}

.section-banner {
    padding-bottom: 115px;
    padding-top: 130px;
    background-position: 0px -254px;
    background-image: url('../images/breadcrumb.jpg');
}

.padding-tb60 {
    padding: 60px 0;
}

.project-gallery-slick img {
    width: 100%;
    height: 500px;
    object-fit: cover;
}

@media (max-width: 768px) {
    .project-gallery-slick img {
        height: 300px;
    }
}

.project-gallery-slick {
    margin: 0 -10px;
}

.project-gallery-slick .slick-slide {
    padding: 0 10px;
}

.slick-dots li button:before {

    font-size: 8px;
    line-height: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;


    opacity: .25;
    color: #f7f7f7;

}

.slick-dots li.slick-active button:before {
    opacity: .75;
    color: var(--gold);
}