/* Global */
:root{--brand:#0d6efd;--soft:#f5f8ff}
body{font-family:'Poppins',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#212529}
.topbar{background:linear-gradient(90deg,#0d6efd 0%,#17a2ff 50%,#38b6ff 100%);color:#fff}
.topbar a{color:#fff;text-decoration:none}
.navbar .logo{height:34px}
.section-pad{padding:72px 0}
.bg-soft{background:var(--soft)}
.section-title{font-weight:800;letter-spacing:.3px}

/* Hero */
#hero .carousel-item{height:72vh;min-height:460px;background-size:cover;background-position:center}
#hero .overlay{position:absolute;inset:0;background:linear-gradient(120deg,rgba(0,31,84,.65),rgba(0,0,0,.35))}
#hero .hero-content{position:relative;z-index:2;max-width:720px;animation:fadeUp .9s ease both}
.floating-cta{position:absolute;right:1rem;bottom:1rem;background:#fff;border-radius:999px;padding:.35rem .8rem;display:flex;align-items:center;gap:.6rem}

@keyframes fadeUp{from{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:none}}

/* Features */
.feature{border:0;border-radius:16px;padding:28px;transition:all .25s ease;background:#fff}
.feature .icon-wrap{width:60px;height:60px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:26px;margin:0 auto 14px auto;box-shadow:0 10px 20px rgba(13,110,253,.2)}
.gradient-blue{background:linear-gradient(135deg,#0d6efd,#48a2ff)}
.gradient-green{background:linear-gradient(135deg,#198754,#51d39e)}
.gradient-orange{background:linear-gradient(135deg,#fd7e14,#ffb25c)}
.feature:hover{transform:translateY(-6px);box-shadow:0 14px 30px rgba(0,0,0,.08)}

/* Products */
.product{border:0;border-radius:16px;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.product img{height:210px;object-fit:cover}
.product:hover{transform:translateY(-8px);box-shadow:0 16px 34px rgba(13,110,253,.18)}
.product .card-title{font-weight:700}

/* Gallery */
.gallery-grid img{transition:transform .25s ease,box-shadow .25s ease}
.gallery-grid a:hover img{transform:scale(1.02);box-shadow:0 14px 30px rgba(0,0,0,.18)}
/* Uniform responsive tiles */
.gallery-tile{position:relative;overflow:hidden;aspect-ratio:4/3;background:#e9ecef}
.gallery-tile img{width:100%;height:100%;object-fit:cover;display:block}

/* Testimonials */
.testimonial{border-radius:16px;background:#fff}
.testimonial .stars i{margin-right:2px}

/* Brands - Infinite Auto Scrolling */
.brand-marquee-wrapper{overflow:hidden;position:relative;margin:20px 0}
.brand-marquee{position:relative;width:100%}
.brand-track{display:flex;gap:40px;align-items:center;width:fit-content;animation:scroll-infinite 30s linear infinite;will-change:transform}
.brand-marquee-wrapper:hover .brand-track{animation-play-state:paused}
.brand-item{min-width:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .3s ease,box-shadow .3s ease}
.brand-item img{max-width:75%;max-height:65%;object-fit:contain;filter:none;opacity:1}
.brand-item:hover{box-shadow:0 16px 32px rgba(0,0,0,.18);z-index:1;position:relative}

@keyframes scroll-infinite{
  0%{transform:translateX(0)}
  100%{transform:translateX(-50%)}
}

/* Forms */
.form-control:focus{box-shadow:0 0 0 .2rem rgba(13,110,253,.15);border-color:#86b7fe}

@media (max-width: 576px){
  .floating-cta{left:1rem;right:1rem;justify-content:space-between}
  #hero .carousel-item{min-height:520px}
}


