:root {
  --border: 1px solid var(--color-gray-light-2);
}

.photo__articles {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 2rem;
}
.photo__footer {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.photo__footer a {
  border-top: var(--border);
  padding-top: 2rem;
  position: relative;
}
.photo__footer a img {
  max-width: 100%;
}
.photo__footer a p {
  position: absolute;
  left: 0;
  bottom: 0;
  text-decoration: none;
  background: rgb(from var(--color-white) r g b/80%);
  color: var(--color-black);
  font-family: "Anglecia Pro", serif;
  font-size: 2rem;
  padding: 1.25rem 2.5rem;
  transition: 0.2s all;
}
@media (max-width: 1024px) {
  .photo__footer a p {
    font-size: 1.5rem;
  }
}
@media (max-width: 768px) {
  .photo__footer a p {
    font-size: 1.25rem;
  }
}
.photo__footer a:hover p {
  background: rgb(from var(--color-black) r g b/60%);
  color: var(--color-beige-light);
}

.photo-category {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.photo-category h2 {
  font-size: 1.5rem;
  font-family: var(--font-sans-serif);
  font-weight: normal;
  border-bottom: var(--border);
  padding-bottom: 0.25rem;
  cursor: pointer;
  user-select: none;
  display: flex;
}
.photo-category h2::after {
  content: "";
  width: 2.5rem;
  height: 2.5rem;
  transition: transform 0.2s ease;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  display: inline-block;
  margin-left: auto;
  background-image: url("/images/icons/expand.svg");
}
.photo-category h2.hide::after {
  transform: rotate(180deg);
}
.photo-category__items {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
  transition: max-height 0.3s ease, opacity 0.3s ease;
}
@media (max-width: 1024px) {
  .photo-category__items {
    grid-template-columns: repeat(2, 1fr);
  }
}
.photo-category__items.hide {
  max-height: 0;
  transform: scaleY(0);
  opacity: 0;
  overflow: hidden;
}
.photo-category__item img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 1/1;
  cursor: pointer;
}

/*# sourceMappingURL=photo.css.map */
