#mainRecentProjectList .card-blog-list-media {
    overflow: hidden;
}

#mainRecentProjectList .card-blog-list-media .media,
#mainRecentProjectList .card-blog-list-media .media a {
    display: block;
    width: 100%;
    height: 100%;
}

#mainRecentProjectList .card-blog-list-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.main-project-popup {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px 16px;
}

.main-project-popup.is-open {
    display: flex;
}

.main-project-popup-bg {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.78);
}

.main-project-popup-box {
    position: relative;
    width: min(1100px, calc(100% - 32px));
    max-height: calc(100vh - 48px);
    overflow-y: auto;
    margin: 0 auto;
    border: 4px solid #fff;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.45);
}

.main-project-popup-box img {
    display: block;
    width: 100%;
    max-height: calc(100vh - 190px);
    object-fit: contain;
    background: #111;
}

.main-project-popup-info {
    padding: 22px 26px 26px;
}

.main-project-popup-info h3 {
    margin: 0 0 8px;
}

.main-project-popup-info p {
    margin: 0;
    color: #5d666f;
    white-space: pre-line;
}

.main-project-popup-close {
    position: absolute;
    top: 18px;
    right: 18px;
    z-index: 2;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: #f2f2f2;
    color: #20282d;
    font-size: 24px;
    line-height: 34px;
    cursor: pointer;
}
