/* ============================================
   PA Wall — grille + hover
   Plugin pa-wall / pierreantoine.fr
   ============================================ */

.bp-wall {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  padding: 0;
  margin-top: 0.67rem;
  align-items: start;
}

.bp-wall > * { margin: 0; }

.bp-cell {
  position: relative;
  padding: 0;
  background: #ffffff;
}

.bp-span2 {
  grid-column: span 2;
}

.bp-cell a {
  display: block;
  width: 100%;
}

.bp-cell img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.bp-cell:hover img {
  transform: scale(1.04);
}

.bp-overlay {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.75);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  opacity: 0;
  transition: opacity 0.35s ease;
  backdrop-filter: blur(2px);
  pointer-events: none;
}

.bp-cell:hover .bp-overlay {
  opacity: 1;
}

.bp-t {
  color: #111;
  font-size: clamp(0.6rem, 1vw, 0.85rem);
  font-weight: 500;
  letter-spacing: 0.05em;
  text-align: center;
  padding: 0 0.8rem;
  transform: translateY(6px);
  transition: transform 0.35s ease;
}

.bp-cell:hover .bp-t {
  transform: translateY(0);
}

.bp-y {
  color: #888;
  font-size: clamp(0.5rem, 0.7vw, 0.65rem);
  letter-spacing: 0.15em;
  transform: translateY(6px);
  transition: transform 0.4s ease 0.04s;
}

.bp-cell:hover .bp-y {
  transform: translateY(0);
}

@media (max-width: 768px) {
  .bp-wall {
    grid-template-columns: repeat(2, 1fr);
  }
  .bp-span2 { grid-column: span 2; }
}
