/* ============================================================
   Lokrin frontend base — overrides Mercury parent's demo look.
   Loaded AFTER Mercury parent style.css.
   Targets: typography rhythm, link/button styling, hairlines,
   card defaults, form fields. NO drop shadows. NO gradients.
   ============================================================ */

/* ---- Base ---------------------------------------------- */

html {
	font-size: 100%;
	scroll-behavior: smooth;
}

body {
	background: var(--lkr-bg);
	color: var(--lkr-ink);
	font-family: var(--lkr-font-body);
	font-size: var(--lkr-text-base);
	line-height: var(--lkr-leading-normal);
	font-feature-settings: "ss01", "kern";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

/* ---- Display headings (Newsreader) --------------------- */

h1, h2, h3,
.wp-block-post-title,
.wp-block-heading.is-style-display {
	font-family: var(--lkr-font-display);
	font-weight: 500;
	color: var(--lkr-ink);
	letter-spacing: var(--lkr-tracking-tight);
}

h1 { font-size: var(--lkr-text-4xl); line-height: var(--lkr-leading-tight); }
h2 { font-size: var(--lkr-text-3xl); line-height: 1.15; }
h3 { font-size: var(--lkr-text-2xl); line-height: var(--lkr-leading-snug); }

/* h4 is sans by design — section labels, card titles */
h4 {
	font-family: var(--lkr-font-body);
	font-weight: 600;
	font-size: var(--lkr-text-xl);
	line-height: var(--lkr-leading-snug);
	color: var(--lkr-ink);
	letter-spacing: 0;
}

h5, h6 {
	font-family: var(--lkr-font-body);
	font-weight: 600;
	font-size: var(--lkr-text-base);
	line-height: var(--lkr-leading-snug);
	color: var(--lkr-ink-soft);
	text-transform: uppercase;
	letter-spacing: var(--lkr-tracking-wide);
}

/* ---- Paragraph rhythm ---------------------------------- */

p {
	margin: 0 0 var(--lkr-space-3);
	max-width: 70ch;
}

.wp-block-post-content > p:first-of-type {
	font-size: var(--lkr-text-lg);
	color: var(--lkr-ink-soft);
}

/* ---- Links --------------------------------------------- */

a {
	color: var(--lkr-accent);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
	transition: color 120ms ease;
}

a:hover { color: var(--lkr-accent-hover); }

/* Strip underline on nav and button-like contexts */
.wp-block-navigation a,
.wp-block-buttons a,
.wp-block-post-template a:where(.wp-block-post-title, .wp-block-post-featured-image) {
	text-decoration: none;
}

/* ---- Buttons (no pills, no shadows) -------------------- */

.wp-block-button__link,
button:not(.components-button) {
	font-family: var(--lkr-font-body);
	font-weight: 500;
	font-size: var(--lkr-text-base);
	letter-spacing: 0.01em;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	border: var(--lkr-border-thin) solid var(--lkr-accent);
	border-radius: var(--lkr-radius-sm);
	padding: 0.7em 1.4em;
	box-shadow: none;
	transition: background-color 120ms ease, border-color 120ms ease;
}

.wp-block-button__link:hover,
button:not(.components-button):hover {
	background: var(--lkr-accent-hover);
	border-color: var(--lkr-accent-hover);
	color: var(--lkr-on-accent);
}

.wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent;
	color: var(--lkr-accent);
	border-color: var(--lkr-line-strong);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: var(--lkr-accent-soft);
	color: var(--lkr-accent-hover);
	border-color: var(--lkr-accent);
}

/* ---- Hairlines & separators ---------------------------- */

hr,
.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
	border: 0;
	border-top: var(--lkr-border-thin) solid var(--lkr-line);
	margin: var(--lkr-space-5) 0;
}

/* ---- Quote ---------------------------------------------- */

blockquote,
.wp-block-quote {
	border-left: var(--lkr-border-thick) solid var(--lkr-accent);
	padding: var(--lkr-space-2) var(--lkr-space-4);
	margin: var(--lkr-space-4) 0;
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-xl);
	font-style: normal;
	font-weight: 400;
	color: var(--lkr-ink);
	line-height: var(--lkr-leading-snug);
}

/* ---- Tables ------------------------------------------- */

.wp-block-table table {
	border-collapse: collapse;
	width: 100%;
	font-size: var(--lkr-text-sm);
}

.wp-block-table th,
.wp-block-table td {
	border: var(--lkr-border-thin) solid var(--lkr-line);
	padding: var(--lkr-space-3);
	text-align: left;
	vertical-align: top;
}

.wp-block-table th {
	background: var(--lkr-bg-alt);
	font-weight: 600;
	font-size: var(--lkr-text-xs);
	text-transform: uppercase;
	letter-spacing: var(--lkr-tracking-wide);
	color: var(--lkr-ink-soft);
}

/* ---- Images & media ------------------------------------ */

img,
.wp-block-image img {
	max-width: 100%;
	height: auto;
	border-radius: var(--lkr-radius-sm);
}

figcaption {
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-muted);
	margin-top: var(--lkr-space-2);
	font-style: normal;
}

/* ---- Cards (default — no shadows, hairline border) ----- */

.wp-block-group.is-style-lkr-card,
.is-style-lkr-card {
	background: var(--lkr-surface);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-4);
	transition: border-color 150ms ease;
}

.is-style-lkr-card:hover { border-color: var(--lkr-line-strong); }

/* ---- Pill / chip / badge (small, restrained) ----------- */

.is-style-lkr-chip {
	display: inline-block;
	font-size: var(--lkr-text-xs);
	font-weight: 500;
	letter-spacing: var(--lkr-tracking-wide);
	text-transform: uppercase;
	background: var(--lkr-bg-alt);
	color: var(--lkr-ink-soft);
	padding: 0.3em 0.7em;
	border-radius: var(--lkr-radius-xs);
	border: var(--lkr-border-thin) solid var(--lkr-line);
}

.is-style-lkr-chip-license {
	background: var(--lkr-accent-soft);
	color: var(--lkr-accent);
	border-color: rgba(31,58,95,0.25);
}

.is-style-lkr-chip-warn {
	background: var(--lkr-warn-bg);
	color: var(--lkr-warn);
	border-color: var(--lkr-warn);
}

.is-style-lkr-chip-risk {
	background: var(--lkr-risk-bg);
	color: var(--lkr-risk);
	border-color: var(--lkr-risk);
}

/* ---- Notice panels ------------------------------------- */

.is-style-lkr-notice {
	background: var(--lkr-bg-alt);
	border-left: var(--lkr-border-thick) solid var(--lkr-line-strong);
	padding: var(--lkr-space-3) var(--lkr-space-4);
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-soft);
	border-radius: 0 var(--lkr-radius-sm) var(--lkr-radius-sm) 0;
}

.is-style-lkr-notice-warn { border-left-color: var(--lkr-warn); }
.is-style-lkr-notice-risk { border-left-color: var(--lkr-risk); }
.is-style-lkr-notice-info { border-left-color: var(--lkr-accent); }

/* ---- Section labels (eyebrow) -------------------------- */

.is-style-lkr-eyebrow {
	font-size: var(--lkr-text-xs);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: var(--lkr-tracking-wide);
	color: var(--lkr-ink-muted);
	font-family: var(--lkr-font-body);
}

/* ---- Metadata strip (byline / date / read-time) -------- */

.is-style-lkr-meta {
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-muted);
	font-family: var(--lkr-font-body);
}

/* ---- Topic rail (horizontal scroll) -------------------- */

.is-style-lkr-topic-rail {
	display: flex;
	gap: var(--lkr-space-2);
	overflow-x: auto;
	padding: var(--lkr-space-2) 0;
	scrollbar-width: thin;
}

.is-style-lkr-topic-rail > * {
	flex-shrink: 0;
}

/* ---- Editorial panel (subtle alt-bg block) ------------- */

.is-style-lkr-editorial-panel {
	background: var(--lkr-bg-alt);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-5) var(--lkr-space-4);
}

/* ---- Comparison table (casino) ------------------------- */

.is-style-lkr-comparison-table table {
	border-collapse: separate;
	border-spacing: 0;
	font-size: var(--lkr-text-sm);
}

.is-style-lkr-comparison-table th {
	background: transparent;
	border: 0;
	border-bottom: var(--lkr-border-thick) solid var(--lkr-ink);
	padding: var(--lkr-space-3) var(--lkr-space-3);
}

.is-style-lkr-comparison-table td {
	border: 0;
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
	padding: var(--lkr-space-3) var(--lkr-space-3);
}

/* ---- Mercury parent overrides -------------------------- */

/* Reset Mercury's chunky shadows and rounded corners */
.mercury-card,
.casino-list .casino-item,
.bonus-list .bonus-item {
	box-shadow: none !important;
	border-radius: var(--lkr-radius-md) !important;
	border: var(--lkr-border-thin) solid var(--lkr-line) !important;
	background: var(--lkr-surface) !important;
}

/* ---- Focus rings (accessibility) ----------------------- */

a:focus-visible,
button:focus-visible,
.wp-block-button__link:focus-visible {
	outline: 2px solid var(--lkr-accent);
	outline-offset: 2px;
	border-radius: var(--lkr-radius-xs);
}

/* ---- Responsive ---------------------------------------- */

@media (max-width: 768px) {
	body { font-size: 1rem; }
	h1 { font-size: var(--lkr-text-3xl); }
	h2 { font-size: var(--lkr-text-2xl); }
	h3 { font-size: var(--lkr-text-xl); }
	.is-style-lkr-editorial-panel { padding: var(--lkr-space-4) var(--lkr-space-3); }
}

/* ============================================================
   Lokrin shell — header, footer, wordmark.
   Used by page-lokrin-home.php (and any future Lokrin templates
   that bypass Mercury's classic chrome).
   Visually identical on root and /casino/.
   ============================================================ */

/* ---- Reset Mercury bleed on Lokrin templates ----------- */

.lkr-page {
	margin: 0;
	padding: 0;
	background: var(--lkr-bg);
	color: var(--lkr-ink);
	font-family: var(--lkr-font-body);
	font-size: var(--lkr-text-base);
	line-height: var(--lkr-leading-normal);
}

.lkr-page * { box-sizing: border-box; }

/* Hide any Mercury structural divs that may slip through */
.lkr-page .space-box,
.lkr-page .space-header,
.lkr-page .space-title-box,
.lkr-page .space-page-section > .space-page-section-ins > .space-sidebar,
.lkr-page .space-footer { display: none !important; }

/* ---- Skip link ----------------------------------------- */

.lkr-skip-link {
	position: absolute;
	left: -9999px;
	top: 0;
	z-index: 1000;
	background: var(--lkr-ink);
	color: var(--lkr-on-accent);
	padding: 0.6em 1em;
	border-radius: var(--lkr-radius-sm);
	text-decoration: none;
}

.lkr-skip-link:focus { left: 1rem; top: 1rem; }

/* ---- Site header --------------------------------------- */

.lkr-site-header {
	background: var(--lkr-bg);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
	position: relative;
	z-index: 50;
}

.lkr-site-header__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: var(--lkr-space-4) var(--lkr-space-3);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--lkr-space-4);
}

/* ---- Wordmark (single, identical on both installs) ----- */

.lkr-wordmark {
	display: inline-block;
	font-family: var(--lkr-font-display);
	font-weight: 600;
	font-size: 1.875rem;
	line-height: 1;
	letter-spacing: -0.025em;
	color: var(--lkr-ink);
	text-decoration: none;
	transition: color 120ms ease;
}

.lkr-wordmark:hover,
.lkr-wordmark:focus { color: var(--lkr-accent); text-decoration: none; }

.lkr-wordmark--small {
	font-size: 1.5rem;
}

/* ---- Primary nav --------------------------------------- */

.lkr-primary-nav { display: flex; align-items: center; }

.lkr-nav-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: var(--lkr-space-4);
	align-items: center;
}

.lkr-nav-list li { margin: 0; }

.lkr-nav-list a {
	font-family: var(--lkr-font-body);
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--lkr-ink-soft);
	text-decoration: none;
	padding: 0.5em 0;
	border-bottom: 2px solid transparent;
	transition: color 120ms ease, border-color 120ms ease;
}

.lkr-nav-list a:hover,
.lkr-nav-list .current-menu-item > a {
	color: var(--lkr-accent);
	border-bottom-color: var(--lkr-accent);
}

/* Hamburger toggle — hidden on desktop.
   Defaults forced with !important because Mercury parent applies a
   default button background that obscures the bars (regression seen in v0.9.22). */
.lkr-nav-toggle {
	display: none;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 5px;
	width: 44px;
	height: 44px;
	background: var(--lkr-midnight) !important;
	border: 1px solid var(--lkr-midnight) !important;
	padding: 0 !important;
	cursor: pointer;
	margin-left: auto;
	border-radius: 6px;
	color: #fff !important;
	box-shadow: none !important;
	transition: background-color 0.18s ease, transform 0.18s ease;
}
.lkr-nav-toggle:hover,
.lkr-nav-toggle:focus-visible {
	background: #112a55 !important;
	outline: 2px solid var(--lkr-gold);
	outline-offset: 2px;
}
.lkr-nav-toggle:active { transform: scale(0.96); }

.lkr-nav-toggle__bar {
	display: block;
	width: 22px;
	height: 2px;
	background: #fff !important;
	border-radius: 2px;
	transition: transform 0.22s ease, opacity 0.22s ease, background-color 0.22s ease;
}
.lkr-nav-toggle--open .lkr-nav-toggle__bar:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.lkr-nav-toggle--open .lkr-nav-toggle__bar:nth-child(2) { opacity: 0; }
.lkr-nav-toggle--open .lkr-nav-toggle__bar:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Body scroll lock when mobile menu is open */
body.lkr-nav-locked { overflow: hidden; }

.lkr-nav-empty {
	color: var(--lkr-ink-muted);
	font-size: 0.875rem;
	font-style: normal;
}

/* ---- Main ---------------------------------------------- */

.lkr-main {
	display: block;
	min-height: 50vh;
}

/* Make Mercury parent's containers in main content not impose */
.lkr-main .space-page-content-wrap,
.lkr-main .space-page-section,
.lkr-main .space-content-section { width: auto !important; float: none !important; padding: 0 !important; }

/* ---- Site footer --------------------------------------- */

.lkr-site-footer {
	background: var(--lkr-bg-alt);
	border-top: var(--lkr-border-thin) solid var(--lkr-line);
	margin-top: var(--lkr-space-7);
	color: var(--lkr-ink-soft);
}

.lkr-site-footer__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: var(--lkr-space-6) var(--lkr-space-3) var(--lkr-space-5);
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr;
	gap: var(--lkr-space-5);
}

.lkr-footer-col .lkr-wordmark { margin-bottom: var(--lkr-space-3); }

.lkr-footer-tagline {
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-muted);
	max-width: 32ch;
	margin: 0;
}

.lkr-footer-heading {
	font-family: var(--lkr-font-body);
	font-size: var(--lkr-text-xs);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: var(--lkr-tracking-wide);
	color: var(--lkr-ink-muted);
	margin: 0 0 var(--lkr-space-3);
}

.lkr-footer-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.lkr-footer-list li { margin: 0 0 var(--lkr-space-2); }

.lkr-footer-list a {
	font-family: var(--lkr-font-body);
	font-size: var(--lkr-text-sm);
	font-weight: 400;
	color: var(--lkr-ink-soft);
	text-decoration: none;
}

.lkr-footer-list a:hover { color: var(--lkr-accent); text-decoration: underline; text-underline-offset: 0.18em; }

.lkr-site-footer__legal {
	border-top: var(--lkr-border-thin) solid var(--lkr-line);
	background: var(--lkr-bg-alt);
}

.lkr-site-footer__legal-inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: var(--lkr-space-3) var(--lkr-space-3);
	font-size: var(--lkr-text-xs);
	color: var(--lkr-ink-muted);
	display: flex;
	gap: var(--lkr-space-2);
	align-items: center;
	flex-wrap: wrap;
}

.lkr-footer-divider { color: var(--lkr-line-strong); }

/* ---- Hero pattern polish (when sitting flush below header) */

.lkr-hero-editorial,
.lkr-hero-casino-comparison {
	background: var(--lkr-bg);
}

/* ---- Responsive ---------------------------------------- */

@media (max-width: 900px) {
	.lkr-site-footer__inner { grid-template-columns: 1fr; gap: var(--lkr-space-4); padding: var(--lkr-space-5) var(--lkr-space-3); }
}

@media (max-width: 768px) {
	/* Show hamburger, hide desktop nav */
	.lkr-nav-toggle { display: flex; }
	.lkr-site-header__inner { padding: var(--lkr-space-3) var(--lkr-space-4); }
	.lkr-wordmark { font-size: 1.5rem; }

	.lkr-primary-nav {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		background: var(--lkr-bg);
		border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
		box-shadow: 0 8px 24px rgba(0,0,0,.08);
		z-index: 200;
		padding: var(--lkr-space-3) var(--lkr-space-4);
	}
	.lkr-primary-nav--open { display: block; }

	.lkr-nav-list {
		flex-direction: column;
		align-items: flex-start;
		gap: 0;
	}
	.lkr-nav-list li { width: 100%; }
	.lkr-nav-list a {
		display: block;
		padding: 0.65rem 0;
		font-size: 1rem;
		border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
	}
	.lkr-nav-list li:last-child a { border-bottom: none; }
}

/* ============================================================
   Lokrin Home — section components, critical Mercury overrides.
   All rules use body.lkr-page prefix or !important to defeat
   Mercury parent's high-specificity demo styles.
   ============================================================ */

/* ---- Critical resets / Mercury defeats --------------- */

body.lkr-page {
	overflow: visible !important;
	margin: 0 !important;
	padding: 0 !important;
	background: var(--lkr-bg) !important;
	color: var(--lkr-ink) !important;
	font-family: var(--lkr-font-body) !important;
	font-size: var(--lkr-text-base) !important;
	line-height: var(--lkr-leading-normal) !important;
}

body.lkr-page h1,
body.lkr-page h2,
body.lkr-page h3 {
	font-family: var(--lkr-font-display) !important;
	font-weight: 500 !important;
	color: var(--lkr-ink) !important;
	letter-spacing: -0.015em !important;
	margin: 0;
}

body.lkr-page h1 { font-size: var(--lkr-text-4xl); line-height: 1.1; }
body.lkr-page h2 { font-size: var(--lkr-text-3xl); line-height: 1.15; }
body.lkr-page h3 { font-size: var(--lkr-text-2xl); line-height: 1.25; }
body.lkr-page h4 {
	font-family: var(--lkr-font-body) !important;
	font-weight: 600 !important;
	font-size: var(--lkr-text-xl);
	line-height: 1.3;
	margin: 0;
}

body.lkr-page p { max-width: 70ch; }
body.lkr-page ul, body.lkr-page ol { padding: 0; margin: 0; }

/* ---- Header layout: defeat Mercury vertical stacking -- */

body.lkr-page .lkr-site-header {
	background: var(--lkr-bg) !important;
	border-bottom: 1px solid var(--lkr-line) !important;
	width: 100% !important;
}

body.lkr-page .lkr-site-header__inner {
	max-width: 1240px !important;
	margin: 0 auto !important;
	padding: 1.5rem !important;
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 2rem !important;
}

body.lkr-page .lkr-wordmark,
body.lkr-page .lkr-wordmark__text {
	font-family: var(--lkr-font-display) !important;
	font-weight: 600 !important;
	font-size: 1.875rem !important;
	line-height: 1 !important;
	letter-spacing: -0.025em !important;
	color: var(--lkr-ink) !important;
	text-decoration: none !important;
	border: 0 !important;
}

body.lkr-page .lkr-wordmark { display: inline-block !important; }
body.lkr-page .lkr-wordmark--small { font-size: 1.5rem !important; }

body.lkr-page .lkr-primary-nav { display: flex !important; }

body.lkr-page .lkr-nav-list {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: row !important;
	gap: 1.75rem !important;
	align-items: center !important;
}

body.lkr-page .lkr-nav-list li {
	margin: 0 !important;
	list-style: none !important;
	display: inline-block !important;
}

body.lkr-page .lkr-nav-list a {
	font-family: var(--lkr-font-body) !important;
	font-size: 0.9375rem !important;
	font-weight: 500 !important;
	color: var(--lkr-ink-soft) !important;
	text-decoration: none !important;
	border: 0 !important;
	padding: 0.5em 0 !important;
	display: inline-block !important;
}

body.lkr-page .lkr-nav-list a:hover,
body.lkr-page .lkr-nav-list .current-menu-item > a {
	color: var(--lkr-accent) !important;
}

/* ---- Sections ----------------------------------------- */

body.lkr-page .lkr-section {
	padding: 0 1.5rem;
}

body.lkr-page .lkr-section--alt {
	background: var(--lkr-bg-alt) !important;
}

body.lkr-page .lkr-section--rail {
	background: var(--lkr-bg) !important;
	border-top: 1px solid var(--lkr-line) !important;
	border-bottom: 1px solid var(--lkr-line) !important;
}

body.lkr-page .lkr-section--rg {
	background: var(--lkr-bg) !important;
}

body.lkr-page .lkr-section-head {
	align-items: flex-end !important;
	gap: 1rem;
	margin-bottom: 1rem;
}

body.lkr-page .lkr-section-head__link {
	margin: 0 !important;
	font-size: 0.9375rem;
	font-weight: 500;
}

body.lkr-page .lkr-section-head__link a {
	color: var(--lkr-accent) !important;
	text-decoration: none !important;
}

/* ---- Hero typography ---------------------------------- */

body.lkr-page .lkr-h1 {
	font-size: clamp(2.25rem, 4vw, 3.5rem) !important;
	line-height: 1.05 !important;
	letter-spacing: -0.025em !important;
	max-width: 28ch;
}

body.lkr-page .lkr-lede {
	font-size: clamp(1.0625rem, 1.5vw, 1.25rem) !important;
	line-height: 1.55 !important;
	color: var(--lkr-ink-soft) !important;
	max-width: 60ch;
	font-family: var(--lkr-font-body) !important;
}

/* ---- Casino card (hero top-3) ------------------------- */

body.lkr-page .lkr-casino-card {
	background: var(--lkr-surface) !important;
	border: 1px solid var(--lkr-line) !important;
	border-radius: 8px !important;
	padding: 1.5rem !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 1rem !important;
	height: 100%;
}

body.lkr-page .lkr-casino-card__head {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center;
	gap: 0.5rem;
}

body.lkr-page .lkr-casino-card__name {
	font-size: 1.5rem !important;
	margin: 0 !important;
}

body.lkr-page .lkr-casino-card__verdict {
	font-size: 0.9375rem !important;
	color: var(--lkr-ink-soft) !important;
	line-height: 1.5 !important;
	margin: 0 !important;
}

/* Stretch CTAs to fill the card bottom */
body.lkr-page .lkr-card-cta-stack {
	margin-top: auto !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 0.5rem !important;
}

/* ---- Buttons (defeat Mercury's pill border-radius:23px) */

body.lkr-page a.wp-block-button__link,
body.lkr-page .wp-block-button__link {
	background: var(--lkr-accent) !important;
	color: var(--lkr-on-accent) !important;
	border: 1px solid var(--lkr-accent) !important;
	border-radius: 4px !important;
	padding: 0.75em 1.4em !important;
	font-family: var(--lkr-font-body) !important;
	font-weight: 500 !important;
	font-size: 0.9375rem !important;
	text-decoration: none !important;
	box-shadow: none !important;
	display: inline-block;
}

body.lkr-page a.wp-block-button__link:hover {
	background: var(--lkr-accent-hover) !important;
	border-color: var(--lkr-accent-hover) !important;
	color: var(--lkr-on-accent) !important;
	box-shadow: none !important;
}

body.lkr-page .is-style-outline > .wp-block-button__link,
body.lkr-page .wp-block-button__link.is-style-outline {
	background: transparent !important;
	color: var(--lkr-accent) !important;
	border: 1px solid var(--lkr-line-strong) !important;
}

body.lkr-page .is-style-outline > .wp-block-button__link:hover,
body.lkr-page .wp-block-button__link.is-style-outline:hover {
	background: var(--lkr-accent-soft) !important;
	color: var(--lkr-accent-hover) !important;
	border-color: var(--lkr-accent) !important;
}

/* ---- Sub-cluster cards -------------------------------- */

body.lkr-page .lkr-cluster-card {
	background: var(--lkr-surface);
	border: 1px solid var(--lkr-line);
	border-radius: 8px;
	padding: 2rem;
	height: 100%;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

body.lkr-page .lkr-cluster-card h3 {
	font-size: 1.75rem !important;
	margin: 0 !important;
}

body.lkr-page .lkr-cluster-card .wp-block-buttons {
	margin-top: auto !important;
}

/* ---- Bonus / game / article cards --------------------- */

body.lkr-page .lkr-bonus-card,
body.lkr-page .lkr-game-card {
	background: var(--lkr-surface);
	border: 1px solid var(--lkr-line);
	border-radius: 8px;
	padding: 1.5rem;
	height: 100%;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	transition: border-color 150ms ease;
}

body.lkr-page .lkr-bonus-card:hover,
body.lkr-page .lkr-game-card:hover { border-color: var(--lkr-line-strong); }

body.lkr-page .lkr-bonus-card h4,
body.lkr-page .lkr-game-card h4 {
	font-size: 1.25rem !important;
	margin: 0 !important;
}

body.lkr-page .lkr-bonus-card a,
body.lkr-page .lkr-game-card a {
	margin-top: auto;
}

body.lkr-page .lkr-article-card {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

body.lkr-page .lkr-article-card img { border-radius: 4px !important; }

body.lkr-page .lkr-article-card h3 {
	font-size: 1.375rem !important;
	line-height: 1.3 !important;
	margin: 0 !important;
}

/* ---- Author card -------------------------------------- */

body.lkr-page .lkr-author-card {
	background: var(--lkr-surface);
	border: 1px solid var(--lkr-line);
	border-radius: 8px;
	padding: 1.25rem;
	display: flex !important;
	flex-direction: row !important;
	align-items: center;
	gap: 1rem !important;
}

body.lkr-page .lkr-team-card__avatar img {
	width: 72px !important;
	height: 72px !important;
	border-radius: 50% !important;
	object-fit: cover;
}

body.lkr-page .lkr-author-card h4 {
	font-size: 1.125rem !important;
	margin: 0 0 0.25rem !important;
}

/* ---- Topic rail --------------------------------------- */

body.lkr-page .lkr-topic-rail {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	gap: 0.5rem !important;
	align-items: center;
	max-width: 1240px;
	margin: 0 auto;
}

body.lkr-page .lkr-topic-rail__label {
	margin: 0 1rem 0 0 !important;
}

body.lkr-page .lkr-topic-chip {
	margin: 0 !important;
}

body.lkr-page .lkr-topic-chip a {
	display: inline-block;
	padding: 0.4em 0.9em;
	background: var(--lkr-bg-alt);
	border: 1px solid var(--lkr-line);
	border-radius: 999px;  /* chips use full radius — these are tags, not buttons */
	font-size: 0.875rem;
	color: var(--lkr-ink-soft) !important;
	text-decoration: none !important;
	transition: border-color 150ms ease, color 150ms ease;
}

body.lkr-page .lkr-topic-chip a:hover {
	border-color: var(--lkr-accent);
	color: var(--lkr-accent) !important;
}

/* ---- FAQ (details/summary) ---------------------------- */

body.lkr-page .lkr-faq {
	border-top: 1px solid var(--lkr-line);
	padding: 1rem 0;
	margin: 0;
}

body.lkr-page .lkr-faq:last-child {
	border-bottom: 1px solid var(--lkr-line);
}

body.lkr-page .lkr-faq summary {
	font-family: var(--lkr-font-body) !important;
	font-weight: 600;
	font-size: 1.0625rem;
	color: var(--lkr-ink);
	cursor: pointer;
	padding: 0.5rem 0;
	list-style: none;
	position: relative;
	padding-right: 2rem;
}

body.lkr-page .lkr-faq summary::-webkit-details-marker { display: none; }

body.lkr-page .lkr-faq summary::after {
	content: '+';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.25rem;
	color: var(--lkr-ink-muted);
	transition: transform 150ms ease;
}

body.lkr-page .lkr-faq[open] summary::after {
	content: '−';
}

body.lkr-page .lkr-faq p {
	font-size: 0.9375rem;
	color: var(--lkr-ink-soft);
	line-height: 1.6;
	margin: 0.5rem 0 0.5rem;
	max-width: 70ch;
}

/* ---- Methodology list --------------------------------- */

body.lkr-page .lkr-method-list {
	list-style: none !important;
	padding: 0;
	margin: 1.5rem 0;
}

body.lkr-page .lkr-method-list li {
	padding: 0.5rem 0;
	border-bottom: 1px solid var(--lkr-line);
	font-size: 0.9375rem;
	color: var(--lkr-ink-soft);
	line-height: 1.5;
}

body.lkr-page .lkr-method-list li:last-child { border-bottom: 0; }

/* ---- Briefing CTA ------------------------------------- */

body.lkr-page .lkr-briefing {
	background: var(--lkr-bg-alt);
	border: 1px solid var(--lkr-line);
	border-radius: 8px;
	padding: 2.5rem;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

/* ---- Image rounding inside hero (no MAX-WIDTH 70ch on images) */
body.lkr-page figure.wp-block-image img {
	max-width: 100% !important;
	height: auto !important;
}

/* ---- Site footer (defeat Mercury) --------------------- */

body.lkr-page .lkr-site-footer {
	background: var(--lkr-bg-alt) !important;
	border-top: 1px solid var(--lkr-line) !important;
	margin-top: 4rem !important;
}

body.lkr-page .lkr-site-footer__inner {
	max-width: 1240px !important;
	margin: 0 auto !important;
	padding: 4rem 1.5rem 2.5rem !important;
	display: grid !important;
	grid-template-columns: 1.4fr 1fr 1fr !important;
	gap: 2.5rem !important;
}

body.lkr-page .lkr-footer-list {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

body.lkr-page .lkr-footer-list li {
	margin: 0 0 0.5rem !important;
	list-style: none !important;
}

body.lkr-page .lkr-footer-list a {
	font-size: 0.9375rem !important;
	color: var(--lkr-ink-soft) !important;
	text-decoration: none !important;
}

body.lkr-page .lkr-footer-list a:hover {
	color: var(--lkr-accent) !important;
	text-decoration: underline !important;
}

body.lkr-page .lkr-site-footer__legal {
	border-top: 1px solid var(--lkr-line) !important;
	background: var(--lkr-bg-alt) !important;
}

body.lkr-page .lkr-site-footer__legal-inner {
	max-width: 1240px !important;
	margin: 0 auto !important;
	padding: 1rem 1.5rem !important;
	font-size: 0.8125rem !important;
	color: var(--lkr-ink-muted) !important;
	display: flex !important;
	gap: 0.5rem !important;
	flex-wrap: wrap;
}

/* ---- Responsive --------------------------------------- */

@media (max-width: 900px) {
	body.lkr-page .lkr-site-header__inner {
		flex-wrap: wrap !important;
		padding: 1rem !important;
		gap: 1rem !important;
	}
	body.lkr-page .lkr-nav-list {
		gap: 1rem !important;
		flex-wrap: wrap !important;
		width: 100%;
	}
	body.lkr-page .lkr-site-footer__inner {
		grid-template-columns: 1fr !important;
		gap: 2rem !important;
	}
	body.lkr-page .lkr-section { padding: 0 1rem; }
}

@media (max-width: 700px) {
	body.lkr-page .wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-direction: column !important;
	}
	body.lkr-page .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
		flex-basis: 100% !important;
		width: 100% !important;
	}
	body.lkr-page .lkr-h1 {
		font-size: 2rem !important;
	}
}

/* ---- Footer heading override (defeat body.lkr-page h2) - */
body.lkr-page .lkr-footer-heading {
	font-family: var(--lkr-font-body) !important;
	font-size: var(--lkr-text-xs) !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: var(--lkr-tracking-wide) !important;
	color: var(--lkr-ink-muted) !important;
	margin: 0 0 var(--lkr-space-3) !important;
	line-height: 1.4 !important;
}

body.lkr-page .lkr-footer-col .lkr-wordmark {
	display: block !important;
	margin-bottom: var(--lkr-space-3) !important;
}

body.lkr-page .lkr-footer-tagline {
	font-size: var(--lkr-text-sm) !important;
	color: var(--lkr-ink-muted) !important;
	max-width: 32ch !important;
	margin: 0 !important;
	line-height: 1.5 !important;
}

/* ---- Casino card button stack: defeat WP layout overflow */
body.lkr-page .lkr-casino-card .wp-block-buttons,
body.lkr-page .lkr-casino-card .lkr-card-cta-stack {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0.5rem !important;
}
body.lkr-page .lkr-casino-card .wp-block-button {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}
body.lkr-page .lkr-casino-card .wp-block-button__link {
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
	text-align: center !important;
	box-sizing: border-box !important;
}

/* Same constraints for all card-internal button stacks */
body.lkr-page .lkr-cluster-card .wp-block-buttons,
body.lkr-page .lkr-cluster-card .wp-block-button {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

/* ---- Force vertical stacking by overriding WP's flex-basis: 100% */
body.lkr-page .lkr-card-cta-stack > .wp-block-button,
body.lkr-page .lkr-card-cta-stack > .wp-block-button.wp-block-button__width-100 {
	flex-basis: auto !important;
	width: 100% !important;
	display: block !important;
	margin: 0 !important;
}

/* ---- Force section content to constrained 1240px width --- */
body.lkr-page .lkr-section.is-layout-constrained > *:where(:not(.alignwide):not(.alignfull)) {
	max-width: var(--wp--style--global--content-size, 1240px) !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
body.lkr-page .lkr-section.is-layout-constrained > .alignwide {
	max-width: var(--wp--style--global--wide-size, 1240px) !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
/* Override the wider 70ch on key elements that need narrower max-width inside cards */
body.lkr-page .lkr-casino-card p,
body.lkr-page .lkr-cluster-card p,
body.lkr-page .lkr-bonus-card p,
body.lkr-page .lkr-game-card p,
body.lkr-page .lkr-author-card p {
	max-width: none !important;
}

/* ---- Force section content-size to 1240px (override 720px from theme.json) - */
body.lkr-page .lkr-section {
	--wp--style--global--content-size: 1240px;
	--wp--style--global--wide-size: 1240px;
}
/* Narrower sections (FAQ, briefing) keep their custom contentSize via inline */
body.lkr-page .lkr-section[style*="contentSize"] { /* honored if set */ }

/* ============================================================
   Lokrin inner pages — /o-nas/, /kontakt/, 404, search results.
   Uses .lkr-inner and .lkr-404 body classes.
   ============================================================ */

/* ---- Breadcrumb ---------------------------------------- */

.lkr-breadcrumb {
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-muted);
	display: flex;
	align-items: center;
	gap: 0.375rem;
	flex-wrap: wrap;
	margin-bottom: var(--lkr-space-4);
}

.lkr-breadcrumb a {
	color: var(--lkr-ink-muted);
	text-decoration: none;
}

.lkr-breadcrumb a:hover { color: var(--lkr-accent); }

.lkr-breadcrumb__sep { color: var(--lkr-line-strong); }

.lkr-breadcrumb__current { color: var(--lkr-ink-soft); }

/* ---- Inner page layout --------------------------------- */

.lkr-inner-wrap {
	max-width: 840px;
	margin: 0 auto;
	padding: var(--lkr-space-7) var(--lkr-space-3) var(--lkr-space-7);
}

.lkr-page-header {
	margin-bottom: var(--lkr-space-5);
	padding-bottom: var(--lkr-space-5);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
}

.lkr-page-title {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-4xl);
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: var(--lkr-tracking-tight);
	color: var(--lkr-ink);
	margin: 0;
}

.lkr-inner-body {
	font-size: var(--lkr-text-base);
	line-height: var(--lkr-leading-normal);
	color: var(--lkr-ink-soft);
}

.lkr-inner-body h2 {
	font-size: var(--lkr-text-2xl);
	margin-top: var(--lkr-space-6);
	margin-bottom: var(--lkr-space-3);
}

.lkr-inner-body h3 {
	font-size: var(--lkr-text-xl);
	margin-top: var(--lkr-space-5);
	margin-bottom: var(--lkr-space-2);
}

.lkr-inner-body p { margin-bottom: var(--lkr-space-4); }

.lkr-inner-body ul,
.lkr-inner-body ol {
	padding-left: var(--lkr-space-4);
	margin-bottom: var(--lkr-space-4);
}

.lkr-inner-body li { margin-bottom: var(--lkr-space-2); }

/* ---- 404 page ------------------------------------------ */

.lkr-404-wrap {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding: var(--lkr-space-8) var(--lkr-space-3);
	min-height: 60vh;
}

.lkr-404-inner {
	max-width: 600px;
	width: 100%;
}

.lkr-404-headline {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-4xl);
	font-weight: 500;
	letter-spacing: var(--lkr-tracking-tight);
	color: var(--lkr-ink);
	margin: var(--lkr-space-3) 0 var(--lkr-space-2);
	line-height: 1.1;
}

.lkr-404-desc {
	font-size: var(--lkr-text-lg);
	color: var(--lkr-ink-soft);
	line-height: var(--lkr-leading-normal);
	margin-bottom: var(--lkr-space-5);
}

.lkr-search-form {
	display: flex;
	gap: var(--lkr-space-2);
	margin-bottom: var(--lkr-space-5);
}

.lkr-search-input {
	flex: 1;
	font-family: var(--lkr-font-body);
	font-size: var(--lkr-text-base);
	padding: 0.65em 1em;
	border: var(--lkr-border-thin) solid var(--lkr-line-strong);
	border-radius: var(--lkr-radius-sm);
	background: var(--lkr-surface);
	color: var(--lkr-ink);
	outline: none;
}

.lkr-search-input:focus {
	border-color: var(--lkr-accent);
	box-shadow: 0 0 0 3px var(--lkr-accent-soft);
}

.lkr-search-btn {
	font-family: var(--lkr-font-body);
	font-size: var(--lkr-text-base);
	font-weight: 500;
	padding: 0.65em 1.4em;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	border: var(--lkr-border-thin) solid var(--lkr-accent);
	border-radius: var(--lkr-radius-sm);
	cursor: pointer;
	white-space: nowrap;
}

.lkr-search-btn:hover {
	background: var(--lkr-accent-hover);
	border-color: var(--lkr-accent-hover);
}

.lkr-404-actions { margin-bottom: var(--lkr-space-6); }

.lkr-btn {
	display: inline-block;
	font-family: var(--lkr-font-body);
	font-size: var(--lkr-text-base);
	font-weight: 500;
	color: var(--lkr-accent);
	text-decoration: none;
	padding: 0.5em 0;
	border-bottom: 1px solid transparent;
	transition: border-color 120ms ease;
}

.lkr-btn:hover { border-bottom-color: var(--lkr-accent); }

.lkr-404-recent-heading {
	font-family: var(--lkr-font-body);
	font-size: var(--lkr-text-sm);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: var(--lkr-tracking-wide);
	color: var(--lkr-ink-muted);
	margin: 0 0 var(--lkr-space-3);
}

.lkr-404-recent-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.lkr-404-recent-list li {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: var(--lkr-space-3);
	padding: var(--lkr-space-2) 0;
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
	font-size: var(--lkr-text-sm);
}

.lkr-404-recent-list a {
	color: var(--lkr-ink);
	text-decoration: none;
	font-weight: 500;
}

.lkr-404-recent-list a:hover { color: var(--lkr-accent); }

.lkr-404-recent-date {
	font-size: var(--lkr-text-xs);
	color: var(--lkr-ink-muted);
	white-space: nowrap;
	flex-shrink: 0;
}

/* ============================================================
   Single article — blog post and casino review.
   Uses .lkr-single body class.
   ============================================================ */

.lkr-article__header {
	background: var(--lkr-bg);
	padding: var(--lkr-space-7) var(--lkr-space-3) var(--lkr-space-5);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
}

.lkr-article__header-inner {
	max-width: 1080px;
	margin: 0 auto;
	padding: 0 var(--lkr-space-3);
}

.lkr-article__eyebrow {
	margin-bottom: var(--lkr-space-3);
}

.lkr-eyebrow--link {
	text-decoration: none;
}

.lkr-eyebrow--link:hover { color: var(--lkr-accent); }

.lkr-article__title {
	font-family: var(--lkr-font-display);
	font-size: clamp(1.875rem, 3.5vw, 2.875rem);
	font-weight: 500;
	letter-spacing: var(--lkr-tracking-tight);
	color: var(--lkr-ink);
	line-height: 1.1;
	margin: 0 0 var(--lkr-space-4);
}

.lkr-article__meta {
	display: flex;
	align-items: center;
	gap: var(--lkr-space-2);
	flex-wrap: wrap;
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-muted);
}

.lkr-article__sep { color: var(--lkr-line-strong); }

.lkr-article__featured-img {
	max-width: 1080px;
	margin: 0 auto;
	padding: var(--lkr-space-5) var(--lkr-space-3) 0;
}

.lkr-article__img {
	width: 100%;
	height: auto;
	max-height: 520px;
	object-fit: cover;
	border-radius: var(--lkr-radius-md);
	display: block;
}

.lkr-article__img-caption {
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-muted);
	text-align: center;
	margin-top: var(--lkr-space-2);
}

.lkr-article__body {
	max-width: 720px;
	margin: 0 auto;
	padding: var(--lkr-space-6) var(--lkr-space-3) var(--lkr-space-7);
	font-size: var(--lkr-text-base);
	line-height: 1.75;
	color: var(--lkr-ink-soft);
}

.lkr-article__body h2 { margin-top: var(--lkr-space-6); margin-bottom: var(--lkr-space-3); }
.lkr-article__body h3 { margin-top: var(--lkr-space-5); margin-bottom: var(--lkr-space-2); }
.lkr-article__body p  { margin-bottom: var(--lkr-space-4); }
.lkr-article__body ul,
.lkr-article__body ol { padding-left: var(--lkr-space-4); margin-bottom: var(--lkr-space-4); }
.lkr-article__body li { margin-bottom: var(--lkr-space-2); }

.lkr-article__foot {
	border-top: var(--lkr-border-thin) solid var(--lkr-line);
	padding: var(--lkr-space-5) var(--lkr-space-3);
	max-width: 720px;
	margin: 0 auto;
}

.lkr-article__tags {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--lkr-space-2);
	margin-bottom: var(--lkr-space-5);
}

.lkr-article__tags-label {
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-muted);
	font-weight: 500;
}

.lkr-tag {
	display: inline-block;
	font-size: var(--lkr-text-xs);
	font-weight: 500;
	letter-spacing: var(--lkr-tracking-wide);
	text-transform: uppercase;
	padding: 0.3em 0.75em;
	background: var(--lkr-bg-alt);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-xs);
	color: var(--lkr-ink-soft);
	text-decoration: none;
	transition: border-color 120ms ease, color 120ms ease;
}

.lkr-tag:hover { border-color: var(--lkr-accent); color: var(--lkr-accent); }

.lkr-author-box {
	display: flex;
	align-items: flex-start;
	gap: var(--lkr-space-4);
	background: var(--lkr-bg-alt);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-4);
}

.lkr-author-box__img {
	width: 64px !important;
	height: 64px !important;
	border-radius: 50% !important;
	flex-shrink: 0;
	object-fit: cover;
}

.lkr-author-box__name {
	font-weight: 600;
	font-size: var(--lkr-text-base);
	color: var(--lkr-ink);
	margin: 0 0 var(--lkr-space-1);
}

.lkr-author-box__bio {
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-soft);
	margin: 0;
	line-height: 1.6;
}

/* ---- Related posts / post grid ------------------------- */

.lkr-related {
	background: var(--lkr-bg-alt);
	border-top: var(--lkr-border-thin) solid var(--lkr-line);
	padding: var(--lkr-space-7) var(--lkr-space-3);
}

.lkr-related__inner {
	max-width: 1080px;
	margin: 0 auto;
}

.lkr-related__heading {
	font-family: var(--lkr-font-body);
	font-size: var(--lkr-text-sm);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: var(--lkr-tracking-wide);
	color: var(--lkr-ink-muted);
	margin: 0 0 var(--lkr-space-5);
}

.lkr-post-grid {
	display: grid;
	gap: var(--lkr-space-5);
}

.lkr-post-grid--3 { grid-template-columns: repeat(3, 1fr); }
.lkr-post-grid--2 { grid-template-columns: repeat(2, 1fr); }

.lkr-post-card {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.lkr-post-card__img-link { display: block; margin-bottom: var(--lkr-space-3); }

.lkr-post-card__img {
	width: 100%;
	height: 180px;
	object-fit: cover;
	border-radius: var(--lkr-radius-sm);
	display: block;
}

.lkr-post-card__body {
	display: flex;
	flex-direction: column;
	gap: var(--lkr-space-2);
	flex: 1;
}

.lkr-post-card__cat {
	display: block;
}

.lkr-post-card__title {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-xl);
	font-weight: 500;
	line-height: 1.25;
	margin: 0;
	letter-spacing: var(--lkr-tracking-tight);
}

.lkr-post-card__title a {
	color: var(--lkr-ink);
	text-decoration: none;
}

.lkr-post-card__title a:hover { color: var(--lkr-accent); }

.lkr-post-card__excerpt {
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-soft);
	line-height: 1.55;
	margin: 0;
	max-width: none;
}

.lkr-post-card__meta {
	font-size: var(--lkr-text-xs);
	color: var(--lkr-ink-muted);
	margin: 0;
}

/* ---- Archive page -------------------------------------- */

.lkr-archive-wrap {
	max-width: 1240px;
	margin: 0 auto;
	padding: var(--lkr-space-6) var(--lkr-space-3) var(--lkr-space-8);
}

.lkr-archive-header {
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
	padding-bottom: var(--lkr-space-5);
	margin-bottom: var(--lkr-space-6);
}

.lkr-archive-header__inner { max-width: 720px; }

.lkr-archive-eyebrow {
	display: block;
	margin-bottom: var(--lkr-space-2);
}

.lkr-archive-title {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-4xl);
	font-weight: 500;
	letter-spacing: var(--lkr-tracking-tight);
	line-height: 1.1;
	color: var(--lkr-ink);
	margin: 0 0 var(--lkr-space-3);
}

.lkr-archive-desc {
	font-size: var(--lkr-text-base);
	color: var(--lkr-ink-soft);
	margin: 0;
	max-width: 64ch;
}

.lkr-archive-grid { margin-bottom: var(--lkr-space-7); }

.lkr-archive-empty {
	font-size: var(--lkr-text-lg);
	color: var(--lkr-ink-muted);
	text-align: center;
	padding: var(--lkr-space-8) 0;
}

.lkr-pagination {
	display: flex;
	justify-content: center;
}

.lkr-pagination .nav-links {
	display: flex;
	align-items: center;
	gap: var(--lkr-space-2);
}

.lkr-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.5rem;
	height: 2.5rem;
	padding: 0 0.75rem;
	font-size: var(--lkr-text-sm);
	font-weight: 500;
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-sm);
	color: var(--lkr-ink-soft);
	text-decoration: none;
	transition: background 120ms ease, border-color 120ms ease;
}

.lkr-pagination .page-numbers.current,
.lkr-pagination .page-numbers:hover {
	background: var(--lkr-accent);
	border-color: var(--lkr-accent);
	color: var(--lkr-on-accent);
}

.lkr-pagination .page-numbers.dots {
	border-color: transparent;
	background: transparent;
}

/* ============================================================
   Casino review single — .lkr-single-casino body class.
   ============================================================ */

.lkr-review__header {
	background: var(--lkr-bg);
	padding: var(--lkr-space-6) var(--lkr-space-3) var(--lkr-space-5);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
}

.lkr-review__header-inner {
	max-width: 1080px;
	margin: 0 auto;
}

.lkr-review__head-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--lkr-space-5);
	margin-top: var(--lkr-space-4);
}

.lkr-review__identity {
	display: flex;
	align-items: center;
	gap: var(--lkr-space-4);
}

.lkr-review__logo {
	width: 120px;
	height: 60px;
	background: var(--lkr-bg-alt);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-sm);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	flex-shrink: 0;
}

.lkr-review__logo-img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.lkr-review__title {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-3xl);
	font-weight: 500;
	letter-spacing: var(--lkr-tracking-tight);
	color: var(--lkr-ink);
	margin: 0 0 var(--lkr-space-2);
	line-height: 1.15;
}

.lkr-review__meta {
	display: flex;
	align-items: center;
	gap: var(--lkr-space-2);
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-muted);
	flex-wrap: wrap;
}

.lkr-review__score-badge {
	display: flex;
	align-items: baseline;
	gap: 0.15rem;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-3) var(--lkr-space-4);
	flex-shrink: 0;
}

.lkr-review__score-num {
	font-family: var(--lkr-font-display);
	font-size: 2.5rem;
	font-weight: 600;
	line-height: 1;
}

.lkr-review__score-max {
	font-size: var(--lkr-text-base);
	opacity: 0.75;
}

.lkr-review__facts-bar {
	background: var(--lkr-bg-alt);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
	padding: var(--lkr-space-4) var(--lkr-space-3);
}

.lkr-review__facts-inner {
	max-width: 1080px;
	margin: 0 auto var(--lkr-space-4);
	display: flex;
	flex-wrap: wrap;
	gap: var(--lkr-space-3) var(--lkr-space-5);
}

.lkr-fact {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.lkr-fact__label {
	font-size: var(--lkr-text-xs);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: var(--lkr-tracking-wide);
	color: var(--lkr-ink-muted);
}

.lkr-fact__value {
	font-size: var(--lkr-text-sm);
	font-weight: 600;
	color: var(--lkr-ink);
}

.lkr-fact__value--bonus { color: var(--lkr-accent); }
.lkr-fact__value--license { color: var(--lkr-license); }

.lkr-review__cta-bar {
	max-width: 1080px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	gap: var(--lkr-space-4);
	flex-wrap: wrap;
}

.lkr-review__cta-btn {
	display: inline-block;
	padding: 0.75em 2em;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	border: var(--lkr-border-thin) solid var(--lkr-accent);
	border-radius: var(--lkr-radius-sm);
	font-family: var(--lkr-font-body);
	font-weight: 600;
	font-size: var(--lkr-text-base);
	text-decoration: none;
	white-space: nowrap;
	transition: background 120ms ease;
}

.lkr-review__cta-btn:hover {
	background: var(--lkr-accent-hover);
	border-color: var(--lkr-accent-hover);
	color: var(--lkr-on-accent);
}

.lkr-review__cta-disclaimer {
	font-size: var(--lkr-text-xs);
	color: var(--lkr-ink-muted);
	margin: 0;
	max-width: none;
}

.lkr-review__body {
	max-width: 840px;
	margin: 0 auto;
	padding: var(--lkr-space-6) var(--lkr-space-3) var(--lkr-space-7);
	font-size: var(--lkr-text-base);
	line-height: 1.75;
	color: var(--lkr-ink-soft);
}

.lkr-review__body h2 { margin-top: var(--lkr-space-6); margin-bottom: var(--lkr-space-3); }
.lkr-review__body h3 { margin-top: var(--lkr-space-5); margin-bottom: var(--lkr-space-2); }
.lkr-review__body p  { margin-bottom: var(--lkr-space-4); }
.lkr-review__body ul,
.lkr-review__body ol { padding-left: var(--lkr-space-4); margin-bottom: var(--lkr-space-4); }
.lkr-review__body li { margin-bottom: var(--lkr-space-2); }

.lkr-review__disclaimer {
	padding: var(--lkr-space-4);
	background: var(--lkr-bg-alt);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-sm);
	font-size: var(--lkr-text-xs);
	color: var(--lkr-ink-muted);
}

.lkr-review__disclaimer p { margin: 0; max-width: none; }

/* ---- 18+ responsible gambling banner ------------------- */

.lkr-rg-banner {
	background: var(--lkr-bg-alt);
	border-top: var(--lkr-border-thin) solid var(--lkr-line);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
}

.lkr-rg-banner__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: var(--lkr-space-3) var(--lkr-space-3);
	display: flex;
	align-items: center;
	gap: var(--lkr-space-3);
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-muted);
	flex-wrap: wrap;
}

.lkr-rg-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	background: var(--lkr-warn);
	color: #fff;
	font-size: var(--lkr-text-xs);
	font-weight: 700;
	border-radius: var(--lkr-radius-xs);
	flex-shrink: 0;
}

.lkr-rg-link {
	color: var(--lkr-accent);
	text-decoration: underline;
	text-underline-offset: 0.18em;
	white-space: nowrap;
}

/* ---- Responsive ---------------------------------------- */

@media (max-width: 900px) {
	.lkr-post-grid--3 { grid-template-columns: repeat(2, 1fr); }
	.lkr-review__head-row { flex-direction: column; }
	.lkr-review__score-badge { align-self: flex-start; }
}

@media (max-width: 600px) {
	.lkr-post-grid--3,
	.lkr-post-grid--2 { grid-template-columns: 1fr; }
	.lkr-404-headline { font-size: var(--lkr-text-3xl); }
	.lkr-page-title { font-size: var(--lkr-text-3xl); }
	.lkr-archive-title { font-size: var(--lkr-text-3xl); }
	.lkr-article__title { font-size: var(--lkr-text-2xl); }
	.lkr-search-form { flex-direction: column; }
	.lkr-review__identity { flex-direction: column; }
}

/* ============================================================
   Casino operator comparison cards — logo badge + facts row.
   Used inside .lkr-casino-card on the homepage.
   ============================================================ */

/* ---- Operator logo badge -------------------------------- */

.lkr-op-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 0.75rem;
}

.lkr-op-badge {
	flex: 1;
	height: 52px;
	border-radius: var(--lkr-radius-sm);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--lkr-font-display);
	font-weight: 600;
	font-size: 1.1rem;
	letter-spacing: -0.01em;
	overflow: hidden;
}

/* Operator brand colors — replace with real logos later */
.lkr-op-badge--bitstarz { background: #1a2038; color: #c8a96e; }
.lkr-op-badge--doxxbet  { background: #8B0000; color: #fff; }
.lkr-op-badge--7bit     { background: #0a1628; color: #f59e0b; }
.lkr-op-badge--fortuna  { background: #003087; color: #fff; }
.lkr-op-badge--sazka    { background: #1a472a; color: #ffd700; }
.lkr-op-badge--tipsport { background: #0f172a; color: #38bdf8; }
.lkr-op-badge--wildz    { background: #064e3b; color: #34d399; }
.lkr-op-badge--nike     { background: #1c1917; color: #f5f5f4; }

/* Operator badge image version (when real logo is uploaded) */
.lkr-op-badge img {
	max-width: 100%;
	max-height: 36px;
	object-fit: contain;
	border-radius: 0;
}

/* SVG logo in op-row (replaces colored badge div) */
.lkr-op-logo {
	flex: 1;
	max-width: calc(100% - 72px);
	height: 56px;
	object-fit: contain;
	object-position: left center;
	border-radius: 0;
	display: block;
}

/* ---- Score display ------------------------------------- */

.lkr-op-score {
	display: flex;
	flex-direction: column;
	align-items: center;
	flex-shrink: 0;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	border-radius: var(--lkr-radius-sm);
	padding: 0.4rem 0.75rem;
	min-width: 52px;
	text-align: center;
}

.lkr-op-score__num {
	font-family: var(--lkr-font-display);
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1;
}

.lkr-op-score__max {
	font-size: 0.6875rem;
	opacity: 0.75;
	line-height: 1.4;
}

/* ---- Star rating (5 stars, filled/empty via CSS) ------- */

.lkr-stars {
	display: flex;
	gap: 2px;
	font-size: 0.75rem;
	color: #f59e0b;
	margin-bottom: 0.25rem;
}

/* ---- Casino facts row (min deposit, wagering) ---------- */

.lkr-casino-facts {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-sm);
	overflow: hidden;
	margin: 0.5rem 0 0.75rem;
}

.lkr-casino-fact {
	padding: 0.5rem 0.4rem;
	background: var(--lkr-bg-alt);
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	text-align: center;
	border-right: var(--lkr-border-thin) solid var(--lkr-line);
}

.lkr-casino-fact:last-child { border-right: 0; }

.lkr-casino-fact__label {
	font-family: var(--lkr-font-body);
	font-size: 0.625rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--lkr-ink-muted);
	line-height: 1.2;
}

.lkr-casino-fact__value {
	font-family: var(--lkr-font-body);
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--lkr-ink);
	line-height: 1.2;
}

/* ---- Casino card adjustments for new layout ------------ */

body.lkr-page .lkr-casino-card {
	gap: 0.5rem !important;
}

body.lkr-page .lkr-casino-card .lkr-casino-card__name {
	margin: 0 !important;
}

/* Defeat body.lkr-page max-width:70ch on .lkr-op-badge text */
body.lkr-page .lkr-op-badge,
body.lkr-page .lkr-op-logo,
body.lkr-page .lkr-casino-facts,
body.lkr-page .lkr-op-row {
	max-width: none !important;
}

/* Casino hero background image strip */
.lkr-casino-hero-img {
	width: 100%;
	height: 220px;
	object-fit: cover;
	display: block;
	border-radius: var(--lkr-radius-md);
	margin-bottom: var(--lkr-space-5);
}

@media (max-width: 700px) {
	.lkr-casino-facts { grid-template-columns: repeat(3, 1fr); }
	.lkr-casino-fact__label { font-size: 0.5625rem; }
	.lkr-casino-fact__value { font-size: 0.875rem; }
}

/* ============================================================
   ACES SHORTCODE OVERRIDES — Lokrin design system
   Targets: [aces-casinos-4], [aces-organization-2], [aces-rating-2]
   All rules scoped to .lkr-page to avoid breaking admin
   ============================================================ */

/* ── Global ACES resets ─────────────────────────────────── */
body.lkr-page .space-shortcode-wrap,
body.lkr-page .space-organization-single-2,
body.lkr-page .space-organization-style-2-calltoaction-rating {
	font-family: var(--lkr-font-body) !important;
	color: var(--lkr-ink) !important;
	max-width: none !important;
}

/* ── [aces-casinos-4] — Ranking table ───────────────────── */

/* Shortcode title */
body.lkr-page .space-shortcode-4 .space-block-title {
	font-family: var(--lkr-font-display) !important;
	font-size: var(--lkr-text-base) !important;
	font-weight: 600 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	color: var(--lkr-ink-muted) !important;
	padding-bottom: var(--lkr-space-3) !important;
	border-bottom: 2px solid var(--lkr-accent) !important;
	margin-bottom: var(--lkr-space-4) !important;
	background: none !important;
}
body.lkr-page .space-shortcode-4 .space-block-title span {
	display: block !important;
	background: none !important;
	padding: 0 !important;
}

/* Each casino row */
body.lkr-page .space-organizations-3-archive-item-ins {
	display: flex !important;
	align-items: stretch !important;
	background: var(--lkr-bg) !important;
	border: var(--lkr-border-thin) solid var(--lkr-line) !important;
	border-radius: var(--lkr-radius-md) !important;
	margin-bottom: var(--lkr-space-3) !important;
	overflow: hidden !important;
	transition: box-shadow 0.15s ease, border-color 0.15s ease !important;
	box-shadow: none !important;
}
body.lkr-page .space-organizations-3-archive-item-ins:hover {
	box-shadow: 0 4px 20px rgba(0,0,0,.07) !important;
	border-color: var(--lkr-accent) !important;
}

/* Rank number badge */
body.lkr-page .space-organizations-3-archive-item-count,
body.lkr-page .space-organizations-3-archive-item-count-2 {
	background: var(--lkr-accent) !important;
	color: var(--lkr-on-accent) !important;
	font-family: var(--lkr-font-display) !important;
	font-size: 0.6875rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.03em !important;
	border-radius: 0 0 var(--lkr-radius-xs) 0 !important;
	min-width: 22px !important;
	height: auto !important;
	padding: 3px 7px !important;
	line-height: 1.4 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* Logo column */
body.lkr-page .space-organizations-3-archive-item-logo {
	border-right: var(--lkr-border-thin) solid var(--lkr-line) !important;
	background: var(--lkr-bg) !important;
}
body.lkr-page .space-organizations-3-archive-item-logo-ins {
	padding: var(--lkr-space-4) var(--lkr-space-5) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 80px !important;
}
body.lkr-page .space-organizations-3-logo-title-box {
	display: flex !important;
	flex-direction: column !important;
	gap: var(--lkr-space-2) !important;
}
body.lkr-page .space-organizations-3-logo-box img,
body.lkr-page .space-organizations-3-archive-item-logo-ins > a img,
body.lkr-page .space-organizations-3-archive-item-logo-ins img {
	max-height: 48px !important;
	max-width: 110px !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	border-radius: 0 !important;
}
body.lkr-page .space-organizations-3-title-box a {
	font-family: var(--lkr-font-display) !important;
	font-size: var(--lkr-text-sm) !important;
	font-weight: 600 !important;
	color: var(--lkr-ink) !important;
	text-decoration: none !important;
}
body.lkr-page .space-organizations-3-title-box a:hover {
	color: var(--lkr-accent) !important;
}

/* Terms column */
body.lkr-page .space-organizations-3-archive-item-terms-ins {
	padding: var(--lkr-space-4) var(--lkr-space-4) !important;
	text-align: left !important;
	font-size: var(--lkr-text-sm) !important;
	line-height: 1.55 !important;
	color: var(--lkr-ink) !important;
	display: flex !important;
	align-items: center !important;
}
body.lkr-page .space-organizations-3-archive-item-terms-ins strong {
	color: var(--lkr-ink) !important;
}

/* Rating column */
body.lkr-page .space-organizations-3-archive-item-rating-ins {
	padding: var(--lkr-space-4) var(--lkr-space-4) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}
body.lkr-page .space-organizations-3-archive-item-rating-box {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 4px !important;
}
/* The numeric score */
body.lkr-page .space-organizations-3-archive-item-rating-box > span {
	font-family: var(--lkr-font-display) !important;
	font-size: 1.75rem !important;
	font-weight: 700 !important;
	color: var(--lkr-ink) !important;
	line-height: 1 !important;
}
/* Star icons */
body.lkr-page .space-organizations-3-archive-item-rating-box .aces-star-full,
body.lkr-page .space-organizations-3-archive-item-rating-box .aces-star-half {
	color: #f59e0b !important;
}
body.lkr-page .space-organizations-3-archive-item-rating-box .aces-star-empty {
	color: var(--lkr-line-strong) !important;
}

/* CTA column */
body.lkr-page .space-organizations-3-archive-item-button-ins {
	padding: var(--lkr-space-3) var(--lkr-space-4) !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: var(--lkr-space-2) !important;
	background: var(--lkr-bg-alt) !important;
}
/* Primary CTA button */
body.lkr-page .space-organizations-3-archive-item-button-ins a:first-child {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	background: var(--lkr-accent) !important;
	color: var(--lkr-on-accent) !important;
	font-family: var(--lkr-font-body) !important;
	font-size: var(--lkr-text-sm) !important;
	font-weight: 600 !important;
	padding: 0.5rem 1.1rem !important;
	border-radius: var(--lkr-radius-sm) !important;
	text-decoration: none !important;
	text-align: center !important;
	white-space: nowrap !important;
	border: none !important;
	transition: filter 0.15s !important;
}
body.lkr-page .space-organizations-3-archive-item-button-ins a:first-child:hover {
	filter: brightness(1.08) !important;
}
/* "Read Review" secondary link */
body.lkr-page .space-organizations-3-archive-item-button-ins a:nth-child(2) {
	display: inline-block !important;
	font-size: var(--lkr-text-xs) !important;
	color: var(--lkr-accent) !important;
	text-decoration: underline !important;
	font-weight: 500 !important;
	background: none !important;
	padding: 0 !important;
	border-radius: 0 !important;
}
/* Button notice (18+ disclaimer) */
body.lkr-page .space-organizations-archive-item-button-notice,
body.lkr-page .space-organization-header-button-notice {
	font-size: 0.625rem !important;
	color: var(--lkr-ink-muted) !important;
	text-align: center !important;
	line-height: 1.4 !important;
	margin-top: 2px !important;
	max-width: 160px !important;
}

/* ── [aces-organization-2] — Single review header ───────── */

body.lkr-page .space-organization-single-2 {
	background: var(--lkr-bg-alt) !important;
	border: var(--lkr-border-thin) solid var(--lkr-line) !important;
	border-radius: var(--lkr-radius-md) !important;
	overflow: hidden !important;
	margin-bottom: var(--lkr-space-5) !important;
}
body.lkr-page .space-style-2-organization-header-elements {
	display: flex !important;
	align-items: stretch !important;
}
/* Left: logo + title + short desc */
body.lkr-page .space-style-2-organization-header-left {
	padding: var(--lkr-space-5) !important;
}
body.lkr-page .space-organization-header-logo-title {
	display: flex !important;
	gap: var(--lkr-space-4) !important;
	align-items: flex-start !important;
}
body.lkr-page .space-organization-header-logo-box {
	flex-shrink: 0 !important;
	position: relative !important;
}
body.lkr-page .space-organization-header-logo-box img {
	width: 80px !important;
	height: 80px !important;
	object-fit: contain !important;
	border-radius: var(--lkr-radius-sm) !important;
	border: var(--lkr-border-thin) solid var(--lkr-line) !important;
	background: #fff !important;
	padding: 6px !important;
}
/* Floating rating badge on logo */
body.lkr-page .space-organization-header-logo-rating {
	background: var(--lkr-accent) !important;
	color: var(--lkr-on-accent) !important;
	font-family: var(--lkr-font-display) !important;
	font-size: 0.6875rem !important;
	font-weight: 700 !important;
	padding: 2px 6px !important;
	border-radius: var(--lkr-radius-xs) !important;
	bottom: -6px !important;
	right: -6px !important;
	left: auto !important;
	line-height: 1.4 !important;
}
body.lkr-page .space-organization-header-logo-rating .fas {
	font-size: 0.5625rem !important;
}
/* Casino name */
body.lkr-page .organization-title-2 {
	display: block !important;
	font-family: var(--lkr-font-display) !important;
	font-size: var(--lkr-text-2xl) !important;
	font-weight: 600 !important;
	color: var(--lkr-ink) !important;
	line-height: 1.2 !important;
	margin-bottom: var(--lkr-space-2) !important;
}
/* Short description (bonus line) */
body.lkr-page .space-organization-header-short-desc {
	font-size: var(--lkr-text-sm) !important;
	color: var(--lkr-ink) !important;
	line-height: 1.55 !important;
}
body.lkr-page .space-organization-header-short-desc strong {
	color: var(--lkr-ink) !important;
}
/* Detailed T&Cs (popup link) */
body.lkr-page .space-organizations-archive-item-detailed-tc {
	margin-top: var(--lkr-space-3) !important;
	border-top: var(--lkr-border-thin) solid var(--lkr-line) !important;
	padding-top: var(--lkr-space-3) !important;
}
body.lkr-page .space-organizations-archive-item-detailed-tc-ins {
	font-size: var(--lkr-text-xs) !important;
	color: var(--lkr-ink-muted) !important;
	line-height: 1.5 !important;
}

/* Right: CTA button column */
body.lkr-page .space-style-2-organization-header-right {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: var(--lkr-space-5) var(--lkr-space-5) !important;
	border-left: var(--lkr-border-thin) solid var(--lkr-line) !important;
	background: var(--lkr-bg) !important;
	flex-shrink: 0 !important;
}
body.lkr-page .space-organization-header-button {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: var(--lkr-space-2) !important;
}
body.lkr-page a.space-style-2-button {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	background: var(--lkr-accent) !important;
	color: var(--lkr-on-accent) !important;
	font-family: var(--lkr-font-body) !important;
	font-weight: 600 !important;
	font-size: var(--lkr-text-base) !important;
	padding: 0.65rem 1.5rem !important;
	border-radius: var(--lkr-radius-sm) !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	border: none !important;
	transition: filter 0.15s !important;
}
body.lkr-page a.space-style-2-button:hover {
	filter: brightness(1.08) !important;
}

/* ── [aces-rating-2] — Rating breakdown block ───────────── */

body.lkr-page .space-organization-style-2-calltoaction-rating {
	background: var(--lkr-bg-alt) !important;
	border: var(--lkr-border-thin) solid var(--lkr-line) !important;
	border-radius: var(--lkr-radius-md) !important;
	margin-bottom: var(--lkr-space-5) !important;
	overflow: hidden !important;
}
/* Top row: promo text + CTA button */
body.lkr-page .space-organization-style-2-calltoaction-block {
	display: flex !important;
	align-items: center !important;
	padding: var(--lkr-space-4) var(--lkr-space-5) !important;
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line) !important;
}
body.lkr-page .space-organization-style-2-calltoaction-text-ins {
	font-size: var(--lkr-text-sm) !important;
	color: var(--lkr-ink) !important;
	line-height: 1.55 !important;
}
body.lkr-page a.space-calltoaction-button {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	background: var(--lkr-accent) !important;
	color: var(--lkr-on-accent) !important;
	font-family: var(--lkr-font-body) !important;
	font-weight: 600 !important;
	font-size: var(--lkr-text-sm) !important;
	padding: 0.5rem 1.1rem !important;
	border-radius: var(--lkr-radius-sm) !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	border: none !important;
	transition: filter 0.15s !important;
}
body.lkr-page a.space-calltoaction-button:hover { filter: brightness(1.08) !important; }

/* Ratings grid */
body.lkr-page .space-organization-style-2-ratings-block {
	display: flex !important;
	align-items: center !important;
	padding: var(--lkr-space-4) var(--lkr-space-5) !important;
}
body.lkr-page .space-organization-style-2-ratings-all {
	display: flex !important;
	flex-wrap: wrap !important;
}
body.lkr-page .space-organization-style-2-ratings-all-item {
	padding: var(--lkr-space-3) var(--lkr-space-4) var(--lkr-space-3) 0 !important;
}
body.lkr-page .space-organization-style-2-ratings-all-item-ins {
	display: flex !important;
	flex-direction: column !important;
	gap: 2px !important;
	font-size: var(--lkr-text-xs) !important;
	color: var(--lkr-ink-muted) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
	font-weight: 600 !important;
}
body.lkr-page .space-organization-style-2-ratings-all-item-value {
	font-family: var(--lkr-font-display) !important;
	font-size: var(--lkr-text-xl) !important;
	font-weight: 700 !important;
	color: var(--lkr-ink) !important;
	line-height: 1 !important;
	display: flex !important;
	align-items: center !important;
	gap: 4px !important;
}
body.lkr-page .space-organization-style-2-ratings-all-item-value .fas {
	color: #f59e0b !important;
	font-size: 0.75rem !important;
}
/* Overall rating circle */
body.lkr-page .space-organization-style-2-rating-overall-ins {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	background: var(--lkr-accent) !important;
	color: var(--lkr-on-accent) !important;
	border-radius: var(--lkr-radius-sm) !important;
	padding: var(--lkr-space-3) var(--lkr-space-4) !important;
	min-width: 80px !important;
	font-family: var(--lkr-font-display) !important;
	font-size: 2rem !important;
	font-weight: 700 !important;
	line-height: 1 !important;
}
body.lkr-page .space-organization-style-2-rating-overall-ins span {
	font-size: var(--lkr-text-xs) !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	opacity: 0.85 !important;
	margin-top: 4px !important;
	line-height: 1.3 !important;
}

/* T&Cs notice inline popup */
body.lkr-page .tc-apply {
	font-size: var(--lkr-text-xs) !important;
	color: var(--lkr-accent) !important;
	cursor: pointer !important;
	text-decoration: underline !important;
}
body.lkr-page .tc-desc {
	font-size: var(--lkr-text-xs) !important;
	color: var(--lkr-ink-muted) !important;
	line-height: 1.5 !important;
	margin-top: 4px !important;
}

/* ── EEAT byline ─────────────────────────────────────────── */
.lkr-eeat {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem 0.5rem;
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-muted);
	margin-top: var(--lkr-space-3);
}
.lkr-eeat__author strong {
	color: var(--lkr-ink);
	font-weight: 600;
}
.lkr-eeat__updated,
.lkr-eeat__published { color: var(--lkr-ink-muted); }

/* ── Review page layout ──────────────────────────────────── */
.lkr-review__breadcrumb { border-bottom: var(--lkr-border-thin) solid var(--lkr-line); }
.lkr-review__breadcrumb-inner { max-width: 1240px; margin: 0 auto; padding: var(--lkr-space-3) var(--lkr-space-4); }
.lkr-review__header { background: var(--lkr-bg-alt); border-bottom: var(--lkr-border-thin) solid var(--lkr-line); }
.lkr-review__header-inner { max-width: 1240px; margin: 0 auto; padding: var(--lkr-space-6) var(--lkr-space-4) var(--lkr-space-5); }
.lkr-review__title { font-family: var(--lkr-font-display); font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 600; line-height: 1.15; color: var(--lkr-ink); margin: 0; }
.lkr-review__aces-panel { max-width: 1240px; margin: var(--lkr-space-5) auto 0; padding: 0 var(--lkr-space-4); }
.lkr-review__ratings { max-width: 1240px; margin: var(--lkr-space-5) auto; padding: 0 var(--lkr-space-4); }
.lkr-review__ratings-heading { font-family: var(--lkr-font-display); font-size: var(--lkr-text-xl); font-weight: 600; color: var(--lkr-ink); margin-bottom: var(--lkr-space-3); }

/* ── ACES mobile overrides ───────────────────────────────── */
@media (max-width: 767px) {
	body.lkr-page .space-organizations-3-archive-item-ins {
		flex-wrap: wrap !important;
	}
	body.lkr-page .space-organizations-3-archive-item-logo,
	body.lkr-page .space-organizations-3-archive-item-terms,
	body.lkr-page .space-organizations-3-archive-item-rating,
	body.lkr-page .space-organizations-3-archive-item-button {
		width: 50% !important;
	}
	body.lkr-page .space-organizations-3-archive-item-logo-ins,
	body.lkr-page .space-organizations-3-archive-item-terms-ins {
		padding: var(--lkr-space-3) !important;
	}
	body.lkr-page .space-style-2-organization-header-elements {
		flex-direction: column !important;
	}
	body.lkr-page .space-style-2-organization-header-right {
		border-left: none !important;
		border-top: var(--lkr-border-thin) solid var(--lkr-line) !important;
		padding: var(--lkr-space-4) !important;
	}
	body.lkr-page .space-organization-style-2-ratings-block {
		flex-direction: column !important;
		align-items: flex-start !important;
	}
	body.lkr-page .space-organization-style-2-rating-overall {
		width: 100% !important;
		padding-top: var(--lkr-space-4) !important;
		border-top: var(--lkr-border-thin) solid var(--lkr-line) !important;
	}
	body.lkr-page .space-organization-style-2-rating-overall-ins {
		flex-direction: row !important;
		gap: var(--lkr-space-3) !important;
	}
}

/* ============================================================
   [lkr-top-casinos] SHORTCODE — vertical rows w/ inline expand
   kasinoslovenske.com style — no empty space when one row expands
   ============================================================ */

.lkr-top-casinos {
	display: flex;
	flex-direction: column;
	gap: var(--lkr-space-3);
}

.lkr-tc-row {
	display: flex;
	flex-direction: column;
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	background: var(--lkr-bg);
	overflow: hidden;
	transition: box-shadow 0.15s ease, border-color 0.15s ease;
}
.lkr-tc-row:hover {
	box-shadow: 0 4px 18px rgba(0,0,0,.07);
	border-color: var(--lkr-accent);
}

/* Main row content — horizontal layout on desktop */
.lkr-tc-row__main {
	display: grid;
	grid-template-columns: 56px 110px 1fr 140px 200px;
	gap: var(--lkr-space-4);
	align-items: center;
	padding: var(--lkr-space-4);
}

.lkr-tc-row__rank {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	font-family: var(--lkr-font-display);
	font-size: 1rem;
	font-weight: 700;
	margin: 0 auto;
}
.lkr-tc-row:nth-child(1) .lkr-tc-row__rank { background: #d4af37; color: #1a1a1a; }
.lkr-tc-row:nth-child(2) .lkr-tc-row__rank { background: #b0b6c0; color: #1a1a1a; }
.lkr-tc-row:nth-child(3) .lkr-tc-row__rank { background: #cd7f32; color: #fff; }

.lkr-tc-row__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 64px;
	background: #fff;
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-sm);
	padding: 8px;
}
.lkr-tc-row__logo-img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	display: block;
}
.lkr-tc-row__logo-placeholder {
	font-family: var(--lkr-font-display);
	font-size: 1rem;
	font-weight: 700;
	color: var(--lkr-ink-muted);
}

.lkr-tc-row__info { min-width: 0; }
.lkr-tc-row__name {
	display: block;
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-xl);
	font-weight: 600;
	color: var(--lkr-ink);
	text-decoration: none;
	line-height: 1.2;
	margin-bottom: 4px;
}
.lkr-tc-row__name:hover { color: var(--lkr-accent); }
.lkr-tc-row__license {
	display: block;
	font-size: 0.6875rem;
	color: var(--lkr-ink-muted);
	margin-bottom: 6px;
	line-height: 1.4;
}
.lkr-tc-row__bonus {
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-soft);
	line-height: 1.5;
}
.lkr-tc-row__bonus-amt {
	display: block;
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-base);
	font-weight: 700;
	color: var(--lkr-ink);
	line-height: 1.3;
}
.lkr-tc-row__bonus strong, .lkr-tc-row__bonus b {
	font-size: inherit;
	color: var(--lkr-ink-muted);
	font-weight: 600;
}

.lkr-tc-row__rating {
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}
.lkr-tc-row__rating-num {
	font-family: var(--lkr-font-display);
	font-size: 1.625rem;
	font-weight: 700;
	color: var(--lkr-ink);
	line-height: 1;
}
.lkr-tc-row__rating-num span {
	font-size: 0.875rem;
	font-weight: 400;
	color: var(--lkr-ink-muted);
}
.lkr-tc-row__rating-bar {
	display: block;
	width: 100%;
	max-width: 120px;
	height: 8px;
	border-radius: 99px;
	background: linear-gradient(to right, var(--lkr-accent) var(--pct, 0%), var(--lkr-line) var(--pct, 0%));
}

.lkr-tc-row__actions {
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.lkr-tc-row__cta {
	display: block;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	font-family: var(--lkr-font-body);
	font-size: 0.9375rem;
	font-weight: 600;
	text-align: center;
	padding: 0.7rem 1rem;
	border-radius: var(--lkr-radius-sm);
	text-decoration: none;
	transition: background 0.15s;
}
.lkr-tc-row__cta:hover { background: var(--lkr-accent-hover); color: var(--lkr-on-accent); }
.lkr-tc-row__review-link {
	font-size: 0.75rem;
	color: var(--lkr-accent);
	text-align: center;
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Expand button — full width strip below row__main */
.lkr-tc-row__toggle {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	background: var(--lkr-bg-alt);
	border: none;
	border-top: var(--lkr-border-thin) solid var(--lkr-line);
	padding: 10px var(--lkr-space-4);
	cursor: pointer;
	color: var(--lkr-ink-muted);
	font-family: var(--lkr-font-body);
	font-size: 0.8125rem;
	font-weight: 500;
	transition: background 0.15s, color 0.15s;
}
.lkr-tc-row__toggle:hover {
	background: var(--lkr-line);
	color: var(--lkr-ink);
}
.lkr-tc-row__toggle-icon {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg) translate(-2px, -2px);
	transition: transform 0.2s;
}
.lkr-tc-row__toggle[aria-expanded="true"] .lkr-tc-row__toggle-icon {
	transform: rotate(225deg) translate(-2px, -2px);
}

/* Detail panel — flows naturally below the row, no overlay, no empty space */
.lkr-tc-row__details {
	background: var(--lkr-bg-alt);
	border-top: var(--lkr-border-thin) solid var(--lkr-line);
	padding: var(--lkr-space-4);
}
.lkr-tc-row__facts {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: var(--lkr-space-3);
}
.lkr-tc-row__fact {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.lkr-tc-row__fact-label {
	font-size: 0.625rem;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--lkr-ink-muted);
	font-weight: 600;
}
.lkr-tc-row__fact-value {
	font-size: var(--lkr-text-sm);
	font-weight: 600;
	color: var(--lkr-ink);
}
.lkr-tc-row__terms {
	font-size: var(--lkr-text-xs);
	color: var(--lkr-ink-muted);
	line-height: 1.5;
	margin: var(--lkr-space-3) 0 0;
	padding-top: var(--lkr-space-3);
	border-top: var(--lkr-border-thin) solid var(--lkr-line);
}

/* Tablet breakpoint */
@media (max-width: 900px) {
	.lkr-tc-row__main {
		grid-template-columns: 50px 90px 1fr 180px;
		grid-template-areas:
			"rank logo info cta"
			"rank logo rating cta";
		gap: var(--lkr-space-3);
	}
	.lkr-tc-row__rank   { grid-area: rank; align-self: center; }
	.lkr-tc-row__logo   { grid-area: logo; }
	.lkr-tc-row__info   { grid-area: info; }
	.lkr-tc-row__rating { grid-area: rating; align-items: flex-start; }
	.lkr-tc-row__rating-bar { max-width: 100%; }
	.lkr-tc-row__actions { grid-area: cta; }
}

/* Mobile breakpoint */
@media (max-width: 640px) {
	.lkr-tc-row__main {
		grid-template-columns: auto 1fr;
		grid-template-areas:
			"rank info"
			"logo info"
			"rating rating"
			"cta cta";
		gap: var(--lkr-space-3);
		padding: var(--lkr-space-3);
	}
	.lkr-tc-row__logo { width: 90px; height: 50px; }
	.lkr-tc-row__rating { flex-direction: row; gap: var(--lkr-space-2); padding-top: var(--lkr-space-2); border-top: var(--lkr-border-thin) solid var(--lkr-line); }
	.lkr-tc-row__rating-bar { flex: 1; max-width: none; }
	.lkr-tc-row__actions { flex-direction: column; }
}

/* ============================================================
   SINGLE CASINO REVIEW — 2-column layout
   ============================================================ */

.lkr-review__bcrumb-bar {
	background: var(--lkr-bg-alt);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
	display: flex;
	align-items: center;
	min-height: 44px;
}
.lkr-review__bcrumb-inner {
	max-width: 1240px;
	width: 100%;
	margin: 0 auto;
	padding: 0 var(--lkr-space-5);
	display: flex;
	align-items: center;
}
.lkr-review__bcrumb-inner .lkr-breadcrumb {
	margin: 0;
	flex-wrap: wrap;
}

.lkr-review__title-bar {
	background: var(--lkr-bg);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
}
.lkr-review__title-bar-inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: var(--lkr-space-6) var(--lkr-space-5) var(--lkr-space-5);
}
.lkr-review__h1 {
	font-family: var(--lkr-font-display);
	font-size: clamp(1.625rem, 3.5vw, 2.5rem);
	font-weight: 600;
	line-height: 1.15;
	color: var(--lkr-ink);
	margin: 0 0 var(--lkr-space-4);
}

/* EEAT bar */
.lkr-eeat-bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--lkr-space-3);
}
.lkr-eeat-person {
	display: flex;
	align-items: center;
	gap: var(--lkr-space-2);
}
.lkr-eeat-avatar {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid var(--lkr-line);
	flex-shrink: 0;
}
.lkr-eeat-avatar--initials {
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	font-family: var(--lkr-font-display);
	font-weight: 700;
	font-size: 1rem;
}
.lkr-eeat-person__text { display: flex; flex-direction: column; gap: 0; }
.lkr-eeat-person__role {
	font-size: 0.6875rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--lkr-ink-muted);
}
.lkr-eeat-person__name {
	font-size: var(--lkr-text-sm);
	font-weight: 600;
	color: var(--lkr-ink);
	text-decoration: none;
}
a.lkr-eeat-person__name {
	text-decoration: underline;
	text-decoration-color: var(--lkr-line-strong);
	text-underline-offset: 2px;
}
a.lkr-eeat-person__name:hover { color: var(--lkr-accent); text-decoration-color: var(--lkr-accent); }

/* Bio tooltip on hover */
a.lkr-eeat-person__name[data-bio] { position: relative; }
a.lkr-eeat-person__name[data-bio]:not([data-bio=""])::after {
	content: attr(data-bio);
	position: absolute;
	bottom: calc(100% + 8px);
	left: 0;
	background: var(--lkr-ink);
	color: #fff;
	font-size: 0.6875rem;
	font-weight: 400;
	line-height: 1.5;
	padding: 8px 12px;
	border-radius: var(--lkr-radius-sm);
	white-space: normal;
	width: 260px;
	max-width: 90vw;
	box-shadow: 0 4px 16px rgba(0,0,0,.18);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.18s;
	z-index: 99;
}
a.lkr-eeat-person__name[data-bio]:not([data-bio=""]):hover::after { opacity: 1; }
.lkr-eeat-person__title {
	font-size: 0.6875rem;
	color: var(--lkr-ink-muted);
}
.lkr-eeat-sep { color: var(--lkr-line-strong); }
.lkr-eeat-date {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: var(--lkr-text-xs);
	color: var(--lkr-ink-muted);
}

/* Two-column layout */
.lkr-review__layout {
	display: grid;
	grid-template-columns: 320px 1fr;
	gap: var(--lkr-space-6);
	max-width: 1240px;
	margin: var(--lkr-space-6) auto;
	padding: 0 var(--lkr-space-5);
	align-items: start;
}

/* Left sidebar */
.lkr-review__sidebar {
	position: sticky;
	top: var(--lkr-space-5);
	display: flex;
	flex-direction: column;
	gap: var(--lkr-space-4);
}

/* ACES org-1 overrides inside sidebar */
body.lkr-page .lkr-review__aces-org1 .space-organization-single-1 {
	background: var(--lkr-bg-alt) !important;
	border: var(--lkr-border-thin) solid var(--lkr-line) !important;
	border-radius: var(--lkr-radius-md) !important;
	padding: var(--lkr-space-5) !important;
	text-align: left !important;
}
body.lkr-page .lkr-review__aces-org1 .space-organization-content-logo {
	text-align: left !important;
	margin-bottom: var(--lkr-space-3) !important;
}
body.lkr-page .lkr-review__aces-org1 .space-organization-content-logo img {
	max-height: 64px !important;
	max-width: 180px !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	display: block !important;
}
body.lkr-page .lkr-review__aces-org1 .space-organization-title-style-1 {
	font-family: var(--lkr-font-display) !important;
	font-size: var(--lkr-text-xl) !important;
	font-weight: 600 !important;
	color: var(--lkr-ink) !important;
	text-align: left !important;
	margin-bottom: var(--lkr-space-2) !important;
}
body.lkr-page .lkr-review__aces-org1 .space-organization-content-logo-stars {
	text-align: left !important;
	margin-bottom: var(--lkr-space-3) !important;
}
body.lkr-page .lkr-review__aces-org1 .space-organization-content-short-desc {
	font-size: var(--lkr-text-sm) !important;
	color: var(--lkr-ink) !important;
	line-height: 1.65 !important;
	text-align: left !important;
	border-top: var(--lkr-border-thin) solid var(--lkr-line) !important;
	padding-top: var(--lkr-space-3) !important;
	margin-bottom: var(--lkr-space-3) !important;
}
body.lkr-page .lkr-review__aces-org1 .space-organization-content-short-desc strong,
body.lkr-page .lkr-review__aces-org1 .space-organization-content-short-desc b {
	font-size: inherit !important;
	font-weight: 600 !important;
	color: var(--lkr-ink-muted) !important;
}
body.lkr-page .lkr-review__aces-org1 .space-organization-content-info {
	font-size: var(--lkr-text-xs) !important;
	color: var(--lkr-ink-muted) !important;
	line-height: 1.5 !important;
	text-align: left !important;
	margin-bottom: var(--lkr-space-3) !important;
}
body.lkr-page .lkr-review__aces-org1 .space-organization-content-button a {
	display: block !important;
	background: var(--lkr-accent) !important;
	color: var(--lkr-on-accent) !important;
	font-weight: 600 !important;
	font-size: var(--lkr-text-base) !important;
	text-align: center !important;
	padding: 0.7rem 1rem !important;
	border-radius: var(--lkr-radius-sm) !important;
	text-decoration: none !important;
	box-shadow: none !important;
	text-shadow: none !important;
	transition: background 0.15s !important;
	border: none !important;
}
body.lkr-page .lkr-review__aces-org1 .space-organization-content-button a:hover {
	background: var(--lkr-accent-hover) !important;
	box-shadow: none !important;
	filter: none !important;
}
body.lkr-page .lkr-review__aces-org1 .space-organization-header-button-notice {
	font-size: 0.625rem !important;
	color: var(--lkr-ink-muted) !important;
	text-align: center !important;
	margin-top: var(--lkr-space-2) !important;
}
/* Override ACES star colors to match Lokrin accent */
body.lkr-page .lkr-review__aces-org1 .space-star-rating span.filled,
body.lkr-page .lkr-review__aces-org1 .space-star-rating .star-filled,
body.lkr-page .lkr-review__aces-org1 .star-rating-filled,
body.lkr-page .lkr-review__aces-org1 .fas.fa-star,
body.lkr-page .lkr-review__aces-org1 .fa-star { color: var(--lkr-accent) !important; }

/* Quick facts strip */
.lkr-review__quickfacts {
	background: var(--lkr-bg);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	overflow: hidden;
}
.lkr-qf {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	padding: 9px var(--lkr-space-4);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
	gap: var(--lkr-space-3);
}
.lkr-qf:last-child { border-bottom: none; }
.lkr-qf__label {
	font-size: 0.6875rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--lkr-ink-muted);
	font-weight: 600;
	flex-shrink: 0;
}
.lkr-qf__value {
	font-size: var(--lkr-text-sm);
	font-weight: 600;
	color: var(--lkr-ink);
	text-align: right;
}

/* Pros & Cons — clean 2026 design */
.lkr-review__proscons {
	display: flex;
	flex-direction: column;
	gap: var(--lkr-space-3);
}
.lkr-proscons {
	background: var(--lkr-bg);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	overflow: hidden;
}
.lkr-proscons--pros { border-left: 3px solid #16a34a; }
.lkr-proscons--cons { border-left: 3px solid #dc2626; }
.lkr-proscons__heading {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.07em;
	padding: 10px var(--lkr-space-4);
	margin: 0;
	background: transparent;
	color: var(--lkr-ink-muted);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
}
.lkr-proscons--pros .lkr-proscons__heading { color: #16a34a; }
.lkr-proscons--cons .lkr-proscons__heading { color: #dc2626; }
.lkr-proscons__icon { font-size: 0.8125rem; line-height: 1; }
.lkr-proscons ul {
	list-style: none;
	margin: 0;
	padding: 12px var(--lkr-space-4) var(--lkr-space-4);
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.lkr-proscons ul li {
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-soft);
	padding-left: 1.25rem;
	position: relative;
	line-height: 1.5;
}
.lkr-proscons--pros ul li::before {
	content: "✓";
	color: #16a34a;
	position: absolute;
	left: 0;
	font-weight: 700;
	font-size: 0.75rem;
	top: 2px;
}
.lkr-proscons--cons ul li::before {
	content: "✕";
	color: #dc2626;
	position: absolute;
	left: 0;
	font-weight: 700;
	font-size: 0.75rem;
	top: 2px;
}

/* Right review content */
.lkr-review__content { min-width: 0; }
.lkr-review__body { margin-bottom: var(--lkr-space-6); }
.lkr-review__body > * { max-width: 70ch; }
.lkr-review__content .lkr-review__ratings {
	max-width: none;
	margin: var(--lkr-space-5) 0;
	padding: 0;
}
.lkr-review__body h2 {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-2xl);
	font-weight: 600;
	color: var(--lkr-ink);
	margin-top: var(--lkr-space-6);
	margin-bottom: var(--lkr-space-3);
}
.lkr-review__body h3 {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-xl);
	font-weight: 600;
	color: var(--lkr-ink);
	margin-top: var(--lkr-space-5);
	margin-bottom: var(--lkr-space-2);
}
.lkr-review__body p { line-height: 1.75; color: var(--lkr-ink); margin-bottom: var(--lkr-space-4); }
.lkr-review__intro { font-size: var(--lkr-text-base); color: var(--lkr-ink); font-style: italic; border-left: 3px solid var(--lkr-accent); padding-left: var(--lkr-space-4); margin-bottom: var(--lkr-space-5) !important; }

/* Table override */
.lkr-review__body .wp-block-table.is-style-lkr-comparison-table table {
	width: 100%;
	border-collapse: collapse;
	font-size: var(--lkr-text-sm);
}
.lkr-review__body .wp-block-table.is-style-lkr-comparison-table th {
	background: var(--lkr-bg-alt);
	font-family: var(--lkr-font-display);
	font-weight: 600;
	text-transform: uppercase;
	font-size: 0.6875rem;
	letter-spacing: 0.06em;
	padding: 8px 12px;
	border: var(--lkr-border-thin) solid var(--lkr-line);
	color: var(--lkr-ink-muted);
	text-align: left;
}
.lkr-review__body .wp-block-table.is-style-lkr-comparison-table td {
	padding: 9px 12px;
	border: var(--lkr-border-thin) solid var(--lkr-line);
	color: var(--lkr-ink);
	line-height: 1.4;
}
.lkr-review__body .wp-block-table.is-style-lkr-comparison-table tr:nth-child(even) td {
	background: var(--lkr-bg-alt);
}

/* Author box */
.lkr-author-box {
	display: flex;
	gap: var(--lkr-space-4);
	align-items: flex-start;
	background: var(--lkr-bg-alt);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-4);
	margin: var(--lkr-space-5) 0;
}
.lkr-author-box__avatar {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	object-fit: cover;
	flex-shrink: 0;
	border: 2px solid var(--lkr-line);
}
.lkr-author-box__body { flex: 1; min-width: 0; }
.lkr-author-box__name {
	font-family: var(--lkr-font-display);
	font-weight: 600;
	font-size: var(--lkr-text-base);
	color: var(--lkr-ink);
	margin: 0 0 4px;
}
.lkr-author-box__bio {
	font-size: var(--lkr-text-sm);
	color: var(--lkr-ink-muted);
	line-height: 1.55;
	margin: 0;
}

/* Disclaimer */
.lkr-review__disclaimer {
	border-top: var(--lkr-border-thin) solid var(--lkr-line);
	padding-top: var(--lkr-space-4);
	margin-top: var(--lkr-space-5);
	font-size: var(--lkr-text-xs);
	color: var(--lkr-ink-muted);
	line-height: 1.55;
}

/* ── How we review section ───────────────────────────────── */
.lkr-how-item {
	padding: var(--lkr-space-4);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	background: var(--lkr-bg);
}
.lkr-how-item__title {
	font-family: var(--lkr-font-display) !important;
	font-size: var(--lkr-text-base) !important;
	font-weight: 600 !important;
	color: var(--lkr-ink) !important;
	margin-bottom: var(--lkr-space-2) !important;
}

/* ── Mobile overrides ────────────────────────────────────── */
@media (max-width: 900px) {
	.lkr-top-casinos { grid-template-columns: 1fr; }
	.lkr-review__layout {
		grid-template-columns: 1fr;
		padding: 0 var(--lkr-space-4);
	}
	.lkr-review__sidebar { position: static; }
}
@media (max-width: 640px) {
	.lkr-eeat-bar { gap: var(--lkr-space-2); }
	.lkr-review__title-bar-inner { padding: var(--lkr-space-4); }
	.lkr-how-cols .wp-block-column { width: 100%; }
}

/* ============================================================
   [lkr-casino-table] — Custom ranked comparison
   ============================================================ */

.lkr-casino-table {
	display: flex;
	flex-direction: column;
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	overflow: hidden;
	background: var(--lkr-bg);
}

/* Header row — column labels */
.lkr-casino-table__head {
	display: grid;
	grid-template-columns: 56px 1.4fr 1fr 1.2fr 1.2fr 180px;
	background: var(--lkr-bg-alt);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
	padding: 10px var(--lkr-space-3);
	gap: var(--lkr-space-3);
	align-items: center;
}
.lkr-ct-h {
	font-family: var(--lkr-font-body);
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.07em;
	color: var(--lkr-ink-muted);
}
.lkr-ct-h--rank { text-align: center; }
.lkr-ct-h--cta { text-align: center; }

/* Data row */
.lkr-ct-row {
	display: grid;
	grid-template-columns: 56px 1.4fr 1fr 1.2fr 1.2fr 180px;
	gap: var(--lkr-space-3);
	padding: var(--lkr-space-4) var(--lkr-space-3);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
	align-items: center;
	transition: background 0.15s;
}
.lkr-ct-row:last-child { border-bottom: none; }
.lkr-ct-row:hover { background: var(--lkr-bg-alt); }

.lkr-ct-c { min-width: 0; }

/* RANK column */
.lkr-ct-c--rank { display: flex; justify-content: center; }
.lkr-ct-rank-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	font-family: var(--lkr-font-display);
	font-size: 0.9375rem;
	font-weight: 700;
}
.lkr-ct-row:nth-child(2) .lkr-ct-rank-badge { background: #d4af37; color: #1a1a1a; }   /* gold */
.lkr-ct-row:nth-child(3) .lkr-ct-rank-badge { background: #b0b6c0; color: #1a1a1a; }   /* silver */
.lkr-ct-row:nth-child(4) .lkr-ct-rank-badge { background: #cd7f32; color: #fff; }      /* bronze */

/* BRAND column */
.lkr-ct-c--brand {
	display: flex;
	align-items: center;
	gap: var(--lkr-space-3);
}
.lkr-ct-logo-link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 96px;
	height: 60px;
	flex-shrink: 0;
	background: #fff;
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-sm);
	padding: 6px;
}
.lkr-ct-logo {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	display: block;
}
.lkr-ct-logo--placeholder {
	font-family: var(--lkr-font-display);
	font-size: 1rem;
	font-weight: 700;
	color: var(--lkr-ink-muted);
}
.lkr-ct-brand-text {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}
.lkr-ct-name {
	font-family: var(--lkr-font-display);
	font-size: 1.0625rem;
	font-weight: 600;
	color: var(--lkr-ink);
	text-decoration: none;
	line-height: 1.2;
}
.lkr-ct-name:hover { color: var(--lkr-accent); }
.lkr-ct-license {
	font-size: 0.6875rem;
	color: var(--lkr-ink-muted);
	line-height: 1.4;
}

/* RATING column */
.lkr-ct-rating-block {
	display: flex;
	align-items: baseline;
	gap: 4px;
	margin-bottom: 6px;
}
.lkr-ct-rating-num {
	font-family: var(--lkr-font-display);
	font-size: 1.625rem;
	font-weight: 700;
	color: var(--lkr-ink);
	line-height: 1;
}
.lkr-ct-rating-max {
	font-size: 0.8125rem;
	color: var(--lkr-ink-muted);
}
.lkr-ct-rating-bar {
	display: block;
	width: 100%;
	max-width: 120px;
	height: 8px;
	border-radius: 99px;
	background: linear-gradient(to right, var(--lkr-accent) var(--pct, 0%), var(--lkr-line) var(--pct, 0%));
}

/* BONUS column */
.lkr-ct-bonus-amount {
	display: block;
	font-family: var(--lkr-font-display);
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--lkr-ink);
	line-height: 1.3;
	margin-bottom: 4px;
}
.lkr-ct-bonus-desc {
	font-size: 0.75rem;
	color: var(--lkr-ink-muted);
	line-height: 1.45;
}
.lkr-ct-bonus-desc strong, .lkr-ct-bonus-desc b {
	font-size: inherit;
	font-weight: 600;
	color: var(--lkr-ink-soft);
}
.lkr-ct-bonus-desc br + * { margin-top: 2px; display: inline; }

/* KEY FACTS column */
.lkr-ct-facts {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 0;
}
.lkr-ct-fact {
	display: flex;
	justify-content: space-between;
	gap: var(--lkr-space-2);
	font-size: 0.75rem;
	line-height: 1.4;
}
.lkr-ct-fact dt {
	color: var(--lkr-ink-muted);
	margin: 0;
	font-weight: 400;
}
.lkr-ct-fact dd {
	color: var(--lkr-ink);
	margin: 0;
	font-weight: 600;
	text-align: right;
}

/* CTA column */
.lkr-ct-c--cta {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 6px;
	text-align: center;
}
.lkr-ct-cta {
	display: block;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	font-family: var(--lkr-font-body);
	font-size: 0.875rem;
	font-weight: 600;
	text-align: center;
	padding: 0.6rem 1rem;
	border-radius: var(--lkr-radius-sm);
	text-decoration: none;
	transition: background 0.15s;
}
.lkr-ct-cta:hover { background: var(--lkr-accent-hover); color: var(--lkr-on-accent); }
.lkr-ct-review-link {
	font-size: 0.75rem;
	color: var(--lkr-accent);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.lkr-ct-disclaimer {
	font-size: 0.625rem;
	color: var(--lkr-ink-muted);
	line-height: 1.4;
}

/* Tablet collapse */
@media (max-width: 1024px) {
	.lkr-casino-table__head { display: none; }
	.lkr-ct-row {
		grid-template-columns: 48px 1fr 160px;
		grid-template-areas:
			"rank brand cta"
			"rank rating cta"
			"bonus bonus bonus"
			"key key key";
		gap: var(--lkr-space-2) var(--lkr-space-3);
		padding: var(--lkr-space-4);
	}
	.lkr-ct-c--rank   { grid-area: rank; align-self: flex-start; }
	.lkr-ct-c--brand  { grid-area: brand; }
	.lkr-ct-c--rating { grid-area: rating; }
	.lkr-ct-c--bonus  { grid-area: bonus; padding-top: var(--lkr-space-2); border-top: var(--lkr-border-thin) solid var(--lkr-line); }
	.lkr-ct-c--key    { grid-area: key; padding-top: var(--lkr-space-2); border-top: var(--lkr-border-thin) solid var(--lkr-line); }
	.lkr-ct-c--cta    { grid-area: cta; }
	.lkr-ct-facts { flex-direction: row; flex-wrap: wrap; gap: var(--lkr-space-2) var(--lkr-space-3); }
	.lkr-ct-fact { flex: 0 0 auto; }
}

@media (max-width: 600px) {
	.lkr-ct-row {
		grid-template-columns: 1fr;
		grid-template-areas:
			"rank"
			"brand"
			"rating"
			"bonus"
			"key"
			"cta";
		text-align: left;
	}
	.lkr-ct-c--rank { justify-content: flex-start; }
	.lkr-ct-c--cta { align-items: stretch; }
	.lkr-ct-rating-bar { max-width: 100%; }
}

/* ============================================================
   Homepage — "Why these casinos" section
   ============================================================ */
.lkr-why-cols .wp-block-column { display: flex; }
.lkr-why-item {
	padding: var(--lkr-space-4);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	background: var(--lkr-bg);
	height: 100%;
	width: 100%;
	display: flex;
	flex-direction: column;
}
.lkr-why-item__num {
	font-family: var(--lkr-font-display);
	font-size: 2.25rem;
	font-weight: 700;
	color: var(--lkr-accent);
	line-height: 1;
	margin: 0 0 var(--lkr-space-2);
	letter-spacing: -0.02em;
}
.lkr-why-item__title {
	font-family: var(--lkr-font-display) !important;
	font-size: var(--lkr-text-xl) !important;
	font-weight: 600 !important;
	color: var(--lkr-ink) !important;
	margin: 0 0 var(--lkr-space-2) !important;
	line-height: 1.25 !important;
}

/* ============================================================
   Homepage — "Casinos by category" cards
   ============================================================ */
.lkr-cat-grid .wp-block-column { display: flex; }
.lkr-cat-card {
	padding: var(--lkr-space-4);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	background: var(--lkr-bg);
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	transition: border-color 0.15s, box-shadow 0.15s;
}
.lkr-cat-card:hover {
	border-color: var(--lkr-accent);
	box-shadow: 0 4px 16px rgba(0,0,0,.06);
}
.lkr-cat-card__icon {
	font-size: 1.75rem !important;
	line-height: 1 !important;
	margin: 0 0 var(--lkr-space-2) !important;
}
.lkr-cat-card h3 {
	font-family: var(--lkr-font-display) !important;
	font-size: var(--lkr-text-lg) !important;
	font-weight: 600 !important;
	color: var(--lkr-ink) !important;
	margin: 0 0 var(--lkr-space-2) !important;
	line-height: 1.3 !important;
}
.lkr-cat-card p { font-size: 0.875rem !important; line-height: 1.55 !important; }
.lkr-cat-card .is-style-lkr-meta { margin-top: auto !important; padding-top: var(--lkr-space-2) !important; }

/* ============================================================
   Homepage — Editorial team (EEAT) cards
   ============================================================ */
.lkr-team-cols .wp-block-column { display: flex; }
.lkr-team-card {
	padding: var(--lkr-space-5);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	background: var(--lkr-bg);
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
}
.lkr-team-card__avatar {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	background: var(--lkr-accent);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: var(--lkr-space-3);
}
.lkr-team-card__avatar-initials {
	font-family: var(--lkr-font-display);
	font-size: 1.5rem;
	font-weight: 700;
	color: var(--lkr-on-accent);
	letter-spacing: -0.02em;
}
.lkr-team-card__name {
	font-family: var(--lkr-font-display) !important;
	font-size: var(--lkr-text-xl) !important;
	font-weight: 600 !important;
	color: var(--lkr-ink) !important;
	margin: 0 0 4px !important;
	line-height: 1.2 !important;
}
.lkr-team-card__role {
	font-size: 0.75rem !important;
	color: var(--lkr-accent) !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	margin: 0 0 var(--lkr-space-3) !important;
}
.lkr-team-card p { font-size: 0.9375rem; line-height: 1.6; }

.lkr-team-card--rules { background: var(--lkr-accent); color: var(--lkr-on-accent); }
.lkr-team-card--rules h3 { color: var(--lkr-on-accent) !important; }
.lkr-team-card--rules p,
.lkr-team-card--rules li { color: rgba(255,255,255,0.92) !important; }
.lkr-team-card--rules a { color: #fff !important; text-decoration: underline; }
.lkr-team-card--rules .lkr-team-rules {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 0 var(--lkr-space-3) !important;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.lkr-team-card--rules .lkr-team-rules li {
	padding-left: 1.25rem;
	position: relative;
	font-size: 0.875rem;
	line-height: 1.5;
}
.lkr-team-card--rules .lkr-team-rules li::before {
	content: "✓";
	position: absolute;
	left: 0;
	color: rgba(255,255,255,0.7);
	font-weight: 700;
}

/* ============================================================
   single-casino-guide.php — editorial article layout
   No sticky sidebar, single column with embedded parent CTA
   ============================================================ */

.lkr-guide { background: var(--lkr-bg); }

.lkr-guide__hero {
	background: var(--lkr-bg);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
}
.lkr-guide__hero-inner {
	max-width: 760px;
	margin: 0 auto;
	padding: var(--lkr-space-6) var(--lkr-space-5) var(--lkr-space-5);
}
.lkr-guide__eyebrow {
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--lkr-ink-muted);
	font-weight: 600;
	margin: 0 0 var(--lkr-space-2);
}
.lkr-guide__eyebrow a {
	color: var(--lkr-accent);
	text-decoration: none;
}
.lkr-guide__eyebrow a:hover { text-decoration: underline; }
.lkr-guide__h1 {
	font-family: var(--lkr-font-display);
	font-size: clamp(1.75rem, 4vw, 2.625rem);
	font-weight: 600;
	line-height: 1.15;
	color: var(--lkr-ink);
	margin: 0 0 var(--lkr-space-3);
	letter-spacing: -0.015em;
}
.lkr-guide__lede {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-lg);
	font-style: italic;
	color: var(--lkr-ink-soft);
	line-height: 1.5;
	margin: 0 0 var(--lkr-space-4);
}

.lkr-guide__layout {
	max-width: 760px;
	margin: 0 auto;
	padding: var(--lkr-space-5) var(--lkr-space-5) var(--lkr-space-6);
}

.lkr-guide__body { margin-bottom: var(--lkr-space-6); }
.lkr-guide__body > * { max-width: none; }
.lkr-guide__body p,
.lkr-guide__body ul,
.lkr-guide__body ol {
	font-size: var(--lkr-text-base);
	line-height: 1.7;
	color: var(--lkr-ink);
}
.lkr-guide__body h2 {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-2xl);
	font-weight: 600;
	color: var(--lkr-ink);
	margin-top: var(--lkr-space-6);
	margin-bottom: var(--lkr-space-3);
	letter-spacing: -0.01em;
}
.lkr-guide__body h3 {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-xl);
	font-weight: 600;
	margin-top: var(--lkr-space-5);
	margin-bottom: var(--lkr-space-2);
}

/* Parent casino CTA card embedded in guide */
.lkr-guide__parent-cta {
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-left: 4px solid var(--lkr-accent);
	border-radius: var(--lkr-radius-md);
	background: var(--lkr-bg-alt);
	padding: var(--lkr-space-4);
	margin: var(--lkr-space-5) 0;
}
.lkr-guide__parent-eyebrow {
	font-size: 0.6875rem;
	text-transform: uppercase;
	letter-spacing: 0.07em;
	color: var(--lkr-ink-muted);
	font-weight: 700;
	margin: 0 0 var(--lkr-space-3);
}
.lkr-guide__parent-row {
	display: grid;
	grid-template-columns: 96px 1fr 180px;
	gap: var(--lkr-space-4);
	align-items: center;
}
.lkr-guide__parent-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-sm);
	padding: 8px;
	height: 64px;
}
.lkr-guide__parent-logo img {
	max-height: 100%;
	max-width: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	display: block;
}
.lkr-guide__parent-info { min-width: 0; }
.lkr-guide__parent-title {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-lg);
	font-weight: 600;
	color: var(--lkr-ink);
	text-decoration: none;
	display: block;
	margin-bottom: 4px;
	line-height: 1.2;
}
.lkr-guide__parent-title:hover { color: var(--lkr-accent); }
.lkr-guide__parent-rating {
	display: inline-block;
	font-family: var(--lkr-font-display);
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--lkr-accent);
	margin-bottom: 4px;
}
.lkr-guide__parent-bonus {
	font-size: 0.8125rem;
	color: var(--lkr-ink-soft);
	line-height: 1.5;
}
.lkr-guide__parent-bonus strong, .lkr-guide__parent-bonus b {
	font-size: inherit;
	color: var(--lkr-ink-muted);
}
.lkr-guide__parent-actions {
	display: flex;
	flex-direction: column;
	gap: 6px;
	align-items: stretch;
}
.lkr-guide__parent-cta-btn {
	display: block;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	font-weight: 600;
	font-size: 0.875rem;
	text-align: center;
	padding: 0.6rem 1rem;
	border-radius: var(--lkr-radius-sm);
	text-decoration: none;
	transition: background 0.15s;
}
.lkr-guide__parent-cta-btn:hover { background: var(--lkr-accent-hover); color: var(--lkr-on-accent); }
.lkr-guide__parent-review-link {
	font-size: 0.75rem;
	color: var(--lkr-accent);
	text-decoration: underline;
	text-align: center;
	text-underline-offset: 2px;
}
.lkr-guide__parent-disclaimer {
	font-size: 0.625rem;
	color: var(--lkr-ink-muted);
	text-align: center;
	margin: var(--lkr-space-2) 0 0;
}

@media (max-width: 700px) {
	.lkr-guide__parent-row {
		grid-template-columns: 1fr;
		gap: var(--lkr-space-3);
		text-align: left;
	}
	.lkr-guide__parent-logo { width: 96px; }
}

/* Related guides list */
.lkr-guide__related {
	margin: var(--lkr-space-6) 0 var(--lkr-space-5);
	padding: var(--lkr-space-4);
	background: var(--lkr-bg-alt);
	border-radius: var(--lkr-radius-md);
}
.lkr-guide__related-heading {
	font-family: var(--lkr-font-display) !important;
	font-size: var(--lkr-text-lg) !important;
	font-weight: 600 !important;
	color: var(--lkr-ink) !important;
	margin: 0 0 var(--lkr-space-3) !important;
}
.lkr-guide__related-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.lkr-guide__related-list li {
	padding-left: 1rem;
	position: relative;
}
.lkr-guide__related-list li::before {
	content: "→";
	position: absolute;
	left: 0;
	color: var(--lkr-accent);
	font-weight: 700;
}
.lkr-guide__related-list a {
	color: var(--lkr-ink);
	text-decoration: none;
	font-weight: 500;
}
.lkr-guide__related-list a:hover { color: var(--lkr-accent); text-decoration: underline; }

/* ============================================================
   page-lokrin-hub.php — Lokrin Hub Page template
   /online-casino/, /bonusy/, /hry/ and their sub-pages
   ============================================================ */

.lkr-hub-wrap { background: var(--lkr-bg); }

.lkr-hub__hero {
	background: var(--lkr-bg);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
	position: relative;
	overflow: hidden;
}
/* Hero variant with featured image background */
.lkr-hub__hero--with-image { min-height: 320px; }
.lkr-hub__hero--with-image .lkr-hub__hero-inner {
	position: relative;
	z-index: 2;
	color: #fff;
}
.lkr-hub__hero--with-image .lkr-hub__h1,
.lkr-hub__hero--with-image .lkr-hub__lede { color: #fff; max-width: 36ch; }
.lkr-hub__hero--with-image .lkr-eeat-person__name,
.lkr-hub__hero--with-image .lkr-eeat-person__role,
.lkr-hub__hero--with-image .lkr-eeat-date,
.lkr-hub__hero--with-image .lkr-eeat-sep { color: rgba(255,255,255,0.92); }
.lkr-hub__hero--with-image .lkr-eeat-person__name { color: #fff !important; text-decoration-color: rgba(255,255,255,0.5); }
.lkr-hub__hero-bg {
	position: absolute;
	inset: 0;
	z-index: 1;
}
.lkr-hub__hero-bg::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(180deg, rgba(15,23,42,.92) 0%, rgba(15,23,42,.78) 60%, rgba(15,23,42,.85) 100%),
		linear-gradient(135deg, rgba(31,58,95,.4) 0%, rgba(0,0,0,.2) 100%);
}
.lkr-hub__hero--with-image .lkr-hub__h1,
.lkr-hub__hero--with-image .lkr-hub__lede {
	text-shadow: 0 1px 2px rgba(0,0,0,.4);
}
.lkr-hub__hero-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.lkr-hub__hero-inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: var(--lkr-space-6) var(--lkr-space-5) var(--lkr-space-5);
}
.lkr-hub__h1 {
	font-family: var(--lkr-font-display);
	font-size: clamp(2rem, 4.2vw, 3rem);
	font-weight: 600;
	line-height: 1.1;
	color: var(--lkr-ink);
	margin: 0 0 var(--lkr-space-3);
	letter-spacing: -0.015em;
	max-width: 28ch;
}
.lkr-hub__lede {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-lg);
	font-style: italic;
	color: var(--lkr-ink-soft);
	line-height: 1.5;
	margin: 0 0 var(--lkr-space-4);
	max-width: 70ch;
}
/* EEAT bar inside hub hero (used on archive-casino) */
.lkr-hub__hero-inner .lkr-eeat-bar { margin-top: var(--lkr-space-3); }

.lkr-hub__body {
	background: var(--lkr-bg);
}
.lkr-hub__body-inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: var(--lkr-space-6) var(--lkr-space-5);
}

/* Inner content typography — wider than guide pages */
.lkr-hub__body-inner > * { max-width: none; }
.lkr-hub__body-inner .lkr-lede {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-lg);
	font-style: italic;
	color: var(--lkr-ink-soft);
	line-height: 1.5;
	max-width: 70ch;
	margin: 0 0 var(--lkr-space-5);
}
.lkr-hub__body-inner h2 {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-2xl);
	font-weight: 600;
	color: var(--lkr-ink);
	margin-top: var(--lkr-space-6);
	margin-bottom: var(--lkr-space-3);
	max-width: 40ch;
}
.lkr-hub__body-inner h3 {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-xl);
	font-weight: 600;
	color: var(--lkr-ink);
	margin-top: var(--lkr-space-5);
	margin-bottom: var(--lkr-space-2);
	line-height: 1.3;
}
/* H3 immediately after H2 — tighten the gap (it's a sub-section opener) */
.lkr-hub__body-inner h2 + h3,
.lkr-hub__body-inner h2 + p + h3 { margin-top: var(--lkr-space-4); }

/* H3 sections breathe more — daily promo brand sections (Tipsport, Fortuna, etc.) */
.lkr-hub__body-inner h3 + p,
.lkr-hub__body-inner h3 + ul,
.lkr-hub__body-inner h3 + ol { margin-top: var(--lkr-space-2) !important; }

.lkr-hub__body-inner p,
.lkr-hub__body-inner ul,
.lkr-hub__body-inner ol {
	font-size: var(--lkr-text-base);
	line-height: 1.75;
	max-width: 70ch;
	color: var(--lkr-ink);
}
/* Better spacing between paragraphs */
.lkr-hub__body-inner p { margin-bottom: var(--lkr-space-3); }

/* Lists — better indent + spacing + custom bullet */
.lkr-hub__body-inner ul,
.lkr-hub__body-inner ol {
	padding-left: 0;
	margin-bottom: var(--lkr-space-4);
	list-style: none;
}
.lkr-hub__body-inner ul li,
.lkr-hub__body-inner ol li {
	position: relative;
	padding-left: 1.75em;
	margin-bottom: var(--lkr-space-3);
	line-height: 1.7;
}
.lkr-hub__body-inner ul li::before {
	content: "";
	position: absolute;
	left: 0.5em;
	top: 0.65em;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--lkr-accent);
}
.lkr-hub__body-inner ol { counter-reset: lkr-list; }
.lkr-hub__body-inner ol li {
	counter-increment: lkr-list;
}
.lkr-hub__body-inner ol li::before {
	content: counter( lkr-list ) ".";
	position: absolute;
	left: 0;
	top: 0;
	font-family: var(--lkr-font-display);
	font-weight: 700;
	color: var(--lkr-accent);
	min-width: 1.5em;
}
/* Nested list inside <li> — keep visible */
.lkr-hub__body-inner ul ul,
.lkr-hub__body-inner ol ul,
.lkr-hub__body-inner ul ol,
.lkr-hub__body-inner ol ol {
	margin-top: var(--lkr-space-2);
	margin-bottom: 0;
}

.lkr-hub__body-inner table {
	max-width: 100%;
	width: 100%;
	font-size: var(--lkr-text-sm);
}
.lkr-hub__body-inner figure.wp-block-table { max-width: 100%; }
.lkr-hub__body-inner code {
	background: var(--lkr-bg-alt);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-xs);
	padding: 1px 6px;
	font-family: var(--lkr-font-mono);
	font-size: 0.875em;
	color: var(--lkr-accent);
}

/* Allow shortcode tables full width */
.lkr-hub__body-inner .lkr-casino-table,
.lkr-hub__body-inner .lkr-top-casinos { max-width: none; }

/* ============================================================
   Hub-page visual components (promo cards, callouts, banners)
   ============================================================ */

/* ── Stat banner — full-width hero stat callout ─────────────── */
.lkr-stat-banner {
	display: flex;
	align-items: center;
	gap: var(--lkr-space-4);
	padding: var(--lkr-space-4) var(--lkr-space-5);
	background: linear-gradient(135deg, var(--lkr-accent), var(--lkr-accent-hover));
	color: #fff;
	border-radius: var(--lkr-radius-md);
	margin: 0 0 var(--lkr-space-5);
	max-width: none;
}
.lkr-stat-banner__num {
	font-family: var(--lkr-font-display);
	font-size: 2.75rem;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	letter-spacing: -0.02em;
	flex-shrink: 0;
}
.lkr-stat-banner__label {
	font-size: 0.9375rem;
	color: rgba(255,255,255,0.92);
	line-height: 1.45;
	margin: 0;
}
.lkr-stat-banner__label strong { color: #fff; }
@media (max-width: 600px) {
	.lkr-stat-banner { flex-direction: column; align-items: flex-start; gap: var(--lkr-space-2); }
	.lkr-stat-banner__num { font-size: 2.25rem; }
}

/* ── Promo card — single brand offer card ─────────────────── */
.lkr-promo-card {
	display: grid;
	grid-template-columns: 96px 1fr 220px;
	gap: var(--lkr-space-4);
	align-items: center;
	padding: var(--lkr-space-4);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	background: var(--lkr-bg);
	margin: 0 0 var(--lkr-space-3);
	max-width: none;
	transition: border-color 0.15s, box-shadow 0.15s;
}
.lkr-promo-card:hover {
	border-color: var(--lkr-accent);
	box-shadow: 0 4px 16px rgba(0,0,0,.08);
}
.lkr-promo-card--featured {
	border-left: 4px solid var(--lkr-accent);
	background: linear-gradient(to right, rgba(31,58,95,0.04) 0%, var(--lkr-bg) 30%);
}
.lkr-promo-card__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 96px;
	height: 64px;
	background: #fff;
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-sm);
	padding: 6px;
	flex-shrink: 0;
}
.lkr-promo-card__logo img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}
.lkr-promo-card__body { min-width: 0; }
.lkr-promo-card__head {
	display: flex;
	align-items: baseline;
	gap: var(--lkr-space-2);
	flex-wrap: wrap;
	margin-bottom: 4px;
}
.lkr-promo-card__brand {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-lg);
	font-weight: 600;
	color: var(--lkr-ink);
	text-decoration: none;
	margin: 0;
}
.lkr-promo-card__brand:hover { color: var(--lkr-accent); }
.lkr-promo-card__badge {
	display: inline-flex;
	align-items: center;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	padding: 2px 8px;
	border-radius: 99px;
}
.lkr-promo-card__badge--exclusive { background: var(--lkr-accent); color: #fff; }
.lkr-promo-card__badge--top       { background: #d4af37; color: #1a1a1a; }
.lkr-promo-card__badge--sk        { background: var(--lkr-accent-soft); color: var(--lkr-accent); }
.lkr-promo-card__badge--no-deposit{ background: #e8f5e9; color: #1b5e20; }
.lkr-promo-card__offer {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-xl);
	font-weight: 700;
	color: var(--lkr-ink);
	line-height: 1.25;
	margin: 0 0 6px;
}
.lkr-promo-card__terms {
	font-size: 0.8125rem;
	color: var(--lkr-ink-muted);
	line-height: 1.5;
	margin: 0;
}
.lkr-promo-card__terms code {
	background: var(--lkr-bg-alt);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: 3px;
	padding: 1px 6px;
	font-family: var(--lkr-font-mono);
	font-size: 0.875em;
	color: var(--lkr-accent);
	font-weight: 600;
}
.lkr-promo-card__cta-col {
	display: flex;
	flex-direction: column;
	gap: 6px;
	align-items: stretch;
}
.lkr-promo-card__cta {
	display: block;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	font-weight: 600;
	font-size: 0.9375rem;
	text-align: center;
	padding: 0.7rem 1rem;
	border-radius: var(--lkr-radius-sm);
	text-decoration: none;
	transition: background 0.15s;
}
.lkr-promo-card__cta:hover { background: var(--lkr-accent-hover); color: var(--lkr-on-accent); }
.lkr-promo-card__review-link {
	font-size: 0.75rem;
	color: var(--lkr-accent);
	text-align: center;
	text-decoration: underline;
}
.lkr-promo-card__disclaimer {
	font-size: 0.625rem;
	color: var(--lkr-ink-muted);
	text-align: center;
}

@media (max-width: 768px) {
	.lkr-promo-card {
		grid-template-columns: 80px 1fr;
		grid-template-areas: "logo body" "cta cta";
		row-gap: var(--lkr-space-3);
	}
	.lkr-promo-card__logo { grid-area: logo; width: 80px; height: 56px; }
	.lkr-promo-card__body { grid-area: body; }
	.lkr-promo-card__cta-col { grid-area: cta; }
}

/* ── Tip box / Náš tip callout ───────────────────────────── */
.lkr-tip-box {
	border-left: 3px solid var(--lkr-accent);
	background: var(--lkr-accent-soft);
	padding: var(--lkr-space-4);
	border-radius: 0 var(--lkr-radius-md) var(--lkr-radius-md) 0;
	margin: var(--lkr-space-4) 0;
	max-width: none;
}
.lkr-tip-box__label {
	display: inline-block;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--lkr-accent);
	margin-bottom: 6px;
}
.lkr-tip-box p {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--lkr-ink);
	max-width: none;
}
.lkr-tip-box p + p { margin-top: var(--lkr-space-2); }

/* ── Section header with "view more" link ─────────────────── */
.lkr-section-divider {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--lkr-space-3);
	flex-wrap: wrap;
	margin: var(--lkr-space-6) 0 var(--lkr-space-3);
	padding-bottom: var(--lkr-space-2);
	border-bottom: 2px solid var(--lkr-accent);
	max-width: none;
}
.lkr-section-divider h2 {
	margin: 0 !important;
	border: none !important;
}
.lkr-section-divider__link {
	font-size: 0.875rem;
	color: var(--lkr-accent);
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* ── Math example callout (wagering visualization) ───────── */
.lkr-math-card {
	background: var(--lkr-bg-alt);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-5);
	margin: var(--lkr-space-4) 0;
	max-width: none;
}
.lkr-math-card__title {
	font-family: var(--lkr-font-display) !important;
	font-size: var(--lkr-text-lg) !important;
	font-weight: 600 !important;
	color: var(--lkr-ink) !important;
	margin: 0 0 var(--lkr-space-3) !important;
}
.lkr-math-card__rows {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: var(--lkr-space-2) var(--lkr-space-4);
	font-size: 0.9375rem;
}
.lkr-math-card__rows dt { color: var(--lkr-ink-muted); margin: 0; }
.lkr-math-card__rows dd {
	color: var(--lkr-ink);
	font-weight: 600;
	margin: 0;
	font-family: var(--lkr-font-mono);
}
.lkr-math-card__verdict {
	margin-top: var(--lkr-space-3);
	padding-top: var(--lkr-space-3);
	border-top: var(--lkr-border-thin) solid var(--lkr-line);
	font-size: 0.875rem;
	color: var(--lkr-ink);
	font-weight: 600;
}
.lkr-math-card__verdict--good { color: #1b5e20; }
.lkr-math-card__verdict--bad  { color: #b71c1c; }

/* ── EEAT in dark hero — fix avatar border + bio tooltip on dark bg ── */
.lkr-hub__hero--with-image .lkr-eeat-avatar {
	border-color: rgba(255,255,255,0.4);
}

/* ── Spacing inside hub body for visual rhythm ───────────── */
.lkr-hub__body-inner h2 {
	scroll-margin-top: var(--lkr-space-5);
	padding-top: var(--lkr-space-2);
}
.lkr-hub__body-inner > * + h2 {
	margin-top: var(--lkr-space-6);
}

/* ── Affiliate disclosure pill — appears below lede ───────── */
.lkr-affiliate-pill {
	display: flex;
	align-items: flex-start;
	gap: var(--lkr-space-3);
	padding: var(--lkr-space-3) var(--lkr-space-4);
	background: var(--lkr-bg-alt);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-left: 3px solid var(--lkr-accent);
	border-radius: var(--lkr-radius-sm);
	margin: 0 0 var(--lkr-space-5);
	max-width: none;
}
.lkr-affiliate-pill__icon {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	font-family: var(--lkr-font-display);
	font-weight: 700;
	font-size: 0.75rem;
	font-style: italic;
}
.lkr-affiliate-pill p {
	margin: 0;
	font-size: 0.875rem;
	line-height: 1.55;
	color: var(--lkr-ink-soft);
	max-width: none;
}
.lkr-affiliate-pill p strong { color: var(--lkr-ink); }
.lkr-affiliate-pill a { color: var(--lkr-accent); text-decoration: underline; }

/* ── Disclaimer paragraph at the bottom of hub pages ──────── */
.lkr-hub__body-inner .lkr-disclaimer {
	font-size: 0.8125rem;
	color: var(--lkr-ink-muted);
	font-style: italic;
	border-top: var(--lkr-border-thin) solid var(--lkr-line);
	padding-top: var(--lkr-space-3);
	margin-top: var(--lkr-space-5);
	max-width: none;
}

/* ============================================================
   v0.9.3 — Page-level art direction additions
   Adds variety primitives so long money pages (/free-spiny-dnes/)
   don't read as a vertical stack of identical promo-cards.
   ============================================================ */

/* ── In-page anchor nav (chip-style TOC, sits below stat banner) ── */
.lkr-toc {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--lkr-space-2);
	padding: var(--lkr-space-3) 0;
	margin: 0 0 var(--lkr-space-5);
	border-top: var(--lkr-border-thin) solid var(--lkr-line);
	border-bottom: var(--lkr-border-thin) solid var(--lkr-line);
	max-width: none;
}
.lkr-toc__label {
	font-family: var(--lkr-font-body);
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--lkr-ink-muted);
	margin-right: var(--lkr-space-2);
}
.lkr-toc__link {
	font-size: 0.8125rem;
	color: var(--lkr-ink-soft);
	text-decoration: none;
	padding: 4px 10px;
	border-radius: var(--lkr-radius-sm);
	background: var(--lkr-bg-alt);
	border: var(--lkr-border-thin) solid transparent;
	transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.lkr-toc__link:hover {
	background: var(--lkr-accent-soft);
	color: var(--lkr-accent);
	border-color: var(--lkr-accent);
}

/* ── Promo card --rank — editorial numbered ranking row ─────── */
.lkr-promo-card--rank {
	grid-template-columns: 44px 96px 1fr 220px;
}
.lkr-promo-card__rank {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: var(--lkr-accent);
	color: var(--lkr-on-accent);
	font-family: var(--lkr-font-display);
	font-size: 1.375rem;
	font-weight: 700;
	border-radius: 50%;
	flex-shrink: 0;
	line-height: 1;
}
.lkr-promo-card--rank.lkr-promo-card--featured {
	background: linear-gradient(to right, rgba(31,58,95,0.06) 0%, var(--lkr-bg) 28%);
}
@media (max-width: 768px) {
	.lkr-promo-card--rank {
		grid-template-columns: 40px 80px 1fr;
		grid-template-areas: "rank logo body" "cta cta cta";
	}
	.lkr-promo-card__rank { grid-area: rank; width: 40px; height: 40px; font-size: 1.125rem; }
}

/* ── Promo grid + --compact card (dense 2-col, no big logo) ─── */
.lkr-promo-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--lkr-space-3);
	margin: 0 0 var(--lkr-space-4);
	max-width: none;
}
.lkr-promo-grid > .lkr-promo-card { margin: 0; }
.lkr-promo-card--compact {
	grid-template-columns: 56px 1fr;
	grid-template-areas:
		"logo head"
		"logo offer"
		"terms terms"
		"cta cta";
	gap: 4px var(--lkr-space-3);
	padding: var(--lkr-space-3);
	align-items: start;
}
.lkr-promo-card--compact .lkr-promo-card__logo {
	grid-area: logo;
	width: 56px;
	height: 56px;
}
.lkr-promo-card--compact .lkr-promo-card__body {
	display: contents;
}
.lkr-promo-card--compact .lkr-promo-card__head {
	grid-area: head;
	margin: 0;
	align-items: center;
}
.lkr-promo-card--compact .lkr-promo-card__brand {
	font-size: var(--lkr-text-base);
}
.lkr-promo-card--compact .lkr-promo-card__offer {
	grid-area: offer;
	font-size: var(--lkr-text-base);
	margin: 0;
	line-height: 1.3;
}
.lkr-promo-card--compact .lkr-promo-card__terms {
	grid-area: terms;
	font-size: 0.75rem;
	margin-top: var(--lkr-space-2);
}
.lkr-promo-card--compact .lkr-promo-card__cta-col {
	grid-area: cta;
	flex-direction: row;
	align-items: center;
	gap: var(--lkr-space-3);
	margin-top: var(--lkr-space-2);
}
.lkr-promo-card--compact .lkr-promo-card__cta {
	flex: 1;
	padding: 0.55rem 0.75rem;
	font-size: 0.8125rem;
}
.lkr-promo-card--compact .lkr-promo-card__review-link {
	font-size: 0.75rem;
	text-align: right;
	white-space: nowrap;
}
.lkr-promo-card--compact .lkr-promo-card__disclaimer { display: none; }
@media (max-width: 768px) {
	.lkr-promo-grid { grid-template-columns: 1fr; }
	.lkr-promo-card--compact {
		grid-template-columns: 48px 1fr;
		grid-template-areas:
			"logo head"
			"logo offer"
			"terms terms"
			"cta cta";
	}
	.lkr-promo-card--compact .lkr-promo-card__logo { width: 48px; height: 48px; }
}

/* ── Promo group — multiple brands sharing one offer (7STARS) ── */
.lkr-promo-group {
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-left: 4px solid var(--lkr-accent);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-4) var(--lkr-space-5);
	background: var(--lkr-bg);
	margin: 0 0 var(--lkr-space-3);
	max-width: none;
}
.lkr-promo-group__header {
	display: flex;
	align-items: baseline;
	gap: var(--lkr-space-3);
	flex-wrap: wrap;
	margin-bottom: var(--lkr-space-2);
}
.lkr-promo-group__label {
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--lkr-accent);
	background: var(--lkr-accent-soft);
	padding: 3px 10px;
	border-radius: 99px;
	flex-shrink: 0;
}
.lkr-promo-group__title {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-xl);
	font-weight: 700;
	color: var(--lkr-ink);
	margin: 0;
	line-height: 1.2;
}
.lkr-promo-group__offer {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-lg);
	color: var(--lkr-ink);
	font-weight: 600;
	margin: 0 0 var(--lkr-space-2);
}
.lkr-promo-group__offer strong { color: var(--lkr-accent); }
.lkr-promo-group__terms {
	font-size: 0.8125rem;
	color: var(--lkr-ink-muted);
	line-height: 1.5;
	margin: 0 0 var(--lkr-space-3);
}
.lkr-promo-group__terms code {
	background: var(--lkr-bg-alt);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: 3px;
	padding: 1px 6px;
	font-family: var(--lkr-font-mono);
	font-size: 0.875em;
	color: var(--lkr-accent);
	font-weight: 600;
}
.lkr-promo-group__brands {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--lkr-space-2);
}
.lkr-promo-group__brand {
	display: flex;
	align-items: center;
	gap: var(--lkr-space-3);
	padding: var(--lkr-space-2) var(--lkr-space-3);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-sm);
	background: var(--lkr-surface);
	text-decoration: none;
	color: var(--lkr-ink);
	transition: border-color 0.15s, background 0.15s;
}
.lkr-promo-group__brand:hover {
	border-color: var(--lkr-accent);
	background: #fff;
}
.lkr-promo-group__brand img {
	width: 56px;
	height: 32px;
	object-fit: contain;
	flex-shrink: 0;
}
.lkr-promo-group__brand-name {
	font-weight: 600;
	font-size: 0.9375rem;
	font-family: var(--lkr-font-display);
}
.lkr-promo-group__brand-cta {
	margin-left: auto;
	font-size: 0.75rem;
	color: var(--lkr-accent);
	text-decoration: underline;
	white-space: nowrap;
}
@media (max-width: 768px) {
	.lkr-promo-group__brands { grid-template-columns: 1fr; }
}

/* ── Brand note (Denné akcie po brand — 2-col grid) ─────────── */
.lkr-brand-notes {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--lkr-space-3);
	margin: var(--lkr-space-3) 0 var(--lkr-space-4);
	max-width: none;
}
.lkr-brand-note {
	border-left: 3px solid var(--lkr-accent);
	background: var(--lkr-bg-alt);
	padding: var(--lkr-space-3) var(--lkr-space-4);
	border-radius: 0 var(--lkr-radius-sm) var(--lkr-radius-sm) 0;
}
.lkr-brand-note__brand {
	font-family: var(--lkr-font-display);
	font-size: var(--lkr-text-lg);
	font-weight: 700;
	color: var(--lkr-ink);
	margin: 0;
	line-height: 1.2;
}
.lkr-brand-note__action {
	display: inline-block;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--lkr-accent);
	margin: 4px 0 var(--lkr-space-2);
}
.lkr-brand-note p {
	font-size: 0.875rem;
	line-height: 1.55;
	color: var(--lkr-ink-soft);
	margin: 0;
	max-width: none;
}
.lkr-brand-note p code {
	background: var(--lkr-surface);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: 3px;
	padding: 1px 6px;
	font-family: var(--lkr-font-mono);
	font-size: 0.875em;
	color: var(--lkr-accent);
	font-weight: 600;
}
@media (max-width: 768px) {
	.lkr-brand-notes { grid-template-columns: 1fr; }
}

/* ── Numbered selection rules (Ako si zvoliť — 2-col grid) ──── */
.lkr-rules {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--lkr-space-3);
	margin: var(--lkr-space-3) 0 var(--lkr-space-4);
	max-width: none;
}
.lkr-rule {
	display: grid;
	grid-template-columns: 36px 1fr;
	gap: var(--lkr-space-3);
	padding: var(--lkr-space-3) var(--lkr-space-4);
	border: var(--lkr-border-thin) solid var(--lkr-line);
	border-radius: var(--lkr-radius-sm);
	background: var(--lkr-bg);
}
.lkr-rule__num {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	background: var(--lkr-accent-soft);
	color: var(--lkr-accent);
	font-family: var(--lkr-font-display);
	font-size: 1.125rem;
	font-weight: 700;
	border-radius: 50%;
	flex-shrink: 0;
	line-height: 1;
}
.lkr-rule__title {
	font-weight: 700;
	color: var(--lkr-ink);
	font-size: 0.9375rem;
	margin: 0 0 4px;
	line-height: 1.3;
}
.lkr-rule__body {
	font-size: 0.875rem;
	color: var(--lkr-ink-soft);
	line-height: 1.5;
	margin: 0;
	max-width: none;
}
@media (max-width: 768px) {
	.lkr-rules { grid-template-columns: 1fr; }
}

/* ── FAQ panel wrapper (subtle background to group Q&A) ─────── */
.lkr-faq-wrap {
	background: var(--lkr-bg-alt);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-2) var(--lkr-space-5);
	margin: var(--lkr-space-3) 0 var(--lkr-space-5);
	max-width: none;
}
body.lkr-page .lkr-faq-wrap .lkr-faq {
	border-top-color: rgba(0,0,0,0.08);
}
body.lkr-page .lkr-faq-wrap .lkr-faq:first-of-type {
	border-top: none;
}
body.lkr-page .lkr-faq-wrap .lkr-faq:last-child {
	border-bottom: none;
}

/* ════════════════════════════════════════════════════════════════
   v0.9.4 — "Lokrin Almanac" art direction
   ----------------------------------------------------------------
   Treats free-spiny-dnes (and similar money pages) as a financial
   almanac, not a casino landing page. Distinctive: Fraunces variable
   serif at extreme optical sizes, midnight palette, single warm gold
   reserved for #1 rank, tabular monospace numerics, paper grain.
   Fixes two reported contrast bugs along the way:
     1. H1 in hero unreadable over featured image
     2. Stat banner text inheriting var(--lkr-ink) from hub__body-inner
   ════════════════════════════════════════════════════════════════ */

/* Page atmosphere noise overlay removed in v0.9.5 — was causing
   rendering issues in some browsers (page-wide fixed pseudo with
   mix-blend-mode interacted badly with screenshot/repaint timing). */

/* ── HERO — almanac masthead ──────────────────────────────────────
   Drop reliance on the featured image for legibility. Force a
   solid midnight panel with a slow radial light from upper-right,
   then put a much heavier Fraunces H1 on top. The image survives
   as a faint atmospheric layer behind the overlay (mix-blend luminosity).
   ─────────────────────────────────────────────────────────────── */
.lkr-hub__hero--with-image {
	min-height: 440px;
	background: var(--lkr-midnight);
	border-bottom: none;
}
.lkr-hub__hero--with-image .lkr-hub__hero-bg::after {
	background:
		radial-gradient(ellipse 80% 60% at 85% 15%, rgba(31,58,95,0.55) 0%, rgba(11,20,38,0) 60%),
		radial-gradient(ellipse 60% 50% at 10% 90%, rgba(212,168,71,0.10) 0%, rgba(11,20,38,0) 55%),
		linear-gradient(180deg, rgba(11,20,38,0.94) 0%, rgba(11,20,38,0.97) 60%, rgba(11,20,38,1) 100%);
}
.lkr-hub__hero--with-image .lkr-hub__hero-img {
	opacity: 0.42;
	filter: saturate(0.55) contrast(1.1);
	mix-blend-mode: luminosity;
}

/* Decorative double-rule at the bottom of the hero — almanac chrome */
.lkr-hub__hero--with-image::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background: linear-gradient(90deg,
		rgba(212,168,71,0) 0%,
		rgba(212,168,71,0.6) 18%,
		rgba(212,168,71,0.6) 82%,
		rgba(212,168,71,0) 100%);
	z-index: 3;
}

/* Hero inner — wider rhythm, more padding top for the masthead pill */
.lkr-hub__hero--with-image .lkr-hub__hero-inner {
	padding: var(--lkr-space-5) var(--lkr-space-5) var(--lkr-space-6);
	display: flex;
	flex-direction: column;
	gap: var(--lkr-space-3);
}

/* Masthead pill — generated via data attribute on .lkr-hub__hero element,
   so each page can set its own text or omit. Falls back to empty if unset. */
.lkr-hub__hero--with-image[data-masthead] .lkr-hub__h1::before {
	content: attr(data-masthead);
	display: block;
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	font-weight: 500;
	letter-spacing: 0.18em;
	color: var(--lkr-gold);
	margin-bottom: var(--lkr-space-3);
	padding-bottom: var(--lkr-space-2);
	border-bottom: 1px solid rgba(212,168,71,0.28);
	width: max-content;
	max-width: 100%;
}

/* The H1 itself — Fraunces, ultra-large, ultra-distinctive
   Uses body.lkr-page prefix + !important so it beats the base
   body.lkr-page h1 rule (which has 3 !important flags). */
body.lkr-page .lkr-hub__hero--with-image .lkr-hub__h1 {
	font-family: var(--lkr-font-almanac) !important;
	font-size: clamp(2.25rem, 5.6vw, 4.25rem) !important;
	font-weight: 800 !important;
	font-variation-settings: "opsz" 96, "SOFT" 30, "wght" 800 !important;
	font-feature-settings: "ss01" 1, "ss02" 1;
	line-height: 1.04 !important;
	letter-spacing: -0.022em !important;
	color: #FFFFFF !important;
	text-shadow: none;
	max-width: 22ch;
	margin: 0;
}

/* Lede — italic Fraunces, softer */
.lkr-hub__hero--with-image .lkr-hub__lede {
	font-family: var(--lkr-font-almanac);
	font-style: italic;
	font-variation-settings: "opsz" 24, "SOFT" 50;
	font-size: clamp(1.0625rem, 1.5vw, 1.25rem);
	font-weight: 380;
	color: rgba(255,255,255,0.78);
	line-height: 1.5;
	max-width: 56ch;
	margin: 0;
	text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}

/* EEAT row in hero — quieter, separated by a thin divider above */
.lkr-hub__hero--with-image .lkr-eeat-bar {
	margin-top: var(--lkr-space-4);
	padding-top: var(--lkr-space-3);
	border-top: 1px solid rgba(255,255,255,0.12);
	font-size: 0.8125rem;
}
.lkr-hub__hero--with-image .lkr-eeat-person__role {
	font-family: var(--lkr-font-mono);
	font-size: 0.625rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.55) !important;
}
.lkr-hub__hero--with-image .lkr-eeat-person__name {
	font-family: var(--lkr-font-almanac);
	font-weight: 540;
	font-variation-settings: "opsz" 18;
	letter-spacing: -0.005em;
}
.lkr-hub__hero--with-image .lkr-eeat-date {
	font-family: var(--lkr-font-mono);
	font-size: 0.75rem;
	letter-spacing: 0.04em;
	color: rgba(255,255,255,0.65);
}

/* Hub body padding — slightly tighter top so almanac counter sits closer */
.lkr-hub__body-inner {
	padding-top: var(--lkr-space-5);
}

/* ── ALMANAC COUNTER — replaces the gradient stat banner ──────────
   This is the page's signature moment. Massive Fraunces tabular
   number, masthead row, three monospace metric cells below.
   Higher specificity (.lkr-hub__body-inner prefix) wins against the
   .lkr-hub__body-inner p color rule — fixes the reported contrast bug.
   ─────────────────────────────────────────────────────────────── */
.lkr-hub__body-inner .lkr-stat-banner {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	background:
		radial-gradient(ellipse 70% 80% at 100% 0%, rgba(212,168,71,0.10) 0%, rgba(11,20,38,0) 55%),
		linear-gradient(180deg, var(--lkr-midnight) 0%, var(--lkr-midnight-2) 100%);
	color: #fff;
	padding: 0;
	margin: 0 0 var(--lkr-space-6);
	border-radius: var(--lkr-radius-md);
	overflow: hidden;
	position: relative;
	max-width: none;
	border: 1px solid rgba(212,168,71,0.18);
}
.lkr-hub__body-inner .lkr-stat-banner::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	opacity: 0.06;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
	mix-blend-mode: overlay;
}

.lkr-stat-banner__masthead {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: var(--lkr-space-3) var(--lkr-space-5);
	border-bottom: 1px solid rgba(255,255,255,0.08);
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}
.lkr-stat-banner__live {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--lkr-live);
}
.lkr-stat-banner__pulse {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--lkr-live);
	box-shadow: 0 0 0 0 rgba(76,175,130,0.7);
	animation: lkr-pulse 2.2s infinite;
}
@keyframes lkr-pulse {
	0%   { box-shadow: 0 0 0 0 rgba(76,175,130,0.55); }
	70%  { box-shadow: 0 0 0 8px rgba(76,175,130,0); }
	100% { box-shadow: 0 0 0 0 rgba(76,175,130,0); }
}
.lkr-stat-banner__date {
	color: rgba(255,255,255,0.55);
}

.lkr-stat-banner__main {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: end;
	gap: var(--lkr-space-4) var(--lkr-space-5);
	padding: var(--lkr-space-5) var(--lkr-space-5) var(--lkr-space-4);
	position: relative;
	z-index: 1;
}
.lkr-hub__body-inner .lkr-stat-banner__num {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 144, "SOFT" 0, "wght" 880;
	font-size: clamp(5rem, 11vw, 9.5rem);
	font-feature-settings: "tnum" 1, "lnum" 1;
	line-height: 0.82;
	letter-spacing: -0.045em;
	color: #fff;
	margin: 0;
	display: block;
	white-space: nowrap;
}
.lkr-hub__body-inner .lkr-stat-banner__num sup {
	font-size: 0.42em;
	vertical-align: 0.55em;
	color: var(--lkr-gold);
	font-variation-settings: "opsz" 72, "wght" 700;
	margin-left: 0.04em;
}
.lkr-hub__body-inner .lkr-stat-banner__caption {
	font-family: var(--lkr-font-almanac);
	font-style: italic;
	font-variation-settings: "opsz" 24, "SOFT" 70;
	font-size: clamp(1rem, 1.5vw, 1.25rem);
	font-weight: 400;
	color: rgba(255,255,255,0.82);
	line-height: 1.25;
	margin: 0 0 var(--lkr-space-2);
	max-width: 28ch;
}

.lkr-stat-banner__metrics {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
	margin: 0;
	border-top: 1px solid rgba(255,255,255,0.08);
	position: relative;
	z-index: 1;
}
.lkr-stat-banner__metrics > div {
	padding: var(--lkr-space-3) var(--lkr-space-5);
	border-right: 1px solid rgba(255,255,255,0.08);
}
.lkr-stat-banner__metrics > div:last-child { border-right: none; }
.lkr-stat-banner__metrics dt {
	font-family: var(--lkr-font-mono);
	font-size: 0.625rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.55);
	margin: 0 0 6px;
}
.lkr-stat-banner__metrics dd {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 24, "wght" 620;
	font-size: 1.0625rem;
	color: #fff;
	margin: 0;
	line-height: 1.2;
}
.lkr-stat-banner__metrics dd span {
	font-family: var(--lkr-font-mono);
	font-size: 0.875em;
	color: var(--lkr-gold);
	margin-left: 4px;
	font-weight: 500;
}

@media (max-width: 720px) {
	.lkr-stat-banner__main {
		grid-template-columns: 1fr;
		align-items: start;
	}
	.lkr-stat-banner__metrics {
		grid-template-columns: 1fr;
	}
	.lkr-stat-banner__metrics > div {
		border-right: none;
		border-bottom: 1px solid rgba(255,255,255,0.08);
	}
	.lkr-stat-banner__metrics > div:last-child { border-bottom: none; }
}

/* Defensive fallback — if the new banner markup isn't applied yet,
   the OLD .lkr-stat-banner__label structure still needs white text.
   Higher specificity beats .lkr-hub__body-inner p (0,1,1) cleanly. */
.lkr-hub__body-inner .lkr-stat-banner__label,
.lkr-hub__body-inner .lkr-stat-banner__label strong {
	color: #fff;
}

/* ── Section chapter markers — replaces flat thick blue border ─────
   Above each section-divider h2, a small mono stamp "ZÁZNAM · 02 / 08".
   Thin double-rule underneath. Almanac chrome.
   ─────────────────────────────────────────────────────────────── */
.lkr-hub__body-inner .lkr-section-divider {
	border-bottom: none;
	padding-bottom: 0;
	margin: var(--lkr-space-7) 0 var(--lkr-space-4);
	position: relative;
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: end;
	gap: var(--lkr-space-3);
}
.lkr-hub__body-inner .lkr-section-divider::before {
	content: attr(data-chapter);
	display: block;
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--lkr-accent);
	margin-bottom: var(--lkr-space-2);
	grid-column: 1 / -1;
}
.lkr-hub__body-inner .lkr-section-divider::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -8px;
	height: 3px;
	background:
		linear-gradient(180deg, var(--lkr-ink) 0 1px, transparent 1px 2px, var(--lkr-ink) 2px 3px);
}
body.lkr-page .lkr-hub__body-inner .lkr-section-divider h2 {
	font-family: var(--lkr-font-almanac) !important;
	font-size: clamp(1.625rem, 3vw, 2.25rem) !important;
	font-weight: 720 !important;
	font-variation-settings: "opsz" 48, "wght" 720 !important;
	letter-spacing: -0.018em !important;
	line-height: 1.1 !important;
	color: var(--lkr-ink) !important;
	margin: 0 !important;
	max-width: 24ch;
}
.lkr-hub__body-inner .lkr-section-divider__link {
	font-family: var(--lkr-font-mono);
	font-size: 0.75rem;
	letter-spacing: 0.06em;
	color: var(--lkr-accent);
	text-decoration: none;
	border-bottom: 1px solid var(--lkr-accent);
	padding-bottom: 2px;
	transition: color 0.15s, border-color 0.15s;
	white-space: nowrap;
}
.lkr-hub__body-inner .lkr-section-divider__link:hover {
	color: var(--lkr-gold);
	border-bottom-color: var(--lkr-gold);
}

/* Plain h2 (no section-divider wrapper) — also gets Fraunces treatment */
body.lkr-page .lkr-hub__body-inner > h2.wp-block-heading {
	font-family: var(--lkr-font-almanac) !important;
	font-weight: 720 !important;
	font-variation-settings: "opsz" 48, "wght" 720 !important;
	font-size: clamp(1.625rem, 3vw, 2.25rem) !important;
	letter-spacing: -0.018em !important;
	line-height: 1.1 !important;
	color: var(--lkr-ink) !important;
	margin-top: var(--lkr-space-7);
	padding-top: var(--lkr-space-4);
	border-top: 3px double rgba(31,58,95,0.18);
	max-width: 32ch;
}

/* H3 — refined Fraunces */
body.lkr-page .lkr-hub__body-inner h3 {
	font-family: var(--lkr-font-almanac) !important;
	font-weight: 600 !important;
	font-variation-settings: "opsz" 24, "wght" 600 !important;
	letter-spacing: -0.008em !important;
}

/* ── PROMO CARD — #1 ranked gets the gold treatment ──────────────
   Exactly one card on the page wears gold. Sets expectations: this
   is the editor's pick, not just another offer. Wirecutter logic.
   ─────────────────────────────────────────────────────────────── */
.lkr-promo-card--rank .lkr-promo-card__rank {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 36, "wght" 700;
	font-size: 1.5rem;
	line-height: 1;
}
.lkr-promo-card--rank:has(.lkr-promo-card__rank:first-child:where([aria-hidden="true"])) {
	/* nothing — fallback for browsers without :has */
}
/* #1 gold variant — applied by adding .lkr-promo-card--gold to the card */
.lkr-promo-card--gold {
	border-color: var(--lkr-gold) !important;
	background:
		linear-gradient(to right, rgba(212,168,71,0.07) 0%, var(--lkr-bg) 30%);
	box-shadow: 0 1px 0 rgba(212,168,71,0.4), 0 14px 32px -18px rgba(11,20,38,0.25);
}
.lkr-promo-card--gold .lkr-promo-card__rank {
	background: var(--lkr-gold);
	color: var(--lkr-midnight);
	box-shadow: inset 0 -2px 0 rgba(0,0,0,0.15);
}
.lkr-promo-card--gold .lkr-promo-card__brand {
	color: var(--lkr-ink);
}
.lkr-promo-card--gold::before {
	content: "VOĽBA REDAKCIE";
	position: absolute;
	top: -10px;
	left: var(--lkr-space-4);
	background: var(--lkr-gold);
	color: var(--lkr-midnight);
	font-family: var(--lkr-font-mono);
	font-size: 0.625rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	padding: 4px 10px;
	border-radius: 2px;
	z-index: 2;
}
.lkr-promo-card--gold {
	position: relative;
	margin-top: var(--lkr-space-4);
}

/* All featured ranked cards — heavier brand name (Fraunces) */
.lkr-promo-card--rank .lkr-promo-card__brand {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 24, "wght" 640;
	font-size: 1.25rem;
	letter-spacing: -0.008em;
}
.lkr-promo-card--rank .lkr-promo-card__offer {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 36, "wght" 580;
	font-size: 1.5rem;
	letter-spacing: -0.012em;
	line-height: 1.2;
}

/* Bonus offer in non-rank cards — also use Fraunces but smaller */
.lkr-promo-card__offer {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 30, "wght" 580;
	letter-spacing: -0.008em;
}
.lkr-promo-card__brand {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 18, "wght" 620;
}

/* Promo CTA — subtle inset shadow for depth, refined hover */
.lkr-promo-card__cta {
	font-family: var(--lkr-font-body);
	letter-spacing: 0.01em;
	box-shadow:
		inset 0 -1px 0 rgba(0,0,0,0.18),
		inset 0 1px 0 rgba(255,255,255,0.10),
		0 1px 0 rgba(11,20,38,0.06);
	transition: background 0.18s, transform 0.18s, box-shadow 0.18s;
}
.lkr-promo-card__cta:hover {
	transform: translateY(-1px);
	box-shadow:
		inset 0 -1px 0 rgba(0,0,0,0.22),
		inset 0 1px 0 rgba(255,255,255,0.12),
		0 4px 14px -4px rgba(11,20,38,0.35);
}
.lkr-promo-card--gold .lkr-promo-card__cta {
	background: var(--lkr-midnight);
	color: #fff;
}
.lkr-promo-card--gold .lkr-promo-card__cta:hover {
	background: var(--lkr-accent);
}

/* ── 7STARS group card — refined header typography ──────────────── */
.lkr-promo-group__title {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 30, "wght" 680;
	letter-spacing: -0.012em;
}
.lkr-promo-group__offer {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 36, "wght" 600;
	letter-spacing: -0.01em;
}
.lkr-promo-group__offer strong {
	color: var(--lkr-accent);
	font-variation-settings: "opsz" 36, "wght" 760;
}
.lkr-promo-group__brand-name {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 18, "wght" 620;
}

/* ── Math card — financial-report look ───────────────────────────── */
.lkr-math-card {
	background: var(--lkr-bone);
	border: 1px solid rgba(31,58,95,0.10);
	border-left: 3px solid var(--lkr-accent);
}
.lkr-math-card__title {
	font-family: var(--lkr-font-almanac) !important;
	font-variation-settings: "opsz" 24, "wght" 640;
	letter-spacing: -0.01em;
}
.lkr-math-card__rows dd {
	font-family: var(--lkr-font-mono);
	font-feature-settings: "tnum" 1, "lnum" 1;
}
.lkr-math-card__rows dt {
	font-family: var(--lkr-font-mono);
	font-size: 0.8125rem;
	letter-spacing: 0.01em;
}

/* ── Tip box — refined italic */
.lkr-tip-box__label {
	font-family: var(--lkr-font-mono);
	font-size: 0.625rem;
}
.lkr-tip-box p {
	font-family: var(--lkr-font-almanac);
	font-style: italic;
	font-variation-settings: "opsz" 24, "SOFT" 60;
	font-size: 1.0625rem;
	line-height: 1.55;
}

/* ── TOC — quieter, more refined chip styling ─────────────────────── */
.lkr-toc {
	border-top-color: rgba(31,58,95,0.18);
	border-bottom-color: rgba(31,58,95,0.18);
	gap: 6px;
}
.lkr-toc__label {
	font-family: var(--lkr-font-mono);
	color: var(--lkr-accent);
}
.lkr-toc__link {
	font-family: var(--lkr-font-mono);
	font-size: 0.75rem;
	letter-spacing: 0.02em;
	background: transparent;
	border: 1px solid rgba(31,58,95,0.20);
	color: var(--lkr-ink-soft);
	padding: 5px 12px;
}
.lkr-toc__link:hover {
	background: var(--lkr-midnight);
	color: var(--lkr-gold);
	border-color: var(--lkr-midnight);
}

/* ── Brand-notes — refined heading */
.lkr-brand-note__brand {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 24, "wght" 660;
	letter-spacing: -0.01em;
}
.lkr-brand-note__action {
	font-family: var(--lkr-font-mono);
}

/* ── Rules cards — refined number + title */
.lkr-rule__num {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 30, "wght" 700;
	font-size: 1.125rem;
}
.lkr-rule__title {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 18, "wght" 640;
	letter-spacing: -0.005em;
}

/* ── FAQ wrap — bone-warm panel ──────────────────────────────────── */
.lkr-faq-wrap {
	background: var(--lkr-bone);
	border: 1px solid rgba(31,58,95,0.10);
}
body.lkr-page .lkr-faq-wrap .lkr-faq summary {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 18, "wght" 620;
	font-size: 1.0625rem;
	letter-spacing: -0.005em;
}

/* ── Affiliate pill — slightly warmer */
.lkr-affiliate-pill {
	background: rgba(236,230,214,0.55);
	border-color: rgba(31,58,95,0.12);
}

/* ── Breadcrumb on hub — match the gold rule above */
.lkr-review__bcrumb-bar {
	background: var(--lkr-bg);
}

/* ── Mobile rhythm: tighten section-divider gap, ensure marker shows */
@media (max-width: 720px) {
	.lkr-hub__body-inner .lkr-section-divider {
		grid-template-columns: 1fr;
	}
	.lkr-hub__body-inner .lkr-section-divider__link {
		justify-self: start;
	}
	.lkr-hub__hero--with-image .lkr-hub__hero-inner {
		padding-top: var(--lkr-space-4);
		padding-bottom: var(--lkr-space-5);
	}
}

/* ════════════════════════════════════════════════════════════════
   v0.9.7 — Mobile compression + breadcrumb + menu fixes
   ----------------------------------------------------------------
   • Mobile hero: compress so the stat banner is visible above the
     fold on commercial pages. H1 small, less padding, EEAT compact.
   • Mobile breadcrumb: kill the visible cut between bar and dark
     hero by matching backgrounds and tightening.
   • Mobile nav: undo the `display: flex !important` from earlier
     base CSS (line ~706) so the menu actually hides when the toggle
     reports aria-expanded="false".
   ════════════════════════════════════════════════════════════════ */

/* Mobile breadcrumb — extend hero background up so there's no white
   strip cutting the hero off; show only the last crumb to save lines. */
@media (max-width: 720px) {
	.lkr-hub__hero--with-image + .lkr-hub__body .lkr-review__bcrumb-bar,
	.lkr-review__bcrumb-bar {
		background: var(--lkr-midnight);
	}
	.lkr-review__bcrumb-bar .lkr-breadcrumb {
		font-size: 0.75rem;
		color: rgba(255,255,255,0.55);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		display: block;
	}
	.lkr-review__bcrumb-bar .lkr-breadcrumb a {
		color: rgba(255,255,255,0.70);
	}
	.lkr-review__bcrumb-bar .lkr-breadcrumb [aria-current="page"] {
		color: rgba(255,255,255,0.92);
	}
	.lkr-review__bcrumb-bar .lkr-breadcrumb > * {
		display: inline;
	}
	/* hide every crumb segment except the last two on mobile to save vertical space */
	.lkr-review__bcrumb-bar .lkr-breadcrumb a:first-of-type,
	.lkr-review__bcrumb-bar .lkr-breadcrumb a:first-of-type + [aria-hidden] {
		display: none;
	}
	.lkr-review__bcrumb-bar .lkr-breadcrumb a:nth-of-type(2),
	.lkr-review__bcrumb-bar .lkr-breadcrumb a:nth-of-type(2) + [aria-hidden] {
		display: none;
	}
	.lkr-review__bcrumb-bar .lkr-breadcrumb [aria-hidden]:last-of-type {
		display: none;
	}
}

/* Mobile hero: compress padding, shrink H1, tighter line-height */
@media (max-width: 720px) {
	.lkr-hub__hero--with-image {
		min-height: 0;
	}
	.lkr-hub__hero--with-image .lkr-hub__hero-inner {
		padding: var(--lkr-space-3) var(--lkr-space-4) var(--lkr-space-4);
		gap: var(--lkr-space-2);
	}
	body.lkr-page .lkr-hub__hero--with-image .lkr-hub__h1 {
		font-size: clamp(1.5rem, 7.5vw, 2.125rem) !important;
		line-height: 1.08 !important;
		max-width: 18ch;
	}
	.lkr-hub__hero--with-image .lkr-hub__h1::before {
		font-size: 0.625rem;
		letter-spacing: 0.16em;
		margin-bottom: var(--lkr-space-2);
		padding-bottom: 6px;
	}
	/* EEAT in hero: more compact on mobile */
	.lkr-hub__hero--with-image .lkr-eeat-bar {
		margin-top: var(--lkr-space-3);
		padding-top: var(--lkr-space-2);
		flex-wrap: wrap;
		gap: var(--lkr-space-2);
	}
	.lkr-hub__hero--with-image .lkr-eeat-person {
		gap: 6px;
	}
	.lkr-hub__hero--with-image .lkr-eeat-avatar {
		width: 28px !important;
		height: 28px !important;
	}
	.lkr-hub__hero--with-image .lkr-eeat-person__role {
		font-size: 0.5625rem !important;
	}
	.lkr-hub__hero--with-image .lkr-eeat-person__name {
		font-size: 0.75rem;
	}
	.lkr-hub__hero--with-image .lkr-eeat-date {
		font-size: 0.6875rem;
	}
	/* Hide one of the date separators if it crowds */
	.lkr-hub__hero--with-image .lkr-eeat-sep {
		display: none;
	}

	/* Stat banner mobile: shrink the giant number so the whole banner fits */
	.lkr-hub__body-inner .lkr-stat-banner__num {
		font-size: clamp(3.5rem, 18vw, 5rem) !important;
	}
	.lkr-stat-banner__masthead,
	.lkr-stat-banner__main,
	.lkr-stat-banner__metrics > div {
		padding-left: var(--lkr-space-3) !important;
		padding-right: var(--lkr-space-3) !important;
	}
	.lkr-stat-banner__caption {
		font-size: 0.9375rem;
	}
	.lkr-stat-banner__metrics dt {
		font-size: 0.5625rem;
		letter-spacing: 0.12em;
	}
	.lkr-stat-banner__metrics dd {
		font-size: 0.9375rem;
	}

	/* Tighten body inner padding-top on mobile too */
	.lkr-hub__body-inner {
		padding-top: var(--lkr-space-4);
		padding-left: var(--lkr-space-3);
		padding-right: var(--lkr-space-3);
	}
}

/* Mobile navigation: undo the unconditional `display: flex !important`
   from base CSS (line ~706). The JS in inc/lkr-header.php toggles the
   .lkr-primary-nav--open class on the nav itself — so we hide by default
   and show only when that class is present. */
@media (max-width: 768px) {
	body.lkr-page .lkr-primary-nav {
		display: none !important;
	}
	body.lkr-page .lkr-primary-nav.lkr-primary-nav--open {
		display: block !important;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		background: var(--lkr-bg);
		border-top: var(--lkr-border-thin) solid var(--lkr-line);
		padding: var(--lkr-space-3) var(--lkr-space-4);
		z-index: 10;
	}
	body.lkr-page .lkr-primary-nav.lkr-primary-nav--open .lkr-nav-list {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: var(--lkr-space-2) !important;
	}
}

/* ════════════════════════════════════════════════════════════════
   v0.9.10 — Section icons + filigree separators
   ----------------------------------------------------------------
   Gold-on-midnight 40px circle icon next to each section divider,
   plus reusable filigree ornament for major content breaks.
   ════════════════════════════════════════════════════════════════ */

/* Section icon — gold linear icon in midnight circle */
.lkr-section-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	flex-shrink: 0;
	background: var(--lkr-midnight);
	color: var(--lkr-gold);
	border-radius: 50%;
	border: 1px solid rgba(212,168,71,0.35);
}
.lkr-section-icon svg {
	width: 22px;
	height: 22px;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

/* Inline variant — smaller, sits beside h2 title text (used in author.php) */
.lkr-section-icon--inline {
	width: 32px;
	height: 32px;
	margin-right: 12px;
	vertical-align: middle;
}
.lkr-section-icon--inline svg {
	width: 18px;
	height: 18px;
}
body.lkr-page .lkr-author__body-inner .lkr-author__section-title {
	display: flex;
	align-items: center;
}

/* Extend section-divider grid to accommodate icon on the left */
.lkr-hub__body-inner .lkr-section-divider:has(.lkr-section-icon) {
	display: grid;
	grid-template-columns: 40px 1fr auto;
	grid-template-rows: auto auto;
	grid-template-areas:
		"icon marker marker"
		"icon title link";
	column-gap: var(--lkr-space-3);
	row-gap: 4px;
	align-items: end;
}
.lkr-hub__body-inner .lkr-section-divider:has(.lkr-section-icon) .lkr-section-icon {
	grid-area: icon;
	align-self: center;
	margin-top: var(--lkr-space-2);
}
.lkr-hub__body-inner .lkr-section-divider:has(.lkr-section-icon)::before {
	grid-area: marker;
	margin-bottom: 0;
	align-self: end;
}
.lkr-hub__body-inner .lkr-section-divider:has(.lkr-section-icon) h2 {
	grid-area: title;
}
.lkr-hub__body-inner .lkr-section-divider:has(.lkr-section-icon) .lkr-section-divider__link {
	grid-area: link;
	align-self: end;
}

/* Filigree separator — reusable gold ornament between sections */
.lkr-filigree {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--lkr-space-3);
	margin: var(--lkr-space-6) 0;
	color: var(--lkr-gold);
	opacity: 0.6;
}
.lkr-filigree::before,
.lkr-filigree::after {
	content: "";
	flex: 1;
	max-width: 200px;
	height: 1px;
	background: linear-gradient(90deg,
		transparent 0%,
		rgba(212,168,71,0.5) 20%,
		rgba(212,168,71,0.5) 80%,
		transparent 100%);
}
.lkr-filigree__mark {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 24, "wght" 600;
	font-size: 1.25rem;
	letter-spacing: 0.4em;
	color: var(--lkr-gold);
	line-height: 1;
}

/* Stat banner backdrop image support — desktop only for mobile performance */
.lkr-stat-banner--with-backdrop {
	position: relative;
	overflow: hidden;
}
.lkr-stat-banner--with-backdrop .lkr-stat-banner__backdrop {
	display: none; /* hidden by default, shown on tablet+ */
	position: absolute;
	inset: 0;
	z-index: 0;
	background-size: cover;
	background-position: center;
	opacity: 0.18;
	mix-blend-mode: luminosity;
	pointer-events: none;
	content-visibility: auto;
	contain-intrinsic-size: 100% 400px;
}
@media (min-width: 721px) {
	.lkr-stat-banner--with-backdrop .lkr-stat-banner__backdrop {
		display: block;
	}
}
.lkr-stat-banner--with-backdrop > * { position: relative; z-index: 1; }

/* Mobile rhythm for section icons */
@media (max-width: 720px) {
	.lkr-hub__body-inner .lkr-section-divider:has(.lkr-section-icon) {
		grid-template-columns: 32px 1fr;
		grid-template-rows: auto auto auto;
		grid-template-areas:
			"icon marker"
			"title title"
			"link link";
		column-gap: var(--lkr-space-2);
	}
	.lkr-section-icon {
		width: 32px;
		height: 32px;
	}
	.lkr-section-icon svg {
		width: 18px;
		height: 18px;
	}
}

/* ════════════════════════════════════════════════════════════════
   v0.9.9 — Author page (lkr-author__*)
   ----------------------------------------------------------------
   High-authority bio pages styled like casino.org/writers/[name]/
   but in the Lokrin Almanac visual language.
   ════════════════════════════════════════════════════════════════ */

.lkr-author-wrap { background: var(--lkr-bg); }

/* Hero: photo left, name + role right */
.lkr-author__hero {
	background: var(--lkr-midnight);
	border-bottom: none;
	min-height: auto;
	position: relative;
}
.lkr-author__hero::after {
	content: "";
	position: absolute;
	left: 0; right: 0; bottom: 0;
	height: 1px;
	background: linear-gradient(90deg,
		rgba(212,168,71,0) 0%,
		rgba(212,168,71,0.55) 18%,
		rgba(212,168,71,0.55) 82%,
		rgba(212,168,71,0) 100%);
	z-index: 3;
}
.lkr-author__hero-inner {
	display: grid;
	grid-template-columns: 200px 1fr;
	gap: var(--lkr-space-5);
	align-items: center;
	padding: var(--lkr-space-5) var(--lkr-space-5) var(--lkr-space-5);
}
.lkr-author__hero-photo img {
	width: 200px;
	height: 200px;
	border-radius: 50%;
	object-fit: cover;
	border: 3px solid rgba(212,168,71,0.5);
	box-shadow: 0 8px 24px rgba(0,0,0,0.35);
}
.lkr-author__hero-text { color: #fff; }
.lkr-author__eyebrow {
	display: inline-block;
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.18em;
	color: var(--lkr-gold);
	margin-bottom: var(--lkr-space-3);
	padding-bottom: var(--lkr-space-2);
	border-bottom: 1px solid rgba(212,168,71,0.35);
}
body.lkr-page .lkr-author__hero .lkr-author__h1 {
	font-family: var(--lkr-font-almanac) !important;
	font-size: clamp(2rem, 4.5vw, 3.25rem) !important;
	font-weight: 760 !important;
	font-variation-settings: "opsz" 72, "wght" 760 !important;
	letter-spacing: -0.02em !important;
	color: #fff !important;
	line-height: 1.08 !important;
	margin: 0 0 var(--lkr-space-3) !important;
	max-width: 22ch;
}
.lkr-author__role {
	font-family: var(--lkr-font-almanac);
	font-style: italic;
	font-variation-settings: "opsz" 24, "SOFT" 60;
	font-size: 1.25rem;
	color: rgba(255,255,255,0.92);
	margin: 0 0 var(--lkr-space-2);
}
.lkr-author__tagline {
	font-size: 0.9375rem;
	color: rgba(255,255,255,0.72);
	margin: 0 0 var(--lkr-space-3);
	max-width: 60ch;
}
.lkr-author__contact {
	display: flex;
	gap: var(--lkr-space-3);
	margin-top: var(--lkr-space-3);
	padding-top: var(--lkr-space-3);
	border-top: 1px solid rgba(255,255,255,0.12);
}
.lkr-author__contact-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--lkr-font-mono);
	font-size: 0.8125rem;
	color: rgba(255,255,255,0.85);
	text-decoration: none;
	border: 1px solid rgba(255,255,255,0.2);
	border-radius: var(--lkr-radius-sm);
	padding: 6px 12px;
	transition: background 0.15s, border-color 0.15s;
}
.lkr-author__contact-link:hover {
	background: rgba(212,168,71,0.15);
	border-color: var(--lkr-gold);
	color: #fff;
}
.lkr-author__contact-icon {
	font-family: var(--lkr-font-almanac);
	font-size: 1rem;
	color: var(--lkr-gold);
	font-weight: 700;
}

/* Body inner — extend hub-body for author */
.lkr-author__body-inner {
	max-width: 920px;
}

/* Bio paragraph */
.lkr-author__bio {
	margin: 0 0 var(--lkr-space-6);
	padding: var(--lkr-space-5);
	background: var(--lkr-bone);
	border-left: 3px solid var(--lkr-accent);
	border-radius: 0 var(--lkr-radius-md) var(--lkr-radius-md) 0;
}
.lkr-author__bio-text {
	font-family: var(--lkr-font-almanac);
	font-style: italic;
	font-variation-settings: "opsz" 30, "SOFT" 50;
	font-size: clamp(1.0625rem, 1.5vw, 1.25rem);
	line-height: 1.55;
	color: var(--lkr-ink);
	margin: 0;
	max-width: none;
}

/* Section pattern */
.lkr-author__section { margin: 0 0 var(--lkr-space-6); }
body.lkr-page .lkr-author__body-inner .lkr-author__section-title {
	font-family: var(--lkr-font-almanac) !important;
	font-size: clamp(1.375rem, 2.4vw, 1.75rem) !important;
	font-weight: 720 !important;
	font-variation-settings: "opsz" 36, "wght" 720 !important;
	letter-spacing: -0.012em !important;
	color: var(--lkr-ink) !important;
	margin: 0 0 var(--lkr-space-4) !important;
	padding-bottom: var(--lkr-space-2);
	border-bottom: 2px solid var(--lkr-accent);
	max-width: none;
}

/* Expertise badges — 2x2 grid of cards */
.lkr-author__badges {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--lkr-space-3);
}
.lkr-author__badge {
	padding: var(--lkr-space-4);
	border: 1px solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	background: var(--lkr-bg);
	position: relative;
	overflow: hidden;
}
.lkr-author__badge::before {
	content: "";
	position: absolute;
	left: 0; top: 0;
	width: 3px; height: 100%;
	background: var(--lkr-accent);
}
.lkr-author__badge-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px; height: 40px;
	background: var(--lkr-accent-soft);
	color: var(--lkr-accent);
	border-radius: 50%;
	font-family: var(--lkr-font-almanac);
	font-size: 1.125rem;
	font-weight: 700;
	margin-bottom: var(--lkr-space-2);
}
.lkr-author__badge-title {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 24, "wght" 640;
	font-size: 1.0625rem;
	color: var(--lkr-ink);
	margin: 0 0 4px;
}
.lkr-author__badge-body {
	font-size: 0.875rem;
	color: var(--lkr-ink-soft);
	line-height: 1.5;
	margin: 0;
}

/* Metrics — 3-column grid of large numbers */
.lkr-author__metrics {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
	border: 1px solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	background: var(--lkr-midnight);
	overflow: hidden;
	margin: 0;
}
.lkr-author__metric {
	padding: var(--lkr-space-4) var(--lkr-space-3);
	border-right: 1px solid rgba(255,255,255,0.08);
	text-align: center;
}
.lkr-author__metric:last-child { border-right: none; }
.lkr-author__metric-num {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 72, "wght" 800;
	font-size: clamp(2rem, 4vw, 2.75rem);
	line-height: 1;
	color: #fff;
	margin: 0 0 6px;
	letter-spacing: -0.02em;
}
.lkr-author__metric-label {
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.65);
	margin: 0;
}

/* Timeline — vertical with year column + body */
.lkr-author__timeline {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	counter-reset: none;
}
.lkr-author__timeline-item {
	display: grid;
	grid-template-columns: 110px 1fr;
	gap: var(--lkr-space-4);
	padding: var(--lkr-space-3) 0;
	border-bottom: 1px solid var(--lkr-line);
	margin: 0 !important;
}
.lkr-author__timeline-item:last-child { border-bottom: none; }
.lkr-author__timeline-item::before { content: none !important; }
.lkr-author__timeline-year {
	font-family: var(--lkr-font-mono);
	font-size: 0.875rem;
	color: var(--lkr-accent);
	font-weight: 600;
	letter-spacing: 0.02em;
}
.lkr-author__timeline-role {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 24, "wght" 640;
	font-size: 1.0625rem;
	color: var(--lkr-ink);
	margin: 0 0 2px;
}
.lkr-author__timeline-company {
	font-size: 0.9375rem;
	color: var(--lkr-ink-soft);
	margin: 0;
}
.lkr-author__timeline-note {
	font-size: 0.8125rem;
	color: var(--lkr-ink-muted);
	margin: 4px 0 0;
}

/* Methodology */
.lkr-author__methodology {
	padding: var(--lkr-space-4) var(--lkr-space-5);
	background: var(--lkr-accent-soft);
	border-radius: var(--lkr-radius-md);
	border-left: 3px solid var(--lkr-accent);
}
.lkr-author__methodology p {
	font-size: 0.9375rem;
	line-height: 1.65;
	color: var(--lkr-ink);
	margin: 0 0 var(--lkr-space-2);
	max-width: none;
}
.lkr-author__methodology p:last-child { margin: 0; }
.lkr-author__methodology-link {
	margin: var(--lkr-space-3) 0 0;
	font-family: var(--lkr-font-mono);
	font-size: 0.875rem;
}
.lkr-author__methodology-link a {
	color: var(--lkr-accent);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Reviews grid */
.lkr-author__reviews {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--lkr-space-3);
}
.lkr-author__review {
	display: block;
	padding: var(--lkr-space-3);
	border: 1px solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	background: var(--lkr-bg);
	text-decoration: none;
	transition: border-color 0.15s, transform 0.15s;
}
.lkr-author__review:hover {
	border-color: var(--lkr-accent);
	transform: translateY(-2px);
}
.lkr-author__review-img img {
	width: 100%;
	height: 80px;
	object-fit: cover;
	border-radius: var(--lkr-radius-sm);
	margin-bottom: var(--lkr-space-2);
}
.lkr-author__review-title {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 18, "wght" 600;
	font-size: 0.9375rem;
	color: var(--lkr-ink);
	margin: 0 0 4px;
	line-height: 1.3;
}
.lkr-author__review-date {
	font-family: var(--lkr-font-mono);
	font-size: 0.75rem;
	color: var(--lkr-ink-muted);
}

/* Team cards */
.lkr-author__team {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--lkr-space-3);
}
.lkr-author__team-card {
	display: flex;
	align-items: center;
	gap: var(--lkr-space-3);
	padding: var(--lkr-space-3);
	border: 1px solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	background: var(--lkr-bg);
	text-decoration: none;
	transition: border-color 0.15s;
}
.lkr-author__team-card:hover { border-color: var(--lkr-accent); }
.lkr-author__team-card img {
	width: 64px; height: 64px;
	border-radius: 50%;
	object-fit: cover;
	flex-shrink: 0;
}
.lkr-author__team-name {
	font-family: var(--lkr-font-almanac);
	font-variation-settings: "opsz" 18, "wght" 640;
	font-size: 1rem;
	color: var(--lkr-ink);
	margin: 0;
}
.lkr-author__team-role {
	font-size: 0.8125rem;
	color: var(--lkr-ink-muted);
	margin: 2px 0 0;
}

/* Contact block at end */
.lkr-author__contact-block { text-align: center; padding: var(--lkr-space-5) 0; }
.lkr-author__cta-email {
	display: inline-block;
	font-family: var(--lkr-font-mono);
	font-size: 1rem;
	padding: 12px 24px;
	background: var(--lkr-midnight);
	color: #fff;
	text-decoration: none;
	border-radius: var(--lkr-radius-sm);
	margin-top: var(--lkr-space-3);
	transition: background 0.15s;
}
.lkr-author__cta-email:hover {
	background: var(--lkr-accent);
	color: #fff;
}

/* Prose for plain text sections (education, specialization) */
body.lkr-page .lkr-author__body-inner .lkr-author__prose {
	font-size: 1rem;
	line-height: 1.65;
	color: var(--lkr-ink);
	max-width: none;
	margin: 0;
}

/* Mobile rhythm */
@media (max-width: 720px) {
	.lkr-author__hero-inner {
		grid-template-columns: 1fr;
		text-align: center;
		gap: var(--lkr-space-3);
		padding: var(--lkr-space-3) var(--lkr-space-4) var(--lkr-space-4);
	}
	.lkr-author__hero-photo img { width: 140px; height: 140px; }
	.lkr-author__contact { justify-content: center; }
	.lkr-author__badges { grid-template-columns: 1fr; }
	.lkr-author__metrics { grid-template-columns: 1fr; }
	.lkr-author__metric {
		border-right: none;
		border-bottom: 1px solid rgba(255,255,255,0.08);
	}
	.lkr-author__metric:last-child { border-bottom: none; }
	.lkr-author__timeline-item { grid-template-columns: 1fr; gap: 4px; }
	.lkr-author__reviews { grid-template-columns: 1fr; }
	.lkr-author__team { grid-template-columns: 1fr; }
}

/* ── Inline editorial figures (mid-article images) ─────────── */
body.lkr-pillar .lkr-hub__body-inner .wp-block-image.is-style-lkr-inline-figure {
	margin: var(--lkr-space-6) 0;
	max-width: none;
}
body.lkr-pillar .lkr-hub__body-inner .is-style-lkr-inline-figure img {
	width: 100%;
	height: auto;
	border-radius: var(--lkr-radius-md);
	display: block;
}
body.lkr-pillar .lkr-hub__body-inner .is-style-lkr-inline-figure figcaption {
	font-family: var(--lkr-font-almanac, var(--lkr-font-display));
	font-style: italic;
	font-size: 0.95rem;
	color: var(--lkr-ink-soft);
	text-align: center;
	margin-top: var(--lkr-space-2);
	padding: 0 var(--lkr-space-3);
	line-height: 1.4;
}
@media (max-width: 720px) {
	body.lkr-pillar .lkr-hub__body-inner .wp-block-image.is-style-lkr-inline-figure {
		margin: var(--lkr-space-4) 0;
	}
}

/* ============================================================
   Homepage visual components (v0.9.14)
   ============================================================ */

/* ── Home hero with image ─────────────────────────────────── */
.lkr-home-hero {
	position: relative;
	display: grid;
	grid-template-columns: 1fr;
	min-height: 540px;
	border-radius: var(--lkr-radius-md);
	overflow: hidden;
	background: var(--lkr-midnight, #0B1426);
	margin-bottom: var(--lkr-space-6);
}
.lkr-home-hero__media {
	position: absolute;
	inset: 0;
	z-index: 0;
}
.lkr-home-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.lkr-home-hero__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(11,20,38,0.40) 0%, rgba(11,20,38,0.85) 70%, rgba(11,20,38,0.95) 100%);
}
.lkr-home-hero__copy {
	position: relative;
	z-index: 1;
	padding: var(--lkr-space-6) var(--lkr-space-5) var(--lkr-space-5);
	color: #fff;
	max-width: 720px;
	align-self: end;
	margin-top: auto;
}
.lkr-home-hero__eyebrow {
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.18em;
	color: var(--lkr-gold, #D4A847);
	margin: 0 0 var(--lkr-space-3);
	text-transform: uppercase;
}
.lkr-home-hero__chip {
	display: inline-block;
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	background: rgba(255,255,255,0.10);
	border: 1px solid rgba(255,255,255,0.18);
	color: rgba(255,255,255,0.92);
	padding: 6px 12px;
	border-radius: 999px;
	margin: 0 0 var(--lkr-space-3);
}
.lkr-home-hero__h1 {
	font-family: var(--lkr-font-display);
	font-size: clamp(2.2rem, 4.5vw, 3.6rem);
	font-weight: 500;
	line-height: 1.05;
	letter-spacing: -0.02em;
	margin: 0 0 var(--lkr-space-3);
	color: #fff;
	max-width: 22ch;
}
.lkr-home-hero__h1 a {
	color: inherit;
	text-decoration: none;
}
.lkr-home-hero__h1 a:hover {
	text-decoration: underline;
	text-decoration-color: var(--lkr-gold, #D4A847);
	text-underline-offset: 6px;
	text-decoration-thickness: 2px;
}
.lkr-home-hero__lede {
	font-size: 1.1rem;
	line-height: 1.5;
	color: rgba(255,255,255,0.92);
	max-width: 60ch;
	margin: 0 0 var(--lkr-space-3);
}
.lkr-home-hero__meta {
	font-family: var(--lkr-font-mono);
	font-size: 0.75rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.6);
	margin: 0 0 var(--lkr-space-3);
}
.lkr-home-hero__cta {
	display: inline-block;
	background: var(--lkr-gold, #D4A847);
	color: var(--lkr-midnight, #0B1426);
	font-weight: 600;
	font-size: 0.95rem;
	padding: 12px 24px;
	border-radius: 6px;
	text-decoration: none;
	transition: background 0.2s;
}
.lkr-home-hero__cta:hover {
	background: #C29A3D;
}
@media (max-width: 720px) {
	.lkr-home-hero { min-height: 480px; }
	.lkr-home-hero__copy { padding: var(--lkr-space-4) var(--lkr-space-3); }
}

/* ── Home featured cards grid ─────────────────────────────── */
.lkr-home-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--lkr-space-4);
}
.lkr-home-card {
	display: flex;
	flex-direction: column;
	border: 1px solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	background: var(--lkr-bg);
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	transition: border-color 0.2s, transform 0.2s;
}
.lkr-home-card:hover {
	border-color: var(--lkr-line-strong);
	transform: translateY(-2px);
}
.lkr-home-card__media {
	aspect-ratio: 16 / 10;
	overflow: hidden;
}
.lkr-home-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.lkr-home-card__body {
	padding: var(--lkr-space-4) var(--lkr-space-3);
	display: flex;
	flex-direction: column;
	gap: var(--lkr-space-2);
	flex: 1;
}
.lkr-home-card__chip {
	display: inline-block;
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--lkr-accent);
	width: max-content;
}
.lkr-home-card__h3 {
	font-family: var(--lkr-font-display);
	font-size: 1.25rem;
	line-height: 1.25;
	letter-spacing: -0.01em;
	margin: 0;
	color: var(--lkr-ink);
}
.lkr-home-card__excerpt {
	font-size: 0.95rem;
	color: var(--lkr-ink-soft);
	line-height: 1.5;
	margin: 0;
}
.lkr-home-card__meta {
	font-family: var(--lkr-font-mono);
	font-size: 0.7rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--lkr-ink-soft);
	margin-top: auto;
	padding-top: var(--lkr-space-2);
}
@media (max-width: 920px) {
	.lkr-home-cards { grid-template-columns: 1fr; }
}

/* ── Home topic chips with icons ──────────────────────────── */
.lkr-home-topics {
	display: flex;
	flex-wrap: wrap;
	gap: var(--lkr-space-3);
}
.lkr-home-topic {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 20px 12px 14px;
	background: var(--lkr-bg);
	border: 1px solid var(--lkr-line);
	border-radius: 999px;
	text-decoration: none;
	color: var(--lkr-ink);
	font-weight: 500;
	transition: border-color 0.2s, background 0.2s;
}
.lkr-home-topic:hover {
	border-color: var(--lkr-accent);
	background: var(--lkr-bg-alt);
}
.lkr-home-topic__icon {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--lkr-bg-alt);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--lkr-accent);
	flex-shrink: 0;
}
.lkr-home-topic__icon svg { width: 20px; height: 20px; }
.lkr-home-topic__label {
	font-size: 0.95rem;
}

/* ── Home approach (image + copy) ─────────────────────────── */
.lkr-home-approach {
	display: grid;
	grid-template-columns: 1fr 1.4fr;
	gap: var(--lkr-space-6);
	align-items: center;
}
.lkr-home-approach__media {
	border-radius: var(--lkr-radius-md);
	overflow: hidden;
	aspect-ratio: 4 / 3;
}
.lkr-home-approach__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.lkr-home-approach__copy h2 {
	font-family: var(--lkr-font-display);
	font-size: clamp(1.6rem, 3vw, 2.4rem);
	margin: var(--lkr-space-2) 0 var(--lkr-space-3);
	color: var(--lkr-ink);
	letter-spacing: -0.02em;
	line-height: 1.15;
}
.lkr-home-principles {
	list-style: none;
	padding: 0;
	margin: var(--lkr-space-3) 0 0;
}
.lkr-home-principles li {
	padding: 10px 0 10px 24px;
	border-bottom: 1px solid var(--lkr-line);
	position: relative;
	font-size: 0.95rem;
	color: var(--lkr-ink-soft);
}
.lkr-home-principles li::before {
	content: "→";
	position: absolute;
	left: 0;
	top: 10px;
	color: var(--lkr-accent);
	font-weight: 600;
}
.lkr-home-principles li strong { color: var(--lkr-ink); }
@media (max-width: 900px) {
	.lkr-home-approach { grid-template-columns: 1fr; }
}

/* ── Home team ────────────────────────────────────────────── */
.lkr-home-team {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: var(--lkr-space-4);
}
.lkr-home-author,
.lkr-home-rules {
	background: var(--lkr-bg);
	border: 1px solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-4) var(--lkr-space-3);
}
.lkr-home-author {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: var(--lkr-space-3);
	align-items: start;
}
.lkr-home-author__avatar {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--lkr-accent), var(--lkr-accent-hover));
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 600;
	font-size: 1rem;
	letter-spacing: 0.05em;
	flex-shrink: 0;
}
.lkr-home-author__body h3 {
	font-family: var(--lkr-font-display);
	font-size: 1.15rem;
	margin: 0 0 4px;
	color: var(--lkr-ink);
}
.lkr-home-author__role {
	font-family: var(--lkr-font-mono);
	font-size: 0.7rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--lkr-accent);
	margin: 0 0 var(--lkr-space-2);
}
.lkr-home-author__body p {
	font-size: 0.9rem;
	color: var(--lkr-ink-soft);
	line-height: 1.5;
	margin: 0 0 var(--lkr-space-2);
}
.lkr-home-author__meta {
	font-family: var(--lkr-font-mono);
	font-size: 0.7rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--lkr-ink-soft);
}
.lkr-home-rules h3 {
	font-family: var(--lkr-font-display);
	font-size: 1.15rem;
	margin: 0 0 var(--lkr-space-3);
	color: var(--lkr-ink);
}
.lkr-home-rules ul {
	list-style: none;
	padding: 0;
	margin: 0 0 var(--lkr-space-3);
}
.lkr-home-rules ul li {
	padding: 8px 0 8px 18px;
	border-bottom: 1px solid var(--lkr-line);
	font-size: 0.875rem;
	position: relative;
	color: var(--lkr-ink-soft);
}
.lkr-home-rules ul li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 8px;
	color: var(--lkr-accent);
	font-weight: 600;
}
.lkr-home-rules__link {
	font-size: 0.875rem;
	color: var(--lkr-accent);
	text-decoration: underline;
	text-underline-offset: 2px;
}
@media (max-width: 900px) {
	.lkr-home-team { grid-template-columns: 1fr; }
}

/* ── Home hero text overrides (force white over dark hero) ─── */
body.lkr-page .lkr-home-hero__h1,
body.lkr-page .lkr-home-hero__h1 a {
	color: #fff !important;
	font-family: var(--lkr-font-display) !important;
	font-weight: 500 !important;
}
body.lkr-page .lkr-home-hero__h1 a:hover {
	text-decoration: underline;
	text-decoration-color: var(--lkr-gold, #D4A847);
	text-underline-offset: 6px;
	text-decoration-thickness: 2px;
}
body.lkr-page .lkr-home-approach__copy h2 {
	color: var(--lkr-ink) !important;
}
body.lkr-page .lkr-home-card__h3 {
	color: var(--lkr-ink) !important;
}
body.lkr-page .lkr-home-author__body h3,
body.lkr-page .lkr-home-rules h3 {
	color: var(--lkr-ink) !important;
}

/* ============================================================
   Homepage v2 — long-form blog layout (v0.9.16)
   News strip, feature row, howto grid, security split
   ============================================================ */

/* ── Section header (eyebrow + h2 + right link) ─────────── */
.lkr-home-section-header {
	display: flex;
	justify-content: space-between;
	align-items: end;
	flex-wrap: wrap;
	gap: var(--lkr-space-3);
	margin-bottom: var(--lkr-space-4);
	padding-bottom: var(--lkr-space-3);
	border-bottom: 1px solid var(--lkr-line);
}
.lkr-home-section-header h2 {
	font-family: var(--lkr-font-display);
	font-size: clamp(1.5rem, 3vw, 2.2rem);
	margin: 0;
	color: var(--lkr-ink);
	letter-spacing: -0.015em;
	line-height: 1.15;
}
.lkr-home-section-header__link {
	font-size: 0.875rem;
	color: var(--lkr-accent);
	font-weight: 500;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ── News strip (4 cards horizontal) ─────────────────────── */
.lkr-home-news {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--lkr-space-3);
}
.lkr-home-news__item {
	background: var(--lkr-bg);
	border: 1px solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-3);
	text-decoration: none;
	color: inherit;
	display: flex;
	flex-direction: column;
	gap: var(--lkr-space-2);
	transition: border-color 0.2s, transform 0.2s;
}
.lkr-home-news__item:hover {
	border-color: var(--lkr-line-strong);
	transform: translateY(-2px);
}
.lkr-home-news__chip {
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--lkr-accent);
	width: max-content;
}
.lkr-home-news__item h3 {
	font-family: var(--lkr-font-display);
	font-size: 1.05rem;
	margin: 0;
	line-height: 1.3;
	color: var(--lkr-ink);
}
.lkr-home-news__meta {
	font-family: var(--lkr-font-mono);
	font-size: 0.7rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--lkr-ink-soft);
	margin: 0;
}
@media (max-width: 1100px) {
	.lkr-home-news { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
	.lkr-home-news { grid-template-columns: 1fr; }
}

/* ── Feature (image + copy 50/50, big card) ──────────────── */
.lkr-home-feature {
	display: grid;
	grid-template-columns: 1.1fr 1fr;
	gap: var(--lkr-space-5);
	align-items: center;
}
.lkr-home-feature__media {
	border-radius: var(--lkr-radius-md);
	overflow: hidden;
	aspect-ratio: 16 / 10;
	background: linear-gradient(135deg, var(--lkr-midnight, #0B1426), #1a2a4a);
}
.lkr-home-feature__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.lkr-home-feature__chip {
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--lkr-accent);
	margin-bottom: var(--lkr-space-2);
	display: inline-block;
}
.lkr-home-feature__copy h3 {
	font-family: var(--lkr-font-display);
	font-size: clamp(1.4rem, 2.6vw, 2rem);
	line-height: 1.2;
	margin: 0 0 var(--lkr-space-3);
}
.lkr-home-feature__copy h3 a { color: inherit; text-decoration: none; }
.lkr-home-feature__copy h3 a:hover { text-decoration: underline; text-decoration-color: var(--lkr-accent); text-underline-offset: 4px; }
.lkr-home-feature__copy p {
	color: var(--lkr-ink-soft);
	margin: 0 0 var(--lkr-space-3);
}
.lkr-home-feature__highlights {
	list-style: none;
	padding: 0;
	margin: 0 0 var(--lkr-space-3);
}
.lkr-home-feature__highlights li {
	padding: 8px 0 8px 18px;
	border-bottom: 1px solid var(--lkr-line);
	position: relative;
	font-size: 0.95rem;
	color: var(--lkr-ink-soft);
}
.lkr-home-feature__highlights li::before {
	content: "→";
	position: absolute;
	left: 0;
	color: var(--lkr-accent);
	font-weight: 600;
}
.lkr-home-feature__highlights li strong { color: var(--lkr-ink); }
.lkr-home-feature__cta {
	display: inline-block;
	font-size: 0.95rem;
	color: var(--lkr-accent);
	font-weight: 500;
	text-decoration: underline;
	text-underline-offset: 3px;
}
@media (max-width: 920px) {
	.lkr-home-feature { grid-template-columns: 1fr; }
}

/* ── How-to grid (icon + text) ───────────────────────────── */
.lkr-home-howto-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--lkr-space-3);
}
.lkr-home-howto {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: var(--lkr-space-3);
	background: var(--lkr-bg);
	border: 1px solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-3);
	text-decoration: none;
	color: inherit;
	align-items: start;
	transition: border-color 0.2s, transform 0.2s;
}
.lkr-home-howto:hover {
	border-color: var(--lkr-line-strong);
	transform: translateY(-2px);
}
.lkr-home-howto__icon {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--lkr-bg-alt);
	color: var(--lkr-accent);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.lkr-home-howto__icon svg { width: 22px; height: 22px; }
.lkr-home-howto h4 {
	font-family: var(--lkr-font-display);
	font-size: 1.05rem;
	margin: 0 0 6px;
	color: var(--lkr-ink);
}
.lkr-home-howto p {
	margin: 0;
	font-size: 0.875rem;
	color: var(--lkr-ink-soft);
	line-height: 1.45;
}
@media (max-width: 720px) {
	.lkr-home-howto-grid { grid-template-columns: 1fr; }
}

/* ── Security split (main article + sidebar pripravujeme) ─ */
.lkr-home-security {
	display: grid;
	grid-template-columns: 1.6fr 1fr;
	gap: var(--lkr-space-5);
	align-items: start;
}
.lkr-home-security__main {
	background: var(--lkr-bg);
	border: 1px solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-4);
}
.lkr-home-security__main a {
	text-decoration: none;
	color: inherit;
	display: block;
}
.lkr-home-security__chip {
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--lkr-accent);
	display: inline-block;
	margin-bottom: var(--lkr-space-2);
}
.lkr-home-security__main h3 {
	font-family: var(--lkr-font-display);
	font-size: 1.4rem;
	line-height: 1.25;
	margin: 0 0 var(--lkr-space-2);
}
.lkr-home-security__main p {
	color: var(--lkr-ink-soft);
	margin: 0 0 var(--lkr-space-2);
}
.lkr-home-security__meta {
	font-family: var(--lkr-font-mono);
	font-size: 0.7rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--lkr-ink-soft);
}
.lkr-home-security__list {
	background: var(--lkr-bg);
	border: 1px solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-3);
}
.lkr-home-security__list h4 {
	font-family: var(--lkr-font-display);
	font-size: 1rem;
	margin: 0 0 var(--lkr-space-2);
	color: var(--lkr-ink);
}
.lkr-home-security__list ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.lkr-home-security__list li {
	padding: 8px 0;
	border-bottom: 1px solid var(--lkr-line);
	font-size: 0.875rem;
	color: var(--lkr-ink-soft);
}
.lkr-home-security__list li:last-child { border-bottom: none; }
@media (max-width: 920px) {
	.lkr-home-security { grid-template-columns: 1fr; }
}

/* ── Card with gradient placeholder for missing image ────── */
.lkr-home-card__media--gradient {
	aspect-ratio: 16 / 10;
}

/* Author box link (Všetky články autora →) */
.lkr-author-box__link {
	display: inline-block;
	margin-top: var(--lkr-space-2);
	font-size: var(--lkr-text-sm);
	color: var(--lkr-accent);
	text-decoration: underline;
	text-underline-offset: 3px;
}
.lkr-author-box__link:hover { color: var(--lkr-accent-hover); }

/* Author box avatar — improved styling */
body.lkr-page .lkr-author-box__avatar {
	width: 96px !important;
	height: 96px !important;
	border-radius: 50%;
	object-fit: cover;
	flex-shrink: 0;
	border: 3px solid var(--lkr-bg);
	box-shadow: 0 2px 8px rgba(11,20,38,0.08);
}

/* Article header — eyebrow + h1 + byline meta. Generous breathing
   between title and byline, between byline and hero image. Soft hairline
   divider (no hard border) to avoid the rushed feel. */
body.lkr-single .lkr-article__header {
	padding: var(--lkr-space-7) var(--lkr-space-3) var(--lkr-space-6);
	border-bottom: 0;
}
body.lkr-single .lkr-article__title {
	max-width: 28ch;
	margin: 0 0 var(--lkr-space-5);
}
body.lkr-single .lkr-article__meta {
	font-family: var(--lkr-font-mono);
	font-size: 0.75rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--lkr-ink-muted);
	margin-top: var(--lkr-space-2);
	padding-top: var(--lkr-space-4);
	border-top: 1px solid rgba(11,20,38,0.08);
	row-gap: 0.5rem;
}
body.lkr-single .lkr-article__author { color: var(--lkr-ink); font-weight: 500; }
body.lkr-single .lkr-article__featured-img {
	max-width: 1080px;
	padding: var(--lkr-space-5) var(--lkr-space-3) var(--lkr-space-5);
}

/* ════════════════════════════════════════════════════════════════════
   SINGLE-POST EDITORIAL SYSTEM
   Posts (single.php) render in .lkr-article__body, not .lkr-hub__body-inner.
   This block (a) widens & paces the column for editorial reading,
   (b) enables the rich Lokrin components (stat-banner, section-divider,
   FAQ, promo-card, brand-notes, TOC, affiliate-pill) inside posts —
   they had been gated to hub pages only and rendered broken.
   ════════════════════════════════════════════════════════════════════ */

/* ── 1. Body column: wider, paced reading rhythm ─────────────────── */
body.lkr-single .lkr-article__body {
	max-width: 820px;
	padding: var(--lkr-space-7) var(--lkr-space-4) var(--lkr-space-7);
	font-size: 1.0625rem;
	line-height: 1.78;
	color: var(--lkr-ink);
}
body.lkr-single .lkr-article__foot { max-width: 820px; }

/* Generous heading rhythm — H2 gets a real reset, H3 follows naturally */
body.lkr-single .lkr-article__body h2 {
	font-family: var(--lkr-font-display);
	font-variation-settings: "opsz" 120, "SOFT" 0, "wght" 620;
	font-size: clamp(1.625rem, 2.6vw, 2rem);
	line-height: 1.18;
	letter-spacing: -0.012em;
	color: var(--lkr-ink);
	margin: var(--lkr-space-7) 0 var(--lkr-space-3);
}
body.lkr-single .lkr-article__body h3 {
	font-family: var(--lkr-font-display);
	font-variation-settings: "opsz" 96, "wght" 580;
	font-size: 1.3125rem;
	line-height: 1.28;
	color: var(--lkr-ink);
	margin: var(--lkr-space-5) 0 var(--lkr-space-2);
}
body.lkr-single .lkr-article__body p {
	margin: 0 0 var(--lkr-space-4);
}
body.lkr-single .lkr-article__body ul,
body.lkr-single .lkr-article__body ol {
	margin: 0 0 var(--lkr-space-4);
	padding-left: var(--lkr-space-4);
}
body.lkr-single .lkr-article__body li { margin-bottom: 0.55rem; }
body.lkr-single .lkr-article__body li:last-child { margin-bottom: 0; }
body.lkr-single .lkr-article__body strong { color: var(--lkr-ink); }
body.lkr-single .lkr-article__body a {
	color: var(--lkr-ink);
	border-bottom: 1px solid var(--lkr-gold);
	text-decoration: none;
	padding-bottom: 1px;
}
body.lkr-single .lkr-article__body a:hover { color: var(--lkr-gold); }

/* Lede — first paragraph after intro setup */
body.lkr-single .lkr-article__body > p:first-of-type,
body.lkr-single .lkr-article__body .lkr-lede {
	font-family: var(--lkr-font-display);
	font-variation-settings: "opsz" 36, "SOFT" 30, "wght" 380;
	font-size: clamp(1.125rem, 1.7vw, 1.3125rem);
	line-height: 1.55;
	color: var(--lkr-ink);
	margin: 0 0 var(--lkr-space-5);
	max-width: 64ch;
}

/* Eyebrow utility inside body */
body.lkr-single .lkr-article__body .is-style-lkr-eyebrow {
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--lkr-ink-muted);
	margin: 0 0 var(--lkr-space-2);
}

/* Table base — clean editorial */
body.lkr-single .lkr-article__body figure.wp-block-table {
	margin: var(--lkr-space-5) 0;
	overflow-x: auto;
}
body.lkr-single .lkr-article__body figure.wp-block-table table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9375rem;
}
body.lkr-single .lkr-article__body figure.wp-block-table th {
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--lkr-ink-muted);
	font-weight: 600;
	text-align: left;
	padding: 0.75rem 0.875rem;
	border-bottom: 1px solid var(--lkr-line);
	background: var(--lkr-bg-soft);
}
body.lkr-single .lkr-article__body figure.wp-block-table td {
	padding: 0.875rem;
	border-bottom: 1px solid var(--lkr-line);
	vertical-align: top;
}

/* ── 2. Rich components — enable in single posts ────────────────── */

/* Stat banner — fixes the broken navy box reported on /najlepsie-bezdrotove-sluchadla-2026/ */
body.lkr-single .lkr-article__body .lkr-stat-banner {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	background:
		radial-gradient(ellipse 70% 80% at 100% 0%, rgba(212,168,71,0.10) 0%, rgba(11,20,38,0) 55%),
		linear-gradient(180deg, var(--lkr-midnight) 0%, var(--lkr-midnight-2, #112141) 100%);
	color: #fff;
	padding: 0;
	margin: var(--lkr-space-5) 0;
	border-radius: var(--lkr-radius-md);
	overflow: hidden;
	position: relative;
	border: 1px solid rgba(212,168,71,0.18);
	max-width: none;
	align-items: stretch;
}
body.lkr-single .lkr-article__body .lkr-stat-banner__masthead {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: var(--lkr-space-3) var(--lkr-space-5);
	border-bottom: 1px solid rgba(255,255,255,0.08);
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}
body.lkr-single .lkr-article__body .lkr-stat-banner__live {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--lkr-live, #4caf82);
}
body.lkr-single .lkr-article__body .lkr-stat-banner__pulse {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--lkr-live, #4caf82);
	animation: lkr-pulse 2.2s infinite;
}
body.lkr-single .lkr-article__body .lkr-stat-banner__date { color: rgba(255,255,255,0.55); }
body.lkr-single .lkr-article__body .lkr-stat-banner__main {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: end;
	gap: var(--lkr-space-3) var(--lkr-space-5);
	padding: var(--lkr-space-5) var(--lkr-space-5) var(--lkr-space-4);
}
body.lkr-single .lkr-article__body .lkr-stat-banner__num {
	font-family: var(--lkr-font-display);
	font-variation-settings: "opsz" 144, "wght" 880;
	font-size: clamp(4.5rem, 9vw, 8rem);
	line-height: 0.82;
	letter-spacing: -0.045em;
	color: #fff;
	margin: 0;
	white-space: nowrap;
}
body.lkr-single .lkr-article__body .lkr-stat-banner__caption {
	font-family: var(--lkr-font-display);
	font-style: italic;
	font-variation-settings: "opsz" 24, "SOFT" 70;
	font-size: clamp(0.9375rem, 1.4vw, 1.125rem);
	line-height: 1.4;
	color: rgba(255,255,255,0.82);
	margin: 0;
	max-width: 36ch;
}
body.lkr-single .lkr-article__body .lkr-stat-banner__metrics {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
	margin: 0;
	border-top: 1px solid rgba(255,255,255,0.08);
}
body.lkr-single .lkr-article__body .lkr-stat-banner__metrics > div {
	padding: var(--lkr-space-3) var(--lkr-space-5);
	border-right: 1px solid rgba(255,255,255,0.08);
	min-width: 0;
}
body.lkr-single .lkr-article__body .lkr-stat-banner__metrics > div:last-child { border-right: none; }
body.lkr-single .lkr-article__body .lkr-stat-banner__metrics dt {
	font-family: var(--lkr-font-mono);
	font-size: 0.625rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.55);
	margin: 0 0 6px;
}
body.lkr-single .lkr-article__body .lkr-stat-banner__metrics dd {
	font-family: var(--lkr-font-display);
	font-variation-settings: "opsz" 24, "wght" 620;
	font-size: 1rem;
	color: #fff;
	margin: 0;
	line-height: 1.3;
}
body.lkr-single .lkr-article__body .lkr-stat-banner__metrics dd span {
	font-family: var(--lkr-font-mono);
	font-size: 0.875em;
	color: var(--lkr-gold);
	margin-left: 4px;
	font-weight: 500;
	white-space: nowrap;
}
@media (max-width: 720px) {
	body.lkr-single .lkr-article__body .lkr-stat-banner__main {
		grid-template-columns: 1fr;
		align-items: start;
	}
	body.lkr-single .lkr-article__body .lkr-stat-banner__metrics {
		grid-template-columns: 1fr;
	}
	body.lkr-single .lkr-article__body .lkr-stat-banner__metrics > div {
		border-right: none;
		border-bottom: 1px solid rgba(255,255,255,0.08);
	}
	body.lkr-single .lkr-article__body .lkr-stat-banner__metrics > div:last-child { border-bottom: none; }
}

/* Section divider — chapter marker between major sections */
body.lkr-single .lkr-article__body .lkr-section-divider {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: end;
	gap: var(--lkr-space-3);
	margin: var(--lkr-space-7) 0 var(--lkr-space-3);
	padding: 0;
	border-bottom: none;
	position: relative;
}
body.lkr-single .lkr-article__body .lkr-section-divider::before {
	content: "";
	grid-column: 1 / -1;
	grid-row: 2;
	height: 1px;
	background: var(--lkr-line);
	margin-top: var(--lkr-space-2);
}
body.lkr-single .lkr-article__body .lkr-section-divider::after {
	content: attr(data-chapter);
	font-family: var(--lkr-font-mono);
	font-size: 0.625rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--lkr-ink-muted);
	grid-column: 2;
	grid-row: 1;
	align-self: end;
	padding-bottom: 0.4rem;
}
body.lkr-single .lkr-article__body .lkr-section-divider h2 {
	margin: 0;
	grid-column: 1;
	grid-row: 1;
}

/* TL;DR / Card group — generous breathing card */
body.lkr-single .lkr-article__body .is-style-lkr-card {
	background: var(--lkr-bg-soft);
	border: 1px solid var(--lkr-line);
	border-left: 3px solid var(--lkr-gold);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-5);
	margin: var(--lkr-space-5) 0;
}
body.lkr-single .lkr-article__body .is-style-lkr-card h3 {
	margin-top: 0;
	font-family: var(--lkr-font-mono);
	font-size: 0.75rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--lkr-ink-muted);
	font-weight: 600;
}
body.lkr-single .lkr-article__body .is-style-lkr-card > *:last-child { margin-bottom: 0; }

/* Promo card — profile-style block with eyebrow + headline + body */
body.lkr-single .lkr-article__body .is-style-lkr-promo-card {
	background: #fff;
	border: 1px solid var(--lkr-line);
	border-top: 3px solid var(--lkr-midnight);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-5);
	margin: var(--lkr-space-4) 0;
	box-shadow: 0 1px 0 rgba(11,20,38,0.04);
}
body.lkr-single .lkr-article__body .is-style-lkr-promo-card .is-style-lkr-eyebrow {
	margin-bottom: var(--lkr-space-2);
	color: var(--lkr-gold);
}
body.lkr-single .lkr-article__body .is-style-lkr-promo-card h3 {
	margin: 0 0 var(--lkr-space-2);
	font-size: 1.25rem;
}
body.lkr-single .lkr-article__body .is-style-lkr-promo-card > *:last-child { margin-bottom: 0; }

/* FAQ — accordion-feel group */
body.lkr-single .lkr-article__body .is-style-lkr-faq {
	margin: var(--lkr-space-4) 0 var(--lkr-space-6);
	border-top: 1px solid var(--lkr-line);
}
body.lkr-single .lkr-article__body .is-style-lkr-faq h3 {
	margin: 0;
	padding: var(--lkr-space-3) 0 var(--lkr-space-2);
	font-family: var(--lkr-font-display);
	font-variation-settings: "opsz" 60, "wght" 600;
	font-size: 1.0625rem;
	color: var(--lkr-ink);
}
body.lkr-single .lkr-article__body .is-style-lkr-faq h3::before {
	content: "Q. ";
	color: var(--lkr-gold);
	font-family: var(--lkr-font-mono);
	font-size: 0.75em;
	letter-spacing: 0.08em;
	vertical-align: 0.1em;
	margin-right: 0.4em;
}
body.lkr-single .lkr-article__body .is-style-lkr-faq p {
	margin: 0 0 var(--lkr-space-3);
	padding-bottom: var(--lkr-space-3);
	border-bottom: 1px solid var(--lkr-line);
	color: var(--lkr-ink-soft);
}
body.lkr-single .lkr-article__body .is-style-lkr-faq > *:last-child { border-bottom: none; }

/* Affiliate pill — informational notice */
body.lkr-single .lkr-article__body .lkr-affiliate-pill {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: var(--lkr-space-3);
	align-items: start;
	background: var(--lkr-bg-soft);
	border: 1px solid var(--lkr-line);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-3) var(--lkr-space-4);
	margin: var(--lkr-space-4) 0 var(--lkr-space-5);
	font-size: 0.875rem;
	color: var(--lkr-ink-soft);
}
body.lkr-single .lkr-article__body .lkr-affiliate-pill__icon {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--lkr-midnight);
	color: var(--lkr-gold);
	font-family: var(--lkr-font-display);
	font-style: italic;
	font-size: 0.75rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	margin-top: 2px;
}
body.lkr-single .lkr-article__body .lkr-affiliate-pill p { margin: 0; }

/* TOC — sticky-feel section nav */
body.lkr-single .lkr-article__body .lkr-toc {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 0.625rem;
	align-items: center;
	padding: var(--lkr-space-3) 0 var(--lkr-space-4);
	margin: 0 0 var(--lkr-space-5);
	border-bottom: 1px solid var(--lkr-line);
}
body.lkr-single .lkr-article__body .lkr-toc__label {
	font-family: var(--lkr-font-mono);
	font-size: 0.625rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--lkr-ink-muted);
	margin-right: 0.5rem;
}
body.lkr-single .lkr-article__body .lkr-toc__link {
	display: inline-block;
	padding: 0.4rem 0.75rem;
	border: 1px solid var(--lkr-line);
	border-radius: 999px;
	font-size: 0.8125rem;
	font-family: var(--lkr-font-mono);
	color: var(--lkr-ink);
	text-decoration: none;
}
body.lkr-single .lkr-article__body .lkr-toc__link:hover {
	border-color: var(--lkr-gold);
	color: var(--lkr-gold);
}

/* Brand-notes grid — review cards (used in slúchadlá, antivírus etc.) */
body.lkr-single .lkr-article__body .lkr-brand-notes {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--lkr-space-3);
	margin: var(--lkr-space-4) 0 var(--lkr-space-5);
}
body.lkr-single .lkr-article__body .lkr-brand-note {
	background: #fff;
	border: 1px solid var(--lkr-line);
	border-left: 3px solid var(--lkr-gold);
	border-radius: var(--lkr-radius-sm, 6px);
	padding: var(--lkr-space-4);
	min-width: 0;
}
body.lkr-single .lkr-article__body .lkr-brand-note__brand {
	font-family: var(--lkr-font-display);
	font-variation-settings: "opsz" 60, "wght" 600;
	font-size: 1.0625rem;
	margin: 0 0 0.35rem;
	color: var(--lkr-ink);
}
body.lkr-single .lkr-article__body .lkr-brand-note__action {
	display: inline-block;
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--lkr-ink-muted);
	margin-bottom: var(--lkr-space-2);
}
body.lkr-single .lkr-article__body .lkr-brand-note p:last-child {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.6;
}
@media (max-width: 720px) {
	body.lkr-single .lkr-article__body .lkr-brand-notes { grid-template-columns: 1fr; }
}

/* Eyebrow paragraphs sitting before H2 — quieter rhythm */
body.lkr-single .lkr-article__body .is-style-lkr-eyebrow + h2 {
	margin-top: var(--lkr-space-3);
}

/* ════════════════════════════════════════════════════════════════════
   INNER PAGE EDITORIAL SYSTEM (v0.9.19)
   Mirror of single-post breathing system for static pages
   (/o-nas/, /kontakt/, /autori/, /redakcne-zasady/, /inzercia/,
    /media-kit/, /ochrana-osobnych-udajov/, /podmienky/).
   Same Fraunces / IBM Plex hierarchy, line-height 1.78, generous spacing.
   ════════════════════════════════════════════════════════════════════ */

/* Widen + pace inner pages — was 840px tight */
body.lkr-inner .lkr-inner-wrap {
	max-width: 820px;
	padding: var(--lkr-space-7) var(--lkr-space-4) var(--lkr-space-7);
}

body.lkr-inner .lkr-inner-body {
	font-size: 1.0625rem;
	line-height: 1.78;
	color: var(--lkr-ink);
}

body.lkr-inner .lkr-inner-body h2 {
	font-family: var(--lkr-font-display);
	font-variation-settings: "opsz" 120, "SOFT" 0, "wght" 620;
	font-size: clamp(1.625rem, 2.6vw, 2rem);
	line-height: 1.18;
	letter-spacing: -0.012em;
	color: var(--lkr-ink);
	margin: var(--lkr-space-7) 0 var(--lkr-space-3);
}
body.lkr-inner .lkr-inner-body h3 {
	font-family: var(--lkr-font-display);
	font-variation-settings: "opsz" 96, "wght" 580;
	font-size: 1.3125rem;
	line-height: 1.28;
	color: var(--lkr-ink);
	margin: var(--lkr-space-5) 0 var(--lkr-space-2);
}
body.lkr-inner .lkr-inner-body p {
	margin: 0 0 var(--lkr-space-4);
}
body.lkr-inner .lkr-inner-body ul,
body.lkr-inner .lkr-inner-body ol {
	margin: 0 0 var(--lkr-space-4);
	padding-left: var(--lkr-space-4);
}
body.lkr-inner .lkr-inner-body li { margin-bottom: 0.55rem; }
body.lkr-inner .lkr-inner-body li:last-child { margin-bottom: 0; }
body.lkr-inner .lkr-inner-body strong { color: var(--lkr-ink); }
body.lkr-inner .lkr-inner-body a {
	color: var(--lkr-ink);
	border-bottom: 1px solid var(--lkr-gold);
	text-decoration: none;
	padding-bottom: 1px;
}
body.lkr-inner .lkr-inner-body a:hover { color: var(--lkr-gold); }

/* Eyebrow above H1 / between sections */
body.lkr-inner .lkr-inner-body .is-style-lkr-eyebrow {
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--lkr-ink-muted);
	margin: 0 0 var(--lkr-space-3);
}
body.lkr-inner .lkr-inner-body .is-style-lkr-eyebrow + h2 {
	margin-top: var(--lkr-space-3);
}

/* Tables in inner pages */
body.lkr-inner .lkr-inner-body figure.wp-block-table {
	margin: var(--lkr-space-5) 0;
	overflow-x: auto;
}
body.lkr-inner .lkr-inner-body figure.wp-block-table table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9375rem;
}
body.lkr-inner .lkr-inner-body figure.wp-block-table th {
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--lkr-ink-muted);
	font-weight: 600;
	text-align: left;
	padding: 0.75rem 0.875rem;
	border-bottom: 1px solid var(--lkr-line);
	background: var(--lkr-bg-soft);
}
body.lkr-inner .lkr-inner-body figure.wp-block-table td {
	padding: 0.875rem;
	border-bottom: 1px solid var(--lkr-line);
	vertical-align: top;
}

/* FAQ Gutenberg block inside inner pages (Kontakt, etc.) */
body.lkr-inner .lkr-inner-body .is-style-lkr-faq {
	margin: var(--lkr-space-4) 0 var(--lkr-space-6);
	border-top: 1px solid var(--lkr-line);
}
body.lkr-inner .lkr-inner-body .is-style-lkr-faq h3 {
	margin: 0;
	padding: var(--lkr-space-3) 0 var(--lkr-space-2);
	font-family: var(--lkr-font-display);
	font-variation-settings: "opsz" 60, "wght" 600;
	font-size: 1.0625rem;
}
body.lkr-inner .lkr-inner-body .is-style-lkr-faq h3::before {
	content: "Q. ";
	color: var(--lkr-gold);
	font-family: var(--lkr-font-mono);
	font-size: 0.75em;
	letter-spacing: 0.08em;
	vertical-align: 0.1em;
	margin-right: 0.4em;
}
body.lkr-inner .lkr-inner-body .is-style-lkr-faq p {
	margin: 0 0 var(--lkr-space-3);
	padding-bottom: var(--lkr-space-3);
	border-bottom: 1px solid var(--lkr-line);
	color: var(--lkr-ink-soft);
}
body.lkr-inner .lkr-inner-body .is-style-lkr-faq > *:last-child { border-bottom: none; }

/* H1 / page header alignment with new body width */
body.lkr-inner .lkr-page-header {
	margin-bottom: var(--lkr-space-6);
	padding-bottom: var(--lkr-space-5);
}
body.lkr-inner .lkr-page-title {
	font-variation-settings: "opsz" 144, "SOFT" 0, "wght" 600;
	font-size: clamp(2.25rem, 4vw, 3rem);
	line-height: 1.05;
	letter-spacing: -0.02em;
	max-width: 22ch;
}

/* ── Autori page — rebuilt for inner page width ──────────────────────
   Two-column card layout that doesn't squeeze content into narrow strip.
   Each author card stacks: avatar+name row → role chip → bio → meta → link.
   ─────────────────────────────────────────────────────────────────── */
body.lkr-inner .lkr-team-card-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--lkr-space-4);
	margin: var(--lkr-space-5) 0 var(--lkr-space-6);
}
body.lkr-inner .lkr-team-card {
	background: #fff;
	border: 1px solid var(--lkr-line);
	border-top: 3px solid var(--lkr-gold);
	border-radius: var(--lkr-radius-md);
	padding: var(--lkr-space-5);
}
body.lkr-inner .lkr-team-card__head {
	display: grid;
	grid-template-columns: 96px 1fr;
	gap: var(--lkr-space-3);
	align-items: center;
	margin-bottom: var(--lkr-space-3);
}
body.lkr-inner .lkr-team-card__avatar {
	width: 96px;
	height: 96px;
	border-radius: 50%;
	overflow: hidden;
	border: 2px solid var(--lkr-bg-soft);
	box-shadow: 0 2px 10px rgba(11,20,38,0.10);
}
body.lkr-inner .lkr-team-card__avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
body.lkr-inner .lkr-inner-body .lkr-author-card .lkr-team-card__name,
body.lkr-inner .lkr-inner-body h2.lkr-team-card__name {
	font-family: var(--lkr-font-display);
	font-variation-settings: "opsz" 96, "wght" 620;
	font-size: 1.5rem;
	line-height: 1.1;
	margin: 0 0 0.35rem;
	color: var(--lkr-ink);
}
body.lkr-inner .lkr-team-card__role {
	font-family: var(--lkr-font-mono);
	font-size: 0.6875rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--lkr-gold);
	margin: 0;
}
body.lkr-inner .lkr-team-card__body p {
	font-size: 0.9375rem;
	line-height: 1.7;
	margin: 0 0 var(--lkr-space-2);
}
body.lkr-inner .lkr-team-card__body p:last-of-type { margin-bottom: 0; }
body.lkr-inner .lkr-team-card__meta {
	font-family: var(--lkr-font-mono);
	font-size: 0.75rem;
	color: var(--lkr-ink-muted);
}
body.lkr-inner .lkr-team-card__link {
	display: inline-block;
	margin-top: var(--lkr-space-3);
	font-family: var(--lkr-font-mono);
	font-size: 0.8125rem;
	letter-spacing: 0.04em;
	color: var(--lkr-gold) !important;
	border-bottom: 1px solid var(--lkr-gold) !important;
}
@media (min-width: 720px) {
	body.lkr-inner .lkr-team-card-grid--two { grid-template-columns: 1fr 1fr; }
}

/* ════════════════════════════════════════════════════════════════════
   BYLINE — author chip in article meta row (v0.9.20)
   Small circular avatar + linked name. On hover, shows a tooltip
   with the author's short bio.
   ════════════════════════════════════════════════════════════════════ */

body.lkr-single .lkr-article__author.lkr-byline,
body.lkr-single .lkr-byline {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	text-decoration: none;
	color: var(--lkr-ink);
	position: relative;
	border-bottom: 0;
	padding-bottom: 0;
	vertical-align: middle;
	line-height: 1;
}

body.lkr-single .lkr-byline__avatar {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
	display: inline-block;
	background: var(--lkr-bg-soft);
	border: 1px solid rgba(11,20,38,0.08);
	box-shadow: 0 1px 3px rgba(11,20,38,0.08);
}
body.lkr-single .lkr-byline__img,
body.lkr-single .lkr-byline__avatar img {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	object-fit: cover;
	display: block;
}

body.lkr-single .lkr-byline__name {
	font-family: var(--lkr-font-mono);
	font-size: 0.75rem;
	letter-spacing: 0.10em;
	text-transform: uppercase;
	color: var(--lkr-ink);
	font-weight: 500;
	border-bottom: 1px solid transparent;
	padding-bottom: 1px;
	transition: border-color 0.18s ease, color 0.18s ease;
}
body.lkr-single .lkr-byline:hover .lkr-byline__name,
body.lkr-single .lkr-byline:focus-visible .lkr-byline__name {
	border-bottom-color: var(--lkr-gold);
	color: var(--lkr-gold);
}

/* Tooltip on hover/focus showing the author's bio */
body.lkr-single .lkr-byline[data-bio]:hover::after,
body.lkr-single .lkr-byline[data-bio]:focus-visible::after {
	content: attr(data-bio);
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	z-index: 80;
	width: max-content;
	max-width: 360px;
	padding: 0.75rem 0.875rem;
	background: var(--lkr-midnight);
	color: #fff;
	border-radius: 8px;
	box-shadow: 0 8px 24px rgba(11,20,38,0.22), 0 2px 6px rgba(11,20,38,0.12);
	font-family: 'IBM Plex Sans', sans-serif;
	font-size: 0.8125rem;
	line-height: 1.55;
	letter-spacing: 0;
	text-transform: none;
	font-weight: 400;
	white-space: normal;
	pointer-events: none;
	animation: lkr-byline-fadein 0.16s ease;
}
body.lkr-single .lkr-byline[data-bio]:hover::before,
body.lkr-single .lkr-byline[data-bio]:focus-visible::before {
	content: "";
	position: absolute;
	top: calc(100% + 4px);
	left: 16px;
	z-index: 81;
	border: 6px solid transparent;
	border-bottom-color: var(--lkr-midnight);
	pointer-events: none;
}
@keyframes lkr-byline-fadein {
	from { opacity: 0; transform: translateY(-4px); }
	to   { opacity: 1; transform: translateY(0); }
}

@media (max-width: 600px) {
	body.lkr-single .lkr-byline[data-bio]:hover::after,
	body.lkr-single .lkr-byline[data-bio]:focus-visible::after {
		max-width: calc(100vw - 32px);
		left: 0;
		font-size: 0.78125rem;
	}
}

