/* Main CSS styles */

* {
  box-sizing: border-box;
}

body {
  font-family: Helvetica, sans-serif;
  line-height: 1.12;
  font-size: 16px;
  color: white;
  background-color: black;
  margin: 0; /* remove the default style*/
}

h1,
b {
  font-weight: bold;
}

a {
  color: white;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 3px;
  /* text-decoration: none; */
}

header {
  padding: 20px 0 20px 30px;
  display: flex;
  gap: 10px;
  width: 100%;
  z-index: 1;
}

/* main {
  margin-top: 100vh;
} */

.project {
  margin-bottom: 30px;
  position: relative; /* Add this to establish a positioning context for the grid container */
}

.project .grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px;
  padding-left: 30px;
  padding-right: 30px;
  position: relative; /* Add this to establish a positioning context for the grid items */
  align-items: start;
}

.grid-item {
  /*padding: 0px;*/
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.grid-item.video,
.grid-item.span {
  grid-column: span 2; /* Make the video span 2 columns */
  overflow: hidden; /* Hide any overflow of the video */
}

.grid-item.video iframe {
  object-fit: cover; /* Maintain video aspect ratio and cover the grid item */
  width: 100vw;
  height: 36vw;
  align-self: start; /* Alignement vertical en haut*/
  justify-self: stretch; /* Expansion horizontale*/
}

body.vp-center {
  display: block !important;
  align-items: initial !important;
  justify-content: initial !important;
}

.grid-item img {
  max-width: 100%;
  max-height: 100%;
  /*filter: grayscale(100%);*/
}

footer {
  padding: 0px 30px 30px 30px;
}

.info {
  font-family: Helvetica, sans-serif;

}

.email {
  margin-bottom: 0.3em;
}

/* Responsive Styles */

@media screen and (max-width: 768px) {
  .project .grid-container {
    grid-template-columns: 1fr;
    gap: 15px;
    padding: 0 15px;
  }

  .grid-item.video {
    grid-column: span 1;
  }
}

@media screen and (min-width: 769px) {
  .project .grid-container {
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    padding-left: 30px;
    padding-right: 30px;
  }

  .grid-item.video {
    grid-column: span 2;
  }
}
