.gform_wrapper p.gform_required_legend {
	display: none;
}
.gform_wrapper input[type=button].gform_next_button, .gform_wrapper input[type=submit] {
	background: var(--color-brand)!important;
	font-weight: bold!important;
}
.gform_wrapper input[type=button].gform_next_button:hover, .gform_wrapper input[type=submit]:hover {
	background: var(--color-brand-dark)!important;
}
.gform_wrapper input::placeholder {
	color: #999999;
}
.gform_wrapper input[type=checkbox], .ginput_container_checkbox, .ginput_container_consent, .gform_wrapper .payment_options .gchoice {
	cursor: pointer;
}
.gform_wrapper input[type=checkbox]:hover {
	border-color: var(--color-brand)!important;
}
.gform-theme--framework .gf_progressbar .percentbar_blue {
	background-color: var(--color-brand);
}
.gform_wrapper .gfield_label {
	font-weight: bold;
	font-size: 15px;
}
.gform_wrapper .gfield--type-date input {
	width: 100%;
}
.gform_wrapper .gfield--type-html {
	background: #E6F1FB;
	padding: 1rem;
	border-left: 4px solid var(--color-brand);
	border-bottom: 0;
}
.gform_wrapper .note {
	background: #fef6e9;
    border-left: 0;
}
.gform_wrapper .gfield--type-option input.gfield-choice-input:before {
	color: var(--color-brand);
}
.gform_wrapper .gfield--type-option .gform-field-label {
	font-weight: bold;
}
.gform_wrapper .gfield--type-option .gchoice {
	cursor: pointer;
}
.gform_wrapper .gfield--type-option .gform-field-label .price {
	color: var(--color-pro);
}
.gform_wrapper .gfield--type-option .gform-field-label .description {
	font-weight: normal;
}
.gform_wrapper .gfield--type-option .gform-field-label .ginput_price {
	display: none;
}
.gform_wrapper .gfield--type-section {
	border-bottom: 0;
	padding-bottom: 0;
}
.gform_wrapper .gfield--type-section .gsection_title {
	display: none;
}
.gform_wrapper .explanation_title {
	color: var(--color-brand);
}
.gform_wrapper .infobox {
	background: var(--color-bg-light);
	border-left: 4px solid var(--color-border);
}
.gform_wrapper .explanation_title {
	font-weight: bold;
	font-size: 15px;
}
.gform_wrapper .infobox .explanation_title {
	color: #000;
}
.gform_wrapper .explanation_body {
	padding-bottom: 5px;
	margin-top: 5px;
}
.gform_wrapper .infobox .explanation_body {
	padding-bottom: 0;
    border-bottom: 0;
}
.gform-theme--foundation .gform_fields {
	row-gap: 1rem;
}
.gform_wrapper input, .gform_wrapper select, .gform_wrapper textarea {
    border-color: var(--color-border) !important;
    box-shadow: unset !important;
}
.gform-theme--framework .gfield:where(.gfield--type-multiselect,.gfield--input-type-multiselect) .chosen-container-multi:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework .gfield:where(.gfield--type-select,.gfield--input-type-select) .chosen-search input[type=text]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework .gfield:where(.gfield--type-select,.gfield--input-type-select) .chosen-single:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework .gform-theme-field-control:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework input[type]:where(:not(.gform-text-input-reset):not([type=hidden])):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework select:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework select[multiple]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework textarea:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework.gform-theme.gform_wrapper .button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework.gform-theme.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework.gform-theme.gform_wrapper :where(:not(.mce-splitbtn))>button:not([id*=mceu_]):not(.mce-open):where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework.gform-theme.gform_wrapper button.button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework.gform-theme.gform_wrapper input:is([type=submit],[type=button],[type=reset]).button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework.gform-theme.gform_wrapper input:is([type=submit],[type=button],[type=reset]):where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus, .gform-theme--framework.gform-theme.gform_wrapper input[type=submit].button.gform_button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):focus {
	outline: none;
	border-color: var(--color-brand) !important;
}
.gform_wrapper input[type=checkbox]:focus {
	border-color: var(--color-border)!important;
}
.gform-theme--framework input[type=radio]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::before {
	background-color: var(--color-brand);
}
.gf_progressbar_wrapper .gf_progressbar_title {
	color: #000;
	font-size: 15px;
	background: var(--color-bg-light);
    padding: 1rem;
	margin-bottom: 0!important;
	border-left: 2px solid var(--gf-field-pg-prog-bar-bg-color);
	border-top: 2px solid var(--gf-field-pg-prog-bar-bg-color);
	border-right: 2px solid var(--gf-field-pg-prog-bar-bg-color);
}
.gform-theme--framework .gf_progressbar, .gform-theme--framework .gf_progressbar .gf_progressbar_percentage {
	border-radius: 0;
}
.gform-theme--framework .gf_page_steps, .gform-theme--framework .gf_progressbar_wrapper {
	margin-bottom: 1rem;
}
.gform_wrapper .ginput_counter {
	display: none!important;
}
.gform_wrapper .gfield_description ul, .gform_wrapper .gsection_description ul {
	margin-top: 0;
}
.gform_wrapper .gfield_description ul li {
	list-style-type: disc;
	margin-top: 0!important;
}
.gform_wrapper .gform_drop_area {
	border-width: 2px;
	border-color: var(--color-brand);
	cursor: pointer;
}
.gform_wrapper .gform_drop_area:before {
	color: var(--color-brand)!important;
}
.gform_wrapper .gform_drop_area .button {
	background-color: var(--color-brand)!important;
}
.gform_wrapper .gform_drop_area .button:hover {
	background-color: var(--color-brand-dark)!important;
}
.gform_wrapper .hide {
	display: none;
}
.gform_wrapper .navigation {
	background: #eeeeee;
	font-weight: bold;
    border-left: 0;
	font-size: 15px;
}
.gform-page-footer {
	position: relative;
}
.gform-page-footer input[type=submit] {
	position: absolute;
	top: 0;
	right: 0;
}
.gform_wrapper .payment_options label {
	color: transparent;
	width: 70px;
    height: 49px;
}
.gform_wrapper .payment_options .gfield_radio .gchoice:nth-child(1) label {
	background-image: url('../assets/payment-icon-ueberweisung.png');
}
.gform_wrapper .payment_options .gfield_radio .gchoice:nth-child(2) label {
	background-image: url('../assets/payment-icon-klarna.png');
}
.gform_wrapper .payment_options .gfield_radio .gchoice:nth-child(3) label {
	background-image: url('../assets/payment-icon-kreditkarte.png');
	width: 140px;
    height: 49px;
}
.gform_wrapper .payment_options input.gfield-choice-input {
	margin-top: 15px;
}

/* Desktop Only */
@media screen and (min-width:640px) {
	.gform_wrapper .gfield--type-address input {
		inline-size: calc(50% - var(--gf-form-gap-x) / 2)!important;
	}
	.gform_wrapper .gf-col-left .gfield--type-address input,
	.gform_wrapper .gf-col-right .gfield--type-address input {
		inline-size: 100%!important;
	}
}
@media screen and (max-width: 768px) {
    form label, form p {
        font-size: inherit !important;
    }
}
@media screen and (min-width:1000px) {
	.gform_wrapper .payment_options .gfield_radio {
		flex-direction: unset!important;
		gap: 18px;
	}
}

/* ===== Zwei-Spalten-Layout (via GF-Feldtypen gf_col_left / gf_col_right / gf_col_end) =====
 *
 * Aufbau im GF-Editor:
 *   [Linke Spalte ›]       ← öffnet gf-col-left
 *     Feld A
 *     Feld B  Feld C       ← nebeneinander ziehen weiterhin möglich
 *   [‹ Spalte Ende]
 *   [Rechte Spalte ›]      ← öffnet gf-col-right
 *     Feld D
 *   [‹ Spalte Ende]
 *
 * Felder außerhalb der Spalten-Wrapper nehmen automatisch volle Breite ein.
 * Section-Felder innerhalb einer Spalte werden als grauer Step-Header dargestellt.
 */

/* Äußerer Container: Flexbox, sobald mindestens ein Spalten-Wrapper vorhanden ist */
.gform-theme--foundation .gform_fields:has(.gf-col-left, .gf-col-right) {
    display: flex !important;
    flex-wrap: wrap;
    gap: 0 2rem;
    align-items: flex-start;
}

/* Direkte gfield-Kinder außerhalb der Spalten-Wrapper → volle Breite */
.gform-theme--foundation .gform_fields:has(.gf-col-left, .gf-col-right) > .gfield {
    flex: 0 0 100%;
}

/* Spalten-Wrapper: gleiche Breite, je 50 % */
.gform_fields > .gf-col-left,
.gform_fields > .gf-col-right {
    flex: 1 1 0;
    min-width: 0;
}

/* Innen: GFs 12-Spalten-Grid wiederherstellen →
   „Felder nebeneinander ziehen" im GF-Editor funktioniert weiterhin */
.gf-col-left,
.gf-col-right {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-row-gap: 1rem;
    column-gap: 1rem;
    align-content: start;
}

/* Section-Titel innerhalb einer Spalte: sichtbar + als Step-Header gestylt */
.gf-col-left .gfield--type-section,
.gf-col-right .gfield--type-section {
    grid-column: 1 / -1;
}

@media screen and (max-width: 768px) {
    /* Spalten untereinander stapeln */
    .gform_fields > .gf-col-left,
    .gform_fields > .gf-col-right {
        flex: 0 0 100%;
    }
}