
:root {
  --red: rgb(var(--rgb-red));
  --rgb-red: 246, 28, 87;
  --green: rgb(var(--rgb-green));
  --rgb-green: 20, 207, 112;
}

.title {
  margin-bottom: var(--gutter);
}

.contact-infos {
  flex: 0 1 calc(35% - (var(--gutter) * 2));
  margin: var(--gutter);
  background-color: var(--white);
}

.contact-infos address + address {
  margin-top: 1rem;
}

.contact-form {
  flex: 0 1 calc(65% - (var(--gutter) * 2));
  margin: var(--gutter);
}

.field + .field {
  margin-top: 1.25rem;
}

label {
  font-size: .7rem;
  color: #777;
  font-weight: 600;
  display: block;
}

input, textarea {
  transition: .3s;
  border-bottom: 1px solid transparent;
  width: 100%;
  padding: .2rem 0;
  min-height: var(--gutter);
}

input:focus, textarea:focus {
  border-color: var(--light);
}

.bottom {
  margin-top: var(--gap-pad);
  padding-top: calc(var(--section-pad) / 3);
  border-top: 1px #d9d9d9 solid;
  display: flex;
  justify-content: flex-end;
}

.bn {
  margin-left: auto;
}

.honeypot {
  position: absolute;
  left: -9999px;
  opacity: 0;
}

.contact-error {
  z-index: 500;
  background-color: rgba(246, 28, 87, .15);
  padding: 1rem;
  border-radius: .5rem;
  font-size: .8rem;
  font-weight: 600;
  color: rgb(246, 28, 87);
  width: 100%;
  text-align: center;
  margin-bottom: var(--gutter);
  position: absolute;
  transform: translateY(-5rem);
}

.alert {
  z-index: 500;
  background-color: rgba(var(--color), .15);
  color: rgba(var(--color), 1);
  padding: .8rem;
  border-radius: .5rem;
  font-size: .7rem;
  font-weight: 600;
  width: 100%;
  text-align: center;
  margin: 5px 0;
  display: inline-block;
}

.alert.success {
  --color: var(--rgb-green);
}

.alert.error {
  --color: var(--rgb-red);
}

.main .kodama {
  left: 0;
  bottom: 25%;
  --anim: none;
  z-index: -1;
}



@media screen and (max-width: 800px) {
  .grid {
    flex-direction: column-reverse;
  }

  .contact-infos {
    display: none;
  }
}
