/* =================================
  Kegiatan PSS
  ================================= */
.mater {
  max-width: 1100px;
  margin: 0 auto;
  padding: 20px 8%;
}

.activity-container {
  margin-bottom: 20px;

}

.row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  background-color: #fff;
  border-radius: 20px;
}

.col {
  flex: 1;
  min-width: 300px;
}

.image-col {
  display: flex;
  justify-content: center;
  align-items: center;
}

.image-col img {
  width: 70%;
  max-width: 500px;
  height: auto;
  border-radius: 15px;
}

.content-col {
  display: flex;
  justify-content: center;
  align-items: center;
}

.activity-container h2 {
  font-size: 1.5rem;
  color: #003366;
  font-weight: 700;
  text-align: left;
  margin-bottom: 15px;
}

.activity-container p {
  font-size: 0.8rem;
  color: #555;
  line-height: 1.7;
  text-align: justify;
  margin: 10px 0;
}

.see-more-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #fff;
  background: linear-gradient(90deg, #007bff, #0056b3);
  font-weight: 600;
  text-decoration: none;
  font-size: 0.9rem;
  border: none;
  padding: 10px 20px;
  border-radius: 25px;
  transition: all 0.3s ease;
  box-shadow: 0 4px 10px rgba(0, 123, 255, 0.2);
}

.see-more-btn:hover {
  background: linear-gradient(90deg, #0073e6, #00aaff);
  color: #fff;
  border: none;
}

.arrow {
  transition: transform 0.3s ease;
}

.see-more-btn:hover .arrow {
  transform: translateX(5px);
}

/* Responsive Kegiatan */
/* Untuk tablet/iPad - tetap horizontal */
@media (min-width: 768px) and (max-width: 1024px) {
  .mater {
    padding: 20px 5%;
  }

  .row {
    flex-direction: row;
    align-items: center;
  }

  .col {
    min-width: 45%;
  }

  .image-col img {
    width: 90%;
    max-width: 350px;
  }

  .activity-container h2 {
    font-size: 1.3rem;
    text-align: left;
  }

  .activity-container p {
    font-size: 0.75rem;
    text-align: justify;
  }

  .see-more-btn {
    font-size: 0.8rem;
    padding: 8px 16px;
  }

  .text-box {
    padding: 15px;
  }
}

/* Untuk mobile - vertical */
@media (max-width: 767px) {
  .row {
    flex-direction: column;
    text-align: center;
  }

  .activity-container h2 {
    text-align: center;
  }

  .see-more-btn {
    margin: 0 auto;
  }

  .image-col img {
    max-width: 90%;
  }
}

/* =================================
  RESPONSIVE DESIGN UNTUK LAYAR BESAR
================================= */

/* Layar Desktop Besar (1400px - 1599px) */
@media (min-width: 1400px) {
  .humas {
    max-width: 1400px;
  }

  .activity-container h2 {
    font-size: clamp(1.5rem, 1.9vw, 1.9rem);
  }

  .activity-container p {
    font-size: clamp(0.8rem, 1.1vw, 1.1rem);
  }

  .image-col img {
    max-width: clamp(500px, 35vw, 600px);
  }
}

/* Layar Desktop Sangat Besar (1600px - 1919px) */
@media (min-width: 1600px) {
  .humas {
    max-width: 1600px;
  }

  .activity-container h2 {
    font-size: clamp(1.9rem, 2.2vw, 2.2rem);
  }

  .image-col img {
    max-width: clamp(600px, 40vw, 700px);
  }
}

/* Layar Ultra Wide (1920px+) */
@media (min-width: 1920px) {
  .humas {
    max-width: 1800px;
  }

  .activity-container h2 {
    font-size: clamp(2.2rem, 2.5vw, 2.5rem);
  }

  .image-col img {
    max-width: clamp(700px, 45vw, 800px);
  }
}

@media (max-width: 576px) {
  .activity-container h2 {
    font-size: 1.4rem;
  }

  .activity-container p {
    font-size: 0.9rem;
  }

  .see-more-btn {
    font-size: 0.8rem;
    padding: 8px 16px;
  }

  .row {
    padding: 20px;
  }
}
