@charset "UTF-8";
/*
Theme Name: STL-Kitas
Author: STUDIOHORN
Author URI: https://studio-horn.de
Description: Das globale wibuter Theme
[...]
Template: twentytwentyfive
[...]
*/
/*== General SCSS ==*/
/*== General ==*/
@font-face {
  font-family: "Barlow Semi Condensed";
  src: local("Barlow Semi Condensed Bold"), local("BarlowSemiCondensed-Bold"), url("assets/fonts/BarlowSemiCondensed-Bold.woff2") format("woff2"), url("assets/fonts/BarlowSemiCondensed-Bold.woff") format("woff"), url("assets/fonts/BarlowSemiCondensed-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Barlow Semi Condensed";
  src: local("Barlow Semi Condensed Regular"), local("BarlowSemiCondensed-Regular"), url("assets/fonts/BarlowSemiCondensed-Regular.woff2") format("woff2"), url("assets/fonts/BarlowSemiCondensed-Regular.woff") format("woff"), url("assets/fonts/BarlowSemiCondensed-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vista Sans Nar OT CE";
  src: local("Vista Sans Nar OT CE Book"), local("VistaSansNarOTCE-Book"), url("assets/fonts/VistaSansNarOTCE-Book.woff2") format("woff2"), url("assets/fonts/VistaSansNarOTCE-Book.woff") format("woff"), url("assets/fonts/VistaSansNarOTCE-Book.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vista Sans Nar OT CE";
  src: local("Vista Sans Nar OT CE Light"), local("VistaSansNarOTCE-Light"), url("assets/fonts/VistaSansNarOTCE-Light.woff2") format("woff2"), url("assets/fonts/VistaSansNarOTCE-Light.woff") format("woff"), url("assets/fonts/VistaSansNarOTCE-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vista Sans Nar OT CE";
  src: local("Vista Sans Nar OT CE Bold"), local("VistaSansNarOTCE-Bold"), url("assets/fonts/VistaSansNarOTCE-Bold.woff2") format("woff2"), url("assets/fonts/VistaSansNarOTCE-Bold.woff") format("woff"), url("assets/fonts/VistaSansNarOTCE-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vista Sans Nar OT CE";
  src: local("Vista Sans Nar OT CE Light Italic"), local("VistaSansNarOTCE-LightItalic"), url("assets/fonts/VistaSansNarOTCE-LightItalic.woff2") format("woff2"), url("assets/fonts/VistaSansNarOTCE-LightItalic.woff") format("woff"), url("assets/fonts/VistaSansNarOTCE-LightItalic.ttf") format("truetype");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Vista Sans Nar OT CE";
  src: local("Vista Sans Nar OT CE Medium Italic"), local("VistaSansNarOTCE-MediumItalic"), url("assets/fonts/VistaSansNarOTCE-MediumItalic.woff2") format("woff2"), url("assets/fonts/VistaSansNarOTCE-MediumItalic.woff") format("woff"), url("assets/fonts/VistaSansNarOTCE-MediumItalic.ttf") format("truetype");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Amatic SC";
  src: local("Amatic SC Bold"), local("AmaticSC-Bold"), url("assets/fonts/AmaticSC-Bold.woff2") format("woff2"), url("assets/fonts/AmaticSC-Bold.woff") format("woff"), url("assets/fonts/AmaticSC-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Amatic SC";
  src: local("Amatic SC Regular"), local("AmaticSC-Regular"), url("assets/fonts/AmaticSC-Regular.woff2") format("woff2"), url("assets/fonts/AmaticSC-Regular.woff") format("woff"), url("assets/fonts/AmaticSC-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
main {
  margin-top: 0 !important;
}
h1, h2, h3, h4, h5, h6 {
  font-family: "Amatic SC", sans-serif;
  font-style: normal;
  letter-spacing: unset !important;
  margin-bottom: var(--wp--preset--spacing--20);
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  font-family: "Amatic SC", sans-serif !important;
  font-style: normal;
  letter-spacing: unset !important;
  margin-bottom: var(--wp--preset--spacing--20);
}
p, a, li, div {
  font-family: "Vista Sans Nar OT CE", sans-serif !important;
  letter-spacing: unset !important;
  -webkit-hyphens: auto;
  font-size: var(--fs-p);
  line-height: 1.5em;
  font-weight: 400;
}
a:hover {
  text-decoration: underline !important;
}
strong {
  font-weight: 700 !important;
}
h1 {
  font-size: var(--fs-h1);
}
h2 {
  font-size: var(--fs-h2);
}
h3 {
  font-size: var(--fs-h3);
}
h4 {
  font-size: var(--fs-h4);
}
h5 {
  font-size: var(--fs-h5);
}
a {
  text-decoration: none !important;
  cursor: pointer;
  font-size: inherit;
  font-weight: inherit !important;
  color: inherit !important;
}
:where(.wp-site-blocks *:focus) {
  outline: none;
}
.fs-h4 {
  font-size: var(--fs-h4);
  line-height: 1.25em !important;
}
.fs-30 {
  font-size: var(--fs-h5);
}
.fs-20 {
  font-size: var(--fs-20);
}
:root {
  --background-grey: #EDEDED;
  --background-light-grey: #F6F9FB;
  --background-light-blue: #C6DAE6;
  --background-dark-blue: #72A3C2;
  --text--black: #000000;
  --text-white: #FFFFFF;
  --kita-red: #cd001f;
  --content-max: 87.5rem;
  /* 1400px */
  --gutter: clamp(1rem, 2.5vw, 4rem);
  --section-space: clamp(2rem, 6vw, 6rem);
  --hero-space-top: clamp(2rem, 7vw, 7rem);
  --hero-space-bottom: clamp(2rem, 6vw, 5rem);
  /* Bitte Schriftgrößen nun in diesem Format anlegen */
  --fs-h1: clamp(42.068px, 2.629rem + ((1vw - 3.2px) * 2.963), 70px);
  --fs-h2: clamp(29.768px, 1.861rem + ((1vw - 3.2px) * 1.737), 50px);
  --fs-h3: clamp(21.536px, 1.346rem + ((1vw - 3.2px) * 1.052), 40px);
  --fs-h4: clamp(17.905px, 1.119rem + ((1vw - 3.2px) * 0.789), 30px);
  --fs-p-small: clamp(14px, 0.875rem + ((1vw - 3.2px) * 0.156), 24px);
  --fs-p: clamp(14px, 0.875rem + ((1vw - 3.2px) * 0.469), 28px);
  --fs-p-big: clamp(16.834px, 1.052rem + ((1vw - 3.2px) * 0.716), 34px);
}
/* Hiermit können die responsive Spacings von Wordpress angepasst werden

@media(max-width: 1200px) {
  body {
    --wp--preset--spacing--10: 1rem !important;
    --wp--preset--spacing--30: min(1.5rem, 2.0vw) !important;
    --wp--preset--spacing--40: min(2rem, 3vw) !important;
    --wp--preset--spacing--50: min(4.5rem, 6vw) !important;
    --wp--preset--spacing--60: min(6.5rem, 8vw) !important;
  }
} */
.responsive-padding-x {
  padding-right: var(--wp--preset--spacing--20) !important;
  padding-left: var(--wp--preset--spacing--20) !important;
}
@media (min-width: 768px) {
  .responsive-padding-x {
    padding-right: var(--wp--preset--spacing--30) !important;
    padding-left: var(--wp--preset--spacing--30) !important;
  }
}
@media (min-width: 992px) {
  .responsive-padding-x {
    padding-right: var(--wp--preset--spacing--40) !important;
    padding-left: var(--wp--preset--spacing--40) !important;
  }
}
.img-w-100 img {
  width: 100% !important;
}
.wp-block-cover {
  overflow: hidden;
}
.fw-blod {
  font-weight: 700 !important;
}
.fw-semibold {
  font-weight: 600 !important;
}
.fw-regular {
  font-weight: 500 !important;
}
.text-primary {
  color: var(--primary) !important;
}
.text-secondary {
  color: var(--secondary) !important;
}
.text-right {
  text-align: right;
}
.text-left {
  text-align: left;
}
.red-btn a {
  color: var(--kita-red) !important;
}
.wp-block-button .wp-block-button__link:hover {
  text-decoration: underline !important;
}
.wp-site-blocks {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  max-width: 100vw;
  overflow: hidden;
}
/* Default section rhythm for content blocks (header/footer remain untouched) */
.wp-site-blocks .entry-content > * {
  margin-block: 0;
  padding-block: var(--section-space);
}
/* Default content container (full-width blocks opt out via .alignfull) */
.wp-site-blocks .entry-content > *:not(.alignfull) {
  width: min(100% - (2 * var(--gutter)), var(--content-max));
  margin-inline: auto;
}
/* Utilities for exceptions */
.section--hero {
  padding-top: var(--hero-space-top) !important;
  padding-bottom: var(--hero-space-bottom) !important;
}
.section--flush {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.section--narrow {
  width: min(100% - (2 * var(--gutter)), 68rem) !important;
  margin-inline: auto !important;
}
.hyphens-auto {
  hyphens: auto !important;
  -webkit-hyphens: auto !important;
}
.wp-site-blocks .alignfull, .wp-site-blocks > .wp-block-group.has-background, .wp-site-blocks > .wp-block-cover, .wp-site-blocks > .wp-block-template-part > .wp-block-group.has-background, .wp-site-blocks > .wp-block-template-part > .wp-block-cover, body > .is-root-container > .wp-block-cover, body > .is-root-container > .wp-block-template-part > .wp-block-group.has-background, body > .is-root-container > .wp-block-template-part > .wp-block-cover, .is-root-container .wp-block[data-align="full"] {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: unset;
}
.border-primary {
  border-color: var(--primary) !important;
}
.border-secondary {
  border-color: var(--secondary) !important;
}
.entry-content {
  margin-top: 0 !important;
}
@media (max-width: 992px) {
  .center-animated-text-group .spacer-10vw {
    height: 20vw !important;
  }
  .center-animated-text-group .spacer-18vw {
    height: 30vw !important;
  }
}
.mw-unset {
  max-width: unset;
}
.mw-unset img {
  max-width: unset;
}
.wp-block-button__link.has-primary-color {
  transition: 0.25s;
}
.wp-block-button__link.has-primary-color:hover {
  background-color: var(--primary) !important;
  color: white !important;
  border-color: var(--primary) !important;
}
.wp-block-search.search-suggestions {
  position: relative;
}
.wp-block-search.search-suggestions .search-suggestions__list {
  position: absolute;
  top: calc(100% + var(--wp--preset--spacing--10));
  right: 0;
  left: 0;
  z-index: 50;
  display: none;
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.12);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
}
.wp-block-search.search-suggestions .search-suggestions__list.is-visible {
  display: block;
}
.wp-block-search.search-suggestions .search-suggestions__item, .wp-block-search.search-suggestions .search-suggestions__empty {
  display: flex;
  justify-content: space-between;
  gap: var(--wp--preset--spacing--20);
  padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--20);
  text-decoration: none !important;
}
.wp-block-search.search-suggestions .search-suggestions__item:hover, .wp-block-search.search-suggestions .search-suggestions__item:focus {
  background: var(--background-light-blue);
  text-decoration: none !important;
}
.wp-block-search.search-suggestions .search-suggestions__title {
  font-weight: 700;
}
.wp-block-search.search-suggestions .search-suggestions__type {
  flex: 0 0 auto;
  opacity: 0.7;
  text-transform: uppercase;
  font-size: var(--fs-p-small);
}
/*== Layout ==*/
table td {
  padding-left: 0 !important;
  padding-right: 0.25em !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
table * {
  font-size: var(--fs-p);
}
/*== Layout END ==*/
/*== z-index Styling ==*/
.z-99 {
  z-index: 99 !important;
  position: relative;
}
.z-98 {
  z-index: 98 !important;
  position: relative;
}
.z-97 {
  z-index: 97 !important;
  position: relative;
}
.z-96 {
  z-index: 96 !important;
  position: relative;
}
.z-95 {
  z-index: 95 !important;
  position: relative;
}
.z-94 {
  z-index: 94 !important;
  position: relative;
}
/*== WPForms Styling ==*/
.wpforms-container input, .wpforms-container textarea {
  border-color: var(--secondary) !important;
  border-radius: 0px !important;
}
.wpforms-container legend, .wpforms-container label {
  color: var(--secondary) !important;
}
.wpforms-container button {
  padding: 10px 15px !important;
  border-radius: 0 !important;
  border: solid 1px var(--primary) !important;
  background-color: var(--primary) !important;
  color: white !important;
  font-family: "Amatic SC", sans-serif;
  font-weight: 700 !important;
  transition: 0.25s;
  font-size: 20px !important;
}
.wpforms-container button:hover {
  transform: scale(1.1);
}
/*== WPForms Styling END ==*/
.grecaptcha-badge {
  opacity: 0 !important;
}
.entry-content {
  padding-right: 0 !important;
  padding-left: 0 !important;
}
.admin-bar .font-set {
  display: block;
}
.font-set {
  display: none;
}
/*== General END ==*/
/*== Navigation ==*/
/*== Navigation END ==*/
/*== Header ==*/
/*== General ==*/
@font-face {
  font-family: "Barlow Semi Condensed";
  src: local("Barlow Semi Condensed Bold"), local("BarlowSemiCondensed-Bold"), url("assets/fonts/BarlowSemiCondensed-Bold.woff2") format("woff2"), url("assets/fonts/BarlowSemiCondensed-Bold.woff") format("woff"), url("assets/fonts/BarlowSemiCondensed-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Barlow Semi Condensed";
  src: local("Barlow Semi Condensed Regular"), local("BarlowSemiCondensed-Regular"), url("assets/fonts/BarlowSemiCondensed-Regular.woff2") format("woff2"), url("assets/fonts/BarlowSemiCondensed-Regular.woff") format("woff"), url("assets/fonts/BarlowSemiCondensed-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vista Sans Nar OT CE";
  src: local("Vista Sans Nar OT CE Book"), local("VistaSansNarOTCE-Book"), url("assets/fonts/VistaSansNarOTCE-Book.woff2") format("woff2"), url("assets/fonts/VistaSansNarOTCE-Book.woff") format("woff"), url("assets/fonts/VistaSansNarOTCE-Book.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vista Sans Nar OT CE";
  src: local("Vista Sans Nar OT CE Light"), local("VistaSansNarOTCE-Light"), url("assets/fonts/VistaSansNarOTCE-Light.woff2") format("woff2"), url("assets/fonts/VistaSansNarOTCE-Light.woff") format("woff"), url("assets/fonts/VistaSansNarOTCE-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vista Sans Nar OT CE";
  src: local("Vista Sans Nar OT CE Bold"), local("VistaSansNarOTCE-Bold"), url("assets/fonts/VistaSansNarOTCE-Bold.woff2") format("woff2"), url("assets/fonts/VistaSansNarOTCE-Bold.woff") format("woff"), url("assets/fonts/VistaSansNarOTCE-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vista Sans Nar OT CE";
  src: local("Vista Sans Nar OT CE Light Italic"), local("VistaSansNarOTCE-LightItalic"), url("assets/fonts/VistaSansNarOTCE-LightItalic.woff2") format("woff2"), url("assets/fonts/VistaSansNarOTCE-LightItalic.woff") format("woff"), url("assets/fonts/VistaSansNarOTCE-LightItalic.ttf") format("truetype");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Vista Sans Nar OT CE";
  src: local("Vista Sans Nar OT CE Medium Italic"), local("VistaSansNarOTCE-MediumItalic"), url("assets/fonts/VistaSansNarOTCE-MediumItalic.woff2") format("woff2"), url("assets/fonts/VistaSansNarOTCE-MediumItalic.woff") format("woff"), url("assets/fonts/VistaSansNarOTCE-MediumItalic.ttf") format("truetype");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Amatic SC";
  src: local("Amatic SC Bold"), local("AmaticSC-Bold"), url("assets/fonts/AmaticSC-Bold.woff2") format("woff2"), url("assets/fonts/AmaticSC-Bold.woff") format("woff"), url("assets/fonts/AmaticSC-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Amatic SC";
  src: local("Amatic SC Regular"), local("AmaticSC-Regular"), url("assets/fonts/AmaticSC-Regular.woff2") format("woff2"), url("assets/fonts/AmaticSC-Regular.woff") format("woff"), url("assets/fonts/AmaticSC-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
main {
  margin-top: 0 !important;
}
h1, h2, h3, h4, h5, h6 {
  font-family: "Amatic SC", sans-serif;
  font-style: normal;
  letter-spacing: unset !important;
  margin-bottom: var(--wp--preset--spacing--20);
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  font-family: "Amatic SC", sans-serif !important;
  font-style: normal;
  letter-spacing: unset !important;
  margin-bottom: var(--wp--preset--spacing--20);
}
p, a, li, div {
  font-family: "Vista Sans Nar OT CE", sans-serif !important;
  letter-spacing: unset !important;
  -webkit-hyphens: auto;
  font-size: var(--fs-p);
  line-height: 1.5em;
  font-weight: 400;
}
a:hover {
  text-decoration: underline !important;
}
strong {
  font-weight: 700 !important;
}
h1 {
  font-size: var(--fs-h1);
}
h2 {
  font-size: var(--fs-h2);
}
h3 {
  font-size: var(--fs-h3);
}
h4 {
  font-size: var(--fs-h4);
}
h5 {
  font-size: var(--fs-h5);
}
a {
  text-decoration: none !important;
  cursor: pointer;
  font-size: inherit;
  font-weight: inherit !important;
  color: inherit !important;
}
:where(.wp-site-blocks *:focus) {
  outline: none;
}
.fs-h4 {
  font-size: var(--fs-h4);
  line-height: 1.25em !important;
}
.fs-30 {
  font-size: var(--fs-h5);
}
.fs-20 {
  font-size: var(--fs-20);
}
:root {
  --background-grey: #EDEDED;
  --background-light-grey: #F6F9FB;
  --background-light-blue: #C6DAE6;
  --background-dark-blue: #72A3C2;
  --text--black: #000000;
  --text-white: #FFFFFF;
  --kita-red: #cd001f;
  --content-max: 87.5rem;
  /* 1400px */
  --gutter: clamp(1rem, 2.5vw, 4rem);
  --section-space: clamp(2rem, 6vw, 6rem);
  --hero-space-top: clamp(2rem, 7vw, 7rem);
  --hero-space-bottom: clamp(2rem, 6vw, 5rem);
  /* Bitte Schriftgrößen nun in diesem Format anlegen */
  --fs-h1: clamp(42.068px, 2.629rem + ((1vw - 3.2px) * 2.963), 70px);
  --fs-h2: clamp(29.768px, 1.861rem + ((1vw - 3.2px) * 1.737), 50px);
  --fs-h3: clamp(21.536px, 1.346rem + ((1vw - 3.2px) * 1.052), 40px);
  --fs-h4: clamp(17.905px, 1.119rem + ((1vw - 3.2px) * 0.789), 30px);
  --fs-p-small: clamp(14px, 0.875rem + ((1vw - 3.2px) * 0.156), 24px);
  --fs-p: clamp(14px, 0.875rem + ((1vw - 3.2px) * 0.469), 28px);
  --fs-p-big: clamp(16.834px, 1.052rem + ((1vw - 3.2px) * 0.716), 34px);
}
/* Hiermit können die responsive Spacings von Wordpress angepasst werden

@media(max-width: 1200px) {
  body {
    --wp--preset--spacing--10: 1rem !important;
    --wp--preset--spacing--30: min(1.5rem, 2.0vw) !important;
    --wp--preset--spacing--40: min(2rem, 3vw) !important;
    --wp--preset--spacing--50: min(4.5rem, 6vw) !important;
    --wp--preset--spacing--60: min(6.5rem, 8vw) !important;
  }
} */
.responsive-padding-x {
  padding-right: var(--wp--preset--spacing--20) !important;
  padding-left: var(--wp--preset--spacing--20) !important;
}
@media (min-width: 768px) {
  .responsive-padding-x {
    padding-right: var(--wp--preset--spacing--30) !important;
    padding-left: var(--wp--preset--spacing--30) !important;
  }
}
@media (min-width: 992px) {
  .responsive-padding-x {
    padding-right: var(--wp--preset--spacing--40) !important;
    padding-left: var(--wp--preset--spacing--40) !important;
  }
}
.img-w-100 img {
  width: 100% !important;
}
.wp-block-cover {
  overflow: hidden;
}
.fw-blod {
  font-weight: 700 !important;
}
.fw-semibold {
  font-weight: 600 !important;
}
.fw-regular {
  font-weight: 500 !important;
}
.text-primary {
  color: var(--primary) !important;
}
.text-secondary {
  color: var(--secondary) !important;
}
.text-right {
  text-align: right;
}
.text-left {
  text-align: left;
}
.red-btn a {
  color: var(--kita-red) !important;
}
.wp-block-button .wp-block-button__link:hover {
  text-decoration: underline !important;
}
.wp-site-blocks {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  max-width: 100vw;
  overflow: hidden;
}
/* Default section rhythm for content blocks (header/footer remain untouched) */
.wp-site-blocks .entry-content > * {
  margin-block: 0;
  padding-block: var(--section-space);
}
/* Default content container (full-width blocks opt out via .alignfull) */
.wp-site-blocks .entry-content > *:not(.alignfull) {
  width: min(100% - (2 * var(--gutter)), var(--content-max));
  margin-inline: auto;
}
/* Utilities for exceptions */
.section--hero {
  padding-top: var(--hero-space-top) !important;
  padding-bottom: var(--hero-space-bottom) !important;
}
.section--flush {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.section--narrow {
  width: min(100% - (2 * var(--gutter)), 68rem) !important;
  margin-inline: auto !important;
}
.hyphens-auto {
  hyphens: auto !important;
  -webkit-hyphens: auto !important;
}
.wp-site-blocks .alignfull, .wp-site-blocks > .wp-block-group.has-background, .wp-site-blocks > .wp-block-cover, .wp-site-blocks > .wp-block-template-part > .wp-block-group.has-background, .wp-site-blocks > .wp-block-template-part > .wp-block-cover, body > .is-root-container > .wp-block-cover, body > .is-root-container > .wp-block-template-part > .wp-block-group.has-background, body > .is-root-container > .wp-block-template-part > .wp-block-cover, .is-root-container .wp-block[data-align="full"] {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: unset;
}
.border-primary {
  border-color: var(--primary) !important;
}
.border-secondary {
  border-color: var(--secondary) !important;
}
.entry-content {
  margin-top: 0 !important;
}
@media (max-width: 992px) {
  .center-animated-text-group .spacer-10vw {
    height: 20vw !important;
  }
  .center-animated-text-group .spacer-18vw {
    height: 30vw !important;
  }
}
.mw-unset {
  max-width: unset;
}
.mw-unset img {
  max-width: unset;
}
.wp-block-button__link.has-primary-color {
  transition: 0.25s;
}
.wp-block-button__link.has-primary-color:hover {
  background-color: var(--primary) !important;
  color: white !important;
  border-color: var(--primary) !important;
}
.wp-block-search.search-suggestions {
  position: relative;
}
.wp-block-search.search-suggestions .search-suggestions__list {
  position: absolute;
  top: calc(100% + var(--wp--preset--spacing--10));
  right: 0;
  left: 0;
  z-index: 50;
  display: none;
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.12);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
}
.wp-block-search.search-suggestions .search-suggestions__list.is-visible {
  display: block;
}
.wp-block-search.search-suggestions .search-suggestions__item, .wp-block-search.search-suggestions .search-suggestions__empty {
  display: flex;
  justify-content: space-between;
  gap: var(--wp--preset--spacing--20);
  padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--20);
  text-decoration: none !important;
}
.wp-block-search.search-suggestions .search-suggestions__item:hover, .wp-block-search.search-suggestions .search-suggestions__item:focus {
  background: var(--background-light-blue);
  text-decoration: none !important;
}
.wp-block-search.search-suggestions .search-suggestions__title {
  font-weight: 700;
}
.wp-block-search.search-suggestions .search-suggestions__type {
  flex: 0 0 auto;
  opacity: 0.7;
  text-transform: uppercase;
  font-size: var(--fs-p-small);
}
/*== Layout ==*/
table td {
  padding-left: 0 !important;
  padding-right: 0.25em !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
table * {
  font-size: var(--fs-p);
}
/*== Layout END ==*/
/*== z-index Styling ==*/
.z-99 {
  z-index: 99 !important;
  position: relative;
}
.z-98 {
  z-index: 98 !important;
  position: relative;
}
.z-97 {
  z-index: 97 !important;
  position: relative;
}
.z-96 {
  z-index: 96 !important;
  position: relative;
}
.z-95 {
  z-index: 95 !important;
  position: relative;
}
.z-94 {
  z-index: 94 !important;
  position: relative;
}
/*== WPForms Styling ==*/
.wpforms-container input, .wpforms-container textarea {
  border-color: var(--secondary) !important;
  border-radius: 0px !important;
}
.wpforms-container legend, .wpforms-container label {
  color: var(--secondary) !important;
}
.wpforms-container button {
  padding: 10px 15px !important;
  border-radius: 0 !important;
  border: solid 1px var(--primary) !important;
  background-color: var(--primary) !important;
  color: white !important;
  font-family: "Amatic SC", sans-serif;
  font-weight: 700 !important;
  transition: 0.25s;
  font-size: 20px !important;
}
.wpforms-container button:hover {
  transform: scale(1.1);
}
/*== WPForms Styling END ==*/
.grecaptcha-badge {
  opacity: 0 !important;
}
.entry-content {
  padding-right: 0 !important;
  padding-left: 0 !important;
}
.admin-bar .font-set {
  display: block;
}
.font-set {
  display: none;
}
/*== General END ==*/
header {
  position: relative;
  z-index: 900;
  overflow: visible;
}
header .menu-open-trigger {
  cursor: pointer;
}
header .full-page-navigation-menu {
  position: fixed;
  inset: 0;
  z-index: 2000;
  width: 100vw;
  min-height: 100vh;
  max-height: 100vh;
  overflow-y: auto;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transform: translateY(-100%);
  transition: transform 0.45s ease, opacity 0.28s ease, visibility 0s linear 0.45s;
  -webkit-overflow-scrolling: touch;
}
header .full-page-navigation-menu::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
  width: min(62vw, 1180px);
  height: min(78vh, 980px);
  background-image: url("/wp-content/uploads/2026/04/kita-logo-big-white-bg.svg");
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: contain;
  pointer-events: none;
}
header .full-page-navigation-menu .full-page-menu-title {
  font-weight: 700;
}
header .full-page-navigation-menu .full-page-menu-title span {
  font-weight: 400;
}
header .full-page-navigation-menu .close-element {
  display: flex;
  gap: 5px;
  transform: translateY(10px);
  cursor: pointer;
}
header .navigation-desktop-header:not(.sticky-header) {
  height: 150px;
  background: #EDEDED;
}
header .navigation-desktop-header:not(.sticky-header) .navigation-desktop-columns {
  height: 100%;
}
header .navigation-desktop-header:not(.sticky-header) .navigation-desktop-columns .navigation-desktop-column-one .website-logo-link-wrapper {
  position: absolute;
  left: -3px;
  background: #EDEDED;
  padding-left: 10px;
  border-bottom-right-radius: 50%;
  border-bottom-left-radius: 50%;
  width: 315px;
  height: 240px;
  padding-right: 30px;
}
header .navigation-desktop-header:not(.sticky-header) .navigation-desktop-columns .navigation-desktop-column-two .wp-block-navigation__container {
  gap: 70px;
}
header .navigation-desktop-header:not(.sticky-header) .navigation-desktop-columns .navigation-desktop-column-two .navigation-links-container .wp-block-navigation__submenu-container {
  background-color: #EDEDED;
  border: none;
  left: 0;
  right: auto;
}
header .navigation-desktop-header:not(.sticky-header) .navigation-desktop-columns .navigation-desktop-column-two .navigation-links-container .wp-block-navigation-item__label {
  font-family: "Amatic SC", serif;
  font-weight: bold;
  font-size: var(--fs-p-big);
}
header .sticky-header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1000;
  height: 90px !important;
  background-color: #ffffff !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.08);
  opacity: 0;
  pointer-events: none;
  transform: translateY(-100%);
  transition: transform 0.38s ease, opacity 0.22s ease, box-shadow 0.3s ease;
}
header .sticky-header .navigation-desktop-columns {
  height: 100%;
}
header .sticky-header .navigation-desktop-columns .website-logo-link-wrapper img {
  display: block;
  width: 90px;
  height: auto;
  padding: 10px;
}
header .sticky-header .navigation-desktop-columns .navigation-desktop-column-two .wp-block-navigation__container {
  gap: 56px;
}
header .sticky-header .navigation-desktop-columns .navigation-desktop-column-two .navigation-links-container .wp-block-navigation__submenu-container {
  background-color: #ffffff;
  border: none;
}
header .sticky-header .navigation-desktop-columns .navigation-desktop-column-two .navigation-links-container .wp-block-navigation-item__label {
  font-family: "Amatic SC", serif;
  font-weight: bold;
  font-size: var(--fs-p-big);
}
body.header-is-scrolled header .sticky-header {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
body.navigation-menu-is-open {
  overflow: hidden;
}
body.navigation-menu-is-open header .full-page-navigation-menu {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
  transform: translateY(0);
  transition: transform 0.45s ease, opacity 0.28s ease, visibility 0s;
}
body.admin-bar.header-is-scrolled header .sticky-header {
  top: 32px;
}
@media (max-width: 782px) {
  .navigation-desktop-header .navigation-desktop-column-three {
    position: absolute;
    right: 5%;
  }
  .navigation-desktop-header .header-menu-control-btns {
    position: absolute;
    top: 50%;
    right: 5%;
  }
  body.admin-bar.header-is-scrolled header .sticky-header {
    top: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  header .sticky-header, header .full-page-navigation-menu {
    transition: none;
  }
}
@media (max-width: 1500px) {
  .navigation-desktop-column-two .navigation-links-container {
    gap: 30px !important;
  }
}
@media (max-width: 1100px) {
  .navigation-desktop-column-two .navigation-links-container {
    display: none;
  }
}
/*== Header END ==*/
/*== Footer ==*/
/*== Footer END ==*/
/*== content ==*/
.cta-text-box {
  max-width: 530px;
  width: 100%;
}
/*== Service Tile Section START ==*/
.service-tile {
  max-width: 575px;
  max-height: 316px;
  min-width: 300px;
  min-height: 250px;
  width: 100%;
  aspect-ratio: 1.3333333333;
  flex-direction: column;
  flex-wrap: nowrap;
}
.service-tile-grid-container {
  grid-gap: 25px;
  width: 100% !important;
}
.service-tile-grid-container_wrapper {
  display: flex;
  justify-content: center;
}
@media (max-width: 1450px) {
  .service-tile-grid-container {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 768px) {
  .service-tile-grid-container {
    grid-template-columns: 1fr;
  }
}
/*== Service Tile Section END ==*/
.kita-generic-contact-form {
  /* -----------------------------
     Consent (Checkbox) – Layout
     ----------------------------- */
  /* -----------------------------
     Submit Button – wie Screenshot
     ----------------------------- */
  /* -----------------------------
     Mobile
     ----------------------------- */
}
.kita-generic-contact-form br {
  display: none;
}
.kita-generic-contact-form p {
  margin: 0;
}
.kita-generic-contact-form .cf7-grid {
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.kita-generic-contact-form p {
  margin: 0;
}
.kita-generic-contact-form label {
  display: block;
  margin: 0;
  font-weight: 400;
  font-family: "Barlow Semi Condensed", sans-serif;
}
.kita-generic-contact-form .cf7-row--2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
  align-items: end;
}
.kita-generic-contact-form input.wpcf7-text, .kita-generic-contact-form input.wpcf7-email, .kita-generic-contact-form input.wpcf7-tel, .kita-generic-contact-form textarea.wpcf7-textarea {
  width: 100%;
  background: #fff;
  border: none;
  border-radius: 0;
  padding: 10px 12px;
  font-size: 16px;
  line-height: 1.2;
  box-shadow: none;
  outline: none;
}
.kita-generic-contact-form textarea.wpcf7-textarea {
  min-height: 180px;
  resize: vertical;
}
.kita-generic-contact-form input::placeholder, .kita-generic-contact-form textarea::placeholder {
  color: rgba(0, 0, 0, 0.35);
  font-style: italic;
}
.kita-generic-contact-form input:focus, .kita-generic-contact-form textarea:focus {
  border-color: rgba(0, 0, 0, 0.45);
  box-shadow: 0 0 0 2px rgba(114, 163, 194, 0.25);
}
.kita-generic-contact-form .cf7-row--consent {
  margin-top: 6px;
}
.kita-generic-contact-form .cf7-row--consent .wpcf7-acceptance {
  display: block;
}
.kita-generic-contact-form .cf7-row--consent .wpcf7-list-item {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 14px;
}
.kita-generic-contact-form .cf7-row--consent .wpcf7-list-item > label {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0;
  font-weight: 400;
  cursor: pointer;
}
.kita-generic-contact-form .cf7-row--consent input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  border: none;
  background: var(--text-white);
  display: inline-grid;
  place-items: center;
  cursor: pointer;
  flex: 0 0 auto;
}
.kita-generic-contact-form .cf7-row--consent input[type="checkbox"]::after {
  content: "";
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: rgba(114, 163, 194, 0.95);
  transform: scale(0);
  transition: transform 120ms ease;
}
.kita-generic-contact-form .cf7-row--consent input[type="checkbox"]:checked::after {
  transform: scale(1);
}
.kita-generic-contact-form .cf7-row--consent .wpcf7-list-item-label {
  display: inline-block;
  line-height: 1.3;
}
.kita-generic-contact-form .contact-submit-btn, .kita-generic-contact-form input.wpcf7-submit {
  width: 160px;
  height: 46px;
  border: 0;
  border-radius: 0;
  background: rgba(114, 163, 194, 0.95);
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  cursor: pointer;
  margin-top: 10px;
  /* falls du die "handwritten" Optik willst:
       (ansonsten entfernen) */
  font-family: "Amatic SC", sans-serif;
  font-size: 22px;
}
.kita-generic-contact-form input.wpcf7-submit[disabled] {
  opacity: 0.6;
  cursor: not-allowed;
}
.kita-generic-contact-form .wpcf7-spinner {
  margin-left: 10px;
}
@media (max-width: 780px) {
  .kita-generic-contact-form .cf7-row--2 {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
.hero-outter-container {
  display: flex;
  align-items: flex-end;
}
/* =========================================================
   Galerie Carousel v2 – Design wie Vorgabe
   (Center groß, Nachbarn kleiner + faded, Pfeile als Kreise)
   ========================================================= */
.u-peek-track .swiper {
  overflow: visible !important;
}
.u-gallery-carousel .swiper {
  overflow: visible !important;
}
.u-gallery-carousel {
  /* optional: begrenze Breite wie im Design */
  max-width: 1100px;
  margin: 0 auto;
  /* etwas Luft links/rechts, damit Pfeile Platz haben */
  position: relative;
  padding: 0 var(--wp--preset--spacing--40);
  /* Slides grundsätzlich */
  /* Center */
  /* direkte Nachbarn (peek) */
  /* Bilder */
  /* leichter Shadow nur fürs Center-Bild */
  /* Pagination / Dots */
  /* Pfeile als blaue Kreise wie im Design */
  /* Positionierung – auf Höhe der Peek-Slides */
  /* Swiper-Default Pfeil-Icon einfärben */
  /* Mobile: kein Peek, alles normal */
}
.u-gallery-carousel .swiper-slide {
  transition: transform 220ms ease, opacity 220ms ease, filter 220ms ease;
  opacity: 0.35;
  transform: scale(0.92);
  filter: grayscale(15%);
}
.u-gallery-carousel .swiper-slide-active {
  opacity: 1;
  transform: scale(1);
  filter: none;
  z-index: 3;
}
.u-gallery-carousel .swiper-slide-prev, .u-gallery-carousel .swiper-slide-next {
  opacity: 0.55;
  transform: scale(0.9);
  z-index: 2;
}
.u-gallery-carousel img {
  display: block;
  width: 100%;
  height: auto;
}
.u-gallery-carousel .swiper-slide-active img {
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
}
.u-gallery-carousel .cb-pagination {
  margin-top: var(--wp--preset--spacing--30);
  position: static;
  /* damit es schön unter dem Slider sitzt */
  display: flex;
  justify-content: center;
  gap: 10px;
}
.u-gallery-carousel .cb-pagination-bullet {
  width: 10px;
  height: 10px;
  opacity: 0.35;
  background: #72a3c2 !important;
  /* dein Blau */
  border-radius: 999px;
}
.u-gallery-carousel .swiper-pagination-bullet-active {
  width: 10px;
  height: 10px;
  opacity: 1;
  background: #72a3c2 !important;
  /* dein Blau */
  border-radius: 999px;
}
.u-gallery-carousel .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
}
.u-gallery-carousel .cb-button-prev, .u-gallery-carousel .cb-button-next {
  width: 60px;
  height: 60px;
  border-radius: 999px;
  background: rgba(114, 163, 194, 0.95);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
  top: 50%;
  transform: translateY(-50%);
}
.u-gallery-carousel .cb-button-prev {
  left: -50px;
}
.u-gallery-carousel .cb-button-next {
  right: -50px;
}
.u-gallery-carousel .cb-button-prev::after, .u-gallery-carousel .cb-button-next::after {
  color: #fff;
  font-size: 20px;
  font-weight: 700;
}
@media (max-width: 780px) {
  .u-gallery-carousel {
    padding: 0 var(--wp--preset--spacing--20);
  }
  .u-gallery-carousel .swiper-slide, .u-gallery-carousel .swiper-slide-prev, .u-gallery-carousel .swiper-slide-next, .u-gallery-carousel .swiper-slide-active {
    opacity: 1;
    transform: none;
    filter: none;
  }
}
.kita-instance-calender {
  display: flex;
  justify-content: center;
  align-items: center;
}
.kita-instance-batch {
  width: 200px;
  height: 200px;
}
.kita-instance-batch p {
  margin: 0;
}
.calender-notice-container {
  max-width: 410px;
  width: 100%;
}
.calender-notice-container .calender-notice-header {
  display: flex;
  justify-content: space-between;
}
.event-notice-message {
  width: 225px !important;
  height: 50px;
}
/*== content END ==*/
/*== Blog Stying ==*/
.u-bg-overlay-black {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.u-bg-overlay-black::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.15);
  z-index: 0;
  pointer-events: none;
}
.u-bg-overlay-black > * {
  position: relative;
  z-index: 1;
}
.u-bg-overlay-10 {
  --overlay-opacity: 0.10;
}
.u-bg-overlay-15 {
  --overlay-opacity: 0.15;
}
.u-bg-overlay-20 {
  --overlay-opacity: 0.20;
}
.u-bg-overlay-30 {
  --overlay-opacity: 0.30;
}
/* Utility: blaues Overlay über Background-Image (z.B. Hero/Section) */
.u-bg-overlay-blue {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  /* Default-Overlay (anpassen nach Geschmack) */
  --overlay-color: 114, 163, 194;
  --overlay-opacity: 0.55;
  /* Inhalt über dem Overlay */
}
.u-bg-overlay-blue::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(var(--overlay-color), var(--overlay-opacity));
  z-index: 0;
  pointer-events: none;
}
.u-bg-overlay-blue > * {
  position: relative;
  z-index: 1;
}
/* Optionale Opacity-Modifier */
.u-bg-overlay-blue-35 {
  --overlay-opacity: 0.35;
}
.u-bg-overlay-blue-45 {
  --overlay-opacity: 0.45;
}
.u-bg-overlay-blue-55 {
  --overlay-opacity: 0.55;
}
.u-bg-overlay-blue-65 {
  --overlay-opacity: 0.65;
}
.u-tile-square {
  aspect-ratio: 1;
  width: 100%;
  max-width: none;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: var(--wp--preset--spacing--20);
  /* wichtig: nicht alles abschneiden */
  overflow: visible;
}
.kita-card-grid {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  gap: 15px !important;
}
.kita-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1;
  height: 250px;
  width: 250px;
}
.kita-card .front-side-kita-card {
  display: block;
}
.kita-card .flip-side-kita-card {
  display: none;
}
.kita-card:hover {
  cursor: pointer;
}
.kita-card:hover .front-side-kita-card {
  display: none;
}
.kita-card:hover .flip-side-kita-card {
  text-align: center;
  display: block;
}
.u-heading-lines {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--wp--preset--spacing--30, 2rem);
  flex-wrap: nowrap;
  text-align: center;
  /* default line color */
  --heading-line-color: #707070;
  /* Optional: wenn du willst, dass die Linien nicht unendlich lang werden */
  --heading-line-max: 18rem;
}
/* Variant: rote Linien */
.u-heading-lines--red {
  --heading-line-color: #CD001F;
}
/* Linien */
.u-heading-lines::before, .u-heading-lines::after {
  content: "";
  flex: 1 1 auto;
  height: 2px;
  background: var(--heading-line-color);
  max-width: var(--heading-line-max);
}
/* Optional: mobile – weniger Abstand */
@media (max-width: 600px) {
  .u-heading-lines {
    gap: 1rem;
  }
}
.batch-element-red-version {
  border-bottom: 6px solid #AAAAAA !important;
}
.batch-element {
  width: 170px;
  height: 170px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 25px;
  border-bottom: 6px solid var(--background-light-blue);
}
.batch-element p {
  transform: matrix(0.99, -0.16, 0.16, 0.99, 0, 0);
  text-align: center;
}
.batch-element p a {
  font-size: var(--fs-h3) !important;
  text-transform: uppercase;
  font-family: "Amatic SC", sans-serif !important;
}
.batch-element p a:hover {
  text-decoration: underline !important;
}
.title-underline-menu {
  border-width: 0 0 2px 0;
}
.highlight-link {
  text-decoration: underline !important;
  color: var(--kita-red) !important;
}
/*== Site specific SCSS ==*/
.batch-element-laurentius {
  position: absolute;
  z-index: 9999;
  right: 170px;
  top: 590px;
}
/*== Module specific SCSS ==*/
