/**
 * @author Valentin Alisch, Off Office <hallo@valentinalisch.de>
 * @version 1.0
 *
 * Rettberg: Forms
 */

.form-section {
	margin-bottom: calc( var( --spacing--tiny ) * 2 );
}

.form-part,
.mc4wp-response {
	margin-bottom: var( --spacing--tiny );
}

.form-part.is-hidden {
	display: none;
}



button,
.button {
	--button-background: var( --black );
	/*--button-background--active: var( --gray );*/
	--button-background--active: var( --highlight-color );

	display: block;
	width: 100%;
	text-align: center;
	border-radius: 10px;
	padding: 1.2em; /*0.65em 0.6em 0.7em*/
	background: var( --button-background );
	color: var( --text-color--invert ) !important;
	cursor: pointer;

	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;

	font-size: var( --font-size--small );
	line-height: 1.2;

	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

button:hover,
button:active,
.button:hover,
.button:active {
	background: var( --button-background--active );
}

button.highlight,
button[name="add-to-cart"],
.button.highlight {
	--button-background--active: var( --highlight-color );
}



input,
textarea {
	display: block;
	width: 100%;
	border-radius: 10px;
	padding: 1.2em var( --spacing--tiny );

	line-height: 1.2;
	border: 1px solid currentColor;
	background: transparent;

	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;

	-webkit-resize: none;
	-moz-resize: none;
	resize: none;
}

input.wpcf7-not-valid,
textarea.wpcf7-not-valid {
	color: var( --red );
}

input.wpcf7-not-valid::placeholder,
textarea.wpcf7-not-valid::placeholder {
	color: var( --red );
}

select {
	cursor: pointer;
	display: block;
	width: 100%;
	border-radius: 10px;
	padding: 1.2em var( --spacing--tiny );

	line-height: 1.2;
	border: 1px solid currentColor;

	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.form-select {
	position: relative;
}

.form-select::after {
	content: url( '../../../asset/image/icon-v.svg' );
	position: absolute;
	top: 50%;
	right: var( --spacing--tiny );
	z-index: 20;

	-webkit-transform: translateY( -50% );
	-moz-transform: translateY( -50% );
	transform: translateY( -50% );
}



.wpcf7 .screen-reader-response,
.wpcf7-not-valid-tip {
	display: none;
}

.wpcf7-response-output {
	margin-top: var( --spacing--tiny );
	font-size: var( --font-size--small );
	line-height: var( --line-height--small );
	color: var( --gray );
}

.wpcf7-form.invalid .wpcf7-response-output {
	color: var( --red );
}