:root{--primary:#0A75C2;--secondary:#1E1E1E;--accent:#F5F5F5;--steel:#3A3A3A;--text-dark:#111;--text-light:#fff;--card-bg:#ffffff;--nav-bg:var(--secondary);--footer-bg:var(--secondary);--transition:.3s ease}
@media(prefers-color-scheme:dark){:root{--accent:#121212;--card-bg:#1E1E1E;--text-dark:#f5f5f5;--nav-bg:#000;--footer-bg:#000}body{background:var(--accent);color:var(--text-dark)}.navbar,.footer-dark{background:var(--nav-bg)!important}.project-card,.service-card,.proc-card,.info-card,.testi-card{background:#181818;color:#fff;box-shadow:0 3px 15px rgba(255,255,255,.05)}.carousel-caption h1,.carousel-caption p{text-shadow:0 6px 18px rgba(0,0,0,.7)}}
body{background:var(--accent);color:var(--text-dark);font-family:Arial,Helvetica,sans-serif;line-height:1.6}
a{text-decoration:none}
img{max-width:100%;display:block}

/* NAVBAR */
.custom-navbar{background:var(--nav-bg)!important;padding:10px 0;transition:box-shadow .25s ease}
.custom-navbar .nav-link,.custom-navbar .navbar-brand{color:#fff!important}
.navbar.scrolled{box-shadow:0 6px 18px rgba(0,0,0,.2)}
.logo{height:48px}

/* HERO SLIDER ONLY */
#mainSlider .carousel-item {
    height:82vh;
    min-height:360px;
    background-size:cover;
    background-position:center;
    position:relative;
}
/* Reset only testimonial slider */
#testiCarousel .carousel-item {
    height:auto !important;
    min-height:auto !important;
    background:none !important;
}
/* QUICK LINKS */
.quick-card {
    background: var(--card-bg);
    border-radius: 14px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.08);
    transition: var(--transition);
    height: 100%;
}

.quick-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 28px rgba(0,0,0,0.15);
}

.quick-icon {
    width: 70px;
    height: 70px;
    background: var(--primary);
    color: #fff;
    border-radius: 50%;
    font-size: 34px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

/* Overlay */
.carousel-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.45),rgba(0,0,0,.65))}

/* Caption */
.carousel-caption{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);width:100%;max-width:900px;margin:auto;text-align:center;padding:0 20px}
.caption-inner{max-width:900px;margin:auto;text-align:center}

.carousel-caption h1{font-size:3rem;font-weight:700;color:#fff;text-shadow:0 6px 20px rgba(0,0,0,.7)}
.carousel-caption p{font-size:1.1rem;color:#eaeaea}

/* Buttons */
.btn-primary{background:var(--primary);border:none;padding:10px 22px;transition:var(--transition)}
.btn-primary:hover{background:var(--steel)}
.btn-outline-light{border:1px solid #fff;color:#fff}
.btn-warning{padding:10px 22px;font-weight:600}

/* Responsive slider */
@media(max-width:768px){.carousel-caption h1{font-size:1.8rem}.carousel-caption p{font-size:.95rem}.carousel-caption{top:55%;transform:translateY(-55%)}}
@media(max-width:576px){.carousel-caption h1{font-size:1.4rem}.carousel-caption p{font-size:.9rem}.carousel-caption{top:58%;transform:translateY(-58%)}}

/* Titles */
.section-title{font-size:2rem;font-weight:700;color:var(--primary)}

/* CARDS */
.project-card,.service-card,.proc-card,.info-card,.testi-card{
    background:var(--card-bg);
    border-radius:12px;
    padding:25px;
    box-shadow:0 4px 10px rgba(0,0,0,0.08);
    transition:var(--transition);
}
.project-card:hover,.service-card:hover,.proc-card:hover{
    transform:translateY(-6px);
    box-shadow:0 8px 20px rgba(0,0,0,0.15);
}
.project-img{width:100%;height:220px;object-fit:cover}

/* ABOUT */
.about-img{border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.2)}


/* GALLERY */
.gallery-img{width:100%;height:220px;object-fit:cover;border-radius:10px;transition:var(--transition)}
.gallery-img:hover{transform:scale(1.05)}

/* TESTIMONIALS FIX (FINAL) */
#testiCarousel .carousel-inner{min-height:200px!important}
#testiCarousel .carousel-item,
#testiCarousel .carousel-item.active,
#testiCarousel .carousel-item-next,
#testiCarousel .carousel-item-prev{
    height:auto!important;
    min-height:auto!important;
}
.testi-card{
    min-height:160px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}
@media(max-width:576px){
    #testiCarousel .carousel-inner{min-height:160px!important}
    .testi-card{min-height:130px}
}

/* CONTACT PAGE */
.page-header{
    background:url('../img/contact-bg.jpg') center/cover no-repeat;
    position:relative;height:38vh;
}
.page-header::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.55)}
.page-header h1{color:#fff;text-shadow:0 4px 15px rgba(0,0,0,.8);position:relative;z-index:2;top:55%}
.icon-box{width:55px;height:55px;background:var(--primary);color:#fff;border-radius:12px;display:flex;justify-content:center;align-items:center;font-size:24px}

/* WHATSAPP FLOAT */
.whatsapp-float{position:fixed;bottom:20px;right:20px;z-index:9999}
.pulse{animation:pulseAnim 1.6s infinite}
@keyframes pulseAnim{0%{transform:scale(1)}50%{transform:scale(1.12)}100%{transform:scale(1)}}
/* CLIENT LOGO CAROUSEL */
.client-logo {
    height: 70px;
    width: auto;
    filter: grayscale(100%);
    opacity: 0.8;
    transition: 0.3s ease;
}

.client-logo:hover {
    filter: grayscale(0%);
    opacity: 1;
    transform: scale(1.08);
}

/* Better alignment for small screens */
@media(max-width:768px){
    .client-logo {
        height: 55px;
    }
}

/* FOOTER (Enhanced) */
.footer-dark {
    background: #111;
    color: #fff;
}

.footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-links li {
    margin-bottom: 8px;
}

.footer-links a {
    color: #dcdcdc;
    font-size: 14px;
    transition: 0.3s;
}

.footer-links a:hover {
    color: var(--primary);
    padding-left: 4px;
}

.footer-social a {
    font-size: 22px;
    color: #dcdcdc;
    margin-right: 14px;
    transition: 0.3s ease;
}

.footer-social a:hover {
    color: var(--primary);
}

.footer-divider {
    border-color: rgba(255,255,255,0.1);
}


/* HOMEPAGE SPACING */
.home-testimonials{padding-bottom:2rem!important}
.home-gallery{padding-top:1rem!important}
