/* Enhancements for the current salon_card() markup. */
.htp-public.htp-landing .htp-salon-hero__content > div:last-child {
  min-width: 0;
}

.htp-public.htp-landing .htp-salon-details > p {
  position: relative;
  min-height: 62px;
  margin: 0;
  padding: 13px 14px 13px 52px;
  border: 1px solid #ece7e9;
  border-radius: 16px;
  background: #fcfafb;
  color: #344054;
  font-size: 14px;
  line-height: 1.48;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.htp-public.htp-landing .htp-salon-details > p:hover {
  border-color: #ead0d8;
  box-shadow: 0 8px 22px rgba(91,24,46,.07);
  transform: translateY(-1px);
}

.htp-public.htp-landing .htp-salon-details > p::before {
  content: "";
  position: absolute;
  left: 13px;
  top: 12px;
  width: 32px;
  height: 32px;
  border-radius: 10px;
  background-color: #fff1f4;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 17px 17px;
}

.htp-public.htp-landing .htp-salon-details > p:nth-child(1)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%239f1239' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 5-8 11-8 11S4 15 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
}

.htp-public.htp-landing .htp-salon-details > p:nth-child(2)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%239f1239' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.79 19.79 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.12.9.33 1.78.62 2.63a2 2 0 0 1-.45 2.11L8 9.73a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.85.29 1.73.5 2.63.62A2 2 0 0 1 22 16.92Z'/%3E%3C/svg%3E");
}

.htp-public.htp-landing .htp-salon-details > p:nth-child(3)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%239f1239' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
}

.htp-public.htp-landing .htp-salon-details > p:nth-child(4)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%239f1239' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 3h6v6'/%3E%3Cpath d='M10 14 21 3'/%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3C/svg%3E");
}

.htp-public.htp-landing .htp-salon-details > p strong {
  display: block;
  margin-bottom: 2px;
  color: #98a2b3;
  font-size: 10px;
  line-height: 1.3;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.htp-public.htp-landing .htp-salon-details > p a {
  color: #172033;
  font-weight: 750;
  text-decoration: none;
}

.htp-public.htp-landing .htp-salon-details > p a:hover {
  color: #9f1239;
}

.htp-public.htp-landing .htp-salon-details > p:last-child a {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  color: #9f1239;
  font-weight: 800;
}

/* If no logo is configured, keep title balanced instead of leaving the hero visually empty. */
.htp-public.htp-landing .htp-salon-hero__content:not(:has(.htp-salon-logo))::before {
  content: "MY";
  flex: 0 0 72px;
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  border-radius: 22px;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.30);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 12px 26px rgba(0,0,0,.14);
  color: #fff;
  font-size: 20px;
  font-weight: 900;
  letter-spacing: -.03em;
  backdrop-filter: blur(8px);
}

@media (max-width:679px) {
  .htp-public.htp-landing .htp-salon-hero__content:not(:has(.htp-salon-logo))::before {
    flex-basis: 58px;
    width: 58px;
    height: 58px;
    border-radius: 17px;
    font-size: 17px;
  }

  .htp-public.htp-landing .htp-salon-details > p {
    min-height: 58px;
    padding: 12px 12px 12px 49px;
  }

  .htp-public.htp-landing .htp-salon-details > p::before {
    left: 11px;
    top: 11px;
    width: 31px;
    height: 31px;
  }
}
