/* HPR Contact Card - Fixed Position */
.hpr-contact-card {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 999999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 10px;
  gap: 12px;
  background-color: #FFFFFF1A;
  border-radius: 88px;
  box-shadow: 0px 4px 20px 0px #0000000F;
  box-shadow: 0px -4px 20px 0px #0000000F;
  margin-bottom: 32px;
  margin-right: 32px;
}

/* Social Container - Each Icon */
.hpr-social-container {
  width: 44px;
  height: 44px;
  border-radius: 88px;
  background-color: #FFFFFF33;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  transition: all 0.3s ease;
  cursor: pointer;
}

.hpr-social-container:active {
  transform: scale(0.9);
}

/* Social Icon Images */
.hpr-social-img {
  width: 32px;
  height: 32px;
  object-fit: contain;
  transition: all 0.3s ease;
}

/* Hover Effects for each type */
.hpr-line:hover {
  background-color: #00B900 !important;
  transform: scale(1.15) !important;
  border-radius: 88px !important;
  box-shadow: 0 4px 15px rgba(0, 185, 0, 0.4) !important;
}

.hpr-kakao:hover {
  background-color: #FEE500 !important;
  transform: scale(1.15) !important;
  border-radius: 88px !important;
  box-shadow: 0 4px 15px rgba(254, 229, 0, 0.4) !important;
}

.hpr-phone:hover {
  background-color: #C32423 !important;
  transform: scale(1.15) !important;
  border-radius: 88px !important;
  box-shadow: 0 4px 15px rgba(195, 36, 35, 0.4) !important;
}

.hpr-email:hover {
  background-color: #2196F3 !important;
  transform: scale(1.15) !important;
  border-radius: 88px !important;
  box-shadow: 0 4px 15px rgba(33, 150, 243, 0.4) !important;
}

/* Hover animation for icon */
.hpr-social-container:hover .hpr-social-img {
  animation: hpr-slide-in 0.3s ease both;
}

@keyframes hpr-slide-in {
  0% {
    transform: translateY(30px);
    opacity: 0;
  }

  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

/* Dim other icons when one is hovered */
.hpr-contact-card:has(.hpr-social-container:hover) .hpr-social-container:not(:hover) {
  opacity: 0.4;
}

/* Scrolled state - after scrolling 30px */
.hpr-contact-card.hpr-scrolled {
  background-color: #FFFFFF;
  box-shadow: 0px 4px 20px 0px #0000000F;
  box-shadow: 0px -4px 20px 0px #0000000F;
}

.hpr-contact-card.hpr-scrolled .hpr-social-container {
  background-color: #F2F3F5;
}

/* Hide on mobile (< 1440px) */
@media (max-width: 1439px) {
  .hpr-contact-card {
    display: none !important;
  }
}