.portfolio{color:#fff;background:#0a0a0f;flex-direction:column;min-height:100vh;display:flex;position:relative}.portfolio__gradient{z-index:0;background:radial-gradient(80% 50% at 50% -20%,#7832b426,#0000),radial-gradient(60% 40% at 80% 60%,#b432781a,#0000),linear-gradient(#0a0a0f 0%,#0f0f18 50%,#0a0a0f 100%);position:fixed;inset:0}.portfolio__noise{z-index:1;opacity:.02;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");position:fixed;inset:0}.portfolio__nav{z-index:10;justify-content:space-between;align-items:center;padding:24px 32px;display:flex;position:relative}.portfolio__nav-brand{text-decoration:none}.portfolio__nav-logo{background:linear-gradient(135deg,#c026d3,#7c3aed);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.125rem;font-weight:600}.portfolio__nav-link{color:#fff9;border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:6px;padding:10px 16px;font-size:.875rem;text-decoration:none;transition:color .2s,border-color .2s,background .2s;display:flex}.portfolio__nav-link:hover{color:#fff;background:#ffffff0d;border-color:#fff3}.portfolio__main{z-index:2;flex:1;width:100%;max-width:1200px;margin:0 auto;padding:0 32px 80px;position:relative}.portfolio__header{text-align:center;margin-bottom:48px}.portfolio__title{letter-spacing:-.03em;background:linear-gradient(135deg,#fff 0%,#ffffffd9 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 12px;font-size:clamp(2rem,6vw,3rem);font-weight:700}.portfolio__subtitle{color:#ffffff80;margin:0;font-size:1rem}.portfolio__empty{text-align:center;color:#ffffff80;padding:80px 24px}.portfolio__empty-hint{color:#ffffff59;margin-top:8px;font-size:.875rem}.portfolio__grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;display:grid}@media (max-width:600px){.portfolio__grid{grid-template-columns:1fr;gap:20px}.portfolio__main{padding:0 20px 60px}}.portfolio__card{color:inherit;background:#ffffff05;border:1px solid #ffffff0f;border-radius:16px;text-decoration:none;transition:border-color .3s,transform .3s,box-shadow .3s;display:block;overflow:hidden}.portfolio__card:hover{border-color:#ffffff1f;transform:translateY(-4px);box-shadow:0 20px 40px #0000004d}.portfolio__card-image{aspect-ratio:16/10;background:#ffffff08;position:relative;overflow:hidden}.portfolio__card-image img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.portfolio__card:hover .portfolio__card-image img{transform:scale(1.05)}.portfolio__card-overlay{pointer-events:none;background:linear-gradient(#0000 50%,#0006 100%);position:absolute;inset:0}.portfolio__card-placeholder{color:#fff3;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.portfolio__card-info{padding:20px}.portfolio__card-title{letter-spacing:-.01em;margin:0 0 6px;font-size:1.125rem;font-weight:600}.portfolio__card-desc{color:#ffffff80;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 12px;font-size:.875rem;line-height:1.5;display:-webkit-box;overflow:hidden}.portfolio__card-count{color:#fff6;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.portfolio__footer{z-index:2;text-align:center;color:#ffffff40;padding:24px;font-size:.75rem;position:relative}
