:root{color-scheme:light;--ink:#19302d;--green:#226752;--paper:#f3f3ef;--line:#d8dfd8;--muted:#5b6862}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}header{background:#fff;border-bottom:1px solid var(--line);padding:23px max(24px,calc((100vw - 1060px)/2));display:flex;justify-content:space-between;gap:12px;align-items:center}.brand{color:var(--ink);font-size:21px;letter-spacing:-.6px;text-decoration:none;font-weight:750}.brand span{font-weight:400}header small{color:var(--muted)}main{max-width:1000px;padding:34px 24px 60px;margin:auto}h1{font-size:34px;letter-spacing:-1.2px;margin:8px 0 25px}h2{font-size:23px;line-height:1.3;margin:0 0 16px;letter-spacing:-.4px}h3{font-size:19px}section{background:#fff;border:1px solid var(--line);border-radius:15px;padding:28px;margin:0 0 22px;box-shadow:0 3px 18px #19302d04}label{display:block;font-weight:600;margin:15px 0 8px}input,textarea,button,.button{font:inherit}input:not([type=checkbox]),textarea{display:block;width:100%;border:1px solid #aab9af;border-radius:7px;padding:11px 12px;background:#fff;color:var(--ink);margin:7px 0 5px}textarea{resize:vertical}input[type=file]{padding:10px;font-size:14px}input:focus,textarea:focus,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #92bea9;outline-offset:2px}button,.button{display:inline-block;border:1px solid var(--green);border-radius:7px;padding:11px 18px;background:var(--green);color:white;text-decoration:none;cursor:pointer;font-weight:650;line-height:1.4;margin-top:12px}button:hover,.button:hover{filter:brightness(.93)}button:disabled{opacity:.55;cursor:wait}.secondary{background:#fff;color:var(--ink);border-color:#aab9af}a{color:var(--green);text-underline-offset:3px}.columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}.check{display:flex;gap:12px;align-items:flex-start;font-weight:400;margin:20px 0}.check input{width:22px;height:22px;flex:0 0 22px;accent-color:var(--green);margin:2px 0}.declaration{padding:20px;background:#f6f6f2;border-left:3px solid #91ae9d;margin:20px 0;font-size:15px}.hint,small{font-size:13px;color:var(--muted)}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:1px;color:var(--muted);margin-bottom:12px}.badge{display:inline-block;background:#e9f1eb;padding:4px 11px;border-radius:20px;font-size:13px;white-space:nowrap}dl{display:grid;grid-template-columns:190px 1fr;gap:10px;margin:24px 0}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}code{font-size:12px;overflow-wrap:anywhere}iframe{width:100%;height:520px;border:1px solid var(--line);border-radius:8px;margin:12px 0}details{margin:18px 0}summary{cursor:pointer;font-weight:600}canvas{display:block;width:100%;height:auto;aspect-ratio:1000/320;border:2px dashed #91ae9d;border-radius:8px;background:#fafcf9;touch-action:none}.qr{padding:16px;background:white;width:max-content;max-width:100%;margin:16px 0}.qr img{max-width:100%;height:auto}nav,.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:22px}nav form,.actions form{margin:0}hr{border:0;border-top:1px solid var(--line);margin:32px 0}.notice{background:#e6efc7;border-radius:8px;padding:18px;margin-bottom:22px}.error{background:#ffe4dd}.success{border-color:#82b29a}.narrow{max-width:480px}.job{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:19px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}.job small{display:block}blockquote{padding:15px;margin:20px 0;background:#fff3df;border-left:3px solid #c69c50}.history{padding-left:22px}.history time{font-size:12px;color:var(--muted)}.history p{margin:2px 0 16px;overflow-wrap:anywhere}footer{text-align:center;color:var(--muted);font-size:12px;padding:25px;border-top:1px solid var(--line)}#signature-error{color:#9b3324}body,section{overflow-wrap:anywhere}@media(max-width:650px){header{padding:17px 18px}header small{display:none}.brand{font-size:17px}main{padding:22px 14px 35px}h1{font-size:28px}section{padding:20px 16px;border-radius:11px}.columns{grid-template-columns:1fr;gap:0}dl{grid-template-columns:1fr;gap:3px}dd{margin-bottom:10px}iframe{height:380px}.job{align-items:flex-start;flex-direction:column}button,.button{width:100%;text-align:center}.actions,.actions form{width:100%}nav{align-items:stretch}nav a,nav form{flex:1}nav button{margin-top:12px}.qr{margin:auto}canvas{aspect-ratio:2.5/1}}

/* Brand refresh: small wordmark, clean typography and the website contact panel. */
:root{--ink:#151515;--green:#181818;--paper:#f7f7f5;--line:#e1e1de;--muted:#6a6a67}
body{min-height:100vh;display:flex;flex-direction:column;letter-spacing:-.1px}
header{padding:28px max(24px,calc((100vw - 1060px)/2));min-height:88px;border-bottom:1px solid var(--line);gap:24px}
.brand{display:flex;align-items:center;min-width:0;text-decoration:none;flex-shrink:0}
.brand-logo{display:block;width:180px;height:auto;max-width:100%}
.header-title{font-size:20px;line-height:1.2;font-weight:450;letter-spacing:-.5px;text-align:right}
main{width:100%;padding-top:44px;padding-bottom:64px;flex:1}
h1{font-size:32px;font-weight:600;letter-spacing:-1px;margin-bottom:28px}
h2{font-size:22px;font-weight:600;letter-spacing:-.45px}
section{border-radius:10px;padding:30px;box-shadow:none;margin-bottom:24px}
label{font-size:14px;font-weight:550;margin-top:18px}
input:not([type=checkbox]),textarea{border-color:#cececa;border-radius:5px;padding:12px 13px;font-size:16px;transition:border-color .15s,box-shadow .15s}
input:focus,textarea:focus{outline:0;border-color:#333;box-shadow:0 0 0 3px #00000008}
button,.button{border-radius:5px;font-size:14px;letter-spacing:0;font-weight:550;padding:12px 18px}
.secondary{border-color:#d3d3cf}.badge{background:#efefeb;color:#333;padding:5px 12px}
.declaration{background:#f6f6f3;border-left:2px solid #b7b7ae;padding:24px;line-height:1.75}
.check{font-size:15px;font-weight:400}.hint{line-height:1.6}.success{border-color:#bac7b2}.notice{background:#edf4e6}.error{background:#ffe4dd}
canvas{border:1px dashed #aaa;background:#fcfcfa;border-radius:5px}
footer.contact-footer{padding:0;border:0;background:#ddd;color:#666;text-align:center;font:14px/1.65 Arial,Helvetica,sans-serif;letter-spacing:0}
.contact{margin:0}.contact summary{display:block;list-style:none;cursor:pointer;padding:7px 20px;font-size:14px;font-weight:400;line-height:22px;color:#666}
.contact summary::-webkit-details-marker{display:none}.contact summary::marker{content:''}
.contact summary:hover{color:#111}.contact-content{padding:13px 20px 16px}.contact-content p{margin:0}.contact-content a{color:#111;text-decoration:none}.contact-content a:hover{text-decoration:underline}
@media(max-width:650px){header{padding:22px 20px;min-height:75px;gap:14px}.brand-logo{width:150px}.header-title{font-size:17px;letter-spacing:-.35px}main{padding:28px 16px 44px}h1{font-size:27px}section{padding:22px 18px}.declaration{padding:18px}.contact-content{padding:12px 16px 18px;font-size:13px}.contact-content p+p{margin-top:3px}}
@media(max-width:350px){.brand-logo{width:130px}.header-title{font-size:15px}header{padding-inline:16px}}
/* Kontakt öffnet über der Leiste, ohne die Seite zu verlängern. */
.contact-footer{position:relative;z-index:30}
.contact{position:relative}
.contact-content{position:absolute;bottom:100%;left:0;right:0;z-index:31;background:#ddd;box-shadow:0 -8px 24px #0000000c;max-height:min(50vh,280px);overflow:auto;padding:20px 20px 18px}
.contact[open] summary{background:#ddd;color:#111}
@media(max-width:650px){.contact-content{padding:18px 16px 16px}}
