.visit-form-container {
  margin-top: 8vh;
  margin-bottom: 8vh;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 90%;
}

.visit-form-title {
  color: var(--grey-light);
  font-weight: bold;
}

.intro-text {
    margin-bottom: 4vh;
}

.btn-submit-visit {
  background-color: var(--crisal-green-light);
  color: #ffffff;
  text-decoration: none;
  font-size: var(--font-sm);
  border: 2px solid transparent !important;
  padding: 0.5rem 1rem;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
}

.btn-submit-visit:hover {
  background-color: #ffffff;
  color: var(--crisal-green-light) !important;
  border-color: var(--crisal-green-light) !important;
}

.g-recaptcha {
  transform:scale(0.85);
  -webkit-transform:scale(0.85);
  transform-origin:0 0;
  -webkit-transform-origin:0 0;
}

.form-group-grid {
    display: grid;
    grid-template-rows: auto 1fr;
}
.form-group-grid label {
  white-space: normal;         
  overflow-wrap: anywhere;     
  word-break: break-word;       
  display: block;
  margin-bottom: 0.5rem;        
  line-height: 1.3;
}

.invalid-feedback.d-block {
    min-height: 1.5em; 
}

input:focus, textarea:focus, select:focus {
  outline: none !important;
  border-color: var(--crisal-green-light) !important;
  box-shadow: 0 0 0 0.2rem rgba(192, 207, 198, 0.5) !important;
}

.form-check-input:checked{
  border-color: var(--crisal-green-light) !important;
  background-color: var(--crisal-green-light) !important;
}

.privacy-policy-link {
  color: var(--crisal-green-light);
}

.custom-error {
  font-size: var(--font-xs);
}

.error-placeholder {
    min-height: 1.5rem; 
}

@media (max-width: 1400px) {
  .error-placeholder {
    min-height: 2.5rem; 
}
}

@media (max-width: 768px) {
  .error-placeholder {
    min-height: 0; 
}
}