.h5-service-hero {
  width: 100%;
  aspect-ratio: 4 / 3;
  max-height: 280px;
  border-radius: var(--radius-lg);
  overflow: hidden;
  margin-bottom: var(--space-lg);
  background: var(--color-bg-muted);
}

.h5-service-hero-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.h5-service-status {
  font-size: var(--font-body);
  color: var(--color-text-secondary);
  margin-bottom: var(--space-xs);
}

.h5-service-detail-text {
  font-size: var(--font-body);
  color: var(--color-text-secondary);
  margin: 0;
  white-space: pre-wrap;
}

.h5-bullet-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.h5-bullet-list li::before {
  content: '·';
  margin-right: var(--space-xs);
  color: var(--color-text-tertiary);
}

.h5-bullet-list li {
  font-size: var(--font-body);
  color: var(--color-text-secondary);
  margin-bottom: var(--space-xs);
  padding-left: 0;
  text-indent: 0;
  line-height: var(--line-height-article);
}

.h5-store-link-card {
  display: block;
  padding: var(--space-lg);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-bg-card);
  color: inherit;
  text-decoration: none;
}

.h5-store-link-card:active,
.h5-store-link-card:hover {
  border-color: var(--color-primary);
}

.h5-store-link-title {
  font-size: var(--font-h3);
  font-weight: 600;
  margin: 0 0 var(--space-xs);
}

.h5-store-link-meta {
  font-size: var(--font-caption);
  color: var(--color-text-secondary);
  margin: 0 0 var(--space-xs);
}

.h5-store-link-action {
  font-size: var(--font-caption);
  color: var(--color-primary);
  margin: var(--space-sm) 0 0;
}

.h5-btn[disabled] {
  opacity: 0.45;
  cursor: not-allowed;
}
