.schnellkontakt {
    --leiste-dunkel: #092e39;
    --leiste-akzent: #ffc06b;
    position: fixed; inset: auto max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) auto;
    z-index: 38; display: flex; flex-direction: column; align-items: flex-end; gap: 7px;
    width: max-content; margin: 0; padding: 0; border: 0; background: transparent; box-shadow: none;
}
.schnellkontakt[hidden] { display: none !important; }
.schnellkontakt a {
    position: relative; display: grid; place-items: center; box-sizing: border-box; margin: 0; padding: 0;
    width: 52px; height: 52px; min-width: 0; border: 2px solid white; border-radius: 50%;
    color: #fff; background: var(--leiste-dunkel); box-shadow: 0 3px 12px #10263338;
    text-decoration: none; transition: transform .14s ease;
}
.schnellkontakt a[data-aktion="call"] { color: var(--leiste-akzent); }
.schnellkontakt a:last-child { color: #102633; background: var(--leiste-akzent); }
.schnellkontakt a svg { display: block; width: 24px; height: 24px; }
.schnellkontakt a span {
    position: absolute; right: calc(100% + 9px); padding: .4rem .65rem; color: white; background: var(--leiste-dunkel);
    font: 600 13px/1.3 system-ui,sans-serif; white-space: nowrap; border-radius: 5px; opacity: 0; pointer-events: none;
}
.schnellkontakt a:focus-visible { outline: 3px solid #2873ab; outline-offset: 2px; }
.schnellkontakt a:focus-visible span { opacity: 1; }
.hat-schnellkontakt .mobilebar {display:none !important;}
@media(hover:hover) {
    .schnellkontakt a:hover { transform: translateX(-2px); }
    .schnellkontakt a:hover span { opacity: 1; }
}
@media(max-width:700px) {
    .schnellkontakt { gap: 5px; right: max(6px, env(safe-area-inset-right)); }
    .schnellkontakt a { width: 46px; height: 46px; }
    .schnellkontakt a svg { width: 21px; height: 21px; }
}
@media(max-height:479px) { .schnellkontakt { flex-direction: row; } .schnellkontakt a { width:44px; height:44px; } .schnellkontakt a span { right:0; bottom:calc(100% + 4px); } }
@media(prefers-reduced-motion:reduce) { .schnellkontakt a { transition:none; } }
@media print { .schnellkontakt { display:none !important; } }

