/* Local icons, no external widget libraries. */
.floating-contacts{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:calc(max(24px,env(safe-area-inset-bottom)) + var(--floating-obstacle,0px));z-index:15;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.floating-contacts__link{display:flex;align-items:center;justify-content:flex-start;gap:12px;min-width:154px;min-height:50px;padding:11px 20px 11px 16px;border:1px solid #ffffffb3;border-radius:999px;color:#fff;text-decoration:none;font-size:13px;font-weight:700;line-height:1.4;box-shadow:0 5px 20px #143a6530;transition:transform .18s,box-shadow .18s}
.floating-contacts__link--max{background:linear-gradient(135deg,#0047ab,#7054d3)}
.floating-contacts__link--telegram{background:#0879ad}
.floating-contacts__link img{display:block;width:24px;height:24px;object-fit:contain;flex:none}
.floating-contacts__link:hover{transform:translateY(-2px);box-shadow:0 8px 24px #143a6540}
.floating-contacts__link:focus-visible{outline:3px solid #0047ab;outline-offset:4px}
body:has(dialog[open]) .floating-contacts,.floating-contacts.is-obstructed{visibility:hidden;pointer-events:none}
@media(max-width:760px){
 .floating-contacts{right:max(16px,env(safe-area-inset-right));bottom:calc(max(16px,env(safe-area-inset-bottom)) + var(--floating-obstacle,65px));gap:8px}
 .floating-contacts__link{width:50px;height:50px;min-width:50px;min-height:50px;justify-content:center;padding:12px;border-radius:50%}
 .floating-contacts__label{display:none}
}
@media(prefers-reduced-motion:reduce){.floating-contacts__link{transition:none}.floating-contacts__link:hover{transform:none}}

/* Mobile dock keeps chat shortcuts beside the estimate button. */
@media(max-width:760px){
 .floating-contacts{flex-direction:row;right:max(14px,env(safe-area-inset-right));bottom:calc(10px + env(safe-area-inset-bottom));gap:8px}
 .floating-contacts__link{width:44px;height:44px;min-width:44px;min-height:44px;padding:10px}
 .mobile-cta{padding-right:124px;padding-left:14px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}
 .cookie-banner{bottom:calc(78px + env(safe-area-inset-bottom))}
 .footer{padding-bottom:calc(90px + env(safe-area-inset-bottom))}
}
