/* Ergänzungen für den statischen Nachbau (ersetzt die onepage-Runtime) */
html { scroll-behavior: smooth; }
section[id] { scroll-margin-top: 0; }
body { overflow-x: hidden; }

/* Slider: Übergang, der sonst per JS gesetzt wird */
.con-kit-component-slider__items { transition: transform .5s ease; }
.con-kit-component-slider__items.no-anim { transition: none !important; }

/* FAQ-Akkordeon */
.con-kit-component-list-item-accordion__body { height: 0; }
.con-kit-component-list-item-accordion--open .con-kit-component-list-item-accordion__body { height: auto; transform: none; }

/* Mobiles Menü */
.tm-burger { display: none; }
.tm-mobile-menu { display: none; }

@media (max-width: 992px) {
  .con-kit-molecule-header-v2 [data-atom="menu-v2"],
  .con-kit-molecule-header-v2 [data-atom="social"],
  .con-kit-molecule-header-v2 [data-atom="link-group"] { display: none !important; }
  .con-kit-molecule-header-v2__atoms { display: flex; align-items: center; justify-content: space-between; }
  .tm-burger {
    display: flex; align-items: center; justify-content: center;
    width: 44px; height: 44px; margin-left: auto; padding: 0;
    background: transparent; border: 0; color: #fff; cursor: pointer;
  }
  .tm-burger span, .tm-burger span::before, .tm-burger span::after {
    display: block; width: 24px; height: 2px; background: currentColor; position: relative; content: "";
  }
  .tm-burger span::before { position: absolute; top: -7px; }
  .tm-burger span::after { position: absolute; top: 7px; }

  .tm-mobile-menu {
    display: block; position: fixed; inset: 0; z-index: 10000;
    background: rgba(0,0,0,.23); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
    opacity: 0; visibility: hidden; transition: opacity .3s ease, visibility .3s;
  }
  .tm-mobile-menu.is-open { opacity: 1; visibility: visible; }
  .tm-mobile-menu__panel {
    margin: 12px; padding: 20px 24px 28px; border-radius: 8px; background: #000; color: #fff;
    transform: translateY(-10%); transition: transform .6s cubic-bezier(0,.89,.13,.99);
  }
  .tm-mobile-menu.is-open .tm-mobile-menu__panel { transform: none; }
  .tm-mobile-menu__top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
  .tm-mobile-menu__top img { height: 48px; width: auto; }
  .tm-mobile-menu__close { background: none; border: 0; color: #fff; font-size: 32px; line-height: 1; cursor: pointer; padding: 4px 8px; }
  .tm-mobile-menu ul { list-style: none; margin: 0; padding: 0; }
  .tm-mobile-menu li a {
    display: block; padding: 12px 0; color: #fff; text-decoration: none;
    font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 18px;
  }
  .tm-mobile-menu__actions { display: flex; align-items: center; gap: 16px; margin-top: 20px; }
  .tm-mobile-menu__actions .tm-btn {
    display: inline-block; padding: 14px 28px; border-radius: 16px; background: #fff; color: #2B2A2B;
    font-family: 'Poppins', sans-serif; font-weight: 800; font-size: 15px; text-decoration: none;
  }
  .tm-mobile-menu__actions .tm-insta svg { width: 28px; height: 28px; }
  html.tm-menu-open, html.tm-menu-open body { overflow: hidden; }
}

/* Raster auf kleinen Bildschirmen einspaltig (onepage setzt das per JS) */
@media (max-width: 768px) {
  .con-kit-component-grid-list[class*="--columns-"] > .con-kit-component-grid-list-item { width: 100% !important; }
  .con-kit-component-grid-list > .con-kit-component-grid-list-item { margin-right: 0 !important; }
}
