@import url('../googlefonts/noto-sans/noto-sans.css');

* { margin:0px;padding:0px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box; }

:root {
  --color-primary:#00806c;
  --color-primary-rgb:0,128,108;
  --color-secondary:#00853f;
  --color-secondary-rgb:0,133,63;
  --color-font:#000000;
  --color-background:#ffffff;
  --font-primary:'Verdana', sans-serif;
  --font-secondary:'Tahoma', sans-serif;
  --transition-default:all 1s ease-in-out;
  --transition-faster:all 0.25s ease-in-out;
  --transition-slow:all 1.75s ease-in-out;
  --image-bg:url('../../../media/image/hero-flyer.jpg');
}

html, body { height:100%;font-family:var(--font-secondary);font-size:18px;line-height:24px;color:var(--color-font);background:var(--color-background);scroll-behavior:smooth; }

.overlay { overflow: hidden !important; }

.clearboth { clear:both;height:0px;line-height:0px;font-size:0px; }
.loader { display:none;position:absolute;margin:-25px 0 0 -25px;top:50%;left:50%; }
a images { border:none; }
strong { font-weight:600; }

.wrapper-hasteaser { height: 100%; }
.wrapper-hasteaser .container-teaser { height:100vh;width:100%;position:fixed;background:rgba(var(--color-primary-rgb),1);box-shadow:0 0 20px 5px rgba(0,0,0,0); }
body.fixed .wrapper-hasteaser .container-teaser { height:116px;width:100%;position:fixed;z-index:99;background:rgba(var(--color-primary-rgb),1);box-shadow:0 0 20px 5px rgba(0,0,0,0.2);z-index:999; }

.wrapper-hasteaser .container-teaser .wrapper { position:relative;background-image:var(--image-bg);background-size:cover;background-position:center;height:100%;opacity:1;-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
.wrapper-hasteaser .container-teaser .wrapper:before { content:"";display:block;position:absolute;top:0px;left:0px;width:100%;height:100%;background:transparent;background:linear-gradient(161deg, rgba(0,0,0,.5) 0%, rgba(0,0,0,0) 25%);opacity:1;-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
.wrapper-hasteaser .container-teaser .wrapper:after { content: "";display:block;position:absolute;top:0px;right:0px;width:100%;height:100%;background:transparent;background:linear-gradient(205deg, rgba(0,0,0,.3) 0%, rgba(0,0,0,0) 15%);opacity:1;-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
body.fixed .wrapper-hasteaser .container-teaser .wrapper { opacity:0; }
body.fixed .wrapper-hasteaser .container-teaser .wrapper:before { opacity:0; }
body.fixed .wrapper-hasteaser .container-teaser .wrapper:after { opacity:0; }
.wrapper-hasteaser .container-teaser .wrapper .overlay { background-color:rgba(var(--color-primary-rgb),1);height:100%;width:100%;display:grid;justify-items:center;align-items:center; }
.wrapper-hasteaser .container-teaser .wrapper .overlay.loaded { background-color:rgba(var(--color-primary-rgb),0.1);height:100%;mix-blend-mode:multiply; }
.wrapper-hasteaser .container-teaser .wrapper .overlay .loading-animation { display:inline-block;width:80px;height:80px; }
.wrapper-hasteaser .container-teaser .wrapper .overlay .loading-animation:after { content: "";display:block;width:64px;height:64px;margin:8px;border-radius:50%;border:3px solid #ffffff;border-color:#ffffff transparent #ffffff transparent;animation:loading-animation 2s linear infinite;opacity:1; }
@keyframes loading-animation {
  0% { transform:rotate(0deg);opacity:1; }
  50% { opacity:.1; }
  100% { transform:rotate(360deg);opacity:1; }
}
.wrapper-hasteaser .container-teaser .wrapper .overlay.loaded .loading-animation { display:none; }

.teaser-logo { position:fixed;top:35px;left:60px;width:200px;margin:0 auto;z-index:9999;opacity:0;-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
.teaser-logo.visible { opacity:1; }
.teaser-logo a { display:block;width:100%;height:auto;text-decoration:none;color:#ffffff;font-family:var(--font-primary); }
.teaser-logo a img { display:block;width:100%;height:auto; }
.teaser-logo a span { display:block;position:relative;font-size:59px;line-height:59px;letter-spacing:0.15em;font-weight:800;width:93px; }
.teaser-logo a span:after { content:"";display:block;width:93px;margin:1px auto 0px auto;height:2px;background:#ffffff;border-radius:2px;
  -webkit-transform-origin:center center;-moz-transform-origin:center center;-o-transform-origin:center center;transform-origin:center center;
  -webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
body.fixed .teaser-logo { top:20px;width:160px; }
body.fixed .teaser-logo a span:after { width:0px; }

.mobile { position:fixed;right:60px;top:59px;z-index:999;opacity:0;-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
body.fixed .mobile { top:39px; }
.mobile.visible { opacity:1; }
.mobile a { display:block;cursor:pointer;width:40px;height:45px;position:relative;
  -webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-o-transform:rotate(0deg);transform:rotate(0deg);
  -webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
.mobile a span { display:block;position:absolute;height:4px;width:100%;background:#ffffff;opacity:1;left:0;border-radius:1px;
  -webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-o-transform:rotate(0deg);transform:rotate(0deg);
  -webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
.mobile a span:nth-child(1){ top:0px;
  -webkit-transform-origin:right center;-moz-transform-origin:right center;-o-transform-origin:right center;transform-origin:right center; }
.mobile a span:nth-child(2){ top:16px;right:0px;left:unset;width:80%;
  -webkit-transform-origin:left center;-moz-transform-origin:left center;-o-transform-origin:left center;transform-origin:left center; }
.mobile a span:nth-child(3){ top:31px;
  -webkit-transform-origin:right center;-moz-transform-origin:right center;-o-transform-origin:right center;transform-origin:right center; }

body.nav-open .mobile a span:nth-child(1){ -webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg);top:1px; }
body.nav-open .mobile a span:nth-child(3){ -webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);top:30px; }
body.nav-open .mobile a span:nth-child(2){ width:0px; }

.wrapper-hasteaser .wrapper-teaser-title { position:absolute;width:100%;height:100vh;display:grid;align-items:center;background-size:cover;background-position:center;opacity:1;top:0;display:none;-webkit-transition:var(--transition-default);-moz-transition:var(--transition-default);-ms-transition:var(--transition-default);-o-transition:var(--transition-default);transition:var(--transition-default); }
body.scrolled .wrapper-hasteaser .wrapper-teaser-title { opacity:0; }
.wrapper-hasteaser .wrapper-teaser-title.loaded { display:grid; }
.wrapper-hasteaser .wrapper-teaser-title .wrapper-title, .wrapper-hasteaser .wrapper-teaser-title .wrapper-title > div { display:table;width:auto;color:#ffffff; }
.wrapper-hasteaser .wrapper-teaser-title .wrapper-title { margin:0 auto;opacity:1;z-index:99; }
.wrapper-hasteaser .wrapper-teaser-title .wrapper-title .teaser-title { font-family:var(--font-primary);font-weight:900;font-size:60px;line-height:1.15em;text-align:center;text-transform:uppercase;margin:0 0 15px 0;letter-spacing:0.01em;text-shadow:2px 2px 20px rgba(0,0,0,.5); }

.container-navigation { position:fixed;top:0px;right:0px;height:100vh;z-index:998;background:rgba(var(--color-primary-rgb),.9);display:none; }
.container-navigation .wrapper { display:grid;padding:0 100px;height:100%;align-content:center;font-weight:200;font-size:32px;line-height:32px; }
.container-navigation .wrapper ul { list-style:none;margin:0;font-family:var(--font-secondary); }
.container-navigation .wrapper ul li { padding:15px 0; }
.container-navigation .wrapper a { color:#ffffff;text-decoration:none; }

.cta-phone { position:fixed;right:140px;top:55px;font-size:40px;z-index:999;opacity:0;-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
.cta-phone.visible { opacity:1; }
.cta-phone > a { display:block;color:#ffffff; }
body.fixed .cta-phone { top:35px; }

.main { position:relative;top:100vh;background:#ffffff; }
.main .section { padding:150px 0; }

.main h1 { font-family:var(--font-primary);font-size:48px;line-height:60px;margin:0 0 30px 0;letter-spacing:0.01em; }
.main h1:after { content:"";display:block;margin:30px auto 30px auto;width:35px;height:3px;background:var(--color-primary); }
.main h2 { font-family:var(--font-secondary);font-size:40px;line-height:50px;margin:0 0 20px 0;letter-spacing:0.01em;font-weight:400; }
.main h2:after { content:"";display:block;margin:30px auto 30px auto;width:35px;height:3px;background:var(--color-primary); }
.main h3 { font-family:var(--font-secondary);font-size:30px;line-height:40px;margin:0 0 15px 0;letter-spacing:0.01em;font-weight:400; }
.main h4 { font-family:var(--font-secondary);font-size:25px;line-height:35px;margin:0 0 10px 0;letter-spacing:0.01em;font-weight:400; }

.main p { font-size:21px;line-height:30px;font-weight:300;margin:0 0 20px 0;letter-spacing:0.01em; }

.main .content a { display:inline-block;color:rgba(var(--color-primary-rgb),1);text-decoration:none;/*border-bottom:2px solid rgba(var(--color-primary-rgb), .4);*/padding:0 0 2px 0;-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
/*.main .content a:hover { border-color:rgba(var(--color-primary-rgb), .7); }*/

.main .section .text-center { text-align:center;margin-left:auto;margin-right:auto;width:70%; }
.main .section .text-center ul { text-align:left;margin:0 20px 20px 20px; }

.main .section .text-portrait { margin-left:auto;margin-right:auto;width:100%;display:grid;grid-template-columns:9fr 4fr;padding:0 150px;gap:50px; }
.main .section .text-portrait.full { padding:0;grid-template-columns:6fr 4fr; }
.main .section .text-portrait.left { grid-template-columns:4fr 9fr; }
.main .section .text-portrait.full.left { grid-template-columns:4fr 6fr; }
.main .section .text-portrait .text {  }
.main .section .text-portrait .text h1:after { margin:20px 0 20px 0; }
.main .section .text-portrait .text h2:after { margin:20px 0 20px 0; }
.main .section .text-portrait .portrait { background-size:contain;background-position:top;background-repeat:no-repeat; }
.main .section .text-portrait.full .portrait { margin:-150px 0;background-size:cover;background-position:center; }
.main .section .text-portrait.full .text { padding:0 0 0 150px; }
.main .section .text-portrait.full.left .text { padding:0 150px 0 0; }

.main .einrichtungen { padding:0 150px; }
.main .einrichtungen > h2 { text-align:center; }
.main .einrichtungen .einrichtung-wrapper { display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:25px; }
.main .einrichtungen .einrichtung-wrapper .einrichtung { width:calc( ( 100% - ( 25px * 2 ) ) / 3);background:#ffffff;border-radius:5px;overflow:hidden;box-shadow:0px 3px 15px -5px rgba(0,0,0,.2);-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
.main .einrichtungen .einrichtung-wrapper .einrichtung:hover { box-shadow:0px 3px 20px -7px rgba(0,0,0,.3); }
.main .einrichtungen .einrichtung-wrapper .einrichtung .einrichtung-image { position:relative;aspect-ratio:3 / 2; }
/*.main .einrichtungen .einrichtung-wrapper .einrichtung .einrichtung-image:before { content:"";display:block;width:100%;height:100%;position:absolute;top:0px;left:0px;background:rgba(var(--color-primary-rgb),.85);z-index:9;-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }*/
/*.main .einrichtungen .einrichtung-wrapper .einrichtung:hover .einrichtung-image:before { background:rgba(var(--color-primary-rgb),.05); }*/
/*.main .einrichtungen .einrichtung-wrapper .einrichtung .einrichtung-image > h3 { position:absolute;left:0px;top:calc( 50% - 20px );padding:0 25px;text-align:center;width:100%;font-weight:600;opacity:1;z-index:99;color:#ffffff;-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
.main .einrichtungen .einrichtung-wrapper .einrichtung:hover .einrichtung-image > h3 { opacity:0; }*/
.main .einrichtungen .einrichtung-wrapper .einrichtung.has-gallery .einrichtung-image > span { display:block;position:absolute;z-index:99;color:#ffffff;top:calc(50% - 20px);cursor:pointer; }
.main .einrichtungen .einrichtung-wrapper .einrichtung.has-gallery .einrichtung-image > span:hover { color:var(--color-primary); }
.main .einrichtungen .einrichtung-wrapper .einrichtung.has-gallery .einrichtung-image > span > i { text-shadow:2px 2px 10px rgba(0,0,0,.5);font-size:40px; }
.main .einrichtungen .einrichtung-wrapper .einrichtung.has-gallery .einrichtung-image > span.next { right:25px; }
.main .einrichtungen .einrichtung-wrapper .einrichtung.has-gallery .einrichtung-image > span.prev { left:25px; }
.main .einrichtungen .einrichtung-wrapper .einrichtung .einrichtung-image > img { display:block;width:100%;position:absolute;top:0px;left:0px;aspect-ratio:3 / 2;object-position:center;object-fit:cover;background:var(--color-primary); }
.main .einrichtungen .einrichtung-wrapper .einrichtung .einrichtung-details { padding:25px;text-align:center; }
.main .einrichtungen .einrichtung-wrapper .einrichtung .einrichtung-details > p { margin:0 0 10px 0; }
.main .einrichtungen .einrichtung-wrapper .einrichtung .einrichtung-details > p:last-of-type { margin:0; }

.main .section.dark { background:var(--color-primary);color:#ffffff; }
.main .section.dark h1:after { background:#ffffff; }
.main .section.dark h2:after { background:#ffffff; }
.main .section.dark a { color: #ffffff;border-bottom:2px solid rgba(255,255,255,.4); }
.main .section.dark a:hover { border-color:rgba(255,255,255,.7); }

.main .section.lightgrey { background:rgba(0,0,0,.1); }

.main .footer { width:100%;background:rgba(var(--color-primary-rgb),1);z-index:1;color:#ffffff; }
.main .footer a { display:inline-block;color:#ffffff;text-decoration:none;/*border-bottom:2px solid rgba(255,255,255,.4);*/padding:0 0 2px 0;-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
/*.main .footer a:hover { border-color:rgba(255,255,255,.7) }*/
.main .footer > div { text-align:center;padding:50px; }
.main .footer .footer-info h3 { font-family:var(--font-secondary);font-size:32px;line-height:42px;margin:0 0 20px 0;letter-spacing:0.01em;font-weight:600; }
.main .footer .footer-info h3 > span { display:block;font-weight:400;font-size:21px;line-height:30px; }
.main .footer .footer-info p { margin:0 0 5px 0; }
.main .footer .footer-info p:last-of-type { margin:0; }
.main .footer .footer-info ul { margin:0;list-style-type:none;width:auto;text-align:center;font-size:21px;line-height:30px;font-weight:300;letter-spacing:0.01em; }
.main .footer .footer-info ul li { display:inline-block; }
.main .footer .footer-info ul li:after { content:" | "; }
.main .footer .footer-info ul li:last-of-type:after { content:""; }
.main .footer .footer-links { border-top:5px solid rgba(255,255,255,.4); }
.main .footer .footer-links ul { margin:0;list-style-type:none;width:auto;text-align:center; }
.main .footer .footer-links ul li { display:inline-block; }
.main .footer .footer-links ul li:after { content:" | "; }
.main .footer .footer-links ul li:last-of-type:after { content:""; }

/* Normal Screen */
@media only screen and (max-width: 1440px) {
  
}

@media only screen and (max-width: 1240px) {
	.main h1 { font-size:45px;line-height:56px; }
	.main p { font-size:19px;line-height:28px; }

	.main .section { padding:100px 0; }

  .main .section .text-portrait { padding:0 50px; }
  .main .section .text-portrait.full { padding:0 50px; }
	.main .section .text-portrait.full .portrait { margin:0; }
	.main .section .text-portrait.full .text { padding:inherit; }
	.main .section .text-portrait.full.left .text { padding:0 50px 0 0; }

	.main .einrichtungen .einrichtung-wrapper .einrichtung { width:calc( ( 100% - ( 25px * 1 ) ) / 2); }
}

/* Smaller Screen & Tablet Horizontal */
@media only screen and (max-width: 1166px) {
  
} 

@media only screen and (max-width: 1024px) {
  
}

/* Tablet */
@media only screen and (max-width: 821px) {
  .main .section .text-center { width:85%; }

  .main .section .text-portrait { grid-template-columns:1fr; }
  .main .section .text-portrait.full { grid-template-columns:1fr; }
	.main .section .text-portrait.left { grid-template-columns:1fr; }
	.main .section .text-portrait.full.left { grid-template-columns:1fr; }
	.main .section .text-portrait .portrait { height:300px;grid-row:1;background-position:left; }
	.main .section .text-portrait .text { grid-row:2; }

	.main .einrichtungen .einrichtung-wrapper .einrichtung { width:100%; }
}

@media only screen and (max-width: 575px) {  
  .main .section { padding:100px 0; } 
  .main h1 { font-size:45px;line-height:57px;margin:0 0 30px 0; }
  .main h2 { font-size:37px;line-height:47px;margin:0 0 20px 0; }
  .main h3 { font-size:27px;line-height:37px;margin:0 0 15px 0; }
  .main h4 { font-size:22px;line-height:32px;margin:0 0 10px 0; }
  .main p { font-size:18px;line-height:27px;margin:0 0 20px 0; }

  .container-navigation { left:0; }
  .container-navigation .wrapper { padding:0 30px; }
  .container-navigation .wrapper ul { font-size:25px;line-height:25px; }
  .container-navigation .wrapper ul li { padding:15px 0;text-align:center; }
  .container-navigation .wrapper a {  }

  .main .section { padding:75px 0; }
  .main .section .text-portrait { padding:0 30px; }
  .main .section .text-portrait.full { padding:0 30px; }
  .main .section .text-portrait.full .text { padding:0px; }

  .main .einrichtungen { padding:0 25px; }

  .main .footer .footer-info ul li { display:block;margin-top:5px;margin-bottom:15px; }
  .main .footer .footer-info ul li:last-of-type { margin-bottom:0; }
  .main .footer .footer-info ul li:after { content:""; }
  .main .footer .footer-links ul li { display:block;margin-bottom:10px; }
  .main .footer .footer-links ul li:last-of-type { margin-bottom:0; }
  .main .footer .footer-links ul li:after { content:""; }
}        

/* SmartPhone */
@media only screen and (max-width: 480px) {   
  .main .section .text-center { margin:0;width:100%;padding:0 25px; } 
  .main .section .text-center p { word-wrap:break-word; }
}

/* Mobile */
@media only screen and (max-width: 425px) {
  .mobile { right:40px; }
  .teaser-logo { left:40px; }
  .cta-phone { right:110px; }
 /*.wrapper-hasteaser .wrapper-teaser-title .wrapper-title .teaser-title { font-family:var(--font-primary);font-weight:400;font-size:50px;line-height:1.25em;text-align:center;margin:0 0 15px 0;letter-spacing:0.01em; }*/
}