/* Fixed contact shortcut: always on the right-hand side, vertically centered. */
.kraft-floating-whatsapp {
  position: fixed !important;
  top: 50% !important;
  right: 20px !important;
  bottom: auto !important;
  left: auto !important;
  transform: translateY(-50%) !important;
  z-index: 9999 !important;
}
@media (max-width: 767px) {
  .kraft-floating-whatsapp {
    right: 12px !important;
    top: 50% !important;
  }
}
/* Treatments overview: price call-to-action must be legible before hover. */
.kraft-element-bf24ae6 .kraft-button {
  background: #cfb68d !important;
  border-color: #cfb68d !important;
  color: #090909 !important;
  fill: #090909 !important;
}
.kraft-element-bf24ae6 .kraft-button .kraft-button-text { color: #090909 !important; }

/* Ratgeber: retain exactly one visible CTA in every timeline card. */
.post-horizontal-timeline .ue-btn-holder .ue-btn ~ .ue-btn { display: none !important; }

/* Sticky behavior without changing the original Ratgeber header appearance. */
header.kraft-location-header.kraft-static-is-sticky {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: 0 !important;
  z-index: 10000 !important;
  width: 100% !important;
}

/* Index: flip the four-pillars portrait so the model sits away from the left-aligned title. */
.kraft-34 .kraft-element.kraft-element-38cdc7e {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.kraft-34 .kraft-element.kraft-element-c799daa {
  position: relative !important;
  isolation: isolate;
  min-height: 640px !important;
  padding-top: 54px !important;
  padding-bottom: 54px !important;
  overflow: hidden;
  background-image: none !important;
}
.kraft-34 .kraft-element.kraft-element-c799daa::before {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: block;
  content: "";
  pointer-events: none;
  background: url("../images/index-praezision-aesthetische-medizin-wien.jpg") center center / cover no-repeat;
  transform: scaleX(-1);
}
.kraft-34 .kraft-element.kraft-element-c799daa > .k-con-inner {
  position: relative;
  z-index: 1;
}
.kraft-34 .kraft-element.kraft-element-e9199de {
  width: 48% !important;
  margin-left: 4% !important;
}
.kraft-34 .kraft-element.kraft-element-10a07f0 > .kraft-widget-container {
  margin-bottom: 38px !important;
}
.kraft-34 .kraft-element.kraft-element-10a07f0 .kraft-heading-title {
  max-width: 620px !important;
  text-align: left !important;
  font-size: clamp(48px, 5vw, 78px) !important;
  line-height: 1.05 !important;
}
@media (max-width: 767px) {
  .kraft-34 .kraft-element.kraft-element-c799daa { min-height: 0 !important; padding: 46px 15px !important; }
  .kraft-34 .kraft-element.kraft-element-e9199de { width: 100% !important; margin-left: 0 !important; }
  .kraft-34 .kraft-element.kraft-element-10a07f0 .kraft-heading-title { text-align: center !important; font-size: clamp(42px, 12vw, 62px) !important; }
}

/* WhatsApp form readability */
#book-appointment .kraft-heading-title,
form[data-whatsapp-form] .kraft-consent,
form[data-whatsapp-form] .kraft-consent label,
form[data-whatsapp-form] .kraft-whatsapp-note {
  color: #ffffff !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.82) !important;
}
form[data-whatsapp-form] .kraft-consent {
  font-size: 15px !important;
  line-height: 1.45 !important;
}
form[data-whatsapp-form] .kraft-consent a {
  color: #d8bd87 !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
form[data-whatsapp-form] .kraft-whatsapp-note {
  font-size: 13px !important;
  line-height: 1.45 !important;
  opacity: .92 !important;
}
form[data-whatsapp-form] .kraft-form-form-control::placeholder { color: #59677b !important; opacity: 1 !important; }

/* Treatments dropdown: shared desktop presentation */
@media (min-width: 1025px) {
  /* Override index.css margin-top (0,6,1) — same selector, loads later, wins */
  .kraft-21 .kraft-element.kraft-element-1a116a0a .kraft-nav-menu--main > .kraft-nav-menu > li > .kraft-nav-menu--dropdown {
    margin: 0 !important;
  }

  .kraft-location-header .kraft-nav-menu--main .menu-item-has-children { position: relative; }
  .kraft-location-header .kraft-nav-menu--main .menu-item-has-children > .sub-menu.kraft-nav-menu--dropdown {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    z-index: 10020 !important;
    width: 270px !important;
    min-width: 270px !important;
    padding: 6px 0 !important;
    border: none !important;
    border-top: 2px solid #CFB68D !important;
    background: #090909 !important;
    background-color: #090909 !important;
    box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;
  }
  .kraft-location-header .kraft-nav-menu--main .sub-menu.kraft-nav-menu--dropdown li {
    display: block !important;
    margin: 0 !important;
    border: none !important;
    background: none !important;
  }
  .kraft-location-header .kraft-nav-menu--main .sub-menu.kraft-nav-menu--dropdown a {
    display: block !important;
    padding: 9px 22px !important;
    color: rgba(255,255,255,.82) !important;
    background: transparent !important;
    font-family: "Montserrat", sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 400 !important;
    letter-spacing: 0.03em !important;
    line-height: 1.4 !important;
    text-transform: none !important;
    white-space: normal !important;
    border: none !important;
    border-left: none !important;
    transition: color .15s ease, background-color .15s ease;
  }
  .kraft-location-header .kraft-nav-menu--main .sub-menu.kraft-nav-menu--dropdown a:hover,
  .kraft-location-header .kraft-nav-menu--main .sub-menu.kraft-nav-menu--dropdown a:focus {
    color: #CFB68D !important;
    background: rgba(207,182,141,.08) !important;
  }
}
