@charset "UTF-8";

/* #produktinfocenter {
	border-top: 2px solid var(--border-color-light);
    padding-top: 3rem;
    margin-top: 3rem;
} */
/*** tableh head in elements.css überschreiben, da unnötige Fettung ***/
#body .tinyblock table tr th {
font-weight: unset;
}

div.aehnliche_dienstleistungen:has(ul:empty) {
	display: none;
}

/* styling der Linklisten von Downloads & INfos */
#body .accordionpanel li + li a, .accordionpanel li a:first-of-type {
	margin-bottom: 0px!important;
}

#body .accordionpanel ul {

}

#produktinfocenter #download_info {
	display:none
}

ul.produktcontrols {
	display: none; /*Besser: ganze UL aus Code entfernen*/
}

section#produktbeschreibung h1.sectionhead {
	display: none;
}

section#produktbeschreibung a:link {
	display: inline; /*HAT EFFEKT AUF ALLE LINKS DER SEITE*/
	margin-left: 0;
	margin-right: calc(var(--font-size) * 1.5);
}

.allg-hinweis-wrapper {
	padding: calc(var(--font-size) * 1.5);
	margin: calc(var(--font-size) * 1.5) 0;
	background-color: var(--blue-background-box);
}
#body .allg-hinweis {
	padding:0;
}

section#produktbeschreibung dt.allg-hinweistitel span{
	font-size: var(--font-size-xxl);
}

body.tpl-2008_standard_bol_produkt a.standardlink.onlineform {
	margin-bottom: var(--margin-extra-sm)!important; /* link vonr aufklapper im produkttemplate /service/produkte/00554/index.html */
}

div.produkt_kontakt {
	/* jetzt in elements als '.full-gb-blue' background-color: var(--blue-background-box); */
	padding: calc(var(--font-size) * 0.75rem); /* war vorher * 1.5, angepasst weil sonst mehr padding als im Design */
}

div.aehnliche_dienstleistungen {
	/* jetzt in elements als '.full-gb-gray' background-color: var(--gray-background-box); */
	padding-bottom: var(--margin-extra-sm)
}

ul.wartezeiten {
  list-style: none; /* Remove default bullets */
  padding:0;
  margin:0;
}
ul.wartezeiten li svg {
	display:inline-block;
	margin-right:1rem;
}
ul.wartezeiten li.opened svg {
	fill:green;
}
ul.wartezeiten li.closed svg {
	fill:red;
}
ul.wartezeiten li.termin svg {
	fill:orange;
}
ul.wartezeiten small {
	margin-left:2rem;
	display:block;
}

/* WW *****************************************************    Anpassung neue Produktseite 2023 mobil ******************************************************************************************** */

body.tpl-2008_standard_bol_produkt footer {
	margin-top: 0px!important;
}

body.tpl-2008_standard_bol_produkt .accordionpanel a.linkintern.standardlink + a.linkintern.standardlink {
	margin-bottom: 1rem;
}

/* /service/produkte/00729/index.html Reiter rechtliche Voraussetzungen: Link auf Formular zeigt doppelte Icons FIX */
body.tpl-2008_standard_bol_produkt .accordionpanel a.onlineform:before {
	background-image: url(/images/x22/icons/file-text-red.svg)!important;
}

body.tpl-2008_standard_bol_produkt .accordionpanel a + p {
	margin-top: var(--margin-default-sm);
}

body.tpl-2008_standard_bol_produkt .accordionpanel a.onlineform {
	background-image: none!important;
	padding: 0px!important;
	margin-bottom: 0px!important;
}

body.tpl-2008_standard_bol_produkt main .accordionopen a.standardlink {
	margin-bottom: 0;
}



/* Schriftgrße für Fliesstext außerhalb von Aufklappern ist größer als auf Artikelseiten, anderer Zeilenabstand */
body.tpl-2008_standard_bol_produkt main p,
body.tpl-2008_standard_bol_produkt .tinyblock ul, 
body.tpl-2008_standard_bol_produkt a.standardlink, 
body.tpl-2008_standard_bol_produkt .accordionhead h2.flexheadline,
body.tpl-2008_standard_bol_produkt .aehnliche_dienstleistungen a,
body.tpl-2008_standard_bol_produkt div.accordionhead > h2,
body.tpl-2008_standard_bol_produkt main li a,
body.tpl-2008_standard_bol_produkt main p li a,
body.tpl-2008_standard_bol_produkt main li,
body.tpl-2008_standard_bol_produkt main li a figure
 {
    font-size: 1.125rem; 
	line-height: 1.8125rem;
 }
body.tpl-2008_standard_bol_produkt .accordionpanel {
	line-height: 1.63125rem;
}

/* Schriftgröße im Akkordion ist laut Design etwas kleiner */
body.tpl-2008_standard_bol_produkt div.accordionpanel ul li p,
body.tpl-2008_standard_bol_produkt div.accordionpanel ul li,
body.tpl-2008_standard_bol_produkt div.accordionpanel ol li p,
body.tpl-2008_standard_bol_produkt div.accordionpanel ol li  {
	font-size: 1.125rem;
}

/*   ---------- laut Design haben h3s innerhalb der Accs keinen Abstand nach unten ------------ */
body.tpl-2008_standard_bol_produkt main div.accordionpanel h3 {
	margin-bottom: 0px;
	font-size: 1.125rem;
}

/* Wenn ein p in einer Bulletlist ist, kein Abstand nach unten */
body.tpl-2008_standard_bol_produkt div.accordionpanel ul li p {
	margin-bottom: 0px;
}

body.tpl-2008_standard_bol_produkt h1 {
    line-height: 2.6rem;
}

/* kleinere Schriftgröße für Fließtext in Aufklappern */
body.tpl-2008_standard_bol_produkt #vorlesen .vorlesen-wrapper, body.tpl-2008_standard_bol_produkt a.standardlink.linkleichtesprache, body.tpl-2008_standard_bol_produkt .accordionpanel .tinyblock p,  
body.tpl-2008_standard_bol_produkt #inhalt div.accordionpanel.tinyblock p, body.tpl-2008_standard_bol_produkt a.standardlink#vorlesen,
body.tpl-2008_standard_bol_produkt .accordionpanel p, body.tpl-2008_standard_bol_produkt .accordionpanel legend, a.standardlink.linkleichtesprache + a.standardlink.linkintern,
body.tpl-2008_standard_bol_produkt #inhalt div.accordionopen.tinyblock p b,
body.tpl-2008_standard_bol_produkt #inhalt div.accordionopen.tinyblock p li,
body.tpl-2008_standard_bol_produkt .accordionpanel .tinyblock b,
body.tpl-2008_standard_bol_produkt .accordionpanel a.linkintern.standardlink,
body.tpl-2008_standard_bol_produkt .accordionpanel a

  {
    font-size: 1rem;
	line-height: 1.5rem;
}

body.tpl-2008_standard_bol_produkt .accordionpanel p b, body.tpl-2008_standard_bol_produkt div.accordionpanel ul li strong, body.tpl-2008_standard_bol_produkt div.accordionpanel li p strong {
	font-size: 1rem!important;
}

a.standardlink.linkleichtesprache + a.standardlink.linkintern {
	margin-top: 1rem!important;
}

body.tpl-2008_standard_bol_produkt .accordionpanel legend {
	font-weight: 600;
	padding-top: 1.25rem;
	margin-bottom: 0px;
}

body.tpl-2008_standard_bol_produkt .accordionpanel .fahrrad-route button  {
	margin-top: 2.5rem;
}

body.tpl-2008_standard_bol_produkt ul.pictogrammliste.clearfix li:first-of-type em {
	background-position: 5px 8px;
	height: 48px;
	width: 41px;
}

body.tpl-2008_standard_bol_produkt ul.pictogrammliste.clearfix li {
	margin-top: 0px;
}

/* Links in der Anschrift in der Kontaktbox*/

body.tpl-2008_standard_bol_produkt .produkt_kontakt dd a.linkintern {
	text-indent: calc(var(--font-size) * -1.5);
    margin-left: calc(var(--font-size) * 1.5);
	display: block;
	margin-top: 0px!important;
	padding: 0.5rem 0.5rem 0.25rem 0rem;
	border-bottom: 1px solid var(--gray-link)!important;
	position: relative;
	width: fit-content;
	text-decoration: none;
}

body.tpl-2008_standard_bol_produkt .produkt_kontakt dd a.linkintern:before {
	content: '';
    background-repeat: no-repeat;
    background-image: url(/images/x22/icons/arrow-right-red.svg);
    background-size: 1rem 1rem;
    height: 1rem;
    width: 1rem;
    display: inline-block;
	background-position-y: 0.2rem;
	padding-right: 0.1rem!important;
	padding-left: 0.1rem;
	margin-right: 0.5rem;
}

body main a.standardlink + div.accordionhead {
	margin-top: var(--margin-extra-sm)!important;
}
/* Aufklapper ÖPNV im Kontakt) */

body.tpl-2008_standard_bol_produkt .accordionpanel fieldset {
	margin-bottom: var(--margin-default-sm);
}

/* Öffnungszeiten */
body.tpl-2008_standard_bol_produkt dt.oeffnungszeiten {
	font-weight: 600;

}

/* Anzeige ÖPNV Formular innerhalb Aufklapper Kontakt-Box lable immer in eine eigene Zeile in der Mobilansicht */
body.tpl-2008_standard_bol_produkt .schmal p label,
body.tpl-2008_standard_bol_produkt .breit p label {
	display: block;
}

body.tpl-2008_standard_bol_produkt .accordionpanel form input {
	width: 100%;
}
body.tpl-2008_standard_bol_produkt .accordionpanel form p {
	padding-bottom: 0px;
	margin-bottom: 0.25rem;
}

/* Box ähnliche Dienstleistungen und Kontakt  */

body.wrapper.tpl-2008_standard_bol_produkt ul:not(body.tpl-2008_standard_bol_produkt .produkt_kontakt ul):not(body.tpl-2008_standard_bol_produkt .aehnliche_dienstleistungen ul) {
	list-style-type: disc; 
}

body.tpl-2008_standard_bol_produkt .produkt_kontakt ul, body.tpl-2008_standard_bol_produkt .aehnliche_dienstleistungen ul {
 padding: unset;
 list-style-type: none;
}

body.tpl-2008_standard_bol_produkt .aehnliche_dienstleistungen h2 + ul li {
	padding-top: 24px;
}

/* Link listen im Kontakt-Teaser zu viel Abstand */
body.tpl-2008_standard_bol_produkt .produkt_kontakt ul li a,
body.tpl-2008_standard_bol_produkt .aehnliche_dienstleistungen ul li a
 {
	margin-bottom: 0px;
}

body.tpl-2008_standard_bol_produkt .tinyblock ul {
    padding-left: 2rem;
}

body.tpl-2008_standard_bol_produkt .accordionpanel > a.standardlink {
    font-size: 1.125rem
}

/* Anzeige der Adresse im Kontakt */
body.tpl-2008_standard_bol_produkt dl dd dl {
	margin-top: 0px;
	padding-top: 0px;
}
	
body.tpl-2008_standard_bol_produkt dl {
	font-size: 1.25rem;
	line-height: 1.8125rem;
	padding-top: 1.5rem;
}

body.tpl-2008_standard_bol_produkt dt {
/*	font-weight: 600; */
}

body.tpl-2008_standard_bol_produkt dd {
	padding-bottom: 0.75rem;
	margin-bottom: 0px;
}

body.tpl-2008_standard_bol_produkt dd:last-child {
	padding-bottom: 0px;
	padding-bottom: 0px;
}

body.tpl-2008_standard_bol_produkt dd a {
	margin-bottom: 0px;
	display: inline-block;
}

/* Barrierefreiheitsinfos auf der Produktseite ausblenden (der Code wird auch für Adresseiten verwendet, und dort sollen sie sichtbar bleiben */
body.tpl-2008_standard_bol_produkt dd.anschrift:has(.pictogrammliste), body.tpl-2008_standard_bol_produkt .bfpictogramme {
	display: none;
	background-color:#d60909
}

/* list style des alten Templates überschreiben, siehe elements.css:435 */
body.tpl-2008_standard_bol_produkt .artikel ul li {
    list-style-type: disc;
}

body.tpl-2008_standard_bol_produkt .artikel ul + p
 {
    margin-top: var(--margin-default-sm);
}

body.tpl-2008_standard_bol_produkt .artikel p + ul {
    margin-top: 0px;
    padding-top: 0px;
}

body.tpl-2008_standard_bol_produkt .produkt_kontakt li + li,
body.tpl-2008_standard_bol_produkt .aehnliche_dienstleistungen li + li {
	padding-top: 1.5rem;
}

body.tpl-2008_standard_bol_produkt .produkt_kontakt li a, 
body.tpl-2008_standard_bol_produkt .aehnliche_dienstleistungen li a {
	padding-bottom: 0;
	padding-top: 0px;
}

/* -------------------------------------------- Darstellung Accordions auf neuer Produktseite --------------------------- */

/* ---------------- Entfernen eines unerwünschten Abstandes nach oben, der aus der aus elements-ww kommt  */
body.tpl-2008_standard_bol_produkt div:has(h2.flexheadline) > h2.flexheadline {
	margin-top: 0px;
}

/* keine Abstand im vorletzten Accordion */
body.tpl-2008_standard_bol_produkt :not(.accordionpanel) + .accordionhead {
	margin-top: 0px;
}

/* -------------- beim accordion Downloads & Infos ist im Gegensatz zu allen anderen Accordions die H2 nicht mit der Klasse "flexheadline" deklariert. Als Ersatz formatiere ich alle h2, 
die in einem accordionhead sind so wie es die flexheadline klasse gemacht hätte. Besser wäre es aber den code so zu ändern, dass die Klasse flexheadline zugewiesen wird.  */

body.tpl-2008_standard_bol_produkt div.accordionhead > h2
 {
	/* font-size: 1.375rem; */
	line-height: 1.8125rem;
	margin: 0px;
    padding: 0.5rem 0 1rem 0rem!important;
    text-indent: calc(var(--font-size) * -1.9);
	margin-left: calc(var(--font-size) * 1.9);
}

body.tpl-2008_standard_bol_produkt div.accordionhead > h2:before {
	content: '';
    background-image: url(/images/x22/icons/plus-red.svg);
    background-repeat: no-repeat;
    background-position-x: 0rem;
    background-position-y: 0.5rem;
    background-size: 2rem;
    position: relative;
    width: 2rem;
    height: 2rem;
    display: inline-block;
    transform-origin: 16px 24px;
    transition: ease .5s all;
}

body.tpl-2008_standard_bol_produkt .accordionhead.accordionheadopened h2:before {
	transform-origin: 16px 24px;
    transition: ease .5s all;
    transform: rotate(45deg);
}

body.tpl-2008_standard_bol_produkt div.accordionhead#download_info {
	margin-top: 0px;
}


/* -------------------  keine Border top, wenn accordionhead auf accordionhead folgt  ------------*/
body.tpl-2008_standard_bol_produkt .accordionhead + .accordionhead {
	border-top: none;
}

body.tpl-2008_standard_bol_produkt .accordionpanel, body.tpl-2008_standard_bol_produkt main div.accordionpanel.accordionopen  {
	padding: 1.5rem 1.5rem 1.5rem 1.5rem;
}

/* überschreiben eines sehr großen Abstandes in der elements.css bei tinyblock-Elementen, die auf a folgen; (zu viel Abstand zum Vorlesen-Link) */
body.tpl-2008_standard_bol_produkt main a + div.tinyblock {
	margin-top: var(--margin-default-sm);
}

div .terminvereinbarung a {
	font-size: 1.375rem;
	color: white;
	font-weight: 600;
}

div .terminvereinbarung a:hover {
	color: #fff;
    background-color: #d60909;
    border-color: #d60909;
	/* box-shadow: 0 0 0 0.25rem rgba(239,0,0,.5); */
	border-bottom: none;
}

body.tpl-2008_standard_bol_produkt div.terminvereinbarung  {
	margin-top: 2.5rem;
}

/* vertikale Abstände */
div.aehnliche_dienstleistungen, div.produkt_kontakt {
	padding-bottom: var(--margin-extra-sm);
}

div.allg-hinweis {
	margin-bottom: 2.5rem;
	margin-top: 2.5rem;
}

@media (max-width:767px) {
div.produkt_kontakt h2, div.aehnliche_dienstleistungen h2 {
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
	margin-top: 0px;
	margin-bottom: 0px;
}

body.tpl-2008_standard_bol_produkt .aehnliche_dienstleistungen h2 + ul li {
	padding-top: 1.5rem;
}

body.tpl-2008_standard_bol_produkt .aehnliche_dienstleistungen h2 + ul li:first-of-type {
	padding-top: 0px;
}

body.tpl-2008_standard_bol_produkt div .aehnliche_dienstleistungen, body.tpl-2008_standard_bol_produkt div .produkt_kontakt {
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

body.tpl-2008_standard_bol_produkt div.produkt_kontakt.full-bg-blue {
	margin-top: 2.5rem;
}
}

@media (max-width: 475px) {

	body.tpl-2008_standard_bol_produkt #inhalt div.accordionpanel tbody,
	body.tpl-2008_standard_bol_produkt #inhalt div.accordionpanel .tinyblock tr th {
		font-size: 0.7rem;
		line-height: 1rem;;
	}
}


@media (min-width:768px){
	
	/* Schriftart innerhalb der Accordions größer als bei mobil */	
	body.tpl-2008_standard_bol_produkt div.accordionpanel ul li p, body.tpl-2008_standard_bol_produkt div.accordionpanel ul li, body.tpl-2008_standard_bol_produkt main div.accordionpanel h3	{
			font-size: 1.125rem;
			line-height: 1.63125rem;
		}

	h1.articlehead {
			font-size: 2.5rem;
		}

	.aehnliche_dienstleistungen h2,
	.produkt_kontakt h2 {
		font-size: 1.7rem;
		line-height: 2.275rem;
	}

	div.produkt_kontakt.full-bg-blue {
	padding-top: 2.5rem!important;
	}

	div .aehnliche_dienstleistungen, div .produkt_kontakt .full-bg-blue {
		padding-bottom: calc(var(--margin-extra-sm)*2);
		padding-top: 40px;
	}

	div.allg-hinweis {
		margin-bottom: 5rem;
		margin-top: 5rem;
	}

	div.aehnliche_dienstleistungen, div.produkt_kontakt {
		padding-bottom: calc(var(--margin-extra-sm)*2);
	}

	 div.produkt_kontakt.full-bg-blue {
		margin-top: calc(var(--margin-extra-sm)*2)!important;
	}

	body.tpl-2008_standard_bol_produkt .accordionpanel .fahrrad-route button  {
		margin-top: 2.5rem;
	}

}

@media (max-width:1400px) {
	body.tpl-2008_standard_bol_produkt div.accordionpanel ul li,
	body.tpl-2008_standard_bol_produkt div.accordionpanel ol li,
	body.tpl-2008_standard_bol_produkt .accordionpanel .tinyblock a {
		font-size: 1rem;
	}
	
}

@media (min-width:1400px){
	body.tpl-2008_standard_bol_produkt main p, 
	body.tpl-2008_standard_bol_produkt main li a,
	body.tpl-2008_standard_bol_produkt .tinyblock ul, 
	body.tpl-2008_standard_bol_produkt a.standardlink, 
	body.tpl-2008_standard_bol_produkt .accordionhead h2.flexheadline, 
	body.tpl-2008_standard_bol_produkt .aehnliche_dienstleistungen a,
	body.tpl-2008_standard_bol_produkt div.accordionhead > h2 {
			font-size: 1.375rem;
			line-height: 2rem;
	}
	
	body.tpl-2008_standard_bol_produkt main div.accordionpanel h3 {
			font-size: 1.25rem;
			line-height: 1.8125rem;
			margin-bottom: 0px!important;
	}

	body.tpl-2008_standard_bol_produkt div.accordionpanel ul li p,
	body.tpl-2008_standard_bol_produkt div.accordionpanel ul li, 
	body.tpl-2008_standard_bol_produkt .accordionpanel .tinyblock p,
	body.tpl-2008_standard_bol_produkt .accordionpanel .tinyblock b,
	body.tpl-2008_standard_bol_produkt main div.accordionpanel ul,
	body.tpl-2008_standard_bol_produkt main div.accordionpanel ol,
	body.tpl-2008_standard_bol_produkt main div.accordionpanel ol li,
	body.tpl-2008_standard_bol_produkt main div.accordionpanel ol li p,
	body.tpl-2008_standard_bol_produkt .accordionpanel > a.standardlink,
	body.tpl-2008_standard_bol_produkt #inhalt div.accordionpanel.tinyblock p,
	body.tpl-2008_standard_bol_produkt #inhalt div.accordionpanel p, 
	body.tpl-2008_standard_bol_produkt #inhalt div.accordionpanel tbody,
	body.tpl-2008_standard_bol_produkt #inhalt div.accordionpanel .tinyblock tr th,
	body.tpl-2008_standard_bol_produkt .accordionpanel > a figure, 
	body.tpl-2008_standard_bol_produkt main li a figure,
	body.tpl-2008_standard_bol_produkt .accordionpanel .tinyblock a,
	body.tpl-2008_standard_bol_produkt .accordionpanel a
	
	{
		font-size: 1.125rem!important;
		line-height: 1.6125rem;
		font-weight: unset;

}

body.tpl-2008_standard_bol_produkt main li a, body.tpl-2008_standard_bol_produkt main .accordionpanel  li a figure  {
	font-size: 1.375rem!important;
}

body.tpl-2008_standard_bol_produkt .accordionpanel .tinyblock p b, body.tpl-2008_standard_bol_produkt .accordionpanel .tinyblock ul li strong {
	font-size: 1.125rem!important;
}

body.tpl-2008_standard_bol_produkt main div.accordionpanel h3 {
	font-size: 1.25rem;
}

body.tpl-2008_standard_bol_produkt main div.accordionpanel h3 + p {
	margin-top: 0.35rem;
}
.aehnliche_dienstleistungen h2, .produkt_kontakt h2 {
	font-size: 2.125rem;
	line-height: 2.7625rem;
}

body.tpl-2008_standard_bol_produkt dd p {
	font-size: 1.375rem;
}

}