        .pika-single.top-aligned {
          transform: translateY( -22px );
        }

        .pika-single.bottom-aligned {
          transform: translateY( 22px );
        }

        .pika-single:before,
        .pika-single:after {
          content: '';
          display: block;
          position: absolute;
          border-color: transparent;
          border-style: solid;
          border-width: 18px 22px;
          width: 0;
          height: 0;
          animation-duration: 1200ms;
          animation-direction: alternate;
          animation-iteration-count: infinite;
          animation-timing-function: ease-in-out;
        }

        .pika-single:after {
          border-width: 16px 19px;
          margin: 0 1px;
        }

        .pika-single.top-aligned:before,
        .pika-single.top-aligned:after {
          top: 100%;
          border-bottom: none;
          animation-name: pulsate-top-border;
        }

        .pika-single.top-aligned:before {
          border-top-color: inherit;
        }

        .pika-single.top-aligned:after {
          border-top-color: white;
        }

        .pika-single.bottom-aligned:before,
        .pika-single.bottom-aligned:after {
          bottom: 100%;
          border-top: none;
          animation-name: pulsate-bottom-border;
        }

        .pika-single.bottom-aligned:before {
          border-bottom-color: inherit;
        }

        .pika-single.bottom-aligned:after {
          border-bottom-color: white;
        }

        .pika-single.left-aligned:before,
        .pika-single.left-aligned:after {
          border-left: none;
          left: 18px;
        }

        .pika-single.right-aligned:before,
        .pika-single.right-aligned:after {
          border-right: none;
          right: 18px;
        }

        @keyframes pulsate-top-border    { to { border-top-color: #e33; }}
        @keyframes pulsate-bottom-border { to { border-bottom-color: #e33; }}