.bl-books-grid {
    display: grid;
    gap: 32px;
}
.bl-books-results-wrapper.is-loading .bl-books-results {
    opacity: 0;
}
h2.titles-by {
	    font-family: 'Poppins', Helvetica, Arial, Lucida, sans-serif;
    font-weight: 700;
    color: var(--gcid-heading-color) !important;
    font-size: 24px;
    letter-spacing: -0.24px;
    line-height: 32px;
	margin-bottom: 30px;
}
.bl-books-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.bl-books-grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.bl-books-pagination-wrapper {
	margin-top: 30px;
}
.bl-books-pagination-wrapper,
.bl-books-pagination {
	    display: flex;
    align-items: center;
    justify-content: center;
	gap: 10px;
}
.bl-books-pagination-wrapper .bl-books-page {
	    border: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50px;
    font-weight: 600;
	    background-image: radial-gradient(circle at 20% 10%, 
color-mix(in oklab, #e0aa38 25%, transparent), transparent 40%), radial-gradient(circle at 80% 0%, 
color-mix(in oklab, #3a9371 20%, transparent), transparent 45%);
	cursor: pointer;
	color: #0b4c92;
}
.bl-books-pagination-wrapper .bl-books-page.active {
	background:  #0b4c92;
	color: white;
}
.bl-book-card {
    padding: 20px;
    border-radius: 28px;
    background: white;
    display: flex;
    flex-direction: column;
    gap: 0;
    border: 1px solid #dbd8c9;
    transition: all 0.2s;
}
.bl-book-card:hover {
    border: 1px solid #0b4c92;
    transform: translatey(-4px);
}
.bl-book-card:hover .bl-book-details h2 {
    color: #0b4c92;
}
.bl-book-grade-band {
	color: #3a9371;
}
.bl-book-taxonomies {
    font-size: 10px;
    font-weight: 700;
    color: #0b4c92;
    margin-top: 5px;
    display: flex;
	flex-wrap: wrap;
    align-items: center;
        column-gap: 6px;
    row-gap: 0;
}
.archive .bl-book-card img  {
	width: 100%;
}
.bl-book-card img {
    width: 244px;
    object-fit: cover;
    border-radius: 16px;
}
.bl-book-details h2 {
    font-size: 18px;
    font-weight: 700;
    color: #08152c;
    margin-top: 4px;
    letter-spacing: -0.18px;
    line-height: 24.75px;
}
.bl-book-details p.bl-book-excerpt {
    font-size: 12px;
    color: rgba(8,21,44,60%);
    line-height: 16px;
}
.bl-book-format {
	color: #e0ab38
}
.bl-book-description {
    margin: 12px 0;
    font-size: 14px;
    color: rgba(8,21,44, 70%);
}
.bl-book-authors {
    font-size: 12px;
        color: rgba(8,21,44, 70%);
}
.bl-book-cats {
	color: #7a3a2a;
}
.bl-book-author {
    color: rgb(11, 76, 146);
}
.bl-book-buttons {
    margin-top: 16px;
}
.bl-book-button {
    height: 32px;
    padding: 0 12px;
    border-radius: 20px;
    display: inline-flex;
    gap: 5px;
    align-items: center;
    justify-content: space-between;
}
.bl-book-button:hover {
    opacity: 0.9;
}
.bl-book-button svg {
    width: 16px;
    height: 16px;
}
.bl-book-button-read {
    background: #0b4c92;
    color: white;
}
.bl-book-button-download {
    background: #fcfaf3;
    color: #08152c;
    border: 1px solid #e1ded3;
    margin-top: 8px;
}
.bl-related-book-link {
    display: block;
    color: inherit;
    text-decoration: none;
}

.bl-related-book-link:hover {
    color: inherit;
}

.bl-related-book-taxonomies .bl-book-topics {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0;
}
.bl-related-book-taxonomies .bl-book-separator {
	padding-right:3px;
}

.bl-related-book-details {
    flex: 1;
}

.bl-related-book-description {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
}

.bl-related-book-card .bl-book-cover-image {
    width: 100%;
}

.bl-related-book-details .bl-book-title {
	font-size: 16px;
	font-weight: 700;
	letter-spacing: -0.16px;
	line-height:24px;
	margin-top: 4px;
}

.bl-related-book-description {
	font-size:12px;
	line-height: 16px;
	 color: rgba(8,21,44, 60%);
	margin: 0;
}

.bl-related-book-taxonomies {
	margin-top: 3px;
	line-height: 15px;
}

.bl-related-books-grid {
	gap: 20px;
}

@media (max-width: 767px) {
    .bl-related-books-grid {
        grid-template-columns: 1fr;
    }
	.bl-book-card img {
		width: 100%;
	}
}
@media (max-width: 767px) {
    .bl-books-grid-3,
    .bl-books-grid-4 {
    grid-template-columns: 1fr;
    gap: 20px;
    }
}