.elementor-378 .elementor-element.elementor-element-f893e6d{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-378 .elementor-element.elementor-element-f893e6d:not(.elementor-motion-effects-element-type-background), .elementor-378 .elementor-element.elementor-element-f893e6d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FBFAF7;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-type-html{padding-bottom:0px;}.elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-378 .elementor-element.elementor-element-d6d9b22 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-button[type="submit"]{color:#ffffff;}.elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-378 .elementor-element.elementor-element-d6d9b22 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-378 .elementor-element.elementor-element-d6d9b22 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-378 .elementor-element.elementor-element-d6d9b22 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-378 .elementor-element.elementor-element-d6d9b22{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}@media(min-width:768px){.elementor-378 .elementor-element.elementor-element-f893e6d{--width:100%;}}/* Start custom CSS for form, class: .elementor-element-d6d9b22 */@media(max-width:900px){
  .elementor-378 .elementor-element.elementor-element-d6d9b22{
    padding-top:calc(104px + env(safe-area-inset-top))!important;
    padding-right:14px!important;
    padding-bottom:calc(34px + env(safe-area-inset-bottom))!important;
    padding-left:14px!important;
  }
  .elementor-378 .elementor-element.elementor-element-d6d9b22 > .elementor-widget-container{
    padding-top:0!important;
  }

  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-form-fields-wrapper{
    align-items:flex-start!important;
  }

  /* Personen / Kinder sauber als echte 2-Spalten-Zeile. */
  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group-persons,
  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group-children{
    width:50%!important;
    flex:0 0 50%!important;
    max-width:50%!important;
    display:grid!important;
    grid-template-rows:38px 48px!important;
    align-content:start!important;
    row-gap:7px!important;
    margin:0 0 18px!important;
    padding-left:5px!important;
    padding-right:5px!important;
    box-sizing:border-box!important;
  }

  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group-persons .elementor-field-label,
  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group-children .elementor-field-label{
    min-height:38px!important;
    height:38px!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:flex-end!important;
    line-height:1.12!important;
    white-space:normal!important;
    box-sizing:border-box!important;
  }

  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group-persons input#form-field-persons,
  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group-children input#form-field-children{
    display:block!important;
    position:static!important;
    width:100%!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin:0!important;
    padding:0 13px!important;
    line-height:48px!important;
    box-sizing:border-box!important;
    transform:none!important;
    top:auto!important;
  }

  /* Default-Sternchen raus: Pflichtfelder bekommen stattdessen ein kleines rotes Badge. */
  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-label:after{
    display:none!important;
    content:none!important;
  }

  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group-name .elementor-field-label:after,
  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group-persons .elementor-field-label:after,
  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group-attendance > .elementor-field-label:after{
    content:"Pflicht"!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin-left:7px!important;
    padding:2px 6px!important;
    border-radius:999px!important;
    background:rgba(181,79,79,.09)!important;
    color:#b54f4f!important;
    font-size:8px!important;
    line-height:1.2!important;
    font-weight:800!important;
    letter-spacing:.04em!important;
    text-transform:uppercase!important;
    vertical-align:middle!important;
    position:static!important;
    flex:0 0 auto!important;
  }

  /* Änderungsfrist: kein Kasten, nur kompakter roter Hinweis. */
  body.page-id-378 .km-invite-change-note{
    margin:2px 0 10px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#b54f4f!important;
    font-size:10.5px!important;
    line-height:1.4!important;
    font-weight:650!important;
  }
  body.page-id-378 .km-invite-change-note:before{
    content:"* "!important;
    color:#c74444!important;
    font-weight:900!important;
  }

  /* Zu-/Absage nebeneinander und gleich hoch. */
  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group-attendance .elementor-field-subgroup{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
  }
  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group-attendance .elementor-field-option{
    width:100%!important;
    min-width:0!important;
  }
  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group-attendance input[type="radio"]+label{
    width:100%!important;
    min-height:50px!important;
    height:100%!important;
    padding:8px 34px 8px 10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    box-sizing:border-box!important;
    font-size:11.5px!important;
    line-height:1.2!important;
    white-space:normal!important;
  }
  .elementor-378 .elementor-element.elementor-element-d6d9b22 .elementor-field-group-attendance input[type="radio"]+label:after{
    right:10px!important;
    width:18px!important;
    height:18px!important;
  }
}/* End custom CSS */
/* Start custom CSS */.km-site{position:relative;}
@media(max-width:900px){
  html:has(body.page-id-378),
  body.page-id-378{
    height:auto!important;
    min-height:100%!important;
    max-height:none!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-y:auto!important;
    scroll-snap-type:none!important;
    scroll-behavior:auto!important;
  }

  body.page-id-378 :is(#outer-wrap,#wrap,#main,#content-wrap,#content,#primary,.content-area,.site-main){
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }

  body.page-id-378 .elementor.elementor-378{
    position:relative!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    overscroll-behavior:auto!important;
    scroll-snap-type:none!important;
    scroll-behavior:auto!important;
    touch-action:auto!important;
  }

  body.page-id-378 .elementor-element-f893e6d{
    display:block!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    padding:0!important;
    overflow:visible!important;
  }

  /* Erste Seite bleibt exakt ein Display hoch. */
  body.page-id-378 .elementor-element-1842039{
    width:100%!important;
    height:100svh!important;
    min-height:100svh!important;
    max-height:100svh!important;
    margin:0!important;
    overflow:hidden!important;
    scroll-snap-align:none!important;
  }
  body.page-id-378 .elementor-element-1842039 .km-site,
  body.page-id-378 .elementor-element-1842039 #km-main,
  body.page-id-378 .elementor-element-1842039 .km-page-hero{
    height:100svh!important;
    min-height:100svh!important;
    max-height:100svh!important;
  }
  body.page-id-378 .elementor-element-1842039 .km-page-hero{
    width:calc(100% - 34px)!important;
    margin:0 auto!important;
    padding:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:24px!important;
    text-align:center!important;
    box-sizing:border-box!important;
  }
  body.page-id-378 .km-page-hero > [data-reveal]{width:100%!important;max-width:620px!important;margin:0 auto!important;text-align:center!important;}
  body.page-id-378 .km-page-hero h1,
  body.page-id-378 .km-page-hero p,
  body.page-id-378 .km-page-kicker{margin-left:auto!important;margin-right:auto!important;text-align:center!important;}

  /* Zweite Seite: Formular liegt direkt im normalen Dokumentfluss. */
  body.page-id-378 .elementor-element-d6d9b22{
    width:min(calc(100% - 34px),520px)!important;
    height:auto!important;
    min-height:100svh!important;
    max-height:none!important;
    margin:0 auto!important;
    padding:calc(104px + env(safe-area-inset-top)) 0 calc(90px + env(safe-area-inset-bottom))!important;
    box-sizing:border-box!important;
    display:block!important;
    overflow:visible!important;
    scroll-snap-align:none!important;
    scroll-snap-stop:normal!important;
  }
  body.page-id-378 .elementor-element-d6d9b22 > .elementor-widget-container{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    display:block!important;
  }
  body.page-id-378 .elementor-element-d6d9b22 .elementor-form,
  body.page-id-378 .elementor-element-d6d9b22 .elementor-form-fields-wrapper{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    touch-action:auto!important;
  }

  body.page-id-378 :is(.elementor-element-6f84737,.elementor-element-9703a99){
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    scroll-snap-align:none!important;
  }
}

@media(max-width:900px){body.page-id-378,body.page-id-378 .elementor,body.page-id-378 .km-invite-gate,body.page-id-378 .km-qr-welcome,body.page-id-378 .km-code-gate{background:#F6F0E8!important;background-color:#F6F0E8!important;background-image:none!important;}}
@media(max-width:900px){html:has(body.page-id-378),body.page-id-378,body.page-id-378 #page,body.page-id-378 #content,body.page-id-378 .site-main,body.page-id-378 .elementor.elementor-378,body.page-id-378 .elementor-element-f893e6d,body.page-id-378 .km-site,body.page-id-378 #km-main,body.page-id-378 .km-invite-gate,body.page-id-378 .km-code-gate,body.page-id-378 .km-qr-welcome{background:#F6F0E8!important;background-color:#F6F0E8!important;background-image:none!important;}}
@media(max-width:900px){body.page-id-378.km-invite-prelocked .km-scroll-hint,body.page-id-378.km-invite-locked .km-scroll-hint{display:none!important;opacity:0!important;visibility:hidden!important;}}/* End custom CSS */