.hero{position:relative;height:min(92vh,max(860px,43.75vw));min-height:640px;background-color:var(--sky-top);overflow:hidden;overflow:clip}.hero-stage{position:absolute;inset:0}.hero-stage svg,.hero-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.hero-stage canvas{pointer-events:none}.hero-copy{position:absolute;z-index:2;left:var(--gutter);top:clamp(96px,13vh,132px);max-width:min(660px,calc(100vw - 320px - 3 * var(--gutter)))}.hero h1{margin:0 0 18px;font-size:clamp(38px,4.6vw,70px);line-height:.98;font-weight:820;font-stretch:118%;color:var(--on-dark)}.hero h1 .kicker{display:block;margin:0 0 16px;font-size:12.5px;line-height:1.3;font-weight:650;font-stretch:100%;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-on-dark);text-wrap:balance}.lede{margin:0 0 26px;font-size:clamp(17px,1.3vw,20px);line-height:1.45;color:var(--on-dark-soft);max-width:36ch;text-wrap:pretty}.lede strong{color:var(--on-dark);font-weight:620}.hero-copy.tight h1{margin-bottom:10px;font-size:clamp(36px,4.1vw,62px)}.hero-copy.tight h1 .kicker{margin-bottom:10px}.hero-copy.tight .lede{margin-bottom:14px;line-height:1.38}.hero-ctas{display:flex;flex-wrap:wrap;gap:12px}.protocol{position:absolute;z-index:2;right:var(--gutter);top:clamp(96px,10vh,112px);width:320px;background-color:var(--bg-dark);border:1px solid var(--line);border-radius:4px;padding:8px 16px 10px}.proto-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:7px;border-bottom:1px solid var(--line)}.proto-title{font-size:12.5px;font-weight:680;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-on-dark)}.proto-meta{margin-left:auto;font-size:12px;font-weight:500;color:var(--on-dark-muted);font-variant-numeric:tabular-nums}.proto-play{position:relative;flex:none;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;background-color:var(--u-ctl-bg);color:var(--u-ctl-ink);border:1px solid var(--u-ctl-line);border-radius:4px;cursor:pointer;transition-property:border-color,transform;transition-duration:.15s;transition-timing-function:ease-out}.proto-play:before{content:"";position:absolute;inset:-7px}.proto-play:hover{border-color:var(--u-ctl-line-hover)}.proto-play:active{transform:scale(.94)}.proto-play svg{display:block;fill:currentColor}.proto-play[aria-pressed=true] .i-pause,.proto-play:not([aria-pressed=true]) .i-play{display:none}html:not(.js) .proto-play,html:not(.js) .proto-shift{display:none}.proto-list{list-style:none;margin:0;padding:3px 0 0}.proto-list li{display:grid;grid-template-columns:48px 1fr;column-gap:8px;font-size:13.5px;line-height:24px;font-variant-numeric:tabular-nums;border-bottom:1px solid var(--line2);color:var(--on-dark)}.proto-list li.btn-row{display:block}@media(pointer:coarse)and (max-width:900px),(pointer:coarse)and (max-aspect-ratio:1/1){.proto-list li{line-height:40px}}.proto-row{position:relative;display:grid;grid-template-columns:48px 1fr;column-gap:8px;width:calc(100% + 32px);margin:0 -16px;padding:0 16px;background-color:transparent;border:0;border-radius:0;color:inherit;font:inherit;line-height:inherit;text-align:left;cursor:pointer;transition-property:background-color;transition-duration:.12s;transition-timing-function:ease-out}.proto-row:hover{background-color:var(--u-row-hover)}.proto-row:focus-visible{outline-offset:-2px}.proto-row:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;background-color:var(--u-row-now);transform:scaleY(0);transition:transform .22s cubic-bezier(.2,.8,.2,1)}.proto-row.now:before{transform:scaleY(1)}.proto-list .tm{color:var(--accent-on-dark);font-weight:620;font-stretch:104%}.js .proto-list li:not(.on),.js .proto-list li:not(.on) .tm{color:var(--on-dark-muted);font-weight:500}.proto-list li.cut{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.proto-shift{padding-top:7px}.shift-bar{position:relative;height:24px;cursor:pointer;touch-action:none;border-radius:2px;overflow-x:clip}.shift-bar:focus-visible{outline-offset:1px}.shift-track{position:absolute;left:0;right:0;top:11px;height:3px;background-color:var(--u-track)}.shift-fill{position:absolute;inset:0;background-color:var(--u-fill);transform-origin:0 50%;transform:scaleX(.72)}.shift-ticks i{position:absolute;top:-3px;width:1px;height:9px;margin-left:-.5px;background-color:var(--u-tick)}.shift-ticks i.on{background-color:var(--u-tick-on)}.shift-head{position:absolute;inset:0;transform:translate(72%)}.shift-head i{position:absolute;left:-1.5px;top:-6px;width:3px;height:15px;background-color:var(--u-head)}.shift-bar:hover .shift-head i{top:-7px;height:17px}.shift-labels{position:relative;display:flex;justify-content:space-between;height:16px;font-size:11px;line-height:16px;letter-spacing:.02em;color:var(--u-label);font-variant-numeric:tabular-nums}.shift-labels .mid{position:absolute;left:67%;transform:translate(-50%)}.proto-status{display:flex;align-items:center;gap:9px;padding-top:8px;font-size:13px;font-weight:620;color:var(--on-dark)}.proto-status .dot{flex:none;width:8px;height:8px;background-color:var(--st-run);animation:blink 1.1s steps(1,end) infinite}.proto-status.free .dot{background-color:var(--st-free);animation:none}.proto-status.wait .dot{background-color:var(--st-wait);animation:none}.hero[data-paused] .proto-status .dot{animation:none}@keyframes blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.proto-status .dot{animation:none}.proto-row:before{transition:none}}@media(max-width:900px),(max-aspect-ratio:1/1){.hero{height:auto;min-height:0;display:flex;flex-direction:column}.hero-copy{position:relative;left:auto;top:auto;max-width:none;padding:100px var(--gutter) 26px}.hero-stage{position:relative;inset:auto;height:clamp(300px,min(92vw,70vh),540px)}.protocol{position:relative;right:auto;top:auto;width:auto;margin:0 var(--gutter) 28px}.shift-labels{font-size:12px;letter-spacing:0}}.services{background-color:var(--bg-dark);padding:clamp(64px,9vw,120px) 0}.services-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px 40px}.services-head>p{margin:0 0 20px;color:var(--on-dark-muted);max-width:40ch;text-wrap:pretty}.board{width:100%;border-collapse:collapse;background-color:var(--bg-dark2);border:1px solid var(--line);margin-top:clamp(20px,3vw,36px)}.board th{text-align:left;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-on-dark);font-weight:650;padding:14px 18px;border-bottom:1px solid var(--line)}.board td{padding:22px 18px;border-top:1px solid var(--line2);vertical-align:top}.board tbody tr{transition-property:background-color;transition-duration:.15s;transition-timing-function:ease-out}.board tbody tr:hover{background-color:var(--row-hover)}.board .ln{width:72px}.badge{display:inline-grid;place-items:center;width:38px;height:38px;background-color:var(--accent);color:var(--accent-ink);font-weight:820;font-size:19px;font-stretch:112%;border-radius:3px}.svc{font-size:clamp(20px,2vw,26px);font-weight:720;font-stretch:112%;white-space:nowrap;line-height:1.2}.items{color:var(--on-dark)}.via{list-style:none;margin:0 0 0 -1.1em;padding:0;display:flex;flex-wrap:wrap;clip-path:inset(0 0 0 1.1em)}.via li{padding-left:1.1em;text-indent:-1.1em}.via li:before{content:"·";display:inline-block;width:1.1em;text-align:center;text-indent:0}.where{color:var(--on-dark-muted);width:28%}.board{font-kerning:none;font-variant-ligatures:none}.board .badge{--sf-tile:var(--accent);--sf-tile-turn:var(--sf-badge-turn);--sf-split:var(--sf-badge-split);--sf-gap:var(--accent)}.sf-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.sf-w{white-space:nowrap}.sf-c{display:inline-block;position:relative;vertical-align:baseline;text-indent:0}.sf-armed .sf-c{background-color:var(--sf-tile);outline:1px solid var(--sf-gap);outline-offset:-1px}.sf-armed .sf-c .sf-k{visibility:hidden}.sf-armed .sf-c:after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;margin-top:-.5px;background-color:var(--sf-split)}.sf-armed .sf-c.sf-done{background-color:transparent;outline:0}.sf-armed .sf-c.sf-done .sf-k{visibility:visible}.sf-armed .sf-c.sf-done:after{content:none}.sf-r{position:absolute;inset:0;overflow:hidden}.sf-r>span{position:absolute;inset:0;text-align:center;white-space:pre;background-color:var(--sf-tile)}.sf-r .sf-up,.sf-r .sf-ft{clip-path:inset(0 0 50% 0)}.sf-r .sf-lo,.sf-r .sf-fb{clip-path:inset(50% 0 0 0)}.sf-r .sf-fb{transform:scaleY(0)}.sf-r .sf-turn{background-color:var(--sf-tile-turn)}@media(max-width:820px){.board thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.board,.board tbody,.board td{display:block}.board tr{display:grid;grid-template-columns:54px 1fr;column-gap:4px;padding:18px 16px;border-top:1px solid var(--line2)}.board td{border:0;padding:0}.board .ln{grid-row:span 3;width:auto}.items{margin-top:6px}.where{width:auto;margin-top:6px}.svc{white-space:normal}.board .via{display:block;margin:0;clip-path:none}.board .via li{display:block;padding:0;text-indent:0}.board .via li:before{content:none}}.summer{padding:clamp(64px,9vw,120px) 0 0}.summer-head{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(20px,5vw,72px);align-items:end;margin-bottom:clamp(28px,4vw,48px)}.summer-head h2{margin:0}.summer-head p:not(.eyebrow){margin:0;color:var(--ink-soft);font-size:18px;text-wrap:pretty}.strip{position:relative;height:clamp(220px,26vw,max(360px,20vw));border-top:1px solid var(--light-line);border-bottom:1px solid var(--light-line)}.strip>svg{position:absolute;inset:0;width:100%;height:100%;display:block}.strip-tags{display:flex;flex-wrap:wrap;gap:8px 30px;margin:0 auto;padding:18px var(--gutter) clamp(48px,6vw,72px);max-width:1200px;list-style:none;font-size:15px;color:var(--ink-soft)}.strip-tags li:before{content:"";display:inline-block;width:8px;height:8px;background-color:var(--marker);margin-right:10px;vertical-align:1px}@media(max-width:760px){.summer-head{grid-template-columns:1fr}}.ref{background-color:var(--primary);color:var(--on-primary);padding:clamp(64px,9vw,112px) 0 0;overflow:hidden}.ref .eyebrow{color:var(--accent-on-primary)}.ref-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,5vw,72px);align-items:end}.ref-name{font-size:clamp(44px,7vw,104px);line-height:.95;font-weight:820;font-stretch:118%;margin:0;letter-spacing:-.02em}.ref-text{font-size:clamp(19px,1.8vw,24px);line-height:1.4;margin:0;max-width:30ch;text-wrap:pretty}.rails{display:block;width:100%;height:34px;margin-top:clamp(48px,7vw,88px)}.rails .sl{fill:var(--ref-sleeper)}.rails .rl{fill:var(--ref-rail)}.rb-lane{position:relative;height:34px;margin-top:-34px;overflow:hidden;pointer-events:none}.rb-run{position:absolute;inset:0}.rb-go .rb-run{animation:rb-pass 3.2s linear .4s 1 both}.rb-train{position:absolute;right:100%;top:0;display:block;width:346px;height:34px}@keyframes rb-pass{0%{transform:translate(0)}to{transform:translate(calc(100% + 346px))}}@media(prefers-reduced-motion:reduce){.rb-lane{display:none}}@media(max-width:760px){.ref-grid{grid-template-columns:1fr}}.about{padding:clamp(64px,9vw,120px) 0;border-top:1px solid var(--light-line)}.about-intro{margin:0 0 clamp(56px,8vw,96px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:12px clamp(24px,5vw,72px);align-items:start}.about-intro .eyebrow{grid-column:1/-1;margin-bottom:0}.about-intro h2{margin:0}.about-text{font-size:clamp(17px,1.35vw,19px);line-height:1.6;color:var(--ink-soft);max-width:60ch}.about-text p{margin:0 0 .9em;text-wrap:pretty}.about-text p:last-child{margin-bottom:0}@media(max-width:900px){.about-intro{grid-template-columns:1fr}}.clients{list-style:none;margin:0 0 clamp(56px,8vw,96px);padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(16px,2.5vw,32px)}.clients li{border-top:1px solid var(--ink);padding-top:14px;font-size:clamp(20px,2vw,26px);font-weight:680;font-stretch:110%;line-height:1.2;text-wrap:balance;-webkit-hyphens:manual;hyphens:manual;overflow-wrap:break-word}@media(min-width:641px)and (max-width:1000px){.clients{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}}.tbc{margin:-6px 0 22px;font-size:14px;color:var(--ink-soft)}.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px)}.steps li{border-top:3px solid var(--ink);padding-top:18px}.steps .num{font-size:12.5px;font-weight:680;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-on-light)}.steps h3{font-size:23px;line-height:1.15;margin:8px 0;font-weight:720}.steps p{margin:0;color:var(--ink-soft);text-wrap:pretty}@media(max-width:640px){.clients{grid-template-columns:1fr;row-gap:18px}}@media(max-width:760px){.steps{grid-template-columns:1fr}}.contact{background-color:var(--bg-dark2);padding:clamp(64px,9vw,120px) 0}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(32px,6vw,88px);align-items:start}.contact-copy p:not(.eyebrow){color:var(--on-dark-soft);max-width:38ch}.contact-copy p.slogan{margin:22px 0 0;font-size:15px;font-weight:650;letter-spacing:.04em;color:var(--on-dark)}.big-phone{display:inline-block;white-space:nowrap;font-size:clamp(32px,3.6vw,54px);font-weight:820;font-stretch:112%;letter-spacing:-.01em;text-decoration:none;font-variant-numeric:tabular-nums;line-height:1.05;margin:10px 0 22px;padding-bottom:6px;border-bottom:3px solid var(--accent);color:var(--on-dark)}.contact-lines{list-style:none;padding:0;margin:0;display:grid;gap:6px;color:var(--on-dark-soft)}.contact-lines a{color:var(--on-dark)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .full{grid-column:1/-1}.field{display:grid;gap:6px}.field label,.checks legend{font-size:14px;color:var(--on-dark-muted);font-weight:520}.field input,.field textarea{font:inherit;font-size:16px;color:var(--on-dark);background-color:var(--form-bg);border:1px solid var(--form-border);border-radius:4px;padding:12px 14px;min-height:48px;width:100%;transition-property:border-color;transition-duration:.15s}.field textarea{min-height:120px;resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--accent)}.checks{border:0;margin:0;padding:0}.checks legend{padding:0;margin-bottom:4px}.checks-row{display:flex;flex-wrap:wrap;gap:4px 24px}.checks label{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--on-dark);font-size:16px;cursor:pointer}.checks input{width:20px;height:20px;accent-color:var(--accent);margin:0}.form-msg{margin:0;padding:12px 14px;border:1px solid var(--accent);border-radius:4px;color:var(--on-dark)}@media(max-width:860px){.contact-grid{grid-template-columns:1fr}}@media(max-width:520px){.form-grid{grid-template-columns:1fr}}.form-hint{margin:0;font-size:14px;color:var(--on-dark-muted)}.req{color:var(--accent-on-dark);font-weight:700}.field-err{margin:0;font-size:14px;line-height:1.4;font-weight:560;color:var(--on-dark)}.field-err:empty{display:none}.field-err:before{content:"";display:inline-block;width:8px;height:8px;margin-right:8px;vertical-align:1px;background-color:var(--accent)}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--accent);border-width:2px;padding:11px 13px}.form-privacy{margin:0;font-size:14px;line-height:1.5;color:var(--on-dark-muted);max-width:60ch}.form-privacy a{color:var(--on-dark);text-underline-offset:3px}.form-submit{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}.anfrage button[disabled]{cursor:progress;background-color:var(--on-dark-muted)}.form-status{margin:0;border-radius:4px;outline-offset:3px}.form-status:empty{display:block;height:0;padding:0;border:0}.form-status:not(:empty){padding:12px 14px;border:1px solid var(--form-border);color:var(--on-dark)}.form-status.is-ok{border-color:var(--accent);border-width:2px}.form-status.is-error{border-color:var(--accent);border-left-width:6px}.form-status p{margin:0}.form-status a{color:var(--on-dark);white-space:nowrap}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.more-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:14px;font-size:16px;font-weight:650;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;text-decoration-color:var(--accent);color:var(--on-dark)}.more-link:after{content:"→";display:inline-block;text-decoration:none;transition-property:transform;transition-duration:.15s;transition-timing-function:ease-out}.more-link:hover:after{transform:translate(3px)}.light .more-link{color:var(--ink);text-decoration-color:var(--accent-on-light)}.ref .more-link{color:var(--on-primary);text-decoration-color:var(--accent-on-primary);margin-top:18px}.ref .more-link:focus-visible{outline-color:var(--accent-on-primary)}.about-text .more-link{margin-top:6px}@media(prefers-reduced-motion:reduce){.more-link:after{transition:none}}.board .row-more{display:flex;align-items:center;gap:6px;width:max-content;max-width:100%;min-height:44px;margin-top:0;font-size:14px;font-weight:560;font-stretch:100%;line-height:1.3;white-space:normal;color:var(--on-dark-soft);text-decoration:underline;text-decoration-color:var(--form-border);text-underline-offset:4px;transition-property:color,text-decoration-color;transition-duration:.15s;transition-timing-function:ease-out}.board .row-more:after{content:"→";text-decoration:none;color:var(--accent-on-dark)}.board .row-more:hover{color:var(--on-dark);text-decoration-color:var(--accent)}@media(max-width:820px){.board tr{position:relative;padding-bottom:62px}.board .row-more{position:absolute;left:74px;right:16px;bottom:10px;width:auto}}
