/* SCHRAEGER v87 – der goldene Footer-CTA als einheitliches Button-System */
body.schraeger-global-theme a.button {
  position: relative !important;
  isolation: isolate;
  overflow: hidden !important;
  min-height: 48px;
  padding: .72rem 1.25rem !important;
  border: 1px solid rgba(238,213,163,.72) !important;
  border-radius: 999px !important;
  background: linear-gradient(110deg,#bd9254,#ecd29e,#c69b5d) !important;
  background-size: 220% 100% !important;
  box-shadow: 0 14px 34px rgba(29,34,36,.2), inset 0 1px rgba(255,255,255,.38) !important;
  animation: schraeger-v87-button-flow 4s ease-in-out infinite alternate !important;
  transition: transform .42s cubic-bezier(.16,1,.3,1), box-shadow .42s ease !important;
}

body.schraeger-global-theme a.button::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: -40%;
  left: -55%;
  width: 34%;
  height: 180%;
  background: linear-gradient(90deg,transparent,rgba(255,255,255,.44),transparent);
  transform: rotate(16deg);
  transition: left .85s cubic-bezier(.16,1,.3,1);
  pointer-events: none;
}

body.schraeger-global-theme a.button .button_bg {
  background: transparent !important;
  opacity: 0 !important;
}

body.schraeger-global-theme .schraeger-founders-cta > a.button::before {
  display: none !important;
  content: none !important;
}

body.schraeger-global-theme a.button .text-button,
body.schraeger-global-theme a.button .button_text-mask {
  position: relative;
  z-index: 2;
  color: #171b1d !important;
  -webkit-text-fill-color: #171b1d !important;
  font-family: Manrope,Arial,sans-serif !important;
  font-weight: 700 !important;
}

body.schraeger-global-theme a.button:hover,
body.schraeger-global-theme a.button:focus-visible {
  transform: translateY(-3px) scale(1.025) !important;
  box-shadow: 0 20px 44px rgba(29,34,36,.26), 0 0 28px rgba(217,187,130,.2) !important;
}

body.schraeger-global-theme a.button:hover::after,
body.schraeger-global-theme a.button:focus-visible::after { left: 125%; }

/* Normale Header-Navigation bleibt Textnavigation; nur Termin buchen wird zum Gold-CTA. */
body.schraeger-global-theme .navbar_menu > a.button:not(.schraeger-booking-cta) {
  min-height: 38px !important;
  padding: .55rem .82rem !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  animation: none !important;
}

body.schraeger-global-theme .navbar_menu > a.button:not(.schraeger-booking-cta)::after {
  display: none !important;
  content: none !important;
}

body.schraeger-global-theme .navbar_menu > a.button:not(.schraeger-booking-cta):hover,
body.schraeger-global-theme .navbar_menu > a.button:not(.schraeger-booking-cta):focus-visible {
  transform: translateY(-1px) !important;
  box-shadow: none !important;
}

body.schraeger-global-theme .navbar_menu > a.button.schraeger-booking-cta {
  min-height: 40px !important;
  padding: .56rem 1rem !important;
  border: 1px solid rgba(238,213,163,.78) !important;
  background: linear-gradient(110deg,#b7894d,#efd7a6,#c3985a) !important;
  background-size: 220% 100% !important;
  box-shadow: 0 9px 24px rgba(36,41,43,.18), inset 0 1px rgba(255,255,255,.4) !important;
  animation: schraeger-v87-button-flow 4s ease-in-out infinite alternate !important;
}

body.schraeger-global-theme .navbar_menu > a.button.schraeger-booking-cta .text-button,
body.schraeger-global-theme .navbar_menu > a.button.schraeger-booking-cta .button_text-mask {
  color: #171b1d !important;
  -webkit-text-fill-color: #171b1d !important;
}

body.schraeger-global-theme .navbar_menu > a.button.schraeger-booking-cta:hover {
  transform: translateY(-2px) scale(1.02) !important;
  box-shadow: 0 13px 30px rgba(36,41,43,.24), 0 0 20px rgba(217,187,130,.16) !important;
}

@keyframes schraeger-v87-button-flow {
  from { background-position:0% 50%; }
  to { background-position:100% 50%; }
}

@media (prefers-reduced-motion:reduce) {
  body.schraeger-global-theme a.button { animation:none !important; }
  body.schraeger-global-theme a.button::after { display:none !important; }
}
