/*
Theme Name: InstallCon 2.42 Kunden Color + Anchor Fix
Author: OpenAI
Version: 2.58
Description: InstallCon premium theme with 60+ projects, 50+ specialists, 10+ years in Germany, project areas, contact CTA and footer.
*/
:root{--bg:#070b0f;--fg:#f5f7f8;--muted:#aeb7bf;--blue:#119dff;--line:rgba(255,255,255,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}.site-header{position:fixed;z-index:50;top:0;left:0;right:0;height:118px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;background:linear-gradient(180deg,rgba(3,7,10,.96) 0%,rgba(3,7,10,.72) 62%,transparent 100%);backdrop-filter:blur(7px)}
.brand{display:flex;align-items:center;min-width:0}.brand img{width:min(520px,34vw);height:108px;object-fit:contain;object-position:left center;filter:drop-shadow(0 6px 18px rgba(0,0,0,.28))}.nav{display:flex;align-items:center;gap:22px;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.nav a{position:relative;padding:14px 0}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:6px;height:2px;background:var(--blue);transition:right .25s ease}.nav a:hover{color:#fff}.nav a:hover:after{right:0}.nav .nav-contact{border:1px solid rgba(255,255,255,.4);padding:13px 18px}.nav .nav-contact:after{display:none}.nav .nav-contact:hover{background:var(--blue);border-color:var(--blue);color:#061018}
.hero{height:100svh;min-height:680px;position:relative;overflow:hidden;background:#05080b}.slide{position:absolute;inset:0;opacity:0;transition:opacity 1.25s ease;pointer-events:none}.slide.active{opacity:1;pointer-events:auto}
.slide video,.slide .fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.fallback{background-size:cover;background-position:center;transform:scale(1.06);transition:transform 8s linear}.active .fallback{transform:scale(1)}
.s1 .fallback{background-image:url('assets/img/hero-luftung.jpg');background-size:cover;background-position:center center}
.s2 .fallback{background-image:url('assets/img/hero-elektro.jpg');background-size:cover;background-position:center center}
.s3 .fallback{background-image:url('assets/img/hero-waermepumpen.jpg');background-size:cover;background-position:center center}
.s4 .fallback{background-image:url('assets/img/hero-sanitaer.jpg');background-size:cover;background-position:center center}
.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,5,8,.92) 0%,rgba(2,5,8,.58) 42%,rgba(2,5,8,.13) 75%),linear-gradient(0deg,rgba(2,5,8,.55),transparent 45%)}
.hero-copy{position:absolute;z-index:4;left:5vw;bottom:16vh;max-width:900px}.eyebrow{font-size:13px;letter-spacing:.25em;font-weight:700;color:var(--blue);text-transform:uppercase;margin-bottom:18px}
.hero h1{font-size:clamp(56px,7.2vw,126px);line-height:.82;letter-spacing:-.065em;margin:0;text-transform:uppercase}.hero h1 span{display:block;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.75)}
.hero p{max-width:660px;font-size:18px;line-height:1.55;color:#d4d9dd;margin:28px 0}.cta{display:inline-flex;gap:30px;align-items:center;border-bottom:2px solid var(--blue);padding:0 0 10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.hero-ui{position:absolute;z-index:8;left:5vw;right:5vw;bottom:5vh;display:flex;align-items:center;gap:22px}.count{font-variant-numeric:tabular-nums;font-size:13px;letter-spacing:.14em}.progress{height:2px;background:rgba(255,255,255,.25);flex:1;max-width:440px;overflow:hidden}.progress i{display:block;height:100%;width:0;background:var(--blue)}.progress.run i{animation:fill 7s linear forwards}@keyframes fill{to{width:100%}}
.hero-buttons{margin-left:auto;display:flex;gap:8px}.hero-buttons button{width:48px;height:48px;border:1px solid var(--line);background:rgba(0,0,0,.25);color:white;font-size:20px;cursor:pointer}.hero-buttons button:hover{background:var(--blue);border-color:var(--blue)}
.section{padding:125px 5vw}.section.light{background:#f2f1ed;color:#0b0d0f}.kicker{color:var(--blue);font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:700}.section h2{font-size:clamp(45px,6vw,95px);line-height:.95;letter-spacing:-.05em;margin:18px 0 55px}
.services{border-top:1px solid #b9b9b5}.service{display:grid;grid-template-columns:80px 1fr auto;gap:20px;align-items:center;border-bottom:1px solid #b9b9b5;padding:28px 0}.service b{font-size:clamp(26px,3vw,52px);letter-spacing:-.04em}.service small{font-size:12px;letter-spacing:.12em}.service .arrow{font-size:34px;color:var(--blue)}
.statement{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end}.statement p{font-size:21px;line-height:1.55;color:#c4cbd0}.numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:80px}.number{background:var(--bg);padding:40px}.number strong{font-size:58px;color:var(--blue)}.number span{display:block;color:var(--muted);margin-top:8px}
.contact{background:var(--blue);color:#041018}.contact h2{max-width:1100px}.contact .cta{border-color:#041018}
@media(max-width:800px){.nav{display:none}.brand img{width:min(380px,78vw);height:76px}.hero-copy{bottom:18vh}.hero p{font-size:16px}.statement{grid-template-columns:1fr}.numbers{grid-template-columns:1fr}.service{grid-template-columns:50px 1fr auto}.site-header{height:88px;padding:0 5vw}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.service{transition:padding-left .25s ease,background .25s ease}.service:hover{padding-left:18px;background:rgba(17,157,255,.06)}
.section-intro{max-width:760px;font-size:19px;line-height:1.65;color:#53585c;margin:-25px 0 55px}.project-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#c8c8c4;margin-top:70px}.project-card{min-height:300px;background:#0b1116;color:white;padding:36px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(17,157,255,.3),transparent 48%)}.project-card>*{position:relative}.project-card small{color:var(--blue);letter-spacing:.16em;text-transform:uppercase}.project-card h3{font-size:30px;margin:10px 0 0}.project-card p{color:#bfc8ce;line-height:1.5}.contact-row{display:flex;gap:45px;align-items:end;justify-content:space-between}.contact-note{max-width:420px;font-size:18px;line-height:1.55}.contact-note a{text-decoration:underline}.footer-line{height:1px;background:rgba(255,255,255,.15);margin-top:70px}@media(max-width:900px){.project-strip{grid-template-columns:1fr}.contact-row{display:block}.contact-note{margin-top:45px}}

/* 2.8 hero tuning */
.site-header{height:124px}
.brand img{width:min(780px,57vw);height:118px}
.hero-copy{bottom:18.5vh}
.hero h1{font-size:clamp(54px,6.7vw,116px)}

/* Interactive Leistungen */
.services-wrap{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:5vw;align-items:stretch}
.services{align-self:center}
.service{cursor:pointer;position:relative;transition:padding-left .3s ease,background .3s ease,color .3s ease}
.service b,.service .arrow{transition:transform .3s ease,color .3s ease}
.service:hover,.service.active{padding-left:18px;background:rgba(17,157,255,.065)}
.service:hover b,.service.active b{color:#087fc9;transform:translateX(5px)}
.service:hover .arrow,.service.active .arrow{transform:translate(8px,-5px)}
.service-preview{position:relative;min-height:430px;overflow:hidden;background:#0b1116;clip-path:inset(0 round 2px)}
.service-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(2,5,8,.72))}
.service-preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.035);transition:opacity .28s ease,transform 1.1s ease}
.service-preview.is-changing img{opacity:.18;transform:scale(1.09)}
.service-preview span{position:absolute;z-index:2;left:26px;bottom:24px;color:#fff;font-size:12px;font-weight:700;letter-spacing:.18em}
@media(max-width:1000px){.services-wrap{grid-template-columns:1fr}.service-preview{min-height:360px;order:-1}.hero-copy{bottom:17vh}.brand img{width:min(620px,55vw)}}
@media(max-width:800px){.site-header{height:88px}.brand img{width:min(410px,82vw);height:82px}.hero-copy{bottom:18vh}.service-preview{min-height:260px}.service:hover,.service.active{padding-left:8px}}

/* 2.9 compact sticky header */
.site-header,.brand img{transition:height .32s ease,padding .32s ease,background .32s ease,backdrop-filter .32s ease,filter .32s ease}
.site-header.is-scrolled{height:78px;padding-top:0;padding-bottom:0;background:rgba(3,7,10,.82);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}
.site-header.is-scrolled .brand img{height:72px;width:min(500px,42vw)}
.site-header.is-scrolled .nav{font-size:12px}
#leistungen{scroll-margin-top:88px}#unternehmen{scroll-margin-top:88px}#kontakt{scroll-margin-top:88px}
@media(max-width:800px){.site-header.is-scrolled{height:70px}.site-header.is-scrolled .brand img{height:64px;width:min(340px,76vw)}}

/* 2.10 premium reveal + sticky offset */
#leistungen{padding-top:clamp(145px,11vw,190px);scroll-margin-top:96px}
#leistungen .kicker,#leistungen h2,#leistungen .section-intro,#leistungen .service,#leistungen .service-preview{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
#leistungen.reveal-in .kicker,#leistungen.reveal-in h2,#leistungen.reveal-in .section-intro,#leistungen.reveal-in .service,#leistungen.reveal-in .service-preview{opacity:1;transform:none}
#leistungen.reveal-in h2{transition-delay:.06s}#leistungen.reveal-in .section-intro{transition-delay:.12s}
#leistungen.reveal-in .service:nth-child(1){transition-delay:.12s}#leistungen.reveal-in .service:nth-child(2){transition-delay:.18s}#leistungen.reveal-in .service:nth-child(3){transition-delay:.24s}#leistungen.reveal-in .service:nth-child(4){transition-delay:.30s}
#leistungen.reveal-in .service-preview{transition-delay:.18s}
.service-preview img{transition:opacity .38s ease,transform 1.25s cubic-bezier(.2,.7,.2,1)}
@media(prefers-reduced-motion:reduce){#leistungen .kicker,#leistungen h2,#leistungen .section-intro,#leistungen .service,#leistungen .service-preview{opacity:1;transform:none;transition:none}}

/* 2.11 Kompetenz + sticky logo polish */
.site-header.is-scrolled{height:82px;overflow:visible}
.site-header.is-scrolled .brand{height:82px;display:flex;align-items:center;overflow:visible}
.site-header.is-scrolled .brand img{height:76px;width:min(530px,44vw);object-fit:contain;object-position:left center}
.competence-head{margin-top:86px;display:flex;align-items:end;justify-content:space-between;gap:40px;border-top:1px solid #b9b9b5;padding-top:36px}
.competence-head h3{margin:0;max-width:800px;font-size:clamp(30px,3.4vw,58px);line-height:.98;letter-spacing:-.045em}
.competence-grid{grid-template-columns:repeat(4,1fr);margin-top:34px;background:#c8c8c4}
.competence-grid .project-card{min-height:340px;padding:34px 30px;justify-content:flex-end;transition:transform .35s ease,background .35s ease}
.competence-grid .project-card:before{background:radial-gradient(circle at 82% 18%,rgba(17,157,255,.28),transparent 46%);transition:transform .6s ease,opacity .35s ease}
.competence-grid .project-card:hover{background:#0d1b25;transform:translateY(-8px)}
.competence-grid .project-card:hover:before{transform:scale(1.15)}
.competence-grid .project-card h3{font-size:clamp(24px,2vw,34px);line-height:1.05;margin:12px 0 14px}
.competence-grid .project-card p{margin:0;min-height:96px}
.card-arrow{position:absolute;right:28px;top:28px;color:var(--blue);font-size:28px;transition:transform .3s ease}.project-card:hover .card-arrow{transform:translate(7px,-7px)}
#unternehmen{padding-top:145px}
@media(max-width:1150px){.competence-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.site-header.is-scrolled{height:72px}.site-header.is-scrolled .brand{height:72px}.site-header.is-scrolled .brand img{height:66px;width:min(360px,78vw)}.competence-head{display:block;margin-top:60px}.competence-head h3{margin-top:12px}.competence-grid{grid-template-columns:1fr}.competence-grid .project-card{min-height:260px}.competence-grid .project-card p{min-height:0}}

/* 2.12 Unternehmen + Projekte */
.statement p strong{color:#fff;font-weight:700}
.projects-section{background:#f2f1ed;color:#0b0d0f;padding-top:135px}
.projects-head{display:grid;grid-template-columns:1.15fr .85fr;gap:7vw;align-items:end;margin-bottom:58px}
.projects-head h2{margin-bottom:0}.projects-head p{font-size:19px;line-height:1.65;color:#53585c;max-width:620px;margin:0 0 8px}
.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.reference-card{position:relative;min-height:460px;overflow:hidden;background:#071018}
.reference-card.reference-wide{min-height:560px}
.reference-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.reference-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(2,6,9,.88) 100%)}
.reference-overlay{position:absolute;z-index:2;left:34px;right:34px;bottom:30px;color:#fff}
.reference-overlay small{color:var(--blue);font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.reference-overlay h3{font-size:clamp(27px,2.8vw,48px);line-height:1;margin:10px 0 9px;letter-spacing:-.04em}
.reference-overlay span{color:#d4dadd;font-size:15px}
.reference-card:hover img{transform:scale(1.055);filter:brightness(1.05)}
.projects-head,.reference-card{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.projects-section.reveal-in .projects-head,.projects-section.reveal-in .reference-card{opacity:1;transform:none}
.projects-section.reveal-in .reference-card:nth-child(2){transition-delay:.08s}.projects-section.reveal-in .reference-card:nth-child(3){transition-delay:.16s}.projects-section.reveal-in .reference-card:nth-child(4){transition-delay:.24s}
#projekte{scroll-margin-top:90px}
@media(max-width:900px){.projects-head{grid-template-columns:1fr}.projects-grid{grid-template-columns:1fr}.reference-card,.reference-card.reference-wide{min-height:380px}}
@media(prefers-reduced-motion:reduce){.projects-head,.reference-card{opacity:1;transform:none;transition:none}.reference-card img{transition:none}}


/* 2.13 Contact & Stats */
.numbers{grid-template-columns:repeat(4,1fr)}
.contact-premium{padding-top:120px;padding-bottom:120px}
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:end}
.contact-premium h2{font-size:clamp(52px,6.6vw,110px);line-height:.88;letter-spacing:-.055em;margin:18px 0 28px;max-width:950px}
.contact-lead{max-width:690px;font-size:20px;line-height:1.6;margin:0;color:#092132}
.contact-actions{border-top:1px solid rgba(4,16,24,.35)}
.contact-mail{display:grid;grid-template-columns:1fr auto;gap:7px 24px;align-items:center;padding:27px 0;border-bottom:1px solid rgba(4,16,24,.35);transition:padding-left .25s ease,background .25s ease}
.contact-mail small{grid-column:1;font-size:11px;letter-spacing:.17em;text-transform:uppercase;font-weight:700}
.contact-mail strong{grid-column:1;font-size:clamp(19px,2vw,29px);letter-spacing:-.025em}
.contact-mail span{grid-column:2;grid-row:1/3;font-size:32px;transition:transform .25s ease}
.contact-mail:hover{padding-left:12px}.contact-mail:hover span{transform:translate(6px,-6px)}
.site-footer{background:#04080b;padding:58px 5vw 34px;display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:5vw;align-items:end;border-top:1px solid rgba(255,255,255,.1)}
.footer-brand img{width:min(430px,100%);height:78px;object-fit:contain;object-position:left center}.footer-brand p{color:#8f9aa2;margin:8px 0 0}
.footer-links{display:grid;gap:12px;font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.footer-links a:hover{color:var(--blue)}
.footer-meta{display:grid;gap:12px;color:#78848d;font-size:13px;text-align:right}
#kontakt{scroll-margin-top:88px}
@media(max-width:1000px){.numbers{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr 1fr}.footer-meta{grid-column:1/-1;text-align:left}}
@media(max-width:650px){.numbers{grid-template-columns:1fr}.contact-premium{padding-top:90px;padding-bottom:90px}.site-footer{grid-template-columns:1fr}.footer-meta{grid-column:auto}.contact-mail strong{font-size:18px}}
/* 2.15 service page */
.service-page{background:#f4f2ed;color:#0b1117}.service-hero{min-height:78vh;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:150px 5vw 80px;color:#fff}.service-hero-inner{max-width:950px}.service-page .eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:24px}.service-page .eyebrow.blue{color:#0b9cff}.service-hero h1,.service-intro h2,.industry-band h2,.process h2,.service-cta h2{font-size:clamp(52px,7vw,118px);line-height:.88;letter-spacing:-.055em;margin:0;font-weight:900}.service-hero h1 span{color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.9)}.service-hero p{max-width:680px;font-size:20px;line-height:1.55;margin:32px 0}.service-btn{display:inline-block;background:#0b9cff;color:#fff;text-decoration:none;font-weight:800;font-size:13px;letter-spacing:.08em;padding:18px 24px}.service-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;padding:120px 5vw 90px;align-items:end}.service-intro h2,.process h2{font-size:clamp(48px,5.8vw,92px)}.service-intro>p{font-size:20px;line-height:1.7;max-width:720px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:0 5vw 120px}.service-grid article{border-top:1px solid #b9bdc0;padding:28px 34px 52px 0;min-height:220px}.service-grid article:nth-child(3n+2),.service-grid article:nth-child(3n+3){padding-left:34px;border-left:1px solid #d0d2d3}.service-grid span,.process-grid b{color:#0b9cff;font-size:12px;letter-spacing:.15em}.service-grid h3,.process-grid h3{font-size:26px;margin:18px 0 12px}.service-grid p,.process-grid p{line-height:1.65;color:#4d555b;margin:0}.industry-band{background:#07111a;color:#fff;padding:110px 5vw;display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:center}.industry-band h2{font-size:clamp(50px,6vw,96px)}.industry-band p{font-size:20px;line-height:1.7;color:#cbd3d9}.industry-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.industry-tags span{border:1px solid #2c3a44;padding:12px 16px;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.process{padding:120px 5vw}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid #b9bdc0}.process-grid article{padding:32px 45px 30px 0}.process-grid article+article{padding-left:45px;border-left:1px solid #d0d2d3}.service-cta{background:#0b9cff;color:#fff;padding:90px 5vw;display:grid;grid-template-columns:1.2fr .8fr;gap:7vw;align-items:center}.service-cta h2{font-size:clamp(46px,5.2vw,82px)}.service-cta p{font-size:19px;line-height:1.6}.service-btn.light{background:#fff;color:#07111a;margin-top:16px}@media(max-width:800px){.service-hero{min-height:70vh;padding:130px 24px 55px}.service-intro,.industry-band,.service-cta{grid-template-columns:1fr;padding:75px 24px;gap:35px}.service-grid,.process-grid{grid-template-columns:1fr}.service-grid{padding:0 24px 70px}.service-grid article,.service-grid article:nth-child(3n+2),.service-grid article:nth-child(3n+3){padding:24px 0 38px;border-left:0}.process{padding:75px 24px}.process-grid article,.process-grid article+article{padding:28px 0;border-left:0;border-bottom:1px solid #d0d2d3}.service-hero p,.service-intro>p,.industry-band p{font-size:17px}}

/* 2.16 Premium service page */
.service-hero-premium{position:relative;min-height:100svh;background-position:center;background-size:cover;padding-bottom:9vh}
.service-hero-premium:after{content:"";position:absolute;inset:auto 0 0;height:28%;background:linear-gradient(transparent,rgba(2,7,11,.58));pointer-events:none}
.service-hero-premium .service-hero-inner{position:relative;z-index:2;max-width:1050px}
.service-hero-premium h1{font-size:clamp(68px,8.6vw,148px)}
.service-hero-premium p{font-size:clamp(17px,1.25vw,21px);max-width:760px}
.hero-service-index{position:absolute;z-index:3;right:5vw;bottom:6vh;color:#fff;display:flex;align-items:center;gap:16px;font-size:11px;letter-spacing:.17em}.hero-service-index b{font-size:24px;color:#0b9cff}.hero-service-index span{opacity:.8}
.industry-visual{display:grid;grid-template-columns:1.08fr .92fr;min-height:720px;background:#07111a;color:#fff}.industry-photo{min-height:620px;background-size:cover;background-position:center}.industry-copy{padding:9vw 6vw;display:flex;flex-direction:column;justify-content:center}.industry-copy h2{font-size:clamp(50px,5.6vw,94px);line-height:.9;letter-spacing:-.055em;margin:0 0 34px}.industry-copy p{font-size:19px;line-height:1.7;color:#cbd3d9;max-width:650px}.service-proof{display:grid;grid-template-columns:repeat(3,1fr);background:#07111a;color:#fff;padding:0 5vw 100px}.service-proof>div{padding:42px 4vw 18px;border-top:1px solid #2a3740}.service-proof>div+div{border-left:1px solid #2a3740}.service-proof span{display:block;color:#0b9cff;font-weight:900;font-size:clamp(46px,5vw,78px);line-height:1}.service-proof p{color:#cbd3d9;margin:13px 0 0}.service-mail{display:block;color:#fff;margin-top:20px;font-size:16px;text-underline-offset:5px}
.reveal-service{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.reveal-service.service-visible{opacity:1;transform:none}
.service-grid.reveal-service article{transition:background .3s ease,transform .35s ease}.service-grid article:hover{background:#e9f4fb;transform:translateY(-3px)}
@media(max-width:900px){.service-hero-premium{min-height:84svh}.hero-service-index{display:none}.industry-visual{grid-template-columns:1fr;min-height:0}.industry-photo{min-height:420px}.industry-copy{padding:75px 24px}.service-proof{grid-template-columns:1fr;padding:0 24px 60px}.service-proof>div{padding:28px 0}.service-proof>div+div{border-left:0}.service-hero-premium h1{font-size:clamp(56px,15vw,88px)}}
@media(prefers-reduced-motion:reduce){.reveal-service{opacity:1;transform:none;transition:none}}

/* 2.17 service links */
a.service{color:inherit;text-decoration:none}
a.project-card-link{display:block;color:inherit;text-decoration:none}

/* 2.18 direct Lüftung page — no repeated full-screen hero */
.service-direct-top{padding:118px 5vw 0;display:grid;grid-template-columns:.82fr 1.18fr;min-height:670px;background:#f4f2ed;border-bottom:1px solid #d7d9da}
.service-direct-copy{padding:62px 5vw 65px 0;align-self:center}.service-direct-copy h1{font-size:clamp(58px,6.4vw,108px);line-height:.88;letter-spacing:-.06em;margin:0 0 30px;font-weight:900}.service-direct-copy>p{font-size:19px;line-height:1.65;max-width:650px;margin:0 0 32px;color:#30383e}
.service-direct-images{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}.service-direct-images figure{margin:0;overflow:hidden;min-height:550px;background:#d8dde0}.service-direct-images img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.service-direct-images figure:hover img{transform:scale(1.025)}
.direct-grid{padding-top:72px}.industry-team-photo{background-position:center;background-size:cover}
@media(max-width:1050px){.service-direct-top{grid-template-columns:1fr;padding-top:100px}.service-direct-copy{padding:55px 0 45px}.service-direct-images{height:480px}.service-direct-images figure{min-height:0}}
@media(max-width:650px){.service-direct-top{padding:92px 24px 0}.service-direct-copy h1{font-size:clamp(48px,14vw,72px)}.service-direct-copy>p{font-size:17px}.service-direct-images{height:520px;grid-template-columns:1fr}.service-direct-images figure{min-height:250px}.direct-grid{padding-top:50px}}

/* 2.21 Elektrotechnik + direct Leistungen anchor */
#leistungen-list{scroll-margin-top:96px}
.electro-page .electro-direct-top{padding:118px 5vw 0;display:grid;grid-template-columns:.82fr 1.18fr;min-height:670px;background:#f4f2ed;border-bottom:1px solid #d7d9da}
.electro-direct-copy{padding:62px 5vw 65px 0;align-self:center}.electro-direct-copy h1{font-size:clamp(58px,6.4vw,108px);line-height:.88;letter-spacing:-.06em;margin:0 0 30px;font-weight:900}.electro-direct-copy>p{font-size:19px;line-height:1.65;max-width:650px;margin:0 0 32px;color:#30383e}
.electro-direct-images{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}.electro-direct-images figure{margin:0;overflow:hidden;min-height:550px;background:#d8dde0}.electro-direct-images img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.electro-direct-images figure:hover img{transform:scale(1.025)}
.electro-industry-photo{background-position:center center}
@media(max-width:1050px){.electro-page .electro-direct-top{grid-template-columns:1fr;padding-top:100px}.electro-direct-copy{padding:55px 0 45px}.electro-direct-images{height:480px}.electro-direct-images figure{min-height:0}}
@media(max-width:650px){.electro-page .electro-direct-top{padding:92px 24px 0}.electro-direct-copy h1{font-size:clamp(48px,14vw,72px)}.electro-direct-copy>p{font-size:17px}.electro-direct-images{height:520px;grid-template-columns:1fr}.electro-direct-images figure{min-height:250px}}

/* v2.22 Elektrotechnik image framing + sharp industry photo */
.electro-direct-images figure{display:flex;align-items:center;justify-content:center;background:#e8e6e1}
.electro-direct-images img{object-fit:contain;object-position:center center;background:#e8e6e1}
.electro-page .industry-visual{min-height:560px}
.electro-page .industry-photo{min-height:560px;background-size:cover;background-position:center center}
.electro-page .industry-copy{padding-top:6vw;padding-bottom:6vw}
.electro-page .industry-copy h2{font-size:clamp(46px,4.9vw,82px);line-height:.92}
.electro-page .industry-copy h2::first-line{background:none;color:inherit}
@media(max-width:1050px){.electro-direct-images img{object-fit:cover;object-position:center}.electro-page .industry-photo{min-height:430px}}


/* 2.23 Elektrotechnik — approved final proportions */
.electro-page .electro-direct-top{grid-template-columns:41.5% 58.5%;min-height:445px;padding-top:70px}
.electro-page .electro-direct-copy{padding:42px 4vw 42px 0}
.electro-page .electro-direct-copy h1{font-size:clamp(48px,4.25vw,70px);line-height:.92;letter-spacing:-.055em;white-space:nowrap;margin-bottom:22px}
.electro-page .electro-direct-copy>p{font-size:18px;line-height:1.48;max-width:510px;margin-bottom:28px}
.electro-page .electro-direct-images{gap:14px;height:377px;align-self:start}
.electro-page .electro-direct-images figure{min-height:0;height:377px;background:#f4f2ed}
.electro-page .electro-direct-images img{width:100%;height:100%;object-fit:cover;object-position:center;background:none}
.electro-page .industry-visual{grid-template-columns:55% 45%;min-height:382px}
.electro-page .industry-photo{min-height:382px;background-size:cover;background-position:center center}
.electro-page .industry-copy{padding:42px 4vw}
.electro-page .industry-copy h2{font-size:clamp(34px,3.1vw,52px);line-height:.94;margin-bottom:18px}
.electro-page .industry-copy h2 em{font-style:normal;color:#119dff}
.electro-page .industry-copy p{font-size:15px;line-height:1.5}
@media(max-width:1150px){.electro-page .electro-direct-copy h1{font-size:clamp(44px,5vw,62px)}}
@media(max-width:1050px){.electro-page .electro-direct-top{grid-template-columns:1fr;padding-top:92px}.electro-page .electro-direct-copy h1{white-space:normal}.electro-page .electro-direct-images{height:auto}.electro-page .electro-direct-images figure{height:360px}.electro-page .industry-visual{grid-template-columns:1fr}.electro-page .industry-photo{min-height:420px}}

/* 2.24 — only lower Elektrotechnik photo replaced with selected 1920x1280 source */
.electro-page .electro-industry-photo{background-position:center 43%;}

/* 2.25 Sanitär & Heizung — approved medium-scale Gewerbe direction */
.sanitaer-page .sanitaer-direct-top{padding:70px 5vw 0;display:grid;grid-template-columns:41.5% 58.5%;min-height:445px;background:#f4f2ed;border-bottom:1px solid #d7d9da}
.sanitaer-direct-copy{padding:42px 4vw 42px 0;align-self:center}.sanitaer-direct-copy h1{font-size:clamp(48px,4.25vw,70px);line-height:.92;letter-spacing:-.055em;margin:0 0 22px;font-weight:900}.sanitaer-direct-copy>p{font-size:18px;line-height:1.48;max-width:540px;margin:0 0 28px;color:#30383e}
.sanitaer-direct-images{display:grid;grid-template-columns:1fr 1fr;gap:14px;height:377px;align-self:start;min-width:0}.sanitaer-direct-images figure{margin:0;overflow:hidden;height:377px;background:#e8e6e1}.sanitaer-direct-images img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.sanitaer-direct-images figure:hover img{transform:scale(1.025)}
.sanitaer-page .industry-visual{grid-template-columns:55% 45%;min-height:382px}.sanitaer-page .industry-photo{min-height:382px;background-size:cover;background-position:center center}.sanitaer-page .industry-copy{padding:42px 4vw}.sanitaer-page .industry-copy h2{font-size:clamp(32px,2.8vw,48px);line-height:.96;margin-bottom:18px}.sanitaer-page .industry-copy h2 em{font-style:normal;color:#119dff}.sanitaer-page .industry-copy p{font-size:15px;line-height:1.5}
@media(max-width:1050px){.sanitaer-page .sanitaer-direct-top{grid-template-columns:1fr;padding:92px 24px 0}.sanitaer-direct-images{height:auto}.sanitaer-direct-images figure{height:360px}.sanitaer-page .industry-visual{grid-template-columns:1fr}.sanitaer-page .industry-photo{min-height:420px}}
@media(max-width:650px){.sanitaer-direct-images{grid-template-columns:1fr}.sanitaer-direct-images figure{height:270px}.sanitaer-direct-copy h1{font-size:clamp(44px,13vw,68px)}}

/* 2.33 Sanitär approved panoramic hero */
.sanitaer-page .sanitaer-direct-images.sanitaer-direct-image-wide{display:block;height:377px;min-width:0;overflow:hidden}
.sanitaer-page .sanitaer-direct-images.sanitaer-direct-image-wide figure{width:100%;height:377px;margin:0;overflow:hidden;background:#e8e6e1}
.sanitaer-page .sanitaer-direct-images.sanitaer-direct-image-wide img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}
@media(max-width:1050px){.sanitaer-page .sanitaer-direct-images.sanitaer-direct-image-wide,.sanitaer-page .sanitaer-direct-images.sanitaer-direct-image-wide figure{height:360px}}
@media(max-width:650px){.sanitaer-page .sanitaer-direct-images.sanitaer-direct-image-wide,.sanitaer-page .sanitaer-direct-images.sanitaer-direct-image-wide figure{height:270px}}

/* 2.34 Wärmepumpen – Einfamilienhäuser */
.waermepumpen-page .waerme-direct-top{padding:70px 4.5vw 0;display:grid;grid-template-columns:36% 64%;min-height:500px;background:#f4f2ed;border-bottom:1px solid #d7d9da}
.waerme-direct-copy{padding:38px 3.2vw 42px 0;align-self:center}.waerme-direct-copy h1{font-size:clamp(46px,3.8vw,68px);line-height:.9;letter-spacing:-.055em;margin:0 0 24px;font-weight:900}.waerme-direct-copy h1 span{color:#119dff}.waerme-direct-copy>p{font-size:18px;line-height:1.48;max-width:570px;margin:0 0 14px;color:#30383e}.waerme-direct-copy .waerme-subcopy{margin-bottom:27px}.waerme-direct-image{height:430px;align-self:start;overflow:hidden}.waerme-direct-image figure{height:100%;margin:0;overflow:hidden;background:#e8e6e1}.waerme-direct-image img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
@media(max-width:1050px){.waermepumpen-page .waerme-direct-top{grid-template-columns:1fr;padding:92px 24px 0}.waerme-direct-copy{padding:45px 0}.waerme-direct-image{height:390px}}
@media(max-width:650px){.waerme-direct-copy h1{font-size:clamp(42px,12vw,64px)}.waerme-direct-image{height:280px}}

#leistungen-list,#kompetenz,#unternehmen,#projekte,#kontakt{scroll-margin-top:118px}
@media(max-width:1180px) and (min-width:801px){.nav{gap:14px;font-size:11px}.nav .nav-contact{padding:11px 12px}.brand img{width:min(390px,30vw)}}

/* 2.37 Contact person */
.contact-person{display:grid;grid-template-columns:180px 1fr;gap:30px;align-items:stretch}.contact-person>img{width:180px;height:240px;object-fit:cover;object-position:center top;border-radius:2px}.contact-person .contact-actions{align-self:center;width:100%}.contact-person-name{padding:0 0 22px;border-bottom:1px solid rgba(4,16,24,.35)}.contact-person-name small{display:block;font-size:11px;letter-spacing:.17em;text-transform:uppercase;font-weight:700;margin-bottom:7px}.contact-person-name strong{font-size:clamp(24px,2.3vw,34px);letter-spacing:-.025em}.contact-person .contact-mail strong{overflow-wrap:anywhere}@media(max-width:650px){.contact-person{grid-template-columns:110px 1fr;gap:18px}.contact-person>img{width:110px;height:155px}.contact-person .contact-mail{grid-template-columns:1fr auto}.contact-person .contact-mail strong{font-size:15px}}


/* 2.38 Company proof */
.company-numbers .number strong{font-size:clamp(44px,5vw,82px)}
.company-numbers .number:last-child strong{font-size:clamp(28px,3.4vw,54px);letter-spacing:-.04em}
.company-proof{margin-top:92px;padding-top:72px;border-top:1px solid rgba(255,255,255,.16);display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw}
.company-proof-intro h3{font-size:clamp(36px,4.5vw,72px);line-height:.93;letter-spacing:-.045em;margin:18px 0 26px}
.company-proof-intro p{color:#aeb8bf;font-size:18px;line-height:1.65;max-width:620px}
.company-proof-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid rgba(255,255,255,.14);border-left:1px solid rgba(255,255,255,.14)}
.company-proof-grid article{min-height:245px;padding:30px;border-right:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14)}
.company-proof-grid article span{color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.15em}
.company-proof-grid h4{font-size:25px;margin:34px 0 14px}
.company-proof-grid p{color:#98a5ad;line-height:1.6;margin:0}
@media(max-width:900px){.company-proof{grid-template-columns:1fr}.company-proof-grid{grid-template-columns:1fr}.company-proof-grid article{min-height:0}.company-numbers{grid-template-columns:repeat(2,1fr)}}


/* 2.40 Unsere Kunden + improved Über-uns anchor */
#unternehmen{padding-top:95px;scroll-margin-top:70px}
.clients-showcase{margin-top:76px;padding:64px 0 70px;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}
.clients-showcase-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:end;margin-bottom:38px}.clients-showcase-head h3{font-size:clamp(42px,5vw,76px);line-height:.9;letter-spacing:-.05em;margin:16px 0 0}.clients-showcase-head p{color:#aeb8bf;font-size:18px;line-height:1.55;margin:0 0 4px;max-width:560px}
.client-logo-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.14);border-left:1px solid rgba(255,255,255,.14)}
.client-logo{min-height:118px;display:flex;align-items:center;justify-content:center;padding:22px;text-align:center;border-right:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.025);color:#f2f5f7;font-size:21px;font-weight:800;letter-spacing:.02em;transition:.25s ease}.client-logo:hover{background:#119dff;color:#041018;transform:translateY(-2px)}
.client-logo.panattoni{font-family:Georgia,serif;letter-spacing:.08em}.client-logo.mercedes{font-size:16px;letter-spacing:.08em}.client-logo.vw{font-size:31px;letter-spacing:-.08em}.client-logo.hexagon{font-size:22px;letter-spacing:.06em}.client-logo.amazon{font-size:30px;letter-spacing:-.05em}.client-logo.tesla{font-size:23px;letter-spacing:.18em}.client-logo.goldbeck{font-size:23px}.client-logo.maxboegl{font-size:20px}.client-logo.hillwood{font-size:22px;letter-spacing:.08em}.client-logo.prologis{font-size:23px;letter-spacing:.05em}.client-logo.bremer{font-size:24px;letter-spacing:.08em}.client-logo.zueblin{font-size:25px;letter-spacing:.04em}.client-logo.matthaei{font-size:24px;letter-spacing:.06em}
.company-proof{margin-top:0;border-top:0}
@media(max-width:900px){#unternehmen{padding-top:72px;scroll-margin-top:68px}.clients-showcase-head{grid-template-columns:1fr}.client-logo-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.client-logo-grid{grid-template-columns:1fr 1fr}.client-logo{min-height:92px;font-size:16px;padding:14px}.clients-showcase{margin-top:52px;padding-top:48px}}

/* 2.41 premium clients section + corrected anchor */
#kunden{background:#f4f3ef;color:#071018;padding-top:110px;padding-bottom:110px;scroll-margin-top:0}
.clients-premium-head{display:grid;grid-template-columns:1fr .85fr;gap:8vw;align-items:end;margin-bottom:56px}
.clients-premium-head .kicker{color:#087fc8}.clients-premium-head h2{font-size:clamp(64px,8vw,132px);line-height:.78;letter-spacing:-.065em;margin:22px 0 0;color:#071018}
.clients-premium-head p{font-size:20px;line-height:1.6;color:#4c5961;max-width:620px;margin:0 0 4px}
.client-logo-grid.premium{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #d9dcde;background:#fff}
.client-logo-grid.premium .client-logo{height:150px;min-height:0;background:#fff;border:0;border-right:1px solid #e0e2e3;border-bottom:1px solid #e0e2e3;padding:30px;display:flex;align-items:center;justify-content:center;transition:.25s ease}
.client-logo-grid.premium .client-logo:hover{background:#f7fbfe;transform:none}
.client-logo-grid.premium img{width:100%;height:72px;object-fit:contain;filter:none;opacity:1;transition:.25s ease}
.client-logo-grid.premium .client-logo:hover img{filter:none;opacity:1;transform:scale(1.035)}
#unternehmen{padding-top:92px;scroll-margin-top:0}
#unternehmen .statement h2{font-size:clamp(58px,7.2vw,112px);line-height:.78}
@media(max-width:1050px){.client-logo-grid.premium{grid-template-columns:repeat(3,1fr)}.clients-premium-head{grid-template-columns:1fr}}
@media(max-width:700px){#kunden{padding-top:72px;padding-bottom:72px}.client-logo-grid.premium{grid-template-columns:repeat(2,1fr)}.client-logo-grid.premium .client-logo{height:110px;padding:18px}.client-logo-grid.premium img{height:56px}}

/* 2.42 anchor + full-color client logos */
#kunden,#unternehmen{scroll-margin-top:82px}
#kunden{background:#070b0f;color:#f5f7f8;padding-top:96px}
#kunden .clients-premium-head .kicker{color:#119dff}
#kunden .clients-premium-head h2{color:#f5f7f8}
#kunden .clients-premium-head p{color:#aeb7bf}
.client-logo-grid.premium img{filter:none!important;opacity:1!important}
@media(max-width:800px){#kunden,#unternehmen{scroll-margin-top:72px}}


/* 2.43 exact client marks + anchor fix */
#kunden,#unternehmen{scroll-margin-top:0!important}
body.admin-bar .site-header{top:32px}
.client-logo-grid.premium .client-logo{overflow:hidden}
.client-logo-grid.premium img{max-width:82%;max-height:88px;width:auto;height:auto;object-fit:contain;filter:none!important;opacity:1!important}
.client-logo-grid.premium .vw img,.client-logo-grid.premium .mercedes img{max-height:102px}
.client-logo-grid.premium .panattoni img{max-width:86%}
.client-logo-grid.premium .hexagon img{max-height:82px}
.client-logo-grid.premium .maxboegl img{max-height:92px}
.client-logo-grid.premium .zueblin img{max-height:100px;max-width:68%;transform:scale(1.45)}
.client-logo-grid.premium .matthaei img{max-width:82%;max-height:90px}
.client-logo-grid.premium .spie img{max-height:86px}
.google-wordmark{font:700 43px Arial,sans-serif;letter-spacing:-4px;white-space:nowrap}.google-wordmark span:nth-child(1),.google-wordmark span:nth-child(4){color:#4285f4}.google-wordmark span:nth-child(2),.google-wordmark span:nth-child(6){color:#ea4335}.google-wordmark span:nth-child(3){color:#fbbc05}.google-wordmark span:nth-child(5){color:#34a853}
.bunte-wordmark{display:flex;align-items:center;gap:13px;color:#09205e}.bunte-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#f3c300;color:#09205e;font:bold 32px Arial}.bunte-wordmark strong{font:800 24px Arial;letter-spacing:.02em}
@media(max-width:782px){body.admin-bar .site-header{top:46px}}

/* v2.44 contact team */
.contact-team{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.contact-team .contact-person{min-width:0}.contact-team .contact-person img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top}.contact-team .contact-actions{width:100%}@media(max-width:900px){.contact-team{grid-template-columns:1fr}}
/* v2.45 alignment fix */
.client-logo-grid.premium .matthaei img{transform:translateY(-10px);}

/* v2.46 contact team stacked */
.contact-team{display:flex;flex-direction:column;gap:56px;align-items:stretch}
.contact-team .contact-person{display:grid;grid-template-columns:180px minmax(0,1fr);gap:30px;align-items:stretch;width:100%;max-width:620px}
.contact-team .contact-person img{width:180px;height:240px;aspect-ratio:auto;object-fit:cover;object-position:center top}
@media(max-width:650px){.contact-team{gap:38px}.contact-team .contact-person{grid-template-columns:110px minmax(0,1fr);gap:18px}.contact-team .contact-person img{width:110px;height:155px}}

/* 2.54 Matthäi logo: clean crop and optical centering */
.client-logo-card.matthaei,
.client-logo.matthaei,
.client-card.matthaei { overflow:hidden; }
.client-logo-card.matthaei img,
.client-logo.matthaei img,
.client-card.matthaei img,
img.matthaei-logo {
    width:auto !important;
    height:58px !important;
    max-width:78% !important;
    max-height:58px !important;
    object-fit:contain !important;
    object-position:center center !important;
    transform:none !important;
    margin:0 auto !important;
    display:block !important;
}

/* 2.55 Matthäi: source image physically cropped, centered like other customer marks */
.client-logo-grid.premium .matthaei img,
.client-logo.matthaei img {
  height:64px !important;
  width:auto !important;
  max-width:82% !important;
  max-height:64px !important;
  object-fit:contain !important;
  object-position:center !important;
  transform:none !important;
  margin:auto !important;
}

/* 2.56 clean Matthäi wordmark */
.client-logo-grid.premium .matthaei img,.client-logo.matthaei img{
height:46px!important;width:auto!important;max-width:78%!important;max-height:46px!important;
object-fit:contain!important;transform:none!important;margin:auto!important;
}

/* 2.57 Tesla logo supplied by client */
.client-logo-grid.premium .tesla img,.client-logo.tesla img{
height:92px!important;width:auto!important;max-width:72%!important;max-height:92px!important;
object-fit:contain!important;object-position:center!important;transform:none!important;margin:auto!important;
}
