/*Google Fonts*/

/* roboto-100 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-display: swap;
  font-weight: 100;
  src: url('../fonts/roboto-v30-latin-100.eot'); /* IE9 Compat Modes */
  src: local(''),
	   url('../fonts/roboto-v30-latin-100.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	   url('../fonts/roboto-v30-latin-100.woff2') format('woff2'), /* Super Modern Browsers */
	   url('../fonts/roboto-v30-latin-100.woff') format('woff'), /* Modern Browsers */
	   url('../fonts/roboto-v30-latin-100.ttf') format('truetype'), /* Safari, Android, iOS */
	   url('../fonts/roboto-v30-latin-100.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-100italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-display: swap;
  font-weight: 100;
  src: url('../fonts/roboto-v30-latin-100italic.eot'); /* IE9 Compat Modes */
  src: local(''),
	   url('../fonts/roboto-v30-latin-100italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	   url('../fonts/roboto-v30-latin-100italic.woff2') format('woff2'), /* Super Modern Browsers */
	   url('../fonts/roboto-v30-latin-100italic.woff') format('woff'), /* Modern Browsers */
	   url('../fonts/roboto-v30-latin-100italic.ttf') format('truetype'), /* Safari, Android, iOS */
	   url('../fonts/roboto-v30-latin-100italic.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-300 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: url('../fonts/roboto-v30-latin-300.eot'); /* IE9 Compat Modes */
  src: local(''),
	   url('../fonts/roboto-v30-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	   url('../fonts/roboto-v30-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
	   url('../fonts/roboto-v30-latin-300.woff') format('woff'), /* Modern Browsers */
	   url('../fonts/roboto-v30-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
	   url('../fonts/roboto-v30-latin-300.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-300italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-display: swap;
  font-weight: 300;
  src: url('../fonts/roboto-v30-latin-300italic.eot'); /* IE9 Compat Modes */
  src: local(''),
	   url('../fonts/roboto-v30-latin-300italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	   url('../fonts/roboto-v30-latin-300italic.woff2') format('woff2'), /* Super Modern Browsers */
	   url('../fonts/roboto-v30-latin-300italic.woff') format('woff'), /* Modern Browsers */
	   url('../fonts/roboto-v30-latin-300italic.ttf') format('truetype'), /* Safari, Android, iOS */
	   url('../fonts/roboto-v30-latin-300italic.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-regular - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('../fonts/roboto-v30-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
	   url('../fonts/roboto-v30-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	   url('../fonts/roboto-v30-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
	   url('../fonts/roboto-v30-latin-regular.woff') format('woff'), /* Modern Browsers */
	   url('../fonts/roboto-v30-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
	   url('../fonts/roboto-v30-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-display: swap;
  font-weight: 400;
  src: url('../fonts/roboto-v30-latin-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
	   url('../fonts/roboto-v30-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	   url('../fonts/roboto-v30-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
	   url('../fonts/roboto-v30-latin-italic.woff') format('woff'), /* Modern Browsers */
	   url('../fonts/roboto-v30-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
	   url('../fonts/roboto-v30-latin-italic.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-500 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url('../fonts/roboto-v30-latin-500.eot'); /* IE9 Compat Modes */
  src: local(''),
	   url('../fonts/roboto-v30-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	   url('../fonts/roboto-v30-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
	   url('../fonts/roboto-v30-latin-500.woff') format('woff'), /* Modern Browsers */
	   url('../fonts/roboto-v30-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
	   url('../fonts/roboto-v30-latin-500.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-500italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-display: swap;
  font-weight: 500;
  src: url('../fonts/roboto-v30-latin-500italic.eot'); /* IE9 Compat Modes */
  src: local(''),
	   url('../fonts/roboto-v30-latin-500italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	   url('../fonts/roboto-v30-latin-500italic.woff2') format('woff2'), /* Super Modern Browsers */
	   url('../fonts/roboto-v30-latin-500italic.woff') format('woff'), /* Modern Browsers */
	   url('../fonts/roboto-v30-latin-500italic.ttf') format('truetype'), /* Safari, Android, iOS */
	   url('../fonts/roboto-v30-latin-500italic.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-700 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url('../fonts/roboto-v30-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
	   url('../fonts/roboto-v30-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	   url('../fonts/roboto-v30-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
	   url('../fonts/roboto-v30-latin-700.woff') format('woff'), /* Modern Browsers */
	   url('../fonts/roboto-v30-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
	   url('../fonts/roboto-v30-latin-700.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-700italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-display: swap;
  font-weight: 700;
  src: url('../fonts/roboto-v30-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local(''),
	   url('../fonts/roboto-v30-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	   url('../fonts/roboto-v30-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
	   url('../fonts/roboto-v30-latin-700italic.woff') format('woff'), /* Modern Browsers */
	   url('../fonts/roboto-v30-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
	   url('../fonts/roboto-v30-latin-700italic.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-900 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-display: swap;
  font-weight: 900;
  src: url('../fonts/roboto-v30-latin-900.eot'); /* IE9 Compat Modes */
  src: local(''),
	   url('../fonts/roboto-v30-latin-900.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	   url('../fonts/roboto-v30-latin-900.woff2') format('woff2'), /* Super Modern Browsers */
	   url('../fonts/roboto-v30-latin-900.woff') format('woff'), /* Modern Browsers */
	   url('../fonts/roboto-v30-latin-900.ttf') format('truetype'), /* Safari, Android, iOS */
	   url('../fonts/roboto-v30-latin-900.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-900italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-display: swap;
  font-weight: 900;
  src: url('../fonts/roboto-v30-latin-900italic.eot'); /* IE9 Compat Modes */
  src: local(''),
	   url('../fonts/roboto-v30-latin-900italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	   url('../fonts/roboto-v30-latin-900italic.woff2') format('woff2'), /* Super Modern Browsers */
	   url('../fonts/roboto-v30-latin-900italic.woff') format('woff'), /* Modern Browsers */
	   url('../fonts/roboto-v30-latin-900italic.ttf') format('truetype'), /* Safari, Android, iOS */
	   url('../fonts/roboto-v30-latin-900italic.svg#Roboto') format('svg'); /* Legacy iOS */
}


/*allgemein*/

* {
  box-sizing: border-box;
}

textarea,
input[type="text"],
input[type="button"],
input[type="submit"],
input[type="reset"],
input[type="search"] {
	border-radius: 0;
}

.invisible {
	display: none;
}


body {
	background-color: #fff;
	font-family: Roboto;
	line-height: 1.5em;
	color: #333;
	min-width: 20rem;
	font-size: 1.1em;
}

@media only screen and (max-width: 103.0625rem) {
	body {font-size: 1em;}
}

@media only screen and (max-width: 79.9375rem) {
	body {font-size: 0.9em;}
}


.abstand {
	margin-bottom: 2em !important;
}


/*Fonts*/

a {
	text-decoration: none;
	color: #333;
	transition: 0.2s;

}

#main h1  {
	line-height: 1.375em;
	letter-spacing: 0.00625rem;

	color: #333;
	margin-bottom: 0;
}

#main h1 {
	font-size: 2.5em;
}

@media only screen and (max-width: 47.9375rem)  {

#main h1 {
	font-size: 2em;
}
}

@media only screen and (max-width: 29.9375rem)  {

#main h1 {
	font-size: 1.7em;
}
}


.home #main .h1-ue {
	display: none;
}


#main h1 strong {
	font-size: 0.5em;
	line-height: 1.2em;
	font-weight: 400;
	color: #008A9B;
	display: block;
	margin-bottom: 1.5em;
	margin-top: 0.3em;
}

@media (max-width: 47.9375rem) {
.mod_article .content-table td {
	width: 100%;
	display: table-caption
}
}


/*Layout*/

#container {
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;

	max-width: 90rem;
	margin: 0 auto;
}
@media only screen and (max-width: 63.9375rem) {
#container {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
}

#container #main {
	width: 75%;
	padding: 1em 2em 1em 2em;

}
@media only screen and (max-width: 63.9375rem) {
#container #main {
	width: 100%;
	padding: 1em;

}}

#container #right {
width: 25%;
		padding: 1.5em;
		background-color: transparent;
}

@media only screen and (max-width: 63.9375rem) {

#container #right {
	width: 100%;
}
#container #right .content-image {
	width: 33%;
	float: left;
}

}
@media only screen and (max-width: 29.9375rem) {
#container #right .content-image {
	width: 100%;
}
}

.fullwidth #container #main {
	width: 100%;
	padding: 1em 2em 1em 2em;

}

@media (max-width: 47.9375rem) {

.fullwidth #container #main {
	width: 100%;
	padding: 0.5em 1em 0.5em 1em;

}
}

.fullwidth #container #right {
width: 0%;
		padding: 1.5em;
		background-color: transparent;
}

#footer {
	background-color: #333;
	color: #fff;

}

#footer .inside {
	background-color: #333;
	color: #fff;
	max-width: 90rem;
	margin: 0 auto;
	padding: 2em;
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

#footer .inside a {
	color: #fff;
}
#footer .inside a:hover {
	color: #ccc;
}


#footer .inside a:before,
#footer .inside strong:before {
	content: "\f101";
	font-family: FontAwesome;
	display: inline-block;
	color: #5793AB;
	padding-right: 0.2em;
	margin-left: 0;
	width: 0.9375rem;
}

#footer .inside .footermail:before {
	content: none;
}

#footer .inside .f-anschrift-2  a:before {
	content: none;
}


@media only screen and (max-width: 56.25rem) {
#footer .inside .f-anschrift-1,
#footer .inside .f-anschrift-2,
#footer .inside .f-quicklinks,
#footer .inside .f-rechtliches {
	width: 45%;
	margin-bottom: 2em;
}
}

@media only screen and (max-width: 29.9375rem) {
#footer .inside .f-anschrift-1,
#footer .inside .f-anschrift-2,
#footer .inside .f-quicklinks,
#footer .inside .f-rechtliches {
	width: 100%;
}
}

#footer .inside .f-ue {
}

#footer .inside .fa-ab {
	padding-left: 1.125rem;
}

#footer .inside .fa {
	width: 0.9375rem;
	color: #008A9B;
}

#footer .inside hr,
#footer .inside .footer-top {
	width: 100%;
}

#footer .inside hr {
	border-color: #666;
	border: 0;
	border-bottom: 0.0625rem solid #666;
	margin-top: 1.5em;
	margin-bottom: 1.5em;
}

#footer .inside .footer-top {
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
}

#footer .inside .footer-top a:before {
	content: none;
}

.w100 {
	width: 100%;
}

.w25 {
	width: 22%;
}

.w66 {
	width: 64% !important;
}


.w50 {
	width: 48% !important;
}

.w33 {
	width: 31% !important;
}

@media only screen and (max-width: 47.9375rem)  {
.w33,
.w25,
.w66 {
	width: 48% !important;
}
}


@media only screen and (max-width: 29.9375rem)  {
.w33, .w50, .w25, .w66 {
	width: 100% !important;
}
}


/*Navigation*/


/*TOP-Header*/
@media only screen and (max-width: 47.9375rem){
#header {
	border-bottom: 0.0625rem solid #333;
	padding-bottom: 1em;
}
}

#header .inside {
	max-width: 90rem;
	margin: 0 auto;
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	padding-left: 0.5em;
	padding-right: 0.5em;

}
@media only screen and (max-width: 47.9375rem) {
#header .inside  {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#header .inside .mod_randomImage {
	width: 100%;
	max-width: 6.25rem;
	text-align: center;
	padding-top: 0.5em;
	padding-bottom: 1em;
}

#header .mod_randomImage img {
	max-width: 5rem;
}

}
#header .mod_randomImage img {
	margin-left: 0.5em;
}

#header .inside #nav-top ul li {
	display: inline-block;
	color: #666;
	padding: 1em;
	padding-top: 1.5em;
	padding-bottom: 1.5em;
	border-right: 0.0625rem solid #ccc;
	font-size: 0.95em;
}

#header .inside #nav-top ul li a:hover {
	color: #008A9B;
}

#header .inside #nav-top ul li:first-child {
	border-left: 0.0625rem solid #ccc;
}

#header .inside #nav-top .klassenbuch .klassenbuch:before {
	content: "\f2b9";
	font-family: FontAwesome;
	display: inline-block;
	padding-right: 0.5em;
	margin-left: 0;

}

#header .inside #nav-top .office365 .office365:before {
	content: "\f17a";
	font-family: FontAwesome;
	display: inline-block;
	padding-right: 0.5em;
	margin-left: 0;

}
#header .inside #nav-top .intern .intern:before {
	content: "\f1e0";
	font-family: FontAwesome;
	display: inline-block;
	padding-right: 0.5em;
	margin-left: 0;

}
#header .inside #nav-top .itbericht .itbericht:before {
	content: "\f044";
	font-family: FontAwesome;
	display: inline-block;
	padding-right: 0.5em;
	margin-left: 0;

}

#header .inside #nav-top .bibliothek .bibliothek:before {
	content: "\f02d";
	font-family: FontAwesome;
	display: inline-block;
	padding-right: 0.5em;
	margin-left: 0;

}

#header .inside #nav-top .sokrates .sokrates:before {
  content: "";
  display: inline-block;
  width: 1.25rem;
  height: .875rem;
  margin-right: .5rem;
  vertical-align: -.1rem;
  background-color: currentColor;
  background-image: none;
  -webkit-mask: url('/files/theme/images/sokrates-flag.svg') center / contain no-repeat;
  mask: url('/files/theme/images/sokrates-flag.svg') center / contain no-repeat;
}


#header .inside #nav-top .weiterelinks .weiterelinks:after {
	content: "\f101";
	font-family: FontAwesome;
	display: inline-block;
	padding-left: 0.5em;
	margin-right: 0;
}

@media only screen and (max-width: 63.9375rem) {
	#header .inside #nav-top .nomobile .nomobile,
	#header .inside #nav-top .nomobile {
		display: none;
		border: 0;
		padding: 0 !important;
		margin: 0 !important;
	}

	#header .inside #nav-top .weiterelinks {
		border-right: 0;
	}


	}


@media only screen and (max-width: 29.9375rem){
	#header .inside #nav-top li {
		border: 0;
	}
}

@media only screen and (max-width: 23.375rem){
	#header .inside #nav-top .klassenbuch .klassenbuch:before,
	#header .inside #nav-top .office365 .office365:before
	{
		content: none;
	}
}


@media only screen and (max-width: 47.9375rem) {
#header .inside #nav-top ul li:first-child,
#header .inside #nav-top ul li {
	border: none;
}
}

@media only screen and (max-width: 29.9375rem) {
#header .inside #nav-top ul li {
	padding: 0.3em;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	border-left: none;
}
}
#header .inside #nav-top ul li a {
	color: #666;
}

#header .inside #nav-top ul li .anmeldung-top {
	background-color: #c02525;
	color: #fff;
	padding: 0.8em;
	border-radius: 0.3125rem;
	text-transform: uppercase;
	font-size: 0.9em;
}
@media only screen and (max-width: 29.9375rem) {

#header .inside #nav-top ul li .anmeldung-top {
	padding: 0.4em;
	text-transform: none;
}
}

@media only screen and (min-width: 48rem) {
.nav_mobile {
	display: none;
}

}

@media only screen and (max-width: 48rem) {
	#nav-top {
		width: 100%;
}

}

.nav_mobile .fa-bars{
	font-size: 1.5em;
	margin-left: 0.5em;
	color: #008A9B;
	padding: 1rem;
}

/*Navigationsleiste*/

#navigationsleiste {
	background-color: #333;
	color: #fff;
	position: sticky;
	top: 0;
	box-shadow: 0 .25rem .75rem rgba(0,0,0,.16);
}

@media only screen and (max-width: 47.9375rem)  {
#navigationsleiste {
	display: none;
}
}


#navigationsleiste .inside {
	max-width: 90rem;
	margin: 0 auto;
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	padding-bottom: 0.5em;
	padding-top: 0.5em;

}

#navigationsleiste .f-social ul li {
}

#navigationsleiste .f-social .fa {
	color: #fff;
	font-size: 1.5em;
	margin-right: 0.5em;
}

#navigationsleiste .f-social .fa:hover {
	color: #008A9B;
}


#navigationsleiste .inside #nav-main {
	padding-left: 0.5em;
	padding-right: 0.5em;
}

#navigationsleiste .inside #nav-main ul li {
	display: inline-block;

	font-size: 1.1em;
	letter-spacing: 0.00625rem;
	padding: 0.5em;
	padding-left: 0em;
	padding-right: 0em;

}


#navigationsleiste .inside #nav-main ul li a,
#navigationsleiste .inside #nav-main ul li .active
 {
	color: #fff;
	padding: 1em;
}

#navigationsleiste .inside #nav-main ul li .active {
	background-color: #444;


}

#navigationsleiste .inside #nav-main ul li a:hover {
	background-color: #444;
}


#navigationsleiste .inside #nav-social {
	padding: 0.8em;
}

#nav-quicklinks h2,
#nav-right h2 {
	font-size: 1.2em;
	font-weight: 700;
	border-bottom: 0.0625rem solid #333;
	padding-bottom: 1em;

}

#nav-quicklinks ul li,
#nav-right ul li {
	border-bottom: 0.0625rem dashed #ccc;
	text-transform: uppercase;
	color: #666;
	padding-left: 1em;

}

#nav-quicklinks ul li:last-child,
#nav-right ul li:last-child{
	border-bottom: 0;

}

#nav-quicklinks ul li :hover,
#nav-right ul li a:hover {
	color: #008A9B;

}

#nav-quicklinks ul li a,
#nav-right ul li a,
#nav-right ul li .active {
		 padding-top: 1em;
	padding-bottom: 1em;
	color: #666;
	width: 100%;
	display: block;

}

#nav-right ul li .active {
	color: #008A9B;
}

#nav-right .level_2 {
	margin-bottom: 1em;
}

#nav-right .level_2 li {
	border-bottom: 0;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	font-size: 0.8em;

}
#nav-right .level_2 li a,
#nav-right .level_2 li .active {
	padding-top: 0.5em;
	padding-bottom: 0.5em;

}
#nav-right .level_2 li a:before,
#nav-right .level_2 li .active:before {
	content: "- "

}

/*Module*/


/*Formular */

.formbody h2 {
	margin-top: 1em !important;
	margin-bottom: 1em !important;
}

.formbody h2 strong {
	font-size: 1em !important;
	background-color: #008A9B;
	text-align: center;
	width: 1.5em;
	float: left;
	margin-right: 0.5em;
	font-weight: 700;
	color: #fff;
	padding-top: 0.25rem;
	padding-bottom:0.25rem;
	margin-top: -0.25rem;
}

.formbody,
.formbody [data-cff-condition] {
display: flex;
-webkit-flex-direction: row;
flex-direction: row;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: space-between;
justify-content: space-between;
-webkit-align-content: stretch;
align-content: stretch;
-webkit-align-items: flex-start;
align-items: flex-start;
}

[data-cff-condition] {
	padding: 0rem;
	width: 100%;
	margin-bottom: 2rem;
}

.widget {
	border-bottom: 0.0625rem solid #666;
	margin-bottom: 1rem;

}


legend {
	color: #008A9B;
	padding-top: 0.5rem;
	padding-bottom: 0;
	font-weight: 400;
	width: 100% !important;
}

.widget>label {
	border: 0;
	padding: 0.5rem;
	padding-bottom: 0;
	color: #008A9B;
	font-weight: 400;
	width: 100% !important;
}

.radio_container {
	width: 100% !important;
	padding-top: 1rem !important;
	padding-bottom: 1rem !important;
}

.radio_container span {
	margin-right: 1rem;
	font-size: 1.2rem;
}

.radio_container span:hover,
.radio_container label:hover {
	cursor: pointer;
}

.widget-radio {
	padding: 0 !important;
}

textarea, input[type="text"], input[type="button"], input[type="submit"], input[type="reset"], input[type="search"],input[type=text], input[type=password], input[type=date], input[type=datetime], input[type=email], input[type=number], input[type=search], input[type=tel], input[type=time], input[type=url], input:not([type]), textarea {
	border: 0;
	border-bottom: 0 solid #ccc;
	padding: 0.5rem;
	padding-top: 0rem;
	-webkit-box-shadow: none;
	box-shadow: none;
	background-color: none;
	background: none;
	font-size: 1.2rem;
	width: 100% !important;
}

.explanation, .widget-radio
{
	border: 0 !important;

}

.widget-checkbox  {
	border-bottom: 0;
}

.widget-checkbox a {
	text-decoration: underline;
	font-weight: 700;
}

.widget-checkbox input[type="checkbox"] {
	 position: absolute;
	 opacity: 0;
	 width: 0.0625rem;
	 height: 0.0625rem;
	 margin: 0;
	 padding: 0;
	 overflow: hidden;
	 clip: rect(0 0 0 0);
	 white-space: nowrap;
	 border: 0;
}


.widget-checkbox input[type="checkbox"] + label {
	 display: inline-block;
	 position: relative;
	 padding-left: 2.5rem;
	/* Abstand fÃ¼r die Checkmark */
	 margin-top: 0.3125rem;
	 cursor: pointer;
	 line-height: 2rem;
	 font-size: 1.1rem;
}

.widget-checkbox input[type="checkbox"] + label:before {
	 content: "";
	 display: inline-block;
	 position: absolute;
	 left: 0;
	 top: 0;
	 width: 1.375rem;
	 height: 1.375rem;
	 border: 0.0625rem solid #c02525;
	/* Farbe der Checkbox */
	 margin-top: 0.3125rem;
}

.widget-checkbox input[type="checkbox"]:checked + label:before {
	 content: "\2713";
	 border: 0.0625rem solid #4cbb6c;
	 color: #4cbb6c;
	 font-size: 1rem;
	 line-height: 1.375rem;
	 text-align: center;
}

.widget-checkbox label {
	 font-size: 0.9rem;
	 line-height: 1.5;
}

form button {
	background-color: #008A9B;
	color: #fff;
	padding: 1em;
	border: 0;
	background-image: none;
	border-radius: 0;
	font-size: 0.9rem;
	text-transform: uppercase;
	margin-top: 2rem;
	margin-left: 0.75rem;
}

.widget-submit  {
	border-bottom: 0;
}

form h3 {
	color: #333 !important;
}


.widget-radio input[type="radio"] {
	 position: absolute;
	 opacity: 0;
	 width: 0.0625rem;
	 height: 0.0625rem;
	 margin: 0;
	 padding: 0;
	 overflow: hidden;
	 clip: rect(0 0 0 0);
	 white-space: nowrap;
	 border: 0;
}


.widget-radio input[type="radio"] + label {
	 display: inline-block;
	 position: relative;
	 padding-left: 2rem;
	/* Abstand fÃ¼r die Checkmark */
	 margin-top: 0.3125rem;
	 cursor: pointer;
	 line-height: 2rem;
	 font-size: 1.1rem;
}

.widget-radio input[type="radio"] + label:before {
	 content: "";
	 display: inline-block;
	 position: absolute;
	 left: 0;
	 top: 0;
	 width: 1.375rem;
	 height: 1.375rem;
	 border: 0.0625rem solid #c02525;
	/* Farbe der Checkbox */
	 margin-top: 0.3125rem;
	 border-radius: 100%;
}

.widget-radio input[type="radio"]:checked + label:before {
	 content: "\2713";
	/* Unicode fÃ¼r das HÃ¤kchen-Symbol */
	 border: 0.0625rem solid #4cbb6c;
	 color: #4cbb6c;
	 font-size: 1rem;
	 line-height: 1.375rem;
	 text-align: center;
}

.widget-radio label {
	 font-size: 0.9rem;
	 line-height: 1.5;
}


/**mod_newsreader **/
.mod_newsreader time {
	color: #5793AB;
	font-size: 0.9em;
	font-weight: 700;
}

.mod_newsreader .info {
	margin-top: -1.5em;
	margin-bottom: 2em;
}

.mod_newsreader time:before {
	 display: inline;
	content: "\f0e5";
	font-family: FontAwesome;
	padding-right: 0.3125rem;
	color: #008A9B;
}


/**ce_slider **/

.ce_sliderStart .slider-control {
	margin-top: -2.1em;
}

.slider-control .slider-menu {
	font-size: 2.5em;
}

.slider-control .slider-prev, .slider-control .slider-next
 {
	 display: none;
}

.slider-control .slider-menu b {
	color: #fff;
}

.slider-control .slider-menu b.active {
	color: #008A9B
}

.content-slider img {
	width: 100%;
}


/** ce_table **/

.mod_calendar table {
  margin: 0 auto;
  border-collapse: collapse;
  width: 100%;
}
.mod_calendar table.sortable thead th:hover {
	cursor: pointer;
}

.mod_calendar table .header {
	font-weight: 700;
	color: #008A9B;
}

.mod_calendar table thead .next a {
	float: right;
}

.mod_calendar table thead th { padding: 0.6em;}

.mod_calendar table thead .label {
	background-color: #616161;
	color: #fff;
	text-align: center;
	border: 0.0625rem solid #fff;
}

.mod_calendar table tbody td {
	padding: 0.6em;
	width: 14%;
	height: 12.5rem;
	background-color: #efefef;
	border:0.0625rem solid #fff;
}
.mod_calendartable tbody tr:not(:last-child) {
  border-top: 0.0625rem solid #ddd;
  border-bottom: 0.0625rem solid #ddd;
}

/*Sitemap*/

.mod_sitemap .level_2 li, .mod_sitemap .level_3 li {
	list-style: disc;
}

.mod_sitemap .level_2 {
	padding-left: 2em;
}

.mod_sitemap .level_3 {
	padding-left: 2em;
}

/*Galerie*/

.content-gallery {
	display: grid;
}

.content-gallery ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 1.25rem;
}

@media (max-width: 47.9375rem){
	.content-gallery ul {
		gap: 0.625rem;
	}
}

.content-gallery img{
  display: block;
  width: 100%;
  height: auto;
}

.content-gallery--cols-1 ul{
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.content-gallery--cols-2 ul{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.content-gallery--cols-3 ul{
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.content-gallery--cols-4 ul{
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 47.9375rem){
	.content-gallery--cols-4 ul{
	  grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
.content-gallery--cols-5 ul{
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
@media (max-width: 47.9375rem){
	.content-gallery--cols-5ul{
	  grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
.content-gallery--cols-6 ul{
  grid-template-columns: repeat(6 minmax(0, 1fr));
}
@media (max-width: 47.9375rem){
	.content-gallery--cols-6 ul{
	  grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
.content-gallery--cols-7 ul{
  grid-template-columns: repeat(7, minmax(0, 1fr));
}
@media (max-width: 47.9375rem){
	.content-gallery--cols-7 ul{
	  grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
.content-gallery--cols-8 ul{
  grid-template-columns: repeat(8, minmax(0, 1fr));
}
@media (max-width: 47.9375rem){
	.content-gallery--cols-8 ul{
	  grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/*Kalender*/

.mod_calendar .cal_calendar
{
 width: 100%;
 overflow: hidden;
}
.mod_calendar .cal_navigation, .cal_head
{
 height: 2.5rem;
 margin: 0;
 padding: 0;
}
.mod_calendar .cal_navigation li
{
 float: left;
 height: 1.875rem;
 padding-top: 0.375rem;
 text-align: center;
 width: 33%;
}
.mod_calendar .head.current
{
 font-size: 1.5625rem;
 padding-top: 0;
 text-align: center;
}

.mod_calendar .cal_thead li
{
 width: 14.285%;
 height: 1.875rem;
 border: 0.125rem solid #fff;
 text-transform: uppercase;
 text-align: center;
 background-color: #616161;
 float: left;
 color: #fff;
 display: table;
 padding-top: 0.1875rem;
}

.mod_calendar .cal_body
{
 clear: both;
 overflow: hidden;
}
.mod_calendar .cal_body .header
{
	 color: #008A9B;
	font-weight: 700;
	padding: 0.2em;

}
.mod_calendar .cal_body ul
{
 clear: both;
}
.mod_calendar .cal_body ul li
{
 width: 14.285%;
 height: 12.5rem;
 border: 0.125rem solid #fff;
 text-align: center;
 background-color:#F3F3F3;
 float: left;
 display: table
}
thead tr .weekend {
 background-color: #333 !important;
}
.mod_calendar .days.active
 {
 background-color: #F3F3F3;
 color: #fff;


}


.mod_calendar .today .header {
	color: #BE2524 !important;
	font-weight: 700;


}

.mod_calendar .days.active > .header {
	display: block;
	color: #fff;
	font-weight: 700;
	background-color: #008A9B;
	padding: 0.2em;

}
.mod_calendar .event
{
 font-size: 0.7em;
 display: block;
 line-height: 1.5em;
}
.mod_calendar .event > a
 {
 color: #fff;
}
.mod_calendar .days
{
 border: 0.0625rem solid #aaa;
}

.mod_calendar .event {
	background-color: #333;
	padding: 0.2em;
}

.mod_calendar .event:nth-child(odd) {
	background-color: #666;

}

.mod_calendar .event:last-child {
	border: none;
}

@media only screen and (max-width: 47.9375rem)  {


.mod_calendar .empty {
	display: none !important;
}

.mod_calendar .cal_body ul li {
	width: 50%;
}
.mod_calendar .cal_body ul {
	clear: none !important;}


.mod_calendar .cal_thead {
	display: none;
}

.mod_calendar .cal_navigation .head {
	display: block;
	flex: none;
	width: 100%;
}


.mod_calendar .cal_navigation .current {
	margin-top: 0.5em;
}


}
/*Breadcrumb*/

.home .mod_breadcrumb {display: none;}

.mod_breadcrumb ul li {
	display: inline-block;
	font-size: 0.8em;

}

.mod_breadcrumb ul li:after {
	display: inline;
	content: "\f105";
	font-family: FontAwesome;
	padding-left: 0.3125rem;
	color: #008A9B;}

  .mod_breadcrumb ul .active {
	  font-weight: 700;
  }

 .mod_breadcrumb ul .active:after {
	 content: none;}


#teaser-startseite {
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	margin-top: 2em;
	margin-bottom: 2em;
}

#teaser-startseite h2,
#termine-startseite h2 {
	width: 100%;
	font-size: 1.2em;
	font-weight: 700;
	border-bottom: 0.0625rem dashed #008A9B;
	padding-bottom: 1.5em;
	margin-bottom: 2em;
}

#teaser-startseite .layout_latest {
	width: 30% !important;
	border: 1px solid #d7e0e3;

}

@media only screen and (max-width: 29.9375rem)  {

#teaser-startseite .layout_latest {
	width: 100% !important;

}
}

#teaser-startseite .layout_latest img {
	width: 100%;
	height: auto;
	display: block;
	margin-bottom: 1.5em;
}

#teaser-startseite .layout_latest .info {
	font-size: 0.7em !important;
	background-color: #008A9B;
	text-align: center;
	width: 2.5em;
	float: left;
	margin-right: 1em;
	font-weight: 700;
	color: #fff;

}


#teaser-startseite .layout_latest .info span:first-child {
	border-bottom: 0.0625rem solid #fff;
	padding-bottom: 0.4em;

}


#teaser-startseite .layout_latest h3 a {
	font-weight: 700 !important;
	font-size: 1.1em;
	line-height: 1em;
}

#teaser-startseite .layout_latest .content-text,
#teaser-startseite .layout_latest .ce_text {
	font-size: 0.9em;
	line-height: 1.3em;
	margin-top: 0.8em;
	display: inline-block;
	padding-left: 2.5rem;
}


#teaser-startseite .layout_latest .more a {
	font-size: 0.8em;
	text-transform: uppercase;
	margin-top: 1em;
	color: #008A9B;

}


#news-ue {
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	margin-top: 2em;
	margin-bottom: 2em;
}

#news-ue h2{
	width: 100%;
	font-size: 1.2em;
	font-weight: 700;
	border-bottom: 0.0625rem dashed #008A9B;
	padding-bottom: 1.5em;
	margin-bottom: 2em;
}

#news-ue .layout_latest {
	width: 30% !important;

}
@media only screen and (max-width: 63.9375rem)  {
#news-ue .layout_latest {
	width: 45% !important;
}
}

@media only screen and (max-width: 29.9375rem)  {
#news-ue .layout_latest {
	width: 100% !important;
}
}

#news-ue .layout_latest img {
	width: 100%;
	height: auto;
	display: block;
	margin-bottom: 1.5em;
}

#news-ue .layout_latest .info {
	font-size: 0.7em !important;
	background-color: #008A9B;
	text-align: center;
	width: 2.5em;
	float: left;
	margin-right: 1em;
	font-weight: 700;
	color: #fff;

}


#news-ue .layout_latest .info span:first-child {
	border-bottom: 0.0625rem solid #fff;
	padding-bottom: 0.4em;

}


#news-ue .layout_latest h3 a {
	font-weight: 700 !important;
	font-size: 1.1em;
	line-height: 1em;
}

#news-ue .layout_latest .content-text,
#news-ue .layout_latest .ce_text {
	font-size: 0.9em;
	line-height: 1.3em;
	margin-top: 0.5em;
	padding-left: 2.8em;
	margin-bottom: 1em;
}


#news-ue .layout_latest .more a {
	font-size: 0.8em;
	text-transform: uppercase;
	margin-top: 1em;
	color: #008A9B;
	padding-left: 3em;

}


/*#termine-startseite .odd {
	background-color: #efefef;
}
#termine-startseite .even {
	background-color: #ccc;
	color: #fff;
}*/


#termine-startseite .layout_upcoming {
	border-bottom: 0.0625rem solid #999;


	padding-top: 1em;
	padding-bottom: 1em;
}

#termine-startseite time {
	background-color: #008A9B;
	padding-left: 1em;
	padding-right: 1em;
	margin-right: 1em;
}

@media only screen and (max-width: 47.9375rem)  {
#termine-startseite time {	display: block;
	float: none;
}
}

#termine-startseite time:before {
	content: "\f073";
	font-family: FontAwesome;
	display: inline-block;
	color: #fff;
	margin-left: 0;
}


#termine-startseite {
	padding-left: 1em;
	padding-top: 0.5em;
}

#termine-startseite a:after {
	content: "\f05a";
	font-family: FontAwesome;
	display: inline-block;
	color: #008A9B;
	padding-right: 0.2em;
	margin-left: 0;
}

#termine-startseite a:hover {
	color: #008A9B;
}

/*********Inhaltselemente */


.wide {
	max-width: 100% !important;
}


.content-image, .content-text {
	max-width: 90rem;

}

#main .inside .mod_article {
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	text-align: left;
}

#main [class*="content-"],
#main .block{
	margin-bottom: 2em;
	width: 100%;
}


#main h2 {
	width: 100%;
	font-size: 1.4em;
	font-weight: 700;
	border-bottom: 0.0625rem solid #008A9B;
	padding-bottom: 0.5em;
	margin-bottom: 1.5em;
	color: #008A9B;
}

#main .block {
	margin-bottom: 2em;
	width: 100%;
}

#main h3 {
	color: #008A9B;
	font-weight: 700;
}

/* Text */

#main .content-text p {
	margin-bottom: 1.5em;
}

#main .content-text p:last-child {
	margin-bottom: 0;
}

#main .content-text p strong {
	color: #666;
}


#main .content-text ul {
	margin-bottom: 1.5em;
	color: #000;
}

#main .content-text ul li {
	list-style: disc;
	margin-left: 1em;
}

#main .media--right figure {
	float: right;
	margin-left: 1em;
	margin-bottom: 1em;
}

#main .media--left figure{
	float: left;
	margin-right: 1em;
	margin-bottom: 1em;
}

@media only screen and (max-width: 29.9375rem)  {
	#main .media--left,
	#main .media--right {
		display: block;
		float: none;
		margin: 1em;
		text-align: center;
	}


}


#main .content-text img {
	max-width: 100%; height: auto;
}


/*Hyperlink*/

#main .content-hyperlink {
	margin-top: 3em;
	text-transform: uppercase;
	font-size: 0.9em;
	letter-spacing: 0.0125rem;
}

#main .content-hyperlink a {
	background-color: #008A9B;
	color: #fff;
	padding: 1em;

}


/* Youtube */


#main .content-youtube {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	height: auto;
	margin-bottom: 2em;
	padding: 0;
	overflow: hidden;
	background: #fff;
	border: .0625rem solid #d9e4e8;
	box-shadow: 0 .75rem 1.75rem rgba(10, 38, 48, .06);
}

#main .content-youtube h2 {
	display: none;
}

#main .content-youtube figure {
	position: relative;
	width: 100%;
	margin: 0;
	aspect-ratio: 16 / 9;
}

#main .content-youtube iframe {
	position: absolute;
	inset: 0;
	display: block;
	width: 100% !important;
	height: 100% !important;
	border: 0;
}


#main .ufa {
	box-sizing: border-box;
	margin-bottom: 3em;
	max-width: 47%;
	font-size: 0.9em;
	background: #fff;
	border: .0625rem solid #d9e4e8;
	box-shadow: 0 .75rem 1.75rem rgba(10, 38, 48, .06);
	padding: 2em;
	transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

#main .ufa:hover,
#main .ufa:focus-within {
	border-color: #b9d2d8;
	box-shadow: 0 1rem 2rem rgba(10, 38, 48, .1);
	transform: translateY(-.0625rem);
}

@media only screen and (max-width: 29.9375rem)  {
#main .ufa {
	margin-bottom: 3em;
	max-width: 100%;
	font-size: 0.9em;
}}

#main .ufa img {
	width: 90%;
	height: auto;
	margin: 0 auto;
}


#main .person {
	margin-bottom: 3em;
	max-width: 47%;
	font-size: 0.9em;

}
@media only screen and (max-width: 47.9375rem)  {
#main .person {
	max-width: 100%;
	width: 100% !important;
}
}


#main .person .image_container,
#main .person figure {
	box-sizing: border-box;
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	overflow: hidden;
	background-color: #fff;
	border: .0625rem solid #d9e4e8;
	box-shadow: 0 .75rem 1.75rem rgba(10, 38, 48, .06);
	transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;

}

#main .person .image_container:hover,
#main .person .image_container:focus-within,
#main .person figure:hover,
#main .person figure:focus-within {
	border-color: #b9d2d8;
	box-shadow: 0 1rem 2rem rgba(10, 38, 48, .1);
	transform: translateY(-.0625rem);

}

#main .person .image_container img,
#main .person figure img  {
	max-width: 9.375rem;
	height: auto;
	margin-right: 0;

}

#main .person figcaption {
	min-width: 0;
	padding: 1.25rem;
	overflow-wrap: anywhere;
}

@media only screen and (max-width: 29.9375rem)  {

#main .person .image_container img,
#main .person figure img {
	max-width: 6.25rem;

}
}
.image_container img,
figure img {
	max-width: 100%;
	height: auto;
	display: block;
}

a[href^="mailto:"]:not(.footermail)::before {
	content: "\f0e0" !important;
	display: inline-block;
	margin-right: .4em;
	color: var(--hak-teal, #008A9B);
	font-family: FontAwesome;
	font-weight: 400;
	text-decoration: none;
}

#container #right img {

	padding: 2em;
}


#main .ce_accordion {
	border-bottom: 0.0625rem solid #ccc;
	margin-bottom: 0;
}

#main .ce_accordion .ui-state-default:after {
	content: "\f0da";
	font-family: FontAwesome;
	display: block;
	color: #008A9B;
	padding-right: 0.2em;
	margin-right: 1em;
	float:right;
}

#main .ce_accordion .active:after {
	content: "\f0d7";
	font-family: FontAwesome;
	display: block;
	color: #008A9B;
	padding-right: 0.2em;
	margin-right: 1em;
	float:right;

}

.ce_accordion  > *{outline:none;}
#main .ce_accordion .ui-accordion-header {
	font-weight: 700;
	color: #008A9B;
	padding-top: 1em;
	padding-bottom: 1em;
}

#main .ce_accordion p:last-child {
	margin-bottom: 2em;
}

#main .ce_accordion .ui-accordion-header:hover {
	cursor: pointer;
	background-color: #efefef;
}

/*Sonderregelungen */


.schulzweig {
	box-sizing: border-box;
	background-color: #fff;
	border: .0625rem solid #d9e4e8;
	box-shadow: 0 .75rem 1.75rem rgba(10, 38, 48, .06);
	padding: 2em;
	transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.schulzweig:hover,
.schulzweig:focus-within {
	border-color: #b9d2d8;
	box-shadow: 0 1rem 2rem rgba(10, 38, 48, .1);
	transform: translateY(-.0625rem);
}

.schulzweig h3 {
	font-size: 1.5em;
	margin-bottom: 0.5em;
}

.schulzweig h3:before {
content: "\f19d";
	font-family: FontAwesome;
	display: inline-block;
	color: #008A9B;
	padding-right: 0.2em;
	margin-left: 0;
}

.schulzweig p {
	font-weight: 700;
}

.schulzweig ul li {
	font-size: 0.9em;
}

.schulzweig a {
	color: #fff;
	background-color: #008A9B;
	font-size: 0.8em;
	text-transform: uppercase;
	padding-left: 1em;
	padding-right: 1em;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}


.schulzweig a:hover {
	background-color: #333;
}

.schultypen-home {
	background-color: #fff;
	color: #333;
	max-width: 1440px !important;
	margin: 0 auto;
	margin-top: -50px;
	z-index: 1;
	position: relative;
}

.schultypen-home .schultypen {
	max-width: 90rem;
	margin: 0 auto;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: center;
	-ms-flex-align: center;
	box-shadow: 0 18px 38px rgba(23, 33, 38, .12);
}

@media only screen and (max-width: 47.9375rem)  {
.schultypen-home .schultypen {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
}


.schultypen-home .schultypen a {
	color: 333;
	font-weight: bold;

}

.schultypen-home .schultypen a:last-child {
	border-right: 0.0625rem solid #efefef;
}
@media only screen and (max-width: 47.9375rem)  {
.schultypen-home .schultypen a {
width: 50%;
text-align: center;
border-bottom: 0.0625rem solid #efefef;


}
}

.schultypen-home .schultypen a{

	padding-top: 2em;
	padding-bottom: 2em;
	border-left: 0.0625rem solid #efefef;
	border-bottom: 0.0625rem solid #efefef;
	padding-left: 2em;
}

@media only screen and (max-width: 79.9375rem)  {

.schultypen-home .schultypen a {
	padding: 1.5em;
}
}

@media only screen and (max-width: 29.9375rem)  {

.schultypen-home .schultypen a {
	font-size: 0.8em;

}
}


.schultypen-home .schultypen a:hover {
	background-color: #e5ecef;
}
.schultypen-home .schultypen strong {
	display: block;
	font-size: 2em;
	margin-bottom: 0.3em;
	color: #008A9B;
	font-weight: 600;
}
@media only screen and (max-width: 47.9375rem) {
.schultypen-home .schultypen strong {

	font-size: 1.5em;
}
}


.schultypen-home .schultypen .erwachsenenbildung {
	width: 31%;
	background-color: #444;
	text-align: right;
	font-size: 1em;
}
@media only screen and (max-width: 63.9375rem) {
.schultypen-home .schultypen .erwachsenenbildung {
	font-size: 0.8em;
	text-align: center;
}
}
@media only screen and (max-width: 47.9375rem) {
.schultypen-home .schultypen .erwachsenenbildung {
	width: 100%;
}
}


.schultypen-home .schultypen .erwachsenenbildung strong {
	font-size: 1.5em;
	margin-top: 0.1em;
}


.schultypen-home .schultypen .erwachsenenbildung strong:before {
	content:none;

}

.schultypen-home .schultypen .erwachsenenbildung strong:after {

	content: "\f0a9";
	font-family: FontAwesome;
	display: inline-block;
	width: 1.5625rem;
	color: #fff;
	padding-right: 1.25rem;
	margin-left: 0.3125rem;
	font-size: 1.0em;}

.home #banner .wide.intro.content-image figure {
	  position: relative;
	  overflow: hidden;
	  background: #000;
	}

	.home #banner .wide.intro.content-image figure::before {
	  content: "";
	  position: absolute;
	  inset: 0;
	  z-index: 1;
	  pointer-events: none;
	  background: linear-gradient(
		90deg,
		rgba(0, 0, 0, .72) 0%,
		rgba(0, 0, 0, .48) 42%,
		rgba(0, 0, 0, .16) 74%,
		rgba(0, 0, 0, .06) 100%
	  );
	}

	.home #banner .wide.intro.content-image picture,
	.home #banner .wide.intro.content-image img {
	  display: block;
	  width: 100%;
	}

	.home #banner .wide.intro.content-image figcaption {
	  position: absolute;
	  z-index: 2;
	}

	@media only screen and (max-width: 47.9375rem) {
	  .home #banner .wide.intro.content-image figure::before {
		background: linear-gradient(
		  180deg,
		  rgba(0, 0, 0, .68) 0%,
		  rgba(0, 0, 0, .46) 56%,
		  rgba(0, 0, 0, .18) 100%
		);
	  }
	}

	.home #banner .content-image {
		position: relative;
	}

.home #banner .content-image figcaption {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	z-index: 999999;
	font-size: 3em;
	text-transform: uppercase;
	color: #fff;
   /* border: 0.3125rem solid #fff; */
	font-weight: 700;
	padding: 0.5em;

	text-align: center;

	text-shadow: #000 0.2em 0.2em 0.4em;
	line-height: 1.2em;


	-webkit-animation: fadein 2s; /* Safari, Chrome and Opera > 12.1 */
	   -moz-animation: fadein 2s; /* Firefox < 16 */
		-ms-animation: fadein 2s; /* Internet Explorer */
		 -o-animation: fadein 2s; /* Opera < 12.1 */
			animation: fadein 2s;


}


@keyframes fadein {
	from { opacity: 0; }
	to   { opacity: 1; }
}

/* Firefox < 16 */
@-moz-keyframes fadein {
	from { opacity: 0; }
	to   { opacity: 1; }
}

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
	from { opacity: 0; }
	to   { opacity: 1; }
}

/* Internet Explorer */
@-ms-keyframes fadein {
	from { opacity: 0; }
	to   { opacity: 1; }
}


@media only screen and (max-width: 63.9375rem) {
	.home #banner .content-image figcaption{
		padding: 0.25em;
		font-size: 2em;

	}
	}


@media only screen and (max-width: 30rem) {
	.home #banner .content-image figcaption {
		padding: 0.3em;
		font-size: 1.5em;
		width: 100%;

	}
	}


.home #banner .content-image figcaption a {
	font-size: 0.4em;
	color: #fff;
	background-color: #008A9B;
	padding: 0.4em;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	border-radius: 0.2em;
	 text-shadow: #000 0em 0em 0em;
	 letter-spacing: 0.0625rem;


}


.home #banner .content-image figcaption a:hover {
	background-color: #333;
}
@media only screen and (max-width: 30rem) {

	.home #banner .content-image figcaption a {
		font-size: 0.5em;
	}
}


/*cookie*/

.cookiebar {
	padding: 0.5em;
	margin: 0 auto;

}

.cookiebar--position-bottom {
	font-size: 0.7em;
	background-color: #333;
}

.cookiebar__button {
	background-color: #008A9B;
}

@media only screen and (max-width: 47.9375rem)  {
	.cookiebar__button {
	margin-top : 1em !important;
}
}

.important {

	padding: 1em;
	background-color: #fceded;
	border-left: 5px solid #B70E0B !important;
	margin-top: 2rem;
}

.important h2 {
	color: #333 !important;
	border-bottom: 0px !important;
	margin-bottom: 0.5rem !important;

}
@media (min-width: 48rem){
.mod_mmenu {
	display: none;
}
}


/* HAK1 custom refinements */
:root {
  --hak-teal: #008a9b;
  --hak-teal-alt: #008a97;
  --hak-teal-dark: #006f79;
  --hak-text: #263237;
  --hak-muted: #666;
  --hak-line: #d7e0e3;
  --hak-line-soft: #e5ecef;
}

/* Certificate/logo carousel on home page */
.slick_18191c {
  margin: 3rem 0 4rem;
}

.slick_18191c .slick-container {
  position: relative;
  padding: 1.25rem 3.375rem;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.slick_18191c .slick-list {
  padding: 0 !important;
}

.slick_18191c .slick-track {
  display: flex;
  align-items: center;
}

.slick_18191c .slick-slide {
  height: auto;
  padding: 0 .625rem;
}

.slick_18191c .slick-slide > div {
  height: 100%;
}

.slick_18191c figure {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  height: 11.25rem;
  min-height: 0;
  margin: 0;
  padding: .875rem;
  background: #fff;
  border: .0625rem solid #e2edf1;
  border-radius: 0;
  box-shadow: none;
}

.slick_18191c img {
  display: block;
  width: 11.25rem;
  height: 11.25rem;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  margin: 0 auto;
}

.slick_18191c .slick-arrow,
#news-ue .pagination .previous a,
#news-ue .pagination .next a,
#news-ue .pagination .first a,
#news-ue .pagination .last a,
.mod_calendar table.calendar .head.previous a,
.mod_calendar table.calendar .head.next a {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.125rem;
  min-width: 2.125rem;
  height: 2.125rem;
  padding: 0;
  overflow: hidden;
  color: transparent;
  background: var(--hak-teal-alt);
  border: 0;
  border-radius: 50%;
  line-height: 1;
}

.slick_18191c .slick-arrow {
  position: absolute;
  top: 50%;
  z-index: 2;
  cursor: pointer;
  transform: translateY(-50%);
  box-shadow: none;
}

.slick_18191c .slick-prev {
  left: .75rem;
}

.slick_18191c .slick-next {
  right: .75rem;
}

.slick_18191c .slick-arrow:hover,
.slick_18191c .slick-arrow:focus,
#news-ue .pagination .previous a:hover,
#news-ue .pagination .next a:hover,
#news-ue .pagination .first a:hover,
#news-ue .pagination .last a:hover,
#news-ue .pagination .previous a:focus,
#news-ue .pagination .next a:focus,
#news-ue .pagination .first a:focus,
#news-ue .pagination .last a:focus,
.mod_calendar table.calendar .head.previous a:hover,
.mod_calendar table.calendar .head.next a:hover,
.mod_calendar table.calendar .head.previous a:focus,
.mod_calendar table.calendar .head.next a:focus {
  background: var(--hak-teal-dark);
  outline: 0;
}

.slick_18191c .slick-arrow:before,
#news-ue .pagination .previous a:before,
#news-ue .pagination .next a:before,
#news-ue .pagination .first a:before,
#news-ue .pagination .last a:before,
.mod_calendar table.calendar .head.previous a:before,
.mod_calendar table.calendar .head.next a:before {
  position: absolute;
  top: 50%;
  left: 50%;
  color: #fff;
  font-size: 1.5rem;
  line-height: 1;
  transform: translate(-50%, -54%);
}

.slick_18191c .slick-prev:before,
#news-ue .pagination .previous a:before,
.mod_calendar table.calendar .head.previous a:before {
  content: "\2039";
}

.slick_18191c .slick-next:before,
#news-ue .pagination .next a:before,
.mod_calendar table.calendar .head.next a:before {
  content: "\203a";
}

@media (max-width: 40rem) {
  .slick_18191c {
    margin: 2rem 0 2.75rem;
  }

  .slick_18191c .slick-container {
    padding: 1rem 2.625rem;
  }

  .slick_18191c figure {
    height: 11.25rem;
    padding: .625rem;
  }

  .slick_18191c .slick-arrow {
    width: 1.875rem;
    min-width: 1.875rem;
    height: 1.875rem;
  }

  .slick_18191c .slick-slide {
    width: 7.5rem !important;
  }

  .slick_18191c .slick-track {
    min-width: 135rem;
  }
}

/* Home page event agenda */
#termine-startseite {
  display: block;
  padding: 0;
  margin-top: 2.5rem;
  margin-bottom: 3.5rem;
  font-size: 1rem;
}

#termine-startseite h2,
.home #nav-quicklinks h2 {
  width: 100%;
  margin-bottom: 1.5em;
  padding-bottom: .5em;
  color: var(--hak-teal);
  border-bottom: .0625rem solid var(--hak-teal);
  font-size: 1.4em;
  font-weight: 700;
}

#termine-startseite .layout_upcoming {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1.125rem;
  min-height: 4rem;
  padding: .75rem 0;
  border-bottom: .0625rem solid var(--hak-line);
  color: var(--hak-text);
  line-height: 1.35;
}

#termine-startseite .layout_upcoming:last-of-type {
  border-bottom: 0;
}

#termine-startseite .layout_upcoming:hover {
  background: #f7fbfc;
}

#termine-startseite time {
  flex: 0 0 10.625rem;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
  margin: 0;
  padding: .5rem .75rem;
  float: none;
  background: var(--hak-teal);
  color: #fff;
  font-size: .92em;
  font-weight: 700;
  line-height: 1.2;
}

#termine-startseite time:before {
  padding-right: .4375rem;
}

#termine-startseite .layout_upcoming a {
  color: var(--hak-text);
}

#termine-startseite .layout_upcoming a:hover {
  color: var(--hak-teal);
}

@media only screen and (max-width: 47.9375rem) {
  #termine-startseite {
    margin-top: 2rem;
    margin-bottom: 2.75rem;
  }

  #termine-startseite .layout_upcoming {
    align-items: flex-start;
    flex-direction: column;
    gap: .5rem;
    min-height: 0;
    padding: .875rem 0;
  }

  #termine-startseite time {
    flex: none;
    width: auto;
    min-width: 9.375rem;
  }
}

/* Home quicklinks */
.home #nav-quicklinks {
  margin-top: 2.5rem;
}

.home #nav-quicklinks ul li {
  padding-left: 1em;
  text-transform: uppercase;
}

.home #nav-quicklinks ul li:last-child {
}

.home #nav-quicklinks ul li a,
.home #nav-quicklinks ul li strong {
  display: flex;
  align-items: center;
  gap: .65em;
  width: 100%;
  padding-top: 1em;
  padding-bottom: 1em;
  font-size: 1em;
  letter-spacing: 0;
  text-transform: uppercase;
}

.home #nav-quicklinks ul li a:hover,
.home #nav-quicklinks ul li strong:hover {
  color: var(--hak-teal);
}

.home #nav-quicklinks ul li a:before,
.home #nav-quicklinks ul li strong:before {
  color: var(--hak-teal);
}

@media only screen and (max-width: 63.9375rem) {
  .home #nav-quicklinks {
    margin-top: 2rem;
  }
}

/* Desktop mega menu */
#navigationsleiste {
  z-index: 40;
}

#navigationsleiste .inside {
  position: relative;
}

#nav-main > ul.level_1 > li.has-mega {
  position: static;
}

#nav-main > ul.level_1 > li.has-mega > a:after,
#nav-main > ul.level_1 > li.has-mega > strong:after,
#nav-main > ul.level_1 > li.has-mega > span:after {
  content: "\f107";
  display: inline-block;
  margin-left: .45em;
  color: #5793ab;
  font-family: FontAwesome;
  font-size: .85em;
}

.hak-mega-menu {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 50;
  visibility: hidden;
  opacity: 0;
  transform: translateY(-.375rem);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

#nav-main > ul.level_1 > li.has-mega:hover .hak-mega-menu,
#nav-main > ul.level_1 > li.has-mega:focus-within .hak-mega-menu {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.hak-mega-inner {
  display: grid;
  grid-template-columns: minmax(11.875rem, .28fr) minmax(0, 1fr);
  gap: 1.75rem;
  max-width: 90rem;
  margin: 0 auto;
  padding: 1.625rem 1.875rem 1.875rem;
  background: #fff;
  border-top: .1875rem solid var(--hak-teal);
  border-bottom: .0625rem solid var(--hak-line);
  color: var(--hak-text);
  box-shadow: 0 .75rem 1.875rem rgba(0,0,0,.14);
}

.hak-mega-intro {
  padding-right: 1.5rem;
  border-right: .0625rem solid var(--hak-line);
}

.hak-mega-overview {
  display: inline-block;
  margin-bottom: .625rem;
  padding: 0 !important;
  color: var(--hak-teal) !important;
  font-size: 1.25em;
  font-weight: 700;
  transition: color .16s ease;
}

.hak-mega-intro p {
  margin: 0;
  color: var(--hak-muted);
  font-size: .95em;
  line-height: 1.45;
}

.hak-mega-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.125rem 1.875rem;
}

.hak-mega-group .hak-mega-label {
  margin: 0 0 .5rem;
  color: #333;
  font-size: 1em;
  font-weight: 700;
  line-height: 1.3;
  text-align: left;
}

.hak-mega-group .hak-mega-label:before {
  content: "\f105";
  display: inline-block;
  margin-right: .45em;
  color: var(--hak-teal);
  font-family: FontAwesome;
}

.hak-mega-group .hak-mega-label a {
  display: inline;
  padding: 0 !important;
  color: #333 !important;
  text-align: left;
}

.hak-mega-group ul,
.hak-mega-group li {
  margin: 0;
  padding: 0;
}

.hak-mega-group li {
  display: block !important;
  border: 0 !important;
  font-size: 1em !important;
}

.hak-mega-group li a {
  display: block;
  padding: .3125rem 0 .3125rem .9em !important;
  color: var(--hak-muted) !important;
  border-radius: 0;
  font-size: .94em;
  line-height: 1.35;
}

.hak-mega-menu a:hover,
.hak-mega-menu a:focus {
  color: var(--hak-teal-dark) !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0;
}

@media only screen and (max-width: 63.9375rem) {
  .hak-mega-menu {
    display: none;
  }
}

/* Links page logo grid */
#article-43 {
  margin-top: 2rem;
}

#article-43 .content-text,
#article-43 .rte {
  width: 100%;
}

#article-43 .rte table {
  width: 100% !important;
  height: auto !important;
  float: none !important;
  margin: 0;
  border-collapse: separate;
  border-spacing: 0;
}

#article-43 .rte tbody {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(11.5rem, 1fr));
  gap: 1rem;
}

#article-43 .rte tr {
  display: contents;
}

#article-43 .rte td {
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto !important;
  height: auto !important;
  min-height: 7.25rem;
  padding: 1.25rem;
  background: #fff;
  border: .0625rem solid #d9e4e8;
  box-shadow: 0 .75rem 1.75rem rgba(10, 38, 48, .06);
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
  vertical-align: middle;
}

#article-43 .rte td:has(img[src*="standard-blank"]) {
  display: none;
}

#article-43 .rte td:not(:has(a)):not(:has(img)) {
  display: none;
}

#article-43 .rte td a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 4.75rem;
}

#article-43 .rte td img {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 5.25rem;
  object-fit: contain;
  transition: transform .16s ease, filter .16s ease;
}

#article-43 .rte td:hover {
  border-color: #b9d2d8;
  box-shadow: 0 1rem 2rem rgba(10, 38, 48, .1);
  transform: translateY(-.0625rem);
}

#article-43 .rte td:hover img {
  transform: translateY(-.125rem);
  filter: saturate(1.04);
}

#article-43 .hak-link-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(11.5rem, 1fr));
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

#article-43 .hak-link-gallery li {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 7.25rem;
  padding: 1.25rem;
  background: #fff;
  border: .0625rem solid #d9e4e8;
  box-shadow: 0 .75rem 1.75rem rgba(10, 38, 48, .06);
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

#article-43 .hak-link-gallery figure,
#article-43 .hak-link-gallery picture,
#article-43 .hak-link-gallery a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 4.75rem;
  margin: 0;
}

#article-43 .hak-link-gallery img {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 5.25rem;
  object-fit: contain;
  transition: transform .16s ease, filter .16s ease;
}

#article-43 .hak-link-gallery li:hover {
  border-color: #b9d2d8;
  box-shadow: 0 1rem 2rem rgba(10, 38, 48, .1);
  transform: translateY(-.0625rem);
}

#article-43 .hak-link-gallery li:hover img {
  transform: translateY(-.125rem);
  filter: saturate(1.04);
}

@media only screen and (max-width: 47.9375rem) {
  #article-43 {
    margin-top: 1.5rem;
  }

  #article-43 .rte tbody {
    grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
    gap: .75rem;
  }

  #article-43 .rte td {
    min-height: 6rem;
    padding: 1rem;
  }

  #article-43 .rte td img {
    max-height: 4.5rem;
  }

  #article-43 .hak-link-gallery {
    grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
    gap: .75rem;
  }

  #article-43 .hak-link-gallery li {
    min-height: 6rem;
    padding: 1rem;
  }

  #article-43 .hak-link-gallery img {
    max-height: 4.5rem;
  }
}

/* Header signup CTA */
#navigationsleiste .f-social ul {
  display: flex;
  align-items: center;
  gap: .75rem;
}

#navigationsleiste .f-social ul li {
  display: inline-flex;
  align-items: center;
}

#navigationsleiste .f-social ul li.hak-signup-cta {
  margin-left: .25rem;
}

#navigationsleiste .f-social ul li.hak-signup-cta a,
#navigationsleiste .f-social ul li.hak-signup-cta strong {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  min-height: 2.5rem;
  padding: 0 1rem;
  color: #fff;
  background: #E30613;
  border: .0625rem solid #E30613;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  text-transform: none;
}

#navigationsleiste .f-social ul li.hak-signup-cta a:before,
#navigationsleiste .f-social ul li.hak-signup-cta strong:before {
  content: "\f044";
  display: inline-block;
  color: #fff;
  font-family: FontAwesome;
  font-size: 1.05em;
  line-height: 1;
}

#navigationsleiste .f-social ul li.hak-signup-cta a:hover,
#navigationsleiste .f-social ul li.hak-signup-cta a:focus,
#navigationsleiste .f-social ul li.hak-signup-cta strong:hover,
#navigationsleiste .f-social ul li.hak-signup-cta strong:focus {
  color: #fff;
  background: #B90510;
  border-color: #B90510;
  outline: 0;
}

/* News pagination */
#news-ue .pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .875rem;
  width: 100%;
  margin: 2.875rem 0 1rem;
  font-size: .95em;
}

#news-ue .pagination p {
  font-size: .9em;
}

#news-ue .pagination ul {
  justify-content: center;
}

#news-ue .pagination li {
  display: block;
}

#news-ue .pagination a,
#news-ue .pagination strong {
  height: 2rem;
}

#news-ue .pagination a:hover,
#news-ue .pagination a:focus {
  color: var(--hak-teal-dark);
  border-color: var(--hak-teal);
  outline: 0;
}

#news-ue .pagination strong.active {
  color: #fff;
  background: var(--hak-teal);
  border-color: var(--hak-teal);
}

#news-ue .pagination .first a:before {
  content: "\00ab";
  font-size: 1.1875rem;
}

#news-ue .pagination .last a:before {
  content: "\00bb";
  font-size: 1.1875rem;
}

@media only screen and (max-width: 40rem) {
  #news-ue .pagination {
    align-items: flex-start;
    flex-direction: column;
    gap: .625rem;
  }
}

/* Calendar page */
.mod_calendar {
  width: 100%;
  margin: .875rem 0 3.5rem;
}

.mod_calendar table.calendar {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  background: #fff;
  border: 0;
  border-bottom: .0625rem solid #d9e4e8;
  box-shadow: none;
}

.mod_calendar table.calendar tbody {
  box-shadow: 0 .75rem 1.75rem rgba(10, 38, 48, .06);
}

.mod_calendar table.calendar thead tr:first-child th {
  height: auto;
  padding: 1.25rem .75rem;
  background: #fff;
  border: 0;
  color: var(--hak-text);
  font-weight: 400;
}

.mod_calendar table.calendar .head.current {
  color: var(--hak-teal);
  font-size: 1.65em;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}

.mod_calendar table.calendar .head.previous,
.mod_calendar table.calendar .head.next {
  vertical-align: middle;
}

.mod_calendar table.calendar .head.previous {
  text-align: left;
}

.mod_calendar table.calendar .head.next {
  text-align: right;
}

.mod_calendar table.calendar th.label {
  height: auto;
  padding: .75rem .625rem;
  background: var(--hak-teal);
  border-top: 0;
  border-right: .0625rem solid rgba(255, 255, 255, .2);
  color: #fff;
  font-size: .92em;
  font-weight: 700;
  text-align: center;
}

.mod_calendar table.calendar th.weekend {
  background: var(--hak-teal-dark) !important;
  color: #fff;
}

.mod_calendar table.calendar td {
  height: 8.875rem;
  padding: .625rem .5625rem;
  vertical-align: top;
  background: #fff;
  border-top: .0625rem solid var(--hak-line-soft);
  border-right: .0625rem solid var(--hak-line-soft);
  border-bottom: .0625rem solid var(--hak-line-soft);
}

.mod_calendar table.calendar td:last-child,
.mod_calendar table.calendar th.label:last-child {
  border-right: 0;
}

.mod_calendar table.calendar td.weekend {
  background: #f7fbfc;
}

.mod_calendar table.calendar td.empty {
  background: #f5f8f9;
}

.mod_calendar table.calendar td.active {
  background: #fff;
}

.mod_calendar table.calendar td.active.today {
  background: #fceded;
}

.mod_calendar table.calendar td .header {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.5rem;
  height: 1.75rem;
  margin-bottom: .5rem;
  padding: 0 .5rem;
  color: var(--hak-teal);
  background: rgba(0, 138, 155, .08);
  border-radius: 1rem;
  font-size: .95em;
  font-weight: 700;
  line-height: 1;
}

.mod_calendar table.calendar .calendar-weekday,
.mod_calendar table.calendar .calendar-date-dot {
  display: none;
}

.mod_calendar table.calendar td.today .header {
  box-sizing: border-box;
  width: 1.75rem;
  min-width: 1.75rem;
  padding: 0;
  color: #fff !important;
  background: var(--hak-teal);
  border-radius: 50%;
}

.mod_calendar table.calendar .event {
  display: block;
  margin: .25rem 0 0;
  padding: 0;
  background: transparent !important;
  font-size: .875rem;
  line-height: 1.25;
}

.mod_calendar table.calendar .event + .event {
  margin-top: .5rem;
  padding-top: .5rem;
  border-top: 1px solid var(--hak-line-soft);
}

.mod_calendar table.calendar .event a,
.mod_calendar table.calendar .event .event-title {
  display: block;
  padding: 0 0 0 .5rem;
  border: 0;
  border-left: .1875rem solid var(--hak-teal);
  color: var(--hak-teal-dark);
  background: transparent;
  box-shadow: none;
  font-size: 1em;
  font-weight: 400;
  hyphens: auto;
  line-height: 1.3;
  overflow-wrap: anywhere;
  transition: color .2s ease;
}

.mod_calendar table.calendar .event.bygone a,
.mod_calendar table.calendar .event.bygone .event-title {
  color: #4c626b;
  background: transparent;
}

.mod_calendar table.calendar .event.upcoming a,
.mod_calendar table.calendar .event.upcoming .event-title {
  color: var(--hak-teal-dark);
  background: transparent;
}

.mod_calendar table.calendar .event .event-time {
  display: block;
  margin-bottom: .2em;
  font-size: .85em;
  font-weight: 700;
  line-height: 1.3;
}

.mod_calendar table.calendar .event a {
  text-decoration: none;
}

.mod_calendar table.calendar .event .event-link-label {
  text-decoration-line: underline;
  text-decoration-color: #a8c8cd;
  text-decoration-thickness: 1px;
  text-underline-offset: .18em;
}

.mod_calendar table.calendar .event .event-link-arrow {
  display: inline-block;
  font-size: .9em;
}

.mod_calendar table.calendar .event a:hover .event-link-label,
.mod_calendar table.calendar .event a:focus-visible .event-link-label {
  text-decoration-color: currentColor;
  text-decoration-thickness: 2px;
}

.mod_calendar table.calendar .head.previous a:focus-visible,
.mod_calendar table.calendar .head.next a:focus-visible,
.mod_calendar table.calendar .event a:focus-visible {
  outline: 3px solid #005966;
  outline-offset: 3px;
  box-shadow: 0 0 0 3px #fff;
}

.mod_calendar table.calendar .event a:hover,
.mod_calendar table.calendar .event a:focus {
  background: transparent;
  box-shadow: none;
  color: var(--hak-teal);
}

@media only screen and (max-width: 56.25rem) {
  .mod_calendar {
    margin: 1.75rem 0 2.75rem;
    overflow-x: visible;
  }

  .mod_calendar table.calendar thead tr:first-child {
    display: grid;
    grid-template-columns: 2.125rem minmax(0, 1fr) 2.125rem;
    align-items: center;
    width: 100%;
    background: #fff;
  }

  .mod_calendar table.calendar thead tr:first-child th {
    display: flex;
    align-items: center;
  }

  .mod_calendar table.calendar .head.current {
    justify-content: center;
  }

  .mod_calendar table.calendar .head.next {
    justify-content: flex-end;
  }

  .mod_calendar table.calendar {
    display: block;
    width: 100%;
    min-width: 0;
    border: 0;
    box-shadow: none;
  }

  .mod_calendar table.calendar thead,
  .mod_calendar table.calendar tbody {
    display: block;
  }

  .mod_calendar table.calendar .head.current {
    font-size: 1.45em;
  }

  .mod_calendar table.calendar thead tr:first-child {
    margin-bottom: 1rem;
    border-bottom: .0625rem solid var(--hak-teal);
  }

  .mod_calendar table.calendar thead tr:nth-child(2) {
    display: none;
  }

  .mod_calendar table.calendar tbody {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
    background: transparent;
    box-shadow: none;
  }

  .mod_calendar table.calendar tbody tr {
    display: contents;
  }

  .mod_calendar table.calendar td {
    display: block;
    width: auto;
    height: auto;
    min-height: 8.25rem;
    padding: .75rem;
    border: .0625rem solid #d9e4e8;
    background: #fff;
    box-shadow: 0 .5rem 1.25rem rgba(10, 38, 48, .05);
  }

  .mod_calendar table.calendar td:last-child {
    border-right: .0625rem solid #d9e4e8;
  }

  .mod_calendar table.calendar .calendar-weekday,
  .mod_calendar table.calendar .calendar-date-dot {
    display: inline;
  }

  .mod_calendar table.calendar td.today .header {
    width: auto;
    padding: 0 .5rem;
    border-radius: 1rem;
  }

  .mod_calendar table.calendar td.empty {
    display: none;
  }
}

@media only screen and (max-width: 37.5rem) {
  .mod_calendar table.calendar tbody {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mod_calendar table.calendar thead tr:first-child th {
    padding-top: .875rem;
    padding-bottom: 1rem;
  }

  .mod_calendar table.calendar td {
    min-height: 7rem;
    padding: .5625rem;
  }

  .mod_calendar table.calendar .event {
    font-size: .8rem;
  }
}

/* Links page: native Contao gallery variant */
#article-43 .content-gallery {
  margin-top: 1.75rem;
}

#article-43 .content-gallery ul {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(11.5rem, 1fr));
  gap: 1rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

#article-43 .content-gallery li {
  align-items: center;
  background: #fff;
  border: .0625rem solid #d9e4e8;
  box-shadow: 0 .75rem 1.75rem rgba(10, 38, 48, .06);
  display: flex;
  justify-content: center;
  min-height: 8.25rem;
  padding: 1.25rem;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

#article-43 .content-gallery figure,
#article-43 .content-gallery picture,
#article-43 .content-gallery .hak-logo-link {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  margin: 0;
  width: 100%;
}

#article-43 .content-gallery img {
  display: block;
  height: auto;
  max-height: 5.75rem;
  max-width: 100%;
  object-fit: contain;
  transition: transform 0.2s ease;
  width: auto;
}

#article-43 .content-gallery li:hover {
  border-color: #b9d2d8;
  box-shadow: 0 1rem 2rem rgba(10, 38, 48, .1);
  transform: translateY(-.0625rem);
}

#article-43 .content-gallery li:hover img {
  transform: scale(1.03);
}

@media (max-width: 48rem) {
  #article-43 .content-gallery ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #article-43 .content-gallery li {
    min-height: 7rem;
    padding: 1rem;
  }

  #article-43 .content-gallery img {
    max-height: 4.75rem;
  }
}

#nav-main > ul.level_1 > li.active > strong.active {
  font-weight: 400;
}

/* Teacher directory */
.ce_teacher_list {
  margin-top: 1.75rem;
}

.ce_teacher_list .teacher-list-tools {
  display: flex;
  justify-content: flex-end;
  margin: 0 0 1.5rem;
}

.ce_teacher_list .teacher-list-search-wrap {
  position: relative;
  width: min(100%, 22rem);
}

.ce_teacher_list .teacher-list-search-icon {
  position: absolute;
  top: 50%;
  left: .9rem;
  color: #008A9B;
  pointer-events: none;
  transform: translateY(-50%);
}

.ce_teacher_list .teacher-list-search {
  width: 100%;
  min-height: 2.75rem;
  padding: .65rem .85rem .65rem 2.75rem;
  background: #fff;
  border: .0625rem solid rgba(0, 138, 155, .28);
  color: #333;
  font: inherit;
  line-height: 1.35;
  transition: border-color .2s ease, box-shadow .2s ease;
}

.ce_teacher_list .teacher-list-search:focus {
  border-color: #008A9B;
  box-shadow: 0 0 0 .1875rem rgba(0, 138, 155, .13);
  outline: 0;
}

.ce_teacher_list .teacher-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.5rem;
}

.ce_teacher_list .teacher-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  overflow: hidden;
  background: #fff;
  border: .0625rem solid #d9e4e8;
  box-shadow: 0 .75rem 1.75rem rgba(10, 38, 48, .06);
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.ce_teacher_list .teacher-card:hover,
.ce_teacher_list .teacher-card:focus-within {
  border-color: #b9d2d8;
  box-shadow: 0 1rem 2rem rgba(10, 38, 48, .1);
  transform: translateY(-.0625rem);
}

.ce_teacher_list .teacher-card[hidden] {
  display: none;
}

.ce_teacher_list .teacher-card-image {
  position: relative;
  width: 100%;
  aspect-ratio: 239 / 319;
  background: #f4f8f9;
  overflow: hidden;
}

.ce_teacher_list .teacher-card-image figure,
.ce_teacher_list .teacher-card-image picture {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
}

.ce_teacher_list .teacher-card-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.ce_teacher_list .teacher-card-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: .32rem;
  padding: .85rem .95rem 1rem;
}

.ce_teacher_list .teacher-card-name {
  margin: 0 0 .42rem;
  padding: 0 0 .48rem;
  border-bottom: .0625rem solid #008A9B;
  color: #008A9B;
  font-size: .765rem;
  font-weight: 700;
  line-height: 1.28;
}

.ce_teacher_list .teacher-card-meta {
  display: flex;
  align-items: flex-start;
  gap: .45rem;
  min-width: 0;
  margin: 0;
  color: #666;
  font-size: .94rem;
  line-height: 1.35;
}

.ce_teacher_list .teacher-card-meta a {
  min-width: 0;
  color: #008A9B;
  overflow-wrap: anywhere;
}

.ce_teacher_list .teacher-card-meta a:hover,
.ce_teacher_list .teacher-card-meta a:focus {
  color: #333;
}

.ce_teacher_list a[href^="mailto:"]::before {
  content: none !important;
}

.ce_teacher_list .teacher-card-icon {
  flex: 0 0 auto;
  margin-top: .05rem;
  color: #008A9B;
}

.ce_teacher_list .teacher-list-empty {
  margin: 1.5rem 0 0;
  padding: 1rem 1.125rem;
  background: #f5f8f9;
  border-left: .25rem solid #008A9B;
  color: #333;
}

@media only screen and (max-width: 74rem) {
  .ce_teacher_list .teacher-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media only screen and (max-width: 56.25rem) {
  .ce_teacher_list .teacher-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.15rem;
  }
}

@media only screen and (max-width: 35rem) {
  .ce_teacher_list .teacher-list-tools {
    justify-content: stretch;
  }

  .ce_teacher_list .teacher-list-search-wrap {
    width: 100%;
  }

  .ce_teacher_list .teacher-list {
    grid-template-columns: 1fr;
  }

  .ce_teacher_list .teacher-card {
    flex-direction: row;
  }

  .ce_teacher_list .teacher-card-image {
    flex: 0 0 7.25rem;
    width: 7.25rem;
    aspect-ratio: 239 / 319;
  }

  .ce_teacher_list .teacher-card-body {
    padding: .85rem .9rem;
  }
}

#main .ce_teacher_list .teacher-card-name {
  margin: 0 0 .38rem;
  padding: 0 0 .42rem;
  border-bottom: .0625rem solid #008A9B;
  color: #008A9B;
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.25;
}

#main .ce_teacher_list .teacher-card-body {
  gap: .28rem;
}

#main .ce_teacher_list .teacher-card-name {
  min-height: 3.05rem;
}

#main .ce_teacher_list .teacher-card-meta:first-of-type {
  margin-top: 0;
}

#main .ce_teacher_list .teacher-list-search::-webkit-search-cancel-button {
  cursor: pointer;
}

#main .ce_teacher_list .teacher-list-search::-webkit-search-decoration {
  cursor: pointer;
}

#article-37 .important.content-text {
  border: 0;
}

/* Quicklinks icons: independent from body class */
#nav-quicklinks ul li a:before,
#nav-quicklinks ul li strong:before {
  content: "";
  display: inline-block;
  flex: 0 0 auto;
  width: 1.25em;
  height: 1.25em;
  background-color: var(--hak-teal);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
}
/* SVG icons for quicklinks by page class */
#nav-quicklinks ul li.quicklink-termine a:before,
#nav-quicklinks ul li.quicklink-termine strong:before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2h2v3H7V2Zm8 0h2v3h-2V2ZM4 4h3v2h2V4h6v2h2V4h3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2Zm0 7v9h16v-9H4Zm0-2h16V6H4v3Z'/%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2h2v3H7V2Zm8 0h2v3h-2V2ZM4 4h3v2h2V4h6v2h2V4h3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2Zm0 7v9h16v-9H4Zm0-2h16V6H4v3Z'/%3E%3C/svg%3E");
}

#nav-quicklinks ul li.quicklink-lehrerinnen-und-lehrer a:before,
#nav-quicklinks ul li.quicklink-lehrerinnen-und-lehrer strong:before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 11a4 4 0 1 1 0-8 4 4 0 0 1 0 8Zm8.5 0a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7ZM2 20a6 6 0 0 1 12 0v1H2v-1Zm11.5 1v-1a7.5 7.5 0 0 0-1.4-4.35A5.5 5.5 0 0 1 22 19v2h-8.5Z'/%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 11a4 4 0 1 1 0-8 4 4 0 0 1 0 8Zm8.5 0a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7ZM2 20a6 6 0 0 1 12 0v1H2v-1Zm11.5 1v-1a7.5 7.5 0 0 0-1.4-4.35A5.5 5.5 0 0 1 22 19v2h-8.5Z'/%3E%3C/svg%3E");
}

#nav-quicklinks ul li.quicklink-schuelerinnen-und-schuelerberatung a:before,
#nav-quicklinks ul li.quicklink-schuelerinnen-und-schuelerberatung strong:before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-8-4.7-8-11.2A4.8 4.8 0 0 1 12 6a4.8 4.8 0 0 1 8 3.8C20 16.3 12 21 12 21Zm-2-8h4v-2h-4v2Zm1-5v8h2V8h-2Z'/%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-8-4.7-8-11.2A4.8 4.8 0 0 1 12 6a4.8 4.8 0 0 1 8 3.8C20 16.3 12 21 12 21Zm-2-8h4v-2h-4v2Zm1-5v8h2V8h-2Z'/%3E%3C/svg%3E");
}

#nav-quicklinks ul li.quicklink-downloads a:before,
#nav-quicklinks ul li.quicklink-downloads strong:before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M11 3h2v10l3.5-3.5 1.4 1.4L12 16.8l-5.9-5.9 1.4-1.4L11 13V3ZM4 19h16v2H4v-2Z'/%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M11 3h2v10l3.5-3.5 1.4 1.4L12 16.8l-5.9-5.9 1.4-1.4L11 13V3ZM4 19h16v2H4v-2Z'/%3E%3C/svg%3E");
}

#nav-quicklinks ul li.quicklink-uebungsfirmen a:before,
#nav-quicklinks ul li.quicklink-uebungsfirmen strong:before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 4h6l1 3h4v14H4V7h4l1-3Zm1.4 2-.4 1h4l-.4-1h-3.2ZM6 9v10h12V9H6Zm3 2h6v2H9v-2Zm0 4h6v2H9v-2Z'/%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 4h6l1 3h4v14H4V7h4l1-3Zm1.4 2-.4 1h4l-.4-1h-3.2ZM6 9v10h12V9H6Zm3 2h6v2H9v-2Zm0 4h6v2H9v-2Z'/%3E%3C/svg%3E");
}

#nav-quicklinks ul li.quicklink-links a:before,
#nav-quicklinks ul li.quicklink-links strong:before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8.5 13.5 7.1 12.1l5-5a5 5 0 0 1 7.1 7.1l-2.1 2.1-1.4-1.4 2.1-2.1a3 3 0 1 0-4.2-4.2l-5.1 4.9Zm7-3 1.4 1.4-5 5a5 5 0 0 1-7.1-7.1l2.1-2.1 1.4 1.4-2.1 2.1a3 3 0 0 0 4.2 4.2l5.1-4.9Z'/%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8.5 13.5 7.1 12.1l5-5a5 5 0 0 1 7.1 7.1l-2.1 2.1-1.4-1.4 2.1-2.1a3 3 0 1 0-4.2-4.2l-5.1 4.9Zm7-3 1.4 1.4-5 5a5 5 0 0 1-7.1-7.1l2.1-2.1 1.4 1.4-2.1 2.1a3 3 0 0 0 4.2 4.2l5.1-4.9Z'/%3E%3C/svg%3E");
}


/* Home hero editable copy overlay 2026-07-09 */
.home #banner #article-1 {
  position: relative;
}

.home #banner .wide.intro.content-image figcaption {
  display: none;
}

.home #banner .hak-hero-copy {
  position: absolute;
  left: max(2rem, calc((100% - 90rem) / 2 + 2rem));
  z-index: 2;
  color: #fff;
  transform: translateY(-50%);
}

.home #banner .hak-hero-copy .rte {
  width: 100%;
}

.home #banner .hak-hero-eyebrow {
  margin: 0 0 1rem;
  color: #bceaf0;
  font-size: .9rem;
  font-weight: 800;
  letter-spacing: .08em;
  line-height: 1.2;
  text-transform: uppercase;
}

.home #banner .hak-hero-copy .hak-hero-title {
  margin: 0;
  color: #fff;
  line-height: 1.04;
  letter-spacing: 0;
}

.home #banner .hak-hero-copy p {
  max-width: 39rem;
  margin: 1.35rem 0 0;
  color: rgba(255, 255, 255, .92);
  line-height: 1.55;
}

.home #banner .hak-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
}

.home #banner .hak-hero-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 1.2rem;
  border: .0625rem solid rgba(255, 255, 255, .62);
  color: #fff;
  background: rgba(255, 255, 255, .13);
  font-weight: 800;
  line-height: 1;
}

.home #banner .hak-hero-actions a:first-child {
  border-color: #E30613;
  background: #E30613;
}

.home #banner .hak-hero-actions a:hover,
.home #banner .hak-hero-actions a:focus {
  color: #fff;
  background: rgba(0, 0, 0, .36);
  outline: 0;
}

.home #banner .hak-hero-actions a:first-child:hover,
.home #banner .hak-hero-actions a:first-child:focus {
  background: #B90510;
  border-color: #B90510;
}

@media only screen and (max-width: 47.9375rem) {
  .home #banner .hak-hero-copy {
    top: 46%;
    left: 1rem;
    width: calc(100% - 2rem);
  }

  .home #banner .hak-hero-copy .hak-hero-title {
    font-size: clamp(2rem, 10vw, 3rem);
  }

  .home #banner .hak-hero-copy p {
    font-size: 1rem;
  }
}

/* Home hero overlay live position adjustment 2026-07-09 */
.home #banner .hak-hero-copy {
  top: 42%;
  width: min(43rem, calc(100% - 4rem));
}

.home #banner .hak-hero-copy .hak-hero-title {
  font-size: clamp(2.25rem, 4.25vw, 3.85rem);
}

.home #banner .hak-hero-copy p {
  margin-top: 1rem;
  font-size: 1.1rem;
}

.home #banner .hak-hero-actions {
  margin-top: 1.25rem !important;
}

.home #banner .hak-hero-actions a {
  min-height: 2.75rem;
}

/* Home hero mobile layout adjustment 2026-07-09 */
@media only screen and (max-width: 47.9375rem) {
  .home #banner .wide.intro.content-image figure,
  .home #banner .wide.intro.content-image picture,
  .home #banner .wide.intro.content-image img {
    min-height: 33rem;
  }

  .home #banner .wide.intro.content-image img {
    object-fit: cover;
  }

  .home #banner .hak-hero-copy {
    top: 17rem;
    left: 1rem;
    width: calc(100% - 2rem);
  }

  .home #banner .hak-hero-eyebrow {
    margin-bottom: .65rem;
    font-size: .75rem;
    line-height: 1.25;
  }

  .home #banner .hak-hero-copy .hak-hero-title {
    font-size: clamp(1.9rem, 9vw, 2.45rem);
    line-height: 1.05;
  }

  .home #banner .hak-hero-copy p {
    margin-top: .85rem;
    font-size: .95rem;
    line-height: 1.42;
  }

  .home #banner .hak-hero-actions {
    gap: .5rem;
    margin-top: 1rem !important;
  }

  .home #banner .hak-hero-actions a {
    min-height: 2.45rem;
    padding: 0 .8rem;
    font-size: .9rem;
  }
}

@media only screen and (max-width: 29.9375rem) {
  .home #banner .wide.intro.content-image figure,
  .home #banner .wide.intro.content-image picture,
  .home #banner .wide.intro.content-image img {
    min-height: 34rem;
  }

  .home #banner .hak-hero-copy {
    top: 17.3rem;
  }

  .home #banner .hak-hero-copy .hak-hero-title {
    font-size: clamp(1.7rem, 8.8vw, 2.1rem);
  }

  .home #banner .hak-hero-copy p {
    font-size: .9rem;
  }

  .home #banner .hak-hero-actions a {
    flex: 1 1 calc(50% - .5rem);
  }
}

/* Home hero very narrow button adjustment 2026-07-09 */
@media only screen and (max-width: 23.4375rem) {
  .home #banner .hak-hero-copy {
    top: 17.6rem;
  }

  .home #banner .hak-hero-actions a {
    flex: 1 1 100%;
  }
}

/* News cards redesign for home and news overview 2026-07-09 */
#teaser-startseite,
#news-ue {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2rem;
  align-items: stretch;
  margin-top: 3.25rem;
  margin-bottom: 4rem;
}


#teaser-startseite .layout_latest,
#news-ue .layout_latest {
  position: relative;
  display: flex;
  flex-direction: column;
  width: auto !important;
  min-width: 0;
  min-height: 100%;
  margin: 0;
  border: .0625rem solid #d9e4e8;
  background: #fff;
  box-shadow: 0 .75rem 1.75rem rgba(10, 38, 48, .06);
}

#teaser-startseite .layout_latest > a,
#news-ue .layout_latest > a {
  display: block;
  color: inherit;
}

#teaser-startseite .layout_latest figure,
#news-ue .layout_latest figure {
  position: relative;
  width: 100%;
  margin: 0;
  overflow: hidden;
  background: #eef4f6;
  aspect-ratio: 4 / 2.55;
}

#teaser-startseite .layout_latest img,
#news-ue .layout_latest img {
  width: 100%;
  height: 100%;
  margin: 0;
  display: block;
  object-fit: cover;
  transition: transform .25s ease;
}

#teaser-startseite .layout_latest:hover img,
#teaser-startseite .layout_latest:focus-within img,
#news-ue .layout_latest:hover img,
#news-ue .layout_latest:focus-within img {
  transform: scale(1.035);
}

#teaser-startseite .layout_latest .info,
#news-ue .layout_latest .info {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.25rem;
  min-height: 3.25rem;
  margin: 0;
  padding: .35rem .25rem;
  float: none;
  background: #008A9B;
  color: #fff;
  font-size: .72rem !important;
  font-weight: 900;
  line-height: 1.05;
  text-align: center;
  text-transform: uppercase;
  box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .16);
}

#teaser-startseite .layout_latest .info span:first-child,
#news-ue .layout_latest .info span:first-child {
  display: inline-block;
  margin-bottom: .15rem;
  padding-bottom: .15rem;
  border-bottom: .0625rem solid rgba(255, 255, 255, .8);
  font-size: 1rem;
}

#teaser-startseite .layout_latest h3,
#news-ue .layout_latest h3 {
  margin: 1.25rem 1.25rem 0;
  color: #142832;
  font-size: 1.05rem;
  line-height: 1.25;
}

#teaser-startseite .layout_latest h3 a,
#news-ue .layout_latest h3 a {
  color: inherit;
  font-size: inherit;
  font-weight: 900 !important;
  line-height: inherit;
  text-decoration: none;
}

#teaser-startseite .layout_latest h3 a:hover,
#teaser-startseite .layout_latest h3 a:focus,
#news-ue .layout_latest h3 a:hover,
#news-ue .layout_latest h3 a:focus {
  color: #008A9B;
  text-decoration: underline;
  text-underline-offset: .18em;
}

#teaser-startseite .layout_latest .content-text,
#teaser-startseite .layout_latest .ce_text,
#news-ue .layout_latest .content-text,
#news-ue .layout_latest .ce_text {
  display: block;
  flex: 1 1 auto;
  margin: .75rem 1.25rem 0;
  padding: 0;
  color: #4c626b;
  font-size: .95rem;
  line-height: 1.45;
}

#teaser-startseite .layout_latest .content-text p,
#teaser-startseite .layout_latest .ce_text p,
#news-ue .layout_latest .content-text p,
#news-ue .layout_latest .ce_text p {
  margin-top: 0;
}

#teaser-startseite .layout_latest .more,
#news-ue .layout_latest .more {
  margin: 1.2rem 1.25rem 1.25rem;
}

#teaser-startseite .layout_latest .more a,
#news-ue .layout_latest .more a {
  display: inline-flex;
  align-items: center;
  gap: 0;
  margin: 0;
  padding: 0;
  color: #007b8b;
  font-size: .78rem;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: .02em;
  text-transform: uppercase;
  text-decoration: none;
}

#teaser-startseite .layout_latest .more a::after,
#news-ue .layout_latest .more a::after {
  content: none;
  display: none;
}

#teaser-startseite .layout_latest .more a:hover,
#teaser-startseite .layout_latest .more a:focus,
#news-ue .layout_latest .more a:hover,
#news-ue .layout_latest .more a:focus {
  color: #E30613;
  text-decoration: underline;
  text-underline-offset: .18em;
}

@media only screen and (max-width: 63.9375rem) {
  #teaser-startseite,
  #news-ue {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
  }
}

@media only screen and (max-width: 37.5rem) {
  #teaser-startseite,
  #news-ue {
    grid-template-columns: 1fr;
    gap: 1.25rem;
    margin-top: 2.25rem;
    margin-bottom: 3rem;
  }

  #teaser-startseite .layout_latest h3,
  #news-ue .layout_latest h3 {
    margin-right: 1rem;
    margin-left: 1rem;
  }

  #teaser-startseite .layout_latest .content-text,
  #teaser-startseite .layout_latest .ce_text,
  #news-ue .layout_latest .content-text,
  #news-ue .layout_latest .ce_text,
  #teaser-startseite .layout_latest .more,
  #news-ue .layout_latest .more {
    margin-right: 1rem;
    margin-left: 1rem;
  }
}

/* Keep legacy news h2 styling while spanning the card grid 2026-07-10 */
#teaser-startseite h2,
#news-ue h2 {
  grid-column: 1 / -1;
}

/* Home events, quicklinks and awards cards 2026-07-10 */
.home #termine-startseite,
.home #nav-quicklinks {
  margin-top: 3rem;
  margin-bottom: 3.5rem;
}

.home #termine-startseite h2,
.home #nav-quicklinks h2,
.home .slick_18191c h2 {
  width: 100%;
  margin: 0 0 1.75rem;
  padding-bottom: .75rem;
  color: var(--hak-teal);
  border-bottom: .0625rem solid var(--hak-teal);
  font-size: 1.4em;
  font-weight: 700;
  line-height: 1.2;
}

.home #termine-startseite .layout_upcoming {
  display: grid;
  grid-template-columns: minmax(8.75rem, 11.25rem) minmax(0, 1fr);
  align-items: center;
  gap: 1rem;
  min-height: 4.25rem;
  margin: 0 0 .875rem;
  padding: 0;
  overflow: hidden;
  border: .0625rem solid #d9e4e8;
  background: #fff;
  color: var(--hak-text);
  box-shadow: 0 .75rem 1.75rem rgba(10, 38, 48, .06);
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.home #termine-startseite .layout_upcoming:last-of-type {
  margin-bottom: 0;
  border-bottom: .0625rem solid #d9e4e8;
}

.home #termine-startseite .layout_upcoming:hover,
.home #termine-startseite .layout_upcoming:focus-within {
  border-color: #b9d2d8;
  background: #fff;
  box-shadow: 0 1rem 2rem rgba(10, 38, 48, .1);
  transform: translateY(-.0625rem);
}

.home #termine-startseite time {
  align-self: stretch;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
  width: auto;
  height: 100%;
  margin: 0;
  padding: .85rem 1rem;
  float: none;
  background: var(--hak-teal);
  color: #fff;
  font-size: .92rem;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: .01em;
}

.home #termine-startseite time::before {
  padding-right: .5rem;
  color: #fff;
  font-size: .95rem;
}

.home #termine-startseite .layout_upcoming > time + * {
  min-width: 0;
}

.home #termine-startseite .layout_upcoming {
  font-size: 1rem;
  line-height: 1.35;
}

.home #termine-startseite .layout_upcoming:not(:has(a)) {
  padding-right: 1.125rem;
}

.home #termine-startseite .layout_upcoming a {
  display: block;
  padding: 1rem 1.125rem 1rem 0;
  color: var(--hak-text);
  font-weight: 700;
  text-decoration: none;
}

.home #termine-startseite .layout_upcoming a:hover,
.home #termine-startseite .layout_upcoming a:focus {
  color: var(--hak-teal);
  text-decoration: underline;
  text-underline-offset: .18em;
}

.home #nav-quicklinks ul {
  margin: 0;
  padding: 0;
}

.home #nav-quicklinks ul li {
  padding: 0;
  border-bottom: .0625rem solid #e7eef1;
  color: var(--hak-muted);
}

.home #nav-quicklinks ul li:last-child {
  border-bottom: 0;
}

.home #nav-quicklinks ul li a,
.home #nav-quicklinks ul li strong {
  padding: 1rem 1.125rem;
  color: var(--hak-muted);
  font-weight: 800;
}

.home #nav-quicklinks ul li a:hover,
.home #nav-quicklinks ul li a:focus,
.home #nav-quicklinks ul li strong:hover,
.home #nav-quicklinks ul li strong:focus {
  color: var(--hak-teal);
  background: #f7fbfc;
}

.home .slick_18191c {
  margin-top: 3rem;
}

.home .slick_18191c .slick-container {
  padding: 1.25rem 3.375rem;
}

.home .slick_18191c figure {
  border-color: #d9e4e8;
  background: #fff;
  box-shadow: 0 .5rem 1.25rem rgba(10, 38, 48, .05);
}

.home .slick_18191c .slick-arrow {
  box-shadow: 0 .5rem 1.25rem rgba(10, 38, 48, .12);
}

@media only screen and (max-width: 47.9375rem) {
  .home #termine-startseite,
  .home #nav-quicklinks {
    margin-top: 2.25rem;
    margin-bottom: 2.75rem;
  }

  .home #termine-startseite .layout_upcoming {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .home #termine-startseite time {
    width: 100%;
    min-height: 3rem;
  }

  .home #termine-startseite .layout_upcoming,
  .home #termine-startseite .layout_upcoming:not(:has(a)) {
    padding-right: 0;
  }

  .home #termine-startseite .layout_upcoming a,
  .home #termine-startseite .layout_upcoming:not(:has(a)) {
    padding: 1rem;
  }

  .home .slick_18191c .slick-container {
    padding: 1rem 2.625rem;
  }
}

/* Awards slider: keep only logo tiles styled 2026-07-10 */
.home .slick_18191c .slick-container {
  border: 0;
  background: transparent;
  box-shadow: none;
}

/* Home quicklinks: no outer panel 2026-07-10 */
.home #nav-quicklinks ul {
  border: 0;
  background: transparent;
  box-shadow: none;
}

/* Slightly stronger h1 headings 2026-07-10 */
h1,
.h1-ue {
  font-weight: 500;
}

.home #banner .hak-hero-copy .hak-hero-title {
  font-weight: 900;
}

/* Accordion cards and larger footer blocks 2026-07-10 */
#main .ce_accordion {
  margin: 0 0 .875rem;
  overflow: hidden;
  border: .0625rem solid #d9e4e8;
  background: #fff;
  box-shadow: 0 .75rem 1.75rem rgba(10, 38, 48, .06);
}

#main .ce_accordion .ui-accordion-header,
#main .ce_accordion .toggler {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 3.75rem;
  margin: 0;
  padding: 1rem 3.25rem 1rem 1.25rem;
  color: var(--hak-teal, #008A9B);
  background: #fff;
  font-weight: 800;
  line-height: 1.25;
  transition: background .2s ease, color .2s ease;
}

#main .ce_accordion .ui-accordion-header:hover,
#main .ce_accordion .ui-accordion-header:focus,
#main .ce_accordion .toggler:hover,
#main .ce_accordion .toggler:focus {
  cursor: pointer;
  background: #f7fbfc;
  outline: .125rem solid transparent;
}

#main .ce_accordion .ui-accordion-header.active,
#main .ce_accordion .toggler.active {
  color: #142832;
  background: #f3fafb;
  border-bottom: .0625rem solid #d9e4e8;
}

#main .ce_accordion .ui-state-default::after,
#main .ce_accordion .active::after {
  position: absolute;
  top: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  margin: 0;
  padding: 0;
  color: #fff;
  background: var(--hak-teal, #008A9B);
  border-radius: 50%;
  font-family: FontAwesome;
  font-size: .85rem;
  line-height: 1;
  transform: translateY(-50%);
  float: none;
}

#main .ce_accordion .ui-state-default::after {
  content: "\f105";
}

#main .ce_accordion .active::after {
  content: "\f107";
}

#main .ce_accordion .accordion {
  padding: 1.25rem 1.25rem 1.4rem;
  color: var(--hak-text, #142832);
  background: #fff;
  line-height: 1.6;
}

#main .ce_accordion .accordion > div {
  max-width: 72rem;
}

#main .ce_accordion .accordion p:last-child {
  margin-bottom: 0;
}

#footer .inside {
  gap: 2.25rem 3rem;
  padding-top: 3.5rem;
  padding-bottom: 4.5rem !important;
  font-size: .95em;
  line-height: 1.6;
}

#footer .inside .f-anschrift-1,
#footer .inside .f-anschrift-2,
#footer .inside .f-quicklinks,
#footer .inside .f-rechtliches {
  flex: 1 1 13.5rem;
  min-width: 13.5rem;
}

#footer .inside .f-ue {
  margin-bottom: .85rem;
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.25;
}

#footer .inside ul,
#footer .inside li {
  line-height: 1.65;
}

#footer .inside li + li {
  margin-top: .28rem;
}

#footer .inside .fa,
#footer .inside a::before,
#footer .inside strong::before {
  width: 1.15rem;
  padding-right: .35rem;
}

@media only screen and (max-width: 47.9375rem) {
  #main .ce_accordion .ui-accordion-header,
  #main .ce_accordion .toggler {
    min-height: 3.4rem;
    padding: .9rem 3rem .9rem 1rem;
  }

  #main .ce_accordion .accordion {
    padding: 1rem;
  }

  #footer .inside {
    gap: 1.5rem;
    font-size: .95em;
  }

  #footer .inside .f-anschrift-1,
  #footer .inside .f-anschrift-2,
  #footer .inside .f-quicklinks,
  #footer .inside .f-rechtliches {
    width: 45%;
    min-width: 0;
  }
}

@media only screen and (max-width: 29.9375rem) {
  #footer .inside .f-anschrift-1,
  #footer .inside .f-anschrift-2,
  #footer .inside .f-quicklinks,
  #footer .inside .f-rechtliches {
    width: 100%;
    flex-basis: 100%;
  }
}

/* Accordion alignment and legacy footer bottom row 2026-07-10 */
#main .ce_accordion .ui-accordion-header,
#main .ce_accordion .toggler {
  justify-content: flex-start;
  text-align: left;
}

#main .ce_accordion .ui-state-default::after,
#main .ce_accordion .active::after {
  right: 1.25rem;
  left: auto;
}

#footer .inside .footer-top {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin: 0;
  padding: 0;
  font-size: .8em;
  line-height: 1.3;
}

#footer .inside .footer-top p {
  margin: 0;
}

/* Home school type teaser descriptions 2026-07-10 */
.schultypen-home .schultypen a {
  gap: .18rem;
  align-items: flex-start;
  justify-content: flex-start;
}

.schultypen-home .schultypen a span {
  display: block;
  color: #142832;
  font-weight: 800;
  line-height: 1.25;
}

.schultypen-home .schultypen .schultyp-desc {
  display: block;
  max-width: 18rem;
  margin-top: .35rem;
  color: #4c626b;
  font-size: .92rem;
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  line-height: 1.35;
}

@media only screen and (max-width: 47.9375rem) {
  .schultypen-home .schultypen .schultyp-desc {
    max-width: none;
    font-size: .88rem;
  }
}

/* Home school type cards: equal height and visible link arrow 2026-07-10 */
.schultypen-home .schultypen {
}

.schultypen-home .schultypen a {
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  min-height: 10.25rem;
  height: auto;
}

.schultypen-home .schultypen a::after {
  position: absolute;
  top: 50%;
  right: 1.25rem;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  color: #fff;
  background: #008a9b;
  border-radius: 50%;
  font-size: 1.55rem;
  font-weight: 800;
  line-height: 1;
  transform: translateY(-50%);
  box-shadow: 0 .5rem 1.25rem rgba(10, 38, 48, .12);
}

.schultypen-home .schultypen a:hover::after,
.schultypen-home .schultypen a:focus::after {
  background: #006f7d;
}

@media only screen and (max-width: 63.9375rem) {
  .schultypen-home .schultypen a {
    min-height: 9.75rem;
  }
}

@media only screen and (max-width: 47.9375rem) {
  .schultypen-home .schultypen a {
    min-height: 0;
    padding-right: 3.5rem;
  }

  .schultypen-home .schultypen a::after {
    right: 1rem;
    width: 1.75rem;
    height: 1.75rem;
    font-size: 1.35rem;
  }
}

/* Home school type cards: move link arrow beside title 2026-07-10 */
.schultypen-home .schultypen a {
  padding-right: 2rem;
}

.schultypen-home .schultypen a::after {
  content: none;
  display: none;
}

.schultypen-home .schultypen a strong {
  display: inline-flex;
  align-items: center;
  line-height: 1.05;
}

.schultypen-home .schultypen a strong::after {
  content: "";
  flex: 0 0 auto;
  border-radius: 50%;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateY(.03rem);
}

.schultypen-home .schultypen a:hover strong::after,
.schultypen-home .schultypen a:focus strong::after {
  border-color: rgba(0, 138, 155, .45);
}

@media only screen and (max-width: 47.9375rem) {
  .schultypen-home .schultypen a {
    padding-right: 2rem;
  }

  .schultypen-home .schultypen a strong::after {
    width: 1.2rem;
    height: 1.2rem;
    background-size: .75rem .75rem;
  }
}

/* Home school type cards: carousel-style title arrow 2026-07-10 */
.schultypen-home .schultypen a strong {
  gap: .75rem;
}

.schultypen-home .schultypen a strong::after {
  width: 2rem;
  height: 2rem;
  border: 0;
  background-color: #008a9b;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M6 4.5 9.5 8 6 11.5' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: 1rem 1rem;
  box-shadow: 0 .5rem 1.25rem rgba(10, 38, 48, .14);
}

.schultypen-home .schultypen a:hover strong::after,
.schultypen-home .schultypen a:focus strong::after {
  background-color: #007986;
}

@media only screen and (max-width: 47.9375rem) {
  .schultypen-home .schultypen a strong::after {
    width: 1.75rem;
    height: 1.75rem;
    background-size: .9rem .9rem;
  }
}


/* Responsive layout fixes for home teasers and news pagination 2026-07-10 */
.schultypen-home .schultypen {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
}

.schultypen-home .schultypen a {
  width: auto !important;
  min-width: 0;
  overflow: visible;
}

.home #banner .hak-hero-copy,
.schultypen-home .schultypen a,
#teaser-startseite .layout_latest,
#news-ue .layout_latest {
  min-width: 0;
}

.home #banner .hak-hero-copy .hak-hero-title,
.home #banner .hak-hero-copy p,
.schultypen-home .schultypen a strong,
.schultypen-home .schultypen a span,
.schultypen-home .schultypen .schultyp-desc,
#teaser-startseite .layout_latest h3,
#news-ue .layout_latest h3,
#teaser-startseite .layout_latest h3 a,
#news-ue .layout_latest h3 a,
#teaser-startseite .layout_latest .content-text,
#teaser-startseite .layout_latest .ce_text,
#news-ue .layout_latest .content-text,
#news-ue .layout_latest .ce_text {
  max-width: 100%;
  height: auto !important;
  max-height: none !important;
  overflow: visible;
  white-space: normal;
  overflow-wrap: anywhere;
  hyphens: auto;
}

#news-ue > nav.pagination,
#news-ue .pagination {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .45rem;
  width: 100%;
  max-width: none;
  margin: 1rem 0 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

#news-ue .pagination p {
  color: #4c626b;
  white-space: nowrap;
}

#news-ue .pagination ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .45rem;
  padding: 0;
  list-style: none;
}

#news-ue .pagination li {
  margin: 0;
  padding: 0;
  list-style: none;
}

#news-ue .pagination a,
#news-ue .pagination strong {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.25rem;
  min-height: 2.25rem;
  padding: 0 .75rem;
  border: .0625rem solid #cfe0e5;
  color: #007b8b;
  background: #fff;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
}

#news-ue .pagination strong,
#news-ue .pagination a:hover,
#news-ue .pagination a:focus {
  border-color: #008a9b;
  color: #fff;
  background: #008a9b;
}

@media only screen and (max-width: 63.9375rem) {
  .schultypen-home .schultypen {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media only screen and (max-width: 47.9375rem) {
  .home #banner .wide.intro.content-image figure,
  .home #banner .wide.intro.content-image picture,
  .home #banner .wide.intro.content-image img {
    min-height: 36rem;
  }

  .home #banner .hak-hero-copy {
    top: 50%;
    transform: translateY(-50%);
  }
}

@media only screen and (max-width: 37.5rem) {
  .schultypen-home .schultypen {
    grid-template-columns: 1fr;
  }

  #news-ue .pagination p {
    flex-basis: 100%;
  }
}

/* Hero tablet height safety so copy and buttons are not clipped 2026-07-10 */
@media only screen and (min-width: 48rem) and (max-width: 63.9375rem) {
  .home #banner .wide.intro.content-image figure,
  .home #banner .wide.intro.content-image picture,
  .home #banner .wide.intro.content-image img {
    min-height: 32rem;
  }

  .home #banner .hak-hero-copy {
    top: 50%;
    width: calc(100% - 3rem);
    transform: translateY(-50%);
  }

  .home #banner .hak-hero-copy .hak-hero-title {
    font-size: clamp(2.15rem, 6vw, 3.15rem);
    line-height: 1.05;
  }
}

/* Responsive hero/card overlap fix 2026-07-10 */
@media only screen and (max-width: 63.9375rem) {
  .home .schultypen-home {
    margin-top: 0;
  }
}

@media only screen and (min-width: 48rem) and (max-width: 63.9375rem) {
  .home #banner .wide.intro.content-image figure,
  .home #banner .wide.intro.content-image picture,
  .home #banner .wide.intro.content-image img {
    min-height: 36rem;
  }
}

.home #banner .hak-hero-copy .hak-hero-title {
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

/* News pagination final alignment 2026-07-10 */
#news-ue > nav.pagination,
#news-ue .pagination {
}

#news-ue .pagination p {
}

#news-ue .pagination ul {
  margin: 0 !important;
}

@media only screen and (max-width: 37.5rem) {
  #news-ue .pagination p {
    flex: 0 0 100%;
    margin: 0 0 .25rem;
  }
}

/* Mobile hero text clipping fix 2026-07-10 */
@media only screen and (max-width: 47.9375rem) {
  .home #banner .wide.intro.content-image figure,
  .home #banner .wide.intro.content-image picture,
  .home #banner .wide.intro.content-image img {
    min-height: 44rem;
  }

  .home #banner .hak-hero-copy {
    top: auto;
    bottom: 3rem;
    transform: none;
  }
}

@media only screen and (max-width: 23.4375rem) {
  .home #banner .wide.intro.content-image figure,
  .home #banner .wide.intro.content-image picture,
  .home #banner .wide.intro.content-image img {
    min-height: 47rem;
  }

  .home #banner .hak-hero-copy {
    bottom: 2rem;
  }
}

/* Mobile hero copy position correction after height increase 2026-07-10 */
@media only screen and (max-width: 47.9375rem) {
  .home #banner .hak-hero-copy {
    top: 17rem;
    bottom: auto;
    transform: none;
  }
}

@media only screen and (max-width: 29.9375rem) {
  .home #banner .hak-hero-copy {
    top: 17.3rem;
  }
}

@media only screen and (max-width: 23.4375rem) {
  .home #banner .hak-hero-copy {
    top: 17.6rem;
    bottom: auto;
  }
}


/* The mobile hero was too tall. Keep enough room for the copy, but remove the long image column. */
@media only screen and (max-width: 47.9375rem) {
  .home #banner .wide.intro.content-image figure,
  .home #banner .wide.intro.content-image picture,
  .home #banner .wide.intro.content-image img {
    min-height: 38rem;
  }

  .home #banner .hak-hero-copy {
    top: 14.25rem;
    bottom: auto;
    transform: none;
  }
}

@media only screen and (max-width: 23.4375rem) {
  .home #banner .wide.intro.content-image figure,
  .home #banner .wide.intro.content-image picture,
  .home #banner .wide.intro.content-image img {
    min-height: 40rem;
  }

  .home #banner .hak-hero-copy {
    top: 14.75rem;
  }
}

/* Mobile school-type cards should remain two-column. */
@media only screen and (max-width: 47.9375rem) {
  .home .schultypen-home .schultypen {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home .schultypen-home .schultypen a {
    width: auto !important;
    min-height: 9rem;
    padding: 1.15rem 1rem;
  }

  .home .schultypen-home .schultypen a strong {
    font-size: 1.25rem;
  }

  .home .schultypen-home .schultypen a span,
  .home .schultypen-home .schultypen .schultyp-desc {
    font-size: .82rem;
    line-height: 1.35;
    text-align: left;
  }
}

/* Center hero copy in the image area and prevent copy clipping on tablet/small desktop. */
@media only screen and (min-width: 48rem) and (max-width: 74.9375rem) {
  .home #banner .wide.intro.content-image figure,
  .home #banner .wide.intro.content-image picture,
  .home #banner .wide.intro.content-image img {
    min-height: 34rem;
  }

  .home #banner .hak-hero-copy {
    top: 50%;
    left: clamp(2rem, 4vw, 3rem);
    width: min(48rem, calc(100% - 4rem));
    transform: translateY(-50%);
  }

  .home #banner .hak-hero-copy .hak-hero-title {
    font-size: clamp(2.45rem, 5.1vw, 3.45rem);
    line-height: 1.05;
  }

  .home #banner .hak-hero-copy p {
    max-width: 44rem;
  }
}

/* Give the signup CTA breathing room on the right edge. */
#header .hak-signup-cta,
#header .f-social .hak-signup-cta {
  margin-right: .75rem;
}

#header .hak-signup-cta a,
#header .f-social .hak-signup-cta a {
  white-space: nowrap;
}

/* Pagination should be centered on the news overview. */
#news-ue > nav.pagination,
#news-ue .pagination {
  justify-content: center;
}

#news-ue .pagination p {
  flex: 0 0 auto;
  margin: 0 1rem 0 0;
}

#news-ue .pagination ul {
  flex: 0 1 auto;
}

/* Hero copy should center against the image only, not the image plus school-card row 2026-07-10 */
@media only screen and (min-width: 48rem) and (max-width: 74.9375rem) {
  .home #banner .hak-hero-copy {
    top: clamp(15rem, 26vw, 18rem);
    transform: none;
  }
}

/* Keep hero body text readable on tablet widths 2026-07-10 */
@media only screen and (min-width: 48rem) and (max-width: 74.9375rem) {
  .home #banner .hak-hero-copy {
    width: min(43rem, calc(100% - 4rem));
  }

  .home #banner .hak-hero-copy p {
    max-width: 38rem;
    font-size: 1rem;
    line-height: 1.45;
  }
}

/* Final small-desktop hero and header spacing correction 2026-07-10 */
@media only screen and (min-width: 48rem) and (max-width: 74.9375rem) {
  .home #banner .hak-hero-copy {
    top: clamp(10rem, 19vw, 13rem);
  }
}

@media only screen and (max-width: 74.9375rem) {
  .home .schultypen-home {
    margin-top: 0;
  }
}

.f-social {
  padding-right: .75rem;
  box-sizing: border-box;
}


@media only screen and (min-width: 75rem) {
  .home #banner .hak-hero-copy {
    top: calc(50% - 1.5rem);
    transform: translateY(-50%);
    width: min(48rem, calc(100% - 4rem));
  }

  .home #banner .hak-hero-copy p {
    max-width: 45rem;
    white-space: normal;
    overflow: visible;
  }
}

@media only screen and (min-width: 48rem) and (max-width: 74.9375rem) {
  .home #banner .hak-hero-copy {
    top: clamp(8.5rem, 15vw, 11rem);
    transform: none;
    width: min(43rem, calc(100% - 4rem));
  }

  .home #banner .hak-hero-copy p {
    max-width: 38rem;
    white-space: normal;
    overflow: visible;
  }
}

#teaser-startseite .layout_latest,
#news-ue .layout_latest {
  overflow: hidden;
}

#teaser-startseite .layout_latest .content-text,
#teaser-startseite .layout_latest .ce_text,
#news-ue .layout_latest .content-text,
#news-ue .layout_latest .ce_text {
  width: auto !important;
  min-width: 0;
  max-width: none;
  overflow: visible;
}

#teaser-startseite .layout_latest .content-text p,
#teaser-startseite .layout_latest .ce_text p,
#news-ue .layout_latest .content-text p,
#news-ue .layout_latest .ce_text p {
  display: block;
  max-width: 100%;
  width: auto;
  overflow: visible;
  white-space: normal;
  overflow-wrap: anywhere;
  hyphens: auto;
}


/*: center hero copy in the visible image area, not the full banner including tiles */
@media only screen and (min-width: 75rem) {
  .home #banner .hak-hero-copy {
    top: calc(50% - 5.125rem);
    transform: translateY(-50%);
  }
}

@keyframes hak-hero-copy-in {
  from {
    opacity: 0;
    transform: translateY(1rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.home #banner .hak-hero-copy .hak-hero-title,
.home #banner .hak-hero-copy p {
  animation: hak-hero-copy-in .7s ease-out both;
}

.home #banner .hak-hero-actions {
  animation: hak-hero-copy-in .7s .2s ease-out both;
}

@media (prefers-reduced-motion: reduce) {
  .home #banner .hak-hero-copy .hak-hero-title,
  .home #banner .hak-hero-copy p,
  .home #banner .hak-hero-actions {
    animation: none;
  }
}
