/* projects-page.css */


#projects-grid.grid {
 list-style: none;
 margin: 0;
 padding: 0;
}

#projects-grid .grid-item {
 list-style: none;
}

#projects-grid .grid-sizer {
 list-style: none;
 margin: 0;
 padding: 0;
 height: 0;
 visibility: hidden;
 pointer-events: none;
}

nav.filters {
 display: flex;
 flex-direction: column;
 gap: 0.2rem;
 width: 30%;
}

nav.filters button {
 text-align: left;
 border: none;
 background: none;
 cursor: pointer;
 transition: all 0.3s ease;
 font-family: var(--body-font);
 font-size: 0.875rem;
 font-weight: 100;
 color: var(--text-color);
}

nav.filters button:hover {
 text-decoration: underline;
}

nav.filters button.active,
nav.filters button[aria-pressed="true"] {
 font-weight: 500;
}

.main-content {
 display: flex;
 position: relative;
 gap: 2rem;
 align-items: flex-start;
 margin-bottom: 4rem;
}

.filters {
 display: flex;
 flex-direction: column;
 gap: 0.2rem;
 width: 30%;
}

.filters button {
 text-align: left;
 border: none;
 background: none;
 cursor: pointer;
 transition: all 0.3s ease;
 font-family: var(--body-font);
 font-size: 0.875rem;
 font-weight: 100;
 color: var(--text-color);
}

.filters button:hover {
 text-decoration: underline;
}

.filters button.active,
.filters button[aria-pressed="true"] {
 font-weight: 500;
}

.post-type-archive-project .grid {
 display: flex;
 flex-wrap: wrap;
 width: 70%;
 opacity: 1;
 height: auto;
 margin: 0;
 padding: 0;
 transition: none;
 position: relative;
}

.post-type-archive-project .grid-sizer {
 width: 50%;
}

.post-type-archive-project .grid-item {
 width: 50%;
 padding-left: 2rem;
 margin-bottom: 2rem;
 box-sizing: border-box;
}

.post-type-archive-project .grid-item .image img {
 width: 100%;
 height: auto;
 object-fit: cover;
 display: block;
}

.card {
 display: flex;
 flex-direction: column;
 padding-bottom: 1rem;
 border-bottom: 0.1px solid var(--text-color);
}

.card a {
 text-decoration: none;
}

.card a:hover {
 text-decoration: none;
}

.card a:hover h3 {
 text-decoration: underline;
}

.card h3 {
 transition: text-decoration 0.3s ease;
}

.image img {
 width: 100%;
 height: auto;
 margin-bottom: 0.1rem;
}

.info span {
 padding-top: 0.2rem;
 font-size: 0.875rem;
 font-weight: 200;
 color: var(--accent-meta);
}

.info h3 {
 font-size: 1rem;
 font-weight: normal;
 margin: 0.5rem 0 0;
}

.project-metadata {
 display: flex;
 justify-content: space-between;
}

@media screen and (max-width: 768px) {
 .main-content {
  flex-direction: column;
 }

 .projects .title {
  margin-top: 1rem;
 }

 .subtitle {
  margin-bottom: 2rem;
 }

 nav.filters,
 .filters {
  width: 100%;
  flex-direction: row;
  flex-wrap: wrap;
  font-size: 1rem;
  gap: 0;
 }

 .post-type-archive-project .grid {
  width: 100% !important;
  margin: 0;
  padding: 0;
 }

 .post-type-archive-project .grid-sizer {
  width: 100% !important;
 }

 .post-type-archive-project .grid-item {
  width: 100% !important;
  padding: 0 !important;
  margin-bottom: 2rem;
  box-sizing: border-box;
  display: block;
  opacity: 1;
  height: auto;
  transform: none;
 }

 .main-content {
  flex-direction: column;
  align-items: stretch;
  margin-bottom: 0;
 }

 nav.filters,
 .filters {
  width: 100%;
  flex-direction: column;
  gap: 0.5rem;
 }

 nav.filters button,
 .filters button {
  flex: none;
  width: 100%;
  text-align: left;
 }

 .grid {
  width: 100%;
  margin-left: 0;
 }

 .grid-item,
 .grid-sizer {
  width: 100% !important;
  padding-left: 0;
 }

 .card {
  padding-bottom: 1rem;
 }

 .image img {
  margin-bottom: 1rem;
 }

 .project-metadata {
  flex-direction: row !important;
  justify-content: space-between;
  gap: 0;
  flex-wrap: nowrap;
 }
}

.skip-link {
 position: absolute;
}

#projects-count.visually-hidden {
 display: block;
}