/* Service Card Block - Dynamically loaded */
.service-card {
  background-color: #fff;
  overflow: hidden;
  transition: background-color 0.3s;
}

.service-card--clickable { cursor: pointer; }
.service-card--clickable:hover { background-color: #f9fafb; }

.service-card__link {
  display: block;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

.service-card__image {
  overflow: hidden;
  aspect-ratio: 16 / 9;
  position: relative;
}

.service-card__content { margin-top: 1rem; }
.service-card__title { margin-bottom: 0.75rem; font-weight: 700; }
.service-card__description { margin-bottom: 1rem; color: hsl(var(--muted-foreground)); }

.service-card__item { padding: 1rem 0; }
.service-card__item:first-child { padding-top: 0.5rem; }
.service-card__item--divider { border-bottom: 1px solid #e5e7eb; }

.service-card__item-header {
  display: flex;
  align-items: first baseline;
  justify-content: space-between;
  gap: 1rem;
}

.service-card__item-header--inline { align-items: baseline; gap: 0.5rem; }

.service-card__item-name-wrap {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex: 1;
}

.service-card__item-name { font-size: 1.125rem; font-weight: 700; }
.service-card__item--inline .service-card__item-name { white-space: nowrap; }

.service-card__item-price { font-size: 1.125rem; font-weight: 600; white-space: nowrap; }
@media (min-width: 768px) {
  .service-card__item-price { font-size: 1.25rem; }
}
@media (min-width: 1024px) {
  .service-card__item-price { font-size: 1.5rem; }
}

.service-card__item-dots {
  flex: 1;
  min-width: 20px;
  border-bottom: 2px dotted #d1d5db;
  transform: translateY(-4px);
}

.service-card__item-badge {
  font-size: 0.75rem;
  color: #fff;
  padding: 0.125rem 0.5rem;
  border-radius: 9999px;
  font-weight: 500;
  white-space: nowrap;
}

.service-card__item-desc {
  margin-top: 0.375rem;
  font-size: 1.125rem;
  line-height: 1.6;
  color: #000;
}

.service-card__button { margin-top: 1.5rem; }
