.portfolio-hero{text-align:center;padding-bottom:2rem}.portfolio-hero-copy{max-width:52rem;margin-inline:auto;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.portfolio-hero-copy h1{font-family:var(--font-display);font-size:clamp(2.6rem,5.5vw,4.2rem);font-weight:800;line-height:1.1;letter-spacing:-.035em;margin:0}.filter-pill-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;justify-content:center;margin-top:1rem}.filter-pill{padding:.6rem 1.2rem;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--text-muted);font-size:.88rem;font-weight:600;cursor:pointer;transition:all var(--transition)}.filter-pill:hover{border-color:var(--border-hover);color:var(--text)}.filter-pill.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 4px 16px var(--primary-glow)}.portfolio-deep-grid{display:flex;flex-direction:column;gap:3rem}.project-deep-card{display:grid;grid-template-columns:1.1fr 1fr;grid-gap:2.5rem;gap:2.5rem;padding:2.5rem;border-radius:var(--radius-lg);align-items:center}.project-mockup-frame{border-radius:var(--radius-md);background:var(--surface-strong);border:1px solid var(--border);overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.4);display:flex;flex-direction:column}.mockup-header-bar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.2rem;background:var(--surface);border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:.75rem}.window-dots{display:flex;gap:.4rem}.window-dots .dot{width:9px;height:9px;border-radius:50%}.window-dots .dot.red{background:#ff5f56}.window-dots .dot.yellow{background:#ffbd2e}.window-dots .dot.green{background:#27c93f}.mockup-url{color:var(--text-soft)}.mockup-status{color:#10b981;font-weight:600}.mockup-screen-content{padding:2rem;background:radial-gradient(circle at top right,var(--primary-glow) 0,var(--surface-soft) 70%);flex-direction:column;gap:1.5rem;min-height:240px}.mockup-screen-content,.mockup-screen-top{display:flex;justify-content:space-between}.mockup-screen-top{align-items:center}.mockup-tag{font-size:.76rem;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.06em}.mockup-live-indicator{display:inline-flex;align-items:center;gap:.4rem;font-size:.74rem;color:#10b981;font-weight:600}.mockup-data-preview{display:flex;flex-direction:column;gap:.8rem}.mockup-data-preview strong{font-family:var(--font-display);font-size:1.3rem;font-weight:700;color:var(--text)}.mockup-stats-split{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.m-stat-box{padding:.8rem;border-radius:var(--radius-xs);background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column;gap:.2rem}.m-stat-box span{font-size:.72rem;color:var(--text-soft)}.m-stat-box strong{font-family:var(--font-display);font-size:1.05rem;color:var(--primary)}.mockup-chart-bars{display:flex;align-items:flex-end;gap:.5rem;height:48px;padding-top:.5rem}.mockup-chart-bars span{flex:1 1;border-radius:4px;background:linear-gradient(180deg,var(--primary),rgba(255,87,34,.2))}.project-content-body{display:flex;flex-direction:column;gap:1.2rem}.project-meta-row{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.client-badge{font-size:.84rem;color:var(--text-soft);font-weight:500}.project-content-body h3{font-family:var(--font-display);font-size:1.55rem;font-weight:700;margin:0;line-height:1.25}.problem-solution-block{gap:.8rem;padding:1.2rem;border-radius:var(--radius-sm);background:var(--surface-soft);border:1px solid var(--border)}.problem-solution-block,.ps-row{display:flex;flex-direction:column}.ps-row{gap:.25rem}.ps-label{font-size:.76rem;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.05em}.ps-row p{margin:0;font-size:.88rem;color:var(--text-muted);line-height:1.6}.project-metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.8rem;gap:.8rem}.p-metric-card{padding:.9rem;border-radius:var(--radius-xs);background:var(--surface-strong);border:1px solid var(--border);text-align:center;display:flex;flex-direction:column;gap:.2rem}.p-metric-card strong{font-family:var(--font-display);font-size:1.2rem;color:#10b981}.p-metric-card span{font-size:.74rem;color:var(--text-soft)}.project-tech-row{display:flex;flex-wrap:wrap;gap:.45rem}.mockup-app-icon{width:44px;height:44px;border-radius:10px;object-fit:cover;box-shadow:0 4px 14px rgba(0,0,0,.25);border:1px solid var(--border)}.mockup-play-cta{margin-top:.6rem}.mockup-gp-badge{display:inline-flex;align-items:center;gap:.55rem;padding:.65rem 1.2rem;background:#0f172a;color:#ffffff!important;border-radius:999px;font-size:.82rem;font-weight:600;text-decoration:none;border:1px solid rgba(255,255,255,.15);transition:all var(--transition)}.mockup-gp-badge:hover{background:#1e293b;transform:translateY(-2px);border-color:#34d399;box-shadow:0 6px 20px rgba(0,0,0,.3)}.gp-icon-white{color:#34d399;font-size:1.05rem}.ext-icon-sm{font-size:.72rem;opacity:.8;margin-left:.2rem}.project-action-row{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap;margin-top:.5rem}.case-action-btn{font-size:.9rem;padding:.8rem 1.4rem}@media (max-width:1024px){.project-deep-card{grid-template-columns:1fr}}@media (max-width:600px){.project-deep-card{padding:1.6rem}.project-metrics-grid{grid-template-columns:1fr}}