/* ==========================================================
   COLLECTION MODULE
========================================================== */

.vir-collection {
    padding: 60px 0;
    background: #f9f9f9;
}

/* ==========================================================
   COLLECTION GRID
========================================================== */

.vir-collection-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(280px, 1fr));

    gap: 30px;

    width: 100%;

    margin-top: 40px;
}


/* ==========================================================
   1 CARD
========================================================== */

.vir-collection-grid:has(.vir-collection-item:only-child) {
    grid-template-columns:
        minmax(280px, 1fr);

    width: calc(
        (100% - 60px) / 3
    );

    margin-left: auto;
    margin-right: auto;
}


/* ==========================================================
   2 CARDS
========================================================== */

.vir-collection-grid:has(
    .vir-collection-item:nth-child(2):last-child
) {
    grid-template-columns:
        repeat(2, minmax(280px, 1fr));

    width: calc(
        ((100% - 60px) / 3) * 2 + 30px
    );

    margin-left: auto;
    margin-right: auto;
}

.vir-collection-grid .vir-collection-item:only-child {
    grid-column: 2;
}
/* ----------------------------------------------------------
   COLLECTION ITEM
---------------------------------------------------------- */

.vir-collection-item {
    width: 100%;
    min-width: 300px;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow:        0 2px 10px rgba(0, 0, 0, 0.1);
    transition:        transform 0.3s ease,box-shadow 0.3s ease;
}

.vir-collection-item:hover {
    box-shadow:
        0 4px 20px rgba(0, 0, 0, 0.15);

    transform: translateY(-5px);
}

/* ----------------------------------------------------------
   4 / 5 KART DURUMUNDA ALT SATIRI ORTALA
---------------------------------------------------------- */

.vir-collection-item:nth-child(4):last-child {
    grid-column: 2;
}

.vir-collection-item:nth-child(4):nth-last-child(2) {
    grid-column: 1;
}

.vir-collection-item:nth-child(5):last-child {
    grid-column: 2;
}

/* ----------------------------------------------------------
   IMAGE
---------------------------------------------------------- */

.vir-collection-image {
    width: 100%;
    height: 250px;

    overflow: hidden;
}

.vir-collection-image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform 0.3s ease;
}

.vir-collection-item:hover
.vir-collection-image img {
    transform: scale(1.05);
}

/* ----------------------------------------------------------
   CONTENT
---------------------------------------------------------- */

.vir-collection-content {
    padding: 30px;
}

/* ----------------------------------------------------------
   SUBTITLE
---------------------------------------------------------- */

.vir-collection-subtitle {
    font-size: 14px;

    color: var(--color-accent);

    font-weight: 600;

    text-transform: uppercase;

    letter-spacing: 1px;

    margin-bottom: 10px;
}

/* ----------------------------------------------------------
   TITLE
---------------------------------------------------------- */

.vir-collection-title {
    font-size: 24px;

    color: var(--color-heading);

    font-weight: 700;

    margin-bottom: 15px;

    line-height: 1.3;
}

/* ----------------------------------------------------------
   DESCRIPTION
---------------------------------------------------------- */

.vir-collection-description {
    font-size: 14px;

    color: var(--color-muted);

    line-height: 1.6;

    margin-bottom: 20px;
}

.vir-collection-description p {
    margin-bottom: 10px;
}

.vir-collection-description p:last-child {
    margin-bottom: 0;
}


/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 992px) {

    .vir-collection-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    /*
     * Tablet'te 3. kartı tek başına bırakmamak
     * için normal grid akışı kullanılır.
     */
    .vir-collection-item:nth-child(4):last-child,
    .vir-collection-item:nth-child(4):nth-last-child(2),
    .vir-collection-item:nth-child(5):last-child {
        grid-column: auto;
    }
}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 768px) {

    .vir-collection {
        padding: 40px 0;
    }

    .vir-collection-grid {
        grid-template-columns: 1fr;

        gap: 20px;
    }

    /*
     * Mobilde özel grid konumlarını sıfırla.
     */
    .vir-collection-item:nth-child(4):last-child,
    .vir-collection-item:nth-child(4):nth-last-child(2),
    .vir-collection-item:nth-child(5):last-child {
        grid-column: auto;
    }

    .vir-collection-image {
        height: 200px;
    }

    .vir-collection-content {
        padding: 20px;
    }

    .vir-collection-title {
        font-size: 20px;
    }
}