/* ── Shared collection card styles — single source of truth ── */

.coll-card {
  border-radius: 12px;
  padding: 28px 28px 24px;
  min-height: 263px;
  display: flex; flex-direction: column; justify-content: space-between;
  text-decoration: none;
  position: relative; overflow: hidden;
  isolation: isolate;
  transition: transform 0.2s, box-shadow 0.2s;
}
.coll-card:hover { transform: translateY(-3px); box-shadow: 0 20px 48px rgba(0,0,0,0.3); }
.coll-overlay { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.coll-inner, .coll-arrow { position: relative; z-index: 3; }
.coll-count {
  font-size: 0.68rem; font-weight: 600; letter-spacing: 2px;
  text-transform: uppercase; opacity: 0.6; margin-bottom: 10px;
}
.coll-title {
  font-family: 'Outfit', sans-serif;
  font-size: 1.4rem; font-weight: 700; line-height: 1.15;
  margin-bottom: 8px;
}
.coll-title-row { display: flex; align-items: center; gap: 12px; min-height: 80px; margin-bottom: 8px; }
.coll-title-row .coll-title { margin-bottom: 0; }
.coll-tagline { font-size: 0.8rem; opacity: 0.68; line-height: 1.45; max-width: 260px; }
.coll-arrow {
  position: relative; z-index: 3;
  align-self: flex-end;
  font-size: 1rem; opacity: 0.45; margin-top: 20px;
  transition: opacity 0.15s, transform 0.15s;
}
.coll-card:hover .coll-arrow { opacity: 1; transform: translateX(5px); }

/* ── Per-collection text colour & special deco ── */
.coll-hidden-history { color: #e8dcc8; }
.coll-hidden-history .coll-title { font-style: italic; }
.coll-hidden-history .coll-count { color: #c8a86a; opacity: 1; }
.coll-championship .coll-count { color: #c9a84c; opacity: 1; }
.coll-monsters { color: #e8d0d0; }
.coll-monsters .coll-count { color: #e74c3c; opacity: 1; }
.coll-monsters .coll-deco {
  width: 80px; opacity: 0.92; flex-shrink: 0;
  filter: drop-shadow(0 0 12px rgba(200,0,0,0.7));
  transition: opacity 0.2s, filter 0.2s;
  position: relative; z-index: 4;
}
.coll-card.coll-monsters:hover .coll-deco {
  opacity: 1;
  filter: drop-shadow(0 0 22px rgba(220,0,0,0.95));
}

/* ── Course detail strip overrides ── */
.coll-strip-card {
  flex-shrink: 0; width: 260px; min-height: 200px;
  border-radius: 10px; overflow: hidden;
  clip-path: inset(0 round 10px);
}
.coll-strip-card .coll-title-row { min-height: auto; margin-bottom: 4px; }
.coll-strip-card .coll-title { font-size: 1.05rem; margin-bottom: 4px; }
.coll-strip-card .coll-title-row img { height: 32px !important; width: auto !important; }
.coll-strip-card .coll-tagline { font-size: 0.70rem;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.coll-strip-card .coll-deco { width: 40px !important; }
