/* Drobné úpravy nad rámec původního designu (načítá se po variant-*.css). */

/* Kontaktní sekce: 12px odsazení pod nadpisem „Rezervujte si svůj čas." */
#contact h2 {
	padding-bottom: 12px;
}

/* Objednávkový formulář — hlášky a zvýraznění prázdných povinných polí. */
.form-status {
	padding: 1rem 1.2rem;
	border-radius: 14px;
	margin-bottom: 1.4rem;
}
.form-status--ok { background: #54634B; color: #F9F7F2; }
.form-status--err { background: #8a3b2f; color: #F9F7F2; }
.form-status--mailfail { background: #B07A57; color: #F9F7F2; }
.form-card .is-error {
	border-color: #c0392b !important;
	box-shadow: 0 0 0 2px rgba(192, 57, 43, 0.18);
}

/* ============================================================
   Complianz cookie banner — v duchu webu Babor
   ============================================================ */
.cmplz-cookiebanner {
	background: var(--paper, #F9F7F2) !important;
	color: var(--ink, #2A231E) !important;
	border: 1px solid var(--line, rgba(42, 35, 30, 0.13)) !important;
	border-radius: 18px !important;
	box-shadow: 0 24px 60px rgba(42, 35, 30, 0.18) !important;
	font-family: var(--sans, 'Jost', sans-serif) !important;
	padding: 1.35rem 1.5rem !important;
}
.cmplz-cookiebanner .cmplz-title {
	font-family: var(--serif, 'Fraunces', serif) !important;
	font-weight: 500 !important;
	color: var(--ink, #2A231E) !important;
	font-size: 1.3rem !important;
	letter-spacing: 0 !important;
}
.cmplz-cookiebanner .cmplz-message,
.cmplz-cookiebanner .cmplz-description span {
	color: var(--ink-soft, #5A4F45) !important;
	font-size: 0.9rem !important;
	line-height: 1.5 !important;
}
.cmplz-cookiebanner .cmplz-category-title {
	color: var(--ink, #2A231E) !important;
	font-weight: 500 !important;
}
.cmplz-cookiebanner .cmplz-divider {
	background: var(--line, rgba(42, 35, 30, 0.13)) !important;
}
.cmplz-cookiebanner a.cmplz-link {
	color: var(--clay, #B07A57) !important;
	text-decoration: none !important;
	border-bottom: 1px solid transparent !important;
}
.cmplz-cookiebanner a.cmplz-link:hover {
	color: var(--olive, #54634B) !important;
	border-bottom-color: var(--olive, #54634B) !important;
}
.cmplz-cookiebanner input[type="checkbox"] {
	accent-color: var(--olive, #54634B) !important;
}
.cmplz-cookiebanner .cmplz-always-active {
	color: var(--olive, #54634B) !important;
	font-size: 0.8rem !important;
}

/* Tlačítka */
.cmplz-cookiebanner .cmplz-btn,
button.cmplz-manage-consent {
	font-family: var(--sans, 'Jost', sans-serif) !important;
	border-radius: 999px !important;
	font-size: 0.8rem !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	padding: 0.7em 1.4em !important;
	border: 1px solid var(--olive, #54634B) !important;
	transition: background 0.3s, color 0.3s, border-color 0.3s !important;
}
.cmplz-cookiebanner .cmplz-btn.cmplz-accept {
	background: var(--olive-deep, #39432F) !important;
	color: var(--paper, #F9F7F2) !important;
	border-color: var(--olive-deep, #39432F) !important;
}
.cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover {
	background: var(--olive, #54634B) !important;
	border-color: var(--olive, #54634B) !important;
}
.cmplz-cookiebanner .cmplz-btn.cmplz-deny,
.cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences {
	background: transparent !important;
	color: var(--olive-deep, #39432F) !important;
}
.cmplz-cookiebanner .cmplz-btn.cmplz-deny:hover,
.cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences:hover {
	background: var(--olive-deep, #39432F) !important;
	color: var(--paper, #F9F7F2) !important;
}
.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences,
.cmplz-cookiebanner .cmplz-btn.cmplz-manage-options {
	background: transparent !important;
	border-color: transparent !important;
	color: var(--clay, #B07A57) !important;
	text-decoration: none !important;
}
.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences:hover,
.cmplz-cookiebanner .cmplz-btn.cmplz-manage-options:hover {
	color: var(--olive, #54634B) !important;
}

/* Plovoucí tlačítko „Spravovat souhlas" */
button.cmplz-manage-consent {
	background: var(--paper, #F9F7F2) !important;
	color: var(--olive-deep, #39432F) !important;
	border: 1px solid var(--line, rgba(42, 35, 30, 0.13)) !important;
	box-shadow: 0 6px 18px rgba(42, 35, 30, 0.15) !important;
}
button.cmplz-manage-consent:hover {
	background: var(--olive-deep, #39432F) !important;
	color: var(--paper, #F9F7F2) !important;
	border-color: var(--olive-deep, #39432F) !important;
}

/* ============================================================
   Obsahové / právní stránky (Zásady, cookies, podmínky)
   ============================================================ */
.babor-prose {
	font-family: var(--sans, 'Jost', sans-serif);
	color: var(--ink-soft, #5A4F45);
	line-height: 1.7;
	font-size: var(--base, 1.05rem);
}
.babor-prose h1 {
	font-family: var(--serif, 'Fraunces', serif);
	font-weight: 500;
	font-size: clamp(2rem, 1.5rem + 2.2vw, 3.2rem);
	line-height: 1.08;
	color: var(--ink, #2A231E);
	margin: 0 0 1.6rem;
}
.babor-prose h2 {
	font-family: var(--serif, 'Fraunces', serif);
	font-weight: 500;
	font-size: clamp(1.3rem, 1.1rem + 0.6vw, 1.7rem);
	color: var(--olive-deep, #39432F);
	margin: 2.4rem 0 0.7rem;
}
.babor-prose h3 {
	font-family: var(--serif, 'Fraunces', serif);
	font-weight: 500;
	font-size: 1.2rem;
	color: var(--ink, #2A231E);
	margin: 1.6rem 0 0.5rem;
}
.babor-prose p {
	margin: 0 0 1rem;
}
.babor-prose ul,
.babor-prose ol {
	margin: 0 0 1.2rem 1.3rem;
	padding: 0;
}
.babor-prose li {
	margin-bottom: 0.4rem;
}
.babor-prose a {
	color: var(--clay, #B07A57);
	border-bottom: 1px solid var(--clay, #B07A57);
	text-decoration: none;
	transition: color 0.3s, border-color 0.3s;
}
.babor-prose a:hover {
	color: var(--olive, #54634B);
	border-color: var(--olive, #54634B);
}
.babor-prose strong { color: var(--ink, #2A231E); }
.babor-prose em { color: var(--ink-soft, #5A4F45); }
.babor-prose hr { border: none; border-top: 1px solid var(--line, rgba(42, 35, 30, 0.13)); margin: 2rem 0; }

/* Jméno majitelky pod titulkem v hero (Babor Institut → Eva Jarošková) */
.hero .reveal h1 .hero-name,
.hero h1 .hero-name {
	display: block;
	font-family: var(--serif, 'Fraunces', serif);
	font-style: normal;
	font-weight: 400;
	font-size: clamp(1.4rem, 1rem + 2.2vw, 2.6rem);
	line-height: 1.12;
	color: var(--olive, #54634B);
	margin-top: 0.12em;
	letter-spacing: 0.01em;
}

/* Adresa dole v bočním (mobilním) vyjížděcím menu */
.nav-menu .nav-address { display: none; }
@media (max-width: 980px) {
	.nav-menu .nav-address {
		display: block;
		margin-top: 1.8rem;
		font-size: 0.95rem;
		opacity: 0.85;
	}
	.nav-menu .nav-address a {
		color: inherit;
		display: inline-flex;
		align-items: center;
		gap: 0.4em;
		border-bottom: 1px solid currentColor;
		padding-bottom: 0.1em;
	}
}

.single-cenik.postid-61 nav:not(.scrolled) .nav-address-desk {
    color: var(--paper);
}
.nav-address-desk + .nav-menu{
	margin-left: 2rem;
}

/* ============================================================
   Mobilní plovoucí CTA „Objednat se" — skrytá nahoře, aby nepřekrývala
   tlačítka v hero sekci; objeví se po nascrollování ~10 % stránky
   (JS přidá třídu .is-visible — viz parts/chrome-scripts.php).
   ============================================================ */
@media (max-width: 980px) {
	.mobile-cta {
		opacity: 0;
		visibility: hidden;
		transform: translateY(140%);
		pointer-events: none;
		transition: opacity .35s ease, visibility .35s ease, transform .4s cubic-bezier(.22, .61, .36, 1);
	}
	.mobile-cta.is-visible {
		opacity: 1;
		visibility: visible;
		transform: translateY(0);
		pointer-events: auto;
	}
	/* při otevřeném mobilním menu zůstává schovaná */
	.nav-backdrop.open ~ .mobile-cta {
		opacity: 0 !important;
		visibility: hidden !important;
		transform: translateY(140%) !important;
		pointer-events: none !important;
	}
}