html{scroll-behavior:smooth}html,body{margin:0;padding:0;max-width:100%;overflow-x:clip}.luva-suite-canvas{background:#f7f3ec}.luva-suite-main{width:100%;max-width:none;margin:0;padding:0}.luva-page{width:100%!important;max-width:none!important;margin:0!important;overflow-x:clip}.luva-page .luva-container{margin-left:auto!important;margin-right:auto!important}.luva-modal__close,#luvaMenuCloseV4,.luva-event-modal__close{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;max-width:44px!important;max-height:44px!important;aspect-ratio:1/1!important;border-radius:50%!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;box-sizing:border-box!important}.luva-event-modal{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;padding:22px;background:rgba(17,13,11,.72);backdrop-filter:blur(6px)}.luva-event-modal.is-open{display:flex}.luva-event-modal__panel{position:relative;width:min(760px,100%);max-height:calc(100vh - 44px);overflow:auto;background:#f7f3ec;color:#181715;padding:clamp(26px,5vw,54px);box-shadow:0 28px 90px rgba(0,0,0,.28)}.luva-event-modal__panel h2{margin:0 58px 28px 0;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(2.6rem,6vw,4.6rem);font-weight:500;line-height:.95;letter-spacing:-.04em}.luva-event-modal__close{position:absolute;top:18px;right:18px;border:1px solid rgba(24,23,21,.25);background:#fff;cursor:pointer}.luva-event-modal__close::before,.luva-event-modal__close::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:1px;background:#181715;transform-origin:center}.luva-event-modal__close::before{transform:translate(-50%,-50%) rotate(45deg)}.luva-event-modal__close::after{transform:translate(-50%,-50%) rotate(-45deg)}.luva-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.luva-event-form label{display:grid;gap:7px;margin-bottom:16px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.luva-event-form input,.luva-event-form textarea{width:100%;box-sizing:border-box;border:1px solid rgba(24,23,21,.18);background:#fff;color:#181715;border-radius:0;padding:14px 15px;font:400 16px/1.4 Inter,Arial,sans-serif}.luva-event-form input:focus,.luva-event-form textarea:focus{outline:2px solid #6f211a;outline-offset:2px}.luva-event-form__privacy{grid-template-columns:auto 1fr!important;align-items:start;text-transform:none!important;letter-spacing:0!important;font-size:13px!important;font-weight:400!important}.luva-event-form__privacy input{width:18px;height:18px;margin:1px 0 0;padding:0}.luva-event-form__status{min-height:24px;margin-top:14px;font-size:14px}.luva-event-form.is-loading{opacity:.72;pointer-events:none}.luva-event-form.is-success .luva-event-form__status{font-weight:600}.luva-open-status.is-open{font-weight:600}.luva-open-status.is-closed{opacity:.82}@media(max-width:680px){.luva-event-modal{padding:10px}.luva-event-modal__panel{max-height:calc(100vh - 20px);padding:24px 18px}.luva-form-grid{grid-template-columns:1fr}.luva-event-modal__close{top:12px;right:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.luva-event-modal{backdrop-filter:none}}
.luva-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

/* V2.1.1: The language selector remains legible and fully tappable at 320 px.
   Overrides legacy inline mobile rules found in earlier Elementor templates. */
@media (max-width:720px) {
  .luva-site .luva-topline,
  .luva-page .luva-topline { padding-right:158px !important; }
  .luva-site .luva-language-switcher a,
  .luva-page .luva-language-switcher a {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:44px !important;
    min-height:44px !important;
    max-width:none !important;
    max-height:none !important;
    line-height:1 !important;
    box-sizing:border-box !important;
  }
}

/* V2.2.3: One responsive mobile header, central L'Uva logo, right-hand premium menu.
   This header sits in the document flow; it never covers the first text line.
   Desktop remains entirely controlled by the existing editorial templates. */
.luva-site-mobile-kicker,
.luva-site-mobile-header,
.luva-site-nav-panel { display:none !important; }

@media (max-width:1023px) {
  /* Original template mobile header is replaced, not stacked or overlaid. */
  body.luva-suite-managed .luva-site > .luva-topline,
  body.luva-suite-managed .luva-site > .luva-header,
  body.luva-suite-managed .luva-page > .luva-topline,
  body.luva-suite-managed .luva-page > .luva-header { display:none !important; }

  body.luva-suite-managed .luva-site-mobile-kicker {
    position:relative !important;
    display:flex !important;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:3px 15px;
    width:100%;
    max-width:100%;
    min-height:34px;
    padding:8px 16px;
    box-sizing:border-box;
    background:#461a16;
    color:#fff4ed;
    font:600 11px/1.45 Inter,Arial,sans-serif;
    letter-spacing:.1em;
    text-align:center;
    text-transform:uppercase;
    white-space:normal;
    z-index:20;
  }
  .luva-site-mobile-kicker-location { font-weight:400;letter-spacing:.055em;opacity:.82; }

  body.luva-suite-managed .luva-site-mobile-header {
    position:sticky !important;
    top:0;
    z-index:100010;
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    width:100%;
    max-width:100%;
    min-height:82px;
    padding:8px max(16px,env(safe-area-inset-left,0px)) 8px max(16px,env(safe-area-inset-right,0px));
    box-sizing:border-box;
    background:rgba(250,247,241,.98);
    color:#211b17;
    border-bottom:1px solid rgba(70,32,26,.12);
    box-shadow:0 3px 14px rgba(33,27,23,.055);
    -webkit-backdrop-filter:blur(14px);
    backdrop-filter:blur(14px);
  }
  .luva-site-mobile-logo,
  .luva-site-nav-brand {
    display:flex !important;
    align-items:center;
    justify-content:flex-start;
    flex:none;
    width:138px;
    height:66px;
    max-width:46%;
    padding:0 !important;
    margin:0 !important;
    line-height:0;
    text-decoration:none;
  }
  .luva-site-mobile-logo img,
  .luva-site-nav-brand img {
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    max-height:66px !important;
    object-fit:contain !important;
    object-position:left center !important;
    filter:none !important;
    clip-path:none !important;
    transform:none !important;
  }
  body.luva-suite-managed .luva-site-nav-trigger {
    position:static !important;
    inset:auto !important;
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    gap:12px;
    flex:none;
    min-width:108px;
    min-height:46px;
    padding:0 16px;
    margin:0 0 0 auto !important;
    border:1px solid #52241e;
    border-radius:100px;
    background:#52241e;
    color:#fff;
    box-shadow:none;
    font:600 14px/1 Inter,Arial,sans-serif;
    letter-spacing:.06em;
    text-transform:uppercase;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
  }
  body.luva-suite-managed .luva-site-nav-trigger:hover { background:#3c1612;border-color:#3c1612;color:#fff; }
  .luva-site-nav-menu-label { display:inline-block; }
  .luva-site-nav-burger { display:block;flex:none; }
  body.luva-suite-managed .luva-site-nav-trigger:focus-visible,
  body.luva-suite-managed .luva-site-nav-close:focus-visible,
  body.luva-suite-managed .luva-site-nav-links a:focus-visible,
  body.luva-suite-managed .luva-site-nav-book:focus-visible,
  body.luva-suite-managed .luva-site-mobile-logo:focus-visible,
  body.luva-suite-managed .luva-site-nav-languages a:focus-visible {
    outline:3px solid #b87d5c !important;
    outline-offset:3px;
  }

  body.luva-suite-managed .luva-site-nav-panel[hidden] { display:none !important; }
  body.luva-suite-managed .luva-site-nav-panel:not([hidden]) {
    position:fixed !important;
    inset:0 !important;
    z-index:100060 !important;
    display:flex !important;
    flex-direction:column;
    width:100%;
    height:100%;
    max-width:none;
    padding: max(18px,env(safe-area-inset-top,0px)) clamp(20px,5.5vw,48px) max(24px,env(safe-area-inset-bottom,0px));
    box-sizing:border-box;
    overflow-y:auto;
    overscroll-behavior:contain;
    background:#f8f4ed;
    color:#201b18;
    background-image:radial-gradient(ellipse at 100% 0,rgba(133,70,56,.07),transparent 55%);
    -webkit-overflow-scrolling:touch;
    animation:luva-nav-fade-in .22s cubic-bezier(.22,.6,.3,1) both;
  }
  @keyframes luva-nav-fade-in { from { opacity:0;transform:translateY(-6px); } to { opacity:1;transform:translateY(0); } }
  .luva-site-nav-head {
    display:flex;
    flex:none;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    min-height:62px;
    border-bottom:1px solid rgba(63,32,26,.15);
    padding-bottom:16px;
  }
  .luva-site-nav-head .luva-site-nav-brand { width:118px;height:58px; }
  body.luva-suite-managed .luva-site-nav-close {
    position:static !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 44px !important;
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;
    max-width:44px !important;
    max-height:44px !important;
    aspect-ratio:1/1 !important;
    border:1px solid #7a5c50;
    border-radius:50% !important;
    background:#fff;
    color:#271c17;
    padding:0 !important;
    margin:0 !important;
    line-height:1 !important;
    box-sizing:border-box !important;
    cursor:pointer;
  }
  .luva-site-nav-eyebrow {
    margin:28px 0 8px;
    font:600 11px/1.3 Inter,Arial,sans-serif;
    letter-spacing:.17em;
    text-transform:uppercase;
    color:#795f54;
  }
  .luva-site-nav-links {
    display:flex;
    flex-direction:column;
    width:100%;
    gap:0;
    margin:0;
  }
  .luva-site-nav-links a {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    min-height:48px;
    padding:9px 1px;
    color:#261b17 !important;
    border-bottom:1px solid rgba(53,31,26,.14);
    text-decoration:none;
    font:500 clamp(24px,5.7vw,34px)/1.13 "Cormorant Garamond",Georgia,serif;
    letter-spacing:-.018em;
    transition:color .2s ease,padding-left .2s ease;
  }
  .luva-site-nav-links a[aria-current="page"] { color:#752b21 !important; }
  .luva-site-nav-arrow { display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px;width:22px;height:22px;opacity:.58; } .luva-site-nav-arrow svg {display:block;width:20px;height:20px;fill:none;stroke-linecap:round;stroke-linejoin:round;}
  .luva-site-nav-links a:hover { color:#7a2b20 !important;padding-left:4px; }
  .luva-site-nav-bottom { margin-top:auto;padding-top:26px; }
  .luva-site-nav-book {
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    width:100%;
    padding:12px 18px;
    box-sizing:border-box;
    color:#fff !important;
    background:#63241d;
    border:1px solid #63241d;
    text-decoration:none;
    font:600 14px/1.2 Inter,Arial,sans-serif;
    letter-spacing:.07em;
    text-transform:uppercase;
  }
  .luva-site-nav-book:hover { background:#451712;color:#fff !important; }
  .luva-site-nav-languages { margin-top:18px; }
  .luva-site-nav-languages .luva-language-switcher {
    display:flex !important;
    align-items:center;
    gap:9px;
    margin:0;
    color:#231b18;
  }
  .luva-site-nav-languages .luva-language-switcher a {
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    min-width:44px !important;
    min-height:44px !important;
    color:#241b17 !important;
    border:1px solid #b5a9a0;
    border-radius:100px;
    background:transparent;
    font:600 12px/1 Inter,Arial,sans-serif;
    opacity:1;
  }
  .luva-site-nav-languages .luva-language-switcher a[aria-current="page"] {
    color:#fff !important;background:#652a20;border-color:#652a20;
  }
  .luva-site-nav-address { margin:18px 0 0;color:#6c5e55;font:400 12px/1.5 Inter,Arial,sans-serif; }
  body.luva-site-nav-open { overflow:hidden !important; }
}
@media (max-width:375px) {
  .luva-site-mobile-kicker { gap:2px 10px !important; font-size:9px !important;letter-spacing:.055em !important; }
  .luva-site-mobile-logo { width:122px !important; }
  body.luva-suite-managed .luva-site-nav-trigger { min-width:98px;padding:0 12px;gap:9px; }
  .luva-site-nav-links a { font-size:clamp(23px,6.6vw,29px); }
}
/* WordPress admin-bar: the sticky header must sit below the actual admin toolbar. */
@media (min-width:783px) and (max-width:1023px) {
  body.admin-bar.luva-suite-managed .luva-site-mobile-header { top:32px !important; }
}
@media (max-width:782px) {
  body.admin-bar.luva-suite-managed .luva-site-mobile-header { top:46px !important; }
}
@media (min-width:1024px) {
  .luva-site-mobile-kicker,.luva-site-mobile-header,.luva-site-nav-panel { display:none !important; }
}
@media (prefers-reduced-motion:reduce) {
  .luva-site-nav-links a { transition:none !important; }
  body.luva-suite-managed .luva-site-nav-panel:not([hidden]) { animation:none !important; }
  .luva-site-mobile-header { backdrop-filter:none; -webkit-backdrop-filter:none; }
}

/* WordPress admin bar: the legacy Elementor templates reset html margin to zero.
   Restore the required space for authenticated users without affecting visitors. */
@media (max-width:782px) {
  html:has(body.admin-bar.luva-suite-managed) { margin-top:46px !important; }
  body.admin-bar.luva-suite-managed .luva-site-mobile-header { top:46px !important; }
}
@media (min-width:783px) {
  html:has(body.admin-bar.luva-suite-managed) { margin-top:32px !important; }
  body.admin-bar.luva-suite-managed .luva-site-mobile-header { top:32px !important; }
}

/* Fixed vector iconography: Unicode arrows may render as emoji on iOS.
   Icons are pure SVG/CSS with no font glyph fallback. */
.luva-site .luva-ui-arrow,.luva-page .luva-ui-arrow,
.luva-site .luva-ui-close-icon,.luva-page .luva-ui-close-icon {
  display:inline-block;vertical-align:middle;flex:0 0 auto;
  width:18px;height:18px;fill:none;stroke:currentColor;
  shape-rendering:geometricPrecision;
}
.luva-site .arrow,.luva-page .arrow,
.luva-site .luva-ui-arrow-wrap,.luva-page .luva-ui-arrow-wrap {
  display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 18px;vertical-align:middle;line-height:0;
}
.luva-site .luva-ui-arrow-wrap svg,.luva-page .luva-ui-arrow-wrap svg {display:block;}
#luvaMenuCloseV4 svg {display:block; width:18px;height:18px;}

.luva-modal__close svg,.luva-event-modal__close svg {
  display:block; width:18px;height:18px; margin:0; padding:0;
}


/* V2.2.4 | Mobile floating quick actions
 * Compact glass pills replace the previous full-width bottom dock.
 * Deliberately uses new class names so legacy per-page dock styles cannot leak.
 */
.luva-quick-actions { display:none !important; }
@media (max-width:767px) {
  .luva-quick-actions {
    position:fixed !important;
    z-index:99990 !important;
    inset:auto calc(14px + env(safe-area-inset-right,0px))
      calc(15px + env(safe-area-inset-bottom,0px)) auto !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-end !important;
    justify-content:flex-end !important;
    gap:9px !important;
    width:max-content !important;
    max-width:calc(100vw - 28px) !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    isolation:isolate;
    pointer-events:none;
  }
  .luva-quick-actions .luva-quick-pill {
    position:relative !important;
    isolation:isolate;
    box-sizing:border-box !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    flex:0 0 auto !important;
    gap:12px !important;
    min-height:52px !important;
    height:52px !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 11px 0 18px !important;
    border:1px solid !important;
    border-radius:999px !important;
    text-decoration:none !important;
    text-transform:none !important;
    white-space:nowrap !important;
    font-family:Inter,Arial,sans-serif !important;
    font-size:13px !important;
    font-weight:650 !important;
    line-height:1.2 !important;
    letter-spacing:.02em !important;
    -webkit-appearance:none;
    appearance:none;
    -webkit-tap-highlight-color:transparent;
    -webkit-backdrop-filter:blur(20px) saturate(150%);
    backdrop-filter:blur(20px) saturate(150%);
    cursor:pointer;
    pointer-events:auto;
    transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease;
  }
  .luva-quick-actions .luva-quick-pill--reserve {
    width:185px !important;
    color:#fff !important;
    background:linear-gradient(125deg,rgba(122,51,44,.94),rgba(70,25,23,.95)) !important;
    border-color:rgba(255,235,221,.46) !important;
    box-shadow:0 12px 34px rgba(47,18,15,.26),inset 0 1px rgba(255,255,255,.3) !important;
  }
  .luva-quick-actions .luva-quick-pill--menu {
    width:157px !important;
    color:#241c19 !important;
    background:linear-gradient(135deg,rgba(255,253,248,.96),rgba(244,238,230,.9)) !important;
    border-color:rgba(94,67,56,.24) !important;
    box-shadow:0 10px 30px rgba(47,29,21,.18),inset 0 1px rgba(255,255,255,.95) !important;
  }
  .luva-quick-actions .luva-quick-pill__label {
    color:inherit !important;
    flex:0 1 auto;
    font:inherit !important;
    line-height:1.2 !important;
    overflow:visible;
  }
  .luva-quick-actions .luva-quick-pill__icon {
    display:grid !important;
    place-items:center !important;
    width:33px !important;
    height:33px !important;
    min-width:33px !important;
    flex:0 0 33px !important;
    border-radius:50% !important;
    background:rgba(255,255,255,.16);
    color:inherit !important;
    line-height:0 !important;
  }
  .luva-quick-actions .luva-quick-pill--menu .luva-quick-pill__icon {
    background:rgba(89,50,35,.085);
  }
  .luva-quick-actions .luva-quick-pill__icon svg {
    display:block !important;
    width:19px !important;
    height:19px !important;
    margin:0 !important;
    flex:0 0 19px !important;
    stroke:currentColor !important;
    fill:none !important;
  }
  .luva-quick-actions .luva-quick-pill:focus-visible {
    outline:3px solid #eabf82 !important;
    outline-offset:3px !important;
  }
  .luva-quick-actions .luva-quick-pill:active { transform:scale(.975); }
  body.luva-site-nav-open .luva-quick-actions,
  body:has(.luva-modal.is-open) .luva-quick-actions,
  body:has(.luva-event-modal.is-open) .luva-quick-actions,
  body:has(#luvaMenuPopupV4.is-open) .luva-quick-actions {
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }
}
@media (hover:hover) and (pointer:fine) and (max-width:767px) {
  .luva-quick-actions .luva-quick-pill:hover {
    transform:translateY(-2px);
    box-shadow:0 17px 38px rgba(47,18,15,.25),inset 0 1px rgba(255,255,255,.3) !important;
  }
}
@media (max-width:350px) {
  .luva-quick-actions .luva-quick-pill--reserve { width:172px !important; }
  .luva-quick-actions .luva-quick-pill--menu { width:147px !important; }
}
@media (prefers-reduced-motion:reduce) {
  .luva-quick-actions .luva-quick-pill { transition:none !important; }
  .luva-quick-actions .luva-quick-pill:hover,
  .luva-quick-actions .luva-quick-pill:active { transform:none !important; }
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  .luva-quick-actions .luva-quick-pill--reserve { background:#612820 !important; }
  .luva-quick-actions .luva-quick-pill--menu { background:#f6f1e8 !important; }
}

/* V2.2.5: Accessible opening-hours anchor, offset from fixed/sticky headers. */
body.luva-suite-managed #oeffnungszeiten {
  scroll-margin-top:110px !important;
}
@media(min-width:1024px) {
  body.luva-suite-managed #oeffnungszeiten {scroll-margin-top:104px !important;}
}
body.admin-bar.luva-suite-managed #oeffnungszeiten {scroll-margin-top:148px !important;}

/* Shared editorial footer – deliberately separated from legacy .luva-footer rules. */
body.luva-suite-managed .luva-premium-footer {
  --lf-bg:#1c1715;
  --lf-muted:rgba(247,241,230,.66);
  --lf-line:rgba(228,208,178,.17);
  --lf-gold:#d7bb91;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:var(--lf-bg);
  color:#f9f3e9;
  font-family:Inter,Arial,sans-serif;
  font-size:14px;
  font-weight:400;
  line-height:1.6;
  letter-spacing:normal;
  text-transform:none;
  padding:0;
}
body.luva-suite-managed .luva-premium-footer::before {
  content:"";
  pointer-events:none;
  position:absolute;
  inset:-36% auto auto -24%;
  width:min(860px,100vw);
  aspect-ratio:1;
  background:radial-gradient(circle,rgba(115,39,32,.18) 0%,transparent 64%);
  z-index:-1;
}
body.luva-suite-managed .luva-premium-footer__accent {
  height:3px;
  background:linear-gradient(90deg,#542018 0%,#ab7850 33%,#e8d3a8 52%,#ad8060 71%,#542018 100%);
}
body.luva-suite-managed .luva-premium-footer__container {
  width:min(1320px,calc(100% - 96px));
  margin-inline:auto;
}
body.luva-suite-managed .luva-premium-footer__main {
  display:grid;
  grid-template-columns:minmax(240px,1.45fr) minmax(130px,.9fr) minmax(170px,1.02fr) minmax(200px,1.15fr);
  gap:clamp(24px,3vw,66px);
  padding:clamp(58px,6.2vw,92px) 0 clamp(49px,5.5vw,78px);
}
body.luva-suite-managed .luva-premium-footer__brand {min-width:0;max-width:385px;}
body.luva-suite-managed .luva-premium-footer__logo-link {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:174px;
  min-height:78px;
  max-width:100%;
  padding:10px 12px;
  box-sizing:border-box;
  background:rgba(255,249,237,.96);
  border:1px solid rgba(234,221,203,.8);
  border-radius:3px;
  transition:transform .25s ease,border-color .25s ease;
}
body.luva-suite-managed .luva-premium-footer__logo-link:hover {transform:translateY(-2px);border-color:#e7c99a;}
body.luva-suite-managed .luva-premium-footer__logo-link img {
  width:100%;
  max-width:156px;
  max-height:72px;
  height:auto;
  object-fit:contain;
}
body.luva-suite-managed .luva-premium-footer__eyebrow {
  margin:27px 0 10px;
  color:var(--lf-gold);
  font-size:10px;
  font-weight:600;
  line-height:1.6;
  letter-spacing:.25em;
}
body.luva-suite-managed .luva-premium-footer__headline {
  max-width:310px;
  margin:0 0 12px;
  color:#fff9f0;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(28px,2.7vw,37px);
  font-weight:500;
  line-height:1.06;
  letter-spacing:-.012em;
  text-wrap:balance;
}
body.luva-suite-managed .luva-premium-footer__intro {
  max-width:315px;
  margin:0 0 24px;
  color:var(--lf-muted);
  font-size:13px;
  line-height:1.8;
}
body.luva-suite-managed .luva-premium-footer__cta {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:21px;
  min-height:50px;
  padding:12px 17px;
  box-sizing:border-box;
  border:1px solid #e4d0aa;
  border-radius:2px;
  background:#e9d8b9;
  color:#3c211c !important;
  font-size:11px;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
  text-decoration:none;
  transition:background .23s ease,transform .23s ease;
}
body.luva-suite-managed .luva-premium-footer__cta:hover {background:#fff1d3;transform:translateY(-2px);}
body.luva-suite-managed .luva-premium-footer__cta svg {flex:none;}
body.luva-suite-managed .luva-premium-footer__column {min-width:0;}
body.luva-suite-managed .luva-premium-footer__column h2 {
  margin:5px 0 26px;
  color:var(--lf-gold);
  font-family:Inter,Arial,sans-serif;
  font-size:11px;
  font-weight:700;
  line-height:1.4;
  letter-spacing:.15em;
  text-transform:uppercase;
}
body.luva-suite-managed .luva-premium-footer__column > a,
body.luva-suite-managed .luva-premium-footer__column > address {
  display:block;
  margin:0 0 13px;
  color:rgba(248,244,236,.81);
  font-family:Inter,Arial,sans-serif;
  font-size:13px;
  font-weight:400;
  font-style:normal;
  line-height:1.65;
  overflow-wrap:anywhere;
  text-decoration:none;
  transition:color .18s ease;
}
body.luva-suite-managed .luva-premium-footer__column a:hover,
body.luva-suite-managed .luva-premium-footer__bottom a:hover {color:#f8dba5 !important;}
body.luva-suite-managed .luva-premium-footer__visit address {max-width:235px;}
body.luva-suite-managed .luva-premium-footer__visit .luva-premium-footer__route {
  margin-top:23px;
  color:#e6ca9e;
}
body.luva-suite-managed .luva-premium-footer__visit .luva-premium-footer__social {
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:3px;
}
body.luva-suite-managed .luva-premium-footer__hours h3 {
  margin:0 0 8px;
  color:#fff4e6;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:25px;
  font-weight:500;
  line-height:1.12;
  letter-spacing:.005em;
}
body.luva-suite-managed .luva-premium-footer__hours-list {margin:0 0 25px;}
body.luva-suite-managed .luva-premium-footer__hours-row {
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:12px;
  margin:0;
  padding:3px 0;
  border:0;
  color:rgba(249,244,235,.78);
  font-family:Inter,Arial,sans-serif;
  font-size:12px;
  font-weight:400;
  line-height:1.55;
  letter-spacing:normal;
  text-transform:none;
}
body.luva-suite-managed .luva-premium-footer__hours-row span:first-child {white-space:nowrap;flex-shrink:0;}
body.luva-suite-managed .luva-premium-footer__hours-row span:last-child {text-align:right;}
body.luva-suite-managed .luva-premium-footer__note {color:var(--lf-muted);font-size:11px;line-height:1.65;margin:5px 0 0;}
body.luva-suite-managed .luva-premium-footer__bottom {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px 30px;
  border-top:1px solid var(--lf-line);
  padding:24px 0 30px;
  font-family:Inter,Arial,sans-serif;
  font-size:11px;
  line-height:1.6;
  color:var(--lf-muted);
}
body.luva-suite-managed .luva-premium-footer__legal {display:flex;gap:18px;flex-wrap:wrap;}
body.luva-suite-managed .luva-premium-footer__bottom a {color:rgba(248,244,236,.82);text-decoration:none;transition:color .2s ease;}
body.luva-suite-managed .luva-premium-footer__credit a {font-weight:600;color:#e7c899;}
body.luva-suite-managed .luva-premium-footer a:focus-visible {
  outline:2px solid #e6c28c;
  outline-offset:4px;
}
@media(max-width:1100px) {
  body.luva-suite-managed .luva-premium-footer__container {width:min(100% - 64px,1320px);}
  body.luva-suite-managed .luva-premium-footer__main {
    grid-template-columns:minmax(220px,1.2fr) minmax(140px,.65fr) minmax(200px,1fr);
    gap:34px;
  }
  body.luva-suite-managed .luva-premium-footer__hours {grid-column:2 / 4;}
  body.luva-suite-managed .luva-premium-footer__hours-list {max-width:360px;}
}
@media(max-width:760px) {
  body.luva-suite-managed .luva-premium-footer__container {width:calc(100% - 40px);}
  body.luva-suite-managed .luva-premium-footer__main {grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 22px;padding:55px 0 45px;}
  body.luva-suite-managed .luva-premium-footer__brand {grid-column:1/-1;max-width:450px;}
  body.luva-suite-managed .luva-premium-footer__hours {grid-column:1/-1;max-width:400px;}
  body.luva-suite-managed .luva-premium-footer__column h2 {margin-bottom:16px;}
  body.luva-suite-managed .luva-premium-footer__bottom {align-items:flex-start;gap:16px 25px;padding-bottom:calc(116px + env(safe-area-inset-bottom,0px));}
}
@media(max-width:450px) {
  body.luva-suite-managed .luva-premium-footer__main {grid-template-columns:1fr;gap:36px;}
  body.luva-suite-managed .luva-premium-footer__brand,
  body.luva-suite-managed .luva-premium-footer__hours {grid-column:auto;}
  body.luva-suite-managed .luva-premium-footer__explore {display:grid;grid-template-columns:1fr 1fr;gap:7px 15px;}
  body.luva-suite-managed .luva-premium-footer__explore h2 {grid-column:1/-1;margin-bottom:7px;}
  body.luva-suite-managed .luva-premium-footer__explore a {margin-bottom:7px;}
  body.luva-suite-managed .luva-premium-footer__bottom {flex-direction:column;gap:13px;}
  body.luva-suite-managed .luva-premium-footer__logo-link {width:160px;min-height:70px;}
}
@media(prefers-reduced-motion:reduce) {
  body.luva-suite-managed .luva-premium-footer__cta,
  body.luva-suite-managed .luva-premium-footer__logo-link {transition:none;transform:none;}
}


/* V2.2.7: Navigation Barkarte uses the existing Speisekarte modal, not a second Quickview. */
body.luva-suite-managed .luva-nav .luva-nav-bar-link {white-space:nowrap;}
@media (min-width:1024px) and (max-width:1300px) {
  body.luva-suite-managed .luva-nav {gap:14px !important;font-size:9px !important;}
}
