@font-face{font-family:Manrope;src:url('assets/fonts/manrope-400.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url('assets/fonts/manrope-500.ttf') format('truetype');font-weight:500;font-display:swap}@font-face{font-family:Manrope;src:url('assets/fonts/manrope-600.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Manrope;src:url('assets/fonts/manrope-700.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--ink:#202725;--paper:#f5f5f0;--line:#d7dcd4;--muted:#606b63;--accent:#d1e3ad;--dark:#202e29}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.7 Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid #597346;outline-offset:6px}a:hover{text-decoration:underline;text-underline-offset:5px}img{display:block;max-width:100%;height:auto}.skip{position:fixed;top:-100px;left:20px;background:#fff;padding:12px;z-index:10}.skip:focus{top:12px}.header{max-width:1600px;margin:auto;padding:32px 5%;display:flex;align-items:center;justify-content:space-between;gap:40px;border-bottom:1px solid var(--line)}.brand{display:block;width:235px;flex-shrink:0}.header nav{display:flex;align-items:center;gap:32px;font-size:12px;font-weight:600}.nav-contact{border:1px solid #b2bab0;padding:12px 18px;display:flex;gap:30px}.mobile-nav{display:none}.hero{padding:40px 5% 0;max-width:1600px;margin:auto}.hero-top{display:flex;justify-content:space-between;gap:20px;align-items:center}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.4px;margin:0 0 28px}.hero-top .eyebrow{margin:0}.dot{width:7px;height:7px;display:inline-block;background:#72875d;border-radius:50%;margin-right:8px}.hero-index{font-size:9px;letter-spacing:1px;color:var(--muted)}.hero-title{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;padding:55px 0 58px}h1{font-size:clamp(60px,7.4vw,110px);line-height:1.02;letter-spacing:-6px;font-weight:500;margin:0}h1 span{color:#7e8a7e}.hero-aside{max-width:295px;padding-bottom:8px}.hero-aside p{font-size:16px;line-height:1.8;margin:0 0 28px}.arrow-link{display:inline-flex;align-items:center;gap:25px;border-bottom:1px solid #a0aaa0;padding-bottom:8px;font-size:12px;font-weight:600}.arrow-link span{font-size:20px}.hero-image{margin:0;position:relative;background:#dae2d4;height:clamp(350px,39vw,570px);overflow:hidden}.hero-image>img{height:100%;width:100%;object-fit:cover;object-position:center 62%}.image-label{position:absolute;top:25px;left:28px;right:28px;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:1.2px;color:#fff;text-shadow:0 1px 6px #152d1f}.hero-image figcaption{position:absolute;bottom:13px;right:18px;color:#fff;background:#20302bc9;padding:4px 8px;font-size:9px}.hero-foot{padding:22px 0;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);font-size:11px;color:var(--muted)}.hero-foot a{color:var(--ink)}.hero-foot a span{margin-left:20px}.section{padding:110px max(5%,calc((100vw - 1440px)/2));}h2{font-size:clamp(34px,3.7vw,57px);line-height:1.16;font-weight:500;letter-spacing:-2px;margin:0 0 30px}h3{font-weight:500;line-height:1.3;letter-spacing:-.7px}.intro{display:grid;grid-template-columns:1fr 2.15fr;gap:60px}.intro>div{max-width:850px}.intro .lead{font-size:23px;line-height:1.6;letter-spacing:-.4px}.intro p:not(.lead):not(.eyebrow){color:var(--muted);max-width:680px;font-size:15px;margin-bottom:28px}.section-heading{display:grid;grid-template-columns:1fr 2.15fr;gap:60px;margin-bottom:36px}.section-heading .eyebrow{padding-top:8px}.fields{background:#e9ede4}.field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.field{background:var(--paper);border:1px solid #dce2d5}.field-art{height:220px;background:#d6ddce;display:grid;place-items:center;overflow:hidden}.field-art svg{width:85%;height:100%;fill:none;stroke:#52674b;stroke-width:1.4}.wind-art{background:#dde4d8}.road-art{background:#c8d1c1}.road-art svg path:last-child{stroke-width:1}.road-art svg path:first-child{stroke-width:2}.field-content{padding:32px}.field-content>span{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.field h3{font-size:29px;margin:20px 0}.field p{font-size:13px;color:var(--muted);line-height:1.9;margin-bottom:30px;min-height:125px}.field a{font-size:11px;font-weight:600}.services{background:var(--dark);color:#f4f6f0}.services .eyebrow{color:#bbc7b9}.service-intro{max-width:610px;margin:0 0 48px 34%;font-size:15px;color:#b8c3bb}.service-list{border-top:1px solid #59665e}.service-list details{border-bottom:1px solid #59665e}.service-list summary{display:grid;grid-template-columns:70px 1fr 30px;gap:20px;padding:28px 0;cursor:pointer;list-style:none;align-items:center}.service-list summary::-webkit-details-marker{display:none}.service-list summary>span:first-child{font-size:11px;color:#a6b59f}.service-list h3{font-size:clamp(23px,3vw,38px);margin:0}.plus{font-size:26px;font-weight:400;text-align:center;transition:transform .2s}.service-list details[open] .plus{transform:rotate(45deg)}.detail{margin:0 60px 32px 90px;max-width:720px;color:#c8d1c8;font-size:15px}.tags{font-size:9px;letter-spacing:1.4px;color:var(--accent);margin:24px 0 0}.approach-head{display:grid;grid-template-columns:1.5fr 1fr;gap:10%}.approach-head>p{max-width:400px;color:var(--muted);font-size:15px}.steps{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:0;margin:55px 0 0;gap:45px}.steps li{border-top:1px solid #a8b3a3;padding-top:23px}.steps span{font-size:11px;color:var(--muted)}.steps h3{font-size:27px;margin:30px 0 15px}.steps p{font-size:14px;color:var(--muted);max-width:300px}.contact{background:var(--accent);display:grid;grid-template-columns:1.5fr 1fr;gap:10%;align-items:center}.contact h2{font-size:clamp(55px,7vw,100px);letter-spacing:-4px;line-height:1.03}.contact h2 em{font-style:normal;color:#5b7049}.contact>div>p:not(.eyebrow){font-size:15px}.contact-button{display:inline-flex;gap:55px;align-items:center;padding:16px 24px;background:var(--ink);color:#fff;font-size:12px;margin-top:18px}.contact-button:hover{background:#364038;text-decoration:none}.contact-person{border-left:1px solid #9eaf86;padding-left:50px}.contact-person h3{font-size:27px;margin:0 0 8px}.contact-person>p{margin-bottom:32px;color:#526043}.contact-person>a{display:block;border-bottom:1px solid #a1b28a;padding:12px 0;font-size:17px}.contact-person address{font-style:normal;font-size:13px;margin:30px 0 15px}.contact-person small{font-size:11px;color:#536145}.footer{padding:60px 5% 28px;display:grid;grid-template-columns:1.4fr 1.4fr .6fr;gap:40px;max-width:1600px;margin:auto;font-size:12px}.footer img{width:200px;margin:0 0 22px}.footer p{font-size:12px;color:var(--muted)}.footer-links{display:flex;flex-direction:column;gap:10px}.footer small{grid-column:1/-1;font-size:10px;color:#7a8478;border-top:1px solid var(--line);padding-top:22px}.legal{max-width:1000px;margin:auto;padding-inline:5%}.legal h1{font-size:clamp(32px,5vw,60px);letter-spacing:-2px;overflow-wrap:anywhere;margin-bottom:40px}.legal h2{font-size:24px;letter-spacing:-.6px;margin-top:38px}.legal p,.legal li{font-size:15px;color:#4f5d52}.legal a{text-decoration:underline;overflow-wrap:anywhere}
@media(min-width:1700px){.section{padding-inline:calc((100vw - 1440px)/2)}}
@media(max-width:1050px){.header{gap:20px}.brand{width:190px}.header nav{gap:20px;font-size:11px}.nav-contact{gap:15px;padding:10px 12px}.hero-title{gap:35px}h1{font-size:76px;letter-spacing:-4px}.hero-aside{max-width:250px}.hero-aside p{font-size:14px}.field-content{padding:24px}.field h3{font-size:26px}.field p{min-height:165px}.contact-person{padding-left:30px}.contact-person>a{font-size:14px}}
@media(max-width:760px){.header{padding-block:23px;position:relative}.brand{width:185px}.header>nav{display:none}.mobile-nav{display:block}.mobile-nav summary{font-size:12px;cursor:pointer;list-style:none;display:flex;gap:13px}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{position:absolute;left:0;right:0;top:100%;z-index:5;display:flex;flex-direction:column;align-items:stretch;background:var(--paper);padding:24px 5%;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #20272510}.mobile-nav nav a{padding:10px 0}.hero{padding-top:26px}.hero-top .eyebrow{font-size:8px;letter-spacing:.6px}.hero-index{display:none}.hero-title{display:block;padding:35px 0}h1{font-size:clamp(42px,10vw,74px);letter-spacing:-2.8px}.hero-aside{max-width:340px;margin-top:26px}.hero-aside p{font-size:14px;margin-bottom:20px}.hero-image{height:360px}.hero-image>img{object-position:65% center}.image-label{left:16px;top:17px;font-size:8px}.image-label span:last-child{display:none}.hero-foot{gap:20px;font-size:10px;align-items:center}.hero-foot>span{max-width:135px}.hero-foot a{max-width:150px}.section{padding:65px 6%}h2{font-size:35px;letter-spacing:-1.2px}.intro,.section-heading{grid-template-columns:1fr;gap:12px}.intro .lead{font-size:19px}.eyebrow{margin-bottom:22px}.field-grid{grid-template-columns:1fr;gap:22px}.field-art{height:180px}.field-art svg{max-width:320px}.field-content{padding:28px}.field h3{font-size:28px}.field h3 br{display:none}.field p{min-height:0;font-size:14px;margin-bottom:24px}.service-intro{margin-left:0;font-size:14px}.service-list summary{grid-template-columns:28px 1fr 24px;gap:10px;padding:23px 0}.service-list h3{font-size:23px}.detail{margin-left:38px;margin-right:0;font-size:14px}.tags{font-size:8px;line-height:1.9}.approach-head{grid-template-columns:1fr;gap:0}.steps{grid-template-columns:1fr;gap:22px;margin-top:30px}.steps li{display:grid;grid-template-columns:30px 1fr;gap:8px 16px}.steps span{padding-top:7px}.steps h3{margin:0;font-size:25px}.steps p{grid-column:2;max-width:none;margin-top:0}.contact{grid-template-columns:1fr;gap:55px}.contact h2{font-size:65px;letter-spacing:-2px}.contact-person{border-left:0;border-top:1px solid #9eaf86;padding:30px 0 0}.contact-person>a{font-size:17px}.footer{grid-template-columns:1fr;gap:25px;padding-inline:6%}.footer small{grid-column:1}.footer-links{flex-direction:row;flex-wrap:wrap;gap:25px}.legal h1{font-size:34px;letter-spacing:-1px}.legal h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.plus{transition:none}}

.references{background:#eef0e9}.references-intro{max-width:650px;margin:0 0 45px 34%;color:var(--muted);font-size:15px}.reference-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #bdc7b5;border-left:1px solid #bdc7b5}.reference-grid article{padding:30px 24px;min-height:180px;border-right:1px solid #bdc7b5;border-bottom:1px solid #bdc7b5}.reference-grid article>span{font-size:8px;letter-spacing:1px;color:var(--muted)}.reference-grid h3{font-size:24px;margin:25px 0 0}.reference-contact{background:var(--accent)}.reference-contact p{font-size:15px;margin:0 0 18px}.reference-contact .arrow-link{font-size:11px;gap:12px}@media(max-width:1100px){.header nav{gap:16px}.reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.references-intro{margin-left:0}.reference-grid article{padding:24px 18px;min-height:155px}.reference-grid h3{font-size:21px}.reference-grid article>span{font-size:7px;letter-spacing:.4px}}@media(max-width:420px){.reference-grid{grid-template-columns:1fr}.reference-grid article{min-height:0}.reference-grid h3{margin-top:12px}}

.regional{border-top:1px solid var(--line)}.regional-copy{max-width:720px;margin-left:34%;color:var(--muted);font-size:15px}.regional-copy .arrow-link{color:var(--ink);margin-top:16px}@media(max-width:760px){.regional-copy{margin-left:0}}

/* Überarbeitete Gestaltung: klarere Hierarchie und großzügige Projektübersicht */
:root{--paper:#fafbf8;--ink:#202924;--line:#dce2d8;--accent:#dcecc7;--dark:#20352c}
.header{padding-block:26px}.nav-contact{border-radius:30px;background:#fff;padding:12px 20px}.hero-title{padding-block:60px}.hero-image{border-radius:14px}.hero-aside p{font-size:17px}.field{border:0;border-radius:14px;overflow:hidden}.field-art{background:#e0e7d8}.wind-art{background:#e7ecdf}.road-art{background:#d4dfcd}.fields{background:#f0f3eb}.field-content{padding:32px}.services{border-radius:24px;margin:0 2%}.contact-button{border-radius:30px}.contact{background:#e4eed8}
.references{background:#f0f3ed;border-top:0}.reference-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:10%;align-items:end;margin-bottom:48px}.reference-heading h2{font-size:clamp(36px,4.2vw,64px);margin-bottom:0;letter-spacing:-2.4px}.reference-heading>p{font-size:16px;line-height:1.85;color:var(--muted);max-width:420px;margin:0 0 5px}.reference-showcase{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}.reference-energy{background:#20352c;color:#fff;padding:42px;border-radius:16px;position:relative;overflow:hidden}.reference-energy:after{content:"";position:absolute;right:-100px;top:100px;width:330px;height:330px;border:1px solid #9ebd8f20;border-radius:50%;box-shadow:0 0 0 45px #9ebd8f08,0 0 0 90px #9ebd8f05;pointer-events:none}.reference-kicker{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:10px;letter-spacing:1.2px}.reference-kicker>span:last-child{font-size:22px;letter-spacing:0}.reference-energy .reference-kicker{color:#c5d6b9}.reference-energy h3{font-size:clamp(26px,2.6vw,39px);line-height:1.2;letter-spacing:-1px;margin:30px 0 32px;position:relative;z-index:1}.voltage{position:relative;z-index:1;display:flex;gap:24px;align-items:center;padding:26px 0 35px;border-bottom:1px solid #5a7060}.voltage>strong{font-size:clamp(70px,7vw,108px);letter-spacing:-5px;line-height:1;font-weight:500;color:#d8edb8;white-space:nowrap}.voltage>strong span{font-size:26px;letter-spacing:-1px}.voltage>p{font-size:15px;line-height:1.7;margin:0;color:#e8eee4}.energy-projects{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:32px 0}.energy-projects span{font-size:8px;letter-spacing:1.2px;color:#bfd1b2}.energy-projects h4{font-size:20px;line-height:1.4;font-weight:500;margin:10px 0}.reference-note{font-size:11px;color:#bfccbd;margin:25px 0 0;max-width:350px}.reference-stack{display:grid;grid-template-rows:repeat(3,1fr);gap:18px}.reference-stack article{background:#fff;border-radius:14px;padding:28px 32px}.reference-stack .reference-kicker{color:#71816c;font-size:9px}.reference-stack h3{font-size:30px;letter-spacing:-.8px;margin:12px 0}.reference-stack p{font-size:13px;color:var(--muted);margin:0;max-width:420px}.reference-end{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #cdd7c7;margin-top:32px;padding-top:25px}.reference-end p{font-size:13px;color:var(--muted);margin:0}
@media(max-width:1050px){.reference-energy{padding:30px}.voltage{gap:15px}.voltage>strong{font-size:78px}.voltage>p{font-size:13px}.reference-stack article{padding:24px}.reference-heading{gap:7%}.hero-aside p{font-size:15px}}
@media(max-width:760px){.hero-title{padding-block:35px}.hero-image{border-radius:10px}.services{margin-inline:0;border-radius:0}.reference-heading{grid-template-columns:1fr;gap:24px;margin-bottom:30px}.reference-heading h2{font-size:39px;letter-spacing:-1.5px}.reference-heading>p{font-size:14px}.reference-showcase{grid-template-columns:1fr;gap:18px}.reference-energy{padding:28px}.reference-energy h3{font-size:30px}.voltage>strong{font-size:84px}.voltage>p{font-size:14px}.energy-projects{gap:18px}.energy-projects h4{font-size:18px}.reference-stack h3{font-size:27px}.reference-stack article{padding:24px 28px}.reference-end{align-items:flex-start;flex-direction:column;gap:15px}.reference-end .arrow-link{font-size:11px;gap:12px}.field-content{padding:28px}}
@media(max-width:380px){.voltage{flex-wrap:wrap}.voltage>strong{font-size:74px}.energy-projects{grid-template-columns:1fr}}

/* Raum für fachlich präzisere Überschriften */
.reference-stack h3{font-size:clamp(23px,2.2vw,30px);overflow-wrap:break-word}.reference-stack article{min-width:0}.field h3{font-size:27px}@media(max-width:760px){.reference-stack h3{font-size:25px}.field h3{font-size:26px}}

.reference-civil{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}.reference-civil article{padding:30px 32px;background:#fff;border-radius:14px}.reference-civil .reference-kicker{color:#71816c;font-size:9px}.reference-civil h3{font-size:28px;letter-spacing:-.7px;margin:16px 0}.reference-civil p{font-size:14px;color:var(--muted);margin:0;max-width:520px}.voltage>strong span{text-transform:none}@media(max-width:760px){.reference-civil{grid-template-columns:1fr;gap:18px;margin-top:18px}.reference-civil article{padding:24px 28px}.reference-civil h3{font-size:25px}}

.reference-stack{grid-template-rows:repeat(2,1fr)}

.language-switch{display:flex;gap:8px;align-items:center;font-size:11px;flex-shrink:0}.language-switch a{padding:6px 2px;color:var(--muted)}.language-switch a[aria-current="page"]{color:var(--ink);font-weight:700;border-bottom:2px solid var(--ink)}.language-switch>span{color:#9aa494}.header{gap:22px}.header>nav{margin-left:auto;gap:20px}html[lang="en"] .contact h2{font-size:clamp(44px,5.5vw,78px)}html[lang="en"] .hero-title h1{font-size:clamp(48px,6.8vw,100px)}@media(max-width:1100px) and (min-width:761px){.header{flex-wrap:wrap}.header>nav{order:3;width:100%;justify-content:flex-end}.language-switch{margin-left:auto}}@media(max-width:760px){.language-switch{margin-left:auto}.header{gap:15px}.brand{width:160px}.header>nav{display:none}html[lang="en"] .hero-title h1{font-size:clamp(39px,8.5vw,64px);letter-spacing:-2px}html[lang="en"] .service-list h3{font-size:21px}html[lang="en"] .contact h2{font-size:52px}}@media(max-width:380px){.brand{width:135px}.header{gap:10px}.language-switch{gap:5px}}


/* Behebt übergroße viewportabhängige Innenabstände der Rechtsseiten. */
main.legal.section {
  box-sizing: border-box;
  width: 100%;
  max-width: 1000px;
  margin-inline: auto;
  padding-inline: clamp(20px, 5vw, 64px);
  padding-block: clamp(48px, 6vw, 96px);
  min-width: 0;
}
main.legal.section h1 {
  font-size: clamp(30px, 4vw, 54px);
  line-height: 1.15;
  letter-spacing: -1px;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: auto;
}
main.legal.section h2 {
  font-size: clamp(21px, 2vw, 26px);
  line-height: 1.35;
  overflow-wrap: break-word;
}
main.legal.section p,
main.legal.section li {
  line-height: 1.8;
  overflow-wrap: break-word;
}
main.legal.section a {
  overflow-wrap: anywhere;
}
