/* Override project-specific gradient */
:root {
    --theme-gradient-blue: linear-gradient(180deg, #ffffff 0%, #E5E7F5 50%, #D3D6EF 100%);
    --theme-gradient-portfolio: linear-gradient(135deg, #405189 0%, #7A8DE5 100%);
}
.service-link {
    position: relative;
    font-weight: 600;
    color: #000;
    text-decoration: none;
}

.service-link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    height: 2px;
    background: linear-gradient(135deg, #405189, #6570C0);
    border-radius: 3px;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .3s ease;
}

.service-link:hover::after {
    transform: scaleX(1);
}

.masonry-gallery {
    column-count: 3;
    column-gap: 20px;
}

.masonry-item {
    break-inside: avoid;
    margin-bottom: 20px;
}

.gallery-img {
    width: 100%;
    border-radius: 12px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.08);
    transition: transform .3s ease, box-shadow .3s ease;
}

.gallery-img:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 30px rgba(0,0,0,0.12);
}

@media (max-width: 992px) {
    .masonry-gallery { column-count: 2; }
}
@media (max-width: 576px) {
    .masonry-gallery { column-count: 1; }
}
