/* Portfolio page specific styles (minimal additions; relies on base.css) */

.hero--portfolio {
  position: relative;
  padding-block: var(--space-14) var(--space-12);
  background: linear-gradient(180deg, rgba(11,13,16,0.2) 0%, rgba(11,13,16,0.85) 70%), url('/assets/images/portfolio-hero.webp') center/cover no-repeat;
}
.hero--portfolio .hero__tagline { color: var(--color-text-muted); max-width: 60ch; }
.hero--portfolio .hero__actions { margin-top: var(--space-5); display: flex; gap: var(--space-3); flex-wrap: wrap; }

.section__header { margin-bottom: var(--space-6); }
.section__intro { color: var(--color-text-muted); }
.section__cta { margin-top: var(--space-6); }

.filters { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-bottom: var(--space-6); }
.filter-btn.is-active { background: var(--color-primary); color: #121212; border-color: transparent; }

.portfolio-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--space-6); }
.portfolio-card { padding: 0; overflow: hidden; display: flex; flex-direction: column; }
.portfolio-card__media { aspect-ratio: 16 / 9; overflow: hidden; }
.portfolio-card__media img { width: 100%; height: 100%; object-fit: cover; }
.portfolio-card__content { padding: var(--space-5); display: grid; gap: var(--space-3); }
.portfolio-card__meta { display: flex; gap: var(--space-2); align-items: center; }
.portfolio-card__title { margin: 0; font-size: var(--fs-xl); }
.portfolio-card__actions { margin-top: var(--space-2); }

/* Process timeline */
.process-steps { display: grid; gap: var(--space-5); counter-reset: step; }
.process-steps li { position: relative; padding-left: var(--space-6); }
.process-steps li::before { content: ''; position: absolute; left: 0; top: 0.25rem; width: 10px; height: 10px; border-radius: var(--radius-full); background: var(--color-primary); box-shadow: 0 0 0 3px rgba(230,179,90,0.25); }
.process-steps li + li { border-top: 1px solid rgba(255,255,255,0.08); padding-top: var(--space-4); }
.process-steps h3 { margin: 0 0 var(--space-2) 0; font-size: var(--fs-lg); }

/* Awards */
.awards-list { display: grid; gap: var(--space-4); margin-top: var(--space-4); }
.awards-list .card { padding: var(--space-4) var(--space-5); }

/* Clients */
.clients-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: var(--space-4); margin-top: var(--space-4); }
.client { padding: var(--space-4); background: var(--color-elevated); border: 1px solid rgba(255,255,255,0.08); border-radius: var(--radius-md); text-align: center; color: var(--color-text-muted); }

/* Contact CTA */
.contact-cta { display: grid; gap: var(--space-3); align-items: start; }
.contact-cta__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); }

@media (min-width: 900px) {
  .hero--portfolio { padding-block: var(--space-16) var(--space-14); }
}
