/* =========================================================================
   Penzion U Řeky — vlastní styly tématu
   Barevné a typografické proměnné pocházejí z theme.json.
   ====================================================================== */

:root {
	--ur-smetana: var(--wp--preset--color--smetana, #F4EADA);
	--ur-pisek:   var(--wp--preset--color--pisek, #E7D6BC);
	--ur-len:     var(--wp--preset--color--len, #FCF7EF);
	--ur-smrk:    var(--wp--preset--color--smrk, #35462F);
	--ur-tmavy:   var(--wp--preset--color--smrk-tmavy, #222A1D);
	--ur-mech:    var(--wp--preset--color--mech, #808F6F);
	--ur-kura:    var(--wp--preset--color--kura, #6E5138);
	--ur-ohen:    var(--wp--preset--color--ohen, #A9502C);
	--ur-med:     var(--wp--preset--color--med, #C6913C);
	--ur-reka:    var(--wp--preset--color--reka, #6F868A);
	--ur-uhel:    var(--wp--preset--color--uhel, #2A211A);
	--ur-seda:    var(--wp--preset--color--seda, #6E6152);
	--ur-linka:   color-mix(in srgb, var(--ur-smrk) 18%, transparent);
	--ur-radius:  6px;
	--ur-hlavicka-v: 84px;
}

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

html { scroll-behavior: smooth; scroll-padding-top: calc(var(--ur-hlavicka-v) + 1rem); }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body { background: var(--ur-smetana); overflow-x: hidden; }

::selection { background: var(--ur-ohen); color: var(--ur-smetana); }

:where(a):focus-visible,
:where(button):focus-visible,
:where(input, textarea, select):focus-visible {
	outline: 2px solid var(--ur-ohen);
	outline-offset: 3px;
	border-radius: 2px;
}

/* Typografické detaily -------------------------------------------------- */

h1, h2, h3, .ur-display { font-variation-settings: "SOFT" 0, "WONK" 1; }

/* Kurzíva ve Fraunces je „mokřejší“ — používáme ji jako akcent v nadpisech. */
.ur-kurziva { font-style: italic; font-variation-settings: "SOFT" 40, "WONK" 1; }
.ur-ohen { color: var(--ur-ohen); }
.ur-mech { color: var(--ur-mech); }

/* Nadpis „eyebrow“ nad sekcí. */
.ur-nadlinka {
	display: inline-flex; align-items: center; gap: .75rem;
	font-family: var(--wp--preset--font-family--body);
	font-size: .75rem; font-weight: 500; letter-spacing: .18em; text-transform: uppercase;
	color: var(--ur-ohen); margin: 0 0 1rem;
}
.ur-nadlinka::before {
	content: ""; inline-size: 2.25rem; block-size: 1px; background: currentColor; opacity: .6;
}
.has-text-align-center .ur-nadlinka, .ur-nadlinka--stred { justify-content: center; }
.ur-nadlinka--stred::after {
	content: ""; inline-size: 2.25rem; block-size: 1px; background: currentColor; opacity: .6;
}

.is-style-ur-linka { position: relative; padding-block-start: 1.25rem; }
.is-style-ur-linka::before {
	content: ""; position: absolute; inset-block-start: 0; inset-inline-start: 0;
	inline-size: 3.5rem; block-size: 2px; background: var(--ur-ohen);
}
.has-text-align-center.is-style-ur-linka::before { inset-inline-start: 50%; transform: translateX(-50%); }

/* Hlavička -------------------------------------------------------------- */

.ur-hlavicka {
	position: sticky; inset-block-start: 0; z-index: 90;
	transition: background-color .35s ease, box-shadow .35s ease, padding .35s ease;
}
.ur-hlavicka__vnitrek { min-block-size: var(--ur-hlavicka-v); }

body.ur-hero-nahore .ur-hlavicka { background: transparent; }
body.ur-hero-nahore .ur-hlavicka:not(.ur-hlavicka--pevna) .wp-block-site-title a,
body.ur-hero-nahore .ur-hlavicka:not(.ur-hlavicka--pevna) .wp-block-navigation a,
body.ur-hero-nahore .ur-hlavicka:not(.ur-hlavicka--pevna) .ur-hlavicka__tel {
	color: var(--ur-smetana);
}
body.ur-hero-nahore .ur-hlavicka:not(.ur-hlavicka--pevna) .ur-logo__znak * { stroke: var(--ur-smetana); }
body.ur-hero-nahore .ur-hlavicka:not(.ur-hlavicka--pevna) .ur-logo__text { color: var(--ur-smetana); }
body.ur-hero-nahore .ur-hlavicka:not(.ur-hlavicka--pevna) .wp-block-button__link {
	background: transparent; color: var(--ur-smetana); box-shadow: inset 0 0 0 1px rgba(244,234,218,.5);
}
body.ur-hero-nahore .ur-hlavicka:not(.ur-hlavicka--pevna) .wp-block-button__link:hover {
	background: var(--ur-smetana); color: var(--ur-smrk); box-shadow: none;
}

.ur-hlavicka--pevna {
	background: color-mix(in srgb, var(--ur-smetana) 92%, transparent);
	backdrop-filter: saturate(1.4) blur(14px);
	box-shadow: 0 1px 0 var(--ur-linka);
}
.ur-hlavicka--pevna .ur-hlavicka__vnitrek { min-block-size: 68px; }

.ur-hlavicka .wp-block-navigation__container { gap: clamp(1rem, 2vw, 2rem); }
.ur-hlavicka .wp-block-navigation-item__content {
	position: relative; padding-block: .35rem;
	letter-spacing: .01em;
}
.ur-hlavicka .wp-block-navigation-item__content::after {
	content: ""; position: absolute; inset-inline: 0; inset-block-end: 0;
	block-size: 1px; background: currentColor;
	transform: scaleX(0); transform-origin: right; transition: transform .3s ease;
}
.ur-hlavicka .wp-block-navigation-item__content:hover::after,
.ur-hlavicka .current-menu-item .wp-block-navigation-item__content::after {
	transform: scaleX(1); transform-origin: left;
}

.ur-hlavicka__tel {
	font-size: .8125rem; letter-spacing: .06em; text-decoration: none; white-space: nowrap;
	color: var(--ur-smrk);
}
.ur-hlavicka__tel:hover { color: var(--ur-ohen); }

/* Logo (placeholder) ---------------------------------------------------- */

.ur-logo { display: inline-flex; align-items: center; gap: .7rem; text-decoration: none; }
.ur-logo__znak { inline-size: 40px; block-size: 40px; flex: 0 0 auto; }
.ur-logo__znak * { stroke: var(--ur-smrk); transition: stroke .35s ease; }
.ur-logo__text { display: grid; line-height: 1; color: var(--ur-smrk); transition: color .35s ease; }
.ur-logo__nazev {
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.3rem; font-weight: 500; letter-spacing: -.01em;
	font-variation-settings: "SOFT" 0, "WONK" 1;
}
.ur-logo__podnazev {
	font-family: var(--wp--preset--font-family--body);
	font-size: .625rem; letter-spacing: .28em; text-transform: uppercase; opacity: .72;
	margin-block-start: .35rem;
}

/* Hero (blok Cover) ----------------------------------------------------- */

.ur-hero.wp-block-cover {
	min-block-size: min(100svh, 920px);
	align-items: center;
	margin-block-start: calc(var(--ur-hlavicka-v) * -1);
	padding-block: calc(var(--ur-hlavicka-v) + 1.5rem) 1.5rem;
	padding-inline: var(--wp--style--root--padding-left, clamp(1.25rem, 5vw, 3.5rem));
	color: var(--ur-smetana);
}
.ur-hero .wp-block-cover__background {
	background-color: transparent !important;
	background-image:
		linear-gradient(100deg, rgba(20,26,17,.90) 0%, rgba(20,26,17,.80) 30%, rgba(20,26,17,.42) 52%, rgba(20,26,17,.20) 72%, rgba(20,26,17,.28) 100%),
		linear-gradient(180deg, rgba(20,26,17,.72) 0%, rgba(20,26,17,.22) 32%, rgba(20,26,17,.26) 60%, rgba(20,26,17,.80) 100%) !important;
	opacity: 1 !important;
}
.ur-hero .wp-block-cover__inner-container { inline-size: 100%; max-inline-size: 1480px; margin-inline: auto; }
.ur-hero .wp-block-cover__inner-container > * { margin-inline-start: 0 !important; }
.ur-hero :where(h1, h2, p) { color: inherit; }
.ur-hero h1 { text-wrap: balance; max-inline-size: 16ch; }
.ur-hero__perex { max-inline-size: 46ch; font-size: var(--wp--preset--font-size--lg); opacity: .92; }

.ur-hero__meta {
	display: flex; flex-wrap: wrap; gap: .75rem 2rem; align-items: center;
	font-size: .75rem; letter-spacing: .16em; text-transform: uppercase; opacity: .82;
}
.ur-hero__meta > * + *::before { content: "·"; margin-inline-end: 2rem; opacity: .6; }

/* Menší hlavička podstránky */
.ur-podhlavicka.wp-block-cover {
	min-block-size: clamp(380px, 56svh, 560px);
	align-items: flex-end;
	margin-block-start: calc(var(--ur-hlavicka-v) * -1);
	padding-block: calc(var(--ur-hlavicka-v) + 2rem) clamp(2.5rem, 5vh, 4rem);
	padding-inline: var(--wp--style--root--padding-left, clamp(1.25rem, 5vw, 3.5rem));
	color: var(--ur-smetana);
}
.ur-podhlavicka .wp-block-cover__background {
	background-color: transparent !important;
	background-image: linear-gradient(180deg, rgba(34,42,29,.7) 0%, rgba(34,42,29,.3) 45%, rgba(34,42,29,.86) 100%) !important;
	opacity: 1 !important;
}
.ur-podhlavicka .wp-block-cover__inner-container { inline-size: 100%; max-inline-size: 1480px; margin-inline: auto; }
.ur-podhlavicka .wp-block-cover__inner-container > * { margin-inline-start: 0 !important; }
.ur-podhlavicka :where(h1, p) { color: inherit; }
.ur-podhlavicka .ur-nadlinka { color: var(--ur-pisek); }

/* Sekce a karty --------------------------------------------------------- */

.ur-sekce { position: relative; }
.ur-sekce--tmava { background: var(--ur-smrk); color: var(--ur-smetana); }
.ur-sekce--tmava :where(h1,h2,h3,h4,h5) { color: var(--ur-smetana); }
.ur-sekce--tmava .ur-nadlinka { color: var(--ur-pisek); }
.ur-sekce--tmava .wp-block-button__link { background: var(--ur-pisek); color: var(--ur-smrk); }
.ur-sekce--tmava .wp-block-button__link:hover { background: var(--ur-ohen); color: var(--ur-smetana); }
.ur-sekce--tmava .is-style-outline .wp-block-button__link {
	background: transparent; color: var(--ur-smetana); box-shadow: inset 0 0 0 1px rgba(244,234,218,.45);
	border: 0;
}

.is-style-ur-karta {
	background: var(--ur-len);
	border: 1px solid var(--ur-linka);
	border-radius: var(--ur-radius);
	overflow: clip;
	transition: transform .4s cubic-bezier(.2,.7,.3,1), box-shadow .4s ease, border-color .4s ease;
}
.is-style-ur-karta:hover {
	transform: translateY(-4px);
	border-color: color-mix(in srgb, var(--ur-smrk) 34%, transparent);
	box-shadow: 0 2px 4px rgba(42,33,26,.05), 0 28px 48px -28px rgba(42,33,26,.35);
}

/* Rozcestník — dlaždice z bloku Cover */
.ur-rozcestnik { gap: 1px !important; background: var(--ur-linka); }

.ur-dlazdice.wp-block-cover {
	min-block-size: clamp(340px, 46vh, 480px);
	align-items: flex-end;
	padding: clamp(1.5rem, 3vw, 2.5rem);
	color: var(--ur-smetana);
}
.ur-dlazdice .wp-block-cover__background {
	background-color: transparent !important;
	background-image: linear-gradient(180deg, rgba(34,42,29,.06) 0%, rgba(34,42,29,.5) 52%, rgba(34,42,29,.93) 100%) !important;
	opacity: 1 !important;
}
.ur-dlazdice .wp-block-cover__image-background { transition: transform 1.1s cubic-bezier(.2,.7,.3,1); }
.ur-dlazdice:hover .wp-block-cover__image-background { transform: scale(1.06); }
.ur-dlazdice .wp-block-cover__inner-container { inline-size: 100%; }
.ur-dlazdice :where(h2, h3, p) { color: var(--ur-smetana); }
.ur-dlazdice h3 {
	font-size: clamp(1.75rem, 3vw, 2.5rem); line-height: 1.05; margin-block: 0 .5rem;
}
.ur-dlazdice__popis { font-size: .9375rem; opacity: .86; max-inline-size: 34ch; margin-block-end: 1.25rem; }
.ur-dlazdice__cislo { font-size: .6875rem; letter-spacing: .3em; opacity: .7; margin-block-end: 1.5rem; }
.ur-dlazdice__vice {
	display: inline-flex; align-items: center; gap: .6rem;
	font-size: .75rem; letter-spacing: .16em; text-transform: uppercase; text-decoration: none;
	color: var(--ur-smetana) !important;
}
.ur-dlazdice__vice::after { content: "→"; transition: transform .35s ease; }
.ur-dlazdice:hover .ur-dlazdice__vice::after { transform: translateX(6px); }

/* Ornament (větvička) --------------------------------------------------- */

.ur-ornament {
	position: absolute; z-index: 0; pointer-events: none;
	opacity: .09; inline-size: clamp(220px, 30vw, 420px);
}
.ur-ornament--vlevo  { inset-inline-start: -4%; inset-block-start: 6%; }
.ur-ornament--vpravo { inset-inline-end: -5%; inset-block-end: 4%; transform: scaleX(-1); }
.ur-sekce > *:not(.ur-ornament) { position: relative; z-index: 1; }

/* Pokoje ---------------------------------------------------------------- */

.ur-pokoj { position: relative; display: grid; gap: 1.25rem; }
.ur-pokoj__foto { position: relative; overflow: hidden; border-radius: var(--ur-radius); aspect-ratio: 4 / 3; }
.ur-pokoj__foto img { inline-size: 100%; block-size: 100%; object-fit: cover; transition: transform 1s cubic-bezier(.2,.7,.3,1); }
.ur-pokoj:hover .ur-pokoj__foto img { transform: scale(1.04); }

.ur-cena {
	display: inline-flex; align-items: baseline; gap: .35rem;
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.35rem; color: var(--ur-smrk); white-space: nowrap;
}
.ur-cena__od, .ur-cena__jed {
	font-family: var(--wp--preset--font-family--body);
	font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; color: var(--ur-seda);
}
.ur-stitek-cena {
	position: absolute; inset-block-start: 1rem; inset-inline-end: 1rem;
	background: color-mix(in srgb, var(--ur-smetana) 94%, transparent);
	backdrop-filter: blur(8px);
	padding: .5rem .9rem; border-radius: 999px;
	box-shadow: 0 6px 20px -10px rgba(42,33,26,.5);
}

.ur-parametry { display: grid; gap: 0; margin: 0 0 1.25rem; border-block-start: 1px solid var(--ur-linka); }
.ur-parametry__radek {
	display: flex; justify-content: space-between; gap: 1.5rem; align-items: baseline;
	padding-block: .7rem; border-block-end: 1px solid var(--ur-linka);
}
.ur-parametry dt { font-size: .75rem; letter-spacing: .14em; text-transform: uppercase; color: var(--ur-seda); }
.ur-parametry dd { margin: 0; font-weight: 500; text-align: end; }

.ur-vybaveni { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: .5rem; }
.ur-vybaveni li {
	font-size: .8125rem; padding: .4rem .85rem; border-radius: 999px;
	background: color-mix(in srgb, var(--ur-mech) 16%, transparent);
	color: var(--ur-smrk);
}

.is-style-ur-odrazky { list-style: none; padding-inline-start: 0; }
.is-style-ur-odrazky li {
	position: relative; padding-inline-start: 1.75rem; margin-block-end: .65rem;
}
.is-style-ur-odrazky li::before {
	content: ""; position: absolute; inset-inline-start: 0; inset-block-start: .55em;
	inline-size: .55rem; block-size: .55rem; border-radius: 0 999px 0 999px;
	background: var(--ur-ohen); transform: rotate(-15deg);
}

/* Jídelní lístek -------------------------------------------------------- */

.ur-listek { display: grid; gap: 1.5rem; }
.ur-listek__skupina { break-inside: avoid; }
.ur-listek__nadpis {
	font-family: var(--wp--preset--font-family--body);
	font-size: .75rem; letter-spacing: .2em; text-transform: uppercase; color: var(--ur-ohen);
	padding-block-end: .75rem; margin-block-end: 1rem; border-block-end: 1px solid var(--ur-linka);
}
.ur-polozka { display: grid; gap: .2rem; padding-block: .85rem; }
.ur-polozka__hlava {
	display: flex; align-items: baseline; gap: .75rem;
	font-family: var(--wp--preset--font-family--display); font-size: 1.125rem; color: var(--ur-smrk);
}
.ur-polozka__nazev { flex: 0 1 auto; }
.ur-polozka__tecky {
	flex: 1 1 auto; border-block-end: 1px dotted color-mix(in srgb, var(--ur-smrk) 35%, transparent);
	transform: translateY(-.28em);
}
.ur-polozka__cena { flex: 0 0 auto; font-variant-numeric: tabular-nums; }
.ur-polozka__popis { font-size: .875rem; color: var(--ur-seda); max-inline-size: 60ch; }
.ur-polozka__alergeny { font-size: .6875rem; letter-spacing: .1em; color: var(--ur-mech); }

/* Galerie – vodorovný pás ---------------------------------------------- */

.ur-pas {
	display: flex; gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory;
	padding-block-end: 1.25rem; padding-inline: clamp(1.25rem, 5vw, 3.5rem);
	scrollbar-width: thin; scrollbar-color: var(--ur-mech) transparent;
}
.ur-pas > * {
	flex: 0 0 clamp(260px, 32vw, 420px); scroll-snap-align: center;
	aspect-ratio: 3 / 4; border-radius: var(--ur-radius); overflow: hidden; margin: 0;
}
.ur-pas > *:nth-child(even) { aspect-ratio: 4 / 3; align-self: center; }
.ur-pas img { inline-size: 100%; block-size: 100%; object-fit: cover; display: block; }

/* Číselné údaje (kapacita sálu apod.) ---------------------------------- */

.ur-cisla { display: grid; gap: 2rem; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); }
.ur-cislo__hodnota {
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(2.5rem, 5vw, 3.75rem); line-height: 1; color: var(--ur-ohen);
	font-variation-settings: "SOFT" 0, "WONK" 1;
}
.ur-cislo__popis {
	font-size: .75rem; letter-spacing: .16em; text-transform: uppercase; color: var(--ur-seda);
	margin-block-start: .6rem;
}
.ur-sekce--tmava .ur-cislo__popis { color: color-mix(in srgb, var(--ur-smetana) 70%, transparent); }
.ur-sekce--tmava .ur-cislo__hodnota { color: var(--ur-pisek); }

/* Recenze --------------------------------------------------------------- */

.ur-recenze { display: grid; gap: 1.25rem; }
.ur-recenze__text {
	font-family: var(--wp--preset--font-family--display); font-style: italic;
	font-size: clamp(1.125rem, 1.8vw, 1.4rem); line-height: 1.45; color: var(--ur-smrk);
}
.ur-recenze__autor { font-size: .75rem; letter-spacing: .16em; text-transform: uppercase; color: var(--ur-seda); }
.ur-hvezdy { color: var(--ur-ohen); letter-spacing: .25em; font-size: .8rem; }

/* Formuláře ------------------------------------------------------------- */

.ur-form {
	background: var(--ur-len);
	border-radius: 4px;
	padding: clamp(1.5rem, 3.5vw, 2.75rem);
	box-shadow: 0 2px 4px rgba(42,33,26,.08), 0 30px 56px -30px rgba(42,33,26,.5);
	color: var(--ur-uhel);
}
.ur-form__past { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip-path: inset(50%); }

/* Krok formuláře */
.ur-form__krok {
	border: 0; padding: 0; margin: 0 0 clamp(1.75rem, 3vw, 2.5rem);
}
.ur-form__krok + .ur-form__krok {
	padding-block-start: clamp(1.5rem, 3vw, 2.25rem);
	border-block-start: 1px solid var(--ur-linka);
}
.ur-form__krok legend {
	display: flex; align-items: center; gap: .75rem;
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.25rem; color: var(--ur-smrk);
	margin-block-end: 1.25rem; padding: 0;
}
.ur-form__cislo {
	inline-size: 1.75rem; block-size: 1.75rem; border-radius: 50%;
	background: var(--ur-smrk); color: var(--ur-smetana);
	display: grid; place-items: center;
	font-family: var(--wp--preset--font-family--body);
	font-size: .8125rem; font-weight: 500;
}

.ur-form__mrizka { display: grid; gap: 1.25rem; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); }
.ur-form__pole { margin: 0; display: grid; gap: .4rem; }
.ur-form__pole--siroke { grid-column: 1 / -1; }

.ur-form label {
	font-size: .8125rem; font-weight: 500; letter-spacing: .04em; color: var(--ur-seda);
	text-transform: none;
}
.ur-form label abbr { color: var(--ur-ohen); text-decoration: none; margin-inline-start: .15rem; }
.ur-form__napoveda { font-size: .75rem; color: var(--ur-seda); opacity: .85; }
.ur-form__poznamka-krok {
	font-size: .8125rem; color: var(--ur-seda);
	margin-block-start: 1rem; padding-inline-start: .9rem;
	border-inline-start: 2px solid var(--ur-med);
}

.ur-form input[type="text"],
.ur-form input[type="email"],
.ur-form input[type="tel"],
.ur-form input[type="date"],
.ur-form input[type="number"],
.ur-form select,
.ur-form textarea {
	inline-size: 100%; padding: .95rem 1.05rem;
	font: inherit; font-size: 1rem; color: var(--ur-uhel);
	background: #fff;
	border: 1px solid color-mix(in srgb, var(--ur-smrk) 22%, transparent);
	border-radius: 4px;
	transition: border-color .2s ease, box-shadow .2s ease;
}
.ur-form :is(input, select, textarea):focus {
	border-color: var(--ur-smrk); outline: none;
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--ur-smrk) 14%, transparent);
}
.ur-form :is(input, textarea)::placeholder { color: color-mix(in srgb, var(--ur-seda) 60%, transparent); }
.ur-form textarea { resize: vertical; min-block-size: 7.5rem; }

.ur-form__odeslani {
	padding-block-start: clamp(1.5rem, 3vw, 2.25rem);
	border-block-start: 1px solid var(--ur-linka);
	display: grid; gap: 1.25rem; justify-items: start;
}
.ur-form__souhlas { margin: 0; }
.ur-form__souhlas label {
	display: flex; gap: .75rem; align-items: flex-start;
	font-size: .875rem; font-weight: 400; color: var(--ur-seda);
}
.ur-form__souhlas input { margin-block-start: .15rem; accent-color: var(--ur-smrk); inline-size: 1.1rem; block-size: 1.1rem; flex: 0 0 auto; }
.ur-form__poznamka { font-size: .8125rem; color: var(--ur-seda); margin: 0; }

.ur-form__stav {
	padding: 1rem 1.25rem; border-radius: 4px;
	margin-block-end: 1.75rem; font-size: .9375rem;
}
.ur-form__stav--ok { background: color-mix(in srgb, var(--ur-mech) 26%, transparent); color: var(--ur-smrk); }
.ur-form__stav--chyba { background: color-mix(in srgb, var(--ur-ohen) 16%, transparent); color: var(--ur-ohen); }

.ur-tlacitko {
	display: inline-flex; align-items: center; justify-content: center;
	padding: 1.2em 2.6em; border: 0; border-radius: 999px; cursor: pointer;
	font-family: var(--wp--preset--font-family--body);
	font-size: .875rem; font-weight: 500; letter-spacing: .1em; text-transform: uppercase;
	background: var(--ur-smrk); color: var(--ur-smetana);
	transition: background .3s ease, transform .2s ease;
}
.ur-tlacitko:hover { background: var(--ur-ohen); transform: translateY(-1px); }

/* Kontaktní řádky ------------------------------------------------------- */

.ur-kontakt-radek { display: grid; gap: .35rem; padding-block: 1.1rem; border-block-end: 1px solid var(--ur-linka); }
.ur-kontakt-radek dt { font-size: .6875rem; letter-spacing: .18em; text-transform: uppercase; color: var(--ur-seda); }
.ur-kontakt-radek dd { margin: 0; font-size: 1.0625rem; }
.ur-kontakt-radek a { text-decoration: none; }
.ur-kontakt-radek a:hover { text-decoration: underline; }
.ur-doba { line-height: 1.9; font-variant-numeric: tabular-nums; }

/* Obrázek s obloukem ---------------------------------------------------- */

.is-style-ur-oblouk img { border-radius: 50vw 50vw var(--ur-radius) var(--ur-radius); }

/* Patička --------------------------------------------------------------- */

.ur-paticka { background: var(--ur-tmavy); color: color-mix(in srgb, var(--ur-smetana) 80%, transparent); }
.ur-paticka :where(h1,h2,h3,h4,h5,h6) { color: var(--ur-smetana); }
.ur-paticka a { color: inherit; text-decoration: none; }
.ur-paticka a:hover { color: var(--ur-pisek); text-decoration: underline; }
.ur-paticka .ur-logo__znak * { stroke: var(--ur-smetana); }
.ur-paticka .ur-logo__text { color: var(--ur-smetana); }
.ur-paticka__nadpis {
	font-family: var(--wp--preset--font-family--body);
	font-size: .6875rem; letter-spacing: .2em; text-transform: uppercase;
	color: color-mix(in srgb, var(--ur-smetana) 55%, transparent);
	margin: 0 0 1.1rem;
}
.ur-paticka__spodek {
	border-block-start: 1px solid rgba(244,234,218,.14);
	font-size: .8125rem; color: color-mix(in srgb, var(--ur-smetana) 55%, transparent);
}

/* Odhalování při scrollu ------------------------------------------------ */

@media (prefers-reduced-motion: no-preference) {
	.ur-odhal { opacity: 0; transform: translateY(18px); transition: opacity .8s ease, transform .8s cubic-bezier(.2,.7,.3,1); }
	.ur-odhal.je-videt { opacity: 1; transform: none; }
	.ur-odhal:nth-child(2) { transition-delay: .08s; }
	.ur-odhal:nth-child(3) { transition-delay: .16s; }
	.ur-odhal:nth-child(4) { transition-delay: .24s; }
}

/* Drobnosti ------------------------------------------------------------- */

.ur-jen-pro-ctecky {
	position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap;
}
.ur-preskocit {
	position: absolute; inset-block-start: -100px; inset-inline-start: 1rem; z-index: 999;
	background: var(--ur-smrk); color: var(--ur-smetana); padding: .75rem 1.25rem; border-radius: 0 0 6px 6px;
}
.ur-preskocit:focus { inset-block-start: 0; }

.ur-mapa { inline-size: 100%; aspect-ratio: 16 / 10; border: 0; border-radius: var(--ur-radius); filter: saturate(.85) contrast(1.03); }

@media (max-width: 781px) {
	.ur-hlavicka__tel { display: none; }
	.ur-hero { min-block-size: 88svh; }
}

/* =========================================================================
   Doladění na skutečné bloky WordPressu
   ====================================================================== */

/* Hlavička — vnitřní rozvržení */
.ur-hlavicka__vnitrek {
	max-inline-size: 1480px; margin-inline: auto;
	padding-inline: clamp(1.25rem, 5vw, 3.5rem);
	gap: clamp(1rem, 3vw, 2.5rem);
}
.ur-hlavicka__akce { gap: 1.25rem; }
.ur-hlavicka .wp-block-button__link { padding: .85em 1.6em; font-size: .75rem; }

/* Jídelní lístek — položky */
.ur-listek-mrizka { align-items: start; }
.ur-polozka { border-block-end: 1px solid var(--ur-linka); }
.ur-polozka:last-child { border-block-end: 0; }
.ur-polozka p { margin-block: 0; }
.ur-polozka__hlava { gap: 1.5rem; align-items: baseline; }
.ur-polozka__nazev { flex: 1 1 auto; }
.ur-polozka__popis { margin-block-start: .3rem !important; }
.ur-sekce--tmava :is(.ur-polozka__nazev, .ur-polozka__cena) { color: var(--ur-smetana); }
.ur-sekce--tmava .ur-polozka__popis { color: color-mix(in srgb, var(--ur-smetana) 62%, transparent); }
.ur-sekce--tmava .ur-polozka { border-color: rgba(244,234,218,.16); }
.ur-sekce--tmava .ur-listek__nadpis { color: var(--ur-pisek); border-color: rgba(244,234,218,.2); }

/* Karty pokojů a článků */
.ur-pokoj__foto { margin: 0; border-radius: var(--ur-radius); overflow: hidden; }
.ur-pokoj__foto img { transition: transform 1s cubic-bezier(.2,.7,.3,1); }
.ur-pokoj:hover .ur-pokoj__foto img { transform: scale(1.04); }
.ur-pokoj .wp-block-post-title { margin-block: 0; }
.ur-pokoj .wp-block-post-title a { text-decoration: none; }
.ur-pokoj .wp-block-post-title a:hover { color: var(--ur-ohen); }
.ur-pokoj .wp-block-post-excerpt__excerpt { color: var(--ur-seda); }
.ur-pokoj .wp-block-post-date { margin-block: 0; }

/* Boční panel na detailu pokoje */
@media (min-width: 1000px) {
	.ur-panel-pokoje { position: sticky; inset-block-start: calc(var(--ur-hlavicka-v) + 1.5rem); }
}
.ur-panel-pokoje .ur-parametry { margin-block-end: 0; }
.ur-panel-pokoje .ur-vybaveni { margin-block-start: 1.25rem; }

/* Galerie — nepravidelná mřížka */
.ur-galerie {
	display: grid; gap: 1rem;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	grid-auto-rows: clamp(200px, 22vw, 280px);
}
.ur-galerie figure { margin: 0; block-size: 100%; }
.ur-galerie img { inline-size: 100%; block-size: 100%; object-fit: cover; border-radius: var(--ur-radius); }
.ur-galerie__velky { grid-row: span 2; }
.ur-galerie__siroky { grid-column: span 2; }
@media (max-width: 700px) {
	.ur-galerie__siroky, .ur-galerie__velky { grid-column: span 1; grid-row: span 1; }
}

/* Časté dotazy */
.ur-faq { border-block-end: 1px solid var(--ur-linka); padding-block: 1.35rem; }
.ur-faq summary {
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1.0625rem, 1.6vw, 1.25rem); color: var(--ur-smrk); cursor: pointer;
	list-style: none; display: flex; justify-content: space-between; gap: 1.5rem; align-items: baseline;
}
.ur-faq summary::-webkit-details-marker { display: none; }
.ur-faq summary::after {
	content: "+"; font-size: 1.5em; line-height: .8; color: var(--ur-ohen);
	transition: transform .3s ease; flex: 0 0 auto;
}
.ur-faq[open] summary::after { transform: rotate(45deg); }
.ur-faq p { margin-block-start: .85rem; color: var(--ur-seda); max-inline-size: 72ch; }

/* Mobilní navigace */
.wp-block-navigation__responsive-container.is-menu-open { padding: clamp(2rem, 6vw, 4rem); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	font-family: var(--wp--preset--font-family--display); font-size: 1.75rem;
}
.wp-block-navigation__responsive-container-open svg,
.wp-block-navigation__responsive-container-close svg { inline-size: 28px; block-size: 28px; }

/* Vyhledávání */
.wp-block-search__input { border-radius: var(--ur-radius); border: 1px solid var(--ur-linka); padding: .85rem 1rem; background: var(--ur-len); }
.wp-block-search__button { border-radius: 999px; }

/* Obrázky v obsahu — nulová specificita, aby ji komponenty mohly přebít */
:where(.wp-block-image) img { block-size: auto; }
.wp-block-post-featured-image img { border-radius: var(--ur-radius); }

/* Tabulky v obsahu */
.wp-block-table td, .wp-block-table th { border-color: var(--ur-linka); padding: .75rem 1rem; }
.wp-block-table th { font-family: var(--wp--preset--font-family--body); font-size: .75rem; letter-spacing: .14em; text-transform: uppercase; color: var(--ur-seda); font-weight: 500; }

/* Cover s výzvou — průhledný překryv, obsah na střed */
.ur-cta .wp-block-cover__background {
	background-color: transparent !important;
	background-image: linear-gradient(180deg, rgba(34,42,29,.72) 0%, rgba(34,42,29,.45) 50%, rgba(34,42,29,.82) 100%) !important;
	opacity: 1 !important;
}
.ur-cta :where(h2, p) { color: var(--ur-smetana); }
.ur-cta .ur-nadlinka { color: var(--ur-pisek); }
.ur-cta .is-style-outline .wp-block-button__link {
	background: transparent; color: var(--ur-smetana); border: 0;
	box-shadow: inset 0 0 0 1px rgba(244,234,218,.45);
}
.ur-cta .is-style-outline .wp-block-button__link:hover { background: var(--ur-smetana); color: var(--ur-smrk); box-shadow: none; }

/* =========================================================================
   ZÚTULNĚNÍ — textura papíru, rukopis a ručně dělané detaily
   ====================================================================== */

/* Zrnitá vrstva přes celý web — dodává hmatatelnost tištěného papíru.
   Leží nad obsahem, ale nereaguje na myš. */
body::after {
	content: "";
	position: fixed; inset: 0; z-index: 9998; pointer-events: none;
	opacity: .055; mix-blend-mode: multiply;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='z'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23z)'/%3E%3C/svg%3E");
	background-size: 220px 220px;
}
@media print { body::after { display: none; } }

/* Rukopisné poznámky ---------------------------------------------------- */

.ur-rukopis {
	font-family: var(--wp--preset--font-family--rukopis, "Caveat", cursive);
	font-size: clamp(1.25rem, 2.2vw, 1.75rem);
	line-height: 1.25;
	color: var(--ur-kura);
	letter-spacing: .005em;
}
.ur-rukopis--akcent { color: var(--ur-ohen); }
.ur-sekce--tmava .ur-rukopis, .ur-cta .ur-rukopis, .ur-hero .ur-rukopis,
.ur-podhlavicka .ur-rukopis { color: #E4C48A; }
.ur-hero .ur-rukopis, .ur-podhlavicka .ur-rukopis, .ur-cta .ur-rukopis { text-shadow: 0 1px 10px rgba(34,42,29,.6); }

.ur-rukopis--sipka { position: relative; display: inline-block; padding-inline-end: 2.75rem; }
.ur-rukopis--sipka::after {
	content: ""; position: absolute; inset-inline-end: 0; inset-block-end: .25em;
	inline-size: 2.25rem; block-size: 1.5rem;
	background: no-repeat center / contain
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 32' fill='none'%3E%3Cpath d='M2 22c8-12 22-18 42-16' stroke='%23A9502C' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M34 2l10 4-6 8' stroke='%23A9502C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Ručně kreslené podtržení slova v nadpisu ------------------------------ */

.ur-tah {
	background: no-repeat bottom left / 100% .42em
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 14' preserveAspectRatio='none'%3E%3Cpath d='M3 10.5c34-6.4 70-7.2 106-4.4 36 2.8 72 3.4 108-2.1' fill='none' stroke='%23A9502C' stroke-width='3.2' stroke-linecap='round' opacity='.85'/%3E%3C/svg%3E");
	padding-block-end: .18em;
}
.ur-sekce--tmava .ur-tah, .ur-cta .ur-tah, .ur-hero .ur-tah {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 14' preserveAspectRatio='none'%3E%3Cpath d='M3 10.5c34-6.4 70-7.2 106-4.4 36 2.8 72 3.4 108-2.1' fill='none' stroke='%23C6913C' stroke-width='3.2' stroke-linecap='round' opacity='.9'/%3E%3C/svg%3E");
}

/* Polaroid — nalepená fotka s popiskem ---------------------------------- */

.ur-polaroid {
	background: #FCF7EF;
	padding: .75rem .75rem 3.25rem;
	box-shadow: 0 2px 3px rgba(42,33,26,.12), 0 22px 40px -22px rgba(42,33,26,.55);
	inline-size: clamp(180px, 20vw, 260px);
	rotate: -3.2deg;
	position: relative;
	transition: rotate .5s cubic-bezier(.2,.7,.3,1), transform .5s cubic-bezier(.2,.7,.3,1);
}
.ur-polaroid:hover { rotate: -1deg; transform: translateY(-4px); }
.ur-polaroid img { display: block; inline-size: 100%; aspect-ratio: 1; object-fit: cover; }
.ur-polaroid figcaption {
	position: absolute; inset-inline: .75rem; inset-block-end: .9rem;
	font-family: var(--wp--preset--font-family--rukopis, "Caveat", cursive);
	font-size: 1.2rem; color: var(--ur-kura); text-align: center; line-height: 1.15;
}
/* Lepicí páska */
.ur-polaroid::before {
	content: ""; position: absolute; inset-block-start: -.85rem; inset-inline-start: 50%;
	translate: -50% 0; rotate: 2deg;
	inline-size: 5.5rem; block-size: 1.7rem;
	background: rgba(230, 214, 180, .62);
	box-shadow: inset 0 0 0 1px rgba(110,81,56,.10);
}

/* Papírová karta (jídelní lístek, poznámky) ----------------------------- */

.ur-papir {
	background: var(--ur-len);
	box-shadow: 0 1px 2px rgba(42,33,26,.08), 0 26px 46px -26px rgba(42,33,26,.45);
	padding: clamp(1.75rem, 4vw, 3rem);
	position: relative;
}
/* Nepravidelný spodní okraj — jako natržený papír */
.ur-papir::after {
	content: ""; position: absolute; inset-inline: 0; inset-block-end: -11px; block-size: 12px;
	background: no-repeat bottom / 100% 100%
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 12' preserveAspectRatio='none'%3E%3Cpath d='M0 0h400v4c-22 3-33-2-55 1s-33 5-55 2-33-5-55-2-33 5-55 3-33-4-55-2-33 4-70 1z' fill='%23FCF7EF'/%3E%3C/svg%3E");
}
.ur-papir--natoceno { rotate: -.7deg; }

/* Lístek s poznámkou (recenze) ------------------------------------------ */

.ur-listek-poznamka {
	background: var(--ur-len);
	padding: clamp(1.5rem, 3vw, 2rem);
	box-shadow: 0 1px 2px rgba(42,33,26,.07), 0 18px 34px -20px rgba(42,33,26,.4);
	transition: rotate .45s cubic-bezier(.2,.7,.3,1), transform .45s cubic-bezier(.2,.7,.3,1);
	position: relative;
}
.ur-listek-poznamka:nth-child(3n+1) { rotate: -1.4deg; }
.ur-listek-poznamka:nth-child(3n+2) { rotate: .9deg; }
.ur-listek-poznamka:nth-child(3n+3) { rotate: -.5deg; }
.ur-listek-poznamka:hover { rotate: 0deg; transform: translateY(-4px); }
/* Napíchnuto špendlíkem */
.ur-listek-poznamka::before {
	content: ""; position: absolute; inset-block-start: -.55rem; inset-inline-start: 50%;
	translate: -50% 0; inline-size: .85rem; block-size: .85rem; border-radius: 50%;
	background: radial-gradient(circle at 35% 30%, #C96A44, var(--ur-ohen));
	box-shadow: 0 3px 6px rgba(42,33,26,.35);
}

/* Rozcestník — schodovité, ne strojově zarovnané ------------------------ */

@media (min-width: 900px) {
	/* Všechny dlaždice stejně vysoké a zarovnané do jedné řady */
	.ur-rozcestnik { align-items: stretch; }
	.ur-dlazdice.wp-block-cover { min-block-size: 460px; }
}
.ur-rozcestnik { gap: clamp(1rem, 2vw, 1.75rem) !important; background: none; }
.ur-dlazdice.wp-block-cover { border-radius: 3px; }
.ur-dlazdice__cislo {
	font-family: var(--wp--preset--font-family--rukopis, "Caveat", cursive);
	font-size: 1.6rem; letter-spacing: 0; text-transform: none; opacity: .95;
	color: var(--ur-pisek) !important;
	text-shadow: 0 1px 8px rgba(34,42,29,.7);
}

/* Překryv fotky a textu v sekci „O nás" --------------------------------- */

@media (min-width: 900px) {
	.ur-preklad { position: relative; z-index: 2; margin-inline-start: -4.5rem; }
	.ur-preklad-pozadi { position: relative; z-index: 1; }
}

/* Ozdobný oddělovač ----------------------------------------------------- */

.ur-vlnka {
	display: block; inline-size: clamp(120px, 16vw, 200px); block-size: 18px; margin-inline: auto;
	background: no-repeat center / contain
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 18' fill='none'%3E%3Cpath d='M4 12c14-11 28 7 42-2s28 7 42-2 28 7 42-2 22 5 26 3' stroke='%23808F6F' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
	opacity: .8;
}

/* Teplejší tlačítka ----------------------------------------------------- */

.wp-block-button__link { transition: background-color .3s ease, color .3s ease, transform .25s ease, box-shadow .3s ease; }
.wp-block-button__link:hover { transform: translateY(-1px); }

/* Karty se lehce natáčí při najetí — „živější" pocit */
.is-style-ur-karta { border-radius: 3px; }
.is-style-ur-karta:hover { transform: translateY(-5px) rotate(-.35deg); }

/* Světlá sekce s papírovým podkladem ------------------------------------ */

.ur-sekce--papir { background: var(--ur-len); }
.ur-sekce--pisek { background: var(--ur-pisek); }

/* Hero — rozvržení s nalepenou fotkou */
.ur-hero__radek { inline-size: 100%; gap: clamp(1.5rem, 4vw, 3.5rem); }
.ur-hero__obsah { flex: 1 1 32rem; max-inline-size: 48rem; }
.ur-hero__polaroid { flex: 0 0 auto; margin-block-end: 1.5rem; }
@media (max-width: 980px) { .ur-hero__polaroid { display: none; } }

/* Papírová karta nad fotkou nesmí splynout s pozadím sekce */
.ur-preklad .ur-papir { background: var(--ur-len); }

/* Rukopisné popisky u ročních období apod. */
.ur-stitek-rukou {
	font-family: var(--wp--preset--font-family--rukopis, "Caveat", cursive);
	font-size: 1.5rem; color: var(--ur-ohen); line-height: 1;
}

/* Papírová karta v tmavé sekci — text musí zůstat čitelný */
.ur-sekce--tmava .ur-papir { background: var(--ur-len); }
.ur-sekce--tmava .ur-papir :is(.ur-polozka__nazev, .ur-polozka__cena) { color: var(--ur-smrk); }
.ur-sekce--tmava .ur-papir .ur-polozka__popis { color: var(--ur-seda); }
.ur-sekce--tmava .ur-papir .ur-polozka { border-color: var(--ur-linka); }
.ur-sekce--tmava .ur-papir .ur-listek__nadpis { color: var(--ur-ohen); border-color: var(--ur-linka); }

/* Jídelní lístek — jednotlivé skupiny jako samostatné kartičky.
   Výška podle obsahu, ne podle nejvyšší karty v řadě. */
.ur-listek-mrizka { align-items: start; }
.ur-listek-mrizka .ur-papir:nth-child(odd) { rotate: -.45deg; }
.ur-listek-mrizka .ur-papir:nth-child(even) { rotate: .35deg; }

/* Obrázky v galerijním pásu a mřížce musí vyplnit svůj rámeček */
.ur-pas .wp-block-image, .ur-galerie .wp-block-image { margin: 0; block-size: 100%; }
.ur-pas .wp-block-image img, .ur-galerie .wp-block-image img {
	inline-size: 100%; block-size: 100%; object-fit: cover; display: block;
}

/* Hlavička na malých displejích — logo ani tlačítko se nesmí lámat */
@media (max-width: 640px) {
	.ur-hlavicka__vnitrek { gap: .6rem; padding-inline: 1.1rem; }
	.ur-logo { gap: .5rem; }
	.ur-logo__znak { inline-size: 30px; block-size: 30px; }
	.ur-logo__nazev { font-size: 1.05rem; white-space: nowrap; }
	.ur-logo__podnazev { display: none; }
	.ur-hlavicka .wp-block-button__link {
		padding: .72em 1.15em; font-size: .625rem; letter-spacing: .1em; white-space: nowrap;
	}
	.ur-hlavicka__akce { gap: .5rem; }
}

/* =========================================================================
   Hero — doladění poměrů (menší typografie, výraznější tlačítka, větší fotka)
   ====================================================================== */

/* Nadpis o čtvrtinu menší než původní stupeň 4XL */
.ur-hero h1.ur-hero__nadpis {
	font-size: clamp(2.2rem, 2.2rem + ((1vw - 0.2rem) * 4.4), 4.4rem);
	max-inline-size: 17ch;
	padding-block-end: 44px;
}

/* Perex o stupeň níž, ať nekonkuruje nadpisu */
.ur-hero__perex {
	font-size: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.31), 1.1875rem);
	max-inline-size: 44ch;
}

/* Tlačítka — větší plocha a vyšší kontrast proti fotografii */
.ur-hero .wp-block-buttons { gap: .85rem 1rem; }
.ur-hero .wp-block-button__link {
	padding: 1.2em 2.6em;
	font-size: .875rem;
	font-weight: 500;
	letter-spacing: .1em;
}
body.ur-hero-nahore .ur-hero .wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background: var(--ur-smetana);
	color: var(--ur-smrk);
	box-shadow: 0 2px 4px rgba(34,42,29,.18), 0 16px 32px -18px rgba(34,42,29,.7);
}
body.ur-hero-nahore .ur-hero .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
	background: var(--ur-ohen);
	color: var(--ur-smetana);
}
body.ur-hero-nahore .ur-hero .is-style-outline .wp-block-button__link {
	background: transparent;
	color: var(--ur-smetana);
	box-shadow: inset 0 0 0 1.5px rgba(244,234,218,.75);
}
body.ur-hero-nahore .ur-hero .is-style-outline .wp-block-button__link:hover {
	background: var(--ur-smetana);
	color: var(--ur-smrk);
	box-shadow: none;
}

/* Nalepená fotka — větší a svisle na střed */
.ur-hero__radek { align-items: center; }
.ur-hero__polaroid {
	inline-size: clamp(280px, 34vw, 480px);
	align-self: center;
	margin-block-end: 0;
}
.ur-hero__polaroid figcaption { font-size: 1.5rem; }
.ur-hero__polaroid { padding: 1.15rem 1.15rem 4.6rem; }

/* =========================================================================
   Sekce „O nás" a náhled pokojů — doladění
   ====================================================================== */

/* Fotografie v sekci o penzionu */
.ur-foto-onas { margin: 0; }
.ur-foto-onas img {
	display: block; inline-size: 100%; block-size: auto; border-radius: 3px;
	box-shadow: 0 2px 4px rgba(42,33,26,.08), 0 30px 54px -30px rgba(42,33,26,.5);
}

/* Text v papírové kartě o stupeň menší, ať karta působí klidněji */
.ur-preklad .ur-papir h2 {
	font-size: clamp(1.65rem, 1.65rem + ((1vw - 0.2rem) * 1.583), 2.6rem);
}
.ur-preklad .ur-papir .has-lg-font-size {
	font-size: clamp(1.0625rem, 1.0625rem + ((1vw - 0.2rem) * 0.312), 1.25rem) !important;
}

/* Ručně psaná věta potřebuje vzduch nad i pod sebou */
.ur-rukopis--vzduch {
	margin-block: clamp(1.75rem, 3.5vw, 2.75rem) clamp(1.75rem, 3.5vw, 2.75rem);
}

/* Výraznější a větší tlačítko */
.ur-tlacitko-velke .wp-block-button__link {
	padding: 1.2em 2.6em;
	font-size: .875rem;
	font-weight: 500;
	letter-spacing: .1em;
	box-shadow: 0 2px 4px rgba(42,33,26,.12), 0 16px 30px -18px rgba(42,33,26,.6);
}

/* Nadpis, který má zůstat na jednom řádku */
@media (min-width: 900px) {
	.ur-nadpis-radek { white-space: nowrap; }
}

/* Cena vždy na samostatném řádku pod názvem pokoje */
.ur-pokoj__hlava .wp-block-post-title { margin-block: 0; }
.ur-pokoj__hlava .ur-cena { margin-block-start: .1rem; }

/* =========================================================================
   Sekce hostince — vyvážené sloupce, hustší lístek
   ====================================================================== */

/* Sekce s větším vzduchem nahoře i dole */
.ur-sekce--vysoka {
	padding-block: clamp(5rem, 10vw, 9rem);
}

/* Fotografie vyplní celý sloupec vedle lístku */
.ur-hostinec__sloupec { display: flex; }
.ur-hostinec__foto {
	margin: 0; inline-size: 100%; block-size: 100%;
	display: flex; border-radius: 3px; overflow: hidden;
}
.ur-hostinec__foto img {
	inline-size: 100%; block-size: 100%; object-fit: cover;
	min-block-size: 420px;
	box-shadow: 0 3px 6px rgba(42,33,26,.18), 0 34px 60px -34px rgba(0,0,0,.7);
}

/* Jídelní lístek — větší písmo, sevřenější řádkování.
   WordPress dává mezi bloky vlastní blockGap, ten tu nulujeme a rozestupy
   řídíme odsazením jednotlivých položek. */
.ur-listek--husty { padding: clamp(1.5rem, 3vw, 2.25rem) clamp(1.5rem, 3vw, 2.5rem) clamp(1.5rem, 3vw, 2.25rem); }
.ur-listek--husty > * + * { margin-block-start: 0 !important; }
.ur-listek--husty .ur-listek__nadpis {
	font-size: .8125rem; letter-spacing: .18em;
	padding-block-end: .7rem; margin-block-end: .25rem;
}
.ur-listek--husty .ur-polozka { padding-block: .7rem; }
.ur-listek--husty .ur-polozka__hlava { gap: 1.5rem; font-size: 1.3rem; }
.ur-listek--husty .ur-polozka__popis {
	margin-block-start: .2rem !important;
	font-size: .9375rem; line-height: 1.45;
}

/* =========================================================================
   Odsazení sekcí, trojice fotografií, tmavší výzva
   ====================================================================== */

/* Trojice fotografií (sekce akcí) */
.ur-trojice .wp-block-image { margin: 0; }
.ur-trojice img {
	inline-size: 100%; block-size: 100%; object-fit: cover;
	aspect-ratio: 4 / 3; border-radius: 3px;
	transition: transform 1s cubic-bezier(.2,.7,.3,1);
}
.ur-trojice .wp-block-image { overflow: hidden; border-radius: 3px; }
.ur-trojice .wp-block-image:hover img { transform: scale(1.04); }
@media (min-width: 900px) {
	/* prostřední fotka o něco vyšší, ať trojice není strojová */
	.ur-trojice > *:nth-child(2) img { aspect-ratio: 4 / 4.4; }
	.ur-trojice { align-items: center; }
}

/* Perex na střed přes celou šířku sekce */
.ur-perex-stred {
	max-inline-size: 62ch;
	margin-inline: auto !important;
}

/* Výzva k rezervaci — tmavší podklad, ať text nesplývá s fotografií */
.ur-cta .wp-block-cover__background {
	background-image: linear-gradient(180deg, rgba(24,30,20,.88) 0%, rgba(24,30,20,.74) 45%, rgba(24,30,20,.92) 100%) !important;
}
.ur-cta.wp-block-cover { padding-block: clamp(4.5rem, 9vw, 7.5rem); }

/* Patička — víc vzduchu */
.ur-paticka {
	padding-block: clamp(4.5rem, 8vw, 7rem) clamp(2.5rem, 4vw, 3.5rem);
}
.ur-paticka__spodek { padding-block-start: clamp(1.5rem, 3vw, 2.25rem) !important; }

/* Hlavička, obsah i patička na sebe navazují bez mezer.
   WordPress mezi přímé potomky .wp-site-blocks vkládá blockGap — nad hero
   sekcí kvůli tomu prosvítal pruh pozadí. Rozestupy si řídí sekce samy. */
.wp-site-blocks > * + * { margin-block-start: 0 !important; }

/* =========================================================================
   Hlavička a hero — velikosti písma a rozestupy
   ====================================================================== */

/* Navigace — čitelnější písmo */
.ur-hlavicka .wp-block-navigation { font-size: 1.0625rem; }
.ur-hlavicka .wp-block-navigation__container { gap: clamp(1.25rem, 2.2vw, 2.25rem); }
.ur-hlavicka__tel { font-size: .9375rem; letter-spacing: .04em; }
.ur-hlavicka .wp-block-button__link {
	font-size: .8125rem;
	letter-spacing: .11em;
	padding: .95em 1.9em;
}
.ur-logo__nazev { font-size: 1.4rem; }
.ur-logo__podnazev { font-size: .6875rem; letter-spacing: .26em; }

@media (max-width: 1100px) {
	.ur-hlavicka .wp-block-navigation { font-size: 1rem; }
}

/* Hero — rozestupy pod nadpisem a perexem */

.ur-hero__perex { padding-block-end: 4px; }

/* Patička — větší logo a ikonky sociálních sítí */
.ur-logo--paticka { gap: 1rem; }
.ur-logo--paticka .ur-logo__znak { inline-size: 58px; block-size: 58px; }
.ur-logo--paticka .ur-logo__nazev { font-size: 1.85rem; }
.ur-logo--paticka .ur-logo__podnazev { font-size: .75rem; letter-spacing: .28em; margin-block-start: .5rem; }
.ur-paticka .wp-block-social-links { --wp--social-icon-size: 30px; gap: .85rem; }
.ur-paticka .wp-block-social-link { padding: 0; }
.ur-paticka .wp-block-social-link svg { inline-size: 30px; block-size: 30px; }

/* Odesílací tlačítka formulářů — stejná velikost jako ostatní hlavní tlačítka */
.ur-tlacitko {
	padding: 1.2em 2.6em;
	font-size: .875rem;
	letter-spacing: .1em;
}

/* Hlavičky podstránek — rozestupy jako v hero sekci */
.ur-podhlavicka.wp-block-cover { min-block-size: clamp(420px, 60svh, 600px); }
.ur-podhlavicka .ur-rukopis { margin-block-end: 14px; }
.ur-podhlavicka h1 { padding-block-end: 26px; }
.ur-podhlavicka .ur-hero__perex { font-size: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.31), 1.1875rem); }

/* =========================================================================
   Hlavička — nabídka nesmí zalomit na druhý řádek.
   Když zalomí, hlavička je vyšší než --ur-hlavicka-v a nad hero sekcí
   vznikne pruh pozadí.
   ====================================================================== */

.ur-hlavicka .wp-block-navigation__container {
	flex-wrap: nowrap;
	gap: clamp(.9rem, 1.7vw, 1.75rem);
}
.ur-hlavicka .wp-block-navigation-item__content { white-space: nowrap; }
.ur-hlavicka__akce { flex-wrap: nowrap; }
.ur-hlavicka .wp-block-button__link { white-space: nowrap; }
.ur-logo { flex: 0 0 auto; }

@media (max-width: 1240px) {
	.ur-hlavicka .wp-block-navigation { font-size: .9375rem; }
	.ur-hlavicka__vnitrek { padding-inline: clamp(1.25rem, 3vw, 2rem); }
}

/* Otevírací doba — zarovnané dva sloupce */
.ur-doba { display: grid; gap: 0; margin: 0; font-variant-numeric: tabular-nums; }
.ur-doba__radek {
	display: flex; justify-content: space-between; gap: 1.5rem; align-items: baseline;
	padding-block: .45rem;
	border-block-end: 1px solid color-mix(in srgb, currentColor 14%, transparent);
}
.ur-doba__radek:last-child { border-block-end: 0; }
.ur-doba dt { font-weight: 400; opacity: .85; }
.ur-doba dd { margin: 0; font-weight: 500; text-align: end; white-space: nowrap; }
.ur-doba__radek--cely { justify-content: flex-start; }
.ur-doba__radek--cely dd { display: none; }

/* =========================================================================
   Ceník ubytování
   ====================================================================== */

.ur-cenik { align-items: stretch; }
.ur-cenik__karta {
	background: var(--ur-len);
	border: 1px solid var(--ur-linka);
	border-radius: 3px;
	padding: clamp(1.5rem, 3vw, 2.25rem);
	display: flex; flex-direction: column;
	box-shadow: 0 1px 2px rgba(42,33,26,.06), 0 22px 40px -26px rgba(42,33,26,.35);
	transition: transform .4s cubic-bezier(.2,.7,.3,1), box-shadow .4s ease;
}
.ur-cenik__karta:hover {
	transform: translateY(-4px);
	box-shadow: 0 2px 4px rgba(42,33,26,.07), 0 28px 48px -28px rgba(42,33,26,.45);
}
.ur-cenik__karta--svatky {
	background: var(--ur-smrk);
	border-color: var(--ur-smrk);
	color: var(--ur-smetana);
}
.ur-cenik__karta--svatky :where(h3, p) { color: var(--ur-smetana); }

.ur-cenik__nadpis { font-size: clamp(1.5rem, 2.4vw, 1.9rem); margin-block: 0 .35rem; }
.ur-cenik__podtitul {
	font-family: var(--wp--preset--font-family--body);
	font-size: .75rem; letter-spacing: .12em; text-transform: uppercase;
	color: var(--ur-ohen); margin-block: 0 1.5rem;
}
.ur-cenik__karta--svatky .ur-cenik__podtitul { color: var(--ur-med); }

.ur-cenik__radek {
	justify-content: space-between; gap: 1rem; align-items: baseline;
	padding-block: .7rem;
	border-block-end: 1px solid color-mix(in srgb, currentColor 14%, transparent);
}
.ur-cenik__radek p { margin-block: 0; }
.ur-cenik__popis { font-size: .9375rem; }
.ur-cenik__cena {
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.35rem; white-space: nowrap; font-variant-numeric: tabular-nums;
}

.ur-cenik__priplatek {
	margin-block-start: auto; padding-block-start: 1.35rem;
}
.ur-cenik__priplatek > .wp-block-group { justify-content: space-between; gap: 1rem; align-items: baseline; }
.ur-cenik__priplatek p { margin-block: 0; }
.ur-cenik__priplatek .ur-cenik__cena { color: var(--ur-ohen); }
.ur-cenik__karta--svatky .ur-cenik__priplatek .ur-cenik__cena { color: var(--ur-med); }
.ur-cenik__jednotka {
	font-size: .6875rem; letter-spacing: .12em; text-transform: uppercase;
	color: var(--ur-seda); text-align: end; margin-block-start: .2rem !important;
}
.ur-cenik__karta--svatky .ur-cenik__jednotka { color: color-mix(in srgb, var(--ur-smetana) 62%, transparent); }

.ur-cenik__info {
	background: color-mix(in srgb, var(--ur-pisek) 55%, transparent);
	border-radius: 3px;
	padding: clamp(1.35rem, 2.5vw, 1.85rem);
}
.ur-cenik__info .ur-listek__nadpis { margin-block-start: 0; }
.ur-cenik__info p { font-size: .9375rem; margin-block-end: 0; }

.ur-listek__prazdny {
	padding: 1.25rem 1.5rem; border-radius: 3px;
	background: color-mix(in srgb, var(--ur-med) 18%, transparent);
	color: var(--ur-kura);
}

/* Stručný ceník v náhledu na úvodní stránce */
.ur-cenik-strucne .ur-cenik__radek:first-child { border-block-start: 1px solid var(--ur-linka); }
.ur-cenik-strucne .ur-cenik__jednotka { text-align: start; margin-block-start: .1rem !important; }
.ur-cenik-strucne .ur-cenik__popis { margin-block: 0; }

/* Tlačítka v hero blíž k textu */
.ur-hero .wp-block-buttons { margin-block-start: 24px !important; }

/* =========================================================================
   Lightbox
   ====================================================================== */

.ur-lightbox {
	position: fixed; inset: 0; z-index: 9999;
	display: none; align-items: center; justify-content: center;
	background: rgba(24, 30, 20, .94);
	padding: clamp(1rem, 4vw, 3rem);
	opacity: 0; transition: opacity .25s ease;
}
.ur-lightbox.je-otevreny { display: flex; opacity: 1; }
body.ur-lightbox-otevren { overflow: hidden; }

.ur-lightbox__ramec {
	margin: 0; max-inline-size: min(1400px, 92vw); max-block-size: 86vh;
	display: flex; flex-direction: column; align-items: center; gap: 1rem;
}
.ur-lightbox__ramec img {
	max-inline-size: 100%; max-block-size: 78vh;
	object-fit: contain; border-radius: 3px;
	box-shadow: 0 30px 70px -30px rgba(0,0,0,.8);
	animation: ur-lightbox-vjezd .3s cubic-bezier(.2,.7,.3,1);
}
@keyframes ur-lightbox-vjezd { from { opacity: 0; transform: scale(.97); } to { opacity: 1; transform: none; } }
.ur-lightbox__ramec figcaption {
	font-family: var(--wp--preset--font-family--rukopis, "Caveat", cursive);
	font-size: 1.35rem; color: var(--ur-pisek); text-align: center;
}

.ur-lightbox__zavrit,
.ur-lightbox__sipka {
	position: absolute; z-index: 2;
	border: 0; background: rgba(244,234,218,.1); color: var(--ur-smetana);
	inline-size: 3rem; block-size: 3rem; border-radius: 50%;
	font-size: 1.75rem; line-height: 1; cursor: pointer;
	display: grid; place-items: center;
	transition: background .25s ease, transform .25s ease;
}
.ur-lightbox__zavrit:hover,
.ur-lightbox__sipka:hover { background: var(--ur-ohen); transform: scale(1.06); }
.ur-lightbox__zavrit { inset-block-start: clamp(1rem, 3vw, 2rem); inset-inline-end: clamp(1rem, 3vw, 2rem); font-size: 2rem; }
.ur-lightbox__sipka--zpet  { inset-inline-start: clamp(.5rem, 3vw, 2rem); }
.ur-lightbox__sipka--vpred { inset-inline-end: clamp(.5rem, 3vw, 2rem); }
.ur-lightbox__pocitadlo {
	position: absolute; inset-block-end: clamp(1rem, 3vw, 2rem); inset-inline: 0;
	text-align: center; color: color-mix(in srgb, var(--ur-smetana) 60%, transparent);
	font-size: .8125rem; letter-spacing: .16em; margin: 0;
}
@media (max-width: 700px) {
	.ur-lightbox__sipka { inline-size: 2.5rem; block-size: 2.5rem; font-size: 1.35rem; }
}

/* Logo v patičce se nesmí lámat */
.ur-logo--paticka .ur-logo__nazev { white-space: nowrap; }

/* Odkazy v tmavých sekcích musí být vidět (výchozí barva odkazu je tmavě zelená) */
.ur-sekce--tmava a:not(.wp-block-button__link):not(.ur-dlazdice__vice),
.ur-cta a:not(.wp-block-button__link),
.ur-hero a:not(.wp-block-button__link) {
	color: var(--ur-pisek);
	text-decoration-color: color-mix(in srgb, var(--ur-pisek) 55%, transparent);
}
.ur-sekce--tmava a:not(.wp-block-button__link):hover,
.ur-cta a:not(.wp-block-button__link):hover { color: var(--ur-med); }

/* Odkazy uvnitř formuláře jsou na světlé kartě — musí zůstat tmavé,
   i když je celá sekce tmavá. */
.ur-sekce--tmava .ur-form a:not(.wp-block-button__link),
.ur-cta .ur-form a:not(.wp-block-button__link) {
	color: var(--ur-smrk);
	text-decoration-color: color-mix(in srgb, var(--ur-smrk) 45%, transparent);
}
.ur-sekce--tmava .ur-form a:not(.wp-block-button__link):hover { color: var(--ur-ohen); }

/* Sekce ve stavu „Připravujeme" */
.ur-pripravujeme {
	max-inline-size: 640px; margin-inline: auto;
	margin-block-start: clamp(2rem, 4vw, 3rem);
	padding: clamp(2rem, 4vw, 3rem);
	background: color-mix(in srgb, var(--ur-len) 70%, transparent);
	border: 1px dashed color-mix(in srgb, var(--ur-smrk) 28%, transparent);
	border-radius: 4px;
	text-align: center;
}
.ur-pripravujeme__stitek {
	font-family: var(--wp--preset--font-family--rukopis, "Caveat", cursive);
	font-size: clamp(1.6rem, 3vw, 2.1rem);
	color: var(--ur-ohen);
	margin-block-end: .5rem !important;
}
.ur-pripravujeme p:last-child { color: var(--ur-seda); font-size: .9375rem; margin-block-end: 0; }

/* =========================================================================
   Formuláře — oprava přetékání (fieldset má vlastní minimální šířku)
   ====================================================================== */

.ur-form__krok {
	min-inline-size: 0;
	inline-size: 100%;
	display: block;
	border: 0;
}
.ur-form__krok + .ur-form__krok {
	padding-block-start: clamp(1.5rem, 3vw, 2.25rem);
	border-block-start: 1px solid var(--ur-linka);
}
.ur-form__nadpis {
	display: flex; align-items: center; gap: .75rem;
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.25rem; color: var(--ur-smrk);
	margin: 0 0 1.25rem;
}
.ur-form__mrizka { min-inline-size: 0; }
.ur-form__pole { min-inline-size: 0; }
.ur-form :is(input, select, textarea) { max-inline-size: 100%; box-sizing: border-box; }

/* Odkaz pod mapou */
.ur-mapa__odkaz { margin-block-start: .85rem; font-size: .9375rem; }

/* Mapa a odkaz pod ní */
.ur-mapa { border: 1px solid var(--ur-linka); }
.ur-mapa__odkaz a { font-weight: 500; }

/* Hero — víc vzduchu pod tlačítky, popisek fotky na jeden řádek */
.ur-hero .wp-block-buttons { padding-block-end: 56px; }
.ur-polaroid figcaption { white-space: nowrap; font-size: 1.25rem; }
.ur-hero__polaroid figcaption { font-size: 1.3rem; }
.ur-hero__polaroid { padding: 1.15rem 1.15rem 3.6rem; }

/* Adresa v patičce */
.ur-paticka__nazev {
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.0625rem; color: var(--ur-smetana); margin-block-end: .35rem;
}
.ur-adresa { line-height: 1.75; display: block; }

/* Poznámka pro provozovatele v právních textech */
.ur-poznamka-vzor {
	margin-block-start: clamp(2rem, 4vw, 3rem);
	padding: 1.25rem 1.5rem;
	background: color-mix(in srgb, var(--ur-med) 16%, transparent);
	border-inline-start: 3px solid var(--ur-med);
	border-radius: 0 4px 4px 0;
	font-size: .9375rem; color: var(--ur-kura);
}

/* Text v hero má pod sebou vlastní jemný podklad, ať nesplývá s fotografií */
.ur-hero__obsah {
	position: relative;
	isolation: isolate;
}
.ur-hero__obsah::before {
	content: "";
	position: absolute;
	inset: -2.5rem -3.5rem -2rem -3.5rem;
	z-index: -1;
	background: radial-gradient(120% 100% at 22% 50%, rgba(20,26,17,.62) 0%, rgba(20,26,17,.34) 48%, rgba(20,26,17,0) 78%);
	pointer-events: none;
}
.ur-hero h1.ur-hero__nadpis,
.ur-hero__perex {
	text-shadow: 0 1px 22px rgba(16,20,13,.55);
}
@media (max-width: 780px) {
	.ur-hero__obsah::before { inset: -1.5rem -1.5rem; }
}

/* Perex v hlavičce podstránky se vejde na jeden řádek, na mobilu se zalomí */
.ur-podhlavicka .ur-hero__perex { max-inline-size: min(100%, 95ch); }

/* Poznámka pod jídelním lístkem */
.ur-listek__alergeny {
	text-align: center; font-size: .8125rem; color: var(--ur-seda);
	margin-block-start: 48px;
}
.ur-pripravujeme .ur-listek__prazdny {
	margin-block-start: 1.25rem; font-size: .875rem;
	background: color-mix(in srgb, var(--ur-med) 20%, transparent);
	color: var(--ur-kura); padding: .85rem 1.1rem; border-radius: 4px;
}

/* Panel „Připravujeme" na tmavé sekci — světlá karta, ať je text čitelný */
.ur-sekce--tmava .ur-pripravujeme,
.ur-cta .ur-pripravujeme {
	background: var(--ur-len);
	border-style: solid;
	border-color: color-mix(in srgb, var(--ur-smrk) 22%, transparent);
	box-shadow: 0 2px 4px rgba(42,33,26,.1), 0 24px 44px -26px rgba(0,0,0,.5);
}
.ur-sekce--tmava .ur-pripravujeme p { color: var(--ur-seda); }
.ur-sekce--tmava .ur-pripravujeme .ur-pripravujeme__stitek { color: var(--ur-ohen); }
.ur-sekce--tmava .ur-pripravujeme a:not(.wp-block-button__link) {
	color: var(--ur-smrk);
	text-decoration-color: color-mix(in srgb, var(--ur-smrk) 45%, transparent);
}
.ur-sekce--tmava .ur-pripravujeme a:not(.wp-block-button__link):hover { color: var(--ur-ohen); }

/* =========================================================================
   Mobilní nabídka — ikona hamburgeru
   Bez explicitní barvy dědí tmavou barvu textu a na fotce v hero zanikne.
   ====================================================================== */

.ur-hlavicka .wp-block-navigation__responsive-container-open {
	color: var(--ur-smrk);
	padding: .35rem;
	margin-inline-start: -.35rem;
	transition: color .35s ease, opacity .25s ease;
}
.ur-hlavicka .wp-block-navigation__responsive-container-open svg {
	fill: currentColor;
	inline-size: 30px;
	block-size: 30px;
}
.ur-hlavicka .wp-block-navigation__responsive-container-open:hover { opacity: .7; }

/* Nad hero fotkou musí být ikona světlá */
body.ur-hero-nahore .ur-hlavicka:not(.ur-hlavicka--pevna) .wp-block-navigation__responsive-container-open {
	color: var(--ur-smetana);
	filter: drop-shadow(0 1px 6px rgba(16,20,13,.55));
}

/* Zavírací křížek uvnitř rozbalené nabídky */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	color: var(--ur-smetana);
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close svg {
	fill: currentColor;
	inline-size: 30px;
	block-size: 30px;
}

/* Na mobilu má hlavička jen logo, hamburger a tlačítko — víc vzduchu mezi ně */
@media (max-width: 781px) {
	/* Pořadí: logo — tlačítko — hamburger (nabídka je v hlavičce až za akcemi) */
	.ur-hlavicka__vnitrek { gap: .6rem; justify-content: space-between; }
	.ur-hlavicka__vnitrek > .wp-block-navigation { order: 3; flex: 0 0 auto; }
	.ur-hlavicka__akce { order: 2; margin-inline-start: auto; }
	.ur-logo { order: 1; min-inline-size: 0; }

	.ur-logo__znak { inline-size: 32px; block-size: 32px; }
	.ur-logo { gap: .5rem; }
	.ur-logo__nazev { font-size: 1.05rem; }
	.ur-logo__podnazev { font-size: .5625rem; letter-spacing: .2em; margin-block-start: .25rem; }
	.ur-logo--paticka .ur-logo__znak { inline-size: 48px; block-size: 48px; }
	.ur-logo--paticka .ur-logo__nazev { font-size: 1.5rem; }

	.ur-hlavicka .wp-block-button__link { padding: .75em 1.15em; font-size: .6875rem; letter-spacing: .08em; }
	.ur-hlavicka .wp-block-navigation__responsive-container-open svg { inline-size: 28px; block-size: 28px; }
}

@media (max-width: 420px) {
	.ur-logo__podnazev { display: none; }
	.ur-logo__nazev { font-size: 1rem; }
	.ur-hlavicka .wp-block-button__link { padding: .7em 1rem; font-size: .625rem; }
}

/* =========================================================================
   Rozbalená mobilní nabídka — velké, dobře trefitelné položky
   Odkazy jinak dědí drobné písmo z desktopové navigace v hlavičce.
   ====================================================================== */

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	inline-size: 100%;
	justify-content: center;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	gap: clamp(1.6rem, 6vw, 2.5rem);
	align-items: center;
	inline-size: 100%;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	inline-size: 100%;
	text-align: center;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1.85rem, 8.5vw, 2.6rem);
	font-weight: 400;
	letter-spacing: -.01em;
	line-height: 1.15;
	color: var(--ur-smetana);
	padding-block: .3rem;
	display: inline-block;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus-visible {
	color: var(--ur-med);
}
/* Podtržítko z desktopové navigace v překryvu nechceme */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content::after {
	display: none;
}

/* Odkazy na sociální sítě v patičce */
.ur-site { display: flex; gap: .85rem; margin-block-start: 1.5rem; }
.ur-site__odkaz {
	inline-size: 42px; block-size: 42px; border-radius: 50%;
	display: grid; place-items: center;
	background: rgba(244,234,218,.09);
	color: var(--ur-smetana);
	transition: background .25s ease, transform .25s ease, color .25s ease;
}
.ur-site__odkaz svg { inline-size: 22px; block-size: 22px; fill: currentColor; }
.ur-site__odkaz:hover { background: var(--ur-ohen); color: var(--ur-smetana); transform: translateY(-2px); }

/* Kontakty pod položkami mobilní nabídky */
.ur-menu-kontakt { display: none; }
.wp-block-navigation__responsive-container.is-menu-open .ur-menu-kontakt {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1.1rem;
	inline-size: 100%;
	margin-block-start: clamp(2.5rem, 8vw, 4rem);
	padding-block-start: clamp(1.75rem, 6vw, 2.5rem);
	border-block-start: 1px solid rgba(244,234,218,.22);
}
.ur-menu-kontakt__polozka {
	display: inline-flex; align-items: center; gap: .7rem;
	font-family: var(--wp--preset--font-family--body);
	font-size: 1.0625rem;
	color: var(--ur-smetana) !important;
	text-decoration: none !important;
	padding-block: .25rem;
}
.ur-menu-kontakt__polozka svg {
	inline-size: 20px; block-size: 20px; fill: currentColor; opacity: .8; flex: 0 0 auto;
}
.ur-menu-kontakt__polozka:hover { color: var(--ur-med) !important; }
.ur-menu-kontakt .ur-site { margin-block-start: .5rem; }
.ur-menu-kontakt .ur-site__odkaz { background: rgba(244,234,218,.12); }

/* V překryvu jde nabídka první, kontakty pod ni */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { order: 1; }
.wp-block-navigation__responsive-container.is-menu-open .ur-menu-kontakt { order: 2; }

/* =========================================================================
   Sekce na sebe navazují bez proužku pozadí
   WordPress mezi bloky v obsahu vkládá mezeru; u celoplošných sekcí,
   které si řídí odsazení samy, tím vzniká viditelný pruh.
   ====================================================================== */

.wp-block-post-content > .alignfull + .alignfull { margin-block-start: 0 !important; }

/* =========================================================================
   Storno podmínky
   ====================================================================== */

.ur-storno { display: grid; gap: 0; }
.ur-storno__radek {
	justify-content: space-between !important;
	align-items: center;
	gap: 1.5rem;
	padding-block: 1.35rem;
	padding-inline-start: 1.25rem;
	border-block-end: 1px solid var(--ur-linka);
	border-inline-start: 3px solid transparent;
	transition: background .25s ease;
}
.ur-storno__radek:last-child { border-block-end: 0; }
.ur-storno__radek p { margin-block: 0; }

.ur-storno__obdobi {
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1.15rem, 2vw, 1.45rem);
	color: var(--ur-smrk);
	line-height: 1.2;
}
.ur-storno__popis {
	font-size: .8125rem; letter-spacing: .1em; text-transform: uppercase;
	color: var(--ur-seda); margin-block-start: .3rem !important;
}
.ur-storno__castka {
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1.75rem, 3.5vw, 2.4rem);
	line-height: 1; text-align: end; font-variant-numeric: tabular-nums;
}
.ur-storno__jednotka {
	font-size: .6875rem; letter-spacing: .12em; text-transform: uppercase;
	color: var(--ur-seda); text-align: end; margin-block-start: .35rem !important;
}

/* Barevné odlišení podle výše poplatku */
.ur-storno__radek--zdarma   { border-inline-start-color: var(--ur-mech); }
.ur-storno__radek--castecne { border-inline-start-color: var(--ur-med); }
.ur-storno__radek--plne     { border-inline-start-color: var(--ur-ohen); }
.ur-storno__radek--zdarma   .ur-storno__castka { color: var(--ur-mech); }
.ur-storno__radek--castecne .ur-storno__castka { color: var(--ur-med); }
.ur-storno__radek--plne     .ur-storno__castka { color: var(--ur-ohen); }

@media (max-width: 600px) {
	.ur-storno__radek { padding-inline-start: 1rem; }
	.ur-storno__castka { font-size: 1.6rem; }
}

/* =========================================================================
   Akce: víkend i na jednu noc — proužek nad hlavičkou a karta u ceníku
   ====================================================================== */

.ur-prouzek {
	background: var(--ur-ohen); color: var(--ur-smetana);
	font-size: .875rem; line-height: 1.45; text-align: center;
	padding: .6rem 1.25rem;
}
.ur-prouzek p { margin: 0; }
.ur-prouzek a { color: inherit; font-weight: 600; text-underline-offset: .2em; white-space: nowrap; }
.ur-prouzek a:hover { color: var(--ur-pisek); }

.ur-akce-vikend {
	display: grid; grid-template-columns: 1fr auto; gap: .4rem 1.75rem; align-items: center;
	margin-block-start: var(--wp--preset--spacing--30);
	padding: clamp(1.25rem, 2.5vw, 1.75rem);
	background: var(--ur-len);
	border: 1.5px dashed color-mix(in srgb, var(--ur-ohen) 55%, transparent);
	border-radius: 3px;
	rotate: -.4deg;
}
.ur-akce-vikend p { margin: 0; }
.ur-akce-vikend__stitek {
	grid-column: 1 / -1;
	font-size: .6875rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
	color: var(--ur-ohen);
}
.ur-akce-vikend__nadpis {
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1.35rem, 2.2vw, 1.65rem); line-height: 1.2; color: var(--ur-smrk);
}
.ur-akce-vikend__text { grid-column: 1; font-size: .9375rem; color: var(--ur-seda); }
.ur-akce-vikend__cena {
	grid-column: 2; grid-row: 2 / span 2; text-align: end;
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1.9rem, 3vw, 2.4rem); line-height: 1; white-space: nowrap; color: var(--ur-ohen);
}
.ur-akce-vikend__cena span {
	display: block; margin-block-start: .45rem;
	font-family: var(--wp--preset--font-family--body);
	font-size: .6875rem; letter-spacing: .12em; text-transform: uppercase; color: var(--ur-seda);
}
.ur-akce-vikend__odkaz {
	grid-column: 1 / -1; justify-self: start; margin-block-start: .35rem;
	font-weight: 600; color: var(--ur-ohen); text-underline-offset: .2em;
}
.ur-akce-vikend__odkaz:hover { color: var(--ur-smrk); }
.ur-akce-vikend--siroka { rotate: none; margin-block-end: var(--wp--preset--spacing--30); }

@media (max-width: 560px) {
	.ur-akce-vikend { grid-template-columns: 1fr; }
	.ur-akce-vikend__cena { grid-column: 1; grid-row: auto; text-align: start; margin-block-start: .5rem; }
}

/* Postup akce — očíslované kroky ---------------------------------------- */
.ur-krok__cislo {
	font-family: var(--wp--preset--font-family--display);
	font-size: 3rem; line-height: 1; color: var(--ur-ohen);
	margin-block-end: .75rem;
}
.ur-krok h3 { margin-block: 0 .5rem; }
.ur-krok p:last-child { margin-block-end: 0; color: var(--ur-seda); }

/* Nadlinka zarovnaná na střed — inline-flex by zůstal vlevo. */
.ur-nadlinka.has-text-align-center { display: flex; }
