:root{--bg:#0b0a0c;--panel:#141116;--panel2:#1b161d;--wine:#6f0d36;--wine2:#8b1748;--cream:#f3ddb0;--gold:#dfb85f;--text:#f7f2eb;--muted:#b8aeb8;--line:rgba(255,255,255,.12);--max:1240px;--serif:Georgia,'Times New Roman',serif;--sans:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.6}img,video{max-width:100%;display:block}a{color:inherit;text-decoration:none}.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}.topbar{position:fixed;z-index:50;left:0;right:0;top:0;height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:linear-gradient(180deg,rgba(5,5,7,.78),rgba(5,5,7,0));backdrop-filter:blur(4px)}.brand img{width:220px;height:auto}.desktop-nav{display:flex;align-items:center;gap:28px;font-size:.9rem;font-weight:700;letter-spacing:.02em}.desktop-nav a:not(.nav-cta){opacity:.86}.desktop-nav a:hover{opacity:1}.nav-cta{border:1px solid rgba(255,255,255,.5);padding:11px 18px;border-radius:999px}.menu-btn{display:none;background:none;border:0;color:white;font-size:1.7rem}.mobile-nav{position:fixed;z-index:49;top:0;left:0;right:0;padding:100px 28px 30px;background:#0b0a0c;border-bottom:1px solid var(--line)}.mobile-nav a{display:block;padding:15px 0;border-bottom:1px solid var(--line);font-size:1.1rem}.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;overflow:hidden}.hero>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#120d11}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,5,7,.88) 0%,rgba(6,5,7,.54) 45%,rgba(6,5,7,.2) 70%,rgba(6,5,7,.52) 100%),linear-gradient(0deg,rgba(6,5,7,.76),transparent 50%)}.hero-grain{position:absolute;inset:0;opacity:.16;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.34) .5px,transparent .6px);background-size:4px 4px}.hero-content{position:relative;z-index:2;width:min(900px,calc(100% - 80px));margin:0 0 11vh max(40px,calc((100vw - var(--max))/2));}.eyebrow,.kicker{text-transform:uppercase;font-size:.76rem;font-weight:800;letter-spacing:.18em;color:var(--gold)}.hero h1,.section h2,.location h2,.consent-dialog h2{font-family:var(--serif);font-weight:400;line-height:.91;letter-spacing:-.035em;margin:.25em 0}.hero h1{font-size:clamp(4rem,8.7vw,8.6rem);max-width:880px}.hero h1 em,.section h2 em{font-style:italic;color:var(--cream)}.hero-content>p{max-width:620px;font-size:clamp(1.05rem,1.7vw,1.35rem);color:#e6dde5}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:999px;border:1px solid transparent;font-weight:800;cursor:pointer;font-family:inherit;font-size:.92rem}.btn-primary{background:var(--cream);color:#251820}.btn-primary:hover{background:#fff0cf}.btn-ghost{border-color:rgba(255,255,255,.45);background:rgba(0,0,0,.15);color:white}.hero-note{position:absolute;right:34px;bottom:34px;z-index:3;max-width:320px;padding:18px 20px;border:1px solid rgba(255,255,255,.18);background:rgba(10,8,12,.56);backdrop-filter:blur(12px);border-radius:14px}.hero-note strong,.hero-note span{display:block}.hero-note span{font-size:.86rem;color:#d0c4cf;margin-top:4px}.scroll-cue{position:absolute;z-index:3;left:50%;bottom:25px;transform:translateX(-50%);font-size:1.4rem}.marquee{position:relative;z-index:6;width:106vw;margin:-9px -3vw 12px;transform:rotate(-1.8deg);transform-origin:center;overflow:hidden;background:var(--cream);color:#2b1720;padding:18px 0 17px;font-weight:900;font-size:clamp(1.35rem,2.25vw,2.2rem);line-height:1;letter-spacing:.065em;white-space:nowrap;box-shadow:0 13px 36px rgba(0,0,0,.24)}.marquee-track{display:flex;width:max-content;will-change:transform;animation:marquee-scroll 24s linear infinite;transform:translate3d(0,0,0)}.marquee-group{display:block;flex:0 0 auto;padding-right:2.5rem}@keyframes marquee-scroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}.section{padding:120px 0}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.wish{background:radial-gradient(circle at 80% 10%,rgba(111,13,54,.26),transparent 34%),#0b0a0c}.wish h2,.section-head h2,.menu-panel h2,.reserve h2{font-size:clamp(3.2rem,6vw,6.5rem)}.wish-copy>p{max-width:600px;color:var(--muted);font-size:1.08rem}.source-note{border-left:2px solid var(--gold);padding-left:20px;color:#e8d8c3!important}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px}.chips span{border:1px solid var(--line);border-radius:999px;padding:7px 12px;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.wish-image{position:relative}.wish-image img{border-radius:28px;aspect-ratio:4/5;object-fit:cover;box-shadow:0 30px 80px rgba(0,0,0,.35)}.stamp{position:absolute;right:-30px;bottom:40px;width:150px;height:150px;border-radius:50%;display:grid;place-items:center;text-align:center;transform:rotate(8deg);background:var(--wine);border:2px solid var(--cream);color:var(--cream);font-weight:900;line-height:1.1;letter-spacing:.06em}.video-slice{padding:0 22px}.video-card{min-height:72vh;position:relative;border-radius:30px;overflow:hidden;background:#111}.video-card video,.video-card-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.video-card-bg{object-position:center 48%;filter:saturate(1.04) contrast(1.03)}.video-card:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,8,12,.75),rgba(10,8,12,.12))}.video-copy{position:absolute;z-index:2;left:6vw;top:50%;transform:translateY(-50%)}.video-copy span{color:var(--gold);font-weight:800;text-transform:uppercase;letter-spacing:.16em;font-size:.8rem}.video-copy h2{font:400 clamp(4rem,7vw,8rem)/.9 var(--serif);margin:.2em 0}.people{background:var(--cream);color:#261922}.section-head{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;align-items:end;margin-bottom:60px}.section-head p{max-width:500px;color:#6f5965}.people .kicker{color:var(--wine)}.people-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:18px;align-items:stretch}.portrait,.food-card{margin:0;border-radius:24px;overflow:hidden;min-height:470px;position:relative}.portrait img,.food-card img{width:100%;height:100%;object-fit:cover}.portrait.tall{transform:translateY(40px)}.food-card figcaption{position:absolute;left:18px;right:18px;bottom:18px;padding:18px;border-radius:16px;background:rgba(15,12,14,.76);color:white;backdrop-filter:blur(8px)}.food-card figcaption span,.food-card figcaption strong{display:block}.food-card figcaption span{font-size:.85rem;color:#d7ccd3}.menu-tease{background:#100d12}.menu-panel{display:grid;grid-template-columns:1fr 1fr;gap:70px;background:var(--wine);border-radius:32px;padding:70px}.menu-panel .kicker{color:#f0cf83}.menu-list>div{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.2)}.menu-list span{font:400 1.6rem var(--serif)}.menu-list small{color:#dcbfcf;text-align:right}.social{background:#0b0a0c}.social .section-head p{color:var(--muted)}.consent-box{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:28px;border:1px solid var(--line);border-radius:20px;background:var(--panel)}.consent-box strong{font-size:1.15rem}.consent-box p{margin:4px 0 0;color:var(--muted)}.consent-box.compact{justify-content:center}.elfsight-target{margin-top:30px}.social-links{display:flex;gap:12px;margin-top:25px}.social-links a{border-bottom:1px solid currentColor;color:var(--cream)}.reviews{padding-top:0}.review-shell{display:grid;grid-template-columns:1fr 1.25fr;gap:70px;padding:70px;border-radius:32px;background:var(--panel2)}.review-shell h2{font-size:clamp(3rem,5vw,5.6rem)}.review-shell p{color:var(--muted)}.reserve{background:linear-gradient(135deg,#f3ddb0,#e7c98f);color:#251820}.reserve-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.reserve .kicker{color:var(--wine)}.reserve p{max-width:500px;color:#735d67}.contact-mini{display:grid;gap:8px;margin-top:30px}.contact-mini a{font-size:1.3rem;font-weight:800}.reserve-form{background:#fff8e9;padding:34px;border-radius:26px;box-shadow:0 30px 80px rgba(78,45,52,.12)}.field,.field-row{margin-bottom:16px}.field-row{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.field-row:has(.field:nth-child(3)){grid-template-columns:1.1fr 1fr .7fr}.field label{display:block;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin:0 0 6px;color:#6e505e}.field input,.field textarea{width:100%;border:1px solid #d9c4a5;background:#fffefb;border-radius:12px;padding:13px 14px;font:inherit;color:#281b21;outline:none}.field input:focus,.field textarea:focus{border-color:var(--wine);box-shadow:0 0 0 3px rgba(111,13,54,.1)}.field small{color:#a31945}.check{display:flex;gap:9px;align-items:flex-start;font-size:.82rem;color:#6b5660;margin:15px 0}.wide{width:100%}.form-success,.form-error{padding:13px 15px;border-radius:12px;margin-bottom:18px}.form-success{background:#e0f1df;color:#235029}.form-error{background:#f8dfe5;color:#7d1834}.hp{position:absolute!important;left:-9999px!important}.location{padding:100px 0;background:#171218}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.location h2{font-size:clamp(3rem,5vw,5.5rem)}.location p{color:var(--muted)}.location-art{min-height:340px;border-radius:28px;background:linear-gradient(135deg,var(--wine),#2b101f);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.location-art span{font:italic 7rem var(--serif);color:var(--cream);line-height:.8}.location-art strong{letter-spacing:.22em;margin-top:20px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:50px;padding:70px 0}.footer-grid img{width:230px}.footer-grid p,.footer-grid span{color:var(--muted)}.footer-grid strong,.footer-grid a,.footer-grid span{display:block;margin:6px 0}.footer-bottom{border-top:1px solid var(--line);padding:18px max(20px,calc((100vw - var(--max))/2));display:flex;justify-content:space-between;gap:20px;color:#807580;font-size:.78rem}.link-btn{padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.consent-modal{position:fixed;z-index:90;left:18px;right:18px;bottom:18px;display:flex;justify-content:center;pointer-events:none}.consent-dialog{width:min(720px,100%);background:rgba(23,18,24,.97);border:1px solid rgba(255,255,255,.16);border-radius:24px;padding:28px 32px;position:relative;pointer-events:auto;box-shadow:0 22px 80px rgba(0,0,0,.48);backdrop-filter:blur(16px)}.consent-dialog h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:.25em}.consent-dialog p{color:var(--muted);margin:.4em 34px .8em 0}.close-consent{position:absolute;top:13px;right:17px;background:none;border:0;color:white;font-size:1.6rem;cursor:pointer}.consent-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.consent-note{display:block;color:#918791;margin-top:14px;font-size:.76rem}.elfsight-error{padding:14px 16px;border:1px solid rgba(255,255,255,.14);border-radius:12px;color:var(--muted);font-size:.88rem}.elfsight-error a{color:var(--cream);text-decoration:underline}[hidden]{display:none!important}
@media(max-width:900px){.desktop-nav{display:none}.menu-btn{display:block}.topbar{height:78px;padding:0 20px}.brand img{width:190px}.hero-content{width:calc(100% - 40px);margin:0 20px 18vh}.hero h1{font-size:clamp(3.6rem,15vw,6.8rem)}.hero-note{left:20px;right:20px;bottom:32px;max-width:none}.scroll-cue{display:none}.section{padding:85px 0}.grid-2,.section-head,.reserve-grid,.location-grid,.review-shell,.menu-panel{grid-template-columns:1fr;gap:38px}.wish-image{max-width:620px}.stamp{right:10px;bottom:20px;width:120px;height:120px;font-size:.8rem}.people-grid{grid-template-columns:1fr 1fr}.people-grid .food-card{grid-column:1/-1;min-height:380px}.portrait.tall{transform:none}.menu-panel,.review-shell{padding:40px}.field-row,.field-row:has(.field:nth-child(3)){grid-template-columns:1fr 1fr}.field-row:has(.field:nth-child(3)) .field:last-child{grid-column:1/-1}.consent-box{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:600px){.marquee{width:110vw;margin:-6px -5vw 9px;padding:14px 0 13px;font-size:1.02rem;transform:rotate(-2.2deg)}.wrap{width:min(calc(100% - 28px),var(--max))}.hero>video{object-position:56% center}.hero-content{margin-left:14px;width:calc(100% - 28px)}.hero h1{font-size:clamp(3.35rem,16.5vw,5.3rem)}.hero-content>p{font-size:1rem}.hero-actions .btn{width:100%}.hero-note{left:14px;right:14px}.section{padding:70px 0}.wish h2,.section-head h2,.menu-panel h2,.reserve h2{font-size:clamp(2.9rem,14vw,4.3rem)}.video-slice{padding:0 10px}.video-card{min-height:72svh;border-radius:22px}.video-card:after{background:linear-gradient(0deg,rgba(10,8,12,.76),rgba(10,8,12,.1))}.video-copy{left:26px;right:26px;top:auto;bottom:40px;transform:none}.video-copy h2{font-size:3.9rem}.people-grid{grid-template-columns:1fr}.people-grid .food-card{grid-column:auto}.portrait,.food-card{min-height:430px}.menu-panel,.review-shell,.reserve-form{padding:24px;border-radius:22px}.menu-list>div{display:block}.menu-list small{text-align:left;display:block}.field-row,.field-row:has(.field:nth-child(3)){grid-template-columns:1fr}.field-row:has(.field:nth-child(3)) .field:last-child{grid-column:auto}.location-art{min-height:260px}.location-art span{font-size:5rem}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column}.consent-modal{left:10px;right:10px;bottom:10px}.consent-dialog{padding:25px 20px 20px;border-radius:20px}.consent-dialog p{margin-right:20px}.consent-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero video{display:block!important}}
.legal-page{padding-top:170px;min-height:70vh}.legal-page h1{font:400 clamp(3.5rem,7vw,7rem)/.95 var(--serif);margin:.2em 0 .5em}.legal-content{max-width:850px;color:#c9bdc7}.legal-content p{margin:0 0 1.2em}.legal-content a{text-decoration:underline;color:var(--cream)}


/* v1.0.2 compatibility fixes */
.hero-video{display:block!important;opacity:1;}
.field,.field-row,.reserve-form{min-width:0;max-width:100%;}
.field input,.field textarea,.field select{display:block;min-width:0;max-width:100%;width:100%;}
input[type="date"],input[type="time"],input[type="number"]{min-width:0;max-width:100%;width:100%;}
@media(max-width:600px){
 .reserve-form{width:100%;overflow:hidden;}
 .field-row,.field-row:has(.field:nth-child(3)){width:100%;min-width:0;}
 .field-row>.field{width:100%;min-width:0;}
 input[type="date"],input[type="time"]{inline-size:100%;max-inline-size:100%;}
}
@media(prefers-reduced-motion:reduce){.hero video{display:block!important}}

/* v1.0.3 continuous marquee + legal pages */
.marquee-track{animation-play-state:running!important;}
.marquee:hover .marquee-track{animation-play-state:running!important;}
.legal-content h2{font:400 clamp(1.8rem,3.2vw,2.8rem)/1.08 var(--serif);color:var(--text);margin:1.65em 0 .5em;}
.legal-content h2:first-of-type{margin-top:1em;}
.legal-content .legal-lead{font-size:1.12rem;color:#e5d9e2;max-width:780px;}
.legal-content .legal-meta{margin-top:3rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.85rem;color:#918791;}
.legal-content code{padding:.12em .38em;border-radius:.35em;background:#211a22;color:var(--cream);}
.legal-content a{overflow-wrap:anywhere;}
.check a{text-decoration:underline;text-underline-offset:2px;}


/* v1.0.4 mobile reservation date/time controls */
.native-control{
  box-sizing:border-box;
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  border:1px solid #d9c4a5;
  background:#fffefb;
  border-radius:12px;
}
.native-control input[type="date"],
.native-control input[type="time"]{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.native-control:focus-within{
  border-color:var(--wine);
  box-shadow:0 0 0 3px rgba(111,13,54,.1);
}
@media(max-width:600px){
  .reservation-date-row,
  .reservation-date-row>.field,
  .native-control{
    inline-size:100%!important;
    min-inline-size:0!important;
    max-inline-size:100%!important;
  }
  .reservation-date-row>.field{overflow:hidden;}
  .native-control input[type="date"],
  .native-control input[type="time"]{
    inline-size:100%!important;
    min-inline-size:0!important;
    max-inline-size:100%!important;
    height:58px;
    padding:0 14px!important;
    font-size:16px!important;
    line-height:58px;
    text-align:left;
  }
  .native-control input[type="date"]::-webkit-date-and-time-value,
  .native-control input[type="time"]::-webkit-date-and-time-value{
    min-width:0;
    text-align:left;
  }
}

/* v1.0.7 zeitgesteuerte Website-Popups */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.site-popup{position:fixed;inset:0;z-index:110;display:grid;place-items:center;padding:24px;isolation:isolate}
.site-popup-backdrop{position:absolute;inset:0;background:rgba(4,3,5,.82);backdrop-filter:blur(8px);cursor:pointer}
.site-popup-dialog{position:relative;z-index:1;width:min(590px,calc(100vw - 36px));max-height:90svh;display:flex;flex-direction:column;align-items:center;filter:drop-shadow(0 28px 80px rgba(0,0,0,.58));animation:site-popup-in .24s ease-out both}
.site-popup-media{display:block;max-width:100%;max-height:86svh;border-radius:22px;overflow:hidden;background:#100d11;border:1px solid rgba(255,255,255,.18)}
.site-popup-media img{display:block;width:auto;max-width:100%;height:auto;max-height:86svh;object-fit:contain}
.site-popup-close{position:absolute;z-index:3;right:-15px;top:-15px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:#120f13;color:white;font:300 1.8rem/1 system-ui,sans-serif;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 28px rgba(0,0,0,.36)}
.site-popup-close:hover,.site-popup-close:focus-visible{background:var(--cream);color:#251820;outline:none}
.site-popup-cta{margin-top:12px;box-shadow:0 10px 30px rgba(0,0,0,.28)}
html.site-popup-open,html.site-popup-open body{overflow:hidden}
@keyframes site-popup-in{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:600px){.site-popup{padding:14px}.site-popup-dialog{width:min(100%,430px);max-height:88svh}.site-popup-media,.site-popup-media img{max-height:84svh;border-radius:16px}.site-popup-close{right:-4px;top:-12px;width:42px;height:42px}}
