/* --- HappySites Custom Brand Emojis --- */
.hs-emoji {
  display: inline-block;
  vertical-align: -0.22em;
  width: 1.25em;
  height: 1.25em;
  object-fit: contain;
  pointer-events: none;
  user-select: none;
  filter: drop-shadow(1px 1.5px 0px rgba(45, 52, 54, 0.12));
  transition: transform 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

/* Hover micro-animation */
a:hover .hs-emoji,
button:hover .hs-emoji,
.package-card:hover .hs-emoji,
.pricing-card:hover .hs-emoji,
.reaction-btn:hover .hs-emoji,
.mini-react-btn:hover .hs-emoji {
  transform: scale(1.18) rotate(6deg);
}

.hs-emoji-xs {
  width: 1em;
  height: 1em;
  vertical-align: -0.15em;
}

.hs-emoji-sm {
  width: 1.15em;
  height: 1.15em;
  vertical-align: -0.18em;
}

.hs-emoji-lg {
  width: 1.6em;
  height: 1.6em;
  vertical-align: -0.28em;
}

.hs-emoji-xl {
  width: 2.2em;
  height: 2.2em;
  vertical-align: -0.32em;
}

/* Background floating decorators */
.bg-decorator .hs-emoji {
  width: 1em;
  height: 1em;
  vertical-align: middle;
  filter: drop-shadow(2px 3px 0px rgba(45, 52, 54, 0.15));
}

/* Card top icons */
.card-top-icon .hs-emoji {
  width: 52px;
  height: 52px;
  vertical-align: middle;
}

/* Badges & Ribbons */
.popular-ribbon .hs-emoji,
.popular-badge .hs-emoji {
  width: 15px;
  height: 15px;
  vertical-align: -0.15em;
  margin-right: 4px;
}

.hero-badge .hs-emoji {
  width: 22px;
  height: 22px;
  vertical-align: -0.2em;
  margin-right: 6px;
}

.section-header-pill .hs-emoji {
  width: 18px;
  height: 18px;
  vertical-align: -0.2em;
  margin-right: 5px;
}

.result-badge .hs-emoji {
  width: 16px;
  height: 16px;
  vertical-align: -0.2em;
  margin-right: 4px;
}

/* Stat numbers */
.stat-num .hs-emoji {
  width: 1.1em;
  height: 1.1em;
  vertical-align: -0.15em;
  margin-right: 3px;
}

/* Pricing / package selection badges */
.badge .hs-emoji {
  width: 28px;
  height: 28px;
  vertical-align: middle;
}

/* Step icons */
.step-icon-wrap .hs-emoji {
  width: 36px;
  height: 36px;
  vertical-align: middle;
}

.step-tag .hs-emoji {
  width: 15px;
  height: 15px;
  vertical-align: -0.18em;
  margin-right: 4px;
}

/* Perks list */
.perk-icon .hs-emoji {
  width: 32px;
  height: 32px;
  vertical-align: middle;
}

/* Reactions */
.reaction-emoji .hs-emoji {
  width: 24px;
  height: 24px;
  vertical-align: -0.2em;
}

.mini-react-btn .hs-emoji {
  width: 16px;
  height: 16px;
  vertical-align: -0.18em;
  margin-right: 4px;
}

/* Testimonials */
.t-avatar .hs-emoji {
  width: 34px;
  height: 34px;
  vertical-align: middle;
}

/* Quiz options */
.quiz-opt .hs-emoji {
  width: 22px;
  height: 22px;
  margin-right: 8px;
  vertical-align: -0.25em;
}

/* Toast */
.toast-icon .hs-emoji {
  width: 28px;
  height: 28px;
  vertical-align: middle;
}

/* Marquee / banner */
.marquee-track .hs-emoji {
  width: 1.15em;
  height: 1.15em;
  vertical-align: -0.18em;
  margin-right: 5px;
}

/* Buttons */
.pulse-btn .hs-emoji,
.btn-primary .hs-emoji,
.btn-secondary .hs-emoji,
.btn-accent .hs-emoji {
  width: 1.15em;
  height: 1.15em;
  vertical-align: -0.18em;
  margin-right: 4px;
}

/* Floating party widget */
.party-toggle-btn .hs-emoji {
  width: 20px;
  height: 20px;
  vertical-align: -0.2em;
  margin-right: 4px;
}

/* Success Flow Icons */
.email-alert-icon .hs-emoji {
  width: 38px;
  height: 38px;
  vertical-align: middle;
}

.success-celebration-pill .hs-emoji {
  width: 18px;
  height: 18px;
  vertical-align: -0.2em;
  margin-right: 5px;
}

.brand-badge .hs-emoji {
  width: 16px;
  height: 16px;
  vertical-align: -0.15em;
  margin-right: 5px;
}

.package-tag .hs-emoji {
  width: 19px;
  height: 19px;
  vertical-align: -0.22em;
  margin-right: 4px;
}

.site-preview-icon .hs-emoji {
  width: 48px;
  height: 48px;
  vertical-align: middle;
}

.hero-icon-lg .hs-emoji {
  width: 72px;
  height: 72px;
  vertical-align: middle;
}

.table-check-icon {
  width: 20px;
  height: 20px;
  vertical-align: middle;
  display: inline-block;
}

