.header {
  position: relative;
  display: block;
  width: 100vw;
  justify-content: center;
  align-items: center;
  border-bottom: 1px solid var(--yellow);
  background: var(--black);
}

.project-header-image {
  width: 100%;
  height: 70vh;
  display: block;
  object-fit: cover;
  object-position: center;
}

/* ---------- Bild-Grids ---------- */
.project-content-grid-two,
.project-content-grid-three {
  display: grid;
  width: 100%;
  padding: 20px;          /* Abstand zum Fensterrand */
}

.project-content-grid-two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.project-content-grid-three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.project-content-grid-two .project-image,
.project-content-grid-three .project-image {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
  padding: 0;
}
/* ——————————p5.js styling——————————— */
.project-sketch {
  display: block;
  width: min(100%, calc(70vh * 448 / 256));
  height: auto;           /* hebt height: 100vh von .project-image auf */
  aspect-ratio: 448 / 256;
  padding: 0; 
  margin: 0 auto;            /* Padding im iframe verschiebt die Darstellung */
  border: none;
  cursor: crosshair;
}


/* ——————————small screen styles——————————— */
@media (max-width: 800px) {
  .project-header-image {
    height: auto;            /* sonst wird aspect-ratio ignoriert */
    aspect-ratio: 4 / 3;
  }

  .project-content-grid-two,
  .project-content-grid-three {
    grid-template-columns: 1fr;   /* alles in einer Spalte */
  }

  .project-image {
    width: 100%;
    height: auto;            /* statt 100vh, sonst riesige Lücken */
    padding: 10px;
  }
}