textarea {
  height:100px;
  resize:none;
}
#contatti b{    color: #4a4a4a;}
#contatti p{
    color: #666666;
    font-size: 14px;}
    .flex{    height: 470px;
    position: relative;
    text-align: center;
    margin-top: 50px;}
    #contatti address{padding-left:20px; color: #666666;}
    #body::before{content:'';width: 100%;
    background-color: rgb(255 252 252 / 80%);
    margin-top: -400%;
    position: relative;
    bottom: -20px;}
    #body{padding-bottom: 20px;
    width: 100%;
    display: flex;
    position: absolute;
    flex-flow: row wrap-reverse;
    background-image: url(../images/sfondoContatti.png);}
.form__group {
position: relative;
    padding: 15px 0 0;
    margin-top: 10px;
}

.form__field {
  font-family: inherit;
  width: 100%;
  border: 0;
  outline: 0;
  font-size: 1rem;
  color: black;
  padding: 7px 0;
  background: transparent;
}
.form__field::placeholder {
  color: transparent;
}
.form__field:placeholder-shown ~ .form__label {
  font-size: 1.3rem;
  cursor: text;
  top: 20px;
}

.form__label {
  position: absolute;
  top: 0;
  display: block;
  font-size: 1rem;
  color: #9b9b9b;
  transition: color .2s ease,.2s;
}

.form__field:focus {
  padding-bottom: 6px;
  font-weight: 700;
  border-width: 3px;
  border-image: linear-gradient(to right, #665ece, #62ffb6);
  border-image-slice: 1;
}
.form__group div:nth-child(3){  
background:#9b9b9b;
     height: 3px;
     }
     .form__group div:nth-child(4){ display:none;
     background:linear-gradient(120deg, #665ece, #62ffb6, #665ece, #62ffb6);
  background-size: 300% 300%;
  clip-path: polygon(0% 100%, 3px 100%, 3px 3px, calc(100% - 3px) 3px, calc(100% - 3px) calc(100% - 3px), 3px calc(100% - 3px), 3px 100%, 100% 100%, 100% 0%, 0% 0%);
 animation:gradient-animation 4s ease-in-out infinite;
     height: 3px;}
     .form__group div:nth-child(5){ display:none;
     background:linear-gradient(120deg, rgb(255 0 0), rgb(102, 94, 206), rgb(255 0 0), rgb(102, 94, 206));
  background-size: 300% 300%;
  clip-path: polygon(0% 100%, 3px 100%, 3px 3px, calc(100% - 3px) 3px, calc(100% - 3px) calc(100% - 3px), 3px calc(100% - 3px), 3px 100%, 100% 100%, 100% 0%, 0% 0%);
 animation: gradient-animation 4s ease-in-out infinite;
     height: 3px;}
     
.form__field:focus ~ .form__label {
  position: absolute;
  top: 0;
  display: block;
  transition: 0.2s;
  font-size: 1rem;
  color: #665ece;
  font-weight: 700;
}

/* reset input */
.form__field:required, .form__field:invalid {
  box-shadow: none;
}
.testoErrore
{
  background: linear-gradient(to right, rgb(255, 0, 0), rgb(102, 94, 206));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin: 0;
    font-size: 14px;
    color:black;
}
#form h1,#contatti h1{color: #665ece;
    text-transform: uppercase;
    letter-spacing: 4px;
    font-size: 40px;
    text-shadow: -5px -1px 5px #9b9b9b;}
#form form button {
  position: relative;
    display: inline-block;
    padding: 10px 20px;
    color: #665ece;
    font-size: 16px;
    text-decoration: none;
    text-transform: uppercase;
    overflow: hidden;
    transition: .5s;
    margin-top: 40px;
    letter-spacing: 4px;
    background-color: white;
    border-style: none;
    left: 17%;
    margin-left: -100px;
}

#form form button:hover {
  background: #665ece;
  color: #fff;
  border-radius: 5px;
      box-shadow: 0 0 5px #665ece, 0 0 15px #665ece, 0 0 20px #665ece, 0 0 20px #665ece;
}

#form form button span {
  position: absolute;
  display: block;
}

#form form button span:nth-child(1) {
  top: 0;
  left: -100%;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, transparent, #665ece);
  animation: btn-anim1 1s linear infinite;
}

#form form button span:nth-child(2) {
  top: -100%;
  right: 0;
  width: 2px;
  height: 100%;
  background: linear-gradient(180deg, transparent, #665ece);
  animation: btn-anim2 1s linear infinite;
  animation-delay: .25s
}

#form form button span:nth-child(3) {
  bottom: 0;
  right: -100%;
  width: 100%;
  height: 2px;
  background: linear-gradient(270deg, transparent, #665ece);
  animation: btn-anim3 1s linear infinite;
  animation-delay: .5s
}
#form form button span:nth-child(4) {
  bottom: -100%;
  left: 0;
  width: 2px;
  height: 100%;
  background: linear-gradient(360deg, transparent, #665ece);
  animation: btn-anim4 1s linear infinite;
  animation-delay: .75s
}