.projects_heroSection__mqY8X{text-align:center;margin-bottom:3.5rem;padding:2rem 0}.projects_mainTitle___riIY{font-size:clamp(2rem,5vw,3.5rem);font-weight:800;background:linear-gradient(135deg,var(--primary) 0,#0056b3 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem;letter-spacing:-.5px}.projects_heroDescription__jrnyr{font-size:1.1rem;color:var(--text-secondary);max-width:600px;margin:0 auto;line-height:1.8}.projects_sectionHeader__bdUwD{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.projects_sectionTitle__fGnxC{font-size:clamp(1.5rem,4vw,2rem);font-weight:700;color:var(--text-primary);margin:0}.projects_sectionDivider__yNL7w{flex:1 1;height:3px;background:linear-gradient(90deg,var(--primary) 0,transparent 100%);border-radius:2px}.projects_featuredSection__fjIzB{margin-bottom:4rem;padding:2rem;background:linear-gradient(135deg,rgba(0,123,255,.05),rgba(0,86,179,.05));border-radius:16px;border:1px solid rgba(0,123,255,.1)}.projects_featuredGrid__JSJ97{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));grid-gap:2rem;gap:2rem}.projects_projectCardFeatured__L1Vyy{box-shadow:0 8px 32px rgba(0,123,255,.15);border:1px solid rgba(0,123,255,.2)}.projects_projectsGrid__dwGgH{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:2.5rem;gap:2.5rem;margin-top:2rem}.projects_projectsSection__gy_tn{margin-bottom:3rem}.projects_projectCard__7As1M{background:var(--card-background);border-radius:16px;overflow:hidden;box-shadow:0 4px 12px var(--shadow);transition:all .4s cubic-bezier(.23,1,.32,1);border:1px solid rgba(0,123,255,.05);display:flex;flex-direction:column;height:100%}.projects_projectCard__7As1M:hover{transform:translateY(-8px);box-shadow:0 12px 24px rgba(0,123,255,.2);border-color:rgba(0,123,255,.2)}.projects_projectImageWrapper__oYJzy{position:relative;overflow:hidden;flex-shrink:0}.projects_projectImage__Hyi9q{width:100%;height:220px;overflow:hidden;background:linear-gradient(135deg,#f0f0f0,#e0e0e0);position:relative}.projects_projectImage__Hyi9q img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.23,1,.32,1)}.projects_projectCard__7As1M:hover .projects_projectImage__Hyi9q img{transform:scale(1.08)}.projects_imageOverlay__SP2kf{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.3));opacity:0;transition:opacity .3s ease;display:flex;align-items:flex-start;justify-content:flex-end;padding:.75rem}.projects_projectCard__7As1M:hover .projects_imageOverlay__SP2kf{opacity:1}.projects_featuredBadge__8ngLH{background:linear-gradient(135deg,#007bff,#0056b3);color:white;padding:.4rem .8rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px rgba(0,123,255,.3)}.projects_projectContent__qgqVk{padding:1.75rem;display:flex;flex-direction:column;flex-grow:1}.projects_projectHeader__uANSQ{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.projects_projectTitle__QsUU0{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.3;word-break:break-word}.projects_categoryBadge___oE7b{flex-shrink:0;background:linear-gradient(135deg,rgba(0,123,255,.1),rgba(0,86,179,.1));color:var(--primary);padding:.3rem .7rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize;white-space:nowrap;border:1px solid var(--primary)}.projects_projectDescription__8JXd_{color:var(--text-secondary);line-height:1.6;margin-bottom:1rem;font-size:.95rem;flex-grow:1}.projects_techStack__BO0zb{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.5rem}.projects_techTag__3F3aT{display:inline-flex;align-items:center;gap:.4rem;background:linear-gradient(135deg,rgba(0,123,255,.08),rgba(0,86,179,.08));color:var(--text-secondary);padding:.4rem .8rem;border-radius:16px;font-size:.8rem;font-weight:500;border:1px solid rgba(0,123,255,.12);transition:all .2s ease}.projects_techTag__3F3aT:hover{background:linear-gradient(135deg,rgba(0,123,255,.15),rgba(0,86,179,.15));border-color:rgba(0,123,255,.3);transform:translateY(-2px)}.projects_techDot__jJFcB{width:5px;height:5px;background:var(--primary);border-radius:50%;display:inline-block}.projects_projectLinks__HBjmN{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:auto}.projects_projectLink__P9mXe{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:linear-gradient(135deg,var(--primary) 0,#0056b3 100%);color:white;padding:.65rem 1.2rem;border-radius:24px;text-decoration:none;font-size:.9rem;font-weight:600;transition:all .3s cubic-bezier(.23,1,.32,1);border:none;cursor:pointer;box-shadow:0 4px 12px rgba(0,123,255,.3);overflow:hidden;position:relative}.projects_projectLink__P9mXe:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.projects_projectLink__P9mXe:hover:before{left:100%}.projects_projectLink__P9mXe:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,123,255,.4)}.projects_projectLink__P9mXe span:last-child{transition:transform .3s ease}.projects_projectLink__P9mXe:hover span:last-child{transform:translateX(2px)}.projects_sourceLink___lsMq{background:linear-gradient(135deg,#6c757d,#5a6268);box-shadow:0 4px 12px rgba(108,117,125,.2)}.projects_sourceLink___lsMq:hover{box-shadow:0 6px 16px rgba(108,117,125,.3)}.projects_linkArrow__7BuDF{font-size:1rem;transition:transform .3s ease}.projects_filterSection__IwCaL{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;margin:3rem 0;padding:1.5rem;background:linear-gradient(135deg,rgba(0,123,255,.03),rgba(0,86,179,.03));border-radius:12px;border:1px solid rgba(0,123,255,.08)}.projects_filterLabel__gskxm{font-weight:600;color:var(--text-primary);white-space:nowrap}.projects_filterButtons__PfTxK{display:flex;flex-wrap:wrap;gap:.6rem}.projects_filterButton__sEg0o{background:var(--card-background);color:var(--text-secondary);border:1px solid rgba(0,123,255,.1);padding:.6rem 1.2rem;border-radius:20px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.projects_filterButton__sEg0o:hover{border-color:var(--primary);color:var(--primary)}.projects_filterButtonActive__ZrjUC{background:linear-gradient(135deg,var(--primary) 0,#0056b3 100%);color:white;border-color:transparent;box-shadow:0 4px 12px rgba(0,123,255,.3)}.projects_loading__Xsths{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;min-height:400px;color:var(--text-secondary)}.projects_loadingSpinner__2ZBmG{width:48px;height:48px;border:4px solid rgba(0,123,255,.1);border-top:4px solid var(--primary);border-radius:50%;animation:projects_spin__d1_ER .8s linear infinite;margin-bottom:1rem}@keyframes projects_spin__d1_ER{to{transform:rotate(1turn)}}.projects_emptyState__CUp35{text-align:center;padding:3rem 2rem;color:var(--text-secondary);background:linear-gradient(135deg,rgba(0,123,255,.03),rgba(0,86,179,.03));border-radius:12px;border:2px dashed rgba(0,123,255,.2)}@media (max-width:1024px){.projects_projectsGrid__dwGgH{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}.projects_featuredGrid__JSJ97{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.projects_heroSection__mqY8X{padding:1.5rem 0;margin-bottom:2.5rem}}@media (max-width:768px){.projects_projectsGrid__dwGgH{grid-template-columns:1fr;gap:1.5rem}.projects_featuredGrid__JSJ97{grid-template-columns:1fr}.projects_mainTitle___riIY{font-size:2rem;margin-bottom:.75rem}.projects_projectCard__7As1M{border-radius:12px}.projects_projectImage__Hyi9q{height:180px}.projects_projectContent__qgqVk{padding:1.25rem}.projects_projectTitle__QsUU0{font-size:1.1rem}.projects_projectLinks__HBjmN{flex-direction:column;gap:.6rem}.projects_projectLink__P9mXe{width:100%;justify-content:center;padding:.7rem 1rem}.projects_filterSection__IwCaL{flex-direction:column;align-items:flex-start;gap:1rem}.projects_filterButtons__PfTxK{width:100%;justify-content:flex-start}.projects_sectionHeader__bdUwD{flex-direction:column;align-items:flex-start;gap:.5rem}.projects_sectionDivider__yNL7w{width:100%;max-width:100px}}@media (max-width:480px){.projects_heroSection__mqY8X{padding:1rem 0;margin-bottom:1.5rem}.projects_mainTitle___riIY{font-size:1.5rem}.projects_heroDescription__jrnyr{font-size:.95rem}.projects_projectImage__Hyi9q{height:150px}.projects_projectContent__qgqVk{padding:1rem}.projects_techStack__BO0zb{gap:.4rem}.projects_techTag__3F3aT{font-size:.7rem;padding:.3rem .6rem}.projects_filterButtons__PfTxK{gap:.4rem}.projects_filterButton__sEg0o{padding:.5rem .9rem;font-size:.85rem}}[data-theme=dark] .projects_projectCard__7As1M{border-color:rgba(0,200,255,.08)}[data-theme=dark] .projects_projectCard__7As1M:hover{border-color:rgba(0,200,255,.15);box-shadow:0 12px 24px rgba(0,200,255,.15)}[data-theme=dark] .projects_techTag__3F3aT{background:linear-gradient(135deg,rgba(0,200,255,.08),rgba(0,150,255,.08));border-color:rgba(0,200,255,.15)}[data-theme=dark] .projects_techTag__3F3aT:hover{background:linear-gradient(135deg,rgba(0,200,255,.15),rgba(0,150,255,.15))}[data-theme=dark] .projects_categoryBadge___oE7b{background:linear-gradient(135deg,rgba(0,200,255,.1),rgba(0,150,255,.1));color:#0dcaf0;border-color:#0dcaf0}[data-theme=dark] .projects_featuredSection__fjIzB{background:linear-gradient(135deg,rgba(0,200,255,.05),rgba(0,150,255,.05));border-color:rgba(0,200,255,.1)}[data-theme=dark] .projects_filterSection__IwCaL{background:linear-gradient(135deg,rgba(0,200,255,.03),rgba(0,150,255,.03));border-color:rgba(0,200,255,.08)}