body {
  font-family: Arial, sans-serif;
  background-image: url('/images/bg.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
}

.form-title {
  font-weight: 600; /* Makes text bolder */
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
  color: #333; /* Darker color for better readability */
  margin-bottom: 20px; /* Add some spacing under the title */
}


img.logo {
  width: 200px;  /* specify the width */
  height: auto;  /* maintain the aspect ratio */
  display: block;  /* remove extra space below image */
  margin: 0 auto;  /* center horizontally */
  margin-left: 30%;
}

form {
  width: 80%;
  margin: 0 auto;
}

form div {
  margin-bottom: 10px;
}

form input,
form select,
form textarea {
  width: 100%;
  /* padding: 5px; */
}

h1 {
  text-align: center;
}

.form-control {
  max-width: 100%;
  overflow: hidden;
  flex: 2;
}

*, *:before, *:after {
  box-sizing: border-box;
}

form button {
  margin: 0 auto;
  padding: 5px 10px;
  background-color: #007BFF;
  border: none;
  color: #fff;
  cursor: pointer;
}

.paper-square {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 20px;
  border-radius: 15px;
  box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.15);
  max-width: 700px;
  margin: 50px auto;
}

.form-group {
  display: flex;
  align-items: center;
}

.form-group.checkbox-group .form-label {
  flex: 1;
  min-width: 100px;
}

.form-group.checkbox-group .form-control.checkbox-container {
  flex: 2;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.form-label {
  flex: 1;
  min-width: 100px;
}

.invalid {
  border-color: red;
  box-shadow: 0 0 5px red;
}

.custom-jumbotron {
  background-color: rgba(211, 211, 211, 0.9); /* Light grey with 90% opacity */
  padding: 40px;
  border-radius: 10px; /* More square appearance */
  margin: 50px auto;
  max-width: 70%; /* Adjust as needed */
  color: #333; /* Darker text color for better visibility */
}

/* Center text inside the jumbotron */
.custom-jumbotron .container {
  text-align: center;
}

.hidden {
  display: none;
}

@media (max-width: 768px) {
  .form-group .form-label,
  .form-group .form-control {
    flex: 100%;
    min-width: 100%;
  }
  .form-group.checkbox-group .form-control.checkbox-container {
    justify-content: flex-start;
  }
  .paper-square {
      width: 90%;
  }
}

@media (max-width: 480px) {
  .paper-square {
      width: 100%;
  }
  img.logo {
    margin-left: 5%;  /* Further adjusted margin for even smaller screens */
  }
}

@media (max-width: 768px) {
  .form-group.row {
    flex-direction: column; /* Stack label and input */
  }
  label.col-sm-4.col-form-label,
  .col-sm-8 {
    width: 100%;
    text-align: left;
    padding: 5px 0; /* Add padding between label and input */
  }
  .paper-square {
    width: 99%;
    padding: 30px; /* Increase padding */
  }
  .custom-jumbotron {
    padding: 30px; /* Increase padding */
  }
  img.logo {
    margin-left: 10%;  /* Adjusted margin for smaller screens */
  }
}

@media (max-width: 480px) {
  h1.form-title {
    font-size: 20px; /* Reduce font size */
  }
  .paper-square {
    width: 100%;
    padding: 20px; /* Increase padding */
  }
  .custom-jumbotron {
    padding: 20px; /* Increase padding */
  }
}

textarea.form-control {
  height: auto; /* Adjust based on content */
  min-height: 100px; /* Minimum height to show several lines without scrolling */
  max-height: 300px; /* Maximum height before scrolling */
  overflow-y: auto; /* Ensure scrolling is enabled */
}

@media (max-width: 768px) {
  textarea.form-control {
    min-height: 150px; /* Larger minimum height for smaller screens */
  }
}

/* Custom scrollbar styles for webkit browsers */
textarea.form-control::-webkit-scrollbar {
  width: 12px; /* Width of the entire scrollbar */
}

textarea.form-control::-webkit-scrollbar-track {
  background: #f1f1f1; /* Color of the tracking area */
}

textarea.form-control::-webkit-scrollbar-thumb {
  background: #888; /* Color of the scroll thumb */
  border-radius: 6px; /* Roundness of the scroll thumb */
}

textarea.form-control::-webkit-scrollbar-thumb:hover {
  background: #555; /* Color when hovering over the scroll thumb */
}

