@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;
}

/* source-sans-3-300 - 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: "Source Sans 3";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/source-sans-3-v19-latin-300.woff2") format("woff2"), url("../fonts/source-sans-3-v19-latin-300.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-300italic - 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: "Source Sans 3";
  font-style: italic;
  font-weight: 300;
  src: url("../fonts/source-sans-3-v19-latin-300italic.woff2") format("woff2"), url("../fonts/source-sans-3-v19-latin-300italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-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: "Source Sans 3";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/source-sans-3-v19-latin-regular.woff2") format("woff2"), url("../fonts/source-sans-3-v19-latin-regular.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-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: "Source Sans 3";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/source-sans-3-v19-latin-italic.woff2") format("woff2"), url("../fonts/source-sans-3-v19-latin-italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-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: "Source Sans 3";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/source-sans-3-v19-latin-700.woff2") format("woff2"), url("../fonts/source-sans-3-v19-latin-700.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-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: "Source Sans 3";
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/source-sans-3-v19-latin-700italic.woff2") format("woff2"), url("../fonts/source-sans-3-v19-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: 0;
  left: 0;
  width: 100%;
  z-index: 99999;
}
header > .wp-block-group.header-logo-mobile {
  background: transparent !important;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group {
  background: transparent !important;
  font-size: var(--wp--preset--font-size--medium);
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-site-logo {
  flex-shrink: 0;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-site-logo a {
  display: block;
  line-height: 0;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-site-logo img.custom-logo {
  display: block;
  width: auto !important;
  height: auto;
  max-width: 20vw !important;
  transition: width 220ms ease;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group {
  gap: 12px;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wp-block-search {
  display: none;
}
@media (max-width: 992px) {
  header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wp-block-search {
    display: none;
  }
}
@media (max-width: 576px) {
  header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group p, header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group a {
    color: var(--wp--preset--color--light) !important;
  }
}
@media (max-width: 992px) {
  header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group p:nth-child(2), header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group p:nth-child(3) {
    display: none;
  }
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper {
  margin-left: var(--wp--preset--spacing--40);
  display: flex;
  justify-content: flex-end;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper .toggle-btn {
  position: relative;
  z-index: 99998;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 80px;
  aspect-ratio: 1/1;
  flex-shrink: 0;
  padding: 0;
  background-color: var(--wp--preset--color--primary);
  border: 0;
  border-radius: 50%;
  box-shadow: none;
  cursor: pointer;
  gap: 6px;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper .toggle-btn .bar {
  display: block;
  width: 36px;
  height: 5px;
  flex-shrink: 0;
  background-color: var(--wp--preset--color--light);
  border-radius: 999px;
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper .toggle-btn[aria-expanded=true] .bar:nth-child(1) {
  transform: translateY(11px) rotate(45deg);
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper .toggle-btn[aria-expanded=true] .bar:nth-child(2) {
  opacity: 0;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper .toggle-btn[aria-expanded=true] .bar:nth-child(3) {
  transform: translateY(-11px) rotate(-45deg);
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper {
  /*** Mobile Navigation Overlay – Hub / Split Screen ***/
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper nav.primary-navigation {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: auto;
  z-index: 9999;
  height: 100dvh;
  width: 33.33%;
}
@media (max-width: 768px) {
  header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper nav.primary-navigation {
    width: 50%;
  }
}
@media (max-width: 576px) {
  header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper nav.primary-navigation {
    width: 100%;
  }
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper nav.primary-navigation {
  padding: clamp(6rem, 10vw, 9rem) clamp(1.25rem, 5vw, 5rem) clamp(2rem, 6vw, 4rem);
  background: var(--wp--preset--color--primary);
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  opacity: 0;
  visibility: hidden;
  transform: translateY(1rem);
  transition: opacity 0.28s ease, transform 0.28s ease, visibility 0s linear 0.28s;
  gap: 0;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper nav.primary-navigation .wp-block-navigation-item.has-child.is-submenu-open > ul.wp-block-navigation__submenu-container {
  display: block !important;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper nav.primary-navigation.visible {
  display: block;
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition: opacity 0.28s ease, transform 0.28s ease, visibility 0s linear 0s;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper nav.primary-navigation .wp-block-navigation__responsive-container-content {
  width: 100%;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper nav.primary-navigation .wp-block-navigation__submenu-icon,
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper nav.primary-navigation .wp-block-navigation-submenu__toggle {
  display: none !important;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper nav.primary-navigation ul,
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper nav.primary-navigation li {
  list-style: none;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper nav.primary-navigation a,
header > .wp-block-group.header-logo-mobile > .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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper nav.primary-navigation a:focus-visible,
header > .wp-block-group.header-logo-mobile > .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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper ul.wp-block-navigation__container {
  display: block !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper ul.wp-block-navigation__container > ul.wp-block-page-list {
    display: block !important;
    min-height: auto;
  }
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item > a,
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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(1.6rem, 2vw, 2rem);
  font-weight: 400;
  opacity: 1;
  transition: opacity 0.22s ease, transform 0.22s ease;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item:hover > a, header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item:focus-within > a, header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item > ul.wp-block-navigation__submenu-container {
  display: none !important;
  position: static !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: auto !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper ul.wp-block-navigation__container > ul.wp-block-page-list > li.wp-block-pages-list__item {
  /*
  @include respond-to(md) {
    > a,
    > .wp-block-navigation-item__content {
      font-size: clamp(2rem, 11vw, 4rem);
    }
  }
  */
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li > a,
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper ul.wp-block-navigation__container > ul.wp-block-page-list > li > ul.wp-block-navigation__submenu-container > li > a:hover,
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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;
  max-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: max-height 0.45s ease, opacity 0.28s ease, transform 0.35s ease, visibility 0s linear 0.45s, margin 0.35s ease, padding 0.35s ease;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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 {
  max-height: 40rem;
  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: max-height 0.55s ease, 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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);
}
@media (max-width: 576px) {
  header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper ul.wp-block-navigation__container > li.wp-block-navigation-item > a,
  header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper ul.wp-block-navigation__container > li.wp-block-navigation-item > .wp-block-navigation-item__content {
    padding: 0.25rem 0;
  }
  header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper 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.header-logo-mobile > .wp-block-group .wp-block-group .wrapper .primary-navigation__icon {
  display: inline-flex;
  width: 0.85em;
  height: 0.85em;
  flex: 0 0 auto;
  margin-right: 24px;
}
header > .wp-block-group.header-logo-mobile > .wp-block-group .wp-block-group .wrapper .primary-navigation__icon svg {
  width: 100%;
  height: 100%;
  display: block;
  fill: currentColor;
  stroke: currentColor;
}

header.site-header {
  transition: padding 220ms ease, min-height 220ms ease, box-shadow 220ms ease;
}
header.site-header > .wp-block-group {
  transition: padding 220ms ease, min-height 220ms ease;
}
header.site-header > .wp-block-group > .wp-block-group {
  min-height: auto;
  transition: padding 220ms ease, min-height 220ms ease;
}
header.site-header.is-shrunk > .wp-block-group {
  padding-top: var(--wp--preset--spacing--20) !important;
  padding-bottom: var(--wp--preset--spacing--20) !important;
}
header.site-header.is-shrunk > .wp-block-group > .wp-block-group {
  min-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.wp-site-blocks > header.site-header {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.wp-site-blocks > header.site-header + main {
  margin-block-start: 0 !important;
}

/* 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 {
  hyphens: auto;
  hyphenate-limit-chars: auto 3;
}
body .wp-block-heading {
  color: var(--wp--preset--color--secondary);
}

/*** Startseite Slider Section ***/
@media (max-width: 768px) {
  .wp-block-columns:has(.wp-block-column .hero-slider) .wp-block-column {
    order: 2;
  }
}
@media (max-width: 768px) {
  .wp-block-columns:has(.wp-block-column .hero-slider) .wp-block-column:first-child {
    order: 1;
  }
}
.wp-block-columns:has(.wp-block-column .hero-slider) .wp-block-column:not(:first-child):has(.hero-slider) {
  order: initial;
}

/************************
**** 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;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

* {
  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;
}

/* 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 {
  margin-block-start: 0px;
}

/* 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.
 */
/**
 * blocks/_grid.scss
 *
 */
@media (max-width: 1576px) {
  .wp-block-group.is-layout-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 576px) {
  .wp-block-group.is-layout-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/**
 * Cover-Block + Stretch Column
 *
 */
.wp-block-columns.columns-cover-stretch, #start {
  align-items: stretch;
}
@media (max-width: 1200px) {
  .wp-block-columns.columns-cover-stretch, #start {
    display: block;
  }
}
.wp-block-columns.columns-cover-stretch > .wp-block-column, #start > .wp-block-column {
  display: flex;
  flex-direction: column;
}
.wp-block-columns.columns-cover-stretch > .wp-block-column > .wp-block-cover, #start > .wp-block-column > .wp-block-cover {
  flex: 1;
  min-height: 100%;
}
@media (max-width: 1200px) {
  .wp-block-columns.columns-cover-stretch > .wp-block-column > .wp-block-cover, #start > .wp-block-column > .wp-block-cover {
    min-height: 50vh !important;
  }
}

/**
 * Tabelle – Streifen
 *
 */
.wp-block-table.is-style-stripes {
  border: solid 4px 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--30);
}

/**
 * Search Block
 *
 */
.wp-block-search__button svg {
  height: 32px;
  min-height: 32px;
  min-width: 32px;
}

/**
 * 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 {
  position: relative;
  align-items: center;
  justify-content: space-between;
  height: 50px;
  display: flex;
}
.wp-block-read-more::after {
  content: "";
  width: 5px;
  height: 5px;
  border: solid var(--wp--preset--color--secondary);
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 3px;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
@media (max-width: 600px) {
  .wp-block-read-more::after {
    margin-right: 10px;
  }
}

/* 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] {
  color: var(--wp--preset--color--text);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  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 {
  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] {
  opacity: 0.5;
  cursor: not-allowed;
}

input[type=submit] {
  color: var(--wp--preset--color--light);
  background-color: var(--wp--preset--color--primary);
  border: 0px;
  padding: var(--wp--preset--spacing--30);
}

/*
 * 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;
  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;
  font-size: 96px;
  padding-bottom: var(--wp--preset--spacing--20);
  height: 78px;
  width: 78px;
  box-shadow: var(--wp--preset--shadow--soft-shadow);
  transform: rotate(90deg);
  color: var(--wp--preset--color--light);
  background-color: var(--wp--preset--color--primary);
  top: initial;
  border-radius: 50%;
  bottom: var(--wp--preset--spacing--40);
  right: var(--wp--preset--spacing--70);
}

/*
 * 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: var(--wp--preset--spacing--80) 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--light) !important;
  background: transparent !important;
  cursor: pointer !important;
  opacity: 1 !important;
}
.testimonial-nav-dots .meshwald-slider-dots.is-active {
  background: var(--wp--preset--color--light) !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: var(--wp--preset--spacing--80) 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--light) !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--light) !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: var(--wp--preset--spacing--80) 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--light) !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--light) !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;
  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;
  background-color: var(--wp--preset--color--secondary);
  width: fit-content;
}
.vk-backlink a {
  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.
 */
/*
 * 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;
}

/**
 * Search Block
 *
 */
.wp-block-search__button svg {
  height: 32px;
  min-height: 32px;
  min-width: 32px;
}

/**
 * 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 {
  position: relative;
  align-items: center;
  justify-content: space-between;
  height: 50px;
  display: flex;
}
.wp-block-read-more::after {
  content: "";
  width: 5px;
  height: 5px;
  border: solid var(--wp--preset--color--secondary);
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 3px;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
@media (max-width: 600px) {
  .wp-block-read-more::after {
    margin-right: 10px;
  }
}

/**
 * Details Block
 *
 */
details > summary {
  list-style-type: none;
}
details > summary::before {
  content: "+";
  margin-right: var(--wp--preset--spacing--10);
  display: inline-block;
  transition: transform 0.3s ease;
}

details > summary::before {
  margin-left: calc(-1.6 * var(--wp--preset--spacing--20));
}

details[open] > summary::before {
  transform: rotate(180deg);
  content: "–";
}

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;
  }
}
/**
 * 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;
}

/**
 * Blog & Post-Teaser
 * Archive
 */
.archive h1.wp-block-query-title {
  color: var(--wp--preset--color--base) !important;
}

.blog .wp-block-group .wp-block-post-template .wp-block-post {
  display: grid;
  grid-template-rows: auto auto auto 1fr;
}
.blog .wp-block-group .wp-block-post-template .wp-block-post .wp-block-post-featured-image {
  aspect-ratio: 16/9 !important;
  overflow: hidden !important;
}
.blog .wp-block-group .wp-block-post-template .wp-block-post .wp-block-post-terms__prefix {
  color: var(--wp--preset--color--text);
}
.blog .wp-block-group .wp-block-post-template .wp-block-post .wp-block-read-more {
  width: auto;
}
.blog form input[type=search] {
  border: solid 2px var(--wp--preset--color--primary);
  padding: 0 var(--wp--preset--spacing--10);
  font-size: var(--wp--preset--font-size--medium);
}
.blog nav button svg {
  color: var(--wp--preset--color--secondary);
}
.blog nav {
  margin-block-start: 0px !important;
  margin-left: var(--wp--preset--spacing--40);
}

.search .wp-block-group .wp-block-post-template .wp-block-post {
  display: grid;
  grid-template-rows: auto 1fr;
}
