.elementor-4902 .elementor-element.elementor-element-8c78213{--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;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:15px;--padding-right:15px;}.elementor-4902 .elementor-element.elementor-element-02194aa{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:20px 20px 00px 0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4902 .elementor-element.elementor-element-1b34277{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:0px 1px 0px 1px;--border-top-width:0px;--border-right-width:1px;--border-bottom-width:0px;--border-left-width:1px;border-color:var( --e-global-color-primary );--border-color:var( --e-global-color-primary );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4902 .elementor-element.elementor-element-ddd1a9b{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4902 .elementor-element.elementor-element-64efa93 > .elementor-widget-container{padding:10px 10px 10px 10px;}.elementor-4902 .elementor-element.elementor-element-8422266{--display:flex;--padding-top:10px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.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-4902 .elementor-element.elementor-element-36dd7ce .elementor-field-group{padding-right:calc( 20px/2 );padding-left:calc( 20px/2 );margin-bottom:30px;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-form-fields-wrapper{margin-left:calc( -20px/2 );margin-right:calc( -20px/2 );margin-bottom:-30px;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-field-group.recaptcha_v3-bottomleft, .elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-labels-inline .elementor-field-group > label{padding-left:10px;}body:not(.rtl) .elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-labels-inline .elementor-field-group > label{padding-right:10px;}body .elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-labels-above .elementor-field-group > label{padding-bottom:10px;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-field-group > label{font-family:"Karla", Sans-serif;font-weight:700;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-field-type-html{padding-bottom:0px;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-field-group .elementor-field:not(.elementor-select-wrapper){border-width:0px 0px 1px 0px;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-field-group .elementor-select-wrapper select{border-width:0px 0px 1px 0px;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-button[type="submit"]{color:#ffffff;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-4902 .elementor-element.elementor-element-36dd7ce .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-4902 .elementor-element.elementor-element-36dd7ce{--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;}.elementor-4902 .elementor-element.elementor-element-7f0bd90{--display:flex;--min-height:378px;}.elementor-4902 .elementor-element.elementor-element-7f0bd90:not(.elementor-motion-effects-element-type-background), .elementor-4902 .elementor-element.elementor-element-7f0bd90 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://www.kl-mre.com/wp-content/uploads/2026/02/mh_suchprofil.png");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-4902 .elementor-element.elementor-element-8c72070{--display:flex;--min-height:100px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:0px 1px 1px 1px;--border-top-width:0px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-primary );--border-color:var( --e-global-color-primary );--border-radius:0px 0px 20px 20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4902 .elementor-element.elementor-element-8c72070:not(.elementor-motion-effects-element-type-background), .elementor-4902 .elementor-element.elementor-element-8c72070 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}/* Start custom CSS for html, class: .elementor-element-595e9a3 */.wizard-line::before{
  width: var(--wizard-progress, 0%);
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-36dd7ce *//* =========================================
   HOTEL WIZARD – RADIO + CHECKBOX CARDS
   (basierend auf Ursprungsscript, funktioniert in Elementor)
   ========================================= */

.hotel-wizard-form{
  --brand:#006532;
  --card-border:#e6e6e6;
  --card-bg:#fff;
  --shadow-hover:0 10px 24px rgba(0,0,0,0.08);
  --shadow-active:0 10px 24px rgba(0,101,50,0.12);
  --active-bg:rgba(0,101,50,0.05);
  --radius:14px;
  --pad-y:14px;
  --pad-x:12px;
  --field-minh:56px;
}

/* ==================================================
   1) RADIO + CHECKBOX: Optionen als Grid + Zeilenabstand 8px
   ================================================== */
.hotel-wizard-form .elementor-field-type-radio .elementor-field-subgroup,
.hotel-wizard-form .elementor-field-type-checkbox .elementor-field-subgroup{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  column-gap:24px;
  row-gap:8px; /* <-- gewünschter Zeilenabstand */
}

/* Mobile */
@media (max-width: 768px){
  .hotel-wizard-form .elementor-field-type-radio .elementor-field-subgroup,
  .hotel-wizard-form .elementor-field-type-checkbox .elementor-field-subgroup{
    grid-template-columns:1fr;
  }
}

/* ==================================================
   2) Native Inputs verstecken (wie bei dir)
   ================================================== */
.hotel-wizard-form .elementor-field-type-radio input[type="radio"],
.hotel-wizard-form .elementor-field-type-checkbox input[type="checkbox"]{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

/* ==================================================
   3) Labels als Card stylen (WICHTIG: nur Options-Labels!)
   -> verhindert, dass das Feld-Label oben zur Card wird
   ================================================== */
.hotel-wizard-form .elementor-field-subgroup .elementor-field-option > label{
  border:1px solid var(--card-border);
  border-radius:var(--radius);
  padding:var(--pad-y) var(--pad-x);
  background:var(--card-bg);
  cursor:pointer;

  display:flex;
  align-items:center;
  gap:10px;

  min-height:var(--field-minh);

  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease, background .12s ease;
}

/* Hover */
.hotel-wizard-form .elementor-field-subgroup .elementor-field-option > label:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow-hover);
}

/* ==================================================
   4) Selected State (ohne JS): input:checked + label
   ================================================== */
.hotel-wizard-form .elementor-field-type-radio input[type="radio"]:checked + label,
.hotel-wizard-form .elementor-field-type-checkbox input[type="checkbox"]:checked + label{
  border-color:var(--brand);
  box-shadow:var(--shadow-active);
  background:var(--active-bg);
}

/* ==================================================
   5) Fake Icon links (robust, ohne absolute ::after)
   ================================================== */

/* Basis Box links */
.hotel-wizard-form .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option > label::before,
.hotel-wizard-form .elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option > label::before{
  content:"";
  width:18px;
  height:18px;
  flex:0 0 18px;
  box-sizing:border-box;

  border:2px solid #bdbdbd;
  background:#fff;
  transition:border-color .12s ease, background .12s ease;
}

/* Radio rund */
.hotel-wizard-form .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option > label::before{
  border-radius:999px;
}

/* Checkbox eckig */
.hotel-wizard-form .elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option > label::before{
  border-radius:6px;
}

/* Radio checked: Punkt */
.hotel-wizard-form .elementor-field-type-radio input[type="radio"]:checked + label::before{
  border-color:var(--brand);
  background:radial-gradient(var(--brand) 0 45%, transparent 46%);
}

/* Checkbox checked: grün + Haken (zentriert, ohne absolute Position) */
.hotel-wizard-form .elementor-field-type-checkbox input[type="checkbox"]:checked + label::before{
  border-color:var(--brand);
  background-color:var(--brand);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' d='M1 5l3 3 7-7'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:center;
  background-size:12px 10px;
}

/* ==================================================
   SELECT (optional) – unverändert im Card Look
   ================================================== */
.hotel-wizard-form .elementor-field-type-select{
  position:relative;
}

.hotel-wizard-form .elementor-field-type-select select,
.hotel-wizard-form select.elementor-field{
  width:100%;
  min-height:56px;
  padding:14px 42px 14px 14px;

  border:1px solid var(--card-border);
  border-radius:var(--radius);
  background-color:var(--card-bg);
  cursor:pointer;

  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;

  font:inherit;
  line-height:1.2;

  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease, background .12s ease;
}

.hotel-wizard-form .elementor-field-type-select select:hover,
.hotel-wizard-form select.elementor-field:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow-hover);
}

.hotel-wizard-form .elementor-field-type-select select:focus,
.hotel-wizard-form select.elementor-field:focus{
  outline:none;
  border-color:var(--brand);
  box-shadow:var(--shadow-active);
  background:var(--active-bg);
}

/* Dropdown-Pfeil */
.hotel-wizard-form .elementor-field-type-select::after{
  content:"";
  position:absolute;
  right:16px;
  top:50%;
  width:9px;
  height:9px;
  transform:translateY(-50%) rotate(45deg);
  border-right:2px solid #777;
  border-bottom:2px solid #777;
  pointer-events:none;
}

.hotel-wizard-form .elementor-field-subgroup .elementor-field-option > label{
  padding:10px 10px !important;   /* weniger Innenabstand */
  min-height:26px !important;     /* kleinere Höhe */
  font-size:14px !important;      /* Text etwas kleiner */
  gap:8px !important;             /* weniger Abstand Icon/Text */
}

/* Icon links kleiner */
.hotel-wizard-form 
.elementor-field-type-radio label::before,
.hotel-wizard-form 
.elementor-field-type-checkbox label::before{
  width:16px !important;
  height:16px !important;
  flex:0 0 16px !important;
}/* End custom CSS */
/* Start custom CSS */:root{
  --brand-color:#006532;
  --brand:#006532;
  --wizard-header-h:80px;
  --wizard-footer-h:60px;
}

/* =========================================================
   WIZARD SHELL
   ========================================================= */
.wizard-shell{
  background:#fff;
  border-radius:18px;
  box-shadow:0 18px 50px rgba(0,0,0,.10);
  overflow:hidden;

  display:flex;
  flex-direction:column;

  height:calc(100vh - var(--wizard-header-h) - var(--wizard-footer-h));
  max-height:calc(100vh - var(--wizard-header-h) - var(--wizard-footer-h));
}

/* =========================================================
   HEADER
   ========================================================= */
.wizard-header{
  background:var(--brand);
  padding:18px 24px;
  color:#fff;
}

/* =========================================================
   BODY LAYOUT
   ========================================================= */
.wizard-body{
  flex:1 1 auto;
  min-height:500px;
  background-color: #fff;
  display:grid;
  grid-template-columns:1.2fr 0.8fr;
  gap:28px;
  padding:28px 28px 10px;

  align-items:start;

}

/* Linke Spalte: Form/Copy */
.hotel-wizard-form{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  align-items:stretch;

  min-height:0;
  overflow:hidden;
}

/* Desktop: Elementor Wrapper scrollt innen */
.hotel-wizard-form .elementor-form-fields-wrapper{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  padding-right:6px;
  margin-top:0 !important;
}

/* Rechte Spalte: Bild */
.hotel-wizard-picture{
  display:flex;
  align-items:flex-start;
  justify-content:center;

  min-height:0;
  overflow:hidden;
  position:relative;
}

/* =========================================================
   OPTION CARDS / GRID
   ========================================================= */
.option-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:12px;
}
@media (max-width:860px){
  .option-grid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}

.option-card{
  border:1px solid #e6e6e6;
  border-radius:14px;
  padding:14px 12px;

  display:flex;
  flex-direction:column;
  gap:10px;

  cursor:pointer;
  background:#fff;

  transition:box-shadow .15s ease, border-color .15s ease, transform .15s ease;

  /* safety gegen Overflow */
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  overflow:hidden;
}
.option-card:hover{
  box-shadow:0 10px 24px rgba(0,0,0,.08);
  transform:translateY(-1px);
}
.option-card.is-selected{
  border-color:var(--brand);
  box-shadow:0 10px 24px rgba(0,101,50,.18);
}

/* Text/Media in Cards robust */
.option-card *{
  min-width:0;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.option-card img,
.option-card svg{
  max-width:28px;
  max-height:28px;
  width:auto;
  height:auto;
}

/* =========================================================
   STEPPER (HEADER)
   ========================================================= */
.wizard-stepper{
  display:flex;
  align-items:center;
  gap:16px;
  padding:10px 0 20px;
}

.wizard-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:2px solid rgba(255,255,255,.55);
  background:rgba(255,255,255,.12);
  color:#fff;
  border-radius:999px;
  padding:8px 14px;
  font-weight:600;
  white-space:nowrap;
}

.wizard-line{
  flex:1;
  height:3px;
  background:rgba(255,255,255,.35);
  border-radius:99px;
  position:relative;
  overflow:hidden;
}
.wizard-line::before{
  content:"";
  position:absolute;
  inset:0;
  width:var(--wizard-progress, 0%);
  background:#fff;
  border-radius:99px;
  transition:width .25s ease;
}

.wizard-dots{
  display:flex;
  gap:10px;
  align-items:center;
}
.wizard-dot{
  width:12px;
  height:12px;
  border-radius:999px;
  background:rgba(255,255,255,.35);
  border:2px solid rgba(255,255,255,.25);
  transition:transform .15s ease, background .15s ease, border-color .15s ease;
}
.wizard-dot.is-active{
  background:#fff;
  border-color:#fff;
  transform:scale(1.08);
}

/* =========================================================
   ELEMENTOR: interne Indikatoren + Buttons ausblenden
   ========================================================= */
.elementor .hotel-wizard-form .e-form__indicators{ display:none !important; }
.hotel-wizard-form .e-form__buttons{ display:none !important; }

/* =========================================================
   FOOTER (Sticky)
   ========================================================= */
.wizard-footer{
  position:sticky;
  bottom:0;
  width:100%;
  z-index:999;

  background: red;
  border-top:1px solid #e6e6e6;
  padding:14px 18px;
}

.wizard-footer .wizard-footer-inner{
  max-width:1100px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.wizard-footer button{
  font-family:inherit;
  appearance:none;
  -webkit-appearance:none;
  border:none;
  background:none;
  text-decoration:none;
  outline:none;
}

/* Footer Buttons */
.wizard-footer .wizard-btn-back,
.wizard-footer .wizard-btn-next,
#wizard-start-btn,
.wizard-start-btn{
  border-radius:999px;
  min-height:48px;
  line-height:1;
  font-size:15px;

  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;

  cursor:pointer;
  box-sizing:border-box;

  /* robust gegen Text/Icons */
  max-width:100%;
  overflow:hidden;
}

.wizard-footer .wizard-btn-back{
  background:#fff;
  color:#4a4a4a;
  border:1px solid #d5d5d5;
  padding:12px 18px;
  font-weight:500;
  transition:background .15s ease, border-color .15s ease, transform .15s ease;
}
.wizard-footer .wizard-btn-back:hover{
  background:#f6f6f6;
  border-color:#c9c9c9;
}
.wizard-footer .wizard-btn-back:active{ transform:translateY(1px); }

.wizard-footer .wizard-btn-next,
#wizard-start-btn,
.wizard-start-btn{
  background:var(--brand-color);
  color:#fff;
  padding:12px 26px;
  font-weight:600;
  box-shadow:0 10px 24px rgba(0,101,50,.28);
  transition:transform .15s ease, box-shadow .15s ease, opacity .15s ease;
}
.wizard-footer .wizard-btn-next:hover,
#wizard-start-btn:hover,
.wizard-start-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(0,101,50,.35);
}
.wizard-footer .wizard-btn-next:active,
#wizard-start-btn:active,
.wizard-start-btn:active{
  transform:translateY(1px);
  box-shadow:0 8px 18px rgba(0,101,50,.22);
}

.wizard-footer .wizard-btn-next[disabled],
.wizard-footer .wizard-btn-back[disabled]{
  opacity:.55;
  cursor:not-allowed;
  box-shadow:none;
  transform:none;
}

/* Button-Text sauber (ellipsis wenn nötig) */
.wizard-footer .wizard-btn-back span,
.wizard-footer .wizard-btn-next span,
#wizard-start-btn span,
.wizard-start-btn span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* Button-Icons normalisieren */
.wizard-footer .wizard-btn-back svg,
.wizard-footer .wizard-btn-next svg,
.wizard-footer .wizard-btn-back img,
.wizard-footer .wizard-btn-next img,
#wizard-start-btn svg,
.wizard-start-btn svg,
#wizard-start-btn img,
.wizard-start-btn img{
  width:18px;
  height:18px;
  flex:0 0 18px;
  display:block;
}

/* =========================================================
   COPY (Überschrift + Erklärung pro Step)
   ========================================================= */
.wizard-copy .step-copy{ display:none; margin-bottom:14px; }
.wizard-copy .step-copy.active{ display:block; }

.wizard-h{
  margin:0 0 6px;
  font-size:24px;
  font-weight:800;
  line-height:1.2;
  color:var(--brand-color);
}
.wizard-p{
  margin:0;
  color:#6b6b6b;
  font-size:14px;
  line-height:1.5;
}

/* =========================================================
   STARTSCREEN
   ========================================================= */
#wizard-start-left{ display:none !important; }
.wizard-shell.is-start #wizard-start-left{ display:block !important; }

/* Step 1 Überschrift/Info ausblenden */
.wizard-shell.is-start .step-text.step-1{ display:none !important; }

/* sichtbaren Elementor-Step ausblenden */
.wizard-shell.is-start form.elementor-form .e-form__step:not(.elementor-hidden){
  display:none !important;
}

/* Footer Buttons ausblenden (Container bleibt) */
.wizard-shell.is-start .wizard-footer .wizard-footer-inner{
  visibility:hidden !important;
  pointer-events:none !important;
}

/* Optional: Footer Höhe behalten */
.wizard-shell.is-start .wizard-footer{ min-height:100px; }

/* Elementor Wrapper kollabieren */
.wizard-start-widget{ display:none !important; }
.wizard-shell.is-start .wizard-start-widget{ display:block !important; }

/* =========================================================
   STARTSCREEN BULLETS
   ========================================================= */
.wizard-bullets{
  list-style:none;
  padding:0;
  margin:12px 0 0 12px;
}
.wizard-bullets li{
  position:relative;
  padding-left:26px;
  margin-bottom:8px;
  color:#6b6b6b;
  font-size:14px;
  line-height:1.5;
}
.wizard-bullets li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--brand-color);
  font-weight:700;
  font-size:16px;
}

/* =========================================================
   MOBILE (≤768px): Full-Width, Bild aus, Footer Buttons untereinander
   ========================================================= */
@media (max-width: 768px){

  /* iOS/Android Viewport-Fix */
  .wizard-shell{
    height:auto;
    max-height:none;
    min-height:calc(100dvh - var(--wizard-header-h) - var(--wizard-footer-h));
  }

  .wizard-header{ padding:16px 16px; }

  .wizard-body{
    grid-template-columns:1fr;
    gap:0;
    padding:16px 14px 10px;
  }

  /* Bild weg */
  .hotel-wizard-picture{ display:none !important; }

  /* Mobile: lieber Seite scrollen lassen */
  .hotel-wizard-form{ overflow:visible; }
  .hotel-wizard-form .elementor-form-fields-wrapper{
    overflow-y:visible !important;
    padding-right:0 !important;
    max-height:none !important;
  }

  /* Optionen: 1 pro Zeile + volle Breite */
  .option-grid{
    grid-template-columns:1fr !important;
    width:100% !important;
    gap:10px !important;
  }
  .option-card{
    width:100% !important;
    max-width:100% !important;
  }

  /* Elementor Radio/Checkbox: volle Breite */
  .elementor-field-type-radio .elementor-field-subgroup,
  .elementor-field-type-checkbox .elementor-field-subgroup{
    display:flex !important;
    flex-direction:column !important;
    gap:10px;
    width:100% !important;
  }
  .elementor-field-type-radio .elementor-field-option,
  .elementor-field-type-checkbox .elementor-field-option{
    width:100% !important;
    max-width:100% !important;
    display:flex !important;
    align-items:center;
    box-sizing:border-box;
  }
  .elementor-field-type-radio .elementor-field-option label,
  .elementor-field-type-checkbox .elementor-field-option label{
    width:100% !important;
    display:flex !important;
    align-items:center;
    gap:12px;
    box-sizing:border-box;

    /* Texte nicht rauslaufen lassen */
    min-width:0;
    overflow-wrap:anywhere;
  }

  /* =========================================================
   MOBILE: ZURÜCK + WEITER NEBENEINANDER (50% / 50%)
   ========================================================= */
@media (max-width: 768px){

  /* Footer-Container: 2 Spalten */
  .wizard-footer .wizard-footer-inner{
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    align-items: stretch;
  }

  /* Nur Zurück & Weiter */
  .wizard-footer .wizard-btn-back,
  .wizard-footer .wizard-btn-next{
    width: 100% !important;
    max-width: 100%;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    box-sizing: border-box;

    /* Schutz vor Überlauf */
    overflow: hidden;
  }

  /* Text sauber umbrechen */
  .wizard-footer .wizard-btn-back span,
  .wizard-footer .wizard-btn-next span{
    min-width: 0;
    white-space: normal;
    text-align: center;
  }

  /* Icons / Pfeile skalieren */
  .wizard-footer .wizard-btn-back svg,
  .wizard-footer .wizard-btn-next svg,
  .wizard-footer .wizard-btn-back img,
  .wizard-footer .wizard-btn-next img{
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    display: block;
  }
}

/* Elementor Form Erfolgsmeldung ausblenden */
.elementor-message.elementor-message-success {
  display: none !important;
}/* End custom CSS */