<style>
    /* -------------------------------- 

File#: _1_adv-gallery-v2
Title: Advanced Gallery v2
Descr: Advanced image gallery template
Usage: codyhouse.co/license

-------------------------------- */

/* reset */
*, *::after, *::before {
  box-sizing: border-box;
}

* {
  font: inherit;
  margin: 0;
  padding: 0;
  border: 0;
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}



button, input, textarea, select {
  background-color: transparent;
  border-radius: 0;
  color: inherit;
  line-height: inherit;
  -webkit-appearance: none;
          appearance: none;
}

textarea {
  resize: vertical;
  overflow: auto;
  vertical-align: top;
}

a {
  color: hsl(250, 84%, 54%);
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img, video, svg {
  display: block;
  max-width: 100%;
}

/* -------------------------------- 

Component 

-------------------------------- */

.adv-gallery-v2 {}

.adv-gallery-v2__grid {
  display: grid;
  gap: 3rem;
}

.adv-gallery-v2__grid > * {
  min-width: 0;
}

.adv-gallery-v2__img {
  width: 100%;
}

.adv-gallery-v2__caption {
  font-size: 0.9375rem;
  margin-top: 0.75rem;
}

.adv-gallery-v2__img-link {
  position: relative;
  display: block;
  text-decoration: none;
  color: inherit;
}

.adv-gallery-v2__img-link::before, .adv-gallery-v2__img-link::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 48px;
  height: 48px;
}

.adv-gallery-v2__img-link::before {
  -webkit-clip-path: polygon(100% 0%, 100% 0%, 100% 0%, 100% 0%);
          clip-path: polygon(100% 0%, 100% 0%, 100% 0%, 100% 0%);
  background-color: hsla(230, 13%, 9%, 0.9);
  transition: -webkit-clip-path 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: clip-path 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: clip-path 0.2s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-clip-path 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.adv-gallery-v2__img-link::after { /* icon */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpolyline points='4 2 14 2 14 12' fill='none' stroke='%23FFF' stroke-miterlimit='10' stroke-width='2'/%3E%3Cline x1='14' y1='2' x2='2' y2='14' fill='none' stroke='%23FFF' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  transform: scale(0.5) translateX(-5px) translateY(5px);
  will-change: transform;
  opacity: 0;
  transition: opacity 0.2s, transform 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.adv-gallery-v2__img-link:hover::before {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
          clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.adv-gallery-v2__img-link:hover::after {
  transform: scale(1) translateX(0) translateY(0);
  opacity: 1;
}

@media (min-width: 64rem) {
  .adv-gallery-v2__grid {
    grid-template-columns: repeat(12, 1fr);
  }

  .adv-gallery-v2__grid-item-1 {
    grid-column-end: span 4;
  }

  .adv-gallery-v2__grid-item-2 {
    grid-column-end: span 8;
  }

  .adv-gallery-v2__grid-item-3 {
    grid-column-end: span 4;
    order: 2;
  }

  .adv-gallery-v2__grid-item-4 {
    grid-column-end: span 8;
    order: 1;
  }
}

@media (min-width: 85.5rem) {
  .adv-gallery-v2__grid-item-1 {
    grid-column-end: span 3;
  }

  .adv-gallery-v2__grid-item-2 {
    grid-column-end: span 7;
  }

  .adv-gallery-v2__grid-item-3 {
    order: 1;
    grid-column-start: 2;
  }

  .adv-gallery-v2__grid-item-4 {
    grid-column-end: span 7;
    order: 2;
  }
}

/* -------------------------------- 

Utilities 

-------------------------------- */

.cd-padding-bottom-lg {
  padding-bottom: 3rem;
}
</style>