.form {
     width: 100%;
}
 .form h5 {
     margin-top: 15px;
     margin-bottom: 10px;
}
 .form h5 + p {
     font-size: 0.9em;
     color: var(--text-secondary);
     margin-top: -5px;
}
 .form .fields {
     position: relative;
     padding: 20px;
}
 .form select {
     appearance: none;
     background-image: linear-gradient(45deg, transparent 50%, #c7c9cb 50%), linear-gradient(135deg, #c7c9cb 50%, transparent 50%), linear-gradient(to right, #dfe0e0, #dfe0e0);
     background-position: calc(100% - 20px) 20px, calc(100% - 15px) 20px, calc(100% - 40px) 10px;
     background-size: 5px 5px, 5px 5px, 1px 25px;
     background-repeat: no-repeat;
}
 .form input[type="date"]::-webkit-calendar-picker-indicator {
     color: #ddd;
     filter: invert(0.8);
}
 .form input[type="text"], .form input[type="email"], .form input[type="date"], .form input[type="datetime-local"], .form input[type="tel"], .form input[type="number"], .form select {
     display: flex;
     margin-top: 5px;
     padding: 15px;
     border: 1px solid #dfe0e0;
     width: 100%;
     flex-basis: 100%;
     height: 47px;
}
 .form .checkbox {
     display: inline;
     margin-bottom: 20px;
     align-items: center;
}
 .form .checkbox input[type="checkbox"] {
     width: 20px;
     height: 20px;
	 margin-right: 10px;
	 position: relative;
	 top: 5px;
}
 .form input[type="text"]:focus, .form input[type="email"]:focus, .form input[type="tel"]:focus, .form input[type="mail"]:focus, .form input[type="number"]:focus, .form input[type="date"]:focus, .form input[type="datetime-local"]:focus, .form select:focus {
     border: 1px solid #c6c7c7;
}
 .form input[type="text"]::placeholder, .form input[type="email"]::placeholder, .form input[type="tel"]::placeholder, .form input[type="date"]:invalid, .form input[type="number"]:invalid, .form input[type="datetime-local"]:invalid, .form textarea::placeholder, .form select:invalid {
     color: #858688;
}
 .form textarea {
     resize: none;
     margin-top: 15px;
     padding: 15px;
     border: 1px solid #dfe0e0;
     width: 100%;
     height: 150px;
}
 .form textarea:focus {
     border: 1px solid #c6c7c7;
}
 .form input[type="submit"] {
     display: block;
     margin-top: 15px;
     padding: 15px;
     border: 0;
     background-color: #cb5f51;
     font-weight: bold;
     color: #fff;
     cursor: pointer;
     width: 100%;
}
 .form input[type="submit"]:hover {
     background-color: #c15b4d;
}
 .form input[type="submit"]:disabled {
     background: #f1f1f1;
     color: #888;
}
 .form input[name="email"] {
     position: relative;
     display: block;
}
 .form .field {
     display: inline-flex;
     position: relative;
     width: 100%;
}
 .form label {
     font-size: 14px;
     font-weight: 600;
     color: #8e939b;
}
 .form .field i {
     position: absolute;
     color: #dfe2e5;
     top: 25px;
     left: 15px;
     z-index: 10;
}
 .form .field i ~ input {
     padding-left: 45px !important;
}
 .form .responses {
     padding: 15px;
     margin: 0;
}
 .form .fields .wrapper {
     display: flex;
     justify-content: space-between;
     padding-bottom: 20px;
}
 @media screen and (max-width: 600px) {
     .form .fields .wrapper {
         flex-direction: column;
    }
}
 .form .fields .wrapper > div {
     width: 100%;
}
 .form .fields .wrapper .gap {
     width: 35px;
}
 .form .fields .wrapper-grid {
     display: grid;
     column-gap: 35px;
     grid-template-columns: 1fr 1fr;
}
 .einwilligung {
     margin-top: 1em;
     font-size: 0.95em;
     color: #333;
}
 .input-info {
     font-size: 0.7em;
     color: var(--text-secondary);
     margin-left: 0.5em;
}

.form a {
	margin: 0;
	padding: 0;
}
