/* === SECTION STYLES === */
.section {
  padding: 5px;
  margin-top:5rem;
}

.section.projects {
  margin-top: 90px; /* 80px converted for consistency */
}

.section h2 {
  text-align: center;
  margin-bottom: 5px;
  margin-top: 3px;
  font-size: 2rem; 
}


.hero-swiper {
  width: 100%;
  background: transparent;
  margin-top: 80px; /* keep navbar spacing */
 
}

.swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  padding: 2% 15%; /* top-bottom 5%, left-right 20% */
  box-sizing: border-box; /* ensure padding counts inside width */
}


.swiper-slide img {
  width: 100%;
  height: auto;
  object-fit: contain;
  background: transparent;
}






/* Text overlay */
.slide-text {
  position: absolute;
  bottom: 10%;          /* slightly lower for better balance */
  left: 69%;             /* move to left so text fits better */
  max-width: 45%;       /* prevent long lines */
  font-size: 2rem;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  text-shadow: 0 4px 15px rgba(0,0,0,0.7);
  padding: 0.8rem 1rem;
  border-radius: 8px;
}

.slide-text small {
  display: block;
  font-size: 1.2rem;
  font-weight: 400;
  margin-top: 0.2rem;
  color: #f0f0f0;
}

/* === RESPONSIVE BREAKPOINTS === */

/* Laptop */
@media (max-width: 1024px) {
  .slide-text {
    font-size: 1.6rem;
    max-width: 60%;
    bottom: 12%;
  }

  .swiper-slide img {
    width: 100%;
    height: auto;
  }
}

/* Tablet */
@media (max-width: 768px) {
  .slide-text {
    font-size: 1.3rem;
    max-width: 80%;
    bottom: 15%;
    left: 10%;
    padding: 0.5rem 0.8rem;
  }

  .slide-text small {
    font-size: 0.85rem;
  }

  .swiper-slide {
    padding: 2% 8%; /* less side padding on smaller screens */
  }

  .swiper-slide img {
    object-fit: cover; /* fill slide area better */
    max-height: 400px;
  }
}

/* Mobile */
@media (max-width: 600px) {
  .slide-text {
    font-size: 4vw;
    max-width: 85%;
    bottom: 12%;
    left: 65%;
    padding: 0.4rem 0.6rem;
    line-height: 1.2;
  }

  .slide-text small {
    font-size: 3vw;
  }

  .swiper-slide {
    padding: 0 5%;
  }

  .swiper-slide img {
    width: 100%;
    max-height: 250px;   /* prevent image from being too tall */
    height: auto;
    object-fit: cover;   /* fills the container nicely */
    border-radius: 1px;
  }
}










