body { font-family: 'Poppins', sans-serif; }
.top-bar { background:#91512e; color:#fff; padding:5px 0; font-size:14px; }
.section { padding:60px 0; }
.hero { position:relative; }
.carousel-caption { bottom:40%; }
.carousel-caption h1 { font-size:32px; font-weight:600; }
.service-card img { width:100%; height:200px; object-fit:cover; }
.service-card { transition:0.3s; }
.service-card:hover { transform:translateY(-10px); }
.footer { background:#111; color:#fff; padding:40px 0; }
.footer ul { list-style:none; padding:0; }

@media(max-width:768px){
  .carousel-caption h1 { font-size:20px; }
}

/* Banner */
.page-banner {
  position:relative;
}

.page-banner img {
  height:220px;
  object-fit:cover;
}

.banner-overlay {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  text-align:center;
  color:#fff;
}

.banner-overlay h1 {
  font-size:32px;
  font-weight:600;
}

.banner-overlay p {
  font-size:14px;
}

/* Contact */
.contact-section {
  padding:40px 0;
}

.contact-section p {
  color:#555;
  line-height:1.8;
}

.map-box {
  margin-top:20px;
  border-radius:8px;
  overflow:hidden;
  border:1px solid #ddd;
}

.map-box iframe {
  width:100%;
  height:350px;
  border:0;
}

/* Responsive */
@media(max-width:768px){
  .banner-overlay h1 { font-size:22px; }
  .page-banner img { height:160px; }
}

/* ================= CLIENTS SECTION ================= */
  height:4px;
  background:#0c8a4f;
  margin:10px auto 15px;
  border-radius:2px;
}

.section-subtitle {
  max-width:700px;
  margin:0 auto 40px;
  color:#666;
  font-size:14px;
}

.clients-wrapper {
  position:relative;
  display:flex;
  align-items:center;
}

.clients-track {
  display:flex;
  gap:40px;
  overflow:hidden;
  scroll-behavior:smooth;
}

.client-item {
  min-width:160px;
  display:flex;
  justify-content:center;
  align-items:center;
}

.client-item img {
  max-width:200px;
  max-height:200px;
  object-fit:contain;
  filter:grayscale(100%);
  transition:0.3s;
}

.client-item img:hover {
  filter:none;
  transform:scale(1.05);
}

.client-arrow {
  background:none;
  border:none;
  font-size:28px;
  cursor:pointer;
  color:#000;
  position:absolute;
  z-index:2;
}

.client-arrow.left { left:-10px; }
.client-arrow.right { right:-10px; }

/* Responsive */
@media(max-width:768px){
  .client-item { min-width:120px; }
}


/* ================= FOOTER ================= */

.footer-main {
  background: #0b0b0b;
  color: #fff;
  padding: 60px 0 0;
  position: relative;
}

.footer-title {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 20px;
  position: relative;
}

.footer-title::after {
  content: "";
  display: block;
  width: 60px;
  height: 2px;
  background: #0c8a4f;
  margin-top: 8px;
}

.footer-main p {
  font-size: 14px;
  line-height: 1.8;
  color: #ccc;
}

/* Links */
.footer-links {
  list-style: none;
  padding: 0;
}

.footer-links li {
  margin-bottom: 10px;
  font-size: 14px;
  color: #ccc;
  cursor: pointer;
  transition: 0.3s;
}

.footer-links li::before {
  content: "›";
  margin-right: 10px;
  color: #0c8a4f;
}

.footer-links li:hover {
  color: #0c8a4f;
}

/* Social Icons */
.social-icons {
  display: flex;
  gap: 15px;
  margin-top: 10px;
}

.social-icons img {
  width: 66px;
  height: 65px;
  object-fit: cover;
  border-radius: 8px;
  transition: 0.3s;
}

.social-icons img:hover {
  transform: scale(1.1);
}

/* Bottom Bar */
.footer-bottom {
  background: #91512e;
  padding: 15px 0;
  margin-top: 40px;
}

.footer-bottom p {
  margin: 0;
  font-size: 14px;
  color: #fff;
}

/* Scroll Top Button */
.scroll-top {
  position: fixed;
  right: 20px;
  bottom: 90px;
  background: #0c8a4f;
  color: #fff;
  padding: 10px 14px;
  border-radius: 4px;
  cursor: pointer;
  font-weight: bold;
}

/* WhatsApp Button */
.whatsapp {
  position: fixed;
  right: 20px;
  bottom: 20px;
  background: #25D366;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 20px;
}

/* Responsive */
@media (max-width: 768px) {
  .footer-bottom {
    text-align: center;
  }

  .footer-bottom .container {
    flex-direction: column;
    gap: 10px;
  }
}