/* Pagination = START */
#content .pagination {
  margin: 0;
}

#content .pagination__dots {
  pointer-events: none;
}

#content .pagination_wrapper {
  margin-top: 135px;
  margin-bottom: 80px;
  display: grid;
  justify-items: end;
}

/* імітація flex-direction: column-reverse (ul зверху, решта знизу) */
#content .pagination_wrapper > ul.theme-pagination { grid-row: 1; }
#content .pagination_wrapper > :not(ul.theme-pagination) { grid-row: 2; }

/* OUTER GRID: prev | spacer | pages | spacer | next */
#content ul.theme-pagination {
  --pag-gap: 13.33px;
  --pag-spacer: clamp(10px, 8vw, 110px);

  margin-block: 20px;
  margin-block-start: 0;
  margin-block-end: 0;
  padding-inline-start: 0;
  padding-bottom: 10px;
  display: grid;
  align-items: center;


  /* first | gap | prev | spacer | pages | spacer | next | gap | last */
  grid-template-columns:
    max-content
    var(--pag-gap)
    max-content
    var(--pag-spacer)
    max-content
    var(--pag-spacer)
    max-content
    var(--pag-gap)
    max-content;

  grid-template-areas: "first . prev . pages . next . last";
}

/* Розкладаємо по 1-му рядку */
#content ul.theme-pagination > li.first-pag { grid-area: first; }
#content ul.theme-pagination > li.prev-pag  { grid-area: prev;  }
#content ul.theme-pagination > li.pagination__pages { grid-area: pages; }
#content ul.theme-pagination > li.next-pag  { grid-area: next;  }
#content ul.theme-pagination > li.last-pag  { grid-area: last;  }

/* inner pages list — grid */
#content ul.theme-pagination .pagination__pages-list {
  margin: 0;
  padding: 0;

  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: max-content;
  gap: 13.33px;
  align-items: center;
}

#content ul.theme-pagination li.last-pag,
#content ul.theme-pagination li.first-pag {
  display: none;
}

#content ul.theme-pagination li {
  list-style-type: none;
}

#content ul.theme-pagination li:not(:last-child) {
  margin-bottom: 0;
}

#content ul.theme-pagination li a {
  text-decoration: none;
}

#content ul.theme-pagination li a,
#content ul.theme-pagination li span {
  padding: 10px;
  min-width: 54px;
  height: 54px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #3a3227;
  background-color: #fff;
  font-family: var(--main-font);
  font-weight: 400;
  font-size: 18px;
  line-height: normal;
  letter-spacing: -0.933px;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 10px;
  overflow: hidden;
  -webkit-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

#content ul.theme-pagination > li:not(.active):not(.disabled):hover > a,
#content ul.theme-pagination > li:not(.active):not(.disabled):hover > span,
#content ul.theme-pagination .pagination__pages-list > li:not(.active):not(.disabled):hover > a,
#content ul.theme-pagination .pagination__pages-list > li:not(.active):not(.disabled):hover > span {
  color: #f4f4f4;
  background-color: #3a3227;
}

#content ul.theme-pagination li.active span {
  color: #fff;
  background-color: #3a3227;
}

#content ul.theme-pagination li.disabled {
  opacity: .5;
  pointer-events: none;
  cursor: not-allowed;
}

@media (max-width: 649.98px) {
  #content .pagination_wrapper {
    margin-top: 20px;
    margin-bottom: 20px;
  }

  /* Менші “spacer” колонки на мобільному */
  #content ul.theme-pagination {
    grid-template-columns:
      max-content
      13.33px
      max-content
      10px
      max-content
      10px
      max-content
      13.33px
      max-content;
  }

  #content ul.theme-pagination li a,
  #content ul.theme-pagination li span {
    font-size: 14px;
    border-radius: 5px;
  }

  #content li.prev-pag svg,
  #content li.next-pag svg {
    width: 16px;
  }
}
/* Pagination = END */