.elementor-widget-text-editor{color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}/* Start custom CSS */.bp-vendor-registration {
	max-width: 100%;
	margin: 0 auto;
	font-family: var(--font-family-base, "Noto Sans", system-ui, sans-serif);
}

.bp-reg-section {
	border: 1px solid var(--border, #9c9c9c);
	border-radius: var(--radius-md, 0.375rem);
	padding: var(--spacing-lg, 1.5rem);
	margin-bottom: var(--spacing-lg, 1.5rem);
}

.bp-reg-section__title {
	font-size: var(--text-base, 1rem);
	font-weight: var(--font-weight-semibold, 600);
	margin-bottom: 0.25rem;
	padding: 0 0.25rem;
}

.bp-reg-subsection-title {
	font-size: var(--text-base, 1rem);
	font-weight: var(--font-weight-medium, 500);
	margin: var(--spacing-lg, 1.5rem) 0 var(--spacing-sm, 0.5rem);
	padding-bottom: var(--spacing-xs, 0.25rem);
	border-bottom: 1px solid var(--border, #9c9c9c);
	color: var(--blk-gray-dark, #4a4a4a);
}

.bp-reg-subsection-title:first-child {
	margin-top: 0;
}

.bp-reg-field {
	margin-bottom: var(--spacing-md, 1rem);
}

.bp-reg-field:last-child {
	margin-bottom: 0;
}

.bp-reg-field__label {
	display: block;
	font-weight: var(--font-weight-medium, 500);
	margin-bottom: var(--spacing-xs, 0.25rem);
}

.bp-reg-field__required {
	color: var(--destructive, #e3000b);
}

.bp-reg-field__description {
	font-size: var(--text-sm, 0.875rem);
	color: var(--muted-foreground, #6b6b6b);
	margin: 0 0 var(--spacing-sm, 0.5rem);
	line-height: var(--line-height-default, 1.5);
}

.bp-reg-field__input {
	display: block;
	width: 100%;
	padding: 0.625rem var(--spacing-sm, 0.75rem);
	font-size: var(--text-base, 1rem);
	font-family: inherit;
	line-height: var(--line-height-default, 1.5);
	color: var(--blk-black, #000000);
	background-color: var(--blk-white, #ffffff);
	border: 1px solid var(--input, #9c9c9c);
	border-radius: var(--radius, 0.25rem);
	transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.bp-reg-field__input:focus {
	outline: none;
	border-color: var(--ring, #009ee3);
	box-shadow: 0 0 0 3px rgb(0 158 227 / 0.2);
}

.bp-reg-field__input:invalid:not(:placeholder-shown):not(:focus) {
	border-color: var(--destructive, #e3000b);
}

.bp-reg-field__textarea {
	resize: vertical;
	min-height: 120px;
}

.bp-reg-field__select {
	cursor: pointer;
}

.bp-reg-field-row {
	display: flex;
	gap: var(--spacing-md, 1rem);
	margin-bottom: var(--spacing-md, 1rem);
}

.bp-reg-field-row > .bp-reg-field {
	flex: 1;
	margin-bottom: 0;
}

.bp-reg-field--plz {
	flex: 0 0 140px !important;
}

.bp-reg-field--ort {
	flex: 1 !important;
}

.bp-reg-field__counter {
	font-size: var(--text-xs, 0.75rem);
	color: var(--muted-foreground, #6b6b6b);
	margin-top: var(--spacing-xs, 0.25rem);
	text-align: right;
}

.bp-reg-field__counter--limit {
	color: var(--destructive, #e3000b);
	font-weight: var(--font-weight-semibold, 600);
}

.bp-reg-field__file {
	padding: var(--spacing-sm, 0.5rem);
	border-style: dashed;
	cursor: pointer;
}

.bp-reg-field__preview {
	margin-top: var(--spacing-sm, 0.5rem);
}

.bp-reg-field__preview img {
	max-width: 200px;
	max-height: 200px;
	border-radius: var(--radius, 0.25rem);
	border: 1px solid var(--border, #9c9c9c);
}

.bp-reg-field--checkbox {
	margin-bottom: 0;
}

.bp-reg-field__checkbox-label {
	display: flex;
	align-items: flex-start;
	gap: var(--spacing-sm, 0.5rem);
	font-weight: var(--font-weight-normal, 400);
	cursor: pointer;
}

.bp-reg-field__checkbox {
	width: 1.25rem;
	height: 1.25rem;
	margin-top: 0.125rem;
	flex-shrink: 0;
	accent-color: var(--primary, #4a4a4a);
}

.bp-reg-field__checkbox-label a {
	color: var(--primary, #4a4a4a);
	text-decoration: underline;
}

.bp-reg-submit {
	margin-top: var(--spacing-lg, 1.5rem);
}

.bp-reg-submit__button {
	display: block;
	width: 100%;
	padding: 0.75rem var(--spacing-lg, 1.5rem);
	font-size: var(--text-base, 1rem);
	font-family: inherit;
	font-weight: var(--font-weight-medium, 500);
	color: var(--primary-foreground, #ffffff);
	background-color: var(--primary, #4a4a4a);
	border: none;
	border-radius: var(--radius, 0.25rem);
	cursor: pointer;
	min-height: 44px;
	transition: background-color 0.15s ease-in-out;
}

.bp-reg-submit__button:hover {
	background-color: var(--blk-black, #000000);
}

.bp-reg-submit__button:focus-visible {
	outline: 2px solid var(--ring, #009ee3);
	outline-offset: 2px;
}

.bp-reg-success {
	padding: var(--spacing-lg, 1.5rem);
	background-color: color-mix(in srgb, var(--blk-yellow-green, #85bc21) 10%, white);
	border: 1px solid var(--blk-yellow-green, #85bc21);
	border-radius: var(--radius-md, 0.375rem);
}

.bp-reg-success h2 {
	margin-top: 0;
}

.bp-reg-error {
	padding: var(--spacing-md, 1rem) var(--spacing-lg, 1.5rem);
	background-color: color-mix(in srgb, var(--destructive, #e3000b) 8%, white);
	border: 1px solid var(--destructive, #e3000b);
	border-radius: var(--radius-md, 0.375rem);
	margin-bottom: var(--spacing-lg, 1.5rem);
	color: var(--destructive, #e3000b);
}

.bp-reg-error p {
	margin: 0;
}

.bp-reg-notice {
	padding: var(--spacing-md, 1rem) var(--spacing-lg, 1.5rem);
	background-color: color-mix(in srgb, var(--primary, #4a4a4a) 6%, white);
	border: 1px solid var(--border, #9c9c9c);
	border-radius: var(--radius-md, 0.375rem);
}

.bp-reg-pw-feedback {
	list-style: none;
	padding: 0;
	margin: var(--spacing-sm, 0.5rem) 0 0;
	font-size: var(--text-sm, 0.875rem);
}

.bp-reg-pw-feedback li {
	margin-bottom: 0.125rem;
}

.bp-reg-pw-ok {
	color: var(--blk-yellow-green, #85bc21);
}

.bp-reg-pw-missing {
	color: var(--muted-foreground, #6b6b6b);
}

@media (max-width: 480px) {
	.bp-reg-field-row {
		flex-direction: column;
		gap: 0;
	}

	.bp-reg-field-row > .bp-reg-field {
		margin-bottom: var(--spacing-md, 1rem);
	}

	.bp-reg-field--plz {
		flex: 1 !important;
	}

	.bp-reg-section {
		padding: var(--spacing-md, 1rem);
	}
}/* End custom CSS */