.case-study-card { background: white; border-radius: 12px; overflow: hidden; box-shadow: 0 4px 20px rgba(0,0,0,0.08); transition: all 0.3s ease; }
.case-study-card:hover { transform: translateY(-5px); box-shadow: 0 8px 30px rgba(0,0,0,0.15); }
.case-study-card img { width: 100%; height: 200px; object-fit: cover; }
.case-item > a { display: block; height: 100%; }
.case-item .case-study-card { height: 100%; }
.project-card-title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; line-height: 1.4; max-height: 2.8em; }
.project-card-excerpt { display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.solution-card { position: relative; overflow: hidden; border-radius: 12px; height: 280px; }
.solution-card img { width: 100%; height: 100%; object-fit: cover; transition: all 0.5s ease; }
.solution-card:hover img { transform: scale(1.1); }
.solution-overlay { position: absolute; bottom: 0; left: 0; right: 0; background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.5) 50%, transparent 100%); padding: 30px 20px 20px; color: white; }
.solution-overlay h4, .solution-overlay p { color: white; }
.grid-filter.style-2 li:not(.activeFilter) a:hover { color: #0a4d8c !important; }
.grid-filter.style-2 li.activeFilter a { background-color: #0a4d8c !important; border-color: #0a4d8c !important; }
