/* itshover.com animated icons — ported to pure CSS/WAAPI for Arock */

.ih-icon-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  flex-shrink: 0;
  margin-right: 7px;
  position: relative;
  top: -1px;
}

.ih-icon-wrap svg {
  display: block;
  overflow: visible;
}

/* ── Phone wave pulse ─────────────────────────────────────────────── */
@keyframes ih-wave {
  0%   { transform: scale(1);    opacity: 0.7; }
  50%  { transform: scale(1.22); opacity: 1;   }
  100% { transform: scale(1);    opacity: 0.7; }
}

.ih-icon-wrap .ih-phone-wave-inner,
.ih-icon-wrap .ih-phone-wave-outer {
  transform-box: fill-box;
  transform-origin: center;
}

.ih-icon-wrap.ih-hover .ih-phone-wave-inner {
  animation: ih-wave 0.42s ease-in-out;
}

.ih-icon-wrap.ih-hover .ih-phone-wave-outer {
  animation: ih-wave 0.48s ease-in-out 0.1s;
}

/* ── Map pin beacon ───────────────────────────────────────────────── */
@keyframes ih-pin-pulse {
  0%, 100% { opacity: 1;   }
  50%       { opacity: 0.3; }
}

.ih-icon-wrap.ih-hover .ih-pin-dot {
  animation: ih-pin-pulse 0.6s ease-in-out infinite;
}

/* ── Mail flap fold ───────────────────────────────────────────────── */
.ih-mail-flap {
  transform-box: fill-box;
  transform-origin: center top;
  transition: transform 0.4s ease-in-out;
}

.ih-icon-wrap.ih-hover .ih-mail-flap {
  transform: scaleY(0);
}

/* ── Sparkles spin ────────────────────────────────────────────────── */
.ih-sparkle-main {
  transform-box: fill-box;
  transform-origin: center;
  transition: transform 0.6s ease-in-out;
}

.ih-sparkle-top {
  transform-box: fill-box;
  transform-origin: center;
  transition: transform 0.5s ease-in-out 0.1s;
}

.ih-sparkle-bottom {
  transform-box: fill-box;
  transform-origin: center;
  transition: transform 0.5s ease-in-out 0.05s;
}

.ih-icon-wrap.ih-hover .ih-sparkle-main   { transform: rotate(180deg) scale(1.2);  }
.ih-icon-wrap.ih-hover .ih-sparkle-top    { transform: rotate(-90deg) scale(1.1);  }
.ih-icon-wrap.ih-hover .ih-sparkle-bottom { transform: rotate(90deg)  scale(1.15); }

/* ── Home pop-in ──────────────────────────────────────────────────── */
@keyframes ih-roof-pop {
  from { transform: translateY(-3px); opacity: 0.6; }
  to   { transform: translateY(0);    opacity: 1;   }
}

@keyframes ih-walls-pop {
  from { transform: scale(0.94); }
  to   { transform: scale(1);    }
}

@keyframes ih-door-grow {
  from { transform: scaleY(0); }
  to   { transform: scaleY(1); }
}

.ih-home-roof {
  transform-box: fill-box;
  transform-origin: center;
}

.ih-home-walls {
  transform-box: fill-box;
  transform-origin: center;
}

.ih-home-door {
  transform-box: fill-box;
  transform-origin: center bottom;
}

.ih-icon-wrap.ih-hover .ih-home-roof  { animation: ih-roof-pop  0.4s ease-out        both; }
.ih-icon-wrap.ih-hover .ih-home-walls { animation: ih-walls-pop 0.3s ease-out        both; }
.ih-icon-wrap.ih-hover .ih-home-door  { animation: ih-door-grow 0.3s ease-out 0.3s  both; }

/* ── Send button icon ─────────────────────────────────────────────── */
.ih-btn-icon {
  display: inline-flex;
  align-items: center;
  margin-left: 9px;
  vertical-align: middle;
  position: relative;
  top: -1px;
}

.ih-btn-icon svg {
  display: block;
  overflow: visible;
}

/* ── Clock hands spin ─────────────────────────────────────────────── */
.ih-clock-hands {
  transform-box: view-box;
  transform-origin: 50% 50%;
  transition: transform 1s ease-in-out;
}

.ih-icon-wrap.ih-hover .ih-clock-hands {
  transform: rotate(360deg);
}

/* ── Checked mark (WAAPI handles the draw; CSS handles the pulse) ─── */
.ih-check-svg {
  transform-box: fill-box;
  transform-origin: center;
}

/* ── Ensure list items with icons align properly ─────────────────── */
.elementor-icon-list-item a {
  display: inline-flex;
  align-items: center;
}
