/********************************************************************/
/* FORMULARE */
/********************************************************************/

/*** Aufbau Formulare ***/

.zeile-formular
{
	display: flex;
	gap: 20px;
	padding-left: 0px;
	padding-right: 0px;
	justify-content: center;
}

.zeile-formular.formularbutton
{
	justify-content: end;
}

.spalte-formular-halb
{
	flex: 50%;
}

.spalte-formular-ganz
{
	flex: 100% !important;
}

/* Felder */

.wpcf7 textarea, 
.spalte-formular-ganz label, 
.spalte-formular-halb label
{
	width: 100% !important;
	margin-bottom: 10px;
}

.wpcf7 textarea.wpcf7-textarea
{
	height: 120px !important;
	background-color: white !important;
}

.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="password"], .wpcf7 input[type="tel"], .wpcf7 input[type="url"], .wpcf7 input[type="number"], .wpcf7 input[type="search"], .wpcf7 select, .wpcf7 textarea
{
	color: black;
	padding: 10px 15px;
    font-family: "Montserrat", Sans-serif;	
	border-radius: 0;
	border: 0px solid white !important;
	background-color: white !important;
	font-size: 16px;
}

.wpcf7 input[type="text"]:focus, .wpcf7 input[type="email"]:focus, .wpcf7 input[type="password"]:focus, .wpcf7 input[type="tel"]:focus, .wpcf7 input[type="url"]:focus, .wpcf7 input[type="number"]:focus, .wpcf7 input[type="search"]:focus, .wpcf7 select:focus, .wpcf7 textarea:focus
{
	color: black !important;
	background-color: var(--bg-hellgrau-2) !important;
	font-weight: bold;
}

.wpcf7 ::placeholder
{
  color: black;
  opacity: 0.5; 
}

.label-ueberschrift
{
	font-size: 16px;
	padding-bottom: 10px !important;
	display: block;
	font-weight: bold;
	color: white;
    font-family: "Montserrat", Sans-serif;	
}

/* Checkboxen Datenschutz, etc. */

.datenschutz .wpcf7-form-control .wpcf7-list-item
{
	margin-left: 0 !important;
	float: left;
	margin-right: 10px;
	margin-bottom: -12px;
	padding-top: 1px;
    scale: 1.2;
}

.datenschutz
{
	display: block;
	padding-left: 0px;
	padding-right: 0px;
	margin-bottom: 0;
    font-family: "Montserrat", Sans-serif;	
	margin-top: -10px;
	color: white;
}

.datenschutz .wpcf7-form-control-wrap
{
	margin-top: -3px;
	width: auto;
}

.datenschutz .text, 
.datenschutz .text a,
.datenschutz .wpcf7-list-item-label
{
	margin-left: 5px;
	color: white !important;
	font-size: 12px;
	line-height: 140%;
}

.datenschutz a,
.datenschutz .text a
{
 	color: rgba(255,255,255,0.6);
	font-weight: bold;
	height: 0;
}

.datenschutz a:hover,
.datenschutz .text a:hover
{
 	color: white;	
}

/* Senden-Button */

.sendenbutton
{
	margin-top: 40px;
	background-color: transparent !important;
	color: white !important;
	font-weight: bold !important;
	text-transform: uppercase;
	font-size: 18px;
    font-family: "Montserrat", Sans-serif;		
	border: 2px solid white !important;
	display: block;
    font-weight: 700 !important;
    border-radius: 10px !important;
    padding: 15px 20px 15px 20px !important;
	transition: all 0.3s ease-in-out !important;
}

.sendenbutton:hover
{
	background-color: white !important; 
	color: black !important;
	transition: all 0.3s ease-in-out !important;
}

/* Fehleranzeige */

.screen-reader-response
{
    color: white;
	display: none;
}

.wpcf7-response-output
{
	color: white;
	padding: 15px !important;
	background-color: transparent;
    text-align: center;
	border: 2px solid white;
    margin: 0px 0px 40px 0px !important;
    font-family: "Montserrat", Sans-serif;		
}

/* Anpassungen vorübergehend während anderes Theme noch mit drinnen hängt bzw. Seiten */

.wpcf7-not-valid-tip
{
	position: relative !important;	
	top: 5px !important;
	left: 0 !important;
}

.wpcf7-not-valid-tip
{
	color: red;
    font-size: 12px;
    display: inline-block;
	position: relative;
    width: auto;
	margin-top: 8px;
    font-family: "Montserrat", Sans-serif;	
	
	/* Variante mit Background */
	color: white;
    background-color: red;
    padding: 5px !important;
	margin-top: 10px;
}

.wpcf7-not-valid-tip:before
{
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 10px;
    border: 5px solid transparent;
    border-top: 0;
    border-bottom: 5px solid red;
    transform: translate(-50%, calc(-100% - 0px));
}

.pflichtfelder-hinweis-strich
{
	border-top: 1px solid white;
	width: 150px;
	padding-bottom: 5px;
	margin-top: 20px;
}

.pflichtfelder-hinweis
{
	font-style: italic;
	font-size: 14px;
	color: white;
}

@media (max-width: 767px) 
{
	.zeile-formular
	{
	    flex-direction: column;
		gap: 0;
	}
	
	.zeile-formular.formularbutton
	{
	    text-align: center;
		padding-bottom: 40px;
	}
	
	.spalte-formular-halb
	{
		flex: 100% !important;
	}
	
	.sendenbutton,
	.datenschutz,
	.label-ueberschrift
	{
		font-size: 15px;
	}
	
	.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="password"], .wpcf7 input[type="tel"], .wpcf7 input[type="url"], .wpcf7 input[type="number"], .wpcf7 input[type="search"], .wpcf7 select, .wpcf7 textarea
	{
		font-size: 15px;
	}
		
	.pflichtfelder-hinweis
	{
		font-size: 13x;
	}
}


/**** BEWERBUNGSFORMULAR ****/

/* Uploads */

.wpcf7 input[type="file"] 
{
    color: #fff;
}

.wpcf7 input[type="file"] 
{
    color: #fff;
    font-size: 14px;
}

.wpcf7 input[type="file"]::file-selector-button 
{
    background: #fff;
    color: #255;
    border: none;
    padding: 6px 8px;
    margin-right: 10px;
    cursor: pointer;
}