:root{--ink:#dce6f0;--muted:#a4b4c8;--accent:#b59a52;--panel:#10203a;--line:#273d57;--ground:#071224;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:190px}body{margin:0;background:var(--ground);color:var(--ink);font:1rem/1.6 Arial,Helvetica,sans-serif}.wrap{width:min(1140px,calc(100% - 40px));margin:auto}header{padding:22px 0;border-bottom:1px solid var(--line);background:#071224f5;position:sticky;top:0;z-index:2}.nav{display:flex;justify-content:space-between;align-items:center;gap:30px}.brand{font-weight:800;max-width:430px;font-size:1.08rem;line-height:1.4}nav{display:flex;gap:22px;flex-wrap:wrap}a{color:inherit;text-decoration:none;overflow-wrap:anywhere}nav a,footer a{color:var(--muted)}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.hero{padding:100px 0 72px;background:radial-gradient(ellipse at 85% 30%,#1a355066,transparent 60%),linear-gradient(135deg,#071224,#101f37);border-bottom:1px solid #273d57}.eyebrow,.number{color:var(--accent);letter-spacing:.12em;font-weight:700;font-size:.875rem}.eyebrow{text-transform:uppercase}.hero h1{font-size:clamp(2.3rem,5.7vw,4.8rem);line-height:1.1;max-width:1050px;margin:17px 0 25px;letter-spacing:-.035em}.intro{font-size:1.15rem;max-width:770px;color:var(--muted)}.software{letter-spacing:.16em;margin:0;font-size:.95rem;color:var(--muted)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.button,button{display:inline-block;padding:13px 21px;background:var(--accent);color:#071224;font:700 1rem/1.4 Arial,sans-serif;border:1px solid var(--accent);border-radius:4px;cursor:pointer;text-align:center}.secondary{background:transparent;color:var(--ink);border-color:#557c8e}.button:hover,button:hover{filter:brightness(1.12);text-decoration:none}section{padding:76px 0}h2{font-size:clamp(1.85rem,3vw,2.65rem);line-height:1.2;margin:0 0 20px;letter-spacing:-.025em}h3{font-size:1.22rem;line-height:1.4;margin:0 0 12px}p{margin:0 0 18px}.services{margin-top:40px}.service{display:grid;grid-template-columns:60px 1fr;gap:18px;padding:32px 0;border-top:1px solid var(--line)}.service>div{max-width:900px}.service p,.card p,.steps p{color:var(--muted)}summary{cursor:pointer;color:var(--accent);padding:8px 0;font-weight:700}ul{padding-left:22px}li{padding:4px 0}li::marker{color:var(--accent)}.tinted{background:#0c1b32;border-block:1px solid var(--line)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.card{padding:25px;background:var(--panel);border:1px solid var(--line);border-radius:7px}.card p{margin:0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding-left:22px;margin:35px 0 0}.contact{display:grid;grid-template-columns:1fr 1fr;gap:40px}.contactbox{padding:28px;border-left:3px solid var(--accent);background:var(--panel);font-style:normal}.contactbox strong{display:block;margin-bottom:16px}.contactbox a{line-height:2}footer{padding:28px 0;border-top:1px solid var(--line);color:var(--muted)}fieldset{border:1px solid var(--line);padding:24px;margin:28px 0;border-radius:7px;min-width:0}legend{font-size:1.2rem;font-weight:700;padding:0 10px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}label{display:block;font-size:1rem;margin-bottom:14px}input,textarea,select{display:block;width:100%;background:#071426;border:1px solid #557382;border-radius:4px;color:var(--ink);padding:12px;font:inherit;margin-top:7px}input:focus,textarea:focus,select:focus{outline:2px solid var(--accent);outline-offset:2px}textarea{resize:vertical}.notice{color:var(--muted);font-size:.95rem;max-width:850px}#prepared{margin-top:35px}#requestStatus,#editorStatus{margin-top:18px;color:var(--accent)}[hidden]{display:none!important}.editor{padding:40px 0}
@media(max-width:800px){header{position:static}.nav{align-items:start;flex-direction:column;gap:18px}nav{gap:16px;font-size:.95rem}.hero{padding:64px 0}.cards,.steps{grid-template-columns:1fr 1fr}.contact{grid-template-columns:1fr}.row{grid-template-columns:1fr 1fr}.row label:first-child{grid-column:1 / -1}.paper{padding:22px}}
@media(max-width:520px){.wrap{width:calc(100% - 32px)}.cards,.steps,.formgrid{grid-template-columns:1fr}.service{grid-template-columns:32px 1fr;gap:8px}.service h3{overflow-wrap:anywhere}section{padding:52px 0}fieldset{padding:16px}.actions>*{width:100%}.editorhead{display:block}.paper{padding:16px;font-size:.9rem}.paper th,.paper td{padding:8px 3px}}

.brand:hover,.brand:focus-visible{text-decoration:none}
.hero .eyebrow{display:flex;gap:8px 24px;flex-wrap:wrap;letter-spacing:.07em}
.herofoot{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-top:44px;padding-top:25px;border-top:1px solid var(--line)}
.availability{font-size:.95rem;color:var(--muted);margin:0}.availability a{display:block;color:var(--ink)}
.about{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.about p:not(.eyebrow){color:var(--muted)}
#requestStatus{margin:20px 0 0;max-width:800px}#requestStatus[data-kind="error"]{color:#ffc6bd}#requestStatus[data-kind="success"]{color:#b9e2cc}
#deliveryState{padding:16px 20px;border:1px solid var(--line);border-radius:5px;margin:26px 0}
.notice a,.legal a{text-decoration:underline;text-underline-offset:3px}
.uploadbox{padding:24px;border:1px solid #415772;border-radius:5px;background:var(--panel)}
.uploadbox span{display:block;font-size:.9rem;color:var(--muted);margin-top:10px}
input[type=file]{padding:12px;font-size:.95rem}
input[type=file]::file-selector-button{background:#243e5a;color:var(--ink);border:0;border-radius:3px;padding:10px;margin-right:12px;font:inherit}
#fileList{font-size:.95rem;overflow-wrap:anywhere}
.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
button:disabled{opacity:.5;cursor:not-allowed}#captchaBox{margin:20px 0}
.legal{max-width:860px;padding:64px 0}.legal h1{font-size:2.5rem}.legal h2{font-size:1.35rem;margin-top:36px}.legal p,.legal li{color:var(--muted)}
.draftnote{border-left:3px solid #d3b679;background:var(--panel);padding:20px;margin-bottom:32px}
footer .wrap{display:flex;gap:24px;justify-content:space-between;flex-wrap:wrap}
@media(max-width:800px){.about{grid-template-columns:1fr;gap:18px}.herofoot{align-items:start;flex-direction:column}.hero .eyebrow{display:block}.hero .eyebrow span{display:block}.hero h1{font-size:clamp(2.2rem,7vw,3.5rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Supplied brand asset and shared matte gold interaction color. */
header{padding:12px 0;z-index:10}
.brand{display:block;max-width:240px;flex:0 0 auto;line-height:0}
.brand-logo{display:block;width:220px;max-width:100%;height:auto;border-radius:4px}
a,nav a,footer a,.availability a{color:var(--accent)}
a:hover{color:#c4aa64}
.button,button,input[type=file]::file-selector-button{background:var(--accent);border-color:var(--accent);color:var(--ground)}
.button:hover,button:hover,input[type=file]::file-selector-button:hover{background:#c4aa64;color:var(--ground);filter:none}
.button.secondary,button.secondary{background:transparent;color:var(--accent);border-color:var(--accent)}
.button.secondary:hover,button.secondary:hover{background:#b59a5212;color:#c4aa64}
input,textarea,select{border-color:#6d603f}
input[type=file]{border-color:#6d603f}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:var(--accent)}
.brand-watermark{position:fixed;top:52%;right:4vw;width:min(58vw,820px);transform:translateY(-50%);z-index:5;pointer-events:none;user-select:none;mix-blend-mode:screen;opacity:.045}
.brand-watermark img{display:block;width:100%;height:auto;filter:grayscale(1) invert(1)}
.hero{position:relative;isolation:isolate;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:url("stromlauf.svg");background-repeat:no-repeat;background-size:cover;background-position:center;opacity:.25}
.hero>.wrap{position:relative}
.hero h1{max-width:900px}
.hero .intro{max-width:650px}
@media(min-width:1100px){.hero::before{background-size:1440px 760px;background-position:right center}.hero h1{font-size:4.25rem;max-width:930px}}
@media(max-width:800px){header{padding:16px 0}.nav{align-items:center}.brand{max-width:210px}.brand-logo{width:210px}.nav nav{justify-content:center}.hero::before{background-position:64% center;opacity:.14}.brand-watermark{width:78vw;right:1vw;opacity:.035}}
@media(max-width:520px){.brand-logo{width:190px}.brand-watermark{width:94vw;right:0;opacity:.03}.hero::before{background-position:70% center;opacity:.12}}

/* Fixed reference schematic and persistent navigation. */
header{position:sticky;top:0;z-index:10}
.hero::before{display:none}
.hero .eyebrow{display:block}.hero .eyebrow span{display:block}
.availability,.availability:hover{color:var(--accent)}.availability span{display:block}
.circuit-watermark{position:fixed;inset:190px 3vw 24px auto;width:min(42vw,460px);z-index:4;pointer-events:none;opacity:.19;user-select:none}
.circuit-watermark img{display:block;width:100%;height:100%;object-fit:contain;object-position:right center}
@media(max-width:800px){header{position:sticky;padding:10px 0}.nav{gap:10px}.brand-logo{width:130px}.nav nav{gap:7px 16px}html{scroll-padding-top:180px}.circuit-watermark{inset:180px 8px 20px auto;width:62vw;opacity:.12}}
@media(max-width:520px){.brand-logo{width:105px}.nav nav{font-size:.875rem;gap:5px 14px}.circuit-watermark{width:76vw;opacity:.09}}

html{scroll-behavior:auto}
.availability:hover,.availability:focus,.availability:active{text-decoration:none}
.circuit-watermark{left:2vw;right:auto;opacity:.34}
.circuit-watermark img{object-position:left center}
@media(max-width:800px){.circuit-watermark{left:8px;right:auto;opacity:.23}}
@media(max-width:520px){.circuit-watermark{opacity:.18}}

a,a:hover,a:focus,a:focus-visible,a:active,a:visited,button,button:hover,button:focus,summary,summary:hover,summary:focus,.notice a,.legal a{text-decoration:none}

/* Shared background beneath the full width content. */
.hero{isolation:auto}
main section>.wrap,main.legal,footer>.wrap{position:relative;z-index:6}
.circuit-watermark{z-index:4;opacity:.58}
.brand-watermark{z-index:4}
@media(min-width:801px){
 .wrap{width:min(1400px,calc(100% - 80px))}
 .circuit-watermark{inset:130px auto 0 6vw;width:min(58vw,780px)}
 .circuit-watermark img{object-position:center center}
 .brand-watermark{right:5vw;width:65vw;max-width:1050px;opacity:.065}
 .hero .intro,.intro{max-width:950px}
 .hero h1{max-width:1200px}
 .service>div{max-width:1120px}
 .about{grid-template-columns:1fr 1.25fr;gap:65px}
 .service p,.about p{line-height:1.8}
}

/* Stable viewport height prevents browser toolbar changes from resizing the diagram. */
.circuit-watermark{top:180px;bottom:auto;height:calc(100svh - 200px);transform:translateZ(0);backface-visibility:hidden}
.brand-watermark{top:52svh}
@media(min-width:801px){.circuit-watermark{top:130px;bottom:auto;height:calc(100svh - 130px)}}

.circuit-watermark{left:-3vw;opacity:.78}
.brand-watermark{right:10vw;width:85vw;max-width:1250px}
#leistungen>.wrap>.eyebrow{font-size:1.3rem;letter-spacing:.08em}
.service>.number{font-size:1.55rem;line-height:1.5}
@media(min-width:801px){.circuit-watermark{left:-2vw;top:160px;width:min(52vw,650px);height:calc(100svh - 195px)}.brand-watermark{right:10vw;width:78vw;max-width:1250px}}
@media(max-width:520px){.service{grid-template-columns:42px 1fr}.brand-watermark{width:110vw;right:4vw}}

/* Inline schematic keeps animation under the page stylesheet. */
.circuit-watermark{opacity:1;left:-5vw}
.circuit-watermark svg{display:block;width:100%;height:100%;overflow:visible}
.circuit-watermark svg>g:not(.comet-travel){opacity:.38}
.comet-travel{animation:af-current 14s linear infinite;transform:translateY(350px)}
@keyframes af-current{from{transform:translateY(100px)}to{transform:translateY(1200px)}}
@media(prefers-reduced-motion:reduce){.comet-travel{animation-duration:40s}}
.button,button{transition:background-color .15s,color .15s,transform .15s;transform-origin:center}
.button:hover,button:hover,.button.secondary:hover,button.secondary:hover{background:#ffe09a;color:#071224;border-color:#ffe09a;transform:scale(1.045)}
button:disabled:hover{background:var(--accent);transform:none}
.eyebrow a{display:inline-block;transition:color .15s,transform .15s}
.eyebrow a:hover{color:#ffe09a;transform:scale(1.035)}
@media(min-width:801px){.circuit-watermark{left:-4vw;top:175px;height:calc(100svh - 230px);width:min(48vw,600px)}.brand-watermark{right:13vw;width:84vw;max-width:1380px}}
body{overflow-x:clip}
.circuit-watermark{left:0}
.brand-watermark{left:50%;right:auto;top:50svh;transform:translate(-50%,-50%)}
.eyebrow,#leistungen>.wrap>.eyebrow{font-size:1.3rem;letter-spacing:.07em}
.hero .eyebrow{font-size:clamp(1.3rem,2.1vw,1.7rem);line-height:1.65}
.theme-toggle{flex-shrink:0;font-size:.9rem;padding:10px 14px}
@media(min-width:801px){.nav{gap:20px}.nav nav{gap:16px}.circuit-watermark{left:0}.brand-watermark{left:50%;right:auto}}
html[data-theme=light]{color-scheme:light;--ink:#071224;--muted:#29425d;--ground:#f4f7fb;--panel:#e6edf6;--line:#b8c8da;--accent:#775511}
html[data-theme=light] header{background:#f4f7fbf5}
html[data-theme=light] .hero{background:linear-gradient(135deg,#f4f7fb,#e4edf8)}
html[data-theme=light] .tinted{background:#e9f0f8}
html[data-theme=light] input,html[data-theme=light] textarea,html[data-theme=light] select{background:#fff;color:#071224}
html[data-theme=light] a,html[data-theme=light] .eyebrow,html[data-theme=light] .number,html[data-theme=light] summary{color:#071224}
html[data-theme=light] .button,html[data-theme=light] button{background:#e2bc69;color:#071224;border-color:#ac7d27}
html[data-theme=light] .button:hover,html[data-theme=light] button:hover{background:#ffd987}
html[data-theme=light] .brand-watermark{mix-blend-mode:multiply;opacity:.08}
html[data-theme=light] .brand-watermark img{filter:grayscale(1)}
html[data-theme=light] .circuit-watermark svg>g:not(.comet-travel){opacity:.55}
html[data-theme=light] .comet-travel{filter:drop-shadow(0 0 2px #9a6412)}

/* Immediate form guidance and file controls. */
.field-error{display:block;min-height:1.35em;margin-top:6px;color:#ff8d87;font-size:.9rem;line-height:1.35}
input.has-error{border-color:#ff8d87;box-shadow:0 0 0 1px #ff8d87}
input[readonly]{background:#18283e;color:var(--muted);cursor:default}
#fileList{margin:12px 0 0;padding:0;list-style:none}
#fileList li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}
#fileList li::marker{content:""}
.file-remove{flex:0 0 auto;width:28px;height:28px;padding:0;border-radius:50%;font-size:1.3rem;line-height:1;background:#d65d59;color:#fff;border-color:#ffaaa5}
.file-remove:hover{background:#ff8d87;color:#071224;border-color:#ffb3af;transform:scale(1.08)}
.inquiry-dock{transition:opacity .18s ease,transform .18s ease}
.inquiry-dock.is-hidden{opacity:0;pointer-events:none;transform:translate(-50%,18px)}
.page-anfrage .inquiry-dock{opacity:0!important;pointer-events:none!important;transform:translate(-50%,18px)!important}
.inquiry-dock.page-hidden{opacity:0!important;pointer-events:none!important;transform:translate(-50%,18px)!important}
@media(max-width:800px){.inquiry-dock.is-hidden{transform:translateY(18px)}}
html[data-theme=light] input[readonly]{background:#e6edf6;color:#29425d}
.file-input{position:absolute;width:1px;height:1px;margin:-1px;clip-path:inset(50%);overflow:hidden}
.file-trigger{display:inline-block;margin-top:10px;padding:10px 14px;border:1px solid var(--accent);border-radius:4px;background:var(--accent);color:#071224;font-weight:700;cursor:pointer}
.file-trigger.is-disabled{opacity:.5;cursor:not-allowed}
.file-count{display:block;margin-top:9px;color:var(--muted);font-size:.9rem}
.maintenance{min-height:100svh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top right,#18365b,transparent 46%),var(--ground)}
.maintenance-card{width:min(680px,100%);padding:clamp(28px,7vw,58px);text-align:center;background:#0c1b32e8;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 80px #0006}
.maintenance-card img{display:block;width:min(340px,100%);height:auto;margin:0 auto 28px;border-radius:7px;background:#fff}
.maintenance-card h1{font-size:clamp(2rem,6vw,3.6rem);line-height:1.12;margin:14px 0 20px}
.maintenance-card p{color:var(--muted);font-size:1.08rem}
.maintenance-contact{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:28px}.maintenance-contact a{padding:11px 14px;border:1px solid var(--accent);border-radius:5px;color:var(--accent);font-weight:700}.maintenance-contact a:hover{color:#071224;background:#ffe09a;text-decoration:none}
.maintenance-note{margin-top:34px!important;font-size:.95rem!important}
.uploadbox{padding:14px}
.file-trigger{margin-top:7px;padding:8px 11px;font-size:.92rem}
.file-count{margin-top:6px}
#fileList{margin-top:7px}
#fileList li{padding:5px 0}

.header-keywords{margin:0;font-size:1rem;font-weight:700;line-height:1.55;color:var(--accent);flex-shrink:0}
.header-keywords span{display:block}
.nav{flex-wrap:wrap;gap:14px 24px}
.nav nav{margin-left:auto}
.brand-logo{width:150px}
.availability{display:inline-block;margin:12px 0 0;padding:18px 26px;border:1px solid #d8b96c;border-radius:6px;background:#24334a;color:#f1d89a;font-size:1.08rem;font-weight:700;transition:background-color .15s,color .15s,transform .15s;transform-origin:left center}
.availability:hover{background:#ffe09a;color:#071224;transform:scale(1.045)}
.availability:focus-visible{outline:3px solid #ffe09a;outline-offset:4px}
.herofoot{margin-top:28px}
html[data-theme=light] .availability{background:#f5e4bc;color:#071224;border-color:#b38737}
html[data-theme=light] .availability:hover{background:#ffd987;color:#071224}
@media(max-width:800px){.nav{flex-direction:row;justify-content:center;gap:8px 14px}.brand-logo{width:95px}.header-keywords{font-size:.875rem}.nav nav{margin:0;justify-content:center}.theme-toggle{padding:7px 12px}}
@media(max-width:520px){.header-keywords{font-size:.8rem}.availability{padding:16px 18px;font-size:1rem;max-width:100%}}

.header-keywords.button{font-size:1.15rem;line-height:1.5;padding:12px 18px;text-align:left;white-space:nowrap;background:var(--accent);color:#071224;border:1px solid var(--accent);border-radius:4px;flex-shrink:1}
.header-keywords.button:hover{background:#ffe09a;color:#071224;border-color:#ffe09a;transform:scale(1.035)}
@media(max-width:800px){.header-keywords.button{font-size:1rem;padding:9px 12px}.nav .brand{flex-shrink:1}.nav .brand-logo{width:80px}}
@media(max-width:380px){.nav .brand-logo{width:58px}.header-keywords.button{font-size:.9rem;padding:8px}.nav{gap:8px}}

.header-keywords{font-size:1.15rem;line-height:1.5;margin:0;color:var(--accent);white-space:nowrap}
.header-contact.button{font-size:1rem;line-height:1.45;padding:12px 18px;text-align:left;margin-left:auto}
.header-contact span{display:block}
.nav nav{margin-left:0}
@media(max-width:800px){.header-keywords{font-size:1rem}.header-contact.button{font-size:.875rem;padding:9px 12px;margin-left:0}.nav{gap:8px 14px}html{scroll-padding-top:270px}}
@media(max-width:380px){.header-keywords{font-size:.9rem}}

.project-invitation{margin:28px 0 0;color:var(--muted);font-size:1.05rem}
.project-invitation span{display:block}
.inquiry-dock{position:fixed;right:28px;bottom:calc(22px + env(safe-area-inset-bottom,0px));z-index:20;pointer-events:none}
.persistent-inquiry.button{pointer-events:auto;display:flex;align-items:center;justify-content:center;gap:28px;min-height:56px;padding:15px 26px;border-radius:12px;background:#d9b86a;color:#071224;border:1px solid #f1d698;box-shadow:0 5px 24px #0005;font-size:1.08rem}
.persistent-inquiry.button:hover{background:#ffe09a;transform:translateY(-2px)}
.persistent-inquiry span{font-size:1.35rem;line-height:1}
footer{padding-bottom:115px}
html{scroll-padding-bottom:110px}
@media(max-width:800px){html{scroll-padding-top:205px}.inquiry-dock{left:16px;right:16px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}.persistent-inquiry.button{min-height:54px;padding:14px 20px}.persistent-inquiry.button:hover{transform:none}footer{padding-bottom:110px}}
html[data-theme=light] .persistent-inquiry.button{background:#d9b86a;color:#071224;border-color:#a98438;box-shadow:0 5px 24px #07122426}
html[data-theme=light] .persistent-inquiry.button:hover{background:#ffe09a}

.nav nav{justify-content:center;margin-inline:auto}
.inquiry-dock{left:50%;right:auto;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px)}
.footer-theme{margin-top:18px}
.footer-theme .theme-toggle{font-size:.8rem;padding:7px 12px;min-height:36px}
@media(max-width:800px){.nav nav{width:100%;justify-content:center}.nav nav a:last-child{flex-basis:100%;text-align:center}.inquiry-dock{left:16px;right:16px;transform:none;width:auto;max-width:none}}

/* Human verification before the public site is revealed. */
.gate-page{min-height:100svh;overflow:hidden;background:radial-gradient(circle at 20% 18%,#19375d,transparent 36%),radial-gradient(circle at 82% 84%,#46381c,transparent 38%),#071224}
.gate-stage{min-height:100svh;position:relative}
.gate-panel{position:absolute;width:min(385px,calc(100vw - 40px));padding:24px;background:#0c1b32f2;border:1px solid #7d6a38;border-radius:12px;box-shadow:0 22px 70px #000a;color:var(--ink)}
.gate-panel img{display:block;width:150px;height:auto;border-radius:5px;background:#fff;margin:0 auto 18px}.gate-panel h1{font-size:1.25rem;margin:0 0 9px;color:#f5df9a}.gate-panel p{margin:0;color:#c5d1df;line-height:1.55}.gate-services{margin:0 0 16px;padding:0;list-style:none;color:#dbe5f1;line-height:1.55}.gate-services li{position:relative;padding-left:18px}.gate-services li::before{content:"";position:absolute;left:0;top:.69em;width:7px;height:7px;border-radius:50%;background:#d5b45a;box-shadow:0 0 10px #d5b45a99}.gate-widget{margin-top:18px;min-height:66px}.gate-status{margin-top:12px!important;color:#ffbdad!important;font-size:.92rem}.gate-widget iframe{max-width:100%}
@media(max-width:620px){.gate-panel{left:50%!important;right:auto!important;top:50%!important;bottom:auto!important;transform:translate(-50%,-50%);padding:21px}.gate-panel img{width:135px}}
.form-privacy-note{max-width:none;font-size:.78rem;line-height:1.45;margin-bottom:9px}
.privacy-consent{margin:16px 0 20px}
.privacy-consent label{display:flex;align-items:flex-start;gap:12px;min-height:44px;margin:0;font-size:.95rem;line-height:1.5;cursor:pointer}
.privacy-consent input[type=checkbox]{flex:0 0 22px;width:22px;height:22px;min-width:22px;margin:2px 0 0;padding:0;accent-color:var(--accent);cursor:pointer}
.privacy-consent .field-error{margin-left:34px;min-height:0}
.privacy-consent .field-error:empty{display:none}

/* Ruhige Leseflächen mit stärkerem Kontrast. */
:root{--ink:#f2f6fb;--muted:#c8d4e2}
body{font-size:1.075rem;line-height:1.72}
main section>.wrap{padding:clamp(24px,4vw,48px);background:#08172cf2;border:1px solid #203854;border-radius:12px;box-shadow:0 18px 55px #02081366}
.service p,.card p,.steps p,.about p:not(.eyebrow),.intro,.notice,.software{color:var(--muted)}
.service p,.about p,.card p,.steps p{font-size:1.04rem;line-height:1.78}
.service h3{font-size:1.3rem}.contactbox a{font-size:1.04rem}
.contactbox .whatsapp-icon{display:inline-flex;align-items:center;justify-content:center;width:1.95rem;height:1.95rem;vertical-align:middle;border-radius:50%;background:#25d366;color:#fff;transition:background-color .15s,transform .15s}.contactbox .whatsapp-icon:hover,.contactbox .whatsapp-icon:focus-visible{background:#45e783;color:#fff;transform:scale(1.1)}.contactbox .whatsapp-icon svg{display:block;width:1.25rem;height:1.25rem}
.circuit-watermark{opacity:.3}.circuit-watermark svg>g:not(.comet-travel){opacity:.24}
.brand-watermark{opacity:.065;transition:opacity .25s ease}
body.services-visible .brand-watermark{opacity:.045}
html[data-theme=light] main section>.wrap{background:#f7f9fce6;border-color:#a9bdd1;box-shadow:0 18px 55px #263b5424}
html[data-theme=light] .service p,html[data-theme=light] .card p,html[data-theme=light] .steps p,html[data-theme=light] .about p:not(.eyebrow),html[data-theme=light] .intro,html[data-theme=light] .notice,html[data-theme=light] .software{color:#263f59}
html[data-theme=light] .circuit-watermark{opacity:.2}
html[data-theme=light] .brand-watermark{opacity:.07}
html[data-theme=light] body.services-visible .brand-watermark{opacity:.05}
@media(max-width:800px){body{font-size:1.025rem}main section>.wrap{padding:24px}.service p,.about p,.card p,.steps p{font-size:1rem}.circuit-watermark{opacity:.2}.brand-watermark{opacity:.04}body.services-visible .brand-watermark{opacity:.03}}
@media(max-width:520px){main section>.wrap{width:calc(100% - 20px);padding:20px 17px;border-radius:9px}.circuit-watermark{opacity:.16}}

.uploadbox{padding:11px 12px}
.file-trigger{width:max-content;margin-top:5px;padding:7px 10px;background:var(--accent);border-color:var(--accent);color:#071224;font:700 .9rem/1.25 Arial,sans-serif}
.form-turnstile{margin:22px 0 8px}
.file-trigger:hover{background:#ffe09a;border-color:#ffe09a;color:#071224}
.file-count.limit-reached{color:#ff8d87;font-weight:700}

/* Dezenter warmer Schein für das Motorsymbol und den fließenden Strom. */
.circuit-watermark{opacity:.38}
.circuit-watermark svg>g:not(.comet-travel){opacity:.32}
.circuit-watermark .comet-travel{filter:drop-shadow(0 0 5px #ffe2a0)}
@media(max-width:800px){.circuit-watermark{opacity:.27}.circuit-watermark svg>g:not(.comet-travel){opacity:.28}.circuit-watermark .comet-travel{filter:drop-shadow(0 0 4px #ffe2a0)}}
html[data-theme=light] .circuit-watermark{opacity:.25}

/* Kompakte Vorteile im ersten Sichtbereich. */
.hero-motto{margin:0 0 24px;color:#e4c778;font-size:clamp(1.15rem,2.2vw,1.55rem);font-weight:700;letter-spacing:.01em}
.hero-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 30px;max-width:1060px}
.hero-benefits article{display:flex;gap:10px;align-items:flex-start;padding:12px 10px;border-left:2px solid var(--accent);background:#10233ba8;color:var(--muted);font-size:.82rem;line-height:1.35}
.hero-benefits strong{display:block;color:var(--ink);font-size:.93rem;margin-bottom:2px}
.benefit-icon{display:grid;place-items:center;flex:0 0 78px;width:78px;height:78px;border:3px solid var(--accent);border-radius:50%;color:#f8dfa0;font-weight:700;font-size:2.5rem;box-shadow:0 0 22px #d9b86a48}
.benefit-icon svg{display:none}.hero-benefits article:last-child .benefit-icon::after{content:"";display:block!important;width:44px;height:50px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 50' fill='none' stroke='%23f8dfa0' stroke-width='3' stroke-linejoin='round' stroke-linecap='round'%3E%3Cpath d='M7 3h21l9 9v35H7z'/%3E%3Cpath d='M28 3v10h9'/%3E%3Cpath d='M13 24h18M13 32h7m5 0h6M13 40h18'/%3E%3Ccircle cx='22' cy='32' r='2' fill='%23f8dfa0' stroke='none'/%3E%3C/svg%3E")!important}
.hero-summary{font-size:.95rem;line-height:1.55;margin:-10px 0 25px;max-width:790px}.hero-question{display:flex!important;flex-direction:column;align-items:flex-start;gap:8px}.hero-question span{display:block;width:100%}.hero-question span:first-child{font-weight:700;color:var(--ink);margin:0}
@media(min-width:801px){.hero-summary{font-size:.76rem;line-height:1.35;white-space:nowrap;max-width:none}}
.hero-question{color:var(--ink);font-weight:700;margin-bottom:8px}
.hero-services{display:flex;flex-wrap:wrap;gap:8px;margin:23px 0 0;max-width:1020px}
.hero-services a{padding:6px 10px;border:1px solid #4d6180;border-radius:999px;color:#d4dfeb;background:#0a182cd9;font-size:.82rem;line-height:1.3;transition:background-color .15s,color .15s,transform .15s}
.hero-services a:hover{background:#f3d88f;color:#071224;text-decoration:none;transform:scale(1.035)}
.request-heading{font-size:clamp(1.3rem,2.1vw,1.9rem);max-width:980px}
html[data-theme=light] .hero-benefits article{background:#edf3fad9;color:#304962;border-color:#b69445}
html[data-theme=light] .hero-benefits strong{color:#071f3b}
html[data-theme=light] .hero-services a{background:#f0f5fbd9;color:#243f5b;border-color:#9bb0c8}
@media(max-width:800px){.hero-benefits{display:grid;grid-template-columns:1fr;gap:10px;overflow:visible;margin-inline:0}.hero-benefits article{min-height:86px}.hero-services{display:flex;flex-direction:column;align-items:stretch;gap:8px}.hero-services a{font-size:.9rem;text-align:center}.hero-motto{font-size:1.2rem}}
@media(max-width:800px){.hero-motto span{display:block}}
@media(max-width:800px){input::placeholder,textarea::placeholder{font-size:.7rem}}

/* Reihenfolge und kompakte Desktop-Darstellung im ersten Bereich. */
.hero-benefits article:nth-child(1){order:1}.hero-benefits article:nth-child(2){order:2}.hero-benefits article:nth-child(3){order:3}.hero-benefits article:nth-child(4){order:4}.hero-benefits article:nth-child(5){order:5}
@media(min-width:801px){.hero-services{flex-wrap:nowrap;max-width:none;gap:5px}.hero-services a{flex:1 1 0;text-align:center;font-size:.72rem;padding:7px 6px;white-space:nowrap}}
@media(min-width:801px){.hero-motto span+span{margin-left:.35em}}
@media(min-width:801px){.hero h1{font-size:clamp(3rem,4vw,3.85rem);white-space:nowrap}}

/* Klar gegliederter Leistungsumfang für TAB-Planungen. */
.tab-scope{margin:8px 0 18px;padding:18px 20px;background:#0d1d34a8;border-left:2px solid var(--accent);border-radius:4px}
.tab-scope>p{margin:0 0 18px;color:var(--ink)}
.tab-scope h4{margin:19px 0 6px;color:var(--accent);font-size:1.03rem;line-height:1.35}
.tab-scope h4:first-of-type{margin-top:0}
.tab-scope ul{margin:0 0 6px}
.tab-scope ul ul{margin:6px 0 0;padding-left:20px;color:var(--muted)}
html[data-theme=light] .tab-scope{background:#edf3fad9;border-color:#b69445}
html[data-theme=light] .tab-scope>p{color:#071224}
html[data-theme=light] .tab-scope ul ul{color:#263f59}
@media(max-width:520px){.tab-scope{padding:15px 13px}.tab-scope h4{font-size:1rem}}

/* Überschriften bleiben in beiden Sprachen auf den gewünschten Zeilen. */
.heading-group{min-width:0;container-type:inline-size}
.heading-group h2{font-size:clamp(1rem,6cqi,2.65rem)}
.heading-line{display:block;white-space:nowrap}
#kontakt .heading-group h2{white-space:nowrap}

/* Persistent language switch in the header. */
.header-actions{display:flex;align-items:center;gap:8px;margin-left:8px;flex:0 0 auto}
.language-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 13px;border:1px solid var(--accent);border-radius:5px;background:var(--accent);color:#071224;font-size:.9rem;font-weight:700;line-height:1;text-decoration:none;transition:background-color .15s,color .15s,transform .15s}
.language-toggle:hover{background:#ffe09a;border-color:#ffe09a;color:#071224;text-decoration:none;transform:scale(1.04)}
.language-toggle:focus-visible{outline:3px solid #ffe09a;outline-offset:4px}
.translation-note{margin:0 0 28px!important;padding:13px 15px;border-left:2px solid var(--accent);border-radius:4px;background:var(--panel);color:var(--ink)!important;font-size:.95rem}
html[lang=en] .hero h1{white-space:normal}
/* Die englische Hauptüberschrift passt auf dem Desktop in eine Zeile. */
@media(min-width:801px){
  html[lang=en] #start>.wrap{container-type:inline-size}
  html[lang=en] .hero h1{white-space:nowrap;max-width:none;font-size:clamp(1.5rem,4.3cqi,3.85rem)}
}
/* Englische Leistungsnamen bleiben vollständig innerhalb des Inhaltsbereichs. */
@media(min-width:801px){
  html[lang=en] .hero-services{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));max-width:100%}
  html[lang=en] .hero-services a{display:flex;align-items:center;justify-content:center;min-width:0;white-space:normal;overflow-wrap:anywhere}
}
@media(min-width:801px){header .nav nav{margin-inline:0;justify-content:flex-end;flex:1 1 auto}}
@media(max-width:800px){.header-actions{margin-left:auto;order:2}.language-toggle{min-height:34px;padding:7px 11px;font-size:.82rem}header .nav nav{order:3;flex-basis:100%;margin-inline:0}}

/* Fünf ausführliche Vorteile bleiben auf jeder Bildschirmgröße gut lesbar. */
.hero-benefits{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}
.hero-benefits article:last-child .benefit-icon::after{display:none!important;content:none!important}
@media(max-width:800px){.hero-benefits{grid-template-columns:1fr}}

/* Klare, selbst gezeichnete Symbole für die Vorteile. */
.benefit-icon .benefit-svg{display:block;width:54px;height:54px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.hero-benefits article:nth-child(6){order:6}

/* Mobile: Kontakt und Sprachwechsel teilen sich eine ruhige, eigene Zeile. */
.language-toggle-mobile,.mobile-nav-break{display:none}
@media(max-width:800px){
  header .nav .header-actions{display:none}
  header .nav nav{width:100%;justify-content:center;gap:8px 16px}
  header .nav nav .mobile-nav-break{display:block;flex-basis:100%;height:0;margin:0;padding:0}
  header .nav nav .language-toggle-mobile{display:inline-flex;flex:0 0 auto!important;margin:0;text-align:center}
}
