/* Praxis Balzer – Bewegung. Drei Zeiten, eine Kurve. Alles Verstecken nur unter html.js
   UND ohne reduzierte Bewegung (P1). Animiert werden nur transform und opacity (P5). */
:root{--pb-micro:180ms;--pb-ui:320ms;--pb-reveal:680ms;--pb-kurve:cubic-bezier(.22,1,.36,1);}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion:no-preference){
  /* Hero-Kaskade */
  html.js:not(.pb-still) .pb-hero .pb-hero-el{opacity:0;transform:translateY(22px);transition:opacity var(--pb-reveal) var(--pb-kurve) var(--pb-verzug,0ms),transform var(--pb-reveal) var(--pb-kurve) var(--pb-verzug,0ms);}
  html.js:not(.pb-still) .pb-hero.pb-los .pb-hero-el{opacity:1;transform:none;}
  /* Hero-Bild: kaum merkliches Heranzoomen – „teuer“, nicht „Effekt“ */
  html.js:not(.pb-still) .pb-hero .cb-tor img{transform:scale(1.06);transition:transform 1400ms var(--pb-kurve) 520ms;}
  html.js:not(.pb-still) .pb-hero.pb-los .cb-tor img{transform:none;}
  /* Die Sonne geht auf: einmalig, langsam – das eine verspielte Detail der Seite */
  html.js:not(.pb-still) .pb-hero .cb-tor::before{opacity:0;transform:translateY(24px) scale(.9);transition:opacity 1600ms var(--pb-kurve) 700ms,transform 1600ms var(--pb-kurve) 700ms;}
  html.js:not(.pb-still) .pb-hero.pb-los .cb-tor::before{opacity:1;transform:none;}
  /* Einblenden beim Scrollen */
  html.js:not(.pb-still) .pb-rein{opacity:0;transform:translateY(24px);transition:opacity var(--pb-reveal) var(--pb-kurve) var(--pb-verzug,0ms),transform var(--pb-reveal) var(--pb-kurve) var(--pb-verzug,0ms);}
  html.js:not(.pb-still) .pb-rein.pb-da{opacity:1;transform:none;}
  /* FAQ: Antwort gleitet sanft herein */
  .cb .cb-faq details[open]>div{animation:pb-faq var(--pb-ui) var(--pb-kurve);}
  @keyframes pb-faq{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:none;}}
  /* Mikrointeraktionen */
  .cb .elementor-button:active{transform:translateY(1px) scale(.98)!important;}
  .cb .cb-karte-btn .elementor-button-text::after{content:"→";display:inline-block;margin-left:.4em;transition:transform var(--pb-micro) var(--pb-kurve);}
  .cb .cb-karte:hover .cb-karte-btn .elementor-button-text::after{transform:translateX(4px);}
  .cb .cb-menu .elementor-nav-menu--main .elementor-item::after{transform-origin:left;}
  /* Mobile Menü: Punkte folgen nacheinander */
  .cb .cb-menu .elementor-nav-menu--dropdown[aria-hidden="false"] .menu-item{animation:pb-menu var(--pb-ui) var(--pb-kurve) both;}
  .cb .cb-menu .elementor-nav-menu--dropdown .menu-item:nth-child(2){animation-delay:40ms}.cb .cb-menu .elementor-nav-menu--dropdown .menu-item:nth-child(3){animation-delay:80ms}.cb .cb-menu .elementor-nav-menu--dropdown .menu-item:nth-child(4){animation-delay:120ms}.cb .cb-menu .elementor-nav-menu--dropdown .menu-item:nth-child(5){animation-delay:160ms}.cb .cb-menu .elementor-nav-menu--dropdown .menu-item:nth-child(6){animation-delay:200ms}
  @keyframes pb-menu{from{opacity:0;transform:translateX(12px);}to{opacity:1;transform:none;}}
  /* Anrufleiste mobil */
  .cb .cb-anrufleiste{transition:transform var(--pb-ui) var(--pb-kurve),opacity var(--pb-ui) var(--pb-kurve);}
  .cb .cb-anrufleiste.pb-weg{transform:translateY(110%);opacity:0;}
}
/* Urlaubshinweis */
.cb .cb-urlaub{background:var(--sonne-hell,#FFF6A7);color:var(--ink,#3B322E);border-radius:12px;padding:12px 16px;font-weight:500;margin-bottom:16px;}
.cb .cb-sprechzeiten{list-style:none;margin:0 0 .6em;padding:0;}
/* P4: globaler Reset */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .pb-rein,.pb-hero-el,.cb-tor img,.cb-tor::before{opacity:1!important;transform:none!important;transition:none!important;}
  .cb *,.cb *::before,.cb *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}
  .cb .cb-karte>.elementor-widget-wrap:hover,.cb .elementor-button:hover{transform:none!important;}
}
