/* Autor: Henrik Rost. Ausschließlich markierter Elementor-Header. */
body > header.akjs-elementor-header-nav {
  position:absolute!important; inset:0 0 auto!important; z-index:100!important;
  height:auto!important; min-height:0!important; padding:5rem!important;
  margin:0!important; background:transparent!important; overflow:visible!important;
}
body > header.akjs-elementor-header-nav .nav-box { bottom:auto!important; }
body:has(>header.akjs-elementor-header-nav)>main { width:100%!important; max-width:none!important; padding:0!important; margin:0!important; }
.akjs-elementor-hero.akjs-elementor-hero {
  --akjs-hero-height:26rem;
  position:relative; isolation:isolate; border-radius:0!important;
  min-height:var(--akjs-hero-height)!important; width:100%; max-width:none;
  padding:18rem max(1rem,calc((100vw - 1140px)/2)) 2rem!important;
  display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end;
  overflow:visible;
}
html[data-akjs-header-height="large"] .akjs-elementor-hero { --akjs-hero-height:52rem; }
.akjs-elementor-hero > .elementor-background-slideshow,
.akjs-elementor-hero > .elementor-background-video-container { overflow:hidden; border-radius:0!important; pointer-events:none; }
.akjs-elementor-hero .akjs-hero-titlebox {
  position:relative; z-index:2; width:min(100%,53.625rem); order:2;
  border-radius:12px; padding:2rem; box-shadow:0 4px 40px #00000018;
}
.akjs-elementor-hero .akjs-hero-titlebox h1 { margin:0; overflow-wrap:anywhere; font-size:var(--akjs-type-h1,clamp(28px,3vw,40px))!important; line-height:1.2!important; }
.akjs-elementor-hero .akjs-hero-toggle { position:relative; flex:0 0 auto; width:auto!important; order:1; z-index:3; align-self:center; }
.akjs-elementor-hero .akjs-hero-toggle .elementor-button {
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  min-height:32px; min-width:76px; padding:6px 10px; font-size:12px!important; border:1px solid transparent;
  border-radius:999px; background:#e6e9f1; color:#002776; text-decoration:none; line-height:1.4;
}
.akjs-elementor-hero .akjs-hero-toggle .elementor-button:is(:hover,:focus-visible) { background:#d9dfeb; color:#002776; }
.akjs-elementor-hero .akjs-hero-toggle .elementor-button::before { content:'→'; }
.akjs-elementor-hero .akjs-hero-toggle .elementor-button:focus-visible { outline:3px solid #002776; outline-offset:3px; }
.akjs-elementor-hero .akjs-hero-toggle[hidden] { display:none!important; }
.akjs-elementor-hero[data-akjs-playing="false"] .elementor-background-slideshow__slide__image { animation-play-state:paused!important; }
.akjs-elementor-hero .elementor-background-slideshow__slide__image { border-radius:0!important; }
@media(max-width:767px) {
  body>header.akjs-elementor-header-nav { padding:1rem!important; }
  .akjs-elementor-hero.akjs-elementor-hero { --akjs-hero-height:24rem; padding:14rem 1rem 1.5rem!important; }
  html[data-akjs-header-height="large"] .akjs-elementor-hero { --akjs-hero-height:40rem; }
  .akjs-elementor-hero .akjs-hero-titlebox { padding:1.5rem; width:100%; }
}
@media(prefers-reduced-motion:reduce) {
  .akjs-elementor-hero:not([data-akjs-motion-opt-in="true"]) .elementor-background-slideshow__slide__image { animation:none!important; }
}

body > header.akjs-elementor-header-nav .topbar .wp-block-group { translate:0 0!important; }
body > header.akjs-elementor-header-nav .topbar .akjs-header-size-toggle {
  display:inline-flex!important; align-items:center; justify-content:center;
  width:36px!important; height:36px!important; min-height:36px!important; padding:0!important;
  border:0!important; border-radius:6px; flex:0 0 36px; background:#002776!important; cursor:pointer;
}
body > header.akjs-elementor-header-nav .akjs-header-size-toggle:focus-visible { outline:2px solid white; outline-offset:2px; }
body > header.akjs-elementor-header-nav .akjs-header-size-toggle svg { display:block; width:24px; height:24px; }
html[data-akjs-header-height="large"] .akjs-header-size-toggle svg rect:first-child { height:12px; }
html[data-akjs-header-height="large"] .akjs-header-size-toggle svg rect:last-child { y:17px; height:4px; }

body > header.akjs-elementor-header-nav.akjs-elementor-header-nav.akjs-elementor-header-nav { background-image:none!important; }

body > header.akjs-elementor-header-nav .topbar .wp-block-group { display:flex!important; flex-wrap:nowrap!important; width:max-content!important; min-width:168px!important; align-items:center!important; padding:8px 12px!important; gap:4px!important; }
body > header.akjs-elementor-header-nav .topbar :is(.wp-block-group__inner-container,.wp-block-buttons) { display:flex!important; flex-wrap:nowrap!important; width:max-content!important; align-items:center!important; gap:4px!important; }
body > header.akjs-elementor-header-nav .topbar .wp-block-group > * { flex:0 0 auto!important; margin-top:0!important; margin-bottom:0!important; }

.akjs-elementor-hero .akjs-hero-caption { display:flex!important; flex-direction:row!important; flex-wrap:nowrap!important; align-items:center!important; gap:12px!important; width:100%!important; padding:0!important; margin:0!important; }
@media(max-width:767px){.akjs-elementor-hero .akjs-hero-caption {flex-wrap:wrap!important;}}

@media(max-width:767px) {
 body > header.akjs-elementor-header-nav { padding:4.5rem 1rem 1rem!important; }
 body > header.akjs-elementor-header-nav .topbar { display:block!important; top:.5rem!important; padding:0!important; }
 body > header.akjs-elementor-header-nav .topbar-inner.container { display:block!important; width:100%!important; max-width:none!important; margin:0!important; padding:0 1rem!important; }
 body > header.akjs-elementor-header-nav .topbar-widget-right { display:flex!important; margin:0!important; }
}

/* Eigenständige Steuerung in der unteren linken Headerecke; Titel bleibt unabhängig. */
.akjs-elementor-hero .akjs-hero-caption { position:static!important; }
body > :is(main,.akjs-shop-header-shell) .akjs-elementor-hero .akjs-hero-toggle {
 position:absolute!important; left:5px!important; bottom:5px!important; top:auto!important; right:auto!important;
 margin:0!important; padding:0!important; width:auto!important; z-index:3;
}
body > :is(main,.akjs-shop-header-shell) .akjs-elementor-hero .akjs-hero-toggle .elementor-button {
 border-radius:0 8px 0 0!important; min-height:28px!important; min-width:68px!important;
 padding:4px 8px!important; font-size:12px!important; line-height:1.3!important;
 display:inline-flex!important; align-items:center!important; justify-content:center!important;
 gap:6px!important; transform:none!important;
}

.akjs-elementor-hero + .e-con { margin-top:clamp(2rem,4vw,4rem); }
