/**
 * Shared design primitives from the supplied homepage export:
 * Lucide icon glyphs, embroidered strips and pixel rosettes.
 *
 * Loaded before blocks/home/header/footer styles in the editor and on the front end.
 */

/* Lucide subset (lucide-static 0.460.0, ISC): see assets/fonts/PROVENANCE.txt. */
@font-face {
	font-family: "sk-lucide";
	font-style: normal;
	font-weight: 400;
	font-display: block;
	src: url("../fonts/lucide-subset.woff2") format("woff2");
}

/* Glyph strings, reusable as `content` for core-rendered controls. */
:root {
	--sk-icon-arrow-left: "\e04c";
	--sk-icon-arrow-right: "\e04d";
	--sk-icon-book-open: "\e063";
	--sk-icon-calendar: "\e067";
	--sk-icon-chevron-down: "\e071";
	--sk-icon-chevron-left: "\e072";
	--sk-icon-chevron-right: "\e073";
	--sk-icon-chevron-up: "\e074";
	--sk-icon-drama: "\e526";
	--sk-icon-facebook: "\e0c0";
	--sk-icon-flask-conical: "\e0da";
	--sk-icon-globe: "\e0eb";
	--sk-icon-graduation-cap: "\e234";
	--sk-icon-landmark: "\e23a";
	--sk-icon-map-pin: "\e115";
	--sk-icon-menu: "\e119";
	--sk-icon-newspaper: "\e34c";
	--sk-icon-palette: "\e1dd";
	--sk-icon-pause: "\e132";
	--sk-icon-play: "\e140";
	--sk-icon-search: "\e155";
	--sk-icon-x: "\e1b2";
	--sk-icon-youtube: "\e1b3";
}

/* Decorative only: always pair with aria-hidden="true". */
.sk-icon {
	display: inline-block;
	flex: none;
	font-family: "sk-lucide";
	font-size: inherit;
	font-style: normal;
	font-weight: 400;
	line-height: 1;
	color: inherit;
	text-transform: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.sk-icon--arrow-left::before {
	content: var(--sk-icon-arrow-left);
}

.sk-icon--arrow-right::before {
	content: var(--sk-icon-arrow-right);
}

.sk-icon--book-open::before {
	content: var(--sk-icon-book-open);
}

.sk-icon--calendar::before {
	content: var(--sk-icon-calendar);
}

.sk-icon--chevron-down::before {
	content: var(--sk-icon-chevron-down);
}

.sk-icon--chevron-left::before {
	content: var(--sk-icon-chevron-left);
}

.sk-icon--chevron-right::before {
	content: var(--sk-icon-chevron-right);
}

.sk-icon--chevron-up::before {
	content: var(--sk-icon-chevron-up);
}

.sk-icon--drama::before {
	content: var(--sk-icon-drama);
}

.sk-icon--facebook::before {
	content: var(--sk-icon-facebook);
}

.sk-icon--flask-conical::before {
	content: var(--sk-icon-flask-conical);
}

.sk-icon--globe::before {
	content: var(--sk-icon-globe);
}

.sk-icon--graduation-cap::before {
	content: var(--sk-icon-graduation-cap);
}

.sk-icon--landmark::before {
	content: var(--sk-icon-landmark);
}

.sk-icon--map-pin::before {
	content: var(--sk-icon-map-pin);
}

.sk-icon--menu::before {
	content: var(--sk-icon-menu);
}

.sk-icon--newspaper::before {
	content: var(--sk-icon-newspaper);
}

.sk-icon--palette::before {
	content: var(--sk-icon-palette);
}

.sk-icon--pause::before {
	content: var(--sk-icon-pause);
}

.sk-icon--play::before {
	content: var(--sk-icon-play);
}

.sk-icon--search::before {
	content: var(--sk-icon-search);
}

.sk-icon--x::before {
	content: var(--sk-icon-x);
}

.sk-icon--youtube::before {
	content: var(--sk-icon-youtube);
}

/*
 * Embroidered strip: two opposing 45deg stitch gradients tiled at the strip height.
 * --sk-embroidery-color (default accent) and --sk-embroidery-size (default 8px).
 */
.sk-embroidery {
	display: block;
	block-size: var(--sk-embroidery-size, 8px);
	background:
		linear-gradient(45deg, transparent 40%, var(--sk-embroidery-color, var(--wp--custom--design--accent)) 40% 60%, transparent 60%) 0 0 / var(--sk-embroidery-size, 8px) var(--sk-embroidery-size, 8px),
		linear-gradient(-45deg, transparent 40%, var(--sk-embroidery-color, var(--wp--custom--design--accent)) 40% 60%, transparent 60%) 0 0 / var(--sk-embroidery-size, 8px) var(--sk-embroidery-size, 8px);
}

/*
 * Pixel rosette: 7 x 7 motif, one pixel = --sk-rosette-size / 7 (default 14px).
 * Use .sk-rosette--light on dark backgrounds.
 */
.sk-rosette {
	--sk-rosette-unit: calc(var(--sk-rosette-size, 14px) / 7);
	--sk-rosette-ink: var(--wp--custom--design--ink);
	--sk-rosette-petal: var(--wp--custom--design--accent);
	--sk-rosette-core: var(--wp--custom--design--ochre);
	position: relative;
	display: inline-block;
	flex: none;
	inline-size: var(--sk-rosette-size, 14px);
	block-size: var(--sk-rosette-size, 14px);
}

.sk-rosette--light {
	--sk-rosette-ink: var(--wp--custom--design--surface);
}

.sk-rosette::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	inline-size: var(--sk-rosette-unit);
	block-size: var(--sk-rosette-unit);
	box-shadow:
		calc(var(--sk-rosette-unit) * 2) calc(var(--sk-rosette-unit) * 0) 0 0 var(--sk-rosette-ink),
		calc(var(--sk-rosette-unit) * 4) calc(var(--sk-rosette-unit) * 0) 0 0 var(--sk-rosette-ink),
		calc(var(--sk-rosette-unit) * 3) calc(var(--sk-rosette-unit) * 1) 0 0 var(--sk-rosette-petal),
		calc(var(--sk-rosette-unit) * 0) calc(var(--sk-rosette-unit) * 2) 0 0 var(--sk-rosette-ink),
		calc(var(--sk-rosette-unit) * 2) calc(var(--sk-rosette-unit) * 2) 0 0 var(--sk-rosette-petal),
		calc(var(--sk-rosette-unit) * 3) calc(var(--sk-rosette-unit) * 2) 0 0 var(--sk-rosette-petal),
		calc(var(--sk-rosette-unit) * 4) calc(var(--sk-rosette-unit) * 2) 0 0 var(--sk-rosette-petal),
		calc(var(--sk-rosette-unit) * 6) calc(var(--sk-rosette-unit) * 2) 0 0 var(--sk-rosette-ink),
		calc(var(--sk-rosette-unit) * 1) calc(var(--sk-rosette-unit) * 3) 0 0 var(--sk-rosette-petal),
		calc(var(--sk-rosette-unit) * 2) calc(var(--sk-rosette-unit) * 3) 0 0 var(--sk-rosette-petal),
		calc(var(--sk-rosette-unit) * 3) calc(var(--sk-rosette-unit) * 3) 0 0 var(--sk-rosette-core),
		calc(var(--sk-rosette-unit) * 4) calc(var(--sk-rosette-unit) * 3) 0 0 var(--sk-rosette-petal),
		calc(var(--sk-rosette-unit) * 5) calc(var(--sk-rosette-unit) * 3) 0 0 var(--sk-rosette-petal),
		calc(var(--sk-rosette-unit) * 0) calc(var(--sk-rosette-unit) * 4) 0 0 var(--sk-rosette-ink),
		calc(var(--sk-rosette-unit) * 2) calc(var(--sk-rosette-unit) * 4) 0 0 var(--sk-rosette-petal),
		calc(var(--sk-rosette-unit) * 3) calc(var(--sk-rosette-unit) * 4) 0 0 var(--sk-rosette-petal),
		calc(var(--sk-rosette-unit) * 4) calc(var(--sk-rosette-unit) * 4) 0 0 var(--sk-rosette-petal),
		calc(var(--sk-rosette-unit) * 6) calc(var(--sk-rosette-unit) * 4) 0 0 var(--sk-rosette-ink),
		calc(var(--sk-rosette-unit) * 3) calc(var(--sk-rosette-unit) * 5) 0 0 var(--sk-rosette-petal),
		calc(var(--sk-rosette-unit) * 2) calc(var(--sk-rosette-unit) * 6) 0 0 var(--sk-rosette-ink),
		calc(var(--sk-rosette-unit) * 4) calc(var(--sk-rosette-unit) * 6) 0 0 var(--sk-rosette-ink);
}

/*
 * Pixel flower: 11 x 11 banner motif (missing-image state), one pixel = --sk-flower-size / 11
 * (default 66px).
 */
.sk-flower {
	--sk-flower-unit: calc(var(--sk-flower-size, 66px) / 11);
	--sk-flower-ink: var(--wp--custom--design--ink);
	--sk-flower-petal: var(--wp--custom--design--accent);
	position: relative;
	display: inline-block;
	flex: none;
	inline-size: var(--sk-flower-size, 66px);
	block-size: var(--sk-flower-size, 66px);
}

.sk-flower::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	inline-size: var(--sk-flower-unit);
	block-size: var(--sk-flower-unit);
	box-shadow:
		calc(var(--sk-flower-unit) * 5) calc(var(--sk-flower-unit) * 0) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 4) calc(var(--sk-flower-unit) * 1) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 5) calc(var(--sk-flower-unit) * 1) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 6) calc(var(--sk-flower-unit) * 1) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 3) calc(var(--sk-flower-unit) * 2) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 4) calc(var(--sk-flower-unit) * 2) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 5) calc(var(--sk-flower-unit) * 2) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 6) calc(var(--sk-flower-unit) * 2) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 7) calc(var(--sk-flower-unit) * 2) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 1) calc(var(--sk-flower-unit) * 3) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 3) calc(var(--sk-flower-unit) * 3) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 4) calc(var(--sk-flower-unit) * 3) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 5) calc(var(--sk-flower-unit) * 3) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 6) calc(var(--sk-flower-unit) * 3) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 7) calc(var(--sk-flower-unit) * 3) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 9) calc(var(--sk-flower-unit) * 3) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 1) calc(var(--sk-flower-unit) * 4) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 2) calc(var(--sk-flower-unit) * 4) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 4) calc(var(--sk-flower-unit) * 4) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 5) calc(var(--sk-flower-unit) * 4) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 6) calc(var(--sk-flower-unit) * 4) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 8) calc(var(--sk-flower-unit) * 4) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 9) calc(var(--sk-flower-unit) * 4) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 2) calc(var(--sk-flower-unit) * 5) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 3) calc(var(--sk-flower-unit) * 5) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 4) calc(var(--sk-flower-unit) * 5) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 5) calc(var(--sk-flower-unit) * 5) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 6) calc(var(--sk-flower-unit) * 5) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 7) calc(var(--sk-flower-unit) * 5) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 8) calc(var(--sk-flower-unit) * 5) 0 0 var(--sk-flower-petal),
		calc(var(--sk-flower-unit) * 4) calc(var(--sk-flower-unit) * 6) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 5) calc(var(--sk-flower-unit) * 6) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 6) calc(var(--sk-flower-unit) * 6) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 5) calc(var(--sk-flower-unit) * 7) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 2) calc(var(--sk-flower-unit) * 8) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 5) calc(var(--sk-flower-unit) * 8) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 8) calc(var(--sk-flower-unit) * 8) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 3) calc(var(--sk-flower-unit) * 9) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 5) calc(var(--sk-flower-unit) * 9) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 7) calc(var(--sk-flower-unit) * 9) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 4) calc(var(--sk-flower-unit) * 10) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 5) calc(var(--sk-flower-unit) * 10) 0 0 var(--sk-flower-ink),
		calc(var(--sk-flower-unit) * 6) calc(var(--sk-flower-unit) * 10) 0 0 var(--sk-flower-ink);
}

/*
 * Ornaments as images, for pseudo-elements (heading marks, quotes, dividers).
 * Same motifs as .sk-rosette and .sk-flower.
 */
:root {
	--sk-ornament-rosette: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 7' shape-rendering='crispEdges'><path fill='%230A2540' d='M2 0h1v1h-1zM4 0h1v1h-1zM0 2h1v1h-1zM6 2h1v1h-1zM0 4h1v1h-1zM6 4h1v1h-1zM2 6h1v1h-1zM4 6h1v1h-1z'/><path fill='%23EA4522' d='M3 1h1v1h-1zM2 2h1v1h-1zM3 2h1v1h-1zM4 2h1v1h-1zM1 3h1v1h-1zM2 3h1v1h-1zM4 3h1v1h-1zM5 3h1v1h-1zM2 4h1v1h-1zM3 4h1v1h-1zM4 4h1v1h-1zM3 5h1v1h-1z'/><path fill='%23D8742B' d='M3 3h1v1h-1z'/></svg>");
	--sk-ornament-flower: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 11' shape-rendering='crispEdges'><path fill='%23EA4522' d='M5 0h1v1h-1zM4 1h1v1h-1zM5 1h1v1h-1zM6 1h1v1h-1zM3 2h1v1h-1zM4 2h1v1h-1zM6 2h1v1h-1zM7 2h1v1h-1zM1 3h1v1h-1zM3 3h1v1h-1zM4 3h1v1h-1zM6 3h1v1h-1zM7 3h1v1h-1zM9 3h1v1h-1zM1 4h1v1h-1zM2 4h1v1h-1zM4 4h1v1h-1zM6 4h1v1h-1zM8 4h1v1h-1zM9 4h1v1h-1zM2 5h1v1h-1zM3 5h1v1h-1zM4 5h1v1h-1zM6 5h1v1h-1zM7 5h1v1h-1zM8 5h1v1h-1z'/><path fill='%230A2540' d='M5 2h1v1h-1zM5 3h1v1h-1zM5 4h1v1h-1zM5 5h1v1h-1zM4 6h1v1h-1zM5 6h1v1h-1zM6 6h1v1h-1zM5 7h1v1h-1zM2 8h1v1h-1zM5 8h1v1h-1zM8 8h1v1h-1zM3 9h1v1h-1zM5 9h1v1h-1zM7 9h1v1h-1zM4 10h1v1h-1zM5 10h1v1h-1zM6 10h1v1h-1z'/></svg>");
}

/* Article-page kit, shared by posts and the calendar / map plugins ------------ */

/* Section kicker: rosette + uppercase label ("KULTÚRA"). */
.sk-kicker {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0;
	color: var(--wp--custom--design--ink);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.14em;
	line-height: 1.4;
	text-transform: uppercase;
}

.sk-kicker::before {
	content: "";
	flex: none;
	inline-size: 14px;
	block-size: 14px;
	background: var(--sk-ornament-rosette) center / contain no-repeat;
}

.sk-kicker a {
	color: inherit;
	text-decoration: none;
}

.sk-kicker a:hover {
	color: var(--wp--custom--design--action);
}

/* Link with a stitched underline ("Všetky články →"). */
.sk-link-stitch {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding-bottom: 4px;
	background: repeating-linear-gradient(90deg, var(--wp--custom--design--accent) 0 6px, transparent 6px 10px) left bottom / 100% 2px no-repeat;
	color: var(--wp--custom--design--ink);
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
}

.sk-link-stitch:hover {
	color: var(--wp--custom--design--action);
}

/* Section heading row. */
.sk-section-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
}

.sk-section-head__title {
	margin: 0;
	color: var(--wp--custom--design--ink);
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(28px, 1.4rem + 1.2vw, 34px);
	font-weight: 400;
	line-height: 1.05;
}

/* Round share buttons. */
.sk-share {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.sk-share__button {
	display: inline-flex;
	inline-size: 44px;
	block-size: 44px;
	flex: none;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 1.5px solid var(--wp--custom--design--ink);
	border-radius: 50%;
	background: var(--wp--custom--design--surface);
	color: var(--wp--custom--design--ink);
	cursor: pointer;
	text-decoration: none;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.sk-share__button[hidden] {
	display: none;
}

.sk-share__button:hover,
.sk-share__button.is-copied {
	background: var(--wp--custom--design--ink);
	color: var(--wp--custom--design--surface);
}

.sk-inline-icon {
	display: block;
	flex: none;
}

/* Article card: photo with a tab label, serif title, date. */
.sk-article-card {
	position: relative;
	display: flex;
	min-width: 0;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--wp--custom--design--card-border);
	border-radius: 12px;
	background: var(--wp--custom--design--canvas);
	color: var(--wp--custom--design--ink);
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.sk-article-card:hover {
	border-color: var(--wp--custom--design--ink);
	box-shadow: 0 10px 28px rgba(12, 42, 60, 0.12);
}

.sk-article-card__media {
	position: relative;
	flex: none;
	aspect-ratio: 16 / 10;
	background: var(--wp--custom--design--media);
}

.sk-article-card__media:not(.sk-article-card__media--none) {
	overflow: visible;
	clip-path: inset(0 0 -20px 0);
}

.sk-article-card__media img {
	position: absolute;
	inset: 0;
	display: block;
	inline-size: 100%;
	block-size: 100%;
	border-radius: 0;
	object-fit: cover;
	object-position: center 25%;
}

.sk-article-card__media--none {
	aspect-ratio: auto;
	block-size: 0;
	margin-top: 26px;
	background: none;
}

.sk-article-card__label {
	position: absolute;
	left: 16px;
	bottom: -14px;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 6px 12px 4px 10px;
	border: 1px solid var(--wp--custom--design--border);
	border-radius: 999px;
	background: var(--wp--custom--design--surface);
	box-shadow: 0 2px 8px rgba(12, 42, 60, 0.1);
	color: var(--wp--custom--design--ink);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.12em;
	line-height: 1.3;
	text-transform: uppercase;
}

.sk-article-card__label::before {
	content: "";
	flex: none;
	inline-size: 10.5px;
	block-size: 10.5px;
	background: var(--sk-ornament-rosette) center / contain no-repeat;
}

.sk-article-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 8px;
	padding: 28px 20px 20px;
}

.sk-article-card__title {
	margin: 0;
	color: var(--wp--custom--design--ink);
	font-family: var(--wp--preset--font-family--editorial);
	font-size: 22px;
	font-weight: 400;
	line-height: 1.15;
	overflow-wrap: anywhere;
}

.sk-article-card__title a {
	color: inherit;
	text-decoration: none;
}

/* The whole card is clickable; the title link stays the only focus target. */
.sk-article-card__title a::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
}

.sk-article-card__title a:focus-visible {
	outline: none;
}

.sk-article-card:has(.sk-article-card__title a:focus-visible) {
	outline: 2px solid var(--wp--custom--design--ink);
	outline-offset: 2px;
}

.sk-article-card__date,
.sk-article-card__meta {
	margin: 0;
	color: var(--wp--custom--design--muted);
	font-size: 13px;
}

/* Dashed divider with a flower in the middle. */
.sk-ornament-divider,
hr.sk-ornament-divider {
	display: block;
	block-size: 22px;
	margin: 18px 0 6px;
	border: 0;
	background:
		var(--sk-ornament-flower) center / 22px 22px no-repeat,
		linear-gradient(90deg, transparent calc(50% - 20px), var(--sk-divider-bg, var(--wp--custom--design--canvas)) calc(50% - 20px), var(--sk-divider-bg, var(--wp--custom--design--canvas)) calc(50% + 20px), transparent calc(50% + 20px)),
		repeating-linear-gradient(90deg, var(--wp--custom--design--stitch) 0 6px, transparent 6px 11px) left center / 100% 2px no-repeat;
	opacity: 1;
}

/* Visually hidden text (status messages, extra link context). */
.screen-reader-text {
	position: absolute !important;
	inline-size: 1px;
	block-size: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
/* Header band --------------------------------------------------------------- */
/* Pages built on the header band start right under the site header. */
.wp-site-blocks > main.sk-page {
	margin-block: 0;
}

.sk-page-header {
	background: var(--wp--custom--design--surface);
}

/* Embroidered lower edge of the header band. */
.sk-page-header::after {
	content: "";
	display: block;
	block-size: 8px;
	background:
		linear-gradient(45deg, transparent 40%, var(--wp--custom--design--ochre) 40% 60%, transparent 60%) 0 0 / 8px 8px,
		linear-gradient(-45deg, transparent 40%, var(--wp--custom--design--ochre) 40% 60%, transparent 60%) 0 0 / 8px 8px;
}

.sk-page-header__inner {
	display: flex;
	max-width: 880px;
	flex-direction: column;
	gap: 22px;
	margin: 0 auto;
	padding: 40px var(--wp--custom--layout--gutter, 32px) 36px;
	box-sizing: border-box;
}

.sk-page-header__inner > * {
	margin: 0;
}

/* Breadcrumbs (core block): chevrons, muted links. */
.sk-breadcrumbs {
	color: var(--wp--custom--design--muted);
	font-size: 14px;
}

.sk-breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sk-breadcrumbs li {
	display: flex;
	align-items: center;
	margin: 0;
}

.sk-breadcrumbs li:not(:last-child)::after {
	content: var(--sk-icon-chevron-right) / "";
	margin: 0 0 0 8px;
	font-family: "sk-lucide";
	font-size: 13px;
	opacity: 1;
}

.sk-breadcrumbs a {
	color: var(--wp--custom--design--muted);
	text-decoration: none;
}

.sk-breadcrumbs a:hover {
	color: var(--wp--custom--design--action);
	text-decoration: underline;
}

.sk-breadcrumbs [aria-current="page"] {
	color: var(--wp--custom--design--ink);
}

/* Kicker from post-terms: separator dots inherit the label style. */
.sk-kicker .wp-block-post-terms__separator {
	color: var(--wp--custom--design--muted);
}

.sk-page-header__title {
	color: var(--wp--custom--design--ink);
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(2.25rem, 1.3rem + 3.2vw, 3.75rem);
	font-weight: 400;
	letter-spacing: -0.02em;
	line-height: 1.02;
	text-wrap: balance;
}

.sk-page-header__lead,
.sk-page-header__lead p {
	margin: 0;
	color: var(--wp--custom--design--ink);
	font-size: clamp(1.125rem, 1rem + 0.5vw, 1.3125rem);
	line-height: 1.55;
	text-wrap: pretty;
}

/* Byline row with share buttons. */
.sk-page-header__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 24px;
	padding-top: 18px;
	border-top: 1px solid var(--wp--custom--design--border);
}

/* Featured photo: 16:9 frame, whole photo on a blurred copy of itself. */
.sk-page-header__image {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 var(--wp--custom--layout--gutter, 32px) 44px;
	box-sizing: border-box;
}

.sk-page-header__image.wp-block-post-featured-image {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

/* Soft, blurred copy of the photo fills the frame around portrait or narrow photos. */
.sk-page-header__image.wp-block-post-featured-image::before {
	content: "";
	position: absolute;
	top: 0;
	right: var(--wp--custom--layout--gutter, 32px);
	left: var(--wp--custom--layout--gutter, 32px);
	aspect-ratio: 16 / 9;
	background: var(--sk-page-backdrop, none) center / cover, var(--wp--custom--design--media);
	border-radius: var(--wp--custom--radius--media, 10px);
	clip-path: inset(0 round var(--wp--custom--radius--media, 10px));
	filter: blur(28px) saturate(0.8);
	opacity: 0.55;
}

.sk-page-header__image img {
	position: relative;
	z-index: 1;
	inline-size: 100%;
	block-size: auto;
	aspect-ratio: 16 / 9;
	border-radius: var(--wp--custom--radius--media, 10px);
	object-fit: contain !important;
}

.sk-page-header__image .wp-element-caption {
	margin: 0;
	color: var(--wp--custom--design--muted);
	font-size: 14px;
	line-height: 1.5;
}

/* Core makes every link in a featured image a block; captions keep inline credits. */
.sk-page-header__image .wp-element-caption a {
	display: inline;
	height: auto;
	color: var(--wp--custom--design--ink);
	text-underline-offset: 2px;
}

.sk-page-header__image .wp-element-caption a:hover {
	color: var(--wp--custom--design--action);
}


/* Listing pages (calendar, map) align the header with their wide content. */
.sk-page-header__inner--wide {
	max-width: 1280px;
}

.sk-page-header__inner--wide .sk-page-header__lead {
	max-width: 46em;
}

/* Content area under the band. */
.sk-page-body {
	max-width: 1280px;
	margin: 0 auto;
	padding: 48px var(--wp--custom--layout--gutter, 32px) 72px;
	box-sizing: border-box;
}

.sk-page-body > * {
	margin-block: 0;
}

.sk-page-body + .sk-related {
	margin-top: 0;
}

/* Fact box ("v skratke"): white card with an embroidered top edge. */
.sk-facts-box {
	position: relative;
	overflow: hidden;
	padding: 30px 26px 24px;
	border: 1px solid var(--wp--custom--design--border);
	border-radius: 12px;
	background: var(--wp--custom--design--surface);
}

.sk-facts-box::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	block-size: 8px;
	background:
		linear-gradient(45deg, transparent 40%, var(--wp--custom--design--action) 40% 60%, transparent 60%) 0 0 / 8px 8px,
		linear-gradient(-45deg, transparent 40%, var(--wp--custom--design--action) 40% 60%, transparent 60%) 0 0 / 8px 8px;
}

/* Heading with a rosette mark. */
.sk-heading-mark {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0;
	color: var(--wp--custom--design--ink);
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(1.625rem, 1.3rem + 1.2vw, 2rem);
	font-weight: 700;
	line-height: 1.15;
}

.sk-heading-mark::before {
	content: "";
	flex: none;
	inline-size: 14px;
	block-size: 14px;
	background: var(--sk-ornament-rosette) center / contain no-repeat;
}

/* Related / more section: white band with a card grid. */
.sk-related {
	margin-top: 56px;
	border-top: 1px solid var(--wp--custom--design--border);
	background: var(--wp--custom--design--surface);
}

.sk-related__inner {
	display: flex;
	max-width: 1280px;
	flex-direction: column;
	gap: 26px;
	margin: 0 auto;
	padding: 56px var(--wp--custom--layout--gutter, 32px) 72px;
	box-sizing: border-box;
}

.sk-related__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr));
	gap: 20px;
}

@media (min-width: 900px) {
	.sk-related__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.sk-page-header__inner {
		padding-top: 28px;
		gap: 18px;
	}
}

/* Hero page header (article design, variant B "Titulná fotka") ------------------
 * Full-width photo (whole picture on a blurred copy of itself), white title card
 * with an embroidered top edge overlapping it, caption under the card.
 * Without a photo the card simply sits on the canvas. */
.sk-page-hero {
	background: var(--wp--custom--design--canvas);
}

.sk-page-hero > * {
	margin-block: 0;
}

.sk-page-hero__photo.wp-block-post-featured-image,
.sk-page-hero__photo {
	position: relative;
	display: block;
	block-size: min(62vh, 560px);
	margin: 0;
	overflow: hidden;
	background: var(--wp--custom--design--media);
}

.sk-page-hero__photo::before {
	content: "";
	position: absolute;
	inset: -40px;
	background: var(--sk-page-backdrop, none) center / cover;
	filter: blur(28px) saturate(0.8);
	opacity: 0.55;
}

.sk-page-hero__photo img {
	position: relative;
	z-index: 1;
	display: block;
	inline-size: 100% !important;
	block-size: 100% !important;
	max-inline-size: none;
	object-fit: contain !important;
}

.sk-page-hero__photo figcaption {
	display: none;
}

.sk-page-hero__wrap {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 var(--wp--custom--layout--gutter, 32px);
	box-sizing: border-box;
}

.sk-page-hero__wrap > * {
	margin-block: 0;
}

.sk-page-hero__card {
	position: relative;
	z-index: 2;
	display: flex;
	max-width: 860px;
	flex-direction: column;
	gap: 18px;
	margin-top: 40px;
	padding: 42px 40px 36px;
	overflow: hidden;
	border-radius: 12px;
	background: var(--wp--custom--design--surface);
	box-shadow: 0 18px 50px rgba(12, 42, 60, 0.16);
	box-sizing: border-box;
}

.sk-page-hero:has(.sk-page-hero__photo img) .sk-page-hero__card {
	margin-top: -180px;
}

.sk-page-hero__card::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	block-size: 8px;
	background:
		linear-gradient(45deg, transparent 40%, var(--wp--custom--design--action) 40% 60%, transparent 60%) 0 0 / 8px 8px,
		linear-gradient(-45deg, transparent 40%, var(--wp--custom--design--action) 40% 60%, transparent 60%) 0 0 / 8px 8px;
}

.sk-page-hero__card > * {
	margin: 0;
}

/* Byline / meta row inside the card. */
.sk-page-hero__card > .sk-byline,
.sk-page-hero__card > .sk-page-header__meta {
	padding-top: 18px;
	border-top: 1px solid var(--wp--custom--design--border);
}

.sk-page-hero__caption {
	margin: 0;
	padding-top: 14px;
	color: var(--wp--custom--design--muted);
	font-size: 14px;
	line-height: 1.5;
	text-align: right;
}

.sk-page-hero__caption a {
	color: var(--wp--custom--design--ink);
	text-underline-offset: 2px;
}

.sk-page-hero__caption a:hover {
	color: var(--wp--custom--design--action);
}

@media (max-width: 781px) {
	.sk-page-hero__photo.wp-block-post-featured-image,
	.sk-page-hero__photo {
		block-size: 300px;
	}

	.sk-page-hero:has(.sk-page-hero__photo img) .sk-page-hero__card {
		margin-top: -60px;
	}

	.sk-page-hero__card {
		padding: 34px 24px 28px;
	}

	.sk-page-hero__caption {
		text-align: start;
	}
}

/* Small uppercase label ("AUTOR", "V TOMTO ČLÁNKU"). */
.sk-aside-label {
	margin: 0;
	color: var(--wp--custom--design--ink);
	font-family: var(--wp--preset--font-family--body);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.14em;
	line-height: 1.4;
	text-transform: uppercase;
}
