/* Atelier Backstage Header 1.1.0 — desktop navigation and independent submenu styles */
html body .ab-header-buttons { position:relative; display:block!important; width:max-content!important; max-width:100%; margin:0!important; padding:0!important; background:transparent!important; overflow:visible!important; z-index:50; }
html body .ab-header-buttons .ab-header-list { display:flex!important; flex-flow:row nowrap!important; justify-content:flex-start!important; align-items:center!important; gap:var(--ab-h-gap,15px)!important; padding:0!important; margin:0!important; list-style:none!important; width:max-content!important; max-width:none!important; overflow:visible!important; }
html body .ab-header-buttons .ab-header-item { display:block!important; flex:0 0 auto!important; position:relative!important; list-style:none!important; padding:0!important; margin:0!important; background:transparent!important; border:0!important; overflow:visible!important; }
html body .ab-header-buttons .ab-header-main { box-sizing:border-box!important; display:flex!important; flex-flow:row nowrap!important; align-items:stretch!important; height:var(--ab-h-height,44px)!important; border:0!important; box-shadow:inset 0 0 0 var(--ab-h-border,2px) var(--ab-h-border-color,var(--ab-h-color,#80399c))!important; border-radius:var(--ab-h-radius,5px)!important; background:var(--ab-h-bg,transparent)!important; overflow:hidden!important; transition:background-color .2s,color .2s,box-shadow .2s; }
html body .ab-header-buttons .ab-header-link { box-sizing:border-box!important; display:flex!important; align-items:center!important; justify-content:center!important; min-width:0!important; width:auto!important; max-width:none!important; min-height:0!important; height:100%!important; flex:1 0 auto!important; margin:0!important; padding:0 var(--ab-h-pad,12px)!important; border:0!important; border-radius:0!important; outline-offset:-3px!important; background:transparent!important; box-shadow:none!important; color:var(--ab-h-text,#80399c)!important; font-family:var(--ab-h-font,inherit)!important; font-size:var(--ab-h-size,14px)!important; font-weight:var(--ab-h-weight,600)!important; font-style:normal!important; text-decoration:none!important; text-align:center!important; white-space:nowrap!important; line-height:1.2!important; letter-spacing:normal!important; cursor:pointer; transition:transform .18s,color .18s; }
html body .ab-header-buttons .ab-header-toggle { display:flex!important; align-items:center!important; justify-content:center!important; align-self:stretch!important; flex:0 0 30px!important; width:30px!important; height:100%!important; padding:0!important; margin:0!important; border:0!important; border-left:var(--ab-h-divider,1px) solid currentColor!important; border-radius:0!important; background:transparent!important; color:var(--ab-h-text,#80399c)!important; cursor:pointer!important; box-shadow:none!important; opacity:.85; transition:color .2s,background .2s; }
html body .ab-header-buttons .ab-header-toggle svg { display:block!important; fill:none!important; transition:transform .2s; }
html body .ab-header-buttons .has-submenu.is-open .ab-header-toggle svg { transform:rotate(180deg); }
html body .ab-header-buttons .ab-header-item:hover >.ab-header-main,
html body .ab-header-buttons .ab-header-item:focus-within >.ab-header-main { background:var(--ab-h-hover,#80399c)!important; box-shadow:inset 0 0 0 var(--ab-h-hover-border,var(--ab-h-border,2px)) var(--ab-h-hover-border-color,var(--ab-h-hover,#80399c))!important; }
html body .ab-header-buttons .ab-header-item:hover >.ab-header-main .ab-header-link,
html body .ab-header-buttons .ab-header-item:focus-within >.ab-header-main .ab-header-link,
html body .ab-header-buttons .ab-header-item:hover >.ab-header-main .ab-header-toggle,
html body .ab-header-buttons .ab-header-item:focus-within >.ab-header-main .ab-header-toggle { color:var(--ab-h-hover-text,#fff)!important; }
html body .ab-header-buttons .ab-header-item:hover >.ab-header-main .ab-header-link {transform:scale(var(--ab-h-hover-scale,1));}
html body .ab-header-buttons .ab-header-item.is-active >.ab-header-main { background:var(--ab-h-active,#80399c)!important; box-shadow:inset 0 0 0 var(--ab-h-active-border,var(--ab-h-border,2px)) var(--ab-h-active-border-color,var(--ab-h-active,#80399c))!important; }
html body .ab-header-buttons .ab-header-item.is-active >.ab-header-main .ab-header-link,
html body .ab-header-buttons .ab-header-item.is-active >.ab-header-main .ab-header-toggle {color:var(--ab-h-active-text,#fff)!important;}
html body .ab-header-buttons .ab-header-link:focus-visible,
html body .ab-header-buttons .ab-header-toggle:focus-visible,
html body .ab-header-buttons .ab-sub-link:focus-visible { outline:2px solid #80399c!important; outline-offset:-3px!important; }
/* Independent dropdown panel. Pseudo-element bridges the intentional pointer gap. */
html body .ab-header-buttons .ab-submenu { box-sizing:border-box!important; display:flex!important; flex-direction:column!important; gap:var(--ab-sub-gap,4px)!important; position:absolute!important; z-index:999999!important; left:0!important; top:calc(100% + var(--ab-sub-offset,10px))!important; width:var(--ab-sub-width,240px)!important; max-width:min(480px,90vw)!important; min-width:180px!important; padding:var(--ab-sub-padding,10px)!important; margin:0!important; list-style:none!important; background:var(--ab-sub-paper,#fbfaf7)!important; border:var(--ab-sub-border-width,1px) solid var(--ab-sub-border-color,#e7dfe9)!important; border-radius:var(--ab-sub-radius,14px)!important; box-shadow:0 12px var(--ab-sub-shadow,18px) rgba(32,17,38,.18)!important; overflow:visible!important; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(5px); transition:opacity .16s,transform .16s,visibility .16s; }
html body .ab-header-buttons .ab-header-item[data-align="right"] > .ab-submenu { left:auto!important; right:0!important; }
html body .ab-header-buttons .ab-submenu::before { position:absolute; display:block; content:""; top:calc(0px - var(--ab-sub-offset,10px) - 2px); height:calc(var(--ab-sub-offset,10px) + 2px); left:0; right:0; }
html body .ab-header-buttons .ab-header-item:hover >.ab-submenu,
html body .ab-header-buttons .ab-header-item:focus-within >.ab-submenu,
html body .ab-header-buttons .ab-header-item.is-open >.ab-submenu { opacity:1!important; visibility:visible!important; pointer-events:auto!important; transform:translateY(0)!important; }
html body .ab-header-buttons.ab-sub-click-only .ab-header-item:hover >.ab-submenu:not(.is-open),
html body .ab-header-buttons.ab-sub-click-only .ab-header-item:focus-within >.ab-submenu:not(.is-open) { opacity:0!important; visibility:hidden!important; pointer-events:none!important; }
html body .ab-header-buttons .ab-subitem { list-style:none!important; margin:0!important; padding:0!important; background:transparent!important; border:0!important; line-height:1.2!important; }
html body .ab-header-buttons .ab-subitem .ab-sub-link { box-sizing:border-box!important; display:flex!important; align-items:center!important; justify-content:space-between!important; gap:14px!important; width:100%!important; height:auto!important; min-height:var(--ab-sub-item-height,42px)!important; margin:0!important; padding:8px var(--ab-sub-item-pad,12px)!important; border:0!important; border-radius:var(--ab-sub-item-radius-custom,var(--ab-sub-item-radius,7px))!important; background:var(--ab-sub-item-bg,transparent)!important; color:var(--ab-sub-item-text,var(--ab-sub-text,#80399c))!important; font-family:var(--ab-sub-item-font,var(--ab-sub-font,inherit))!important; font-size:var(--ab-sub-item-size,var(--ab-sub-size,14px))!important; font-weight:var(--ab-sub-item-weight,var(--ab-sub-weight,500))!important; line-height:1.35!important; text-decoration:none!important; text-align:left!important; white-space:normal!important; box-shadow:none!important; transition:background .15s,color .15s!important; }
html body .ab-header-buttons .ab-subitem .ab-sub-link:hover,
html body .ab-header-buttons .ab-subitem .ab-sub-link:focus-visible,
html body .ab-header-buttons .ab-subitem .ab-sub-link[aria-current="page"] { background:var(--ab-sub-item-hover-bg,var(--ab-sub-hover-bg,#80399c))!important; color:var(--ab-sub-item-hover-text,var(--ab-sub-hover-text,#fff))!important; }
html body .ab-header-buttons .ab-sub-arrow { flex:0 0 auto!important; display:inline-block!important; font:normal 500 19px/1 Inter,"Segoe UI Symbol","Noto Sans Symbols 2",Arial,sans-serif!important; transition:transform .15s; }
html body .ab-header-buttons .ab-sub-link:hover .ab-sub-arrow {transform:translateX(3px);}
@media(max-width:1200px){ html body .ab-header-buttons .ab-header-link {font-size:var(--ab-h-compact-size,13px)!important; padding:0 max(7px,calc(var(--ab-h-pad,12px) - 2px))!important;} }
@media(prefers-reduced-motion:reduce){html body .ab-header-buttons *,html body .ab-header-buttons *::before{transition:none!important;}}
body.ast-header-break-point #masthead .ab-header-buttons,body.ast-header-break-point .ab-header-buttons{display:none!important;}

/* Schutz vor altem Zusatz-CSS (Customizer): Alte Regeln wie "#masthead .ab-header-buttons a {border:2px … !important}" würden sonst die Einstellungen aus dem Plugin überdecken.
   Diese Regeln sind absichtlich spezifischer, damit die Plugin-Einstellungen (Normal / Hover / Aktiv) immer gewinnen. */
html body :is(#masthead,body) .ab-header-buttons.ab-header-buttons.ab-header-buttons .ab-header-link{
  border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;
  height:100%!important;min-height:0!important;width:auto!important;margin:0!important;
  padding:0 var(--ab-h-pad,12px)!important;
  color:var(--ab-h-text,#80399c)!important;font-family:var(--ab-h-font,inherit)!important;
  font-size:var(--ab-h-size,14px)!important;font-weight:var(--ab-h-weight,600)!important;text-decoration:none!important;
}
html body :is(#masthead,body) .ab-header-buttons.ab-header-buttons.ab-header-buttons .ab-header-item:hover>.ab-header-main .ab-header-link,
html body :is(#masthead,body) .ab-header-buttons.ab-header-buttons.ab-header-buttons .ab-header-item:focus-within>.ab-header-main .ab-header-link{
  color:var(--ab-h-hover-text,#fff)!important;transform:scale(var(--ab-h-hover-scale,1));background:transparent!important;border:0!important;
}
html body :is(#masthead,body) .ab-header-buttons.ab-header-buttons.ab-header-buttons .ab-header-item.is-active>.ab-header-main .ab-header-link{
  color:var(--ab-h-active-text,#fff)!important;background:transparent!important;border:0!important;
}
@media(max-width:1200px){
  html body :is(#masthead,body) .ab-header-buttons.ab-header-buttons.ab-header-buttons .ab-header-link{font-size:var(--ab-h-compact-size,13px)!important;padding:0 max(7px,calc(var(--ab-h-pad,12px) - 2px))!important;}
}

/* Altes Einbau-HTML (reine Links in Astras HTML-Element, ohne Shortcode): wird mit denselben Einstellungen gestaltet.
   Damit wirken Kontur, Farben, Hover und Aktiv auch dann, wenn der Shortcode noch nicht eingesetzt wurde. */
html body :is(#masthead,body) .ab-header-buttons.ab-header-buttons:not(:has(> .ab-header-list)){
  display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:flex-start!important;
  gap:var(--ab-h-gap,15px)!important;width:max-content!important;max-width:100%;margin:0!important;padding:0!important;
}
html body :is(#masthead,body) .ab-header-buttons.ab-header-buttons:not(:has(> .ab-header-list)) p{display:contents!important}
html body :is(#masthead,body) .ab-header-buttons.ab-header-buttons:not(:has(> .ab-header-list)) br{display:none!important}
html body :is(#masthead,body) .ab-header-buttons.ab-header-buttons a:not(.ab-header-link):not(.ab-sub-link){
  box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important;
  height:var(--ab-h-height,44px)!important;min-height:var(--ab-h-height,44px)!important;margin:0!important;
  padding:0 var(--ab-h-pad,12px)!important;
  border:0!important;box-shadow:inset 0 0 0 var(--ab-h-border,2px) var(--ab-h-border-color,var(--ab-h-color,#80399c))!important;
  border-radius:var(--ab-h-radius,5px)!important;background:var(--ab-h-bg,transparent)!important;
  color:var(--ab-h-text,#80399c)!important;text-decoration:none!important;
  font-family:var(--ab-h-font,inherit)!important;font-size:var(--ab-h-size,14px)!important;font-weight:var(--ab-h-weight,600)!important;
  line-height:1.2!important;text-align:center!important;white-space:nowrap!important;
  transition:background-color .2s,color .2s,box-shadow .2s,transform .2s;
}
html body :is(#masthead,body) .ab-header-buttons.ab-header-buttons a:not(.ab-header-link):not(.ab-sub-link):is(:hover,:active){
  background:var(--ab-h-hover,#80399c)!important;color:var(--ab-h-hover-text,#fff)!important;
  box-shadow:inset 0 0 0 var(--ab-h-hover-border,var(--ab-h-border,2px)) var(--ab-h-hover-border-color,var(--ab-h-hover,#80399c))!important;transform:scale(var(--ab-h-hover-scale,1));
}
html body :is(#masthead,body) .ab-header-buttons.ab-header-buttons a:not(.ab-header-link):not(.ab-sub-link):is([aria-current="page"],.is-active){
  background:var(--ab-h-active,#80399c)!important;color:var(--ab-h-active-text,#fff)!important;
  box-shadow:inset 0 0 0 var(--ab-h-active-border,var(--ab-h-border,2px)) var(--ab-h-active-border-color,var(--ab-h-active,#80399c))!important;
}
html body :is(#masthead,body) .ab-header-buttons.ab-header-buttons a:not(.ab-header-link):not(.ab-sub-link):focus-visible{outline:3px solid var(--ab-h-color,#80399c);outline-offset:3px}
@media(max-width:1200px){
  html body :is(#masthead,body) .ab-header-buttons.ab-header-buttons a:not(.ab-header-link):not(.ab-sub-link){font-size:var(--ab-h-compact-size,13px)!important;padding:0 max(7px,calc(var(--ab-h-pad,12px) - 2px))!important}
}
