@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: #027ABB; 
	--frame-link-hover-color: #027ABB; 
	
	--frame-outer-spacing-variant-none: 0;
	--frame-outer-spacing-before: 1rem;
	--bs-body-color: #343A40;
}

.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
.btn { border-radius: 1.6rem; padding: 0.6rem 1.6rem; } 
.btn.rect { border-radius: 0.5rem; }
.btn:focus, .btn:active { box-shadow: none; outline: 2px solid #027ABB; }
.form-control:focus, .form-control:active { box-shadow: none; outline: 2px solid #027ABB; }
.btn-primary { color: #fff; background-color: #027ABB; border-color: #027ABB; border: 1px solid #fff; box-shadow: none; }
.btn-primary:hover { color: #fff; background-color: #027ABB; border-color: #027ABB; }
.btn-primary.focus, .btn-primary:focus { color: #fff; background-color: #027ABB; 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; }
ul.noindent { padding-left: 1rem; }
.btn-secondary { color: #027ABB; background-color: #fff; border-color: #027ABB; }
.btn-secondary:hover { color: #027ABB; background-color: #fff; border-color: #027ABB; }
.btn-secondary.focus, .btn-secondary:focus { color: #027ABB; background-color: #fff; border-color: #027ABB; }
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; }
.textmedia, .textpic { gap: 1.5rem; justify-content: space-between; }
.uppercase { text-transform: uppercase; } 
figure .caption { text-align: right; color: #555555; }
.shownojs { display: block !important; }

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

.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: #027ABB; border-color: #027ABB; }
a.page-link:hover, .page-link:active, .page-link:focus-visible, .page-link:focus { color: #fff; background-color: #027ABB; border-color: #027ABB; 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 .head0 { position: relative; }
header#main .head2 { display: flex; justify-content: flex-end; flex-direction: column; align-items: flex-end; }
header#main .head2 .logo2 { position: absolute; top: 0; right: 0; }
header#main .head2 .logo2 a { display: block; }
header#main .head2 .logo2 img { height: 20px; width: auto; }

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: 1rem; 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; }
header#main #menue #personpanel a.logout { color: #DC3545; }
header#main #menue #personpanel a:hover { text-decoration: none; border-bottom: 2px solid #027ABB; }
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: 1rem; 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 #73777D; }

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 #027ABB; }
header#main ul.navigation li.active a { border-bottom: 2px solid #027ABB; }
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: #73777D; background-color: #73777D; 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: #73777D; 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; }
.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 #lnk59 { white-space: nowrap; }
footer #lnk59::before { content: url("/typo3conf/ext/qts_sitepackage/Resources/Public/pix/universal-access.svg"); vertical-align: top; margin-right: 5px; }
footer #lnk60 { white-space: nowrap; }
footer #lnk60::before { content: url("/typo3conf/ext/qts_sitepackage/Resources/Public/pix/book-half.svg"); vertical-align: top; margin-right: 5px; }

p.scribe a { display: block; content: url("/typo3conf/ext/qts_sitepackage/Resources/Public/pix/img_logo_public_mobile.png"); }

#ww_bzga_matomo_cookiebanner { position: absolute; top: 0; z-index: 1001; }
#ww_bzga_matomo_cookiebanner .btn-primary { background-color: #027ABB !important; }

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: 1rem; border-radius: 1rem; 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: 1.5rem; border-radius: 1rem; border: 1px solid #eee; box-shadow: 0 2px 4px rgba(0,0,0,0.20); }
main .frame .frame-container .accordion .accordion-button { background-color: #027ABB; 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 #027ABB; }

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

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: #027ABB; --frame-link-hover-color: #027ABB; }
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 .contentcontainer .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 .frame.frame-has-backgroundimage > div > div > .frame-container > div > .inner-content { background-color: #fff; padding: 1rem; width: 100%; border-radius: 0.5rem; }
main .frame-backgroundimage-container, main .frame-backgroundimage { top: -20px; left: -20px; height: calc(100% + 40px); width: calc(100% + 40px); }
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 .contenttable { width: 70%; }
main .frame .frame-container .contenttable thead tr { background-color: #eee; }
main .frame .frame-container .contenttable thead tr th { padding: 0.5rem 1rem; }
main .frame .frame-container .contenttable tbody tr:nth-child(2n) { background-color: #f4f4f4; }
main .frame .frame-container .contenttable tbody tr:nth-child(2n+1) { background-color: #fff; }
main .frame .frame-container .contenttable tbody td { padding: 0.5rem 1rem; vertical-align: top; }
main .frame .frame-container .contenttable tbody td:first-child { padding-right: 2rem; }
main .frame .frame-container .contenttable tbody td ul:last-child { margin-bottom: 0; }
main .frame .frame-container .contenttable tbody td ul,
main .frame .frame-container .contenttable td ol { padding-left: 1rem; }
main .frame .frame-container .contenttable tbody td ul:first-child { margin-top: -1.5rem; }
main .frame .frame-container .contenttable tbody td ul:last-child { margin-bottom: -1.5rem; }
main .frame .frame-container .contenttable tbody td ul:last-child li:last-child { margin-bottom: 0; }

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

main .frame .frame-container .frame.layout-100 .inner-content { color: #fff; background-color: #027ABB; border-color: #027ABB; padding: 0.5rem; }
main .frame .frame-container .frame.layout-100 .inner-content a { color: #fff; text-decoration: none; display: flex; justify-content: space-between; hyphens: auto; align-items: center; padding: 0.5rem; }
main .frame .frame-container .frame.layout-100 .inner-content a::after { content: url("/typo3conf/ext/beratung_qts_sitepackage/Resources/Public/pix/person-circle_white.svg"); display: flex; }
main .frame .frame-container .frame.layout-100 .inner-content a:focus { outline: 2px solid #fff; }

main .frame .frame-container .frame.layout-101 .inner-content { color: #fff; background-color: #027ABB; border-color: #027ABB; padding: 0.5rem; }
main .frame .frame-container .frame.layout-101 .inner-content a { color: #fff; text-decoration: none; display: flex; justify-content: space-between; hyphens: auto; align-items: center; padding: 0.5rem; }
main .frame .frame-container .frame.layout-101 .inner-content a::after { content: url("/typo3conf/ext/beratung_qts_sitepackage/Resources/Public/pix/pdf_white.svg"); display: flex; }
main .frame .frame-container .frame.layout-101 .inner-content a:focus { outline: 2px solid #fff; }

main .frame .frame-container .inner-content h2 { font-size: 1.5rem; }
main .frame .frame-container .inner-content h3 { font-size: 1.5rem; }

main .frame .frame-container .accordion-button::after { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); }
main .frame .frame-container .accordion-button.collapsed::after { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212121'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); }


main .slick-slider { padding-top: 3rem; }
main .slick-dots-wrapper { display: flex; justify-content: center; }
main .slick-dots { top: -0.5rem; margin-top: 0.5rem; height: 30px; margin-bottom: 0.5rem; display: flex; justify-content: center; width: auto; }
main .slick-dots::before { display: block; content:''; position: absolute; border: 1px solid #73777D; top: 15px; width: calc(100% - 20px) ; }
main .slick-dots li { margin: 0 2px !important; padding: 0; width: auto; height: auto; }
main .slick-dots li button { width: 30px; height: 30px; color: #ffffff; font-size: 1rem; font-weight: bold; background-color: #73777D; border-radius: 50%; }
main .slick-dots li button::before { display: none; }
main .slick-dots li.slick-active button { background-color: #027ABB; }
main .slick-slider .slick-slide .frame-header { margin: 0 0 1rem 0 !important; display: none; }

main .slick-slider .slick-arrow { width: 45px; height: 45px; z-index: 1; opacity: 0; }
main .slick-slider .slick-arrow::before { font-size: 45px; color: #027ABB;  }
main .slick-slider .slick-next { right: -25px; }
main .slick-slider .slick-prev { left: -25px; }
main .slick-slider:hover .slick-arrow, main .slick-slider .slick-arrow:focus { opacity: 0.8; transition: all 0.5s ease-out; }
main .slick-slider:hover .slick-next, main .slick-slider .slick-next:focus { right: -45px; transition: all 0.5s ease-out; }
main .slick-slider:hover .slick-prev, main .slick-slider .slick-prev:focus { left: -45px; transition: all 0.5s ease-out; }

.frame-group-container .row { --bs-gutter-x: 1rem; --bs-gutter-y: 2rem; }

/* ------------ Powermail ----------------- */
main .frame-group-container .tx-powermail .row { --bs-gutter-y: 0; }
main .powermail_fieldwrap {width:100%;}
main .powermail_fieldwrap .control-label {font-weight:normal; padding-right: 20px;}
main .powermail_fieldset .col-sm-10 { width: 60%; float: right; }
main .powermail_fieldwrap .control-label { width: calc(40% - 20px); text-align: right; font-weight: normal; padding-top: 0.4rem; padding-right: 0px; }
main .powermail_fieldwrap.layout3 .control-label { padding-top: 0; }
main .powermail_fieldwrap .radio,
main .powermail_fieldwrap .checkbox { margin-left: 20px; text-indent: -20px; padding-left: 20px; }
main .powermail_fieldset .powermail_field_error, .tx-powermail .powermail_fieldset div.error { background-color: #e8e8e8; }
main .tx-powermail .powermail_fieldset .powermail_field_error, main .tx-powermail .powermail_fieldset div.error { background-color: #e8e8e8; }
main .tx-powermail .powermail_fieldset .powermail_field_error_container .powermail-errors-list { background-color: #e8e8e8; }
main .powermail_fieldset legend.control-label { font-size: 1rem; display: inline-block; }
main .powermail_fieldset legend.control-label + * { clear: none; } 

@media screen and (min-width: 400px) {
	main { padding: 0 1.5rem; }
	main .frame .frame-container .inner-content { padding: 1.5rem; }
  main .frame .frame-container .accordion .frame.frame-has-backgroundimage > div > div > .frame-container > div > .inner-content { width: 70%; }
  main .frame .frame-container .frame.layout-100 .inner-content { padding: 1rem; }
  main .frame .frame-container .frame.layout-101 .inner-content { padding: 1rem; }
  main .slick-dots li { margin: 0 5px !important; }
}

@media screen and (min-width: 768px) {
  main .frame .frame-container .inner-content { padding: 2rem; }
  main .frame .frame-container .accordion { padding: 2rem; }
  main .frame .frame-container .accordion .frame.frame-has-backgroundimage > div > div > .frame-container > div > .inner-content { width: 50%; }
  main .slick-dots { margin-top: 0; }
  main .slick-dots li { margin: 0 10px !important; }
  .frame-group-container .row.md-row-reverse { flex-direction: row-reverse; }
  main .slick-slide .textpic .textpic-gallery { width: calc(66% - (40px / 2)) }
  main .slick-slide .textpic .textpic-text { width: calc(33% - (40px / 2)) }
  
}

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

	main { padding: 0; }
	main .frame .frame-container .frame-header { margin: 2rem; }
	
	header#main { padding: 2rem 0; }
	header#main .head1 { width: 20%; }
	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 ul.navigation { list-style-type: none; padding: 0; margin: 0; display: flex; width: 100%; justify-content: flex-end; 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 #027ABB; }
	header#main ul.navigation li.active a { border-bottom: 2px solid #027ABB; }
	header#main .navigate { display: flex; justify-content: space-between; }
	
	.footer-section-content { padding: 2rem 0; }
	.footer-section-content .foot1 { width: 20%; }
	.footer-section-content .foot2 { width: calc(80% - 20px); 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; }
	
	p.scribe a { display: block; content: url("/typo3conf/ext/qts_sitepackage/Resources/Public/pix/img_logo_public_desktop.png"); }
	header#main .head2 .logo2 img { height: 32px; }
}

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

@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; }
	main .slick-dots li { margin: 0 25px !important; }
	main .slick-dots::before { width: calc(100% - 60px) ; }
	main .slick-dots li button::after { content: attr(title); color: #73777D; font-size: 0.8rem; display: block; position: relative; top: 2rem; white-space: nowrap; margin: 0 -20px; }
	main .slick-dots li.slick-active button::after { color: #027ABB; }
	main .slick-slider { padding-top: 4rem; }
}

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

