﻿
.df-grid-wrap {
    margin: 0;
    padding: 2rem;
    max-width: 1100px;
    margin: auto;
}

/* Force 3 columns by default */
.df-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}

/* Mobile: only 1 column below 768px */
@@media (max-width: 768px) {
    .df-grid {
        grid-template-columns: 1fr;
    }
}

.df-card {
    display: block;
    text-decoration: none;
    color: #000;
    background: #f8f9fa;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

    .df-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 10px 25px rgba(0,0,0,0.20);
    }

.df-thumb img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    display: block;
}

.df-caption {
    padding: 0.8rem 1rem;
}

.df-title {
    font-weight: bold;
    font-size: 1.1rem;
}

.df-meta {
    color: #555;
    font-size: 0.9rem;
}
