/* Portfolio Grid Styles */

/* Container */
.portfolio-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
    margin: 2rem 0;
}

/* Individual Item */
.portfolio-item {
    background: var(--bg-surface);
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    transition: transform var(--transition-base), box-shadow var(--transition-base);
    display: flex;
    align-items: stretch;
    justify-content: stretch;
}

.portfolio-item:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
}

/* Media (images & videos) */
.portfolio-item img,
.portfolio-item video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Aspect ratios based on orientation */
.portfolio-item.landscape {
    aspect-ratio: 4 / 3;
}

.portfolio-item.portrait {
    aspect-ratio: 3 / 4;
}

.portfolio-item.video {
    aspect-ratio: 16 / 9;
}

/* Optional: make video controls fit nicely */
.portfolio-item video {
    background: var(--bg-surface);
}
