.floating-actions{--floating-size:60px;--floating-edge:22px;position:fixed;inset:0;z-index:70;pointer-events:none;color:#122e47}
.floating-left,.floating-right{position:absolute;display:flex;align-items:flex-end;gap:12px;pointer-events:auto}
.floating-left{left:max(var(--floating-edge),env(safe-area-inset-left));bottom:calc(20px + env(safe-area-inset-bottom) + var(--floating-left-obstacle,0px))}
.floating-right{right:max(var(--floating-edge),env(safe-area-inset-right));bottom:calc(20px + env(safe-area-inset-bottom) + var(--floating-right-obstacle,0px))}
.floating-button{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;width:var(--floating-size);height:var(--floating-size);padding:0;border:2px solid #edf5fb;border-radius:50%;background:linear-gradient(130deg,#fff,#d9e1e7 32%,#f8fbfd 61%,#a7b7c4);color:#123451;box-shadow:inset 0 0 0 1px #8296a7,inset 0 3px 6px #fff,0 3px 0 #526d84,0 5px 20px #0009;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:box-shadow .16s,transform .16s}
.floating-button svg{display:block;width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.floating-callback{box-shadow:inset 0 0 0 1px #8296a7,inset 0 3px 6px #fff,0 3px 0 #386d9b,0 0 19px #007aff66,0 5px 20px #0008}
.floating-button:hover,.floating-contact:hover .floating-button{box-shadow:inset 0 0 0 1px #187dce,inset 0 3px 6px #fff,0 3px 0 #1665a8,0 0 22px #008dff66}
.floating-button:active,.floating-contact:active .floating-button{transform:translateY(2px)}
.floating-toggle[aria-expanded="true"]{color:#005bd6;box-shadow:inset 0 0 0 1px #187dce,0 3px 0 #176db5,0 0 20px #008dff66}
.floating-tooltip{position:absolute;right:calc(100% + 12px);top:50%;transform:translateY(-50%);display:block;padding:8px 11px;border:1px solid #56758d;border-radius:9px;white-space:nowrap;color:#f3f8fd;background:#0c1823;font-size:12px;font-weight:600;line-height:1.4;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s}
.floating-left .floating-tooltip{left:calc(100% + 12px);right:auto}
.floating-button:hover>.floating-tooltip,.floating-button:focus-visible>.floating-tooltip{opacity:1;visibility:visible}
.floating-contacts{position:relative;display:flex}
.floating-contact-list{position:absolute;right:-4px;bottom:calc(100% + 13px);display:flex;flex-direction:column;align-items:flex-end;gap:11px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 116px - var(--floating-right-obstacle,0px));overflow-y:auto;padding:4px;overscroll-behavior:contain;scrollbar-width:thin}
.floating-contact{display:flex;align-items:center;justify-content:flex-end;gap:11px;flex:none;min-width:0;padding:0;border:0;color:#f0f7ff;background:none;font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.floating-contact__label{padding:9px 12px;border:1px solid #58778f;border-radius:10px;background:linear-gradient(125deg,#1c3041,#0a121b);box-shadow:0 3px 10px #0008;color:#e3f2ff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap}
.floating-actions :is(a,button):focus-visible{outline:3px solid #009aff;outline-offset:4px}
body:has(dialog[open]) .floating-actions,body:has(.site input:not([type="checkbox"]):not([type="radio"]):focus,.site textarea:focus,.site select:focus) .floating-actions{visibility:hidden;pointer-events:none}
.has-floating-actions .site-footer{padding-bottom:calc(106px + env(safe-area-inset-bottom))}
.has-floating-actions .seo-footer{padding-bottom:calc(106px + env(safe-area-inset-bottom))}
@media(min-width:1101px){.has-floating-actions .site-footer{padding-bottom:24px}}
.callback-consent-copy{display:none}
#request-dialog[data-mode="callback"]{width:min(540px,calc(100vw - 32px))}
#request-dialog[data-mode="callback"] .request-grid{grid-template-columns:1fr;gap:0}
#request-dialog[data-mode="callback"] :is(.request-grid>.dialog-field:first-child,#service-field,#message-field,#photo-field,#photo-select,.quote-consent-copy,.request-notice){display:none}
#request-dialog[data-mode="callback"] .callback-consent-copy{display:block}
#request-dialog[data-mode="callback"] .dialog-actions{grid-template-columns:1fr;margin-top:22px}
#request-dialog[data-mode="callback"] .consent-field{padding:14px 13px;border:1px solid #94a4b0;border-radius:12px;background:#ffffff35}
#request-dialog[data-mode="callback"] #request-description{font-size:17px;line-height:1.6}
@media(max-width:767px){.floating-actions{--floating-size:50px;--floating-edge:14px}.floating-left,.floating-right{bottom:calc(14px + env(safe-area-inset-bottom) + var(--floating-right-obstacle,0px));gap:10px}.floating-left{bottom:calc(14px + env(safe-area-inset-bottom) + var(--floating-left-obstacle,0px))}.floating-button svg{width:23px;height:23px}.floating-tooltip{display:none}.floating-contact-list{gap:10px}.floating-contact__label{font-size:12px;padding:9px 11px}.has-floating-actions .site-footer{padding-bottom:calc(94px + env(safe-area-inset-bottom))}#request-dialog[data-mode="callback"]{width:calc(100vw - 24px)}#request-dialog[data-mode="callback"] #request-description{font-size:16px}}
@media(prefers-reduced-motion:reduce){.floating-button,.floating-tooltip{transition:none}}
@media(forced-colors:active){.floating-button,.floating-contact__label,.floating-tooltip{background:Canvas;color:CanvasText;border:2px solid CanvasText;box-shadow:none}.floating-toggle[aria-expanded="true"]{color:Highlight;box-shadow:none}#request-dialog[data-mode="callback"] .consent-field{background:Canvas;color:CanvasText;border-color:CanvasText}}
