/* Jeffersoniads homepage card grid */
body.tj-home-grid #primary {
  float: left;
  width: 70%;
}
body.tj-home-grid #secondary {
  float: left;
  width: 30%;
  padding-left: 32px;
  box-sizing: border-box;
}
body.tj-home-grid #primary .post:first-child .entry-content p:first-child:first-letter {
  all: unset;
}

.tj-archive-header {
  margin: 0 0 24px;
}
.tj-archive-header .page-title {
  font-size: 28px;
  margin: 0;
  text-align: left;
}

.tj-post-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px 22px;
  align-items: stretch;
  margin: 0 0 40px;
}

.tj-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.08);
  box-sizing: border-box;
  overflow: hidden;
  transition: box-shadow 200ms ease, border-color 200ms ease;
}
.tj-card:hover {
  border-color: rgba(198, 159, 112, 0.55);
  box-shadow: 0 8px 24px rgba(0,0,0,0.06);
}

.tj-card-media {
  display: block;
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #2b2b2b;
  flex: 0 0 auto;
}
.tj-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.tj-card-media--fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #2b2b2b;
  text-decoration: none;
}
.tj-card-fallback-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: linear-gradient(160deg, #1f1f1f 0%, #333 55%, #2a2a2a 100%);
}
.tj-card-fallback-logo {
  width: 42% !important;
  height: auto !important;
  max-width: 140px;
  opacity: 0.92;
  object-fit: contain !important;
  filter: brightness(1.05);
}

.tj-card-body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  padding: 16px 16px 18px;
  min-height: 0;
}

.tj-card-cat {
  display: block;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 8px;
  line-height: 1.3;
}
.tj-card-cat a {
  color: #C69f70;
  text-decoration: none;
}
.tj-card-cat a:hover {
  color: #333;
}

.tj-card-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 20px;
  line-height: 1.3;
  margin: 0 0 10px;
  font-weight: 700;
  /* clamp title to 3 lines for even cards */
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.6em;
}
.tj-card-title a {
  color: #333;
  text-decoration: none;
}
.tj-card-title a:hover {
  color: #C69f70;
}

.tj-card-excerpt {
  font-size: 14px;
  line-height: 1.55;
  color: #545454;
  margin: 0 0 14px;
  flex: 1 1 auto;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.tj-card-meta {
  font-size: 12px;
  color: #777;
  margin: 0 0 12px;
  line-height: 1.4;
}
.tj-card-meta a {
  color: #555;
  text-decoration: none;
}
.tj-card-meta a:hover {
  color: #C69f70;
}
.tj-card-sep {
  margin: 0 4px;
  opacity: 0.6;
}

.tj-card-more {
  display: inline-block;
  margin-top: auto;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #C69f70;
  text-decoration: none;
}
.tj-card-more:hover {
  color: #333;
  letter-spacing: 2px;
}

/* Pagination — beat #main ul { list-style-type: disc } from Edge theme */
.tj-pagination {
  clear: both;
  margin: 10px 0 30px;
  padding-top: 10px;
  border-top: 1px solid rgba(0,0,0,0.08);
}
#main ul.tj-pagination-list,
.tj-pagination ul.tj-pagination-list,
ul.tj-pagination-list {
  list-style: none !important;
  list-style-type: none !important;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  justify-content: center;
}
#main ul.tj-pagination-list > li,
.tj-pagination ul.tj-pagination-list > li,
ul.tj-pagination-list > li {
  list-style: none !important;
  list-style-type: none !important;
  margin: 0;
  padding: 0;
}
#main ul.tj-pagination-list > li::marker,
.tj-pagination ul.tj-pagination-list > li::marker,
ul.tj-pagination-list > li::marker,
#main ul.tj-pagination-list > li::before,
.tj-pagination ul.tj-pagination-list > li::before,
ul.tj-pagination-list > li::before {
  content: none !important;
  display: none !important;
}
.tj-pagination-list a,
.tj-pagination-list span {
  display: inline-block;
  min-width: 36px;
  padding: 8px 11px;
  text-align: center;
  font-size: 14px;
  text-decoration: none;
  color: #333;
  border: 1px solid rgba(0,0,0,0.12);
  box-sizing: border-box;
}
.tj-pagination-list a:hover {
  border-color: #C69f70;
  color: #C69f70;
}
.tj-pagination-list .is-current span {
  background: #C69f70;
  border-color: #C69f70;
  color: #fff;
}
.tj-pagination-list .is-disabled span {
  opacity: 0.35;
  cursor: default;
}
.tj-pagination-list .tj-page-ellipsis span {
  border: none;
  min-width: 0;
  padding: 8px 4px;
}

@media (max-width: 1024px) {
  .tj-post-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 768px) {
  body.tj-home-grid #primary,
  body.tj-home-grid #secondary {
    float: none;
    width: 100%;
    padding-left: 0;
  }
  body.tj-home-grid #secondary {
    margin-top: 36px;
  }
  .tj-post-grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .tj-card-title {
    font-size: 22px;
  }
}
