/* Enabled only after the explicit location feedback import. */
.dk-footer-variant { display: none; }
:root:not([data-karner-location]) .dk-footer-variant[data-footer-location="none"],
:root[data-karner-location=""] .dk-footer-variant[data-footer-location="none"],
:root[data-karner-location="freiburg"] .dk-footer-variant[data-footer-location="freiburg"],
:root[data-karner-location="starnberg"] .dk-footer-variant[data-footer-location="starnberg"] { display: block; }
.dk-readable-hero .elementor-heading-title,
.dk-readable-hero .elementor-widget-text-editor,
.dk-readable-announcement,
.dk-readable-announcement h3 { text-shadow: 0 2px 5px #000b, 0 0 14px #0006; }
.dk-location-feedback { --dk-location-accent: #6d7652; --dk-location-button-text: #fff; }
.dk-location-feedback.dk-context-starnberg,
:root[data-karner-location="starnberg"] .dk-location-feedback { --dk-location-accent: #818962; --dk-location-button-text: #FFFFFF; }
.dk-location-feedback .dk-header .dk-booking,
.dk-location-feedback .dk-location-button .elementor-button {
	background-color: var(--dk-location-accent);
	border-color: var(--dk-location-accent);
	color: var(--dk-location-button-text);
}
/* Override the saved Elementor button color on already-imported pages. */
.dk-location-feedback .elementor .elementor-element.dk-location-button .elementor-button { color: var(--dk-location-button-text); }
.dk-location-feedback .dk-header .dk-booking:hover,
.dk-location-feedback .dk-location-button .elementor-button:hover { background-color: #555d3e; border-color: #555d3e; color: #fff; }
:root:not([data-karner-location]) .dk-location-feedback .dk-header .dk-locations a[aria-current],
:root[data-karner-location="freiburg"] .dk-location-feedback .dk-header .dk-locations a[data-location="freiburg"],
:root[data-karner-location="starnberg"] .dk-location-feedback .dk-header .dk-locations a[data-location="starnberg"] {
	background-color: var(--dk-location-accent);
	color: var(--dk-location-button-text);
}
.elementor .e-con.dk-booking-info { max-width: 960px; margin-inline: auto; }
.dk-booking-info a { overflow-wrap: anywhere; }
.dk-topic-directory-section { max-width: 1320px; margin-inline: auto; }
.dk-topic-directory ul { margin-block: 12px; padding-inline-start: 24px; }
.dk-topic-directory li { margin-block: 8px; }
.dk-topic-directory a { text-decoration: underline; text-underline-offset: 3px; }
:root[data-karner-location="freiburg"] .dk-directory-starnberg,
:root[data-karner-location="starnberg"] .dk-directory-freiburg { display: none; }
.dk-footer-list .elementor-icon-list-icon { flex-shrink: 0; align-self: flex-start; padding-top: 3px; }
.dk-footer-list .elementor-icon-list-icon svg { width: 17px; height: 17px; fill: currentColor; }

.dk-booking-info a { text-decoration: underline; text-underline-offset: 3px; }

/* The landing-page CTA is a linked heading, not an Elementor button widget. */
.dk-location-feedback .elementor .elementor-element.dk-booking-cta a { color: #fff; }

/* Long topic names must fit the native overview cards on narrow screens. */
.dk-location-feedback .dk-cluster-card .elementor-heading-title,
.dk-overview-cards [data-elementor-type="wp-page"] .elementor-heading-title { overflow-wrap: anywhere; hyphens: auto; }

/* Shared parents expose the current location's categories, or location choices. */
.dk-location-feedback .elementor .elementor-element.dk-shared-overview { display: none; }
:root:not([data-karner-location]) .dk-location-feedback .elementor .elementor-element.dk-shared-overview-none,
:root[data-karner-location=""] .dk-location-feedback .elementor .elementor-element.dk-shared-overview-none,
:root[data-karner-location="freiburg"] .dk-location-feedback .elementor .elementor-element.dk-shared-overview-freiburg,
:root[data-karner-location="starnberg"] .dk-location-feedback .elementor .elementor-element.dk-shared-overview-starnberg { display: flex; }
