.reveal-hotspot {
  width: 32px;
  height: 32px;
  background-color: #25aae1;
  border-radius: 50%;
  margin-left: 0;
  text-align: center;
  cursor: pointer;
  transition: height 0.3s ease-in-out, width 0.3s ease-in-out,
    border-radius 0.3s ease-in-out, margin 0.3s ease-in-out;
}

.reveal-hotspot > img {
  width: 20px;
  margin: 6px 0;
}

.reveal-content {
  width: 300px;
  /* height: 320px; */
  padding: 10px;
  background-color: #fff;
  opacity: 0;
  text-align: center;
  pointer-events: none;
  transition: opacity 0.01s ease-in-out;
}

.reveal-content img {
  width: 64px;
  opacity: 0;
  transition: width 0.01s ease-in-out, opacity 0.01s ease-in-out;
}

.reveal-content p {
  text-align: justify;
  /* margin: 10px 0; */
  color: #2d2d2d;
  margin-top: -20px;
  opacity: 0;
  transition: margin 0.01s ease-in-out, opacity 0.01s ease-in-out;
}

.reveal-hotspot:hover {
  width: 300px;
  height: 240px;
  border-radius: 5px;
  margin-left: -50px;
}

.reveal-hotspot:hover .reveal-content {
  opacity: 1;
  pointer-events: all;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  transition: opacity 0.3s ease-in-out 0.3s;
}

.reveal-hotspot:hover .reveal-content img {
  width: 160px;
  opacity: 1;
  transition: width 0.3s ease-in-out 0.4s, opacity 0.3s ease-in-out 0.4s;
}

.reveal-hotspot:hover .reveal-content p {
  margin-top: 10px;
  opacity: 1;
  transition: margin 0.3s ease-in-out 0.6s, opacity 0.3s ease-in-out 0.6s;
}

.card-custom-footer {
  text-align: justify;
}
.card-instructions {
  display: block;
  text-align: center;
  font-size: xx-small;
  color: darkgray;
  margin-top: 1rem;
  margin-bottom: 0.5rem;
}
.card-title {
  text-align: center;
  display: block;
  color: #25aae1;
}
.card-add-to-cart-button {
  display: block;
  text-align: center;
  margin-top: 10px;
}
.add-to-cart-button {
  visibility: visible;
  pointer-events: auto;
  outline: transparent;
  position: relative;
  -webkit-font-smoothing: antialiased;
  font-size: 14px;
  font-weight: 400;
  box-sizing: border-box;
  border: 1px solid transparent;
  display: inline-block;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  vertical-align: top;
  padding: 0px 16px;
  border-radius: 0px;
  min-width: 80px;
  height: 32px;
  background-color: rgb(0, 90, 158);
  color: rgb(255, 255, 255);
  user-select: none;
  font-family: inherit;
}

.card-loading-model {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
