/* ============================================
   INSPIRE AGENCY — Portfolio Page Styles
   pages/portfolio.css
   ============================================ */

/* =====================
   PORTFOLIO HERO
   ===================== */

.portfolio-hero {
  padding-top: calc(var(--nav-height) + var(--space-2xl));
  padding-bottom: var(--space-xl);
  border-bottom: var(--border-rule);
}

.portfolio-hero__headline {
  font-size: clamp(48px, 8vw, 80px);
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.0;
  color: var(--color-text-primary);
  max-width: 14ch;
  margin-bottom: var(--space-sm);
}

.portfolio-hero__sub {
  font-size: var(--font-size-md);
  color: var(--color-text-secondary);
  max-width: 48ch;
}

/* =====================
   FILTER BAR
   ===================== */

.portfolio-filter {
  padding-block: var(--space-md);
  border-bottom: var(--border-rule);
  position: sticky;
  top: var(--nav-height);
  background-color: var(--color-bg);
  z-index: 10;
  backdrop-filter: blur(10px);
}

.portfolio-filter__inner {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  flex-wrap: wrap;
}

.filter-btn {
  padding: 8px 18px;
  border-radius: 100px;
  border: 1px solid var(--color-border);
  font-size: var(--font-size-sm);
  font-weight: 500;
  color: var(--color-text-secondary);
  cursor: pointer;
  transition: all var(--duration-fast) ease;
  background: none;
}

.filter-btn:hover {
  border-color: var(--color-text-primary);
  color: var(--color-text-primary);
}

.filter-btn.active {
  background-color: var(--color-text-primary);
  border-color: var(--color-text-primary);
  color: var(--color-bg);
}

/* =====================
   PORTFOLIO GRID
   ===================== */

.portfolio-section {
  padding-block: var(--space-xl);
}

.portfolio-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-sm);
}

.portfolio-card-wrapper {
  transition: opacity var(--duration-base) ease;
}

.portfolio-card-wrapper.hidden {
  display: none;
}

.portfolio-card__meta {
  padding-top: var(--space-xs);
}

.portfolio-card__client {
  font-size: var(--font-size-base);
  font-weight: 600;
  color: var(--color-text-primary);
  margin-bottom: 4px;
}

.portfolio-card__result {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
}

.portfolio-card__tags-row {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 6px;
}

@media (max-width: 900px) {
  .portfolio-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

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