@charset "utf-8";

/* ============================================================
   Home · Produkt-Grid
   ============================================================ */
.products { background: var(--bg); }

.product-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.product-card {
    background: var(--surface);
    border: 1px solid var(--line);
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    display: flex;
    flex-direction: column;
}
.product-card:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-md);
    border-color: var(--line-strong);
}

.product-media {
    display: block;
    aspect-ratio: 3 / 2;
    overflow: hidden;
    background: var(--bg-strong);
}
.product-media img {
    width: 100%; height: 100%; object-fit: cover;
    transition: transform .5s ease;
}
.product-card:hover .product-media img { transform: scale(1.04); }

.product-body { padding: 22px 24px 26px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.product-body h3 { color: var(--ink); }
.product-body p { flex: 1; }

.link-more {
    font-weight: 600;
    color: var(--accent);
    align-self: flex-start;
    padding: 2px 0;
    border-bottom: 1px solid transparent;
}
.link-more:hover { border-bottom-color: var(--accent); }

.products-hint {
    margin-top: 40px;
    text-align: center;
    color: var(--ink-mute);
    font-size: .95rem;
}

.about { background: var(--bg-alt); }

@media (max-width: 960px) {
    .product-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 620px) {
    .product-grid { grid-template-columns: 1fr; }
}
