/* 
Theme Name: DSCHOY
Theme URI: https://www.dschoy.de/
Description: DSCHOY is a child theme of DSCHOY GmbH
Author: DSCHOY
Author URI: https://www.dschoy.de/
Template: hello-elementor
Version: 1.0.1
Text Domain: dschoy-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/

/* Add your custom styles here */

/* Accessibility improvements (WCAG 2.1 AA). */
:root {
	--dschoy-a11y-skip-bg: #fff;
	--dschoy-a11y-skip-fg: #111;
	--dschoy-a11y-skip-border: #111;
}

.skip-link.screen-reader-text:focus {
	clip: auto;
	clip-path: none;
	height: auto;
	width: auto;
	position: fixed !important;
	padding: 0.75rem 1rem;
	top: 0.5rem;
	left: 0.5rem;
	z-index: 100000;
	background: var(--dschoy-a11y-skip-bg);
	color: var(--dschoy-a11y-skip-fg);
	border: 2px solid var(--dschoy-a11y-skip-border);
}

a.elementor-icon {
	min-width: 44px;
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

/* Global focus-visible indicator (WCAG 2.4.7, CZR-39). Element-level
   specificity so the component-scoped :focus-visible rules further down still
   override it. The search overlay input out-specifies these element selectors
   with its unconditional `.czr-overlay .czr-overlay__input { outline:none }`
   (0,2,0), so it gets its own dedicated :focus-visible rule near that block.
   Colour matches the existing focus rings used elsewhere in this file. */
:root {
	--dschoy-a11y-focus-color: #0468ad;
	--dschoy-a11y-focus-width: 2px;
	--dschoy-a11y-focus-offset: 2px;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible,
[role="button"]:focus-visible,
[role="link"]:focus-visible {
	outline: var(--dschoy-a11y-focus-width) solid var(--dschoy-a11y-focus-color);
	outline-offset: var(--dschoy-a11y-focus-offset);
}

/* Global social media bar (CZR-47). */
:root {
	--czr-social-z-index: 950;
	--czr-social-offset-inline: 12px;
	--czr-social-offset-bottom: 0.8rem;
	--czr-social-gap-desktop: 8px;
	--czr-social-gap-mobile: 8px;
	--czr-social-size-desktop: 48px;
	--czr-social-size-mobile: 44px;
	--czr-social-focus-color: #ffffff;
	--czr-social-transition: 160ms cubic-bezier(0.2, 0.8, 0.2, 1);
	--czr-social-instagram: #1c1c1c;
	--czr-social-linkedin: #1c1c1c;
	--czr-social-facebook: #1c1c1c;
}

.czr-social-bar {
	position: fixed !important;
	top: 50%;
	right: var(--czr-social-offset-inline);
	left: auto !important;
	bottom: auto !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	transform: translateY(-50%);
	z-index: var(--czr-social-z-index);
	opacity: 1;
	visibility: visible;
	transition: opacity 160ms ease, visibility 160ms ease;
}

.czr-social-bar--hidden {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.czr-social-bar > .e-con-inner,
.czr-social-bar__track {
	display: flex;
	flex-direction: column;
	gap: var(--czr-social-gap-desktop);
	width: auto !important;
	padding: 0 !important;
	margin: 0 !important;
}

.czr-social-bar .elementor-widget-icon {
	width: auto !important;
	max-width: none !important;
}

.czr-social-bar .elementor-widget-container,
.czr-social-bar .elementor-icon-wrapper {
	display: flex;
}

.czr-social-bar .elementor-icon-wrapper {
	line-height: 0;
}

.czr-social-bar__item {
	margin: 0 !important;
}

.czr-social-bar--desktop {
	top: 50% !important;
	right: var(--czr-social-offset-inline) !important;
	left: auto !important;
	bottom: auto !important;
	transform: translateY(-50%) !important;
	flex-direction: column;
}

.czr-social-bar--mobile {
	top: auto !important;
	right: auto !important;
	bottom: calc(env(safe-area-inset-bottom) + 12px) !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	flex-direction: row;
}

.czr-social-bar .elementor-icon {
	width: var(--czr-social-size-desktop);
	height: var(--czr-social-size-desktop);
	min-width: var(--czr-social-size-desktop);
	min-height: var(--czr-social-size-desktop);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 50%;
	color: #ffffff;
	text-decoration: none;
	transition: transform var(--czr-social-transition);
}

.czr-social-bar__item--instagram .elementor-icon {
	background: var(--czr-social-instagram);
}

.czr-social-bar__item--linkedin .elementor-icon {
	background: var(--czr-social-linkedin);
}

.czr-social-bar__item--facebook .elementor-icon {
	background: var(--czr-social-facebook);
}

.czr-social-bar .elementor-icon:hover {
	transform: scale(1.02);
}

.czr-social-bar .elementor-icon:active {
	transform: scale(0.98);
}

.czr-social-bar .elementor-icon:focus-visible {
	outline: 3px solid var(--czr-social-focus-color);
	outline-offset: 2px;
	box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.28);
}

.czr-social-bar .elementor-icon svg {
	display: block;
	width: 32px;
	height: 32px;
	filter: brightness(0) invert(1);
}

.czr-social-bar .elementor-icon img {
	display: block;
	/* Explicit pixel size — the social SVGs were re-authored with a 28×28
	   viewBox cropped to the icon glyph (was 32×44 with whitespace) so the
	   mobile burger menu icons render evenly. Without an explicit cap here
	   the desktop bar would scale the icons to fill nearly the entire
	   48px circle. ~22px keeps the visual padding the design called for
	   before the SVG crop. */
	width: 22px;
	height: 22px;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	filter: brightness(0) invert(1);
}

.czr-social-bar--mobile > .e-con-inner,
.czr-social-bar--mobile.czr-social-bar__track {
	flex-direction: row;
	gap: var(--czr-social-gap-mobile);
}

.czr-social-bar--mobile .elementor-icon {
	width: var(--czr-social-size-mobile);
	height: var(--czr-social-size-mobile);
	min-width: var(--czr-social-size-mobile);
	min-height: var(--czr-social-size-mobile);
}

.czr-social-bar--mobile .elementor-icon svg {
	width: 29px;
	height: 29px;
}

@media (max-width: 1200px) {
	.czr-social-bar .elementor-icon:hover {
		transform: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.czr-social-bar .elementor-icon {
		transition: none;
	}

	.czr-social-bar .elementor-icon:hover,
	.czr-social-bar .elementor-icon:active {
		transform: none;
	}
}

@media print {
	.czr-social-bar {
		display: none !important;
	}
}

/* CZR-61: keep the floating bar above the full-screen search overlay
   (z-index 10001) instead of buried under it, scoped to the overlay-open
   state search-overlay.js already toggles on <body>. */
body.czr-overlay-open .czr-social-bar {
	z-index: calc(var(--czr-overlay-z) + 1);
}

/* Elementor 4.0.9 regression: `body.admin-bar .dialog-type-lightbox` is set to
   `position: sticky` on viewports ≤1024px in plugins/elementor/assets/css/
   common.min.css. That sticks the popup modal to its position in the DOM (end
   of <body>), so logged-in admins on mobile see the mobile-nav popup render
   at the bottom of the page + the browser scroll-anchors there on open.
   Logged-out visitors are unaffected (no `.admin-bar` class). */
@media (max-width: 1024px) {
	body.admin-bar .dialog-type-lightbox {
		position: fixed;
	}
}

/* Mobile navigation popup: force nav-menu dropdown visible (CZR-47). */
.elementor-popup-modal .elementor-nav-menu--dropdown.elementor-nav-menu__container {
	display: flex !important;
	flex-direction: column;
	height: auto !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: static !important;
	transform: none !important;
	width: 100% !important;
}

.elementor-popup-modal .elementor-nav-menu--dropdown .sub-menu {
	display: none;
	position: static !important;
	box-shadow: none !important;
	width: 100% !important;
}

.elementor-popup-modal .elementor-nav-menu--dropdown .menu-item-has-children.elementor-active > .sub-menu {
	display: flex;
	flex-direction: column;
}

/* Search bar in header — match Figma design (transparent, borderless) */
.elementor-location-header .elementor-search-form {
	min-height: auto;
	max-width: 100%;
}

.elementor-location-header .elementor-search-form__container {
	max-width: 100%;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	min-height: auto;
	flex-direction: row-reverse;
	gap: 8px;
}

.elementor-location-header .elementor-search-form__input {
	background: transparent;
	border: none;
	color: #1c1c1c;
	font-family: 'Encode Sans', sans-serif;
	font-weight: 600;
	font-size: 18px;
	letter-spacing: -0.3125px;
	padding: 0 !important;
	min-height: auto;
	height: auto;
	text-align: left;
	/* Shrink to fit the placeholder text rather than the widget's full
	   width. Without these the hover underline (applied at the form
	   level) extends past the visible "Suchen…" text by 90+ pixels. */
	width: auto;
	flex: 0 1 auto;
	field-sizing: content;
	/* On search result pages the field holds the query and would grow over the language switcher. */
	min-width: 0;
	text-overflow: ellipsis;
}

.elementor-location-header .elementor-search-form__input::placeholder {
	color: #1c1c1c;
	opacity: 1;
}

.elementor-location-header .elementor-search-form__submit,
.elementor-location-header .elementor-search-form__icon {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	min-width: 20px !important;
	width: 20px !important;
	max-width: 20px !important;
	height: 20px !important;
	min-height: auto !important;
	font-size: 0 !important;
	flex-shrink: 0;
}

/* Replace FA icon with custom Figma SVG */
.elementor-location-header .elementor-search-form__submit i,
.elementor-location-header .elementor-search-form__icon i,
.elementor-location-header .elementor-search-form__submit svg,
.elementor-location-header .elementor-search-form__icon svg {
	display: none !important;
}

.elementor-location-header .elementor-search-form__submit::before,
.elementor-location-header .elementor-search-form__icon::before {
	content: '';
	display: block;
	width: 20px;
	height: 20px;
	background: url('/wp-content/themes/dschoy-child/assets/img/search-icon.svg') no-repeat center / contain;
}

/* Align search vertically with nav items */
.elementor-location-header .elementor-widget-search-form {
	align-self: center;
	margin-right: -64px;
}

/* Hover underline on the desktop search bar — same affordance as the
   lang-switch trigger (transparent at rest, dark on hover/focus-visible).
   Implemented as an ::after pseudo-element on the form (see rule below)
   rather than a box-shadow so the underline can be inset from the left
   (the magnifier icon would otherwise make the line look too long on
   that side). width:fit-content on the form + container shrinks the box
   from the widget-default 183px down to the visible icon+text width so
   the underline doesn't extend past the placeholder text. */
.elementor-location-header .elementor-search-form {
	position: relative;
	width: fit-content;
	padding: 0 10px;
	cursor: pointer;
}

.elementor-location-header .elementor-search-form__container {
	width: fit-content;
}

/* Hover-underline as a pseudo-element instead of box-shadow so we can inset
   it 5px from the left — the magnifier icon visually shifts the perceived
   start of the text, so an underline that ran the full form width felt too
   long on the left. */
.elementor-location-header .elementor-search-form::after {
	content: '';
	position: absolute;
	left: 5px;
	right: 0;
	bottom: 0;
	height: 2px;
	background: transparent;
	transition: background 0.15s;
	pointer-events: none;
}

.elementor-location-header .elementor-search-form:hover::after,
.elementor-location-header .elementor-search-form:focus-within::after {
	background: #1c1c1c;
}

.elementor-location-header .elementor-search-form__container {
	align-items: center;
}

/* =========================================================
   Search Results Page (CZR-42)
   ========================================================= */

:root {
	--czr-search-max-width: 860px;
	--czr-search-gap: 32px;
	--czr-search-item-gap: 24px;
	--czr-search-thumb-size: 88px;
	--czr-search-thumb-size-mobile: 64px;
	--czr-search-color-text: #2E2E2E;
	--czr-search-color-body: #1C1C1C;
	--czr-search-color-link: #0067AC;
	--czr-search-color-muted: #666;
	--czr-search-color-highlight-bg: #FFF3CD;
	--czr-search-color-border: #E5E5E5;
	--czr-search-font: 'Encode Sans', sans-serif;
}

.czr-search {
	padding: 48px 0 64px;
}

.czr-search__container {
	max-width: var(--czr-search-max-width);
	margin-inline: auto;
	padding-inline: 24px;
}

/* Header */
.czr-search__header {
	margin-bottom: var(--czr-search-gap);
	padding-bottom: var(--czr-search-gap);
	border-bottom: 1px solid var(--czr-search-color-border);
}

.czr-search__label {
	font-family: var(--czr-search-font);
	font-size: 14px;
	font-weight: 400;
	color: var(--czr-search-color-muted);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	margin: 0 0 8px;
}

.czr-search__term {
	font-family: var(--czr-search-font);
	font-size: 32px;
	font-weight: 700;
	color: var(--czr-search-color-text);
	margin: 0 0 8px;
	line-height: 1.2;
}

.czr-search__count {
	font-family: var(--czr-search-font);
	font-size: 15px;
	color: var(--czr-search-color-muted);
	margin: 0;
}

/* Result list */
.czr-search__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--czr-search-item-gap);
}

/* Single result item */
.czr-search__item {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	padding-bottom: var(--czr-search-item-gap);
	border-bottom: 1px solid var(--czr-search-color-border);
}

.czr-search__item:last-child {
	border-bottom: none;
}

/* Thumbnail */
.czr-search__thumb-link {
	flex-shrink: 0;
	display: block;
	width: var(--czr-search-thumb-size);
	height: var(--czr-search-thumb-size);
	border-radius: 4px;
	overflow: hidden;
}

.czr-search__thumb {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Item body */
.czr-search__body {
	flex: 1;
	min-width: 0;
}

.czr-search__title {
	font-family: var(--czr-search-font);
	font-size: 20px;
	font-weight: 700;
	color: var(--czr-search-color-text);
	margin: 0 0 8px;
	line-height: 1.3;
}

.czr-search__title a {
	color: inherit;
	text-decoration: none;
}

.czr-search__title a:hover,
.czr-search__title a:focus-visible {
	color: var(--czr-search-color-link);
	text-decoration: underline;
}

.czr-search__title a:focus-visible {
	outline: 2px solid var(--czr-search-color-link);
	outline-offset: 2px;
	border-radius: 2px;
}

.czr-search__excerpt {
	font-family: var(--czr-search-font);
	font-size: 15px;
	font-weight: 400;
	color: var(--czr-search-color-body);
	line-height: 1.6;
	margin: 0;
}

.czr-search__excerpt p {
	margin: 0;
}

/* Relevanssi highlight */
.czr-search__excerpt em,
.czr-search__excerpt .b {
	font-style: normal;
	font-weight: 700;
	background: var(--czr-search-color-highlight-bg);
	padding: 0 2px;
	border-radius: 2px;
}

/* No results */
.czr-search__no-results {
	padding: 48px 0;
	text-align: center;
}

.czr-search__no-results-title {
	font-family: var(--czr-search-font);
	font-size: 22px;
	font-weight: 700;
	color: var(--czr-search-color-text);
	margin: 0 0 12px;
}

.czr-search__no-results-hint {
	font-family: var(--czr-search-font);
	font-size: 16px;
	color: var(--czr-search-color-muted);
	margin: 0 0 20px;
}

.czr-search__didyoumean {
	font-family: var(--czr-search-font);
	font-size: 16px;
	color: var(--czr-search-color-body);
	margin: 0;
}

.czr-search__didyoumean a {
	color: var(--czr-search-color-link);
	text-decoration: underline;
}

/* Pagination */
.czr-search__pagination {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 40px;
	padding-top: 24px;
	border-top: 1px solid var(--czr-search-color-border);
}

.czr-search__pagination-prev,
.czr-search__pagination-next {
	display: flex;
}

.czr-search__pagination a {
	font-family: var(--czr-search-font);
	font-size: 15px;
	font-weight: 600;
	color: var(--czr-search-color-link);
	text-decoration: none;
	padding: 8px 16px;
	border: 1.5px solid var(--czr-search-color-link);
	border-radius: 4px;
	transition: background 120ms ease, color 120ms ease;
}

.czr-search__pagination a:hover,
.czr-search__pagination a:focus-visible {
	background: var(--czr-search-color-link);
	color: #ffffff;
}

.czr-search__pagination a:focus-visible {
	outline: 2px solid var(--czr-search-color-link);
	outline-offset: 2px;
}

/* Mobile */
@media (max-width: 600px) {
	.czr-search {
		padding: 32px 0 48px;
	}

	.czr-search__container {
		padding-inline: 16px;
	}

	.czr-search__term {
		font-size: 24px;
	}

	.czr-search__thumb-link {
		width: var(--czr-search-thumb-size-mobile);
		height: var(--czr-search-thumb-size-mobile);
	}

	.czr-search__title {
		font-size: 17px;
	}

	.czr-search__item {
		gap: 12px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.czr-search__pagination a,
	.czr-search__title a {
		transition: none;
	}
}

/* =========================================================
   Fullscreen Search Overlay (CZR-42)
   ========================================================= */

:root {
	--czr-overlay-z: 10001;
	--czr-overlay-max-width: 1242px;
	--czr-overlay-font: 'Encode Sans', sans-serif;
	--czr-overlay-color-text: #1c1c1c;
	--czr-overlay-color-title: #0a0a0a;
	--czr-overlay-color-muted: #808080;
	--czr-overlay-color-border: #1c1c1c;
	--czr-overlay-anim-duration: 220ms;
	--czr-overlay-anim-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
}

/* Scroll lock for the whole page while the overlay is open. Both html and
   body get the class (set by openOverlay() / closeOverlay() in JS) — locking
   only body leaves the html element scrollable in WP/Elementor, so wheel
   events on the page behind the overlay would still scroll. */
html.czr-overlay-open,
body.czr-overlay-open {
	overflow: hidden;
}

/* Overlay container */
#czr-overlay {
	position: fixed;
	inset: 0;
	z-index: var(--czr-overlay-z);
	background: #ffffff;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	/* Animation: start scaled down + invisible */
	opacity: 0;
	transform: scale(0.02);
	transition:
		opacity var(--czr-overlay-anim-duration) var(--czr-overlay-anim-easing),
		transform var(--czr-overlay-anim-duration) var(--czr-overlay-anim-easing);
	/* transform-origin set by JS to match clicked button position */
}

#czr-overlay[hidden] {
	display: none;
}

#czr-overlay.czr-overlay--visible {
	opacity: 1;
	transform: scale(1);
}

.czr-overlay__inner {
	max-width: var(--czr-overlay-max-width);
	margin-inline: auto;
	padding: 59px 24px 80px;
}

/* --- Search bar --- */
.czr-overlay__bar {
	margin-bottom: 40px;
}

.czr-overlay__form {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
}

.czr-overlay__search-icon {
	flex-shrink: 0;
	width: 20px;
	height: 20px;
}

/* Selector chained with .czr-overlay parent so specificity (0,2,0) outranks
   Hello Elementor's reset.css rule `input[type=search]` (0,1,1) — wins
   regardless of stylesheet load order. A previous attempt used
   `input.czr-overlay__input` (0,1,1), which tied with the reset and only
   won via cascade order (child theme enqueued after parent). That was
   brittle: any re-ordering of the enqueue chain would have brought the
   1px border back. */
.czr-overlay .czr-overlay__input {
	flex: 1;
	border: none;
	outline: none;
	background: transparent;
	font-family: var(--czr-overlay-font);
	font-size: 18px;
	font-weight: 400;
	color: var(--czr-overlay-color-text);
	letter-spacing: -0.3125px;
	padding: 0;
	-webkit-appearance: none;
	appearance: none;
}

/* Keyboard focus indicator for the overlay input (WCAG 2.4.7). The rule above
   removes the outline unconditionally; this :focus-visible selector (0,2,1)
   out-specifies it so keyboard focus is visible while pointer focus stays
   clean. */
.czr-overlay .czr-overlay__input:focus-visible {
	outline: var(--dschoy-a11y-focus-width) solid var(--dschoy-a11y-focus-color);
	outline-offset: 4px;
}

.czr-overlay__input::-webkit-search-cancel-button,
.czr-overlay__input::-webkit-search-decoration {
	display: none;
	-webkit-appearance: none;
}

.czr-overlay__input::-ms-clear {
	display: none;
}

.czr-overlay__input::placeholder {
	color: var(--czr-overlay-color-muted);
	opacity: 1;
}

.czr-overlay__close {
	flex-shrink: 0;
	background: none;
	border: none;
	padding: 8px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 4px;
	transition: background 120ms ease;
}

.czr-overlay__close:hover {
	background: rgba(0, 0, 0, 0.05);
}

.czr-overlay__close:focus-visible {
	outline: 2px solid var(--czr-overlay-color-text);
	outline-offset: 2px;
}

/* --- Heading --- */
.czr-overlay__heading {
	font-family: var(--czr-overlay-font);
	font-size: 45px;
	font-weight: 600;
	color: var(--czr-overlay-color-text);
	margin: 0 0 24px;
	line-height: 1.15;
}

/* --- Card list --- */
.czr-overlay__cards {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

/* --- Single card --- */
.czr-overlay__card {
	display: flex;
	background: #f7f7f7 !important;
	border: 0 !important;
	border-radius: 10px;
	box-shadow: none !important;
	overflow: hidden;
}

.czr-overlay__accent {
	width: 8px;
	flex-shrink: 0;
	border-radius: 10px 0 0 10px;
}

.czr-overlay__card-body {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 16px;
	background: #f7f7f7 !important;
	border: 0 !important;
	border-radius: 0 10px 10px 0;
	box-shadow: none !important;
	text-decoration: none;
	color: inherit;
	transition: background 120ms ease;
}

.czr-overlay__card-body:hover {
	background: rgba(0, 0, 0, 0.02);
}

.czr-overlay__card-body:focus-visible {
	outline: 2px solid #0468ad;
	outline-offset: -2px;
}

.czr-overlay__more a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	font-family: var(--czr-overlay-font);
	font-size: 16px;
	font-weight: 600;
	color: var(--czr-overlay-color-title);
	text-decoration: underline;
	text-underline-offset: 4px;
}

/* Badge */
.czr-overlay__badge {
	align-self: flex-start;
	font-family: var(--czr-overlay-font);
	font-size: 12px;
	font-weight: 600;
	line-height: 16px;
	padding: 4px 10px;
	border-radius: 20px;
}

/* Card title row */
.czr-overlay__card-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-family: var(--czr-overlay-font);
	font-size: 24px;
	font-weight: 700;
	line-height: 32px;
	color: var(--czr-overlay-color-title);
	letter-spacing: 0.0703px;
}

/* Arrow inside the card title row. The SVG itself encodes the black filled
   circle + the arrow cut-out via fill-rule:evenodd, so no wrapper needed.
   Right-aligned via space-between on .czr-overlay__card-title. */
.czr-overlay__arrow {
	flex-shrink: 0;
	width: 34px;
	height: 34px;
}

/* Description */
.czr-overlay__card-desc {
	font-family: var(--czr-overlay-font);
	font-size: 14px;
	font-weight: 400;
	line-height: 24px;
	color: var(--czr-overlay-color-text);
}

/* Location row at the bottom of the card body. Rendered conditionally:
   only when the page has a _czr_location postmeta value set. */
.czr-overlay__location {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 4px;
	font-family: var(--czr-overlay-font);
	font-size: 13px;
	font-weight: 500;
	color: var(--czr-overlay-color-text);
}

.czr-overlay__location-icon {
	flex-shrink: 0;
}

/* --- Header search → button-only (Phase 2 CSS) --- */

/* Hide search in header on mobile — search lives in hamburger menu instead */
@media (max-width: 767px) {
	.elementor-location-header .elementor-widget-search-form {
		display: none !important;
	}
}

.elementor-location-header .elementor-search-form__input {
	pointer-events: none;
	user-select: none;
	cursor: pointer;
}

.elementor-location-header .elementor-widget-search-form {
	cursor: pointer;
}

/* --- Mobile popup: injected search + social (Phase 3 CSS) --- */
.czr-popup-injected {
	width: 100%;
	align-self: stretch;
	margin-top: -20px; /* cancel e-con-inner gap: 20px so search btn sits flush below nav */
}

.czr-mobile-search-btn {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	background: none;
	border: none;
	/* Match the existing nav-menu LI dividers (border-bottom: 1px #b0b0b0).
	   Skip border-top because the preceding LI already paints the line
	   between Buchen and the search row — adding our own here stacks two
	   1px borders and looks twice as thick. */
	border-bottom: 1px solid #b0b0b0;
	/* Hello Elementor's reset applies border-radius: 3px to every button,
	   which curves the top edge of our border-bottom. Flatten it. */
	border-radius: 0;
	padding: 15px 25px;
	font-family: parisine-std-sombre, sans-serif;
	font-size: 22px;
	font-weight: 500;
	color: #1c1c1c;
	cursor: pointer;
	text-align: left;
}

.czr-mobile-search-btn:focus-visible {
	outline: 2px solid #0468ad;
	outline-offset: 2px;
}

.czr-mobile-social {
	display: flex;
	gap: 12px;
	/* Left-align with the menu items' text. Nav-menu <a> has padding-left
	   25px and the row itself sits at 20px from the popup edge, so 25px
	   here lines the leading edge of the first circle up with the text
	   start of "Home" / "Suche". */
	padding: 16px 25px 8px;
}

.czr-mobile-social a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	transition: transform 120ms ease;
}

.czr-mobile-social a:hover {
	transform: scale(1.05);
}

.czr-mobile-social a:nth-child(1) { background: #3a67a8; }
.czr-mobile-social a:nth-child(2) { background: #e500a4; }
.czr-mobile-social a:nth-child(3) { background: #a1c038; }

.czr-mobile-social a img {
	width: 24px;
	height: 24px;
	filter: brightness(0) invert(1);
}

/* Social bar: hide on mobile since icons are now in popup */
.czr-social-bar--mobile {
	display: none !important;
}

/* --- Live search results header ---
   Structure mirrors Figma node 25-565: a big "Suchergebnisse" heading
   (.czr-overlay__heading, 45px / weight 600) above a subheader block
   that contains the query echo + count. The subheader has its own
   8px gap between the two lines (Figma) and 24px below before cards. */
.czr-overlay__results-header {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-bottom: 24px;
}

.czr-overlay__heading--live {
	font-family: var(--czr-overlay-font);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.3;
	color: var(--czr-overlay-color-text);
	margin: 0;
}

.czr-overlay__results-count {
	font-family: var(--czr-overlay-font);
	font-size: 12px;
	font-weight: 400;
	color: var(--czr-overlay-color-muted);
	margin: 0;
}

/* --- No results --- */
.czr-overlay__no-results {
	font-family: var(--czr-overlay-font);
	font-size: 18px;
	color: var(--czr-overlay-color-muted);
	text-align: center;
	padding: 48px 0;
}

/* --- Loading spinner --- */
.czr-overlay__loading {
	display: flex;
	justify-content: center;
	padding: 48px 0;
}

.czr-overlay__loading[hidden],
.czr-overlay__no-results[hidden],
#czr-overlay-live[hidden],
#czr-overlay-popular[hidden] {
	display: none;
}

.czr-overlay__spinner {
	width: 36px;
	height: 36px;
	border: 3px solid #e5e5e5;
	border-top-color: #0468ad;
	border-radius: 50%;
	animation: czr-spin 0.7s linear infinite;
}

@keyframes czr-spin {
	to { transform: rotate(360deg); }
}

/* --- Responsive --- */
@media (max-width: 768px) {
	.czr-overlay__inner {
		padding: 34px 16px 60px;
	}

	.czr-overlay__heading {
		font-size: 30px;
	}

	.czr-overlay__cards {
		gap: 8px;
	}

	.czr-overlay__card-body {
		padding: 16px 8px;
		gap: 8px;
	}

	.czr-overlay__card-title {
		font-size: 20px;
		line-height: 28px;
	}
}

@media (prefers-reduced-motion: reduce) {
	#czr-overlay {
		transition: none;
	}

	.czr-overlay__close,
	.czr-overlay__card-body,
	.czr-mobile-social a {
		transition: none;
	}
}

/* WCAG 2.5.8: keep Borlabs 3 dialog links and content-blocker buttons >=24px.
 * `html body` outranks the `all: unset` in Borlabs' own selectors. */
html body #BorlabsCookieBox .brlbs-cmpnt-link.brlbs-cmpnt-preferences-link,
html body #BorlabsCookieBox .brlbs-cmpnt-link.brlbs-cmpnt-privacy-link,
html body #BorlabsCookieBox .brlbs-cmpnt-link.brlbs-cmpnt-imprint-link,
html body .brlbs-cmpnt-container.brlbs-cmpnt-content-blocker a.brlbs-cmpnt-cb-btn {
	min-width: 24px;
	min-height: 24px;
}
/* Keep the third-party map optional: the direct list remains reachable even
 * when the embedded Outdooractive interface is unusable. */
.czr-outdooractive-fallback {
	margin-block: 0.75rem 0;
}

.czr-outdooractive-fallback a {
	text-decoration: underline;
	text-underline-offset: 0.12em;
}
/* vietnamese */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 100;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlr8a6wqw.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 100;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlrsa6wqw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 100;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlsma6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 200;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlr8a6wqw.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 200;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlrsa6wqw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 200;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlsma6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 300;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlr8a6wqw.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 300;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlrsa6wqw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 300;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlsma6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlr8a6wqw.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlrsa6wqw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlsma6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlr8a6wqw.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlrsa6wqw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlsma6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlr8a6wqw.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlrsa6wqw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlsma6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlr8a6wqw.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlrsa6wqw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlsma6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlr8a6wqw.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlrsa6wqw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlsma6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlr8a6wqw.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlrsa6wqw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://chemnitz-zwickau-region.de/wp-content/uploads/elementor/google-fonts/fonts/encodesans-ldihapofnxewr-bd1o9uynmnuqomage25imksbhlsma6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
