:root {
  --primary: #01639a;
  --dark-blue: #033562;
}
* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  font-family: "Poppins", sans-serif;
}
body {
  background-color: #f5f5f5;
}
.box-container {
  width: 90%;
  margin: 0 auto;
}
header {
  background-image: url("../img/index-header.png");
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  height: 300px;
}
.navbar-brand p {
  font-size: 1rem;
}
input {
  margin: 0.5rem 0;
  width: 20rem;
  padding: 0.5rem;
  border-radius: 5px;
  border: 1px solid #ccc;
}
.forum-survey {
  margin-top: -2rem;
}
.form-control::placeholder {
  color: #bdbdbd;
}
.btn-submit {
  background-color: var(--dark-blue);
}
.offcanvas-half {
  width: 50% !important; /* Setengah layar */
}
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='white' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

@media screen and (max-width: 992px) {
  header {
    height: 250px;
    padding: 1rem 0;
  }

  .navbar-brand img {
    height: 40px;
  }

  .navbar-brand p,
  header a {
    font-size: 0.9rem;
  }

  .box-container nav {
    flex-direction: column;
    gap: 1rem;
  }

  .d-flex.align-items-center.justify-content-between {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 0.5rem;
  }

  input[type="text"] {
    width: 100% !important;
  }

  h1,
  header h1 {
    font-size: 1.8rem;
  }

  .forum-survey h3,
  .forum-survey h5 {
    font-size: 1.1rem;
  }

  .text-center p,
  header p {
    font-size: 0.95rem;
  }

  .btn-submit {
    font-size: 1rem;
    padding: 0.7rem;
  }

  textarea {
    font-size: 0.95rem;
  }
}

@media screen and (max-width: 768px) {
  header h1 {
    font-size: 1.75rem;
  }

  header p {
    font-size: 0.875rem;
  }

  .navbar-brand img {
    height: 35px;
  }

  .navbar-brand p,
  header a {
    font-size: 0.75rem;
  }
}

@media screen and (max-width: 576px) {
  h1,
  header h1 {
    font-size: 1.5rem;
  }
  .offcanvas-half {
    width: 80% !important; /* Supaya lebih nyaman di layar kecil */
  }
  .navbar-brand p {
    font-size: 0.8rem;
  }

  .text-center p,
  header p {
    font-size: 0.85rem;
  }

  textarea,
  .form-control {
    font-size: 0.9rem;
  }

  .table thead th,
  .table td {
    font-size: 0.85rem;
  }
}

@media screen and (max-width: 480px) {
  .navbar-brand img {
    height: 35px;
  }

  .navbar-brand p {
    font-size: 0.75rem;
  }

  header p {
    font-size: 0.75rem;
  }
}
