.portfolio-header{text-align:left;margin-bottom:2rem}.page-title{font-size:2rem;font-weight:700;margin-bottom:.25rem}.page-subtitle{color:#888;font-size:.95rem}.portfolio-filters,.blog-controls{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,6%)}.filter-group,.control-group{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.filter-label,.control-label{font-size:.75rem;color:#666;text-transform:uppercase;letter-spacing:.05em;margin-right:.5rem}.filter-btn,.sort-btn{background:0 0;border:1px solid rgba(255,255,255,.1);color:#888;padding:6px 14px;border-radius:4px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s ease;font-family:inherit}.filter-btn:hover,.sort-btn:hover{border-color:rgba(255,255,255,.3);color:#fff}.filter-btn.active,.sort-btn.active{background:rgba(99,102,241,.15);border-color:rgba(99,102,241,.4);color:#a5b4fc}.portfolio-grid-full{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.featured-projects{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.project-card-full{background:0 0;border:1px solid rgba(255,255,255,8%);border-radius:8px;padding:1.5rem;display:flex;flex-direction:column;justify-content:space-between;transition:all .2s ease;min-height:200px;text-decoration:none}.project-card-full:hover{background:rgba(255,255,255,3%);border-color:rgba(99,102,241,.4);transform:translateY(-2px)}.project-card-inner{display:flex;flex-direction:column;flex-grow:1}.project-header-row{margin-bottom:.5rem}.project-title-clean{margin:0;font-size:1.2rem;font-weight:600;color:#fff;line-height:1.3}.project-title-clean a{color:inherit;text-decoration:none}.project-description-full{color:#999;font-size:.95rem;line-height:1.4;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.project-meta-row{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:.75rem;border-top:1px solid rgba(255,255,255,5%)}.project-topics{display:flex;gap:.5rem;flex-wrap:wrap}.topic-tag{font-size:.75rem;color:#777;background:rgba(255,255,255,5%);padding:2px 8px;border-radius:4px}.project-stats{display:flex;align-items:center;gap:.5rem}.stat-item{display:flex;align-items:center;gap:4px;font-size:.8rem;color:#666}.stat-item svg{width:14px;height:14px;opacity:.7}.icon-link:hover img,.icon-link:hover .nav-icon{filter:invert(1)brightness(1)!important;opacity:1}.project-card-full{background:var(--bg-secondary);border:1px solid rgba(255,255,255,5%);border-radius:8px;padding:.75rem;display:flex;flex-direction:column;justify-content:space-between;transition:all .3s ease;text-decoration:none}.project-card-full:hover{background:var(--bg-secondary);border-color:var(--accent);transform:translateY(-3px);box-shadow:0 8px 24px -8px var(--accent-glow)}.latest-posts{display:flex;flex-direction:column;gap:1.5rem}.post-row{background:var(--bg-secondary);border:1px solid rgba(255,255,255,5%);border-radius:12px;padding:.75rem;display:flex;justify-content:space-between;align-items:center;text-decoration:none;transition:all .2s ease}.post-row:hover{transform:translateY(-2px);border-color:var(--accent);box-shadow:0 4px 12px rgba(0,0,0,.1)}.post-info{display:flex;flex-direction:column;gap:.5rem}.post-date{font-size:.8rem;color:#666}.post-title{font-size:1.1rem;font-weight:600;margin:0;color:#fff}.post-arrow{color:#666;font-size:1.2rem;transition:transform .2s ease,color .2s ease}.post-row:hover .post-arrow{color:#a5b4fc;transform:translateX(4px)}