#projects{min-height:calc(100vh - 80px)}#projects::before{background:linear-gradient(135deg,#1e3a5f 0,#2c5282 100%)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.project-card{background:var(--card);border-radius:15px;overflow:hidden;transition:all .3s ease;border:1px solid rgba(255,255,255,.1);cursor:pointer}.project-card:hover{transform:translateY(-10px);box-shadow:0 15px 40px rgba(0,0,0,.3);border-color:var(--accent)}.project-image-container{position:relative;width:100%;height:200px;overflow:hidden;background:rgba(255,255,255,.05)}.project-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.project-card:hover .project-image{transform:scale(1.1)}.project-content{padding:1.5rem}.project-title{font-size:1.5rem;margin-bottom:.5rem;color:var(--accent)}.project-description{opacity:.8;margin-bottom:1rem;line-height:1.6}.project-tech{display:flex;gap:.5rem;flex-wrap:wrap}.tech-tag{background:rgba(37,99,235,.2);color:var(--accent);padding:.3rem .8rem;border-radius:20px;font-size:.875rem;border:1px solid rgba(6,182,212,.3)}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.8);z-index:2000;padding:2rem;overflow-y:auto}.modal.active{display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.modal-content{background:var(--card);border-radius:20px;max-width:800px;width:100%;position:relative;animation:slideUp .3s ease}.modal-close{position:absolute;top:1rem;right:1rem;background:rgba(255,255,255,.1);border:none;color:var(--text);font-size:2rem;width:40px;height:40px;border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;line-height:1}.modal-close:hover{background:rgba(255,255,255,.2);transform:rotate(90deg)}.modal-body{padding:2rem}.modal-title{font-size:2rem;margin-bottom:1rem;color:var(--accent)}.modal-tech{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}.modal-desc{opacity:.8;line-height:1.8;font-size:1.1rem}@media (max-width:768px){.projects-grid{grid-template-columns:1fr}.modal{padding:1rem}.modal-body{padding:1.5rem}}