/* beFresh WhatsApp-Button (ersetzt Plugin „Click to Chat“) – rechts unten, ohne Verläufe */
.bfw{--wa:#25D366;--wa-dark:#128C4B;--navy:#08284F;--ink:#161C2D;--text:#5B6475;position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:9990;font-family:"Open Sans",system-ui,sans-serif;line-height:1.5}
.bfw *{box-sizing:border-box}
.bfw-btn{position:relative;display:grid;place-items:center;width:60px;height:60px;margin:0;padding:0;border:0;border-radius:50%;background:var(--wa);color:#fff;cursor:pointer;box-shadow:0 12px 28px -8px rgba(18,140,75,.65);transition:transform .2s,background .2s}
.bfw-btn:hover{background:var(--wa-dark);transform:scale(1.06)}
.bfw-btn:focus-visible,.bfw-close:focus-visible,.bfw-cta:focus-visible,.bfw-call:focus-visible{outline:3px solid #48B1FB;outline-offset:3px}
.bfw-btn svg{width:32px;height:32px;fill:currentColor}
.bfw-btn .bfw-x{display:none;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.bfw.is-open .bfw-btn .bfw-logo{display:none}
.bfw.is-open .bfw-btn .bfw-x{display:block}
.bfw-label{position:absolute;right:72px;top:50%;transform:translateY(-50%);white-space:nowrap;padding:8px 14px;border-radius:999px;background:#fff;color:var(--ink);font-size:14px;font-weight:600;box-shadow:0 8px 24px -10px rgba(8,40,79,.45);opacity:0;pointer-events:none;transition:opacity .2s}
.bfw-btn:hover .bfw-label{opacity:1}
.bfw.is-open .bfw-label{display:none}
.bfw-panel{position:absolute;right:0;bottom:76px;width:min(340px,calc(100vw - 40px));border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 24px 60px -18px rgba(8,40,79,.55),0 0 0 1px rgba(8,40,79,.06);transform-origin:bottom right;animation:bfw-in .18s ease-out}
.bfw-panel[hidden]{display:none}
@keyframes bfw-in{from{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}
.bfw-head{display:flex;align-items:center;gap:12px;padding:16px 16px 16px 18px;background:var(--navy);color:#fff}
.bfw-head img{width:46px;height:46px;border-radius:50%;object-fit:cover;flex:none;box-shadow:0 0 0 2px var(--wa)}
.bfw-head div{flex:1;min-width:0;display:grid}
.bfw-head strong{font-family:Quicksand,sans-serif;font-size:16px;line-height:1.25;color:#fff}
.bfw-head span{font-size:13px;color:rgba(255,255,255,.75)}
.bfw-head span::before{content:"";display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:var(--wa);vertical-align:1px}
.bfw-close{display:grid;place-items:center;width:34px;height:34px;flex:none;margin:0;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;cursor:pointer}
.bfw-close:hover{background:rgba(255,255,255,.22)}
.bfw-close svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.bfw-body{padding:18px;background:#EEF5EC}
.bfw-bubble{position:relative;margin:0;padding:12px 14px;border-radius:4px 16px 16px 16px;background:#fff;color:var(--ink);font-size:14.5px;box-shadow:0 1px 1px rgba(0,0,0,.06)}
.bfw-foot{display:grid;gap:10px;padding:16px 18px 18px}
.bfw .bfw-cta,.bfw .bfw-cta:visited{display:flex;align-items:center;justify-content:center;gap:10px;min-height:50px;border-radius:999px;background:var(--wa);color:#fff;font-weight:700;font-size:15px;text-decoration:none;transition:background .2s}
.bfw .bfw-cta:hover{background:var(--wa-dark);color:#fff}
.bfw-cta svg{width:22px;height:22px;fill:currentColor}
.bfw .bfw-call,.bfw .bfw-call:visited{text-align:center;font-size:14px;color:var(--text);text-decoration:none}
.bfw .bfw-call b{color:var(--navy)}
.bfw .bfw-call:hover b{text-decoration:underline}
#top-to-bottom{right:34px!important;margin-bottom:84px}
@media (max-width:600px){
  .bfw{right:16px;bottom:16px}
  .bfw-btn{width:56px;height:56px}
  .bfw-panel{bottom:70px;width:calc(100vw - 32px)}
  .bfw-label{display:none}
  #top-to-bottom{right:24px!important;margin-bottom:76px}
}
@media (prefers-reduced-motion:reduce){.bfw-panel{animation:none}.bfw-btn{transition:none}}
@media print{.bfw{display:none}}
