.imageWithTextGroupContainer figure {
  width: 100%;
  display: block;
  margin: 0 auto;
}

.titleAndDescription.observer.onViewport {
  -webkit-animation: fade-in-top 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s
    both;
  animation: fade-in-top 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s both;
}

.imageWithTextGroupContainer img.observer.onViewport {
  -webkit-animation: fade-in-bottom 0.6s cubic-bezier(0.39, 0.575, 0.565, 1)
    0.2s both;
  animation: fade-in-bottom 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s both;
}

.imageWithTextGroupContainer {
  width: calc((100% / 3) - 7px);
  height: auto;
  display: flex;
  overflow: hidden;
  position: relative;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
  float: left;
  transition: opacity 0.3s ease;
  margin-bottom: calc(calc(100% - var(--home-container)) / 4);
}

.imageWithTextGroupContainer:nth-of-type(3n-2) {
  margin-left: 10px;
}

.imageWithTextGroupContainer:nth-of-type(3n-2) {
  margin-right: 10px;
}

.imageWithTextGroupContainer img {
  width: 100%;
  display: block;
}

.imageWithTextGroupContainer:hover .groupTitleArrow {
  margin-left: 25px;
  transition: all 0.3s;
}

.titleAndDescription {
  width: 40%;
  margin: 0 3% 5%;
  text-align: center;
}
p.groupDescription {
  font-size: var(--base-font-size);
  line-height: var(--base-line-height);
}

.groupTitle {
  position: relative;
  display: flex;
  font-size: var(--group-font-size);
  line-height: var(--group-line-height);
  font-weight: 600;
  margin-bottom: 20px;
  flex-direction: column;
  align-items: center;
}

.textColumn {
  width: fit-content;
  margin-left: 7%;
  float: left;
  color: var(--base-aux);
  position: absolute;
  bottom: 7%;
  display: flex;
  flex-direction: column;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.groupItemTitleOnImageWithText {
  font-size: 38px;
  font-weight: 700;
  line-height: 41px;
  margin-bottom: 10px;
  width: 70%;
}

a.verMasText {
  display: flex;
  gap: 14%;
  background: white;
  color: var(--base);
  width: 150px;
  height: 40px;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 40px;
  text-indent: 13px;
  align-items: center;
  border: 1px solid white;
}

.groupItemText {
  width: 70%;
  line-height: 18px;
  margin-bottom: 20px;
}

.arrowButton {
  background-image: url(../../files/arrowButton.png);
  background-size: 30px;
  width: 30px;
  height: 16px;
}

a.verMasText:hover  {
    background-color: transparent;
    color: white;  
}

a.verMasText:hover .arrowButton {
  /* background-image: url(../../files/arrowButtonWhite.png); */
  filter: invert(1)
}

.imageWithTextGroupContainer.observer.onViewport {
  -webkit-animation: fade-in-right 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s
    both;
  animation: fade-in-right 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s both;
}

@media screen and (max-width: 1100px) {
  .imageWithTextGroupContainer {
    width: 100%;
    margin-bottom: 10px;
  }

  .imageWithTextGroupContainer:nth-of-type(3n-2) {
    margin-right: 0px;
  }

  .imageWithTextGroupContainer:nth-of-type(3n-2) {
    margin-left: 0px;
  }

  .textColumn {
    opacity: 1;
    bottom: 7%;
    margin-left: 5%;
  }

  .groupItemTitleOnImageWithText {
    font-size: 28px;
    margin-bottom: 5px;
    line-height: 30px;
  }

  .groupItemText {
    font-size: 16px;
  }
  
  .imageWithTextGroupContainer img {
    width: 100%;
    display: block;
  }
  .imageWithTextGroupContainer figure {
    display: block;
    -webkit-animation: fade-in-right 0.6s cubic-bezier(0.39, 0.575, 0.565, 1)
      0.2s both;
    animation: fade-in-right 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s both;
    width: 100%;
    /* margin-top: 2vw; */
  }
  

  .titleAndDescription {
    max-width: 400px;
    width: 100%;
  }

  p.groupDescription {
    font-size: var(--base-font-size);
    line-height: var(--base-line-height);
    text-align: center;
  }
  .groupTitle {
    position: relative;
    font-size: var(--title-font-size);
    line-height: var(--group-line-height);
    font-weight: 400;
    margin-bottom: 30px;
    text-align: center;
  }
}

@media screen and (min-width: 1100px) {
  .imageWithTextGroupContainer:hover .textColumn {
    opacity: 1;
    pointer-events: auto;
  }

  .imageWithTextGroupContainer:hover figure {
    filter: brightness(80%);
  }

  .imageWithTextGroupContainer:hover .groupTitleArrow {
    margin-left: 25px;
    transition: all 0.3s;
  }
}
