.affinity4-tooltip {
  display: inline;
  position: relative;
  z-index: 999;
}

/* Trigger text */
.affinity4-tooltip-item {
  background: rgba(0,0,0,0.3);
  cursor: pointer;
  display: inline-block;
  font-weight: 700;
  padding: 0 10px;
}

/* Gap filler */
.affinity4-tooltip-item::after {
  content: '';
  position: absolute;
  width: 360px;
  height: 20px;
  bottom: 100%;
  left: 50%;
  pointer-events: none;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.affinity4-tooltip:hover .affinity4-tooltip-item::after {
  pointer-events: auto;
}

/* Tooltip */
.affinity4-tooltip-content {
  position: absolute;
  z-index: 9999;
  width: 360px;
  left: 50%;
  margin: 0 0 20px -180px;
  bottom: 100%;
  text-align: left;
  font-size: 1rem;
  line-height: 1.4;
  box-shadow: -5px -5px 15px rgba(48,54,61,0.2);
  background: #2a3035;
  opacity: 0;
  cursor: default;
  pointer-events: none;
}

.affinity4-tooltip-effect-1 .affinity4-tooltip-content {
  -webkit-transform: translate3d(0,-10px,0);
  transform: translate3d(0,-10px,0);
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, transform 0.3s;
}

.affinity4-tooltip-effect-2 .affinity4-tooltip-content {
  -webkit-transform-origin: 50% calc(100% + 10px);
  transform-origin: 50% calc(100% + 10px);
  -webkit-transform: perspective(1000px) rotate3d(1,0,0,45deg);
  transform: perspective(1000px) rotate3d(1,0,0,45deg);
  -webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, transform 0.2s;
}

.affinity4-tooltip-effect-3 .affinity4-tooltip-content {
  -webkit-transform: translate3d(0,10px,0) rotate3d(1,1,0,25deg);
  transform: translate3d(0,10px,0) rotate3d(1,1,0,25deg);
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, transform 0.3s;
}

.affinity4-tooltip-effect-4 .affinity4-tooltip-content {
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  -webkit-transform: scale3d(0.7,0.3,1);
  transform: scale3d(0.7,0.3,1);
  -webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, transform 0.2s;
}

.affinity4-tooltip-effect-5 .affinity4-tooltip-content {
  width: 180px;
  margin-left: -90px;
  -webkit-transform-origin: 50% calc(100% + 6em);
  transform-origin: 50% calc(100% + 6em);
  -webkit-transform: rotate3d(0,0,1,15deg);
  transform: rotate3d(0,0,1,15deg);
  -webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, transform 0.2s;
  -webkit-transition-timing-function: ease, cubic-bezier(.17,.67,.4,1.39);
  transition-timing-function: ease, cubic-bezier(.17,.67,.4,1.39);
}

.affinity4-tooltip:hover .affinity4-tooltip-content {
  pointer-events: auto;
  opacity: 1;
  -webkit-transform: translate3d(0,0,0) rotate3d(0,0,0,0);
  transform: translate3d(0,0,0) rotate3d(0,0,0,0);
}

.affinity4-tooltip.affinity4-tooltip-effect-2:hover .affinity4-tooltip-content {
  -webkit-transform: perspective(1000px) rotate3d(1,0,0,0deg);
  transform: perspective(1000px) rotate3d(1,0,0,0deg);
}

/* Arrow */
.affinity4-tooltip-content::after {
  content: '';
  top: 100%;
  left: 50%;
  border: solid transparent;
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: transparent;
  border-top-color: #2a3035;
  border-width: 10px;
  margin-left: -10px;
}

/* Tooltip content*/
.affinity4-tooltip-content img {
  position: relative;
  height: 170px;
  display: block;
  float: left;
  margin-right: 1em;
}

.affinity4-tooltip-text {
  font-size: 0.68em;
  line-height: 1.35;
  display: block;
  padding: 1.31em 1.21em 1.21em 0;
  color: #fff;
}

.affinity4-tooltip-effect-5 .affinity4-tooltip-text {
  padding: 1.4em;
}

.affinity4-tooltip-text a {
  font-weight: bold;
}