.contact-dock {
  position: fixed;
  z-index: 35;
  right: max(18px, env(safe-area-inset-right));
  bottom: max(24px, calc(env(safe-area-inset-bottom) + 16px));
  display: grid;
  gap: 10px;
  font-family: Poppins, sans-serif;
}
.contact-dock__link {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 170px;
  min-height: 56px;
  padding: 9px 16px 9px 12px;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 16px;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 8px 24px rgba(0,27,60,.24);
  transition: transform .18s ease, box-shadow .18s ease;
}
.contact-dock__link--whatsapp { background: #177a4e; }
.contact-dock__link--call { background: #073f80; }
.contact-dock__link:hover, .contact-dock__link:focus-visible {
  color: #fff;
  transform: translateX(-4px);
  box-shadow: 0 12px 28px rgba(0,27,60,.3);
}
.contact-dock__link:active { transform: scale(.96); }
.contact-dock__link:focus-visible { outline: 3px solid #ffcd70; outline-offset: 3px; }
.contact-dock__icon { flex: none; width: 27px; height: 27px; }
.contact-dock__copy { display: grid; line-height: 1.3; white-space: nowrap; }
.contact-dock__copy strong { font-size: 12px; font-weight: 700; }
.contact-dock__copy small { font-size: 10px; opacity: .92; }
/* Only the floating contact components are styled here. */
.contact-backtop{position:fixed;z-index:35;right:max(18px,env(safe-area-inset-right));bottom:max(24px,calc(env(safe-area-inset-bottom) + 16px));display:grid;place-items:center;width:46px;height:46px;padding:0;border:1px solid #d5e2ef;border-radius:14px;background:#fff;color:#073f80;box-shadow:0 8px 24px rgba(0,27,60,.18);cursor:pointer}
.has-contact-dock .contact-backtop{right:max(202px,calc(env(safe-area-inset-right) + 190px))}
.contact-backtop[hidden]{display:none}
.contact-backtop:focus-visible{outline:3px solid #ffcd70;outline-offset:3px}
.contact-backtop:hover{background:#edf5ff}
@media (max-width:680px){
 .contact-dock{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));display:flex;gap:10px;padding:8px;border:1px solid #e2eaf2;border-radius:18px;background:rgba(255,255,255,.97);box-shadow:0 6px 28px rgba(0,27,60,.16)}
 .contact-dock__link{flex:1;justify-content:center;min-width:0;min-height:54px;padding:8px 10px;gap:8px;border-radius:12px;box-shadow:none}
 .contact-dock__copy{display:grid;white-space:normal}
 .contact-dock__copy strong{font-size:12px}
 .contact-dock__copy small{font-size:9px}
 .contact-dock__icon{width:24px;height:24px}
 .contact-dock__link:hover,.contact-dock__link:focus-visible{transform:none}
 .has-contact-dock .footer-bottom{padding-bottom:calc(110px + env(safe-area-inset-bottom))}
 .contact-backtop,.has-contact-dock .contact-backtop{right:max(14px,env(safe-area-inset-right))}
 .has-contact-dock .contact-backtop{bottom:calc(100px + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){.contact-dock__link{transition:none}}
