/* Assenso Panels & Instagram v1.1.1 – keine Theme-Dateien werden ersetzt. */
.assenso-panel-backdrop[hidden], .assenso-panel[hidden] { display:none !important; }
.assenso-panel-backdrop {
  position:fixed; inset:0; z-index:999980;
  background:rgba(0,0,0,.54); opacity:0;
  transition:opacity .32s ease;
}
.assenso-panel-backdrop.is-open { opacity:1; }
.assenso-panel {
  position:fixed; top:0; right:0; bottom:0;
  width:min(var(--assenso-panel-width,730px),100vw); max-width:100vw;
  height:100vh; height:100dvh;
  z-index:999981; overflow-y:auto; overscroll-behavior:contain;
  box-sizing:border-box; -webkit-overflow-scrolling:touch;
  transform:translate3d(105%,0,0); visibility:hidden;
  transition:transform .38s cubic-bezier(.2,.8,.2,1),visibility .38s;
  color:var(--assenso-panel-fg,#fff) !important;
  font-family:inherit; border-radius:18px 0 0 18px;
  box-shadow:-14px 0 45px rgba(0,0,0,.16);
}
.assenso-panel.is-open { transform:translate3d(0,0,0); visibility:visible; }
.assenso-panel--termine {
  background:var(--assenso-termine-bg,#000) !important;
  --assenso-panel-fg:var(--assenso-termine-fg,#fff);
  --assenso-body-size:var(--assenso-termine-body,27px);
  --assenso-heading-size:var(--assenso-termine-heading,39px);
}
.assenso-panel--bewerbung {
  background:var(--assenso-bewerbung-bg,#9fbddd) !important;
  --assenso-panel-fg:var(--assenso-bewerbung-fg,#fff);
  --assenso-body-size:var(--assenso-bewerbung-body,27px);
  --assenso-heading-size:var(--assenso-bewerbung-heading,39px);
}
.assenso-panel-inner {
  padding:clamp(72px,8vh,112px) min(var(--assenso-panel-padding,56px),8vw) 54px;
}
.assenso-panel h2,.assenso-panel h3,.assenso-panel p,
.assenso-panel li,.assenso-panel strong,.assenso-panel em,
.assenso-panel span,.assenso-panel div { color:var(--assenso-panel-fg,#fff) !important; opacity:1 !important; }
.assenso-panel h2 {
  font-family:inherit; font-size:var(--assenso-heading-size,39px) !important;
  font-weight:650 !important; line-height:1.32 !important;
  margin:0 0 24px !important; letter-spacing:0;
}
.assenso-panel h3 {
  font-family:inherit; font-size:min(var(--assenso-heading-size,39px),29px) !important;
  font-weight:650 !important; line-height:1.4 !important;
  margin:22px 0 8px !important;
}
.assenso-panel p,.assenso-panel li {
  font-size:var(--assenso-body-size,27px) !important;
  font-weight:400 !important; line-height:1.6 !important;
  margin:0 0 14px !important;
}
.assenso-panel .assenso-hours { line-height:1.8 !important; }
.assenso-panel .assenso-booking-link { margin:-4px 0 0 !important; }
.assenso-panel a { color:var(--assenso-panel-fg,#fff) !important; text-decoration:underline !important; text-underline-offset:3px; }
.assenso-panel--termine .assenso-booking-link a {
  color:#fff !important; background:var(--assenso-booking-accent,#f00000);
  box-decoration-break:clone; -webkit-box-decoration-break:clone;
  display:inline; padding:.05em .12em; font-weight:700;
  text-decoration:underline !important;
}
.assenso-panel .assenso-phone-link { white-space:nowrap; }
.assenso-panel .assenso-job-list { list-style:none; padding:0 !important; margin:0 0 48px !important; }
.assenso-panel .assenso-job-list li { padding:0 !important; margin:0 0 7px !important; }
.assenso-panel .assenso-job-list li::before { content:'/ '; white-space:pre; }
.assenso-panel .assenso-job-contact { margin:0 0 54px !important; }
.assenso-panel-close {
  position:absolute; right:20px; top:18px; z-index:2;
  width:47px; height:47px; border:0; border-radius:50%;
  background:rgba(255,255,255,.13) !important; color:var(--assenso-panel-fg,#fff) !important;
  font-size:37px !important; line-height:1 !important;
  display:grid; place-items:center; cursor:pointer;
  padding:0; transition:background-color .2s;
}
.assenso-panel-close:hover { background:rgba(255,255,255,.25) !important; }
.assenso-panel :focus-visible { outline:2px solid currentColor; outline-offset:4px; }
html.assenso-panel-open,body.assenso-panel-open { overflow:hidden !important; }

/* Salient Logo bleibt unberührt. JS fügt das Icon daneben ein. */
#header-outer .assenso-instagram-header {
  position:absolute !important; z-index:20;
  width:var(--assenso-insta-size,40px); height:var(--assenso-insta-size,40px);
  display:none; align-items:center; justify-content:center;
  color:var(--assenso-insta-solid,#fff) !important;
  background:transparent !important; border:0 !important;
  text-decoration:none !important; padding:1px !important;
  box-shadow:none !important; box-sizing:border-box;
  transform:translateY(-50%);
}
#header-outer .assenso-instagram-header.assenso-instagram-ready { display:flex; }
#header-outer.transparent .assenso-instagram-header { color:var(--assenso-insta-transparent,#000) !important; }
#header-outer .assenso-instagram-header.assenso-instagram-solid { color:var(--assenso-insta-solid,#fff) !important; }
#header-outer .assenso-instagram-header svg { display:block; width:100%; height:100%; fill:none; stroke:none; }
#header-outer .assenso-instagram-header svg rect,
#header-outer .assenso-instagram-header svg circle:first-of-type { stroke-width:var(--assenso-insta-stroke,2); }
#header-outer .assenso-instagram-header:focus-visible { outline:2px solid currentColor; outline-offset:4px; }
@media (max-width:690px) {
  .assenso-panel { border-radius:0; }
  .assenso-panel-inner { padding:83px 25px 40px; }
  .assenso-panel h2 { font-size:min(var(--assenso-heading-size,39px),29px) !important; }
  .assenso-panel h3 { font-size:min(var(--assenso-heading-size,29px),22px) !important; }
  .assenso-panel p,.assenso-panel li { font-size:min(var(--assenso-body-size,27px),20px) !important; }
  #header-outer .assenso-instagram-header {
    width:min(var(--assenso-insta-size,40px),32px);
    height:min(var(--assenso-insta-size,40px),32px);
  }
}
@media (prefers-reduced-motion:reduce) {
  .assenso-panel,.assenso-panel-backdrop { transition:none !important; }
}
