/* One canonical header/footer design for every public page, including legal pages.
   Loaded AFTER page-specific CSS to normalize previously differing page styles. */
#farb-shared-header,#seitenfuss{--shell-ink:#312b27;--shell-paper:#fffaf0;--shell-bg:#fbf3df;--shell-accent:#b95e49;--shell-border:#3b332d;color:var(--shell-ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
#farb-shared-header{position:sticky!important;top:0!important;z-index:100!important;background:#fbf3dff5!important;border:0!important;border-bottom:1px solid #e2d2bf!important;backdrop-filter:blur(14px);box-shadow:0 3px 20px #62412c0a}
#farb-shared-header *,#seitenfuss *{box-sizing:border-box}
#farb-shared-header .wrap,#seitenfuss .wrap{width:min(1180px,calc(100% - 36px))!important;max-width:1180px!important;margin:0 auto!important}
#farb-shared-header nav#v10-nav{min-height:76px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;position:relative;flex-wrap:nowrap!important}
#farb-shared-header a{text-decoration:none!important;color:inherit}
#farb-shared-header nav .brand{display:flex!important;align-items:center!important;gap:11px!important;font-weight:900!important;flex-shrink:0!important;font-size:17px!important;line-height:1.25!important;white-space:nowrap!important}
#farb-shared-header nav .brand img{width:50px!important;height:50px!important;object-fit:contain!important;border-radius:50%!important;background:white!important;border:0!important;box-shadow:none!important;padding:0!important}
#farb-shared-header #v10-links{display:flex!important;align-items:center!important;gap:20px!important;font-size:14px!important;font-weight:750!important;line-height:1.35!important;flex-direction:row!important}
#farb-shared-header #v10-links .menu-link{display:inline-block!important;padding:11px 1px!important;white-space:nowrap!important;font-size:inherit!important;line-height:inherit!important}
#farb-shared-header #v10-links .menu-link:hover,#farb-shared-header #v10-links .menu-link:focus-visible{text-decoration:underline!important}
#farb-shared-header #v10-links .menu-group{position:relative!important;order:initial!important}
#farb-shared-header #v10-links .menu-trigger{display:inline-flex!important;align-items:center!important;gap:8px!important;background:#844D5C!important;color:#fff!important;border:1px solid #734251!important;border-radius:13px!important;padding:11px 18px!important;box-shadow:0 5px 14px #78412b29!important;font:inherit!important;font-weight:800!important;white-space:nowrap!important;cursor:pointer!important;min-height:44px!important;transition:background .18s ease,box-shadow .18s ease,transform .18s ease}
#farb-shared-header #v10-links .menu-dropdown{position:absolute!important;top:calc(100% + 10px)!important;right:0!important;left:auto!important;z-index:105!important;min-width:252px!important;padding:10px!important;background:#fffaf3!important;border:1px solid #e5d2bd!important;border-radius:16px!important;box-shadow:0 18px 42px #59402c24!important;transform:none!important;max-height:75vh;overflow:auto;overscroll-behavior:contain}
#farb-shared-header #v10-links .menu-dropdown[hidden]{display:none!important}
#farb-shared-header #v10-links .menu-dropdown a{display:block!important;color:#45372e!important;padding:13px 14px!important;border-radius:10px!important;white-space:normal!important;font-size:14px!important;font-weight:700!important;line-height:1.45!important;transition:background .16s ease,border-color .16s ease,transform .16s ease}
#farb-shared-header #v10-links .menu-dropdown a:hover,#farb-shared-header #v10-links .menu-dropdown a:focus-visible{background:#f3e6d5!important;text-decoration:none!important}
#farb-shared-header #v10-links .menu-trigger:hover{background:#70404F!important;box-shadow:0 7px 17px #844D5C31!important;transform:translateY(-1px)}
#farb-shared-header #v10-links .menu-trigger[aria-expanded="true"]{background:#70404F!important}
#farb-shared-header #v10-links .menu-dropdown a:focus-visible,#farb-shared-header #v10-toggle:focus-visible,#farb-shared-header #v10-quick-reserve:focus-visible,#farb-shared-header #v10-links .menu-link:focus-visible{outline:2px solid #9e513d!important;outline-offset:3px!important}
#farb-shared-header #v10-links .menu-dropdown a + a{margin-top:3px}
#farb-shared-header #v10-toggle{display:none!important}
#farb-shared-header #v10-quick-reserve{display:none!important}
#seitenfuss{display:block!important;background:#f1e2c8!important;color:#675b51!important;border:0!important;border-top:1px solid var(--shell-border)!important;margin:0!important;padding:30px 0 23px!important;font-size:14px!important;line-height:1.5!important}
#seitenfuss .footer-v10{display:block!important}
#seitenfuss .footer-v10-main{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:28px!important;flex-wrap:wrap!important}
#seitenfuss .footer-v10-brand{display:flex!important;align-items:center!important;gap:14px!important}
#seitenfuss .footer-v10-brand>img{width:50px!important;height:50px!important;object-fit:contain!important;flex:0 0 50px!important}
#seitenfuss .footer-v10-brand>div{display:grid!important;gap:2px!important}
#seitenfuss .footer-v10-brand strong{font-size:20px!important;font-family:Georgia,serif!important;color:var(--shell-ink)!important;font-weight:750!important}
#seitenfuss .footer-v10-brand span{font-size:13px!important}
#seitenfuss .footer-v10-links{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:18px!important;font-size:14px!important;font-weight:750!important}
#seitenfuss a{color:inherit!important;text-decoration:none!important}
#seitenfuss a:hover{text-decoration:underline!important}
#seitenfuss .footer-v10-demo{font-size:10px!important;opacity:.75!important}
#seitenfuss .footer-v10-bottom{display:flex!important;justify-content:space-between!important;gap:15px!important;flex-wrap:wrap!important;margin-top:21px!important;padding-top:14px!important;border-top:1px solid #cbbfae!important;color:#746e65!important;font-size:12px!important;font-weight:400!important}
/* Warmes, ruhiges Menüdesign: mobile Navigation und Buchung bleiben getrennt. */
@media(max-width:1120px){
 #farb-shared-header #v10-nav{gap:8px!important}
 #farb-shared-header nav .brand span{display:none!important}
 #farb-shared-header #v10-toggle,#farb-shared-header #v10-quick-reserve{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:44px!important;gap:8px!important;cursor:pointer!important;white-space:nowrap!important;
  border-radius:13px!important;font:inherit!important;font-size:14px!important;font-weight:800!important;
  line-height:1.1!important;letter-spacing:.01em!important;
  transition:background .18s ease,box-shadow .18s ease,border-color .18s ease,transform .18s ease
 }
 #farb-shared-header #v10-toggle{
  padding:10px 14px!important;border:1px solid #d7c2aa!important;
  background:#fffaf2!important;color:#554135!important;box-shadow:0 3px 10px #5c392313!important
 }
 #farb-shared-header #v10-toggle::before{
  content:"";display:block;width:17px;height:16px;flex:0 0 17px;
  background:linear-gradient(currentColor,currentColor) 0 2px/17px 2px no-repeat,
             linear-gradient(currentColor,currentColor) 0 7px/17px 2px no-repeat,
             linear-gradient(currentColor,currentColor) 0 12px/17px 2px no-repeat;
  opacity:.85
 }
 #farb-shared-header #v10-toggle:hover,#farb-shared-header #v10-toggle[aria-expanded="true"]{
  background:#f2e4d1!important;border-color:#c6a589!important
 }
 #farb-shared-header #v10-quick-reserve{
  margin-left:auto!important;padding:10px 15px!important;
  border:1px solid #734251!important;background:#844D5C!important;color:#fff!important;
  box-shadow:0 5px 13px #844D5C30!important;min-width:0!important
 }
 #farb-shared-header #v10-quick-reserve::before{content:"✦";font-size:15px;font-weight:500;line-height:1;opacity:.9}
 #farb-shared-header #v10-quick-reserve:hover,#farb-shared-header #v10-quick-reserve[aria-expanded="true"]{
  background:#70404F!important;box-shadow:0 6px 16px #844D5C3d!important
 }
 #farb-shared-header #v10-links{
  display:none!important;position:absolute!important;top:calc(100% + 9px)!important;left:0!important;right:0!important;
  z-index:101!important;padding:12px!important;flex-direction:column!important;align-items:stretch!important;
  gap:5px!important;background:#fffaf3!important;border:1px solid #e6d3bb!important;border-radius:18px!important;
  box-shadow:0 18px 42px #59402c25!important;
  max-height:calc(100vh - 105px)!important;max-height:calc(100dvh - 105px)!important;
  overflow-y:auto!important;overscroll-behavior:contain;scrollbar-width:thin
 }
 #farb-shared-header #v10-links.is-open{display:flex!important}
 #farb-shared-header #v10-links .menu-link{
  display:flex!important;align-items:center!important;min-height:52px!important;padding:13px 15px!important;
  border:1px solid transparent!important;border-radius:12px!important;white-space:normal!important;
  font-size:14px!important;font-weight:750!important;line-height:1.4!important;color:#493a30!important;
  text-decoration:none!important;transition:background .16s ease,border-color .16s ease
 }
 #farb-shared-header #v10-links .menu-link:hover,#farb-shared-header #v10-links .menu-link:focus-visible{
  background:#f4e8d9!important;border-color:#ead7c1!important;text-decoration:none!important
 }
 #farb-shared-header #v10-links .menu-link[aria-current="page"]{
  color:#9a503e!important;background:#f8ebe0!important
 }
 /* Im Seitenmenü nur Navigation, im Reservieren-Feld nur die vier Angebote. */
 #farb-shared-header #v10-links .menu-group{display:none!important;order:-1!important;width:100%!important}
 #farb-shared-header #v10-links.is-reserving{background:linear-gradient(150deg,#fff6ea,#f9eadb)!important;border-color:#e2c6ad!important}
 #farb-shared-header #v10-links.is-reserving .menu-group{display:block!important}
 #farb-shared-header #v10-links.is-reserving > .menu-link{display:none!important}
 #farb-shared-header #v10-links .menu-trigger{display:none!important}
 #farb-shared-header #v10-links .menu-dropdown{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:9px!important;
  position:static!important;right:auto!important;left:auto!important;top:auto!important;
  min-width:0!important;width:100%!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;
  box-shadow:none!important;max-height:none!important;overflow:visible!important
 }
 #farb-shared-header #v10-links .menu-dropdown[hidden]{display:none!important}
 #farb-shared-header #v10-links .menu-dropdown a{
  display:flex!important;align-items:center!important;min-height:59px!important;
  margin:0!important;padding:14px 16px!important;border:1px solid #ead8c5!important;
  border-radius:13px!important;background:#fffdf8!important;box-shadow:0 2px 9px #59402c0c!important;
  font-size:15px!important;font-weight:750!important;line-height:1.35!important;
  color:#44362d!important;text-decoration:none!important;white-space:normal!important;
  transition:background .16s ease,border-color .16s ease,transform .16s ease
 }
 #farb-shared-header #v10-links .menu-dropdown a:hover,#farb-shared-header #v10-links .menu-dropdown a:focus-visible{
  background:#f7e6d6!important;border-color:#cfaa8c!important;text-decoration:none!important;transform:translateY(-1px)
 }
}
@media(min-width:600px) and (max-width:1120px){
 #farb-shared-header #v10-links.is-reserving .menu-dropdown{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:370px){
 #farb-shared-header #v10-toggle,#farb-shared-header #v10-quick-reserve{font-size:13px!important;gap:6px!important;padding:9px 10px!important}
 #farb-shared-header nav .brand img{width:44px!important;height:44px!important}
}
@media(prefers-reduced-motion:reduce){
 #farb-shared-header #v10-toggle,#farb-shared-header #v10-quick-reserve,
 #farb-shared-header #v10-links .menu-link,#farb-shared-header #v10-links .menu-dropdown a,
 #farb-shared-header #v10-links .menu-trigger{transition:none!important;transform:none!important}
}
@media(max-width:560px){#seitenfuss .footer-v10-main{align-items:flex-start!important;flex-direction:column!important}#seitenfuss .footer-v10-links{gap:13px!important}#farb-shared-header .wrap,#seitenfuss .wrap{width:calc(100% - 26px)!important}}

/* Header-Menü mit originalem aufklappbarem Reservierungsdropdown. */
#farb-shared-header #v10-group-button .menu-chevron{display:inline-block!important;font-size:1rem;line-height:1;transition:transform .18s ease}
#farb-shared-header #v10-group-button[aria-expanded="true"] .menu-chevron{transform:rotate(180deg)}
@media(max-width:1120px){
 #farb-shared-header #v10-quick-reserve::before{content:none!important}
 #farb-shared-header #v10-quick-reserve{font-size:13px!important;padding:9px 12px!important}
}
@media(max-width:390px){
 #farb-shared-header nav#v10-nav{gap:6px!important}
 #farb-shared-header .wrap{width:calc(100% - 20px)!important}
 #farb-shared-header #v10-quick-reserve{font-size:12px!important;padding:9px 8px!important}
 #farb-shared-header #v10-toggle{font-size:12px!important;padding:9px 8px!important}
 #farb-shared-header nav .brand img{width:40px!important;height:40px!important}
}

/* Nach sieben Hauptabschnitten folgt der Fußbereich in Creme.
   Andere Unterseiten verwenden weiterhin ihre bisherigen Farben. */
body.farb-home #seitenfuss{
 background:#F7F5E8!important;
 border-top:1px solid #C89BA4!important;
}

/* Altes display:block/flex!important darf hidden nicht übersteuern. */
#farb-shared-header #v10-links .menu-dropdown a[hidden]{display:none!important}

/* Sieben Menueeintraege plus getrenntes Reservierungsdropdown. */
@media(min-width:1121px){#farb-shared-header #v10-links{gap:clamp(7px,.85vw,12px)!important;font-size:13px!important}#farb-shared-header nav#v10-nav{gap:10px!important}#farb-shared-header #v10-links .menu-trigger{padding:10px 13px!important}}


/* Sichtbarer, zurückhaltender SmartWerk-Entwicklerhinweis unter dem Footer-Inhalt. */
#seitenfuss .footer-v10-credit{
 display:flex!important;align-items:center!important;justify-content:flex-end!important;
 flex-wrap:wrap!important;gap:11px!important;margin-top:16px!important;
 color:#746e65!important;font-size:12px!important;line-height:1.5!important
}
#seitenfuss .footer-v10-credit>a{
 display:inline-flex!important;align-items:center!important;max-width:100%!important;
 min-height:36px!important;text-decoration:none!important
}
#seitenfuss .footer-v10-credit>a:hover{text-decoration:none!important}
#seitenfuss .footer-v10-credit img{
 display:block!important;width:150px!important;height:auto!important;
 max-width:min(150px,100%)!important;object-fit:contain!important
}
#seitenfuss .footer-v10-credit>a:focus-visible{
 outline:2px solid #844D5C!important;outline-offset:4px!important;border-radius:4px!important
}
@media(max-width:560px){
 #seitenfuss .footer-v10-credit{justify-content:flex-start!important;gap:8px!important}
}
