@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");







/***** General CSS *****/

.new-banner-img p {
    text-align: right;
    padding: 0 5%;
    font-size: 16px;
    color: #404042;
    font-weight:700;
}
.new-banner-img p span {
    color: #3eb84b;
}

body {

word-break: break-word;

font: 15px / 25px "Montserrat", sans-serif;

color: #000;

overflow-x: hidden;

overflow-y: scroll;

opacity: 1;

background-color: #D3D3D3;
}












a {



    text-decoration: none;



    color: #000;



    white-space: initial;



}







a:hover,



a:focus {



    text-decoration: none;



    color: #000;



}







a:hover {



    transition: all 0.2s ease-in-out;



}







img {



    object-fit: cover;



    max-width: 100%;



    width: 100%;



}







input:focus,



textarea:focus,



select:focus {



    transition: all 0.5s ease;



    outline: none;



}







select,



input,



textarea {



    appearance: auto;



}







/***** Font Files *****/



@font-face {



    font-family: "Fonts Awesome";



    src: url(../fonts/fontawesome-webfont.eot);



    font-weight: 400;



    font-style: normal;



    font-display: swap;



}







@font-face {



    font-family: "QuarryDigger Regular";



    src: url(../fonts/QuarryDigger-Regular.ttf);



    font-weight: 400;



    font-display: swap;



    font-style: normal;



}











/***** Custom Classes *****/



select {



    background: #fff url("../images/arrow.png") no-repeat right;



    padding: 0 40px 0 30px;



}







::-webkit-input-placeholder,



::-moz-placeholder,



:-ms-input-placeholder,



:-moz-placeholder {



    color: #575757;



}







.noPadding {



    padding: 0;



}







.noLeft {



    padding-left: 0;



}







.noRight {



    padding-right: 0;



}







.centerCol {



    float: none;



    margin: 0 auto;



}







.pt_8,



.pb_8,



.py_8,



.sec {



    padding: 80px 0;



}







.flexRow,



.flexCol {



    display: flex;



    align-items: center;



}







ul {



    margin: 0;



    padding: 0;



    list-style-type: none;



}







/* Headings */



h1,



h2,



h3,



h4,



h5,



h6 {



    font-family: "QuarryDigger Regular";



    text-transform: uppercase;



    margin: 0 0 10px;



    color: #404042;



}







h1 {



    font-size: 62px;



    line-height: 1.2;



    color: #404042;



    font-weight: 500;



}







h2 {



    font-size: 40px;



    line-height: 1.2;



    color: #404042;



    font-weight: 500;



}







h3 {



    font-size: 51px;



    line-height: 1.2;



    color: #000;



    font-weight: 600;



}







h4 {



    font-size: 34px;



    line-height: 1.2;



    color: #000;



    font-weight: 500;



}







h5 {



    font-size: 31px;



    line-height: 1.2;



    color: #000;



    font-weight: 500;



}







h6 {



    font-size: 23px;



    font-family: "Montserrat", serif;



    color: #000;



    font-weight: 500;



}







p {



    font-size: 14px;



    font-weight: 500;



    line-height: 25px;



    color: #0000007c;



    font-family: "Montserrat", serif;



}







/* Menu */


.hdr_logo {
    display: block;
    margin: 0 auto;
    width: fit-content;
}
.nav ul {

list-style: none;

text-align: center;

justify-content: flex-end;

display: flex;

align-items: center;

height: 100%;

gap: 50px;

justify-content: center;
}







.nav ul li a {



    transition: 0.3s ease-in-out;



    text-transform: uppercase;



    transition: all 0.5s;



    position: relative;



    color: #000;



    font-family: 'Montserrat';



    font-weight: 500;



    font-size: 14px;



    padding: 10px 0px;



    display: block;



}







.nav ul li {



    position: relative;



}







/* Submenu Styling */



.nav ul li ul {



    position: absolute;



    top: 100%;



    left: 0;



    width: 280px;



    background: #fff;



    display: flex;



    flex-direction: column;



    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);



    padding: 15px 0;



    opacity: 0;



    visibility: hidden;



    transform: translateY(15px);



    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);



    z-index: 99;



    text-align: left;



    gap: 0;



    height: auto;



    border-radius: 4px;



    border-top: 3px solid #3eb84b;



}







.nav ul li:hover>ul {



    opacity: 1;



    visibility: visible;



    transform: translateY(0);



}







.nav ul li ul li {



    width: 100%;



    padding: 0 25px;



}







.nav ul li ul li a {



    padding: 10px 0;



    font-size: 13px;



    text-transform: capitalize;



    border-bottom: 1px solid #f5f5f5;



    color: #333;



    font-weight: 500;



}







.nav ul li ul li:last-child a {



    border-bottom: none;



}







.nav ul li ul li a:hover {



    color: #3eb84b;



    padding-left: 8px;



}







/* Remove hover underline for submenu items */



.nav.stroke ul li ul li a:after {



    display: none !important;



}







section.header .nav.stroke {

display: block;

display: flex;

align-items: center;

justify-content: center;

gap: 110px;
}







.nav.stroke ul li a:after,



.nav.fill ul li a:after {



    transition: 0.3s ease-in-out;



    position: absolute;



    bottom: 0;



    left: 50%;



    right: 0;



    width: 0%;



    content: ".";



    color: transparent;



    background: #3eb84b;



    height: 2px;



    transform: translateX(-50%);



}







.nav.stroke ul li a:hover:after {



    width: 100%;



}







.nav.stroke ul li a.active:after {



    width: 100%;



}







.nav.stroke ul li a.active::before {



    height: 100%;



}







.nav.stroke ul li a.active {



    color: #010101 !important;



}



.hdr_btn {



    text-align: right;



}



/* Buttons Css Start*/



/* From Uiverse.io by cssbuttons-io */



.theme-btn {
    display: inline-block;
    padding: 12px 30px;
    border: none;
    border-radius: 64px;
    transition: all 0.2s ease-in;
    position: relative;
    overflow: hidden;
    font-size: 16px;
    cursor: pointer;
    color: #fff;
    z-index: 1;
    background: #3eb84b;
    text-transform: uppercase;
}







.theme-btn:before {



    content: "";



    position: absolute;



    left: 50%;



    transform: translateX(-50%) scaleY(1) scaleX(1.25);



    top: 100%;



    width: 140%;



    height: 180%;



    background-color: rgba(0, 0, 0, 0.05);



    border-radius: 50%;



    display: block;



    transition: all 0.5s 0.1s cubic-bezier(0.55, 0, 0.1, 1);



    z-index: -1;



}







.theme-btn:after {



    content: "";



    position: absolute;



    left: 55%;



    transform: translateX(-50%) scaleY(1) scaleX(1.45);



    top: 180%;



    width: 160%;



    height: 190%;



    background-color: #39bda7;



    border-radius: 50%;



    display: block;



    transition: all 0.5s 0.1s cubic-bezier(0.55, 0, 0.1, 1);



    z-index: -1;



}







.theme-btn:hover {



    color: #ffffff;



    /* border: 1px solid #39bda7; */



}







.theme-btn:hover:before {



    top: -35%;



    background-color: #000;



    transform: translateX(-50%) scaleY(1.3) scaleX(0.8);



}







.theme-btn:hover:after {



    top: -45%;



    background-color: #0000;



    transform: translateX(-50%) scaleY(1.3) scaleX(0.8);



}











/* Buttons Css End*/







/* Loader start */



#loader {



    position: fixed;



    top: 0;



    left: 0;



    width: 100%;



    height: 100%;



    background: #ffffff;



    display: flex;



    align-items: center;



    justify-content: center;



    z-index: 9999;



    transition: all 1s ease;



    flex-direction: column;



    gap: 5px;



}







#loader.hide {



    transform: translateY(-100%);



    opacity: 0;



    pointer-events: none;



}







img.loader {



    width: 10vw;



}







/* Loader end */







/* Custom Scrollbar  */



#style-6::-webkit-scrollbar-track {



    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);



    background-color: #f5f5f5;



}







#style-6::-webkit-scrollbar {



    width: 10px;



    background-color: #f5f5f5;



}







#style-6::-webkit-scrollbar-thumb {



    background-color: #f48a12;



    background-image: -webkit-linear-gradient(45deg,



            rgba(255, 255, 255, 0.2) 25%,



            transparent 25%,



            transparent 50%,



            rgba(255, 255, 255, 0.2) 50%,



            rgba(255, 255, 255, 0.2) 75%,



            transparent 75%,



            transparent);



}







.scrollbar {



    overflow-y: scroll;



}







/* Custom Scrollbar  */







/* Home Page start*/







/* Header */



.hdr_logo a img {



    object-fit: scale-down;



    padding: 20px 0;



    display: block;



    width: fit-content;



}







section.header {

/* position: absolute; */

top: 0;

left: 0;

width: 100%;

z-index: 9;
}







/* Header end*/







/* Banner */



.banner_sec {



    position: relative;



    z-index: 1;



    height: 900px;



}







.banner_sec::before {



    position: absolute;



    top: 0;



    left: 0;



    width: 100%;



    height: 100%;



    z-index: -1;



    content: '';



    background-image: url(../images/banner.jpg);



    background-position: center;



    background-size: cover;



    background-repeat: no-repeat;



}







.banner_text {



    display: flex;



    align-items: start;



    flex-direction: column;



    justify-content: flex-end;



    height: 100%;



    padding-bottom: 20%;



}







.banner-slider .slick-list {



    height: 100%;



}







.banner-slider .slick-track {



    height: 100%;



}



.banner_text.hei h5 {



    font-size: 14px;



    font-family: 'Montserrat';



    background: #3eb84b;



    padding: 7px 20px 5px;



    border-radius: 30px;



    color: #fff;



}

section.banner_sec.inn::after {

position: absolute;

left: 0;

width: 57%;

height: 100%;

content: '';

background-image: url(../images/innerpage-after.png);

background-size: cover;

background-repeat: no-repeat;

top: 0px;

z-index: -1;
}

.banner_text.hei h1 span {



    font-size: 47px;



    color: #404042;



}







.banner_text.hei h1 {



    color: #3eb84b;



    line-height: 1;



    font-size: 45px;

}



.banner_text.hei p {



    font-weight: 700;



}



/* Banner end*/







/* section start */



.about_images_main {



    display: flex;



    justify-content: space-between;



}







.about_left_img {



    width: 40%;



}







.about_right_img {



    width: 58%;



}







.about_call_today {



    height: 265px;



    background: #3eb84b;



    margin-top: 15px;



    border-radius: 10px;



    display: flex;



    align-items: center;



    justify-content: center;



    flex-direction: column;



    gap: 0px;



    position: relative;



}







.about_small_img img {



    height: 280px;



    border-radius: 10px;



}







.about_right_img img {



    height: 560px;



    object-fit: cover;



    width: 100%;



    border-radius: 10px;



}







.about_call_today span {



    width: 50px;



    height: 50px;



    background: #fff;



    display: flex;



    align-items: center;



    justify-content: center;



    border-radius: 50px;



}







.about_call_today span img {



    width: 32px;



}



.about_call_today h6 {



    font-size: 14px;



    letter-spacing: 5px;



    color: #fff;



    line-height: 1;



    margin: 20px 0;



    font-weight: 600;



}



.about_call_today a {



    color: #fff;



}



h6.tag_heading {



    font-size: 14px;



    color: #fff;



    background: #3eb84b;



    display: inline-block;



    padding: 7px 20px;



    border-radius: 20px;



}



.about_call_today::before {



    content: "";



    position: absolute;



    inset: 0;



    background: inherit;



    border-radius: inherit;



    z-index: -1;



    animation: pulseBg 2.5s infinite;



    opacity: 0.6;



}



@keyframes pulseBg {



    0% {



        transform: scale(1);



        opacity: 0.6;



    }



    50% {



        transform: scale(1.08);



        opacity: 0.3;



    }



    100% {



        transform: scale(1);



        opacity: 0.6;



    }



}



/* section end */



/*footer start*/



/* footer */







.footer_top {

    padding: 70px 0 30px;
    /* Space for the form overlapping */

    background: #D3D3D3;
}







.contact_badge {



    background: #47c55c;



    color: #fff;



    padding: 6px 20px;



    border-radius: 30px;



    font-size: 14px;



    font-weight: 500;



    display: inline-block;



    margin-bottom: 10px;



    text-transform: uppercase;



}







.ftr_contact {



    padding-left: 20px;



}







.ftr_contact h2 {



    color: #3b3b3b;



    font-size: 35px;



    font-weight: 400;



    margin-bottom: 20px;



}







.contact_item {display: flex;align-items: center;gap: 10px;}







.contact_icon {width: 32px;height: 32px;border-radius: 50%;background: #47c55c;display: flex;align-items: center;justify-content: center;flex-shrink: 0;}







.contact_icon i {color: #fff;font-size: 15px;}







.contact_text p {



    color: #3b3b3b;



    font-weight: 600;



    margin: 0;



    line-height: 1.4;



    font-size: 14px;



}







.contact_text p span {

    color: #000;

    font-weight: 400;

    font-size: 14px;
}







.contact_text a {color: #000;font-weight: 400;font-size: 12px;}







.footer_mid {



    background: #404042;



    padding-top: 104px;



    position: relative;



    z-index: 1;



}







/* White background box for copyright text spanning left side */



.footer_mid::before {

    content: '';

    position: absolute;

    background: #D3D3D3;

    bottom: 0;

    left: 0;

    height: 80px;

    width: 62%;

    z-index: -1;
}







.ftr_mid_inner {



    padding-bottom: 20px;



    padding-left: 20px;



}







.ftr_about h5,
.quick_links h5 {



    color: #ffffff;



    font-size: 20px;



    margin-bottom: 25px;



    font-family: inherit;



    font-weight: 500;



}







.ftr_about p {



    color: #b9b9b9;



    font-size: 14px;



    line-height: 1.6;



    margin-bottom: 40px;



    max-width: 90%;



    font-weight: 400;



}







.follow_title {



    margin-bottom: 15px !important;



}







.social_links {



    display: flex;



    gap: 15px;



}







.social_links li a {



    width: 45px;



    height: 45px;



    border-radius: 50%;



    border: 1px solid #666;



    display: flex;



    align-items: center;



    justify-content: center;



    color: #b9b9b9;



    transition: all 0.3s;



    font-size: 16px;



}







.social_links li a.active,
.social_links li a:hover {



    background: #47c55c;



    border-color: #47c55c;



    color: #fff;



}







.quick_links ul {



    display: flex;



    flex-wrap: wrap;



    gap: 18px 0;



}







.quick_links ul li {



    width: 50%;



}







.quick_links ul li a {



    color: #ffffff;



    font-size: 14px;



    font-weight: 500;



    text-transform: uppercase;



    transition: all 0.3s;



}







.quick_links ul li a:hover {



    color: #47c55c;



}







/* Form overlapping styling */



.ftr_form {background: #D3D3D3;padding: 40px 40px;border-radius: 0px;box-shadow: 0 14px 50px rgb(0 0 0 / 34%);margin-top: -320px;position: relative;z-index: 2;margin-bottom: -4px;max-width: 600px;margin-left: 60px;margin-right: 0;}







.ftr_form h3 {



    font-size: 25px;



    color: #3b3b3b;



    margin-bottom: 15px;



    font-weight: 600;



    text-transform: uppercase;



}







.ftr_form p {



    color: #888;



    margin-bottom: 20px;



    font-size: 14px;



    line-height: 1.6;



    font-weight: 400;



}







.ftr_form form input,



.ftr_form form textarea {



    width: 100%;



    margin-bottom: 12px;



    padding: 14px 20px;



    border: 1px solid #e1e1e1;



    border-radius: 8px;



    background: #fff;



    font-size: 14px;



    font-family: inherit;



}







.ftr_form form input::placeholder,



.ftr_form form textarea::placeholder {



    color: #a0a0a0;



}







.ftr_form form textarea {



    height: 90px;



    resize: none;



}







.submit_btn {



    background: #47c55c;



    color: #fff;



    border: none;



    padding: 16px 35px;



    border-radius: 30px;



    font-size: 14px;



    font-weight: 500;



    cursor: pointer;



    transition: all 0.3s;



    margin-top: 10px;



    text-transform: uppercase;



}







.submit_btn:hover {



    background: #3eb550;



}







.copy_right {



    height: 80px;



    display: flex;



    align-items: center;



    justify-content: center;



}







.copy_right p {



    color: #3b3b3b;



    margin: 0;



    font-weight: 600;



    font-size: 14px;



}







/* footer */



/*footer end*/



/* section start */



/* section end */







/* section start */



/* section end */







/* section start */



/* section end */







/* section start */



/* section end */







/* Services Section */



.services_sec {

    position: relative;

    padding: 0px 0 0px;

    background: url(../images/tailored.png) no-repeat center center;

    background-size: cover;

    overflow: hidden;
}







/*.service_man_img {*/



/*    position: absolute;*/



/*    bottom: -1px;*/



/*    left: 0px;*/



/*    max-height: 95%;*/



/*    height: auto;*/



/*    width: auto;*/



/*    z-index: 2;*/



/*}*/



.man_image img {
    width: 75%;
    /*display: none;*/
    z-index:9;
}







.man_image {



    text-align: center;



    height: 100%;



    align-items: flex-end;
    position: relative;


    display: flex;



    justify-content: center;



}

.services_sec::before {
    bottom: -50px;
    left: 0;
    content: '';
    height: auto;
    width: 60%;
    border-radius: 50% 50% 50% 50%;
    position: absolute;
    background-color: #d3d3d3;
    aspect-ratio: 1 / 1;
    border-right: 20px solid #e6e5e8;
    border-bottom: 50px solid #e6e5e8;
    transform: translateX(-50%) rotate(-35deg);
}



.badge_dark {



    background: #474747;



    color: #fff;



    padding: 5px 22px;



    border-radius: 30px;



    font-size: 13px;



    font-weight: 600;



    display: inline-block;



    margin-bottom: 20px;



    text-transform: uppercase;



}







.services_header {



    display: flex;



    justify-content: space-between;



    align-items: flex-end;



    margin-bottom: 45px;



}







.services_header h2 {



    font-size: 1.8vw;



    font-weight: 700;



    margin: 0;



    text-transform: uppercase;



}







.slider_nav_arrows {



    display: flex;



    gap: 12px;



}







.srv_btn {



    width: 48px;



    height: 48px;



    border: 1px solid rgba(255, 255, 255, 0.4);



    border-radius: 50%;



    background: transparent;



    display: flex;



    align-items: center;



    justify-content: center;



    cursor: pointer;



    transition: all 0.3s;



}







.srv_btn:hover {



    background: #47c55c;



    border-color: #47c55c;



}







.srv_btn img {



    width: 16px;



}







.services_slider {



    margin: 0 -15px;



}







.service_slide {



    padding: 0 0px;



}







.service_card {



    border-radius: 20px;



    overflow: hidden;



    position: relative;



    padding-bottom: 25px;



}







.srv_img_box {



    width: 100%;



    border-radius: 20px;



    overflow: hidden;



    position: relative;



    z-index: 1;



}







.srv_img_box img {



    width: 100%;



    height: 240px;



    object-fit: cover;



}







.srv_text_box {



    background: #3eb550;



    padding: 30px 25px;



    border-radius: 20px;



    position: relative;



    margin-top: -35px;



    z-index: 2;



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



}







.srv_text_box h3 {



    font-size: 18px;



    color: #fff;



    font-weight: 700;



    margin-bottom: 12px;



    text-transform: uppercase;



}







.srv_text_box p {



    font-size: 13px;



    color: rgba(255, 255, 255, 0.85);



    line-height: 1.6;



    margin-bottom: 25px;



}



.services_content_wrap {



    margin-left: 13%;



    padding: 60px 0px;



}



section.portfolio_sec.sec {



    padding-bottom: unset;



}



/* section start */



/* section end */







/* Choose Us Section */



.choose_sec {

    position: relative;

    padding: 80px 0 0px;

    background: #D3D3D3;
}







.choose_layout_wrap {



    position: relative;



    z-index: 1;



}







.choose_large_img_wrap {



    position: relative;



    width: 100%;



    height: 520px;



    border-radius: 20px;



    overflow: hidden;



}







.choose_large_img {



    width: 100%;



    height: 100%;



    object-fit: cover;



    object-position: center;



}







.choose_heading_box {

    position: absolute;

    top: 0;

    left: 0;

    background: #D3D3D3;

    padding: 0 30px 30px 0;

    border-bottom-right-radius: 24px;

    z-index: 2;

    max-width: 60%;
}







.choose_heading_box h2 {



    color: #3b3b3b;



    font-size: 36px;



    font-weight: 700;



    margin: 0;



    text-transform: uppercase;



    line-height: 1.25;



}







.choose_text_content {



    padding-top: 15px;



    padding-right: 40px;



}







.choose_text_content p {

    font-size: 13.5px;

    color: #000;

    line-height: 1.7;

    margin-bottom: 30px;
}







.choose_feature {



    display: flex;



    align-items: center;



    gap: 12px;



}







.choose_feature img {



    width: 20px;



    height: 20px;



    object-fit: contain;



}







.choose_feature span {



    font-size: 13.5px;



    color: #3b3b3b;



    font-weight: 600;



}







.choose_small_img_wrap {



    position: absolute;



    bottom: 30px;



    right: 30px;



    width: 30%;



    padding: 10px;



    background: #ffffff;



    border-radius: 10px;



    z-index: 3;



    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);



}







.choose_small_img {



    width: 100%;



    border-radius: 10px;



    display: block;



    height: 420px;



    object-fit: cover;



}







/* Portfolio Section */



.portfolio_card {



    position: relative;



    border-radius: 12px;



    overflow: hidden;



    height: 100%;



    min-height: 420px;



    display: flex;



    align-items: flex-end;



}







.port_img {



    position: absolute;



    top: 0;



    left: 0;



    width: 100%;



    height: 100%;



    object-fit: cover;



    z-index: 1;



}







.port_overlay_dark {



    position: absolute;



    top: 0;



    left: 0;



    width: 100%;



    height: 100%;



    background: linear-gradient(to top, rgba(45, 45, 45, 0.95) 0%, rgba(45, 45, 45, 0.7) 40%, transparent 100%);



    z-index: 2;



    transition: opacity 0.4s ease;



}







.port_overlay_green {



    position: absolute;



    top: 0;



    left: 0;



    width: 100%;



    height: 100%;



    background: linear-gradient(to top, rgba(71, 197, 92, 0.95) 0%, rgba(71, 197, 92, 0.65) 45%, transparent 100%);



    z-index: 2;



    opacity: 0;



    transition: opacity 0.4s ease;



}







.portfolio_card:hover .port_overlay_green {



    opacity: 1;



}







.port_content {



    position: relative;



    z-index: 3;



    padding: 40px 35px 35px;



    width: 100%;



    color: #fff;



}







.port_number {



    background: #fff;



    color: #2b2b2b;



    font-size: 16px;



    font-weight: 700;



    width: 45px;



    height: 38px;



    display: flex;



    align-items: center;



    justify-content: center;



    border-radius: 6px;



    margin-bottom: 25px;



}







.port_content h3 {



    font-size: 20px;



    color: #fff;



    margin-bottom: 15px;



    font-weight: 500;



    text-transform: uppercase;



}







.port_content p {



    font-size: 13px;



    color: rgba(255, 255, 255, 0.7);



    line-height: 1.6;



    margin-bottom: 20px;



    font-weight: 400;



    transition: color 0.4s ease;



}
.box_p {
    max-height: 40px; 
    overflow: hidden;
    
    transition: max-height 0.4s ease-in-out;
}

.portfolio_card:hover .box_p {
    max-height: 1000px; 
    
    overflow: hidden; 
}





.portfolio_card:hover .port_content p {



    color: rgba(255, 255, 255, 0.85);



}







.more_detail_link {



    color: #fff;



    font-size: 13px;



    font-weight: 600;



    text-transform: uppercase;



    text-decoration: underline;



    text-underline-offset: 4px;



    transition: all 0.3s;



}







.more_detail_link:hover {



    color: #fff;



    text-decoration: underline;



    opacity: 0.8;



}







/* section start */



/* section end */







/* Blog Section */



.blogs_sec {



    position: relative;



    padding: 80px 0;



}







.badge_green {



    background: #47c55c;



    color: #fff;



    padding: 6px 20px;



    border-radius: 30px;



    font-size: 14px;



    font-weight: 500;



    display: inline-block;



    margin-bottom: 15px;



    text-transform: uppercase;



}







.sec_head h2 {



    color: #3b3b3b;



    font-size: 38px;



    font-weight: 700;



    margin: 0;



    text-transform: uppercase;



}







.theme_btn_green {



    background: #47c55c;



    color: #fff;



    padding: 16px 35px;



    border-radius: 30px;



    font-size: 14px;



    font-weight: 500;



    display: inline-block;



    text-transform: uppercase;



    transition: all 0.3s;



    text-decoration: none;



}







.theme_btn_green:hover {



    background: #3eb550;



    color: #fff;



}







.blog_left_col {



    display: flex;



    flex-direction: column;



    gap: 20px;



    height: 100%;



}







.blog_card_small {



    flex: 1;



    background: #fff;



    border-radius: 12px;



    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);



    display: flex;



    overflow: hidden;



    position: relative;



    border: 1px solid #f0f0f0;



}







.blog_img_small {



    width: 45%;



    flex-shrink: 0;



    height: 230px;

}







.blog_img_small img {



    width: 100%;



    height: 100%;



    object-fit: cover;



}







.blog_content_small {

    padding: 25px;

    width: 55%;

    display: flex;

    flex-direction: column;

    justify-content: center;

    background-color: #D3D3D3;
}







.blog_content_small h3 {



    font-size: 20px;



    color: #2b2b2b;



    margin-bottom: 25px;



    line-height: 1.4;



    font-weight: 500;



    text-transform: uppercase;



}







.blog_meta {



    display: flex;



    align-items: center;



    justify-content: space-between;



}







.author_info {



    display: flex;



    align-items: center;



    gap: 12px;



}







.author_img {



    width: 35px;



    height: 35px;



    border-radius: 50%;



    object-fit: cover;



}







.author_text h4 {



    font-size: 13px;



    color: #3b3b3b;



    margin: 0 0 2px 0;



    font-weight: 600;



    text-transform: capitalize;



}







.author_text p {

    font-size: 11px;

    color: #000;

    margin: 0;
}







.bookmark_icon i {

    color: #000;

    font-size: 18px;
}







.blog_card_large {



    border-radius: 12px;



    overflow: hidden;



    position: relative;



    height: 100%;



    min-height: 440px;



}







.blog_img_large {



    width: 100%;



    height: 100%;



    object-fit: cover;



    position: absolute;



    top: 0;



    left: 0;



}







.blog_content_large {



    position: absolute;



    bottom: 0;



    left: 0;



    width: 100%;



    padding: 50px 30px 30px;



    color: #fff;



    z-index: 2;



}







.blog_content_large::before,



.blog_content_large::after {



    content: '';



    position: absolute;



    top: 0;



    left: 0;



    width: 100%;



    height: 100%;



    z-index: -1;



    transition: opacity 0.4s ease;



}







.blog_content_large::before {



    background: linear-gradient(to top, rgba(45, 45, 45, 0.95) 0%, rgba(45, 45, 45, 0.6) 50%, transparent 100%);



}







.blog_content_large::after {



    background: linear-gradient(to top, rgba(71, 197, 92, 0.95) 0%, rgba(71, 197, 92, 0.6) 50%, transparent 100%);



    opacity: 0;



}







.blog_card_large:hover .blog_content_large::after {



    opacity: 1;



}







.blog_content_large h3 {



    font-size: 24px;



    color: #fff;



    margin-bottom: 25px;



    line-height: 1.4;



    font-weight: 500;



    text-transform: uppercase;



}







.blog_content_large .author_text h4 {



    color: #fff;



}







.blog_content_large .author_text p {



    color: rgba(255, 255, 255, 0.8);



}







.blog_content_large .bookmark_icon i {



    color: #fff;



}



.services_slider .slick-slide {



    margin: 0px 10px;



}







/* ===== Hover Effects ===== */







/* About images hover */



.about_small_img img,



.about_right_img img {



    transition: transform 0.4s ease;



}



.about_small_img:hover img,



.about_right_img:hover img {



    transform: scale(1.03);



}







/* Choose us images hover */



.choose_large_img {



    transition: transform 0.4s ease;



}



.choose_large_img_wrap:hover .choose_large_img {



    transform: scale(1.02);



}



.choose_small_img {



    transition: transform 0.4s ease;



}



.choose_small_img_wrap:hover .choose_small_img {



    transform: scale(1.05);



}







/* Service card hover */



.service_card {



    transition: transform 0.3s ease;



}



.service_card:hover {



    transform: translateY(-5px);



}







/* Blog small card hover */



.blog_card_small {



    transition: transform 0.3s ease, box-shadow 0.3s ease;



}



.blog_card_small:hover {



    transform: translateY(-4px);



    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);



}







/* Blog large card hover */



.blog_card_large {



    transition: transform 0.3s ease;



}



.blog_card_large:hover {



    transform: scale(1.02);



}







/* Portfolio card hover */



.portfolio_card {



    transition: transform 0.3s ease;



}



.portfolio_card:hover {



    transform: scale(1.02);



}







/* Choose feature hover */



.choose_feature {



    transition: transform 0.2s ease;



}



.choose_feature:hover {



    transform: translateX(5px);



}







/* Green buttons hover */



.theme_btn_green {



    transition: all 0.3s ease;



}



.theme_btn_green:hover {



    transform: translateY(-2px);



    box-shadow: 0 6px 20px rgba(71, 197, 92, 0.4);



}







/* Badge hover */



.badge_green {



    transition: transform 0.2s ease;



}



.badge_green:hover {



    transform: scale(1.05);



}











.padding-side {



    padding: 0 5%;



}



/* Home Page end*/

/*inner-banner start*/

section.banner_sec.inn {

position: relative;

height: 510px;

margin-top: 25px;
}



section.banner_sec.inn::before {background-image: url(../images/inner-banner.jpg);background-size: cover;}

section.banner_sec.inn .banner_text.hei h1 span {

    font-size: 41px;

}

section.about_sec.sec.inn {

    padding-bottom: unset !important;

}

section.banner_sec.inn.con .banner_text.hei {

    margin-left: -50px;

}

section.banner_sec.inn.con {

    margin-bottom: 100px;

}

section.portfolio_sec.sec.inn .row {

    margin-top: 20px;

}

/* Card Layout Styling */

.service-card {

    position: relative;

    border-radius: 20px;

    overflow: hidden;

    background: #d3d3d3;

    transition: all 0.4s ease;

    text-align: left;

    height: 100%;
}



.card-img-wrapper img {

    width: 100%;

    height: 300px;
    /* Image height set karne ke liye */

    object-fit: cover;

    border-radius: 20px;

}



/* Content Box Styling (Floating effect) */

.card-content {

    background: #d3d3d3;

    margin: -60px 10px 20px 10px;
    /* Overlap effect */

    padding: 14px;

    border-radius: 15px;

    position: relative;

    z-index: 2;

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

    transition: all 0.4s ease;
}



.card-content h5 {font-weight: 400;font-size: 1.1rem;color: #333;font-size: 18px;color: #404042;}



.card-content p {font-size: 0.9rem;color: #000;margin: 10px 0;}


.more-detail {

    color: #28a745;

    text-decoration: underline;

    font-weight: bold;

    font-size: 0.8rem;

}



/* --- HOVER EFFECT --- */

.service-card:hover .card-content {

    background-color: #40ba51;
    /* Green color */

}



.service-card:hover .card-content h5,

.service-card:hover .card-content p,

.service-card:hover .card-content .more-detail {

    color: #ffffff;
    /* Hover par sab text white ho jayega */

}



.service-card:hover .more-detail {

    color: #ffffff;

    text-decoration: none;

}

section.services-section.py-5 h2 {

    font-size: 35px;

    color: #404042;

    margin: 20px 0px;

}



.banner_text.hei h2 {

    font-size: 56px;

    line-height: 1;

    font-weight: 400;

    color: #404042;

}



.banner_text.hei h2 span {

    display: block;

    color: #3eb84b;

}



section.blog-detailed {

    padding: 100px 0px 40px;

}

.blog-detailed-img img {

    width: 100%;

    height: 540px;

    object-fit: cover;

    border-radius: 10px;

}

.blog-det-txt ul {

    display: block;

    align-items: center;

    column-count: 2;

    width: 67%;

}



.blog-det-txt ul li {

    display: block;

    position: relative;

}

.blog-ul-det {

    display: flex;

    align-items: center;

    justify-content: space-between;

}



.blog-ul-det ul {

    display: flex;

    align-items: center;

    gap: 60px;

}



.blog-ul-det h3 {

    font-size: 35px;

    line-height: 1;

    font-weight: 300;

    color: #404042;

    width: 60%;

}

.blog-ul-det ul {

    width: 40%;

    display: flex;

    align-items: center;

    justify-content: flex-end;

    list-style: none;

}



.blog-det-txt {

    margin-top: 20px;

}



.blog-ul-det ul li {

    display: flex;

    align-items: center;

    gap: 23px;

}

.blog-ul-det ul li:before {

    display: none;
}

.blog-ul-det ul li i {

    color: #47c55c;

}



.blog-ul-det ul li p {

    font-size: 20px;

    margin: unset;

    text-transform: uppercase;

}

.blog-det-txt ul li::before {

    position: absolute;

    top: 11px;

    left: -10px;

    content: '';

    background-color: #47c55c;

    height: 5px;

    width: 5px;

    border-radius: 50%;

}



.blog-det-txt ul li p {

    color: #000;

}

.project-statement.mb-5 h3 {

    font-size: 30px;

}

section.banner-new {
    padding: 50px 0px 30px;
    text-align: center;
}

.new-banner-img img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.banner-new-txt h1 {
    color: #000;
    font-size: 30px;
}

.banner-new-txt h3 {
    font-size: 40px;
    color: #000;
}

.banner-new-txt h4 {
    margin: 20px 0px;
    color: #3eb84b;
    font-size: 30px;
}
.about_text h2 {
    font-size: 30px;
    line-height: 1.2;
}
.about_text ul li {
    font-size: 14px;
    padding-bottom: 5px;
    line-height: 21px;
    position: relative;
}
.about_text ul {
    padding-left: 20px;
}


.about_text ul.bot-ul {
    column-count: 2;
    gap: 60px;
}
h2.bot-abt.aos-init.aos-animate {
    margin-top: 30px;
}
.about_text ul li::before {
    position: absolute;
    top: 11px;
    left: -16px;
    content: '';
    background-color: #47c55c;
    height: 6px;
    width: 6px;
    border-radius: 50%;
}
.about_text h5 {
    font-size: 22px;
    line-height: 1.3;
}

section.banner_sec.inn.designing_bridges::before{
    background-image: url(../images/designingbridges/Hermitage-bridge-Amsterdam.jpg) !important;
    background-position: bottom;
}

section.banner_sec.inn.deisgning_places_worship::before{
    background-image: url(../images/designingplacesofworship/Orthodox-Monastery_Island-of-Mull.jpg) !important;
    background-position: center;
}
section.banner_sec.inn.hotesl_and_rest_banner::before{
    background-image: url(../images/hotelsrestaurantsbars/Sicaffe_Exterior-1.jpg) !important;
    background-position: center;
}

section.banner_sec.inn.masterplannig_pages::before{
    background-image: url(../images/masterplanningprojects/Braeheadregeneration.jpg) !important;
    background-position: center;
}
section.banner_sec.inn.residential_banners::before{
    background-image: url(../images/residential/Cardrossexternal1.jpg) !important;
    background-position: center;
}

section.banner_sec.inn.shoping_center_banner::before{
    background-image: url(../images/shoppingmalls_cinemasmultiusebuildings/MonumentMall_Newcastle_Exterior1.jpg) !important;
    background-position: center;
}

.choose_text h3 {
    font-size: 30px;
    line-height: 1.2;
}
.choose_text ul li {
    font-size: 14px;
    font-weight: 500;
    line-height: 25px;
    color: #0000007c;
    font-family: "Montserrat", serif;
    list-style: disc;
}
.choose_text h3 {
    margin-top: 30px;
}

section.error-404.not-found {
    text-align: center;
    padding: 90px 10px;
}

section.error-404.not-found {
    text-align: center;
}

section.error-404.not-found h2 {
    font-size: 42px;
}
