/*
 * km Page Navigation. Adjust with CSS custom properties, e.g.
 * :root { --kmpn-accent: #24539a; --kmpn-title: #0f2a4b; --kmpn-radius: 16px; --kmpn-font-heading: "Barlow Condensed"; }
 */
.kmpn {
	--_accent: var(--kmpn-accent, var(--wp--preset--color--primary, #2457a6));
	--_title: var(--kmpn-title, var(--wp--preset--color--contrast, #13253f));
	--_muted: var(--kmpn-muted, #555e6b);
	--_line: var(--kmpn-line, #dfe4ec);
	--_radius: var(--kmpn-radius, 14px);
	--_shadow: var(--kmpn-shadow, 0 8px 24px rgba(0, 0, 0, .08));
	display: grid; grid-template-columns: 1fr 1fr; gap: 16px; box-sizing: border-box;
	max-width: var(--wp--style--global--content-size, 780px); margin: 3rem auto 0 !important; padding-top: 1.5rem; border-top: 1px solid var(--_line);
}
.kmpn__link { display: flex; flex-direction: column; gap: 2px; padding: 16px 20px; border: 1px solid var(--_line); border-radius: var(--_radius); background: #fff; color: inherit; text-decoration: none !important; transition: border-color .2s, box-shadow .2s, transform .2s; }
.kmpn__link:hover, .kmpn__link:focus-visible { border-color: var(--_accent); box-shadow: var(--_shadow); transform: translateY(-2px); }
.kmpn__link:focus-visible { outline: 3px solid var(--_accent); outline-offset: 2px; }
.kmpn__link.is-empty { visibility: hidden; }
.kmpn__next { text-align: right; align-items: flex-end; }
.kmpn__dir { font-size: .72rem; font-weight: 700; line-height: 1.3; letter-spacing: .1em; text-transform: uppercase; color: var(--_accent); }
.kmpn__group { font-size: .8rem; color: var(--_muted); }
.kmpn__title { font: var(--kmpn-title-weight, 700) 1.2rem/1.2 var(--kmpn-font-heading, inherit); text-transform: var(--kmpn-title-transform, none); color: var(--_title); }
.kmpn__link:hover .kmpn__title { color: var(--_accent); }

/* Room in the middle (e.g. km Page Feedback) */
.kmpn.has-middle { grid-template-columns: 1fr minmax(180px, 230px) 1fr; align-items: stretch; }
.kmpn.has-middle > :not(.kmpn__link) { order: 1; }
.kmpn.has-middle .kmpn__next, .kmpn.has-middle .kmpn__link.is-empty:last-child { order: 2; }
.kmpn.is-solo { grid-template-columns: 1fr; }
.kmpn.is-solo .kmpn__link.is-empty { display: none; }

@media (max-width: 600px) {
	.kmpn { gap: 10px; }
	.kmpn__link { padding: 12px 14px; }
	.kmpn__title { font-size: 1.05rem; }
	.kmpn.has-middle { grid-template-columns: 1fr 1fr; }
	.kmpn.has-middle > :not(.kmpn__link) { grid-column: 1 / -1; order: -1; flex-direction: row; justify-content: space-between; margin-bottom: 4px; padding: 2px 2px 12px; border-bottom: 1px dashed var(--_line); }
	.kmpn.is-solo.has-middle { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { .kmpn__link { transition: none; } .kmpn__link:hover { transform: none; } }
