:root{--blau:#12447a;--blau2:#0c2f57;--hell:#f3f7fb;--text:#1b2a3a;--gold:#ffd54a;--linie:#d5e0ec}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:17px/1.65 "Segoe UI","Helvetica Neue",Arial,sans-serif;color:var(--text);background:#fff}
a{color:var(--blau)}h1,h2,h3{line-height:1.2;margin:0 0 .5em}
.wrap{max-width:1040px;margin:0 auto;padding:0 22px}
nav{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--linie)}
nav .wrap{display:flex;gap:22px;flex-wrap:wrap;justify-content:center;padding:12px 22px}
nav a{text-decoration:none;font-weight:600;color:var(--blau2)}
nav a:hover,nav a:focus-visible{text-decoration:underline}
.hero{background:linear-gradient(160deg,var(--blau) 0%,var(--blau2) 100%);color:#fff;text-align:center;padding:56px 0 64px}
.logo{display:inline-block;text-align:center}
.word{font-family:"Arial Black","Helvetica Neue",Arial,sans-serif;font-weight:900;font-size:clamp(4rem,17vw,10.5rem);line-height:1;letter-spacing:.02em;color:#fff;white-space:nowrap}
.word .ss{font-size:1.2em;line-height:.8}
.f{position:relative;display:inline-block}
.hand{position:absolute;top:-.02em;left:-.55em;width:.62em;opacity:0;animation:wipe 9s infinite;pointer-events:none}
@keyframes wipe{0%{opacity:0;transform:translateX(-.1em)}4%{opacity:1;transform:translateX(0)}
 12%{transform:translateX(.35em)}20%{transform:translateX(0)}28%{transform:translateX(.35em)}36%{transform:translateX(0)}44%{transform:translateX(.35em)}52%{opacity:1;transform:translateX(0)}58%,100%{opacity:0;transform:translateX(-.2em)}}
.spark{position:absolute;width:.16em;height:.16em;background:var(--gold);opacity:0;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:spark 9s infinite}
.s1{top:.04em;left:.06em}.s2{top:.3em;left:.46em;animation-delay:.25s;width:.11em;height:.11em}.s3{top:.02em;left:.5em;animation-delay:.5s}
@keyframes spark{0%,58%{opacity:0;transform:scale(.2)}64%{opacity:1;transform:scale(1.1) rotate(20deg)}74%{opacity:1;transform:scale(.8)}82%,100%{opacity:0;transform:scale(.2)}}
.sub{font-size:clamp(1.5rem,5.5vw,3rem);font-weight:700;margin-top:.1em}
.sub2{font-size:clamp(.95rem,2.6vw,1.25rem);margin-top:.4em;opacity:.92}
.claim{max-width:620px;margin:28px auto 26px;font-size:1.15rem}
.btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.btn{display:inline-block;padding:13px 24px;border-radius:6px;font:600 1rem inherit;text-decoration:none;border:2px solid #fff;color:#fff;background:transparent;cursor:pointer}
.btn.pri{background:#fff;color:var(--blau2)}
.btn:hover,.btn:focus-visible{background:var(--gold);border-color:var(--gold);color:var(--blau2)}
section{padding:64px 0}section.alt{background:var(--hell)}
h2{font-size:clamp(1.6rem,4vw,2.2rem);color:var(--blau2)}
.schwerpunkt{border-left:6px solid var(--blau);padding:6px 0 6px 24px;margin-bottom:38px;max-width:760px}
.schwerpunkt h3{font-size:1.5rem;color:var(--blau)}
.liste{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:26px 34px}
.liste div{border-top:3px solid var(--linie);padding-top:12px}.liste h3{font-size:1.15rem}
.zwei{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.pallet-fig{background:#fff;border:1px solid var(--linie);padding:10px}
.pal{animation:carry 6s infinite}
@keyframes carry{0%,10%{transform:translate(0,0);opacity:1}45%,88%{transform:translate(-80px,-42px);opacity:1}100%{transform:translate(-80px,-42px);opacity:0}}
.kontakt dl{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;margin:0 0 26px}.kontakt dt{font-weight:700}.kontakt dd{margin:0}
.kontakt .btn{border-color:var(--blau);color:var(--blau)}
footer{background:var(--blau2);color:#fff;padding:26px 0;text-align:center;font-size:.95rem}footer a{color:#fff;margin:0 10px}
.seite{padding:48px 0 64px;max-width:760px}.seite h2{margin-top:1.6em;font-size:1.3rem}
.topbar{background:var(--blau2);padding:14px 0}.topbar a{color:#fff;font-weight:700;text-decoration:none}
/* Chat */
#fl-open{position:fixed;right:18px;bottom:18px;z-index:40;background:var(--blau);color:#fff;border:0;border-radius:30px;padding:14px 22px;font:600 1rem inherit;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.25)}
#fl-chat{position:fixed;right:18px;bottom:76px;z-index:41;width:min(380px,calc(100vw - 36px));max-height:min(540px,calc(100vh - 100px));display:none;flex-direction:column;background:#fff;border:1px solid var(--linie);border-radius:10px;box-shadow:0 8px 30px rgba(0,0,0,.25);overflow:hidden}
#fl-chat.on{display:flex}
#fl-chat header{background:var(--blau);color:#fff;padding:12px 16px;font-weight:700;display:flex;justify-content:space-between}
#fl-chat header button{background:none;border:0;color:#fff;font-size:1.3rem;cursor:pointer}
.log{flex:1;overflow:auto;padding:14px;background:var(--hell)}
.log p{margin:0 0 10px;padding:9px 13px;border-radius:12px;max-width:88%;font-size:.95rem;line-height:1.45}
.log .bot{background:#fff;border:1px solid var(--linie)}.log .me{background:var(--blau);color:#fff;margin-left:auto}
.ctl{padding:12px;border-top:1px solid var(--linie);display:flex;flex-wrap:wrap;gap:8px}
.ctl .chip{border:1.5px solid var(--blau);background:#fff;color:var(--blau);border-radius:18px;padding:7px 13px;cursor:pointer;font:inherit;font-size:.92rem}
.ctl .chip.sel,.ctl .chip:hover{background:var(--blau);color:#fff}
.ctl input[type=text]{flex:1;min-width:0;padding:9px 11px;border:1.5px solid var(--linie);border-radius:6px;font:inherit}
.ctl .go{background:var(--blau);color:#fff;border:0;border-radius:6px;padding:9px 16px;cursor:pointer;font:inherit}
.hp{position:absolute;left:-9999px}
@media(max-width:760px){.zwei{grid-template-columns:1fr}section{padding:46px 0}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto}.spark{opacity:1}}
