

section {
  height: 100%;
  min-height: 200vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow-x: hidden;
}


div2 {
  height: 100%;
  max-width: 300px;
  min-height: 500vh;
  display: flex;
  gap: 10px;
  gap: 10px 20px; /* row-gap column gap */
  column-gap: 20px;
}


h1 {
  font-weight: 600;
  text-align: left;
  max-width: 800px;
  position: fixed;
  text-emphasis-color: white;
  top: 0;
  left: 0;
  right: 20;
  bottom: 0;
  padding: 120px 0px 200px 100px;
  place-items: center;
}

.gallery {
  z-index: 1;
  display: flex;
  flex-direction: row;
  justify-content: center;
  width: 60%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 50%;
  transform: perspective(150em) rotateZ(27deg) ;
    overflow: visible;
}
@media (max-width: 768px) {
  .gallery {
    width: 160%;
  }
}

.col {
  display: flex;
  flex: 1;
  flex-direction: column;
  width: 100%;
  align-self: flex-start;
  justify-self: flex-start;
}

.col:nth-child(2) {
  align-self: flex-end;
  justify-self: flex-end;
}

.image {
  width: 100%;
  filter: saturate(1);
  padding: .1rem;
  opacity: 150%;
}

.image:hover {
  z-index: 99999999999 !important;
  filter: saturate(0);
}

img {
  transition: 0.3s ease-out;
  overflow: hidden;
  width: 100%;
}

.scroller {
  max-width: 100%;
  position: sticky;
  position: -webkit-sticky;
  bottom: 0;
  text-align: right;
  z-index: 999;
  font-size: 16px;
  position: fixed;
  text-orientation: mixed;
  overflow: hidden;
  position-anchor: sticky;
  background-color: rgb(20,154,142);
  position: sticky;
  position: -webkit-sticky;
  height: auto;
}

.scroller__inner {
  padding-block: .5rem;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}

.scroller[data-animated="true"] {
  overflow: hidden;
  -webkit-mask: linear-gradient(
    120deg,
    transparent,
    rgb(0, 0, 0) 20%,
    rgb(0, 0, 0) 80%,
    transparent
  );
  mask: linear-gradient(90deg, transparent, rgb(23, 2, 69) 20%, rgb(30, 3, 63) 80%, transparent);
}

.scroller[data-animated="true"] .scroller__inner {
  width: max-content;
  flex-wrap: nowrap;
  animation: scroll var(--_animation-duration, 00s)
    var(--_animation-direction, forwards) linear infinite;
}

.scroller[data-direction="right"] {
  --_animation-direction: reverse;
}

.scroller[data-direction="left"] {
  --_animation-direction: forwards;
}

.scroller[data-speed="fast"] {
  --_animation-duration: 200s;
}

.scroller[data-speed="slow"] {
  --_animation-duration: 200s;
}

@keyframes scroll {
  to {
    transform: translate(calc(-50% - 0.5rem));
  }
}

/* general styles */



/* for testing purposed to ensure the animation lined up correctly */
.test {
  background: red !important;
}

p {
  text-transform: uppercase;
  letter-spacing: .1em;
  display: inline-block;
  border-width: 4px 0;
  padding: 1em 0em;
  position: absolute;
  top: 21%;
  left: 30%;
  width: 40em;
  margin: 0 0 0 -20em;
  
  span {

    font: 700 2em/1 "Lato", Lato;
    letter-spacing: 0;
    padding: .25em 0 .325em;
    display: block;
    margin: 0 auto;
    text-shadow: 0 0 80px rgba(255,255,255,.5);

/* Clip Background Image */

    background: url(./assets/img/hero/stripe.gif)  repeat-y;
    -webkit-background-clip: text;
    background-clip: text;

/* Animate Background Image */

    -webkit-text-fill-color: transparent;
    -webkit-animation: aitf 80s linear infinite;

/* Activate hardware acceleration for smoother animations */

    -webkit-transform: translate3d(0,0,0);
    -webkit-backface-visibility: hidden;

  }
}

/* Animate Background Image */

@-webkit-keyframes aitf {
  0% { background-position: 0% 50%; }
  100% { background-position: 100% 50%; }
}


@media only screen and (max-width: 600px) {
  p {
    text-transform: uppercase;
    letter-spacing: .1em;
    display: inline-block;
    padding: 1em 0em;
    position: absolute;
    top: 15%;
    left: 59%;
    width: 22em;
    margin: 0 0 0 -22em;
    font-size: x-small;
    
    span {
      letter-spacing: 0;
      padding: .10em 0 .225em;
      display: block;
      margin: 0 auto;
      text-shadow: 0 0 80px rgba(255,255,255,.5);
  
  /* Clip Background Image */
  
      background: url(./assets/img/hero/stripe.gif)  repeat-y;
      -webkit-background-clip: text;
      background-clip: text;
  
  /* Animate Background Image */
  
      -webkit-text-fill-color: transparent;
      -webkit-animation: aitf 80s linear infinite;
  
  /* Activate hardware acceleration for smoother animations */
  
      -webkit-transform: translate3d(0,0,0);
      -webkit-backface-visibility: hidden;
  
    }
  }
}




@media only screen and (max-width: 600px) {
  .gallery {
    width: 120%;
    left: 50%;
  }