/* ── PHOTOS SECTION ─────────────────────────────────────────── */
.photos-section {
  min-height: 100svh; display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  padding: clamp(4rem,8vw,6rem) clamp(1.5rem,5vw,5rem);
}

.photos-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(2.5rem, 6vw, 4.5rem);
  font-style: italic; color: var(--text-dark);
  text-align: center; margin-bottom: .5rem; opacity: .88;
}

.photos-sub {
  font-size: .62rem; letter-spacing: .42em; text-transform: uppercase;
  color: var(--petal); text-align: center; margin-bottom: 3.5rem;
}

/* Polaroid grid */
.polaroid-grid {
  display: grid; grid-template-columns: repeat(3,1fr);
  gap: 2rem 1.8rem; max-width: 920px; width: 100%; align-items: start;
}
@media (max-width: 700px) { .polaroid-grid { grid-template-columns: 1fr 1fr; gap: 1.5rem; } }
@media (max-width: 440px) { .polaroid-grid { grid-template-columns: 1fr; max-width: 240px; } }

.polaroid {
  background: #fff8f5; padding: .8rem .8rem 2.6rem;
  box-shadow: 0 6px 28px rgba(180,90,80,.11), 0 2px 5px rgba(180,90,80,.05);
  transition: transform .4s, box-shadow .4s;
  cursor: pointer; position: relative; overflow: hidden;
}

/* Scattered rotation */
.polaroid:nth-child(1) { transform: rotate(-2.2deg); }
.polaroid:nth-child(2) { transform: rotate(1.4deg);  margin-top: 1.6rem; }
.polaroid:nth-child(3) { transform: rotate(-1deg); }
.polaroid:nth-child(4) { transform: rotate(2deg);    margin-top: -.8rem; }
.polaroid:nth-child(5) { transform: rotate(-1.8deg); margin-top: .5rem; }
.polaroid:nth-child(6) { transform: rotate(1.2deg);  margin-top: -.4rem; }

.polaroid:hover {
  transform: rotate(0deg) scale(1.06) translateY(-5px) !important;
  box-shadow: 0 20px 48px rgba(180,90,80,.2); z-index: 10;
}

.polaroid img {
  width: 100%; aspect-ratio: 1/1; object-fit: cover; display: block;
  filter: sepia(.05) brightness(1.04) saturate(1.08);
}

.polaroid-label {
  text-align: center; margin-top: .65rem;
  font-family: 'Dancing Script', cursive;
  color: var(--text-light); font-size: .9rem; min-height: 1.3em;
}

/* Hover overlay "tap to view" */
.polaroid-overlay {
  position: absolute; top: 0; left: 0; right: 0; bottom: 2.4rem;
  background: rgba(58,31,26,0);
  display: flex; align-items: center; justify-content: center;
  transition: background .3s;
}
.polaroid:hover .polaroid-overlay { background: rgba(58,31,26,.3); }
.polaroid-overlay span {
  color: transparent; font-size: .62rem; letter-spacing: .25em;
  text-transform: uppercase; font-family: 'Jost', sans-serif; transition: color .3s;
}
.polaroid:hover .polaroid-overlay span { color: rgba(253,240,235,.92); }
