@charset "UTF-8";
/* Imports */
/*! 
 * GENERATED FILE WARNING
 * ----------------------
 * Diese Datei ist SCSS-Source. Kompilierte CSS-Dateien liegen unter:
 * - meshwald/assets/css/style.css
 * - meshwald/assets/css/editor.css
 * Bitte die CSS-Dateien nicht manuell bearbeiten – stattdessen SCSS anpassen
 * und via "npm run build-css" neu bauen.
 */
/**
 * Globals (Sass Module System)
 *
 * In der alten @import-Welt waren Variablen & Mixins global verfuegbar.
 * Mit @use sind sie gekapselt.
 *
 * Dieses File dient als Bridge, damit bestehende SCSS-Dateien weiterhin
 * ohne Namespace ($wp-..., @include respond-to, ...) funktionieren.
 */
/**
 * Meshwald SCSS variables
 *
 * Wichtig (FSE):
 * - WordPress Presets/Tokens (Farben, Typo, Spacing, Layout) werden über theme.json
 *   als CSS Custom Properties bereitgestellt (Global Styles).
 * - Dieses File definiert daher **keine** --wp--preset--* Variablen mehr und baut
 *   auch keine .has-*-Hilfsklassen nach.
 * - Stattdessen: SCSS-„Brücken“-Variablen, die auf die WP-CSS-Variablen zeigen.
 */
/* === WP Token Bridges (nutzen, nicht definieren) === */
/* === Meshwald-spezifische Tokens (eigene Custom Properties) === */
:root {
  /* Nur Dinge, die WordPress nicht als Preset/Token abbildet */
  --meshwald-radius-sm: 8px;
  --meshwald-radius-md: 16px;
  --meshwald-radius-lg: 24px;
  --meshwald-shadow-soft: 0 8px 24px rgba(0,0,0,.12);
  --meshwald-shadow-hard: 0 8px 8px rgba(0,0,0,.20);
  --meshwald-ease: cubic-bezier(.2,.8,.2,1);
  --meshwald-transition: 200ms var(--meshwald-ease);
}

/*
 * HINWEIS:
 * WordPress erzeugt .has-*-Klassen (Farbe/Typo/Spacing) selbst.
 * Wenn du eigene Utility-Klassen willst, leg sie in ein separates _utilities.scss
 * (aber bitte ohne WP-Preset-Klassen zu duplizieren).
 */
/** Media Queries
(--xxl-large: 90.625em; 1450px)
--xl-large: 75em; 1200px
--large: 62em; 992px
--medium: 48em; 768px
--small: 36em; 576px
**/
/*** Mixin für Breakpoints ***/
/*** Mixin für Fade in and out **
@mixin fade($type: in, $duration: 2s, $timing: ease-in, $iteration: 1) {
  @if $type == in {
    opacity: 1;
    animation: fadeInOpacity $duration $timing $iteration forwards;
  } @else if $type == out {
    opacity: 0;
    animation: fadeOutOpacity $duration $timing $iteration forwards;
  } @else if $type == in-out {
    animation: fadeInOutOpacity $duration $timing $iteration forwards;
  }
}

@keyframes fadeInOpacity {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}

@keyframes fadeOutOpacity {
  0%   { opacity: 1; }
  100% { opacity: 0; }
}

@keyframes fadeInOutOpacity {
  0%   { opacity: 0; }
  50%  { opacity: 1; }
  100% { opacity: 0; }
}
*/
/*  Cursor-Design-Mixin
@mixin custom-cursor($color, $size) {
  .cursor-text {
    z-index: 99999 !important;
    position: fixed;
    pointer-events: none;
    font-size: $size;
    font-weight: bold;
    color: $color;
    transform: translate(-50%, -50%);
    width: 1em; 
    height: 1em;  
    display: flex;
    align-items: end;
    will-change: transform; 
    .cursor-plus {padding: 0; margin: 0; line-height: 0.8em;}
    .cursor-sub {
      white-space: nowrap;
      font-size: $small-text;
      display: flex;
      align-items: end;
      margin: 0px 0 0 0px; 
      line-break: unset;
    }
  }
}
body.home {
  @include custom-cursor(white, 78px);
}
body.projekte {
  @include custom-cursor(white, 78px);
}
body.single {
  @include custom-cursor(white, 78px);
}
*/
/* Horst Animation
@mixin nod-once($duration: 1s) {
  @keyframes horstNodOnce {
    0%   { transform: rotate(0deg) scale(1); }
  20%  { transform: rotate(-4deg) scale(2.02); }
  40%  { transform: rotate(4deg) scale(1.00); }
  60%  { transform: rotate(-3deg) scale(1.01); }
  80%  { transform: rotate(3deg) scale(1.00); }
  90%  { transform: rotate(1deg) scale(1.00); }
  100% { transform: rotate(0deg) scale(1); }
  }
  animation: horstNodOnce $duration ease-in-out 1; // läuft 1x
  transform-origin: 50% 100%;
}
*/
/* Imports */
/*! 
 * GENERATED FILE WARNING
 * ----------------------
 * Diese Datei ist SCSS-Source. Kompilierte CSS-Dateien liegen unter:
 * - meshwald/assets/css/style.css
 * - meshwald/assets/css/editor.css
 * Bitte die CSS-Dateien nicht manuell bearbeiten – stattdessen SCSS anpassen
 * und via "npm run build-css" neu bauen.
 */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  /* line-height: 1.15; */ /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
/* Grouping content
========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-size: 100%; /* 1 */
  /* line-height: 1.15; */ /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
  appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* lato-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Exo 2";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/exo-2-v20-latin-regular.woff2") format("woff2"), url("../fonts/exo-2-v20-latin-regular.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* lato-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Exo 2";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/exo-2-v20-latin-italic.woff2") format("woff2"), url("../fonts/exo-2-v20-latin-italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* lato-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Exo 2";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/exo-2-v20-latin-700.woff2") format("woff2"), url("../fonts/exo-2-v20-latin-700.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* lato-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Exo 2";
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/exo-2-v20-latin-700italic.woff2") format("woff2"), url("../fonts/exo-2-v20-latin-700italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* Imports */
/*! 
 * GENERATED FILE WARNING
 * ----------------------
 * Diese Datei ist SCSS-Source. Kompilierte CSS-Dateien liegen unter:
 * - meshwald/assets/css/style.css
 * - meshwald/assets/css/editor.css
 * Bitte die CSS-Dateien nicht manuell bearbeiten – stattdessen SCSS anpassen
 * und via "npm run build-css" neu bauen.
 */
/*** Header ***/
header {
  position: fixed;
  top: 0px;
  z-index: 99999;
  width: 100vw;
  box-shadow: var(--wp--preset--shadow--soft-shadow);
  background: var(--wp--preset--color--light);
  background: linear-gradient(90deg, var(--wp--preset--color--light) 60%, var(--wp--preset--color--primary) 60%, var(--wp--preset--color--primary) 100%);
}
header .wp-block-group {
  background-color: initial !important;
  padding: 0 var(--wp--preset--spacing--60) !important;
}
header .wp-block-group .wp-block-group {
  background-color: var(--wp--preset--color--light) !important;
  padding: initial !important;
}
@media (max-width: 576px) {
  header .wp-block-group .wp-block-group .wp-block-group {
    display: none;
  }
}
header .wp-block-group .wp-block-group .wp-block-group .wp-block-meshwald-icons {
  position: relative;
  cursor: pointer;
}
@media (max-width: 1576px) {
  header .wp-block-group .wp-block-group .wp-block-group .wp-block-meshwald-icons:hover + .wp-block-paragraph {
    opacity: 1;
    visibility: visible;
  }
}
@media (max-width: 1576px) {
  header .wp-block-group .wp-block-group .wp-block-group .wp-block-meshwald-icons {
    --meshwald-icon-size: 40px !important;
  }
}
@media (max-width: 1576px) {
  header .wp-block-group .wp-block-group .wp-block-group .wp-block-paragraph {
    position: absolute;
    top: var(--wp--preset--spacing--80);
    transform: translateY(-50%);
    opacity: 0;
    background-color: var(--wp--preset--color--light);
    padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--30);
    visibility: hidden;
    transition: opacity 0.3s ease;
    box-shadow: var(--wp--preset--shadow--soft-shadow);
  }
}
@media (max-width: 576px) {
  header .wp-block-group .wp-block-group .wp-block-group .wp-block-paragraph {
    top: var(--wp--preset--spacing--70);
  }
}
header .wp-block-group .wp-block-group .wp-block-site-logo a img {
  max-height: 96px;
  min-height: 56px !important;
  height: 5vw;
  max-width: initial;
}
header .wp-block-group .wp-block-group .wrapper {
  display: flex;
  justify-content: flex-end;
}
header .wp-block-group .wp-block-group .wrapper .toggle-btn {
  display: flex;
  flex-direction: column;
  z-index: 99998;
  padding: 0px;
  cursor: pointer;
  background-color: inherit;
  box-shadow: inherit;
  border: inherit;
  gap: 0.3em;
}
header .wp-block-group .wp-block-group .wrapper .toggle-btn .bar {
  width: 48px;
  height: 5px;
  border-radius: 5px;
  background-color: var(--wp--preset--color--text);
  transition: all 0.3s ease-in-out;
}
header .wp-block-group .wp-block-group .wrapper .toggle-btn .bar:nth-child(2) {
  width: 48px;
}
header .wp-block-group .wp-block-group .wrapper .toggle-btn[aria-expanded=true] .bar:nth-child(1) {
  transform: translateY(11px) rotate(45deg);
  background-color: var(--wp--preset--color--light);
}
@media (max-width: 768px) {
  header .wp-block-group .wp-block-group .wrapper .toggle-btn[aria-expanded=true] .bar:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
  }
}
header .wp-block-group .wp-block-group .wrapper .toggle-btn[aria-expanded=true] .bar:nth-child(2) {
  opacity: 0;
}
header .wp-block-group .wp-block-group .wrapper .toggle-btn[aria-expanded=true] .bar:nth-child(3) {
  transform: translateY(-13px) rotate(-45deg);
  background-color: var(--wp--preset--color--light);
}
header .wp-block-group .wp-block-group .wrapper {
  /*** Mobile Navigation Overlay – Hub / Split Screen ***/
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation {
  display: none;
  position: fixed;
  inset: 0;
  interpolate-size: allow-keywords;
  z-index: 9999;
  height: 100dvh;
  padding: clamp(6rem, 10vw, 9rem) clamp(1.25rem, 5vw, 5rem) clamp(2rem, 6vw, 4rem);
  box-sizing: border-box;
  background: var(--wp--preset--color--secondary);
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  opacity: 0;
  visibility: hidden;
  transform: translateY(1rem);
  transition: opacity 1s ease, transform 1s ease, visibility 0s linear 0.28s;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation.visible {
  display: block;
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition: opacity 1s ease, transform 1s ease, visibility 0s linear 0s;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation .wp-block-navigation__responsive-container-content {
  width: 100%;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation .wp-block-navigation__submenu-icon,
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation .wp-block-navigation-submenu__toggle {
  display: none !important;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul,
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation li {
  list-style: none;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation a,
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation .wp-block-navigation-item__content {
  text-decoration: none;
  color: var(--wp--preset--color--light) !important;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation a:focus-visible,
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation .wp-block-navigation-item__content:focus-visible {
  outline: 2px solid var(--wp--preset--color--light);
  outline-offset: 0.35rem;
  border-radius: 0.25rem;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-navigation-item.has-child > ul.wp-block-navigation__submenu-container {
  display: block !important;
  position: static !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 0;
  opacity: 0;
  visibility: hidden;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  pointer-events: none !important;
  transform: translateY(-0.25rem);
  transition: height 0.9s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s ease, transform 0.6s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0.9s;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-navigation-item.has-child.is-topmenu-open > ul.wp-block-navigation__submenu-container {
  opacity: 1;
  visibility: visible;
  pointer-events: auto !important;
  transform: translateY(0);
  transition: height 0.9s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s ease, transform 0.6s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0s;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container {
  display: block !important;
  width: min(80%, 1200px);
  margin: 0 auto !important;
  padding: 0 !important;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list {
  display: flex !important;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
}
@media (max-width: 768px) {
  header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list {
    display: block !important;
    min-height: auto;
  }
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item {
  display: table !important;
  position: static;
  margin: 0;
  padding: 0;
  gap: 0;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item > a,
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item > .wp-block-navigation-item__content {
  display: block !important;
  width: auto;
  padding: 0.35em 0;
  font-size: clamp(2rem, 5vw, 5.5rem);
  line-height: 0.95;
  font-weight: 600;
  opacity: 0.58;
  transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1), transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item:hover > a, header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item:focus-within > a, header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item:hover > .wp-block-navigation-item__content, header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item:focus-within > .wp-block-navigation-item__content {
  opacity: 1;
  transform: translateX(0.25rem);
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item > ul.wp-block-navigation__submenu-container {
  display: block !important;
  position: static !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
@media (max-width: 768px) {
  header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item > a,
  header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item > .wp-block-navigation-item__content {
    font-size: clamp(2rem, 11vw, 4rem);
  }
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li {
  display: table !important;
  margin: 0;
  padding: 0;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li > a,
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li > .wp-block-navigation-item__content {
  display: table !important;
  padding: 0.35rem 0;
  font-size: var(--wp--preset--font-size--x-large);
  line-height: 1.08;
  font-weight: 400;
  opacity: 0.95;
  transition: opacity 0.18s ease, transform 0.18s ease;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li > a:hover,
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li > .wp-block-navigation-item__content:hover, header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li:focus-within > a, header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li:focus-within > .wp-block-navigation-item__content {
  opacity: 1;
  transform: translateX(0.25rem);
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li > ul.wp-block-navigation__submenu-container {
  display: block !important;
  position: static !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 0;
  opacity: 0;
  visibility: hidden;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 0 0 1.25rem !important;
  border: none !important;
  border-left: 10px solid var(--wp--preset--color--primary) !important;
  background: transparent !important;
  box-shadow: none !important;
  pointer-events: none !important;
  transform: translateY(-0.35rem);
  transition: height 0.9s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.28s ease, transform 0.35s ease, visibility 0s linear 0.9s, margin 0.35s ease, padding 0.35s ease;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li:hover > ul.wp-block-navigation__submenu-container, header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li:focus-within > ul.wp-block-navigation__submenu-container {
  opacity: 1;
  visibility: visible;
  pointer-events: auto !important;
  margin: 0.35rem 0 0.9rem 0 !important;
  padding: 0.25rem 0 0.25rem 1.25rem !important;
  transform: translateY(0);
  transition: height 0.9s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.28s ease 0.08s, transform 0.35s ease, visibility 0s linear 0s, margin 0.35s ease, padding 0.35s ease;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li > ul.wp-block-navigation__submenu-container li {
  display: block !important;
  margin: 0;
  padding: 0;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li > ul.wp-block-navigation__submenu-container a,
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li > ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  display: block !important;
  padding: 0.22rem 0;
  font-size: clamp(1rem, 1.2vw, 1.25rem);
  line-height: 1.35;
  font-weight: 450;
  letter-spacing: 0;
  opacity: 0.78;
  overflow-wrap: anywhere;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li > ul.wp-block-navigation__submenu-container a:hover,
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li > ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
  opacity: 1;
  transform: translateX(0.2rem);
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__submenu-container ul.wp-block-navigation__submenu-container li > ul.wp-block-navigation__submenu-container {
  display: block !important;
  position: static !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 0;
  opacity: 0;
  visibility: hidden;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 0 0 1rem !important;
  background: transparent !important;
  border: 0 !important;
  border-left: 3px solid var(--wp--preset--color--primary) !important;
  box-shadow: none !important;
  pointer-events: none !important;
  transform: translateY(-0.25rem);
  transition: height 0.9s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.25s ease, transform 0.3s ease, visibility 0s linear 0.9s, padding 0.3s ease;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__submenu-container ul.wp-block-navigation__submenu-container li:hover > ul.wp-block-navigation__submenu-container,
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__submenu-container ul.wp-block-navigation__submenu-container li:focus-within > ul.wp-block-navigation__submenu-container {
  opacity: 1;
  visibility: visible;
  padding: 0.2rem 0 0.35rem 1rem !important;
  pointer-events: auto !important;
  transform: translateY(0);
  transition: height 0.9s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.25s ease 0.05s, transform 0.3s ease, visibility 0s linear 0s, padding 0.3s ease;
}
@media (hover: none), (pointer: coarse) {
  header .wp-block-group .wp-block-group .wrapper nav.primary-navigation li.is-submenu-open > ul.wp-block-navigation__submenu-container {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0);
  }
  header .wp-block-group .wp-block-group .wrapper nav.primary-navigation li.is-submenu-open > ul.wp-block-navigation__submenu-container li,
  header .wp-block-group .wp-block-group .wrapper nav.primary-navigation li.is-submenu-open > ul.wp-block-navigation__submenu-container a,
  header .wp-block-group .wp-block-group .wrapper nav.primary-navigation li.is-submenu-open > ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    pointer-events: auto !important;
  }
}
@media (max-width: 576px) {
  header .wp-block-group .wp-block-group .wrapper nav.primary-navigation {
    padding: 5.5rem 1.25rem 2rem;
  }
  header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > li.wp-block-navigation-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.22);
    padding: 0.45rem 0;
  }
  header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > li.wp-block-navigation-item > a,
  header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > li.wp-block-navigation-item > .wp-block-navigation-item__content {
    padding: 0.25rem 0;
  }
  header .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul.wp-block-navigation__container > li.wp-block-navigation-item > ul.wp-block-navigation__submenu-container {
    padding-left: 1rem !important;
    margin-bottom: 0.75rem !important;
  }
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation .primary-navigation__icon {
  display: inline-flex;
  width: 0.85em;
  height: 0.85em;
  flex: 0 0 auto;
  margin-right: 24px;
}
header .wp-block-group .wp-block-group .wrapper nav.primary-navigation .primary-navigation__icon svg {
  width: 100%;
  height: 100%;
  display: block;
  fill: currentColor;
  stroke: currentColor;
}

/* Original Toggle Menu 
header {
    padding: 0 15px;
    position: fixed;
    right: 0px;
    nav {
        padding: var(--wp--preset--spacing--30);
        button {
            svg {
                border: solid 1px blue !important;
                width: 56px !important;   
                height: 56px !important;
                display: block;
                overflow: hidden;
                    path {
                        height: 30px !important;
                        fill: var(--wp--preset--color--primary);
                        transform: scaleY(1.5); // 1 = normal, 1.5 = 50 % fetter
                        transform-origin: center;
                    }
                }
        }
        .wp-block-navigation__responsive-container {
            &.is-menu-open {
            border: solid 2px orange;
            background-color: var(--wp--preset--color--text) !important;
            color: var(--wp--preset--color--light);
            }
        }
    }
}
*/
/* Imports */
/*! 
 * GENERATED FILE WARNING
 * ----------------------
 * Diese Datei ist SCSS-Source. Kompilierte CSS-Dateien liegen unter:
 * - meshwald/assets/css/style.css
 * - meshwald/assets/css/editor.css
 * Bitte die CSS-Dateien nicht manuell bearbeiten – stattdessen SCSS anpassen
 * und via "npm run build-css" neu bauen.
 */
/**** allgemein ****/
html {
  scroll-behavior: smooth;
}

/*** Body ***/
body.home main .entry-content {
  padding-top: initial;
}
body mark {
  background-color: inherit !important;
}

/************************
**** Darkmode / Auto ****
************************
@media (prefers-color-scheme: dark) {
  :root {
      body {
        background-color: #1a1a1a;
        header {
          p {
          color: #1a1a1a;
          }
          .wp-block-columns.has-primary-background-color{      
          background-color: #1a1a1a !important;
          }
        }
        --wp--preset--color--text: #ffffff;

        main {
          .mobile_select {
            .has-primary-background-color {
              background-color: #1a1a1a !important;
              box-shadow: 0px 0px 20px rgba(255, 255, 255, 0.2) !important;
              .select2-selection {
                background-color: #1a1a1a;
                span {color: #ffffff;}
              }
            }
          }
          .has-hgbox-border-color {border-color: white !important;}
          .has-header-footer-background-color {background-color: #2a2a2a !important;}
          .has-secondary-color {border-color: #ffffff !important;}
          .wp-block-details summary, .wp-block-table.is-style-stripes tbody tr:nth-child(2n+1) {color: #1a1a1a;}
          .wp-block-navigation__responsive-container {
            box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
            background-color: #ffffff !important;
            color: #1a1a1a;
            .wp-block-navigation__responsive-close {
              .wp-block-navigation__responsive-dialog {
                .wp-block-navigation__responsive-container-close {
                  svg {color: #1a1a1a;}
                }
                .wp-block-navigation__responsive-container-content {
                  .wp-block-navigation__container {
                    .wp-block-navigation-item {
                      .wp-block-navigation-item__content {
                        .wp-block-navigation-item__label {background-color: #ffffff; color: #1a1a1a;}
                      }
                    }
                  }
                }
              }
            }
          }
          .filter {
            background-color: #1a1a1a !important;
            box-shadow: 0px 0px 20px rgba(255, 255, 255, 0.2) !important;
            .wp-block-column {
              form {
                .wp-block-search__inside-wrapper {
                  input, button {background-color: #1a1a1a; color: #ffffff;
                  border: 0px;}
                }
              }
              span {
                background-color: #1a1a1a;
                color: #ffffff;
              }
            }
          }

          .hero-slider .slider {
          mix-blend-mode: inherit;
          }
          .has-header-footer-background-color {
              &:has(.hero-slider){
                  background-color: #ffffff !important;
                  color: #1a1a1a;
              }
          }


        }
        footer {
          p, a, h1, h2, h3, h4, h5, h6 {color: #1a1a1a;}
        }
      .wp-block-column .wp-block-categories-dropdown,
      .wp-block-column .wp-block-archives-dropdown {
        .select2{
          color: #ffffff;
          background: #1a1a1a;
          .selection {
            .select2-selection--single {
              .select2-selection__arrow {
                border-right: 2px solid var(--wp--preset--color--secondary);
                 border-bottom: 2px solid var(--wp--preset--color--secondary);
              }
            }
          } 
        }
      }
      .select2-container { 
         .select2-dropdown {
          box-shadow: 0px 15px 20px rgba(255, 255, 255, 0.2);
          background-color: #1a1a1a;
          .select2-results {
            .select2-results__options {
              .select2-results__option--highlighted[aria-selected] {
                 background-color: #e00;
              }          
            }
          }
        }
      }  
    }
  }
}
*/
/**************************
**** Styling Scrollbar ****
***************************/
select {
  overflow-y: auto;
}

* {
  scrollbar-width: thin;
  scrollbar-color: var(--wp--preset--color--primary) #EEE9E2;
}

*::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

*::-webkit-scrollbar-thumb {
  background-color: var(--wp--preset--color--primary);
  border-radius: 10px;
}

*::-webkit-scrollbar-track {
  background-color: none;
  border-radius: 10px;
}

/**********************************************************************
**** Icon-Design für die automatischen Icons im template page.html ****
***********************************************************************/
.page-tree-icon {
  display: inline-flex;
  width: var(--page-tree-icon-size, 56px);
  height: var(--page-tree-icon-size, 56px);
  color: var(--wp--preset--color--text);
  line-height: 0;
  vertical-align: middle;
}
.page-tree-icon svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: currentColor;
}

/* Imports */
/*! 
 * GENERATED FILE WARNING
 * ----------------------
 * Diese Datei ist SCSS-Source. Kompilierte CSS-Dateien liegen unter:
 * - meshwald/assets/css/style.css
 * - meshwald/assets/css/editor.css
 * Bitte die CSS-Dateien nicht manuell bearbeiten – stattdessen SCSS anpassen
 * und via "npm run build-css" neu bauen.
 */
footer .wp-block-columns {
  margin-bottom: 0em;
}
footer .background-soil {
  position: relative;
  background-color: var(--wp--preset--color--secondary);
  background-image: radial-gradient(circle at 20% 30%, rgba(0, 0, 0, 0.15) 6px, transparent 7px), radial-gradient(circle at 70% 20%, rgba(0, 0, 0, 0.12) 4px, transparent 5px), radial-gradient(circle at 40% 60%, rgba(0, 0, 0, 0.15) 8px, transparent 9px), radial-gradient(circle at 80% 70%, rgba(0, 0, 0, 0.12) 5px, transparent 6px), radial-gradient(circle at 10% 80%, rgba(0, 0, 0, 0.18) 10px, transparent 11px);
  background-size: 400px 200px;
}
footer .background-soil ::after .background-soil::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background-image: radial-gradient(circle at 20px 40px, #b97a48 22px, transparent 23px), radial-gradient(circle at 80px 45px, #b97a48 28px, transparent 29px), radial-gradient(circle at 150px 50px, #b97a48 18px, transparent 19px), radial-gradient(circle at 220px 45px, #b97a48 30px, transparent 31px), radial-gradient(circle at 300px 50px, #b97a48 20px, transparent 21px);
  background-size: 320px 80px;
  background-repeat: repeat-x;
}

/* Imports */
/*! 
 * GENERATED FILE WARNING
 * ----------------------
 * Diese Datei ist SCSS-Source. Kompilierte CSS-Dateien liegen unter:
 * - meshwald/assets/css/style.css
 * - meshwald/assets/css/editor.css
 * Bitte die CSS-Dateien nicht manuell bearbeiten – stattdessen SCSS anpassen
 * und via "npm run build-css" neu bauen.
 */
/**
 * Zitate Block
 *

.wp-block-quote {
  p, cite {
    margin-left: 40rem;
  }

  &::before, &.has-text-align-right p::before {
    content: "\201C";
    font-size: 4rem;
    line-height: 1;
    font-weight: 00;
    color: var(--wp--preset--color--primary);
  }

  &.has-text-align-center::before {
    content: " ";
  }

  &.has-text-align-right {
    &::before {
      content: " ";
    }

    p::before {
      margin-left: 4rem;
    }
  }
}
 */
/**
 * Absatz - Allgemein <a>-Tag
 *
 */
.wp-block-paragraph a {
  color: var(--wp--preset--color--primary);
}

/**
 * Tabelle – Streifen
 *
 */
.wp-block-table.is-style-stripes {
  border: solid 0px white;
}
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
  background-color: white;
}
.wp-block-table.is-style-stripes tbody tr td {
  hyphens: auto;
  -webkit-hyphens: auto;
  padding: var(--wp--preset--spacing--20);
}

/**
 * Search Block
 *
 */
.wp-block-search .wp-block-search__inside-wrapper .wp-block-search__input {
  background-color: var(--wp--preset--color--light);
}
.wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button svg {
  height: 42px;
  min-height: 42px;
  min-width: 42px;
}

/**
 * Neueste Beiträge Block
 *
 */
.wp-block-latest-posts__list .wp-block-latest-posts__post-title {
  color: var(--wp--preset--color--text);
  font-size: var(--wp--preset--font-size--large);
  text-decoration: none;
}
.wp-block-latest-posts__list .wp-block-latest-posts__read-more {
  color: var(--wp--preset--color--primary);
  text-decoration: none;
  display: block;
}
.wp-block-latest-posts__list .wp-block-latest-posts__read-more .screen-reader-text {
  display: none;
}

/**
 * Read More Button
 *
 */
.wp-block-read-more, .wp-block-post-excerpt__more-text {
  display: flex;
  align-items: left;
  justify-content: space-between;
}

/**
 * Listen Block
 *
 */
.wp-block-list {
  list-style-position: outside;
  padding-inline-start: 0.8em;
}
.wp-block-list li::marker {
  padding-right: 0.6em;
  content: "•" "  ";
  color: var(--wp--preset--color--primary);
}

/**
 * Details Block
 *
 */
details {
  padding: var(--wp--preset--spacing--30);
  border-bottom: solid 3px var(--wp--preset--color--light);
}
details summary {
  list-style-type: none;
  font-weight: 700;
}
details summary::before {
  content: "+";
  text-align: center;
  display: inline-block;
  align-items: center;
  transition: transform 0.3s ease;
  margin-right: var(--wp--preset--spacing--20);
  background-color: var(--wp--preset--color--primary);
  width: 56px;
  height: 56px;
  border-radius: 999px;
  line-height: 3.1rem;
}

details[open] summary::before {
  transform: rotate(180deg);
  content: "–";
}
details[open] summary + p {
  padding: var(--wp--preset--spacing--10) 0 0 calc(var(--wp--preset--spacing--30) + 4px);
}
details[open] p {
  padding: 0 0 0 calc(var(--wp--preset--spacing--30) + 4px);
}

summary::-webkit-details-marker {
  display: none;
}

.wp-block-details > summary {
  cursor: pointer;
}

.wp-block-details > summary::-webkit-details-marker {
  display: none;
}

/* Details Block ausgefahren */
.wp-block-details[open] > summary + * {
  overflow: hidden;
  transition: max-height 0.5s ease;
}

/* Details Block eingeklappt */
.wp-block-details:not([open]) > summary + * {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s ease;
}

/* Zusätzliche Animation für den darunterliegenden Container */
.wp-block-details[open] summary ~ * {
  animation: sweep 0.5s ease-in-out, slideDown 0.5s ease-in-out;
}

.wp-block-details:not([open]) summary ~ * {
  animation: sweep 0.5s ease-in-out, slideUp 0.5s ease-in-out;
}

@keyframes sweep {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes slideDown {
  0% {
    max-height: 0;
  }
  100% {
    max-height: 1000px;
  }
}
@keyframes slideUp {
  0% {
    max-height: 1000px;
  }
  100% {
    max-height: 0;
  }
}
/**
 * Accordeon
 * 
 */
.wp-block-accordion-heading__toggle-icon {
  text-align: center;
  display: inline-block;
  align-items: center;
  transition: transform 0.3s ease;
  margin-right: var(--wp--preset--spacing--20);
  background-color: var(--wp--preset--color--primary);
  width: 56px;
  height: 56px;
  border-radius: 999px;
  line-height: 3.1rem;
}

.wp-block-accordion-item .wp-block-accordion-panel {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition: grid-template-rows 0.35s ease, opacity 0.25s ease;
}
.wp-block-accordion-item .wp-block-accordion-panel > div {
  min-height: 0;
  overflow: hidden;
}
.wp-block-accordion-item.is-open .wp-block-accordion-panel {
  grid-template-rows: 1fr;
  opacity: 1;
}

/**
 * Startseite
 * Thüringenkarte
 */
.thueringen-karte {
  position: relative;
}
.thueringen-karte figure {
  position: absolute;
  left: -2%;
  bottom: -32%;
  width: clamp(50rem, 40rem + 30vw, 100rem);
}
@media (max-width: 1576px) {
  .thueringen-karte figure {
    bottom: -16%;
  }
}
@media (max-width: 1200px) {
  .thueringen-karte figure {
    bottom: -8%;
  }
}

/**
 * Startseite & Pages
 * Post-It + Animation
 */
.post-it {
  position: relative;
  z-index: 10;
  flex-basis: clamp(360px, 52vw, 720px) !important;
  margin-left: calc(-1 * var(--wp--preset--spacing--60)) !important;
  overflow: visible;
  border-top-right-radius: 6rem 4.4rem;
  box-shadow: 0 22px 34px rgba(0, 0, 0, 0.18), 0 8px 14px rgba(0, 0, 0, 0.14);
  transform-origin: left bottom;
}
.post-it > * {
  position: relative;
  z-index: 5;
  transform: rotate(-3deg);
}
.post-it::before, .post-it::after {
  content: "";
  position: absolute;
  pointer-events: none;
}
.post-it::before {
  top: 0;
  right: 30px;
  z-index: 6;
  width: 52px;
  height: 52px;
  background: linear-gradient(135deg, rgba(255, 236, 145, 0.98) 0%, rgba(255, 203, 55, 0.95) 42%, rgba(222, 145, 10, 0.9) 100%);
  clip-path: path("M 0 0 C 42 8 42 20 50 52 C 34 39 15 34 0 45 C 8 28 8 13 0 0 Z");
  box-shadow: -12px 14px 22px rgba(80, 35, 0, 0.22), inset 10px -12px 16px rgba(80, 35, 0, 0.2), inset -8px 8px 12px rgba(255, 255, 255, 0.5);
  transform: skew(30deg, 0deg);
  transform-origin: top right;
}
.post-it::after {
  top: 0;
  right: -8px;
  z-index: 3;
  width: 100px;
  height: 48px;
  background: rgba(80, 40, 0, 0.25);
  border-radius: 50%;
  filter: blur(10px);
  transform: rotate(16deg) scaleX(1.2);
}

.home .wp-block-cover {
  overflow: visible;
}
.home .wp-block-cover:has(.post-it) > .wp-block-cover__inner-container {
  position: relative;
  overflow: visible !important;
  z-index: 20;
}
.home .post-it {
  position: relative;
  z-index: 30;
  transform: rotate(3deg) translateY(1.8rem);
  transition: none;
}

.page:not(.home) .wp-block-cover {
  overflow: hidden;
}
.page:not(.home) .wp-block-cover:has(.post-it:hover), .page:not(.home) .wp-block-cover:has(.post-it:focus-within), .page:not(.home) .wp-block-cover:has(.post-it.open) {
  overflow: visible;
}
.page:not(.home) .wp-block-cover:has(.post-it) > .wp-block-cover__inner-container {
  position: relative;
  overflow: visible !important;
}
.page:not(.home) .post-it {
  width: clamp(360px, 52vw, 720px) !important;
  position: absolute;
  left: 0;
  bottom: 2vw;
  cursor: pointer;
  will-change: transform, translate;
  transform: translate(-82%, 72%) rotate(3deg);
  translate: 0 0;
  animation: post-it-hidden-float 1.8s ease-in-out infinite;
  transition: transform 0.65s cubic-bezier(0.22, 1, 0.36, 1), translate 0.2s ease, box-shadow 0.35s ease;
}
.page:not(.home) .post-it::before {
  animation: post-it-corner-pulse 1.8s ease-in-out infinite;
}
.page:not(.home) .post-it:hover, .page:not(.home) .post-it:focus-within, .page:not(.home) .post-it.open {
  animation: none;
  transform: translate(0, 1.8rem) rotate(3deg);
}
.page:not(.home) .post-it:hover::before, .page:not(.home) .post-it:focus-within::before, .page:not(.home) .post-it.open::before {
  animation: none;
}

@media (max-width: 781px) {
  .wp-block-columns:has(.post-it) .wp-block-column:first-child {
    order: 2;
  }
  .wp-block-columns:has(.post-it) .wp-block-column:first-child .wp-block-cover {
    min-height: unset !important;
    height: auto !important;
    display: block;
  }
  .wp-block-columns:has(.post-it) .wp-block-column:first-child .wp-block-cover__image-background {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }
  .wp-block-columns:has(.post-it) .wp-block-column:last-child {
    order: 1;
  }
}
@keyframes post-it-corner-pulse {
  0%, 100% {
    transform: skew(30deg, 0deg) scale(1);
    filter: brightness(1);
  }
  50% {
    transform: skew(30deg, 0deg) scale(1.12);
    filter: brightness(1.12);
  }
}
@keyframes post-it-hidden-float {
  0%, 100% {
    translate: 0 0;
  }
  50% {
    translate: 0.75rem -0.6rem;
  }
}
/* Imports */
/*! 
 * GENERATED FILE WARNING
 * ----------------------
 * Diese Datei ist SCSS-Source. Kompilierte CSS-Dateien liegen unter:
 * - meshwald/assets/css/style.css
 * - meshwald/assets/css/editor.css
 * Bitte die CSS-Dateien nicht manuell bearbeiten – stattdessen SCSS anpassen
 * und via "npm run build-css" neu bauen.
 */
/*
 * Buttons – meshwald Baseline
 * Einheitliches Grunddesign:
 * - 1px Outline / Border
 * - keine Rundung
 * - klarer Focus-Style
 */
/*
 * Generische Buttons
 */
button,
input[type=button],
input[type=reset],
input[type=submit] {
  color: var(--wp--preset--color--text);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  border-radius: 999px;
  background: var(--wp--preset--color--primary);
  font: inherit;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease;
}
button:focus-visible,
input[type=button]:focus-visible,
input[type=reset]:focus-visible,
input[type=submit]:focus-visible {
  outline: 2px solid var(--wp--preset--color--primary);
  outline-offset: 2px;
}
button:disabled, button[aria-disabled=true],
input[type=button]:disabled,
input[type=button][aria-disabled=true],
input[type=reset]:disabled,
input[type=reset][aria-disabled=true],
input[type=submit]:disabled,
input[type=submit][aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}

/*
 * WordPress Button-Klassen
 */
.wp-element-button,
.wp-block-button__link,
.wp-block-file__button,
.wp-block-search__button,
.meshwald-carousel__arrow--prev,
.meshwald-carousel__btn,
.wp-block-post-comments-form input[type=submit] {
  color: var(--wp--preset--color--text);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  border-radius: 999px;
  background: var(--wp--preset--color--primary);
  font: inherit;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease;
}
.wp-element-button:focus-visible,
.wp-block-button__link:focus-visible,
.wp-block-file__button:focus-visible,
.wp-block-search__button:focus-visible,
.meshwald-carousel__arrow--prev:focus-visible,
.meshwald-carousel__btn:focus-visible,
.wp-block-post-comments-form input[type=submit]:focus-visible {
  outline: 2px solid var(--wp--preset--color--primary);
  outline-offset: 2px;
}
.wp-element-button:disabled, .wp-element-button[aria-disabled=true],
.wp-block-button__link:disabled,
.wp-block-button__link[aria-disabled=true],
.wp-block-file__button:disabled,
.wp-block-file__button[aria-disabled=true],
.wp-block-search__button:disabled,
.wp-block-search__button[aria-disabled=true],
.meshwald-carousel__arrow--prev:disabled,
.meshwald-carousel__arrow--prev[aria-disabled=true],
.meshwald-carousel__btn:disabled,
.meshwald-carousel__btn[aria-disabled=true],
.wp-block-post-comments-form input[type=submit]:disabled,
.wp-block-post-comments-form input[type=submit][aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}
.wp-element-button .meshwald-button__icon,
.wp-block-button__link .meshwald-button__icon,
.wp-block-file__button .meshwald-button__icon,
.wp-block-search__button .meshwald-button__icon,
.meshwald-carousel__arrow--prev .meshwald-button__icon,
.meshwald-carousel__btn .meshwald-button__icon,
.wp-block-post-comments-form input[type=submit] .meshwald-button__icon {
  display: flex;
}
.wp-element-button .meshwald-button__icon svg,
.wp-block-button__link .meshwald-button__icon svg,
.wp-block-file__button .meshwald-button__icon svg,
.wp-block-search__button .meshwald-button__icon svg,
.meshwald-carousel__arrow--prev .meshwald-button__icon svg,
.meshwald-carousel__btn .meshwald-button__icon svg,
.wp-block-post-comments-form input[type=submit] .meshwald-button__icon svg {
  width: 32px;
  height: 32px;
}

.wp-block-search__button .search-icon {
  width: calc(32px + 24 * (100vw - 320px) / 2240);
  height: calc(32px + 24 * (100vw - 320px) / 2240) !important;
}

/* Button-Links sollen wie Buttons aussehen */
a.wp-element-button,
a.wp-block-button__link,
a.wp-block-file__button {
  color: var(--wp--preset--color--text);
}

/***************************
 * Meshwald Button-Klassen *
 ***************************/
/*
 * Scroll Top Button
 */
#scroll-top-button {
  position: absolute;
  font-size: 2.4em;
  padding-bottom: 16px;
  height: 56px;
  width: 56px;
  background-color: var(--wp--preset--color--primary);
  border: solid 0px;
  cursor: pointer;
  z-index: 999;
  display: none;
  position: fixed;
  box-shadow: var(--wp--preset--shadow--soft-shadow);
  transform: rotate(90deg);
  background-color: var(--wp--preset--color--light);
  top: initial;
  border-radius: initial;
  bottom: 0px;
  right: clamp(0px, (100vw - var(--wp--style--global--content-size)) / 2, 100vw - 48px);
}
@media (max-width: 1710px) {
  #scroll-top-button {
    right: var(--wp--style--root--padding-right);
  }
}

/*
 * Testimonial-Slider Button
 */
.testimonial-prev-slide, .testimonial-next-slide {
  top: 43%;
}

.testimonial-prev-slide {
  position: absolute;
  font-size: 2.4em;
  padding-bottom: 16px;
  height: 56px;
  width: 56px;
  background-color: var(--wp--preset--color--primary);
  border: solid 0px;
  cursor: pointer;
  z-index: 999;
  left: var(--wp--preset--spacing--30);
}

.testimonial-next-slide {
  position: absolute;
  font-size: 2.4em;
  padding-bottom: 16px;
  height: 56px;
  width: 56px;
  background-color: var(--wp--preset--color--primary);
  border: solid 0px;
  cursor: pointer;
  z-index: 999;
  right: var(--wp--preset--spacing--30);
}

/*** Dots ***/
.testimonial-nav-dots {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 10px !important;
  width: fit-content;
  margin: 20px auto !important;
  padding: var(--wp--preset--spacing--30) !important;
  background-color: var(--wp--preset--color--primary);
  border-radius: 999px;
}
.testimonial-nav-dots .meshwald-slider-dots {
  width: 24px !important;
  height: 24px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  border-radius: 50% !important;
  border: solid 2px var(--wp--preset--color--text) !important;
  background: transparent !important;
  cursor: pointer !important;
  opacity: 1 !important;
}
.testimonial-nav-dots .meshwald-slider-dots.is-active {
  background: var(--wp--preset--color--text) !important;
}

/*
 * Hero-Slider Button
 */
.hero-prev-slide, .hero-next-slide {
  top: 50%;
}

.hero-prev-slide {
  position: absolute;
  font-size: 2.4em;
  padding-bottom: 16px;
  height: 56px;
  width: 56px;
  background-color: var(--wp--preset--color--primary);
  border: solid 0px;
  cursor: pointer;
  z-index: 999;
  left: var(--wp--preset--spacing--30);
}

.hero-next-slide {
  position: absolute;
  font-size: 2.4em;
  padding-bottom: 16px;
  height: 56px;
  width: 56px;
  background-color: var(--wp--preset--color--primary);
  border: solid 0px;
  cursor: pointer;
  z-index: 999;
  right: var(--wp--preset--spacing--30);
}

/* CTA Button (optional) */
.cta-button {
  display: inline-block;
}

/*** Dots ***/
.hero-slider .hero-nav-dots {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 10px !important;
  width: fit-content;
  margin: 20px auto !important;
  padding: var(--wp--preset--spacing--30) !important;
  background-color: var(--wp--preset--color--primary);
  border-radius: 999px;
}
.hero-slider .hero-nav-dots .meshwald-slider-dots {
  width: 24px !important;
  height: 24px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  border-radius: 50% !important;
  border: solid 2px var(--wp--preset--color--text) !important;
  background: transparent !important;
  cursor: pointer !important;
  opacity: 1 !important;
}
.hero-slider .hero-nav-dots .meshwald-slider-dots.is-active {
  background: var(--wp--preset--color--text) !important;
}

.hero-nav-dots {
  display: flex;
  gap: 10px;
  z-index: 5;
}

.hero-nav-dot.is-active {
  background: currentColor;
}

/*
 * Carousel-Slider Button
 */
.meshwald-carousel {
  gap: var(--wp--preset--spacing--20);
}
.meshwald-carousel .meshwald-carousel__arrow {
  position: absolute;
  top: 40%;
  transform: translateY(-40%);
  width: 48px;
  height: 48px;
  z-index: 3;
  border: solid 3px var(--wp--preset--color--light);
  color: var(--wp--preset--color--light);
  cursor: pointer;
  line-height: 1;
  padding: initial;
  border-radius: 999px;
}
.meshwald-carousel .meshwald-carousel__arrow--prev {
  position: absolute;
  font-size: 2.4em;
  padding-bottom: 16px;
  height: 56px;
  width: 56px;
  background-color: var(--wp--preset--color--primary);
  border: solid 0px;
  cursor: pointer;
  z-index: 999;
  left: var(--wp--preset--spacing--40);
  background-color: var(--wp--preset--color--secondary);
}
.meshwald-carousel .meshwald-carousel__arrow--next {
  position: absolute;
  font-size: 2.4em;
  padding-bottom: 16px;
  height: 56px;
  width: 56px;
  background-color: var(--wp--preset--color--primary);
  border: solid 0px;
  cursor: pointer;
  z-index: 999;
  right: var(--wp--preset--spacing--40);
  background-color: var(--wp--preset--color--secondary);
}
.meshwald-carousel .meshwald-carousel__dots {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 10px !important;
  width: fit-content;
  margin: 20px auto !important;
  padding: var(--wp--preset--spacing--30) !important;
  background-color: var(--wp--preset--color--primary);
  border-radius: 999px;
}
.meshwald-carousel .meshwald-carousel__dots .meshwald-slider-dots {
  width: 24px !important;
  height: 24px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  border-radius: 50% !important;
  border: solid 2px var(--wp--preset--color--text) !important;
  background: transparent !important;
  cursor: pointer !important;
  opacity: 1 !important;
}
.meshwald-carousel .meshwald-carousel__dots .meshwald-slider-dots.is-active {
  background: var(--wp--preset--color--text) !important;
}

/*
 * Lightbox Controls
 */
.meshwald-lightbox__prev, .meshwald-lightbox__next {
  position: absolute;
  font-size: 2.4em;
  padding-bottom: 16px;
  height: 56px;
  width: 56px;
  background-color: var(--wp--preset--color--primary);
  border: solid 0px;
  cursor: pointer;
  z-index: 999;
  border: 3px solid #fff;
  background: transparent;
  color: #fff;
  transition: background 180ms ease, color 180ms ease, transform 180ms ease, opacity 180ms ease;
}
.meshwald-lightbox__prev:hover, .meshwald-lightbox__next:hover {
  background: #fff;
  color: #000;
  opacity: 1;
  transform: scale(1.03);
}
.meshwald-lightbox__prev:active, .meshwald-lightbox__next:active {
  transform: scale(0.98);
}

.meshwald-lightbox__prev {
  left: var(--wp--preset--spacing--30);
}

.meshwald-lightbox__next {
  right: var(--wp--preset--spacing--30);
}

.meshwald-lightbox__close {
  position: absolute;
  font-size: 2.4em;
  padding-bottom: 16px;
  height: 56px;
  width: 56px;
  background-color: var(--wp--preset--color--primary);
  border: solid 0px;
  cursor: pointer;
  z-index: 999;
  border: 3px solid #fff;
  background: transparent;
  padding-bottom: 12px;
  color: #fff;
  transition: background 180ms ease, color 180ms ease, transform 180ms ease, opacity 180ms ease;
  position: absolute;
  top: var(--wp--preset--spacing--30);
  right: var(--wp--preset--spacing--30);
}
.meshwald-lightbox__close:hover {
  background: #fff;
  color: #000;
  opacity: 1;
  transform: scale(1.03);
}
.meshwald-lightbox__close:active {
  transform: scale(0.98);
}

html.meshhwald-lightbox-open {
  overflow: hidden;
}
html.meshhwald-lightbox-open body {
  overflow: hidden;
}

/*
 * Post Button
 */
.wp-block-post-navigation-link:has(a) {
  background-color: var(--wp--preset--color--primary);
  padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
  border-radius: 999px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 0.5em;
}
.wp-block-post-navigation-link:has(a).post-navigation-link-previous::before {
  content: "";
  width: 32px;
  height: 32px;
  background-color: currentColor;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJsdWNpZGUgbHVjaWRlLWFycm93LWxlZnQtaWNvbiBsdWNpZGUtYXJyb3ctbGVmdCI+PHBhdGggZD0ibTEyIDE5LTctNyA3LTciLz48cGF0aCBkPSJNMTkgMTJINSIvPjwvc3ZnPg==");
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJsdWNpZGUgbHVjaWRlLWFycm93LWxlZnQtaWNvbiBsdWNpZGUtYXJyb3ctbGVmdCI+PHBhdGggZD0ibTEyIDE5LTctNyA3LTciLz48cGF0aCBkPSJNMTkgMTJINSIvPjwvc3ZnPg==");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}
.wp-block-post-navigation-link:has(a).post-navigation-link-next::after {
  content: "";
  width: 32px;
  height: 32px;
  background-color: currentColor;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJsdWNpZGUgbHVjaWRlLWFycm93LXJpZ2h0LWljb24gbHVjaWRlLWFycm93LXJpZ2h0Ij48cGF0aCBkPSJNNSAxMmgxNCIvPjxwYXRoIGQ9Im0xMiA1IDcgNy03IDciLz48L3N2Zz4=");
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJsdWNpZGUgbHVjaWRlLWFycm93LXJpZ2h0LWljb24gbHVjaWRlLWFycm93LXJpZ2h0Ij48cGF0aCBkPSJNNSAxMmgxNCIvPjxwYXRoIGQ9Im0xMiA1IDcgNy03IDciLz48L3N2Zz4=");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}

.vk-backlink {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  border-radius: 999px;
  background: var(--wp--preset--color--primary);
  font: inherit;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease;
}
.vk-backlink:focus-visible {
  outline: 2px solid var(--wp--preset--color--primary);
  outline-offset: 2px;
}
.vk-backlink:disabled, .vk-backlink[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}
.vk-backlink {
  padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
  border-radius: 999px;
}

/* Imports */
/*! 
 * GENERATED FILE WARNING
 * ----------------------
 * Diese Datei ist SCSS-Source. Kompilierte CSS-Dateien liegen unter:
 * - meshwald/assets/css/style.css
 * - meshwald/assets/css/editor.css
 * Bitte die CSS-Dateien nicht manuell bearbeiten – stattdessen SCSS anpassen
 * und via "npm run build-css" neu bauen.
 */
/*
 * Forms – meshwald Baseline
 * Einheitliche Grundgestaltung für Formular-Controls.
 * (CF7-spezifische Regeln liegen in _cf7.scss)
 */
/*
 * Grundregeln
 */
label {
  margin-block: 0 0.25rem;
  width: 100%;
}

input,
select,
textarea {
  font: inherit;
  color: var(--wp--preset--color--text);
}

/*
 * Text Inputs / Select / Textarea
 */
input[type=text],
input[type=email],
input[type=url],
input[type=tel],
input[type=number],
input[type=password],
input[type=search],
textarea,
select {
  width: 100%;
  max-width: 100%;
  border: 1px solid var(--wp--preset--color--text);
  border-radius: 0;
  background: transparent;
  padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
  line-height: 1.3;
}
input[type=text]:focus-visible,
input[type=email]:focus-visible,
input[type=url]:focus-visible,
input[type=tel]:focus-visible,
input[type=number]:focus-visible,
input[type=password]:focus-visible,
input[type=search]:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid var(--wp--preset--color--primary);
  outline-offset: 2px;
}

textarea {
  min-height: 10rem;
  resize: vertical;
}

/*
 * Select – native Pfeil (leichte Gestaltung, ohne JS)
 */
select {
  appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
  background-position: calc(100% - 1.1rem) 50%, calc(100% - 0.85rem) 50%;
  background-size: 0.35rem 0.35rem, 0.35rem 0.35rem;
  background-repeat: no-repeat;
  padding-right: 2.2rem;
}

/*
 * Checkbox / Radio – minimal (outline, keine Rundung)
 */
input[type=checkbox],
input[type=radio] {
  appearance: none;
  width: 1.1rem;
  height: 1.1rem;
  border: 1px solid var(--wp--preset--color--text);
  border-radius: 0;
  background: transparent;
  display: inline-grid;
  place-content: center;
  vertical-align: middle;
}

input[type=radio] {
  /* Radio bleibt visuell eckig wie gewünscht */
}

input[type=checkbox]::before,
input[type=radio]::before {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  transform: scale(0);
  transition: transform 140ms ease;
  background: var(--wp--preset--color--text);
}

input[type=checkbox]:checked::before,
input[type=radio]:checked::before {
  transform: scale(1);
}

input[type=checkbox]:focus-visible,
input[type=radio]:focus-visible {
  outline: 2px solid var(--wp--preset--color--primary);
  outline-offset: 2px;
}

/*
 * WordPress Core Search Block
 */
.wp-block-search .wp-block-search__input {
  border-radius: 0;
}

/* Imports */
/*! 
 * GENERATED FILE WARNING
 * ----------------------
 * Diese Datei ist SCSS-Source. Kompilierte CSS-Dateien liegen unter:
 * - meshwald/assets/css/style.css
 * - meshwald/assets/css/editor.css
 * Bitte die CSS-Dateien nicht manuell bearbeiten – stattdessen SCSS anpassen
 * und via "npm run build-css" neu bauen.
 */
/*
 * Contact Form 7 – meshwald
 * Ziel: CF7 übernimmt die globalen Form- und Button-Baselines,
 *       bekommt hier nur strukturierende/CF7-spezifische Ergänzungen.
 */
.wpcf7 {
  /* Abstände innerhalb des Formulars */
}
.wpcf7 .wpcf7-form {
  display: grid;
}
.wpcf7 .wpcf7-form p {
  margin-block: 0 1rem;
}
.wpcf7 .wpcf7-form {
  /* CF7 legt Inputs oft in span.wpcf7-form-control-wrap – hier sauber */
}
.wpcf7 .wpcf7-form .wpcf7-form-control-wrap {
  display: block;
  margin-block: 0.25rem 0.75rem;
}
.wpcf7 {
  /* Submit: standardmäßig vollbreit */
}
.wpcf7 input[type=submit],
.wpcf7 button.wpcf7-submit {
  width: 100%;
}
.wpcf7 {
  /* Response Output (success/error/info) */
}
.wpcf7 .wpcf7-response-output {
  margin: 1rem 0 0;
  padding: var(--wp--preset--spacing--30);
  border-radius: 0;
  border: 1px solid var(--wp--preset--color--text);
  color: var(--wp--preset--color--text);
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
  border-color: var(--wp--preset--color--primary);
}
.wpcf7 form.sent .wpcf7-response-output {
  /* Erfolg: gleiche Outline, aber visuell klar */
  border-color: var(--wp--preset--color--text);
}
.wpcf7 {
  /* Inline Fehlhinweise */
}
.wpcf7 .wpcf7-not-valid-tip {
  margin-top: 0.25rem;
  font-size: var(--wp--preset--font-size--small, 0.9em);
  color: var(--wp--preset--color--primary);
}
.wpcf7 {
  /* Spinner minimal */
}
.wpcf7 .wpcf7-spinner {
  margin-left: 0.5rem;
}
.wpcf7 {
  /* Checkbox/Acceptance: Zeilen sauber */
}
.wpcf7 .wpcf7-acceptance,
.wpcf7 .wpcf7-list-item {
  margin: 0;
}

/* Imports */
/*! 
 * GENERATED FILE WARNING
 * ----------------------
 * Diese Datei ist SCSS-Source. Kompilierte CSS-Dateien liegen unter:
 * - meshwald/assets/css/style.css
 * - meshwald/assets/css/editor.css
 * Bitte die CSS-Dateien nicht manuell bearbeiten – stattdessen SCSS anpassen
 * und via "npm run build-css" neu bauen.
 */
/**
 * Hero Cover News
 *
 */
.hero-cover-news {
  height: 90vh;
  position: relative;
}
.hero-cover-news .wp-block-heading {
  line-height: 1em;
  text-shadow: 0px 0px 15px #000000;
}
.hero-cover-news .wp-block-cover {
  min-height: 90vh !important;
}
.hero-cover-news .wp-block-column.is-vertically-aligned-stretch.has-primary-background-color,
.hero-cover-news .wp-block-column.is-vertically-aligned-stretch.has-secondary-background-color {
  display: flex;
  align-items: center;
}
.hero-cover-news .wp-block-column:nth-child(2) {
  position: absolute;
  width: auto !important;
  left: 50%;
  z-index: 9;
  transform: translateY(0%);
  transform: translate(-50%, 0%);
  -moz-transform: translate(-50%, 0%);
  -webkit-transform: translate(-50%, 0%);
}

/**
 * Counter 
 *
 */
.ctrbCounters {
  display: flex !important;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.ctrbCounters .counter {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: var(--wp--preset--color--primary);
}
.ctrbCounters .counter .count {
  font-size: calc(32px + 16 * (100vw - 320px) / 2240);
  font-weight: 600;
  color: var(--wp--preset--color--primary);
}
.ctrbCounters .counter .material-symbols-outlined {
  font-family: "Material Symbols Outlined";
  font-size: calc(64px + 16 * (100vw - 320px) / 2240);
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
}

/**
 * Categories Dropdown (original)
 *

.wp-block-column .wp-block-categories-dropdown,
.wp-block-column .wp-block-archives-dropdown,
.blog .wp-block-column form {
  select {
    border: solid 0px; 
    width: 100%; 
    color: var(--wp--preset--color--base);
    border: solid 2px var(--wp--preset--color--primary);
    background: var(--wp--preset--color--primary);
    padding: var(--wp--preset--spacing--20);
    text-align: center;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url('../images/dropdown.svg') no-repeat right center;
    background-size: 1em;
    padding-right: 2em;
  }
}
*/
/**
 * Categories Dropdown
 *
 */
.wp-block-column .wp-block-categories-dropdown,
.wp-block-column .wp-block-archives-dropdown {
  position: relative; /* Wrapper muss relativ positioniert sein */
}
.wp-block-column .wp-block-categories-dropdown select,
.wp-block-column .wp-block-archives-dropdown select {
  display: block;
}
html.has-select2 .wp-block-column .wp-block-categories-dropdown select,
html.has-select2 .wp-block-column .wp-block-archives-dropdown select {
  display: none;
}
.wp-block-column .wp-block-categories-dropdown .select2,
.wp-block-column .wp-block-archives-dropdown .select2 {
  width: 100% !important;
  color: var(--wp--preset--color--base);
  background: var(--wp--preset--color--primary);
  padding: var(--wp--preset--spacing--20);
  border: 0px;
  cursor: pointer;
}
.wp-block-column .wp-block-categories-dropdown .select2 .selection .select2-selection--single,
.wp-block-column .wp-block-archives-dropdown .select2 .selection .select2-selection--single {
  border: 0px;
  text-align: center;
}
.wp-block-column .wp-block-categories-dropdown .select2 .selection .select2-selection--single span,
.wp-block-column .wp-block-archives-dropdown .select2 .selection .select2-selection--single span {
  display: inline-block;
  padding-left: 0px;
  padding-right: 0px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wp-block-column .wp-block-categories-dropdown .select2 .selection .select2-selection--single .select2-selection__clear,
.wp-block-column .wp-block-archives-dropdown .select2 .selection .select2-selection--single .select2-selection__clear {
  display: none;
}
.wp-block-column .wp-block-categories-dropdown .select2 .selection .select2-selection--single .select2-selection__arrow,
.wp-block-column .wp-block-archives-dropdown .select2 .selection .select2-selection--single .select2-selection__arrow {
  position: relative;
  margin-left: var(--wp--preset--spacing--40);
  margin-bottom: 4px;
  width: 12px;
  height: 12px;
  border-right: 2px solid var(--wp--preset--color--secondary);
  border-bottom: 2px solid var(--wp--preset--color--secondary);
  transform: translateY(-50%) rotate(45deg);
  pointer-events: none;
}
.wp-block-column .wp-block-categories-dropdown .select2 .selection .select2-selection--single .select2-selection__arrow b,
.wp-block-column .wp-block-archives-dropdown .select2 .selection .select2-selection--single .select2-selection__arrow b {
  display: none;
}

.select2-container {
  width: 100%;
}
.select2-container .select2-dropdown {
  border: 0px;
  box-shadow: var(--wp--preset--shadow--dropdown-shadow);
}
.select2-container .select2-dropdown .select2-search {
  display: none;
}
.select2-container .select2-dropdown .select2-results {
  margin-top: var(--wp--preset--spacing--20);
}
.select2-container .select2-dropdown .select2-results .select2-results__options {
  max-height: 50vh;
}
.select2-container .select2-dropdown .select2-results .select2-results__options li {
  padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--20);
}
.select2-container .select2-dropdown .select2-results .select2-results__options .select2-results__option--highlighted[aria-selected] {
  background-color: var(--wp--preset--color--secondary);
}
.select2-container .select2-dropdown .select2-results .select2-results__options .select2-results__option:first-child {
  display: none;
}

/* Imports */
/*! 
 * GENERATED FILE WARNING
 * ----------------------
 * Diese Datei ist SCSS-Source. Kompilierte CSS-Dateien liegen unter:
 * - meshwald/assets/css/style.css
 * - meshwald/assets/css/editor.css
 * Bitte die CSS-Dateien nicht manuell bearbeiten – stattdessen SCSS anpassen
 * und via "npm run build-css" neu bauen.
 */
/*
 * OSM – meshwald maps plugin
 * Einheitliche Grundgestaltung für das OSM MAPS PLUS Plugin.
 */
/*** Marker Single Page Template ***/
.single-osm_marker .entry-content .osm-marker-details {
  display: grid;
  grid-template-columns: 50% 50%;
  gap: var(--wp--preset--spacing--10);
}
.single-osm_marker .entry-content .osm-marker-details .osm-marker-details__row {
  padding: var(--wp--preset--spacing--30);
  background-color: var(--wp--preset--color--tertiary);
}
