/* ─── Portfolio-Seite ────────────────────────────────────────
   Ergaenzt style.css und city.css. Nur fuer /portfolio/.        */

.pf-head {
  background: var(--near);
  color: var(--white);
  padding: 140px 0 64px;
}
.pf-head h1 {
  font-family: var(--serif);
  font-size: clamp(2.2rem, 5.5vw, 3.6rem);
  line-height: 1.05;
  margin: 12px 0 20px;
}
.pf-head h1 em { color: var(--gold); font-style: italic; }
.pf-head p {
  max-width: 62ch;
  color: rgba(255, 255, 255, .62);
  font-size: 1rem;
  line-height: 1.65;
  margin: 0;
}

.pf-grid-section { background: var(--near); padding: 0 0 80px; }

.pf-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 18px;
}

.pf-item { margin: 0; position: relative; overflow: hidden; border-radius: var(--r); }
.pf-item img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  transition: transform var(--tr);
}
.pf-item:hover img { transform: scale(1.04); }

.pf-item figcaption {
  position: absolute;
  left: 14px;
  bottom: 12px;
  font-size: .68rem;
  font-weight: 500;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--white);
  background: rgba(0, 0, 0, .55);
  padding: 5px 11px;
  border-radius: 100px;
  backdrop-filter: blur(6px);
}

.pf-video-section { background: var(--surface); color: var(--white); padding: 80px 0; }
.pf-video-section h2 {
  font-family: var(--serif);
  font-size: clamp(1.7rem, 3vw, 2.3rem);
  margin: 10px 0 34px;
}

.pf-videos {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 22px;
  align-items: start;
}
.pf-video { margin: 0; }
.pf-video video {
  width: 100%;
  height: auto;
  display: block;
  border-radius: var(--r);
  background: #000;
}
.pf-video figcaption {
  margin-top: 10px;
  font-size: .8rem;
  color: rgba(255, 255, 255, .5);
}

@media (max-width: 640px) {
  .pf-head { padding: 110px 0 48px; }
  .pf-grid { grid-template-columns: 1fr; gap: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .pf-item img { transition: none; }
  .pf-item:hover img { transform: none; }
}
