/* Portfolio - uses existing ZIVEET tokens */
.pf-filters{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 2rem;align-items:end}
.pf-filters label{display:block;font-size:.75rem;color:var(--zv-ink-soft);margin-bottom:4px}
.pf-filters input,.pf-filters select{min-width:200px;padding:.6rem .8rem;border:1px solid var(--zv-line);border-radius:6px;background:#fff;font-size:.95rem}
.pf-count{color:var(--zv-ink-soft);font-size:.9rem;margin-bottom:1rem}
.pf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}
.pf-card{background:#fff;border:1px solid var(--zv-line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s var(--zv-ease),box-shadow .3s var(--zv-ease);text-decoration:none!important;color:inherit}
.pf-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(13,27,53,.12)}
.pf-card-img{aspect-ratio:16/10;background:linear-gradient(135deg,var(--zv-navy),var(--zv-navy-light));display:flex;align-items:center;justify-content:center;color:var(--zv-gold-light);font-family:var(--zv-font-display);font-size:1.6rem;padding:1rem;text-align:center}
.pf-card-img img{width:100%;height:100%;object-fit:cover;object-position:top}
.pf-card-body{padding:1.25rem 1.4rem 1.4rem;display:flex;flex-direction:column;flex:1}
.pf-card-body h3{font-size:1.2rem;margin:.4rem 0 .5rem;color:var(--zv-navy)}
.pf-card-body p{color:var(--zv-ink-soft);font-size:.95rem;flex:1}
.pf-card-foot{display:flex;justify-content:space-between;font-size:.8rem;color:var(--zv-ink-soft);border-top:1px solid var(--zv-line);padding-top:.8rem;margin-top:.8rem}
.pf-card-foot b{color:var(--zv-gold);font-weight:600}
.pf-empty{display:none;padding:2rem;border:1px dashed var(--zv-line);border-radius:8px;color:var(--zv-ink-soft)}
.pf-tags{display:flex;flex-wrap:wrap;gap:8px;margin:1rem 0}
.pf-tag{font-size:.8rem;border:1px solid var(--zv-line);padding:.25rem .7rem;border-radius:999px;background:#fff;color:var(--zv-ink)}
.pf-hero-img{border:1px solid var(--zv-line);border-radius:12px;background:var(--zv-ivory);padding:1.5rem;margin:2rem 0}
.pf-hero-img img{width:100%;height:auto;border-radius:6px;display:block;box-shadow:0 8px 30px rgba(13,27,53,.15)}
.pf-layout{display:grid;grid-template-columns:240px 1fr;gap:3rem;margin-top:2rem}
.pf-side{position:sticky;top:110px;align-self:start;font-size:.9rem}
.pf-side dt{font-size:.72rem;color:var(--zv-ink-soft);text-transform:uppercase;letter-spacing:.05em;margin-top:.9rem}
.pf-side dd{margin:0;color:var(--zv-navy);font-weight:600}
.pf-side nav a{display:block;padding:.25rem 0;color:var(--zv-ink-soft)}
.pf-side nav a:hover{color:var(--zv-gold)}
.pf-section{padding:1.6rem 0;border-top:1px solid var(--zv-line)}
.pf-section:first-child{border-top:0;padding-top:0}
.pf-section h2{font-size:1.6rem;margin-bottom:.8rem}
.pf-section ul{padding-left:1.2rem}
.pf-section li{margin-bottom:.45rem}
.pf-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin:1rem 0}
.pf-metric{background:var(--zv-navy);color:#fff;border-radius:10px;padding:1.2rem}
.pf-metric b{display:block;font-family:var(--zv-font-display);font-size:1.9rem;color:var(--zv-gold-light)}
.pf-cta{background:var(--zv-navy);color:#fff;border-radius:12px;padding:2.2rem;margin-top:2.5rem}
.pf-cta h2{color:#fff}
.pf-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.pf-gallery img{width:100%;border-radius:8px;border:1px solid var(--zv-line)}
@media(max-width:900px){.pf-layout{grid-template-columns:1fr;gap:1.5rem}.pf-side{position:static}.pf-filters input,.pf-filters select{min-width:0;width:100%}.pf-filters>div{flex:1 1 100%}}
