
main#contact {
  background-image: -webkit-gradient(linear, left top, left bottom, from(var(--prim-col-d-20)), to(var(--prim-col)));
  background-image: -o-linear-gradient(top, var(--prim-col-d-20), var(--prim-col));
  background-image: linear-gradient(to bottom, var(--prim-col-d-20), var(--prim-col));
  padding: var(--main-pt) var(--glob-px) 0;
  font-size: var(--fs);
  min-height: 100vh;
}
main#contact h1 {
  text-shadow: none;
}
main#contact form label {
  color: var(--sec-col);
  font-size: calc(var(--p-fs) * .9);
  margin-bottom: min(1.5vmin, 10px);
}
main#contact form .label-input-holder {
  margin: min(2vmin, 20px) 0;
}
main#contact form .label-input-holder label[for='contact_text'] span {
  -webkit-transition: all .3s ease;
  -o-transition: all .3s ease;
  transition: all .3s ease;
}
main#contact form .label-input-holder label[for='contact_text'] span.invalid-charlength {
  color: var(--red-col);
  font-weight: 700;
}
main#contact form .label-input-holder input, textarea, select {
  border: 1px solid black;
  width: 100%;
  font-size: var(--p-fs);
  background-color: var(--sec-col);
  color: var(--loc-text-light-l-10);
}
main#contact form .label-input-holder input, textarea {
  padding: min(1vmin, 5px) min(2vmin, 10px);
}
main#contact form .label-input-holder textarea {
  resize: none;
  height: min(30vmin, 300px);
}
main#contact form .checkbox-text-holder {
}
main#contact form .checkbox-text-holder strong {
  text-decoration: underline;
  cursor: pointer;
}
#contact_privacy {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: min(4vmin, 40px);
  aspect-ratio: 1;
  border: min(2vmin, 2px) solid black;
  background-color: var(--prim-col);
  position: relative;
  cursor: pointer;
}
#contact_privacy::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  width: 80%;
  height: 80%;
  -webkit-transform: translate(-50%, -50%) scale(0);
      -ms-transform: translate(-50%, -50%) scale(0);
          transform: translate(-50%, -50%) scale(0);
  background-color: var(--sec-col);
  -webkit-transition: -webkit-transform .3s ease;
  transition: -webkit-transform .3s ease;
  -o-transition: transform .3s ease;
  transition: transform .3s ease;
  transition: transform .3s ease, -webkit-transform .3s ease;
}
#contact_privacy:checked::before {
  -webkit-transform: translate(-50%, -50%) scale(1);
      -ms-transform: translate(-50%, -50%) scale(1);
          transform: translate(-50%, -50%) scale(1);
}
main#contact form input[type='submit'] {
  font-size: var(--p-fs);
  border: 2px solid black;
  border-radius: 100px;
  color: #c7c7c7;
  cursor: pointer;
}
@media screen and (min-width: 0px) {
  main {
    --fs: 4.5vmin;
    --main-pt: 20vmin;
  }
}
@media screen and (min-width: 0px) and (min-aspect-ratio: 1.3) {
  main {
  }
}
@media screen and (min-width: 768px) {
  main {
    --fs: 4.5vmin;
    --main-pt: 20vmin;
  }
}
@media screen and (min-width: 768px) and (min-aspect-ratio: 1.3) {
  main {
  }
}
@media screen and (min-width: 1200px) {
  main {
    --fs: 4.5vmin;
    --main-pt: 20vmin;
  }
}
@media screen and (min-width: 1200px) and (min-aspect-ratio: 1.3) {
  main {
  }
}