.contact-form .form-control-invalid {
  border: 2px solid #c62828 !important;
  box-shadow: 0 0 0 3px rgba(198, 40, 40, 0.14);
}

.contact-form .form-control-invalid:focus {
  border-color: #8e1b1b !important;
  outline: 3px solid rgba(198, 40, 40, 0.22);
}

.validation-snackbar {
  position: fixed;
  left: 50%;
  bottom: 24px;
  z-index: 1200;
  width: min(calc(100% - 32px), 560px);
  padding: 17px 20px;
  border-left: 6px solid #c62828;
  background: var(--black);
  color: var(--white);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.4;
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, 18px);
  transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease;
}

.validation-snackbar.visible {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}

@media (prefers-reduced-motion: reduce) {
  .validation-snackbar {
    transition: none;
  }
}
