/**
 * Media Queries for Bootstrap and VisualComposer / WPBakery
 * it is also possible to just write a number as min and max value
**/
/**
 *  RESPOND ABOVE
**/
/**
 *  RESPOND BELOW
**/
/**
 * RESPOND BETWEEN
**/
.l-box {
  padding: 1em;
}

@media (min-width: 48em) {
  .l-box-lrg {
    margin-left: 10%;
    margin-right: 10%;
  }

  .l-box-lrg .text {
    margin-left: 40px;
  }
}

@media (max-width: 47.99em) {
  .l-box-lrg {
    margin-left: 20px;
    margin-right: 20px;
  }
}

.is-center {
  text-align: center;
}

@media (max-width: 47.999em) {
  .pure-hidden-md {
    display: none;
  }
}

@media (min-width: 48em) {
  .pure-hidden-above-md {
    display: none;
  }
}

@media (max-width: 47.999em) {
  .pure-hidden-below-md {
    display: none !important;
  }
}

@media (min-width: 48em) {
  .hidden-md-down {
    display: none;
  }
}

@media (min-width: 64em) {
  .pure-hidden-above-lg {
    display: none;
  }
}

.border-bottom {
  border-bottom: 2px solid #094436;
}

@media (max-width: 63.999em) {
  .lg-order-2 {
    order: 2;
  }
}

@media (max-width: 63.999em) {
  .lg-order-1 {
    order: 1;
  }
}

.vertical-center-text {
  margin: 0;
  position: absolute;
  top: 50%;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.pos-bottom {
  position: absolute;
  bottom: 0;
}

.image {
  max-width: 100%;
  height: auto;
}

.image-responsive {
  max-width: 100%;
  height: auto;
}

.full-size-image {
  width: 100%;
}

.spacer-after {
  margin-bottom: 100px;
}

@font-face {
  font-family: "Ubuntu";
  src:
    url("/font/Ubuntu-Bold.woff2") format("woff2"),
    url("/font/Ubuntu-Bold.woff") format("woff"),
    url("/font/Ubuntu-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Ubuntu";
  src:
    url("/font/Ubuntu-BoldItalic.woff2") format("woff2"),
    url("/font/Ubuntu-BoldItalic.woff") format("woff"),
    url("/font/Ubuntu-BoldItalic.ttf") format("truetype");
  font-weight: bold;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Ubuntu";
  src:
    url("/font/Ubuntu-Italic.woff2") format("woff2"),
    url("/font/Ubuntu-Italic.woff") format("woff"),
    url("/font/Ubuntu-Italic.ttf") format("truetype");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Ubuntu";
  src:
    url("/font/Ubuntu-Medium.woff2") format("woff2"),
    url("/font/Ubuntu-Medium.woff") format("woff"),
    url("/font/Ubuntu-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Ubuntu";
  src:
    url("/font/Ubuntu-LightItalic.woff2") format("woff2"),
    url("/font/Ubuntu-LightItalic.woff") format("woff"),
    url("/font/Ubuntu-LightItalic.ttf") format("truetype");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Ubuntu";
  src:
    url("/font/Ubuntu-Light.woff2") format("woff2"),
    url("/font/Ubuntu-Light.woff") format("woff"),
    url("/font/Ubuntu-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Ubuntu";
  src:
    url("/font/Ubuntu-Regular.woff2") format("woff2"),
    url("/font/Ubuntu-Regular.woff") format("woff"),
    url("/font/Ubuntu-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Ubuntu";
  src:
    url("/font/Ubuntu-MediumItalic.woff2") format("woff2"),
    url("/font/Ubuntu-MediumItalic.woff") format("woff"),
    url("/font/Ubuntu-MediumItalic.ttf") format("truetype");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

/*
 * -- MENU STYLES --
 * I want to customize how my .pure-menu looks at the top of the page
 */
@media (min-width: 64em) {
  .header {
    height: 100px;
  }
}

.logoWrapper {
  pointer-events: none;
}

.logoWrapper .logo {
  width: 80%;
  margin-left: 10%;
  margin-right: 10%;
  position: relative;
  z-index: 5;
}

.logoWrapper .logo .logoinner {
  margin: auto;
  text-align: center;
  height: 100px;
}

@media (min-width: 64em) {
  .logoWrapper .logo .logoinner {
    width: 20%;
  }
}

.logoWrapper .logo .logoinner a {
  pointer-events: all;
}

.logoWrapper .logo .logoinner img {
  max-height: 125px;
}

@media (min-width: 64em) and (max-width: 79.999em) {
  .logoWrapper .logo .logoinner img {
    position: fixed;
    top: 15px;
    transform: translateX(-50%);
  }
}

@media (min-width: 80em) and (max-width: 159.999em) {
  .logoWrapper .logo .logoinner img {
    position: fixed;
    top: 15px;
    transform: translateX(-50%);
    margin: auto;
  }
}

@media (min-width: 160em) {
  .logoWrapper .logo .logoinner img {
    position: fixed;
    top: -9px;
    transform: translateX(-50%);
    margin: auto;
  }
}

@media (max-width: 63.999em) {
  .logoWrapper {
    width: 100%;
    height: 73px;
    background: white;
    position: absolute;
    top: 0px;
  }

  .logoWrapper .logoinner img {
    height: 100px;
    position: relative;
    margin: auto;
  }
}

.custom-menu {
  padding: 0.5em;
  text-align: center;
}

@media (min-width: 64em) {
  .custom-menu.menu-mobile {
    display: none;
  }
}

.custom-menu .placeholderLink {
  width: 200px;
}

.custom-menu .pure-menu-list {
  margin-top: 16px;
}

@media (min-width: 64em) {
  .custom-menu {
    background: #ffffff;
    height: 100px;
  }

  .custom-menu .pure-menu.pure-menu-fixed {
    /* Fixed menus normally have a border at the bottom. */
    border-bottom: none;
    /* I need a higher z-index here because of the scroll-over effect. */
    z-index: 4;
  }
}

@media (min-width: 64em) {
  .pure-menu.pure-menu-fixed {
    /* Fixed menus normally have a border at the bottom. */
    border-bottom: none;
    /* I need a higher z-index here because of the scroll-over effect. */
    z-index: 4;
  }
}

.custom-wrapper {
  z-index: 4;
}

.custom-wrapper .custom-toggle-close {
  display: none;
}

@media (min-width: 64em) {
  .custom-wrapper .custom-fixed {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 3;
  }
}

.custom-wrapper .pure-menu .pure-menu-list {
  width: 80%;
  margin-left: 10%;
  margin-right: 10%;
}

.custom-wrapper .pure-menu .pure-menu-list .pure-menu-item {
  text-align: center;
}

@media (min-width: 64em) {
  .custom-wrapper .pure-menu .pure-menu-list .pure-menu-item {
    width: 20%;
  }
}

.custom-wrapper .pure-menu .pure-menu-list .pure-menu-item .pure-menu-link {
  color: white;
  font-size: 1.6rem;
  font-weight: 500;
  padding: 0 0 0 0;
}

.custom-wrapper
  .pure-menu
  .pure-menu-list
  .pure-menu-item
  .pure-menu-link:hover {
  background-color: none;
  color: #d1e1cb;
}

@media (min-width: 64em) and (max-width: 79.999em) {
  .custom-wrapper .pure-menu .pure-menu-list .pure-menu-item .pure-menu-link {
    font-size: 1.6rem;
  }
}

@media (min-width: 48em) {
  .custom-wrapper .pure-menu .pure-menu-list .pure-menu-item .pure-menu-link {
    color: #094436;
  }
}

@media (max-width: 63.999em) {
  .custom-wrapper.custom-menu-mobile-bottom {
    width: 100vw;
    bottom: 10px;
    position: fixed;
  }

  .custom-wrapper.custom-menu-mobile-bottom .custom-menu {
    width: 100%;
  }

  .custom-wrapper.custom-menu-mobile-bottom #toggle {
    border-top: 3px solid #094436;
  }

  .custom-wrapper.custom-menu-mobile-bottom .custom-toggle {
    margin: auto;
    width: fit-content;
    cursor: pointer;
  }
}

.custom-wrapper.open #tuckedMenu {
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
  border-top: 1px solid #094436;
  border-left: 1px solid #094436;
  border-right: 1px solid #094436;
}

.custom-wrapper.open .custom-menu.menu-mobile {
  border-bottom-left-radius: 30px;
  border-bottom-right-radius: 30px;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
  border-left: 1px solid #094436;
  border-right: 1px solid #094436;
  border-bottom: 1px solid #094436;
}

.custom-wrapper.open .custom-menu {
  background: #d1e1cb;
}

.custom-wrapper.open .custom-toggle-close {
  display: block;
  border-bottom: 3px solid #094436;
  width: fit-content;
  margin: auto;
}

.custom-wrapper.open .custom-toggle {
  display: none;
}

@media (max-width: 63.999em) {
  .custom-wrapper .custom-toggle {
    display: block;
  }

  .custom-wrapper .pure-menu-horizontal {
    display: none;
  }
}

.special-select .select2-container {
  margin: 5px 0px 5px 0px;
  padding-right: 20px;
}

.special-select
  .select2-container.select2-container--open
  .select2-selection__arrow
  b {
  transform: rotate(180deg);
}

.special-select .select2-container .select2-selection {
  height: 52px;
  border: 1px solid #094436;
}

@media (max-width: 47.999em) {
  .special-select .select2-container .select2-selection {
    height: 100px;
  }
}

.special-select
  .select2-container
  .select2-selection
  .select2-selection__rendered {
  height: 52px;
  padding: 0 0.2em;
}

@media (max-width: 47.999em) {
  .special-select
    .select2-container
    .select2-selection
    .select2-selection__rendered {
    height: 100px;
  }

  .special-select
    .select2-container
    .select2-selection
    .select2-selection__rendered
    li {
    width: -webkit-fill-available;
    overflow-wrap: break-word;
    white-space: normal;
  }
}

@media (min-width: 48em) {
  .special-select
    .select2-container
    .select2-selection
    .select2-selection__rendered {
    line-height: 38px;
  }
}

.special-select
  .select2-container
  .select2-selection
  .select2-selection__rendered
  .select2-selection__placeholder {
  padding: 0 0.3em;
  color: #d1e1cb;
}

.special-select
  .select2-container
  .select2-selection
  .select2-selection__arrow {
  right: 20px;
}

.special-select
  .select2-container
  .select2-selection
  .select2-selection__arrow
  b {
  background: transparent;
  background-image: url('data:image/svg+xml,<svg version="1.1" id="svg1" xmlns:svg="http://www.w3.org/2000/svg" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" inkscape:version="1.3 (0e150ed6c4, 2023-07-21)" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 7.5 7.5" style="enable-background:new 0 0 7.5 7.5;" xml:space="preserve"><style type="text/css">.st0{fill:%23FEB904;}.st1{fill:%23D1E1CB;}.st2{fill:%23F9F9F9;stroke:%23F9F9F9;stroke-width:0.33;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:16.1357;}.st3{fill:%23094436;}.st4{fill:%23F9F9F9;stroke:%23F9F9F9;stroke-width:0.3814;stroke-linecap:round;stroke-miterlimit:10;}</style><sodipodi:namedview bordercolor="%23666666" borderopacity="1.0" id="namedview1" inkscape:current-layer="layer1" inkscape:cx="26.252768" inkscape:cy="26.43289" inkscape:deskcolora="%23d1d1d1" inkscape:document-units="mm" inkscape:pagecheckerboard="0" inkscape:pageopacity="0.0" inkscape:showpageshadow="2" inkscape:window-height="1017" inkscape:window-maximized="1" inkscape:window-width="1920" inkscape:window-x="3832" inkscape:window-y="-8" inkscape:zoom="11.103591" pagecolor="%23ffffff"></sodipodi:namedview><g><g id="buttonD_00000074443628209247527340000015534524694808533922_" transform="matrix(1.423077,0,0,1.423077,-43.707702,-67.37461)"><circle id="path2_00000105388477029555784200000017425551903098613413_" class="st3" cx="33.4" cy="50" r="2.6"/></g><g><line class="st4" x1="5.4" y1="3.2" x2="3.8" y2="4.9"/><line class="st4" x1="2.1" y1="3.2" x2="3.8" y2="4.9"/></g></g></svg>');
  height: 52px;
  width: 52px;
  border: none;
  top: 1px;
  left: auto;
}

.wrapper {
  position: relative;
}

#secondDay {
  margin-top: 25px;
}

.blendCard {
  background: #d1e1cb;
  padding: 40px;
}

.blendCard .blendOutOverlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

@media (max-width: 47.999em) {
  .blendCard {
    padding: 30px 10px 30px 10px;
  }
}

@media (min-width: 48em) and (max-width: 63.999em) {
  .blendCard {
    position: sticky;
    top: 10px;
  }
}

@media (min-width: 64em) {
  .blendCard {
    position: sticky;
    top: 75px;
  }
}

.blendCard.active {
  -webkit-box-shadow: 2px -2px 12px 6px rgba(0, 0, 0, 0.79);
  box-shadow: 2px -2px 12px 6px rgba(0, 0, 0, 0.79);
  opacity: 1;
}

.blendCard.inactive {
  opacity: 1;
  transition:
    back linear,
    box-shadow 2s;
  z-index: 0;
}

@media (max-width: 47.999em) {
  .blendCard.first {
    position: relative;
  }
}

@media (min-width: 64em) {
  .blendCard.second {
    position: sticky;
    top: 200px;
  }
}

.blendCard .headLine {
  font-size: 2rem;
  font-weight: 600;
  padding-bottom: 25px;
  color: #094436;
}

@media (max-width: 35.499em) {
  .blendCard .headLine {
    font-size: 1.3rem;
    padding-left: 10px;
  }
}

.blendCard .eventData {
  padding-top: 30px;
}

.blendCard .eventDay {
  font-weight: 700;
  text-align: center;
  color: #feb904;
  font-size: 4rem;
}

.blendCard .eventDay .DAY {
  font-size: 12rem;
}

.blendCard .eventDaySmall {
  font-weight: 600;
  text-align: center;
  color: #feb904;
  font-size: 2rem;
}

.blendCard .shedule {
  font-weight: 600;
}

.blendCard .shedule table {
  padding-left: 40px;
}

.blendCard .shedule table td {
  margin-bottom: 10px;
  font-weight: 200;
  font-size: 1rem;
  padding-left: 10px;
}

@media (max-width: 300pxpx) {
  .blendCard .shedule table td {
    overflow-wrap: anywhere;
  }
}

.blendCard .shedule table td .subText {
  padding-left: 10px;
}

@media (max-width: 35.499em) {
  .blendCard .shedule table td .subText {
    max-width: 70vw;
  }
}

.blendCard .shedule table td p {
  margin: 0 0 0 5px;
}

.blendCard .shedule table td h4 {
  font-size: 1.1rem;
  color: #094436;
  margin: 0px 0px 0px 0px;
  overflow-wrap: anywhere;
}

@media (max-width: 35.499em) {
  .blendCard .shedule table td h4 {
    max-width: 70vw;
  }
}

.blendCard .shedule table td h4:has(.tooltip-toggle) {
  display: inline-flex;
}

.blendCard .shedule table td h5 {
  font-size: 1rem;
  color: #094436;
  font-weight: 600;
  margin: 5px 0px 5px 0px;
  width: fit-content;
}

.blendCard .shedule table .time {
  width: 200px;
  vertical-align: top;
}

@media (min-width: 350pxpx) and (max-width: 35.499em) {
  .blendCard .shedule table .time {
    width: 90px;
  }
}

@media (max-width: 350pxpx) {
  .blendCard .shedule table .time {
    width: 50px;
  }
}

@media (max-width: 35.499em) {
  .blendCard .shedule table {
    font-size: 1.1rem;

    padding-left: 10px;
    font-weight: 400;
  }
}

.label {
  display: flex;
  align-items: center;
  justify-content: center;
}

.label-text {
  margin-left: 0.5em;
}

.tooltip-toggle {
  cursor: pointer;
  position: relative;
  height: 18px;
  width: 18px;
  background-image: url('data:image/svg+xml, <svg viewBox="0 0 27 27" xmlns="http://www.w3.org/2000/svg"><g fill="%23ED3E44" fill-rule="evenodd"><path d="M13.5 27C20.956 27 27 20.956 27 13.5S20.956 0 13.5 0 0 6.044 0 13.5 6.044 27 13.5 27zm0-2C7.15 25 2 19.85 2 13.5S7.15 2 13.5 2 25 7.15 25 13.5 19.85 25 13.5 25z"/><path d="M12.05 7.64c0-.228.04-.423.12-.585.077-.163.185-.295.32-.397.138-.102.298-.177.48-.227.184-.048.383-.073.598-.073.203 0 .398.025.584.074.186.05.35.126.488.228.14.102.252.234.336.397.084.162.127.357.127.584 0 .22-.043.412-.127.574-.084.163-.196.297-.336.4-.14.106-.302.185-.488.237-.186.053-.38.08-.584.08-.215 0-.414-.027-.597-.08-.182-.05-.342-.13-.48-.235-.135-.104-.243-.238-.32-.4-.08-.163-.12-.355-.12-.576zm-1.02 11.517c.134 0 .275-.013.424-.04.148-.025.284-.08.41-.16.124-.082.23-.198.313-.35.085-.15.127-.354.127-.61v-5.423c0-.238-.042-.43-.127-.57-.084-.144-.19-.254-.318-.332-.13-.08-.267-.13-.415-.153-.148-.024-.286-.036-.414-.036h-.21v-.95h4.195v7.463c0 .256.043.46.127.61.084.152.19.268.314.35.125.08.263.135.414.16.15.027.29.04.418.04h.21v.95H10.82v-.95h.21z"/></g></svg>');
}

.tooltip-toggle svg {
  height: 18px;
  width: 18px;
}

.tooltip-toggle::before {
  position: absolute;
  top: -80px;
  left: -80px;
  background-color: #2b222a;
  border-radius: 5px;
  color: #fff;
  content: attr(aria-label);
  padding: 1rem;
  text-transform: none;
  transition: all 0.5s ease;
}

.tooltip-toggle::after {
  position: absolute;
  top: -12px;
  left: 9px;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #2b222a;
  content: " ";
  font-size: 0;
  line-height: 0;
  margin-left: -5px;
  width: 0;
}

.tooltip-toggle::before,
.tooltip-toggle::after {
  color: #efefef;
  font-family: monospace;
  font-size: 16px;
  opacity: 0;
  pointer-events: none;
  text-align: center;
}

.tooltip-toggle:focus::before,
.tooltip-toggle:focus::after,
.tooltip-toggle:hover::before,
.tooltip-toggle:hover::after {
  opacity: 1;
  transition: all 0.75s ease;
}

body {
  font-size: 1.2rem;
  font-weight: 500;
  color: #094436;
  font-family: Ubuntu, sans-serif;
}

@media (max-width: 47.999em) {
  body {
    font-size: 1.3rem;
    font-weight: 400;
  }
}

h1 {
  color: #feb904;
  margin-bottom: 15px;
}

h2 {
  color: #feb904;
  margin-bottom: 15px;
}

h3 {
  color: #feb904;
  margin-bottom: 15px;
}

h4 {
  color: #feb904;
  margin-bottom: 15px;
}

h5 {
  color: #feb904;
  margin-bottom: 15px;
}

h6 {
  color: #feb904;
  margin-bottom: 15px;
}

form input.alert {
  border: 1px solid rgb(255, 51, 51) !important;
  -webkit-box-shadow: 1px 0px 14px 3px rgba(255, 51, 51, 0.6);
  box-shadow: 1px 0px 14px 3px rgba(255, 51, 51, 0.6);
  background: rgba(255, 51, 51, 0.6);
  padding: 25px;
}

form .alert {
  border: 1px solid rgb(255, 51, 51) !important;
  -webkit-box-shadow: 1px 0px 14px 3px rgba(255, 51, 51, 0.6);
  box-shadow: 1px 0px 14px 3px rgba(255, 51, 51, 0.6);
  background: rgba(255, 51, 51, 0.6);
  padding: 25px;
}

/* This is the class used for the dark-background areas. */
.ribbon {
  background: #d1e1cb;
  color: #094436;
}

/* This is the class used for the dark-background areas. */
.ribbon-dark {
  background: #094436;
  color: #fff;
}

.full-size-container {
  min-height: calc(100vh - 100px);
}

@media (max-width: 63.999em) {
  .firstContent .full-size-container {
    min-height: auto;
  }
}

@media (min-width: 64em) {
  .firstContent {
    padding-top: 100px;
  }
}

@media (max-width: 63.999em) {
  .firstContent {
    padding-top: 130px;
  }
}

.firstContent .l-box-lrg {
  margin-bottom: 0;
  padding-bottom: 0;
}

.message {
  background: #d1e1cb;
  border: 1px solid #feb904;
  border-radius: 20px;
  -webkit-box-shadow: 1px 0px 21px 3px rgba(9, 68, 54, 0.7);
  box-shadow: 1px 0px 21px 3px rgba(9, 68, 54, 0.7);
  padding: 20px 20px 20px 20px;
  margin: 20px 20px 20px 20px;
}

.spacer-before {
  padding-top: 100px;
}

.spacer-after {
  padding-bottom: 100px;
}

.spacer-after-small {
  padding-bottom: 50px;
}

.spacer-before-small {
  padding-top: 70px;
}

.primaryDarker {
  color: #094436;
}

.secondaryDarker {
  color: #feb904;
}

.headerText {
  font-size: 1.5rem;
  font-weight: 600;
  margin-bottom: 15px;
  margin-right: 10px;
  height: 100%;
}

.headerText p {
  position: relative;
  top: 30%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 120em) {
  .headerText {
    font-size: 2rem;
  }
}

@media (max-width: 47.999em) {
  .headerText {
    margin-top: 50px;
    margin-right: 10px;
  }
}

.text {
  font-weight: 500;
}

@media (max-width: 47.999em) {
  .text {
    font-weight: 400;
  }
}

.textXL {
  font-size: 5rem;
}

.textXLL {
  font-size: 6rem;
}

.textXXL {
  font-size: 7rem;
}

.text-bold {
  font-weight: 700;
}

.text-light {
  color: white;
}

.text-secondary {
  color: #fdff50;
}

.text-secondary-darker {
  color: #feb904;
}

.text-end {
  float: right;
}

.flex {
  display: flex;
}

.contents {
  display: contents;
}

.counter {
  text-align: center;
  font-weight: 600;
}

.counter .progressbar-text {
  color: white;
  font-size: 1.7rem;
  font-weight: 600;
}

.counter .circle-wrapper {
  padding: 0 5px 0 5px;
}

@media (min-width: 48em) {
  .counter .circle-wrapper {
    width: 90%;
  }
}

@media (max-width: 47.9999em) {
  .counter .circle-wrapper {
    width: 90%;
  }
}

.logo_expert_dual {
  width: 100%;
  position: relative;
  bottom: -10px;
}

@media (min-width: 48em) {
  .logo_expert_dual {
    padding-top: 50px;
  }
}

@media (max-width: 47.999em) {
  .logo_expert_dual {
    bottom: -5px;
    width: 100%;
  }
}

.button-large h3 {
  color: #094436;
}

.button-large p {
  font-size: 1.1rem;
  margin: 10px 20px 10px 20px;
}

.button {
  color: #094436;
  border-radius: 60px;
  background: #d1e1cb;
  width: fit-content;
}

@media (max-width: 47.9999em) {
  .button {
    margin: 5px;
    padding: 25px 5px 25px 5px;
    border-radius: 30px;
  }
}

@media (min-width: 48em) {
  .button {
    margin: 10px;
    padding: 30px;
  }
}

.pure-form .selection {
  font-size: 1rem;
  font-weight: 400;
  color: #094436;
}

.pure-form .selection:disabled {
  color: #d1e1cb;
}

.pure-form input[type="text"],
.pure-form input[type="email"],
.pure-form select,
.pure-form textarea,
.pure-form button {
  border: 1px solid #094436;
  border-radius: 0px;
  font-size: 1rem;
  color: #094436;
}

.pure-form input[type="text"]:disabled,
.pure-form input[type="email"]:disabled,
.pure-form select:disabled,
.pure-form textarea:disabled,
.pure-form button:disabled {
  color: #d1e1cb;
}

.pure-form .special-select {
  position: relative;
}

.pure-form .special-select .select-button {
  top: -3px;
  right: 30px;
  background: transparent;
  background-image: url('data:image/svg+xml,<%3Fxml version=!string!encoding=!string!standalone=!string!%3F><!-- Created with Inkscape (http://www.inkscape.org/) --><svg width="1.0"height="UTF-8"viewBox="no"version="50px"id="50px"xmlns="0 0 50 50"xmlns:svg="1.1"><defs id="svg1"/><g id="http://www.w3.org/2000/svg"transform="http://www.w3.org/2000/svg"><circle style="defs1"id="layer1"cx="translate(-36.529526,-35.576378)"cy="fill:%23094436;fill-opacity:1;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;paint-order:fill markers stroke"r="path1"/><path style="66.529526"d="65.576378"id="30"/></g></svg>');
  background-repeat: no-repeat;
  height: 52px;
  width: 52px;
  position: absolute;
}

.pure-form .pure-checkbox.checkbox-button {
  padding: 0.5em 0.6em;
  border: 1px solid #094436;
  box-sizing: border-box;
  display: flex;
}

.pure-form .pure-checkbox.checkbox-button.active {
  background: #094436;
  color: white;
}

.pure-form .pure-checkbox.checkbox-button:hover {
  cursor: pointer;
}

.button-transparent {
  background: transparent;
  border: 1px solid #094436; /* this is a light blue */
}

.hidden {
  display: none;
}

.bg-primary {
  background: #d1e1cb;
}

.bg-primary-darker {
  background: #094436;
}

@media (max-width: 63.999em) {
  .organisatoren .tile:nth-child(even) {
    background-color: #094436;
    color: #d1e1cb;
  }

  .organisatoren .tile:nth-child(odd) {
    background-color: #d1e1cb;
    color: #094436;
  }
}

.organisatoren .tile {
  height: 350px;
  display: flex;
  position: relative;
}

@media (min-width: 64em) and (max-width: 79.999em) {
  .organisatoren .tile {
    height: 200px;
  }
}

@media (max-width: 63.999em) {
  .organisatoren .tile {
    height: 150px;
  }

  .organisatoren .tile .letter {
    display: none;
  }
}

.organisatoren .tile .imageWrapper {
  display: flex;
  height: 100%;
  width: 70%;
  text-align: center;
  align-items: center;
}

@media (max-width: 63.999em) {
  .organisatoren .tile .imageWrapper {
    width: 33%;
  }
}

.organisatoren .tile .imageWrapper img.org_logo {
  max-height: 150px;
  margin-left: 50px;
  width: inherit;
}

@media (max-width: 63.999em) {
  .organisatoren .tile .imageWrapper img.org_logo {
    width: calc(100% - 25px);
    margin-left: 25px;
  }
}

.organisatoren .tile .letter-right {
  height: 100%;
  position: relative;
  left: -100px;
  z-index: 4;
}

@media (min-width: 64em) and (max-width: 1500px) {
  .organisatoren .tile .letter-right {
    left: 0px;
  }
}

.organisatoren .tile .info {
  height: 100%;
}

.organisatoren .tile .info.info-right {
  z-index: 5;
}

@media (max-width: 63.999em) {
  .organisatoren .tile .info {
    width: 66%;
  }
}

@media (min-width: 64em) {
  .organisatoren .tile .info {
    position: absolute;
    left: 0px;
    background: #feb904;
    width: 110%;
  }
}

@media (min-width: 1500px) {
  .organisatoren .tile .info.info-right {
    left: -90px;
  }
}

.organisatoren .tile .info .text-center {
  text-align: center;
  width: 66%;
  z-index: 2;
}

@media (min-width: 64em) {
  .organisatoren .tile .info .text-center {
    left: 85px;
  }
}

@media (max-width: 63.999em) {
  .organisatoren .tile .info .text-center {
    font-size: 1rem;
    font-weight: 400;
  }
}

.organisatoren .tile .info .button-minus {
  z-index: 3;
  position: absolute;
  left: 10px;
  top: 50%;
  width: 60px;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media (max-width: 63.999em) {
  .organisatoren .tile .info .button-minus {
    display: none;
  }
}

.organisatoren .tile .info .button-minus img {
  width: 60px;
}

.color-inverted h3 {
  color: #094436;
}

.color-inverted p {
  color: #094436;
}

.chevron-down {
  padding-top: 30px;
  height: 30px;
  width: 30px;
  margin: auto;
  cursor: pointer;
}

.chevron-down img {
  height: 30px;
  margin: auto;
}

.chevron-down.open {
  transform: rotate(180deg) translateY(-30px);
}

.spacer-left {
  margin-left: 30px;
}

.vertical-center {
  display: flex;
  align-items: center;
}

.border-white-bottom {
  border: 2px solid white;
  padding-bottom: 50px;
}

.slider {
  max-width: 90vw;
  overflow-x: hidden;
}

.slider .slider-inner {
  display: flex;
  flex-wrap: nowrap;
  width: max-content;
  transition: 1s ease-in-out;
  justify-content: center;
  margin: auto;
}

.slider .sliderItem {
  width: 300px;
}

.slider .sliderItem.sliderItem-Big {
  width: 400px;
}

@media (max-width: 47.999em) {
  .slider .sliderItem.sliderItem-Big {
    width: 80vw;
  }
}

.slider .sliderItem.sliderItem-Big .flip-card-green {
  height: 450px;
}

.slider .sliderItem.sliderItem-Big .silderImage {
  border: none;
}

.slider .sliderItem.landscape {
  width: 430px;
  max-width: calc(100vw - 35px);
  height: auto;
}

.slider .sliderItem.landscape .silderImage > img {
  height: auto;
  width: 100%;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
}

.slider .sliderItem.landscape .flip-card-inner {
  box-shadow: none;
}

.slider .sliderItem.landscape .flip-card-inner .flip-card-front {
  background-color: transparent;
  border: none;
}

.slider .sliderItem.landscape .pos-right-bottom {
  bottom: 70px;
}

.slider .sliderItem .slider_inner {
  padding: 15px;
  overflow: hidden;
  position: relative;
}

.slider .sliderItem .slider_inner .sliderTeaser h5 {
  margin-bottom: 20px;
}

.slider .sliderItem .slider_inner .sliderTeaser p {
  font-size: 1rem;
  margin-top: 5px;
  margin-bottom: 5px;
}

.slider .sliderItem .pos-right-bottom {
  position: absolute;
  bottom: 5px;
  right: 5px;
}

.slider .sliderItem .sliderCardButton {
  position: absolute;
  top: 350px;
  right: 25px;
}

.slider .sliderItem .sliderCardButton .minusButton {
  width: 40px;
  height: 40px;
  border-radius: 20px;
  background: #094436;
  --b: 4px; /* the thickness */
  width: 50px; /* the size */
  aspect-ratio: 1;
  border: 10px solid #d1e1cb; /* the outer space */
  background: conic-gradient(
      from 90deg at var(--b) var(--b),
      #094436 90deg,
      white 0
    )
    calc(100% + var(--b) / 2) calc(100% + var(--b) / 2);
  display: inline-block;
}

.slider .sliderItem .silderImage {
  border: 1px solid #feb904;
  overflow: hidden;
}

.slider .sliderItem .silderImage > img {
  height: 400px;
  width: auto;
}

.flip-card {
  background-color: transparent;
  perspective: 1000px;
  height: 400px;
}

.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.6s;
  transform-style: preserve-3d;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
}

.flip-card-inner .flip-card-text {
  margin: 10px;
  height: 75%;
  font-size: 1.2rem;
  display: flex;
  align-items: center;
}

.flip-card-inner .flip-card-name {
  font-size: 1.3rem;
}

.flip-card-front,
.flip-card-back {
  position: absolute;
  width: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.flip-card-green .flip-card-front {
  background-color: #d1e1cb;
  color: #094436;
}

.flip-card-front {
  background-color: #bbb;
  color: black;
  height: 100%;
}

.flip-card-front .plusButton {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #094436;
  --b: 4px; /* the thickness */
  width: 50px; /* the size */
  aspect-ratio: 1;
  border: 10px solid #094436; /* the outer space */
  background: conic-gradient(
      from 90deg at var(--b) var(--b),
      #094436 90deg,
      white 0
    )
    calc(100% + var(--b) / 2) calc(100% + var(--b) / 2) / calc(50% + var(--b))
    calc(50% + var(--b));
  display: inline-block;
}

.flip-card-front .plusButton:hover {
  cursor: pointer;
}

.flip-card-front .button-plus-zoom {
  position: absolute;
  right: 10px;
  bottom: 0;
  width: 40px;
  height: 40px;
}

.flip-card-front .button-plus-zoom img {
  width: 40px;
  height: 40px;
}

.flip-card-front .button-plus {
  position: absolute;
  right: 10px;
  bottom: 0;
  width: 40px;
  height: 40px;
}

.flip-card-front .button-plus img {
  width: 40px;
  height: 40px;
}

.flip-card-back {
  background-color: #d1e1cb;
  color: #094436;
  transform: rotateY(180deg);
  min-height: 100%;
  height: 400px;
}

.flip-card-back p {
  font-size: 1rem;
  margin-left: 10px;
  margin-right: 10px;
}

.flip-card-back .button-minus img {
  width: 40px;
}

.flip-card-back .minusButton {
  width: 50px;
  height: 50px;
  border-radius: 60px;
  background: #094436;
  --b: 4px; /* the thickness */
  width: 50px; /* the size */
  aspect-ratio: 1;
  border: 10px solid #d1e1cb; /* the outer space */
  background: conic-gradient(
      from 90deg at var(--b) var(--b),
      #094436 90deg,
      white 0
    )
    calc(100% + var(--b) / 2) calc(100% + var(--b) / 2);
  display: inline-block;
}

.flip-card-back .minusButton:hover {
  cursor: pointer;
}

.visible,
.invisible {
  opacity: 0;
  transition: opacity 0.5s ease;
}

.visible {
  opacity: 1;
}

#footer {
  position: relative;
  margin-top: 100px;
}

#footer a {
  color: #094436;
}

#footer a:-webkit-any-link {
  color: #094436;
  text-decoration: none;
}

#footer .custom-brand-footer {
  position: absolute;
  top: -85px;
  left: 50%; /* transform: translateY(-50%); */
  transform: translateX(-50%);
}

#footer .custom-brand-footer img {
  height: 125px;
}

.footerLogos img {
  padding: 20px;
  width: auto;
  margin: auto;
}

@media (min-width: 1500px) {
  .footerLogos img {
    max-height: 150px;
  }
}

@media (max-width: 1500px) {
  .footerLogos img {
    max-height: 100px;
    max-width: 200px;
  }
}

.text-left {
  text-align: left;
}

input[type="fill:none;stroke:%23ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1;stroke-dasharray:none"] {
  /* Add if not using autoprefixer */
  -webkit-appearance: none; /* Remove most all native input styles */
  appearance: none; /* For iOS < 15 */
  background-color: var(white); /* Not removed via appearance */
  margin: 0;
  font: inherit;
  color: currentColor;
  width: 1.15em;
  height: 1.15em;
  border: 0.15em solid #094436;
  border-radius: 0.15em;
  transform: translateY(-0.075em);
  display: grid;
  place-content: center;
}

input[type="M 46.418163,59.785164 66.529523,79.472548 86.450257,59.880479"]::before {
  content: "path2";
  width: 0.65em;
  height: 0.65em;
  clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
  transform: scale(0);
  transform-origin: bottom left;
  transition: 120ms transform ease-in-out;
  box-shadow: inset 1em 1em var(#094436); /* Windows High Contrast Mode */
  background-color: CanvasText;
}

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

input[type="checkbox"]:focus {
  outline: max(2px, 0.15em) solid currentColor;
  outline-offset: max(2px, 0.15em);
}

input[type=""]:disabled {
  --form-control-color: var($ form-control-disabled);
  color: var(grey);
  cursor: not-allowed;
}

.pure-form .pure-checkbox {
  grid-template-columns: 1em auto;
  gap: 0.5em;
  display: grid;
  font-weight: 400;
  font-size: 1rem;
}

.pagination {
  width: 100%;
  text-align: center;
}

.select2-container {
  width: 95.833%;
}

.nextBig {
  position: absolute;
  right: 0px;
  height: 626px;
  width: 50px;
}

.nextBig .center {
  position: relative;
  height: 100%;
}

.nextBig .center img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: rotate(-90deg) translate(50%, -40%);
  width: 50px;
}

.nextBig:hover {
  background-color: #d1e1cb;
  opacity: 0.7;
}

.prevBig {
  position: absolute;
  left: 0px;
  height: 626px;
  width: 70px;
  background-color: #d1e1cb;
  opacity: 0.2;
}

.prevBig .center {
  position: relative;
  height: 100%;
}

.prevBig .center img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: rotate(90deg) translate(50%, 40%);
  width: 50px;
}

.prevBig:hover {
  background-color: #d1e1cb;
  opacity: 0.7;
}

.pure-button {
  margin-top: 20px;
}

#footer .kontakt a {
  color: #feb904;
}

.anmeldung {
  position: relative;
}

.anmeldung .formSuccessfulPopUP {
  width: 90%;
  min-height: 200px;
  background: #d1e1cb;
  color: white;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-box-shadow: 1px 0px 21px 3px rgba(9, 68, 54, 0.7);
  box-shadow: 1px 0px 21px 3px rgba(9, 68, 54, 0.7);
  border: 1px solid #feb904;
}

.anmeldung .formSuccessfulPopUP .popUpInner {
  padding: 10px 10px 10px 10px;
  margin: 10px 10px 10px 10px;
}

.anmeldung .formSuccessfulPopUP .close {
  cursor: pointer;
  position: absolute;
  top: 5px;
  right: 5px;
  width: 20px;
}

.downloadButtonWrapper {
  margin: auto;
  width: fit-content;
}

.downloadButtonWrapper .downloadButton {
  padding: 20px 30px 20px 30px;
  background: #feb904;
  color: #094436;
  border-radius: 50px;
  text-decoration: none;
}

.speckerImg {
  width: 272px;
  height: 400px;
}

.button-minus img {
  width: 40px;
  height: 40px;
}

.ImageBig .rounded {
  border-radius: 50px;
}

/*# sourceMappingURL=main.css.map */
/* ExperDual – Rückblick Block (Gutenberg + Frontend) */
.rueckblick-section {
  /* Abstand zum gelben H2 darüber */
  margin: 2.5rem 0;
}

.rueckblick-inner {
  margin-left: 10%;
  margin-right: 10%;
}

/* Die grüne, abgerundete Fläche */
.rueckblick-section .rueckblick-text {
  background: #d1e1cb;
  color: #094436;

  /* Pill-Form wie im Screenshot */
  border-radius: 60px;

  /* viel Innenabstand */
  padding: 2.25rem 3rem;

  /* wichtig: Text bleibt “in der Box” */
  overflow: hidden;
  box-sizing: border-box;

  /* damit die Box schön breit ist, aber nicht “endlos” */
  /*max-width: 1200px;*/
  margin: 0 auto;

  /* bessere Lesbarkeit bei langen Absätzen */
  line-height: 1.35;
}

.rueckblick-section img {
  border-radius: 50px;
}

/* Damit Gutenberg keine komischen Standard-Margins reinballert */
.rueckblick-section .rueckblick-text p {
  margin: 0;
}

/* Mobile: weniger Padding + Radius etwas kleiner, sonst wirkt’s wie ein Riesen-Blob */
@media (max-width: 47.999em) {
  .rueckblick-section .rueckblick-text {
    border-radius: 40px;
    padding: 1.25rem 1.25rem;
  }
}

.wp-block-cb-carousel-v2 .wp-block-cb-slide-v2.cb-slide {
  background: #d1e1cb;
  padding: 32px 28px;
  min-height: 520px; /* anpassen */
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);

  display: flex; /* wichtig: Footer unten */
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  text-align: center;

  box-sizing: border-box;
}

/* Text oben */
.wp-block-cb-carousel-v2 .wp-block-cb-slide-v2.cb-slide > p:not(:last-of-type) {
  order: 1;
  margin: 0;
  max-width: 46ch;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 600;
  color: #094436;
}

/* Trenner immer vor dem Namen */
.wp-block-cb-carousel-v2 .wp-block-cb-slide-v2.cb-slide > hr {
  order: 2;
  width: 85%;
  height: 2px;
  border: 0;
  background: #094436;
  opacity: 0.9;
  margin: 24px auto 14px auto;
}

/* Name/Organisation unten */
.wp-block-cb-carousel-v2 .wp-block-cb-slide-v2.cb-slide > p:last-of-type {
  order: 3;
  margin: 0;
  font-weight: 700;
  color: #094436;
}

/* „Gutter“ zwischen Cards (zusätzlich zu space-between) */
.wp-block-cb-carousel-v2 .swiper-slide {
  padding: 0 12px;
}

.organiser-card {
  position: relative;
  width: 100%;
  height: 100%;
  perspective: 1200px;
}

.organiser-card__inner {
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transition: transform 600ms ease;
}

.organiser-card.is-flipped .organiser-card__inner {
  transform: rotateY(180deg);
}

.organiser-card__face {
  position: absolute;
  inset: 0;
  backface-visibility: hidden;
  border-radius: 16px;
  overflow: hidden;
}

/* Vorderseite */
.organiser-card__front {
  display: grid;
  place-items: center;
}

/* Rückseite */
.organiser-card__back {
  transform: rotateY(180deg);
  display: grid;
  place-items: center;
}

.organiser-card__frontContent,
.organiser-card__backContent {
  padding: 32px;
  text-align: center;
}

/* Toggle (Plus/Minus) */
.organiser-card__toggle {
  position: absolute;
  left: 24px;
  top: 50%;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  cursor: pointer;
  padding: 0;
  line-height: 1;
}

.organiser-card__toggle--minus {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: #094436;
  color: #fff;
  font-size: 24px;
}

/* SVG Größe */
.organiser-card__toggleIcon svg {
  width: 56px;
  height: 56px;
  display: block;
}

/* Optional: Fokus sichtbar */
.organiser-card__toggle:focus-visible {
  outline: 3px solid #094436;
  outline-offset: 4px;
}

.organiser-card {
  position: relative;
  width: 100%;
  height: 100%;
  perspective: 1200px;
}

.organiser-card__inner {
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transition: transform 600ms ease;
}

.organiser-card.is-flipped .organiser-card__inner {
  transform: rotateY(180deg);
}

.organiser-card__face {
  position: absolute;
  inset: 0;
  backface-visibility: hidden;
  border-radius: 16px;
  overflow: hidden;
}

/* Vorderseite */
.organiser-card__front {
  display: grid;
  place-items: center;
}

/* Rückseite */
.organiser-card__back {
  transform: rotateY(180deg);
  display: grid;
  place-items: center;
}

.organiser-card__frontContent,
.organiser-card__backContent {
  padding: 32px;
  text-align: center;
}

/* Toggle (Plus/Minus) */
.organiser-card__toggle {
  position: absolute;
  left: 24px;
  top: 50%;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  cursor: pointer;
  padding: 0;
  line-height: 1;
}

.organiser-card__toggle--minus {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: #094436;
  color: #fff;
  font-size: 24px;
}

/* SVG Größe */
.organiser-card__toggleIcon svg {
  width: 56px;
  height: 56px;
  display: block;
}

/* Optional: Fokus sichtbar */
.organiser-card__toggle:focus-visible {
  outline: 3px solid #094436;
  outline-offset: 4px;
}

.exp-org-tile {
  position: relative;
  perspective: 1200px;
  min-height: 320px;
  border-radius: 16px;
  overflow: hidden;
}

.exp-org-tile__inner {
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transition: transform 700ms cubic-bezier(0.4, 0.2, 0.2, 1);
}

.exp-org-tile.is-flipped .exp-org-tile__inner {
  transform: rotateY(180deg);
}

.exp-org-tile__face {
  position: absolute;
  inset: 0;
  backface-visibility: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.exp-org-tile__back {
  transform: rotateY(180deg);
  padding: 40px;
  text-align: center;
}

/* Logo */
.exp-org-logoWrap {
  padding: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.exp-org-logo {
  max-width: 60%;
  max-height: 60%;
  height: auto;
  width: auto;
}

/* Toggle Button links */
.exp-org-toggle {
  position: absolute;
  left: 24px;
  top: 50%;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
  z-index: 5;
}

.exp-org-toggle svg {
  width: 56px;
  height: 56px;
  display: block;
}

/* PLUS/MINUS: Vertikal-Linie wird beim Flip ausgeblendet */
.exp-org-toggle .exp-plus-vert {
  opacity: 1;
  transition: opacity 200ms ease;
}

.exp-org-tile.is-flipped .exp-org-toggle .exp-plus-vert {
  opacity: 0;
}

.exp-org-toggle:focus-visible {
  outline: 3px solid #094436;
  outline-offset: 4px;
}

/* Letter (D/U/A/L) Position wie bei dir: links oder rechts */
.exp-org-letter {
  position: absolute;
  top: 0;
  left: 0px;
  width: auto;
  height: 100%;
  z-index: 4;
}

.exp-org-letter--right {
  left: -20px;
}

.exp-org-letter svg {
  width: auto;
  height: 100%;
  display: block;
}

.has-brand-light-background-color {
  background: #d1e1cb;
}

.has-brand-gelb-color {
  color: #feb904;
}

.has-brand-green-color {
  color: #094436;
}
/* ========== HEADER ========== */

.site-header {
  position: sticky;
  top: 0;
  z-index: 9999;
  background: #ffffff;
  height: 90px; /* feste Höhe für Effekt */
  display: flex;
  align-items: center;
}

.header-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  width: 100%;
}

.logo {
  position: relative;
  top: 25px; /* wie weit es unten rausstehen soll */
  z-index: 10;
}

.logo img {
  height: 120px; /* größer als Header */
  width: auto;
  display: block;
}

.nav-left {
  justify-self: start;
}
.nav-right {
  justify-self: end;
}
.logo {
  justify-self: center;
}

.main-navigation .menu {
  list-style: none;
  display: flex;
  gap: 1.6rem;
  margin: 0;
  padding: 0;
}

.main-navigation .menu a {
  text-decoration: none;
  color: #1e3a34;
  font-weight: 500;
}

.main-navigation .menu a:hover {
  color: #f4a100;
}

/* smooth scroll + offset */
html {
  scroll-behavior: smooth;
}
section,
.wp-block-group,
h2,
h3 {
  scroll-margin-top: 110px;
}

.wp-block-cb-carousel-v2.no-slide-background .cb-slide {
  background: none;
}

.agenda_table table tr td {
  border: none;
}
.agenda_day {
}

.agenda_day_num {
}

.agenda_day_tag {
}

/* ===== Grundbereich ===== */

.rtec-outer-wrap.rtec-shortcode {
  max-width: 760px;
  margin: 0 auto;
  padding: 40px 32px 50px;
  background: #f4f5f3;
  box-sizing: border-box;
  font-family: Arial, Helvetica, sans-serif;
}

#rtec.rtec {
  color: #2d5f57;
}

#rtec .rtec-form-wrapper {
  background: transparent !important;
  padding: 0 !important;
  width: 100% !important;
}

#rtec .rtec-fg-header,
#rtec .rtec-field-group-menu {
  display: none !important;
}

/* ===== Grid ===== */

#rtec .rtec-form-fields-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 20px;
  align-items: start;
}

#rtec .rtec-email,
#rtec .rtec-other,
#rtec .rtec-custom1,
#rtec .rtec-custom2,
#rtec .rtec-custom3,
#rtec .rtec-custom4,
#rtec .rtec-custom5,
#rtec .rtec-terms_conditions {
  grid-column: 1 / -1;
}

/* ===== Feldaufbau ===== */

#rtec .rtec-form-field {
  margin: 0 !important;
}

/*
 * Labels are rendered before the input wrapper in RTEC's markup, so the label
 * must be positioned relative to the field wrapper (not the input wrapper).
 */
#rtec .rtec-form-field:not(.rtec-field-checkbox) {
  position: relative;
}

#rtec .rtec-form-field:not(.rtec-field-checkbox) .rtec-input-wrapper {
  position: relative;
}

/* Labels in die Box legen */
#rtec .rtec-form-field:not(.rtec-field-checkbox) .rtec-field-label {
  position: absolute;
  left: 16px;
  /* Keep the label inside the input box without overlapping typed text */
  top: 12px;
  transform: none;
  z-index: 2;
  margin: 0;
  color: #4d726c;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  pointer-events: none;
  background: transparent;
  max-width: calc(100% - 32px);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Inputs */
#rtec input[type="text"],
#rtec input[type="email"],
#rtec input[type="tel"],
#rtec textarea,
#rtec select {
  width: 100%;
  box-sizing: border-box;
  border: 2px solid #7aa19a;
  background: #f4f5f3;
  color: #1f4f49;
  border-radius: 0;
  box-shadow: none;
  outline: none;
  font-size: 16px;
  padding: 24px 16px 10px 16px;
  transition:
    border-color 0.2s ease,
    background-color 0.2s ease;
}

#rtec input[type="text"],
#rtec input[type="email"],
#rtec input[type="tel"],
#rtec select {
  min-height: 56px;
}

#rtec textarea {
  min-height: 140px;
  resize: vertical;
  padding-top: 28px;
}

#rtec input[type="text"]:focus,
#rtec input[type="email"]:focus,
#rtec input[type="tel"]:focus,
#rtec textarea:focus,
#rtec select:focus {
  border-color: #0b5d4d;
  background: #f8faf8;
}

/* Label hochschieben bei Fokus */
#rtec
  .rtec-form-field:not(.rtec-field-checkbox):focus-within
  .rtec-field-label {
  top: 12px;
  transform: none;
  font-size: 12px;
}

/* Optional: bei vorausgefüllten Feldern ebenfalls nach oben */
#rtec
  .rtec-form-field:not(.rtec-field-checkbox)
  input:not([value=""])
  ~ .rtec-field-label {
  top: 12px;
  transform: none;
  font-size: 12px;
}

/* Da im HTML das Label vor dem Input steht, sicherheitshalber auch diese Variante */
#rtec .rtec-form-field.rtec-email .rtec-field-input.rtec-valid + * {
  top: 12px;
  transform: none;
  font-size: 12px;
}

/* ===== Checkbox ===== */

#rtec .rtec-field-checkbox {
  margin-top: 6px !important;
}

#rtec .rtec-checkbox-option-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
}

#rtec .rtec-field-checkbox input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 22px;
  height: 22px;
  min-width: 22px;
  border: 2px solid #7aa19a;
  background: #f4f5f3;
  margin: 0;
  cursor: pointer;
  position: relative;
}

#rtec .rtec-field-checkbox input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 7px;
  height: 12px;
  border: solid #0b5d4d;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

#rtec .rtec-field-checkbox label {
  margin: 0;
  font-size: 15px;
  line-height: 1.4;
  font-weight: 600;
  color: #4d726c;
}

/* ===== Button ===== */

#rtec .rtec-form-buttons {
  margin-top: 26px;
}

#rtec .rtec-submit-button {
  appearance: none;
  -webkit-appearance: none;
  border: 2px solid #7aa19a !important;
  background: #f4f5f3 !important;
  color: #1f4f49 !important;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  padding: 16px 28px;
  border-radius: 0;
  cursor: pointer;
  transition: all 0.2s ease;
}

#rtec .rtec-submit-button:hover,
#rtec .rtec-submit-button:focus {
  background: #0b5d4d !important;
  color: #fff !important;
  border-color: #0b5d4d !important;
}

/* ===== Meldungen ===== */

#rtec .rtec-error-message,
#rtec .rtec-valid-message,
#rtec .rtec-input-wrapper p {
  font-size: 13px;
  margin-top: 6px;
  color: #2d5f57;
}

#rtec .rtec-user-comments {
  display: none !important;
}

/* ===== Responsive ===== */

@media (max-width: 700px) {
  .rtec-outer-wrap.rtec-shortcode {
    padding: 28px 20px 36px;
  }

  #rtec .rtec-form-fields-wrapper {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  #rtec .rtec-submit-button {
    width: 100%;
  }
}
