/* ── INTRO ───────────────────────────────────────── */
.hi {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-weight: 800;
  font-size: clamp(3.2rem, 11vw, 7.5rem);
  letter-spacing: -0.04em;
  line-height: 0.92;
  margin-bottom: 2.25rem;
}

.hi .wave {
  display: inline-block;
  animation: wave 2.5s ease-in-out infinite;
  transform-origin: 70% 70%;
}

@keyframes wave {

  0%,
  100% {
    transform: rotate(0deg);
  }

  25% {
    transform: rotate(18deg);
  }

  75% {
    transform: rotate(-6deg);
  }
}

.hi .pop {
  color: var(--pop);
}

.intro-p {
  font-size: 1rem;
  color: var(--dim);
  line-height: 1.85;
  max-width: 580px;
  margin-bottom: 3.5rem;
}

.intro-p a {
  color: var(--pop);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-color 0.2s;
}

.intro-p a:hover {
  border-color: var(--pop);
}

.intro-p strong {
  color: var(--ink);
  font-weight: 500;
}

/* ── FILTER TABS (removed) ───────────────────────── */

/* ── CARD GRID ───────────────────────────────────── */
.card-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.card {
  text-decoration: none;
  color: inherit;
  border-radius: 10px;
  border: 1px solid var(--border);
  overflow: hidden;
  background: var(--bg2);
  transition: border-color 0.2s, transform 0.2s;
}

.card:hover {
  border-color: var(--pop);
  transform: translateY(-2px);
}

.card-img {
  width: 100%;
  aspect-ratio: 460 / 215;
  background: var(--faint);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s;
}

.card:hover .card-img img {
  transform: scale(1.03);
}

.card-body {
  padding: 0.85rem 1rem;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.5rem;
}

.card-name {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-weight: 700;
  font-size: 0.95rem;
  letter-spacing: -0.01em;
  color: var(--ink);
}

.card-meta {
  font-size: 0.65rem;
  color: var(--faint);
  white-space: nowrap;
  font-weight: 500;
}

/* ── MOBILE ──────────────────────────────────────── */
@media (max-width: 1000px) {
  .card-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
  }
}

@media (max-width: 600px) {
  .card-grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 0.75rem;
  }
}

@media (max-width: 380px) {
  .card-grid {
    grid-template-columns: 1fr;
  }
}

/* ── NOW BLOCK ───────────────────────────────────── */
.now-block {
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 1.4rem 1.5rem;
  font-size: 0.9rem;
  color: var(--dim);
  line-height: 1.85;
}

.now-block strong {
  color: var(--ink);
  font-weight: 500;
}

/* ── FACTS ───────────────────────────────────────── */
.facts {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.fact-line {
  font-size: 0.9rem;
  color: var(--dim);
  gap: 0.75rem;
  align-items: baseline;
}

.fact-line::before {
  content: '—';
  color: var(--faint);
  flex-shrink: 0;
}

.fact-line a {
  color: var(--pop);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-color 0.2s;
}

.fact-line a:hover {
  border-color: var(--pop);
}

/* ── CONTACT LINKS ───────────────────────────────── */
.contact-note {
  font-size: 0.9rem;
  color: var(--dim);
  line-height: 1.85;
  margin-bottom: 1.25rem;
}

.links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
}

.link-pill {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-weight: 500;
  font-size: 0.85rem;
  padding: 0.4rem 1rem;
  border: 1px solid var(--border);
  border-radius: 999px;
  color: var(--dim);
  text-decoration: none;
  letter-spacing: 0.01em;
  display: inline-block;
  transition: transform 0.15s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.15s, border-color 0.15s;
}

.link-pill:hover {
  color: var(--pop);
  border-color: var(--pop);
  transform: scale(1.06) rotate(-1deg);
}

.link-pill:active {
  transform: scale(0.97);
}

/* ── MOBILE ──────────────────────────────────────── */
@media (max-width: 650px) {
  .hi {
    font-size: clamp(2.8rem, 16vw, 4rem);
  }
}