/* ── плавающая кнопка «Контакты»: всегда под рукой, раскрывает Telegram-бот и почту (перенята с Rezar) ── */
.contact-fab{position:fixed;z-index:50;
  right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));
  display:flex;flex-direction:column;align-items:flex-end;gap:var(--s-3)}
.contact-fab__toggle{display:grid;place-items:center;width:3.75rem;height:3.75rem;border-radius:50%;cursor:pointer;
  background:var(--ink);color:var(--lime);border:2px solid var(--lime);box-shadow:var(--shadow);
  -webkit-tap-highlight-color:transparent}
.contact-fab__toggle:hover{background:var(--graphite)}
.contact-fab__toggle:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.contact-fab__toggle svg{width:1.6rem;height:1.6rem}
.contact-fab__toggle .ico-close{display:none}
.contact-fab.is-open .ico-open{display:none}
.contact-fab.is-open .ico-close{display:block}

.contact-fab__menu{display:grid;gap:var(--s-2);min-width:15.5rem;padding:var(--s-2);border-radius:var(--radius);
  background:var(--ink);box-shadow:var(--shadow);border:1px solid var(--line-dark)}
.contact-fab__menu[hidden]{display:none}
.contact-fab__menu a{display:flex;align-items:center;gap:var(--s-3);min-height:3rem;padding:0 var(--s-4);
  border-radius:var(--radius-sm);color:var(--white);text-decoration:none;font:800 .95rem/1.2 var(--font-body)}
.contact-fab__menu a:hover,.contact-fab__menu a:focus-visible{background:var(--graphite);outline:none}
.contact-fab__menu svg{width:1.25rem;height:1.25rem;flex:none;color:var(--lime)}
.contact-fab__menu small{display:block;font-weight:500;color:var(--muted-dark);font-size:.8rem;margin-top:.15rem}

/* пока на экране главная кнопка (data-fab-avoid) — плавающая уезжает вниз, не перекрывая её */
.contact-fab{transition:transform .25s cubic-bezier(.2,.8,.2,1),opacity .2s}
.contact-fab.is-tucked{transform:translateY(calc(100% + 2rem));opacity:0;pointer-events:none}


@media (prefers-reduced-motion:no-preference){
  .contact-fab__menu:not([hidden]){animation:fab-menu .18s cubic-bezier(.2,.8,.2,1)}
  @keyframes fab-menu{from{opacity:.001;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}
}
@media print{.contact-fab{display:none}}
.contact-fab__menu small{overflow-wrap:anywhere}
