* {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
}

body {
  font-family: Arial, sans-serif;
  background-color: #f4f4f4;
}

.grid-container {
  display: grid;
  grid-template-areas: 
  "header header header header"
  "menu cartes-blanches cartes-blanches cartes-blanches";
  grid-template-columns: 1fr 2fr 2fr 2fr;
  grid-template-rows: 3fr auto;
  border: 2px solid black;
  background-color: gray;
}

.cartes-blanches{
  grid-area: cartes-blanches;
  display:flex;
  flex-wrap: wrap;
  gap: 50px;
  padding: 20px;
}

.header {
  grid-area: header;
  display : flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-weight: bold;
  padding: 15px;
  border-bottom: 1px solid black;
  height: 20vh;
}

.item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 300px;
  height: 350px;
  background-color: gray;
  padding: 50px;
}

.menu {
  /*grid-column: 4 / 5;
  grid-row: 2 / -1;*/
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  background-color: gray;
  padding: 10px;
  border-right: 1px solid #000;
}
h2 {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  text-align: center;
  margin: 0; 
}