:root{color-scheme:light;--paper:#fff;--ink:#122733;--body:#364b57;--muted:#617681;--line:#d9e4e9;--line-strong:#aec0c9;--red:#d91f32;--red-dark:#ad1426;--red-soft:#fff1f3;--blue:#0773bd;--blue-dark:#075994;--blue-soft:#edf7fd;--night:#102d40;--font:"Barlow",sans-serif;--page:calc(1360px*var(--u));--header:calc(82px*var(--u));--scale:1}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + calc(76px*var(--u)));font-size:calc(calc(16px*var(--u)) * var(--scale))}body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.6 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}svg{display:block;max-width:100%}::selection{background:var(--blue);color:#fff}:focus-visible{outline:calc(3px*var(--u)) solid var(--blue);outline-offset:calc(4px*var(--u))}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.logo{display:block;width:100%;height:auto}.button{min-height:calc(48px*var(--u));padding:calc(12px*var(--u)) calc(19px*var(--u));display:inline-flex;align-items:center;justify-content:center;gap:calc(9px*var(--u));border:1px solid transparent;background:var(--ink);color:white;font-size:calc(13px*var(--u));font-weight:700;text-align:center;text-decoration:none;cursor:pointer;transition:background .18s,color .18s,border-color .18s}.button:hover{background:var(--blue-dark)}.button-compact{min-height:calc(38px*var(--u));padding:calc(8px*var(--u)) calc(13px*var(--u))}.button-light{border-color:#fff;background:#fff;color:var(--ink)}.button-light:hover{background:var(--blue);border-color:var(--blue);color:#fff}.button-red{background:var(--red);color:#fff}.button-red:hover{background:var(--red-dark)}.button-blue{background:var(--blue);color:#fff}.button-blue:hover{background:var(--blue-dark)}
main{overflow:clip}html[data-theme="dark"] .button:not(.button-red):not(.button-blue):not(.button-light){color:var(--paper)}html[data-theme="dark"] .button-red,html[data-theme="dark"] .button-blue{color:var(--paper)}html[data-theme="dark"]{--soft-bg:#152d3d;color-scheme:dark;--red:#ff6b77;--red-dark:#ff8a94;--blue:#5cb3f0;--blue-dark:#7cc4f5;--paper:#10232f;--ink:#f2f7f9;--body:#d6e3e8;--muted:#afc2cb;--line:#39515f;--line-strong:#6c8491;--red-soft:#2d2026;--blue-soft:#152d3d}html[data-theme="dark"] .button-light{background:#10232f;color:#fff}
html[data-contrast="high"]{--line:#607681;--muted:#344c58;--body:#1c303a}html[data-theme="dark"][data-contrast="high"]{--line:#abc0cb;--muted:#e2edf1;--body:#f3f8fa}
html[data-font="1"] :is(main,.site-footer){zoom:1.12}html[data-font="2"] :is(main,.site-footer){zoom:1.25}
[data-reveal]{animation:rise-in .65s cubic-bezier(.2,.8,.2,1) both}
@keyframes flow{to{stroke-dashoffset:-76}}@keyframes pulse{0%,100%{opacity:.4;transform:scale(.86)}50%{opacity:1;transform:scale(1.2)}}@keyframes conveyor{0%,10%{transform:translateX(0)}78%,90%{transform:translateX(calc(22px*var(--svgz,1)))}100%{transform:translateX(0)}}@keyframes rise-in{from{opacity:0;transform:translateY(calc(12px*var(--svgz,1)))}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){:root{--header:calc(70px*var(--u))}.button-compact{min-height:calc(34px*var(--u));padding:calc(7px*var(--u)) calc(9px*var(--u));font-size:calc(11px*var(--u))}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
html[data-motion="reduce"] *,html[data-motion="reduce"] *::before,html[data-motion="reduce"] *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
@font-face{font-family:"Barlow";src:url("fonts/Barlow-Regular.woff2") format("woff2"),url("fonts/Barlow-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Barlow";src:url("fonts/Barlow-SemiBold.woff2") format("woff2"),url("fonts/Barlow-SemiBold.ttf") format("truetype");font-style:normal;font-weight:600 900;font-display:swap}
.legal-page{width:min(calc(760px*var(--u)),calc(100% - calc(40px*var(--u))));min-height:62vh;margin:0 auto;padding:calc(92px*var(--u)) 0 calc(108px*var(--u))}.legal-page h1{margin:0;font-size:calc(48px*var(--u));font-weight:600}.legal-alert{margin:calc(24px*var(--u)) 0;padding:calc(18px*var(--u)) calc(20px*var(--u));border:1px solid var(--line-strong);background:var(--soft-bg,#f7fafb);color:var(--body);font-size:calc(14px*var(--u))}.legal-page .button{margin-top:calc(8px*var(--u))}.legal-body{margin:calc(32px*var(--u)) 0 calc(40px*var(--u));color:var(--body);font-size:calc(17px*var(--u));line-height:1.65}.legal-body h2{margin:calc(40px*var(--u)) 0 calc(10px*var(--u));font-size:calc(22px*var(--u));font-weight:600;line-height:1.3;hyphens:auto;overflow-wrap:break-word}.legal-body p{margin:0 0 calc(14px*var(--u));max-width:68ch}.legal-body ul{margin:0 0 calc(14px*var(--u));padding-left:1.2em;max-width:68ch}.legal-body li{margin:0 0 calc(6px*var(--u))}.legal-body a{color:inherit;text-decoration:underline;text-underline-offset:calc(3px*var(--u));overflow-wrap:anywhere}.legal-body .legal-stand{margin-top:calc(36px*var(--u));font-size:calc(14px*var(--u))}
@media(max-width:700px){.legal-page{padding:calc(60px*var(--u)) 0 calc(75px*var(--u))}.legal-page h1{font-size:calc(38px*var(--u))}}
h1,h2,h3{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}

/* ===== Version 2 (15.10.2026): Kopf, Startseite, Kontakt, Fuß ===== */
:root{--header:calc(72px*var(--u));--ease:cubic-bezier(.16,1,.3,1);--wash-red:rgb(168 18 38 / 90%);--wash-blue:rgb(5 78 138 / 90%)}
html:not([data-motion="reduce"]){scroll-behavior:smooth}
section[id]{scroll-margin-top:calc(var(--header) + calc(12px*var(--u)))}
.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.icon{width:1.15em;height:1.15em;flex:none}
.skip-link{position:fixed;top:calc(10px*var(--u));left:calc(12px*var(--u));z-index:99;transform:translateY(-150%);padding:calc(12px*var(--u)) calc(18px*var(--u));background:var(--ink);color:var(--paper)}
.skip-link:focus{transform:translateY(0)}
.button .icon{transition:transform .35s var(--ease)}
.button:hover .icon{transform:translateX(calc(3px*var(--u)))}
.button:active{transform:scale(.98)}
.button-ink{background:var(--ink);color:var(--paper)}
.button-ink:hover{background:var(--blue-dark)}
.button-ghost{border-color:var(--line-strong);background:transparent;color:var(--ink)}
.button-ghost:hover{border-color:var(--ink);background:transparent;color:var(--ink)}

/* Kopf */
.scroll-sentinel{position:absolute;top:0;left:0;width:1px;height:1px}
.site-header{position:sticky;top:0;z-index:30;border-bottom:1px solid transparent;background:rgb(255 255 255 / 86%);backdrop-filter:blur(calc(14px*var(--u))) saturate(160%);-webkit-backdrop-filter:blur(calc(14px*var(--u))) saturate(160%);transition:border-color .3s,box-shadow .3s}
.site-header.is-scrolled{border-color:var(--line);box-shadow:0 calc(12px*var(--u)) calc(32px*var(--u)) -24px rgb(0 0 0 / 22%)}
.header-inner{width:min(var(--page),calc(100% - calc(48px*var(--u))));height:var(--header);margin-inline:auto;display:flex;align-items:center;gap:calc(24px*var(--u))}
.wordmark{display:block;flex:0 0 calc(112px*var(--u));width:calc(112px*var(--u));color:#1a1a1a}
.logo{display:block;width:100%;height:auto}
.header-actions{display:flex;align-items:center;gap:calc(10px*var(--u))}
.theme-switch{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;align-items:center;width:calc(72px*var(--u));height:calc(38px*var(--u));padding:0;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);cursor:pointer}
.theme-switch .icon{position:relative;z-index:1;justify-self:center;width:calc(18px*var(--u));height:calc(18px*var(--u));transition:color .35s}
.theme-switch .icon:first-of-type{color:var(--paper)}
.theme-knob{position:absolute;top:calc(3px*var(--u));left:calc(3px*var(--u));width:calc(32px*var(--u));height:calc(30px*var(--u));background:var(--ink);transition:transform .45s var(--ease)}
html[data-theme="dark"] .theme-knob{transform:translateX(calc(34px*var(--u)))}
html[data-theme="dark"] .theme-switch .icon:first-of-type{color:var(--ink)}
html[data-theme="dark"] .theme-switch .icon:last-of-type{color:var(--paper)}
.theme-switch:hover,.icon-button:hover{border-color:var(--ink)}
.icon-button{width:calc(38px*var(--u));height:calc(38px*var(--u));display:grid;place-items:center;padding:0;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);cursor:pointer}
.icon-button .icon{width:calc(20px*var(--u));height:calc(20px*var(--u))}
.menu-trigger{display:none}

html[data-theme="dark"] .site-header{background:rgb(16 35 47 / 88%)}
html[data-theme="dark"] .wordmark{color:#fff}

/* Startseite: Split-Screen */
.split-hero{position:relative;display:flex;height:calc(100svh - var(--header));min-height:calc(620px*var(--u));max-height:calc(940px*var(--u));overflow:hidden;background:var(--paper)}
.pane{position:relative;isolation:isolate;flex:1 1 0;min-width:0;overflow:hidden;color:var(--ink);text-decoration:none;transition:flex-grow .9s var(--ease);--mx:0;--my:0}
.split-hero .pane:hover,.split-hero .pane:focus-visible{flex-grow:1.4}
.pane:focus-visible{outline:calc(3px*var(--u)) solid var(--ink);outline-offset:-6px}
.pane-bg{position:absolute;inset:0;z-index:-3}
.pane-red .pane-bg{background:radial-gradient(120% 90% at 0% 0%,#ffe1e5 0%,#fff4f5 48%,#fff 100%)}
.pane-blue .pane-bg{background:radial-gradient(120% 90% at 100% 0%,#d9edfd 0%,#f1f8fe 48%,#fff 100%)}
.pane-blue{border-left:1px solid var(--line)}
.pane-scene{position:absolute;inset:0;z-index:-2;width:100%;height:100%;opacity:.7;transform:translate(calc(var(--mx) * -14px),calc(var(--my) * -10px)) scale(1.03);transition:filter .7s var(--ease),opacity .7s,transform .9s var(--ease),color .5s}
.pane-red .pane-scene{color:var(--red)}
.pane-blue .pane-scene{color:var(--blue)}
.pane-wash{position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .6s var(--ease)}
.pane-red .pane-wash{background:linear-gradient(165deg,var(--wash-red),rgb(120 10 26 / 92%))}
.pane-blue .pane-wash{background:linear-gradient(195deg,var(--wash-blue),rgb(3 52 96 / 93%))}
.pane-portrait{position:absolute;bottom:0;z-index:0;width:auto;height:min(72%,calc(700px*var(--u)));max-width:none;transform:translate(calc(var(--mx) * calc(8px*var(--u))),0);transform-origin:bottom center;filter:drop-shadow(0 calc(30px*var(--u)) calc(40px*var(--u)) rgb(0 0 0 / 14%));transition:transform .9s var(--ease),filter .7s,opacity .7s;animation:portrait-in 1.2s var(--ease) .35s both}
.pane-red .pane-portrait{right:-6%}
.pane-blue .pane-portrait{left:-6%}
.pane-copy{position:absolute;top:clamp(calc(32px*var(--u)),6vh,calc(72px*var(--u)));z-index:1;width:min(calc(420px*var(--u)),calc(100% - calc(48px*var(--u))));display:grid;gap:calc(14px*var(--u));transition:color .5s,opacity .6s}
.pane-red .pane-copy{left:clamp(calc(24px*var(--u)),4vw,calc(64px*var(--u)));animation:copy-in 1s var(--ease) .15s both}
.pane-blue .pane-copy{right:clamp(calc(24px*var(--u)),4vw,calc(64px*var(--u)));justify-items:end;text-align:right;animation:copy-in 1s var(--ease) .3s both}
.pane-label{font-size:calc(13px*var(--u));font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:color .5s}
.pane-red .pane-label{color:var(--red-dark)}
.pane-blue .pane-label{color:var(--blue-dark)}
.pane-title{font-size:clamp(calc(28px*var(--u)),3vw,calc(46px*var(--u)));font-weight:650;line-height:1.06;letter-spacing:-.01em}
.pane-text{max-width:34ch;color:var(--body);font-size:calc(16px*var(--u));line-height:1.5;transition:color .5s}
.pane-person{display:grid;gap:2px;font-size:calc(14px*var(--u))}
.pane-person small{color:var(--muted);font-size:calc(13px*var(--u));transition:color .5s}
.pane-cta{margin-top:calc(6px*var(--u));display:inline-flex;align-items:center;gap:calc(10px*var(--u));justify-self:start;padding:calc(13px*var(--u)) calc(20px*var(--u));color:#fff;font-size:calc(14px*var(--u));font-weight:700;transition:background .4s,color .4s}
.pane-blue .pane-cta{justify-self:end}
.pane-red .pane-cta{background:var(--red)}
.pane-blue .pane-cta{background:var(--blue)}
.pane-cta .icon{transition:transform .4s var(--ease)}
.pane:hover .pane-wash,.pane:focus-visible .pane-wash{opacity:1}
.pane:hover .pane-scene,.pane:focus-visible .pane-scene{color:#fff;opacity:.5;filter:blur(2px);-webkit-mask-image:none;mask-image:none}
.pane:hover .pane-copy,.pane:focus-visible .pane-copy,.pane:hover .pane-text,.pane:focus-visible .pane-text,.pane:hover .pane-label,.pane:focus-visible .pane-label,.pane:hover .pane-person small,.pane:focus-visible .pane-person small{color:#fff}
.pane:hover .pane-portrait,.pane:focus-visible .pane-portrait{transform:translate(calc(var(--mx) * calc(8px*var(--u))),0) scale(1.04);filter:drop-shadow(0 calc(30px*var(--u)) calc(50px*var(--u)) rgb(0 0 0 / 35%))}
.pane-red:hover .pane-cta,.pane-red:focus-visible .pane-cta{background:#fff;color:#a8142a}
.pane-blue:hover .pane-cta,.pane-blue:focus-visible .pane-cta{background:#fff;color:#05508c}
.pane:hover .pane-cta .icon{transform:translateX(calc(5px*var(--u)))}
.split-hero:has(.pane:hover) .pane:not(:hover) .pane-scene{opacity:.3;filter:grayscale(.7)}
.split-hero:has(.pane:hover) .pane:not(:hover) .pane-portrait{opacity:.75;filter:grayscale(.6)}
.split-hero:has(.pane:hover) .pane:not(:hover) .pane-copy{opacity:.55}
.seam-badge{position:absolute;top:50%;left:50%;z-index:3;width:calc(150px*var(--u));height:calc(150px*var(--u));border-radius:50%;background:var(--paper);box-shadow:0 calc(18px*var(--u)) calc(40px*var(--u)) -18px rgb(0 0 0 / 22%),0 0 0 1px var(--line);transform:translate(-50%,-50%);pointer-events:none;transition:left .9s var(--ease);animation:badge-in 1s var(--ease) .6s both}
.split-hero:has(.pane-red:hover) .seam-badge{left:58.33%}
.split-hero:has(.pane-blue:hover) .seam-badge{left:41.67%}
.seam-badge svg{position:absolute;inset:0;width:100%;height:100%;animation:spin 36s linear infinite}
.seam-badge text{fill:var(--ink);font:700 10.5px var(--font);letter-spacing:.5px}

html[data-theme="dark"] .pane-red .pane-bg{background:radial-gradient(120% 90% at 0% 0%,#43202a 0%,#1d212c 55%,#10232f 100%)}
html[data-theme="dark"] .pane-blue .pane-bg{background:radial-gradient(120% 90% at 100% 0%,#0f3a5a 0%,#122c3d 55%,#10232f 100%)}
html[data-theme="dark"] .pane-cta{color:var(--paper)}

/* Szenen (eigene Grafiken, kein Bildmaterial Dritter) */
.pane-scene text{fill:currentColor;font:700 13px var(--font);letter-spacing:2.5px}
.scene-dots{fill:currentColor;opacity:.2}
#dots-red circle{fill:currentColor}
.net-lines path{fill:none;stroke:currentColor;stroke-width:2;opacity:.6}
.node{fill:var(--paper);stroke:currentColor;stroke-width:1.6;transition:fill .5s}
.node-main{fill:color-mix(in srgb,currentColor 14%,var(--paper));stroke-width:2.6}
.pane:hover .node,.pane:focus-visible .node{fill:transparent}
.gauge-track{fill:none;stroke:currentColor;stroke-width:6;opacity:.2}
.gauge-arc{fill:none;stroke:currentColor;stroke-width:6;stroke-dasharray:62 38;transform-box:fill-box;transform-origin:center;animation:spin 7s linear infinite}
.net-bars rect{fill:currentColor;opacity:.35;transform-box:fill-box;transform-origin:bottom;animation:bar 2.8s ease-in-out infinite}
.net-bars rect:nth-child(2){animation-delay:-.5s}.net-bars rect:nth-child(3){animation-delay:-1.1s}.net-bars rect:nth-child(4){animation-delay:-1.6s}.net-bars rect:nth-child(5){animation-delay:-2.2s}
.net-packets circle{fill:currentColor}
.draw{stroke-dasharray:1;stroke-dashoffset:1;animation:draw 1.8s var(--ease) .25s forwards}
.scene-grid{fill:url(#grid-blue)}
#grid-blue path{fill:none;stroke:currentColor;stroke-width:1;opacity:.14}
.scene-line g path,.scene-line g rect,.scene-line g circle,.scene-line .floor{fill:none;stroke:currentColor;stroke-width:2}
.scene-line .floor{stroke-width:2.6}
.crane-trolley{animation:trolley 8s ease-in-out infinite alternate}
.scene-line .status-light{fill:currentColor;stroke:none;transform-box:fill-box;transform-origin:center;animation:pulse 1.6s ease-in-out infinite}
.roller{transform-box:fill-box;transform-origin:center;animation:spin 1.2s linear infinite}
.scene-line .box{fill:color-mix(in srgb,currentColor 20%,var(--paper));animation:carry 6s linear infinite}
.scene-line .box:nth-child(2){animation-delay:-2s}.scene-line .box:nth-child(3){animation-delay:-4s}
.scene-line .beam{stroke-dasharray:4 6;animation:beam 1s linear infinite}
.robot-upper{transform-box:view-box;transform-origin:calc(552px*var(--svgz,1)) calc(726px*var(--svgz,1));animation:arm 3.2s ease-in-out infinite alternate}
.robot-fore{transform-box:view-box;transform-origin:calc(552px*var(--svgz,1)) calc(600px*var(--svgz,1));animation:fore 3.2s ease-in-out infinite alternate}
.scene-line .layer{fill:color-mix(in srgb,currentColor 20%,var(--paper))}
.scene-line .layer-2{animation:stack-2 6s ease-in-out infinite}
.scene-line .layer-3{animation:stack-3 6s ease-in-out infinite}
.pane:hover .scene-line .box,.pane:hover .scene-line .layer{fill:transparent}
.scene-labels text{opacity:.85}

/* Aussage mit Wort-Animation */
.statement{width:min(var(--page),calc(100% - calc(64px*var(--u))));margin:0 auto;padding:clamp(calc(84px*var(--u)),12vw,calc(150px*var(--u))) 0 calc(30px*var(--u))}
.statement h2{max-width:17ch;margin:0;font-size:clamp(calc(40px*var(--u)),6vw,calc(86px*var(--u)));font-weight:650;line-height:1.03;letter-spacing:-.02em}
.statement em{font-style:normal}
.tone-red{color:var(--red)}
.tone-blue{color:var(--blue)}
.statement-text{max-width:56ch;margin:calc(28px*var(--u)) 0 0;color:var(--body);font-size:clamp(calc(17px*var(--u)),1.4vw,calc(20px*var(--u)));line-height:1.55}
.js .word{display:inline-block;opacity:0;transform:translateY(.45em) rotate(1.5deg);transition:opacity .7s var(--ease),transform 1s var(--ease)}
.js .is-visible .word{opacity:1;transform:none}
.js [data-reveal-up]{opacity:0;transform:translateY(calc(28px*var(--u)));transition:opacity .8s var(--ease),transform 1s var(--ease)}
.js [data-reveal-up].is-visible{opacity:1;transform:none}
.js [data-reveal-group]>*{opacity:0;transform:translateY(calc(32px*var(--u)));transition:opacity .8s var(--ease),transform 1s var(--ease)}
.js [data-reveal-group].is-visible>*{opacity:1;transform:none}

/* Einstieg in drei Schritten */
.steps{width:min(var(--page),calc(100% - calc(64px*var(--u))));margin:0 auto;padding:clamp(calc(70px*var(--u)),9vw,calc(120px*var(--u))) 0}

/* Partnerschaft mit VLK */
.vlk-mark{display:inline-block;background:currentColor;-webkit-mask:url("img/vlk-logo.png") center/contain no-repeat;mask:url("img/vlk-logo.png") center/contain no-repeat}
.partner{position:relative;overflow:hidden;padding:clamp(calc(76px*var(--u)),9vw,calc(124px*var(--u))) 0;background:#0c1d28;color:#eef4f7}
.partner::before,.partner::after{content:"";position:absolute;width:60vw;height:60vw;border-radius:50%;filter:blur(calc(80px*var(--u)));opacity:.28;pointer-events:none}
.partner::before{top:-30vw;left:-20vw;background:#c41a2c;animation:drift 18s ease-in-out infinite alternate}
.partner::after{right:-20vw;bottom:-34vw;background:#0773bd;animation:drift 22s ease-in-out infinite alternate-reverse}
.partner-inner{position:relative;z-index:1;width:min(var(--page),calc(100% - calc(64px*var(--u))));margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(calc(40px*var(--u)),6vw,calc(96px*var(--u)));align-items:start}
.partner-marks{margin-bottom:calc(30px*var(--u));display:flex;align-items:center;gap:calc(18px*var(--u))}
.partner-ims{width:calc(96px*var(--u));color:#fff}
.partner-link-line{position:relative;width:calc(90px*var(--u));height:2px;overflow:hidden;background:rgb(255 255 255 / 20%)}
.partner-link-line i{position:absolute;inset:0;width:34%;background:linear-gradient(90deg,#ff6b77,#5cb3f0)}
.partner .vlk-mark{width:calc(80px*var(--u));height:calc(50px*var(--u));color:#fff}
.partner h2{max-width:18ch;margin:0;font-size:clamp(calc(30px*var(--u)),3.2vw,calc(44px*var(--u)));font-weight:650;line-height:1.1}
.partner-head p{max-width:48ch;margin:calc(18px*var(--u)) 0 calc(26px*var(--u));color:#c9d6dd;font-size:calc(17px*var(--u));line-height:1.6}
.text-link{display:inline-flex;align-items:center;gap:calc(8px*var(--u));padding-bottom:calc(4px*var(--u));border-bottom:1px solid rgb(255 255 255 / 40%);color:#fff;font-weight:700;text-decoration:none;transition:border-color .3s}
.text-link:hover{border-color:#fff}
.text-link .icon{transition:transform .35s var(--ease)}
.text-link:hover .icon{transform:translate(calc(3px*var(--u)),-3px)}
.partner-cols{display:grid;grid-template-columns:1fr 1fr;gap:calc(20px*var(--u))}
.partner-col{padding:calc(28px*var(--u));border:1px solid rgb(255 255 255 / 12%);border-top:calc(3px*var(--u)) solid #ff6b77;background:rgb(255 255 255 / 4%);transition:transform .5s var(--ease),background .4s}
.partner-col-blue{border-top-color:#5cb3f0}
.partner-col:hover{transform:translateY(-4px);background:rgb(255 255 255 / 7%)}
.partner-col h3{margin:0 0 calc(18px*var(--u));font-size:calc(18px*var(--u));font-weight:650}
.partner-col ul{margin:0;padding:0;display:grid;gap:calc(14px*var(--u));list-style:none}
.partner-col li{display:flex;gap:calc(12px*var(--u));color:#e3ecf0;font-size:calc(15px*var(--u));line-height:1.45}
.partner-col li::before{content:"";flex:none;width:calc(7px*var(--u));height:calc(7px*var(--u));margin-top:.55em;background:#ff6b77}
.partner-col-blue li::before{background:#5cb3f0}

/* Kontakt auf der Startseite */
.home-contact{width:min(var(--page),calc(100% - calc(64px*var(--u))));margin:0 auto;padding:clamp(calc(84px*var(--u)),10vw,calc(130px*var(--u))) 0 calc(90px*var(--u))}
.home-contact h2{margin:0;font-size:clamp(calc(32px*var(--u)),3.6vw,calc(50px*var(--u)));font-weight:650;line-height:1.08}
.home-contact-head p{max-width:52ch;margin:calc(14px*var(--u)) 0 0;color:var(--muted);font-size:calc(17px*var(--u))}
.contact-cards{margin-top:calc(44px*var(--u));display:grid;grid-template-columns:1fr 1fr;gap:calc(24px*var(--u))}
.contact-card{position:relative;overflow:hidden;padding:calc(32px*var(--u));display:grid;grid-template-columns:calc(112px*var(--u)) minmax(0,1fr);grid-template-areas:"pic name" "pic role" "facts facts" "cta cta";column-gap:calc(24px*var(--u));border:1px solid var(--line);background:var(--paper);transition:transform .5s var(--ease),box-shadow .5s,border-color .4s}
.contact-card::before{content:"";position:absolute;top:0;left:0;right:0;height:calc(4px*var(--u));background:var(--red);transform:scaleX(.18);transform-origin:left;transition:transform .7s var(--ease)}
.contact-card-blue::before{background:var(--blue)}
.contact-card:hover{transform:translateY(-4px);box-shadow:0 calc(30px*var(--u)) calc(60px*var(--u)) -36px rgb(0 0 0 / 20%)}
.contact-card:hover::before{transform:scaleX(1)}
.contact-card-pic{grid-area:pic;width:calc(112px*var(--u));height:calc(112px*var(--u));overflow:hidden;border-radius:50%;background:var(--red-soft)}
.contact-card-blue .contact-card-pic{background:var(--blue-soft)}
.contact-card-pic img,.pcard-pic img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;transform:scale(1.3) translateY(9%)}
.contact-card h3{grid-area:name;align-self:end;margin:0;font-size:calc(24px*var(--u));font-weight:650}
.contact-card-role{grid-area:role;margin:calc(4px*var(--u)) 0 0;color:var(--muted);font-size:calc(15px*var(--u))}
.contact-card .facts{grid-area:facts;margin-top:calc(26px*var(--u))}
.contact-card .button{grid-area:cta;justify-self:start;margin-top:calc(24px*var(--u))}
.contact-shared{margin:calc(28px*var(--u)) 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:calc(10px*var(--u));color:var(--muted);font-size:calc(15px*var(--u))}
.contact-shared-sep{width:1px;height:calc(16px*var(--u));margin:0 calc(6px*var(--u));background:var(--line-strong)}

/* Kontakt auf den Unterseiten (nach VLK-Vorbild) */
.contact-v2{padding:clamp(calc(76px*var(--u)),9vw,calc(120px*var(--u))) max(calc(32px*var(--u)),calc((100% - var(--page))/2));background:var(--tone-soft)}
.contact-red{--tone:var(--red);--tone-dark:var(--red-dark);--tone-soft:var(--red-soft)}
.contact-blue{--tone:var(--blue);--tone-dark:var(--blue-dark);--tone-soft:var(--blue-soft)}
.contact-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(calc(32px*var(--u)),5vw,calc(72px*var(--u)));align-items:start}
.contact-aside h2{margin:0;font-size:clamp(calc(30px*var(--u)),3.4vw,calc(46px*var(--u)));font-weight:650;line-height:1.1}
.contact-sub{max-width:44ch;margin:calc(16px*var(--u)) 0 0;color:var(--body);font-size:calc(17px*var(--u))}
.pcard{margin:calc(30px*var(--u)) 0 calc(26px*var(--u));display:flex;align-items:center;gap:calc(18px*var(--u))}
.pcard-pic{flex:none;width:calc(88px*var(--u));height:calc(88px*var(--u));overflow:hidden;border-radius:50%;background:var(--paper);}
.pcard-text{display:grid;gap:2px}
.pcard-text b{font-size:calc(19px*var(--u))}
.pcard-text span{color:var(--muted);font-size:calc(15px*var(--u))}
.wizard{padding:clamp(calc(24px*var(--u)),3vw,calc(40px*var(--u)));border:1px solid var(--line);background:var(--paper);box-shadow:0 calc(30px*var(--u)) calc(60px*var(--u)) -40px rgb(0 0 0 / 20%)}
.wiz-top{display:flex;align-items:baseline;justify-content:space-between;gap:calc(16px*var(--u))}
.wiz-top h3{margin:0;font-size:calc(22px*var(--u));font-weight:650}
.wiz-count{color:var(--muted);font-size:calc(13px*var(--u));font-weight:600}
.wiz-progress{margin:calc(18px*var(--u)) 0 calc(28px*var(--u));padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:calc(8px*var(--u));list-style:none}
.wiz-progress li{padding-top:calc(10px*var(--u));border-top:calc(3px*var(--u)) solid var(--line);color:var(--muted);font-size:calc(13px*var(--u));font-weight:600;transition:border-color .5s,color .5s}
.wiz-progress li.is-active,.wiz-progress li.is-done{border-color:var(--tone);color:var(--ink)}
.wiz-step{min-width:0;margin:0;padding:0;border:0}
.wiz-step legend{margin-bottom:calc(16px*var(--u));padding:0;font-size:calc(18px*var(--u));font-weight:650}
.js .wiz-step:not(.is-current){display:none}
.js .wiz-step.is-current{animation:step-in .5s var(--ease)}
.chip-group{display:flex;flex-wrap:wrap;gap:calc(10px*var(--u))}
.chip{position:relative}
.chip input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}
.chip span{display:inline-block;padding:calc(10px*var(--u)) calc(16px*var(--u));border:1px solid var(--line-strong);color:var(--ink);font-size:calc(14px*var(--u));font-weight:500;transition:background .3s,border-color .3s,color .3s}
.chip:hover span{border-color:var(--tone)}
.chip input:checked+span{border-color:var(--tone);background:var(--tone);color:#fff}
.chip input:focus-visible+span{outline:2px solid var(--tone-dark);outline-offset:2px}
html[data-theme="dark"] .chip input:checked+span{color:var(--paper)}
.field{margin-bottom:calc(18px*var(--u));display:grid;gap:calc(8px*var(--u))}
.field label{color:var(--ink);font-size:calc(14px*var(--u));font-weight:600}
.optional{color:var(--muted);font-weight:400}
.field input,.field textarea,.field select{width:100%;padding:calc(12px*var(--u)) calc(14px*var(--u));border:1px solid var(--line-strong);border-radius:0;background:var(--paper);color:var(--ink);font:inherit;font-size:calc(15px*var(--u))}
.field textarea{resize:vertical}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--tone);outline:2px solid var(--tone);outline-offset:0}
.field [aria-invalid="true"]{border-color:var(--red-dark)}
.field-hint{margin:0;color:var(--muted);font-size:calc(13px*var(--u))}
.field-error{margin:0;color:var(--red-dark);font-size:calc(13px*var(--u));font-weight:600}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:calc(16px*var(--u))}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.wiz-nav{margin-top:calc(10px*var(--u));display:flex;justify-content:space-between;gap:calc(12px*var(--u))}
.wiz-nav [data-wiz-next]{margin-left:auto}
.wizard.is-done>:not(.wiz-done){display:none}
.wiz-done{animation:step-in .6s var(--ease)}
.wiz-done-icon{width:calc(56px*var(--u));height:calc(56px*var(--u));margin-bottom:calc(18px*var(--u));display:grid;place-items:center;border-radius:50%;background:var(--tone);color:#fff}
html[data-theme="dark"] .wiz-done-icon{color:var(--paper)}
.wiz-done-icon .icon{width:calc(28px*var(--u));height:calc(28px*var(--u))}
.wiz-done h3{margin:0;font-size:calc(24px*var(--u))}
.wiz-done p{max-width:46ch;margin:calc(10px*var(--u)) 0 calc(22px*var(--u));color:var(--body)}

/* Fuß */
.site-footer{padding:clamp(calc(56px*var(--u)),7vw,calc(88px*var(--u))) max(calc(32px*var(--u)),calc((100% - var(--page))/2)) calc(28px*var(--u));background:#0b1a24;color:#c9d6dd}
.footer-grid{padding-bottom:calc(40px*var(--u));display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr)) auto;gap:calc(40px*var(--u));align-items:start;border-bottom:1px solid rgb(255 255 255 / 12%)}
.footer-logo{display:block;width:calc(130px*var(--u));color:#fff}
.footer-brand p{max-width:34ch;margin:calc(18px*var(--u)) 0 0;font-size:calc(15px*var(--u));line-height:1.55}
.footer-col h2{margin:0 0 calc(14px*var(--u));color:#8fa6b2;font-size:calc(13px*var(--u));font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.footer-col a{display:block;padding:calc(5px*var(--u)) 0;color:#fff;font-weight:600;text-decoration:none}
.footer-col a:hover{text-decoration:underline;text-underline-offset:calc(4px*var(--u))}
.tone-red-link:hover{text-decoration-color:#ff6b77!important}
.tone-blue-link:hover{text-decoration-color:#5cb3f0!important}
.footer-col p{margin:0 0 calc(10px*var(--u));font-size:calc(15px*var(--u));line-height:1.55}
.partner-badge{padding:calc(18px*var(--u)) calc(20px*var(--u));display:grid;justify-items:start;gap:calc(10px*var(--u));border:1px solid rgb(255 255 255 / 16%);color:#fff;text-decoration:none;transition:border-color .3s,background .3s}
.partner-badge:hover{border-color:#fff;background:rgb(255 255 255 / 4%)}
.partner-label{color:#8fa6b2;font-size:calc(12px*var(--u));font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.partner-badge .vlk-mark{width:calc(92px*var(--u));height:calc(56px*var(--u))}
.partner-name{color:#c9d6dd;font-size:calc(13px*var(--u))}
.footer-bottom{padding-top:calc(20px*var(--u));display:flex;flex-wrap:wrap;justify-content:space-between;gap:calc(12px*var(--u));color:#8fa6b2;font-size:calc(13px*var(--u))}
.footer-bottom nav{display:flex;gap:calc(18px*var(--u))}
.footer-bottom a{color:#fff;text-decoration:none}
.footer-bottom a:hover{text-decoration:underline;text-underline-offset:calc(3px*var(--u))}

/* Animationen */
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes bar{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}
@keyframes trolley{from{transform:translateX(0)}to{transform:translateX(calc(430px*var(--svgz,1)))}}
@keyframes carry{0%{transform:translateX(0);opacity:0}8%,84%{opacity:1}100%{transform:translateX(calc(240px*var(--svgz,1)));opacity:0}}
@keyframes beam{to{stroke-dashoffset:-20}}
@keyframes arm{from{transform:rotate(-8deg)}to{transform:rotate(10deg)}}
@keyframes fore{from{transform:rotate(16deg)}to{transform:rotate(-12deg)}}
@keyframes stack-2{0%,30%{opacity:0;transform:translateY(calc(-16px*var(--svgz,1)))}40%,92%{opacity:1;transform:none}100%{opacity:0}}
@keyframes stack-3{0%,62%{opacity:0;transform:translateY(calc(-16px*var(--svgz,1)))}72%,92%{opacity:1;transform:none}100%{opacity:0}}
@keyframes portrait-in{from{opacity:0;transform:translateY(calc(40px*var(--svgz,1)))}to{opacity:1}}
@keyframes copy-in{from{opacity:0;transform:translateY(calc(24px*var(--svgz,1)))}to{opacity:1;transform:none}}
@keyframes badge-in{from{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(-40deg)}to{opacity:1;transform:translate(-50%,-50%)}}
@keyframes pulse-run{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}

@keyframes drift{from{transform:translate(0,0)}to{transform:translate(8vw,4vw)}}
@keyframes step-in{from{opacity:0;transform:translateX(calc(16px*var(--svgz,1)))}to{opacity:1;transform:none}}

/* Responsiv */
@media(max-width:1100px){.pane-portrait{height:min(62%,calc(600px*var(--u)))}.pane-title{font-size:clamp(calc(26px*var(--u)),3.2vw,calc(38px*var(--u)))}}
@media(max-width:980px){
  .menu-trigger{display:grid}
  .header-actions{margin-left:auto}
  .partner-inner,.contact-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:820px){
  .split-hero{flex-direction:column;height:auto;max-height:none;min-height:0}
  .pane{flex:none;height:calc(560px*var(--u))}
  .split-hero .pane:hover,.split-hero .pane:focus-visible{flex-grow:0}
  .pane-blue{border-left:0;border-top:1px solid var(--line)}
  .pane-red .pane-copy,.pane-blue .pane-copy{top:calc(32px*var(--u));left:calc(24px*var(--u));right:calc(24px*var(--u));width:auto;justify-items:start;text-align:left}
  .pane-blue .pane-cta{justify-self:start}
  .pane-portrait{height:calc(300px*var(--u))}
  .pane-red .pane-portrait,.pane-blue .pane-portrait{left:auto;right:-40px}
  .seam-badge{top:calc(560px*var(--u));left:auto;right:calc(20px*var(--u));width:calc(116px*var(--u));height:calc(116px*var(--u));transform:translateY(-50%);animation:none}
  .split-hero:has(.pane-red:hover) .seam-badge,.split-hero:has(.pane-blue:hover) .seam-badge{left:auto}
  
  .partner-cols,.contact-cards,.field-row{grid-template-columns:1fr}
  .contact-card{padding:calc(24px*var(--u));grid-template-columns:calc(84px*var(--u)) minmax(0,1fr)}
  .contact-card-pic{width:calc(84px*var(--u));height:calc(84px*var(--u))}
  .footer-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .header-inner{width:calc(100% - calc(32px*var(--u)));gap:calc(10px*var(--u))}
  .wordmark{flex-basis:calc(92px*var(--u));width:calc(92px*var(--u))}
  .header-actions{gap:calc(6px*var(--u))}
  .theme-switch{width:calc(64px*var(--u))}
  .theme-knob{width:calc(28px*var(--u))}
  html[data-theme="dark"] .theme-knob{transform:translateX(calc(30px*var(--u)))}
  .statement,.home-contact,.partner-inner{width:calc(100% - calc(40px*var(--u)))}
}
/* Grafik im Textbereich ausblenden, damit die Schrift frei steht */
.pane-red .pane-scene{-webkit-mask-image:radial-gradient(ellipse 95% 78% at 0% 0%,transparent 60%,#000 92%);mask-image:radial-gradient(ellipse 95% 78% at 0% 0%,transparent 60%,#000 92%)}
.pane-blue .pane-scene{-webkit-mask-image:radial-gradient(ellipse 95% 78% at 100% 0%,transparent 60%,#000 92%);mask-image:radial-gradient(ellipse 95% 78% at 100% 0%,transparent 60%,#000 92%)}
.pane-portrait{height:min(68%,calc(660px*var(--u)))}
.pane-red .pane-portrait{right:0}
.pane-blue .pane-portrait{left:0}
@media(max-width:820px){.pane-red .pane-scene,.pane-blue .pane-scene{-webkit-mask-image:linear-gradient(180deg,transparent 30%,#000 70%);mask-image:linear-gradient(180deg,transparent 30%,#000 70%)}.pane-red .pane-portrait,.pane-blue .pane-portrait{left:auto;right:-40px;height:calc(300px*var(--u))}}
[hidden]{display:none!important}
h1,h2,h3{hyphens:manual;-webkit-hyphens:manual}
@media(max-width:700px){h1,h2,h3{hyphens:auto;-webkit-hyphens:auto}}
.contact-v2 .pcard-text span,.contact-v2 .facts dt,.pane-person small{color:var(--body)}
/* Nachbesserung nach impeccable-Prüfung (15.10.2026) */
.contact-card::before{display:none}
.contact-card:hover{border-color:var(--red)}
.contact-card-blue:hover{border-color:var(--blue)}
.pcard-pic{box-shadow:none;outline:2px solid var(--tone);outline-offset:calc(4px*var(--u))}
.partner-link-line i{width:100%;animation:none;transform:scaleX(0);transform-origin:left;transition:transform 1.4s var(--ease) .3s}
.partner-head.is-visible .partner-link-line i{transform:scaleX(1)}

/* ===== Version 3 (15.10.2026): Kopf, Mittelkreis, Wegweiser, Kontaktzeilen, Unterseiten ===== */
@property --share{syntax:"<number>";inherits:true;initial-value:50}
.at-red,.ap-red,.journey-red,.section-nav-red,.contact-card-red{--tone:var(--red);--tone-soft:var(--red-soft);--tone-dark:var(--red-dark)}
.at-blue,.ap-blue,.journey-blue,.section-nav-blue,.contact-card-blue{--tone:var(--blue);--tone-soft:var(--blue-soft);--tone-dark:var(--blue-dark)}

/* Kopf */
.site-header::before{content:"";position:absolute;top:0;left:0;right:0;height:calc(3px*var(--u));background:linear-gradient(90deg,var(--red) 0 50%,var(--blue) 50% 100%)}
html[data-area="beratung"] .site-header::before{background:var(--red)}
html[data-area="maschinenbau"] .site-header::before{background:var(--blue)}
.wordmark .logo{transform-origin:left center;transition:transform .5s var(--ease)}
.site-header.is-scrolled .wordmark .logo{transform:scale(.88)}
.primary-nav{display:flex;align-items:center;gap:calc(22px*var(--u));margin-left:auto}
.area-toggle{position:relative;display:flex;padding:calc(4px*var(--u));border:1px solid var(--line-strong);background:var(--paper)}
.area-toggle a{position:relative;z-index:1;padding:calc(9px*var(--u)) calc(16px*var(--u));color:var(--ink);font-size:calc(14px*var(--u));font-weight:600;text-decoration:none;white-space:nowrap;transition:color .35s}
.nav-indicator{position:absolute;top:calc(4px*var(--u));bottom:calc(4px*var(--u));left:0;width:0;background:var(--indicator,var(--ink));opacity:0;pointer-events:none;transition:transform .55s var(--ease),width .55s var(--ease),opacity .3s,background-color .35s}
.nav-indicator.is-on{opacity:1}
.area-toggle a.is-lit{color:#fff}
html[data-theme="dark"] .area-toggle a.is-lit{color:var(--paper)}
.nav-plain{position:relative;padding:calc(10px*var(--u)) 2px;color:var(--ink);font-size:calc(14px*var(--u));font-weight:600;text-decoration:none}
.nav-plain::after{content:"";position:absolute;left:0;right:0;bottom:calc(4px*var(--u));height:2px;background:linear-gradient(90deg,var(--red),var(--blue));transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.nav-plain:hover::after{transform:scaleX(1)}
.primary-nav .nav-contact{display:none}
.header-actions{gap:calc(8px*var(--u))}
.header-actions .icon-button{margin-right:calc(6px*var(--u))}
html[data-area="beratung"] .header-cta{background:var(--red);color:#fff}
html[data-area="maschinenbau"] .header-cta{background:var(--blue);color:#fff}
html[data-theme="dark"][data-area="beratung"] .header-cta,html[data-theme="dark"][data-area="maschinenbau"] .header-cta{color:var(--paper)}
html[data-area="beratung"] .header-cta:hover,html[data-area="maschinenbau"] .header-cta:hover{background:var(--ink);color:var(--paper)}

/* Mittelkreis als Präzisionsinstrument */
.seam-badge{width:calc(200px*var(--u));height:calc(200px*var(--u));background:none;box-shadow:none;--share:50;transition:left .9s var(--ease),--share .9s var(--ease)}
.split-hero:has(.pane-red:hover) .seam-badge{--share:70}
.split-hero:has(.pane-blue:hover) .seam-badge{--share:30}
.seam-glass{position:absolute;inset:0;border-radius:50%;background:color-mix(in srgb,var(--paper) 76%,transparent);backdrop-filter:blur(calc(12px*var(--u))) saturate(150%);-webkit-backdrop-filter:blur(calc(12px*var(--u))) saturate(150%);box-shadow:0 calc(26px*var(--u)) calc(50px*var(--u)) -22px rgb(0 0 0 / 40%),inset 0 1px 0 rgb(255 255 255 / 70%),0 0 0 1px var(--line)}
.seam-dial,.seam-text{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.dial-ticks{transform-box:view-box;transform-origin:calc(100px*var(--svgz,1)) calc(100px*var(--svgz,1));animation:spin 120s linear infinite reverse}
.tick{stroke:var(--ink);stroke-width:1;opacity:.3}
.tick-major{stroke-width:1.8;opacity:.7}
.dial-arc{fill:none;stroke-width:3;transform-box:view-box;transform-origin:calc(100px*var(--svgz,1)) calc(100px*var(--svgz,1))}
.dial-arc-red{stroke:var(--red);stroke-dasharray:var(--share) calc(100 - var(--share));transform:rotate(calc(180deg - var(--share) * 1.8deg))}
.dial-arc-blue{stroke:var(--blue);stroke-dasharray:calc(100 - var(--share)) var(--share);transform:rotate(calc((var(--share) - 100) * 1.8deg))}
.seam-text{animation:spin 48s linear infinite}
.seam-text text{fill:var(--ink);font:700 10.5px var(--font);letter-spacing:.4px}

.seam-ping{position:absolute;inset:0;border-radius:50%;border:2px solid var(--ink);opacity:0;animation:ping 3.6s ease-out infinite}
.split-hero:has(.pane-red:hover) .seam-ping{border-color:var(--red)}
.split-hero:has(.pane-blue:hover) .seam-ping{border-color:var(--blue)}
@keyframes ping{0%{opacity:.45;transform:scale(1)}80%,100%{opacity:0;transform:scale(1.45)}}

/* Wegweiser */
.guide{width:min(var(--page),calc(100% - calc(64px*var(--u))));margin:0 auto;padding:clamp(calc(70px*var(--u)),9vw,calc(120px*var(--u))) 0}
.guide-steps{margin:0 0 calc(26px*var(--u));padding:0;display:flex;flex-wrap:wrap;gap:calc(8px*var(--u));list-style:none}
.guide-steps li{padding:calc(7px*var(--u)) calc(14px*var(--u));border:1px solid var(--line-strong);color:var(--body);font-size:calc(13px*var(--u));font-weight:600;transition:background .4s,color .4s,border-color .4s}
.guide-steps li.is-active{border-color:var(--ink);background:var(--ink);color:var(--paper)}
.guide-steps li.is-done{border-color:var(--ink);color:var(--ink)}
.guide-head h2{max-width:24ch;margin:0;font-size:clamp(calc(30px*var(--u)),3.6vw,calc(48px*var(--u)));font-weight:650;line-height:1.1}
.guide-head p{max-width:60ch;margin:calc(14px*var(--u)) 0 0;color:var(--body);font-size:calc(17px*var(--u))}
.guide-grid{margin-top:calc(40px*var(--u));display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:calc(24px*var(--u));align-items:stretch}
.guide-box{padding:calc(28px*var(--u));display:grid;gap:calc(12px*var(--u));align-content:start;border:1px solid var(--line);background:var(--paper)}
.guide-box label{font-size:calc(17px*var(--u));font-weight:650}
.guide-result{position:relative;overflow:hidden;padding:calc(28px*var(--u));display:flex;flex-direction:column;gap:calc(12px*var(--u));border:1px solid var(--line);background:linear-gradient(135deg,var(--red-soft),var(--blue-soft))}
.guide-meter{display:flex;height:calc(14px*var(--u));background:var(--line)}
.meter-red{width:50%;background:var(--red);transition:width .9s var(--ease)}
.meter-blue{flex:1;background:var(--blue)}
.guide-meter-labels{display:flex;justify-content:space-between;gap:calc(12px*var(--u));color:var(--body);font-size:calc(12px*var(--u));font-weight:600}
.guide-verdict{margin:calc(8px*var(--u)) 0 0;font-size:calc(22px*var(--u));font-weight:650;line-height:1.3}
.guide-detail{margin:0;color:var(--body);font-size:calc(15px*var(--u));line-height:1.55}
.guide-actions{margin-top:auto;padding-top:calc(8px*var(--u));display:flex;flex-wrap:wrap;align-items:center;gap:calc(18px*var(--u))}
.guide-result[data-state="red"] .guide-actions .button{background:var(--red);color:#fff}
.guide-result[data-state="blue"] .guide-actions .button{background:var(--blue);color:#fff}
html[data-theme="dark"] .guide-result .guide-actions .button{color:var(--paper)}
.guide-alt{color:var(--ink);font-size:calc(14px*var(--u));font-weight:600;text-underline-offset:calc(4px*var(--u))}
.guide-result.is-pulse{animation:result-pulse .7s var(--ease)}
@keyframes result-pulse{0%{transform:scale(.985)}100%{transform:none}}
.wiz-note{margin:0 0 calc(18px*var(--u));padding:calc(12px*var(--u)) calc(14px*var(--u));border:1px solid var(--tone);background:var(--tone-soft);color:var(--ink);font-size:calc(14px*var(--u))}

/* Kontaktzeilen (ganze Zeile klickbar) */
.reach{margin:0;padding:0;display:grid;gap:calc(8px*var(--u));list-style:none}
.reach a{padding:calc(12px*var(--u)) calc(14px*var(--u));display:grid;grid-template-columns:calc(44px*var(--u)) minmax(0,1fr) auto;align-items:center;gap:calc(14px*var(--u));border:1px solid var(--line);background:var(--paper);color:var(--ink);text-decoration:none;transition:border-color .3s,transform .45s var(--ease)}
.reach-icon{width:calc(44px*var(--u));height:calc(44px*var(--u));display:grid;place-items:center;background:var(--tone-soft,var(--red-soft));color:var(--tone-dark,var(--red-dark))}
.reach-icon .icon{width:calc(22px*var(--u));height:calc(22px*var(--u))}
.reach-text small{display:block;color:var(--body);font-size:calc(12px*var(--u));font-weight:600}
.reach-text b{font-size:calc(16px*var(--u));overflow-wrap:anywhere}
.reach-go{color:var(--body);transition:transform .35s var(--ease),color .3s}
.reach a:hover{border-color:var(--tone,var(--ink));transform:translateX(calc(4px*var(--u)))}
.reach a:hover .reach-go{color:var(--ink);transform:translate(calc(3px*var(--u)),-3px)}
.contact-card .reach{grid-area:facts;margin-top:calc(24px*var(--u))}
.contact-v2 .reach{margin-top:calc(4px*var(--u))}

/* Unterseiten: Einstieg */
.ap-hero{position:relative;isolation:isolate;overflow:hidden;min-height:min(84svh,calc(820px*var(--u)));display:flex;color:#fff;--mx:0;--my:0}
.ap-hero-red{background:linear-gradient(150deg,#b3172a 0%,#8f0f22 55%,#5e0a18 100%)}
.ap-hero-blue{background:linear-gradient(210deg,#0a64a8 0%,#064a80 55%,#03305a 100%)}
.ap-hero-bg{position:absolute;inset:0;z-index:-1}
.ap-hero .pane-scene{color:#fff;opacity:.3;-webkit-mask-image:linear-gradient(90deg,transparent 10%,#000 65%);mask-image:linear-gradient(90deg,transparent 10%,#000 65%)}
.ap-hero .node,.ap-hero .box,.ap-hero .layer,.ap-hero .node-main{fill:transparent}
.ap-hero-inner{width:min(var(--page),calc(100% - calc(64px*var(--u))));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:end;gap:calc(40px*var(--u))}
.ap-hero-copy{align-self:center;padding:clamp(calc(56px*var(--u)),9vh,calc(110px*var(--u))) 0;animation:copy-in 1s var(--ease) .1s both}
.ap-hero h1{max-width:15ch;margin:0;font-size:clamp(calc(40px*var(--u)),5.2vw,calc(74px*var(--u)));font-weight:650;line-height:1.03;letter-spacing:-.02em}
.ap-lead{max-width:52ch;margin:calc(24px*var(--u)) 0 0;color:rgb(255 255 255 / 90%);font-size:clamp(calc(17px*var(--u)),1.4vw,calc(20px*var(--u)));line-height:1.55}
.ap-actions{margin-top:calc(34px*var(--u));display:flex;flex-wrap:wrap;align-items:center;gap:calc(24px*var(--u))}
.button-white{background:#fff}
.ap-hero-red .button-white{color:#8f0f22}
.ap-hero-blue .button-white{color:#05508c}
.button-white:hover{background:#0b1a24;color:#fff}
.ap-journey-link{display:inline-flex;align-items:center;gap:calc(12px*var(--u));color:#fff;font-weight:700;text-decoration:none}
.ap-journey-arrow{width:calc(38px*var(--u));height:calc(38px*var(--u));display:grid;place-items:center;border:1px solid rgb(255 255 255 / 55%);border-radius:50%;transform:rotate(90deg);transition:background .3s}
.ap-journey-arrow .icon{animation:nudge 1.8s ease-in-out infinite}
.ap-journey-link:hover .ap-journey-arrow{background:rgb(255 255 255 / 15%)}
@keyframes nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(calc(4px*var(--svgz,1)))}}
.ap-person{position:relative;margin:0;align-self:end;justify-self:end;display:flex;align-items:flex-end}
.ap-portrait{display:block;width:auto;max-width:none;height:min(72svh,calc(640px*var(--u)));filter:drop-shadow(0 calc(30px*var(--u)) calc(50px*var(--u)) rgb(0 0 0 / 35%));transform:translate(calc(var(--mx) * calc(8px*var(--u))),0);transition:transform .9s var(--ease);animation:portrait-in 1.2s var(--ease) .3s both}
.ap-person figcaption{position:absolute;left:-28px;bottom:calc(48px*var(--u));padding:calc(14px*var(--u)) calc(18px*var(--u));display:grid;gap:2px;border:1px solid rgb(255 255 255 / 28%);background:rgb(255 255 255 / 12%);backdrop-filter:blur(calc(12px*var(--u)));-webkit-backdrop-filter:blur(calc(12px*var(--u)))}
.ap-person figcaption b{font-size:calc(16px*var(--u))}
.ap-person figcaption span{color:rgb(255 255 255 / 88%);font-size:calc(13px*var(--u))}

/* Abschnittsmenü der Unterseiten */
.section-nav{position:sticky;top:var(--header);z-index:20;min-height:calc(58px*var(--u));padding:0 max(calc(32px*var(--u)),calc((100% - var(--page))/2));display:flex;align-items:center;gap:calc(4px*var(--u));overflow-x:auto;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(calc(12px*var(--u)));-webkit-backdrop-filter:blur(calc(12px*var(--u)));scrollbar-width:none}
.section-nav a{position:relative;z-index:1;flex:none;padding:calc(12px*var(--u)) calc(14px*var(--u));color:var(--body);font-size:calc(14px*var(--u));font-weight:600;text-decoration:none;transition:color .3s}
.section-nav a:hover,.section-nav a.is-lit,.section-nav a[aria-current]{color:var(--ink)}
.section-nav .nav-indicator{top:auto;bottom:0;height:calc(3px*var(--u));background:var(--tone)}

/* Reise beim Scrollen */
.journey{padding:clamp(calc(80px*var(--u)),10vw,calc(130px*var(--u))) max(calc(32px*var(--u)),calc((100% - var(--page))/2)) calc(20px*var(--u))}
.journey-head h2{max-width:18ch;margin:0;font-size:clamp(calc(32px*var(--u)),4vw,calc(56px*var(--u)));font-weight:650;line-height:1.05}
.journey-head p{max-width:58ch;margin:calc(16px*var(--u)) 0 0;color:var(--body);font-size:calc(18px*var(--u));line-height:1.55}
.stage-svg{display:block;width:100%;height:100%}
.stage-camera{transform-box:view-box;transform-origin:0 0;transition:transform 1.4s var(--ease)}
#stage-dots circle{fill:var(--line-strong)}
.seg-base{fill:none;stroke:var(--line-strong);stroke-width:2;stroke-dasharray:6 8}
.seg{fill:none;stroke:var(--tone);stroke-width:3;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.1s var(--ease)}
.seg.is-on{stroke-dashoffset:0}
.seg-packet{fill:var(--tone);opacity:0;transition:opacity .5s}
.seg-packet.is-on{opacity:1}
.node-card .card{fill:var(--paper);stroke:var(--line-strong);stroke-width:2;transition:fill .5s,stroke .5s}
.node-card .card-bar{fill:var(--line);transition:fill .5s}
.card-dot{fill:var(--line-strong)}
.card-title{fill:var(--body);font:700 22px var(--font);transition:fill .5s}
.card-line{fill:var(--line);transform-box:fill-box;transform-origin:left;transition:fill .5s}
.card-ping{fill:var(--line-strong);transform-box:fill-box;transform-origin:center}
.station.is-done .card{stroke:color-mix(in srgb,var(--tone) 50%,var(--paper))}
.station.is-done .card-title,.station.is-active .card-title{fill:var(--ink)}
.station.is-active .card{fill:var(--tone-soft);stroke:var(--tone);stroke-width:3}
.station.is-active .card-bar{fill:var(--tone)}
.station.is-active .card-line{fill:var(--tone);opacity:.55;animation:line-grow 2.4s ease-in-out infinite}
.station.is-active .l2{animation-delay:.3s}.station.is-active .l3{animation-delay:.6s}
.station.is-active .card-ping{fill:var(--tone);animation:pulse 1.4s ease-in-out infinite}
@keyframes line-grow{0%,100%{transform:scaleX(.4)}50%{transform:scaleX(1)}}
#stage-grid path{fill:none;stroke:var(--line);stroke-width:1}
.journey .floor{fill:none;stroke:var(--line-strong);stroke-width:3}
.journey .belt{fill:none;stroke:var(--body);stroke-width:2}
.journey .roller circle{fill:var(--paper);stroke:var(--body);stroke-width:1.5}
.journey .roller path,.journey .legs path{stroke:var(--line-strong);stroke-width:2}
.line-box{fill:color-mix(in srgb,var(--tone) 22%,var(--paper));stroke:var(--tone);stroke-width:2;animation:line-travel 21s linear infinite}
.line-box:nth-child(2){animation-delay:-3s}.line-box:nth-child(3){animation-delay:-6s}.line-box:nth-child(4){animation-delay:-9s}.line-box:nth-child(5){animation-delay:-12s}.line-box:nth-child(6){animation-delay:-15s}.line-box:nth-child(7){animation-delay:-18s}
@keyframes line-travel{from{transform:translateX(0)}to{transform:translateX(calc(2060px*var(--svgz,1)))}}
.journey .station .housing,.journey .station .window,.journey .station .detail,.journey .station .gate,.journey .station .housing-line,.journey .station .arm,.journey .station .label-roll,.journey .station .pallet-layer,.journey .station .nozzle{fill:none;stroke:var(--body);stroke-width:2;transition:stroke .5s,fill .5s}
.journey .station .arm{stroke-width:7;stroke-linecap:round}
.journey .station .joint{fill:var(--paper);stroke:var(--body);stroke-width:2}
.journey .station .window{fill:color-mix(in srgb,var(--line) 40%,var(--paper))}
.st-label{fill:var(--body);font:700 15px var(--font);letter-spacing:2px;transition:fill .5s}
.journey .lamp,.journey .sensor-row circle{fill:var(--line-strong);transform-box:fill-box;transform-origin:center}
.journey .beam{fill:none;stroke:var(--line-strong);stroke-width:3;stroke-dasharray:6 6}
.journey .spray circle{fill:var(--tone);opacity:0}
.journey .robot-upper{transform-box:view-box;transform-origin:calc(1807px*var(--svgz,1)) calc(560px*var(--svgz,1));animation:arm 3.2s ease-in-out infinite alternate}
.journey .robot-fore{transform-box:view-box;transform-origin:calc(1807px*var(--svgz,1)) calc(400px*var(--svgz,1));animation:fore 3.2s ease-in-out infinite alternate}
.journey .station.is-active .housing,.journey .station.is-active .gate,.journey .station.is-active .housing-line,.journey .station.is-active .arm,.journey .station.is-active .label-roll,.journey .station.is-active .nozzle,.journey .station.is-active .detail{stroke:var(--tone)}
.journey .station.is-active .housing,.journey .station.is-active .pallet-layer{fill:var(--tone-soft)}
.journey .station.is-active .pallet-layer{stroke:var(--tone)}
.journey .station.is-active .st-label{fill:var(--ink)}
.journey .station.is-active .lamp,.journey .station.is-active .sensor-row circle{fill:var(--tone);animation:pulse 1.4s ease-in-out infinite}
.journey .station.is-active .sensor-row circle:nth-child(2){animation-delay:.3s}.journey .station.is-active .sensor-row circle:nth-child(3){animation-delay:.6s}
.journey .station.is-active .beam{stroke:var(--tone);animation:beam 1s linear infinite}
.journey .station.is-active .spray circle{animation:spray 1.1s ease-out infinite}
.journey .station.is-active .spray circle:nth-child(2){animation-delay:.35s}.journey .station.is-active .spray circle:nth-child(3){animation-delay:.7s}
.journey .station.is-active .label-roll{transform-box:fill-box;transform-origin:center;stroke-dasharray:20 8;animation:spin 3s linear infinite}
.journey .station.is-active .shuttle{animation:shuttle-lift 4s ease-in-out infinite alternate}
@keyframes spray{0%{opacity:0;transform:translateY(calc(-8px*var(--svgz,1)))}30%{opacity:1}100%{opacity:0;transform:translateY(calc(12px*var(--svgz,1)))}}
@keyframes shuttle-lift{from{transform:translateY(0)}to{transform:translateY(calc(-240px*var(--svgz,1)))}}

/* Vorgehen als Zeitleiste */
.ap-process{padding:clamp(calc(80px*var(--u)),10vw,calc(120px*var(--u))) max(calc(32px*var(--u)),calc((100% - var(--page))/2));background:linear-gradient(180deg,var(--paper),color-mix(in srgb,var(--tone) 7%,var(--paper)))}
.ap-process h2,.ap-industries h2,.ap-bento h2{max-width:22ch;margin:0;font-size:clamp(calc(30px*var(--u)),3.6vw,calc(48px*var(--u)));font-weight:650;line-height:1.1}
.timeline{position:relative;margin:calc(52px*var(--u)) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:calc(28px*var(--u));list-style:none}
.timeline::before,.timeline::after{content:"";position:absolute;top:calc(22px*var(--u));left:0;right:0;height:2px;background:var(--line)}
.timeline::after{background:var(--tone);transform:scaleX(0);transform-origin:left;transition:transform 1.8s var(--ease)}
.timeline.is-visible::after{transform:scaleX(1)}
.timeline li{position:relative;z-index:1}
.tl-num{width:calc(46px*var(--u));height:calc(46px*var(--u));margin-bottom:calc(22px*var(--u));display:grid;place-items:center;border:2px solid var(--tone);border-radius:50%;background:var(--paper);color:var(--tone-dark);font-size:calc(16px*var(--u));font-weight:700}
.timeline h3{margin:0;font-size:calc(20px*var(--u));font-weight:650}
.timeline p{margin:calc(8px*var(--u)) 0 0;color:var(--body);font-size:calc(15px*var(--u));line-height:1.55}

/* Branchen */
.ap-industries{padding:clamp(calc(80px*var(--u)),10vw,calc(120px*var(--u))) max(calc(32px*var(--u)),calc((100% - var(--page))/2))}
.ind-list{margin-top:calc(40px*var(--u));display:grid;grid-template-columns:repeat(auto-fit,minmax(calc(220px*var(--u)),1fr));border-top:1px solid var(--line)}
.ind-item{position:relative;padding:calc(28px*var(--u)) calc(24px*var(--u)) calc(28px*var(--u)) 0;border-bottom:1px solid var(--line)}
.ind-item::after{content:"";position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:var(--tone);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.ind-item:hover::after{transform:scaleX(1)}
.ind-item h3{margin:0;font-size:clamp(calc(22px*var(--u)),2.2vw,calc(30px*var(--u)));font-weight:650;transition:color .3s,transform .5s var(--ease)}
.ind-item:hover h3{color:var(--tone-dark);transform:translateX(calc(6px*var(--u)))}
.ind-item p{margin:calc(8px*var(--u)) 0 0;color:var(--body);font-size:calc(15px*var(--u))}

/* Zusammenarbeit und Rollen */
.ap-bento{padding:clamp(calc(80px*var(--u)),10vw,calc(120px*var(--u))) max(calc(32px*var(--u)),calc((100% - var(--page))/2));border-top:1px solid var(--line)}
.ap-bento-head p{max-width:62ch;margin:calc(14px*var(--u)) 0 0;color:var(--body);font-size:calc(17px*var(--u))}
.bento{margin-top:calc(40px*var(--u));display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:calc(18px*var(--u))}
.bento-item{min-height:calc(200px*var(--u));padding:calc(32px*var(--u));display:flex;flex-direction:column;justify-content:flex-end;border:1px solid var(--line);background:var(--paper);transition:transform .5s var(--ease),border-color .4s}
.bento-item:hover{transform:translateY(-4px);border-color:var(--tone)}
.bento-item:first-child{position:relative;overflow:hidden;grid-row:span 2;min-height:calc(420px*var(--u));border:0;color:#fff}
.ap-red .bento-item:first-child{background:linear-gradient(160deg,#b3172a,#7a0d1d)}
.ap-blue .bento-item:first-child{background:linear-gradient(200deg,#0a64a8,#03305a)}
.bento-item:first-child::before{content:"";position:absolute;top:-30%;right:-25%;width:80%;aspect-ratio:1;border:1px solid rgb(255 255 255 / 25%);border-radius:50%;box-shadow:0 0 0 calc(40px*var(--u)) rgb(255 255 255 / 4%),0 0 0 calc(80px*var(--u)) rgb(255 255 255 / 3%);animation:spin 60s linear infinite}
.bento-item h3{position:relative;margin:0;font-size:calc(24px*var(--u));font-weight:650}
.bento-item:first-child h3{font-size:calc(30px*var(--u))}
.bento-item p{position:relative;margin:calc(10px*var(--u)) 0 0;color:var(--body);font-size:calc(16px*var(--u));line-height:1.55}
.bento-item:first-child p{color:rgb(255 255 255 / 90%)}
.ap-note{max-width:70ch;margin:calc(22px*var(--u)) 0 0;color:var(--body);font-size:calc(15px*var(--u))}

/* Partner auf den Unterseiten */
.ap-partner{position:relative;overflow:hidden;padding:clamp(calc(70px*var(--u)),8vw,calc(110px*var(--u))) max(calc(32px*var(--u)),calc((100% - var(--page))/2));background:#0c1d28;color:#eef4f7}
.ap-partner::before{content:"";position:absolute;top:-40%;right:-10%;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgb(196 26 44 / 35%),transparent 65%);pointer-events:none}
#partner.ap-partner:has(.ap-partner-blue)::before{background:radial-gradient(circle,rgb(7 115 189 / 40%),transparent 65%)}
.ap-partner-inner{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(calc(32px*var(--u)),5vw,calc(80px*var(--u)));align-items:start}
.ap-partner .partner-marks{flex-direction:column;align-items:flex-start;gap:calc(14px*var(--u))}
.ap-partner .partner-link-line{width:2px;height:calc(48px*var(--u));margin-left:calc(46px*var(--u))}
.ap-partner .partner-link-line i{transform:scaleY(0);transform-origin:top}
.ap-partner-inner.is-visible .partner-link-line i{transform:scaleY(1)}
.ap-partner h2{margin:0;font-size:clamp(calc(28px*var(--u)),3vw,calc(40px*var(--u)));font-weight:650}
.ap-partner-copy>p{max-width:60ch;margin:calc(14px*var(--u)) 0 0;color:#c9d6dd;font-size:calc(17px*var(--u))}
.ap-partner-list{margin:calc(26px*var(--u)) 0 calc(28px*var(--u));padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(14px*var(--u));list-style:none}
.ap-partner-list li{padding:calc(20px*var(--u));border:1px solid rgb(255 255 255 / 14%);background:rgb(255 255 255 / 4%);font-size:calc(15px*var(--u));font-weight:600;line-height:1.45;transition:background .4s,transform .5s var(--ease)}
.ap-partner-list li:hover{background:rgb(255 255 255 / 8%);transform:translateY(-3px)}
.ap-partner-red li{box-shadow:inset 0 calc(3px*var(--u)) 0 #ff6b77}
.ap-partner-blue li{box-shadow:inset 0 calc(3px*var(--u)) 0 #5cb3f0}

/* Seit 1989 */
.ap-history{position:relative;overflow:hidden;padding:clamp(calc(80px*var(--u)),10vw,calc(130px*var(--u))) max(calc(32px*var(--u)),calc((100% - var(--page))/2));display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:calc(40px*var(--u))}
.ap-year{color:transparent;font-size:clamp(calc(110px*var(--u)),17vw,calc(250px*var(--u)));font-weight:700;line-height:.85;letter-spacing:-.04em;-webkit-text-stroke:2px var(--tone);transition:color 1.8s var(--ease)}
.ap-history.is-visible .ap-year{color:var(--tone)}
.ap-history h2{margin:0;font-size:clamp(calc(28px*var(--u)),3vw,calc(42px*var(--u)));font-weight:650;line-height:1.1}
.ap-history p{max-width:52ch;margin:calc(14px*var(--u)) 0 0;color:var(--body);font-size:calc(17px*var(--u))}

/* Responsiv Version 3 */
@media(max-width:1100px){
  .primary-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:calc(12px*var(--u)) calc(24px*var(--u)) calc(22px*var(--u));border-bottom:1px solid var(--line);background:var(--paper);box-shadow:0 calc(24px*var(--u)) calc(40px*var(--u)) -30px rgb(0 0 0 / 30%)}
  .primary-nav[data-open="true"]{display:flex}
  .area-toggle{flex-direction:column;padding:0;border:0}
  .area-toggle .nav-indicator{display:none}
  .area-toggle a,.nav-plain,.primary-nav .nav-contact{padding:calc(15px*var(--u)) 0;border-bottom:1px solid var(--line);font-size:calc(17px*var(--u))}
  .area-toggle a.is-current{color:var(--tone-dark)}
  .nav-plain::after{display:none}
  .primary-nav .nav-contact{display:block;color:var(--ink);font-weight:600;text-decoration:none}
  .menu-trigger{display:grid}
  .header-actions{margin-left:auto}
  .journey-grid{grid-template-columns:1fr}
  .journey-stage{top:calc(var(--header) + calc(64px*var(--u)));height:42svh;min-height:calc(300px*var(--u));z-index:2}
  .journey-step{min-height:55svh}
  .ap-partner-list{grid-template-columns:1fr}
}
@media(max-width:820px){
  .seam-badge{width:calc(136px*var(--u));height:calc(136px*var(--u));top:calc(560px*var(--u))}
  
  .seam-text text{font-size:9px}
  .guide-grid,.ap-hero-inner,.ap-history,.ap-partner-inner{grid-template-columns:1fr}
  .ap-hero-copy{padding-bottom:0}
  .ap-portrait{height:calc(340px*var(--u))}
  .ap-person figcaption{left:0;bottom:calc(24px*var(--u))}
  .timeline{grid-template-columns:1fr;gap:calc(26px*var(--u))}
  .timeline::before,.timeline::after{top:0;bottom:0;left:calc(22px*var(--u));right:auto;width:2px;height:auto}
  .timeline::after{transform:scaleY(0);transform-origin:top}
  .timeline.is-visible::after{transform:scaleY(1)}
  .timeline li{padding-left:calc(66px*var(--u))}
  .tl-num{position:absolute;left:0;top:0}
  .bento{grid-template-columns:1fr}
  .bento-item:first-child{grid-row:auto;min-height:calc(300px*var(--u))}
}
@media(max-width:560px){
  .guide,.ap-hero-inner{width:calc(100% - calc(40px*var(--u)))}
  .reach a{grid-template-columns:calc(40px*var(--u)) minmax(0,1fr) auto;gap:calc(12px*var(--u))}
  .reach-icon{width:calc(40px*var(--u));height:calc(40px*var(--u))}
}
.ap-hero .pane-scene{opacity:.22;-webkit-mask-image:linear-gradient(90deg,transparent 38%,#000 85%);mask-image:linear-gradient(90deg,transparent 38%,#000 85%)}
.ap-person figcaption{background:rgb(8 20 28 / 62%);border-color:rgb(255 255 255 / 22%)}
.ap-hero h1{max-width:18ch;hyphens:auto;-webkit-hyphens:auto}
.header-cta{min-height:calc(40px*var(--u))}
@media(max-width:560px){.header-cta .icon{display:none}.header-cta{padding-inline:calc(12px*var(--u))}}
@media(max-width:430px){.header-cta{display:none}}

/* ===== Version 4 (15.10.2026): Flusskarte, Wegweiser 2, Kapitel-Reise ===== */
@property --angle{syntax:"<angle>";inherits:false;initial-value:0deg}
:root{--spring:cubic-bezier(.34,1.56,.64,1)}

/* Aussage: Unterstreichung und Flusskarte */
.statement h2 em{position:relative}
.statement h2 em::after{content:"";position:absolute;left:0;right:0;bottom:.02em;height:.07em;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease) 1.1s}
.statement h2 em.tone-blue::after{transition-delay:1.4s}
.statement h2.is-visible em::after{transform:scaleX(1)}
.flow-map{position:relative;margin-top:calc(56px*var(--u))}
.statement-flow{display:block;width:100%;height:auto;overflow:visible}
.statement-flow path{fill:none}
.flow-base{stroke:var(--line);stroke-width:2}
.flow-trunk,.flow-red,.flow-blue{stroke-width:3;stroke-dasharray:1;stroke-dashoffset:1}
.flow-trunk{stroke:var(--ink);transition:stroke-dashoffset 1s var(--ease) .2s}
.flow-red{stroke:var(--red);transition:stroke-dashoffset 1.6s var(--ease) 1s}
.flow-blue{stroke:var(--blue);transition:stroke-dashoffset 1.6s var(--ease) 1.15s}
.flow-map.is-visible .flow-trunk,.flow-map.is-visible .flow-red,.flow-map.is-visible .flow-blue{stroke-dashoffset:0}
.flow-pulse{stroke-width:7;stroke-linecap:round;stroke-dasharray:.015 .985;stroke-dashoffset:1;opacity:0}
.flow-pulse-red{stroke:var(--red)}
.flow-pulse-blue{stroke:var(--blue)}
.flow-map.is-visible .flow-pulse{opacity:1;animation:pulse-run 4.4s linear 2.6s infinite}
.flow-map.is-visible .flow-pulse-blue{animation-delay:3.4s}
.flow-map.is-visible .flow-pulse.p2{animation-delay:4.8s}
.flow-map.is-visible .flow-pulse-blue.p2{animation-delay:5.6s}
.flow-start circle{fill:var(--ink);transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform .7s var(--spring)}
.flow-start text{fill:var(--paper);font:700 11px var(--font);letter-spacing:.5px;text-anchor:middle;opacity:0;transition:opacity .4s .4s}
.flow-map.is-visible .flow-start circle{transform:scale(1)}
.flow-map.is-visible .flow-start text{opacity:1}
.flow-fork circle{fill:var(--paper);stroke:var(--ink);stroke-width:3;transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform .6s var(--spring) .9s}
.flow-map.is-visible .flow-fork circle{transform:scale(1)}
.flow-stop circle{fill:var(--paper);stroke-width:3;transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform .6s var(--spring)}
.flow-stops-red circle{stroke:var(--red)}
.flow-stops-blue circle{stroke:var(--blue)}
.flow-stop text{fill:var(--body);font:600 15px var(--font);text-anchor:middle;opacity:0;transition:opacity .6s}
.flow-stop:nth-child(1) circle,.flow-stop:nth-child(1) text{transition-delay:1.7s}
.flow-stop:nth-child(2) circle,.flow-stop:nth-child(2) text{transition-delay:2s}
.flow-stop:nth-child(3) circle,.flow-stop:nth-child(3) text{transition-delay:2.3s}
.flow-map.is-visible .flow-stop circle{transform:scale(1)}
.flow-map.is-visible .flow-stop text{opacity:1}
.flow-map.is-visible .flow-stops-red .flow-stop circle{animation:stop-glow 4.4s ease-in-out 2.6s infinite}
.flow-map.is-visible .flow-stops-blue .flow-stop circle{animation:stop-glow 4.4s ease-in-out 3.4s infinite}
.flow-stops .flow-stop:nth-child(2) circle{animation-delay:3.1s!important}
.flow-stops .flow-stop:nth-child(3) circle{animation-delay:3.5s!important}
@keyframes stop-glow{0%,70%,100%{fill:var(--paper)}80%{fill:currentColor}}
.flow-stops-red{color:var(--red)}
.flow-stops-blue{color:var(--blue)}
.flow-dest{position:absolute;right:0;display:inline-flex;align-items:center;gap:calc(10px*var(--u));padding:calc(12px*var(--u)) calc(16px*var(--u));border:1px solid;background:var(--paper);font-size:calc(15px*var(--u));font-weight:700;text-decoration:none;transform:translateY(-50%);opacity:0;translate:calc(16px*var(--u)) 0;transition:opacity .6s 2.4s,translate .8s var(--ease) 2.4s,background .3s,color .3s}
.flow-dest .icon:last-child{transition:transform .35s var(--ease)}
.flow-dest:hover .icon:last-child{transform:translateX(calc(4px*var(--u)))}
.flow-dest-red{top:19.2%;border-color:var(--red);color:var(--red-dark)}
.flow-dest-blue{top:80.8%;border-color:var(--blue);color:var(--blue-dark)}
.flow-dest-red:hover{background:var(--red);color:#fff}
.flow-dest-blue:hover{background:var(--blue);color:#fff}
html[data-theme="dark"] .flow-dest-red:hover,html[data-theme="dark"] .flow-dest-blue:hover{color:var(--paper)}
.flow-map.is-visible .flow-dest{opacity:1;translate:0 0}

/* Wegweiser 2 */
.guide{position:relative;overflow:hidden;width:100%;margin:0;padding:clamp(calc(80px*var(--u)),10vw,calc(130px*var(--u))) 0;background:linear-gradient(135deg,color-mix(in srgb,var(--red) 7%,var(--paper)),color-mix(in srgb,var(--blue) 9%,var(--paper)))}
.guide::before{content:"";position:absolute;inset:0;background-image:radial-gradient(color-mix(in srgb,var(--ink) 22%,transparent) 1px,transparent 1.6px);background-size:calc(26px*var(--u)) calc(26px*var(--u));-webkit-mask-image:radial-gradient(ellipse at 75% 35%,#000,transparent 70%);mask-image:radial-gradient(ellipse at 75% 35%,#000,transparent 70%);animation:grid-drift 40s linear infinite;pointer-events:none}
@keyframes grid-drift{to{background-position:260px 130px}}
.guide-inner{position:relative;width:min(var(--page),calc(100% - calc(64px*var(--u))));margin:0 auto}
.guide-steps li{display:inline-flex;align-items:center;gap:calc(8px*var(--u));background:var(--paper)}
.guide-steps .icon{width:calc(16px*var(--u));height:calc(16px*var(--u))}
.guide-head h2{max-width:none;font-size:clamp(calc(36px*var(--u)),4.6vw,calc(64px*var(--u)));letter-spacing:-.02em}
.guide-box,.guide-result{box-shadow:0 calc(30px*var(--u)) calc(60px*var(--u)) -40px rgb(0 0 0 / 28%)}
.guide-box label{font-size:calc(18px*var(--u))}
.guide-field{position:relative;isolation:isolate}
.guide-field textarea{position:relative;display:block;width:100%;min-height:calc(150px*var(--u));padding:calc(18px*var(--u)) calc(20px*var(--u));border:2px solid var(--line-strong);border-radius:0;background:var(--paper);color:var(--ink);font:inherit;font-size:calc(18px*var(--u));line-height:1.5;resize:vertical;transition:border-color .3s}
.guide-field textarea::placeholder{color:var(--body);opacity:.9}
.guide-field textarea:focus{border-color:transparent;outline:none}
.guide-field-glow{position:absolute;inset:0;z-index:-1;background:conic-gradient(from var(--angle),var(--red),var(--blue),var(--red));opacity:0;transition:opacity .4s}
.guide-field:focus-within .guide-field-glow{opacity:1;animation:angle-spin 4s linear infinite}
@keyframes angle-spin{to{--angle:360deg}}
.guide-accuracy{display:flex;align-items:center;gap:calc(12px*var(--u));color:var(--body);font-size:calc(13px*var(--u));font-weight:600}
.guide-accuracy-bar{flex:0 0 calc(160px*var(--u));height:calc(6px*var(--u));overflow:hidden;background:var(--line)}
.guide-accuracy-bar i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--red),var(--blue));transition:width .6s var(--ease)}
.guide-tiles-label{margin:calc(12px*var(--u)) 0 0;font-size:calc(15px*var(--u));font-weight:650}
.guide-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(10px*var(--u))}
.guide-tile{padding:calc(14px*var(--u));display:flex;align-items:center;gap:calc(12px*var(--u));border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;font-size:calc(14px*var(--u));font-weight:600;line-height:1.3;text-align:left;cursor:pointer;transition:border-color .3s,transform .45s var(--ease),box-shadow .45s}
.guide-tile:hover{transform:translateY(-3px);border-color:var(--ink);box-shadow:0 calc(14px*var(--u)) calc(26px*var(--u)) -18px rgb(0 0 0 / 30%)}
.guide-tile.is-picked{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.guide-tile-icon{flex:none;width:calc(40px*var(--u));height:calc(40px*var(--u));display:grid;place-items:center;background:var(--red-soft);color:var(--red-dark);transition:transform .5s var(--spring)}
.guide-tile:nth-child(n+4) .guide-tile-icon{background:var(--blue-soft);color:var(--blue-dark)}
.guide-tile-icon .icon{width:calc(22px*var(--u));height:calc(22px*var(--u))}
.guide-tile:hover .guide-tile-icon{transform:rotate(-8deg) scale(1.1)}
.guide-result{background:var(--paper);gap:calc(14px*var(--u))}
.guide-people{min-height:calc(160px*var(--u));display:flex;align-items:center;justify-content:center;gap:calc(22px*var(--u))}
.guide-person{width:calc(112px*var(--u));height:calc(112px*var(--u));overflow:hidden;border-radius:50%;background:var(--red-soft);outline:calc(3px*var(--u)) solid transparent;outline-offset:calc(4px*var(--u));transition:transform .8s var(--spring),filter .6s,opacity .6s,outline-color .5s;animation:float 4s ease-in-out infinite}
.guide-person-blue{background:var(--blue-soft);animation-delay:-2s}
.guide-person img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;transform:scale(1.3) translateY(9%)}
.guide-result[data-state="red"] .guide-person-red,.guide-result[data-state="blue"] .guide-person-blue{transform:scale(1.22);animation:none}
.guide-result[data-state="red"] .guide-person-red{outline-color:var(--red)}
.guide-result[data-state="blue"] .guide-person-blue{outline-color:var(--blue)}
.guide-result[data-state="red"] .guide-person-blue,.guide-result[data-state="blue"] .guide-person-red{transform:scale(.78);filter:grayscale(1);opacity:.45;animation:none}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(calc(-6px*var(--svgz,1)))}}
.guide-verdict{text-align:center}
.guide-detail{text-align:center}
.guide-chips{margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:calc(6px*var(--u));list-style:none}
.guide-chips li{padding:calc(5px*var(--u)) calc(10px*var(--u));background:var(--line);color:var(--ink);font-size:calc(13px*var(--u));font-weight:600;animation:chip-in .5s var(--spring) both}
.guide-result[data-state="red"] .guide-chips li{background:var(--red-soft)}
.guide-result[data-state="blue"] .guide-chips li{background:var(--blue-soft)}
@keyframes chip-in{from{opacity:0;transform:translateY(calc(8px*var(--svgz,1))) scale(.8)}to{opacity:1;transform:none}}
.guide-actions{justify-content:center}

/* Kapitel-Reise auf den Unterseiten */
.chapters{padding:clamp(calc(80px*var(--u)),10vw,calc(130px*var(--u))) max(calc(32px*var(--u)),calc((100% - var(--page))/2)) calc(40px*var(--u))}
.chapter-list{position:relative;margin:calc(64px*var(--u)) 0 0;padding:0 0 0 calc(92px*var(--u));list-style:none}
.chapter-list::before{content:"";position:absolute;left:calc(27px*var(--u));top:0;bottom:0;width:0;border-left:2px dashed var(--line-strong)}
.chapter{position:relative;padding:calc(40px*var(--u)) 0 calc(80px*var(--u));display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(calc(32px*var(--u)),5vw,calc(72px*var(--u)))}
.chapter:nth-child(even) .chapter-visual{order:2}
.chapter::before{content:"";position:absolute;left:-65px;top:0;bottom:0;width:2px;background:var(--tone);transform:scaleY(0);transform-origin:top;transition:transform 1.4s var(--ease)}
.chapter.is-reached::before{transform:scaleY(1)}
.chapter-node{position:absolute;left:-92px;top:calc(48px*var(--u));z-index:1;width:calc(56px*var(--u));height:calc(56px*var(--u));display:grid;place-items:center;border:2px solid var(--line-strong);border-radius:50%;background:var(--paper);color:var(--body);transition:background .5s,border-color .5s,color .5s,transform .6s var(--spring)}
.chapter-node .icon{width:calc(26px*var(--u));height:calc(26px*var(--u))}
.chapter.is-reached .chapter-node{border-color:var(--tone);background:var(--tone);color:#fff;transform:scale(1.08)}
html[data-theme="dark"] .chapter.is-reached .chapter-node{color:var(--paper)}
.chapter.is-current .chapter-node::after{content:"";position:absolute;inset:-8px;border:2px solid var(--tone);border-radius:50%;animation:ping 2.4s ease-out infinite}
.chapter-visual{position:relative;aspect-ratio:4/3;-webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,#000 52%,transparent 100%);mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,#000 52%,transparent 100%);opacity:0;transform:translateY(calc(40px*var(--u))) scale(.96);transition:opacity 1s,transform 1.2s var(--ease)}
.chapter.is-reached .chapter-visual{opacity:1;transform:none}
.chapter-visual .stage-svg{display:block;width:100%;height:100%;color:var(--tone)}
.chapter-copy h3{margin:0;font-size:clamp(calc(28px*var(--u)),3vw,calc(42px*var(--u)));font-weight:650;line-height:1.1}
.chapter-lead{max-width:52ch;margin:calc(16px*var(--u)) 0 0;color:var(--body);font-size:calc(18px*var(--u));line-height:1.6}
.benefits-label{margin:calc(28px*var(--u)) 0 calc(12px*var(--u));color:var(--tone-dark);font-size:calc(13px*var(--u));font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.benefits{margin:0;padding:0;display:grid;gap:calc(14px*var(--u));list-style:none}
.benefits li{display:grid;grid-template-columns:calc(48px*var(--u)) minmax(0,1fr);align-items:start;gap:calc(14px*var(--u));opacity:0;transform:translateX(calc(24px*var(--u)));transition:opacity .6s,transform .8s var(--ease)}
.benefits li:nth-child(2){transition-delay:.15s}.benefits li:nth-child(3){transition-delay:.3s}
.chapter.is-reached .benefits li{opacity:1;transform:none}
.benefit-icon{width:calc(48px*var(--u));height:calc(48px*var(--u));display:grid;place-items:center;background:var(--tone-soft);color:var(--tone-dark);transition:background .35s,color .35s}
.benefit-icon .icon{width:calc(24px*var(--u));height:calc(24px*var(--u))}
.chapter.is-current .benefit-icon .icon{animation:icon-bob 2.8s ease-in-out infinite}
.chapter.is-current .benefits li:nth-child(2) .icon{animation-delay:.4s}
.chapter.is-current .benefits li:nth-child(3) .icon{animation-delay:.8s}
@keyframes icon-bob{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(calc(-3px*var(--svgz,1))) rotate(-7deg)}}
.benefits li:hover .benefit-icon{background:var(--tone);color:#fff}
html[data-theme="dark"] .benefits li:hover .benefit-icon{color:var(--paper)}
.benefits b{display:block;margin-bottom:2px;font-size:calc(16px*var(--u))}
.benefits li>span:last-child{color:var(--body);font-size:calc(15px*var(--u));line-height:1.5}
.keywords{margin:calc(22px*var(--u)) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:calc(6px*var(--u));list-style:none}
.keywords li{padding:calc(5px*var(--u)) calc(10px*var(--u));border:1px solid var(--line);color:var(--body);font-size:calc(12px*var(--u));font-weight:600}
@media(max-width:900px){
  .chapter-list{padding-left:calc(60px*var(--u))}
  .chapter-list::before{left:calc(19px*var(--u))}
  .chapter{grid-template-columns:1fr;padding:calc(24px*var(--u)) 0 calc(64px*var(--u))}
  .chapter:nth-child(even) .chapter-visual{order:0}
  .chapter::before{left:-41px}
  .chapter-node{left:-60px;top:calc(24px*var(--u));width:calc(40px*var(--u));height:calc(40px*var(--u))}
  .chapter-node .icon{width:calc(20px*var(--u));height:calc(20px*var(--u))}
  .guide-tiles{grid-template-columns:1fr 1fr}
  .flow-dest{position:static;transform:none;margin-top:calc(10px*var(--u))}
  .flow-map{display:flex;flex-direction:column;align-items:flex-start}
  .statement-flow text{font-size:20px}
}
@media(max-width:560px){.guide-tiles{grid-template-columns:1fr}.guide-inner{width:calc(100% - calc(40px*var(--u)))}}
[id^="stage-grid"] path{fill:none;stroke:var(--line);stroke-width:1}
[id^="stage-dots"] circle{fill:var(--line-strong)}

/* Animierte Branchen-Icons (15.10.2026) */
.ind-icon{width:calc(72px*var(--u));height:calc(72px*var(--u));margin-bottom:calc(18px*var(--u));display:grid;place-items:center;border-radius:50%;background:var(--tone-soft);color:var(--tone-dark);transition:background .4s,color .4s,transform .6s var(--spring)}
.ind-item:hover .ind-icon{background:var(--tone);color:#fff;transform:scale(1.06)}
html[data-theme="dark"] .ind-item:hover .ind-icon{color:var(--paper)}
.branch-icon{width:calc(44px*var(--u));height:calc(44px*var(--u));overflow:visible;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.branch-icon .bi-draw{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.4s var(--ease)}
.ind-list.is-visible .branch-icon .bi-draw{stroke-dashoffset:0}
.ind-list.is-visible .ind-item:nth-child(2) .bi-draw{transition-delay:.15s}
.ind-list.is-visible .ind-item:nth-child(3) .bi-draw{transition-delay:.3s}
.ind-list.is-visible .ind-item:nth-child(4) .bi-draw{transition-delay:.45s}
.bi-spin,.bi-flap-l,.bi-flap-r{transform-box:fill-box}
.bi-spin{transform-origin:center}
.ind-list.is-visible .bi-spin{animation:spin 5s var(--ease) 1s 1}
.ind-item:hover .bi-spin{animation:spin 3.5s linear infinite}
.bi-flash{transition:stroke-dashoffset 1.4s var(--ease),fill .3s}
.ind-list.is-visible .bi-flash{animation:bi-flash 1.6s ease-in-out 1.2s 2}
.ind-item:hover .bi-flash{animation:bi-flash 1.2s ease-in-out infinite}
@keyframes bi-flash{0%,100%{fill:transparent}40%{fill:currentColor}55%{fill:transparent}70%{fill:currentColor}}
.bi-bubbles circle,.bi-smoke circle{fill:currentColor;stroke:none;opacity:0;transform-box:fill-box;transform-origin:center}
.ind-list.is-visible .bi-bubbles circle{animation:bi-rise 2s ease-in 1.2s 2}
.ind-item:hover .bi-bubbles circle{animation:bi-rise 1.8s ease-in infinite}
.bi-bubbles circle:nth-child(2),.bi-smoke circle:nth-child(2){animation-delay:1.6s!important}
.bi-bubbles circle:nth-child(3){animation-delay:2s!important}
@keyframes bi-rise{0%{opacity:0;transform:translateY(0) scale(.6)}25%{opacity:1}100%{opacity:0;transform:translateY(calc(-22px*var(--svgz,1))) scale(1.2)}}
.ind-list.is-visible .bi-smoke circle{animation:bi-smoke 2.4s ease-out 1.2s 2}
.ind-item:hover .bi-smoke circle{animation:bi-smoke 2.2s ease-out infinite}
@keyframes bi-smoke{0%{opacity:0;transform:translate(0,calc(6px*var(--svgz,1))) scale(.6)}30%{opacity:.9}100%{opacity:0;transform:translate(calc(6px*var(--svgz,1)),calc(-10px*var(--svgz,1))) scale(1.6)}}
.bi-steam path{opacity:0;stroke-dasharray:4 4}
.ind-list.is-visible .bi-steam path{animation:bi-steam 2.4s ease-out 1.2s 2}
.ind-item:hover .bi-steam path{animation:bi-steam 2s ease-out infinite}
.bi-steam path:nth-child(2){animation-delay:1.5s!important}.bi-steam path:nth-child(3){animation-delay:1.8s!important}
@keyframes bi-steam{0%{opacity:0;transform:translateY(calc(6px*var(--svgz,1)))}40%{opacity:1}100%{opacity:0;transform:translateY(calc(-8px*var(--svgz,1)))}}
.bi-fill{fill:currentColor;stroke:none;opacity:.3;transform:translateY(calc(40px*var(--u)))}
.ind-list.is-visible .bi-fill{animation:bi-fill 2.6s var(--ease) 1s 1 forwards}
.ind-item:hover .bi-fill{animation:bi-fill 2.2s var(--ease) infinite}
@keyframes bi-fill{0%{transform:translateY(calc(40px*var(--svgz,1)))}70%,100%{transform:translateY(calc(12px*var(--svgz,1)))}}
.bi-flap-l{transform-origin:right bottom}
.bi-flap-r{transform-origin:left bottom}
.ind-list.is-visible .bi-flap-l{animation:bi-flap-l 1.8s var(--ease) 1.2s 2 alternate}
.ind-list.is-visible .bi-flap-r{animation:bi-flap-r 1.8s var(--ease) 1.2s 2 alternate}
.ind-item:hover .bi-flap-l{animation:bi-flap-l 1.2s var(--ease) infinite alternate}
.ind-item:hover .bi-flap-r{animation:bi-flap-r 1.2s var(--ease) infinite alternate}
@keyframes bi-flap-l{to{transform:rotate(-38deg)}}
@keyframes bi-flap-r{to{transform:rotate(38deg)}}
.ind-icon{width:calc(84px*var(--u));height:calc(84px*var(--u))}
.branch-icon{width:calc(52px*var(--u));height:calc(52px*var(--u))}

/* ===== Version 5 (16.10.2026): Zahnräder, Logo-Start, Kachel-Grafiken, lebendige Reise ===== */
.statement-top{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(calc(24px*var(--u)),4vw,calc(64px*var(--u)))}
.statement-copy{min-width:0}
.statement-art{width:100%;max-width:calc(520px*var(--u));justify-self:end}
.gears{display:block;width:100%;height:auto;overflow:visible}
.gear-orbit{fill:none;stroke:var(--line-strong);stroke-width:1.5;stroke-dasharray:3 8}
.gear{transform-box:view-box}
.gear-body{stroke-width:2.5;stroke-linejoin:round}
.gear-red .gear-body{fill:var(--red-soft);stroke:var(--red)}
.gear-blue .gear-body{fill:var(--blue-soft);stroke:var(--blue)}
.gear-ring,.gear-spoke{fill:none;stroke-width:1.6;opacity:.45}
.gear-red .gear-ring,.gear-red .gear-spoke{stroke:var(--red)}
.gear-blue .gear-ring,.gear-blue .gear-spoke{stroke:var(--blue)}
.gear-red{transform-origin:calc(180px*var(--svgz,1)) calc(200px*var(--svgz,1));animation:spin 24s linear infinite}
.gear-blue{transform-origin:calc(345px*var(--svgz,1)) calc(296px*var(--svgz,1));animation:spin-rev 17.14s linear infinite}
@keyframes spin-rev{to{transform:rotate(-360deg)}}
.gear-hub-red{fill:#c41a2c}
.gear-hub-blue{fill:#0773bd}
.gear-label{fill:#fff;font:700 17px var(--font);text-anchor:middle}
.gear-label-small{font-size:calc(14px*var(--u))}
.gear-dot-red{fill:var(--red)}
.gear-dot-blue{fill:var(--blue)}
.flow-plate{fill:var(--paper);stroke:var(--line-strong);stroke-width:1.5}
.flow-start{color:#1a1a1a;transform-box:fill-box;transform-origin:center;opacity:0;transform:scale(.7);transition:opacity .6s,transform .8s var(--spring)}
html[data-theme="dark"] .flow-start{color:#fff}
.flow-map.is-visible .flow-start{opacity:1;transform:none}
.rip{fill:none;stroke-width:2;opacity:0;transform-box:fill-box;transform-origin:center}
.rip-r1,.rip-r2,.rip-r3{stroke:var(--red)}
.rip-b1,.rip-b2,.rip-b3{stroke:var(--blue)}
.flow-map.is-visible .rip{animation:ripple 4.4s ease-out infinite}
.flow-map.is-visible .rip-r1{animation-delay:5.8s}.flow-map.is-visible .rip-r2{animation-delay:6.3s}.flow-map.is-visible .rip-r3{animation-delay:6.9s}
.flow-map.is-visible .rip-b1{animation-delay:6.6s}.flow-map.is-visible .rip-b2{animation-delay:7.1s}.flow-map.is-visible .rip-b3{animation-delay:7.7s}
@keyframes ripple{0%{opacity:.8;transform:scale(1)}30%{opacity:0;transform:scale(3.4)}100%{opacity:0;transform:scale(3.4)}}
.flow-map.is-visible .flow-pulse.p3{animation-delay:6.4s}
.flow-map.is-visible .flow-pulse-blue.p3{animation-delay:7.2s}

/* Kacheln Zusammenarbeit und Rollen mit eigenen Grafiken */
.bento-item{justify-content:flex-start;gap:calc(18px*var(--u))}
.bento-item:first-child::before{display:none}
.bento-art{display:flex;align-items:center;justify-content:center}
.bento-item:first-child .bento-art{flex:1;min-height:calc(180px*var(--u))}
.bento-item:not(:first-child){display:grid;grid-template-columns:minmax(0,1fr) calc(150px*var(--u));align-items:center;gap:calc(22px*var(--u));min-height:0}
.bento-item:not(:first-child) .bento-art{order:2}
.bento-text{min-width:0}
.bento-svg{display:block;width:100%;height:auto;max-height:calc(240px*var(--u));overflow:visible}
.ba-line{fill:none;stroke:rgb(255 255 255 / 55%);stroke-width:3}
.ba-nodes circle{fill:rgb(255 255 255 / 22%);stroke:#fff;stroke-width:2}
.ba-lens-glass{fill:rgb(255 255 255 / 14%);stroke:#fff;stroke-width:3}
.ba-lens-handle{fill:none;stroke:#fff;stroke-width:7;stroke-linecap:round}
.ba-grid{fill:none;stroke:rgb(255 255 255 / 12%);stroke-width:1}
.ba-draw{fill:none;stroke:#fff;stroke-width:3;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:ba-redraw 7s var(--ease) infinite}
.ba-dim{fill:none;stroke:rgb(255 255 255 / 65%);stroke-width:1.5;stroke-dasharray:1;stroke-dashoffset:1;animation:ba-redraw 7s var(--ease) .8s infinite}
@keyframes ba-redraw{0%{stroke-dashoffset:1;opacity:1}40%,85%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.ba-link{fill:none;stroke:var(--tone);stroke-width:2;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.6s var(--ease) .4s}
.bento.is-visible .ba-link{stroke-dashoffset:0}
.ba-person circle,.ba-person path,.ba-sat rect{fill:var(--tone-soft);stroke:var(--tone);stroke-width:2;transform-box:fill-box}
.ba-person,.ba-sat rect{animation:float 3.6s ease-in-out infinite}
.ba-person.p2,.ba-sat rect:nth-child(2){animation-delay:-1.2s}
.ba-person.p3,.ba-sat rect:nth-child(3){animation-delay:-2.4s}
.ba-sat rect:nth-child(4){animation-delay:-1.8s}
.ba-hub{fill:var(--tone);transform-box:fill-box;transform-origin:center;animation:pulse 2s ease-in-out infinite}
.ba-piece{stroke:var(--tone);stroke-width:2}
.ba-piece-a{fill:var(--tone-soft);animation:piece-a 3.8s var(--ease) infinite}
.ba-piece-b{fill:var(--tone);opacity:.85;animation:piece-b 3.8s var(--ease) infinite}
@keyframes piece-a{0%,12%{transform:translateX(calc(-16px*var(--svgz,1)))}45%,82%{transform:translateX(0)}100%{transform:translateX(calc(-16px*var(--svgz,1)))}}
@keyframes piece-b{0%,12%{transform:translateX(calc(16px*var(--svgz,1)))}45%,82%{transform:translateX(calc(-1px*var(--svgz,1)))}100%{transform:translateX(calc(16px*var(--svgz,1)))}}
.ba-flow{fill:none;stroke:var(--line-strong);stroke-width:2;stroke-dasharray:6 6;animation:beam 1.2s linear infinite}
.ba-milestones circle{fill:var(--paper);stroke:var(--tone);stroke-width:2}
.ba-marker path{fill:var(--tone-soft);stroke:var(--tone);stroke-width:2;stroke-linejoin:round}
.ba-marker{animation:marker 7s var(--ease) infinite}
@keyframes marker{0%,8%{transform:translate(calc(40px*var(--svgz,1)),calc(70px*var(--svgz,1)))}25%,33%{transform:translate(calc(85px*var(--svgz,1)),calc(70px*var(--svgz,1)))}50%,58%{transform:translate(calc(130px*var(--svgz,1)),calc(70px*var(--svgz,1)))}75%,90%{transform:translate(calc(170px*var(--svgz,1)),calc(70px*var(--svgz,1)))}100%{transform:translate(calc(40px*var(--svgz,1)),calc(70px*var(--svgz,1)))}}
.ba-bars{fill:none;stroke:var(--line-strong);stroke-width:6;stroke-linecap:round}

/* Reise: Texte bauen sich nacheinander auf, Läufer auf dem Pfad, Kameraflug */
.js .chapter-copy h3,.js .chapter-lead,.js .benefits-label{opacity:0;transform:translateY(calc(24px*var(--u)));transition:opacity .7s,transform .9s var(--ease)}
.chapter.is-reached .chapter-copy h3{opacity:1;transform:none;transition-delay:.15s}
.chapter.is-reached .chapter-lead{opacity:1;transform:none;transition-delay:.35s}
.chapter.is-reached .benefits-label{opacity:1;transform:none;transition-delay:.55s}
.benefits li:nth-child(1){transition-delay:.7s}.benefits li:nth-child(2){transition-delay:.85s}.benefits li:nth-child(3){transition-delay:1s}
.js .keywords li{opacity:0;transform:translateY(calc(8px*var(--u))) scale(.92);transition:opacity .5s,transform .6s var(--spring)}
.chapter.is-reached .keywords li{opacity:1;transform:none}
.keywords li:nth-child(1){transition-delay:1.15s}.keywords li:nth-child(2){transition-delay:1.22s}.keywords li:nth-child(3){transition-delay:1.29s}.keywords li:nth-child(4){transition-delay:1.36s}.keywords li:nth-child(5){transition-delay:1.43s}
.chapter-runner{position:absolute;left:-70px;top:0;z-index:2;width:calc(12px*var(--u));height:calc(12px*var(--u));border-radius:50%;background:var(--tone);box-shadow:0 0 0 calc(5px*var(--u)) color-mix(in srgb,var(--tone) 22%,transparent);opacity:0;pointer-events:none}
.chapter.is-reached .chapter-runner{animation:runner 1.6s var(--ease) both}
@keyframes runner{0%{top:0;opacity:1}88%{opacity:1}100%{top:100%;opacity:0}}
.chapter .seg.seg-new{stroke-dashoffset:1;transition:stroke-dashoffset 1.4s var(--ease) .6s}
.chapter.is-reached .seg.seg-new{stroke-dashoffset:0}
.chapters{position:relative;isolation:isolate}
.chapters-bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.chapters-bg canvas{position:sticky;top:0;display:block;width:100%;height:100vh}
@media(max-width:1100px){.statement-top{grid-template-columns:1fr}.statement-art{max-width:calc(420px*var(--u));justify-self:start}}
@media(max-width:900px){.chapter-runner{left:-46px}.bento-item:not(:first-child){grid-template-columns:minmax(0,1fr) calc(110px*var(--u))}}
.statement-flow .flow-logo .logo-ink path{fill:currentColor}
.statement-flow .flow-logo .logo-red path{fill:#EE2325}
.nowrap{white-space:nowrap}
.bento-item h3{line-height:1.2}

/* ===== 3D-Kamerafahrt (16.10.2026) ===== */
.flight-canvas,.flight-pin,.flight-rail{display:none}
.chapters.is-3d .chapters-bg{display:none}
.chapters.is-3d .flight-track{position:relative;height:calc(var(--stops,6) * 110svh)}
.chapters.is-3d .flight-stage{position:sticky;top:calc(var(--header) + calc(58px*var(--u)));height:calc(100svh - var(--header) - calc(58px*var(--u)));overflow:hidden;margin-inline:calc(-1 * max(calc(32px*var(--u)),(100vw - var(--page)) / 2))}
.chapters.is-3d .flight-canvas{position:absolute;inset:0;display:block;width:100%;height:100%}
.chapters.is-3d .chapter-list{position:absolute;inset:0;margin:0;padding:0;pointer-events:none}
.chapters.is-3d .chapter-list::before,.chapters.is-3d .chapter::before,.chapters.is-3d .chapter-node,.chapters.is-3d .chapter-visual,.chapters.is-3d .chapter-runner{display:none}
.chapters.is-3d .chapter{position:absolute;top:50%;right:max(calc(32px*var(--u)),calc((100vw - var(--page)) / 2));width:min(calc(440px*var(--u)),40%);padding:calc(28px*var(--u)) calc(30px*var(--u));display:block;border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 90%,transparent);backdrop-filter:blur(calc(10px*var(--u)));-webkit-backdrop-filter:blur(calc(10px*var(--u)));box-shadow:0 calc(30px*var(--u)) calc(60px*var(--u)) -36px rgb(0 0 0 / 30%);opacity:0;visibility:hidden;transform:translateY(calc(-50% + calc(30px*var(--u))));transition:opacity .5s,transform .7s var(--ease),visibility 0s .5s;pointer-events:auto}
.chapters.is-3d .chapter.is-active{opacity:1;visibility:visible;transform:translateY(-50%);transition:opacity .5s,transform .7s var(--ease),visibility 0s}
.chapters.is-3d .chapter:nth-child(even){right:auto;left:max(calc(32px*var(--u)),calc((100vw - var(--page)) / 2))}
.chapters.is-3d .chapter-copy h3{font-size:clamp(calc(24px*var(--u)),2.2vw,calc(32px*var(--u)))}
.chapters.is-3d .chapter-lead{font-size:calc(16px*var(--u))}
.chapters.is-3d .benefits{gap:calc(10px*var(--u))}
.chapters.is-3d .benefit-icon{width:calc(40px*var(--u));height:calc(40px*var(--u))}
.chapters.is-3d .benefits li{grid-template-columns:calc(40px*var(--u)) minmax(0,1fr)}
.flight-pin{position:absolute;top:0;left:0;z-index:3;width:0;height:0;opacity:0;transition:opacity .4s;pointer-events:none}
.chapters.is-3d .flight-pin{display:block}
.flight-pin.is-on{opacity:1}
.flight-pin i{position:absolute;left:-9px;top:-9px;width:calc(18px*var(--u));height:calc(18px*var(--u));border:calc(3px*var(--u)) solid var(--paper);border-radius:50%;background:var(--tone);box-shadow:0 calc(4px*var(--u)) calc(12px*var(--u)) rgb(0 0 0 / 25%)}
.flight-pin i::after{content:"";position:absolute;inset:-9px;border:2px solid var(--tone);border-radius:50%;animation:ping 2s ease-out infinite}
.flight-nav{display:none}
.chapters.is-3d .flight-nav{position:absolute;left:max(calc(32px*var(--u)),calc((100vw - var(--page)) / 2));right:max(calc(32px*var(--u)),calc((100vw - var(--page)) / 2));bottom:calc(14px*var(--u));z-index:2;display:flex;align-items:flex-end;gap:calc(10px*var(--u))}
.flight-rail{flex:1;min-width:0;margin:0;padding:0;display:flex;gap:calc(6px*var(--u));list-style:none}
.flight-rail li{flex:1;min-width:0;border-top:calc(3px*var(--u)) solid var(--line);transition:border-color .5s,flex .5s}
.flight-rail li.is-done{border-color:color-mix(in srgb,var(--tone) 45%,var(--paper))}
.flight-rail li.is-active{border-color:var(--tone)}
.flight-rail button{width:100%;padding:calc(8px*var(--u)) 0 calc(4px*var(--u));overflow:hidden;border:0;background:none;color:var(--body);font:600 calc(12px*var(--u)) var(--font);text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:color .3s}
.flight-rail button:hover,.flight-rail li.is-active button{color:var(--ink)}
.flight-rail li:hover{border-color:var(--tone)}
.flight-step{flex:none;width:calc(40px*var(--u));height:calc(40px*var(--u));display:grid;place-items:center;border:1px solid var(--line-strong);background:color-mix(in srgb,var(--paper) 92%,transparent);color:var(--ink);cursor:pointer;transition:border-color .3s,background .3s,color .3s}
.flight-step:first-child .icon{transform:rotate(180deg)}
.flight-step:hover:not(:disabled){border-color:var(--tone);background:var(--tone);color:#fff}
.flight-step:disabled{opacity:.35;cursor:default}
@media(max-width:900px){
  .chapters.is-3d .chapter,.chapters.is-3d .chapter:nth-child(even){top:auto;bottom:calc(62px*var(--u));left:calc(16px*var(--u));right:calc(16px*var(--u));width:auto;max-height:42%;overflow:auto;padding:calc(18px*var(--u)) calc(20px*var(--u));transform:translateY(calc(30px*var(--u)))}
  .chapters.is-3d .chapter.is-active{transform:none}
  .chapters.is-3d .benefits,.chapters.is-3d .keywords,.chapters.is-3d .benefits-label{display:none}
  .chapters.is-3d .chapter-copy h3{font-size:calc(22px*var(--u))}
  .chapters.is-3d .chapter-lead{margin-top:calc(10px*var(--u));font-size:calc(15px*var(--u))}
  .chapters.is-3d .flight-nav{left:calc(12px*var(--u));right:calc(12px*var(--u));bottom:calc(10px*var(--u));gap:calc(6px*var(--u))}
  .flight-step{width:calc(34px*var(--u));height:calc(34px*var(--u))}
  .flight-rail button{font-size:0;padding-top:calc(10px*var(--u))}
  .flight-rail li.is-active{flex:4}
  .flight-rail li.is-active button{font-size:calc(11px*var(--u))}
}

/* 3D-Hintergrundszenen (Startseite, Einstieg der Unterseiten) */
.pane-3d{display:none}
.has-3d .pane-3d{display:block;width:100%;height:100%;animation:fade-in 1.2s var(--ease) both}
.has-3d svg.pane-scene{display:none}
.pane-red{--scene-line:#d91f32}
.pane-blue{--scene-line:#0773bd}
html[data-theme="dark"] .pane-red{--scene-line:#ff6b77}
html[data-theme="dark"] .pane-blue{--scene-line:#5cb3f0}
.ap-hero{--scene-line:#ffffff}
.ap-hero.has-3d .pane-scene{opacity:.32}
.pane.has-3d .pane-scene{opacity:.85}
.pane.has-3d:hover .pane-scene{opacity:.45;filter:blur(calc(3px*var(--u)))}
@keyframes fade-in{from{opacity:0}}

/* Zeitleiste: laufendes Datenpaket, Nummern leuchten beim Vorbeifahren */

/* ===== 16.10.2026: gleichgewichtige Zahnräder, Branchen-Szenen, Leistungsüberblick ===== */
.gear-red{transform-origin:calc(150px*var(--svgz,1)) calc(215px*var(--svgz,1));animation:spin 24s linear infinite}
.gear-blue{transform-origin:calc(350px*var(--svgz,1)) calc(215px*var(--svgz,1));animation:spin-rev 22.15s linear infinite}
.gear-label,.gear-label-small{font-size:16px}

/* Branchen als Karten mit Szene */
.ind-list{gap:calc(20px*var(--u));border-top:0;grid-template-columns:repeat(auto-fit,minmax(calc(240px*var(--u)),1fr))}
.ind-item{padding:0;overflow:hidden;border:1px solid var(--line);background:var(--paper);transition:transform .5s var(--ease),border-color .4s,box-shadow .5s}
.ind-item::after{display:none}
.ind-item:hover{transform:translateY(-4px);border-color:var(--tone);box-shadow:0 calc(26px*var(--u)) calc(50px*var(--u)) -34px rgb(0 0 0 / 30%)}
.ind-item h3,.ind-item p{padding-inline:calc(24px*var(--u))}
.ind-item h3{margin-top:calc(20px*var(--u))}
.ind-item p{margin-bottom:calc(24px*var(--u))}
.ind-item:not(:has(p)) h3{margin-bottom:calc(24px*var(--u))}
.ind-item:hover h3{transform:none}
.ind-art{display:block;padding:calc(14px*var(--u)) calc(10px*var(--u)) calc(4px*var(--u));background:color-mix(in srgb,var(--tone) 7%,var(--paper));border-bottom:1px solid var(--line)}
.branch-scene{display:block;width:100%;height:auto;overflow:hidden;color:var(--tone)}
.bs-line{fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.bs-fill{fill:var(--paper)}
.bs-soft{fill:none;stroke:currentColor;stroke-width:1.5;opacity:.4}
.bs-flow{stroke-dasharray:4 8;animation:beam 1s linear infinite}
.bs-flow-strong{fill:none;stroke:currentColor;stroke-width:3;stroke-dasharray:6 10;animation:beam .9s linear infinite}
.bs-move{animation:bs-move 7s linear infinite}
.bs-move-2{animation-delay:-2.33s}.bs-move-3{animation-delay:-4.66s}
@keyframes bs-move{from{transform:translateX(calc(-40px*var(--svgz,1)))}to{transform:translateX(calc(360px*var(--svgz,1)))}}
.bs-drops circle,.bs-bubbles circle,.bs-smoke circle,.bs-dot{fill:currentColor}
.bs-drops circle{animation:bs-drop 1.2s ease-in infinite}
.bs-drops circle:nth-child(2){animation-delay:.4s}.bs-drops circle:nth-child(3){animation-delay:.8s}
@keyframes bs-drop{0%{transform:translateY(0);opacity:1}100%{transform:translateY(calc(26px*var(--svgz,1)));opacity:0}}
.bs-steam{animation:bi-steam 2.4s ease-out infinite}
.bs-stream{fill:none;stroke:currentColor;stroke-width:3;stroke-dasharray:5 5;animation:bs-pour .5s linear infinite}
@keyframes bs-pour{to{stroke-dashoffset:-10}}
.bs-level{fill:currentColor;opacity:.25;transform-box:fill-box;transform-origin:bottom;animation:bs-level 2.33s ease-in-out infinite}
@keyframes bs-level{0%{transform:scaleY(.15)}70%,100%{transform:scaleY(1)}}
.bs-spin{transform-box:fill-box;transform-origin:center;animation:spin 6s linear infinite}
.bs-spin-rev{transform-box:fill-box;transform-origin:center;animation:spin-rev 4.2s linear infinite}
.bs-flap{transform-box:fill-box;transform-origin:bottom;animation:bs-flap 2.33s ease-in-out infinite}
@keyframes bs-flap{0%,40%{transform:scaleY(1)}60%,100%{transform:scaleY(-.2)}}
.bs-pulse{transform-box:fill-box;transform-origin:center;animation:pulse 1.8s ease-in-out infinite}
.bs-stir{transform-box:fill-box;transform-origin:center;animation:bs-stir 1.2s ease-in-out infinite alternate}
@keyframes bs-stir{from{transform:scaleX(1)}to{transform:scaleX(-1)}}
.bs-bubbles circle{animation:bi-rise 2.2s ease-in infinite;transform-box:fill-box}
.bs-bubbles circle:nth-child(2){animation-delay:.7s}.bs-bubbles circle:nth-child(3){animation-delay:1.4s}
.bs-smoke circle{animation:bi-smoke 2.6s ease-out infinite;transform-box:fill-box}
.bs-smoke circle:nth-child(2){animation-delay:1.3s}

/* Leistungsüberblick als dunkles Band */
.ap-overview{position:relative;overflow:hidden;padding:clamp(calc(80px*var(--u)),10vw,calc(130px*var(--u))) max(calc(32px*var(--u)),calc((100% - var(--page))/2));background:#0c1d28;color:#eef4f7}
.ap-overview::before{content:"";position:absolute;top:-30%;left:-10%;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--tone) 40%,transparent),transparent 65%);opacity:.6;pointer-events:none}
.ap-overview.ap-red{--tone:#ff6b77;--tone-soft:rgb(255 255 255 / 7%);--tone-dark:#ff8a94}
.ap-overview.ap-blue{--tone:#5cb3f0;--tone-soft:rgb(255 255 255 / 7%);--tone-dark:#7cc4f5}
.ap-overview-inner{position:relative}
.ap-overview h2{max-width:24ch;margin:0;font-size:clamp(calc(30px*var(--u)),3.6vw,calc(48px*var(--u)));font-weight:650;line-height:1.1}
.ap-overview .ap-bento-head p{max-width:62ch;margin:calc(16px*var(--u)) 0 0;color:#c9d6dd;font-size:calc(17px*var(--u))}
.overview-picker{margin:calc(30px*var(--u)) 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:calc(8px*var(--u))}
.overview-picker span{margin-right:calc(6px*var(--u));color:#c9d6dd;font-size:calc(14px*var(--u));font-weight:600}
.overview-picker button{padding:calc(10px*var(--u)) calc(16px*var(--u));border:1px solid rgb(255 255 255 / 30%);background:transparent;color:#fff;font:600 calc(14px*var(--u)) var(--font);cursor:pointer;transition:background .3s,border-color .3s,color .3s}
.overview-picker button:hover{border-color:#fff}
.overview-picker button[aria-pressed="true"]{border-color:var(--tone);background:var(--tone);color:#0c1d28}
.overview-cards{margin-top:calc(40px*var(--u));display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(20px*var(--u))}
.overview-card{position:relative;display:flex;flex-direction:column;border:1px solid rgb(255 255 255 / 14%);background:rgb(255 255 255 / 4%);transition:transform .6s var(--ease),opacity .5s,border-color .4s,background .4s}
.overview-card:hover{transform:translateY(-5px);border-color:var(--tone);background:rgb(255 255 255 / 7%)}
.overview-art{height:calc(210px*var(--u));padding:calc(24px*var(--u));display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgb(255 255 255 / 10%)}
.overview-art .bento-svg{width:100%;height:100%;max-height:none}
.overview-text{padding:calc(26px*var(--u)) calc(28px*var(--u)) calc(30px*var(--u))}
.overview-text h3{margin:0;font-size:calc(24px*var(--u));font-weight:650;line-height:1.2}
.overview-text p{margin:calc(12px*var(--u)) 0 0;color:#c9d6dd;font-size:calc(16px*var(--u));line-height:1.55}
.ap-overview .ap-note{margin-top:calc(24px*var(--u));color:#a9bcc6}
.ap-overview .ba-person circle,.ap-overview .ba-person path,.ap-overview .ba-sat rect,.ap-overview .ba-piece-a{fill:rgb(255 255 255 / 8%)}
.ap-overview .ba-milestones circle{fill:#0c1d28}
.ap-overview .ba-marker path{fill:rgb(255 255 255 / 10%)}
.ap-overview .ba-flow,.ap-overview .ba-bars{stroke:rgb(255 255 255 / 30%)}
.ap-overview .ba-line{stroke:color-mix(in srgb,var(--tone) 60%,transparent)}
.ap-overview .ba-nodes circle,.ap-overview .ba-lens-glass,.ap-overview .ba-lens-handle,.ap-overview .ba-draw{stroke:var(--tone)}
.ap-overview .ba-grid{stroke:rgb(255 255 255 / 8%)}
.ap-overview .ba-dim{stroke:rgb(255 255 255 / 45%)}
.overview-card.is-out{opacity:.35;transform:scale(.97)}
.overview-card.is-in:not(:last-child)::after{content:"";position:absolute;top:calc(105px*var(--u));right:-21px;z-index:1;width:calc(22px*var(--u));height:2px;background:var(--tone)}
.overview-card.is-in{border-color:var(--tone)}
@media(max-width:900px){.overview-cards{grid-template-columns:1fr}.overview-card.is-in:not(:last-child)::after{display:none}.overview-art{height:calc(180px*var(--u))}}
.overview-cards.is-visible .ba-link{stroke-dashoffset:0}
.overview-cards.is-visible .overview-card.is-out{opacity:.32;transform:scale(.97)}
.overview-card.is-in:not(:last-child)::after{display:none}
.overview-card.is-in:has(+ .is-in)::after{display:block}
@media(max-width:900px){.overview-card.is-in:has(+ .is-in)::after{display:none}}

/* ===== Flusskarte 2: zwei Mini-Fahrten, gemeinsames Ergebnis ===== */
.fm-belt{fill:none;stroke:var(--blue);stroke-width:2;opacity:.75}
.fm-roller{stroke:var(--blue);stroke-width:1.5;opacity:.3}
.fm-box{fill:var(--blue-soft);stroke:var(--blue);stroke-width:1.5;opacity:0}
.flow-map.is-visible .fm-box{animation:fm-box 7s linear infinite}
.fm-box-2{animation-delay:-1.4s!important}.fm-box-3{animation-delay:-2.8s!important}.fm-box-4{animation-delay:-4.2s!important}.fm-box-5{animation-delay:-5.6s!important}
@keyframes fm-box{0%{transform:translateX(0);opacity:0}6%,92%{opacity:1}100%{transform:translateX(calc(486px*var(--svgz,1)));opacity:0}}
.fm-machine rect{fill:var(--paper);stroke:var(--blue);stroke-width:2}
.fm-machine path{fill:none;stroke:var(--blue);stroke-width:2;stroke-linejoin:round}
.fm-lamp{fill:var(--blue);stroke:none;transform-box:fill-box;transform-origin:center;animation:pulse 1.4s ease-in-out infinite}
.fm-machine .fm-beam{stroke-dasharray:3 4;animation:beam .8s linear infinite}
.fm-arm{transform-box:view-box;transform-origin:calc(934px*var(--svgz,1)) calc(318px*var(--svgz,1));animation:fm-arm 1.8s ease-in-out infinite alternate}
@keyframes fm-arm{from{transform:rotate(-20deg)}to{transform:rotate(14deg)}}
.fm-win{fill:var(--paper);stroke:var(--red);stroke-width:2;transition:fill .3s}
.fm-win-bar{fill:none;stroke:var(--red);stroke-width:1.5}
.fm-win-inner *{fill:none;stroke:var(--red);stroke-width:1.5}
.flow-map.is-visible .fm-win{animation:fm-flash 4.4s linear infinite}
.flow-map.is-visible .fm-window:nth-child(1) .fm-win{animation-delay:4.98s}
.flow-map.is-visible .fm-window:nth-child(2) .fm-win{animation-delay:5.42s}
.flow-map.is-visible .fm-window:nth-child(3) .fm-win{animation-delay:5.86s}
@keyframes fm-flash{0%,12%{fill:var(--red-soft)}20%,100%{fill:var(--paper)}}
.flow-stops{opacity:0;transition:opacity .8s 1.6s}
.flow-map.is-visible .flow-stops{opacity:1}
.fm-labels text{fill:var(--body);font:600 15px var(--font);text-anchor:middle;opacity:0;transition:opacity .6s 2s}
.flow-map.is-visible .fm-labels text{opacity:1}
.fm-branch text{font:700 17px var(--font);opacity:0;transition:opacity .6s 1.4s}
.fm-branch-red text{fill:var(--red-dark)}
.fm-branch-blue text{fill:var(--blue-dark)}
.flow-map.is-visible .fm-branch text{opacity:1}
.fm-branch:hover text,.fm-branch:focus-visible text{text-decoration:underline}
.flow-start{transform:scale(.7)}
.fm-merge circle{fill:var(--paper);stroke:var(--ink);stroke-width:3;transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform .6s var(--spring) 2.2s}
.flow-map.is-visible .fm-merge circle{transform:scale(1)}
.fm-goal-ring{fill:none;stroke:var(--ink);stroke-width:1.5;stroke-dasharray:4 6;transform-box:fill-box;transform-origin:center;animation:spin 14s linear infinite}
.fm-goal-core{fill:var(--ink);transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform .7s var(--spring) 2.5s}
.flow-map.is-visible .fm-goal-core{transform:scale(1);animation:fm-goal 4.4s ease-out 7s infinite}
@keyframes fm-goal{0%,10%{transform:scale(1.25)}25%,100%{transform:scale(1)}}
.fm-goal-check{fill:none;stroke:var(--paper);stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .8s var(--ease) 3s}
.flow-map.is-visible .fm-goal-check{stroke-dashoffset:0}
.fm-goal-label{fill:var(--ink);font:700 16px var(--font);text-anchor:middle}
.flow-result{margin-top:calc(28px*var(--u));padding:calc(24px*var(--u)) calc(28px*var(--u));display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:calc(20px*var(--u));border:1px solid var(--line);background:linear-gradient(90deg,var(--red-soft),var(--blue-soft))}
.flow-result p{max-width:62ch;margin:0;font-size:calc(19px*var(--u));font-weight:600;line-height:1.45}
@media(max-width:900px){
  .statement-flow text{font-size:15px}
  .fm-labels text{font-size:26px}
  /* Bereichstitel rechtsbündig vor der ersten Station (x 630), damit er „Strategie“/„Verpacken“ nicht überdeckt */
  .fm-branch text{font-size:26px;text-anchor:end;transform:translateX(calc(160px*var(--svgz,1)))}
  .fm-goal-label{font-size:28px}
}
@media(max-width:600px){.fm-labels{display:none}}

/* Wegweiser 3: Rückfragen, Zusammenfassung, Ergebnis „beide Bereiche“ */
.guide-questions{margin-top:calc(8px*var(--u));display:grid;gap:calc(14px*var(--u))}
.guide-q{min-width:0;margin:0;padding:0;border:0}
.guide-q legend{margin-bottom:calc(8px*var(--u));padding:0;font-size:calc(15px*var(--u));font-weight:650}
.guide-q-options{display:flex;flex-wrap:wrap;gap:calc(8px*var(--u))}
.qchip{position:relative}
.qchip input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}
.qchip span{display:inline-block;padding:calc(8px*var(--u)) calc(13px*var(--u));border:1px solid var(--line-strong);color:var(--ink);font-size:calc(14px*var(--u));font-weight:500;transition:background .3s,border-color .3s,color .3s}
.qchip:hover span{border-color:var(--ink)}
.qchip input:checked+span{border-color:var(--ink);background:var(--ink);color:var(--paper)}
.qchip input:focus-visible+span{outline:2px solid var(--ink);outline-offset:2px}
.guide-tile[aria-pressed="true"]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.guide-tile[aria-pressed="true"] .guide-tile-icon{background:var(--ink);color:var(--paper)}
.guide-summary{margin:calc(4px*var(--u)) 0 0;padding:calc(14px*var(--u)) calc(16px*var(--u));display:grid;grid-template-columns:auto minmax(0,1fr);gap:calc(6px*var(--u)) calc(14px*var(--u));border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 70%,transparent);font-size:calc(14px*var(--u))}
.guide-summary dt{color:var(--body);font-weight:600}
.guide-summary dd{margin:0;color:var(--ink);font-weight:600}
.guide-result[data-state="mix"] .guide-person{transform:scale(1.12);animation:none;filter:none;opacity:1}
.guide-result[data-state="mix"] .guide-person-red{outline-color:var(--red)}
.guide-result[data-state="mix"] .guide-person-blue{outline-color:var(--blue)}
.guide-result[data-state="mix"] .guide-actions .button{background:linear-gradient(90deg,var(--red),var(--blue));color:#fff}
.guide-result[data-state="mix"] .guide-chips li{background:linear-gradient(90deg,var(--red-soft),var(--blue-soft))}
.guide-result[data-state="mix"] .guide-people::after{content:"";position:absolute}
html[data-theme="dark"] .guide-result[data-state="mix"] .guide-actions .button{color:var(--paper)}
@media(max-width:700px){
  .flow-map{display:block;overflow-x:auto;overscroll-behavior-x:contain;margin-inline:-20px;padding-inline:calc(20px*var(--u));scrollbar-width:thin}
  .statement-flow{min-width:calc(900px*var(--u))}
  .fm-labels{display:block}
  .fm-labels text{font-size:22px}
  .fm-branch text{font-size:24px;text-anchor:end;transform:translateX(calc(160px*var(--svgz,1)))}
  .fm-goal-label{font-size:22px}
}

/* Branchen leicht farblich unterschieden (Farbe passend zur Branche, dezent) */
.branch-food{--branch:#c8571f}
.branch-drinks{--branch:#a87a00}
.branch-nonfood{--branch:#4f6d8a}
.branch-machinery{--branch:#4f6d8a}
.branch-utility{--branch:#127f71}
.branch-chemistry{--branch:#7450c0}
.branch-industry{--branch:#b5541c}
html[data-theme="dark"] .branch-food{--branch:#f0905e}
html[data-theme="dark"] .branch-drinks{--branch:#e0b84a}
html[data-theme="dark"] .branch-nonfood,html[data-theme="dark"] .branch-machinery{--branch:#9db7d0}
html[data-theme="dark"] .branch-utility{--branch:#4fc9b7}
html[data-theme="dark"] .branch-chemistry{--branch:#b49cf0}
html[data-theme="dark"] .branch-industry{--branch:#ec9a62}
.ind-item[class*="branch-"] .ind-art{background:color-mix(in srgb,var(--branch) 9%,var(--paper))}
.ind-item[class*="branch-"] .branch-scene{color:var(--branch)}
.ind-item[class*="branch-"]:hover{border-color:var(--branch)}
.ind-item[class*="branch-"] h3::after{content:"";display:block;width:calc(36px*var(--u));height:calc(3px*var(--u));margin-top:calc(10px*var(--u));background:var(--branch);transition:width .5s var(--ease)}
.ind-item[class*="branch-"]:hover h3::after{width:calc(64px*var(--u))}
.ind-item[class*="branch-"]:hover h3{color:var(--ink)}

/* VLK-Logo im Partner-Kasten der Unterseiten */
.ap-partner .vlk-mark{width:calc(84px*var(--u));height:calc(52px*var(--u));color:#fff}

/* Wegweiser als Reiter */
.guide-tabs{margin-top:calc(26px*var(--u));display:flex;flex-wrap:wrap;gap:calc(8px*var(--u))}
.guide-tab{padding:calc(10px*var(--u)) calc(16px*var(--u));display:inline-flex;align-items:center;gap:calc(8px*var(--u));border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font:600 calc(15px*var(--u)) var(--font);cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.guide-tab .icon{width:calc(18px*var(--u));height:calc(18px*var(--u))}
.guide-tab:hover{border-color:var(--ink)}
.guide-tab[aria-selected="true"]{border-color:var(--ink);background:var(--ink);color:var(--paper)}
.guide-panel{display:grid;gap:calc(12px*var(--u));animation:step-in .45s var(--ease)}
.guide-panel[hidden]{display:none}
.guide-next{justify-self:start;margin-top:calc(6px*var(--u));padding:0 0 calc(4px*var(--u));display:inline-flex;align-items:center;gap:calc(8px*var(--u));border:0;border-bottom:2px solid var(--ink);background:none;color:var(--ink);font:700 calc(15px*var(--u)) var(--font);cursor:pointer}
.guide-next .icon{transition:transform .35s var(--ease)}
.guide-next:hover .icon{transform:translateX(calc(4px*var(--u)))}
.guide-grid[data-view="3"]{grid-template-columns:1fr}
.guide-grid[data-view="3"] .guide-result{display:none}
.guide-direct{grid-template-columns:1fr 1fr;gap:calc(20px*var(--u))}
.direct-card{display:grid;grid-template-columns:calc(96px*var(--u)) minmax(0,1fr);gap:calc(20px*var(--u));align-items:start}
.direct-card .contact-card-pic{width:calc(96px*var(--u));height:calc(96px*var(--u))}
.direct-card h3{margin:0;font-size:calc(22px*var(--u))}
.direct-card p{margin:calc(4px*var(--u)) 0 calc(14px*var(--u));color:var(--body)}
.direct-card .button{margin-top:calc(14px*var(--u))}
.direct-card-blue .contact-card-pic{background:var(--blue-soft)}
.direct-card-red{--tone:var(--red);--tone-soft:var(--red-soft);--tone-dark:var(--red-dark)}
.direct-card-blue{--tone:var(--blue);--tone-soft:var(--blue-soft);--tone-dark:var(--blue-dark)}
@media(max-width:900px){.guide-direct{grid-template-columns:1fr}}
@media(max-width:560px){.direct-card{grid-template-columns:1fr}}

/* Abschluss der Flusskarte */
.flow-result{position:relative;overflow:hidden;margin-top:calc(32px*var(--u));padding:calc(34px*var(--u)) calc(36px*var(--u));display:grid;grid-template-columns:calc(170px*var(--u)) minmax(0,1fr) auto;align-items:center;gap:calc(28px*var(--u));border:0;background:#0c1d28;color:#eef4f7}
.flow-result::before,.flow-result::after{content:"";position:absolute;width:calc(420px*var(--u));aspect-ratio:1;border-radius:50%;filter:blur(calc(60px*var(--u)));opacity:.35;pointer-events:none}
.flow-result::before{left:-160px;top:-200px;background:#c41a2c}
.flow-result::after{right:-160px;bottom:-220px;background:#0773bd}
.fr-art,.fr-copy,.flow-result .button{position:relative;z-index:1}
.fr-art{width:calc(170px*var(--u));height:auto;overflow:visible}
.fr-red,.fr-blue{fill:none;stroke-width:4;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.4s var(--ease) .3s}
.fr-red{stroke:#ff6b77}
.fr-blue{stroke:#5cb3f0;transition-delay:.45s}
.fr-goal{fill:#fff;transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform .7s var(--spring) 1.5s}
.fr-check{fill:none;stroke:#0c1d28;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .7s var(--ease) 1.9s}
.flow-result.is-visible .fr-red,.flow-result.is-visible .fr-blue,.flow-result.is-visible .fr-check{stroke-dashoffset:0}
.flow-result.is-visible .fr-goal{transform:scale(1);animation:fm-goal 4s ease-out 2.6s infinite}
.fr-copy h3{margin:0;font-size:clamp(calc(22px*var(--u)),2.2vw,calc(30px*var(--u)));font-weight:650;line-height:1.15}
.fr-copy p{max-width:60ch;margin:calc(10px*var(--u)) 0 0;color:#c9d6dd;font-size:calc(17px*var(--u));line-height:1.55}
.flow-result .button-white{color:#0c1d28}
.flow-result .button-white:hover{background:var(--red);color:#fff}
@media(max-width:900px){.flow-result{grid-template-columns:1fr;padding:calc(28px*var(--u)) calc(24px*var(--u))}.fr-art{width:calc(140px*var(--u))}}

/* Inhalte fliegen deutlicher ein */
.js [data-reveal-up]{transform:translateY(calc(40px*var(--u)));filter:blur(calc(4px*var(--u)));transition:opacity .9s var(--ease),transform 1.1s var(--ease),filter .9s var(--ease)}
.js [data-reveal-up].is-visible{filter:none}
.js [data-reveal-group]>*{transform:translateY(calc(40px*var(--u)));filter:blur(calc(3px*var(--u)));transition:opacity .9s var(--ease),transform 1.1s var(--ease),filter .9s var(--ease)}
.js [data-reveal-group].is-visible>*{filter:none}
.fr-copy p{font-weight:400}
.direct-card .contact-card-pic{grid-area:auto}.direct-card>div{min-width:0}

/* V11: Fußbereich hell (dunkel nur im dunklen Modus) */
:root{--foot-bg:#f2f6f8}
html[data-theme="dark"]{--foot-bg:#0b1a24}
.site-footer{position:relative;background:var(--foot-bg);color:var(--body);border-top:1px solid var(--line)}
.site-footer::before{content:"";position:absolute;top:-1px;left:0;right:0;height:calc(3px*var(--u));background:linear-gradient(90deg,var(--red) 0 50%,var(--blue) 50% 100%)}
.footer-grid{border-bottom-color:var(--line)}
.footer-logo{color:var(--ink)}
.footer-col h2,.partner-label{color:var(--body)}
.footer-col a,.footer-bottom a{color:var(--ink)}
.footer-col a.tone-red-link:hover{text-decoration-color:var(--red)!important}
.footer-col a.tone-blue-link:hover{text-decoration-color:var(--blue)!important}
.partner-badge{border-color:var(--line);color:var(--ink);background:var(--paper)}
.partner-badge:hover{border-color:var(--ink);background:var(--paper)}
.partner-name{color:var(--body)}
.footer-bottom{color:var(--body)}
.footer-bottom nav{flex-wrap:wrap}
.footer-a11y{padding:0;border:0;background:none;color:var(--ink);font:inherit;cursor:pointer}
.footer-a11y:hover{text-decoration:underline;text-underline-offset:calc(3px*var(--u))}

/* V11: Mittelkreis als Messinstrument mit Zahnrad-Nabe und Zeiger */
.seam-badge .seam-hub{position:absolute;inset:0;width:100%;height:100%;overflow:visible;animation:none}
.hub-gear{fill:var(--paper);stroke:var(--line-strong);stroke-width:1.2;stroke-linejoin:round;transform-box:view-box;transform-origin:calc(100px*var(--svgz,1)) calc(100px*var(--svgz,1));animation:spin 60s linear infinite;filter:drop-shadow(0 6px 10px rgb(0 0 0 / 14%))}
.hub-arc{fill:none;stroke-width:2.5;transform-box:view-box;transform-origin:calc(100px*var(--svgz,1)) calc(100px*var(--svgz,1))}
.hub-arc-red{stroke:var(--red);stroke-dasharray:var(--share) calc(100 - var(--share));transform:rotate(calc(180deg - var(--share) * 1.8deg))}
.hub-arc-blue{stroke:var(--blue);stroke-dasharray:calc(100 - var(--share)) var(--share);transform:rotate(calc((var(--share) - 100) * 1.8deg))}
.hub-small,.hub-year{fill:var(--ink);text-anchor:middle;font-family:var(--font);font-weight:700}
.hub-small{fill:var(--body);font-size:7.5px;letter-spacing:.24em}
.hub-year{font-size:19px;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.seam-needle{transform-box:view-box;transform-origin:calc(100px*var(--svgz,1)) calc(100px*var(--svgz,1));transition:transform 1.1s var(--spring,cubic-bezier(.34,1.56,.64,1));animation:needle-idle 5.5s ease-in-out infinite alternate}
.needle-line{stroke:var(--ink);stroke-width:1.6;stroke-linecap:round}
.needle-tip{fill:var(--ink);transition:fill .4s}
.split-hero:has(.pane-red:is(:hover,:focus-visible)) .seam-needle{transform:rotate(-62deg);animation:none}
.split-hero:has(.pane-blue:is(:hover,:focus-visible)) .seam-needle{transform:rotate(62deg);animation:none}
.split-hero:has(.pane-red:is(:hover,:focus-visible)) .needle-tip{fill:var(--red)}
.split-hero:has(.pane-blue:is(:hover,:focus-visible)) .needle-tip{fill:var(--blue)}
.split-hero:has(.pane-red:is(:hover,:focus-visible)) .needle-line{stroke:var(--red)}
.split-hero:has(.pane-blue:is(:hover,:focus-visible)) .needle-line{stroke:var(--blue)}
.split-hero:has(.pane-red:focus-visible) .seam-badge{--share:70}
.split-hero:has(.pane-blue:focus-visible) .seam-badge{--share:30}
.seam-ping{animation:none}
.split-hero:has(.pane:hover) .seam-ping{animation:ping 1.8s ease-out infinite}
@keyframes needle-idle{from{rotate:-7deg}to{rotate:7deg}}

/* V11: Barrierefreiheit-Panel (Funktionsumfang wie VLK-Website) */
.access-panel{position:absolute;top:calc(100% + calc(8px*var(--u)));right:max(calc(16px*var(--u)),calc((100% - var(--page))/2));z-index:40;width:min(calc(400px*var(--u)),calc(100vw - calc(24px*var(--u))));max-height:calc(100dvh - var(--header) - calc(24px*var(--u)));display:flex;flex-direction:column;border:1px solid var(--line);background:var(--paper);color:var(--ink);box-shadow:0 calc(30px*var(--u)) calc(60px*var(--u)) -24px rgb(0 0 0 / 35%)}
.access-panel[hidden]{display:none}
.js .access-panel:not([hidden]){animation:panel-in .32s var(--ease)}
@keyframes panel-in{from{opacity:0;transform:translateY(calc(-8px*var(--svgz,1)))}}
.access-head{padding:calc(14px*var(--u)) calc(14px*var(--u)) calc(14px*var(--u)) calc(18px*var(--u));display:flex;align-items:center;gap:calc(10px*var(--u));border-bottom:1px solid var(--line)}
.access-head h2{flex:1;margin:0;font-size:calc(18px*var(--u));font-weight:700}
.access-head-icon{width:calc(34px*var(--u));height:calc(34px*var(--u));display:grid;place-items:center;border-radius:50%;background:var(--ink);color:var(--paper)}
.access-head-icon svg{width:calc(20px*var(--u));height:calc(20px*var(--u))}
.access-head-icon circle{fill:currentColor}
.access-panel svg path,.access-panel svg rect,.access-panel svg circle:not(.access-head-icon circle){fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.access-panel svg .fill{fill:currentColor;stroke:none}
.access-x{width:calc(44px*var(--u));height:calc(44px*var(--u));display:grid;place-items:center;border:1px solid transparent;background:none;color:var(--ink);cursor:pointer}
.access-x:hover{border-color:var(--line)}
.access-x svg{width:calc(20px*var(--u));height:calc(20px*var(--u))}
.access-body{padding:calc(6px*var(--u)) calc(18px*var(--u)) calc(4px*var(--u));overflow:auto;overscroll-behavior:contain}
.access-group h3{margin:calc(14px*var(--u)) 0 calc(8px*var(--u));color:var(--body);font-size:calc(12px*var(--u));font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(8px*var(--u))}
.access-tile{position:relative;min-height:calc(84px*var(--u));padding:calc(12px*var(--u));display:grid;align-content:space-between;justify-items:start;gap:calc(10px*var(--u));border:1px solid var(--line);background:var(--paper);color:var(--ink);font:600 calc(14px*var(--u))/1.25 var(--font);text-align:left;cursor:pointer;transition:border-color .2s,background .2s}
.access-tile:hover{border-color:var(--line-strong)}
.access-tile svg{width:calc(22px*var(--u));height:calc(22px*var(--u))}
.access-tile[aria-pressed="true"],.access-tile[aria-expanded="true"]{border-color:var(--ink);background:color-mix(in srgb,var(--ink) 7%,var(--paper))}
.access-switch{position:absolute;top:calc(12px*var(--u));right:calc(12px*var(--u));width:calc(30px*var(--u));height:calc(18px*var(--u));border-radius:calc(9px*var(--u));background:var(--line-strong);transition:background .2s}
.access-switch::after{content:"";position:absolute;top:calc(3px*var(--u));left:calc(3px*var(--u));width:calc(12px*var(--u));height:calc(12px*var(--u));border-radius:50%;background:var(--paper);transition:transform .25s var(--ease)}
.access-tile[aria-pressed="true"] .access-switch,.access-tile[aria-expanded="true"] .access-switch{background:var(--ink)}
.access-tile[aria-pressed="true"] .access-switch::after,.access-tile[aria-expanded="true"] .access-switch::after{transform:translateX(calc(12px*var(--u)))}
.access-level{position:absolute;top:calc(14px*var(--u));right:calc(12px*var(--u));display:flex;gap:calc(4px*var(--u))}
.access-level i{width:calc(14px*var(--u));height:calc(6px*var(--u));border-radius:calc(3px*var(--u));background:var(--line-strong)}
.access-level i.on{background:var(--ink)}
.access-struct{margin-top:calc(14px*var(--u));padding:calc(12px*var(--u)) 0;border-top:1px solid var(--line)}
.access-struct h3{margin:calc(6px*var(--u)) 0 calc(8px*var(--u))}
.access-struct ul{margin:0 0 calc(10px*var(--u));padding:0;list-style:none;display:grid;gap:2px}
.access-struct button{width:100%;min-height:calc(36px*var(--u));padding:calc(6px*var(--u)) calc(8px*var(--u));display:flex;gap:calc(10px*var(--u));align-items:baseline;border:0;background:none;color:var(--ink);font:inherit;font-size:calc(14px*var(--u));text-align:left;cursor:pointer}
.access-struct button:hover{background:color-mix(in srgb,var(--ink) 6%,var(--paper))}
.access-struct b{flex:none;min-width:calc(24px*var(--u));color:var(--body);font-size:calc(11px*var(--u))}
.access-struct .l3 button{padding-left:calc(26px*var(--u))}
.access-foot{margin:0;padding:calc(12px*var(--u)) calc(18px*var(--u)) calc(16px*var(--u));border-top:1px solid var(--line);color:var(--body);font-size:calc(13px*var(--u));line-height:1.5}
.access-foot a{color:var(--ink);font-weight:600}

/* Wirkung der Schalter */
html.a11y-lh :is(main,.site-footer) :is(p,li,dd,dt,label,legend,figcaption,blockquote){line-height:1.9!important}
html.a11y-font :is(body,button,input,textarea,select){font-family:Verdana,Tahoma,"Segoe UI",Arial,sans-serif!important;letter-spacing:.01em!important;word-spacing:.06em}
html.a11y-font :is(h1,h2,h3){letter-spacing:0!important}
html.a11y-align :is(main,.site-footer) *{text-align:left!important}
html.a11y-gray :is(main,.header-inner,.site-footer){filter:grayscale(1)}
html.a11y-noimg :is(main,.site-footer) :is(img,canvas,.pane-scene,.ap-hero-bg,.chapters-bg,.ind-art,.overview-art,.statement-art,.vlk-mark){visibility:hidden!important}
html.a11y-links :is(main,.site-footer) a:not(.button){text-decoration:underline!important;text-underline-offset:calc(3px*var(--u));text-decoration-thickness:2px}
html.a11y-links :is(main,.site-footer) a{outline:2px dashed #b05a00;outline-offset:calc(3px*var(--u))}
html[data-theme="dark"].a11y-links :is(main,.site-footer) a{outline-color:#ffd400}
html.a11y-focus :focus{outline:calc(3px*var(--u)) solid #ffd400!important;outline-offset:calc(3px*var(--u))!important;box-shadow:0 0 0 calc(7px*var(--u)) rgb(0 0 0 / 75%)!important}
.read-mask{position:fixed;inset:0;z-index:30;pointer-events:none;display:none}
html.a11y-mask .read-mask{display:block}
.read-mask i{position:absolute;left:0;right:0;background:rgb(0 0 0 / 55%)}
.read-mask-top{top:0;height:40vh}
.read-mask-bot{top:calc(40vh + calc(110px*var(--u)));bottom:0}
@media (max-width:640px){.access-panel{top:100%;left:0;right:0;width:auto;max-height:calc(100dvh - var(--header) - calc(8px*var(--u)));border-width:1px 0}.access-tile{min-height:calc(76px*var(--u))}}

/* V12: Zeitstrahl entwickelt sich Schritt für Schritt (Skizze auf der Linie) */
.timeline{margin-top:calc(104px*var(--u))}
.timeline li:nth-child(1){--at:.2s}
.timeline li:nth-child(2){--at:1.3s}
.timeline li:nth-child(3){--at:2.4s}
.timeline li:nth-child(4){--at:3.5s}
.timeline::after{transition:transform 4.4s linear .2s}
.timeline.is-visible .tl-num{animation:tl-on .5s var(--spring,cubic-bezier(.34,1.56,.64,1)) var(--at) forwards}
@keyframes tl-on{50%{transform:scale(1.18)}to{background:var(--tone);color:#fff;transform:none}}
html[data-theme="dark"] .timeline.is-visible .tl-num{animation-name:tl-on-dark}
@keyframes tl-on-dark{50%{transform:scale(1.18)}to{background:var(--tone);color:var(--paper);transform:none}}
.tl-seg{position:absolute;left:calc(54px*var(--u));bottom:calc(100% - calc(23px*var(--u)));width:calc(100% + calc(28px*var(--u)) - calc(62px*var(--u)));height:calc(70px*var(--u));overflow:visible;opacity:0;pointer-events:none}
.timeline li:last-child .tl-seg{width:calc(100% - calc(62px*var(--u)))}
.timeline.is-visible .tl-seg{animation:tls-show .4s ease var(--at) forwards}
@keyframes tls-show{to{opacity:1}}
.tl-seg *{fill:none;stroke:var(--tone);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.tl-seg .fill{fill:var(--paper)}
.tl-seg .solid{fill:var(--tone);stroke:none}
.tl-seg .soft{opacity:.45}
.tl-seg .tls-roller{stroke-width:1.2;opacity:.6}
.tl-seg .draw{stroke-dasharray:1 1;stroke-dashoffset:1}
.timeline.is-visible .tl-seg .draw{animation:tls-draw .9s var(--ease) calc(var(--at) + .15s) forwards}
.timeline.is-visible .tl-seg .draw.tls-d2{animation-delay:calc(var(--at) + .4s)}
.timeline.is-visible .tl-seg .draw.tls-d3{animation-delay:calc(var(--at) + .65s)}
.timeline.is-visible .tl-seg .draw.tls-d4{animation-delay:calc(var(--at) + .9s)}
@keyframes tls-draw{to{stroke-dashoffset:0}}
/* Laufende Bewegung nach dem Zeichnen */
.tl-seg .tls-blink{animation:tls-blink 1.6s ease-in-out infinite}
@keyframes tls-blink{50%{opacity:.2}}
.tl-seg .tls-march{stroke-dasharray:5 5;animation:tls-march 1s linear infinite}
@keyframes tls-march{to{stroke-dashoffset:-10}}
.tl-seg .tls-gear{transform-box:fill-box;transform-origin:center;animation:spin 6s linear infinite}
.timeline.is-visible .tl-seg .tls-drop{animation:tls-drop .9s var(--spring,cubic-bezier(.34,1.56,.64,1)) calc(var(--at) + .5s) both}
@keyframes tls-drop{from{translate:0 calc(-22px*var(--svgz,1));opacity:0}}
.tl-seg .tls-arm{transform-box:fill-box;transform-origin:20% 100%;animation:tls-arm 2.6s ease-in-out infinite alternate}
@keyframes tls-arm{from{rotate:-6deg}to{rotate:5deg}}
.tl-seg .tls-run{animation:tls-run 2.6s linear infinite}
@keyframes tls-run{to{translate:calc(70px*var(--svgz,1)) 0}}
.tl-seg .tls-float{animation:tls-float 2.8s ease-in-out infinite alternate}
.tl-seg .tls-f2{animation-delay:-.9s}
.tl-seg .tls-f3{animation-delay:-1.7s}
@keyframes tls-float{to{translate:0 calc(-4px*var(--svgz,1))}}
.timeline.is-visible .tl-seg .tls-float.draw{animation:tls-draw .9s var(--ease) calc(var(--at) + .15s) forwards,tls-float 2.8s ease-in-out calc(var(--at) + 1s) infinite alternate}
.tl-seg .tls-sort{opacity:0}
.timeline.is-visible .tl-seg .tls-sort{animation:tls-sort .7s var(--ease) both}
.timeline.is-visible .tl-seg .tls-s1{animation-delay:calc(var(--at) + .3s)}
.timeline.is-visible .tl-seg .tls-s2{animation-delay:calc(var(--at) + .45s)}
.timeline.is-visible .tl-seg .tls-s3{animation-delay:calc(var(--at) + .6s)}
.timeline.is-visible .tl-seg .tls-s4{animation-delay:calc(var(--at) + .75s)}
.timeline.is-visible .tl-seg .tls-s5{animation-delay:calc(var(--at) + .9s)}
.timeline.is-visible .tl-seg .tls-s6{animation-delay:calc(var(--at) + 1.05s)}
@keyframes tls-sort{from{translate:calc(-50px*var(--svgz,1)) 0;opacity:0}to{opacity:1}}
.tl-seg .tls-progress{transform-box:fill-box;transform-origin:left;scale:0 1}
.timeline.is-visible .tl-seg .tls-progress{animation:tls-progress 5s var(--ease) calc(var(--at) + .4s) infinite}
@keyframes tls-progress{0%{scale:0 1}70%,100%{scale:1 1}}
.tl-seg .tls-ms{transform-box:fill-box;transform-origin:center;scale:0}
.timeline.is-visible .tl-seg .tls-ms{animation:tls-ms 5s var(--ease) infinite}
.timeline.is-visible .tl-seg .tls-m1{animation-delay:calc(var(--at) + .4s)}
.timeline.is-visible .tl-seg .tls-m2{animation-delay:calc(var(--at) + .4s + 1.1s)}
.timeline.is-visible .tl-seg .tls-m3{animation-delay:calc(var(--at) + .4s + 2.2s)}
@keyframes tls-ms{0%{scale:0}8%,90%{scale:1}100%{scale:0}}
@media(max-width:820px){.timeline{margin-top:calc(52px*var(--u))}.timeline li{display:flex;flex-direction:column}.tl-seg{order:3;position:static;width:100%;max-width:calc(320px*var(--u));height:auto;aspect-ratio:300/70;margin-top:calc(14px*var(--u))}.timeline li:last-child .tl-seg{width:100%}}

/* V12: Partner-Lösungen als Karten mit Mini-Animation, Nutzen und Schlagworten */
.ap-partner-list{align-items:stretch}
.ap-partner-list .pa-card{padding:calc(22px*var(--u));display:grid;align-content:start;gap:calc(10px*var(--u));font-weight:400}
.ap-partner-red{--pa:#ff6b77}
.ap-partner-blue{--pa:#5cb3f0}
.pa-art{width:calc(120px*var(--u));height:calc(72px*var(--u));margin-bottom:calc(4px*var(--u));overflow:visible}
.pa-art *{fill:none;stroke:var(--pa);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.pa-art .pa-frame,.pa-art .pa-bubble,.pa-art .pa-box{fill:rgb(255 255 255 / 5%)}
.pa-art .pa-soft{opacity:.4}
.pa-art .pa-text{fill:#fff;stroke:none;font:700 10px var(--font);text-anchor:middle;letter-spacing:.06em}
.pa-card h3{margin:0;color:#fff;font-size:calc(16px*var(--u));font-weight:650;line-height:1.3}
.pa-card>p{margin:0;color:#c9d6dd;font-size:calc(14px*var(--u));line-height:1.5}
.ap-partner-list .pa-tags{margin:calc(4px*var(--u)) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:calc(6px*var(--u));list-style:none}
.ap-partner-list .pa-tags li{padding:calc(4px*var(--u)) calc(9px*var(--u));border:1px solid color-mix(in srgb,var(--pa) 55%,transparent);background:color-mix(in srgb,var(--pa) 12%,transparent);box-shadow:none;color:#fff;font-size:calc(12px*var(--u));font-weight:600;line-height:1.3;transform:none}
.ap-partner-list .pa-tags li:hover{transform:none;background:color-mix(in srgb,var(--pa) 12%,transparent)}
/* Service-Agent */
.pa-q{animation:pa-in 4.5s ease infinite}
.pa-typing circle{fill:var(--pa);stroke:none;animation:pa-dot 4.5s ease infinite}
.pa-typing circle:nth-child(2){animation-delay:.15s}
.pa-typing circle:nth-child(3){animation-delay:.3s}
.pa-a,.pa-check{animation:pa-in-late 4.5s ease infinite}
.pa-check{stroke-dasharray:none}
@keyframes pa-in{0%{opacity:0;translate:calc(-6px*var(--svgz,1)) 0}10%,88%{opacity:1;translate:0 0}100%{opacity:0}}
@keyframes pa-dot{0%,14%{opacity:0}20%,24%{opacity:1;translate:0 calc(-2px*var(--svgz,1))}30%,34%{opacity:1;translate:0 0}40%,100%{opacity:0}}
@keyframes pa-in-late{0%,42%{opacity:0;translate:calc(6px*var(--svgz,1)) 0}52%,88%{opacity:1;translate:0 0}100%{opacity:0}}
/* Avatar-Video */
.pa-mouth{fill:var(--pa);stroke:none;transform-box:fill-box;transform-origin:center;animation:pa-talk .5s ease-in-out infinite alternate}
@keyframes pa-talk{to{scale:1 2.6}}
.pa-bar{stroke-width:2.4;stroke-dasharray:96 96;stroke-dashoffset:96;animation:pa-bar 6s linear infinite}
@keyframes pa-bar{to{stroke-dashoffset:0}}
.pa-play{fill:var(--pa);stroke:none;opacity:.85}
/* Live-Übersetzung */
.pa-de{animation:pa-glow 3.2s ease infinite}
.pa-en{animation:pa-glow 3.2s ease 1.6s infinite}
@keyframes pa-glow{0%,40%,100%{fill:rgb(255 255 255 / 5%)}15%,25%{fill:color-mix(in srgb,var(--pa) 30%,transparent)}}
.pa-arrow{stroke-dasharray:6 4;animation:tls-march .8s linear infinite}
.pa-wave path{transform-box:fill-box;transform-origin:center;animation:pa-wave .9s ease-in-out infinite alternate}
.pa-wave path:nth-child(2){animation-delay:-.45s}
@keyframes pa-wave{to{scale:1 .4}}
/* Prozessautomatisierung */
.pa-packet{fill:var(--pa);stroke:none;animation:pa-travel 3s var(--ease) infinite}
@keyframes pa-travel{0%{translate:0 0}40%,50%{translate:calc(42px*var(--svgz,1)) 0}90%,100%{translate:calc(84px*var(--svgz,1)) 0}}
.pa-gear{transform-box:fill-box;transform-origin:center;animation:spin 5s linear infinite}
/* KI-Agenten */
.pa-tick{stroke-dasharray:1 1;stroke-dashoffset:1}
.pa-tick{animation:pa-tick 4.8s ease infinite}
.pa-t2{animation-delay:.6s}
.pa-t3{animation-delay:1.2s}
@keyframes pa-tick{0%{stroke-dasharray:12;stroke-dashoffset:12}15%,85%{stroke-dashoffset:0;stroke-dasharray:12}100%{stroke-dashoffset:12;stroke-dasharray:12}}
.pa-spark{transform-box:fill-box;transform-origin:center;animation:pa-spark 2.4s ease-in-out infinite}
@keyframes pa-spark{50%{rotate:45deg;scale:1.3}}
/* Lernplattform */
.pa-path{stroke-width:2.4;stroke-dasharray:66 66;stroke-dashoffset:66;animation:pa-path 5s var(--ease) infinite}
@keyframes pa-path{0%{stroke-dashoffset:66}60%,100%{stroke-dashoffset:0}}
.pa-node{fill:#0c1d28;animation:pa-node 5s ease infinite}
.pa-n2{animation-delay:1.4s}
.pa-n3{animation-delay:2.8s}
@keyframes pa-node{0%,10%{fill:#0c1d28}20%,90%{fill:var(--pa)}100%{fill:#0c1d28}}
.pa-cert{transform-box:fill-box;transform-origin:center bottom;animation:pa-cert 5s var(--spring,ease) infinite}
@keyframes pa-cert{0%,55%{opacity:0;scale:.6}70%,95%{opacity:1;scale:1}100%{opacity:0}}

/* V13: Mindestgröße für Tippziele im Fußbereich (WCAG 2.5.8) */
.footer-bottom nav{gap:calc(4px*var(--u)) calc(18px*var(--u))}
.footer-bottom nav a,.footer-a11y{min-height:calc(44px*var(--u));display:inline-flex;align-items:center}

/* V13: Flusskarte senkrecht auf schmalen Bildschirmen (statt Wischstreifen) */
.statement-flow-v{display:none}
.fmv-stop{stroke-width:2;fill:var(--paper)}
.fmv-stop-red{stroke:var(--red)}
.fmv-stop-blue{stroke:var(--blue)}
.statement-flow-v text{font:600 15px var(--font);fill:var(--ink)}
.statement-flow-v .fmv-head{font-weight:700;font-size:15px}
.statement-flow-v .fmv-head-red{fill:var(--red-dark)}
.statement-flow-v .fmv-head-blue{fill:var(--blue-dark)}
.statement-flow-v .fmv-end{text-anchor:end}
.statement-flow-v .fmv-goal{font-size:16px;font-weight:700;text-anchor:middle}
@media(max-width:700px){
  .flow-map{overflow:visible;margin-inline:0;padding-inline:0}
  .statement-flow:not(.statement-flow-v){display:none}
  .statement-flow-v{display:block;width:100%;max-width:calc(400px*var(--u));min-width:0;margin:0 auto}
}
@media(min-width:641px) and (max-width:1100px){
  .ap-partner-list .pa-card{grid-template-columns:calc(120px*var(--u)) minmax(0,1fr);column-gap:calc(28px*var(--u));align-items:start}
  .ap-partner-list .pa-card>.pa-art{grid-row:1 / span 3;margin:0}
  .ap-partner-list .pa-card>:not(.pa-art){grid-column:2}
}

/* V13: Textkarte der 3D-Fahrt bleibt über der Stationsleiste; Zeitstrahl-Skizzen beschnitten */
@media(min-width:901px){
  .chapters.is-3d .chapter{max-height:calc(100% - calc(132px*var(--u)));overflow:auto;overscroll-behavior:contain}
  .chapters.is-3d .chapter.is-active{transform:translateY(calc(-50% - calc(30px*var(--svgz,1))))}
}
@media(min-width:901px) and (max-height:960px){
  .chapters.is-3d .chapter{padding:calc(22px*var(--u)) calc(26px*var(--u))}
  .chapters.is-3d .keywords{display:none}
  .chapters.is-3d .chapter-lead{font-size:calc(15px*var(--u))}
}
.tl-seg{overflow:hidden}
@media(max-width:820px){.section-nav{-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent);padding-right:calc(40px*var(--u))}}
.ref-band{margin-top:calc(56px*var(--u));padding-top:calc(32px*var(--u));border-top:1px solid var(--line)}.ref-title{margin:0 0 calc(22px*var(--u));text-align:center;color:var(--muted);font-size:calc(14px*var(--u));font-weight:600;letter-spacing:.12em;text-transform:uppercase}.ref-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:calc(28px*var(--u)) calc(56px*var(--u));margin:0;padding:0;list-style:none}.ref-logo{display:block;height:calc(calc(74px*var(--u)) / sqrt(var(--ar)));aspect-ratio:var(--ar);background-color:var(--muted);opacity:.8;-webkit-mask:var(--logo) center/contain no-repeat;mask:var(--logo) center/contain no-repeat;transition:opacity .2s,background-color .2s}.ref-logos li:hover .ref-logo{opacity:1;background-color:var(--ink)}.ref-logo--bluhm{--ar:2.63;--logo:url(img/logos/bluhm.svg)}.ref-logo--meypack{--ar:4.32;--logo:url(img/logos/meypack.svg)}.ref-logo--helmers{--ar:4.79;--logo:url(img/logos/helmers.svg)}.ref-logo--pac-robotics{--ar:1;--logo:url(img/logos/pac-robotics.png)}.ref-logo--roteg{--ar:2.7;--logo:url(img/logos/roteg.png)}.ref-logo--rheinenergie{--ar:4.03;--logo:url(img/logos/rheinenergie.svg)}.ref-logo--vattenfall{--ar:6.18;--logo:url(img/logos/vattenfall.svg)}.ref-logo--nuon{--ar:1.78;--logo:url(img/logos/nuon.png)}.ref-logo--swb{--ar:3.65;--logo:url(img/logos/swb.svg)}.ref-logo--linde{--ar:2.92;--logo:url(img/logos/linde.png)}.ref-logo--wdr{--ar:3.38;--logo:url(img/logos/wdr.svg)}@media(max-width:560px){.ref-logos{gap:calc(22px*var(--u)) calc(36px*var(--u))}.ref-logo{height:calc(calc(60px*var(--u)) / sqrt(var(--ar)))}}@media(prefers-reduced-motion:reduce){.ref-logo{transition:none}}
.home-refs{width:min(var(--page),calc(100% - calc(64px*var(--u))));margin:0 auto;padding:clamp(calc(56px*var(--u)),7vw,calc(96px*var(--u))) 0 clamp(calc(24px*var(--u)),3vw,calc(40px*var(--u)));text-align:center}.home-refs .ref-title{margin-bottom:calc(34px*var(--u))}.home-refs-row+.home-refs-row{margin-top:calc(40px*var(--u));padding-top:calc(36px*var(--u));border-top:1px solid var(--line)}.home-refs-label{margin:0 0 calc(20px*var(--u));font-size:calc(15px*var(--u));font-weight:600}.home-refs-beratung .home-refs-label{color:var(--red)}.home-refs-maschinenbau .home-refs-label{color:var(--blue)}@media(max-width:560px){.home-refs{width:calc(100% - calc(40px*var(--u)))}}
/* Einstieg nebeneinander: Porträt nur verkleinern, wenn die Person sonst Text verdeckt (Wert aus ims.js); Einstieg wächst bei Bedarf */
@media(min-width:821px){.pane-portrait{height:var(--portrait-h,min(68%,calc(660px*var(--u))))}.split-hero{min-height:max(calc(620px*var(--u)),var(--hero-min,0px))}}

:root{--u:1}@media(min-width:1360px){:root{--u:1.08}}@media(min-width:1520px){:root{--u:1.16}}@media(min-width:1680px){:root{--u:1.25}}@media(min-width:1900px){:root{--u:1.34}}@media(min-width:2200px){:root{--u:1.5}}
svg *{--svgz:var(--svgfix,1)}
