.instagram-v1 {
  position: relative;
}

.instagram-v1__heading {
  text-align: center;
  padding: 2rem 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}
@media (max-width: 767px) {
  .instagram-v1__heading {
    flex-direction: column;
    text-align: center;
  }
}

.instagram-v1__title {
  text-transform: uppercase;
  position: relative;
  font-size: clamp(2rem, calc(0.5vw + 1.8rem), 2.4rem);
  font-weight: 500;
  padding-bottom: 1rem;
}

.instagram-v1__title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 8rem;
  height: 0.2rem;
  background-color: rgba(var(--color-accent));
}

.instagram-v1__subtitle {
  font-size: calc(var(--font-body-scale) * 3.6rem);
  line-height: calc(1 + 0.6 / var(--font-body-scale));
}

.instagram-v1__item {
  position: relative;
  overflow: hidden;
}

.instagram-v1__item:hover .instagram-v1__image-layer {
  opacity: 1;
}
.instagram-v1__item:hover img {
  transform: scale(1.2);
}

.instagram-v1__image {
  aspect-ratio: 1;
  width: 100%;
  height: 100%;
  transition: 0.3s;
}

.instagram-v1__image-layer {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.4);
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: 0.3s;
}
.instagram-v1__image-layer svg {
  width: 3rem;
  height: 3rem;
  fill: rgb(from #fff r g b / 1);
  transition: 0.3s;
}
.instagram-v1__image-layer svg:hover {
  fill: var(--color);
}

.instagram-v1__grid xo-instagram-item a {
  position: relative;
  overflow: hidden;
}
@media (min-width: 768px) {
  .instagram-v1__grid xo-instagram-item:nth-child(3) {
    visibility: hidden;
  }
}
.instagram-v1__grid xo-instagram-item:hover img {
  transform: scale(1.2);
}
.instagram-v1__grid xo-instagram-item:hover span {
  opacity: 1;
}