.projects-grid-page{min-height:100vh;padding-top:120px;padding-bottom:6rem}.projects-hero{max-width:900px;margin:0 auto 4rem;padding:0 2rem;animation:projFadeUp .8s ease-out both;text-align:center;display:flex;flex-direction:column;align-items:center}.projects-hero .hero-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:#ffffff59;margin-bottom:1.5rem}.projects-hero .hero-title{font-family:Outfit,sans-serif;font-size:clamp(2.5rem,6vw,4rem);font-weight:800;color:#fff;line-height:1.1;letter-spacing:-.03em;margin-bottom:1.5rem}.projects-hero .hero-accent{background:linear-gradient(135deg,#8b5cf6,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.projects-hero .hero-description{font-size:1.15rem;color:#ffffff80;line-height:1.7;max-width:500px;margin:0 auto}.projects-grid{max-width:100%;margin:0 auto;padding:0 4rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:2rem}.project-card{position:relative;display:flex;flex-direction:column;height:100%;border-radius:20px;color:inherit;transition:transform .4s cubic-bezier(.4,0,.2,1);animation:projFadeUp .6s ease-out forwards;animation-delay:calc(var(--index) * .1s);opacity:0}.project-card:hover{transform:translateY(-8px) scale(1.02)}.project-card .card-glow{position:absolute;inset:-2px;border-radius:22px;background:linear-gradient(135deg,#8b5cf680,#3b82f680,#ec489980);opacity:0;transition:opacity .4s ease;z-index:-1;filter:blur(15px)}.project-card:hover .card-glow{opacity:.6}.project-card .card-inner{position:relative;overflow:hidden;border-radius:20px;background:linear-gradient(135deg,#ffffff14,#ffffff05);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff1a;transition:all .4s ease;display:flex;flex-direction:column;flex:1}.project-card:hover .card-inner{border-color:#8b5cf680;background:linear-gradient(135deg,#0009,#0006);box-shadow:0 16px 48px #00000080,inset 0 1px #ffffff26}.project-card .card-image{position:relative;width:100%;height:200px;overflow:hidden}.project-card .card-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1)}.project-card:hover .card-image img{transform:scale(1.1)}.project-card .image-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 0%,rgba(11,14,20,.8) 100%)}.project-card .card-content{padding:1.5rem;display:flex;flex-direction:column;flex:1}.project-card .tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.project-card .tag{display:inline-block;padding:.25rem .75rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#8b5cf6;background:#8b5cf626;border:1px solid rgba(139,92,246,.3);border-radius:100px;transition:all .3s ease}.project-card:hover .tag{background:#8b5cf640;border-color:#8b5cf680}.project-card .card-title{font-size:1.4rem;font-weight:700;color:#fff;margin-bottom:.75rem;line-height:1.3}.project-card .title-link{text-decoration:none;color:inherit}.project-card:hover .card-title{text-shadow:0 0 20px rgba(139,92,246,.8),0 0 40px rgba(139,92,246,.4)}.project-card .card-description{font-size:.95rem;line-height:1.6;color:#fff9;margin-bottom:1.25rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;transition:color .3s ease}.project-card:hover .card-description{color:#ffffffd9}.project-card .card-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto}.project-card .action-link{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.8rem;font-weight:600;border-radius:100px;text-decoration:none;transition:all .3s ease}.project-card .details-link{color:#fff9;background:#ffffff0f;border:1px solid rgba(255,255,255,.08)}.project-card .details-link:hover{color:#fff;background:#ffffff1f;border-color:#fff3}.project-card .github-link{color:#ffffffb3;background:#ffffff0f;border:1px solid rgba(255,255,255,.08)}.project-card .github-link:hover{color:#fff;background:#8b5cf626;border-color:#8b5cf64d}.project-card .demo-link{color:#8b5cf6e6;background:#8b5cf61a;border:1px solid rgba(139,92,246,.2)}.project-card .demo-link:hover{background:#8b5cf633;border-color:#8b5cf666;color:#fff}@keyframes projFadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes toggleFadeIn{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media(max-width:768px){.projects-grid-page{padding-top:100px}.projects-hero{padding:0 1.25rem;margin-bottom:3rem}.projects-grid{padding:0 1.25rem;grid-template-columns:1fr}.project-card .card-title{font-size:1.2rem}.project-card .card-description{font-size:.9rem}.project-card .card-image{height:160px}}
