/* boilerplate v9.0.1 */
html { font-family: sans-serif; }
audio, canvas, iframe, img, svg, video { display: inline-block; vertical-align: baseline; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
textarea { resize: vertical; }
.hidden,[hidden] { display: none !important; }
.visually-hidden { border: 0; clip: rect(0, 0, 0, 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; white-space: nowrap; width: 1px; }
.visually-hidden.focusable:active, .visually-hidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; white-space: inherit; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: " ";  display: table; }
.clearfix:after, .clear { clear: both; }
a { background-color: transparent; }
a:active, a:hover { outline: 0; }
::-moz-selection {background: #fc8085;text-shadow: none;}
::selection {background: #fc8085;text-shadow: none;}
/* nur safari */
* {-webkit-tap-highlight-color: rgba(0,0,0,0);}
svg:not(:root) { overflow: hidden; }
::-ms-input-placeholder { color: #111; }
::placeholder { color: #111;}

/* root */ 
:root {
	--center: 0 60px;
   	--blue:#0e559c;
   	--green:#95f9bd;
   	--grey:#f6f5f5;
}

/* inter */
@font-face { font-display: swap; font-family: 'Inter'; font-style: normal; font-weight: 300; src: url('fonts/inter-v20-latin-300.woff2') format('woff2'); }
@font-face { font-display: swap; font-family: 'Inter'; font-style: italic; font-weight: 300; src: url('fonts/inter-v20-latin-300italic.woff2') format('woff2'); }
@font-face { font-display: swap; font-family: 'Inter'; font-style: normal; font-weight: 400; src: url('fonts/inter-v20-latin-regular.woff2') format('woff2'); }
@font-face { font-display: swap; font-family: 'Inter'; font-style: normal; font-weight: 500; src: url('fonts/inter-v20-latin-500.woff2') format('woff2'); }
@font-face { font-display: swap; font-family: 'Inter'; font-style: italic; font-weight: 500; src: url('fonts/inter-v20-latin-500italic.woff2') format('woff2'); }
@font-face { font-display: swap; font-family: 'Inter'; font-style: normal; font-weight: 700; src: url('fonts/inter-v20-latin-700.woff2') format('woff2'); }
@font-face { font-display: swap; font-family: 'Inter'; font-style: italic; font-weight: 700; src: url('fonts/inter-v20-latin-700italic.woff2') format('woff2'); }
/* icons */
@font-face { font-family: 'icons'; src:  url('fonts/icons.eot'); src:  url('fonts/icons.eot#iefix') format('embedded-opentype'), url('fonts/icons.ttf') format('truetype'),     url('fonts/icons.woff') format('woff'), url('fonts/icons.svg') format('svg'); font-weight: normal; font-style: normal; font-display: block; }
[class^="icon-"], [class*=" icon-"], .icon { font-family: 'icons' !important; speak: never; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1;   -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.icon-arrow-long:before { content: "\e900"; }
.icon-arrow-right:before { content: "\e900"; }
.icon-arrow1:before {content: "\e901";}
.icon-arrow2:before {content: "\e902";}
.icon-facebook2:before {content: "\e903";}
.icon-facebook:before {content: "\e904";}
.icon-instagram:before {content: "\e905";}
.icon-pdf2:before {content: "\e906";}
.icon-print:before {content: "\e907";}

/* allgemein */
* { margin:0; padding:0; border:0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
html { font-size:100%;  }
body { width:100%; height:100%; }
body { font-family: 'Inter', Helvetica, Arial, sans-serif; font-size: 1.125rem; line-height: 1.5;  font-weight:300; color:#000; background:#fff; }
body.nav-active {overflow:hidden;}
a {text-decoration:none; -webkit-transition:all 0.3s ease-out; transition:all 0.3s ease-out; color: var(--blue); }
*:focus  { outline: 0; }
ul, ol { margin: 0; padding: 0 ; }
nav ul, ul { list-style: none; list-style-image: none; }
.transit, input.submit, a img, a h2 {-webkit-transition:all 0.3s ease-out; transition:all 0.3s ease-out;}
b, strong, .bold { font-weight:bold; font-weight:500;}
.italic, em {font-style:italic;}
.fade-in { opacity: 0; transition:all .5s ease-out .1s;}
.fade-in-slow { opacity: 0; transition:all .5s ease-out .75s;}
.fade-out { opacity: 1; transition:all .5s ease-out;}
.fade-left { transition:all .5s ease-out; transform: translateX(-10px); opacity: 0; }
.fade-right { transition:all .5s ease-out; transform: translateX(10px); opacity: 0; }
.fade-up { transition:all .5s ease-out; transform: translateY(10px); opacity: 0; }
.show.fade-in, .show.fade-in-slow, .show.fade-left, .show.fade-right, .show.fade-up { transform: translate(0px,0px) scale(1.0) rotate(0deg)!important; opacity: 1!important; }
.show.fade-out { opacity: 0!important; }

/* header */
#header {position:relative; z-index:20; top:0; font-weight: 400;}
#top-bar {position:relative; width:100%; height:40px; background:var(--grey);}
#menu-menu-top {position:absolute; background:#000; top:0; left:0; padding-left:60px;}
#menu-menu-top li {display:inline; line-height:40px; height:40px; font-size: 1rem; margin-right:30px;}
#top-bar a {color:#fff; }
#top-bar a:hover, #top-bar li.active a {color:var(--green);}
#top-bar .sub-menu.language {position:absolute; right:0; top:0; width:60px; text-align:center;}
#top-bar .sub-menu.language li a { display:block; background:var(--green); color:#000; line-height:40px; height:40px; font-size: 1rem; }
#top-bar .sub-menu.language li a:hover { background:var(--blue); color:#fff; }
#top-bar .search-form {position:absolute; right:60px; top:0; background:#000; height:40px; padding:5px 30px ;}
#top-bar .search-form input {width:170px; height:26px; line-height:26px; padding-left:4px; font-weight: 400; font-size: 1rem;}
#top-bar .sub-menu.social {position:absolute; background:#000; top:0; right:290px; width:120px; padding:0 10px;}
#top-bar .sub-menu.social li { position:relative; float:left;  height:40px; }
#top-bar .sub-menu.social li a { display:inline-block; height:40px; font-size:1.5rem; padding:4px 10px 0;}
#top-bar .sub-menu.social li a .fa-hidden { display:block; visibility:hidden; width:0; overflow:hidden;}
.header-main { position:relative; padding:var(--center); margin-top:30px;}
.header-main #logo { display:block; width:550px; float:left; }
.header-main #logo h2, #mobile-logo h2 {font-size:2.5rem; font-weight:300; text-transform:uppercase; display:inline-block; margin-right:10px; letter-spacing:1px;}
.header-main #logo h2 strong, #mobile-logo h2 strong { font-weight:500; }
.header-main #logo h2 a, .header-main #logo h2 a:hover, #mobile-logo a { display:block; color:#000;}
.header-main #logo h3 {display:inline-block; font-size:.9rem; font-weight:400; line-height:1.3; padding-top:11px;}
#mobile-logo {display:none;}
.header-main .menu-main {float:right; padding-top:25px;}
.header-main .menu-main li {display:inline; font-weight:700; padding-left:20px;}
.header-main .menu-main li a {position:relative; color:#000;}
.header-main .menu-main li a:after {content: ""; position: absolute; z-index:-1; width:0%; height:12px; bottom: -2px; left: 0; background-color:var(--green); visibility: hidden; transition: all 0.25s ease-in-out 0s;}
.no-touchevents .header-main .menu-main li a:hover:after, .header-main .menu-main li.active a:after, .header-main .menu-main li.trail a:after { visibility: visible; width: 100%; }

/* hamburger mobile */
.hamburger { position:absolute;  z-index:1010; right:60px; top:85px; width: 40px; height: 22px; display:none; cursor: pointer; background:transparent; }
.hamburger .line { display: block; background:#000; width: 40px; height: 5px; position: absolute; left: 0; -webkit-transition: all 0.4s; transition: all 0.4s; }
.hamburger .line.line-1 { top: 0;}
.hamburger .line.line-2 {top: 50%;}
.hamburger .line.line-3 {top: 100%;}
.hamburger.active .line-1 {  transform: translateY(11px) translateX(0) rotate(45deg); background:#fff;}
.hamburger.active .line-2 { opacity: 0;}
.hamburger.active .line-3 {  transform: translateY(-11px) translateX(0) rotate(-45deg); background:#fff; }
.hamburger.active:hover .line-1, .hamburger.active:hover .line-3 {background:var(--green);}

main {position:relative; padding:var(--center); margin:150px 0 100px;}
p a {display:inline; }
p a:hover {}
h1, h2, h3, h4 { position:relative; font-weight:300; line-height:1.2;}
h1 {text-transform:uppercase; margin-bottom:20px; }
h1, h2 {font-size:1.875rem; }
article h2 { font-size:1.375rem; margin-bottom:10px;}
h3 { font-size:1.375rem; font-weight:500; }
h4 { font-size:1.125rem;  }

#footer { position:relative; background:var(--grey); font-size:1rem;  padding:60px; }
#footer .site-info {width: calc(100% - 250px); float:left; padding-right:50px;}
#footer h4 { font-size:1.5rem; text-transform:uppercase; margin-bottom:10px;}
#footer h4 strong {font-weight:500;}
#footer .site-logos {margin-top:30px;}
#footer .site-logos a:first-child {margin-right:40px;}
#footer .footer-aside {float:right;}
#footer .footer-aside h4 { font-size:1.125rem; margin-top:22px;}
#footer .footer-menu li {display:inline; margin-right:20px; font-weight:700; color:var(--blue);}
#footer .footer-menu li:nth-child(2) {margin-right:0;}
#footer .footer-menu li a {color:#000;}
#footer .footer-menu li a:hover, #footer .footer-menu li.active a {color:var(--blue);}
#footer .more-nav li {margin-bottom:5px;}
#footer .more-nav a:hover {text-decoration:underline;}

.mobile-transparent-menu {position:fixed; z-index:10; top:0; width:100%; height:100%;  transition:all 0.3s ease-out; background:rgba(0,0,0,.3); display:none; cursor:pointer; -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px);}
.nav-active .mobile-transparent-menu { display:block;}

/* nach oben */
.scroll_top {position:fixed; z-index:90; bottom:20px; right:35px; opacity:0; width:44px; height:44px; line-height:44px; border-radius:50%; background:var(--green); color:#000; opacity:0; }
.scroll_top:after {position:absolute; left:0; top:0px; width:100%; text-align:center; font-weight:400; font-size:1.5rem;  font-family: 'icons'; content: "\e902"; transform:rotate(-90deg); transition:all 0.3s ease-out; }
.scroll_top.active:focus, .scroll_top.active {opacity:1; }
.scroll_top.active:hover {background:var(--blue); color:#fff; }

/* abgerundete links mit Pfeil */
.read-more, .back-link, .prev-link, .next-link {position:relative; height:40px; line-height:40px; color:#000; background:var(--green); padding:0 50px 0 25px; border-radius:20px; display:inline-block; -webkit-transition:all .2s ease-out; transition:all .2s ease-out; font-size: 1.125rem; }
.prev-link, .next-link { height:auto;line-height:1.2;}
.read-more:hover, .back-link:hover, .prev-link:hover, .next-link:hover {color:#fff; background:var(--blue); text-decoration:none !important;}
.read-more:before, .back-link:before, .prev-link:before, .next-link:before {font-family: 'icons'; content: "\e902"; font-size:1rem; position:absolute; right:20px; transition: all 0.3s ease-out 0s; }
.read-more:hover:before, .next-link:hover:before {right:10px;}
.back-link {padding:0 25px 0 50px; }
.prev-link {padding:10px 25px 10px 50px; }
.next-link { padding:010px 50px 10px 25px; }
.back-link:before, .prev-link:before {transform:rotate(180deg); right:auto; left:25px;}
.back-link:hover:before, .prev-link:hover:before {left:15px;}

picture, figure, .image-author {position:relative; display:inline-block;}
.bildinfo_box {position:absolute; right:0; bottom:8px; background:rgba(0,0,0,.6); color:#fff; text-align:right; font-size:1rem; padding:5px 15px;}
.show_bildinfo, .show_bildinfo:hover {color:#fff; text-decoration:none !important;}
.show_bildinfo:after {position:relative; content: " +"; -webkit-transition:all .2s ease-out; transition:all .2s ease-out; }
.bildinfo_box.active .show_bildinfo:after {content: " -";}
.bildinfo_box:hover {background:#000;}
.bildinfo {display:none;}

/* responsive schnickschnack */
@media (max-width: 1370px) {
	.header-main { overflow:hidden;}
	.header-main.active { overflow:visible;}
	.header-main .menu-main {float:none; padding-top:0; position:absolute; top:-30px; right:-500px; width:410px; background:#000; padding:50px 0 20px; webkit-transition:all 0.5s ease-out; transition:all .5s ease-out;}
	.header-main .menu-main.active {right:0;}
	.header-main .menu-main li {display:block; font-weight:500; padding:5px 0 5px 25px;}
	.header-main .menu-main li a {position:relative; color:#fff;}
	.header-main .menu-main li a:hover {color:var(--green);}
	.hamburger {display:block;}
}
@media (max-width: 1024px) {
	h1, h2 {font-size:1.5rem; }
	h3 { font-size:1.125rem; }
}
@media (max-width: 960px) {
	.clio {margin-top:20px; }
}
@media (max-width: 800px) {
	:root {
		--center: 0 30px;
	}
	header#header {background:#fff;}
	.header-main { overflow:visible;}
	.header-main #logo {display:none;}
	#mobile-logo {display:block; position:relative;padding:20px 0 20px 30px;}
	.hamburger {right:30px; top:30px;}
	.hamburger.active .line-1, .hamburger.active .line-3 {background:#000;}
	.hamburger.active:hover .line-1, .hamburger.active:hover .line-3 {background:#000;}
	.header-all { position:fixed; background:#000; width:100%; padding-top:10px; left:100%; webkit-transition:all 0.5s ease-out; transition:all .5s ease-out;}
	.header-all.active {left:0;}
	#top-bar {background:#000;}
	#menu-menu-top { padding-left:30px;}
	#top-bar .sub-menu.language {position:absolute; right:30px; top:0; width:auto; text-align:left;} 
	#top-bar .sub-menu.language li a { display:block; background:none; color:#fff; line-height:40px; height:40px; font-size: 1rem; }
	#top-bar .sub-menu.language li a:hover { background:none; color:var(--green); }	
	#top-bar .search-form {position:absolute; right:60px; top:0; background:#000; height:40px; padding:5px 10px ;}
	#top-bar .sub-menu.social {position:absolute; background:#000; top:0; right:255px; width:auto; padding:0;}
	#top-bar .sub-menu.social li a { display:inline-block; height:40px; font-size:1.5rem; padding:4px 5px 0;}
	.header-main {margin-top:0;}	
	.header-main .menu-main { right:auto; left:0; top:0; width:100%; padding:20px 0 20px; }
	.header-main .menu-main li { padding:5px 0 5px 30px; }
	#footer { padding:50px 30px }
}

@media (max-width: 700px) { 
	
}
@media (max-width: 600px) { 
	:root {
	   --center: 0 25px;
	}
	#mobile-logo {display:block; position:relative;padding:15px 0 15px 23px;}
	.hamburger {right:25px; top:25px;}
	#menu-menu-top { position:relative; padding-left:25px;}
	#top-bar {height:auto;}
	#top-bar .sub-menu.social {position:relative; background:#000; top:0; right:auto; width:auto; padding-left:20px;}
	#top-bar .search-form {position:absolute; right:20px; top:40px; background:#000; height:40px; padding:5px 10px ;}
	.header-main .menu-main li { padding:5px 0 5px 25px; }
	main {margin:100px 0;}
	#footer { padding:40px 25px }
	#footer .site-info {width:100%; float:none;}
	#footer .footer-aside {float:none; margin-top:40px;}
	#footer .footer-menu li {margin:0 20px 0 0;}
	.scroll_top {right:20px;}
}
@media (max-width: 500px) { 
	#mobile-logo h2 {font-size:2rem; }
	.hamburger {top:19px;}
	#menu-menu-top li {margin-right:20px;}
}
@media (max-width: 400px) { 
	#footer .site-logos a:first-child { margin-right:20px; }
	#footer .site-logos img {width:80px; height:auto;}
	#footer .site-logos img:first-child {width:100px; height:auto;}
}
@media (max-width: 350px) { 
	#mobile-logo h2 {font-size:1.5rem; }
	.hamburger {top:20px;}
	#menu-menu-top li {margin-right:10px;}
}
/* print */
@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}
@media print {
	body {font-size:1em;}
	.pageheader, footer {display:none;}
	.print-button {display:none !important;}
	.print {visibility:visible;}
    *, *:before, *:after, *:first-letter, *:first-line { background: #fff !important; color: #000 !important; box-shadow: none !important; text-shadow: none !important; }
    a,a:visited { text-decoration: underline;}
    a[href]:after {content: " (" attr(href) ")"; }
    abbr[title]:after {content: " (" attr(title) ")";}
	a[href^="#"]:after, a[href^="javascript:"]:after {  content: ""; }
    pre {white-space: pre-wrap !important;}
    pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
    tr,img {page-break-inside: avoid;}
    img {max-width: 100% !important; }
    p,h2,h3 {orphans: 3;widows: 3;}
    h2, h3 {page-break-after: avoid;}
}