/* Lameyer – individuelle Navigation, scoped auf #lameyer-site-header */
@font-face { font-family:'Lameyer Quicksand'; src:url('./Quicksand_Light.otf') format('opentype'); font-style:normal; font-weight:300; font-display:swap; }
.elementor-location-header { min-height: 94px; }
.elementor-location-header #lameyer-site-header {
  position: fixed; inset: 0 0 auto; width: 100%; z-index: 9990;
}
body.admin-bar .elementor-location-header #lameyer-site-header { top: 32px; }
#lameyer-site-header, #lameyer-site-header * { box-sizing: border-box; }
#lameyer-site-header {
  --lm-green:#aec958; --lm-charcoal:#575755; --lm-ink:#293133;
  background:var(--lm-charcoal); color:#fff;
  border-bottom:2px solid var(--lm-green);
  box-shadow:0 8px 26px rgba(15,25,14,.13);
  font-family:'Lameyer Quicksand', Quicksand, 'Trebuchet MS', Arial, sans-serif;
}
#lameyer-site-header .lm-bar {
  display:flex; align-items:center; justify-content:space-between;
  gap:22px; margin:0 auto; max-width:1280px;
  height:94px; padding:0 28px;
  transition:height .22s ease;
}
#lameyer-site-header .lm-brand { flex:0 0 auto; display:flex; align-items:center; }
#lameyer-site-header .lm-brand img {
  display:block; width:125px; height:auto; max-width:100%;
  transition:width .22s ease;
}
#lameyer-site-header.lm-scrolled .lm-bar { height:76px; }
#lameyer-site-header.lm-scrolled .lm-brand img { width:107px; }
#lameyer-site-header .lm-desktop-nav { min-width:0; flex:1; }
#lameyer-site-header .lm-desktop-links {
  display:flex; flex-direction:row; flex-wrap:nowrap; align-items:center;
  justify-content:flex-end; gap:clamp(8px,.9vw,18px);
  margin:0; padding:0; list-style:none;
}
#lameyer-site-header .lm-desktop-links li { padding:0; margin:0; list-style:none; }
#lameyer-site-header .lm-desktop-links a {
  position:relative; display:block; padding:12px 0;
  color:#f7f8f5; font-size:13.5px; line-height:1.25;
  font-weight:600; text-decoration:none; white-space:nowrap;
  transition:color .18s ease;
}
#lameyer-site-header .lm-desktop-links a::after {
  content:""; position:absolute; left:0; right:0; bottom:4px;
  height:2px; border-radius:2px; background:var(--lm-green);
  transform:scaleX(0); transform-origin:center; transition:transform .2s ease;
}
#lameyer-site-header .lm-desktop-links a:hover,
#lameyer-site-header .lm-desktop-links .current-menu-item > a,
#lameyer-site-header .lm-desktop-links .current_page_item > a { color:var(--lm-green); }
#lameyer-site-header .lm-desktop-links a:hover::after,
#lameyer-site-header .lm-desktop-links .current-menu-item > a::after,
#lameyer-site-header .lm-desktop-links .current_page_item > a::after { transform:scaleX(1); }
#lameyer-site-header a:focus-visible, #lameyer-site-header button:focus-visible {
  outline:3px solid var(--lm-green); outline-offset:3px;
}
#lameyer-site-header .lm-open-button { display:none; }
#lameyer-site-header .lm-backdrop {
  position:fixed; inset:0; background:rgba(10,20,16,.55);
  backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px);
  z-index:10; opacity:0; visibility:hidden; pointer-events:none;
  transition:opacity .25s ease, visibility .25s ease;
}
#lameyer-site-header .lm-drawer {
  position:fixed; top:0; right:0; bottom:0; z-index:11;
  width:min(400px,92vw); max-height:100dvh;
  display:flex; flex-direction:column;
  background:#fbfcf9; color:var(--lm-ink);
  border-radius:20px 0 0 20px;
  box-shadow:-18px 0 54px rgba(0,0,0,.20);
  transform:translateX(105%); visibility:hidden; pointer-events:none;
  transition:transform .28s cubic-bezier(.2,.7,.2,1), visibility .28s;
  overflow:hidden;
}
#lameyer-site-header.lm-open .lm-backdrop { opacity:1; visibility:visible; pointer-events:auto; }
#lameyer-site-header.lm-open .lm-drawer { transform:translateX(0); visibility:visible; pointer-events:auto; }
#lameyer-site-header .lm-drawer-top {
  display:flex; align-items:center; justify-content:space-between;
  gap:20px; padding:23px 22px 18px; flex:0 0 auto;
}
#lameyer-site-header .lm-drawer-heading { display:flex; flex-direction:column; gap:3px; }
#lameyer-site-header .lm-drawer-heading span {
  font-size:10px; letter-spacing:.14em; color:#65715b; font-weight:700;
}
#lameyer-site-header .lm-drawer-heading strong {
  font-size:25px; line-height:1.2; color:var(--lm-ink); font-weight:700;
}
#lameyer-site-header .lm-close-button {
  display:grid; place-items:center; flex:0 0 44px; width:44px; height:44px;
  border:0; border-radius:13px; background:#edf3db; color:#39452b;
  cursor:pointer; transition:background .18s ease;
}
#lameyer-site-header .lm-close-button:hover { background:#dcebb5; }
#lameyer-site-header .lm-mobile-nav {
  flex:1 1 auto; overflow-y:auto; overscroll-behavior:contain;
  min-height:0; padding:4px 10px 12px;
}
#lameyer-site-header .lm-mobile-links { margin:0; padding:0; list-style:none; }
#lameyer-site-header .lm-mobile-links li { margin:0; padding:0; list-style:none; }
#lameyer-site-header .lm-mobile-links a {
  display:flex; align-items:center; min-height:51px;
  margin:2px 0; padding:13px 15px;
  border-radius:12px; color:var(--lm-ink); background:transparent;
  font-size:16px; font-weight:600; line-height:1.35;
  text-decoration:none; transition:background .16s ease, color .16s ease;
}
#lameyer-site-header .lm-mobile-links a:hover,
#lameyer-site-header .lm-mobile-links .current-menu-item > a,
#lameyer-site-header .lm-mobile-links .current_page_item > a {
  color:#32401e; background:#edf3db;
}
#lameyer-site-header .lm-drawer-bottom {
  flex:0 0 auto; padding:18px 20px max(22px,env(safe-area-inset-bottom));
  border-top:1px solid #e3e9dc; background:#f3f6ee;
  display:flex; flex-direction:column; gap:9px;
}
#lameyer-site-header .lm-drawer-bottom > span { font-size:13px; color:#566052; }
#lameyer-site-header .lm-call {
  display:flex; align-items:center; justify-content:space-between; gap:14px;
  min-height:47px; padding:11px 15px; border-radius:12px;
  color:#26331b; font-size:15px; font-weight:700;
  text-decoration:none; background:var(--lm-green);
}
#lameyer-site-header .lm-call:hover { background:#bdd978; }
html.lm-menu-lock, body.lm-menu-lock { overflow:hidden !important; }
@media (max-width:1259px) {
  .elementor-location-header { min-height:80px; }
  #lameyer-site-header .lm-bar, #lameyer-site-header.lm-scrolled .lm-bar { height:80px; padding:0 20px; }
  #lameyer-site-header .lm-brand img, #lameyer-site-header.lm-scrolled .lm-brand img { width:113px; }
  #lameyer-site-header .lm-desktop-nav { display:none; }
  #lameyer-site-header .lm-open-button {
    display:inline-flex; align-items:center; justify-content:center; gap:10px;
    min-height:47px; padding:9px 14px; border:1px solid rgba(255,255,255,.2);
    border-radius:12px; background:rgba(255,255,255,.1);
    font-size:14px; font-weight:700; color:#fff; cursor:pointer;
    transition:background .18s ease;
  }
  #lameyer-site-header .lm-open-button:hover { background:rgba(255,255,255,.19); }
}
@media (max-width:600px) {
  #lameyer-site-header .lm-bar, #lameyer-site-header.lm-scrolled .lm-bar { height:76px; padding:0 14px; }
  .elementor-location-header { min-height:76px; }
  #lameyer-site-header .lm-brand img, #lameyer-site-header.lm-scrolled .lm-brand img { width:106px; }
  #lameyer-site-header .lm-open-label { display:none; }
  #lameyer-site-header .lm-open-button { width:47px; height:47px; padding:0; }
  #lameyer-site-header .lm-drawer { width:min(370px,94vw); border-radius:16px 0 0 16px; }
  #lameyer-site-header .lm-drawer-top { padding:20px 18px 16px; }
  #lameyer-site-header .lm-mobile-links a { font-size:15.5px; min-height:50px; padding:13px 14px; }
}
@media (max-width:782px) {
  body.admin-bar .elementor-location-header #lameyer-site-header { top:46px; }
}
@media (prefers-reduced-motion:reduce) {
  #lameyer-site-header, #lameyer-site-header * { transition-duration:0.01ms !important; }
}

/* LAMEYER HAMBURGER OVERRIDE START */
@media (max-width:1259px) {
  #lameyer-site-header .lm-open-label {
    display:none !important;
  }

  #lameyer-site-header .lm-open-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:0;
    width:48px;
    height:48px;
    min-height:48px;
    padding:0;
    border:0 !important;
    border-radius:14px;
    background:transparent !important;
    box-shadow:none !important;
    color:#ffffff;
    cursor:pointer;
    transition:
      transform .18s ease,
      color .18s ease,
      background .18s ease;
  }

  #lameyer-site-header .lm-open-button svg {
    width:26px;
    height:26px;
    display:block;
    stroke:currentColor;
  }

  #lameyer-site-header .lm-open-button:hover,
  #lameyer-site-header .lm-open-button:focus-visible {
    color:var(--lm-green);
    background:rgba(255,255,255,.08) !important;
    transform:translateY(-1px);
  }

  #lameyer-site-header .lm-open-button:focus-visible {
    outline:2px solid rgba(174,201,88,.55);
    outline-offset:3px;
  }
}

@media (max-width:600px) {
  #lameyer-site-header .lm-open-button {
    width:46px;
    height:46px;
    min-height:46px;
    border-radius:13px;
  }

  #lameyer-site-header .lm-open-button svg {
    width:25px;
    height:25px;
  }
}
/* LAMEYER HAMBURGER OVERRIDE END */

/* LAMEYER DRAWER REFINED START */
#lameyer-site-header .lm-drawer-top {
  align-items:flex-start;
  gap:16px;
  padding:26px 22px 18px;
}

#lameyer-site-header .lm-drawer-heading-wrap {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:14px;
}

#lameyer-site-header .lm-drawer-logo {
  display:block;
  width:88px;
  height:auto;
  opacity:.78;
  filter:saturate(.92);
}

#lameyer-site-header .lm-drawer-heading {
  display:flex;
  flex-direction:column;
  gap:4px;
}

#lameyer-site-header .lm-drawer-heading span {
  font-size:10px;
  letter-spacing:.18em;
  color:#7a8472;
}

#lameyer-site-header .lm-drawer-heading strong {
  font-size:23px;
  line-height:1.15;
  font-weight:600;
  color:var(--lm-ink);
}

#lameyer-site-header .lm-close-button {
  width:48px;
  height:48px;
  flex:0 0 48px;
  border-radius:16px;
  background:#eef3df;
  color:#4b5940;
}

#lameyer-site-header .lm-mobile-nav {
  padding:6px 16px 18px;
}

#lameyer-site-header .lm-mobile-links a {
  min-height:54px;
  padding:14px 14px;
  border-radius:14px;
  font-size:16px;
  font-weight:500;
  letter-spacing:.01em;
}

#lameyer-site-header .lm-drawer-bottom {
  align-items:center;
  text-align:center;
  padding:20px 22px max(24px,env(safe-area-inset-bottom));
  background:#f4f6ef;
}

#lameyer-site-header .lm-drawer-bottom > span {
  display:block;
  width:100%;
  text-align:center;
  font-size:15px;
  line-height:1.45;
  color:#5f6859;
}

#lameyer-site-header .lm-call {
  width:100%;
  max-width:290px;
  min-height:54px;
  justify-content:center;
  gap:10px;
  padding:14px 18px;
  border-radius:16px;
  background:linear-gradient(180deg, #b7d35e 0%, #a8c54f 100%);
  color:#26331b;
  font-size:16px;
  font-weight:700;
  box-shadow:0 10px 24px rgba(174,201,88,.22);
}

#lameyer-site-header .lm-call:hover {
  background:linear-gradient(180deg, #c0db69 0%, #aec958 100%);
  transform:translateY(-1px);
}

#lameyer-site-header .lm-call span {
  font-size:16px;
}

@media (max-width:600px) {
  #lameyer-site-header .lm-drawer {
    width:min(380px,94vw);
  }

  #lameyer-site-header .lm-drawer-top {
    padding:22px 18px 14px;
  }

  #lameyer-site-header .lm-drawer-logo {
    width:82px;
  }

  #lameyer-site-header .lm-drawer-heading strong {
    font-size:21px;
  }

  #lameyer-site-header .lm-mobile-nav {
    padding:4px 12px 14px;
  }

  #lameyer-site-header .lm-mobile-links a {
    min-height:52px;
    padding:13px 12px;
    font-size:15.5px;
  }

  #lameyer-site-header .lm-drawer-bottom {
    padding:18px 18px max(22px,env(safe-area-inset-bottom));
  }

  #lameyer-site-header .lm-call {
    max-width:none;
    width:100%;
    min-height:52px;
    border-radius:15px;
    font-size:15.5px;
  }
}
/* LAMEYER DRAWER REFINED END */


/* LAMEYER KONTRAST 41 START */

@media (max-width:1259px) {

  #lameyer-site-header .lm-mobile-links a {
    color:#293133 !important;
    font-family:Quicksand, "Trebuchet MS", Arial, sans-serif;
    font-size:17px;
    font-weight:600 !important;
    letter-spacing:0;
    opacity:1 !important;
  }

  #lameyer-site-header .lm-mobile-links a:hover,
  #lameyer-site-header .lm-mobile-links .current-menu-item > a,
  #lameyer-site-header .lm-mobile-links .current_page_item > a {
    color:#25331e !important;
    background:#edf3db;
  }

  #lameyer-site-header .lm-drawer-heading span {
    color:#4a5844;
    font-weight:600;
  }

  #lameyer-site-header .lm-drawer-bottom > span {
    color:#45533f;
    font-size:14px;
    font-weight:600;
    text-align:center;
  }

  #lameyer-site-header .lm-call {
    color:#25331e !important;
    font-size:16px;
    font-weight:700;
    letter-spacing:0;
  }

  #lameyer-site-header .lm-call-icon {
    width:19px;
    height:19px;
    flex-shrink:0;
    stroke:currentColor;
    fill:none;
  }
}

@media (max-width:600px) {
  #lameyer-site-header .lm-mobile-links a {
    font-size:16.5px;
    font-weight:600 !important;
  }
}

/* LAMEYER KONTRAST 41 END */

