.hm-rise { animation: hm-rise 0.6s ease both; }
@keyframes hm-rise { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .hm-rise { animation: none; } }

.hm-type { margin: 0.25rem 0 0.5rem; }
.hm-type img { max-width: 100%; height: auto; display: block; }
.hm-lead { font-size: 1.05rem; line-height: 1.7; opacity: 0.9; max-width: 62ch; margin: 0.5rem 0 1rem; }

.hm-badges { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 1rem 0; }
.hm-badges img { height: 28px; width: auto; }

.hm-pills { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 1rem 0 1.25rem; }
.hm-pill { padding: 0.25rem 0.85rem; border-radius: 999px; font-size: 0.85rem;
  border: 1px solid color-mix(in srgb, var(--accent-color, #0d9488) 45%, transparent);
  background: color-mix(in srgb, var(--accent-color, #0d9488) 10%, transparent); }

.hm-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 0.75rem; margin: 1.25rem 0 2rem; }
.hm-stat { padding: 0.9rem 0.75rem; border-radius: 14px; transition: transform 0.15s ease, border-color 0.15s ease;
  border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
  background: color-mix(in srgb, currentColor 4%, transparent); }
.hm-stat:hover { transform: translateY(-3px); border-color: var(--accent-color, #0d9488); }
.hm-stat b { display: block; font-size: 1.5rem; color: var(--accent-color, #0d9488); }
.hm-stat span { font-size: 0.85rem; opacity: 0.8; }
