/* Reset default margins and ensure no gaps */
body, html {
    margin: 0;
    padding: 0;
    font-family: 'Inter', sans-serif;
}
/* Sticky header */
.sticky-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: linear-gradient(to right, #1e3a8a, #3b82f6);
    margin: 0;
    padding: 1rem 0; /* Controlled padding */
}
.sticky-footer {
    position: sticky;
    bottom: 0;
    z-index: 50;
    background: linear-gradient(to right, #1e3a8a, #3b82f6);
}
/* Banner Swiper styles */
.banner-swiper {
    width: 100vw;
    height: 600px;
    margin: 0 calc(-50vw + 50%);
}
.banner-swiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.banner-swiper .swiper-slide img[src*="ibb.co"] {
    object-fit: fill; /* Stretch smaller images */
}
@media (max-width: 640px) {
    .banner-swiper {
        height: 400px;
    }
}
/* Client Swiper styles */
.client-swiper {
    width: 100%;
    height: 120px;
}
.client-swiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: grayscale(100%);
    transition: filter 0.3s ease;
}
.client-swiper .swiper-slide img:hover {
    filter: grayscale(0%);
}
@media (max-width: 640px) {
    .client-swiper {
        height: 80px;
    }
}
/* Smooth scroll behavior */
html {
    scroll-behavior: smooth;
}
/* Mobile menu styles */
.mobile-menu {
    transform: translateX(-100%);
    transition: transform 0.3s ease-in-out;
    background: #1e3a8a;
}
.mobile-menu.open {
    transform: translateX(0);
}
/* Section padding and container */
section {
    padding: 4rem 1rem;
    margin: 0;
}
.container {
    max-width: 1200px;
}
/* Card hover effect */
.card-hover {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.card-hover:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1);
}
/* Lazyload styles */
#lazyload {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
    transition: opacity 0.5s ease;
}
#lazyload.hidden {
    opacity: 0;
    pointer-events: none;
}
#lazyload img {
    width: 100%;
    max-width: 600px;
    height: auto;
}