/*
Theme Name: Apartmány von Geramb
Theme URI: https://vongeramb.sk
Description: Child téma nad Twenty Twenty-Five pre Apartmány von Geramb v Banskej Štiavnici. Tokeny (farby, písma, veľkosti, rozostupy) sú v theme.json.
Author: Kristl Design Studio
Template: twentytwentyfive
Version: 1.0.38
Requires at least: 6.6
Text Domain: geramb-child
*/

/* =========================================================
   Do tohto súboru patrí len to, čo editor nastaviť nevie:
   mriežky, vzťahy medzi blokmi, hovery, breakpointy a dekorácie.
   Farby a veľkosti odkazujú na presety z theme.json.
   Prefix tried: geramb-
   ========================================================= */

:root {
	--geramb-okraj: 20px;
	--geramb-vyska-hlavicky: 76px;
	--geramb-atrament-jemny: #4B5058;
	--geramb-linka: rgba(28, 33, 41, .16);
	--geramb-safran-hover: #C8922E;
}
@media (min-width: 782px) {
	:root { --geramb-okraj: 40px; --geramb-vyska-hlavicky: 100px; }
}

/* Mobilné veľkosti písma a paddingy sekcií – jedno miesto pre všetky bloky, ktoré používajú presety */
@media (max-width: 781px) {
	body {
		--wp--preset--font-size--nadpis-xl: 38px;
		--wp--preset--font-size--nadpis-l: 30px;
		--wp--preset--font-size--nadpis-m: 22px;
		--wp--preset--font-size--text: 17px;
		--wp--preset--spacing--sekcia-s: 24px;
		--wp--preset--spacing--sekcia-m: 48px;
		--wp--preset--spacing--sekcia-l: 72px;
	}
}

/* Poistka veľkostí nadpisov (pasca 4) – body h1 má vyššiu špecificitu ako globálne štýly */
body h1 { font-size: var(--wp--preset--font-size--nadpis-xl); }
body h2 { font-size: var(--wp--preset--font-size--nadpis-l); }
body h3 { font-size: var(--wp--preset--font-size--nadpis-m); }
h1, h2, h3 { font-optical-sizing: auto; text-wrap: balance; overflow-wrap: break-word; }

html { scroll-behavior: smooth; scroll-padding-top: calc(var(--geramb-vyska-hlavicky) + 16px); }
body { -webkit-font-smoothing: antialiased; }
a { text-underline-offset: 3px; }

/* Žiadne medzery medzi sekciami (pasca 13) */
.wp-site-blocks > * + *,
.wp-block-post-content > * + * { margin-block-start: 0; }

/* ---------- Kostra sekcie ---------- */
.geramb-sekcia { padding-inline: var(--geramb-okraj); }
.geramb-obal { width: 100%; max-width: 1200px; margin-inline: auto; }

.geramb-sekcia .geramb-nadtitulok,
.geramb-hero-siroke .geramb-nadtitulok {
	font-size: var(--wp--preset--font-size--male);
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--modra);
	margin-block-end: 0;
}
.geramb-sekcia .geramb-nadtitulok + .wp-block-heading,
.geramb-hero-siroke .geramb-nadtitulok + .wp-block-heading { margin-block-start: 14px; }
.geramb-sekcia .geramb-perex { color: var(--geramb-atrament-jemny); max-width: 60ch; }
.geramb-sekcia .geramb-sekcia__hlava { max-width: 720px; margin-block-end: var(--wp--preset--spacing--sekcia-s); }
.geramb-sekcia .geramb-sekcia__hlava--riadok { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px 40px; max-width: none; }
.geramb-sekcia__hlava--riadok > * { margin-block-start: 0 !important; }

.geramb-odkaz-sipka a { font-weight: 600; text-decoration: none; border-bottom: 1.5px solid currentColor; padding-bottom: 2px; }
.geramb-odkaz-sipka a:hover { color: var(--wp--preset--color--atrament); }

/* Mriežky: WordPress dáva druhému a ďalšiemu bloku horný margin – v gride ho vypneme (pasca 3) */
.geramb-apartmany__zoznam > :not(:first-child),
.geramb-preco__mriezka > :not(:first-child),
.geramb-tipy__zoznam > :not(:first-child),
.geramb-info__zoznam > :not(:first-child),
.geramb-rezervacia__polia > :not(:first-child),
.geramb-karta > :not(:first-child) { margin-block-start: 0; }

/* ---------- Tlačidlá ---------- */
.wp-block-button__link,
.geramb-rezervacny-formular button,
.geramb-mobil-rezervacia a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding-block: 0;
	white-space: nowrap;
	text-decoration: none;
	transition: background-color .15s, color .15s, border-color .15s;
}
/* Šafrán = rezervácia. Nikde inde sa nepoužíva. */
.wp-block-button.geramb-tlacidlo--safran > .wp-block-button__link,
.geramb-rezervacny-formular .geramb-tlacidlo--safran,
.geramb-mobil-rezervacia .geramb-tlacidlo--safran {
	background: var(--wp--preset--color--safran);
	color: var(--wp--preset--color--atrament);
	border-color: var(--wp--preset--color--safran);
}
.wp-block-button.geramb-tlacidlo--safran > .wp-block-button__link:hover,
.geramb-rezervacny-formular .geramb-tlacidlo--safran:hover,
.geramb-mobil-rezervacia .geramb-tlacidlo--safran:hover { background: var(--geramb-safran-hover); border-color: var(--geramb-safran-hover); color: var(--wp--preset--color--atrament); }
.geramb-rezervacny-formular .geramb-tlacidlo--atrament { background: var(--wp--preset--color--atrament); color: #fff; border-color: var(--wp--preset--color--atrament); }
.geramb-rezervacny-formular .geramb-tlacidlo--atrament:hover { background: #000; }
/* Obrysové tlačidlo – rovnaký začiatok selektora ako WordPress (pasca 17) */
.geramb-sekcia .wp-block-button.is-style-outline > .wp-block-button__link { padding-inline: 18px; }
.geramb-sekcia .wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--wp--preset--color--modra); color: #fff; }

/* ---------- Hlavička ---------- */
.geramb-hlavicka-obal { position: sticky; top: 0; z-index: 50; }
body.admin-bar .geramb-hlavicka-obal { top: 46px; }
/* Do 600 px WordPress lištu administrátora neprilepí (odroluje s obsahom) – hlavička sa lepí úplne hore */
@media (max-width: 600px) { body.admin-bar .geramb-hlavicka-obal { top: 0; } }
@media (min-width: 783px) { body.admin-bar .geramb-hlavicka-obal { top: 32px; } }
.geramb-hlavicka { background: var(--wp--preset--color--vapno); border-bottom: 1px solid var(--geramb-linka); padding-inline: var(--geramb-okraj); }
.geramb-hlavicka .geramb-hlavicka__vnutro { display: flex; align-items: center; gap: 20px; min-height: var(--geramb-vyska-hlavicky); }
.geramb-hlavicka__vnutro > * { margin-block: 0 !important; }
.geramb-hlavicka .geramb-logo { display: flex; align-items: center; gap: 12px; margin-right: auto; }
.geramb-logo > * { margin-block: 0 !important; }
.geramb-logo .geramb-logo__erb { margin: 0; flex: none; width: 56px; }
.geramb-logo .geramb-logo__erb img { width: 100%; height: auto; }
.geramb-logo .geramb-logo__text > * { margin-block: 0; }
.geramb-logo .geramb-logo__nazov { font-family: var(--wp--preset--font-family--nadpisy); font-weight: 400; font-size: 24px; line-height: 1; }
.geramb-logo .geramb-logo__nazov a { color: var(--wp--preset--color--atrament); text-decoration: none; }
.geramb-logo .geramb-logo__podnazov { font-size: 11px; letter-spacing: .04em; white-space: nowrap; color: var(--geramb-atrament-jemny); margin-block-start: 4px; }
@media (min-width: 782px) {
	.geramb-logo .geramb-logo__erb { width: 78px; }
	.geramb-logo .geramb-logo__nazov { font-size: 28px; }
	.geramb-logo .geramb-logo__podnazov { font-size: 12px; letter-spacing: .06em; }
}
/* Ikona menu na mobile a tablete úplne vpravo */
@media (max-width: 1199px) { .geramb-hlavicka__vnutro > .geramb-nav { order: 3; } }
.geramb-nav .wp-block-navigation-item__content { color: var(--wp--preset--color--atrament); font-weight: 500; font-size: 16px; white-space: nowrap; text-decoration: none; }
.geramb-nav .wp-block-navigation-item__content:hover,
.geramb-nav .current-menu-item > .wp-block-navigation-item__content { color: var(--wp--preset--color--modra); text-decoration: underline; }
@media (min-width: 1200px) { .geramb-nav .wp-block-navigation__container { gap: 32px; } }

/* Menu sa zbalí pod 1200 px, nie až pod 600 px (pasca 18) */
@media (max-width: 1199px) {
	.geramb-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.geramb-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
	.geramb-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close { display: flex; }
	.geramb-nav .is-menu-open .wp-block-navigation__responsive-dialog,
	.geramb-nav .is-menu-open .wp-block-navigation__responsive-container-content { width: 100%; }
	.geramb-nav .is-menu-open .wp-block-navigation__container { align-items: flex-start !important; gap: 0; width: 100%; }
	.geramb-nav .is-menu-open .wp-block-navigation-item { width: 100%; border-bottom: 1px solid var(--geramb-linka); }
	.geramb-nav .is-menu-open .wp-block-navigation-item__content { display: block; padding-block: 14px; font-size: 20px; }
}
.geramb-nav .wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--vapno); padding: calc(var(--geramb-vyska-hlavicky) + 8px) var(--geramb-okraj) 24px; }

/* Tlačidlo Rezervovať v hlavičke až od tabletu – na mobile je prilepené tlačidlo dole (pasca 16: špecificita ako WordPress) */
.geramb-hlavicka .geramb-hlavicka__rezervovat.wp-block-buttons { display: none; }
@media (min-width: 782px) { .geramb-hlavicka .geramb-hlavicka__rezervovat.wp-block-buttons { display: flex; } }

/* Prepínač jazykov TranslatePress (v TranslatePress: Prepínač jazykov → Shortcode → skrátené názvy, vlajka pred názvom) */
.geramb-hlavicka .trp-block-container { flex: none; font-size: 14px; font-weight: 600; }
.geramb-hlavicka .trp-shortcode-switcher .trp-language-item { padding-inline: 6px; }
.geramb-hlavicka .trp-shortcode-switcher .trp-current-language-item__wrapper { padding-right: 4px; }

/* Úzke telefóny: hlavička sa musí zmestiť aj do 360 px */
@media (max-width: 781px) { .geramb-hlavicka .geramb-hlavicka__vnutro { gap: 12px; } }
@media (max-width: 389px) {
	.geramb-logo .geramb-logo__erb { width: 46px; }
	.geramb-logo .geramb-logo__nazov { font-size: 22px; }
	.geramb-logo .geramb-logo__podnazov { font-size: 10px; letter-spacing: .02em; }
	.geramb-hlavicka .geramb-logo { gap: 10px; }
}
/* Najužšie telefóny (320 px, napr. starší iPhone SE): menší okraj stránky, erb a medzery; prepínač jazykov bez vlajky */
@media (max-width: 359px) {
	:root { --geramb-okraj: 16px; }
	.geramb-logo .geramb-logo__erb { width: 40px; }
	.geramb-logo .geramb-logo__podnazov { letter-spacing: 0; }
	.geramb-hlavicka .geramb-hlavicka__vnutro { gap: 8px; }
	.geramb-hlavicka .geramb-logo { gap: 8px; }
	.geramb-hlavicka .trp-flag-image { display: none !important; } /* TranslatePress má display s !important */
}
/* Dlhší podnadpis loga v iných jazykoch (napr. ukrajinčina): radšej sa zalomí do dvoch riadkov, než by hlavička pretiekla */
@media (max-width: 781px) {
	.geramb-hlavicka .trp-shortcode-arrow { display: none; } /* vlajka + skratka bez šípky – inak sa hlavička na 360–390 px nezmestí */
	.geramb-hlavicka .trp-shortcode-switcher .trp-current-language-item__wrapper { padding-right: 0; }
	.geramb-hlavicka .geramb-logo, .geramb-logo .geramb-logo__text { min-width: 0; }
	.geramb-logo .geramb-logo__nazov { white-space: nowrap; }
	.geramb-logo .geramb-logo__podnazov { white-space: normal; text-wrap: balance; }
}

/* ---------- Hero – fotka cez celú šírku, tmavý závoj ---------- */
.wp-block-cover.geramb-hero-siroke {
	align-items: flex-end;
	min-height: calc(100vh - var(--geramb-vyska-hlavicky) - 90px);
	min-height: calc(100svh - var(--geramb-vyska-hlavicky) - 90px);
	padding: 0;
}
@media (min-width: 782px) and (max-width: 1023px) { .wp-block-cover.geramb-hero-siroke { min-height: 70vh; } }
@media (min-width: 1024px) { .wp-block-cover.geramb-hero-siroke { min-height: min(86vh, 780px); } }
.geramb-hero-siroke .wp-block-cover__image-background { object-position: 42% 60%; }
@media (min-width: 782px) { .geramb-hero-siroke .wp-block-cover__image-background { object-position: 45% 60%; } }
.geramb-hero-siroke .wp-block-cover__inner-container { width: 100%; padding-inline: var(--geramb-okraj); color: #fff; }
.geramb-hero-siroke .geramb-hero-siroke__obsah { padding-block: 96px 28px; }
@media (min-width: 1024px) { .geramb-hero-siroke .geramb-hero-siroke__obsah { padding-bottom: 128px; } }
.geramb-hero-siroke .geramb-hero-siroke__text { max-width: 600px; text-shadow: 0 1px 18px rgba(0, 0, 0, .25); }
.geramb-hero-siroke h1 { color: #fff; margin-block-end: 18px; }
.geramb-hero-siroke .geramb-nadtitulok { color: #fff; }
.geramb-hero-siroke .geramb-perex { color: rgba(255, 255, 255, .92); }
.geramb-hero-siroke .geramb-odkaz-sipka a { color: #fff; }
/* Závoj: silnejší tam, kde je text. Kontrast textu overený ≥ 5,3 : 1 na 360–1920 px. */
.geramb-hero-siroke--zavoj .wp-block-cover__background {
	opacity: 1 !important;
	background-color: transparent !important;
	background-image: linear-gradient(to top, rgba(28,33,41,.9) 0%, rgba(28,33,41,.78) 65%, rgba(28,33,41,.3) 85%, rgba(28,33,41,0) 100%);
}
@media (min-width: 1024px) and (max-width: 1279px) {
	.geramb-hero-siroke--zavoj .wp-block-cover__background {
		background-image:
			linear-gradient(to right, rgba(28,33,41,.86) 0%, rgba(28,33,41,.76) 62%, rgba(28,33,41,.25) 85%, rgba(28,33,41,0) 100%),
			linear-gradient(to top, rgba(28,33,41,.5) 0%, rgba(28,33,41,0) 65%);
	}
}
@media (min-width: 1280px) {
	.geramb-hero-siroke--zavoj .wp-block-cover__background {
		background-image:
			linear-gradient(to right, rgba(28,33,41,.86) 0%, rgba(28,33,41,.74) 48%, rgba(28,33,41,.2) 72%, rgba(28,33,41,0) 88%),
			linear-gradient(to top, rgba(28,33,41,.5) 0%, rgba(28,33,41,0) 65%);
	}
}

/* ---------- Rezervačný pás (signature: šafrán) ---------- */
.wp-block-post-content > .geramb-rezervacia { position: relative; z-index: 5; }
@media (min-width: 1024px) { .wp-block-post-content > .geramb-rezervacia { margin-block-start: -64px; } }
.geramb-rezervacia__pas { background: var(--wp--preset--color--safran); padding: 22px 20px 20px; }
@media (min-width: 782px) { .geramb-rezervacia__pas { padding: 26px 28px 24px; } }
@media (min-width: 1024px) { .geramb-rezervacia__pas { box-shadow: 0 18px 40px -24px rgba(28, 33, 41, .45); } }
.geramb-rezervacny-formular p { margin: 0; }
.geramb-rezervacia__nadpis { font-size: var(--wp--preset--font-size--male); font-weight: 600; line-height: 1.3; letter-spacing: .08em; text-transform: uppercase; margin-block-end: 14px !important; }
.geramb-rezervacia__polia { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (min-width: 782px) {
	.geramb-rezervacia__pas .geramb-rezervacia__polia { grid-template-columns: 1fr 1fr 1fr 1fr auto; align-items: end; }
}
.geramb-pole { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.geramb-pole label { font-size: 13px; font-weight: 600; }
.geramb-pole input,
.geramb-pole select {
	box-sizing: border-box;
	width: 100%; min-width: 0; height: 52px; min-height: 52px;
	padding: 12px 14px;
	font: 400 16px/1.3 var(--wp--preset--font-family--text);
	color: var(--wp--preset--color--atrament);
	background: #fff;
	border: 1px solid rgba(28, 33, 41, .28);
	border-radius: 2px;
	appearance: none;
}
.geramb-pole select {
	background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
	background-position: calc(100% - 20px) 50%, calc(100% - 15px) 50%;
	background-size: 5px 5px; background-repeat: no-repeat;
	padding-right: 36px;
}
.geramb-rezervacny-formular button { box-sizing: border-box; height: 52px; grid-column: 1 / -1; width: 100%; border: 1.5px solid transparent; border-radius: 2px; padding-inline: 24px; font: 600 16px/1.2 var(--wp--preset--font-family--text); cursor: pointer; }
@media (min-width: 782px) {
	.geramb-rezervacia__pas button { grid-column: auto; width: auto; }
}
.geramb-rezervacia__pozn { margin-top: 14px !important; font-size: var(--wp--preset--font-size--male); }

/* ---------- Apartmány – karty ---------- */
.geramb-apartmany__zoznam { display: grid; gap: 48px; align-items: start; }
@media (min-width: 960px) {
	.geramb-apartmany__zoznam { grid-template-columns: repeat(3, 1fr); gap: 36px; }
	.geramb-apartmany__zoznam--dva { grid-template-columns: repeat(2, 1fr); gap: 48px; }
}
.geramb-karta { display: flex; flex-direction: column; height: 100%; }
.geramb-karta .geramb-karta__foto { overflow: hidden; margin: 0 0 20px; }
.geramb-karta .geramb-karta__foto img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; transition: transform .4s; }
.geramb-karta .geramb-karta__foto:hover img { transform: scale(1.03); }
.geramb-karta h3 { margin: 0 0 6px; }
.geramb-karta h3 a { color: inherit; text-decoration: none; }
.geramb-karta .geramb-karta__povaha { color: var(--geramb-atrament-jemny); margin: 0 0 14px; }
.geramb-sekcia .geramb-parametre { list-style: none; display: flex; flex-wrap: wrap; gap: 6px 0; margin: 0 0 20px; padding: 0; font-size: 15px; }
.geramb-parametre li { margin: 0; }
.geramb-parametre li:not(:last-child)::after { content: "·"; margin: 0 10px; color: var(--geramb-atrament-jemny); }
.geramb-karta .geramb-karta__paticka { margin-top: auto; padding-top: 18px; border-top: 1px solid var(--geramb-linka); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; }
.geramb-karta__paticka > * { margin-block: 0 !important; }
.geramb-sekcia .geramb-cena,
.geramb-mobil-rezervacia .geramb-cena { margin: 0; font-size: 15px; color: var(--geramb-atrament-jemny); white-space: nowrap; }
.geramb-cena strong { font-family: var(--wp--preset--font-family--nadpisy); font-size: 26px; font-weight: 400; color: var(--wp--preset--color--atrament); margin-inline: 2px; }
.geramb-karta__tlacidla { gap: 10px; flex-wrap: nowrap; }
.geramb-karta__tlacidla .wp-block-button__link { padding-inline: 18px; }
@media (max-width: 420px) {
	.geramb-karta .geramb-karta__tlacidla { width: 100%; }
	.geramb-karta__tlacidla .wp-block-button { flex: 1; }
	.geramb-karta__tlacidla .wp-block-button__link { width: 100%; }
}
@media (min-width: 600px) and (max-width: 959px) {
	.geramb-karta { display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; }
	.geramb-karta .geramb-karta__foto { margin: 0; grid-row: span 5; }
	.geramb-karta .geramb-karta__foto img { height: 100%; }
}

/* ---------- Čo vás tu čaká – fotka vedľa textu ---------- */
.geramb-preco__mriezka { display: grid; gap: 24px; }
.geramb-preco__polozka { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 18px; align-items: center; }
.geramb-preco__polozka > * { margin-block: 0 !important; }
.geramb-preco__polozka .geramb-preco__foto { overflow: hidden; margin: 0; }
.geramb-preco__polozka .geramb-preco__foto img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; transition: transform .6s ease; }
.geramb-preco__polozka:hover .geramb-preco__foto img { transform: scale(1.04); }
.geramb-preco__text h3 { font-size: 22px; margin: 0 0 8px; }
.geramb-preco__text p { margin: 0; color: var(--geramb-atrament-jemny); font-size: 16px; }
/* dlhé slová v iných jazykoch (napr. „Restaurierungsarbeiten“) nesmú roztiahnuť stĺpec na úzkom mobile */
.geramb-preco__text { overflow-wrap: break-word; }
.geramb-preco__text:lang(de) { hyphens: auto; hyphenate-limit-chars: 10 4 4; }
@media (min-width: 782px) {
	.geramb-preco__mriezka { grid-template-columns: repeat(2, 1fr); gap: 36px 40px; }
	.geramb-preco__polozka { grid-template-columns: 168px minmax(0, 1fr); gap: 26px; }
}
@media (min-width: 1100px) { .geramb-preco__text h3 { font-size: 24px; } }

/* ---------- Pávia tapeta – pevné pozadie, stránka sa posúva po nej ----------
   clip-path + position: fixed funguje aj v Safari na iPhone (background-attachment: fixed nie). */
.geramb-tapeta { position: relative; height: 280px; clip-path: inset(0); }
.geramb-tapeta::before { content: ""; position: fixed; inset: 0; background: url("assets/img/tapeta.webp") center 60% / cover no-repeat; }
@media (min-width: 782px) { .geramb-tapeta { height: 420px; } }

/* ---------- Palác ---------- */
.geramb-palac__vnutro { gap: 32px; }
@media (min-width: 900px) { .geramb-palac .geramb-palac__vnutro { gap: 72px; } }
.geramb-palac figure { margin: 0; }
.geramb-palac figcaption { font-size: var(--wp--preset--font-size--male); color: var(--geramb-atrament-jemny); margin-top: 10px; text-align: left; }

/* ---------- Tipy ---------- */
.geramb-tipy__zoznam {
	display: grid; grid-auto-flow: column; grid-auto-columns: 82%; gap: 20px;
	overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 12px;
	margin-inline: calc(var(--geramb-okraj) * -1); padding-inline: var(--geramb-okraj); scroll-padding-inline: var(--geramb-okraj);
}
.geramb-tip { scroll-snap-align: start; }
.geramb-tip > * { margin-block-start: 0; }
.geramb-tip figure { margin: 0 0 16px; }
.geramb-tip img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.geramb-tip h3 { margin: 0 0 6px !important; }
.geramb-tip p { color: var(--geramb-atrament-jemny); font-size: 16px; margin: 0; }
@media (min-width: 782px) {
	.geramb-tipy__zoznam { grid-auto-flow: row; grid-template-columns: repeat(3, 1fr); overflow: visible; margin-inline: 0; padding-inline: 0; gap: 36px; }
}

/* ---------- Dobré vedieť ---------- */
.geramb-info__zoznam { display: grid; }
.geramb-info__polozka { padding: 20px 0; border-top: 1px solid var(--geramb-linka); }
.geramb-info__polozka > * { margin-block: 0 !important; }
.geramb-info__polozka .geramb-info__nazov { font-weight: 600; margin-block-end: 4px !important; }
.geramb-info__polozka p:not(.geramb-info__nazov) { color: var(--geramb-atrament-jemny); }
.geramb-info__polozka p:not(.geramb-info__nazov) + p { margin-block-start: 8px !important; } /* viac odsekov v položke (Parkovanie) */
@media (min-width: 782px) { .geramb-info__zoznam { grid-template-columns: 1fr 1fr; column-gap: 56px; } }
/* Na podstránke apartmánu je stĺpec úzky: posledná položka, ktorá by v riadku ostala sama (dlhé Parkovanie pri Dalí a Romance), ide cez oba stĺpce */
@media (min-width: 782px) { .geramb-detail .geramb-info__zoznam > .geramb-info__polozka:last-child:nth-child(odd) { grid-column: 1 / -1; } }

/* ---------- Kontakt ---------- */
.geramb-kontakt__vnutro { gap: 40px; }
@media (min-width: 900px) { .geramb-kontakt .geramb-kontakt__vnutro { gap: 64px; } }
.geramb-kontakt .geramb-kontakt__udaje { margin: 0 0 6px; }
.geramb-kontakt .geramb-kontakt__udaje a { font-weight: 600; }
.geramb-mapa { display: block; width: 100%; min-height: 320px; height: 100%; border: 0; filter: grayscale(.35); }
@media (min-width: 900px) { .geramb-mapa { min-height: 560px; } }
.geramb-kontakt h2 + .geramb-kontakt__udaje { margin-top: 21px; }
/* Formulár Forminator – vzhľad drží téma (vo Forminatore štýl „Žiadny“) */
.geramb-kontakt .forminator-ui.forminator-custom-form { margin-top: 28px; min-width: 0; overflow: hidden; font-size: 16px; }
/* zdvojená trieda prebije pravidlo Forminatora (0-6-0, načíta sa až po téme) */
.geramb-kontakt .forminator-ui.forminator-custom-form[data-grid] .forminator-row.forminator-row { margin-bottom: 14px; }
.geramb-kontakt .forminator-ui.forminator-custom-form[data-grid] .forminator-row.forminator-row-last { margin-bottom: 0; }
.geramb-kontakt .forminator-ui .forminator-label { display: block; margin: 0 0 6px; font-size: 13px; font-weight: 600; line-height: 1.6; color: var(--wp--preset--color--atrament); }
.geramb-kontakt .forminator-ui .forminator-required { display: none; } /* povinné sú všetky polia */
/* Názov políčka súhlasu čítajú len čítačky obrazovky, viditeľný je text súhlasu */
.geramb-kontakt .forminator-ui .forminator-field-consent .forminator-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.geramb-kontakt .forminator-ui input[type="text"],
.geramb-kontakt .forminator-ui input[type="email"],
.geramb-kontakt .forminator-ui textarea { box-sizing: border-box; width: 100%; min-height: 52px; padding: 12px 14px; font: 400 16px/1.4 var(--wp--preset--font-family--text); color: var(--wp--preset--color--atrament); background: #fff; border: 1px solid rgba(28, 33, 41, .28); border-radius: 2px; }
.geramb-kontakt .forminator-ui textarea { display: block; min-height: 109px; resize: vertical; }
.geramb-kontakt .forminator-ui input:focus-visible,
.geramb-kontakt .forminator-ui textarea:focus-visible { outline: 2px solid var(--wp--preset--color--modra); outline-offset: 1px; }
.geramb-kontakt .forminator-ui .forminator-checkbox__wrapper { display: flex; gap: 10px; align-items: flex-start; }
.geramb-kontakt .forminator-ui label.forminator-checkbox { flex: none; display: flex; margin: 0; }
.geramb-kontakt .forminator-ui label.forminator-checkbox input { width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--wp--preset--color--modra); }
.geramb-kontakt .forminator-ui .forminator-checkbox-box { display: none; }
.geramb-kontakt .forminator-ui .forminator-checkbox__label { font-size: var(--wp--preset--font-size--male); line-height: 1.6; }
.geramb-kontakt .forminator-ui .forminator-button-submit { min-height: 52px; padding: 0 24px; background: var(--wp--preset--color--modra); color: #fff; border: 0; border-radius: 2px; font: 600 16px var(--wp--preset--font-family--text); cursor: pointer; }
.geramb-kontakt .forminator-ui .forminator-button-submit:hover { background: var(--wp--preset--color--atrament); }
/* Chyby a potvrdenie po odoslaní */
.geramb-kontakt .forminator-ui .forminator-error-message { display: block; margin-top: 6px; font-size: var(--wp--preset--font-size--male); color: #9B2C2C; }
.geramb-kontakt .forminator-ui .forminator-has_error input,
.geramb-kontakt .forminator-ui .forminator-has_error textarea { border-color: #9B2C2C; }
.geramb-kontakt .forminator-ui .forminator-response-message:not(:empty) { margin: 0 0 20px; padding: 14px 18px; background: #fff; border-left: 3px solid var(--wp--preset--color--modra); font-size: 16px; }
.geramb-kontakt .forminator-ui .forminator-response-message.forminator-error:not(:empty) { border-left-color: #9B2C2C; }
.geramb-kontakt .forminator-ui .forminator-response-message p { margin: 0; }
/* Súhrn chýb pre čítačky obrazovky – viditeľné sú chyby pri poliach */
.geramb-kontakt .forminator-ui .forminator-response-message.forminator-accessible { position: absolute; width: 1px; height: 1px; padding: 0; margin: 0; overflow: hidden; clip: rect(0 0 0 0); border: 0; }

/* ---------- Pätička ---------- */
.geramb-paticka { color: rgba(255, 255, 255, .82); padding: var(--wp--preset--spacing--sekcia-m) var(--geramb-okraj) 32px; font-size: 16px; }
.geramb-paticka a { color: #fff; text-decoration: none; }
.geramb-paticka a:hover { text-decoration: underline; color: #fff; }
.geramb-paticka .geramb-paticka__vnutro { gap: 36px; }
@media (min-width: 782px) { .geramb-paticka .geramb-paticka__vnutro { gap: 40px; } }
.geramb-paticka .geramb-paticka__erb { margin: 0 0 14px; }
.geramb-paticka .geramb-paticka__erb img { width: 118px; height: auto; }
.geramb-paticka .geramb-paticka__nazov { font-family: var(--wp--preset--font-family--nadpisy); font-size: 30px; line-height: 1; color: #fff; margin: 0 0 16px; }
.geramb-paticka h3 { font-family: var(--wp--preset--font-family--text); font-size: var(--wp--preset--font-size--male); font-weight: 600; line-height: 1.3; letter-spacing: .08em; text-transform: uppercase; color: #fff; margin: 0 0 14px; }
.geramb-paticka .geramb-paticka__zoznam { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.geramb-paticka__zoznam li { margin: 0; }
.geramb-paticka .geramb-paticka__spodok { margin-top: 48px; padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, .2); font-size: var(--wp--preset--font-size--male); }
.geramb-paticka .geramb-podpis { margin: 20px 0 0; opacity: .75; }
.geramb-paticka .geramb-podpis a { color: inherit; text-decoration: underline; }

/* ---------- Prilepené tlačidlo rezervácie – mobil ---------- */
.geramb-mobil-rezervacia {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
	display: flex; align-items: center; justify-content: space-between; gap: 16px;
	padding: 12px var(--geramb-okraj) calc(12px + env(safe-area-inset-bottom));
	background: var(--wp--preset--color--vapno);
	border-top: 1px solid var(--geramb-linka);
	box-shadow: 0 -10px 30px -18px rgba(28, 33, 41, .5);
	transition: transform .25s;
}
.geramb-mobil-rezervacia.je-skryty { transform: translateY(110%); }
.geramb-mobil-rezervacia .geramb-cena strong { font-size: 22px; }
.geramb-mobil-rezervacia > * { margin: 0; }
.geramb-mobil-rezervacia .geramb-mobil-rezervacia__akcia { flex: 1; min-width: 0; max-width: 230px; }
/* dlhší text tlačidla v iných jazykoch (napr. „Verfügbarkeit prüfen“) sa na úzkom mobile zalomí */
.geramb-mobil-rezervacia a { box-sizing: border-box; width: 100%; border-radius: 2px; padding-inline: 18px; font: 600 16px/1.2 var(--wp--preset--font-family--text); white-space: normal; text-align: center; }
@media (max-width: 781px) { body { padding-bottom: 76px; } }
@media (min-width: 782px) { .geramb-mobil-rezervacia { display: none; } }

/* ---------- Detail apartmánu ---------- */
.geramb-detail-hlava .geramb-drobky { font-size: var(--wp--preset--font-size--male); color: var(--geramb-atrament-jemny); margin-block-end: 16px; }
.geramb-drobky a { color: var(--geramb-atrament-jemny); }
.geramb-detail-hlava h1 { margin-block-end: 10px; }
.geramb-detail-hlava .geramb-parametre { margin: 16px 0 0; }

/* Mozaika: mobil = posúvanie prstom, desktop = 1 veľká + 4 menšie */
.wp-block-gallery.has-nested-images.geramb-galeria {
	display: grid; gap: 8px; grid-auto-flow: column; grid-auto-columns: 86%;
	overflow-x: auto; scroll-snap-type: x mandatory;
	margin-inline: calc(var(--geramb-okraj) * -1); padding-inline: var(--geramb-okraj); scroll-padding-inline: var(--geramb-okraj);
}
.wp-block-gallery.has-nested-images.geramb-galeria figure.wp-block-image { width: auto !important; margin: 0 !important; scroll-snap-align: start; }
.wp-block-gallery.has-nested-images.geramb-galeria figure.wp-block-image img { width: 100%; height: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.geramb-detail-galeria .geramb-galeria-pocet { font-size: var(--wp--preset--font-size--male); color: var(--geramb-atrament-jemny); margin: 10px 0 0; }
@media (min-width: 782px) {
	.wp-block-gallery.has-nested-images.geramb-galeria { grid-auto-flow: row; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 240px 240px; overflow: visible; margin-inline: 0; padding-inline: 0; }
	.wp-block-gallery.has-nested-images.geramb-galeria figure.wp-block-image:first-child { grid-row: span 2; }
	.wp-block-gallery.has-nested-images.geramb-galeria figure.wp-block-image:nth-child(n+6) { display: none; }
	.wp-block-gallery.has-nested-images.geramb-galeria figure.wp-block-image img { aspect-ratio: auto; }
	.geramb-detail-galeria .geramb-galeria-pocet { display: none; }
}
@media (min-width: 1100px) { .wp-block-gallery.has-nested-images.geramb-galeria { grid-template-rows: 280px 280px; } }

.geramb-detail__vnutro { gap: 48px; }
@media (max-width: 959px) { .geramb-detail .geramb-detail__vnutro > .wp-block-column { flex-basis: 100% !important; } .geramb-detail .geramb-detail__vnutro { flex-wrap: wrap !important; } }
@media (min-width: 960px) { .geramb-detail .geramb-detail__vnutro { gap: 72px; flex-wrap: nowrap !important; } }
.geramb-detail__blok h2 { margin-block-start: 0; }
.geramb-detail__obsah > .geramb-detail__blok + .geramb-detail__blok { margin-top: var(--wp--preset--spacing--sekcia-m); padding-top: var(--wp--preset--spacing--sekcia-m); border-top: 1px solid var(--geramb-linka); }

/* Vybavenie s ikonami (ikony sú v CSS, aby ich v editore nebolo treba riešiť) */
.geramb-sekcia .geramb-vybavenie { list-style: none; margin: 24px 0 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 14px 24px; }
.geramb-vybavenie li { display: flex; gap: 12px; align-items: center; margin: 0; }
.geramb-vybavenie li::before { content: ""; flex: none; width: 26px; height: 26px; background: var(--wp--preset--color--modra); -webkit-mask: var(--geramb-ikona) center / contain no-repeat; mask: var(--geramb-ikona) center / contain no-repeat; }
.geramb-ikona--wifi { --geramb-ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round'%3E%3Cpath d='M2 9a15 15 0 0 1 20 0M5 12.5a10 10 0 0 1 14 0M8.5 16a5 5 0 0 1 7 0'/%3E%3Ccircle cx='12' cy='19.5' r='1'/%3E%3C/svg%3E"); }
.geramb-ikona--tv { --geramb-ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round'%3E%3Crect x='3' y='5' width='18' height='12' rx='1'/%3E%3Cpath d='M8 21h8M12 17v4'/%3E%3C/svg%3E"); }
.geramb-ikona--kuchynka { --geramb-ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round'%3E%3Cpath d='M4 11h16v7a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3v-7zM2 11h20M9 7c0-1.5 1-2 1-3.5M14 7c0-1.5 1-2 1-3.5'/%3E%3C/svg%3E"); }
.geramb-ikona--kava { --geramb-ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round'%3E%3Cpath d='M5 9h11v6a5 5 0 0 1-5 5h-1a5 5 0 0 1-5-5V9zM16 11h1.5a2.5 2.5 0 0 1 0 5H16M8 3v3M11 3v3M14 3v3'/%3E%3C/svg%3E"); }
.geramb-ikona--sprcha { --geramb-ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round'%3E%3Cpath d='M4 21V6a3 3 0 0 1 6 0M8 9h6a3 3 0 0 0-6 0zM9 13v1M11 13v2M13 13v1M10 17v1M12 17v1'/%3E%3C/svg%3E"); }
.geramb-ikona--uteraky { --geramb-ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round'%3E%3Cpath d='M6 3h12v18H6zM6 8h12M9 12h6'/%3E%3C/svg%3E"); }

/* Rezervačný box */
.geramb-box { background: #fff; border: 1px solid var(--geramb-linka); padding: 28px 24px; box-shadow: 0 24px 48px -32px rgba(28, 33, 41, .35); }
.geramb-box > * { margin-block: 0 !important; }
.geramb-box .geramb-cena strong { font-size: 34px; }
.geramb-box .geramb-box__pod-cenou { font-size: var(--wp--preset--font-size--male); color: var(--geramb-atrament-jemny); margin: 4px 0 20px !important; }
.geramb-box .geramb-box__pozn { font-size: var(--wp--preset--font-size--male); color: var(--geramb-atrament-jemny); margin-top: 16px !important; }
.geramb-box .geramb-box__telefon { margin-top: 18px !important; padding-top: 18px; border-top: 1px solid var(--geramb-linka); font-size: 15px; }
.geramb-box__formular .geramb-rezervacia__polia button { margin-top: 6px; }
@media (min-width: 960px) {
	.geramb-detail__bok { align-self: stretch; }
	.geramb-box { position: sticky; top: calc(var(--geramb-vyska-hlavicky) + 24px); }
}

/* Fotogaléria – všetky fotky */
.wp-block-gallery.has-nested-images.geramb-fotky { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.wp-block-gallery.has-nested-images.geramb-fotky figure.wp-block-image { width: auto !important; margin: 0 !important; }
.wp-block-gallery.has-nested-images.geramb-fotky figure.wp-block-image img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; }
/* Pôdorys vo fotogalérii – celý, na bielom, kliknutím sa otvorí vo veľkom */
/* WordPress orezáva fotky v galérii pravidlom s :not(#individual-image), preto aj tu */
.wp-block-gallery.has-nested-images.geramb-fotky figure.wp-block-image.geramb-fotky__podorys:not(#individual-image) img { object-fit: contain; background: #fff; box-shadow: inset 0 0 0 1px var(--geramb-linka); }
@media (min-width: 782px) { .wp-block-gallery.has-nested-images.geramb-fotky { grid-template-columns: repeat(4, 1fr); gap: 12px; } }
/* Fotka na výšku v galérii (maľba v apartmáne Dalí) – dlaždica ukazuje vrch, celá sa ukáže po kliknutí */
.wp-block-gallery figure.wp-block-image.geramb-foto--hore img { object-position: 50% 0; }

/* Zväčšenie po kliknutí – ikonka v rohu fotky. Pri nastavení „Prispôsobiť“ (functions.php) ju WordPress
   posúva dovnútra dlaždice, naše fotky však dlaždicu vypĺňajú celú. */
.wp-lightbox-container .lightbox-trigger { top: 16px !important; right: 16px !important; }

/* Previo */
.geramb-previo iframe { display: block; width: 100%; border: 0; }
.geramb-previo--chyba { border: 1px dashed var(--geramb-atrament-jemny); padding: 16px 20px; background: #fff; }
.geramb-previo--chyba p { margin: 0; }

/* ---------- Podstránka Banská Štiavnica (Kam do mesta) ---------- */
.geramb-hero-siroke--mesto .wp-block-cover__image-background { object-position: 50% 40%; }
.geramb-mesto .geramb-mesto__foto { margin: 0; }
.geramb-mesto .geramb-mesto__foto img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
/* miesta – karty s fotkou */
.geramb-mesto .geramb-mesto__karty { display: grid; gap: 44px 32px; }
.geramb-mesto .geramb-mesto__karty > * { margin-block: 0; }
@media (min-width: 700px) { .geramb-mesto .geramb-mesto__karty { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1100px) { .geramb-mesto .geramb-mesto__karty { grid-template-columns: repeat(3, 1fr); } }
.geramb-mesto .geramb-mesto__karta > * { margin-block: 0; }
.geramb-mesto .geramb-mesto__karta > .geramb-mesto__foto { margin-block-end: 18px; }
.geramb-mesto .geramb-mesto__karta .geramb-top__nazov { font-size: var(--wp--preset--font-size--nadpis-m); line-height: 1.2; margin-block-end: 8px; }
.geramb-mesto .geramb-mesto__karta p { color: var(--geramb-atrament-jemny); }
/* zážitky, reštaurácie, kaviarne – fotka vedľa zoznamu */
.geramb-mesto .geramb-mesto__riadok { gap: 32px; }
@media (min-width: 900px) {
	.geramb-mesto .geramb-mesto__riadok { gap: 64px; }
	.geramb-mesto .geramb-mesto__riadok--obratene { flex-direction: row-reverse; }
	.geramb-mesto .geramb-mesto__bok > .geramb-mesto__foto { position: sticky; top: calc(var(--geramb-vyska-hlavicky) + 24px); }
}
.geramb-mesto .geramb-mesto__zoznam { grid-template-columns: 1fr !important; }
.geramb-mesto .geramb-mesto__zoznam .geramb-info__polozka:first-child { padding-top: 0; border-top: 0; }
.geramb-mesto .geramb-info__polozka .geramb-top__nazov { font-size: var(--wp--preset--font-size--nadpis-m); line-height: 1.2; margin-block-end: 8px !important; }
.geramb-mesto .geramb-info__polozka p + p { margin-block-start: 8px !important; }

/* ---------- Podstránka Palác a história ---------- */
.wp-block-cover.geramb-hero-siroke--clanok { min-height: 62vh; }
@media (min-width: 1024px) {
	.wp-block-cover.geramb-hero-siroke--clanok { min-height: min(72vh, 660px); }
	.geramb-hero-siroke--clanok .geramb-hero-siroke__obsah { padding-bottom: 72px; }
}
.geramb-hero-siroke--clanok .wp-block-cover__image-background { object-position: 50% 45%; }
.geramb-historia .geramb-historia__riadok { gap: 36px; }
@media (min-width: 900px) {
	.geramb-historia .geramb-historia__riadok { gap: 72px; }
	.geramb-historia .geramb-historia__riadok--obratene { flex-direction: row-reverse; }
}
.geramb-historia .geramb-historia__text > * { margin-block: 0; }
.geramb-historia .geramb-historia__text > * + * { margin-block-start: 16px; }
.geramb-historia .geramb-historia__rok { font-family: var(--wp--preset--font-family--nadpisy); font-size: 56px; font-weight: 400; line-height: 1; letter-spacing: -.01em; color: var(--wp--preset--color--modra); }
@media (max-width: 781px) { .geramb-historia .geramb-historia__rok { font-size: 40px; } }
.geramb-historia .geramb-historia__text h2 { margin-block-start: 12px; }
.geramb-historia .geramb-historia__fotky > * { margin-block: 0; }
.geramb-historia .geramb-historia__fotky > * + * { margin-block-start: 28px; }
.geramb-historia .geramb-historia__foto img { display: block; width: 100%; height: auto; }
.geramb-historia .geramb-historia__foto--portret { max-width: 270px; margin-inline: auto; }
.geramb-historia .geramb-historia__foto--erb { max-width: 200px; }
.geramb-historia figcaption,
.geramb-historia .wp-element-caption,
.geramb-historia .wp-block-gallery .blocks-gallery-caption { font-size: var(--wp--preset--font-size--male); line-height: 1.5; color: var(--geramb-atrament-jemny); margin-top: 10px; text-align: left; }
.geramb-historia .wp-block-gallery.has-nested-images.geramb-historia__dvojica { gap: 12px; align-items: flex-start; }
.geramb-historia .wp-block-gallery.has-nested-images.geramb-historia__dvojica figure.wp-block-image figcaption { position: static; background: none; color: var(--geramb-atrament-jemny); padding: 0; margin-top: 8px; max-height: none; overflow: visible; text-shadow: none; text-align: left; font-size: var(--wp--preset--font-size--male); line-height: 1.5; }
@media (max-width: 599px) { .geramb-historia .wp-block-gallery.has-nested-images.geramb-historia__dvojica figure.wp-block-image { width: 100% !important; } }
.geramb-clanok__zdroje { max-width: 760px; font-size: var(--wp--preset--font-size--male); color: var(--geramb-atrament-jemny); }
.geramb-clanok__zdroje > * { margin-block: 0; }
.geramb-clanok__zdroje h2 { font-size: var(--wp--preset--font-size--nadpis-m); color: var(--wp--preset--color--atrament); margin-block-end: 12px; }
.geramb-clanok__zdroje ul { margin: 0; padding-left: 1.1em; display: grid; gap: 6px; }
.geramb-clanok__zdroje a { color: inherit; overflow-wrap: anywhere; }

/* ---------- Podstránka Zdroje fotografií ---------- */
.geramb-zdroje-fotografii .geramb-zdroje-fotografii__zoznam { max-width: 860px; margin: 0; padding-left: 1.1em; display: grid; gap: 12px; }
.geramb-zdroje-fotografii .geramb-zdroje-fotografii__zoznam a { color: var(--wp--preset--color--modra); }

/* ---------- Podstránka Apartmány ---------- */
.geramb-hero-siroke--apartmany .wp-block-cover__image-background { object-position: 50% 55%; }
.geramb-apartmany .geramb-uvod { max-width: 760px; margin-block-end: 48px; }
.geramb-apartmany .geramb-uvod > * { margin-block: 0; }

/* ---------- Podstránka Kontakt ---------- */
.geramb-kontakt--stranka .geramb-perex { margin-block: 16px 4px; }
.geramb-kontakt .geramb-kontakt__stitok { margin: 18px 0 2px; font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--wp--preset--color--modra); }
.geramb-kontakt .geramb-kontakt__stitok + .geramb-kontakt__udaje { margin-top: 0; }

/* ---------- Šablóna 404 ---------- */
.geramb-404 .geramb-sekcia__hlava { max-width: 680px; }
.geramb-404 .geramb-404__kod { font-family: var(--wp--preset--font-family--nadpisy); font-size: 160px; font-weight: 400; line-height: .9; color: var(--wp--preset--color--modra); margin: 0 0 8px; }
@media (max-width: 781px) { .geramb-404 .geramb-404__kod { font-size: 96px; } }
.geramb-404 .geramb-404__tlacidla { margin-top: 28px; gap: 12px; }
.geramb-404 .geramb-404__odkazy { list-style: none; margin: 40px 0 0; padding: 24px 0 0; border-top: 1px solid var(--geramb-linka); display: grid; gap: 10px 32px; }
@media (min-width: 700px) { .geramb-404 .geramb-404__odkazy { grid-template-columns: repeat(4, auto); justify-content: start; } }
.geramb-404 .geramb-404__odkazy li { margin: 0; }
.geramb-404 .geramb-404__odkazy a { font-weight: 600; color: var(--wp--preset--color--modra); }

/* ---------- Právny text (podmienky, ochrana údajov) ---------- */
.geramb-pravny .geramb-pravny__obsah { max-width: 760px; }
.geramb-pravny .geramb-pravny__obsah > * { margin-block: 0; }
.geramb-pravny .geramb-pravny__obsah > * + * { margin-block-start: 14px; }
.geramb-pravny .geramb-pravny__ucinnost { font-size: var(--wp--preset--font-size--male); color: var(--geramb-atrament-jemny); margin-block: 8px 32px !important; }
.geramb-pravny .geramb-pravny__obsah h2 { margin-block: 40px 12px; }
.geramb-pravny .geramb-pravny__obsah ol,
.geramb-pravny .geramb-pravny__obsah ul { padding-left: 1.2em; display: grid; gap: 6px; }
/* Dokument z dvoch častí (Ubytovací a reklamačný poriadok): časť = H2 s čiarou, článok = H3 */
.geramb-pravny .geramb-pravny__obsah h2.geramb-pravny__cast { font-size: clamp(28px, 4vw, 32px); margin-block: 56px 4px; padding-top: 32px; border-top: 1px solid var(--geramb-linka); }
.geramb-pravny .geramb-pravny__obsah h3 { font-size: 21px; margin-block: 32px 10px; }
.geramb-pravny .geramb-pravny__obsah li > ul { margin-top: 6px; list-style: circle; }
.geramb-pravny .geramb-pravny__kontakt { margin-block-start: 48px; padding: 20px 24px; background: #fff; border-left: 3px solid var(--wp--preset--color--modra); font-size: 15px; }
.geramb-pravny .geramb-pravny__kontakt p { margin: 0; }
.geramb-pravny .geramb-pravny__kontakt p + p { margin-block-start: 6px; }

/* ---------- Sezónna ponuka (Vianoce, Valentín, Veľká noc…) ---------- */
/* fakty o ponuke v úvodnej fotke – rovnaký zoznam s bodkami ako parametre apartmánu */
.geramb-hero-siroke .geramb-parametre { list-style: none; display: flex; flex-wrap: wrap; gap: 6px 0; margin: 18px 0 24px; padding: 0; font-size: 16px; font-weight: 600; color: #fff; }
.geramb-hero-siroke .geramb-parametre li::after { color: rgba(255, 255, 255, .7) !important; }
/* šafránový pás s jedným termínom akcie namiesto výberu dátumov */
.geramb-rezervacia__pas--ponuka { gap: 16px 32px; }
.geramb-rezervacia__pas--ponuka .geramb-rezervacia__ponuka-text > * { margin-block: 0; }
.geramb-rezervacia__pas--ponuka .geramb-rezervacia__ponuka-text .geramb-rezervacia__nadpis { margin-block-end: 6px !important; }
@media (max-width: 781px) {
	.geramb-rezervacia__pas--ponuka .geramb-rezervacia__ponuka-tlacidla,
	.geramb-rezervacia__pas--ponuka .wp-block-button,
	.geramb-rezervacia__pas--ponuka .wp-block-button__link { width: 100%; }
}
/* zážitky pod tromi kartami */
.geramb-zima .geramb-zima__zoznam { margin-top: var(--wp--preset--spacing--sekcia-m); }
