/* Auszeit Site-Header (SSOT: agent/templates/partials/site-header.html)
   Zwei Ebenen, nur Hubs. Desktop (>=1100px): Hover/Fokus + Klick. Darunter: Burger + Akkordeon.
   Kontakt-Cluster rechts: Telefon (>=1280 mit Nummer, sonst Icon), WhatsApp, Termin, Anfrage. */
.site-header{
  --sh-ink:#1A1A1A;--sh-ink-soft:#232323;--sh-gold:#C9A84C;--sh-gold-deep:#A8883A;--sh-paper:#F5F3EF;
  --sh-line:rgba(201,168,76,.28);--sh-body:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  position:sticky;top:0;z-index:90;background:var(--sh-ink);border-bottom:1px solid var(--sh-line);
  font-family:var(--sh-body);color:var(--sh-paper);
}
.site-header.scrolled{background:rgba(26,26,26,.86);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.site-header .wrap{max-width:1280px}                      /* Header darf breiter sein als der Content-Wrap */
.site-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px;padding-block:7px}
.site-nav__logo{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}
.site-nav__logo img{height:64px;width:auto;display:block}
.site-nav__icon{width:20px;height:20px;flex:0 0 auto}

/* ---------- Ebene 1 ---------- */
.site-nav__primary{flex:1 1 auto;display:flex;justify-content:center;min-width:0}
.site-nav__list,.site-nav__sub{list-style:none;margin:0;padding:0}
.site-nav__list{display:flex;align-items:center;gap:0}
.site-nav__item{position:relative}
.site-nav__item--mobile-actions,.site-nav__item--mobile-footer{display:none}
.site-nav__item > a,.site-nav__toggle{
  display:inline-flex;align-items:center;gap:5px;padding:10px 9px;border:0;border-radius:2px;background:transparent;
  font:500 15px/1.2 var(--sh-body);color:var(--sh-paper);opacity:.8;text-decoration:none;cursor:pointer;white-space:nowrap;
  transition:opacity .15s ease,background .15s ease;
}
.site-nav__item > a:hover,.site-nav__toggle:hover,.site-nav__item > a:focus-visible,.site-nav__toggle:focus-visible,
.site-nav__toggle[aria-expanded="true"]{opacity:1;background:rgba(245,243,239,.06)}
.site-nav__item > a[aria-current="page"],.site-nav__toggle[data-current="true"]{opacity:1;box-shadow:inset 0 -2px 0 var(--sh-gold)}
.site-nav__item > a:focus-visible,.site-nav__toggle:focus-visible,.site-nav__burger:focus-visible,.site-nav__actions a:focus-visible,.site-nav__sub a:focus-visible{outline:2px solid var(--sh-gold);outline-offset:2px}
.site-nav__chevron{width:11px;height:11px;transition:transform .18s ease}
.site-nav__toggle[aria-expanded="true"] .site-nav__chevron{transform:rotate(180deg)}

/* ---------- Ebene 2 (Desktop-Dropdown) ---------- */
.site-nav__sub{
  display:none;position:absolute;top:calc(100% + 6px);left:0;min-width:260px;padding:8px 0;
  background:var(--sh-ink);border:1px solid rgba(201,168,76,.4);box-shadow:0 18px 40px rgba(0,0,0,.35);
}
.site-nav__sub::before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}
.site-nav__sub a{
  display:block;padding:11px 20px;font:500 14px/1.3 var(--sh-body);color:var(--sh-paper);text-decoration:none;
  opacity:.82;border-left:2px solid transparent;transition:opacity .15s ease,background .15s ease,border-color .15s ease;
}
.site-nav__sub a:hover,.site-nav__sub a:focus-visible{opacity:1;background:rgba(245,243,239,.06);border-left-color:var(--sh-gold)}
.site-nav__sub a[aria-current="page"]{opacity:1;border-left-color:var(--sh-gold);color:var(--sh-gold)}
@media(min-width:1100px){
  .site-nav__item--has-sub:hover > .site-nav__sub,
  .site-nav__item--has-sub:focus-within > .site-nav__sub,
  .site-nav__toggle[aria-expanded="true"] + .site-nav__sub{display:block}
}

/* ---------- Kontakt-Cluster rechts ---------- */
.site-nav__actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.site-nav__phone,.site-nav__whatsapp{
  display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 6px;border-radius:2px;
  color:var(--sh-paper);text-decoration:none;font:600 14px/1 var(--sh-body);font-variant-numeric:tabular-nums;
  transition:background .15s ease,color .15s ease;
}
.site-nav__phone .site-nav__icon,.site-nav__whatsapp .site-nav__icon{color:var(--sh-gold)}
.site-nav__phone:hover,.site-nav__whatsapp:hover{background:rgba(245,243,239,.06)}
.site-nav__phone-number{white-space:nowrap;border-bottom:1px solid var(--sh-gold);padding-bottom:1px}
.site-nav__termin{
  display:inline-block;padding:10px 13px;font:600 13px/1 var(--sh-body);color:var(--sh-paper);text-decoration:none;
  border:1.5px solid var(--sh-gold);border-radius:2px;white-space:nowrap;transition:background .15s ease,color .15s ease;
}
.site-nav__termin:hover,.site-nav__termin:focus-visible{background:var(--sh-gold);color:var(--sh-ink)}
.site-nav__termin-short{display:none}
.site-nav__anfrage{font:500 13px/1 var(--sh-body);color:var(--sh-paper);opacity:.82;text-decoration:none;border-bottom:1px solid var(--sh-line);white-space:nowrap}
.site-nav__anfrage:hover{opacity:1;border-bottom-color:var(--sh-gold)}
.site-nav__burger{display:none}

/* ---------- 1100-1279: Nummer wird zum Icon ---------- */
@media(max-width:1279px){
  .site-nav__phone-number{display:none}
  .site-nav__phone{padding:0 9px}
  .site-nav__item > a,.site-nav__toggle{padding:10px 9px;font-size:14px}
  .site-nav__actions{gap:8px}
}

/* ---------- <1100: Burger + Akkordeon ---------- */
@media(max-width:1099px){
  .site-nav{gap:8px}
  .site-nav__logo img{height:52px}
  .site-nav__anfrage{display:none}
  .site-nav__actions{gap:6px}
  .site-nav__phone,.site-nav__whatsapp{width:40px;min-height:40px;padding:0;justify-content:center;border:1px solid var(--sh-line)}
  .site-nav__termin{padding:10px 11px;font-size:12px}
  .site-nav__termin-long{display:none}
  .site-nav__termin-short{display:inline}
  .site-nav__burger{
    display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:0 10px;
    border:1px solid var(--sh-line);border-radius:2px;background:transparent;cursor:pointer;
  }
  .site-nav__burger span{display:block;height:2px;background:var(--sh-gold);transition:transform .2s ease,opacity .2s ease}
  .site-nav__burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .site-nav__burger[aria-expanded="true"] span:nth-child(2){opacity:0}
  .site-nav__burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

  .site-nav__primary{
    display:none;position:absolute;left:0;right:0;top:100%;max-height:calc(100vh - 70px);overflow:auto;
    background:var(--sh-ink);border-top:1px solid var(--sh-line);border-bottom:1px solid var(--sh-line);
    box-shadow:0 24px 40px rgba(0,0,0,.4);
  }
  .site-header.is-open .site-nav__primary{display:block}
  .site-nav__list{display:block;padding:0 0 14px}
  .site-nav__item{border-bottom:1px solid rgba(245,243,239,.08)}
  .site-nav__item > a,.site-nav__toggle{
    display:flex;width:100%;justify-content:space-between;padding:15px 20px;font-size:16px;opacity:.92;border-radius:0;white-space:normal;
  }
  .site-nav__item > a[aria-current="page"],.site-nav__toggle[data-current="true"]{box-shadow:inset 3px 0 0 var(--sh-gold)}
  .site-nav__chevron{width:14px;height:14px}
  .site-nav__sub{position:static;min-width:0;border:0;box-shadow:none;background:var(--sh-ink-soft);padding:4px 0 8px}
  .site-nav__sub::before{display:none}
  .site-nav__item--has-sub:hover > .site-nav__sub,.site-nav__item--has-sub:focus-within > .site-nav__sub{display:none}
  .site-nav__toggle[aria-expanded="true"] + .site-nav__sub{display:block}
  .site-nav__sub a{padding:12px 20px 12px 32px;font-size:15px}

  .site-nav__item--mobile-actions{display:flex;flex-wrap:wrap;gap:12px 22px;align-items:center;padding:16px 20px;background:rgba(201,168,76,.08)}
  .site-nav__mobile-phone{font:600 17px/1.2 var(--sh-body);font-variant-numeric:tabular-nums;color:var(--sh-paper);text-decoration:none;border-bottom:1px solid var(--sh-gold)}
  .site-nav__mobile-anfrage{font:600 15px/1.2 var(--sh-body);color:var(--sh-gold);text-decoration:none}
  .site-nav__item--mobile-footer{display:block;border-bottom:0;margin-top:6px}
  .site-nav__item--mobile-footer > a{font-size:14px;opacity:.7}
}
@media(prefers-reduced-motion:reduce){
  .site-nav__chevron,.site-nav__burger span,.site-nav__termin,.site-nav__sub a{transition:none}
}
