/*
 * LZT Blog Styling
 * Custom styles for the blog following the LZT Brand Guide
 */

/* Root Variables - LZT Brand Colors */
:root {
	--lzt-brand-yellow: #fecb00;
	--lzt-brand-blue: #0f172a;
	--lzt-brand-dark: #111827;
	--lzt-brand-ink: #1c1917;
	--lzt-brand-purple: #7c3aed;
	--lzt-surface: #f9f9f9;
}

/* Main Blog Container */
.home main.wp-block-group,
.blog main.wp-block-group,
.archive main.wp-block-group {
	font-family: 'Montserrat', 'Helvetica Neue', 'Arial', sans-serif;
	background: #ffffff;
}
.blog :where(.wp-site-blocks) > *,
.category :where(.wp-site-blocks) > *,
.archive :where(.wp-site-blocks) > * {
	margin-block-start: 0;
}

.wp-block-post {
	display: flex;
	flex-direction: column;
	position: relative;
	margin-top: 0 !important;
}
.wp-blog-post figure {
	margin-bottom: 0;
}

/* Clickable card — entire post block is a link */
.wp-block-post .wp-block-post-title a::after {
	content: '';
	position: absolute;
	inset: 0;
}
.blog .wp-block-group .wp-block-post-template-is-layout-flow {
	max-width: 1440px;
	margin: 0 auto;
}
	/* Two Column Grid Layout for Desktop */
.wp-block-query .wp-block-post-template {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
	padding: 0 !important;
}

/* Blog Post Container */
.wp-block-query .wp-block-post-template .wp-block-group {
	background: var(--lzt-surface);
	border-radius: 5px;
	padding: 1rem 0 0 0 !important;
	margin-bottom: 0;
	height: 100%;
	display: flex;
	flex-direction: column;
}
.wp-block-query .wp-block-post-template .wp-block-post-featured-image {
	max-width: 100%;
	margin-bottom: 0;
}

.archive.category .wp-block-query .alignfull {
	max-width: 1440px;
	margin: 0 auto;
}
.wp-block-query .wp-block-post-template .wp-block-group .wp-block-post-date {
	display: none;
}
.wp-block-query .wp-block-post-template .wp-block-group .wp-block-post-title {
	padding-right: 1.5rem;
	padding-left: 1.5rem;
	padding-bottom: 1.5rem;
}

	/* Featured Image Styling */
.wp-block-post-featured-image img {
	border-radius: 5px !important;
}

/* Post Title Styling */
.wp-block-post-title,
.wp-block-post-title a {
	color: var(--lzt-brand-blue) !important;
	font-weight: 700 !important;
	font-size: 1.4rem !important;
	line-height: 1.2 !important;
	margin-bottom: 0.2 !important;
	text-decoration: none !important;
	width: 100%;
}

.wp-block-post-title a:hover,
.wp-block-post-title a:focus-visible {
	color: var(--lzt-brand-dark) !important;
}

/* Post Content Styling */
.blog .wp-block-post-content,
.blog .wp-block-post-content p,
.archive .wp-block-post-content,
.archive .wp-block-post-content p,
.home .wp-block-post-content,
.home .wp-block-post-content p {
	display: none !important;
}

.wp-block-post-content a {
	color: var(--lzt-brand-blue);
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.wp-block-post-content a:hover,
.wp-block-post-content a:focus-visible {
	color: var(--lzt-brand-purple);
}



/* Query Title (Archive Pages) */
.wp-block-query-title {
	font-size: 2.6rem !important;
	font-weight: 700 !important;
	color: var(--lzt-brand-blue) !important;
	line-height: 1.2 !important;
	margin-bottom: 2rem !important;
	text-align: left;
}

/* Term Description */
.wp-block-term-description {
	font-size: 1.125rem !important;
	color: #6b7280 !important;
	text-align: left;
	margin-bottom: 3rem !important;
	max-width: 720px;
	margin-left: auto;
	margin-right: auto;
}

/* Pagination Styling */
.wp-block-query-pagination {
	margin-top: 60px !important;
	padding: 20px 0 !important;
}

.wp-block-query-pagination a,
.wp-block-query-pagination .page-numbers {
	background: var(--lzt-brand-yellow) !important;
	color: var(--lzt-brand-ink) !important;
	padding: 12px 20px !important;
	border-radius: 5px !important;
	text-decoration: none !important;
	font-weight: 600 !important;
	font-size: 0.875rem !important;
	display: inline-block;
	min-width: 44px;
	text-align: center;
}

.wp-block-query-pagination a:hover,
.wp-block-query-pagination a:focus-visible {
	background: #ffd700 !important;
}

.wp-block-query-pagination .page-numbers.current {
	background: var(--lzt-brand-blue) !important;
	color: #ffffff !important;
}

.wp-block-query-pagination .wp-block-query-pagination-previous,
.wp-block-query-pagination .wp-block-query-pagination-next {
	background: var(--lzt-brand-dark) !important;
	color: #ffffff !important;
}

.wp-block-query-pagination .wp-block-query-pagination-previous:hover,
.wp-block-query-pagination .wp-block-query-pagination-next:hover,
.wp-block-query-pagination .wp-block-query-pagination-previous:focus-visible,
.wp-block-query-pagination .wp-block-query-pagination-next:focus-visible {
	background: #000000 !important;
}

/* No Results Message */
.wp-block-query .wp-block-query-no-results p {
	font-size: 1.125rem;
	color: #6b7280;
	text-align: center;
	padding: 2rem;
	background: var(--lzt-surface);
	border-radius: 5px;
}

/* Post Meta Information */
.wp-block-post-author,
.wp-block-post-author a {
	color: var(--lzt-brand-blue) !important;
	font-weight: 600 !important;
	text-decoration: none !important;
}

.wp-block-post-author a:hover,
.wp-block-post-author a:focus-visible {
	color: var(--lzt-brand-purple) !important;
}

/* Categories and Tags */
.wp-block-post-terms,
.wp-block-post-terms a {
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--lzt-brand-blue) !important;
	text-decoration: none !important;
}

.wp-block-post-terms a:hover,
.wp-block-post-terms a:focus-visible {
	color: var(--lzt-brand-purple) !important;
}

/* Read More / Continue Reading Links */
.more-link,
a.more-link {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	background: var(--lzt-brand-yellow) !important;
	color: var(--lzt-brand-ink) !important;
	padding: 12px 32px !important;
	border-radius: 5px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	margin-top: 1rem;
}

.more-link:hover,
.more-link:focus-visible {
	background: #ffd700 !important;
}

/* Responsive Design */
@media (max-width: 768px) {
	/* Single column on mobile */
	.wp-block-query .wp-block-post-template {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.wp-block-query .wp-block-post-template .wp-block-group {
		padding: 28px 20px !important;
		border-radius: 5px;
	}

	.wp-block-post-title,
	.wp-block-post-title a {
		font-size: 1.75rem !important;
		width: 100%;
	}

	.wp-block-query-title {
		font-size: 2rem !important;
	}

	.wp-block-query-pagination {
		flex-direction: column;
		gap: 12px;
	}
}

/* Focus Styles for Accessibility */
a:focus-visible,
button:focus-visible {
	outline: 2px solid var(--lzt-brand-yellow);
	outline-offset: 4px;
}
