/* General styling */
.cpt-posts h2.cpt-posts-title {
  text-align:center;
  margin-bottom:6rem;
}

.cpt-posts .container {
  position:relative;
}

.cpt-posts .cpt-posts-loading {
  display:none;
  position:absolute;
  top:50%;
  left:0;
  right:0;
  z-index:100;
}

.cpt-posts .cpt-posts-loading svg {
  width:150px;
}

.cpt-posts .cpt-posts-item .tags{
  top:2rem;
  left:1rem;
}

.cpt-posts .cpt-posts-item .category-tags .tag {
  background: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--light);
}


/* Category Select */

.cpt-posts .cpt-posts-categories select {
  min-width:30rem;
}

/* Item normal styling */

.cpt-posts .cpt-posts-item,
.editor-styles-wrapper .row .cpt-posts-item {
  align-items:center;
  display:flex;
  flex-direction:column;
  margin-top:4rem;
  position:relative;
}

.cpt-posts .cpt-posts-item .cpt-posts-image-link {
  display:block;
  height:250px;
  width:100%;
}

.cpt-posts .cpt-posts-item img {
  border-top-left-radius:5px;
  border-top-right-radius:5px;
  height:100%;
  object-fit:cover;
  width:100%;
}

.cpt-posts .cpt-posts-item h3 {
  font-weight:300;
  line-height:1.2;
  margin:0 0 2rem;
}

.cpt-posts .cpt-posts-item a {
  color:inherit;
}

.cpt-posts .cpt-posts-item hr {
  margin:0;
}

.cpt-posts .cpt-posts-item p {
  line-height:1.6;
  margin:20px 0;
}

.cpt-posts .cpt-posts-item .button {
  font-size:18px;
  margin-top:5px;
}

.cpt-posts .cpt-posts-item-inner {
  box-shadow:0px 0px 8px 0px rgb(222 222 222);
  width: 100%;
  height: 100%;
  position: relative;
}

.cpt-posts .cpt-posts-item-content {
  border-radius:5px;
  padding:40px 30px 30px 30px;
  width:100%;
}


/* Category Select */
.cpt-posts .cpt-posts-categories {
  width: auto;
  display:flex;
  flex-direction:column;
}

.cpt-posts .cpt-posts-categories .category-filter {
  margin-right:15px;
  margin-top:10px;
  position:relative;
  width:100%;
}

.cpt-posts .cpt-posts-categories button {
  border:0;
  border-radius:5px;
  cursor:pointer;
  font-size:23px;
  margin-right:15px;
  margin-top:10px;
  padding:12px 20px;
  transition:opacity 0.5s;
  width:100%;
}

.cpt-posts .cpt-posts-categories button:hover {
  opacity:0.8;
}

.cpt-posts .cpt-posts-search-box {
  position:relative;
  padding:0;
  width:100%;
}

.cpt-posts .cpt-posts-search-box button {
  cursor:pointer;
  position:absolute;
  top:10px;
  right:0px;
  width:70px !important;
  margin: 0;
  padding: 1rem;
}

.cpt-posts .cpt-posts-search-box svg {
    width: 30px;
}

.cpt-posts .cpt-posts-search-box input {
  border:1px solid var(--wp--preset--color--dark);
}

.cpt-posts .cpt-posts-categories input {
  border-radius:.5rem;
  font-size: var(--wp--preset--font-size-nm);
  margin-top:0;
  margin-right: 1.5rem;
  padding:1.5rem 2rem;
  position:relative;
  width:100%;
}

.cpt-posts .cpt-posts-no-results {
  font-size:22px;
  margin-top:60px;
  text-align:center;
}


/* Pagination styling */

.cpt-posts .cpt-posts-pagination {
  font-size:16px;
  float:right;
  margin-top:40px;
  text-align:center;
}

.cpt-posts .page-numbers {
  margin-right:20px;
}

.cpt-posts .page-numbers.prev,
.cpt-posts .page-numbers.next {
  display:inline-block;
  font-family:var(--font-sans);
  font-style:normal;
  font-weight:400;
}

.cpt-posts .page-numbers.current {
  font-weight:700;
}

@media only screen and (min-width:1280px) {

  .cpt-posts .cpt-posts-item h2 {
    margin:0 0 20px 0;
  }
}