/**
 * Blog listing + single article (inc/sections.php blog_listing / single_article).
 * Loaded with core/group.
 */

/* ---------- Category chips ---------- */
.sefina-chips {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--sm);
	margin: var(--wp--preset--spacing--sm) 0 0;
	padding: 0;
	list-style: none;
}

.sefina-chips li {
	margin: 0;
}

.sefina-chips a {
	display: inline-block;
	padding: 0.375rem 0.875rem;
	border: 1px solid var(--wp--preset--color--border-strong);
	border-radius: var(--wp--custom--radius--full);
	background: var(--wp--preset--color--base);
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--label-md);
	font-weight: 600;
	text-decoration: none;
	transition: background-color var(--wp--custom--transition), color var(--wp--custom--transition);
}

.sefina-chips a:hover,
.sefina-chips .current-cat a {
	border-color: var(--wp--preset--color--primary);
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--on-dark);
}

/* ---------- Grid + pagination ---------- */
.sefina-blog-grid .wp-block-post-template {
	margin: 0;
	padding: 0;
}

.sefina-pagination {
	gap: var(--wp--preset--spacing--sm);
	margin-top: var(--wp--preset--spacing--xl);
	font-weight: 700;
}

.sefina-pagination a,
.sefina-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.5rem;
	height: 2.5rem;
	padding: 0 0.75rem;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius--md);
	background: var(--wp--preset--color--base);
	color: var(--wp--preset--color--primary);
	text-decoration: none;
}

.sefina-pagination .page-numbers.current {
	border-color: var(--wp--preset--color--primary);
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--on-dark);
}

.sefina-pagination .page-numbers.dots {
	border: 0;
	background: none;
}

/* ---------- Callback card after the grid ---------- */
.sefina-callback {
	align-items: center;
	gap: var(--wp--preset--spacing--xl);
	padding: var(--wp--preset--spacing--xl);
	border: 1px solid var(--wp--preset--color--secondary-border);
	border-radius: var(--wp--custom--radius--3xl);
	background: var(--wp--preset--color--secondary-soft);
}

.sefina-callback__text > * {
	margin-block: 0 var(--wp--preset--spacing--sm);
}

.sefina-callback h2 {
	font-size: var(--wp--preset--font-size--headline-md);
}

/* ---------- Article header ---------- */
.sefina-article-hero .sefina-article__title {
	max-width: 52rem;
	font-size: clamp(1.875rem, 4vw, 2.75rem);
}

.sefina-article__meta {
	gap: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--lg);
	color: var(--wp--preset--color--contrast-2);
	font-size: var(--wp--preset--font-size--label-md);
	font-weight: 600;
}

.sefina-article__meta > * {
	margin: 0;
}

.sefina-article__meta .material-symbols-outlined {
	color: var(--wp--preset--color--secondary-text);
}

.sefina-article__image {
	margin-top: var(--wp--preset--spacing--md) !important;
}

.sefina-article__image img {
	border-radius: var(--wp--custom--radius--3xl);
	box-shadow: var(--wp--preset--shadow--level-2);
}

/* ---------- Article body ---------- */
.sefina-article__content {
	font-size: var(--wp--preset--font-size--body-lg);
	line-height: 1.75;
}

.sefina-article__content > * {
	max-width: 46rem;
}

.sefina-article__content h2 {
	margin-top: var(--wp--preset--spacing--xl);
	font-size: var(--wp--preset--font-size--headline-md);
}

.sefina-article__content h3 {
	margin-top: var(--wp--preset--spacing--lg);
	font-size: var(--wp--preset--font-size--headline-sm);
}

.sefina-article__content ul {
	padding-left: 1.25rem;
}

.sefina-article__content li::marker {
	color: var(--wp--preset--color--secondary-text);
}

.sefina-article__content a {
	color: var(--wp--preset--color--primary);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.sefina-article__content img {
	border-radius: var(--wp--custom--radius--2xl);
}

.sefina-article__cta {
	margin-top: var(--wp--preset--spacing--xl) !important;
}

.sefina-article__cta h2 {
	font-size: var(--wp--preset--font-size--headline-md);
}

.sefina-article__cta p:not([class]) {
	color: var(--wp--preset--color--on-dark-soft);
}

/* ---------- Sidebar ---------- */
@media (min-width: 782px) {
	.sefina-aside {
		position: sticky;
		top: calc(var(--wp-admin--admin-bar--height, 0px) + 9rem);
	}
}

.sefina-aside__sim h2,
.sefina-aside__cats-card h2 {
	font-size: var(--wp--preset--font-size--headline-sm);
}

.sefina-aside__sim p:not([class]) {
	color: var(--wp--preset--color--on-dark-soft);
	font-size: var(--wp--preset--font-size--body-sm);
}

.sefina-aside__cats {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: var(--wp--preset--font-size--body-sm);
}

.sefina-aside__cats li {
	display: flex;
	justify-content: space-between;
	padding: 0.375rem 0;
	border-bottom: 1px solid var(--wp--preset--color--border);
	color: var(--wp--preset--color--contrast-2);
}

.sefina-aside__cats a {
	color: var(--wp--preset--color--primary);
	font-weight: 600;
	text-decoration: none;
}

.sefina-aside__cats a:hover {
	text-decoration: underline;
}
