@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&display=swap');
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Open Sans', sans-serif;
}
body {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    min-height: 100vh;
    background: #e8e8e8; /* Pastel gray */
  }
  
  form {
    padding: 25px;
    background: #fff;
    width: 80%; /* Set width to 80% */
    max-width: 800px;
    border-radius: 7px;
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.05);
    transition: width 0.5s ease; /* Optional: Smooth transition */
  }
form h2 {
    font-size: 27px;
    text-align: left;
    margin-bottom: 05px;
    color: #333; /* Optional: Darken the text for better readability */
  }
  
.form-note {
    font-size: 12px;
    text-align: left;
    color: #666;
    margin-bottom: 10px;
  }
form .form-group {
  margin-bottom: 15px;
  position: relative;
}
form label {
  display: block;
  font-size: 15px;
  margin-bottom: 7px;
}
form input,
form select {
  height: 45px;
  padding: 10px;
  width: 100%;
  font-size: 15px;
  outline: none;
  background: #fff;
  border-radius: 3px;
  border: 1px solid #bfbfbf;
}
form input:focus,
form select:focus {
  border-color: #9a9a9a;
}
form input.error,
form select.error {
  border-color: #f91919;
  background: #f9f0f1;
}
form small {
  font-size: 14px;
  margin-top: 5px;
  display: block;
  color: #f91919;
}

.checkbox-group {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
  }
  
  .checkbox-group .checkbox-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .checkbox-group input[type="checkbox"] {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    cursor: pointer;
    accent-color: #007BFF;
    border: 1px solid #ccc;
    border-radius: 4px;
  }
  .checkbox-group label {
    font-size: 14px;
    color: #333;
    cursor: pointer;
    margin: 0;
  }
  
  .checkbox-group input[type="checkbox"]:checked {
    background-color: #007BFF;
    border-color: #007BFF;
  }
  
  .checkbox-group input[type="checkbox"]:hover {
    border-color: #0056b3;
  }
  .checkbox-group .error-text {
    font-size: 12px;
    color: red;
    margin: 4px 0 0 0; /* No extra left margin */
    font-style: italic;
    display: block;
  }
  
.submit-btn {
  margin-top: 30px;
}
.submit-btn input {
  color: white;
  border: none;
  height: auto;
  font-size: 16px;
  padding: 13px 0;
  border-radius: 5px;
  cursor: pointer;
  font-weight: 500;
  text-align: center;
  background: #1BB295;
  transition: 0.2s ease;
}
.submit-btn input:hover {
  background: #179b81;
}

.form-row {
    display: flex;
    gap: 15px;
    justify-content: space-between;
  }
  
  .form-row .form-group {
    flex: 1;
  }
  
  .form-row .form-group label {
    font-size: 14px;
  }
  
  .form-row .form-group input,
  .form-row .form-group select {
    width: 100%;
  }
  
  .form-row .form-group:first-child {
    flex: 1.2;
  }
  
  .form-row .form-group:last-child {
    flex: 0.8;
  }
  
  .checkbox-group {
    margin-bottom: 15px;
  }
  

.thank-you-container {
    padding: 25px;
    background: #fff;
    max-width: 600px;
    margin: 50px auto;
    border-radius: 7px;
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.05);
    text-align: center;
  }
  
  .thank-you-container h1 {
    font-size: 28px;
    color: #1BB295;
    margin-bottom: 20px;
  }
  
  .thank-you-container p {
    font-size: 16px;
    margin: 10px 0;
  }
  
  .user-details {
    text-align: left;
    margin-top: 20px;
  }
  
  .user-details p {
    font-size: 15px;
    margin: 5px 0;
  }