.kka-button, .kka-search-form button, input[type="submit"], button[type="submit"] {
	display: inline-flex; min-height: 2.75rem; align-items: center; justify-content: center;
	padding: 0.65rem 1.15rem; border: 2px solid var(--kka-color-accent); border-radius: var(--kka-radius-small);
	background: var(--kka-color-accent); color: #fff; font-weight: 750; line-height: 1.2; text-decoration: none; cursor: pointer;
}
.kka-button:hover, .kka-search-form button:hover { background: var(--kka-color-accent-dark); border-color: var(--kka-color-accent-dark); }
.kka-button--outline { background: transparent; color: var(--kka-color-accent-dark); }
.kka-button-group { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-block: var(--kka-space-3); }
.kka-eyebrow { color: var(--kka-color-accent); font-size: var(--kka-text-small); font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.kka-post-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--kka-space-3); }
.kka-post-card { overflow: hidden; background: var(--kka-color-card); border: 1px solid var(--kka-color-border); border-radius: var(--kka-radius-medium); box-shadow: var(--kka-shadow-card); }
.kka-post-card__image { display: block; aspect-ratio: 4 / 3; overflow: hidden; }
.kka-post-card__image img { width: 100%; height: 100%; object-fit: cover; }
.kka-post-card__body { padding: var(--kka-space-3); }
.kka-post-card__body h2 { font-size: var(--kka-text-h3); }
.kka-post-card__body h2 a { color: var(--kka-color-primary); text-decoration: none; }
.kka-post-card__meta, .kka-article-meta { color: #666; font-size: var(--kka-text-small); }
.kka-empty-state { width: min(100%, 760px); margin-inline: auto; padding-block: var(--kka-space-6); text-align: center; }
.kka-search-form { max-width: 36rem; margin: var(--kka-space-3) auto 0; text-align: left; }
.kka-search-form label { display: block; margin-bottom: 0.35rem; font-weight: 700; }
.kka-search-form__row { display: flex; gap: 0.5rem; }
.kka-search-form input { min-width: 0; flex: 1; min-height: 2.75rem; padding: 0.65rem 0.75rem; border: 1px solid #757575; border-radius: var(--kka-radius-small); }
.kka-breadcrumbs { margin-bottom: var(--kka-space-3); font-size: var(--kka-text-small); }
.navigation.pagination, .post-navigation { margin-top: var(--kka-space-4); }
.nav-links { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0.5rem; }
.page-numbers { padding: 0.45rem 0.7rem; }
.page-numbers.current { background: var(--kka-color-primary); color: #fff; border-radius: 0.25rem; }

