.container {
  width: 100%;
  max-width: 1920px;
  margin: auto;
  border: 1px solid rgba(0, 0, 0, 0.2);
  padding: 20px;
}

.grid-container {
  padding: 80px;
  width: 100%;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3 equal columns */
  gap: 100px; /* space between items */
  position: relative;
}

.item {
  height: 400px;
  width: 100%;
}

/* spans */
.item.full {
  grid-column: span 3; /* takes full width */
}

.item.one-third {
  grid-column: span 1; /* takes 1/3 */
}

.item.two-third {
  grid-column: span 2; /* takes 2/3 */
}

@media (max-width: 1156px) {
  .grid-container {
    grid-template-columns: repeat(2, 1fr);
    gap: 50px;
  }
  .item.full {
    grid-column: span 1;
  }
  .item.one-third {
    grid-column: span 1;
  }
  .item.two-third {
    grid-column: span 1;
  }
}
@media (max-width: 800px) {
  .grid-container {
    grid-template-columns: repeat(1, 1fr);
  }
  .item {
    height: 300px;
  }
  .item.full {
    grid-column: span 1;
  }
  .item.one-third {
    grid-column: span 1;
  }
  .item.two-third {
    grid-column: span 1;
  }
}

@media (max-width: 600px) {
  .grid-container {
    gap: 50px;
  }
  .item {
    height: 300px;
  }
  canvas {
    width: 280px;
  }
}
