.ProjectFilter-module__odV8OW__filterContainer{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:30px;display:flex}.ProjectFilter-module__odV8OW__filterButton{border:1px solid var(--border-color);background-color:var(--surface-muted);color:var(--text-main);cursor:pointer;border-radius:999px;padding:9px 16px;font-size:.94rem;font-weight:600;transition:all .2s}.ProjectFilter-module__odV8OW__filterButton:hover{border-color:var(--brand-light);color:var(--brand-strong);background-color:#eff6ff}.ProjectFilter-module__odV8OW__active{background:linear-gradient(135deg,var(--brand-strong)0%,var(--brand)100%);color:#fff;border-color:#0000;box-shadow:0 8px 18px #2563eb40}
.ProjectCard-module__U_VZua__projectCard{background:var(--surface);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:12px;transition:transform .25s,box-shadow .25s,border-color .2s;overflow:hidden}.ProjectCard-module__U_VZua__projectCard:hover{box-shadow:var(--shadow-md);border-color:#2563eb52;transform:translateY(-7px)}.ProjectCard-module__U_VZua__cardLink{color:inherit;text-decoration:none;display:block}.ProjectCard-module__U_VZua__imageContainer{height:240px;position:relative;overflow:hidden}.ProjectCard-module__U_VZua__projectImage{object-fit:cover;transition:transform .45s}.ProjectCard-module__U_VZua__projectCard:hover .ProjectCard-module__U_VZua__projectImage{transform:scale(1.04)}.ProjectCard-module__U_VZua__imageOverlay{opacity:0;background:linear-gradient(#0000,#0f172a73);transition:opacity .25s;position:absolute;inset:0}.ProjectCard-module__U_VZua__projectCard:hover .ProjectCard-module__U_VZua__imageOverlay{opacity:1}.ProjectCard-module__U_VZua__cardContent{padding:1.05rem 1.05rem 1.15rem}.ProjectCard-module__U_VZua__projectTitle{color:var(--text-main);margin:0 0 .45rem;font-size:1.3rem}.ProjectCard-module__U_VZua__projectDescription{color:var(--text-soft);margin:0 0 .95rem;font-size:.95rem}.ProjectCard-module__U_VZua__projectMeta{justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.ProjectCard-module__U_VZua__projectCategory{background:linear-gradient(135deg,var(--brand-strong)0%,var(--brand)100%);color:#fff;border-radius:999px;padding:4px 11px;font-weight:600}.ProjectCard-module__U_VZua__projectYear{color:var(--text-muted);font-weight:600}
.styles-module__CmkWTa__portfolioPage{background:var(--bg-page)}.styles-module__CmkWTa__heroSection{height:460px;position:relative;overflow:hidden}.styles-module__CmkWTa__heroImage{object-fit:cover;object-position:center}.styles-module__CmkWTa__heroOverlay{text-align:center;background:linear-gradient(105deg,#0f172ac7,#2563eb66);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.styles-module__CmkWTa__heroContent{max-width:800px;padding:0 var(--page-gutter);color:#fff}.styles-module__CmkWTa__heroContent h1{color:#fff;margin-bottom:1rem;font-size:3rem;font-weight:700}.styles-module__CmkWTa__heroContent p{color:#ffffffeb;font-size:1.2rem}.styles-module__CmkWTa__projectsSection{background:var(--bg-section);padding:80px 0}.styles-module__CmkWTa__container{width:100%;max-width:1200px;padding:0 var(--page-gutter);margin:0 auto}.styles-module__CmkWTa__sectionHeader{text-align:center;margin-bottom:50px}.styles-module__CmkWTa__sectionHeader h2{color:var(--text-main);margin-bottom:.8rem;font-size:2.3rem}.styles-module__CmkWTa__sectionHeader p{color:var(--text-soft);font-size:1.08rem}.styles-module__CmkWTa__projectsGrid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:34px;display:grid}@media (max-width:768px){.styles-module__CmkWTa__projectsSection{padding:60px 0}.styles-module__CmkWTa__heroSection{height:400px}.styles-module__CmkWTa__heroContent h1{font-size:2.4rem}.styles-module__CmkWTa__projectsGrid{grid-template-columns:1fr}}@media (max-width:480px){.styles-module__CmkWTa__projectsSection{padding:48px 0}.styles-module__CmkWTa__heroSection{height:340px}.styles-module__CmkWTa__heroContent h1{font-size:2rem}.styles-module__CmkWTa__heroContent p{font-size:1rem}.styles-module__CmkWTa__sectionHeader h2{font-size:1.7rem}}
