/*
Theme Name: U KNOPKA – restauracja
Description: Nowoczesny motyw blokowy Domu Przyjęć U KNOPKA: ciepłe kolory, czytelna typografia, dynamiczne bloki (cennik, oferta, dane kontaktowe, aktualności, pas „Zadzwoń”, komunikat) i gotowe wzorce sekcji.
Version: 1.3.5
Requires at least: 6.7
Requires PHP: 8.0
Text Domain: uknopka-restauracja
*/

/* ---------------------------------------------------------------- base */

html {
	scroll-behavior: smooth;
	scroll-padding-top: 6rem; /* anchors below the sticky header */
}

body {
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

::selection {
	background: var(--wp--preset--color--gold);
	color: #140e0a;
}

:where(.wp-site-blocks) > * {
	margin-block-start: 0;
}

a:where(:not(.wp-element-button)) {
	text-underline-offset: 0.2em;
	text-decoration-thickness: 1px;
}

:focus-visible {
	outline: 2px solid var(--wp--preset--color--gold-light);
	outline-offset: 3px;
}

img {
	height: auto;
}

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

.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 100;
}

.uk-header {
	position: relative;
	isolation: isolate;
	background: rgba(13, 11, 10, 0.88);
	border-bottom: 1px solid rgba(232, 169, 79, 0.18);
}

/* The blur sits on a pseudo-element: backdrop-filter on the header itself
   would trap the fixed full-screen mobile menu inside the 70px bar. */
.uk-header::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	backdrop-filter: saturate(140%) blur(10px);
	-webkit-backdrop-filter: saturate(140%) blur(10px);
	pointer-events: none;
}

.uk-header .wp-block-navigation a:hover,
.uk-header .wp-block-navigation .current-menu-item > a,
.uk-header .wp-block-navigation .current-menu-ancestor > a,
.uk-header .wp-block-navigation [aria-current="page"] {
	color: var(--wp--preset--color--gold);
}

.uk-header .wp-block-navigation__submenu-container {
	background: #17120f !important;
	border: 1px solid var(--wp--preset--color--line) !important;
	border-radius: 12px;
	padding: 0.5rem 0;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
	min-width: 240px !important;
}

.uk-header .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__submenu-container a {
	white-space: nowrap;
}

.uk-header .wp-block-navigation__submenu-container a {
	padding: 0.55rem 1.25rem !important;
	text-transform: none;
	letter-spacing: 0.01em;
	font-weight: 500;
}

.uk-header-phone .wp-block-button__link {
	white-space: nowrap;
}

/* Mobile menu (hamburger overlay): left-aligned list, sections divided by
   thin lines, submenus as an indented list instead of desktop dropdowns. */
.uk-header .wp-block-navigation__responsive-container.is-menu-open {
	padding: 1rem 1.5rem 2rem !important;
	background: #0d0b0a !important;
}
.uk-header .is-menu-open .wp-block-navigation__responsive-container-content,
.uk-header .is-menu-open .wp-block-navigation__container,
.uk-header .is-menu-open .wp-block-navigation-item {
	align-items: stretch !important;
	text-align: left;
}
.uk-header .is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: 3.25rem !important;
}
.uk-header .is-menu-open .wp-block-navigation__container {
	gap: 0 !important;
	width: 100%;
}
.uk-header .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item {
	border-bottom: 1px solid rgba(232, 169, 79, 0.14);
	padding: 0.85rem 0;
}
.uk-header .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > a {
	font-size: 1.05rem;
}
.uk-header .is-menu-open .wp-block-navigation__submenu-container {
	background: transparent !important;
	border: 0 !important;
	border-left: 2px solid rgba(232, 169, 79, 0.35) !important;
	border-radius: 0;
	box-shadow: none;
	margin: 0.6rem 0 0.15rem 0.2rem !important;
	padding: 0 0 0 1rem !important;
	gap: 0 !important;
}
.uk-header .is-menu-open .wp-block-navigation__submenu-container a {
	padding: 0.45rem 0 !important;
	font-size: 1rem;
	color: #e9dfd2;
}
.uk-header .is-menu-open .wp-block-navigation__submenu-container .current-menu-item > a,
.uk-header .is-menu-open .wp-block-navigation__submenu-container [aria-current="page"] {
	color: var(--wp--preset--color--gold);
}
.uk-header .is-menu-open .wp-block-navigation__responsive-container-close {
	top: 0;
	right: 0;
	padding: 0.4rem;
	border: 1px solid rgba(232, 169, 79, 0.35);
	border-radius: 999px;
	color: var(--wp--preset--color--gold);
}

/* "Zadzwoń" button inside the mobile menu (added in functions.php). */
.uk-header .wp-block-navigation .uk-nav-tel {
	display: none !important;
}
.uk-header .is-menu-open .wp-block-navigation__container > .uk-nav-tel {
	display: flex !important;
	border-bottom: 0 !important;
	padding: 1.5rem 0 0 !important;
}
.uk-header .is-menu-open .uk-nav-tel > a {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.5rem;
	box-sizing: border-box;
	width: 100%;
	padding: 0.95rem 1rem !important;
	border-radius: 999px;
	background: var(--wp--preset--color--gold);
	color: #140e0a !important;
	font-size: 1.05rem !important;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: none;
}
.uk-header .is-menu-open .uk-nav-tel > a::before {
	content: "";
	width: 1.1em;
	height: 1.1em;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* The floating "Zadzwoń" bar would cover the open mobile menu. */
html.has-modal-open .uk-callbar {
	display: none !important;
}

@media (max-width: 781px) {
	.uk-header .uk-header-phone {
		display: none !important;
	}
}

/* Site-wide notice (block "Komunikat"). */
.uk-komunikat {
	background: var(--wp--preset--color--gold);
	color: #140e0a;
	text-align: center;
	font-weight: 600;
	font-size: 0.9375rem;
	padding: 0.55rem 1rem;
}

.uk-komunikat p {
	margin: 0;
}

.uk-komunikat a {
	color: #140e0a;
}

/* ---------------------------------------------------------------- block styles */

/* Group "Karta" */
.wp-block-group.is-style-karta {
	background: var(--wp--preset--color--surface);
	--uk-card-pad: clamp(1.25rem, 3vw, 2rem);
	border-radius: 16px;
	padding: var(--uk-card-pad);
	border-top: 3px solid var(--wp--preset--color--gold);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
	height: 100%;
	box-sizing: border-box;
}

.wp-block-group.is-style-karta > :first-child {
	margin-top: 0;
}

/* Group "Ramka informacyjna" */
.wp-block-group.is-style-ramka {
	background: rgba(255, 255, 255, 0.04);
	border-left: 3px solid var(--wp--preset--color--gold);
	border-radius: 0 12px 12px 0;
	padding: 1.25rem 1.5rem;
}

/* Paragraph "Nadtytuł" (small gold label above a heading) */
p.is-style-nadtytul {
	color: var(--wp--preset--color--gold);
	text-transform: uppercase;
	letter-spacing: 0.16em;
	font-size: 0.8125rem;
	font-weight: 700;
	margin-bottom: 0;
}

/* Paragraph "Wstęp" (lead) */
p.is-style-wstep {
	font-size: clamp(1.0625rem, 1.6vw, 1.25rem);
	color: #f1e9de;
	line-height: 1.65;
}

/* Button "Obrys" */
.wp-block-button.is-style-obrys .wp-block-button__link {
	background: transparent;
	color: var(--wp--preset--color--gold);
	border: 1.5px solid currentColor;
	padding: calc(0.85em - 1.5px) calc(1.8em - 1.5px);
}

.wp-block-button.is-style-obrys .wp-block-button__link:hover {
	background: rgba(232, 169, 79, 0.12);
	color: var(--wp--preset--color--gold-light);
}

/* On gold sections buttons turn dark. */
.has-gold-background-color .wp-block-button:not(.is-style-obrys) .wp-block-button__link {
	background: #140e0a;
	color: var(--wp--preset--color--gold-light);
}

.has-gold-background-color .wp-block-button.is-style-obrys .wp-block-button__link {
	color: #140e0a;
}

.has-gold-background-color :where(h1, h2, h3, h4, p, li) {
	color: #140e0a;
}

.has-gold-background-color .is-style-karta :where(h1, h2, h3, h4, p, li) {
	color: var(--wp--preset--color--ink);
}

.has-gold-background-color .is-style-karta :where(h3, h4) {
	color: #ffffff;
}

.has-gold-background-color .is-style-karta {
	border-top-color: #140e0a;
}

.has-cream-background-color :where(h1, h2, h3, h4, p, li, td, th) {
	color: var(--wp--preset--color--dark-ink);
}

/* List "Złote punkty" */
ul.is-style-zlote-punkty {
	padding-left: 1.2em;
}

ul.is-style-zlote-punkty li::marker {
	color: var(--wp--preset--color--gold);
}

ul.is-style-zlote-punkty li + li {
	margin-top: 0.4em;
}

/* Numbers in "Jak zamówić" steps */
.uk-step-nr {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 2.5rem;
	line-height: 1;
	color: var(--wp--preset--color--gold);
	font-weight: 300;
	margin: 0;
}

/* FAQ (details) */
.wp-block-details summary {
	cursor: pointer;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.125rem;
	font-weight: 500;
	color: #ffffff;
	list-style: none;
	display: flex;
	justify-content: space-between;
	gap: 1rem;
}

.wp-block-details summary::after {
	content: "+";
	color: var(--wp--preset--color--gold);
	font-size: 1.5rem;
	line-height: 1;
}

.wp-block-details[open] summary::after {
	content: "–";
}

.wp-block-details summary::-webkit-details-marker {
	display: none;
}

/* ---------------------------------------------------------------- dynamic blocks */

/* Cennik */
.uk-cennik {
	background: var(--wp--preset--color--surface);
	border-radius: 16px;
	border-top: 3px solid var(--wp--preset--color--gold);
	padding: clamp(1.25rem, 3vw, 2rem);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
	height: 100%;
	box-sizing: border-box;
}

.uk-cennik__title {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.375rem;
	color: var(--wp--preset--color--gold);
	margin: 0 0 1rem;
	font-weight: 500;
}

.uk-cennik__body > :first-child {
	margin-top: 0;
}

.uk-cennik__body h3 {
	display: none; /* the caption row ("Cennik") of imported lists – the block shows its own title */
}

.uk-cennik table,
.uknopka-cennik table {
	width: 100%;
	border-collapse: collapse;
	table-layout: auto !important;
}

.uk-cennik th,
.uk-cennik td,
.uknopka-cennik th,
.uknopka-cennik td {
	padding: 0.6em 0.5em;
	border: 0;
	border-bottom: 1px solid var(--wp--preset--color--line);
	text-align: center;
	vertical-align: middle;
}

.uk-cennik th:first-child,
.uk-cennik td:first-child,
.uknopka-cennik th:first-child,
.uknopka-cennik td:first-child {
	text-align: left;
	width: 58%;
}

.uk-cennik thead th,
.uknopka-cennik thead th {
	color: var(--wp--preset--color--gold);
	font-size: 0.8125rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-weight: 700;
	border-bottom: 1px solid var(--wp--preset--color--gold);
}

.uk-cennik tbody tr:nth-child(even) td,
.uknopka-cennik tbody tr:nth-child(even) td {
	background: rgba(255, 255, 255, 0.025);
}

.uk-cennik tbody td:last-child,
.uknopka-cennik tbody td:last-child {
	font-weight: 700;
	color: #ffffff;
	white-space: nowrap;
}

.uk-cennik td:nth-child(2) {
	white-space: nowrap;
}

.uk-cennik figure.wp-block-table {
	margin: 0;
}

/* Dane kontaktowe */
.uk-kontakt {
	background: var(--wp--preset--color--surface);
	border-radius: 16px;
	padding: 1.5rem;
	border-top: 3px solid var(--wp--preset--color--gold);
	height: 100%;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.uk-kontakt__icon {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: rgba(232, 169, 79, 0.14);
	color: var(--wp--preset--color--gold);
	display: grid;
	place-items: center;
}

.uk-kontakt__icon svg {
	width: 22px;
	height: 22px;
}

.uk-kontakt__label {
	color: var(--wp--preset--color--gold);
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-size: 0.75rem;
	font-weight: 700;
	margin: 0.25rem 0 0;
}

.uk-kontakt__value {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.25rem;
	color: #ffffff;
	margin: 0;
	overflow-wrap: anywhere;
}

.uk-kontakt__note {
	color: var(--wp--preset--color--muted);
	font-size: 0.9375rem;
	margin: 0;
}

.uk-kontakt__action {
	margin-top: auto;
	padding-top: 0.75rem;
}

/* Mapa dojazdu: still map (centred on the address) with a pin; the buttons open Google Maps. */
.uk-mapa {
	--uk-gold-dark: #9a5f1d;
	background: #ffffff;
	border-radius: 16px;
	border-top: 3px solid var(--wp--preset--color--gold);
	box-shadow: 0 12px 30px rgba(60, 35, 15, 0.12);
	overflow: hidden;
}

.uk-mapa__okno {
	position: relative;
	display: block;
	aspect-ratio: 2 / 1;
	background: #efe6d8;
}

.uk-mapa__okno img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 0.6s ease;
}

.uk-mapa__okno:hover img {
	transform: scale(1.03);
}

.uk-mapa__pin {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -100%);
	display: flex;
	flex-direction: column;
	align-items: center;
	pointer-events: none;
}

.uk-mapa__znacznik {
	width: 48px;
	height: 48px;
	border-radius: 50% 50% 50% 0;
	transform: rotate(-45deg);
	background: var(--wp--preset--color--wine);
	border: 3px solid var(--wp--preset--color--gold);
	box-shadow: 0 6px 16px rgba(30, 15, 5, 0.35);
	display: grid;
	place-items: center;
	color: var(--wp--preset--color--gold);
	order: 2;
}

.uk-mapa__znacznik svg {
	transform: rotate(45deg);
	width: 22px;
	height: 22px;
}

.uk-mapa__nazwa {
	order: 1;
	margin-bottom: 0.5rem;
	padding: 0.3rem 0.75rem;
	border-radius: 999px;
	background: var(--wp--preset--color--base);
	color: var(--wp--preset--color--gold);
	font-family: var(--wp--preset--font-family--heading);
	font-size: 0.875rem;
	letter-spacing: 0.08em;
	white-space: nowrap;
	box-shadow: 0 4px 12px rgba(30, 15, 5, 0.3);
}

.uk-mapa__osm {
	position: absolute;
	right: 0;
	bottom: 0;
	padding: 0.15rem 0.5rem;
	background: rgba(255, 255, 255, 0.8);
	color: #5e4f43;
	font-size: 0.6875rem;
}

.uk-mapa__info {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem 1.5rem;
	padding: 1.25rem 1.5rem 1.5rem;
}

.uk-mapa__ulica {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.25rem;
	color: #1c1410;
	margin: 0;
}

.uk-mapa__opis {
	color: #5e4f43;
	font-size: 0.9375rem;
	margin: 0.25rem 0 0;
}

.uk-mapa__przyciski {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

/* The card is white also on dark sections: outline button in dark gold. */
.uk-mapa .wp-block-button.is-style-obrys .wp-block-button__link {
	color: var(--uk-gold-dark);
	border-color: currentColor;
}

.uk-mapa .wp-block-button.is-style-obrys .wp-block-button__link:hover {
	background: rgba(154, 95, 29, 0.1);
	color: var(--uk-gold-dark);
}

@media (max-width: 600px) {
	.uk-mapa__okno {
		aspect-ratio: 4 / 3;
	}

	.uk-mapa__info {
		padding: 1rem 1.25rem 1.25rem;
	}

	.uk-mapa__przyciski,
	.uk-mapa__przyciski .wp-block-button,
	.uk-mapa__przyciski .wp-block-button__link {
		width: 100%;
	}

	.uk-mapa__przyciski .wp-block-button__link {
		box-sizing: border-box;
		text-align: center;
	}
}

@media (prefers-reduced-motion: reduce) {
	.uk-mapa__okno img {
		transition: none;
	}
}

/* Formularz „Zapytaj o termin” – a white card, readable on light and dark sections. */
.uk-form {
	--uk-gold-dark: #9a5f1d;
	background: #ffffff;
	color: #1c1410;
	border-radius: 16px;
	border-top: 3px solid var(--wp--preset--color--gold);
	box-shadow: 0 12px 30px rgba(60, 35, 15, 0.12);
	padding: clamp(1.25rem, 4vw, 2.25rem);
	scroll-margin-top: 120px;
}

.uk-form form {
	display: grid;
	gap: 1.25rem;
}

.uk-form p {
	margin: 0;
}

.uk-form__ukryte {
	position: absolute !important;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.uk-form fieldset {
	border: 0;
	margin: 0;
	padding: 0;
	min-width: 0;
}

.uk-form legend,
.uk-form__pole label {
	display: block;
	font-weight: 700;
	font-size: 0.9375rem;
	margin-bottom: 0.4rem;
	color: #1c1410;
}

.uk-form__rodzaj {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.uk-form__rodzaj legend {
	width: 100%;
}

.uk-form__opcja {
	position: relative;
	cursor: pointer;
}

.uk-form__opcja input {
	position: absolute;
	opacity: 0;
	inset: 0;
	cursor: pointer;
}

.uk-form__opcja span {
	display: inline-block;
	padding: 0.55rem 1rem;
	border: 1.5px solid #d8c9b6;
	border-radius: 999px;
	font-size: 0.9375rem;
	transition: background 0.2s, border-color 0.2s;
}

.uk-form__opcja input:checked + span {
	background: var(--wp--preset--color--wine);
	border-color: var(--wp--preset--color--wine);
	color: #ffffff;
}

.uk-form__opcja input:focus-visible + span {
	outline: 2px solid var(--uk-gold-dark);
	outline-offset: 2px;
}

.uk-form__siatka {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem 1.25rem;
}

.uk-form__pole--szeroke {
	grid-column: 1 / -1;
}

.uk-form input[type="text"],
.uk-form input[type="tel"],
.uk-form input[type="email"],
.uk-form input[type="date"],
.uk-form input[type="number"],
.uk-form textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 0.75rem 0.9rem;
	border: 1.5px solid #d8c9b6;
	border-radius: 10px;
	background: #fffdf9;
	color: #1c1410;
	font: inherit;
	font-size: 1rem;
	min-height: 48px;
}

.uk-form textarea {
	resize: vertical;
}

.uk-form input:focus,
.uk-form textarea:focus {
	outline: none;
	border-color: var(--uk-gold-dark);
	box-shadow: 0 0 0 3px rgba(154, 95, 29, 0.18);
}

.uk-form__wym {
	color: var(--wp--preset--color--wine);
}

.uk-form__opc {
	font-weight: 400;
	color: #5e4f43;
}

.uk-form__zgoda label {
	display: flex;
	gap: 0.6rem;
	align-items: flex-start;
	font-size: 0.875rem;
	color: #5e4f43;
	cursor: pointer;
}

.uk-form__zgoda input {
	width: 20px;
	height: 20px;
	margin: 0.1rem 0 0;
	flex: none;
	accent-color: var(--wp--preset--color--wine);
}

.uk-form__zgoda a,
.uk-form__albo a {
	color: var(--uk-gold-dark);
}

.uk-form__wyslij {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem 1.5rem;
}

.uk-form__wyslij button {
	border: 0;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
}

.uk-form__albo {
	color: #5e4f43;
}

.uk-form__albo a {
	font-weight: 700;
	white-space: nowrap;
}

.uk-form__komunikat {
	padding: 1rem 1.25rem;
	border-radius: 10px;
	margin-bottom: 1.25rem !important;
	font-weight: 600;
}

.uk-form__komunikat--ok {
	background: #e8f3e6;
	color: #24521f;
	border-left: 4px solid #3f8a35;
}

.uk-form__komunikat--blad {
	background: #fbeaea;
	color: #7a1f1f;
	border-left: 4px solid #b32d2e;
}

@media (max-width: 600px) {
	.uk-form__siatka {
		grid-template-columns: minmax(0, 1fr);
	}

	.uk-form__wyslij .wp-block-button,
	.uk-form__wyslij button {
		width: 100%;
	}
}

/* Opinie gości: Google rating card + reviews chosen by the owner. */
.uk-opinie {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem;
	align-items: stretch;
}

@media (min-width: 1100px) {
	.uk-opinie:not(.uk-opinie--sama-ocena) {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

/* Highlighted reviews section (home page): wine with a soft gold glow and a large faint quote mark. */
.uk-sekcja-opinie {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	background-image:
		radial-gradient(circle at 12% 18%, rgba(232, 169, 79, 0.22), transparent 42%),
		radial-gradient(circle at 88% 85%, rgba(232, 169, 79, 0.16), transparent 45%);
}

.uk-sekcja-opinie::before {
	content: "„";
	position: absolute;
	z-index: -1;
	right: 4%;
	top: -0.15em;
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(14rem, 30vw, 26rem);
	line-height: 1;
	color: rgba(232, 169, 79, 0.1);
	pointer-events: none;
}

.uk-sekcja-opinie .uk-opinie__ocena,
.uk-sekcja-opinie .uk-opinie__karta {
	box-shadow: 0 18px 40px rgba(20, 5, 5, 0.35);
}

.uk-opinie--sama-ocena {
	grid-template-columns: minmax(0, 420px);
	justify-content: center;
}

.uk-opinie__ocena,
.uk-opinie__karta {
	--uk-gold-dark: #9a5f1d;
	background: #ffffff;
	border-radius: 16px;
	box-shadow: 0 12px 30px rgba(60, 35, 15, 0.12);
	padding: 1.75rem 1.5rem;
	margin: 0;
	color: #1c1410;
}

.uk-opinie__ocena {
	border-top: 3px solid var(--wp--preset--color--gold);
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
}

.uk-opinie__liczba {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 3.5rem;
	line-height: 1;
	margin: 0;
	color: #1c1410;
}

.uk-opinie__gwiazdki {
	position: relative;
	display: inline-block;
	font-size: 1.6rem;
	letter-spacing: 0.15em;
	line-height: 1;
	color: #e3d6c5;
}

.uk-opinie__gwiazdki::before {
	content: "★★★★★";
	position: absolute;
	inset: 0 auto 0 0;
	width: var(--uk-ocena, 100%);
	overflow: hidden;
	color: var(--wp--preset--color--gold);
	white-space: nowrap;
}

.uk-opinie__opis {
	margin: 0 0 0.5rem;
	color: #5e4f43;
}

.uk-opinie .wp-block-button.is-style-obrys .wp-block-button__link {
	color: var(--uk-gold-dark);
	border-color: currentColor;
}

.uk-opinie .wp-block-button.is-style-obrys .wp-block-button__link:hover {
	background: rgba(154, 95, 29, 0.1);
	color: var(--uk-gold-dark);
}

.uk-opinie__karta {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.uk-opinie__cudzyslow {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 3.5rem;
	line-height: 0.6;
	margin: -1.5rem 0 -0.25rem;
	color: var(--wp--preset--color--gold);
}

.uk-opinie__karta blockquote {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 1.0625rem;
	line-height: 1.6;
	flex: 1;
}

.uk-opinie__karta blockquote p {
	margin: 0;
}

.uk-opinie__karta figcaption {
	font-weight: 700;
	color: #1c1410;
}

.uk-opinie__karta figcaption span {
	font-weight: 400;
	color: #5e4f43;
}

@media (max-width: 600px) {
	.uk-opinie {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Oferta (tiles of sub-pages) */
.uk-oferta {
	display: grid;
	grid-template-columns: repeat(var(--uk-cols, 3), minmax(0, 1fr));
	gap: clamp(1rem, 2.5vw, 1.75rem);
}

@media (max-width: 900px) {
	.uk-oferta {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	.uk-oferta {
		grid-template-columns: 1fr;
	}
}

.uk-tile {
	position: relative;
	display: flex;
	flex-direction: column;
	background: var(--wp--preset--color--surface);
	border-radius: 16px;
	overflow: hidden;
	text-decoration: none !important;
	color: inherit;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.uk-tile:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
}

.uk-tile__img {
	position: relative;
	display: block;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: #221812 center / cover no-repeat;
}

.uk-tile__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* "od 250 zł" on the tile photo */
.uk-tile__cena {
	position: absolute;
	left: 0.75rem;
	bottom: 0.75rem;
	padding: 0.3rem 0.75rem;
	border-radius: 999px;
	background: var(--wp--preset--color--gold);
	color: #1c1410;
	font-weight: 700;
	font-size: 0.875rem;
	line-height: 1.3;
	box-shadow: 0 4px 12px rgba(30, 15, 5, 0.3);
}

.uk-tile__img--contain img {
	object-fit: contain;
	padding: 1rem;
	box-sizing: border-box;
}

.uk-tile__body {
	padding: 1.1rem 1.25rem 1.35rem;
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	flex: 1;
}

.uk-tile__title {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.25rem;
	color: #ffffff;
	margin: 0;
	font-weight: 500;
}

.uk-tile__text {
	color: var(--wp--preset--color--muted);
	font-size: 0.9375rem;
	margin: 0;
	line-height: 1.55;
}

.uk-tile__more {
	margin-top: auto;
	padding-top: 0.5rem;
	color: var(--wp--preset--color--gold);
	font-weight: 700;
	font-size: 0.875rem;
	letter-spacing: 0.04em;
}

/* Najnowsze aktualności */
.uk-news {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 380px));
	justify-content: center;
	gap: clamp(1rem, 2.5vw, 1.75rem);
}

.uk-news__date {
	color: var(--wp--preset--color--gold);
	font-size: 0.8125rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-weight: 700;
}

.uk-news__empty {
	color: var(--wp--preset--color--muted);
	text-align: center;
}

/* Pas "Zadzwoń" */
.uk-cta {
	border-radius: 20px;
	padding: clamp(1.75rem, 5vw, 3rem);
	background: linear-gradient(120deg, #5a1e1e 0%, #2b1d14 100%);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
}

.uk-cta__title {
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(1.6rem, 3vw, 2.25rem);
	color: #ffffff;
	margin: 0;
	font-weight: 400;
}

.uk-cta__text {
	color: #e9dccd;
	margin: 0.4rem 0 0;
}

.uk-cta > div:first-child {
	flex: 1 1 280px;
}

.uk-cta .wp-block-buttons {
	flex: 0 1 auto;
	flex-wrap: wrap;
}

.uk-cta__phone {
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	font-size: clamp(1.25rem, 2.5vw, 1.6rem) !important;
}

/* ---------------------------------------------------------------- content helpers */

/* Photo on top of a card, edge to edge */
.is-style-karta > .wp-block-image.uk-karta-foto:first-child {
	margin: calc(-1 * var(--uk-card-pad, 1.75rem)) calc(-1 * var(--uk-card-pad, 1.75rem)) 1.25rem;
}

.wp-block-image.uk-karta-foto img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	display: block;
}

.is-style-karta > .wp-block-image.uk-karta-foto:first-child img {
	border-radius: 13px 13px 0 0;
}

.wp-block-image.uk-foto-contain img {
	max-height: 460px;
	width: auto;
	object-fit: contain;
	filter: drop-shadow(0 18px 30px rgba(0, 0, 0, 0.45));
}

.uk-hero-motto {
	font-family: var(--wp--preset--font-family--heading);
	color: var(--wp--preset--color--gold-light);
	margin-top: 0 !important;
}

.uk-cena {
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--x-large);
	color: var(--wp--preset--color--gold);
	margin: 0.25rem 0 1rem;
}

.uk-konto {
	font-size: 1.15rem;
	letter-spacing: 0.04em;
	color: var(--wp--preset--color--gold-light);
	word-break: break-word;
}

.wp-block-columns.uk-stack > .wp-block-column {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--40);
}

.wp-block-columns.uk-stack > .wp-block-column > * {
	margin: 0;
}

.wp-block-columns.uk-stack > .wp-block-column > .is-style-karta:last-child {
	flex: 1;
}


.uk-section-title {
	text-align: center;
	max-width: 760px;
	margin-left: auto !important;
	margin-right: auto !important;
}

.wp-block-columns.uk-equal > .wp-block-column {
	display: flex;
	flex-direction: column;
}

.wp-block-columns.uk-equal > .wp-block-column > .wp-block-group.is-style-karta {
	flex: 1;
}

/* Imported tables (old price lists outside the Cennik block) */
.wp-block-table td,
.wp-block-table th {
	border-color: var(--wp--preset--color--line);
}

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

.uk-pfr {
	background: #e9e4dc;
}

.uk-pfr img {
	max-width: 900px;
	width: 100%;
	border-radius: 0;
}

.uk-footer {
	background: #0a0807;
	border-top: 1px solid var(--wp--preset--color--line);
	color: var(--wp--preset--color--muted);
	font-size: 0.9375rem;
}

.uk-footer h2 {
	font-size: 1.125rem;
	color: var(--wp--preset--color--gold);
	letter-spacing: 0.08em;
	text-transform: uppercase;
	font-weight: 600;
}

.uk-footer a {
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.uk-footer a:hover {
	color: var(--wp--preset--color--gold);
}

.uk-footer ul {
	list-style: none;
	padding: 0;
}

.uk-footer li + li {
	margin-top: 0.45em;
}

.uk-footer-bottom {
	font-size: 0.8125rem;
	color: var(--wp--preset--color--muted);
	border-top: 1px solid var(--wp--preset--color--line);
}

.uk-footer-bottom a {
	color: var(--wp--preset--color--gold);
}

/* Sticky call bar on phones */
.uk-callbar {
	display: none;
}

@media (max-width: 781px) {
	.uk-callbar {
		display: block;
		position: fixed;
		left: 0.75rem;
		right: 0.75rem;
		bottom: calc(0.75rem + env(safe-area-inset-bottom));
		z-index: 200;
		margin: 0 !important;
	}

	.uk-callbar a {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 0.5rem;
		padding: 0.95rem 1rem;
		border-radius: 999px;
		background: var(--wp--preset--color--gold);
		color: #140e0a;
		font-weight: 800;
		letter-spacing: 0.04em;
		text-decoration: none;
		box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
	}

	.wp-site-blocks {
		padding-bottom: 4.5rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.uk-tile {
		transition: none;
	}
}

/* Long ingredient lists in two columns on wider screens */
@media (min-width: 600px) {
	.wp-block-list.uk-dwie-kolumny {
		columns: 2;
		column-gap: 2rem;
	}

	.wp-block-list.uk-dwie-kolumny li {
		break-inside: avoid;
	}
}

/* ---------------------------------------------------------------- offer & menu pages */

.wp-block-image.uk-foto img {
	width: 100%;
	border-radius: 18px;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

@media (min-width: 782px) {
	.wp-block-image.uk-sticky {
		position: sticky;
		top: 110px;
	}

	.wp-block-column:has(> .uk-sticky) {
		align-self: stretch;
	}
}

.uk-cena__nota {
	display: block;
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.95rem;
	font-weight: 400;
	color: var(--wp--preset--color--muted);
	letter-spacing: 0;
}

.uk-menu .uk-menu__opis {
	color: var(--wp--preset--color--muted);
}

.uk-menu .uk-menu__danie {
	font-size: 0.85rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gold);
	margin-top: 1.6rem;
	margin-bottom: 0.4rem;
	padding-bottom: 0.4rem;
	border-bottom: 1px solid var(--wp--preset--color--line);
}

.uk-menu .wp-block-list {
	margin-top: 0.5rem;
}

@media (min-width: 900px) {
	.uk-menu .wp-block-list {
		columns: 2;
		column-gap: 2rem;
	}

	.uk-menu .wp-block-list li {
		break-inside: avoid;
	}

	.wp-block-columns.uk-equal .uk-menu .wp-block-list {
		columns: 1;
	}
}

/* Price lists with long descriptions (e.g. cold platters): let the text column breathe */
.uk-cennik table {
	table-layout: auto !important;
}

.uk-cennik td:first-child,
.uk-cennik th:first-child {
	white-space: nowrap;
}

.uk-cennik td:last-child {
	white-space: nowrap;
}

@media (max-width: 600px) {
	.uk-cennik td:first-child,
	.uk-cennik th:first-child,
	.uk-cennik td:last-child {
		white-space: normal;
	}
}

/* Price list with a description column (class "uk-cennik--opis", e.g. cold platter versions) */
.uk-cennik.uk-cennik--opis td:nth-child(2) {
	white-space: normal;
	text-align: left;
	line-height: 1.5;
}

.uk-cennik.uk-cennik--opis th:first-child,
.uk-cennik.uk-cennik--opis td:first-child {
	width: auto;
}

.uk-icon {
	flex: none;
	width: 1.15em;
	height: 1.15em;
}

/* ---------------------------------------------------------------- Termin zamówień */

.uk-termin {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	padding: 1.25rem 1.5rem;
	border-radius: 16px;
	background: rgba(13, 11, 10, 0.55);
	border: 1px solid rgba(232, 169, 79, 0.45);
	max-width: 640px;
}

.has-text-align-center .uk-termin,
.uk-termin.aligncenter {
	margin-left: auto;
	margin-right: auto;
}

.uk-termin__status {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	margin: 0;
	font-weight: 700;
	font-size: 0.85rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gold-light);
}

.uk-termin__status span {
	width: 0.6rem;
	height: 0.6rem;
	border-radius: 50%;
	background: #6fcf7f;
	box-shadow: 0 0 0 4px rgba(111, 207, 127, 0.2);
}

.uk-termin--wkrotce .uk-termin__status span {
	background: var(--wp--preset--color--gold);
	box-shadow: 0 0 0 4px rgba(232, 169, 79, 0.25);
	animation: uk-puls 1.6s ease-in-out infinite;
}

.uk-termin--po .uk-termin__status span {
	background: #a89b8d;
	box-shadow: none;
}

@keyframes uk-puls {
	50% { box-shadow: 0 0 0 8px rgba(232, 169, 79, 0); }
}

.uk-termin__daty {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem 2.5rem;
}

.uk-termin__pole {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
}

.uk-termin__etykieta {
	font-size: 0.85rem;
	color: var(--wp--preset--color--muted);
}

.uk-termin__data {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.5rem;
	color: #ffffff;
}

.uk-termin__godziny {
	color: var(--wp--preset--color--gold-light);
}

.uk-termin--po .uk-termin__data {
	text-decoration: line-through;
	text-decoration-color: rgba(255, 255, 255, 0.35);
	color: var(--wp--preset--color--muted);
}

.uk-termin__po {
	margin: 0;
	color: var(--wp--preset--color--ink);
}

.has-gold-background-color .uk-termin {
	background: rgba(28, 20, 16, 0.92);
}

/* Seasonal hero ornament */
.wp-block-image.uk-ornament img {
	max-width: min(420px, 80vw);
	height: auto;
	opacity: 0.9;
}

.has-gold-background-color .wp-block-image.uk-ornament img {
	filter: brightness(0) saturate(100%) invert(9%) sepia(16%) saturate(1400%) hue-rotate(345deg);
	opacity: 0.85;
}

@media (prefers-reduced-motion: reduce) {
	.uk-termin__status span {
		animation: none !important;
	}
}

/* Policy pages: table of contents */
.uk-spis {
	counter-reset: none;
}

.uk-spis a {
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.uk-spis a:hover {
	color: var(--wp--preset--color--gold);
}

.uk-dokument h2 {
	scroll-margin-top: 110px;
	padding-top: 0.5rem;
	border-top: 1px solid var(--wp--preset--color--line);
	margin-top: var(--wp--preset--spacing--60);
}

/* Kicker and lead stay readable on the gold band */
.has-gold-background-color .is-style-nadtytul {
	color: #5a1e1e !important;
}

.has-gold-background-color .is-style-wstep,
.has-gold-background-color .uk-section-title {
	color: #2a1c12 !important;
}

.uk-dok-wersja {
	color: var(--wp--preset--color--muted);
	font-size: 0.95rem;
	margin-top: 0 !important;
}

.uk-dokument .uk-dok-pod {
	color: var(--wp--preset--color--gold-light);
	margin-top: 1.75rem;
}

.uk-dokument > .is-style-karta {
	height: auto;
}

.uk-dokument .is-style-karta {
	margin-top: var(--wp--preset--spacing--40);
	height: auto;
}

/* ---------------------------------------------------------------- Slider (blocks/slider) */

.uk-slider {
	position: relative;
	overflow: hidden;
}

.uk-slider__track > * {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	width: 100%;
	max-width: none !important;
}

.uk-slider.is-ready .uk-slider__track {
	display: grid;
}

/* Slides move in from the side; the JS sets --uk-x (start / exit side) for each change. */
.uk-slider.is-ready .uk-slide {
	grid-area: 1 / 1;
	visibility: hidden;
	transform: translateX(var(--uk-x, 100%));
	transition: transform 0.8s cubic-bezier(0.7, 0, 0.25, 1), visibility 0s linear 0.8s;
}

.uk-slider.is-ready .uk-slide.is-active {
	visibility: visible;
	transform: none;
	z-index: 1;
	transition: transform 0.8s cubic-bezier(0.7, 0, 0.25, 1), visibility 0s;
}

/* slow zoom of the active photo */
.uk-slider.is-ready .uk-slide .wp-block-cover__image-background {
	transform: scale(1.08);
	transition: transform 5s ease-out;
}

.uk-slider.is-ready .uk-slide.is-active .wp-block-cover__image-background {
	transform: scale(1);
}

/* text slides in from the right, a moment after the photo */
.uk-slider.is-ready .uk-slide .wp-block-cover__inner-container {
	transform: translateX(80px);
	opacity: 0;
	transition: transform 0.7s cubic-bezier(0.2, 0.7, 0.2, 1) 0.4s, opacity 0.7s ease 0.4s;
}

.uk-slider.is-ready .uk-slide.is-active .wp-block-cover__inner-container {
	transform: none;
	opacity: 1;
}

.uk-slider__nav {
	position: absolute;
	z-index: 5;
	left: 50%;
	bottom: clamp(1rem, 3vh, 1.75rem);
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.35rem 0.5rem;
	border-radius: 999px;
	background: rgba(13, 11, 10, 0.55);
	backdrop-filter: blur(6px);
	border: 1px solid rgba(232, 169, 79, 0.25);
}

.uk-slider:not(.is-ready) .uk-slider__nav {
	display: none;
}

.uk-slider__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: var(--wp--preset--color--cream);
	cursor: pointer;
}

.uk-slider__btn:hover,
.uk-slider__btn:focus-visible {
	background: rgba(232, 169, 79, 0.2);
	color: var(--wp--preset--color--gold);
}

.uk-slider__btn:focus-visible,
.uk-slider__dot:focus-visible {
	outline: 2px solid var(--wp--preset--color--gold);
	outline-offset: 2px;
}

.uk-slider__btn--pauza .uk-ikona-graj,
.uk-slider__btn--pauza[data-pauza="1"] .uk-ikona-pauza {
	display: none;
}

.uk-slider__btn--pauza[data-pauza="1"] .uk-ikona-graj {
	display: block;
}

.uk-slider__dots {
	display: flex;
	gap: 0.45rem;
	padding: 0 0.25rem;
}

.uk-slider__dot {
	width: 10px;
	height: 10px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgba(246, 239, 227, 0.45);
	cursor: pointer;
	transition: width 0.3s, background-color 0.3s;
}

.uk-slider__dot[aria-current="true"] {
	width: 28px;
	background: var(--wp--preset--color--gold);
}

@media (max-width: 600px) {
	.uk-slider__btn--prev,
	.uk-slider__btn--next {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.uk-slider.is-ready .uk-slide,
	.uk-slider.is-ready .uk-slide .wp-block-cover__image-background,
	.uk-slider.is-ready .uk-slide .wp-block-cover__inner-container {
		transition: none !important;
		transform: none !important;
	}
}

/* Editor: slides one under another, with a frame */
.uk-slider-edytor {
	outline: 1px dashed rgba(232, 169, 79, 0.5);
	outline-offset: -1px;
}

.uk-slider-edytor__info {
	margin: 0 !important;
	padding: 0.6rem 1rem;
	font-size: 13px;
	background: #2b1d14;
	color: #f3cf98;
}

.uk-slider-edytor__slajdy > .wp-block-cover + .wp-block-cover {
	margin-top: 6px !important;
}

/* Photo inside a slide (e.g. golonka on the Barbórka slide) */
.wp-block-image.uk-foto-slajd img {
	width: 100%;
	max-height: 62vh;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	border-radius: 20px;
	box-shadow: 0 24px 50px rgba(0, 0, 0, 0.55);
	border: 3px solid rgba(232, 169, 79, 0.6);
}

@media (max-width: 781px) {
	.uk-slajd-kolumny > .wp-block-column:has(.uk-foto-slajd) {
		display: none;
	}
}

/* ---------------------------------------------------------------- Offer page template (patterns/oferta-*.php) */

.wp-block-image.uk-foto--hero img {
	aspect-ratio: 1 / 1;
	max-height: 560px;
	border: 3px solid rgba(232, 169, 79, 0.55);
}

.uk-pas-zdjec {
	background: var(--wp--preset--color--base);
}

.uk-pas-zdjec .wp-block-gallery.has-nested-images {
	gap: 10px;
}

.uk-pas-zdjec .wp-block-gallery.has-nested-images figure.wp-block-image img {
	aspect-ratio: 4 / 3;
	border-radius: 14px;
	transition: transform 0.4s ease;
}

.uk-pas-zdjec .wp-block-gallery.has-nested-images figure.wp-block-image:hover img {
	transform: scale(1.03);
}

@media (max-width: 600px) {
	.uk-pas-zdjec .wp-block-gallery.has-nested-images figure.wp-block-image {
		width: calc(50% - 5px) !important;
	}
}

.wp-block-details {
	border-bottom: 1px solid var(--wp--preset--color--line);
	padding: 0.9rem 0;
}

.wp-block-details summary {
	cursor: pointer;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.15rem;
	color: var(--wp--preset--color--cream);
}

.wp-block-details[open] summary {
	color: var(--wp--preset--color--gold);
}


/* ---------------------------------------------------------------- aesthetics pass (17.10.2026) */

/* Cover text set to "left" lines up with the page content (logo, sections), not with the screen edge */
.wp-block-cover.has-custom-content-position.is-position-center-left > .wp-block-cover__inner-container,
.wp-block-cover.has-custom-content-position.is-position-top-left > .wp-block-cover__inner-container,
.wp-block-cover.has-custom-content-position.is-position-bottom-left > .wp-block-cover__inner-container {
	width: 100% !important;
	max-width: var(--wp--style--global--wide-size, 1200px) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: var(--wp--style--root--padding-left, 1.25rem);
	padding-right: var(--wp--style--root--padding-right, 1.25rem);
	box-sizing: border-box;
}

.wp-block-cover.has-custom-content-position.is-position-center-left > .wp-block-cover__inner-container > *,
.wp-block-cover.has-custom-content-position.is-position-center-left > .wp-block-cover__inner-container > .wp-block-group.is-layout-constrained > * {
	margin-left: 0 !important;
}

/* "Zadzwoń" band adapts to the space it gets (full width or a column) */
.uk-cta {
	container-type: inline-size;
	align-items: center;
}

.uk-cta .wp-block-buttons {
	align-items: center;
	gap: 0.75rem;
}

@container (max-width: 760px) {
	.uk-cta__phone {
		font-size: 1.25rem !important;
		padding: 0.85rem 1.5rem !important;
	}
}

@container (max-width: 560px) {
	.uk-cta > div:first-child {
		flex-basis: 100%;
	}
}

/* Footer: "Na wynos" shows the first 8 offers, the rest via "Cała oferta" */
.uk-footer .wp-block-page-list > li:nth-child(n+9) {
	display: none;
}

.uk-footer .uk-footer-wiecej a {
	color: var(--wp--preset--color--gold);
	font-weight: 700;
}

/* Lighter PFR strip between the dark sections */
.uk-pfr {
	padding-top: 0.75rem !important;
	padding-bottom: 0.75rem !important;
}

.uk-pfr img {
	max-height: 72px;
	width: auto;
	max-width: 100% !important;
	height: auto;
	object-fit: contain;
}

@media (min-width: 1300px) {
	.wp-block-cover.has-custom-content-position.is-position-center-left > .wp-block-cover__inner-container {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}

/* Phones: offer tiles two per row – photo and name only */
@media (max-width: 600px) {
	.uk-oferta {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 0.75rem !important;
	}

	.uk-oferta .uk-tile__body {
		padding: 0.7rem 0.8rem 0.85rem;
	}

	.uk-oferta .uk-tile__title {
		font-size: 1rem;
		line-height: 1.25;
	}

	.uk-oferta .uk-tile__text,
	.uk-oferta .uk-tile__more {
		display: none;
	}
}

/* ---------------------------------------------------------------- sub-pages pass (18.10.2026) */

/* Full-width sections sit edge to edge – no dark gap between them */
.wp-block-post-content > .alignfull {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

/* "Na tej stronie" quick links in the page header */
.uk-skroty {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	margin-top: var(--wp--preset--spacing--40) !important;
	font-size: 0.9rem;
}

.uk-skroty__tytul {
	color: var(--wp--preset--color--muted);
	margin-right: 0.25rem;
}

.uk-skroty a {
	display: inline-block;
	padding: 0.35rem 0.85rem;
	border: 1px solid rgba(232, 169, 79, 0.45);
	border-radius: 999px;
	color: var(--wp--preset--color--cream);
	text-decoration: none;
	transition: background-color 0.2s, border-color 0.2s, color 0.2s;
}

.uk-skroty a:hover,
.uk-skroty a:focus-visible {
	background: rgba(232, 169, 79, 0.15);
	border-color: var(--wp--preset--color--gold);
	color: var(--wp--preset--color--gold-light);
}

/* Jump targets are not hidden under the sticky header */
.wp-block-post-content [id] {
	scroll-margin-top: 110px;
}

/* Gallery captions (e.g. cold platter versions) */
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption.wp-element-caption {
	position: static;
	background: none;
	color: var(--wp--preset--color--gold-light);
	font-size: 0.95rem;
	text-align: center;
	padding: 0.6rem 0 0;
	max-height: none;
	overflow: visible;
}

.wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption) {
	flex-direction: column;
}

.wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption)::before {
	display: none;
}

.wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption) img {
	height: auto !important;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	flex: 0 0 auto !important;
	border-radius: 14px;
}

/* ---------------------------------------------------------------- light (cream) sections
   Every other section on offer pages is light, so long pages get rhythm and
   the cut-out dish photos stand out. Darker gold keeps labels readable. */

.has-cream-background-color {
	--uk-gold-dark: #9a5f1d;
	color: var(--wp--preset--color--dark-ink);
	background-image: radial-gradient(circle at 15% 20%, rgba(232, 169, 79, 0.10), transparent 45%);
}

.has-cream-background-color :where(h1, h2, h3, h4, h5) {
	color: #1c1410;
}

.has-cream-background-color p.is-style-nadtytul,
.has-cream-background-color .uk-cena,
.has-cream-background-color .uk-menu__danie {
	color: var(--uk-gold-dark) !important;
}

.has-cream-background-color ul.is-style-zlote-punkty li::marker {
	color: var(--uk-gold-dark);
}

.has-cream-background-color ul.is-style-zlote-punkty li + li,
.has-cream-background-color .wp-block-separator {
	border-color: rgba(28, 20, 16, 0.12);
}

.has-cream-background-color a:not(.wp-block-button__link) {
	color: #7a3b14;
}

.has-cream-background-color .uk-cena__nota {
	color: #6b5a4c;
}

/* Cards and price lists become white cards with a soft shadow. */
.has-cream-background-color .uk-cennik,
.has-cream-background-color .wp-block-group.is-style-karta {
	background: #ffffff;
	box-shadow: 0 14px 34px rgba(60, 35, 15, 0.12);
}

.has-cream-background-color .uk-cennik :where(td, th, p, li),
.has-cream-background-color .is-style-karta :where(p, li, td, th) {
	color: var(--wp--preset--color--dark-ink);
}

.has-cream-background-color .uk-cennik__title,
.has-cream-background-color .uk-cennik thead th,
.has-cream-background-color .is-style-karta :where(h3, h4) {
	color: var(--uk-gold-dark) !important;
}

.has-cream-background-color .uk-cennik :where(th, td) {
	border-bottom-color: rgba(28, 20, 16, 0.10);
}

.has-cream-background-color .uk-cennik thead th {
	border-bottom-color: var(--uk-gold-dark);
}

.has-cream-background-color .uk-cennik tbody tr:nth-child(even) td {
	background: rgba(154, 95, 29, 0.05);
}

.has-cream-background-color .uk-cennik tbody td:last-child {
	color: #1c1410;
}

.has-cream-background-color .wp-block-group.is-style-ramka {
	background: rgba(255, 255, 255, 0.7);
	border-left-color: var(--uk-gold-dark);
}

/* Buttons: the gold "Zamów" stays, with a shadow so it does not melt into the cream. */
.has-cream-background-color .wp-block-button:not(.is-style-obrys) .wp-block-button__link {
	box-shadow: 0 6px 16px rgba(154, 95, 29, 0.28);
}

.has-cream-background-color .wp-block-button.is-style-obrys .wp-block-button__link {
	color: #1c1410;
	border-color: rgba(28, 20, 16, 0.55);
}

.has-cream-background-color .wp-block-button.is-style-obrys .wp-block-button__link:hover {
	background: rgba(28, 20, 16, 0.06);
	color: #1c1410;
}

/* Cut-out photos: a lighter shadow; regular photos keep the rounded frame. */
.has-cream-background-color .wp-block-image.uk-foto-contain img {
	filter: drop-shadow(0 18px 24px rgba(60, 35, 15, 0.28));
}

.has-cream-background-color .wp-block-image.uk-foto img {
	box-shadow: 0 16px 36px rgba(60, 35, 15, 0.22);
}

.has-cream-background-color .uk-cennik thead {
	border-bottom: 2px solid var(--uk-gold-dark);
}

/* ---------------------------------------------------------------- Animations
   "uk-anim" on <html> (set in <head>, not with "reduce motion"). The first section enters on load (CSS);
   further content gets data-uk-anim="up|left|right|zoom|kb" from assets/js/reveal.js while scrolling. */

@keyframes uk-wejscie-gora {
	from { opacity: 0; transform: translateY(24px); }
	to { opacity: 1; transform: none; }
}

@keyframes uk-wejscie-prawo {
	from { opacity: 0; transform: translateX(56px); }
	to { opacity: 1; transform: none; }
}

@keyframes uk-pinezka {
	0% { opacity: 0; transform: translate(-50%, -190%); }
	60% { opacity: 1; transform: translate(-50%, -92%); }
	80% { transform: translate(-50%, -106%); }
	100% { opacity: 1; transform: translate(-50%, -100%); }
}

/* First section: title band (page.html) or the first section of the page content. */
.uk-anim main > .wp-block-group:first-child > *,
.uk-anim .wp-block-post-content > .wp-block-group:first-child > :not(.wp-block-columns),
.uk-anim .wp-block-post-content > .wp-block-group:first-child > .wp-block-columns > .wp-block-column:first-child > *,
.uk-anim .wp-block-post-content > .wp-block-cover:first-child .wp-block-cover__inner-container > * {
	animation: uk-wejscie-gora 0.8s cubic-bezier(0.2, 0.7, 0.2, 1) backwards;
}

.uk-anim .wp-block-post-content > .wp-block-group:first-child > .wp-block-columns > .wp-block-column:not(:first-child) {
	animation: uk-wejscie-prawo 1s cubic-bezier(0.2, 0.7, 0.2, 1) 0.35s backwards;
}

@media (max-width: 781px) {
	.uk-anim .wp-block-post-content > .wp-block-group:first-child > .wp-block-columns > .wp-block-column:not(:first-child) {
		animation-name: uk-wejscie-gora;
	}
}

.uk-anim main > .wp-block-group:first-child > :nth-child(2),
.uk-anim .wp-block-post-content > :first-child > :nth-child(2),
.uk-anim .wp-block-post-content > :first-child .wp-block-column:first-child > :nth-child(2),
.uk-anim .wp-block-post-content > :first-child .wp-block-cover__inner-container > :nth-child(2) {
	animation-delay: 0.12s;
}

.uk-anim main > .wp-block-group:first-child > :nth-child(3),
.uk-anim .wp-block-post-content > :first-child > :nth-child(3),
.uk-anim .wp-block-post-content > :first-child .wp-block-column:first-child > :nth-child(3),
.uk-anim .wp-block-post-content > :first-child .wp-block-cover__inner-container > :nth-child(3) {
	animation-delay: 0.24s;
}

.uk-anim main > .wp-block-group:first-child > :nth-child(n+4),
.uk-anim .wp-block-post-content > :first-child > :nth-child(n+4),
.uk-anim .wp-block-post-content > :first-child .wp-block-column:first-child > :nth-child(n+4),
.uk-anim .wp-block-post-content > :first-child .wp-block-cover__inner-container > :nth-child(n+4) {
	animation-delay: 0.36s;
}

.uk-anim .uk-mapa__pin {
	animation: uk-pinezka 0.9s cubic-bezier(0.3, 0.7, 0.4, 1) 0.9s backwards;
}

/* While scrolling */
.uk-anim [data-uk-anim] {
	opacity: 0;
	transition: opacity 0.8s ease, transform 0.9s cubic-bezier(0.2, 0.7, 0.2, 1);
	transition-delay: var(--uk-d, 0ms);
}

.uk-anim [data-uk-anim="up"] {
	transform: translateY(30px);
}

.uk-anim [data-uk-anim="left"] {
	transform: translateX(-60px);
}

.uk-anim [data-uk-anim="right"] {
	transform: translateX(60px);
}

.uk-anim [data-uk-anim="zoom"] {
	transform: scale(0.92);
}

/* Side slides and 3D turns never make the page wider than the screen. */
.uk-anim main,
.uk-anim .wp-block-post-content {
	overflow-x: clip;
}

@media (max-width: 781px) {
	.uk-anim [data-uk-anim="left"] {
		transform: translateX(-40px);
	}

	.uk-anim [data-uk-anim="right"] {
		transform: translateX(40px);
	}
}

.uk-anim [data-uk-anim].is-visible {
	opacity: 1;
	transform: none;
}

/* Photo band: stays in place, its background slowly zooms out. */
.uk-anim [data-uk-anim="kb"] {
	opacity: 1;
	overflow: hidden;
}

.uk-anim [data-uk-anim="kb"] > .wp-block-cover__image-background {
	transform: scale(1.14);
	transition: transform 2.4s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.uk-anim [data-uk-anim="kb"].is-visible > .wp-block-cover__image-background {
	transform: none;
}

/* Price badge pops in after its tile. */
.uk-anim .uk-tile[data-uk-anim] .uk-tile__cena {
	opacity: 0;
	transform: scale(0.5);
}

.uk-anim .uk-tile[data-uk-anim].is-visible .uk-tile__cena {
	opacity: 1;
	transform: none;
	transition: opacity 0.3s ease calc(var(--uk-d, 0ms) + 0.45s), transform 0.5s cubic-bezier(0.3, 1.6, 0.5, 1) calc(var(--uk-d, 0ms) + 0.45s);
}

/* News cards (home page + Aktualności): 3D flip-up, a golden curtain uncovers the photo, then the "Nowe" badge pops. */
.uk-nowe {
	position: absolute;
	z-index: 2;
	top: 0.75rem;
	left: 0.75rem;
	padding: 0.25rem 0.75rem;
	border-radius: 999px;
	background: var(--wp--preset--color--wine);
	color: #ffffff;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	line-height: 1.4;
	animation: uk-nowe-puls 2.4s ease-out infinite;
}

@keyframes uk-nowe-puls {
	0% { box-shadow: 0 0 0 0 rgba(232, 169, 79, 0.6); }
	70% { box-shadow: 0 0 0 10px rgba(232, 169, 79, 0); }
	100% { box-shadow: 0 0 0 0 rgba(232, 169, 79, 0); }
}

.wp-block-post-template .wp-block-post-featured-image {
	position: relative;
	overflow: hidden;
	border-radius: 10px;
}

@keyframes uk-kurtyna {
	0% { transform: scaleX(0); transform-origin: left; }
	50% { transform: scaleX(1); transform-origin: left; }
	50.1% { transform: scaleX(1); transform-origin: right; }
	100% { transform: scaleX(0); transform-origin: right; }
}

@keyframes uk-pokaz {
	from { opacity: 0; }
	to { opacity: 1; }
}

.uk-anim [data-uk-anim="flip"] {
	transform: perspective(900px) rotateX(-18deg) translateY(50px);
	transform-origin: 50% 100%;
}

.uk-anim [data-uk-anim="flip"] :is(.uk-tile__img, .wp-block-post-featured-image)::after {
	content: "";
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(90deg, var(--wp--preset--color--gold), var(--wp--preset--color--gold-light));
	transform: scaleX(0);
}

.uk-anim [data-uk-anim="flip"].is-visible :is(.uk-tile__img, .wp-block-post-featured-image)::after {
	animation: uk-kurtyna 1.1s cubic-bezier(0.7, 0, 0.3, 1) calc(var(--uk-d, 0ms) + 0.25s) both;
}

.uk-anim [data-uk-anim="flip"] :is(.uk-tile__img, .wp-block-post-featured-image) img {
	opacity: 0;
}

.uk-anim [data-uk-anim="flip"].is-visible :is(.uk-tile__img, .wp-block-post-featured-image) img {
	animation: uk-pokaz 0.01s linear calc(var(--uk-d, 0ms) + 0.8s) both;
}

.uk-anim [data-uk-anim="flip"] .uk-nowe {
	opacity: 0;
	transform: scale(0.4);
}

.uk-anim [data-uk-anim="flip"].is-visible .uk-nowe {
	opacity: 1;
	transform: none;
	transition: opacity 0.3s ease calc(var(--uk-d, 0ms) + 1.25s), transform 0.5s cubic-bezier(0.3, 1.6, 0.5, 1) calc(var(--uk-d, 0ms) + 1.25s);
}

/* Aktualności page: the first row is on screen at once, so it plays the same entrance on load (CSS);
   cards further down get it from reveal.js while scrolling (then they carry data-uk-anim). */
@keyframes uk-flip {
	from { opacity: 0; transform: perspective(900px) rotateX(-18deg) translateY(50px); }
	to { opacity: 1; transform: none; }
}

@keyframes uk-wyskok {
	from { opacity: 0; transform: scale(0.4); }
	to { opacity: 1; transform: none; }
}

.uk-anim .wp-block-post-template > li:nth-child(-n+3):not([data-uk-anim]) {
	--uk-start: 0s;
	transform-origin: 50% 100%;
	animation: uk-flip 0.9s cubic-bezier(0.2, 0.7, 0.2, 1) var(--uk-start) backwards;
}

.uk-anim .wp-block-post-template > li:nth-child(2):not([data-uk-anim]) {
	--uk-start: 0.15s;
}

.uk-anim .wp-block-post-template > li:nth-child(3):not([data-uk-anim]) {
	--uk-start: 0.3s;
}

.uk-anim .wp-block-post-template > li:nth-child(-n+3):not([data-uk-anim]) .wp-block-post-featured-image::after {
	content: "";
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(90deg, var(--wp--preset--color--gold), var(--wp--preset--color--gold-light));
	animation: uk-kurtyna 1.1s cubic-bezier(0.7, 0, 0.3, 1) calc(var(--uk-start) + 0.35s) both;
}

.uk-anim .wp-block-post-template > li:nth-child(-n+3):not([data-uk-anim]) .wp-block-post-featured-image img {
	animation: uk-pokaz 0.01s linear calc(var(--uk-start) + 0.9s) backwards;
}

.uk-anim .wp-block-post-template > li:nth-child(-n+3):not([data-uk-anim]) .uk-nowe {
	animation: uk-wyskok 0.5s cubic-bezier(0.3, 1.6, 0.5, 1) calc(var(--uk-start) + 1.35s) backwards, uk-nowe-puls 2.4s ease-out calc(var(--uk-start) + 1.9s) infinite;
}

/* Under the mouse: a streak of golden light runs over the photo, which zooms in a little. */
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
	.uk-news .uk-tile__img::before,
	.wp-block-post-template .wp-block-post-featured-image::before {
		content: "";
		position: absolute;
		z-index: 1;
		top: 0;
		bottom: 0;
		left: -60%;
		width: 45%;
		background: linear-gradient(100deg, transparent, rgba(255, 238, 205, 0.55), transparent);
		transform: skewX(-18deg);
		transition: transform 0.9s ease;
		pointer-events: none;
	}

	.uk-news .uk-tile:hover .uk-tile__img::before,
	.wp-block-post-template > li:hover .wp-block-post-featured-image::before {
		transform: skewX(-18deg) translateX(430%);
	}

	.uk-news .uk-tile__img img,
	.wp-block-post-template .wp-block-post-featured-image img {
		transition: transform 0.7s ease;
	}

	.uk-news .uk-tile:hover .uk-tile__img img,
	.wp-block-post-template > li:hover .wp-block-post-featured-image img {
		transform: scale(1.06);
	}
}

@media (prefers-reduced-motion: reduce) {
	.uk-nowe {
		animation: none;
	}
}

/* Enlarge-on-click (lightbox): close button and gallery arrows as dark round buttons with a gold icon,
   visible on light photos too; the cursor shows that a photo can be enlarged. */
.wp-lightbox-container img {
	cursor: zoom-in;
}

.wp-lightbox-overlay .wp-lightbox-close-button,
.wp-lightbox-overlay .wp-lightbox-navigation-button {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: rgba(13, 11, 10, 0.72) !important;
	border: 1px solid rgba(232, 169, 79, 0.45) !important;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background-color 0.2s, transform 0.2s;
}

.wp-lightbox-overlay .wp-lightbox-close-button svg,
.wp-lightbox-overlay .wp-lightbox-navigation-button svg {
	fill: var(--wp--preset--color--gold) !important;
}

.wp-lightbox-overlay .wp-lightbox-close-button:hover,
.wp-lightbox-overlay .wp-lightbox-navigation-button:hover {
	background: rgba(13, 11, 10, 0.92) !important;
	transform: scale(1.06);
}

/* Zoomed photo on a phone may use the whole screen; the buttons stay on top of it. */
.wp-lightbox-overlay .lightbox-image-container,
.wp-lightbox-overlay .lightbox-image-container figure {
	overflow: visible !important;
}

.wp-lightbox-overlay .wp-lightbox-close-button,
.wp-lightbox-overlay .wp-lightbox-navigation-button {
	z-index: 2000010; /* WordPress: background 2000000, photo 2000001 */
}

/* Phones: short hint how to zoom the enlarged photo (assets/js/lightbox-zoom.js). */
.uk-lightbox-hint {
	position: fixed;
	z-index: 100001;
	left: 50%;
	bottom: calc(24px + env(safe-area-inset-bottom, 0px));
	transform: translateX(-50%);
	max-width: calc(100vw - 40px);
	padding: 0.55rem 1rem;
	border-radius: 999px;
	background: rgba(13, 11, 10, 0.85);
	border: 1px solid rgba(232, 169, 79, 0.45);
	color: #f3e9da;
	font-size: 0.875rem;
	text-align: center;
	pointer-events: none;
	transition: opacity 0.6s ease;
}

.uk-lightbox-hint.is-hidden {
	opacity: 0;
}

.wp-lightbox-overlay .wp-lightbox-close-button:focus-visible,
.wp-lightbox-overlay .wp-lightbox-navigation-button:focus-visible {
	outline: 2px solid var(--wp--preset--color--gold);
	outline-offset: 2px;
}

/* Google rating: stars fill up while the number counts. */
.uk-opinie__gwiazdki::before {
	transition: width 1.3s cubic-bezier(0.3, 0.7, 0.3, 1) 0.2s;
}

.uk-licz .uk-opinie__gwiazdki::before {
	width: 0;
}

/* Cards lift a little under the mouse; buttons too. */
.wp-block-group.is-style-karta,
.uk-kontakt,
.uk-opinie__karta {
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

@media (hover: hover) {
	.wp-block-group.is-style-karta:hover,
	.uk-kontakt:hover,
	.uk-opinie__karta:hover {
		transform: translateY(-4px);
	}

	.wp-block-button__link {
		transition: background-color 0.2s, border-color 0.2s, color 0.2s, box-shadow 0.2s, transform 0.2s;
	}

	.wp-block-button__link:hover {
		transform: translateY(-2px);
	}
}

@media (prefers-reduced-motion: reduce) {
	.wp-block-group.is-style-karta:hover,
	.uk-kontakt:hover,
	.uk-opinie__karta:hover,
	.wp-block-button__link:hover {
		transform: none;
	}
}

@media print {
	.uk-anim [data-uk-anim],
	.uk-anim [data-uk-anim] > .wp-block-cover__image-background {
		opacity: 1 !important;
		transform: none !important;
	}
}

/* Light sections one after another (e.g. Koryta mięsne): a thin divider. */
.has-cream-background-color + .has-cream-background-color {
	border-top: 1px solid rgba(154, 95, 29, 0.18);
	margin-top: 0 !important;
}

.has-cream-background-color .uk-step-nr {
	color: var(--uk-gold-dark);
}

/* Light sections: FAQ and offer tiles. */
.has-cream-background-color .wp-block-details {
	border-bottom-color: rgba(28, 20, 16, 0.14);
}

.has-cream-background-color .wp-block-details summary {
	color: #1c1410;
}

.has-cream-background-color .wp-block-details[open] summary,
.has-cream-background-color .wp-block-details summary::after {
	color: var(--uk-gold-dark);
}

.has-cream-background-color .uk-tile {
	background: #ffffff;
	box-shadow: 0 12px 30px rgba(60, 35, 15, 0.12);
}

.has-cream-background-color .uk-tile:hover {
	box-shadow: 0 18px 40px rgba(60, 35, 15, 0.2);
}

.has-cream-background-color .uk-tile__img {
	background-color: #efe6d8;
}

.has-cream-background-color .uk-tile__title {
	color: #1c1410;
}

.has-cream-background-color .uk-tile__text {
	color: #5e4f43;
}

.has-cream-background-color .uk-tile__more {
	color: var(--uk-gold-dark);
}

.has-cream-background-color p.is-style-wstep,
.has-cream-background-color .uk-section-title,
.has-cream-background-color .uk-menu__opis {
	color: #3d3027;
}

/* Small line icons on cards (e.g. salads on Zimne płyty), tinted dark gold. */
.wp-block-image.uk-karta-ikona {
	margin: 0 0 0.25rem;
}

.wp-block-image.uk-karta-ikona img {
	width: 72px !important;
	height: 72px !important;
	aspect-ratio: auto !important;
	object-fit: contain;
	border-radius: 0 !important;
	box-shadow: none !important;
	filter: invert(39%) sepia(63%) saturate(560%) hue-rotate(354deg) brightness(88%);
}

.has-cream-background-color .wp-block-gallery figcaption.wp-element-caption,
.has-cream-background-color .wp-block-image figcaption.wp-element-caption {
	color: #3d3027 !important;
	text-shadow: none;
	background: none;
}

/* Gold text (e.g. post date) on light sections: darker gold for contrast. */
.has-cream-background-color .has-gold-color,
.has-cream-background-color .has-gold-light-color,
.has-cream-background-color .uk-konto {
	color: var(--uk-gold-dark) !important;
}

/* Light sections: contact cards become white, news dates and document sub-headings darker. */
.has-cream-background-color .uk-kontakt {
	background: #ffffff;
	box-shadow: 0 12px 30px rgba(60, 35, 15, 0.12);
}

.has-cream-background-color .uk-kontakt__icon {
	background: rgba(154, 95, 29, 0.12);
	color: var(--uk-gold-dark);
}

.has-cream-background-color .uk-kontakt__label,
.has-cream-background-color .uk-news__date,
.has-cream-background-color .uk-dokument .uk-dok-pod {
	color: var(--uk-gold-dark);
}

.has-cream-background-color .uk-kontakt__value {
	color: #1c1410;
}

.has-cream-background-color .uk-kontakt__note {
	color: #5e4f43;
}

/* Dark cards that stay dark on light sections ("Zadzwoń" bar) keep their light buttons and links. */
.has-cream-background-color .uk-cta .wp-block-button.is-style-obrys .wp-block-button__link {
	color: var(--wp--preset--color--gold);
	border-color: currentColor;
}

.has-cream-background-color .uk-cta .wp-block-button.is-style-obrys .wp-block-button__link:hover {
	background: rgba(232, 169, 79, 0.12);
	color: var(--wp--preset--color--gold-light);
}

.has-cream-background-color .uk-cta :where(p, h2, h3) {
	color: var(--wp--preset--color--ink);
}

.has-cream-background-color .uk-cta a:not(.wp-block-button__link) {
	color: var(--wp--preset--color--gold);
}

.has-cream-background-color .uk-cta .uk-cta__title {
	color: #ffffff;
}

.uk-dokument.has-cream-background-color .uk-dok-pod,
.has-cream-background-color .uk-dok-pod {
	color: var(--uk-gold-dark) !important;
}
