*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#e9ecec;color:#111719;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}a{text-decoration:none;color:inherit}.hero{height:590px;background:#071014;position:relative;overflow:hidden;color:#fff}.header{height:108px;position:absolute;z-index:10;top:0;left:5.5%;right:5.5%;display:flex;align-items:center}.logo{width:235px;height:auto;display:block;mix-blend-mode:screen}.header nav{margin-left:auto;display:flex;gap:34px;font-size:13px;color:#d9dfe0}.header nav a:hover{color:#ff6500}.hero-photo{position:absolute;right:0;top:0;width:70%;height:100%;background:url("assets/hero-bluehour-v134.png") center/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#071014 0%,#071014 29%,rgba(7,16,20,.82) 39%,rgba(7,16,20,.18) 62%,rgba(7,16,20,0) 100%)}.hero-copy{position:absolute;z-index:4;left:5.7%;top:142px}.hero h1{font-size:55px;line-height:.98;letter-spacing:-.045em;margin:0 0 22px}.hero h1 em{font-style:normal;color:#ff6500}.hero p{font-size:14px;line-height:1.55;color:#d7dddf}.button{display:inline-flex;gap:28px;align-items:center;background:#ff6500;color:white;padding:14px 20px;border-radius:9px;font-weight:800;font-size:13px;margin-top:18px;box-shadow:0 9px 25px #ff650035}.services{position:relative;z-index:12;margin:-52px 4.2% 0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.service{height:188px;border-radius:22px;overflow:hidden;background:#0b1114;box-shadow:0 16px 32px #0b11142b;border:1px solid var(--a);transition:.3s}.service:hover{transform:translateY(-7px);box-shadow:0 15px 38px color-mix(in srgb,var(--a) 28%,transparent)}.pic{height:126px;background-position:center;background-size:cover}.electrical{background-image:linear-gradient(120deg,#211b17aa,#10151633),url("assets/project-smart.jpg")}.pv{background-image:url("assets/project-pv.jpg")}.wallbox{background-image:url("assets/project-wallbox.jpg")}.smart{background-image:url("assets/project-smart.jpg")}.bar{height:62px;color:#fff;display:flex;align-items:center;padding:0 15px;gap:10px}.bar span,.bar i{color:var(--a)}.bar b{font-size:13px}.bar i{margin-left:auto;width:28px;height:28px;border:1px solid var(--a);border-radius:50%;display:grid;place-items:center;font-style:normal}.orange{--a:#ff6500}.green{--a:#52ef62}.cyan{--a:#22c7f2}.gray{--a:#aeb6b9}.energy{display:grid;grid-template-columns:40% 60%;min-height:515px;margin-top:34px;background:#e6e9e9}.energy-copy{padding:72px 5.2% 60px 12%}.energy-copy small,.project-head small{font-size:11px;letter-spacing:.08em;color:#6d777b}.energy-copy small:first-letter,.project-head small:first-letter{color:#ff6500}.energy h2,.project-head h2{font-size:45px;line-height:1;letter-spacing:-.04em;margin:20px 0}.energy p{font-size:14px;line-height:1.55;color:#525b5f}.energy-copy>a,.project-head>a{color:#ff6500;font-weight:800;font-size:12px}.energy-photo{position:relative;overflow:hidden}.energy-photo:before{content:"";position:absolute;inset:0 auto 0 0;width:120px;background:linear-gradient(90deg,#e6e9e9,transparent);z-index:2}.energy-photo img{width:100%;height:100%;object-fit:cover;display:block}.projects{padding:58px 4.3% 70px}.project-head{display:flex;align-items:end;justify-content:space-between}.project-head h2{font-size:34px}.project-head>a{margin-bottom:25px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.project-grid article{border-radius:22px;overflow:hidden;background:#f0f2f2;box-shadow:0 8px 24px #00000010}.project-grid img{width:100%;height:225px;object-fit:cover;display:block}.project-grid h3{padding:0 18px 8px}.contact{text-align:center;padding:70px 20px 85px;background:#11191c;color:white}.contact small{color:#ff6500}.contact h2{font-size:36px}.contact .button{margin-top:8px}
@media(max-width:900px){.hero{height:650px}.header{height:88px;left:22px;right:22px}.logo{width:185px}.header nav{display:none}.hero-photo{width:100%;opacity:.62}.hero-shade{background:linear-gradient(90deg,#071014 0,rgba(7,16,20,.82) 46%,rgba(7,16,20,.25) 100%)}.hero-copy{left:26px;top:150px}.hero h1{font-size:48px}.services{grid-template-columns:1fr 1fr;margin:-60px 20px 0}.energy{grid-template-columns:1fr}.energy-copy{padding:55px 28px}.energy-photo{height:460px}.energy-photo:before{display:none}.project-grid{grid-template-columns:1fr}.project-grid img{height:260px}}
@media(max-width:560px){.hero{height:620px}.logo{width:155px}.hero h1{font-size:41px}.hero-copy{top:145px}.services{grid-template-columns:1fr;margin:-42px 16px 0}.service{height:210px}.pic{height:148px}.energy-photo{height:360px}.energy h2{font-size:40px}.project-head>a{display:none}.project-head h2{font-size:30px}}

/* ===== V1.0 layout lock + crisp energy transition ===== */
.energy-photo:before{
  display:none !important;
  content:none !important;
}
.energy-photo{
  overflow:hidden !important;
  border-radius:0 !important;
}
.energy-photo img{
  -webkit-mask-image:none !important;
  mask-image:none !important;
  opacity:1 !important;
}

/* Hard vertical transition between copy and image, no white/bright halo */
.energy{
  background:#e6e9e9 !important;
}
.energy-copy{
  position:relative;
  z-index:2;
  background:#e6e9e9;
}
.energy-photo{
  position:relative;
  z-index:1;
  background:#11191c;
}

/* Lock the approved service-card geometry */
.services{
  isolation:isolate;
}
.service{
  border-radius:22px !important;
  overflow:hidden !important;
}


/* ===== V1.1 precise visual fixes ===== */

/* Transparent original logo, with no white JPG rectangle */
.logo{
  background:transparent !important;
  mix-blend-mode:normal !important;
}

/* The pale horizontal band was part of the top of the energy image itself.
   Crop that top slice inside the image container; do not alter surrounding layout. */
.energy-photo{
  overflow:hidden !important;
}
.energy-photo img{
  width:100% !important;
  height:calc(100% + 22px) !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  transform:translateY(-22px) !important;
  display:block !important;
}

/* V1.8 — paths measured from source-image pixels, effect unchanged */
.energy-photo{position:relative!important;isolation:isolate!important;overflow:hidden!important}
.energyFlow-v18{position:absolute;left:0;top:-22px;width:100%;height:calc(100% + 22px);z-index:4;pointer-events:none;overflow:hidden}
.energyFlow-v18 path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.energyFlow-v18 .halo{stroke-width:18;opacity:.16;filter:url(#v18g)}
.energyFlow-v18 .shine{stroke-width:7;opacity:0;stroke-dasharray:18 82}
.energyFlow-v18 .green path{stroke:#63ff45}.energyFlow-v18 .cyan path{stroke:#22c7f2}.energyFlow-v18 .orange path{stroke:#ff6a00}
.energy-photo.flow-on .energyFlow-v18 .shine{animation:v18flow 3.8s cubic-bezier(.42,0,.35,1) infinite}
.energy-photo.flow-on .energyFlow-v18 .halo{animation:v18base 4.8s ease-in-out infinite}
.energy-photo.flow-on .energyFlow-v18 .orange.lower .shine{animation-delay:-1.5s}
.energy-photo.flow-on .energyFlow-v18 .cyan.left .shine{animation-delay:-.6s}
.energy-photo.flow-on .energyFlow-v18 .cyan.right .shine{animation-delay:-1.7s}
@keyframes v18flow{0%{stroke-dashoffset:18;opacity:.12}18%{opacity:.96}72%{opacity:.9}100%{stroke-dashoffset:-82;opacity:.1}}
@keyframes v18base{0%,100%{opacity:.09}50%{opacity:.2}}
@media(prefers-reduced-motion:reduce){.energyFlow-v18 .shine{animation:none!important;opacity:0!important}}

/* V1.9: subtler energy overlay */
.energyFlow-v18 .halo{opacity:.08!important}
@keyframes v18flow{0%{stroke-dashoffset:18;opacity:.06}18%{opacity:.52}72%{opacity:.48}100%{stroke-dashoffset:-82;opacity:.05}}
@keyframes v18base{0%,100%{opacity:.045}50%{opacity:.10}}
\n\n/* V1.21 — continuous cable colours + softer moving glow only */
.energyFlow-v18 .halo{
  stroke-width:24!important;
  opacity:0;
  stroke-dasharray:18 82;
  filter:url(#v18g);
}
.energyFlow-v18 .shine{
  stroke-width:6!important;
  opacity:0;
  stroke-dasharray:18 82;
}
.energy-photo.flow-on .energyFlow-v18 .halo{
  animation:v121glow 3.8s cubic-bezier(.42,0,.35,1) infinite!important;
}
.energy-photo.flow-on .energyFlow-v18 .shine{
  animation:v121shine 3.8s cubic-bezier(.42,0,.35,1) infinite!important;
}
.energy-photo.flow-on .energyFlow-v18 .orange.lower .halo,
.energy-photo.flow-on .energyFlow-v18 .orange.lower .shine{animation-delay:-1.5s!important}
.energy-photo.flow-on .energyFlow-v18 .cyan.left .halo,
.energy-photo.flow-on .energyFlow-v18 .cyan.left .shine{animation-delay:-.6s!important}
@keyframes v121shine{
  0%{stroke-dashoffset:18;opacity:.10}
  18%{opacity:.68}
  72%{opacity:.62}
  100%{stroke-dashoffset:-82;opacity:.08}
}
@keyframes v121glow{
  0%{stroke-dashoffset:18;opacity:.04}
  18%{opacity:.30}
  72%{opacity:.26}
  100%{stroke-dashoffset:-82;opacity:.03}
}


/* V1.24 — stability fix only. The problematic separate lower-orange animation was removed.
   All remaining V1.21 glow paths/effect are unchanged. */


/* ===== V1.30 — image/SVG coordinate-system lock =====
   The source image is 995×668. Both image and SVG now use the exact same
   enlarged viewport and the same 22px top crop, so their cover scaling matches. */
.energy-photo img{
  position:relative!important;
  width:100%!important;
  height:calc(100% + 22px)!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:translateY(-22px)!important;
}
.energy-photo .energyFlow-v31{
  position:absolute!important;
  left:0!important;
  top:-22px!important;
  width:100%!important;
  height:calc(100% + 22px)!important;
  transform:none!important;
}
\n\n/* ===== V1.40 service-card cleanup ===== */
/* Remove the bright hairline around the image/card top; keep accent only in icon + arrow. */
.service{
  border:1px solid rgba(255,255,255,.055) !important;
  box-shadow:0 16px 32px #0b11142b, inset 0 1px 0 rgba(255,255,255,.025) !important;
}
.service:hover{
  border-color:color-mix(in srgb,var(--a) 34%,rgba(255,255,255,.055)) !important;
  box-shadow:0 15px 38px color-mix(in srgb,var(--a) 25%,transparent) !important;
}
.pic{
  border:0 !important;
  box-shadow:none !important;
  outline:0 !important;
}
.bar{gap:13px !important}
.bar .service-icon{
  width:29px;
  height:29px;
  flex:0 0 29px;
  display:grid;
  place-items:center;
  color:var(--a);
}
.bar .service-icon svg{
  width:27px;
  height:27px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.bar .orange .service-icon svg{fill:currentColor}
.service.orange .service-icon svg{fill:currentColor;stroke:currentColor}
.service.orange .service-icon svg path{stroke:none}
.bar b{font-size:13px}
@media(max-width:560px){
  .bar .service-icon{width:31px;height:31px;flex-basis:31px}
  .bar .service-icon svg{width:29px;height:29px}
}


/* ===== V1.42 – echte Service-Kacheln ===== */
/* Der im Screenshot markierte helle Streifen ist der 1px-Rand der .service-Kachel. */
.service{
  border:0 !important;
  outline:0 !important;
  box-shadow:0 16px 32px rgba(11,17,20,.17) !important;
}
.service .pic{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

/* Deutlich sichtbarer Glow beim Überfahren – jeweils in der Akzentfarbe. */
.service:hover{
  transform:translateY(-7px) !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:
    0 18px 38px rgba(0,0,0,.24),
    0 0 18px color-mix(in srgb,var(--a) 78%,transparent),
    0 0 38px color-mix(in srgb,var(--a) 58%,transparent),
    0 0 68px color-mix(in srgb,var(--a) 34%,transparent) !important;
}


/* ===== V1.43 – Bilder bündig bis an den Kachelrand =====
   Kein heller Spalt/Innenabstand zwischen Bild und Außenkante. */
.service{
  padding:0 !important;
  overflow:hidden !important;
}
.service .pic{
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  overflow:hidden !important;
}
.service .pic img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:cover !important;
  border:0 !important;
  border-radius:0 !important;
  transform:none !important;
  transform-origin:center center;
}
/* Unterer dunkler Textbereich bleibt unverändert und bündig. */


/* ===== V1.45 – Kacheln korrigiert =====
   V1.44 verworfen: kein Vollflächenbild und kein vergrößerter Ausschnitt.
   Bilder wieder im ursprünglichen oberen Bildbereich, ohne Zoom. */
.service{
  overflow:hidden !important;
  background:#0b1114 !important;
}
.service .pic{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  outline:0 !important;
  background-size:cover !important;
  background-position:center center !important;
  box-shadow:none !important;
}
.service .pic img{
  transform:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  outline:0 !important;
}
/* Hover-Glow aus V1.42/V1.43 bleibt unverändert. */


/* ===== V1.46 – neue randfreie Servicebilder im passenden Kachelformat ===== */
.electrical{
  background-image:url("assets/service-electrical.jpg") !important;
  background-size:100% 100% !important;
  background-position:center !important;
}
.pv{
  background-image:url("assets/service-pv.jpg") !important;
  background-size:100% 100% !important;
  background-position:center !important;
}
.wallbox{
  background-image:url("assets/service-wallbox.jpg") !important;
  background-size:100% 100% !important;
  background-position:center !important;
}
.smart{
  background-image:url("assets/service-smart.jpg") !important;
  background-size:100% 100% !important;
  background-position:center !important;
}
.service .pic{
  height:126px !important;
  border:0 !important;
  outline:0 !important;
  margin:0 !important;
  padding:0 !important;
}
/* Glow, Icons, Kachelgröße und Energieanimation bleiben unverändert. */


/* ===== V1.48 – Perspektive zwischen V1.46 und V1.47 ===== */
.electrical{
  background-image:url("assets/service-electrical-v48.jpg") !important;
  background-size:100% 100% !important;
  background-position:center center !important;
}
.pv{
  background-image:url("assets/service-pv-v48.jpg") !important;
  background-size:100% 100% !important;
  background-position:center center !important;
}
.wallbox{
  background-image:url("assets/service-wallbox-v48.jpg") !important;
  background-size:100% 100% !important;
  background-position:center center !important;
}
.smart{
  background-image:url("assets/service-smart-v48.jpg") !important;
  background-size:100% 100% !important;
  background-position:center center !important;
}
.service .pic{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}
/* Hover-Glow, Icons, Kachelgeometrie und Energiefluss unverändert. */


/* ===== V1.49 – Elektroinstallation final in gewünschter Verteiler-Richtung ===== */
.electrical{
  background-image:url("assets/service-electrical-v49.jpg") !important;
  background-size:100% 100% !important;
  background-position:center center !important;
}
/* Alle anderen Kacheln, Hover-Glow und Energieanimation bleiben wie V1.48. */


/* ===== V1.50 – Bereich „Mehr als nur Strom.“ ===== */
.energy-copy{
  padding-top:68px !important;
  padding-right:9% !important;
}
.energy-copy small{
  display:block;
  margin-bottom:22px;
}
.energy h2{
  margin:0 0 24px !important;
  font-size:48px !important;
  line-height:.94 !important;
}
.energy-copy .energy-lead{
  max-width:420px;
  margin:0 0 16px;
  color:#343d40;
  font-size:15px;
  line-height:1.62;
}
.energy-copy .energy-statement{
  max-width:430px;
  margin:0;
  color:#111719;
  font-size:15px;
  line-height:1.62;
  font-weight:650;
}
.energy-points{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 0;
  margin-top:29px;
  max-width:460px;
}
.energy-points span{
  position:relative;
  color:#5c6669;
  font-size:11px;
  font-weight:750;
  letter-spacing:.045em;
  white-space:nowrap;
}
.energy-points span:not(:last-child)::after{
  content:"";
  display:inline-block;
  width:4px;
  height:4px;
  margin:0 12px 2px;
  border-radius:50%;
  background:#ff6500;
}
@media(max-width:900px){
  .energy-copy{padding:55px 28px !important}
  .energy h2{font-size:44px !important}
  .energy-copy .energy-lead,
  .energy-copy .energy-statement{max-width:560px}
}


/* ===== V1.51 – Projektbereich ===== */
.projects{
  padding:96px 7% 112px !important;
  background:#edf0ef;
}
.projects-head{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:70px;
  align-items:end;
  max-width:1380px;
  margin:0 auto 42px;
}
.projects-head small{
  color:#ff6500;
  font-size:11px;
  font-weight:800;
  letter-spacing:.11em;
}
.projects-head h2{
  margin:13px 0 0;
  color:#111719;
  font-size:44px;
  line-height:1.02;
  letter-spacing:-.035em;
}
.projects-head > p{
  max-width:470px;
  margin:0 0 5px auto;
  color:#687174;
  font-size:14px;
  line-height:1.7;
}
.project-grid-v51{
  display:grid !important;
  grid-template-columns:1.08fr 1fr 1fr;
  gap:22px !important;
  max-width:1380px;
  margin:0 auto;
}
.project-card{
  min-width:0;
}
.project-photo{
  position:relative;
  height:310px;
  overflow:hidden;
  border-radius:22px;
  background:#12191c;
  box-shadow:0 16px 34px rgba(15,22,25,.12);
}
.project-card-large .project-photo{
  height:354px;
}
.project-photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .65s cubic-bezier(.2,.75,.25,1),filter .5s ease;
}
.project-photo::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(4,8,10,.03) 48%,rgba(4,8,10,.34) 100%);
  pointer-events:none;
}
.project-card:hover .project-photo img{
  transform:scale(1.035);
  filter:saturate(1.05) contrast(1.02);
}
.project-no{
  position:absolute;
  z-index:2;
  top:18px;
  left:18px;
  color:rgba(255,255,255,.78);
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
}
.project-arrow{
  position:absolute;
  z-index:2;
  right:17px;
  bottom:17px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.38);
  border-radius:50%;
  color:white;
  background:rgba(7,13,15,.28);
  backdrop-filter:blur(7px);
  font-size:18px;
  transition:transform .25s ease,background .25s ease,border-color .25s ease;
}
.project-card:hover .project-arrow{
  transform:translate(2px,-2px);
  background:#ff6500;
  border-color:#ff6500;
}
.project-meta{
  padding:18px 5px 0;
}
.project-meta small{
  color:#ff6500;
  font-size:9px;
  font-weight:850;
  letter-spacing:.13em;
}
.project-meta h3{
  margin:7px 0 5px;
  color:#151b1d;
  font-size:18px;
  letter-spacing:-.02em;
}
.project-meta p{
  margin:0;
  color:#778083;
  font-size:11px;
  line-height:1.5;
}
@media(max-width:900px){
  .projects{padding:70px 28px 82px !important}
  .projects-head{grid-template-columns:1fr;gap:18px}
  .projects-head > p{margin:0;max-width:620px}
  .project-grid-v51{grid-template-columns:1fr !important}
  .project-photo,.project-card-large .project-photo{height:300px}
}


/* ===== V1.52 – Projektkarten vereinheitlicht ===== */
.project-grid-v51{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  align-items:start;
}
.project-grid-v51 .project-photo,
.project-grid-v51 .project-card-large .project-photo{
  height:330px !important;
}
.project-grid-v51 .project-card{
  display:flex;
  flex-direction:column;
}
.project-grid-v51 .project-meta{
  min-height:104px;
}
@media(max-width:900px){
  .project-grid-v51{grid-template-columns:1fr !important}
  .project-grid-v51 .project-photo{height:300px !important}
}


/* ===== V1.53 – Kontaktabschluss + Footer ===== */
/* Originales vorhandenes Logo im Header nur 10 % größer */
header .logo img,
.header .logo img,
.logo img{
  width:110% !important;
  max-width:none;
  transform-origin:left center;
}

.contact-v53{
  padding:94px 7%;
  background:#101719;
  color:#fff;
}
.contact-v53-inner{
  max-width:1380px;
  margin:auto;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:60px;
}
.contact-v53-copy small{
  color:#ff6500;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
}
.contact-v53-copy h2{
  margin:15px 0 22px;
  font-size:52px;
  line-height:1.02;
  letter-spacing:-.04em;
}
.contact-v53-copy h2 span{color:#ff6500}
.contact-v53-copy p{
  max-width:670px;
  margin:0;
  color:#aab2b4;
  font-size:14px;
  line-height:1.7;
}
.contact-v53-button{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:28px;
  padding:8px 9px 8px 24px;
  border:1px solid rgba(255,101,0,.65);
  border-radius:999px;
  color:#fff;
  text-decoration:none;
  font-size:13px;
  font-weight:750;
  transition:.25s ease;
}
.contact-v53-button b{
  width:46px;height:46px;display:grid;place-items:center;
  border-radius:50%;background:#ff6500;font-size:19px;
}
.contact-v53-button:hover{background:rgba(255,101,0,.1);transform:translateY(-2px)}

.footer-v53{
  padding:48px 7% 26px;
  background:#090e10;
  color:#fff;
}
.footer-v53-top,.footer-v53-bottom{
  max-width:1380px;margin:auto;display:flex;justify-content:space-between;gap:30px;
}
.footer-v53-top{align-items:center;padding-bottom:36px}
.footer-v53-brand strong{font-size:22px;text-transform:uppercase;letter-spacing:.06em}
.footer-v53-brand strong span{color:#ff6500}
.footer-v53-brand p{margin:8px 0 0;color:#717b7e;font-size:11px}
.footer-v53-nav{display:flex;gap:28px}
.footer-v53-nav a{color:#c6ccce;text-decoration:none;font-size:12px}
.footer-v53-nav a:hover{color:#ff6500}
.footer-v53-bottom{
  padding-top:22px;border-top:1px solid rgba(255,255,255,.08);
  color:#596366;font-size:10px;
}
@media(max-width:800px){
 .contact-v53-inner{display:block}
 .contact-v53-copy h2{font-size:42px}
 .contact-v53-button{margin-top:34px;width:max-content}
 .footer-v53-top,.footer-v53-bottom{display:block}
 .footer-v53-nav{margin-top:28px}
 .footer-v53-bottom span{display:block;margin:6px 0}
}


/* ===== V1.54 – gezielte Korrekturen ===== */

/* Vorhandenes ORIGINAL-Logo sichtbar exakt 10 % größer.
   transform:scale() wird nicht durch bestehende width/max-width Regeln neutralisiert. */
header .logo,
header .brand,
.site-header .logo,
.site-header .brand{
  overflow:visible !important;
}
header .logo img,
header .brand img,
.site-header .logo img,
.site-header .brand img,
.logo img,
.brand img{
  transform:scale(1.10) !important;
  transform-origin:left center !important;
}

/* Projektziffern sauber darstellen */
.project-no{
  letter-spacing:.12em !important;
  white-space:nowrap !important;
}


/* ===== V1.55 – echtes Logo feinjustiert ===== */
img.logo{
  transform:translateY(6px) scale(1.10) !important;
  transform-origin:left center !important;
}


/* ===== V1.56 – Logo etwas tiefer ===== */
img.logo{
  transform:translateY(18px) scale(1.10) !important;
  transform-origin:left center !important;
}


/* ===== V1.57 – finaler Kontaktbereich und Footer ===== */
.final-contact{
  position:relative;
  overflow:hidden;
  padding:105px 7% 110px;
  background:
    radial-gradient(circle at 76% 40%,rgba(255,101,0,.08),transparent 32%),
    linear-gradient(135deg,#11191c 0%,#0a1114 100%);
  color:#fff;
  text-align:center;
}
.final-contact::before{
  content:"";
  position:absolute;
  left:50%;top:0;
  width:1px;height:42px;
  background:linear-gradient(#ff6500,transparent);
}
.final-contact-inner{
  position:relative;
  max-width:850px;
  margin:auto;
}
.final-contact-kicker{
  margin-bottom:20px;
  color:#ff6500;
  font-size:10px;
  font-weight:850;
  letter-spacing:.15em;
}
.final-contact h2{
  margin:0;
  font-size:50px;
  line-height:1.03;
  letter-spacing:-.04em;
}
.final-contact h2 span{color:#ff6500}
.final-contact p{
  max-width:680px;
  margin:25px auto 31px;
  color:#9da7aa;
  font-size:14px;
  line-height:1.7;
}
.final-contact-btn{
  display:inline-flex;
  align-items:center;
  gap:28px;
  padding:16px 22px 16px 25px;
  border-radius:12px;
  background:#ff6500;
  color:#fff;
  text-decoration:none;
  font-size:13px;
  font-weight:800;
  box-shadow:0 12px 34px rgba(255,101,0,.18);
  transition:transform .25s ease,box-shadow .25s ease;
}
.final-contact-btn span{font-size:19px;line-height:1}
.final-contact-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 17px 42px rgba(255,101,0,.27);
}

.site-footer-final{
  padding:31px 7%;
  background:#070c0e;
  border-top:1px solid rgba(255,255,255,.065);
}
.site-footer-final-inner{
  max-width:1380px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px;
}
.footer-copy{
  display:flex;
  flex-direction:column;
  gap:5px;
}
.footer-copy strong{
  color:#dce0e1;
  font-size:12px;
  letter-spacing:.02em;
}
.footer-copy > span{
  color:#586266;
  font-size:9px;
}
.footer-legal{
  display:flex;
  align-items:center;
  gap:20px;
  color:#596367;
  font-size:10px;
}
.footer-legal a{
  position:relative;
  color:#8d9699;
  text-decoration:none;
  transition:color .2s ease;
}
.footer-legal a:hover{color:#ff6500}
.footer-legal a::before{
  content:"";
  position:absolute;
  left:-11px;top:50%;
  width:2px;height:2px;border-radius:50%;
  background:#596367;
}
@media(max-width:760px){
  .final-contact{padding:78px 25px 82px}
  .final-contact h2{font-size:39px}
  .site-footer-final-inner{display:block;text-align:center}
  .footer-copy{align-items:center}
  .footer-legal{justify-content:center;flex-wrap:wrap;margin-top:21px}
}


/* ===== V1.59 – Navigation ===== */
html{scroll-behavior:smooth}
#leistungen,#energie,#projekte,#kontakt{
  scroll-margin-top:24px;
}


/* ===== V1.61 – Leistungslinks ohne Layoutänderung ===== */
.service{
  position:relative;
}
.service-hit{
  position:absolute;
  inset:0;
  z-index:20;
  border-radius:inherit;
  text-decoration:none;
  cursor:pointer;
}

/* V1.108 – Kommunikation */
@media(min-width:901px){.services{grid-template-columns:repeat(5,minmax(0,1fr));}}
.service.violet{--a:#8b7cff}.communication{background-image:linear-gradient(135deg,rgba(7,16,20,.12),rgba(7,16,20,.66)),url("assets/communication-hero-v109.png");background-position:70% 54%;background-size:cover}.service.violet .service-icon svg{fill:none;stroke:currentColor;stroke-width:1.8}

/* V1.109 CMS text format */
.cms-size-small{font-size:.86em!important}.cms-size-normal{font-size:1em}.cms-size-large{font-size:1.16em!important}.cms-weight-normal{font-weight:400!important}.cms-weight-bold{font-weight:800!important}.cms-color-orange{color:#ff6500!important}

/* ===== V1.115 – angenehmere Skalierung auf großen Desktop-Bildschirmen =====
   Ziel: bei 100 % Browser-Zoom ungefähr die Lesbarkeit der bisherigen
   Darstellung bei ca. 120–125 %. Tablet/Mobil bleiben unverändert. */
@media (min-width:1400px) and (min-height:750px){
  .hero{height:680px}
  .header{height:124px;left:5.2%;right:5.2%}
  .logo{width:270px}
  .header nav{gap:38px;font-size:15px}
  .hero-copy{left:5.2%;top:164px}
  .hero h1{font-size:64px;margin-bottom:26px}
  .hero p{font-size:16px;line-height:1.58}
  .button{font-size:15px;padding:16px 23px;border-radius:10px;margin-top:21px}

  .services{margin:-60px 3.7% 0;gap:14px}
  .service{height:216px}
  .pic{height:145px}
  .bar{height:71px;padding:0 17px;gap:13px!important}
  .bar b{font-size:15px}
  .bar .service-icon{width:32px;height:32px;flex-basis:32px}
  .bar .service-icon svg{width:29px;height:29px}
  .bar i{width:32px;height:32px}

  .energy{min-height:610px;margin-top:40px}
  .energy-copy{padding-top:82px!important}
  .energy-copy small{font-size:12.5px;margin-bottom:25px}
  .energy h2{font-size:55px!important;margin-bottom:28px!important}
  .energy-copy .energy-lead,
  .energy-copy .energy-statement{font-size:17px;line-height:1.62;max-width:490px}
  .energy-points{max-width:520px;margin-top:32px}
  .energy-points span{font-size:12.5px}

  .projects-head h2{font-size:50px}
  .projects-head > p{font-size:16px}
  .contact-v53-copy h2{font-size:58px}
  .contact-v53-copy p{font-size:16px}
}

/* ===== V1.127 – Geräteübergreifende Telefonanzeige ===== */
.hero-phone{display:grid;grid-template-columns:24px auto;align-items:center;gap:10px;width:max-content;max-width:100%;margin-top:13px;color:#fff;font-size:18px;font-weight:800;line-height:1;text-decoration:none;position:relative;z-index:5;white-space:nowrap}
.hero-phone-icon{width:24px;height:24px;display:block;color:#ff6500}
.hero-phone-icon svg{width:22px;height:22px;display:block;fill:currentColor}
.hero-phone strong{display:block;white-space:nowrap;font:inherit;color:inherit}
@media(max-width:1100px){.hero-phone{font-size:17px}}
@media(max-width:560px){.hero-phone{font-size:16px}}
