*{margin:0;padding:0;box-sizing:border-box}:root{--brand:#059383;--brand2:#047a6f;--ink:#111827;--muted:#667085;--bg:#f7faf9;--card:#fff;--line:#e5ecea;--dark:#071112;--shadow:0 20px 60px rgba(15,23,42,.10)}@media(prefers-color-scheme:dark){:root{--ink:#f4f7f6;--muted:#c3cecb;--bg:#091112;--card:#111b1d;--line:#263436;--dark:#050909;--shadow:0 20px 60px rgba(0,0,0,.35)}}html[data-theme=light]{--ink:#111827;--muted:#667085;--bg:#f7faf9;--card:#fff;--line:#e5ecea;--dark:#071112;--shadow:0 20px 60px rgba(15,23,42,.10)}html[data-theme=dark]{--ink:#f4f7f6;--muted:#c3cecb;--bg:#091112;--card:#111b1d;--line:#263436;--dark:#050909;--shadow:0 20px 60px rgba(0,0,0,.35)}body{font-family:Inter,sans-serif;background:var(--bg);color:var(--ink);line-height:1.65}h1,h2,h3,h4,.btn,.brand,.desktop-nav a{font-family:'Plus Jakarta Sans',sans-serif}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.container{width:min(1180px,92%);margin:auto}.page-loader{position:fixed;inset:0;background:var(--card);z-index:99999;display:flex;align-items:center;justify-content:center;gap:14px;transition:.45s}.page-loader.hide{opacity:0;visibility:hidden}.page-loader img{width:130px;animation:spin 1.3s linear infinite}.page-loader span{font-weight:800}@keyframes spin{to{transform:rotate(360deg)}}.topbar{background:var(--dark);color:#d7eeee;font-size:13px}.topbar-inner{height:38px;display:flex;align-items:center;justify-content:flex-end;gap:22px}.topbar a{color:#fff}.topbar i{color:var(--brand);margin-right:6px}.main-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.82);backdrop-filter:blur(20px);border-bottom:1px solid var(--line)}html[data-theme=dark] .main-header{background:rgba(9,17,18,.86)}.nav-shell{height:92px;display:flex;align-items:center;gap:28px}.brand img{height:78px;width:auto}.desktop-nav{display:flex;gap:8px;margin-left:auto;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:6px}.desktop-nav a{padding:10px 15px;border-radius:999px;font-weight:800;font-size:14px}.desktop-nav a:hover,.desktop-nav a.active{background:var(--brand);color:#fff}.nav-actions{display:flex;align-items:center;gap:10px}.theme-toggle,.mobile-toggle{height:44px;width:44px;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--brand);display:grid;place-items:center;cursor:pointer}.mobile-toggle{display:none;background:var(--brand);border:none;gap:5px;flex-direction:column}.mobile-toggle span{width:22px;height:3px;border-radius:5px;background:#fff;transition:.25s}.mobile-toggle.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.mobile-toggle.open span:nth-child(2){opacity:0}.mobile-toggle.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.mobile-panel{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--brand);color:#fff!important;border-radius:14px;padding:14px 22px;font-weight:900;box-shadow:0 12px 30px rgba(5,147,131,.22);border:0;transition:.25s}.btn:hover{transform:translateY(-3px);background:var(--brand2)}.btn.small{padding:11px 16px;border-radius:12px}.btn.outline{background:transparent;border:1px solid rgba(255,255,255,.6);box-shadow:none}.btn.white{background:#fff;color:#111!important}.white-outline{border-color:#fff!important;color:#fff!important}.new-hero{padding:86px 0 70px;background:radial-gradient(circle at 75% 20%,rgba(5,147,131,.16),transparent 30%),linear-gradient(180deg,var(--bg),var(--card))}.hero-layout{display:grid;grid-template-columns:1fr .95fr;gap:70px;align-items:center}.pill{display:inline-flex;align-items:center;gap:8px;background:rgba(5,147,131,.11);color:var(--brand);border:1px solid rgba(5,147,131,.18);border-radius:999px;padding:8px 13px;font-weight:900;font-size:13px}.pill.light{background:var(--card)}.hero-copy h1{font-size:clamp(52px,7vw,94px);letter-spacing:-.06em;line-height:.93;margin:20px 0;color:var(--ink)}.hero-copy p{font-size:20px;color:var(--muted);max-width:650px}.hero-buttons{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0}.mini-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:32px}.mini-proof div{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow)}.mini-proof strong{font-size:32px;color:var(--brand);display:block;font-weight:900}.mini-proof span{font-size:13px;font-weight:800;color:var(--muted)}.hero-visual{position:relative}.hero-image-stack{position:relative;min-height:560px}.main-img{height:520px;width:86%;object-fit:cover;border-radius:34px;box-shadow:var(--shadow);margin-left:auto}.floating-img{position:absolute;width:280px;height:210px;object-fit:cover;border-radius:26px;box-shadow:var(--shadow);left:0;bottom:0;border:8px solid var(--bg)}.floating-card{position:absolute;right:0;bottom:54px;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:18px 20px;display:flex;gap:12px;align-items:center;font-weight:900;box-shadow:var(--shadow)}.floating-card i{color:#fff;background:var(--brand);width:34px;height:34px;border-radius:50%;display:grid;place-items:center}.quick-services{margin-top:-18px;position:relative;z-index:5}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;background:var(--dark);border-radius:28px;padding:16px;box-shadow:var(--shadow)}.quick-grid a{color:#fff;display:flex;align-items:center;gap:12px;padding:18px;border-radius:18px;font-weight:900}.quick-grid a:hover{background:rgba(255,255,255,.10)}.quick-grid i{color:var(--brand);font-size:22px}.section{padding:90px 0}.intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.intro-grid h2,.section-title h2,.ref-layout h2{font-size:clamp(34px,4.6vw,64px);line-height:1.02;letter-spacing:-.045em}.intro-grid p,.section-title p,.ref-layout p{color:var(--muted);margin-bottom:18px}.section-title{text-align:center;max-width:780px;margin:0 auto 44px}.service-showcase{background:var(--card)}.showcase-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.showcase-grid article{background:var(--bg);border:1px solid var(--line);border-radius:28px;overflow:hidden;display:grid;grid-template-columns:210px 1fr;box-shadow:var(--shadow);transition:.25s}.showcase-grid article:hover{transform:translateY(-6px)}.showcase-grid img{height:100%;min-height:250px;width:100%;object-fit:cover}.showcase-grid article div{padding:28px}.showcase-grid span{font-size:14px;color:var(--brand);font-weight:900}.showcase-grid h3{font-size:30px;margin:6px 0}.showcase-grid p{color:var(--muted)}.showcase-grid a{display:inline-block;margin-top:16px;color:var(--brand);font-weight:900}.process-clean{background:var(--bg)}.process-line{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.process-line div{background:var(--card);border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:var(--shadow)}.process-line b{color:var(--brand);font-size:34px}.process-line p{color:var(--muted)}.reference-strip{background:var(--dark);color:#fff}.ref-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}.ref-layout p{color:#c8d7d4}.ref-images{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ref-images img{height:380px;object-fit:cover;border-radius:28px}.ref-images img:nth-child(2){margin-top:60px}.city-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.city-grid a,.mini-service{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:15px;text-align:center;font-weight:900;box-shadow:0 10px 30px rgba(0,0,0,.04)}.city-grid a:hover,.mini-service:hover{background:var(--brand);color:#fff}.map-clean{padding:40px 0 90px}.map-card{background:var(--card);border:1px solid var(--line);border-radius:30px;padding:18px;display:grid;grid-template-columns:.7fr 1.3fr;gap:22px;box-shadow:var(--shadow)}.map-card>div{padding:34px}.map-card h2{font-size:40px}.map-card p{color:var(--muted);margin:10px 0 24px}.map-card iframe{width:100%;height:360px;border:0;border-radius:22px}.final-cta-clean{background:linear-gradient(135deg,var(--brand),var(--brand2));padding:95px 0;text-align:center;color:#fff}.final-cta-clean h2{font-size:clamp(40px,6vw,76px);line-height:.98}.final-cta-clean p{margin:16px 0 28px;color:#e9fffb}.sub-hero{padding:90px 0;background:radial-gradient(circle at 80% 10%,rgba(5,147,131,.18),transparent 35%),var(--card)}.sub-hero h1{font-size:clamp(44px,6vw,78px);letter-spacing:-.055em;line-height:.95;margin:18px 0}.sub-hero p{color:var(--muted);max-width:760px;font-size:20px}.check-list{list-style:none;margin:20px 0}.check-list li{padding:12px 0;border-bottom:1px solid var(--line)}.check-list li:before{content:"✓";color:var(--brand);font-weight:900;margin-right:10px}.contact-new{display:grid;grid-template-columns:.8fr 1.2fr;gap:34px}.contact-info-card,.contact-form,.reference-card,.faq-item{background:var(--card);border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:var(--shadow)}.contact-info-card a,.contact-info-card p{display:flex;gap:10px;align-items:center;margin:14px 0;font-weight:800}.contact-info-card i{color:var(--brand)}input,select,textarea{width:100%;padding:15px;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:14px;font-family:inherit}.contact-form{display:grid;gap:14px}.privacy input{width:auto;margin-right:8px}.references-filter{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-bottom:34px}.filter-btn{border:1px solid var(--line);background:var(--card);color:var(--ink);padding:11px 18px;border-radius:999px;font-weight:900;cursor:pointer}.filter-btn.active,.filter-btn:hover{background:var(--brand);color:#fff}.references-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.reference-card{overflow:hidden;padding:0;cursor:pointer}.reference-card.hide{display:none}.reference-card img{height:230px;width:100%;object-fit:cover}.reference-content{padding:20px}.reference-tag{color:var(--brand);font-weight:900}.gallery-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.86);z-index:99999;display:none;align-items:center;justify-content:center;padding:24px}.gallery-lightbox.open{display:flex}.gallery-lightbox-content{max-width:1000px;background:var(--card);border-radius:24px;overflow:hidden;position:relative}.gallery-lightbox img{width:100%;max-height:70vh;object-fit:cover}.gallery-lightbox-text{padding:24px}.lightbox-close{position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:50%;border:0;background:#fff;font-size:26px}.city-service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.mini-service{display:flex;flex-direction:column;gap:10px;align-items:center}.mini-service i{font-size:28px;color:var(--brand)}.new-footer{background:var(--dark);color:#fff;padding:70px 0 24px}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:36px}.footer-brand img{width:190px;background:#fff;padding:10px;border-radius:16px;margin-bottom:18px}.new-footer p,.new-footer a{color:#c9d7d4;display:block;margin:9px 0}.new-footer h4{font-size:18px;margin-bottom:16px}.footer-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.footer-badges span{background:rgba(255,255,255,.08);padding:7px 10px;border-radius:999px;font-size:12px;font-weight:900}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:42px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#c9d7d4;font-size:14px}.cookie-banner{position:fixed;left:20px;right:20px;bottom:20px;background:var(--dark);color:#fff;padding:16px 18px;border-radius:18px;display:flex;justify-content:space-between;align-items:center;gap:16px;z-index:999;box-shadow:var(--shadow)}.cookie-banner.hide{display:none}.cookie-banner a{color:#9ff5e8}.sticky-mobile-leadbar{display:none}.reveal{opacity:0;transform:translateY(28px);transition:.7s}.reveal.visible{opacity:1;transform:translateY(0)}@media(max-width:980px){.topbar{display:none}.nav-shell{height:82px}.brand img{height:72px}.desktop-nav,.desktop-cta{display:none}.mobile-toggle{display:flex}.nav-actions{margin-left:auto}.mobile-panel{display:block;position:fixed;left:0;right:0;top:82px;bottom:0;background:var(--card);z-index:999;transform:translateX(100%);transition:.28s;padding:26px;overflow:auto}.mobile-panel.open{transform:translateX(0)}.mobile-panel nav{display:grid;gap:6px}.mobile-panel nav a{font-family:'Plus Jakarta Sans';font-size:28px;font-weight:900;padding:16px;border-bottom:1px solid var(--line)}.mobile-contact-box{margin-top:28px;background:var(--bg);border:1px solid var(--line);border-radius:24px;padding:18px;display:grid;gap:12px}.mobile-contact-box a{font-weight:900}.mobile-contact-box i{color:var(--brand);margin-right:8px}.hero-layout,.intro-grid,.ref-layout,.map-card,.contact-new,.footer-main{grid-template-columns:1fr}.new-hero{padding:54px 0}.hero-copy h1{font-size:clamp(42px,14vw,64px)}.hero-visual{display:none}.mini-proof,.quick-grid,.showcase-grid,.process-line,.city-grid,.references-grid,.city-service-grid{grid-template-columns:1fr}.quick-grid{border-radius:0;width:100%;max-width:none}.showcase-grid article{grid-template-columns:1fr}.ref-images{grid-template-columns:1fr}.ref-images img,.ref-images img:nth-child(2){height:260px;margin-top:0}.map-card iframe{height:300px}.footer-bottom{flex-direction:column}.sticky-mobile-leadbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:1100}.sticky-mobile-leadbar a{flex:1;text-align:center;padding:13px 8px;background:var(--brand);color:#fff;font-weight:900}.sticky-mobile-leadbar a:last-child{background:#25d366}body{padding-bottom:54px}.cookie-banner{bottom:66px;flex-direction:column;align-items:flex-start}}@media(max-width:560px){.brand img{height:64px}.section{padding:64px 0}.quick-services{margin-top:0}.city-grid{grid-template-columns:1fr 1fr}.cookie-banner{left:10px;right:10px}.footer-brand img{width:170px}}
/* Mobile service cards fix: keep Leistungen text separated from images like desktop */
@media(max-width:980px){
  .service-showcase .showcase-grid{gap:16px}
  .service-showcase .showcase-grid article{grid-template-columns:170px 1fr!important;align-items:stretch;background:var(--bg);position:relative;overflow:hidden}
  .service-showcase .showcase-grid article img{width:100%;height:100%!important;min-height:210px;object-fit:cover;position:relative;z-index:1}
  .service-showcase .showcase-grid article div{position:relative;z-index:2;background:var(--bg);padding:22px 20px;display:flex;flex-direction:column;justify-content:center}
  .service-showcase .showcase-grid h3{font-size:25px;line-height:1.05;margin:5px 0 8px}
  .service-showcase .showcase-grid p{font-size:15px;line-height:1.45;margin:0}
  .service-showcase .showcase-grid a{margin-top:12px}
}
@media(max-width:560px){
  .service-showcase .showcase-grid article{grid-template-columns:118px 1fr!important;border-radius:22px}
  .service-showcase .showcase-grid article img{min-height:176px}
  .service-showcase .showcase-grid article div{padding:16px 14px}
  .service-showcase .showcase-grid span{font-size:12px}
  .service-showcase .showcase-grid h3{font-size:20px;letter-spacing:-.03em}
  .service-showcase .showcase-grid p{font-size:13px;line-height:1.38}
  .service-showcase .showcase-grid a{font-size:13px;margin-top:10px}
}

/* Mobile hero slider + centered mobile nav icon fix */
.mobile-hero-slider{display:none}
.mobile-toggle{padding:0;line-height:1;align-items:center;justify-content:center;overflow:hidden}
.mobile-toggle span{display:block;flex:0 0 auto;transform-origin:center center}
@media(max-width:980px){
  .mobile-toggle{display:flex!important;position:relative;align-items:center!important;justify-content:center!important;gap:0!important}
  .mobile-toggle span{position:absolute;left:11px;width:22px;height:3px;border-radius:99px;background:#fff;transition:top .22s ease,transform .22s ease,opacity .18s ease}
  .mobile-toggle span:nth-child(1){top:13.5px}
  .mobile-toggle span:nth-child(2){top:20.5px}
  .mobile-toggle span:nth-child(3){top:27.5px}
  .mobile-toggle.open span:nth-child(1){top:20.5px;transform:rotate(45deg)}
  .mobile-toggle.open span:nth-child(2){top:20.5px;opacity:0;transform:scaleX(.2)}
  .mobile-toggle.open span:nth-child(3){top:20.5px;transform:rotate(-45deg)}
  .mobile-hero-slider{display:block;position:relative;width:100%;margin:26px auto 0;border-radius:28px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line);background:var(--card)}
  .mobile-hero-track{display:flex;width:300%;height:330px;transition:transform .55s cubic-bezier(.22,1,.36,1);will-change:transform}
  .mobile-hero-track img{width:33.333%;height:100%;object-fit:cover;flex:0 0 33.333%}
  .mobile-slider-dots{position:absolute;left:0;right:0;bottom:14px;display:flex;justify-content:center;gap:8px;z-index:2}
  .mobile-slider-dots span{width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.62);box-shadow:0 2px 8px rgba(0,0,0,.18);transition:width .25s ease,background .25s ease}
  .mobile-slider-dots span.active{width:28px;background:#fff}
}
@media(max-width:560px){
  .mobile-hero-slider{border-radius:24px;margin-top:22px}
  .mobile-hero-track{height:255px}
}

/* Final premium header/nav/footer refresh - slider removed */
.mobile-hero-slider,.mobile-hero-track,.mobile-slider-dots{display:none!important}
.main-header{box-shadow:0 14px 42px rgba(7,20,27,.07);border-bottom:1px solid rgba(5,147,131,.12)}
.nav-shell{height:104px;gap:30px}.brand{display:flex;align-items:center;border-radius:22px;transition:transform .25s ease,filter .25s ease}.brand:hover{transform:translateY(-1px);filter:drop-shadow(0 10px 18px rgba(5,147,131,.14))}.brand img{height:92px;width:auto;object-fit:contain}.desktop-nav{padding:7px;background:rgba(255,255,255,.74);backdrop-filter:blur(16px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.38),0 14px 34px rgba(7,20,27,.065)}html[data-theme=dark] .desktop-nav{background:rgba(17,27,29,.72)}.desktop-nav a{position:relative;padding:12px 16px;transition:background .22s ease,color .22s ease,transform .22s ease}.desktop-nav a:hover,.desktop-nav a.active{transform:translateY(-1px);box-shadow:0 10px 24px rgba(5,147,131,.22)}.theme-toggle{border-radius:16px;background:linear-gradient(180deg,var(--card),rgba(5,147,131,.06));box-shadow:0 12px 28px rgba(7,20,27,.07);transition:transform .22s ease,border-color .22s ease}.theme-toggle:hover{transform:translateY(-2px);border-color:rgba(5,147,131,.35)}
.mobile-toggle{width:50px;height:50px;border-radius:18px;background:linear-gradient(135deg,var(--brand),#05b99f);box-shadow:0 16px 34px rgba(5,147,131,.28);padding:0!important;position:relative;align-items:center!important;justify-content:center!important;gap:0!important;overflow:visible}.mobile-toggle:before{content:"";position:absolute;inset:-5px;border-radius:23px;background:rgba(5,147,131,.13);z-index:-1}.mobile-toggle span{position:absolute!important;left:14px!important;width:22px!important;height:2.6px!important;border-radius:999px!important;background:#fff!important;transform-origin:center!important;transition:top .22s ease,transform .22s ease,opacity .16s ease,width .22s ease!important}.mobile-toggle span:nth-child(1){top:16px!important}.mobile-toggle span:nth-child(2){top:23.5px!important;width:17px!important;left:19px!important}.mobile-toggle span:nth-child(3){top:31px!important}.mobile-toggle.open span:nth-child(1){top:23.5px!important;left:14px!important;width:22px!important;transform:rotate(45deg)!important}.mobile-toggle.open span:nth-child(2){top:23.5px!important;opacity:0!important;transform:scaleX(.2)!important}.mobile-toggle.open span:nth-child(3){top:23.5px!important;left:14px!important;width:22px!important;transform:rotate(-45deg)!important}
.new-footer{position:relative;overflow:hidden;background:radial-gradient(circle at 16% 0%,rgba(5,147,131,.24),transparent 30%),linear-gradient(135deg,#061112,#0d2020);padding:78px 0 26px}.new-footer:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.04),transparent 36%,rgba(5,147,131,.08));pointer-events:none}.footer-main,.footer-bottom{position:relative;z-index:1}.footer-brand img{width:220px;border-radius:22px;padding:12px;box-shadow:0 18px 44px rgba(0,0,0,.22)}.new-footer h4{color:#fff;font-size:19px;letter-spacing:-.02em}.new-footer a{transition:color .2s ease,transform .2s ease}.new-footer a:hover{color:#9ff5e8;transform:translateX(3px)}.footer-badges span{background:rgba(5,147,131,.16);border:1px solid rgba(159,245,232,.16);color:#e9fffb;padding:8px 12px}.footer-bottom{border-top-color:rgba(159,245,232,.16);align-items:center}
@media(max-width:980px){.main-header{background:rgba(255,255,255,.9)}html[data-theme=dark] .main-header{background:rgba(9,17,18,.92)}.nav-shell{height:92px}.brand img{height:84px}.mobile-panel{top:92px;background:linear-gradient(180deg,var(--card),var(--bg));box-shadow:0 30px 70px rgba(7,20,27,.22)}.mobile-panel nav a{border:1px solid var(--line);border-radius:18px;margin-bottom:8px;background:var(--card);box-shadow:0 10px 24px rgba(7,20,27,.045);font-size:24px}.mobile-panel nav a.active,.mobile-panel nav a:hover{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;border-color:transparent}.hero-visual{display:block;margin-top:26px}.hero-image-stack{min-height:auto}.main-img{width:100%;height:300px;margin:0;border-radius:28px}.floating-img,.floating-card{display:none}.footer-main{gap:26px}.footer-brand img{width:205px}}
@media(max-width:560px){.nav-shell{height:86px;width:min(100% - 24px,1180px)}.brand img{height:78px}.mobile-toggle{width:48px;height:48px;border-radius:17px}.mobile-toggle span:nth-child(1){top:15px!important}.mobile-toggle span:nth-child(2){top:22.5px!important}.mobile-toggle span:nth-child(3){top:30px!important}.mobile-toggle.open span:nth-child(1),.mobile-toggle.open span:nth-child(2),.mobile-toggle.open span:nth-child(3){top:22.5px!important}.mobile-panel{top:86px;padding:22px 16px}.main-img{height:255px;border-radius:24px}.footer-brand img{width:190px}.new-footer{text-align:left;padding-bottom:84px}}

/* Premium Leistungen Cards + robust mobile nav drawer fix */
.service-showcase{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--card),var(--bg))}.service-showcase:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 8%,rgba(5,147,131,.10),transparent 30%),radial-gradient(circle at 90% 20%,rgba(5,185,159,.08),transparent 28%);pointer-events:none}.service-showcase .container{position:relative;z-index:1}.service-showcase .showcase-grid{gap:26px}.service-showcase .showcase-grid article{position:relative;isolation:isolate;background:linear-gradient(180deg,var(--card),var(--bg));border:1px solid rgba(5,147,131,.14);border-radius:32px;overflow:hidden;display:grid;grid-template-columns:220px 1fr;box-shadow:0 18px 54px rgba(7,20,27,.10);transition:transform .32s cubic-bezier(.22,1,.36,1),box-shadow .32s ease,border-color .32s ease}.service-showcase .showcase-grid article:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,rgba(5,147,131,.45),rgba(255,255,255,0),rgba(5,185,159,.28));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:3}.service-showcase .showcase-grid article:hover{transform:translateY(-9px);box-shadow:0 28px 80px rgba(7,20,27,.16);border-color:rgba(5,147,131,.32)}.service-showcase .showcase-grid article img{width:100%;height:100%;min-height:270px;object-fit:cover;position:relative;z-index:1;transition:transform .55s cubic-bezier(.22,1,.36,1),filter .35s ease}.service-showcase .showcase-grid article:hover img{transform:scale(1.06);filter:saturate(1.08) contrast(1.02)}.service-showcase .showcase-grid article div{position:relative;z-index:2;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(247,250,249,.98));padding:30px;display:flex;flex-direction:column;justify-content:center;min-width:0}html[data-theme=dark] .service-showcase .showcase-grid article div{background:linear-gradient(180deg,rgba(17,27,29,.96),rgba(9,17,18,.98))}.service-showcase .showcase-grid span{width:max-content;background:rgba(5,147,131,.11);border:1px solid rgba(5,147,131,.18);color:var(--brand);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;letter-spacing:.06em}.service-showcase .showcase-grid h3{font-size:31px;letter-spacing:-.04em;line-height:1.04;margin:14px 0 10px}.service-showcase .showcase-grid p{color:var(--muted);font-size:16px;line-height:1.58;margin:0}.service-showcase .showcase-grid a{width:max-content;margin-top:18px;color:#fff;background:linear-gradient(135deg,var(--brand),var(--brand2));border-radius:999px;padding:10px 15px;font-weight:900;box-shadow:0 12px 28px rgba(5,147,131,.22);transition:transform .22s ease,box-shadow .22s ease}.service-showcase .showcase-grid a:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(5,147,131,.30)}
@media(max-width:980px){body.nav-open{overflow:hidden}.main-header{z-index:2000}.mobile-toggle{z-index:2020}.mobile-panel{display:block!important;position:fixed!important;top:0!important;right:0!important;left:auto!important;bottom:0!important;width:min(88vw,430px)!important;height:100dvh!important;max-height:100dvh!important;padding:calc(env(safe-area-inset-top) + 108px) 18px calc(env(safe-area-inset-bottom) + 96px)!important;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,250,249,.98))!important;border-left:1px solid rgba(5,147,131,.14);box-shadow:-28px 0 80px rgba(7,20,27,.25)!important;z-index:1998!important;transform:translateX(110%)!important;transition:transform .34s cubic-bezier(.22,1,.36,1)!important;overflow-y:auto!important;overscroll-behavior:contain!important}html[data-theme=dark] .mobile-panel{background:linear-gradient(180deg,rgba(17,27,29,.98),rgba(9,17,18,.98))!important}.mobile-panel.open{transform:translateX(0)!important}.mobile-panel:before{content:"Menü";position:absolute;top:calc(env(safe-area-inset-top) + 24px);left:20px;font-family:'Plus Jakarta Sans',sans-serif;font-size:28px;font-weight:900;letter-spacing:-.04em;color:var(--ink)}.mobile-panel nav{display:grid!important;gap:10px!important;margin:0!important}.mobile-panel nav a{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:58px!important;padding:16px 18px!important;border:1px solid var(--line)!important;border-radius:20px!important;margin:0!important;background:var(--card)!important;box-shadow:0 12px 28px rgba(7,20,27,.06)!important;font-size:23px!important;line-height:1.05!important}.mobile-panel nav a:after{content:"›";font-size:28px;color:var(--brand);line-height:1}.mobile-panel nav a.active,.mobile-panel nav a:hover{background:linear-gradient(135deg,var(--brand),var(--brand2))!important;color:#fff!important;border-color:transparent!important}.mobile-panel nav a.active:after,.mobile-panel nav a:hover:after{color:#fff}.mobile-contact-box{margin-top:18px!important;margin-bottom:0!important;border-radius:22px!important;padding:14px!important;gap:10px!important}.mobile-contact-box a{min-height:46px;padding:10px 12px;border-radius:15px;background:var(--card);display:flex!important;align-items:center!important;line-height:1.25}.mobile-toggle{width:52px!important;height:52px!important;border-radius:19px!important}.mobile-toggle span{left:50%!important;transform:translateX(-50%)!important;width:23px!important;height:2.7px!important}.mobile-toggle span:nth-child(1){top:17px!important}.mobile-toggle span:nth-child(2){top:24.5px!important;width:17px!important;left:50%!important}.mobile-toggle span:nth-child(3){top:32px!important}.mobile-toggle.open span:nth-child(1){top:24.5px!important;left:50%!important;width:23px!important;transform:translateX(-50%) rotate(45deg)!important}.mobile-toggle.open span:nth-child(2){top:24.5px!important;left:50%!important;opacity:0!important;transform:translateX(-50%) scaleX(.2)!important}.mobile-toggle.open span:nth-child(3){top:24.5px!important;left:50%!important;width:23px!important;transform:translateX(-50%) rotate(-45deg)!important}.service-showcase .showcase-grid{grid-template-columns:1fr!important;gap:22px}.service-showcase .showcase-grid article{grid-template-columns:200px 1fr!important;border-radius:28px}.service-showcase .showcase-grid article img{min-height:230px!important}.service-showcase .showcase-grid article div{padding:24px!important}.service-showcase .showcase-grid h3{font-size:28px}.service-showcase .showcase-grid p{font-size:15px}}
@media(max-width:640px){.mobile-panel{width:100vw!important;border-left:0;padding-left:16px!important;padding-right:16px!important}.service-showcase .showcase-grid article{display:flex!important;flex-direction:column!important;border-radius:28px!important}.service-showcase .showcase-grid article img{height:215px!important;min-height:215px!important;width:100%!important}.service-showcase .showcase-grid article div{padding:22px 20px 24px!important;background:var(--card)!important}.service-showcase .showcase-grid span{font-size:11px}.service-showcase .showcase-grid h3{font-size:27px;margin:12px 0 8px}.service-showcase .showcase-grid p{font-size:15px;line-height:1.5}.service-showcase .showcase-grid a{margin-top:16px;width:100%;justify-content:center;text-align:center}.mobile-panel nav a{font-size:22px!important;min-height:56px!important}.mobile-contact-box{margin-bottom:12px!important}}
@media(prefers-reduced-motion:reduce){.service-showcase .showcase-grid article,.service-showcase .showcase-grid article img,.service-showcase .showcase-grid a,.mobile-panel{transition:none!important}}

/* Premium footer upgrade - legal links fixed inline */
.new-footer{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 14% -10%, rgba(5,147,131,.34), transparent 34%),
    radial-gradient(circle at 92% 18%, rgba(159,245,232,.12), transparent 28%),
    linear-gradient(135deg,#050d0f 0%,#0a1b1d 54%,#061112 100%);
}
.new-footer:after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(159,245,232,.45),transparent);
}
.footer-main{
  align-items:start;
}
.footer-main > div:not(.footer-brand){
  padding:22px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:24px;
  background:rgba(255,255,255,.035);
  box-shadow:0 18px 44px rgba(0,0,0,.12);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.footer-brand p{
  max-width:420px;
  font-size:15px;
}
.new-footer h4{
  position:relative;
  padding-bottom:12px;
  margin-bottom:14px;
}
.new-footer h4:after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:38px;
  height:3px;
  border-radius:99px;
  background:linear-gradient(90deg,var(--brand),#9ff5e8);
}
.new-footer .footer-main a,
.new-footer .footer-contact p{
  display:flex;
  align-items:center;
  gap:10px;
  width:max-content;
  max-width:100%;
  margin:10px 0;
  color:#d4e4e1;
}
.new-footer .footer-main a:before{
  content:"›";
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(5,147,131,.16);
  color:#9ff5e8;
  font-weight:900;
  transition:.22s ease;
}
.new-footer .footer-main a:hover:before{
  background:var(--brand);
  color:#fff;
  transform:translateX(2px);
}
.footer-contact a:before{display:none!important}
.footer-contact i{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  flex:0 0 34px;
  border-radius:12px;
  background:rgba(5,147,131,.16);
  color:#9ff5e8;
}
.footer-bottom{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  flex-wrap:wrap!important;
  padding-top:24px!important;
}
.footer-bottom > span:first-child{
  color:#cfe0dd;
}
.footer-bottom > span:last-child{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  white-space:nowrap!important;
  padding:8px 10px;
  border:1px solid rgba(159,245,232,.16);
  border-radius:999px;
  background:rgba(255,255,255,.035);
}
.new-footer .footer-bottom a{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  margin:0!important;
  color:#eafffb!important;
  font-weight:800;
  line-height:1!important;
  position:relative;
}
.new-footer .footer-bottom a:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-5px;
  height:2px;
  border-radius:99px;
  background:#9ff5e8;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .2s ease;
}
.new-footer .footer-bottom a:hover{
  color:#9ff5e8!important;
  transform:none!important;
}
.new-footer .footer-bottom a:hover:before{
  transform:scaleX(1);
}
@media(max-width:980px){
  .footer-main > div:not(.footer-brand){padding:20px}
  .footer-bottom{
    flex-direction:column!important;
    text-align:center!important;
    justify-content:center!important;
  }
  .footer-bottom > span:last-child{margin-inline:auto}
}
@media(max-width:560px){
  .new-footer{padding-top:58px!important}
  .footer-main > div:not(.footer-brand){border-radius:20px;padding:18px}
  .new-footer .footer-main a,.new-footer .footer-contact p{width:100%}
  .footer-bottom > span:last-child{
    width:100%;
    max-width:320px;
  }
}
