.recrm-showcase-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:0;
    width:100%;
    margin:0;
    overflow:hidden;
    align-items:stretch;
}

.recrm-showcase-card{
    position:relative;
    min-width:0;
    height:560px;
}

.recrm-showcase-link{
    position:relative;
    display:block;
    width:100%;
    height:100%;
    overflow:hidden;
}

.recrm-showcase-media{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    overflow:hidden;
    background:#111;
}

.recrm-showcase-media img{
    position:absolute;
    top:50%;
    left:50%;
    min-width:100%;
    min-height:100%;
    width:auto;
    height:auto;
    max-width:none;
    display:block;
    transform:translate(-50%, -50%);
    transition:transform .45s ease;
}

.recrm-showcase-overlay{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    top:auto;
    height:48%;
    z-index:1;
    pointer-events:none;

    background:linear-gradient(
        to top,
        rgba(0,0,0,.95) 0%,
        rgba(0,0,0,.85) 20%,
        rgba(0,0,0,.65) 45%,
        rgba(0,0,0,.25) 70%,
        rgba(0,0,0,0) 100%
    );
}

.recrm-showcase-content{
    position:absolute;
    left:52px;
    right:24px;
    bottom:52px;
    z-index:2;
}

.recrm-showcase-title{
    margin:0 0 6px;
    color:#fff;
    font-size:18px;
    line-height:1.2;
    font-weight:700;

    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.recrm-showcase-location{
    margin:0;
    color:rgba(255,255,255,.95);
    font-size:16px;
    line-height:1.35;
    font-weight:500;
}

.recrm-showcase-link:hover .recrm-showcase-media img{
    transform:translate(-50%, -50%) scale(1.05);
}

@media (max-width:1100px){
    .recrm-showcase-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .recrm-showcase-card{
        height:440px;
    }

    .recrm-showcase-content{
        left:28px;
        right:20px;
        bottom:28px;
    }

    .recrm-showcase-title{
        font-size:22px;
    }
}

@media (max-width:767px){
    .recrm-showcase-grid{
        grid-template-columns:1fr;
    }

    .recrm-showcase-card{
        height:340px;
    }

    .recrm-showcase-content{
        left:20px;
        right:20px;
        bottom:20px;
    }

    .recrm-showcase-title{
        font-size:20px;
        -webkit-line-clamp:2;
    }

    .recrm-showcase-location{
        font-size:14px;
    }
}

.recrm-showcase-title{
    font-size:20px;
    line-height:1.2;
    font-weight:700;

    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}