.projects-container{min-height:100vh;padding:120px 5vw;position:relative;background:linear-gradient(180deg,#000000,#0a0a0a);overflow:hidden}.projects-header{text-align:center;margin-bottom:4rem;position:relative}.projects-title{font-size:4rem;font-weight:700;background:linear-gradient(90deg,#fff,#888);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:1rem}.projects-subtitle{font-size:1.2rem;color:rgba(255,255,255,.7);max-width:600px;margin:0 auto}.projects-categories{display:flex;justify-content:center;gap:1rem;margin-bottom:4rem;flex-wrap:wrap}.category-button{padding:.75rem 1.5rem;border:1px solid rgba(255,255,255,.1);border-radius:50px;background:rgba(255,255,255,.05);color:rgba(255,255,255,.7);font-size:.9rem;cursor:pointer;transition:all .3s ease;backdrop-filter:blur(10px)}.category-button:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);transform:translateY(-2px)}.category-button.active{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.3);color:white;box-shadow:0 0 20px rgba(255,255,255,.1)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:2rem;padding:0 2rem}.project-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);border-radius:20px;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative}.project-card:hover{transform:translateY(-10px);border-color:rgba(255,255,255,.1);box-shadow:0 20px 40px rgba(0,0,0,.4)}.project-image-container{position:relative;width:100%;height:250px;overflow:hidden}.project-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.project-card:hover .project-image{transform:scale(1.1)}.project-image-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.8));z-index:1}.project-info{padding:2rem;position:relative;z-index:2}.project-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.project-title{font-size:1.5rem;font-weight:600;color:white;margin:0}.project-year{font-size:.9rem;color:rgba(255,255,255,.5);padding:.25rem .75rem;background:rgba(255,255,255,.05);border-radius:15px}.project-description{color:rgba(255,255,255,.7);font-size:.95rem;line-height:1.6;margin-bottom:1.5rem}.project-tech-stack{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tech-tag{padding:.35rem .75rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;font-size:.8rem;color:rgba(255,255,255,.8)}.project-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:transparent;border:1px solid rgba(255,255,255,.1);border-radius:50px;color:white;font-size:.9rem;cursor:pointer;transition:all .3s ease}.project-button:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2)}.project-button .button-icon{width:16px;height:16px;transition:transform .3s ease}.project-button:hover .button-icon{transform:rotate(45deg)}.custom-cursor{position:fixed;width:80px;height:80px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:50%;pointer-events:none;display:flex;align-items:center;justify-content:center;color:white;font-size:.9rem;backdrop-filter:blur(4px);transition:opacity .3s ease;z-index:1000}@media (max-width:1200px){.projects-title{font-size:3rem}}@media (max-width:768px){.projects-container{padding:100px 1rem}.projects-title{font-size:2.5rem}.projects-grid{grid-template-columns:1fr;padding:0}.category-button{padding:.5rem 1rem;font-size:.8rem}.project-card{margin:0 1rem}.custom-cursor{display:none}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}