.whatsappme {
  position: fixed;
  z-index: 400;
  right: 20px;
  bottom: 20px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
  font-size: 16px;
  line-height: 26px;
  color: #262626;
  transform: scale3d(0, 0, 0);
  transition: transform .3s ease-in-out;
  user-select: none;
  -ms-user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
}

.whatsappme--show {
  transform: scale3d(1, 1, 1);
  transition: transform .5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
}

.whatsappme__button {
  position: absolute;
  z-index: 2;
  bottom: 8px;
  right: 8px;
  height: 60px;
  min-width: 60px;
  max-width: 95vw;
  background-color: #25D366;
  color: #fff;
  border-radius: 30px;
  box-shadow: 1px 6px 24px 0 rgba(7, 94, 84, .24);
  cursor: pointer;
  transition: background-color 0.2s linear;
}

.whatsappme__button:hover {
  background-color: #128C7E;
  transition: background-color 1.5s linear;
}

.whatsappme--dialog .whatsappme__button {
  transition: background-color 0.2s linear;
}

.whatsappme__button:active {
  background-color: #075E54;
  transition: none;
}

.whatsappme__button svg {
  width: 36px;
  height: 60px;
  margin: 0 12px;
}

.whatsappme__badge {
  position: absolute;
  top: -4px;
  right: -4px;
  width: 20px;
  height: 20px;
  border: none;
  border-radius: 50%;
  background: #e82c0c;
  font-size: 12px;
  font-weight: 600;
  line-height: 20px;
  text-align: center;
  box-shadow: none;
  opacity: 0;
  pointer-events: none;
}

.whatsappme__badge.whatsappme__badge--in {
  animation: badge--in 500ms cubic-bezier(0.27, 0.9, 0.41, 1.28) 1 both;
}

.whatsappme__badge.whatsappme__badge--out {
  animation: badge--out 400ms cubic-bezier(0.215, 0.61, 0.355, 1) 1 both;
}

.whatsappme--dialog .whatsappme__button {
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
}

.whatsappme__box {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
  width: calc(100vw - 40px);
  max-width: 400px;
  min-height: 280px;
  padding-bottom: 60px;
  border-radius: 32px;
  background: #ede4dd url(../images/background.png) center repeat-y;
  background-size: 100% auto;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, .5);
  overflow: hidden;
  transform: scale3d(0, 0, 0);
  opacity: 0;
  transition: opacity 400ms ease-out, transform 0ms linear 300ms;
}

.whatsappme--dialog .whatsappme__box {
  opacity: 1;
  transform: scale3d(1, 1, 1);
  transition: opacity 200ms ease-out, transform 0ms linear;
}

.whatsappme__header {
  display: block;
  position: static;
  width: 100%;
  height: 70px;
  padding: 0 26px;
  margin: 0;
  background-color: #2e8c7d;
  color: rgba(255, 255, 255, .5);
}

.whatsappme__header svg {
  height: 100%;
}

.whatsappme__close {
  position: absolute;
  top: 18px;
  right: 24px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #000;
  color: #fff;
  line-height: 34px;
  font-size: 25px;
  text-align: center;
  opacity: .4;
  cursor: pointer;
  transition: opacity 300ms ease-out;
}

.whatsappme__close:hover {
  opacity: .6;
}

.whatsappme__message {
  position: relative;
  min-height: 80px;
  padding: 20px 22px;
  margin: 34px 26px;
  border-radius: 32px;
  background-color: #fff;
  color: #4A4A4A;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
}

.whatsappme__message:before {
  content: '';
  display: block;
  position: absolute;
  bottom: 30px;
  left: -18px;
  width: 18px;
  height: 18px;
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADcAAAA1CAYAAADlE3NNAAAEr0lEQVRo3t2aT0gjVxzHf++9mcn8zWhW6bpELWzcogFNaRar7a4tBNy2WATbHpacpdZ6redeZE+9CL02B1ktXsRD/xwsilhoSwsqag/xYK09hCQlmCiTf28vGRnGmZhE183MFx5vmGQy7zO/P/P7PYLAHUIAQCqDAwDPxMREG3IpHL+zs/MZcgkYAgAMAIwOl8lkYm6xGgYAFgAEAGgZHx9/vVwun7nJJTkAEAGgdW9v73NKKXWLSzIA4AEAGQDazs/P/3ALnNEl1a2trY9oRW6wmu6SEgC0ZrPZn9wCp2dIHgCU1dXVtymlZafDIatEksvlfqYGueG9xgOAcnBw8JSa5GR3vIi1aDTaUSwWj5wOZ3RHPUN6U6nUN9RCTnZHDwDI+/v745TSkpPhrOpHcWlpqbdcLieojZwGpseZMDo66svn87/RKnIaGAsAfCAQ8J6dnX1Pr5DjwABAzmazMVqDHAd2enr6La1RjgGLRCJqLpeL0TrUjFDGrMgCAD8/P38vn8//QutUs1pLT/fC5ubmQKFQOKANqNmspbuhBwDEZDL5BaX0lDaoZoK62NxZXFzs1DRthV5TrxrKGFue/v5+KZ1Of1kul5P0BtQUUAAgxOPx9wuFwl/0BvWq3O8C6vDw8F1N036gL0G3ZaVLUEdHRxFN036kL1E3DWMHxAEAPzc3dyedTk+XSqUdegu6CRijy5mBPLOzs2oikfhU07RFSmmG3qKuaxkdxuhy/MzMjDeRSHyiadrz2wYyClUBMh9bzRfAu7u7PX6//z1RFB9zHBcBALUZKoRqUMgEgyvHeHt7+353d/cjQRBGWJZ9jBDqaMYKHKpYBAEAXltbawsGg2FFUd7iOO4hIeQhQuiOEzpdOzCSTCaftLS0fEUIGXbiHiBjU5njVCr1sc/nW6wkDcduS1u1HKRUKv2KMR4ABwvbAWKMA+BwYbsasFgs/uMWuEtxd3x8/J3b4C4Ag8Hg83g8/iyfz//n5IRi1eZzla00HgA8oijyDMNwlFJCCGH0axiGQQAAXq+XyLLMeL1eRlEURpZlRpIkhud5oigK297eLvl8Prm1tVVSFEWSJEkWRVESBMGrqupriqLcFQThLsaYu612n6vUip4KMFv5HJssjhooEi5laoZh0NjYWNvw8PC9np6ejkAg8MDv9w+oqnrfxsNqhgNTh2wE1MGYChyyWGA9RYJVFWTM3MhwjMPhsDw9PT0QDocHOjs731RV9Y1rv+cMlb4Oiy3garWW1b2sPMfceZgHmZqa6pycnPywr6/vA47jfPXAWbU0xOCOqE44u2K8Wl9oBUfMa+rq6hIWFhbGBwcHn9pBohogcRWwRiCRTUiACQ6ZYpxY9JAkFAopy8vLM4FAYKyRrgA1GGf1JperLGgEM4cNG4vF3olGo18TQkT9JsRmAdQw66NsGlbn7Ibdd0um2XzOblz6/ZWVlX8JIb8PDQ090gFJDU+e2sBeZ1hBU9NcqvIQzDMFALq+vp7GGP85MjLyBCHE1tPO1LP4eq4FG/hqnlGyeSiwsbHxfygUOu7t7Y00059JUY3ZHFm8k1lT0cGfnJw8c0ojepWFzd6CMpnM3y8AJPEkZ9khO4IAAAAASUVORK5CYII=');
  background-size: 100%;
}

/* Align left */

.whatsappme--left {
  right: auto;
  left: 20px;
}

.whatsappme--left .whatsappme__button {
  right: auto;
  left: 8px;
}

.whatsappme--left .whatsappme__box {
  right: auto;
  left: 0;
}

@media (max-width: 480px) {
  .whatsappme {
    bottom: 6px;
    right: 6px;
  }

  .whatsappme--left {
    right: auto;
    left: 6px;
  }

  .whatsappme__box {
    width: calc(100vw - 12px);
    min-height: 0;
  }

  .whatsappme__header {
    height: 55px;
  }

  .whatsappme__close {
    top: 13px;
    width: 28px;
    height: 28px;
    line-height: 28px;
  }

  .whatsappme__message {
    padding: 14px 20px;
    margin: 15px 21px 20px;
    line-height: 24px;
  }
}

@keyframes badge--in {
  from {
    opacity: 0;
    transform: translateY(50px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes badge--out {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-20px);
  }
}