/* =========================================
   WORK.CSS — work.html uniquement
   Grille de cartes projets
   ========================================= */

:root {
  --cols: 3;
}

main {
  padding: calc(var(--nav-h) + var(--gap)) var(--pad-x) 80px;
}

/* ── GRILLE ─────────────────────────────── */
.grid {
  display: grid;
  grid-template-columns: repeat(var(--cols), 1fr);
  gap: var(--gap);
}

/* ── CARTE PROJET ───────────────────────── */
.card {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.card-visual {
  display: block;
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  aspect-ratio: 3 / 2;
  background: var(--bg);
  transition: border-radius 0.5s ease;
}
.card-visual:hover { border-radius: 0; }

.card-visual img,
.card-visual video {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}
.card-visual:hover img,
.card-visual:hover video { transform: scale(1.03); }

.card-body {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.card-title {
  font-weight: 500;
  font-size: 15px;
  letter-spacing: -0.01em;
  line-height: 1.2;
}

.card-subtitle {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.4;
  opacity: 0.5;
}

/* ── RESPONSIVE ─────────────────────────── */
@media (max-width: 1024px) {
  :root { --cols: 2; }
}
@media (max-width: 600px) {
  :root { --cols: 1; }
  main { padding-top: 80px; }
}
