
/*==================================================
            GLOBAL CSS START
==================================================*/

:root{
    --primary:#b8860b;
    --primary-light:#d4a017;
    --dark:#222;
    --white:#fff;
    --light:#f8f8f8;
    --text:#666;
    --transition:.4s ease;
    --shadow:0 10px 25px rgba(0,0,0,.10);
    --shadow-lg:0 15px 35px rgba(0,0,0,.15);
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    overflow-x:hidden;
}

img{
    max-width:100%;
    height:auto;
    display:block;
}

a{
    text-decoration:none;
    transition:var(--transition);
}

ul{
    list-style:none;
    margin:0;
    padding:0;
}

/*==================================================
            GLOBAL CSS END
==================================================*/



/*==================================================
            SPINNER START
==================================================*/

#spinner{
    opacity:0;
    visibility:hidden;
    z-index:99999;
    transition:opacity .5s ease, visibility 0s linear .5s;
}

#spinner.show{
    opacity:1;
    visibility:visible;
    transition:opacity .5s ease, visibility 0s linear;
}

/*==================================================
            SPINNER END
==================================================*/



/*==================================================
            BACK TO TOP START
==================================================*/

.back-to-top{
    position:fixed;
    right:30px;
    bottom:30px;
    z-index:99;
    background:var(--primary);
    color:var(--white);
    transition:var(--transition);
}

.back-to-top:hover{
    background:var(--dark);
    color:var(--white);
}

/*==================================================
            BACK TO TOP END
==================================================*/



/*==================================================
            BUTTONS START
==================================================*/

.btn{
    font-weight:600;
    transition:var(--transition);
}

.btn-square,
.btn-sm-square,
.btn-md-square,
.btn-lg-square,
.btn-xl-square{
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0;
    font-weight:400;
}

.btn-square{
    width:32px;
    height:32px;
}

.btn-sm-square{
    width:34px;
    height:34px;
}

.btn-md-square{
    width:40px;
    height:40px;
}

.btn-lg-square{
    width:46px;
    height:46px;
}

.btn-xl-square{
    width:56px;
    height:56px;
}

/* Primary Button */

.btn.btn-primary{
    background:var(--primary);
    color:var(--white);
    border:none;
}

.btn.btn-primary:hover{
    background:var(--dark);
    color:var(--white);
}

/* Light Button */

.btn.btn-light{
    background:var(--white);
    color:var(--primary);
    border:none;
}

.btn.btn-light:hover{
    background:var(--primary);
    color:var(--white);
}

/*==================================================
            BUTTONS END
==================================================*/



/*==================================================
            HEADER TOP START
==================================================*/

.header-top{
    position:sticky;
    top:0;
    left:0;
    width:100%;
    z-index:9999;
    background:var(--dark);
}

.header-top a{
    color:var(--white);
}

.header-top a:hover{
    color:var(--primary-light);
}

/* Remove Template Shapes */

.header-top::before,
.header-top::after,
.navbar-brand::before,
.navbar-brand::after,
.nav-bar .navbar::before{
    display:none !important;
}

/*==================================================
            HEADER TOP END
==================================================*/

/*==================================================
                NAVBAR START
==================================================*/

.nav-bar{
    position:sticky;
    top:0;
    z-index:1049;
    background:var(--white);
    box-shadow:0 5px 25px rgba(0,0,0,.12);
}

.navbar{
    min-height:85px;
    padding:0;
}

.navbar-brand{
    display:flex;
    align-items:center;
    padding:10px 0;
}

.navbar-brand img{
    height:65px;
    width:auto;
}

.navbar-nav{
    margin:auto;
    gap:18px;
}

.navbar-nav .nav-link{
    position:relative;
    padding:30px 12px !important;
    font-size:16px;
    font-weight:600;
    color:var(--dark) !important;
    transition:var(--transition);
}

/* Gold Underline */

.navbar-nav .nav-link::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:20px;
    width:0;
    height:3px;
    background:var(--primary);
    transform:translateX(-50%);
    transition:var(--transition);
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active{
    color:var(--primary) !important;
}

.navbar-nav .nav-link:hover::after,
.navbar-nav .nav-link.active::after{
    width:70%;
}

/*==================================================
                NAVBAR END
==================================================*/



/*==================================================
            MOBILE NAVBAR START
==================================================*/

@media (max-width:991px){

    .navbar{
        min-height:75px;
    }

    .navbar-brand{
        display:flex !important;
    }

    .navbar-brand img{
        height:50px;
    }

    .navbar-brand-2{
        display:none !important;
    }

    .navbar-toggler{
        border:none;
        box-shadow:none !important;
        padding:6px 10px;
    }

    .navbar-toggler:focus{
        box-shadow:none;
    }

    .navbar-collapse{
        margin-top:10px;
        padding:20px;
        background:var(--white);
        border-radius:15px;
        box-shadow:0 10px 25px rgba(0,0,0,.10);
    }

    .navbar-nav{
        gap:0;
    }

    .navbar-nav .nav-link{
        padding:12px !important;
        border-bottom:1px solid #f1f1f1;
    }

    .navbar-nav .nav-link:last-child{
        border-bottom:none;
    }

    .navbar-nav .nav-link::after{
        display:none;
    }

}

/*==================================================
            MOBILE NAVBAR END
==================================================*/

/*==================================================
                HERO SECTION START
==================================================*/

.hero-section{
    position:relative;
    display:flex;
    align-items:center;
    width:100%;
    height:700px;
    overflow:hidden;
    background:url("../img/banner1.jpeg") center/cover no-repeat;
}

/* Right Background */

.hero-bg-half-1,
.hero-bg-half-2{
    position:absolute;
    top:0;
    right:0;
    width:58%;
    height:100%;
    background:url("../img/banner2.jpeg") center right/cover no-repeat;
    clip-path:polygon(37% 0%,100% 0%,100% 100%,0% 100%);
    filter:grayscale(10%);
}

/* Decorative Shapes */

.hero-shape-1{
    position:relative;
    width:150px;
    height:50%;
    left:54%;
    background:var(--primary);
    transform:translateY(-50%) skew(-26deg);
}

.hero-shape-1::before{
    content:"";
    position:absolute;
    top:0;
    right:0;
    width:50%;
    height:80%;
    background:var(--dark);
}

.hero-shape-2{
    position:relative;
    right:-43%;
    bottom:0;
    width:150px;
    height:50%;
    z-index:1;
    background:var(--dark);
    transform:translateY(50%) skew(-25deg);
}

.hero-shape-2::after{
    content:"";
    position:absolute;
    right:0;
    bottom:0;
    width:75px;
    height:80%;
    background:var(--primary);
}

/*==================================================
                HERO SECTION END
==================================================*/



/*==================================================
            HEADER CAROUSEL START
==================================================*/

.header-carousel .header-carousel-item{
    position:relative;
    height:700px;
}

.header-carousel .header-carousel-item .carousel-caption{
    position:absolute;
    inset:0;
    display:flex;
    align-items:center;
    width:100%;
    height:100%;
    background:rgba(0,0,0,.20);
    z-index:9;
}

/* Navigation */

.header-carousel .owl-nav .owl-prev,
.header-carousel .owl-nav .owl-next{
    position:absolute;
    bottom:30px;
    width:60px;
    height:60px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:26px;
    background:var(--white);
    color:var(--primary);
    transition:var(--transition);
}

.header-carousel .owl-nav .owl-prev{
    left:0;
}

.header-carousel .owl-nav .owl-next{
    right:0;
}

.header-carousel .owl-nav .owl-prev:hover,
.header-carousel .owl-nav .owl-next:hover{
    background:var(--primary);
    color:var(--white);
}

/*==================================================
            HEADER CAROUSEL END
==================================================*/



/*==================================================
            HERO RESPONSIVE START
==================================================*/

@media (max-width:991px){

    .hero-section,
    .header-carousel .header-carousel-item{
        height:550px;
    }

    .hero-bg-half-1,
    .hero-bg-half-2,
    .hero-shape-1,
    .hero-shape-2{
        display:none;
    }

    .header-carousel .header-carousel-item .carousel-caption{
        padding:45px 20px 20px;
        text-align:center;
        justify-content:center;
    }

    .carousel-caption h1{
        font-size:34px !important;
    }

    .carousel-caption p{
        font-size:15px;
    }
}

@media (max-width:576px){

    .hero-section,
    .header-carousel .header-carousel-item{
        height:500px;
    }

    .carousel-caption h1{
        font-size:28px !important;
    }

    .carousel-caption h4{
        font-size:18px;
    }

    .carousel-caption p{
        font-size:14px;
    }
}

/*==================================================
            HERO RESPONSIVE END
==================================================*/

/*==================================================
            BREADCRUMB START
==================================================*/

.bg-breadcrumb{
    position:relative;
    overflow:hidden;
    padding:60px 0;
    background:
        linear-gradient(rgba(0,0,0,.70), rgba(0,0,0,.70)),
        url("../img/banner-img.jpg") center/cover no-repeat;
    transition:var(--transition);
}

.bg-breadcrumb .breadcrumb{
    position:relative;
}

.bg-breadcrumb .breadcrumb .breadcrumb-item a{
    color:var(--white);
}

/*==================================================
            BREADCRUMB END
==================================================*/



/*==================================================
            HIGHLIGHT SECTION START
==================================================*/

.highlight-section{
    padding:80px 7%;
    background:var(--white);
}

.highlight-container{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
}

.highlight-card{
    background:var(--white);
    padding:40px 25px;
    text-align:center;
    border:1px solid #eee;
    border-radius:15px;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
    transition:var(--transition);
}

.highlight-card:hover{
    transform:translateY(-12px);
    box-shadow:var(--shadow-lg);
}

.icon-box{
    width:70px;
    height:70px;
    margin:auto;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:var(--primary);
    color:var(--white);
    font-size:28px;
}

.highlight-card h2{
    margin-top:25px;
    font-size:42px;
    color:var(--dark);
}

.highlight-card h4{
    margin:10px 0;
    font-size:20px;
    color:var(--primary);
}

.highlight-card p{
    font-size:14px;
    line-height:1.6;
    color:var(--text);
}

/*==================================================
            HIGHLIGHT SECTION END
==================================================*/



/*==================================================
            ABOUT SECTION START
==================================================*/

.about-section{
    padding:90px 0;
    background:var(--white);
}

.section-tag{
    color:var(--primary);
    font-weight:700;
    letter-spacing:2px;
}

.about-content h2{
    margin:20px 0;
    font-size:45px;
    line-height:1.3;
    color:var(--dark);
}

.about-desc{
    font-size:16px;
    line-height:1.8;
    color:var(--text);
}

.about-feature{
    display:flex;
    gap:25px;
    margin:35px 0;
}

.feature-box{
    display:flex;
    align-items:center;
    gap:15px;
    width:50%;
}

.feature-box i{
    font-size:40px;
    color:var(--primary);
}

.feature-box h4{
    margin:0;
    font-size:18px;
    color:var(--dark);
}

.about-list p{
    font-size:17px;
    color:#444;
}

.about-list i{
    margin-right:10px;
    color:var(--primary);
}

.about-btn{
    display:inline-block;
    margin-top:20px;
    padding:14px 35px;
    border-radius:30px;
    background:var(--primary);
    color:var(--white);
    font-weight:600;
    transition:var(--transition);
}

.about-btn:hover{
    background:var(--dark);
    color:var(--white);
}

/*==================================================
            ABOUT IMAGE START
==================================================*/

.about-image{
    position:relative;
}

.about-image > img{
    width:100%;
    height:550px;
    object-fit:cover;
    border-radius:20px;
}

.experience-card{
    position:absolute;
    left:0;
    bottom:0;
    width:50%;
    padding:30px;
    background:var(--primary);
    color:var(--white);
    border-radius:0 20px 0 20px;
}

.experience-card h3{
    margin:0;
    font-size:55px;
}

.experience-card p{
    font-size:18px;
}

.small-image{
    position:absolute;
    right:-20px;
    bottom:0;
    width:45%;
    padding:15px;
    background:var(--white);
    border-radius:20px 0 20px 0;
}

.small-image img{
    width:100%;
    border-radius:15px;
}

/*==================================================
            ABOUT IMAGE END
==================================================*/



/*==================================================
            ABOUT RESPONSIVE START
==================================================*/

@media (max-width:991px){

    .highlight-container{
        grid-template-columns:repeat(2,1fr);
    }

    .about-section{
        padding:60px 0;
    }

    .about-content{
        margin-bottom:40px;
    }

    .about-content h2{
        font-size:35px;
    }

    .about-feature{
        flex-direction:column;
        gap:20px;
    }

    .feature-box{
        width:100%;
    }

    .about-image > img{
        height:420px;
    }

    .experience-card{
        width:65%;
        padding:20px;
    }

    .experience-card h3{
        font-size:38px;
    }

    .small-image{
        position:relative;
        right:0;
        width:100%;
        margin-top:20px;
    }
}

@media (max-width:576px){

    .highlight-container{
        grid-template-columns:1fr;
    }

    .about-content h2{
        font-size:30px;
    }

    .experience-card h3{
        font-size:34px;
    }
}

/*==================================================
            ABOUT RESPONSIVE END
==================================================*/

/*==================================================
            SERVICE SECTION START
==================================================*/

.service .nav .nav-item{
    width:75%;
    background:#f8f8f8;
    border:1px solid var(--primary);
    border-radius:10px;
    overflow:hidden;
    transition:var(--transition);
}

.service .nav .nav-item:hover{
    transform:translateX(8px);
}

.service .nav .nav-item a{
    display:flex;
    justify-content:center;
    align-items:center;
    padding:18px;
    text-decoration:none;
}

.service .nav-item a span{
    color:var(--dark);
    font-weight:600;
}

.service .nav-item a.active{
    background:var(--primary);
}

.service .nav-item a.active span{
    color:var(--white);
}

/* Owl */

.owl-stage-outer{
    margin-right:-1px;
}

.service-carousel .owl-nav .owl-prev,
.service-carousel .owl-nav .owl-next{
    position:absolute;
    padding:10px 35px;
    border-radius:30px;
    border:1px solid var(--primary);
    background:var(--white);
    color:var(--dark);
    transition:var(--transition);
}

.service-carousel .owl-nav .owl-prev:hover,
.service-carousel .owl-nav .owl-next:hover{
    background:var(--primary);
    color:var(--white);
}

/* Desktop */

@media(min-width:992px){

.service-carousel .owl-nav .owl-prev{
    top:0;
    left:-115px;
}

.service-carousel .owl-nav .owl-next{
    bottom:0;
    left:-115px;
}

}

/* Mobile */

@media(max-width:991px){

.owl-stage-outer{
    margin-bottom:70px;
}

.service .nav{
    display:flex;
    justify-content:center;
}

.service .nav .nav-item{
    width:100%;
}

.service-carousel .owl-nav .owl-prev{
    left:0;
    bottom:-70px;
}

.service-carousel .owl-nav .owl-next{
    right:0;
    bottom:-70px;
}

}

/*==================================================
            SERVICE SECTION END
==================================================*/



/*==================================================
            WHY CHOOSE US START
==================================================*/

.why-section{
    padding:90px 7%;
    background:#f8f8f8;
}

.why-title{
    text-align:center;
    margin-bottom:50px;
}

.why-title span{
    color:var(--primary);
    font-weight:700;
    letter-spacing:2px;
}

.why-title h2{
    margin:15px 0;
    font-size:40px;
    color:var(--dark);
}

.why-title p{
    color:var(--text);
}

.why-container{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
}

.why-card{
    padding:35px 25px;
    text-align:center;
    background:var(--white);
    border-radius:18px;
    border-bottom:4px solid transparent;
    box-shadow:var(--shadow);
    transition:var(--transition);
}

.why-card:hover{
    transform:translateY(-12px);
    border-bottom-color:var(--primary);
    box-shadow:var(--shadow-lg);
}

.why-icon{
    width:75px;
    height:75px;
    margin:auto;
    display:flex;
    justify-content:center;
    align-items:center;
    border-radius:50%;
    background:var(--primary);
    color:var(--white);
    font-size:30px;
    transition:.6s;
}

.why-card:hover .why-icon{
    transform:rotateY(360deg);
}

.why-card h3{
    margin:20px 0 12px;
    color:var(--dark);
    font-size:22px;
}

.why-card p{
    font-size:15px;
    line-height:1.7;
    color:var(--text);
}

/*==================================================
            WHY CHOOSE US END
==================================================*/



/*==================================================
            SECTION BADGE START
==================================================*/

.section-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    margin:0 auto 20px;
    padding:10px 22px;
    width:fit-content;
    background:#fff7e8;
    border:2px solid var(--primary);
    border-radius:50px;
    color:var(--primary);
    font-size:16px;
    font-weight:700;
    letter-spacing:1px;
    box-shadow:0 0 12px rgba(184,134,11,.25);
    transition:var(--transition);
    overflow:hidden;
    position:relative;
}

.section-badge::before{
    content:"";
    position:absolute;
    inset:0;
    left:-100%;
    background:linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,.6),
        transparent
    );
    transition:.6s;
}

.section-badge:hover::before{
    left:100%;
}

.section-badge:hover{
    background:var(--primary);
    color:var(--white);
}

.section-badge i{
    font-size:18px;
}

/*==================================================
            SECTION BADGE END
==================================================*/



/*==================================================
            RESPONSIVE START
==================================================*/

@media(max-width:992px){

.why-container{
    grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:576px){

.why-container{
    grid-template-columns:1fr;
}

.why-title h2{
    font-size:30px;
}

.section-badge{
    font-size:14px;
    padding:8px 16px;
}

}

/*==================================================
            RESPONSIVE END
==================================================*/

/*==================================================
            TEAM SECTION START
==================================================*/

.team .team-item{
    transition:var(--transition);
}

.team .team-item .team-img{
    position:relative;
    overflow:hidden;
    border-radius:15px;
}

.team .team-item .team-img img{
    width:100%;
    transition:.5s;
}

.team .team-item:hover .team-img img{
    transform:scale(1.1);
}

.team .team-item .team-img::after{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:0;
    background:rgba(184,134,11,.25);
    transition:.5s;
    z-index:1;
}

.team .team-item:hover .team-img::after{
    height:100%;
}

.team-icon{
    position:absolute;
    right:-100%;
    bottom:20px;
    z-index:2;
    transition:.5s;
}

.team .team-item:hover .team-icon{
    right:25px;
}

.team-content{
    background:#fff;
    border-radius:0 0 15px 15px;
    transition:.4s;
}

.team .team-item:hover .team-content{
    box-shadow:0 10px 30px rgba(0,0,0,.15);
}

/*==================================================
            TEAM SECTION END
==================================================*/



/*==================================================
         TESTIMONIAL SECTION START
==================================================*/

.testimonial-section{
    padding:100px 0;
    background:#fafafa;
}

.testimonial-card{
    position:relative;
    height:100%;
    padding:35px;
    background:#fff;
    border:1px solid #eee;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    transition:.4s;
}

.testimonial-card:hover{
    transform:translateY(-10px);
}

.testimonial-card.active{
    background:var(--primary);
    color:#fff;
}

.quote-icon{
    width:65px;
    height:65px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:25px;
    border-radius:50%;
    background:var(--primary);
    color:#fff;
    font-size:24px;
}

.review{
    margin-bottom:30px;
    line-height:1.8;
}

.client{
    display:flex;
    align-items:center;
    gap:15px;
}

.client img{
    width:65px;
    height:65px;
    border-radius:50%;
    object-fit:cover;
    border:3px solid var(--primary);
}

.client h5{
    margin:0;
    font-weight:700;
}

.client span{
    color:#888;
    font-size:14px;
}

.testimonial-card.active .client span{
    color:#eee;
}

.testimonial-stars{
    margin-top:20px;
    color:var(--primary);
}

/*==================================================
         TESTIMONIAL SECTION END
==================================================*/



/*==================================================
        FEEDBACK FORM SECTION START
==================================================*/

.feedback-section{
    padding:100px 8%;
    background:#f8f8f8;
}

.feedback-container{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:40px;
}

.feedback-left,
.feedback-right{
    flex:1;
}

.feedback-left{
    min-width:320px;
}

.feedback-right{
    min-width:340px;
    padding:40px;
    background:#fff;
    border-top:6px solid var(--primary);
    border-radius:25px;
    box-shadow:0 20px 40px rgba(0,0,0,.08);
}

.feedback-tag{
    display:inline-block;
    padding:8px 18px;
    margin-bottom:20px;
    border-radius:50px;
    background:var(--primary);
    color:#fff;
    font-size:14px;
    font-weight:600;
}

.feedback-left h2{
    margin-bottom:20px;
    font-size:45px;
    color:#222;
}

.feedback-left p{
    margin-bottom:35px;
    color:#666;
    line-height:1.8;
}

.feedback-right form{
    display:flex;
    flex-direction:column;
    gap:20px;
}

.input-group{
    display:flex;
    gap:20px;
}

.input-group input,
.input-group select{
    flex:1;
}

.feedback-right input,
.feedback-right select,
.feedback-right textarea{
    width:100%;
    padding:15px;
    border:1px solid #ddd;
    border-radius:12px;
    outline:none;
    transition:.3s;
}

.feedback-right input:focus,
.feedback-right select:focus,
.feedback-right textarea:focus{
    border-color:var(--primary);
    box-shadow:0 0 10px rgba(184,134,11,.20);
}

/*==================================================
        FEEDBACK FORM SECTION END
==================================================*/



/*==================================================
              RESPONSIVE START
==================================================*/

@media(max-width:991px){

.feedback-container{
    flex-direction:column;
}

.feedback-left h2{
    font-size:34px;
}

.feedback-right{
    padding:25px;
}

.input-group{
    flex-direction:column;
}

}

@media(max-width:576px){

.team .team-item{
    margin-bottom:25px;
}

.client{
    flex-direction:column;
    text-align:center;
}

.feedback-left h2{
    font-size:28px;
}

.feedback-right{
    padding:20px;
}

}

/*==================================================
              RESPONSIVE END
==================================================*/

/*==================================================
            CONSTRUCTION GALLERY START
==================================================*/

.construction-gallery{
    padding:90px 0;
    background:#f8f8f8;
    overflow:hidden;
}

.section-title{
    text-align:center;
    margin-bottom:45px;
}

.section-title h2{
    font-size:40px;
    font-weight:700;
    color:var(--dark);
    margin-bottom:12px;
}

.section-title p{
    max-width:650px;
    margin:auto;
    color:var(--text);
}

/*==================================================
            GALLERY SLIDER
==================================================*/

.gallery-slider{
    position:relative;
    overflow:hidden;
}

.gallery-track{
    display:flex;
    gap:25px;
    width:max-content;
    animation:scrollGallery 35s linear infinite;
}

.gallery-track:hover{
    animation-play-state:paused;
}

.gallery-track img{
    width:380px;
    height:260px;
    object-fit:cover;
    border-radius:18px;
    box-shadow:0 10px 25px rgba(0,0,0,.18);
    transition:.4s;
}

.gallery-track img:hover{
    transform:scale(1.08);
}

@keyframes scrollGallery{

    0%{
        transform:translateX(0);
    }

    100%{
        transform:translateX(calc(-405px * 8));
    }

}

/*==================================================
            GALLERY CARDS
==================================================*/

.gallery-card{
    position:relative;
    overflow:hidden;
    border-radius:18px;
    cursor:pointer;
    box-shadow:0 15px 35px rgba(0,0,0,.12);
}

.gallery-card img{
    width:100%;
    height:320px;
    object-fit:cover;
    transition:.6s;
}

.gallery-overlay{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:25px;
    background:linear-gradient(
        to top,
        rgba(0,0,0,.85),
        rgba(0,0,0,.15)
    );
    opacity:0;
    transition:.5s;
}

.gallery-overlay h4,
.gallery-overlay span{
    transform:translateY(30px);
    transition:.5s;
}

.gallery-overlay h4{
    color:#fff;
    font-size:24px;
    margin-bottom:8px;
}

.gallery-overlay span{
    color:var(--primary);
    font-size:15px;
}

.gallery-card:hover img{
    transform:scale(1.12);
}

.gallery-card:hover .gallery-overlay{
    opacity:1;
}

.gallery-card:hover .gallery-overlay h4,
.gallery-card:hover .gallery-overlay span{
    transform:translateY(0);
}

/*==================================================
            CONSTRUCTION GALLERY END
==================================================*/



/*==================================================
            PROJECT SECTION START
==================================================*/

.project-section{
    padding:100px 0;
    background:#f7f7f7;
}

.section-heading{
    text-align:center;
    margin-bottom:50px;
}

.section-heading h2{
    font-size:42px;
    font-weight:700;
    color:var(--dark);
}

.section-heading p{
    color:var(--text);
}

.project-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.project-card{
    position:relative;
    overflow:hidden;
    background:#fff;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.12);
    transition:.4s;
}

.project-card img{
    width:100%;
    height:350px;
    object-fit:cover;
    transition:.6s;
}

.project-content{
    position:absolute;
    left:0;
    bottom:0;
    width:100%;
    padding:25px;
    color:#fff;
    background:linear-gradient(
        transparent,
        rgba(0,0,0,.9)
    );
}

.project-content span{
    color:var(--primary);
    font-size:14px;
    font-weight:600;
}

.project-content h3{
    margin:10px 0;
    font-size:25px;
}

.project-content p{
    color:#ddd;
    font-size:14px;
    margin-bottom:15px;
}

.project-content a{
    color:var(--primary);
    text-decoration:none;
    font-weight:600;
}

.project-card:hover{
    transform:translateY(-10px);
}

.project-card:hover img{
    transform:scale(1.12);
}

/*==================================================
            PROJECT SECTION END
==================================================*/



/*==================================================
            RESPONSIVE START
==================================================*/

@media(max-width:992px){

.gallery-track img{
    width:300px;
    height:210px;
}

.project-grid{
    grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:768px){

.construction-gallery{
    padding:70px 0;
}

.section-title h2,
.section-heading h2{
    font-size:30px;
}

.gallery-track img{
    width:260px;
    height:180px;
}

.gallery-card img{
    height:260px;
}

}

@media(max-width:576px){

.project-grid{
    grid-template-columns:1fr;
}

.section-heading h2{
    font-size:32px;
}

}

/*==================================================
            RESPONSIVE END
==================================================*/

/*==================================================
                FAQ SECTION START
==================================================*/

.faq-section{
    padding:90px 0;
    background:var(--white);
}

.faq-section h2{
    font-size:42px;
    font-weight:700;
    color:var(--dark);
}

.faq-section p{
    color:var(--text);
}

.accordion-item{
    margin-bottom:18px;
    overflow:hidden;
    border:none;
    border-radius:15px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:var(--transition);
}

.accordion-item:hover{
    transform:translateY(-5px);
}

.accordion-button{
    padding:20px;
    font-size:16px;
    font-weight:600;
    color:var(--dark);
    background:var(--white);
    box-shadow:none !important;
}

.accordion-button:not(.collapsed){
    background:var(--primary);
    color:var(--white);
}

.accordion-button:focus{
    box-shadow:none;
}

.accordion-body{
    background:#fafafa;
    color:#555;
    line-height:1.8;
}

/*==================================================
                FAQ SECTION END
==================================================*/



/*==================================================
                FOOTER START
==================================================*/

.footer{
    background:var(--dark);
}

.footer .footer-item h4,
.footer .footer-item h5{
    color:var(--primary-light);
}

.footer .footer-item p{
    color:#ddd;
    line-height:1.8;
}

.footer .footer-item a{
    color:var(--white);
    line-height:35px;
    transition:var(--transition);
}

.footer .footer-item a:hover{
    color:var(--primary-light);
    letter-spacing:1px;
}

.footer .footer-btn a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:var(--primary);
    color:var(--white);
    transition:var(--transition);
}

.footer .footer-btn a:hover{
    background:var(--white);
    color:var(--dark);
}

/*==================================================
                FOOTER END
==================================================*/



/*==================================================
                COPYRIGHT START
==================================================*/

.copyright{
    background:#1a1a1a;
    color:var(--white);
    border-top:1px solid rgba(255,255,255,.10);
}

.copyright a{
    color:var(--primary-light);
    transition:var(--transition);
}

.copyright a:hover{
    color:var(--white);
}

/*==================================================
                COPYRIGHT END
==================================================*/



/*==================================================
                RESPONSIVE START
==================================================*/

@media (max-width:768px){

    .faq-section{
        padding:70px 0;
    }

    .faq-section h2{
        font-size:32px;
    }

    .accordion-button{
        padding:18px;
        font-size:15px;
    }

    .accordion-body{
        font-size:14px;
    }

}

@media (max-width:576px){

    .footer{
        text-align:center;
    }

    .footer .footer-item{
        margin-bottom:30px;
    }

    .faq-section h2{
        font-size:28px;
    }

}

/*==================================================
                RESPONSIVE END
==================================================*/

/*==================================================
            SERVICE PAGE HERO START
==================================================*/

.service-hero{
    position:relative;
    background:#fff;
    padding:100px 0;
}

.hero-image{
    position:relative;
}

.hero-image img{
    width:100%;
    border-radius:25px;
    box-shadow:0 20px 50px rgba(0,0,0,.12);
}

.experience-box{
    position:absolute;
    right:-20px;
    bottom:25px;
    width:180px;
    padding:25px;
    text-align:center;
    border-radius:20px;
    background:var(--primary);
    color:#fff;
    box-shadow:0 20px 40px rgba(184,134,11,.35);
}

.experience-box h2{
    font-size:42px;
    font-weight:700;
    margin-bottom:5px;
}

.hero-feature{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:15px;
}

.feature-item{
    display:flex;
    align-items:center;
    gap:12px;
    font-weight:600;
}

.feature-item i{
    color:var(--primary);
}

/*==================================================
            SERVICE PAGE HERO END
==================================================*/



/*==================================================
            SERVICE CARD START
==================================================*/

.service-card{
    height:100%;
    overflow:hidden;
    border-radius:20px;
    background:#fff;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    transition:.4s;
}

.service-card img{
    width:100%;
    height:250px;
    object-fit:cover;
    transition:.5s;
}

.service-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 45px rgba(184,134,11,.25);
}

.service-card:hover img{
    transform:scale(1.08);
}

.service-content{
    padding:30px;
}

.service-icon{
    width:70px;
    height:70px;
    margin-top:-65px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:18px;
    position:relative;
    background:#fff7e8;
    color:var(--primary);
    font-size:28px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.service-content h4{
    margin:20px 0;
    font-weight:700;
}

.service-content p{
    color:#666;
    line-height:1.8;
}

.service-content ul{
    margin:25px 0;
    padding:0;
    list-style:none;
}

.service-content ul li{
    padding:8px 0;
    border-bottom:1px dashed #ddd;
}

.service-content ul li::before{
    content:"✔";
    margin-right:10px;
    color:var(--primary);
    font-weight:700;
}

.service-btn{
    display:inline-block;
    padding:13px 28px;
    border-radius:50px;
    text-decoration:none;
    background:var(--primary);
    color:#fff;
    transition:.3s;
}

.service-btn:hover{
    background:#111;
    color:#fff;
}

/*==================================================
            SERVICE CARD END
==================================================*/



/*==================================================
            WHY CHOOSE CARD START
==================================================*/

.choose-card{
    height:100%;
    padding:35px;
    text-align:center;
    background:#fff;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    transition:.4s;
}

.choose-card:hover{
    transform:translateY(-10px);
}

.choose-icon{
    width:85px;
    height:85px;
    margin:0 auto 20px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#fff7e8;
    color:var(--primary);
    font-size:34px;
}

.counter-box{
    padding:35px;
    background:#fff;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
}

.counter-box h2{
    font-size:45px;
    font-weight:700;
    color:var(--primary);
}

/*==================================================
            WHY CHOOSE CARD END
==================================================*/



/*==================================================
            PROCESS SECTION START
==================================================*/

.process-card{
    position:relative;
    height:100%;
    padding:35px;
    background:#fff;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    transition:.4s;
}

.process-card:hover{
    transform:translateY(-10px);
}

.process-number{
    position:absolute;
    top:20px;
    right:20px;
    font-size:45px;
    font-weight:700;
    color:#f3e3b4;
}

.process-icon{
    width:80px;
    height:80px;
    margin-bottom:25px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#fff7e8;
    color:var(--primary);
    font-size:32px;
}

/*==================================================
            PROCESS SECTION END
==================================================*/



/*==================================================
            CTA SECTION START
==================================================*/

.quote-card{
    background:#fff;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
}

.cta-banner{
    color:#fff;
    border-radius:20px;
    background:linear-gradient(135deg,#111,#b8860b);
}

/*==================================================
            CTA SECTION END
==================================================*/



/*==================================================
            FINAL RESPONSIVE START
==================================================*/

@media(max-width:991px){

.hero-feature{
    grid-template-columns:1fr;
}

.experience-box{
    position:relative;
    right:0;
    bottom:0;
    width:100%;
    margin-top:20px;
}

.process-number{
    font-size:35px;
}

}

@media(max-width:768px){

.service-content{
    padding:25px;
}

.service-icon{
    margin-top:-55px;
}

.counter-box h2{
    font-size:38px;
}

}

@media(max-width:576px){

.service-hero{
    padding:70px 0;
}

.service-content{
    padding:20px;
}

.service-content h4{
    font-size:20px;
}

.choose-card,
.process-card,
.counter-box{
    padding:25px;
}

.experience-box h2{
    font-size:32px;
}

.process-number{
    font-size:28px;
}

}

/*==================================================
            FINAL RESPONSIVE END
==================================================*/

/*==================================================
        FINAL RESPONSIVE FIX
==================================================*/

/* Tablet */
@media (max-width:991px){

.container{
    padding-left:15px;
    padding-right:15px;
}

img{
    max-width:100%;
    height:auto;
}

.hero-section,
.header-carousel .header-carousel-item{
    height:auto;
    min-height:550px;
}

.display-1,
.display-2,
.display-3,
.display-4,
.display-5{
    font-size:clamp(2rem,5vw,3rem) !important;
}

.section-title h2,
.section-heading h2,
.why-title h2,
.about-content h2,
.faq-section h2{
    font-size:34px;
}

.project-grid,
.highlight-container,
.why-container{
    grid-template-columns:repeat(2,1fr);
}

.footer{
    text-align:center;
}

.footer .footer-item{
    margin-bottom:30px;
}

}

/* Mobile */
@media (max-width:768px){

.project-grid,
.highlight-container,
.why-container{
    grid-template-columns:1fr;
}

.hero-feature{
    grid-template-columns:1fr;
}

.about-feature{
    flex-direction:column;
}

.feature-box{
    width:100%;
}

.team .team-item,
.project-card,
.service-card,
.choose-card,
.process-card{
    margin-bottom:25px;
}

.gallery-track img{
    width:260px;
    height:180px;
}

.gallery-card img{
    height:240px;
}

.experience-box,
.small-image{
    position:relative;
    width:100%;
    right:0;
    bottom:0;
    margin-top:20px;
}

}

/* Small Mobile */
@media (max-width:576px){

body{
    overflow-x:hidden;
}

.container{
    padding-left:12px;
    padding-right:12px;
}

.hero-section{
    min-height:450px;
}

.navbar{
    min-height:70px;
}

.navbar-brand img{
    height:50px;
}

.carousel-caption{
    text-align:center;
    padding:15px;
}

.carousel-caption h1{
    font-size:28px !important;
}

.carousel-caption p{
    font-size:14px;
}

.section-title h2,
.section-heading h2,
.why-title h2,
.about-content h2,
.faq-section h2{
    font-size:28px;
}

.service-content,
.choose-card,
.process-card,
.counter-box,
.feedback-right{
    padding:20px;
}

.testimonial-card{
    padding:25px;
}

.client{
    flex-direction:column;
    text-align:center;
}

.input-group{
    flex-direction:column;
}

iframe{
    width:100%;
}

.back-to-top{
    right:15px;
    bottom:15px;
}

}

/* Extra Small Devices */
@media (max-width:360px){

.carousel-caption h1{
    font-size:24px !important;
}

.section-title h2,
.section-heading h2,
.about-content h2{
    font-size:24px;
}

.service-btn,
.about-btn{
    width:100%;
    text-align:center;
}

}

/*==================================================
            COMMON CARDS START
==================================================*/

/* Highlight Card */

.highlight-card{
    height:100%;
    padding:35px 25px;
    background:#fff;
    border:1px solid #eee;
    border-radius:18px;
    text-align:center;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.4s;
}

.highlight-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 40px rgba(184,134,11,.18);
}

.icon-box{
    width:70px;
    height:70px;
    margin:0 auto 20px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#b8860b;
    color:#fff;
    font-size:28px;
}

.highlight-card h4{
    margin:15px 0;
    font-weight:700;
}

.highlight-card p{
    color:#666;
    line-height:1.8;
}

/* Why Card */

.why-card{
    height:100%;
}

/* Team Card */

.team-item{
    height:100%;
    border-radius:18px;
    overflow:hidden;
    background:#fff;
    box-shadow:0 12px 30px rgba(0,0,0,.08);
    transition:.4s;
}

.team-item:hover{
    transform:translateY(-10px);
}

/* Gallery Card */

.gallery-card{
    height:100%;
    background:#fff;
    border-radius:18px;
    overflow:hidden;
}

/* Project Card */

.project-card{
    height:100%;
}

/* Testimonial Card */

.testimonial-card{
    height:100%;
}

/* Feedback Trust Card */

.trust-box div{
    width:140px;
    min-height:120px;
    padding:20px;
    text-align:center;
    background:#fff;
    border-radius:16px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.4s;
}

.trust-box div:hover{
    transform:translateY(-8px);
}

.trust-box h3{
    color:#b8860b;
    font-size:32px;
    margin-bottom:8px;
}

.trust-box span{
    color:#666;
    font-size:14px;
}

/* Contact Card */

.contact-card{
    height:100%;
    padding:35px;
    background:#fff;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    transition:.4s;
}

.contact-card:hover{
    transform:translateY(-8px);
}

/* Counter Card */

.counter-box{
    transition:.4s;
}

.counter-box:hover{
    transform:translateY(-8px);
}

/*==================================================
            COMMON CARDS END
==================================================*/



/*==================================================
            CARD RESPONSIVE START
==================================================*/

@media(max-width:991px){

.highlight-card,
.why-card,
.team-item,
.gallery-card,
.project-card,
.service-card,
.choose-card,
.process-card,
.testimonial-card,
.contact-card,
.counter-box{

    margin-bottom:25px;
}

.trust-box{
    justify-content:center;
}

}

@media(max-width:768px){

.trust-box{
    gap:15px;
}

.trust-box div{
    width:45%;
}

.contact-card{
    padding:25px;
}

}

@media(max-width:576px){

.highlight-card,
.why-card,
.team-item,
.gallery-card,
.project-card,
.service-card,
.choose-card,
.process-card,
.testimonial-card,
.contact-card,
.counter-box{

    padding:20px;
}

.trust-box div{
    width:100%;
}

.icon-box{
    width:60px;
    height:60px;
    font-size:24px;
}

}

/*==================================================
            CARD RESPONSIVE END
==================================================*/

/*==================================================
            COMMON CARDS START
==================================================*/

/* Highlight Card */

.highlight-card{
    height:100%;
    padding:35px 25px;
    background:#fff;
    border:1px solid #eee;
    border-radius:18px;
    text-align:center;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.4s;
}

.highlight-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 40px rgba(184,134,11,.18);
}

.icon-box{
    width:70px;
    height:70px;
    margin:0 auto 20px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#b8860b;
    color:#fff;
    font-size:28px;
}

.highlight-card h4{
    margin:15px 0;
    font-weight:700;
}

.highlight-card p{
    color:#666;
    line-height:1.8;
}

/* Why Card */

.why-card{
    height:100%;
}

/* Team Card */

.team-item{
    height:100%;
    border-radius:18px;
    overflow:hidden;
    background:#fff;
    box-shadow:0 12px 30px rgba(0,0,0,.08);
    transition:.4s;
}

.team-item:hover{
    transform:translateY(-10px);
}

/* Gallery Card */

.gallery-card{
    height:100%;
    background:#fff;
    border-radius:18px;
    overflow:hidden;
}

/* Project Card */

.project-card{
    height:100%;
}

/* Testimonial Card */

.testimonial-card{
    height:100%;
}

/* Feedback Trust Card */

.trust-box div{
    width:140px;
    min-height:120px;
    padding:20px;
    text-align:center;
    background:#fff;
    border-radius:16px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.4s;
}

.trust-box div:hover{
    transform:translateY(-8px);
}

.trust-box h3{
    color:#b8860b;
    font-size:32px;
    margin-bottom:8px;
}

.trust-box span{
    color:#666;
    font-size:14px;
}

/* Contact Card */

.contact-card{
    height:100%;
    padding:35px;
    background:#fff;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    transition:.4s;
}

.contact-card:hover{
    transform:translateY(-8px);
}

/* Counter Card */

.counter-box{
    transition:.4s;
}

.counter-box:hover{
    transform:translateY(-8px);
}

/*==================================================
            COMMON CARDS END
==================================================*/



/*==================================================
            CARD RESPONSIVE START
==================================================*/

@media(max-width:991px){

.highlight-card,
.why-card,
.team-item,
.gallery-card,
.project-card,
.service-card,
.choose-card,
.process-card,
.testimonial-card,
.contact-card,
.counter-box{

    margin-bottom:25px;
}

.trust-box{
    justify-content:center;
}

}

@media(max-width:768px){

.trust-box{
    gap:15px;
}

.trust-box div{
    width:45%;
}

.contact-card{
    padding:25px;
}

}

@media(max-width:576px){

.highlight-card,
.why-card,
.team-item,
.gallery-card,
.project-card,
.service-card,
.choose-card,
.process-card,
.testimonial-card,
.contact-card,
.counter-box{

    padding:20px;
}

.trust-box div{
    width:100%;
}

.icon-box{
    width:60px;
    height:60px;
    font-size:24px;
}

}

/*==================================================
            CARD RESPONSIVE END
==================================================*/

/*=================================
        TESTIMONIAL START
==================================*/

/*=================================
        TESTIMONIAL CSS
==================================*/

.testimonial-carousel .testimonial-item{
    position: relative;
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid #eee;
    box-shadow: 0 15px 35px rgba(0,0,0,.08);
    transition: .4s ease;
    margin: 15px;
}

.testimonial-carousel .testimonial-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 20px 45px rgba(184,134,11,.20);
}

.testimonial-quote{
    position:absolute;
    top:20px;
    right:20px;
    width:55px;
    height:55px;
    border-radius:50%;
    background:#b8860b;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:2;
}

.testimonial-inner{
    display:flex;
    align-items:center;
    padding:30px;
    background:#fff8eb;
    border-bottom:1px solid #eee;
}

.testimonial-inner img{
    width:85px !important;
    height:85px;
    border-radius:50%;
    object-fit:cover;
    border:4px solid #b8860b;
}

.testimonial-inner h4{
    font-size:22px;
    font-weight:700;
    color:#222;
    margin-bottom:5px;
}

.testimonial-inner p{
    color:#777;
    margin-bottom:10px;
}

.text-warning i{
    color:#f4b400;
    margin-right:3px;
    font-size:16px;
}

.customer-text{
    padding:30px;
}

.customer-text p{
    color:#666;
    line-height:1.8;
    font-size:15px;
    margin:0;
}

/* Owl Dots */

.testimonial-carousel .owl-dots{
    margin-top:30px;
    text-align:center;
}

.testimonial-carousel .owl-dot{
    width:12px;
    height:12px;
    margin:5px;
    border-radius:50%;
    background:#d6d6d6 !important;
    display:inline-block;
    transition:.3s;
}

.testimonial-carousel .owl-dot.active{
    width:35px;
    border-radius:30px;
    background:#b8860b !important;
}

/*=================================
        RESPONSIVE
==================================*/

@media(max-width:991px){

.testimonial-inner{
    padding:25px;
}

.customer-text{
    padding:25px;
}

}

@media(max-width:576px){

.testimonial-inner{
    flex-direction:column;
    text-align:center;
    padding:20px;
}

.testimonial-inner img{
    width:75px !important;
    height:75px;
    margin-bottom:15px;
}

.testimonial-inner .ms-4{
    margin-left:0 !important;
}

.testimonial-inner h4{
    font-size:20px;
}

.customer-text{
    padding:20px;
}

.customer-text p{
    font-size:14px;
}

.testimonial-quote{
    width:45px;
    height:45px;
    top:15px;
    right:15px;
}

}

/*=================================
        RESPONSIVE
==================================*/

@media(max-width:991px){

.testimonial-card{
    padding:30px;
}

}

@media(max-width:576px){

.testimonial-section{
    padding:70px 0;
}

.testimonial-card{
    padding:22px;
}

.client{
    flex-direction:column;
    text-align:center;
}

.client img{
    margin-bottom:10px;
}

.quote-icon{
    width:55px;
    height:55px;
    font-size:22px;
}

.review{
    font-size:15px;
}

}


/*=================================
        TESTIMONIAL END
==================================*/
/*=================================
 PREMIUM CLIENT FEEDBACK CSS START
==================================*/


.feedback-section{

background:#faf8f2;
padding:80px 0;

}


.feedback-wrapper{

display:grid;
grid-template-columns:1fr 1fr;
gap:50px;
align-items:center;

}



/* LEFT SIDE */

.feedback-info h2{

font-size:45px;
font-weight:700;
color:#222;
margin:25px 0;

}


.feedback-info p{

color:#666;
font-size:17px;
line-height:1.8;

}



.section-badge{

display:inline-flex;
align-items:center;
gap:10px;

background:#fff;
border:1px solid #d4af37;

padding:10px 20px;

border-radius:50px;

color:#b8860b;
font-weight:600;

}



.section-badge i{

font-size:18px;

}



/* STATS */

.feedback-stats{

display:flex;
gap:20px;
margin-top:40px;

}


.stat-card{

background:white;

padding:25px 20px;

border-radius:20px;

text-align:center;

box-shadow:0 10px 30px rgba(0,0,0,.08);

transition:.4s;

}


.stat-card:hover{

transform:translateY(-10px);

}


.stat-card h3{

font-size:32px;
color:#b8860b;

}


.stat-card span{

color:#555;

}




/* RIGHT CARD */


.feedback-card{

background:white;

padding:40px;

border-radius:30px;

box-shadow:0 20px 50px rgba(0,0,0,.12);

}



.progress-box{

height:8px;

background:#eee;

border-radius:20px;

overflow:hidden;

margin-bottom:30px;

}


.progress-fill{

height:100%;

width:70%;

background:linear-gradient(90deg,#b8860b,#ffd700);

animation:progress 2s infinite alternate;

}


@keyframes progress{

from{
width:30%;
}

to{
width:90%;
}

}



/* FLOATING INPUT */


.floating-group{

position:relative;

margin-bottom:25px;

}



.floating-group input,
.floating-group select,
.floating-group textarea{


width:100%;

padding:15px 18px;

border:1px solid #ddd;

border-radius:15px;

outline:none;

font-size:15px;

background:white;

}



.floating-group textarea{

height:120px;

resize:none;

}



.floating-group label{


position:absolute;

left:18px;

top:50%;

transform:translateY(-50%);

background:white;

padding:0 8px;

color:#888;

transition:.3s;

pointer-events:none;

}



.floating-group textarea + label{

top:25px;

}




.floating-group input:focus,
.floating-group select:focus,
.floating-group textarea:focus{

border-color:#d4af37;

box-shadow:0 0 10px rgba(212,175,55,.3);

}



.floating-group input:focus + label,
.floating-group textarea:focus + label,
.floating-group input:valid + label{


top:0;

font-size:13px;

color:#b8860b;

}





/* RATING */


.rating-box{

text-align:center;

margin:25px 0;

}


.rating-stars i{

font-size:35px;

color:#ddd;

cursor:pointer;

transition:.3s;

}


.rating-stars i:hover{

color:#ffd700;

transform:scale(1.2);

}




/* EMOJI */


.emoji-box{

display:flex;

justify-content:center;

gap:18px;

margin:25px 0;

}



.emoji-box span{

font-size:35px;

cursor:pointer;

transition:.3s;

}



.emoji-box span:hover{

transform:translateY(-8px) scale(1.2);

}





/* UPLOAD */


.upload-area{

display:block;

text-align:center;

padding:35px;

border:2px dashed #d4af37;

border-radius:20px;

background:#fffaf0;

cursor:pointer;

transition:.4s;

}



.upload-area:hover{

background:#fff3d0;

transform:translateY(-5px);

}


.upload-area i{

font-size:45px;

color:#b8860b;

animation:upload 2s infinite;

}


@keyframes upload{

50%{

transform:translateY(-10px);

}

}


.upload-area input{

display:none;

}



.upload-area p{

color:#777;

}




/* CHECKBOX */


.check-box{

display:flex;

gap:10px;

align-items:center;

margin:25px 0;

color:#555;

}




/* BUTTON */


.feedback-btn{

width:100%;

padding:17px;

border:none;

border-radius:50px;

background:linear-gradient(45deg,#b8860b,#ffd700);

color:white;

font-size:18px;

font-weight:600;

cursor:pointer;

display:flex;

justify-content:center;

align-items:center;

gap:15px;

transition:.4s;

}



.feedback-btn:hover{

transform:translateY(-5px);

box-shadow:0 15px 30px rgba(212,175,55,.4);

}



.feedback-btn i{

transition:.4s;

}


.feedback-btn:hover i{

transform:translateX(10px);

}




/*=================================
 MOBILE RESPONSIVE
==================================*/


@media(max-width:992px){


.feedback-wrapper{

grid-template-columns:1fr;

}



.feedback-info h2{

font-size:36px;

}


}



@media(max-width:600px){


.feedback-section{

padding:50px 15px;

}


.feedback-card{

padding:25px 18px;

border-radius:20px;

}



.feedback-info h2{

font-size:28px;

}



.feedback-stats{

flex-direction:column;

}


.stat-card h3{

font-size:28px;

}


.rating-stars i{

font-size:28px;

}


.emoji-box span{

font-size:28px;

}



.upload-area{

padding:25px 15px;

}


}


/*=================================
 PREMIUM CLIENT FEEDBACK CSS END
==================================*/
/*==================================================
PROJECT HERO SECTION
==================================================*/

.project-hero{
    position:relative;
    overflow:hidden;
    min-height:100vh;
    display:flex;
    align-items:center;
    background:linear-gradient(rgba(18,18,18,.85),
    rgba(18,18,18,.85)),
    url("../images/projects/project-bg.jpg") center center/cover no-repeat;
    padding:120px 0;
}

/* Overlay */

.hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,
    rgba(0,0,0,.45),
    rgba(0,0,0,.15));
    z-index:1;
}

.project-hero .container{
    position:relative;
    z-index:5;
}

/*==============================
FLOATING SHAPES
==============================*/

.shape{
    position:absolute;
    border-radius:50%;
    opacity:.15;
    animation:float 8s ease-in-out infinite;
}

.shape1{
    width:220px;
    height:220px;
    background:#f4b400;
    top:8%;
    left:-80px;
}

.shape2{
    width:140px;
    height:140px;
    background:#ffffff;
    right:8%;
    top:25%;
    animation-duration:10s;
}

.shape3{
    width:180px;
    height:180px;
    background:#f4b400;
    right:-60px;
    bottom:8%;
    animation-duration:12s;
}

@keyframes float{

0%{
transform:translateY(0px);
}

50%{
transform:translateY(-25px);
}

100%{
transform:translateY(0px);
}

}

/*==============================
HERO CONTENT
==============================*/

.hero-content{
    color:#fff;
}

.hero-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 22px;
    border-radius:40px;
    background:#f4b400;
    color:#111;
    font-weight:700;
    margin-bottom:25px;
}

.hero-content h1{
    font-size:64px;
    font-weight:800;
    line-height:1.15;
    margin-bottom:25px;
}

.hero-content h1 span{
    color:#f4b400;
}

.hero-content p{
    color:#ddd;
    font-size:18px;
    line-height:1.9;
    max-width:600px;
    margin-bottom:35px;
}

/*==============================
BUTTONS
==============================*/

.hero-btn{
    display:flex;
    gap:18px;
    flex-wrap:wrap;
}

.btn-project,
.btn-contact{
    text-decoration:none;
    padding:15px 34px;
    border-radius:50px;
    font-weight:700;
    transition:.4s;
}

.btn-project{
    background:#f4b400;
    color:#111;
}

.btn-contact{
    border:2px solid #fff;
    color:#fff;
}

.btn-project:hover{
    transform:translateY(-6px);
    box-shadow:0 12px 30px rgba(244,180,0,.4);
}

.btn-contact:hover{
    background:#fff;
    color:#111;
    transform:translateY(-6px);
}

/*==============================
HERO STATS
==============================*/

.hero-stats{
    display:flex;
    gap:35px;
    margin-top:50px;
    flex-wrap:wrap;
}

.hero-stats div{
    text-align:center;
}

.hero-stats h2{
    color:#f4b400;
    font-size:42px;
    font-weight:800;
}

.hero-stats span{
    color:#ddd;
    font-size:15px;
}

/*==============================
IMAGE
==============================*/

.hero-image{
    text-align:center;
}

.hero-image img{
    max-width:100%;
    animation:heroFloat 5s ease-in-out infinite;
}

@keyframes heroFloat{

0%{
transform:translateY(0);
}

50%{
transform:translateY(-18px);
}

100%{
transform:translateY(0);
}

}

/*==============================
RESPONSIVE
==============================*/

@media(max-width:991px){

.project-hero{
padding:90px 0;
text-align:center;
}

.hero-content h1{
font-size:46px;
}

.hero-content p{
margin:auto auto 30px;
}

.hero-btn{
justify-content:center;
}

.hero-stats{
justify-content:center;
margin-bottom:40px;
}

.hero-image{
margin-top:40px;
}

}

@media(max-width:767px){

.hero-content h1{
font-size:34px;
}

.hero-content p{
font-size:16px;
}

.hero-badge{
font-size:14px;
}

.btn-project,
.btn-contact{
width:100%;
text-align:center;
}

.hero-stats{
gap:20px;
}

.hero-stats h2{
font-size:30px;
}

.shape1,
.shape2,
.shape3{
display:none;
}

}

/*==================================================
PROJECT HERO SECTION
==================================================*/

.project-hero{
    position:relative;
    overflow:hidden;
    min-height:100vh;
    display:flex;
    align-items:center;
    background:linear-gradient(rgba(18,18,18,.85),
    rgba(18,18,18,.85)),
    url("../images/projects/project-bg.jpg") center center/cover no-repeat;
    padding:120px 0;
}

/* Overlay */

.hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,
    rgba(0,0,0,.45),
    rgba(0,0,0,.15));
    z-index:1;
}

.project-hero .container{
    position:relative;
    z-index:5;
}

/*==============================
FLOATING SHAPES
==============================*/

.shape{
    position:absolute;
    border-radius:50%;
    opacity:.15;
    animation:float 8s ease-in-out infinite;
}

.shape1{
    width:220px;
    height:220px;
    background:#f4b400;
    top:8%;
    left:-80px;
}

.shape2{
    width:140px;
    height:140px;
    background:#ffffff;
    right:8%;
    top:25%;
    animation-duration:10s;
}

.shape3{
    width:180px;
    height:180px;
    background:#f4b400;
    right:-60px;
    bottom:8%;
    animation-duration:12s;
}

@keyframes float{

0%{
transform:translateY(0px);
}

50%{
transform:translateY(-25px);
}

100%{
transform:translateY(0px);
}

}

/*==============================
HERO CONTENT
==============================*/

.hero-content{
    color:#fff;
}

.hero-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 22px;
    border-radius:40px;
    background:#f4b400;
    color:#111;
    font-weight:700;
    margin-bottom:25px;
}

.hero-content h1{
    font-size:64px;
    font-weight:800;
    line-height:1.15;
    margin-bottom:25px;
}

.hero-content h1 span{
    color:#f4b400;
}

.hero-content p{
    color:#ddd;
    font-size:18px;
    line-height:1.9;
    max-width:600px;
    margin-bottom:35px;
}

/*==============================
BUTTONS
==============================*/

.hero-btn{
    display:flex;
    gap:18px;
    flex-wrap:wrap;
}

.btn-project,
.btn-contact{
    text-decoration:none;
    padding:15px 34px;
    border-radius:50px;
    font-weight:700;
    transition:.4s;
}

.btn-project{
    background:#f4b400;
    color:#111;
}

.btn-contact{
    border:2px solid #fff;
    color:#fff;
}

.btn-project:hover{
    transform:translateY(-6px);
    box-shadow:0 12px 30px rgba(244,180,0,.4);
}

.btn-contact:hover{
    background:#fff;
    color:#111;
    transform:translateY(-6px);
}

/*==============================
HERO STATS
==============================*/

.hero-stats{
    display:flex;
    gap:35px;
    margin-top:50px;
    flex-wrap:wrap;
}

.hero-stats div{
    text-align:center;
}

.hero-stats h2{
    color:#f4b400;
    font-size:42px;
    font-weight:800;
}

.hero-stats span{
    color:#ddd;
    font-size:15px;
}

/*==============================
IMAGE
==============================*/

.hero-image{
    text-align:center;
}

.hero-image img{
    max-width:100%;
    animation:heroFloat 5s ease-in-out infinite;
}

@keyframes heroFloat{

0%{
transform:translateY(0);
}

50%{
transform:translateY(-18px);
}

100%{
transform:translateY(0);
}

}

/*==============================
RESPONSIVE
==============================*/

@media(max-width:991px){

.project-hero{
padding:90px 0;
text-align:center;
}

.hero-content h1{
font-size:46px;
}

.hero-content p{
margin:auto auto 30px;
}

.hero-btn{
justify-content:center;
}

.hero-stats{
justify-content:center;
margin-bottom:40px;
}

.hero-image{
margin-top:40px;
}

}

@media(max-width:767px){

.hero-content h1{
font-size:34px;
}

.hero-content p{
font-size:16px;
}

.hero-badge{
font-size:14px;
}

.btn-project,
.btn-contact{
width:100%;
text-align:center;
}

.hero-stats{
gap:20px;
}

.hero-stats h2{
font-size:30px;
}

.shape1,
.shape2,
.shape3{
display:none;
}

}
/*====================================
PROJECTS GALLERY
====================================*/

.projects-section{
    padding:100px 0;
    background:#f8f9fa;
}

.section-title{
    margin-bottom:60px;
}

.section-badge{
    display:inline-block;
    padding:10px 22px;
    background:#f4b400;
    color:#111;
    font-weight:700;
    border-radius:50px;
    margin-bottom:18px;
}

.section-title h2{
    font-size:42px;
    font-weight:800;
    color:#222;
    margin-bottom:15px;
}

.section-title p{
    max-width:700px;
    margin:auto;
    color:#666;
    line-height:1.8;
}

/*==============================
FILTER BUTTONS
==============================*/

.project-filter{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:15px;
    margin-bottom:50px;
}

.project-filter button{
    border:none;
    outline:none;
    background:#fff;
    color:#333;
    padding:14px 28px;
    border-radius:40px;
    cursor:pointer;
    font-weight:600;
    transition:.4s;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.project-filter button:hover,
.project-filter button.active{
    background:#f4b400;
    color:#111;
    transform:translateY(-5px);
}

/*==============================
PROJECT CARD
==============================*/

.project-card{
    position:relative;
    overflow:hidden;
    border-radius:20px;
    background:#fff;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    transition:.4s;
}

.project-card img{
    width:100%;
    height:300px;
    object-fit:cover;
    transition:.6s;
}

.project-card:hover img{
    transform:scale(1.12);
}

.project-card:hover{
    transform:translateY(-10px);
}

/*==============================
OVERLAY
==============================*/

.project-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(to top,
    rgba(0,0,0,.9),
    rgba(0,0,0,.15));
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:30px;
    color:#fff;
    opacity:0;
    transition:.5s;
}

.project-card:hover .project-overlay{
    opacity:1;
}

.project-overlay span{
    display:inline-block;
    width:max-content;
    background:#f4b400;
    color:#111;
    padding:8px 18px;
    border-radius:30px;
    font-size:14px;
    font-weight:700;
    margin-bottom:15px;
}

.project-overlay h4{
    font-size:28px;
    font-weight:700;
    margin-bottom:10px;
}

.project-overlay p{
    color:#ddd;
    margin-bottom:20px;
}

/*==============================
BUTTON
==============================*/

.view-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    width:max-content;
    text-decoration:none;
    color:#fff;
    font-weight:600;
    transition:.4s;
}

.view-btn i{
    transition:.4s;
}

.view-btn:hover{
    color:#f4b400;
}

.view-btn:hover i{
    transform:translateX(8px);
}

/*==============================
GOLDEN BORDER
==============================*/

.project-card::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:0%;
    height:5px;
    background:#f4b400;
    transition:.5s;
    z-index:5;
}

.project-card:hover::before{
    width:100%;
}

/*==============================
RESPONSIVE
==============================*/

@media(max-width:991px){

.section-title h2{
    font-size:34px;
}

.project-card img{
    height:260px;
}

}

@media(max-width:767px){

.projects-section{
    padding:70px 0;
}

.section-title h2{
    font-size:30px;
}

.project-filter{
    gap:10px;
}

.project-filter button{
    padding:10px 18px;
    font-size:14px;
}

.project-card img{
    height:230px;
}

.project-overlay{
    padding:20px;
}

.project-overlay h4{
    font-size:22px;
}

}

@media(max-width:576px){

.section-title h2{
    font-size:26px;
}

.project-card img{
    height:220px;
}

.project-overlay span{
    font-size:12px;
}

.project-overlay h4{
    font-size:20px;
}

}
/* =========================================================
   COMPLETED PROJECTS
========================================================= */

/* ==========================================================
   S&S CONSTRUCTION - COMPLETED PROJECTS
   UNIQUE SCOPED CSS
========================================================== */

.ss-completed-projects {
    width: 100%;
    padding: 90px 0;
    background: #f6f5f2;
    overflow: hidden;
}

.ss-completed-projects .container {
    max-width: 1320px;
    margin: 0 auto;
}


/* ==========================================================
   HEADER
========================================================== */

.ss-project-header {
    text-align: center;
    margin-bottom: 55px;
}

.ss-project-header .section-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px;
    margin-bottom: 18px;
}

.ss-project-header h2 {
    margin: 0 0 15px !important;

    font-size: 48px !important;
    line-height: 1.15 !important;

    font-weight: 700 !important;

    color: #171717 !important;
}

.ss-project-header p {
    max-width: 760px;

    margin: 0 auto !important;

    color: #777 !important;

    font-size: 16px !important;
    line-height: 1.8 !important;
}


/* ==========================================================
   MAIN PROJECT CARD
========================================================== */

.ss-project-card {
    width: 100% !important;

    display: grid !important;

    grid-template-columns: 58% 42% !important;

    align-items: stretch !important;

    background: #ffffff !important;

    border-radius: 18px !important;

    overflow: hidden !important;

    box-shadow: 0 20px 55px rgba(0, 0, 0, 0.10) !important;
}


/* ==========================================================
   MAIN IMAGE
========================================================== */

.ss-project-image {
    position: relative !important;

    width: 100% !important;

    height: 560px !important;

    overflow: hidden !important;

    margin: 0 !important;

    padding: 0 !important;
}

.ss-project-image img {
    display: block !important;

    width: 100% !important;

    height: 100% !important;

    max-width: none !important;

    margin: 0 !important;

    padding: 0 !important;

    object-fit: cover !important;

    object-position: center !important;

    transition: transform 0.6s ease !important;
}

.ss-project-card:hover .ss-project-image img {
    transform: scale(1.035);
}


/* ==========================================================
   BADGE
========================================================== */

.ss-project-badge {
    position: absolute !important;

    top: 25px !important;
    left: 25px !important;

    z-index: 10 !important;

    display: flex !important;

    align-items: center !important;

    gap: 8px !important;

    padding: 10px 17px !important;

    background: rgba(255, 255, 255, 0.96) !important;

    color: #222 !important;

    border-radius: 50px !important;

    font-size: 13px !important;

    font-weight: 600 !important;

    box-shadow: 0 8px 25px rgba(0,0,0,.15) !important;
}

.ss-project-badge i {
    color: #c69214 !important;
}


/* ==========================================================
   DETAILS
========================================================== */

.ss-project-details {
    width: 100% !important;

    min-width: 0 !important;

    padding: 50px 45px !important;

    display: flex !important;

    flex-direction: column !important;

    justify-content: center !important;

    align-items: flex-start !important;

    background: #ffffff !important;

    position: relative !important;
}

.ss-project-number {
    margin-bottom: 12px !important;

    color: #c69214 !important;

    font-size: 12px !important;

    font-weight: 700 !important;

    letter-spacing: 2px !important;
}

.ss-project-details h3 {
    margin: 0 0 12px !important;

    padding: 0 !important;

    font-size: 36px !important;

    line-height: 1.2 !important;

    font-weight: 700 !important;

    color: #171717 !important;
}


/* LOCATION */

.ss-project-location {
    display: flex !important;

    align-items: center !important;

    gap: 9px !important;

    margin-bottom: 22px !important;

    color: #777 !important;

    font-size: 14px !important;
}

.ss-project-location i {
    color: #c69214 !important;
}


/* DESCRIPTION */

.ss-project-description {
    margin: 0 0 28px !important;

    color: #666 !important;

    font-size: 14px !important;

    line-height: 1.8 !important;
}


/* ==========================================================
   FEATURES
========================================================== */

.ss-project-features {
    width: 100% !important;

    display: grid !important;

    grid-template-columns: 1fr 1fr !important;

    gap: 12px !important;

    margin: 0 0 28px !important;
}

.ss-feature {
    display: flex !important;

    align-items: center !important;

    gap: 10px !important;

    min-width: 0 !important;

    padding: 11px !important;

    background: #f7f6f3 !important;

    border: 1px solid #eeeeea !important;

    border-radius: 9px !important;
}

.ss-feature-icon {
    flex: 0 0 40px !important;

    width: 40px !important;
    height: 40px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    background: #ffffff !important;

    color: #c69214 !important;

    border-radius: 7px !important;

    font-size: 15px !important;
}

.ss-feature strong {
    display: block !important;

    margin: 0 !important;

    color: #222 !important;

    font-size: 13px !important;
}

.ss-feature span {
    display: block !important;

    margin-top: 2px !important;

    color: #888 !important;

    font-size: 11px !important;
}


/* ==========================================================
   BUTTON
========================================================== */

.ss-project-button {
    display: inline-flex !important;

    align-items: center !important;

    gap: 10px !important;

    padding: 12px 22px !important;

    background: #c69214 !important;

    border: 1px solid #c69214 !important;

    border-radius: 5px !important;

    color: #ffffff !important;

    text-decoration: none !important;

    font-size: 14px !important;

    font-weight: 600 !important;

    transition: all .3s ease !important;
}

.ss-project-button:hover {
    background: #171717 !important;

    border-color: #171717 !important;

    color: #ffffff !important;

    transform: translateY(-2px);
}

.ss-project-button i {
    transition: transform .3s ease;
}

.ss-project-button:hover i {
    transform: translateX(4px);
}


/* ==========================================================
   GALLERY
========================================================== */

.ss-project-gallery {
    width: 100% !important;

    display: grid !important;

    grid-template-columns: repeat(4, 1fr) !important;

    gap: 18px !important;

    margin-top: 20px !important;
}

.ss-gallery-item {
    position: relative !important;

    width: 100% !important;

    height: 230px !important;

    overflow: hidden !important;

    border-radius: 12px !important;

    background: #ddd !important;
}

.ss-gallery-item img {
    display: block !important;

    width: 100% !important;

    height: 100% !important;

    max-width: none !important;

    object-fit: cover !important;

    margin: 0 !important;

    padding: 0 !important;

    transition: transform .5s ease !important;
}

.ss-gallery-item:hover img {
    transform: scale(1.08);
}

.ss-gallery-caption {
    position: absolute !important;

    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;

    padding: 35px 15px 15px !important;

    color: #ffffff !important;

    font-size: 13px !important;

    font-weight: 600 !important;

    background: linear-gradient(
        to top,
        rgba(0,0,0,.75),
        transparent
    ) !important;

    opacity: 0 !important;

    transform: translateY(8px);

    transition: all .3s ease !important;
}

.ss-gallery-item:hover .ss-gallery-caption {
    opacity: 1 !important;

    transform: translateY(0);
}


/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 991px) {

    .ss-project-card {
        grid-template-columns: 1fr !important;
    }

    .ss-project-image {
        height: 450px !important;
    }

    .ss-project-details {
        padding: 40px !important;
    }

    .ss-project-gallery {
        grid-template-columns: repeat(2, 1fr) !important;
    }

}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 575px) {

    .ss-completed-projects {
        padding: 60px 0;
    }

    .ss-project-header h2 {
        font-size: 34px !important;
    }

    .ss-project-header p {
        padding: 0 15px;
        font-size: 14px !important;
    }

    .ss-project-image {
        height: 320px !important;
    }

    .ss-project-details {
        padding: 30px 22px !important;
    }

    .ss-project-details h3 {
        font-size: 28px !important;
    }

    .ss-project-features {
        grid-template-columns: 1fr !important;
    }

    .ss-project-gallery {
        grid-template-columns: 1fr 1fr !important;

        gap: 10px !important;
    }

    .ss-gallery-item {
        height: 160px !important;
    }

}
