/* SSI requirement 03: screen-fixed controls; right edge stays anchored on expansion. */
.ssi-contact-symbols{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.ssi-contact-rail{position:fixed;right:env(safe-area-inset-right,0px);top:35%;z-index:1020;pointer-events:none}
.ssi-contact-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:flex-end;gap:3px}
.ssi-contact-links li{margin:0;padding:0;list-style:none}
.ssi-contact-link{position:relative;display:block;width:48px;height:48px;overflow:hidden;border-radius:9px 0 0 9px;color:#fff!important;text-decoration:none!important;pointer-events:auto;box-shadow:0 3px 12px #10245220;transition:width .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease}
.ssi-contact-icon{position:absolute;right:0;top:0;display:grid;place-items:center;width:48px;height:48px}
.ssi-contact-icon svg,.ssi-contact-toggle svg{display:block;width:23px;height:23px;fill:none}
.ssi-contact-label{position:absolute;right:60px;top:0;height:48px;display:flex;align-items:center;white-space:nowrap;font:600 14px/1.2 Inter,Arial,sans-serif;opacity:0;transform:translateX(12px);transition:opacity .18s ease,transform .28s ease}
.ssi-contact-mobile{background:#e92832}.ssi-contact-whatsapp{background:#168541}.ssi-contact-facebook{background:#345b9c}.ssi-contact-instagram{background:linear-gradient(135deg,#643bc8,#b92187 62%,#b84522)}.ssi-contact-linkedin{background:#0a66c2}
@media(hover:hover){.ssi-contact-link:hover{width:176px;box-shadow:0 5px 20px #10245230}.ssi-contact-link:hover .ssi-contact-label{opacity:1;transform:none}}
.ssi-contact-link:focus-visible{width:176px;outline:3px solid #102452;outline-offset:3px}
.ssi-contact-link:focus-visible .ssi-contact-label{opacity:1;transform:none}
.ssi-contact-toggle{display:none}
.ssi-fixed-call,.ssi-whatsapp.ssi-float-whatsapp{position:fixed;bottom:max(22px,env(safe-area-inset-bottom,0px));width:56px;height:56px;display:grid;place-items:center;border:2px solid #fff;border-radius:50%;color:#fff!important;text-decoration:none;box-shadow:0 6px 20px #10245230;z-index:1020;transition:transform .2s ease}
.ssi-fixed-call{left:max(22px,env(safe-area-inset-left,0px));background:#128039}
.ssi-fixed-call::before{content:"";position:absolute;inset:-4px;border:2px solid #12803988;border-radius:50%;animation:ssi-call-ring 2.5s ease-out infinite;pointer-events:none}
.ssi-fixed-call svg,.ssi-float-whatsapp svg{width:27px;height:27px;fill:none}
.ssi-whatsapp.ssi-float-whatsapp{right:max(22px,env(safe-area-inset-right,0px));background:#168541}
.ssi-fixed-call:focus-visible,.ssi-float-whatsapp:focus-visible,.ssi-contact-toggle:focus-visible{outline:3px solid #1746f5;outline-offset:4px}
@media(hover:hover){.ssi-fixed-call:hover,.ssi-float-whatsapp:hover{transform:translateY(-3px)}}
@keyframes ssi-call-ring{0%{transform:scale(1);opacity:.65}65%,100%{transform:scale(1.28);opacity:0}}
/* A tap opens labelled links on touch screens. The call button remains one tap. */
@media(max-width:767px),(max-height:600px),(hover:none){
 .ssi-contact-rail{top:auto;bottom:calc(88px + env(safe-area-inset-bottom,0px));right:max(14px,env(safe-area-inset-right,0px));transform:none}
 .ssi-contact-toggle:not([hidden]){display:grid;place-items:center;width:48px;height:48px;padding:0;margin-left:auto;border:2px solid #fff;border-radius:50%;color:#fff;background:#0d245f;box-shadow:0 4px 16px #10245230;cursor:pointer;pointer-events:auto}
 .ssi-contact-rail[data-enhanced] .ssi-contact-links{display:none;position:absolute;right:0;bottom:58px;max-height:calc(100vh - 190px);max-height:calc(100dvh - 190px);overflow-y:auto;padding:5px;gap:4px;border-radius:12px;background:#fff;box-shadow:0 8px 28px #10245233;pointer-events:auto}
 .ssi-contact-rail[data-open="true"] .ssi-contact-links{display:flex}
 .ssi-contact-link,.ssi-contact-link:focus-visible{width:166px;height:46px;border-radius:8px;box-shadow:none}
 .ssi-contact-icon{width:46px;height:46px}.ssi-contact-label{height:46px;opacity:1;transform:none;right:57px}
 .ssi-fixed-call,.ssi-whatsapp.ssi-float-whatsapp{bottom:max(16px,env(safe-area-inset-bottom,0px));width:52px;height:52px}
 .ssi-fixed-call{left:max(14px,env(safe-area-inset-left,0px))}.ssi-whatsapp.ssi-float-whatsapp{right:max(14px,env(safe-area-inset-right,0px))}
 .ssi-contact-input-active .ssi-contact-rail,.ssi-contact-input-active .ssi-fixed-call,.ssi-contact-input-active .ssi-float-whatsapp{visibility:hidden;pointer-events:none}
}
body.modal-open .ssi-contact-rail,body.modal-open .ssi-fixed-call,body.modal-open .ssi-float-whatsapp{visibility:hidden;pointer-events:none}
@media(prefers-reduced-motion:reduce){.ssi-fixed-call::before{animation:none;display:none}.ssi-contact-link,.ssi-contact-label,.ssi-fixed-call,.ssi-float-whatsapp{transition:none!important}}
@media print{.ssi-contact-rail,.ssi-fixed-call,.ssi-float-whatsapp,.ssi-contact-symbols{display:none!important}}
