/* Custom Project Layouts */
.modal-body.stroy2017 {
    display: grid;
    grid-template-areas:
        "desc gallery"
        "btn gallery";
    grid-template-columns: 1fr 140px;
    /* Text takes most space, gallery fixed width */
    gap: 30px;
    align-items: start;
    padding-right: 20px;
}

.modal-body.stroy2017 #modal-desc {
    grid-area: desc;
    padding-right: 0;
}

.modal-body.stroy2017 .store-btn-container {
    grid-area: btn;
    margin-top: 0 !important;
    margin-bottom: 20px !important;
}

.modal-body.stroy2017 .modal-gallery {
    grid-area: gallery;
    margin-top: 0;
    max-height: 100%;
    /* Or auto */
    padding-top: 10px;
    /* Align slightly */
}

/* Ensure gallery title is hidden or small for this layout */
.modal-body.stroy2017 .gallery-title {
    display: none;
    /* Hide 'Screenshots' title to save space */
}

/* Vertical Gallery Grid */
.modal-body.stroy2017 .gallery-grid {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

/* Small Thumbnail Images */
.modal-body.stroy2017 .gallery-item img {
    width: 100%;
    height: auto;
    /* Maintain aspect ratio */
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: transform 0.2s;
    cursor: pointer;
}

.modal-body.stroy2017 .gallery-item img:hover {
    transform: scale(1.05);
    border-color: var(--accent-primary);
}

/* Responsive: Stack on mobile */
@media (max-width: 768px) {
    .modal-body.stroy2017 {
        grid-template-columns: 1fr;
        grid-template-areas:
            "desc"
            "btn"
            "gallery";
    }

    .modal-body.stroy2017 .modal-gallery {
        margin-top: 20px;
    }

    .modal-body.stroy2017 .gallery-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        /* 3 cols on mobile */
        gap: 10px;
    }

    .modal-body.stroy2017 .gallery-title {
        display: block;
        /* Show title on mobile */
    }
}