@charset "UTF-8";
.row { --bs-gutter-x: 0; }
:root {
	--frame-spacing-xl: 0;
	--frame-spacing-lg: 0;
	--frame-spacing-md: 0;
	--frame-spacing-sm: 0;
	--frame-spacing-xs: 0;
	
	--frame-link-color: #105882; 
	--frame-link-hover-color: #105882; 
	
	--frame-outer-spacing-variant-none: 0;
	--frame-outer-spacing-before: 1rem;
	--bs-body-color: #343A40;
	--bs-btn-active-border-color: #105882; 
	--bs-btn-active-bg: #105882; 
}

.btn { border-radius: 0.3rem; padding: 0.6rem 1.6rem; margin-bottom: 0.5rem; width: 100%; text-transform: unset; }
.btn::first-letter { text-transform: capitalize; } 
.btn.rect { border-radius: 0; }
.btn:focus, .btn:active { box-shadow: none; outline: 2px solid #105882; }
.form-control { border-radius: 0 !important; }
.form-control:focus, .form-control:active { box-shadow: none; outline: 2px solid #105882; }
.btn-primary { color: #fff; background-color: #105882; border-color: #105882; border: 1px solid #fff; box-shadow: none; }
.btn-primary:hover { color: #fff; background-color: #105882; border-color: #105882; }
.btn-primary.focus, .btn-primary:focus { color: #fff; background-color: #105882; outline-color: #000000; }
.formbuttons { display: flex; justify-content: space-between; margin: 0; margin-top: 1rem; padding: 0; padding-top: 1rem; flex-wrap: wrap; }
.formbuttons > * { margin-bottom: 0.5rem; }
.formbuttons2 { display: flex; justify-content: space-between; margin: 0; padding: 0; flex-wrap: wrap; }
.formbuttons3 { display: flex; justify-content: flex-start; margin: 0; margin-top: 1rem; padding: 0; padding-top: 1rem; flex-wrap: wrap; }
.formbuttons3 > * { margin-bottom: 0.5rem; margin-right: 0.5rem; }
ul.noindent { padding-left: 1rem; }
.btn-secondary { color: #105882; background-color: #fff; border-color: #105882; }
.btn-secondary:hover { color: #105882; background-color: #fff; border-color: #105882; }
.btn-secondary.focus, .btn-secondary:focus { color: #105882; background-color: #fff; border-color: #105882; }
textarea.textarea { min-height: 10rem !important; border: 1px solid #7A7E83; padding: 0.5rem; border-radius: 0.5rem; }
.textarea::placeholder { color: #757575; font-style: italic; font-size: 1rem; }
.textfield::placeholder { color: #757575; font-style: italic; font-size: 1rem; }

a { color: #105882;  text-decoration: none; }
*:focus-visible { outline: 2px solid #105882; }
a:hover { color: #105882; }
label:hover { cursor: pointer; }
.form-check-input:checked, .form-check-label input[type="checkbox"]:checked, .form-check-label input[type="radio"]:checked { background-color: #105882; border-color: #105882; accent-color: #105882; }
.checkbox:checked { background-color: #105882; border-color: #105882; accent-color: #105882; }

.pagebrowser { display: block; max-width: 100%; overflow-x: auto; text-align: center; padding-bottom: 0.5rem; }
.pagination { border: 1px solid #868686; border-radius: 0.25rem; display: inline-flex; margin: 0 auto; }
.pagination > li { margin: 0 !important; }
.page-link { text-decoration: none !important; border: 1px solid #ccc; border-left-width: 2px; margin: 0; color: #868686;  background-color: transparent; }
.page-item.active .page-link { color: #fff; background-color: #105882; border-color: #105882; }
a.page-link:hover, .page-link:active, .page-link:focus-visible, .page-link:focus { color: #fff; background-color: #105882; border-color: #105882; outline: none; box-shadow: none; }
span.page-link:hover { background: none; }
.pagination > li:first-child .page-link { border-top-left-radius: 0.25rem; border-bottom-left-radius: 0.25rem; border-left-width: 1px;  }
.pagination > li:last-child .page-link { border-top-right-radius: 0.25rem; border-bottom-right-radius: 0.25rem; }

body { background-color: #ededed; font-family: "Roboto",Verdana, Arial, sans-serif; }
body.ajax {  }

header#main { background-color: #ffffff; color: #343A40; padding: 1rem 24px; }
header#main .section-row { display: flex; justify-content: space-between; align-items: flex-end; }
header#main .section-row p { margin: 0; }
header#main .head2 { display: flex; justify-content: flex-end; }

header#main #menue { position: relative; }
header#main #menue #menuepanel { display: none; position: absolute; right: 0; top: calc(100% + 16px); z-index: 1000; }
header#main #menue #menuepanel.showed { display: block; }
header#main #menue #menuepanel .menue { display: flex; flex-direction: column; min-width: 13rem; padding: 1rem; border-radius: 0; border: 1px solid #eee; box-shadow: 0 2px 4px rgba(0,0,0,0.20); background-color: #fff; }
header#main #menue #menuebutton { background-color: transparent; border: none; }
header#main #menue #personbutton { display: none; }
header#main #menue #personpanel { position: relative; top: 0; left: 0; }
header#main #menue #personpanel a { padding: 0.2rem 0.5rem; display: block; color: #666; font-weight: bold; border-bottom: 2px solid transparent;  }
header#main #menue #personpanel a.logout { color: #DC3545; }
header#main #menue #personpanel a:hover { text-decoration: none; border-bottom: 2px solid #105882; outline: none; }
header#main #menue #personpanel hr { height: 0; border-top: 1px solid #333; margin: 0 0.5rem; }
header#main #menue #personpanel .props { background-color: #CCE7F6; color: #64656D; font-style: italic; margin-left: -1rem; margin-right: -1rem; margin-bottom: -1rem; padding: 1rem; border-radius: 0; border-top-left-radius: 0; border-top-right-radius: 0; margin-top: 0.5rem; }
header#main #menue #personpanel .props p { margin: 0 0 0.5rem 0; line-height: 1.2rem; }
header#main #menue #personpanel .props p:last-child { margin: 0; }
header#main #loginstat .person { padding: 0.2rem 0.5rem; display: block; white-space: nowrap; color: #666; font-weight: bold; }
header#main #loginstat .person:hover { text-decoration: none; outline: 1px solid #105882; }

header#main ul.navigation { list-style-type: none; padding: 0; margin: 0; display: flex; flex-direction: column; }
header#main ul.navigation li a { padding: 0.2rem 0.5rem; display: block; color: #666; font-weight: bold; border-bottom: 2px solid transparent; }
header#main ul.navigation li a:hover { text-decoration: none; border-bottom: 2px solid #105882; }
header#main ul.navigation li.active a { border-bottom: 2px solid #105882; }
header#main ul.navigation li a > span { position: relative; }
header#main ul.navigation li a > span .badget { position: absolute; top: -1rem; right: -1rem; display: block; background-color: #7A7E83; color: #fff; border-radius: 50%; min-width: 1.2rem; height: 1.2rem; text-align: center; line-height: 1.2rem; font-size: 0.8rem; }

footer { margin-top: 3rem; }
.footer-section-content { padding: 1rem 1.5rem; --frame-background: #105882; background-color: #105882; color: #ffffff; overflow: inherit; }
.footer-section-content .section-row { --frame-link-color: #ffffff; --frame-link-hover-color: #ffffff; display: flex; justify-content: space-between; padding: 1rem 0; position: relative; }
.footer-section-content .section-row a { color: #ffffff; padding: 1px; }
.footer-section-content .section-row a:hover, .footer-section-content .section-row a:focus, .footer-section-content .section-row a:active { background-color: #fff; color: #105882; text-decoration: none; }
.footer-section-content .section-row p { margin: 0; }
.footer-section-content .foot2 { width: 100%; margin-top: 1rem; display: flex; justify-content: space-between; padding: 0 1rem;  }
.footer-section-content .totop { position: absolute; right: 0; top: calc( -1rem - 32px); }
.footer-section-content .totop a { display: block; border-radius: 32px; border: 1px solid #fff; }
.footer-section-content ul.navigationleft { list-style-type: none; padding: 0; margin: 0; }
.footer-section-content ul.navigationright { list-style-type: none; padding: 0; margin: 0; }

footer #lnk19 { white-space: nowrap; }
footer #lnk19::before { content: url("/typo3conf/ext/beratung_cdsc_sitepackage/Resources/Public/pix/universal-access.svg"); vertical-align: top; margin-right: 5px; }
footer #lnk20 { white-space: nowrap; }
footer #lnk20::before { content: url("/typo3conf/ext/beratung_cdsc_sitepackage/Resources/Public/pix/book-half.svg"); vertical-align: top; margin-right: 5px; }

p.scribe a { display: block; }
p.scribe img { /*max-width: 50vw; width: 100%; height: auto;*/ }

main { padding: 0 0.5rem; }
main .frame .frame-container { padding: 0; background-color: transparent; }
main .frame .frame-container .frame-header { margin: 1rem; }
main .frame .frame-container .frame-header * { color: #343A40; font-size: 1.6rem; font-weight: bold; }
main .frame .frame-container .inner-content { background-color: #ffffff; margin: 0; padding: 2rem; border-radius: 0;  border: 1px solid #eee; box-shadow: 0 2px 4px rgba(0,0,0,0.20); }
main .frame .frame-container .inner-content > *:last-child { margin-bottom: 0; }
main .frame .frame-container .inner-content a { text-decoration: underline; }

main .frame .frame-container .accordion { background-color: #ffffff; margin: 0; padding: 2rem; border-radius: 0; border: 1px solid #eee; box-shadow: 0 2px 4px rgba(0,0,0,0.20); }
main .frame .frame-container .accordion .accordion-button { background-color: #105882; color: #fff; text-decoration: none; }
main .frame .frame-container .accordion .accordion-button.collapsed { background-color: #ffffff; color: #333; }
main .frame .frame-container .accordion .accordion-button:hover,
main .frame .frame-container .accordion .accordion-button:focus { box-shadow: none; outline: 2px solid #105882; }

main .frame { margin-top: 2rem; }

main .frame.layout-2001 > div > div > .frame-container { padding: 2rem; background-color: #ffffff; }
main .frame.layout-2001 .frame-container .inner-content { background-color: transparent; margin: 0; padding: 0; border: none; box-shadow: none; }
main .frame.layout-2001 .frame-container .frame-header { margin: 0 0 1rem 0; }

main .frame .frame-container .ww_beratung_core_error { background-color: #ffdddd; padding: 1rem; border: 4px solid #dd9999; margin: 1rem 0; }
main .frame .frame-container .ww_beratung_core_error > *:last-child { margin-bottom: 0; }
main .frame .frame-container .ww_beratung_core_notification { background-color: #ddffff; padding: 1rem; border: 4px solid #99dddd; margin: 1rem 0; }
main .frame .frame-container .ww_beratung_core_notification > *:last-child { margin-bottom: 0; }
main .frame .frame-container .ww_beratung_core_warning { background-color: #ffffdd; padding: 1rem; border: 4px solid #dddd99; margin: 1rem 0; }
main .frame .frame-container .ww_beratung_core_warning > *:last-child { margin-bottom: 0; }

main .frame .frame-container .ww_beratung_user_error { background-color: #ffdddd; padding: 1rem; border: 4px solid #dd9999; margin: 1rem 0; }
main .frame .frame-container .ww_beratung_user_error > *:last-child { margin-bottom: 0; }
main .frame .frame-container .ww_beratung_user_notification { background-color: #ddffff; padding: 1rem; border: 4px solid #99dddd; margin: 1rem 0; }
main .frame .frame-container .ww_beratung_user_notification > *:last-child { margin-bottom: 0; }
main .frame .frame-container .ww_beratung_user_warning { background-color: #ffffdd; padding: 1rem; border: 4px solid #dddd99; margin: 1rem 0; }
main .frame .frame-container .ww_beratung_user_warning > *:last-child { margin-bottom: 0; }

main .frame .frame-container li ol { margin-top: 0.5rem; }
main .frame .frame-container li ul { margin-top: 0.5rem; }
main .frame .frame-container li { margin-bottom: 0.5rem; }
main .frame .frame-container li li { margin-bottom: 0.25rem; }
main .frame .frame-background-primary { --frame-color: #000; --frame-background: #eee; --frame-link-color: #105882; --frame-link-hover-color: #105882; }
main .frame .frame-container .frame:first-child { margin-top: 0; }
main .frame .frame-container .inner-content .frame .frame-container .inner-content { background-color: unset; margin: 0; padding: 0; border-radius: unset; border: none; box-shadow: unset; }
main .frame .frame-container .accordion .frame .frame-container .inner-content { background-color: unset; margin: 0; padding: 0; border-radius: unset; border: none; box-shadow: unset; }
main .frame .frame-container .frame.frame-background-primary .frame-container .inner-content { padding: 1rem; }
main .frame .frame-container .accordion-item { border-radius: 0.25rem; border: 2px solid rgba(0,0,0,0.125); }
main .frame .frame-container .accordion-item:first-of-type { border-top-left-radius: 0.25rem; border-top-right-radius: 0.25rem; }
main .frame .frame-container .accordion-item:last-of-type { border-bottom-right-radius: 0.25rem; border-bottom-left-radius: 0.25rem; }
main .frame .frame-container .accordion-item:not(:first-of-type) { border-top: 2px solid rgba(0,0,0,0.125); }
main .frame .frame-container .accordion-item:not(:last-of-type) { margin-bottom: 1rem; }
main .frame .frame-container .textpic-item:empty { display:none; }

main .frame .frame-container .ww_bzga_matomo { background-color: #ffffff; margin: 0; padding: 2rem; border-radius: 0; border: 1px solid #eee; box-shadow: 0 2px 4px rgba(0,0,0,0.20); }
.footer-section-content .foot1_xxx { display: none; }

main .frame .frame-container .tx-ww-beratung-befragung .buttons .btn-default { color: #fff; background-color: #105882; font-variant: unset; }
main .frame .frame-container .tx-ww-beratung-befragung .steps { flex-direction: row; }
main .frame .frame-container .tx-ww-beratung-befragung .step.selected { color: #fff; background-color: #105882; }
main .frame .frame-container .tx-ww-beratung-befragung h3 { font-size: 1.3rem; font-weight: 400; }
main .frame .frame-container .tx-ww-beratung-befragung h3 > label { font-size: 1rem; font-weight: bold; }
main .frame .frame-container .tx-ww-beratung-befragung .w-40rem { max-width: 40rem; width: 100%; }
main .frame .frame-container .tx-ww-beratung-befragung.nr1 .step { color: #868e96; height: 0.2rem; width: calc(100% / 9); }
main .frame .frame-container .tx-ww-beratung-befragung.nr2 .step { color: #868e96; height: 0.2rem; width: calc(100% / 6); }
main .frame .frame-container .tx-ww-beratung-befragung.nr3 .step { color: #868e96; height: 0.2rem; width: calc(100% / 6); }

main .frame .frame-container .tx-ww-beratung-befragung form > h2 { font-size: 1.3rem; font-weight: 400; }
main .frame .frame-container .tx-ww-beratung-befragung .bindlabel > label { max-width: calc(100% - 3rem); }

@media screen and (min-width: 400px) {
	main { padding: 0 1.5rem; }
}

@media screen and (min-width: 768px) {
}

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

	main { padding: 0; }
	main .frame .frame-container .frame-header { margin: 2rem; }
	main .frame.layout-2001 .frame-container .frame-header { margin: 0 0 2rem 0; }
	
	header#main { padding: 2rem 0; }
	header#main .head1 { width: 17%; }
	header#main .head1 p.scribe { margin-bottom: 0; } 
	header#main .head2 { width: calc(80% - 20px); }
	
	header#main #menue { width: 100%; }
	header#main #menue #menueswitch { display: none; }
	header#main #menue #menuepanel { display: block; position: relative; top: 0; width: 100%; left: 0; }
	header#main #menue #menuepanel .menue { padding: 0 10px; border: none; flex-direction: row; box-shadow:none; }
	header#main #menue #personbutton { display: inline-block; background-color: transparent; border: none; color: #105882; font-weight: bold; white-space: nowrap; }
	header#main #menue #personbutton::after { content: url("/typo3conf/ext/beratung_cdsc_sitepackage/Resources/Public/pix/person-circle.svg"); vertical-align: top; padding-left: 1rem; }
	header#main #menue #personbutton:hover { text-decoration: none; outline: 1px solid #105882; }
	header#main #menue #personpanel { display: none; position: absolute; right: 0; top: calc(100% + 16px); z-index: 1000; min-width: 13rem; padding: 1rem; border-radius: 0; border: 1px solid #eee; box-shadow: 0 2px 4px rgba(0,0,0,0.20); background-color: #fff; }
	header#main #menue #personpanel.showed { display: block; }
	header#main #menue #personpanel a { padding: 0.5rem 0.5rem; }
	
	header#main ul.navigation { list-style-type: none; padding: 0; margin: 0; display: flex; width: 80%; justify-content: flex-start; flex-flow: row wrap; }
	header#main ul.navigation li { padding-right: 3px; }
	header#main ul.navigation li a { color: #343A40; padding: 0.2rem 0.7rem; font-weight: normal; }
	header#main ul.navigation li a:hover, header#main ul.navigation li a:focus, header#main ul.navigation li a:active { text-decoration: none; border-bottom: 2px solid #105882; outline: none; }
	header#main ul.navigation li.active a { border-bottom: 2px solid #105882; }
	header#main .navigate { display: flex; justify-content: space-between; }
	header#main #loginstat { margin-bottom: 0; padding-left: 5%; display: flex; width: 20%; justify-content: flex-end; position: relative; } 
	header#main #loginstat:only-child { width: 100%; }
	header#main #loginstat .person { color: #105882;}
	header#main #loginstat .person:hover { color: #105882; }
	header#main #loginstat .person::after { content: url("/typo3conf/ext/beratung_cdsc_sitepackage/Resources/Public/pix/person-circle.svg"); vertical-align: top; padding-left: 1rem; }
	header#main #personpanel .person { font-weight: normal; }
	header#main #personpanel .person::after { display: none; }
	
	.footer-section-content { padding: 2rem 0; }
	.footer-section-content .foot1 { width: 23%; margin-top: 0; padding: 0; }
	.footer-section-content .foot1 img { /*width: 100%; height: auto;*/ }
	.footer-section-content .foot2 { width: 70%; margin-top: 0; padding: 0; }
	.footer-section-content .totop { top: calc( -2rem - 32px); }
	.footer-section-content ul.navigationleft { display: flex; width: 60%; justify-content: flex-start; flex-flow: row wrap; align-items: center; } 
	.footer-section-content ul.navigationleft li { padding: 0 20px 0 0; }
	.footer-section-content ul.navigationright { display: flex; width: 40%; justify-content: flex-end;  flex-flow: row wrap; align-items: center; }
	.footer-section-content ul.navigationright li { padding: 0 0 0 20px; }

}

@media screen and (min-width: 1200px) {
	header#main ul.navigation li { padding-right: 20px; }
}

@media (min-width: 500px) {
	.btn { width: unset; }
}

@media (min-width: 576px) {
	.container { max-width: 100%; }
	.frame-container-default { max-width: 100%; }
}

@media (min-width: 992px) {
	.container { max-width: 960px; }
	.frame-container-default { max-width: 960px; }
}

@media (min-width: 1200px) {
	.container { max-width: 1140px; }
	.frame-container-default { max-width: 1140px; }
}

@media (min-width: 1400px) {
	.container { max-width: 1340px; }
	.frame-container-default { max-width: 1340px; }
}