:root{--forest:#123c32;--deep:#102e28;--paper:#f6f5ef;--mint:#d4edab;--ink:#183b32;--muted:#526159;--line:#cbd1c6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-underline-offset:5px}button,input,textarea,select{font:inherit}a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #9b470a;outline-offset:5px}.hero a:focus-visible,.partner-feature a:focus-visible,footer a:focus-visible{outline-color:var(--mint)}button,a,summary{touch-action:manipulation}button,summary{cursor:pointer}.skip{position:fixed;z-index:20;left:20px;top:-100px;background:white;color:var(--forest);padding:14px 22px}.skip:focus{top:12px}.preview-note{background:#e7eadf;text-align:center;font-size:12px;padding:7px 18px;color:#36493e}header{max-width:1600px;margin:auto;padding:27px 5%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-size:19px;font-weight:700;line-height:1.1;letter-spacing:2px;flex-shrink:0}.brand small{display:block;font-size:10px;letter-spacing:5px;margin-top:7px}.brand-icon{font-size:51px;line-height:1;letter-spacing:0}nav{display:flex;gap:30px;align-items:center}nav a{text-decoration:none;font-size:14px;padding:10px 0}nav a:hover,nav a[aria-current]{text-decoration:underline}.nav-contact{border:1px solid var(--ink);padding:11px 18px;display:inline-flex;gap:16px}.menu-toggle{display:none}.hero{position:relative;overflow:hidden;background:var(--forest);color:var(--paper);padding:76px 7% 82px;min-height:530px;display:flex;align-items:center}.home-hero{min-height:615px}.hero-copy{position:relative;z-index:1;max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;font-size:11px;font-weight:700;margin:0 0 24px}.hero .eyebrow{color:var(--mint)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(46px,5.4vw,82px);line-height:1.05;letter-spacing:-3.6px;font-weight:400;margin-bottom:28px}h2{font-size:clamp(32px,3.3vw,49px);line-height:1.13;letter-spacing:-1.8px;font-weight:400;margin-bottom:26px}h3{font-size:26px;font-weight:400;line-height:1.2;letter-spacing:-.6px;margin-bottom:12px}.hero-intro{max-width:540px;font-size:18px;line-height:1.65;color:#e1e8df;margin-bottom:32px}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.button{padding:15px 23px;display:inline-flex;align-items:center;justify-content:space-between;gap:27px;border:1px solid transparent;text-decoration:none;font-weight:700;font-size:14px;min-height:52px}.button:hover{filter:brightness(.92)}.light{background:var(--mint);color:var(--deep)}.dark{background:var(--forest);color:#fff}.hero-link{font-size:14px;padding:12px 0}.hero-art{position:absolute;right:-50px;top:0;width:48%;height:100%;color:#b5d190;opacity:.62}.hero-art svg{width:100%;height:100%;object-fit:cover}.art-label{position:absolute;bottom:36px;right:18%;font-size:9px;letter-spacing:2.5px}.art-cross{position:absolute;right:20%;top:60px;font-size:36px;font-weight:200}.brand-strip{padding:28px 7%;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:52px}.brand-strip>span{font-size:12px;letter-spacing:2px;font-weight:bold}.brand-strip p{margin:0 0 0 auto;font-size:12px;color:var(--muted);line-height:1.4}.section{padding:90px 7%;max-width:1600px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:36px}.section-heading>p{font-size:15px;color:var(--muted);margin-bottom:30px}.solutions{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.solution{display:flex;align-items:start;gap:25px;padding:35px 30px 35px 0;border-bottom:1px solid var(--line);text-decoration:none}.solution:nth-child(even){padding-left:35px;border-left:1px solid var(--line)}.solution:hover{background:#eceedf}.number{font-size:12px;color:var(--muted)}.solution .eyebrow{font-size:10px;margin-bottom:15px}.solution h3{font-size:30px}.solution p:last-child{font-size:14px;max-width:290px;margin-bottom:0;color:var(--muted)}.round-arrow{margin-left:auto;border:1px solid #9ead9f;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.partner-feature{background:var(--forest);color:var(--paper);padding:70px 7%;display:grid;grid-template-columns:1.1fr 1fr;gap:80px}.partner-feature .eyebrow{color:var(--mint)}.partner-feature p:not(.eyebrow){max-width:480px;color:#dbe5db;margin-bottom:28px}.partner-art{border-left:1px solid #638171;padding-left:60px;display:flex;position:relative;align-items:center}.partner-art span{font-size:clamp(34px,4.4vw,64px);line-height:1.12;letter-spacing:-2px;color:var(--mint)}.partner-art i{position:absolute;bottom:0;right:0;font-size:90px;font-style:normal;font-weight:100}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.prose{max-width:650px}.prose p,.form-section p{color:var(--muted)}.prose .large{font-size:24px;color:var(--ink);line-height:1.45}.text-link{font-size:14px;font-weight:bold;display:inline-block;padding:12px 0}.closing{background:var(--mint);padding:64px 7%}.closing h2{max-width:850px}.footer-top{display:flex;align-items:start;justify-content:space-between;gap:35px;padding-bottom:42px;border-bottom:1px solid #4a6558}.footer-top p{font-size:16px}.footer-top p span{color:#c0d1c2;font-size:14px}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:40px 0}.footer-links strong{display:block;color:#bcd1b5;font-size:11px;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:16px}.footer-links a{display:block;width:fit-content;padding:6px 0;font-size:14px;text-decoration:none}.footer-links a:hover{text-decoration:underline}footer{background:var(--deep);color:var(--paper);padding:60px 7% 22px}.footer-bottom{border-top:1px solid #4a6558;padding-top:22px;display:flex;justify-content:space-between;gap:24px;font-size:11px;color:#c0d1c2}.form-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;border-top:1px solid var(--line)}aside,.notice{background:#e9eddf;border-left:3px solid #53794d;padding:22px;margin:30px 0;font-size:14px}aside p{margin-bottom:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:14px;font-weight:bold;margin-bottom:20px}label span{font-weight:normal}input,textarea,select{display:block;width:100%;border:1px solid #7b8b7f;border-radius:0;background:#fffef9;color:var(--ink);padding:13px 12px;margin-top:8px;min-height:48px}textarea{resize:vertical}.help{font-size:12px;margin-top:-6px}#form-result:not(:empty){padding:20px;border:1px solid #7b8b7f;margin-top:24px}#form-result a{display:inline-block;padding:12px 0;font-weight:700}#form-result pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:14px}.steps{background:#e9eddf}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.step-grid article{border-top:1px solid #a3b39c;padding-top:24px}.step-grid h3{margin-top:24px}.step-grid p{color:var(--muted)}.software-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#e9eddf}.question-list details{border-bottom:1px solid #a3b39c;padding:20px 0}.question-list summary{font-size:20px;min-height:40px}.question-list p{margin:16px 0;color:var(--muted)}dl dt{font-weight:bold;margin-top:24px}dl dd{margin:4px 0 0;color:var(--muted)}.privacy-row{display:flex;justify-content:space-between;gap:24px;padding:20px 0;border-bottom:1px solid var(--line);font-size:14px}.privacy-row:last-of-type{margin-bottom:24px}li{margin-bottom:12px}
@media(min-width:1600px){.hero,.partner-feature,.closing,footer,.brand-strip{padding-left:max(7%,calc((100vw - 1376px)/2));padding-right:max(7%,calc((100vw - 1376px)/2))}}
@media(max-width:1000px){header{padding:22px 5%;flex-wrap:wrap}.menu-toggle{display:flex;gap:18px;border:1px solid var(--ink);background:transparent;color:var(--ink);padding:10px 14px;min-height:46px}nav{width:100%;display:flex;flex-wrap:wrap;gap:20px}.js nav{display:none}.js nav.open{display:flex}.hero-art{opacity:.25;width:55%}.hero-copy{max-width:680px}.split,.form-section,.software-section{gap:40px}.partner-feature{gap:35px}.partner-art{padding-left:30px}.brand-strip{gap:25px}}
@media(max-width:650px){.preview-note{font-size:10px}.brand{font-size:16px}.brand-icon{font-size:42px}.brand small{font-size:8px}nav,.js nav.open{flex-direction:column;align-items:stretch;gap:0}nav a{padding:14px 10px}.hero,.home-hero{min-height:0;padding:56px 6% 64px}.hero h1{font-size:46px;letter-spacing:-2px}.hero-intro{font-size:16px}.hero-art{right:-100px;width:90%;opacity:.14}.art-label,.art-cross{display:none}.eyebrow{font-size:10px}.hero-actions{gap:12px;align-items:start;flex-direction:column}.brand-strip{padding:22px 6%;gap:20px;flex-wrap:wrap}.brand-strip>span{font-size:9px;letter-spacing:1px}.brand-strip p{width:100%;margin:0}.brand-strip p br{display:none}.section{padding:56px 6%}.section-heading{display:block}.section-heading>p{margin:0}.section-heading>p br{display:none}.solutions,.split,.form-section,.software-section,.step-grid{grid-template-columns:1fr;gap:28px}.solutions{gap:0}.solution,.solution:nth-child(even){border-left:0;padding:28px 0;gap:15px}.solution h3{font-size:26px}.solution .round-arrow{width:32px;height:32px}.partner-feature{padding:52px 6%;grid-template-columns:1fr}.partner-art{min-height:200px;border-left:0;border-top:1px solid #638171;padding:30px 0 0}.partner-art span{font-size:42px}.partner-art i{font-size:70px}.closing{padding:52px 6%}.footer-top{flex-direction:column;gap:20px}.footer-top p{margin:0}.footer-links{grid-template-columns:1fr 1fr;gap:28px}.footer-bottom{flex-direction:column;gap:8px}.form-grid{grid-template-columns:1fr;gap:0}.privacy-row{flex-direction:column;gap:4px}.prose .large{font-size:21px}h2{font-size:35px}footer{padding:48px 6% 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}@media print{.preview-note,nav,.menu-toggle,.hero-art,footer,.hero-actions{display:none}.hero{background:white;color:#123c32;padding:25px 0;min-height:0}.hero-intro,.hero .eyebrow{color:#123c32}.section{padding:30px 0}body{background:white}.button{display:none}}
/* Keep long German labels within narrow screens and enlarged text layouts. */
.hero-copy,.solution>div,.footer-links>div,.split>div,.form-section>*,.software-section>*,.step-grid>*{min-width:0}h1,h2,h3,.eyebrow,.footer-links, .prose{overflow-wrap:anywhere}.footer-links{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:650px){.footer-links{grid-template-columns:1fr}.hero h1{font-size:clamp(38px,10.8vw,46px)}}button:disabled{opacity:.6;cursor:not-allowed}
@media(max-width:650px){.partner-art i{display:none}}
/* Original supplied wordmark, displayed without resampling the asset file.
   The source has unused space to the right; the wrapper clips only that space. */
.logo-crop{display:block;width:320px;height:36px;overflow:hidden;flex-shrink:0}.logo-crop img{display:block;width:627px;height:36px;max-width:none}header{background:var(--deep);color:var(--paper);max-width:none}header .nav-contact,header .menu-toggle{border-color:var(--mint);color:var(--paper)}header a:focus-visible,header button:focus-visible{outline-color:var(--mint)}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 50px}.service-grid article{padding:28px 0;border-top:1px solid var(--line)}.service-grid article p:last-child{color:var(--muted);max-width:540px}.service-grid .eyebrow{margin-bottom:15px}.service-grid h3{max-width:440px}aside a{overflow-wrap:anywhere}@media(max-width:1100px){header{gap:20px}nav{gap:18px}}@media(max-width:650px){.logo-crop{width:246px;height:28px}.logo-crop img{width:482px;height:auto}.service-grid{grid-template-columns:1fr}header{gap:18px}.footer-top .brand{max-width:100%}}
/* Align the footer's opening row and give the tagline more presence. */
.footer-top{align-items:center}
.footer-top>p{margin:0;font-size:20px;line-height:1.4}
@media(max-width:650px){.footer-top{align-items:flex-start}.footer-top>p{font-size:18px}}

.legal-document{max-width:1100px}.legal-document h2{font-size:clamp(26px,3vw,36px);margin-top:54px;letter-spacing:-.8px}.legal-document h3{font-size:23px;margin-top:30px}.legal-document p{max-width:78ch}.legal-document a{overflow-wrap:anywhere}
/* Shared banner dimensions, recalculated from every page's copy for each viewport. */
.hero,.home-hero,.inner-hero{height:var(--shared-hero-height,690px);min-height:690px;padding-top:64px;padding-bottom:64px}
.hero-copy{width:59%;max-width:760px;flex-shrink:0}
.energy-art{width:39%;height:100%;right:2%;top:0;opacity:1;display:flex;align-items:center;pointer-events:none}
.energy-art img{display:block;width:100%;height:auto;max-height:100%;object-fit:contain}
.hero-measure{position:absolute!important;left:0;top:0;width:100%;height:auto!important;min-height:0!important;visibility:hidden!important;pointer-events:none!important;z-index:-1}
@media(max-width:1000px){.hero-copy{width:76%}.energy-art{width:45%;right:-4%;opacity:.22}}
@media(max-width:650px){.hero,.home-hero,.inner-hero{height:var(--shared-hero-height,900px);min-height:0;padding-top:48px;padding-bottom:48px}.hero-copy{width:100%}.energy-art{width:85%;right:-12%;opacity:.1}}
@media print{.hero,.home-hero,.inner-hero{height:auto;min-height:0}.hero-copy{width:100%}.energy-art,.hero-measure{display:none}}

/* Accessibility: spacious controls, focus visibility, reflow and text enlargement. */
nav a,.footer-links a{min-height:44px;display:flex;align-items:center}
#form-result:focus{outline:3px solid #9b470a;outline-offset:5px}
.form-trap{display:none}
.hero,.home-hero,.inner-hero{height:auto;min-height:var(--shared-hero-height,690px)}
.hero-measure{min-height:0!important}
.hero-copy,.hero-intro,.form-section{overflow-wrap:anywhere}
input,textarea,select{font-size:1rem}
.help{font-size:.875rem}
@media(forced-colors:active){a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid Highlight}.button{border:1px solid ButtonText}}
@media print{.hero,.home-hero,.inner-hero{min-height:0}}

/* Persistent, programmatically associated error messages. */
.field-error{display:block;color:#8b251d;font-size:.875rem;font-weight:700;margin-top:8px}
.field-error:empty{display:none}
.error-summary:not([hidden]){border:2px solid #8b251d;padding:20px;margin-bottom:24px}
.error-summary:focus{outline:3px solid #9b470a;outline-offset:4px}
.error-summary ul{margin-bottom:0;padding-left:24px}
[aria-invalid="true"]{border:2px solid #8b251d}

.field-group{min-width:0;margin-bottom:20px}.field-group label{margin-bottom:0}
/* Keyboard focus must arrive in view immediately, without a scrolling animation. */
html:focus-within{scroll-behavior:auto}

/* Accessible, unobtrusive control for ongoing decorative motion. */
.animation-toggle{position:absolute;right:20px;bottom:12px;z-index:3;min-height:44px;padding:8px 12px;border:1px solid #88ab8d;border-radius:4px;background:#123c32;color:#d4edab;font:13px Arial,sans-serif;cursor:pointer}
.animation-toggle[hidden]{display:none}
@media print{.animation-toggle{display:none}}

.direct-contact a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;overflow-wrap:anywhere;font-size:clamp(1rem,2vw,1.4rem)}
.direct-contact h3{margin-bottom:4px}
.direct-contact p{margin-top:0;margin-bottom:24px}
