:root { 	
	--grey: #567483;
	--light-grey: #e6e6e6;
	--lighter-grey: #eeeff2;
	--lighter-grey2: #dee1e7;
	--darker-grey: #231f20;
	--orange: #f47216;	
	--red: #ed1c2a;
	--yellow: #fddd04;
	--orange: #f47216;
	--turquoise: #50a092;
	--white: #ffffff;
}

/*-- Schriftgroesse festlegen (iOS Bug) --*/
fieldset.formContainer {
	-webkit-text-size-adjust: 100% !important;
}

.formswszb fieldset {
	min-width: 0 !important;
	width: 100% !important;
}

.formswszb input[type="text"],
.formswszb input[type="button"],
.formswszb input[type="file"],
.formswszb textarea,
.formswszb button {
	/* Remove First */
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family: 'PFSquareSansPro';
}

.formswszb input[type="text"],
.formswszb textarea,
.formswszb select {	
	width: 100% !important;
	box-sizing: border-box !important;
	padding: 0 10px !important;
	height: 40px !important;
	line-height: 40px !important;
	border-width: 2px !important;
	border-style: solid !important;
	border-radius: 4px !important;
	border-color: var(--lighter-grey2) !important;
	box-shadow: none !important;
	color: var(--darker-grey) !important;
	font-size: 16px !important;
	background-color: #fff !important;
}

.formswszb textarea {
	height: 150px !important;
}

.formswszb input[type="text"]:focus,
.formswszb textarea:focus,
.formswszb select:focus {
	border-color: var(--orange) !important;
}

.formswszb input[type="text"]:focus-visible,
.formswszb textarea:focus-visible,
.formswszb select:focus-visible {
	border-color: var(--orange) !important;
	outline: none !important;
}

.formswszb .rsform-block,
.formswszb__row {
	margin-bottom: 20px;
}

.formswszb label {
	display: inline-block;
	margin-bottom: 5px;
	font-size: 16px;
	color: var(--darker-grey);
	padding: 0 5px;
	position: relative;
	/* font-weight: 600; */
}

.formswszb .section {
	background-color: var(--lighter-grey);
	padding: 15px;
	margin-bottom: 20px;
}

/* Radio- und Checkboxen */
.formswszb input[type="radio"],
.formswszb input[type="checkbox"] {
	position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
  height: 1px;
  width: 1px;
  word-wrap: normal;
}

.formswszb label[for*='0']:not(:last-of-type),
.formswszb label[for*='1']:not(:last-of-type),
.formswszb label[for*='2']:not(:last-of-type),
.formswszb label[for*='3']:not(:last-of-type),
.formswszb label[for*='4']:not(:last-of-type),
.formswszb label[for*='5']:not(:last-of-type),
.formswszb label[for*='6']:not(:last-of-type),
.formswszb label[for*='7']:not(:last-of-type),
.formswszb label[for*='8']:not(:last-of-type),
.formswszb label[for*='9']:not(:last-of-type) {
	margin-right: 20px;
}

.formswszb .formswszb__label-value {
	position: relative;
	box-sizing: border-box !important;
	cursor: pointer;
	display: flex;
	align-items: center;
}

.formswszb .formswszb__label-value:before {
	content: '';
	display: block;
	min-width: 25px;
	width: 25px;
	height: 25px;
	background-color: #fff;
	border: 2px solid var(--lighter-grey2);
	border-radius: 4px;
	margin-right: 10px;
}

.formswszb input[type="radio"] ~ .formswszb__label-value:before {
	border-radius: 100%;
}

.formswszb input:checked ~ .formswszb__label-value:before {
	border-color: var(--grey);
	background-color: var(--grey);
	background-image: url(../images/check-white.png);
	background-repeat: no-repeat;
	background-size: 60%;
	background-position: center;
}

.formswszb input:focus ~ .formswszb__label-value:before {
	border-color: var(--orange);
}

/* Kalender Felder */
.formswszb label[for*='cal'] ~ div .formBody {
	display: flex;
	flex-wrap: wrap;
}

.formswszb label[for*='cal'] ~ div .formValidation {
	width: 100%;
}

.formswszb input[type="text"].rsform-calendar-box {
	flex: 1 !important;
}

.formswszb .rsform-calendar-button {
	min-width: 40px !important;
	width: 40px !important;
	height: 40px !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	margin-left: 3px !important;
	border: 2px solid var(--lighter-grey2) !important;
	border-radius: 4px !important;
}

/* Button */
.formswszb button[type="button"],
.formswszb button[type="submit"] {
	color: #d8d8d8 !important;
	height: 45px !important;
	font-size: 16px !important;
	font-weight: 600 !important; 
	box-shadow: none !important;
	text-shadow: none !important;
	background-color: transparent !important;
	border: 2px solid var(--grey) !important;
	border-radius: 50px !important;
	padding-left: 25px !important;
	padding-right: 25px !important;
	cursor: pointer !important;
}

.formswszb button[type="button"].rsform-button-next,
.formswszb button[type="submit"] {
	background-color: var(--darker-grey) !important;
	color: #fff !important;
	border-color: var(--darker-grey) !important;
}

.formswszb button[type="button"].rsform-button-prev {
	border-color: var(--grey) !important;
	color: var(--grey) !important;
}


/* Überschrift Block */
.formswszb .rsform-block-header,
.formswszb .rsform-block-header-zusammenfassung,
.formswszb .rsform-block-gewaehltes-produkt,
.formswszb .rsform-block-gewaehltes-produkt-zusammenfassung {
	background-color: var(--grey);
	color: #fff;
	padding: 15px;
	margin-bottom: 30px !important;
}

.formswszb--red .rsform-block-header,
.formswszb--red .rsform-block-header-zusammenfassung,
.produktbestellung--strom .formswszb .rsform-block-gewaehltes-produkt,
.produktbestellung--strom .formswszb .rsform-block-gewaehltes-produkt-zusammenfassung {
	background-color: var(--red);
	color: #fff;
}

.formswszb--yellow .rsform-block-header,
.formswszb--yellow .rsform-block-header-zusammenfassung,
.produktbestellung--gas .formswszb .rsform-block-gewaehltes-produkt,
.produktbestellung--gas .formswszb .rsform-block-gewaehltes-produkt-zusammenfassung {
	background-color: var(--yellow);
	color: #000;
}

.formswszb--orange .rsform-block-header,
.formswszb--orange .rsform-block-header-zusammenfassung,
.produktbestellung--waerme .formswszb .rsform-block-gewaehltes-produkt,
.produktbestellung--waerme .formswszb .rsform-block-gewaehltes-produkt-zusammenfassung {
	background-color: var(--orange);
	color: #fff;
}

.formswszb--turquoise .rsform-block-header,
.formswszb--turquoise .rsform-block-header-zusammenfassung,
.produktbestellung--e-mobilitaet .formswszb .rsform-block-gewaehltes-produkt,
.produktbestellung--e-mobilitaet .formswszb .rsform-block-gewaehltes-produkt-zusammenfassung {
	background-color: var(--turquoise);
	color: #fff;
}

.formswszb .rsform-block-header label,
.formswszb .rsform-block-header-zusammenfassung label,
.formswszb .rsform-block-gewaehltes-produkt label,
.formswszb .rsform-block-gewaehltes-produkt-zusammenfassung label {
	padding-left: 0 !important;
	padding-right: 0 !important;
	color: #fff !important;
}

.produktbestellung--gas .formswszb .rsform-block-gewaehltes-produkt label,
.produktbestellung--gas .formswszb .rsform-block-gewaehltes-produkt-zusammenfassung label {
	color: #000 !important;
}

.formswszb .rsform-block-header h2,
.formswszb .rsform-block-header-zusammenfassung h2,
.formswszb .rsform-block-gewaehltes-produkt h2,
.formswszb .rsform-block-gewaehltes-produkt-zusammenfassung h2 {
	margin-bottom: 0 !important;
}

/* Produkt abschließen Formular */
.formswszb--produktbestellung .rsform-block-grund {
	margin-bottom: 0;
}

.formswszb--produktbestellung .rsform-block-grund .formControlLabel,
.formswszb--produktbestellung .rsform-block-anrede-grundangaben .formControlLabel,
.formswszb--produktbestellung .rsform-block-kuendigung-lieferinfos .formControlLabel,
.formswszb--produktbestellung .rsform-block-zahlungsart .formControlLabel,
.formswszb--produktbestellung .rsform-block-anrede-rechnungsadresse .formControlLabel {
	display: none;
}

.formswszb--produktbestellung .rsform-block-weiter .formBody {
	text-align: center;
}

@media only screen and (min-width : 480px) {

	.formswszb--produktbestellung .rsform-block-weiter .formBody {
		text-align: right;
	}

}

.formswszb--produktbestellung .rsform-block-senden .formBody {
	text-align: center;
}

.formswszb--produktbestellung button[type="button"].rsform-button-prev {
	margin-bottom: 15px;
}

@media only screen and (min-width : 480px) {

	.formswszb--produktbestellung .rsform-block-senden .formBody {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		text-align: initial;
	}
	
	.formswszb--produktbestellung .rsform-block-senden .formValidation,
	.formswszb--produktbestellung .rsform-block-senden .formDescription {
		width: 100%;
	}
	
	.formswszb .form-description {
		margin-top: 15px;
	}

}




/* Zusammenfassung */
[id*='_zusammenfassung'] {
	display: none;
	font-size: 18px !important;
}

[class*='zusammenfassung__'] {
	font-size: 18px !important;
}

.formswszb .zusammenfassung__rechnungsadresse {
	display: none;
}

.formswszb-flex {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}

.formswszb .zusammenfassung__row {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	margin-bottom: 10px;
}

.formswszb .zusammenfassung__row:last-child {
	margin-bottom: 0; 
}

@media only screen and (min-width : 500px) {
	.formswszb .zusammenfassung__row {
		margin-bottom: 7.5px;
	}
}

.formswszb .zusammenfassung__label {
	padding: 0;
	margin: 0;
	width: 100%;
	margin-bottom: 2.5px;
	font-weight: 600;
	font-size: 16px !important;
}

@media only screen and (min-width : 500px) {
	.formswszb .zusammenfassung__label {
		width: 200px;
		margin-bottom: 0;
	}
}

.formswszb .zusammenfassung__content {
	width: 100%;
}

@media only screen and (min-width : 500px) {
	.formswszb .zusammenfassung__content {
		flex: 1;
	}
}

.formswszb [class*='zusammenfassung__'] h2,
.formswszb [class*='zusammenfassung__'] h2 span {
	font-size: 20px !important;
}

.formswszb .zusammenfassung__grund.section {
	background-color: var(--grey);
	color: #fff;
}

.formswszb .zusammenfassung__grund h2 {
	margin-bottom: 0;
}

.formswszb .zusammenfassung__adresse {
	width: 100%;
	margin-bottom: 15px;
}

@media only screen and (min-width : 500px) {
	.formswszb .zusammenfassung__adresse {
		width: 50%;
	}
}

.formswszb .zusammenfassung__rechnungsadresse {
	width: 100%;
	margin-bottom: 15px;
}

@media only screen and (min-width : 500px) {
	.formswszb .zusammenfassung__rechnungsadresse {
		width: 50%;
	}
}


#zahlungsart_zusammenfassung,
#kuendigung_lieferinfos_zusammenfassung {
	margin-bottom: 15px;
}

#lastschriftmandat-zahlungsart_zusammenfassung {
	margin-top: 15px;
}