@charset "utf-8";

main {
    width: 100%;
}

main > section {
  display: flex;
  flex-direction: column;
  width: 94%;
  max-width: 1280px;
  border-radius: 10px;
  color: #f4f3ee;
  gap: 1em;
}

section a {
  color: #463f3a;
  text-decoration: underline;
}

.contactmessage {
    width: 100%;
}

h1 {
  color: #463f3a;
}

h2, p {
  width: 100%;
  color: #463f3a;
}

h2 {
  font-size: xx-large;
  margin-bottom: 1em;
}

form {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-bottom: 2em;
}
  
form label {
  font-size: 16px;
  margin-bottom: 5px;
  color: #463f3a;
}
  
form input {
  width: 94%;
  max-width: 420px;
}

form input, form textarea {
  font-size: 16px;
  margin-bottom: 1em;
  padding: 5px;
  border: none;
  border-radius: 10px;
  background-color: #ffffff;
  color: #463f3a;
}

form input:focus, form textarea:focus {
  outline: none;
}

form input:focus:invalid, form textarea:focus:invalid {
  background: #ffe9e9;
}

form input:focus:valid, form textarea:focus:valid {
  background: #e9fffa;
}

form button {
  width: 200px;
  background-color: #463f3a;
  color: #f4f3ee;
}

.contactinfo {
  margin: 0px auto 0px 0px;
}

@media only screen and (max-width: 768px) {
  main > section {
    padding: 40px 20px;
  }
}