:root{--clr-primary:#005a9c;--clr-secondary:#333;--clr-accent:#007bff;--clr-bg:#fff;--clr-bg-alt:#f7f7f7;--clr-gradient-start:#004a80;--clr-gradient-end:#006bb3;--clr-white:#fff;--clr-text-light:#f1f1f1;--clr-border:#e0e0e0;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-heading:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--space-xs:.5rem;--space-sm:1rem;--space:1.5rem;--space-md:2rem;--space-lg:3rem;--space-xl:4rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 2px 4px #0000000f;--shadow-md:0 5px 10px #00000014;--shadow-lg:0 10px 20px #0000001a;--shadow-xl:0 20px 40px #00000026;--transition-default:all .3s ease-in-out}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:100%}body{font-family:var(--font-sans);color:var(--clr-secondary);background:var(--clr-bg);line-height:1.7}a{color:var(--clr-primary);transition:var(--transition-default);text-decoration:none}a:hover{color:var(--clr-gradient-start);text-decoration:none}a:focus-visible,button:focus-visible,.service-card:focus-visible{outline:3px solid var(--clr-accent);outline-offset:2px;box-shadow:0 0 0 4px #007bff66}img,video,iframe{max-width:100%;height:auto;display:block}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--clr-secondary);margin-bottom:var(--space-sm);letter-spacing:-.02em;font-weight:700;line-height:1.3}.container{max-width:1200px;padding-left:var(--space);padding-right:var(--space);margin-left:auto;margin-right:auto}.icon-svg{vertical-align:-.125em;fill:currentColor;width:1em;height:1em;display:inline-block}.site-header{background:var(--clr-white);box-shadow:var(--shadow-md);z-index:1000;position:sticky;top:0}.header-inner{padding:var(--space-sm) 0;justify-content:space-between;align-items:center;display:flex}.logo img{width:auto;max-height:55px;display:block}.main-nav{align-items:center;display:flex}.nav-list{gap:var(--space-md);align-items:center;list-style:none;display:flex}.nav-list>li>a,.nav-list>li>span{color:var(--clr-secondary);padding:var(--space-xs) 0;align-items:center;font-weight:600;text-decoration:none;transition:color .2s;display:flex;position:relative}.nav-list>li>a:not(.btn):after,.nav-list>li>span:after{content:"";background-color:var(--clr-primary);width:0;height:2px;transition:width .3s;position:absolute;bottom:-2px;left:0}.nav-list>li>a:hover:after,.nav-list>li>span:hover:after,.nav-list>li>a.active-page-link:after{width:100%}.nav-list>li>a:hover,.nav-list>li>span:hover,.nav-list>li>a.active-page-link{color:var(--clr-primary)}.nav-list>li>a.btn{color:var(--clr-white);padding:10px}.nav-list>li>a.btn:hover{color:var(--clr-white);background:var(--clr-gradient-start)}.nav-list>li>a.btn:after{display:none}.nav-toggle{color:var(--clr-secondary);cursor:pointer;padding:var(--space-xs);background:0 0;border:none;font-size:1.8rem;display:none}.nav-item.dropdown{position:relative}.dropdown-arrow{margin-left:.4em;font-size:.7em;transition:transform .25s ease-in-out}.nav-item.dropdown:hover .dropdown-arrow,.nav-item.dropdown>a.active .dropdown-arrow,.nav-item.dropdown>span.active .dropdown-arrow{transform:rotate(180deg)}.dropdown-menu{background:var(--clr-white);border:1px solid var(--clr-border);box-shadow:var(--shadow-md);border-radius:0 0 var(--radius-sm) var(--radius-sm);padding:var(--space-xs) 0;z-index:1001;opacity:0;visibility:hidden;min-width:240px;list-style:none;transition:opacity .25s,visibility .25s,transform .25s;position:absolute;top:100%;left:0;transform:translateY(10px)}.nav-item.dropdown .dropdown-menu.submenu-open{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-menu li a{padding:.75rem var(--space-sm);color:var(--clr-secondary);white-space:nowrap;font-weight:500;text-decoration:none;transition:background-color .2s,color .2s;display:block}.dropdown-menu li a:hover{background-color:var(--clr-bg-alt);color:var(--clr-primary)}.dropdown-menu li a.active-service-link,.dropdown-menu li a.active-subpage-link{background-color:var(--clr-bg-alt);color:var(--clr-primary);font-weight:700}@media (max-width:992px){.header-inner{padding:var(--space-sm) var(--space)}.logo img{max-height:55px}.nav-list{background:var(--clr-white);width:100%;padding:var(--space);box-shadow:var(--shadow-lg);flex-direction:column;align-items:flex-start;gap:0;display:none;position:absolute;top:100%;left:0;right:0}.nav-list.open{-webkit-overflow-scrolling:touch;max-height:calc(100vh - 70px);display:flex;overflow-y:auto}.nav-toggle{display:block}.nav-item.dropdown .dropdown-menu{opacity:0;visibility:visible;box-shadow:none;padding-left:var(--space);background-color:#0000;border:none;min-width:auto;max-height:0;padding-top:0;padding-bottom:0;transition:max-height .3s ease-in-out,opacity .3s ease-in-out,margin-top .3s ease-in-out,margin-bottom .3s ease-in-out;position:static;overflow:hidden;transform:none}.nav-item.dropdown .dropdown-menu.submenu-open{opacity:1;max-height:500px;margin-top:var(--space-xs);margin-bottom:var(--space-xs)}.nav-item.dropdown .dropdown-menu li a{padding:var(--space-xs) 0;font-weight:400}.nav-list>li>a,.nav-list>li>span{align-items:center;width:100%;display:flex}.nav-list>li:not(:last-child)>a>span{border-bottom:1px solid var(--clr-border);padding-bottom:var(--space-sm)}.nav-list>li>a.btn{width:auto;margin-top:var(--space-sm);display:inline-block;padding:.75rem 1.5rem!important}.nav-list>li>a:not(.btn):after,.nav-list>li>span:after{display:none}}.btn{padding:.85rem var(--space-md);border-radius:var(--radius-sm);transition:var(--transition-default);cursor:pointer;text-align:center;border:1px solid #0000;font-weight:600;text-decoration:none;display:inline-block}.btn-primary{background:var(--clr-primary);color:var(--clr-white)}.btn-primary:hover{background:var(--clr-gradient-start);color:var(--clr-white);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.btn-secondary{background:var(--clr-white);color:var(--clr-primary);border:1px solid var(--clr-primary)}.btn-secondary:hover{background:var(--clr-primary);color:var(--clr-white);border-color:var(--clr-primary);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.btn-sm{padding:.6rem var(--space-sm);margin-top:10px;font-size:.9rem}.section{padding:var(--space-lg) 0}@media (min-width:768px){.section{padding:var(--space-xl) 0}}.section.bg-alternate{background:var(--clr-bg-alt)}.section-title,.section h2:not(#about-headline){font-family:var(--font-heading);text-align:center;margin-bottom:var(--space-sm);color:var(--clr-secondary);font-size:clamp(1.5rem,5vw,2.25rem)}.section-subtitle{text-align:center;color:#666;margin-bottom:var(--space-lg);max-width:800px;margin-left:auto;margin-right:auto;font-size:clamp(1rem,2vw,1.125rem)}.site-footer{background:var(--clr-secondary);color:var(--clr-text-light);padding:var(--space-xl) 0 var(--space-lg)}.footer-grid{gap:var(--space-md);display:grid}@media (min-width:768px){.footer-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (min-width:1024px){.footer-grid{grid-template-columns:repeat(5,1fr)}}.site-footer h4{font-family:var(--font-heading);color:var(--clr-white);margin-bottom:var(--space-sm);font-size:1.1rem;font-weight:600}.site-footer ul{margin:0;padding-left:0;list-style:none}.site-footer ul li{margin-bottom:var(--space-xs)}.site-footer a{color:#ccc;text-decoration:none}.site-footer a:hover{color:var(--clr-white);text-decoration:underline}.site-footer address{color:#ccc;font-style:normal;line-height:1.7}.site-footer address a{color:inherit}.site-footer address a:hover{color:var(--clr-white)}.footer-socials a{margin-right:var(--space-sm);color:#ccc;justify-content:center;align-items:center;font-size:1.6rem;text-decoration:none;display:inline-flex}.footer-socials a .icon-svg{font-size:1.8rem;transition:transform .3s}.footer-socials a:hover{color:var(--clr-white)}.footer-socials a:hover .icon-svg{transform:scale(1.1)}.footer-socials a:last-child{margin-right:0}.footer-socials a:hover{color:var(--clr-white);text-decoration:none}.footer-bottom{text-align:center;margin-top:var(--space-lg);padding-top:var(--space-lg);color:#aaa;border-top:1px solid #ffffff1a;font-size:.9rem}.footer-bottom p{margin-bottom:var(--space-xs)}.footer-bottom a{color:#ccc}.hero{text-align:center;color:var(--clr-white);padding:var(--space-xl) var(--space-sm);background:linear-gradient(to bottom right, var(--clr-gradient-start), var(--clr-gradient-end));min-height:70vh;margin-bottom:var(--space-xl);place-items:center;display:grid;position:relative;overflow:hidden}.hero:before{content:"";z-index:1;background-color:#005a9c73;position:absolute;inset:0}.hero-slideshow{z-index:0;position:absolute;inset:0;overflow:hidden}.hero-slideshow .hero-img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 1s ease-in-out;position:absolute;top:0;left:0}.hero-slideshow .hero-img.active{opacity:1}.hero-content{z-index:2;max-width:700px;position:relative}.hero-content h1{font-family:var(--font-heading);margin-bottom:var(--space-sm);color:var(--clr-white);text-shadow:0 2px 4px #0000004d;font-size:clamp(2.25rem,5vw,3.25rem)}.hero-content p{margin-bottom:var(--space-md);color:var(--clr-text-light);max-width:600px;margin-left:auto;margin-right:auto;font-size:clamp(1rem,2.5vw,1.25rem)}#about-headline{font-size:clamp(2rem,4.5vw,2.5rem);font-family:var(--font-heading);text-align:center;color:var(--clr-secondary);margin-bottom:var(--space-md);font-weight:700}#about .about-reveal-content{opacity:0;max-height:0;transition:opacity .5s ease-out,transform .5s ease-out,max-height .7s ease-in-out;overflow:hidden;transform:translateY(30px)}#about .about-reveal-content.is-visible{opacity:1;max-height:4000px;transform:translateY(0)}#about .container{padding-left:1rem;padding-right:1rem}#about .text-lg{font-size:1.125rem;line-height:1.75rem}#about .mb-4{margin-bottom:1rem}#about .mb-6{margin-bottom:1.5rem}#about .grid{display:grid}#about .gap-12{gap:3rem}#about .items-center{align-items:center}@media (min-width:1024px){#about .lg\:grid-cols-2{grid-template-columns:2fr 1fr}#about .lg\:order-1{order:1}#about .lg\:order-2{order:2}}#about .order-1{order:1}#about .order-2{order:2}#team-photo-container{cursor:pointer}#about .relative{position:relative}#about .h-96{height:24rem}#about .overflow-hidden{overflow:hidden}#about .rounded-lg{border-radius:var(--radius-lg)}#about .shadow-xl{box-shadow:var(--shadow-xl)}#about .object-cover{object-fit:cover}#about .w-full{width:100%}#about .h-full{height:100%}#about .absolute{position:absolute}#about .bottom-0{bottom:0}#about .left-0{left:0}#about .right-0{right:0}#about .bg-gradient-to-t{background-image:linear-gradient(#0000,#000000b3)}#about .p-6{padding:1.5rem}.news-slider-wrapper{max-width:700px;margin:0 auto;position:relative}.news-slider{grid-template-columns:1fr;display:grid}.news-item{background-color:var(--clr-white);border-radius:var(--radius-md);width:100%;padding:var(--space-md);box-shadow:var(--shadow-md);opacity:0;z-index:0;pointer-events:none;visibility:visible;flex-direction:column;grid-area:1/1;transition:opacity .5s ease-in-out;display:flex;position:relative}.news-item.active{opacity:1;z-index:1;pointer-events:auto;position:relative}.news-item .news-date{color:#777;margin-bottom:var(--space-xs);font-size:.8rem;display:block}.news-item img{object-fit:cover;border-radius:var(--radius-sm) var(--radius-sm) 0 0;width:100%;height:200px;margin-bottom:var(--space-sm)}.news-item p{margin-bottom:var(--space-sm);flex-grow:1;font-size:.95rem}.news-item .btn{align-self:flex-start;margin-top:auto}.news-dots{text-align:center;margin-top:var(--space-md)}.news-dot{background-color:var(--clr-border);width:10px;height:10px;margin:0 var(--space-xs);cursor:pointer;border-radius:50%;transition:background-color .3s;display:inline-block}.news-dot.active{background-color:var(--clr-primary)}.services-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}@media (min-width:1024px){.services-grid{grid-template-columns:repeat(4,1fr)}}.service-card{border:1px solid var(--clr-border);border-radius:var(--radius-md);transition:var(--transition-default);background-color:var(--clr-white);box-shadow:var(--shadow-sm);flex-direction:column;display:flex;overflow:hidden}.service-card img{object-fit:cover;border-bottom:1px solid var(--clr-border);flex-shrink:0;width:100%;height:220px}.service-card h3{padding:var(--space-sm) var(--space-sm) var(--space-md);text-align:center;color:var(--clr-primary);flex-grow:1;justify-content:center;align-items:center;margin:0;font-size:1.125rem;font-weight:600;line-height:1.4;display:flex}.service-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)scale(1.02)}.info-card-grid{gap:var(--space-md);margin-top:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.info-card{background-color:var(--clr-white);border-radius:var(--radius-md);padding:var(--space-md);box-shadow:var(--shadow-md);transition:var(--transition-default);flex-direction:column;display:flex}.info-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.contact-grid{gap:var(--space-lg);display:grid}@media (min-width:768px){.contact-grid{grid-template-columns:1fr 1fr;align-items:start}}.contact-form{flex-direction:column;width:100%;min-width:0;display:flex}.contact-form input,.contact-form textarea{width:100%;padding:var(--space-sm);margin-bottom:var(--space-sm);border:1px solid var(--clr-border);border-radius:var(--radius-sm);font-family:var(--font-sans);background-color:var(--clr-white);font-size:1rem;transition:border-color .2s,box-shadow .2s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--clr-primary);outline:none;box-shadow:0 0 0 2px #005a9c33}.contact-form-hint{color:#666;margin-bottom:var(--space-sm);font-size:.85rem;line-height:1.5}.contact-form .btn+.contact-form-hint{margin-top:var(--space-sm);margin-bottom:0}.contact-form-hint a{white-space:nowrap}.contact-info{width:100%;min-width:0}.map-container{width:100%;height:350px;margin-bottom:var(--space-md);border-radius:var(--radius-md);border:1px solid var(--clr-border);background-color:#eee;position:relative;overflow:hidden}.map-placeholder{text-align:center;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.map-preview-img{object-fit:cover;filter:blur(2px);width:100%;height:100%;position:absolute;top:0;left:0}.map-overlay{z-index:2;padding:var(--space-md);border-radius:var(--radius-md);max-width:80%;box-shadow:var(--shadow-md);background:#fffffff2;position:relative}.map-disclaimer{color:#666;margin-bottom:var(--space-sm);font-size:.85rem}#google-map-iframe{border-radius:var(--radius-md);width:100%;height:100%;min-height:350px}.visually-hidden{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lightbox{z-index:9999;opacity:0;visibility:hidden;background-color:#000000d9;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .4s,visibility .4s;display:flex;position:fixed;top:0;left:0}.lightbox.visible{opacity:1;visibility:visible;display:flex}.lightbox-content{object-fit:contain;max-width:90%;max-height:90%}.close-lightbox{color:#fff;cursor:pointer;font-size:40px;font-weight:700;transition:color .3s;position:absolute;top:20px;right:35px}.close-lightbox:hover{color:#bbb}.page-header-section{padding:var(--space-md) 0;background-color:var(--clr-bg-alt);border-bottom:1px solid var(--clr-border)}.page-title{color:var(--clr-primary);margin:var(--space-sm) 0 0;text-align:center;font-size:clamp(2rem,5vw,2.75rem)}.breadcrumbs{color:#555;margin-bottom:var(--space-xs);text-align:left;font-size:.9rem}.breadcrumbs a{color:var(--clr-primary);text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs .arrow{color:#777;margin:0 .4em}.page-hero-section{padding:var(--space-xl) 0;color:var(--clr-white);text-align:center;background-position:50%;background-size:cover;position:relative}.page-hero-section:before{content:"";z-index:1;background-color:#002846a6;position:absolute;inset:0}.page-hero-section .container{z-index:2;position:relative}.page-hero-section .page-title{color:var(--clr-white);text-shadow:2px 2px 4px #00000080;margin-top:0;font-size:clamp(.75rem,6vw,3.5rem)}.page-hero-section .breadcrumbs{color:var(--clr-white);margin-bottom:var(--space-sm);text-shadow:1px 1px 3px #00000080;text-align:center;font-size:1rem}.page-hero-section .breadcrumbs a{color:var(--clr-white)}.hero-bg-siedlungswasserwirtschaft{background-image:url(/images/leistungen/icons/siedlungswasserwirtschaft.webp)}.hero-bg-strassenbau{background-image:url(/images/leistungen/icons/strassenbau.webp)}.hero-bg-fernwaerme{background-image:url(/images/leistungen/icons/fernwaerme.webp)}.hero-bg-hydraulische-nachweise{background-image:url(/images/leistungen/icons/hydraulischenachweise.webp)}.hero-bg-baulanderschliessung{background-image:url(/images/leistungen/icons/baulanderschliessung.webp)}.hero-bg-kommunales-gis{background-image:url(/images/leistungen/icons/kommunalesgis.webp)}.hero-bg-sanierungen{background-image:url(/images/leistungen/icons/sanierungen.webp)}.hero-bg-wasserbau{background-image:url(/images/leistungen/icons/wasserbau.webp)}.hero-bg-firmengeschichte{background-image:url(/images/home/hero/slide4.webp)}.hero-bg-stellenangebote{background-image:url(/images/team/team-header2.webp);background-position:50% 32%}.hero-bg-team{background-image:url(/images/team/team-header.webp);background-position:50% 40%}.hero-bg-chato{background-image:url(/images/maedchenschule-chato/Tansania5.webp)}.leistung-detail-content .intro-text{text-align:center;max-width:800px;margin:0 auto var(--space-lg) auto;color:#555;font-size:1.1rem}.service-list-grid{margin:0 0 var(--space-lg) 0;gap:var(--space-md);padding:0;list-style:none;display:grid}@media (min-width:768px){.service-list-grid{grid-template-columns:repeat(2,1fr)}}.service-list-grid li{align-items:center;gap:var(--space-sm);background:var(--clr-white);padding:var(--space-sm);border:1px solid var(--clr-border);border-radius:var(--radius-md);transition:var(--transition-default);font-size:1.05rem;font-weight:500;display:flex}.service-list-grid li:hover{box-shadow:var(--shadow-sm);border-color:var(--clr-primary);transform:translateY(-3px)}.service-list-grid li .icon-svg{color:var(--clr-primary);text-align:center;width:1em;margin-right:var(--space-xs);flex-shrink:0;font-size:1.5rem}.zertifizierung-item{align-items:flex-start;gap:var(--space);border-radius:var(--radius-md);padding:var(--space);max-width:800px;margin:var(--space-lg) auto 0 auto;background:#eef7ff;border:1px solid #bde0ff;display:flex}.zertifizierung-item .icon{color:var(--clr-primary);flex-shrink:0;margin-top:5px;font-size:2.5rem}.zertifizierung-item h4{margin-top:0;margin-bottom:var(--space-xs);font-size:1.2rem}.zertifizierung-item p{color:#555;margin:0;font-size:1rem;line-height:1.5}.portfolio-grid{gap:var(--space-md);margin-top:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.portfolio-card{background-color:var(--clr-white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:transform .3s,box-shadow .3s;overflow:hidden}.portfolio-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-8px)}.portfolio-card-link{color:inherit;text-decoration:none;display:block}.portfolio-card-inner{flex-direction:column;height:100%;display:flex}.portfolio-thumbnail{position:relative;overflow:hidden}.portfolio-thumbnail img{object-fit:cover;width:100%;height:200px;transition:transform .4s}.portfolio-card:hover .portfolio-thumbnail img{transform:scale(1.1)}.portfolio-overlay{opacity:0;background-color:#005a9cb3;place-items:center;transition:opacity .3s;display:grid;position:absolute;inset:0}.portfolio-card:hover .portfolio-overlay{opacity:1}.portfolio-overlay-icon{color:var(--clr-white);font-size:2.5rem;font-weight:700;transition:transform .3s;transform:scale(.8)}.portfolio-card:hover .portfolio-overlay-icon{transform:scale(1)}.portfolio-content{padding:var(--space-sm) var(--space);border-top:1px solid var(--clr-border);flex-grow:1}.portfolio-title{margin-top:0;margin-bottom:var(--space-xs);color:var(--clr-secondary);font-size:1.15rem}.portfolio-category{color:#666;margin:0;font-size:.85rem}.news-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.news-card{background-color:var(--clr-white);border-radius:var(--radius-md);box-shadow:var(--shadow-md);transition:var(--transition-default);flex-direction:column;display:flex;overflow:hidden}.news-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.news-card img{object-fit:cover;width:100%;height:220px}.news-card-content{padding:var(--space-md);flex-direction:column;flex-grow:1;display:flex}.news-card .news-date{color:#777;margin-bottom:var(--space-xs);font-size:.8rem;display:block}.news-card h3{margin-bottom:var(--space-sm);color:var(--clr-primary);font-size:1.2rem}.news-card p{margin-bottom:var(--space);flex-grow:1;font-size:.95rem}.news-card .btn{align-self:flex-start;margin-top:auto}.timeline{max-width:900px;padding:var(--space-md) 0;margin:0 auto;position:relative}.timeline:after{content:"";background-color:var(--clr-primary);border-radius:2px;width:4px;margin-left:-2px;position:absolute;top:0;bottom:0;left:50%}.timeline-item{opacity:0;width:50%;padding:10px 40px;transition:opacity .6s ease-out,transform .6s ease-out;position:relative;transform:translateY(30px)}.timeline-item.visible{opacity:1;transform:translateY(0)}.timeline-item:nth-child(odd){left:0}.timeline-item:nth-child(2n){left:50%}.timeline-item:after{content:"";background-color:var(--clr-primary);border:3px solid var(--clr-white);z-index:1;border-radius:50%;width:20px;height:20px;position:absolute;top:25px}.timeline-item:nth-child(odd):after{right:-10px}.timeline-item:nth-child(2n):after{left:-10px}.timeline-content{padding:var(--space);background-color:var(--clr-bg-alt);border-radius:var(--radius-md);border:1px solid var(--clr-border);box-shadow:var(--shadow-sm);position:relative}.timeline-content:before{content:" ";z-index:1;border:medium solid var(--clr-border);width:0;height:0;position:absolute;top:28px}.timeline-item:nth-child(odd) .timeline-content:before{border-width:10px 0 10px 10px;border-color:transparent transparent transparent var(--clr-border);right:-11px}.timeline-item:nth-child(2n) .timeline-content:before{border-width:10px 10px 10px 0;border-color:transparent var(--clr-border) transparent transparent;left:-11px}.timeline-content h3{color:var(--clr-primary);margin-top:0;margin-bottom:var(--space-sm);font-size:1.5rem}.timeline-content p{color:#555;margin:0;font-size:.95rem;line-height:1.6}@media screen and (max-width:768px){.timeline:after{left:20px}.timeline-item{width:100%;padding-left:50px;padding-right:15px}.timeline-item:nth-child(odd),.timeline-item:nth-child(2n){left:0}.timeline-item:after{left:10px;right:auto}.timeline-content:before,.timeline-item:nth-child(odd) .timeline-content:before,.timeline-item:nth-child(2n) .timeline-content:before{border-width:10px 10px 10px 0;border-color:transparent var(--clr-border) transparent transparent;left:-11px}}.netzwerk-section .container{max-width:900px}.netzwerk-item{align-items:center;gap:var(--space-md);padding:var(--space-md) 0;border-bottom:1px solid var(--clr-border);flex-direction:column;display:flex}.netzwerk-item:last-child{border-bottom:none}.netzwerk-logo-wrapper{margin-bottom:var(--space-sm);flex-shrink:0}.netzwerk-logo-wrapper img{object-fit:contain;width:auto;max-width:250px;height:auto;max-height:120px}.netzwerk-text{text-align:center}.netzwerk-text h3{color:var(--clr-secondary);margin-bottom:var(--space-xs);font-size:1.25rem}.netzwerk-text p{color:var(--clr-secondary);font-size:1rem;line-height:1.6}.netzwerk-text p a{font-weight:600}@media (min-width:768px){.netzwerk-item{text-align:left;flex-direction:row;align-items:flex-start}.netzwerk-logo-wrapper{margin-bottom:0;margin-right:var(--space-lg);width:200px}.netzwerk-text{text-align:left;flex-grow:1}}.stellenangebote-section .container{max-width:800px}.job-posting{background-color:var(--clr-white);border:2px solid var(--clr-primary);border-radius:var(--radius-lg);padding:var(--space-md);margin-bottom:var(--space-lg);box-shadow:var(--shadow-md);transition:var(--transition-default);text-align:center}.job-posting:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)scale(1.02)}.job-posting .availability{color:var(--clr-secondary);margin-bottom:var(--space-xs);font-size:1rem;font-weight:500;display:block}.job-posting .job-title{color:var(--clr-primary);margin-bottom:var(--space-sm);font-size:1.75rem;font-weight:700;text-decoration:none;display:block}.job-posting .job-title:hover{color:var(--clr-gradient-start);text-decoration:underline}.job-application-info{margin-top:var(--space-lg);text-align:center;font-size:1.1rem}.job-application-info p{margin-bottom:var(--space-sm)}.job-application-info strong{color:var(--clr-primary)}.team-grid{gap:var(--space-md);margin-top:var(--space-lg);grid-template-columns:repeat(1,1fr);display:grid}@media (min-width:576px){.team-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:768px){.team-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:992px){.team-grid{grid-template-columns:repeat(4,1fr)}}.team-member{text-align:center;background-color:var(--clr-white);padding:var(--space-sm);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:var(--transition-default);scroll-margin-top:120px}.team-member:hover{box-shadow:var(--shadow-md);transform:translateY(-5px)}.team-member-image-wrapper{width:180px;height:270px;margin:0 auto var(--space-sm);border-radius:var(--radius-sm);position:relative;overflow:hidden}.team-member img{object-fit:cover;object-position:center top;width:100%;height:100%}.team-member-info h3{color:var(--clr-primary);margin-bottom:var(--space-xs);font-size:1.15rem;font-weight:700}.team-member-info p{color:var(--clr-secondary);margin-bottom:var(--space-xs);font-size:.9rem;line-height:1.5}.team-member-info p:last-child{margin-bottom:0}.team-member-info a{word-break:break-all;font-size:.85rem}.legal-content-section,.page-content-section{padding-top:var(--space-xl);padding-bottom:var(--space-xl)}.legal-content-section .container,.page-content-section .container{max-width:900px}.legal-content-section h1,.legal-content-section h2,.entry-content h1,.entry-content h2.wp-block-heading{margin-top:var(--space-lg);margin-bottom:var(--space-sm);font-size:clamp(1.5rem,3.5vw,2rem)}.legal-content-section h1:first-child,.entry-content h1:first-child,.entry-content h2.wp-block-heading:first-child{text-align:center;margin-top:0;margin-bottom:var(--space-lg);font-size:clamp(2rem,4.5vw,2.8rem)}.legal-content-section h2#datenschutz{scroll-margin-top:100px}.legal-content-section p,.legal-content-section ul,.entry-content p{margin-bottom:var(--space-sm);font-size:1rem;line-height:1.7}.legal-content-section ul{padding-left:var(--space-md);list-style:outside}.legal-content-section ul li{margin-bottom:var(--space-xs)}.legal-content-section strong,.entry-content strong{font-weight:600}.legal-content-section a:hover{text-decoration:underline}.entry-content hr.wp-block-separator{border:none;border-top:1px solid var(--clr-border);margin:var(--space-lg) auto;opacity:.5;width:80%}.entry-content figure{margin:0 0 var(--space-lg) 0;text-align:center}.entry-content figure.wp-block-video video,.entry-content figure.wp-block-embed iframe{border:1px solid var(--clr-border);border-radius:var(--radius-sm);max-width:100%;margin-left:auto;margin-right:auto;display:block}.entry-content figure.wp-block-video video{background-color:#000}.entry-content figure.wp-block-embed .wp-block-embed__wrapper{border-radius:var(--radius-sm);background:#f0f0f0;max-width:100%;height:0;padding-bottom:56.25%;position:relative;overflow:hidden}.entry-content figure.wp-block-embed iframe{border:0;width:100%;height:100%;position:absolute;top:0;left:0}.entry-content figcaption,.entry-content .wp-element-caption{color:#555;margin-top:var(--space-xs);text-align:center;font-size:.9rem}.entry-content figcaption sup,.entry-content .wp-element-caption sup{font-size:.8em}.entry-content .wp-block-table{margin:var(--space-md) 0;border-collapse:collapse;width:100%}.entry-content .wp-block-table.alignleft{max-width:600px;margin-left:0;margin-right:auto}.entry-content .wp-block-table th,.entry-content .wp-block-table td{border:1px solid var(--clr-border);padding:var(--space-sm);text-align:left;vertical-align:top}.entry-content .wp-block-table thead th{background-color:var(--clr-bg-alt);font-weight:600}.entry-content .wp-block-table.is-style-stripes tbody tr:nth-child(odd){background-color:var(--clr-bg-alt)}.entry-content .wp-block-image{margin-top:var(--space-sm);margin-bottom:var(--space-md)}.entry-content .wp-block-image.aligncenter,.entry-content figure.aligncenter{flex-direction:column;justify-content:center;align-items:center;display:flex}.entry-content .wp-block-image img{border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.project-detail-wrapper{padding:var(--space-xl) 0}.project-detail-layout{gap:var(--space-lg);grid-template-columns:1fr;align-items:stretch;display:grid}@media (min-width:992px){.project-detail-layout{gap:var(--space-xl);grid-template-columns:1.2fr 1fr}}.project-main-image{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.project-main-image img{object-fit:cover;width:100%;height:100%}.project-main-details{padding:var(--space-md);border:1px solid var(--clr-border);border-radius:var(--radius-lg);flex-direction:column;justify-content:center;display:flex}.project-main-details h1{color:var(--clr-primary);margin-bottom:var(--space-md);font-size:clamp(1.75rem,4vw,2.25rem);line-height:1.2}.project-detail-item{margin-bottom:var(--space-md)}.project-detail-item h3{color:var(--clr-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-xs);padding-bottom:var(--space-xs);border-bottom:1px solid var(--clr-border);font-size:.9rem;font-weight:700}.project-detail-item p,.project-detail-item ul{color:#555;margin:0;padding:0;font-size:.95rem}.project-detail-item ul{list-style:none}.project-detail-item ul li{margin-bottom:.3rem;padding-left:1.2em;position:relative}.project-detail-item ul li:before{content:"■";color:var(--clr-primary);font-size:.8em;position:absolute;top:5px;left:0}.project-gallery-wrapper{padding-top:var(--space-xl);margin-top:var(--space-xl);border-top:1px solid var(--clr-border)}.project-gallery-title{text-align:center;margin-bottom:var(--space-lg);font-size:clamp(1.5rem,4vw,2.25rem)}.slideshow-container{max-width:1000px;margin:auto;position:relative}.mySlides{border-radius:var(--radius-md);display:none;overflow:hidden}.mySlides img{vertical-align:middle;aspect-ratio:16/9;object-fit:cover;width:100%}.prev,.next{cursor:pointer;color:#fff;-webkit-user-select:none;user-select:none;background-color:#00000080;border-radius:0 3px 3px 0;width:auto;margin-top:-22px;padding:16px;font-size:20px;font-weight:700;transition:all .6s;position:absolute;top:50%}.next{border-radius:3px 0 0 3px;right:0}.prev:hover,.next:hover{background-color:#000c}.numbertext{color:#f2f2f2;border-radius:0 0 var(--radius-sm) 0;background-color:#00000080;padding:8px 12px;font-size:12px;position:absolute;top:0}.thumbnail-row{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px;display:flex}.thumbnail{cursor:pointer;opacity:.6;border-radius:var(--radius-sm);width:auto;height:80px;transition:opacity .3s}.active-thumbnail,.thumbnail:hover{opacity:1}.fade{animation-name:fade;animation-duration:1.5s}@keyframes fade{0%{opacity:.4}to{opacity:1}}.article-body{color:#333;font-size:1.05rem;line-height:1.8}.article-body p{margin-bottom:1.5rem}.article-body h2,.article-body h3{color:var(--clr-primary);margin-top:2.5rem;margin-bottom:1rem}.article-body a{text-decoration:underline}.article-body img{border-radius:var(--radius-sm);max-width:100%;height:auto;margin:1.5rem 0}.article-body video{border-radius:var(--radius-sm);width:100%;height:auto}.article-body .aligncenter{margin-left:auto;margin-right:auto;display:block}.article-body .alignleft{float:left;margin-bottom:1rem;margin-right:1.5rem}.article-body .alignright{float:right;margin-bottom:1rem;margin-left:1.5rem}.hero-bg-standorte{background-image:url(/images/home/hero/slide3.webp)}.locations-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;display:grid}.location-card{background-color:var(--clr-white);border-radius:var(--radius-md);box-shadow:var(--shadow-md);border:1px solid var(--clr-border);transition:var(--transition-default);flex-direction:column;height:100%;display:flex;overflow:hidden}.location-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.location-card.main-location{border-top:5px solid var(--clr-primary);grid-column:1/-1}@media (min-width:992px){.location-card.main-location{grid-area:span 1}}.location-header{padding:var(--space-md);border-bottom:1px solid var(--clr-bg-alt);justify-content:space-between;align-items:center;display:flex}.location-header h3{color:var(--clr-primary);margin:0;font-size:1.25rem}.badge{background-color:var(--clr-primary);color:#fff;text-transform:uppercase;border-radius:12px;padding:2px 8px;font-size:.75rem;font-weight:700}.location-body{padding:var(--space-md);color:var(--clr-secondary);flex-grow:1;font-size:1rem}.contact-row{align-items:flex-start;gap:var(--space-sm);margin-bottom:var(--space-md);display:flex}.contact-row:last-child{margin-bottom:0}.contact-row .icon-svg{color:var(--clr-primary);flex-shrink:0;margin-top:4px;font-size:1.2rem}.contact-row address{font-style:normal;line-height:1.5}.contact-row a{color:var(--clr-secondary);text-decoration:none;transition:color .2s}.contact-row a:hover{color:var(--clr-primary)}.location-footer{padding:var(--space-sm) var(--space-md);background-color:var(--clr-bg-alt);border-top:1px solid var(--clr-border);text-align:right}.flash-messages-container{z-index:10000;width:90%;max-width:500px;position:fixed;top:90px;left:50%;transform:translate(-50%)}.alert{padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-sm);border-radius:var(--radius-sm);color:var(--clr-white);box-shadow:var(--shadow-lg);opacity:0;border:1px solid #0000;justify-content:space-between;align-items:center;font-weight:600;animation:.5s ease-out forwards fadeInSlideDown;display:flex;transform:translateY(-20px)}@keyframes fadeInSlideDown{to{opacity:1;transform:translateY(0)}}.alert-success{background-color:#28a745;border-color:#28a745}.alert-error{background-color:#dc3545;border-color:#dc3545}.close-flash{color:var(--clr-white);opacity:.8;cursor:pointer;margin-left:var(--space);font-size:1.5rem;font-weight:700;line-height:1;transition:opacity .2s}.close-flash:hover{opacity:1}.chato-thumb.active{outline:3px solid #5d8a66;opacity:1!important}.thumbnail-bar::-webkit-scrollbar{height:6px}.thumbnail-bar::-webkit-scrollbar-thumb{background:#ccc;border-radius:10px}
