body {
    background-color: #a4eea4; /* light green */
}

/********** Template CSS **********/
:root {
    --primary: #604adf;
    --secondary: #030641;
    --light: #E8F5E9;
    --dark: #0F4229;
}

.back-to-top {
    position: fixed;
    display: none;
    right: 30px;
    bottom: 30px;
    z-index: 99;
}

h1,
.h1,
h2,
.h2,
.fw-bold {
    font-weight: 700 !important;
}

h3,
.h3,
h4,
.h4,
.fw-medium {
    font-weight: 600 !important;
}

h5,
.h5,
h6,
.h6,
.fw-semi-bold {
    font-weight: 500 !important;
}


/*** Spinner ***/
#spinner {
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s ease-out, visibility 0s linear .5s;
    z-index: 99999;
}

#spinner.show {
    transition: opacity .5s ease-out, visibility 0s linear 0s;
    visibility: visible;
    opacity: 1;
}


/*** Button ***/
.btn {
    transition: .5s;
    font-weight: 500;
}

.btn-primary,
.btn-outline-primary:hover {
    color: var(--light);
}

.btn-square {
    width: 38px;
    height: 38px;
}

.btn-sm-square {
    width: 32px;
    height: 32px;
}

.btn-lg-square {
    width: 48px;
    height: 48px;
}

.btn-square,
.btn-sm-square,
.btn-lg-square {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: normal;
}


/*** Navbar ***/
.navbar.sticky-top {
    top: -100px;
    transition: .5s;
}

.navbar .navbar-brand,
.navbar a.btn {
    height: 80px
}

.navbar .navbar-nav .nav-link {
    margin-right: 35px;
    padding: 25px 0;
    color: var(--dark);
    font-size: 18px;
    font-weight: 500;
    outline: none;
}

.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link.active {
    color: var(--primary);
}

.navbar .dropdown-toggle::after {
    border: none;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    vertical-align: middle;
    margin-left: 8px;
}

@media (max-width: 991.98px) {
    .navbar .navbar-nav .nav-link  {
        margin-right: 0;
        padding: 10px 0;
    }

    .navbar .navbar-nav {
        border-top: 1px solid #EEEEEE;
    }
}

@media (min-width: 992px) {
    .navbar .nav-item .dropdown-menu {
        display: block;
        border: none;
        margin-top: 0;
        top: 150%;
        opacity: 0;
        visibility: hidden;
        transition: .5s;
    }

    .navbar .nav-item:hover .dropdown-menu {
        top: 100%;
        visibility: visible;
        transition: .5s;
        opacity: 1;
    }
}


/*** Header | UPDATED CAROUSEL CSS ***/

/* Reduce carousel height */
#header-carousel .carousel-item img {
    height: 60vh;               /* Change height here */
    object-fit: cover;
}

/* FIXED CENTER TEXT */
.carousel-caption {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: rgba(15, 66, 41, .6);
    z-index: 1;
}

/* Optional: dark overlay (already included inside caption) */

/* Carousel controls */
.carousel-control-prev,
.carousel-control-next {
    width: 15%;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    width: 3rem;
    height: 3rem;
    border-radius: 3rem;
    background-color: var(--primary);
    border: 10px solid var(--primary);
}

@media (max-width: 768px) {
    #header-carousel .carousel-item {
        position: relative;
        min-height: 450px;
    }
    
    #header-carousel .carousel-item img {
        position: absolute;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

.page-header {
    background: linear-gradient(rgba(15, 66, 41, .6), rgba(15, 66, 41, .6)), url(../img/team-2.jpg) center center no-repeat;
    background-size: cover;
}

.page-header .breadcrumb-item+.breadcrumb-item::before {
    color: var(--light);
}

.page-header .breadcrumb-item,
.page-header .breadcrumb-item a {
    font-size: 18px;
    color: var(--light);
}


/*** Top Feature ***/
@media (min-width: 991.98px) {
    .top-feature {
        position: relative;
        margin-top: -80px;
        z-index: 1;
    }
}


/*** Facts & Quote ***/
.facts,
.quote {
    background: rgba(15, 66, 41, .6);
}


/*** Service ***/
.service-item {
    position: relative;
    text-align: center;
}

.service-item .service-img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    overflow: hidden;
    z-index: -1;
}

.service-item .service-img img {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    object-fit: cover;
    transform: scale(1.2);
    transition: .3s;
    z-index: -1;
}

.service-item:hover .service-img img {
    transform: scale(1);
}

.service-item .service-text {
    background: #FFFFFF;
    box-shadow: 0 0 45px rgba(0, 0, 0, .08);
    transition: .3s;
}

.service-item:hover .service-text {
    background: rgba(15, 66, 41, .6);
}

.service-item .service-text h4,
.service-item .service-text p {
    transition: .3;
}

.service-item:hover .service-text h4 {
    color: #FFFFFF;
}

.service-item:hover .service-text p {
    color: var(--light);
}

.service-item .service-text .btn-square {
    width: 100px;
    height: 100px;
    background: transparent;
    transition: .5s;
}

.service-item:hover .service-text .btn-square {
    background: var(--light);
}

.service-item .service-text .btn {
    width: 31px;
    height: 31px;
    display: inline-flex;
    align-items: center;
    color: var(--dark);
    background: var(--light);
    white-space: nowrap;
    overflow: hidden;
    transition: .3s;
}

.service-item:hover .service-text .btn {
    width: 112px;
}


/*** Project Portfolio ***/
#portfolio-flters {
    display: inline-block;
    background: var(--light);
    padding: 10px 15px;
}

#portfolio-flters li {
    display: inline-block;
    font-weight: 500;
    color: var(--primary);
    cursor: pointer;
    transition: .5s;
    border-bottom: 2px solid transparent;
}

#portfolio-flters li:hover,
#portfolio-flters li.active {
    color: var(--dark);
    border-color: var(--dark);
}

.portfolio-inner {
    position: relative;
    overflow: hidden;
}

.portfolio-inner::before,
.portfolio-inner::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(15, 66, 41, .6);
    transition: .5s;
}

.portfolio-inner::after {
    left: auto;
    right: 0;
}

.portfolio-inner:hover::before,
.portfolio-inner:hover::after {
    width: 50%;
}

.portfolio-inner .portfolio-text {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: .5s;
    z-index: 3;
    opacity: 0;
}

.portfolio-inner:hover .portfolio-text {
    transition-delay: .3s;
    opacity: 1;
}

.portfolio-inner .portfolio-text .btn {
    background: var(--light);
    color: var(--primary);
}

.portfolio-inner .portfolio-text .btn:hover {
    background: var(--primary);
    color: var(--light);
}


/*** Team ***/
.team-item {
    position: relative;
    overflow: hidden;
}

.team-item .team-text {
    position: absolute;
    width: calc(100% - 45px);
    left: -100%;
    bottom: 45px;
    padding: 1.5rem;
    background: #FFFFFF;
    border-radius: 0 4px 4px 0;
    opacity: 0;
    transition: .5s;
}

.team-item:hover .team-text {
    left: 0;
    opacity: 1;
}

.team-item .team-social .btn {
    background: var(--light);
    color: var(--primary);
}

.team-item .team-social .btn:hover {
    background: var(--primary);
    color: var(--light);
}

.team-item .team-img .team-social {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .5s;
    z-index: 3;
    opacity: 0;
}

.team-item:hover .team-img .team-social {
    transition-delay: .3s;
    opacity: 1;
}


/*** Testimonial ***/
.testimonial-carousel .owl-item img {
    width: 100px;
    height: 100px;
}

.testimonial-carousel .owl-nav {
    margin-top: 30px;
    display: flex;
}

.testimonial-carousel .owl-nav .owl-prev,
.testimonial-carousel .owl-nav .owl-next {
    margin-right: 15px;
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary);
    background: var(--light);
    border-radius: 4px;
    font-size: 22px;
    transition: .5s;
}

.testimonial-carousel .owl-nav .owl-prev:hover,
.testimonial-carousel .owl-nav .owl-next:hover {
    background: var(--primary);
    color: var(--light);
}


/*** Footer ***/
.footer .btn.btn-link {
    display: block;
    margin-bottom: 5px;
    padding: 0;
    text-align: left;
    color: var(--light);
    font-weight: normal;
    text-transform: capitalize;
    transition: .3s;
}

.footer .btn.btn-link::before {
    position: relative;
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 10px;
}

.footer .btn.btn-link:hover {
    color: var(--light);
    letter-spacing: 1px;
    box-shadow: none;
}
/* .footer * {
    margin: 4 !important;
    padding: 4 !important;
} */

/*copyright */
.copyright {
    color: var(--light);
    background: #072A19;
}

.copyright a {
    color: #FFFFFF;
}

.copyright a:hover {
    color: var(--primary);
}
/* Center wrapper */
.spinner-wrapper {
    position: relative;
    width: 120px;
    height: 120px;
}

/* Image styling */
.spinner-image {
    width: 70px;
    height: 70px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
}

/* Dotted rotating circle */
.dotted-circle {
    width: 110px;
    height: 110px;
    border: 4px dotted #3498db;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    animation: rotate 1.5s linear infinite;
}

/* Rotation animation */
@keyframes rotate {
    from { transform: translate(-50%, -50%) rotate(0deg); }
    to   { transform: translate(-50%, -50%) rotate(360deg); }
}

/* Core value section */
.section-box{
    background:#fff;
    border-radius:20px;
    padding:40px 35px;
    box-shadow:0 4px 25px rgba(0,0,0,0.08);
    border-left:5px solid #28c74f;
    transition:0.3s;
}

.section-box:hover{
    transform:translateY(-4px);
}

.section-title{
    text-align:center;
    font-size:28px;
    font-weight:700;
    color:#9b1d8c;
    margin-bottom:20px;
}

.section-box img{
    display:block;
    margin:0 auto 25px auto;
    width:110px;
}

.values-list i{
    color:#9b1d8c;
    margin-right:10px;
    font-size:18px;
}

.values-list li{
    margin-bottom:12px;
    font-size:18px;
}

/* hero section for About */

.hero-section {
    width: 100%;
    background: #111;
    padding: 0;
}
.about-img,
.founder-col {
    align-self: flex-start;
}

.founder-box {
    background: #f8f9fa;
    padding: 20px;
    border-radius: 8px;
}

.hero-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    width: 100%;
    min-height: 400px; /* reduce height */
}
.founder-box,
.expertise-box {
    background: #f8f9fa;
    padding: 20px;
    border-radius: 8px;
}

@media (min-width: 992px) {
    .founder-box,
    .expertise-box {
        position: relative;
    }
}

.hero-image img {
    width: 90%;
    height: 100%;
    max-height: 450px; /* reduced height */
    object-fit: cover;
}

.hero-content {
    position: absolute;
    right: 5%;
    width: 40%;
    color: #fff;
    background: rgba(0,0,0,0.65);
    padding: 40px;
    border-radius: 4px;
}

/* TITLE + TEXT STYLE */
.hero-content .sub-title {
    color: #6cff4d;
    font-weight: 600;
    margin-bottom: 5px;
}

.hero-content .title {
    font-size: 36px; /* reduced */
    font-weight: 800;
    line-height: 1.2;
}

.hero-content p {
    margin: 15px 0;
    line-height: 1.5;
    font-size: 15px;
}

/* BUTTON */
.hero-btn {
    padding: 10px 25px;
    color: #fff;
    border: 1px solid #fff;
    text-decoration: none;
    display: inline-block;
    transition: 0.3s;
}

.hero-btn:hover {
    background: #7fff00;
    color: #000;
    border-color: #7fff00;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .hero-container {
        flex-direction: column;
    }

    .hero-image img {
        width: 100%;
        max-height: 350px;
    }

    .hero-content {
        position: relative;
        width: 90%;
        margin-top: -40px;
    }

    .hero-content .title {
        font-size: 32px;
    }
}

@media (max-width: 576px) {
    .hero-content {
        padding: 25px;
        width: 95%;
    }

    .hero-content .title {
        font-size: 28px;
    }

    .hero-image img {
        max-height: 280px;
    }
}

/* Floating Animation */
.floating-img {
    animation: float 4s ease-in-out infinite;
    transition: 0.4s ease;
    cursor: pointer;
}

@keyframes float {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
    100% { transform: translateY(0px); }
}

/* Hover Motion Effect */
.floating-img:hover {
    transform: scale(1.05) rotate(1deg);
}

/* Card Style */
.content-box {
    border-left: 4px solid #00c853;
    background: #fff;
}

.image-box img {
    border-radius: 15px;
}
.process-wrapper {
    display: flex;
    gap: 25px;
    margin: 40px auto;
    flex-wrap: wrap;
}

.process-box {
    flex: 1;
    min-width: 300px;
    background: #ffffff;
    border: 2px solid #1f6feb;
    border-radius: 12px;
    padding: 25px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    transition: 0.3s ease;
}

.process-box:hover {
    transform: translateY(-6px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

.process-title {
    background: #1f6feb;
    color: #fff;
    text-align: center;
    padding: 12px 0;
    border-radius: 8px;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
}

.process-box ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.process-box ul li {
    margin-bottom: 14px;
    padding-left: 30px;
    position: relative;
    font-size: 15px;
    color: #333;
}

.process-box ul li::before {
    content: "➤";
    font-size: 16px;
    color: #1f6feb;
    position: absolute;
    left: 0;
    top: 0;
}
.blue-heading {
    width: 100%;
    background: #1E90FF; /* Blue Border */
    padding: 8px;
    border-radius: 30px;
    border: 3px solid #1E90FF;
    display: flex;
    justify-content: center;
    align-items: center;
}

.blue-heading span {
    background: white;
    padding: 10px 40px;
    border-radius: 30px;
    color: #1E90FF;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 1px;
}





/* services box desigine */
.services-container {
    width: 90%;
    margin: auto;
    text-align: center;
    font-family: Arial, sans-serif;
}

/* SERVICES MAIN TITLE */
.services-title {
    background: #003B8E;      /* Dark Blue */
    color: #ffffff;           /* White Text */
    padding: 18px 0;
    font-size: 30px;
    font-weight: bold;
    border-radius: 10px;
    margin-bottom: 25px;
    border: 3px solid #001f4d;   /* Darker Blue Border */
}

/* BLINK ON HOVER FOR MAIN TITLE */
.services-title:hover {
    animation: blink 0.4s infinite alternate;
    cursor: pointer;
}

/* BLINK EFFECT (same for all boxes) */
@keyframes blink {
    0% { opacity: 1; transform: scale(1); }
    100% { opacity: 0.6; transform: scale(1.05); }
}

.service-row {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-bottom: 25px;
    flex-wrap: wrap;
}

.service-header {
    flex: 1 1 250px;
    padding: 15px;
    color: white;
    font-weight: bold;
    border-radius: 10px;
    text-align: center;
}

.service-box {
    flex: 1 1 250px;
    padding: 15px;
    border-radius: 10px;
    color: white;
    font-size: 15px;
}

/* COLORS */
.purple { background: #5c0ea5; }
.purple-light { background: #7b25cc; }

.grey { background: #6b6b6b; }
.grey-light { background: #8b8b8b; }

.blue { background: #0d61c8; }
.blue-light { background: #1e7feb; }

.orange { background: #e56d00; }
.orange-light { background: #f58a1f; }
/* BLINK EFFECT ON HOVER */
.service-header:hover,
.service-box:hover {
    animation: blink 0.4s infinite alternate;
    cursor: pointer;
}

@keyframes blink {
    0% { opacity: 1; transform: scale(1); }
    100% { opacity: 0.5; transform: scale(1.05); }
}






/* ROW */
.product-row {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    width: 90%;
    margin: 30px auto;
}

/* BOXES */
.product-box {
    background: #003B8E;     /* Dark Blue */
    color: white;
    padding: 15px 25px;
    font-weight: bold;
    border-radius: 6px;
    transition: 0.3s ease;
    cursor: pointer;
}

/* ARROWS */
.arrow {
    font-size: 28px;
    font-weight: bold;
    color: #003B8E;          /* Arrow Color */
}

/* HOVER EFFECT */
.product-box:hover {
    background: #005fcc;     /* Hover Color */
    animation: blink 0.4s infinite alternate;
    transform: scale(1.05);
}

/* BLINK ANIMATION */
@keyframes blink {
    0% { opacity: 1; }
    100% { opacity: 0.6; }
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .product-row {
        flex-wrap: wrap;
    }
    .arrow {
        display: none; /* hide arrows on mobile */
    }
}
.two-column-section {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 30px;
    gap: 40px;
}

.left-content {
    width: 60%;
}

.left-content h3 {
    font-size: 22px;
    margin-top: 25px;
    margin-bottom: 10px;
    font-weight: 600;
}

.left-content ul {
    list-style: none;
    padding-left: 0;
}

.left-content ul li {
    font-size: 17px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
}

.icon {
    background: #14035c;  /* purple circle color */
    color: white;
    padding: 5px 8px;
    border-radius: 50%;
    font-size: 12px;
    margin-right: 10px;
}

.right-image img {
    width: 350px;
    border-radius: 10px;
}

/* Responsive */
@media(max-width: 768px){
    .two-column-section {
        flex-direction: column;
    }
    .left-content, .right-image {
        width: 100%;
    }
    .right-image img {
        width: 100%;
    }
}
.feature-line {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 16px;
    line-height: 1.4;
}

/* Tick icon style */
.tick-icon {
    color: #003399;  /* Dark Blue */
    font-size: 20px;
    margin-top: 3px;
    flex-shrink: 0;  /* Prevent icon from shrinking */
}

/* Paragraph style */
.feature-line p {
    margin: 0;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .feature-line {
        flex-direction: column; /* Stack icon and text */
        align-items: flex-start;
        gap: 6px;
    }

    .tick-icon {
        margin-top: 0;
        font-size: 18px;
    }

    .feature-line p {
        font-size: 15px;
        line-height: 1.5;
    }
}

@media (max-width: 480px) {
    .feature-line {
        gap: 4px;
    }

    .tick-icon {
        font-size: 16px;
    }

    .feature-line p {
        font-size: 14px;
        line-height: 1.4;
    }
}



/* Niletech Infrabuild Treatment Technology */
.diff-box {
    display: flex;
    align-items: center; /* Vertically center image and content */
    border: 4px solid #1a73e8; 
    border-radius: 12px;
    padding: 20px;
    background: #d3c6e0;
    gap: 20px;
}

/* Left Image */
.left-img {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.left-img img {
    width: 200px;
    height: auto;
    border-radius: 10px;
}

/* Content */
.content {
    flex: 1;
}

.title {
    text-align: center;
    color: #1a73e8;
    font-weight: 700;
    margin-bottom: 20px;
    letter-spacing: 1px;
}

.diff-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.diff-list li {
    margin-bottom: 12px;
    display: flex;
    line-height: 22px;
}

.icon {
    width: 24px;
    height: 24px;
    background: #1a73e8;
    color: white;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    margin-right: 10px;
}

/* Responsive Styles */
@media (max-width: 992px) {
    .diff-box {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 15px;
    }

    .left-img {
        margin-bottom: 15px;
    }

    .left-img img {
        width: 180px;
    }

    .diff-list li {
        justify-content: flex-start; /* keep icon + text aligned */
    }
}

@media (max-width: 576px) {
    .diff-box {
        padding: 10px;
        gap: 10px;
    }

    .left-img img {
        width: 150px;
    }

    .title {
        font-size: 20px;
        margin-bottom: 15px;
    }

    .diff-list li {
        font-size: 14px;
        line-height: 20px;
    }

    .icon {
        width: 20px;
        height: 20px;
        font-size: 12px;
        margin-right: 8px;
    }
}
/* Niletech Infrabuild Treatment Technology END */
/* HEADING START In-Situ Treatment of Sludge of Septic Tanks of Community / Mobile Toilets */


@keyframes slideUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Hover effect */
.hover-float:hover {
    transform: translateY(-6px);
    transition: 0.3s;
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15);
}
.slide-up-scroll {
    opacity: 0;
    transform: translateY(50px);
    transition: all .8s ease-out;
}

.slide-up-scroll.active {
    opacity: 1;
    transform: translateY(0);
}
.hover-float {
    transition: 0.3s ease;
}

.hover-float:hover {
    transform: translateY(-8px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.25);
}
/* END HEADING START In-Situ Treatment of Sludge of Septic Tanks of Community / Mobile Toilets */

/* Start Contact page  */
.text-blue {
    color: #002b7f;
}

.border-left-blue {
    border-left: 4px solid #002b7f;
}
.border-blue {
    border: 2px solid #0d6efd;  /* Bootstrap Primary Blue */
    border-radius: 8px;
}

/* End Contact page  */




/* Make navbar links bold + minimal spacing */
/* Super Bold Navbar Menu */
.navbar .nav-link {
    font-weight: 800 !important;   /* MORE BOLD */
    padding: 8px 12px !important;  /* compact spacing */
    font-size: 16px;
    color: #000 !important;
    transition: 0.3s ease;
}

/* Hover Glow */
.navbar .nav-link:hover {
    color: #0d6efd !important;
    text-shadow: 0 0 6px rgba(13, 110, 253, 0.6);
}

/* Active Link */
.navbar .nav-link.active {
    color: #0d6efd !important;
    border-bottom: 2px solid #0d6efd;
    font-weight: 900 !important;   /* EVEN BOLDER */
}
/* Reduce spacing between menu items */
.navbar-nav .nav-item {
    margin: 0 10px !important;   /* LEFT–RIGHT GAP */
}

/* Reduce extra padding from links */
.navbar-nav .nav-link {
    padding: 6px 8px !important;
    font-weight: 800;
}

/* Start Call Mail Whatsapp */
/* Floating Bar Holder */
.contact-bar {
    position: fixed;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    gap: 12px;
    z-index: 99999;
}

/* PREMIUM BLUE THEME — Smaller */
.contact-item {
    width: 45px;
    height: 45px;
    background: linear-gradient(145deg, #005DFF, #1A8CFF);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #ffffff !important;  /* <- GREEN STOP */
    font-size: 18px;
    transition: all 0.35s ease-in-out;
    text-decoration: none;
    box-shadow: 0 6px 20px rgba(0, 93, 255, 0.35);
}

/* HOVER */
.contact-item:hover {
    transform: scale(1.15) translateX(6px);
    background: linear-gradient(145deg, #1A8CFF, #005DFF);
    color: #ffffff !important;  /* <- GREEN STOP */
    box-shadow: 0 10px 28px rgba(0, 93, 255, 0.55);
}

/* ICON COLOR FIX (Bootstrap WhatsApp icon is green by default) */
.contact-item i {
    color: #ffffff !important;   /* <- FORCE WHITE */
}

/* End Call Mail Whatsapp */

/* Product Contant Start */
img.shadow {
    transition: 0.3s ease;
}

img.shadow:hover {
    transform: scale(1.03);
}
    /* Ensure left and right content fit correctly */
    @media (min-width: 992px) {
        .left-box {
            max-height: 100%;
        }

        .right-img-grid img {
            height: 180px;
            object-fit: cover;
            width: 100%;
            border-radius: 12px;
        }
    }

    /* Reduce left width slightly for balance */
    @media (min-width: 992px) {
        .col-lg-7 {
            flex: 0 0 64%;
            max-width: 64%;
        }
        .col-lg-5 {
            flex: 0 0 36%;
            max-width: 36%;
        }
    }

    /* Optional: Slight spacing fix */
    .right-img-grid .col-6 {
        padding-right: 8px !important;
        padding-left: 8px !important;
    }
    
/* Product Contant ENd  */
/* project contant start  */
/* Increase left spacing more */
.case-wrapper .col-lg-7 {
    padding-left: 55px !important;   /* increased */
}

/* Main Heading Format */
.heading-bar {
    background: #1a8cff;
    padding: 25px 0;
    border-radius: 50px;
    width: 100%;
    display: flex;
    justify-content: center;
}

.heading-inner {
    background: #ffffff;
    padding: 12px 40px;
    border-radius: 40px;
    font-size: 20px;
    font-weight: 600;
    color: #1a8cff;
    text-align: center;
    letter-spacing: 0.5px;
}

/* Small Headings (Challenge, Intervention etc.) */
.case-section-title {
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    color: #0d47a1;
    margin: 25px 0 15px 0;
    padding: 8px 18px;
    border: 2px solid #1a8cff;
    border-radius: 30px;
    display: inline-block;
    background: #f0f7ff;
}

/* Right images styling */
.case-img {
    border-radius: 12px;
    border: 2px solid #e0ebff;
    box-shadow: 0 4px 15px rgba(0,0,0,0.08);
}

/* Optional: spacing between paragraphs */
.case-wrapper p {
    margin-bottom: 12px;
}
/* Light background */
.case-light {
    background: #a4eea4;
    padding: 50px 0;
}

/* Left side spacing */
.case-wrapper .col-lg-7 {
    padding-left: 55px !important;
}

/* Heading bar */
.heading-bar {
    background: #1a8cff;
    padding: 25px 0;
    border-radius: 50px;
    width: 100%;
    display: flex;
    justify-content: center;
}

.heading-inner {
    background: #ffffff;
    padding: 12px 40px;
    border-radius: 40px;
    font-size: 20px;
    font-weight: 600;
    color: #1a8cff;
}

/* Small centered section titles */
.case-section-title {
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    color: #0d47a1;
    margin: 25px 0 15px 0;
    padding: 8px 20px;
    border: 2px solid #1a8cff;
    border-radius: 30px;
    display: inline-block;
    background: #ffffff;
}

/* Image styling */
.case-img {
    width: 100%;
    border-radius: 12px;
    border: 2px solid #d9e8ff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.10);
}
.case3-bg {
    background: #a4eea4;
    padding: 40px;
    border-radius: 15px;
}

.case-header-outer {
    background: #1e90ff;
    padding: 20px;
    border-radius: 40px;
    text-align: center;
    margin-bottom: 25px;
}

.case-header-inner {
    background: #ffffff;
    display: inline-block;
    padding: 12px 40px;
    border-radius: 30px;
    font-weight: 700;
    font-size: 20px;
    color: #1e90ff;
}

.sub-heading {
    text-align: center;
    font-weight: 600;
    border: 1px solid #007bff;
    display: inline-block;
    padding: 6px 18px;
    margin: 20px 0 15px 0;
    border-radius: 20px;
    background: #e9f3ff;
    color: #0056b3;
}

/* --- IMAGE PERFECT CENTER RIGHT SIDE --- */
.right-img-wrapper {
    display: flex;
    justify-content: center;   /* horizontal center */
    align-items: center;       /* vertical center */
}

.equal-height-row {
    align-items: stretch !important;
}

/* project contant end  */
/* start service contant link  */
.main-heading {
    color: #0e48c5 !important;   /* Light Blue */
    font-weight: 700 !important;
    margin-bottom: 10px !important;
}

.sub-heading {
    font-weight: 600 !important;
    color: #333 !important;
}

.text-content {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #555 !important;
    max-width: 1000px !important;
    margin: auto !important;
}

.service-img {
    border-radius: 10px !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
    transition: transform 0.3s ease !important;
}

.service-img:hover {
    transform: scale(1.05) !important;
}
.tech-sub-heading {
    font-weight: 600 !important;
    color: #2c2c2c !important;
}

.tech-content {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #555 !important;
    max-width: 950px !important;
    margin: auto !important;
}

.tech-img {
    border-radius: 12px !important;
    box-shadow: 0 6px 15px rgba(0,0,0,0.18) !important;
}
/* infra work  */
.infra-heading {
    color: #1f0449 !important;   /* Light Blue */
    font-weight: 700 !important;
}

.infra-sub-heading {
    font-weight: 600 !important;
    color: #2c2c2c !important;
}

.infra-content {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #555 !important;
}

.infra-img {
    border-radius: 12px !important;
    box-shadow: 0 6px 16px rgba(0,0,0,0.18) !important;
}
.infra-content {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #555 !important;
}

.heritage-tech-img {
    border-radius: 12px !important;
    box-shadow: 0 6px 16px rgba(0,0,0,0.18) !important;
    transition: opacity 0.6s ease !important;
}

/* One-time fade on hover */
.heritage-tech-img:hover {
    opacity: 0.6 !important;
}
.infra-content {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #555 !important;
}

/* Common hover effect for all images */
.heritage-hover-img {
    border-radius: 12px !important;
    box-shadow: 0 6px 16px rgba(0,0,0,0.18) !important;
    transition: transform 0.4s ease, box-shadow 0.4s ease !important;
}

/* Lift + depth effect */
.heritage-hover-img:hover {
    transform: translateY(-10px) scale(1.03) !important;
    box-shadow: 0 18px 35px rgba(0,0,0,0.25) !important;
}

/* Water Bodies Rejuvenation */
.water-heading {
    color: #330688 !important;   /* Light Blue */
    font-weight: 700 !important;
}

.water-sub-heading {
    font-weight: 600 !important;
    color: #2c2c2c !important;
}

.water-content {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #555 !important;
}

/* Image with lift / move-up hover effect */
.water-img {
    max-height: 520px !important;
    width: 100% !important;
    object-fit: cover !important;
    border-radius: 12px !important;
    box-shadow: 0 6px 16px rgba(0,0,0,0.18) !important;

    /* EFFECT */
    transition: all 0.45s ease !important;
    transform: translateY(0) scale(1);
}

.water-img:hover {
    transform: translateY(-10px) scale(1.03);
    box-shadow: 0 18px 40px rgba(0,0,0,0.30) !important;
}
/* Container layout */
.bioremediation-section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
}

.content-wrapper {
    display: flex;
    align-items: flex-start;
    gap: 30px;
    flex-wrap: wrap; /* responsive for smaller screens */
}

/* Image container */
.image-container img {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}

.image-container img:hover {
    transform: translateY(-10px) scale(1.05);
    box-shadow: 0 10px 20px rgba(0,0,0,0.25);
}

/* Text container */
.text-container {
    flex: 1;
    min-width: 300px;
}

.text-container h2 {
    margin-bottom: 20px;
    font-size: 28px;
}

.text-container p {
    margin-bottom: 15px;
    line-height: 1.7;
    color: #333;
}

/* Responsive */
@media (max-width: 768px) {
    .content-wrapper {
        flex-direction: column;
    }
    .image-container, .text-container {
        width: 100%;
    }
}
/* ------------------ Layout ------------------ */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
}

.content-wrapper {
    display: flex;
    align-items: flex-start;
    gap: 30px;
    flex-wrap: wrap; /* responsive */
}

/* Image container */
.image-container img {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}

.image-container img:hover {
    transform: translateY(-10px) scale(1.05);
    box-shadow: 0 10px 20px rgba(0,0,0,0.25);
}

/* Text container */
.text-container {
    flex: 1;
    min-width: 300px;
}

.text-container h2 {
    margin-bottom: 20px;
    font-size: 28px;
}

.text-container p {
    margin-bottom: 15px;
    line-height: 1.7;
    color: #333;
}

/* Sustainable Outcomes Section */
.sustainable-outcomes-section {
    background: #a4eea4;
    padding: 40px 20px;
    margin-top: 30px;
}

.sustainable-outcomes-section h2 {
    margin-bottom: 20px;
    font-size: 28px;
}

.sustainable-outcomes-section p {
    margin-bottom: 15px;
    line-height: 1.7;
    color: #333;
}

/* Responsive */
@media (max-width: 768px) {
    .content-wrapper {
        flex-direction: column;
    }
    .image-container, .text-container {
        width: 100%;
    }
}
/* water pollution */

/* ------------------ General Container ------------------ */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
}

/* Main Heading */
.main-heading {
    text-align: center;
    color: #0e48c5; /* Light blue */
    font-size: 36px;
    margin-bottom: 40px;
    font-weight: 700;
}

/* Content Wrapper */
.content-wrapper {
    display: flex;
    align-items: flex-start;
    gap: 30px;
    margin-bottom: 50px;
    flex-wrap: wrap;
}

/* Text Container */
.text-container {
    flex: 1;
    min-width: 300px;
}

.text-container h2 {
    font-size: 28px;
    margin-bottom: 20px;
    font-weight: 700;
}

.text-container p {
    margin-bottom: 15px;
    line-height: 1.7;
    color: #333;
}

/* Image Container */
.image-container {
    flex: 1;
    min-width: 300px;
}

.image-container img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}

.image-container img:hover {
    transform: translateY(-10px) scale(1.05);
    box-shadow: 0 10px 20px rgba(0,0,0,0.25);
}

/* Responsive Design */
@media (max-width: 768px) {
    .content-wrapper {
        flex-direction: column;
    }
    .image-container, .text-container {
        width: 100%;
    }
}
/* Sustainable Planning */
/* Container */
.sustainable-planning-section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 60px 20px;
}

/* Main Heading */
.main-heading {
    text-align: center;
    color: #0e48c5; /* light blue */
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 50px;
}

/* Layout */
.content-wrapper {
    display: flex;
    gap: 35px;
    align-items: flex-start;
    flex-wrap: wrap;
}

/* Image */
.image-container {
    flex: 1;
    min-width: 300px;
}

.image-container img {
    width: 100%;
    border-radius: 12px;
    transition: transform 0.35s ease, box-shadow 0.35s ease;
    cursor: pointer;
}

.image-container img:hover {
    transform: translateY(-12px) scale(1.04);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.25);
}

/* Text */
.text-container {
    flex: 1.5;
    min-width: 300px;
}

.text-container h2 {
    font-size: 26px;
    margin-bottom: 20px;
}

.text-container p {
    margin-bottom: 16px;
    line-height: 1.75;
    color: #333;
}

/* Responsive */
@media (max-width: 768px) {
    .content-wrapper {
        flex-direction: column;
    }

    .main-heading {
        font-size: 28px;
    }
}
.content-wrapper {
    display: flex;
    gap: 35px;
    align-items: center;   /* 👈 THIS IS THE MAIN FIX */
    flex-wrap: wrap;
}
/* hydro */
.section-heading {
  text-align: center;
  color: #3f0db5;
  margin-bottom: 30px;
}

/* Full width text */
.full-width-text {
  margin-bottom: 35px;
}

/* Image + content layout */
.content-wrapper {
  display: flex;
  gap: 30px;
  align-items: center;
  margin-bottom: 40px;
}

/* Image */
.image-container img {
  max-width: 100%;
  border-radius: 10px;
}

/* Lift-up animation */
.lift-up {
  opacity: 0;
  transform: translateY(40px);
  animation: liftUp 0.9s ease forwards;
}

@keyframes liftUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Responsive */
@media (max-width: 768px) {
  .content-wrapper {
    flex-direction: column;
  }
}

/* end service contant link  */
/* Start career page */
.career-mid {
    padding: 60px 20px;
    background: #f4f9fc;
    text-align: center;
}

.career-mid h2 {
    color: #0b6fa4;
    margin-bottom: 10px;
}

.career-intro {
    max-width: 800px;
    margin: 0 auto 30px;
    font-size: 16px;
}

.career-box {
    max-width: 900px;
    margin: auto;
}

.career-item {
    background: #fff;
    padding: 20px;
    margin-bottom: 15px;
    border-radius: 6px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    text-align: left;
}

.career-btn {
    display: inline-block;
    margin-top: 25px;
    padding: 12px 30px;
    background: #0b6fa4;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
}

.career-btn:hover {
    background: #095c88;
}
/* Ultra thin full-width strip */
.contact-strip {
    background: #efefef;
    padding: 6px 0;   /* aur kam height */
}

/* Text tight */
.contact-strip p {
    font-size: 18px;
    color: #333;
    line-height: 1.2;
    font-weight: 500;
    margin: 0;
}

/* Button very compact */
.contact-btn {
    background-color: #0b5e8e;
    color: #fff;
    font-weight: 600;
    padding: 6px 16px;   /* minimum comfortable height */
    border-radius: 2px;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

/* Only button lift-up */
.contact-btn:hover {
    background-color: #084a70;
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 5px 12px rgba(0,0,0,0.25);
}
.career-info h3 {
    font-weight: 500;
    line-height: 1.4;
}

.career-info h5 {
    margin-top: 25px;
    font-weight: 600;
}

.career-info p {
    color: #555;
    line-height: 1.6;
}

/* Right sidebar */
.career-sidebar {
    padding-left: 25px;
    border-left: 1px solid #e5e5e5;
}

.career-sidebar p {
    font-size: 14px;
    margin-bottom: 10px;
}

.career-sidebar i {
    margin-right: 8px;
    color: #0b5e8e;
}

/* Map box */
.map-box {
    margin-top: 15px;
    border-radius: 4px;
    overflow: hidden;
}

/* end career page */
/* cv section  */
/* Center the whole Send CV section */
.send-cv-box {
    max-width: 520px;
    margin: 50px auto;          /* CENTER */
    background: #ffffff;
    padding: 30px 35px;
    border-radius: 8px;
    box-shadow: 0 8px 25px rgba(0,0,0,0.08);
    text-align: left;
}

/* Heading clean & professional */
.send-cv-box h3 {
    margin-bottom: 25px;
    color: #0b5e8e;
    text-align: center;
    font-weight: 600;
}

/* Form spacing */
.send-cv-box .form-group {
    margin-bottom: 18px;
}

/* Inputs professional size */
.send-cv-box input[type="text"],
.send-cv-box input[type="email"],
.send-cv-box input[type="file"] {
    width: 100%;
    padding: 11px 12px;
    border-radius: 4px;
    border: 1px solid #ccc;
    font-size: 14px;
}

/* Small helper text */
.send-cv-box small {
    display: block;
    margin-top: 6px;
    color: #777;
    font-size: 12px;
}

/* Button full width & centered */
.send-cv-box .career-btn {
    width: 100%;
    margin-top: 10px;
    background-color: #0b5e8e;
    color: #fff;
    padding: 11px;
    font-size: 15px;
    font-weight: 600;
    border: none;
    border-radius: 4px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Button hover – subtle lift */
.send-cv-box .career-btn:hover {
    background-color: #084a70;
    transform: translateY(-2px);
    box-shadow: 0 6px 14px rgba(0,0,0,0.2);
}
.report-box {
    background: #ffffff;
    padding: 15px;
    border-radius: 10px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.12);
    transition: transform 0.3s ease;
    height: 100%;
}

.report-box:hover {
    transform: translateY(-5px);
}

.report-box img {
    width: 100%;
    height: auto;
    border-radius: 6px;
    display: block;
}
.odour-heading {
    font-weight: 700;
    color: #1f2d3d;   /* dark professional color */
}

.odour-img {
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.15);
    width: 100%;
    object-fit: cover;
}
.desilting-heading {
    color: #0b3c6d;   /* dark blue */
    font-weight: 700;
}

/* Image wrapper */
.desilting-img-wrapper {
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.15);
}

/* Image */
.desilting-img {
    width: 100%;
    height: auto;
    transition: transform 0.5s ease, filter 0.5s ease;
}

/* Hover effect */
.desilting-img-wrapper:hover .desilting-img {
    transform: scale(1.08);
    filter: brightness(1.05);
}
/* Major Client */
/* ===== Major Clients Section Logo Fix ===== */

.team-item {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 6px 18px rgba(0,0,0,0.08);
    transition: 0.3s ease;
    height: 100%;
}

.team-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 10px 30px rgba(0,0,0,0.15);
}

/* SAME IMAGE SIZE FOR ALL */
.team-item img {
    width: 100%;
    height: 160px;          /* 🔥 FIXED HEIGHT */
    object-fit: contain;   /* 🔥 MOST IMPORTANT */
    padding: 15px;
    background: #ffffff;
}

/* TEXT SECTION */
.team-text {
    padding: 18px 15px;
    text-align: center;
    border-top: 1px solid #eee;
}

.team-text h4 {
    font-size: 16px;
    font-weight: 600;
    line-height: 22px;
    color: #0b2c3d;
    min-height: 44px;   /* 🔥 text height equal */
}

/* RESPONSIVE FIX */
@media (max-width: 768px) {
    .team-item img {
        height: 140px;
    }
}
/* Major Client End */
/* ===== Toxicity Logos Styling ===== */

.toxicity-logos {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
    flex-wrap: wrap;
}

.toxicity-logo-box {
    width: 180px;
    height: 100px;
    background: #ffffff;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08);
    padding: 12px;
}

.toxicity-logo-box img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;   /* 🔥 SAME SIZE WITHOUT DISTORTION */
}

/* Mobile Optimization */
@media (max-width: 576px) {
    .toxicity-logo-box {
        width: 160px;
        height: 90px;
    }
}
.toxicity-logo-box {
    border: 1px solid rgba(0,0,0,0.08);
}

/* ===== Toxicity Logos Styling End===== */
/* logo start  */
.case-logo {
    height: 80px;
    width: auto;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.25));
}
.email { 
    gap: 30px;               /* space between two email IDs */
}

.email-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;                /* space between icon & email text */
}

/* logo end  */
/* navbar second logo  */
html, body {
    overflow-x: hidden;
}

/* .second-logo {
    height: 70px;
    width: 300px;
    max-width: 100%;
    object-fit: cover;
    object-position: left; */

    /* 👇 right shift */
    /* margin-left: 15px;   yahan 8–16px best hota hai
} */



/* Tablet */
/* @media (max-width: 991px) {
    .second-logo {
        width: 160px;
        height: 38px;
    }
} */

/* Mobile */
/* @media (max-width: 576px) {
    .second-logo {
        width: 130px;
        height: 34px;
    }
} */

.sdg-text-logo {
    font-family: 'Poppins', 'Segoe UI', sans-serif;
    line-height: 1.1;
    color: #0a58ca;
    white-space: nowrap;
}

/* Committed to */
.sdg-top {
    display: block;
    font-size: 13px;
    font-style: italic;
    margin-bottom: 2px;
}

/* SUSTAINABLE */
.sdg-main {
    display: block;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 1px;
}

/* DEVELOPMENT */
.sdg-sub {
    display: block;
    font-size: 20px;
    font-weight: 600;
}

/* GOALS */
.sdg-goals {
    display: flex;
    align-items: center;
    font-size: 26px;
    font-weight: 800;
    gap: 4px;
}

/* Colored O circle */
.sdg-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    font-size: 14px;
    background: conic-gradient(
        #e5243b,
        #dda63a,
        #4c9f38,
        #c5192d,
        #ff3a21,
        #26bde2,
        #fcc30b,
        #a21942
    );
    color: #fff;
}

/* Bottom color bar */
.sdg-bar {
    margin-top: 4px;
    height: 4px;
    width: 100%;
    background: linear-gradient(
        to right,
        #f9a602,
        #4c9f38,
        #e5243b,
        #26bde2
    );
}

/* FORCE DARK BLUE HEADING */

.water-title-text {
    color: #0a58ca;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}
/* ==============================
   GLOBAL TEXT ALIGNMENT & JUSTIFY
   ============================== */

/* Paragraphs */
p {
    text-align: justify;
    text-justify: inter-word;
}

/* Lists */
li {
    text-align: justify;
}

/* Content containers (safe selectors) */
.text-container p,
.left-content p,
.right-content p,
.infra-content,
.tech-content,
.water-content p,
.text-content,
.full-width-text p {
    text-align: justify;
}

/* Headings – professional alignment */
h1, h2, h3, h4 {
    text-align: center;
}

/* Service cards headings (better look) */
.service-text h4 {
    text-align: center;
}

/* Footer text clean */
.footer p,
.footer a {
    text-align: left;
}

/* Navbar text untouched */
.navbar-nav .nav-link {
    text-align: center;
}

/* Remove awkward spacing in justified text */
p {
    hyphens: auto;
}
/* ==============================
   NAVBAR STICKY (BOOTSTRAP SAFE)
   ============================== */

/* Navbar sticky */
.navbar {
    position: sticky !important;
    top: 0;
    z-index: 1020; /* Bootstrap standard */
    background-color: #ffffff;
}

/* IMPORTANT: kisi parent pe overflow hidden na ho */
body,
.container,
.container-fluid {
    overflow-x: visible;
}
/* ==============================
   GLOBAL TEXT – SLIGHTLY BOLD & DARK
   ============================== */

/* Base text */
body {
    color: #2b2b2b;      /* dark grey (soft, not black) */
    font-weight: 500;    /* slightly bold */
}

/* Paragraphs */
p {
    color: #2f2f2f;
    font-weight: 500;
}

/* Lists */
li {
    color: #2f2f2f;
    font-weight: 500;
}

/* Headings */
h1, h2 {
    color: #0a3d91;      /* dark blue */
    font-weight: 700;
}

h3, h4 {
    color: #0a3d91;
    font-weight: 600;
}

/* Buttons & links text */
a, .btn {
    font-weight: 600;
}

/* Navbar text */
.navbar-nav .nav-link {
    color: #1f1f1f;
    font-weight: 600;
}

/* Footer text (readable but not heavy) */
.footer p,
.footer a {
    color: #d0d0d0;
    font-weight: 500;
}
.text-red {
    color: #edc5c8;   /* professional red */
}
.founder-email a {
    color: #0a58ca;
    font-weight: 500;
    text-decoration: none;
}

.founder-email a:hover {
    text-decoration: underline;
}
