:root{--cream:#efe7da;--ink:#2b211b;--gold:#c9a24b;--ease:cubic-bezier(.19,1,.22,1)}
html{scroll-behavior:smooth;scroll-padding-top:140px}body{overflow-x:clip}::selection{background:var(--gold);color:var(--ink)}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #a87c24;outline-offset:6px}.skip-link{position:fixed;top:12px;left:12px;z-index:300;transform:translateY(-200%);padding:16px;background:var(--cream)}.skip-link:focus{transform:none}.reading-progress{position:fixed;top:0;left:0;height:3px;width:100%;background:var(--gold);transform:scaleX(0);transform-origin:left;z-index:110;pointer-events:none}.wrap,nav,.hero-inner{max-width:1280px}header{transition:box-shadow .4s,background .4s}body.scrolled header{box-shadow:0 6px 30px #2b211b12;background:#efe7daf5}nav{padding-top:21px;padding-bottom:21px}.logo{font-size:31px;letter-spacing:-1.6px}.logo-dot{color:#956627;display:inline-block;transition:transform .6s var(--ease)}.logo:hover .logo-dot{transform:translateY(-9px)}.navlinks a{position:relative;padding:12px 0}.navlinks a:after,.text-link:after{content:'';position:absolute;bottom:3px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}.navlinks a:hover:after,.navlinks a.active:after,.text-link:hover:after{transform:scaleX(1);transform-origin:left}.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:46px;border-radius:0;position:relative;isolation:isolate;overflow:hidden;letter-spacing:.065em;transition:color .35s,transform .6s var(--ease),box-shadow .35s}.btn:after{content:'↗';display:inline-block;font-size:18px;transition:transform .4s var(--ease)}.btn:before{content:'';position:absolute;inset:0;background:var(--gold);z-index:-1;transform:translateY(102%);transition:transform .5s var(--ease)}.btn:hover:before,.btn:focus-visible:before{transform:none}.btn:hover{color:var(--ink);box-shadow:0 8px 24px #0001}.btn:hover:after{transform:translate(3px,-3px)}.btn:active{scale:.97}.hero{min-height:calc(100svh - 88px);padding:80px 0 95px}.hero-bg{overflow:hidden}.hero-bg img{opacity:.62;will-change:transform;transform:scale(1.12);object-position:center 55%}.hero-bg:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#160f0acf,#160f0a25 80%),linear-gradient(0deg,#1d160a77,transparent 40%)}.hero h1{font-weight:400;font-size:clamp(60px,7.7vw,108px);letter-spacing:-.055em;line-height:1.03;max-width:12ch}.hero h1 i{font-weight:400}.hero p:not(.eyebrow){font-size:16px;color:#efe7dadb;max-width:44ch}.hero .eyebrow{font-size:11px;letter-spacing:.23em}.hero-ctas .btn:first-child{background:var(--cream);color:var(--ink)}.hero-stamp{position:absolute;right:9%;bottom:95px;color:var(--gold);z-index:3;text-align:center;transform:rotate(9deg)}.sprig{width:90px;display:block;margin:auto;stroke:currentColor;stroke-width:1.2}.hero-stamp span{display:block;margin-top:12px;font-family:Georgia,serif;font-style:italic;font-size:20px}.sprig path{stroke-dasharray:650;stroke-dashoffset:650;transition:stroke-dashoffset 2.5s ease}.is-visible .sprig path,.hero-stamp .sprig path{stroke-dashoffset:0}.hero-stamp{animation:sway 7s ease-in-out infinite alternate}@keyframes sway{to{transform:rotate(-5deg) translateY(-12px)}}.section-head h2{font-weight:400;font-size:clamp(36px,4.5vw,60px);letter-spacing:-.04em}.eyebrow{letter-spacing:.16em}.philo-grid{gap:90px}.philo-item{padding:0 0 23px;border-bottom:1px solid #2b211b20;transition:transform .5s var(--ease)}.philo-item:hover{transform:translateX(10px)}.philo-item .n{color:#8a692b;font-family:Georgia,serif;font-style:italic;font-size:25px}.philo-item h3{font-weight:400;font-size:24px}.interlude{display:grid;grid-template-columns:1fr 1fr;padding:0;min-height:640px;background:#e4dbc9}.interlude-photo{overflow:hidden;position:relative;min-height:640px}.interlude-photo img{width:100%;height:120%;position:absolute;top:-10%;object-fit:cover}.interlude-copy{padding:80px;align-self:center}.interlude h2{font:400 clamp(38px,4.3vw,64px)/1.12 Georgia,serif;letter-spacing:-.045em;margin:22px 0 40px}.interlude h2 i{color:#7a2e2e}.interlude-copy .sprig{width:70px;color:#947737;margin:50px 0 0}.text-link{position:relative;display:inline-flex;gap:40px;padding:14px 0;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.season{position:relative}.season .eyebrow{color:var(--gold)}.season-grid{gap:0}.s-card{position:relative;border-top:1px solid #c9a24b66;border-right:1px solid #c9a24b33;padding:40px 30px;transition:background .5s,translate .5s var(--ease)}.s-card:last-child{border-right:0}.s-card:hover{background:#3e3025;translate:0 -8px}.s-card .dish{font-size:27px;line-height:1.3;min-height:106px}.cta-strip h2{font-weight:400;font-size:clamp(42px,5vw,68px);letter-spacing:-.04em}.cta-strip{padding:65px 0}.page-hero h1{font-weight:400;font-size:clamp(70px,11vw,150px);letter-spacing:-.065em;line-height:1}.page-hero{position:relative;padding:85px 0 60px}.menu-art{position:absolute;right:16%;top:75px;color:#9d7e3d;transform:rotate(15deg)}.menu-art .sprig{width:120px}.menu-tabs{padding:0;display:flex;justify-content:flex-start;gap:34px;margin:0 0 30px;flex-wrap:wrap}.menu-tabs a{font-size:12px;text-transform:uppercase;letter-spacing:.08em;padding:15px 0;border-bottom:1px solid #997a43;transition:color .3s,translate .3s}.menu-tabs a:hover{color:#7a2e2e;translate:0 -3px}.menu-section{scroll-margin-top:135px}.menu-section h2{font-size:36px;font-weight:400}.menu-section .dish{position:relative;padding:26px 20px;isolation:isolate;transition:padding .5s var(--ease)}.menu-section .dish:before{content:'';position:absolute;inset:0;background:#e2d7c4;z-index:-1;transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}.menu-section .dish:hover:before{transform:scaleX(1)}.menu-section .dish:hover{padding-left:32px}.menu-section .name{font-size:25px}.menu-section .price{transition:transform .4s,color .4s}.menu-section .dish:hover .price{transform:translateX(-6px);color:#2b211b}.menu-section .source{color:#526044}.page-kontakt .tlo:before{opacity:.08}.page-kontakt .tlo{background:var(--cream)}.kontakt-grid{gap:70px}.kontakt-grid form{background:#f7f1e7;padding:34px;border-top:2px solid #b99146;box-shadow:0 20px 60px #2b211b0a}.kontakt-grid form h2{font:400 32px/1.15 Georgia,serif;letter-spacing:-.035em;margin-bottom:8px}input,textarea,select{background:#efe7da66;border:0;border-bottom:1px solid #2b211b40;border-radius:0;min-height:48px;transition:background .3s,border-color .3s,box-shadow .3s}input:focus,textarea:focus,select:focus{outline:0;border-color:#927028;background:#fffaf1;box-shadow:0 3px 0 #c9a24b55}label{transition:color .3s}form div:focus-within>label{color:#8a6525}form .btn{text-align:left}.form-note{line-height:1.6}.form-note.confirmed{border-left:2px solid #8d712e;padding:12px;background:#e9dfc9}iframe{filter:saturate(.45)}footer{overflow:hidden}footer .logo{font-size:48px;color:var(--cream)}footer .wrap{align-items:center}.page-curtain{display:none}.js-motion .page-curtain{display:flex;position:fixed;inset:0;background:var(--ink);color:var(--gold);z-index:200;align-items:center;justify-content:center;flex-direction:column;gap:20px;pointer-events:none;transform:translateY(-100%)}.page-curtain .sprig{margin:0;width:50px}.page-curtain .sprig path{stroke-dashoffset:0}.page-curtain span{font:italic 46px Georgia,serif}.reveal{transition:opacity 1s var(--ease),translate 1.2s var(--ease),clip-path 1.3s var(--ease);transition-delay:var(--delay,0ms)}.js-motion .reveal:not(.is-visible){opacity:0;translate:0 38px}.js-motion .photo-reveal:not(.is-visible){clip-path:inset(15% 8% 15% 8%)}.photo-reveal.is-visible{clip-path:inset(0)}.word-mask{display:inline-block;overflow:clip;vertical-align:bottom;padding:0 .035em .1em;margin:0 -.035em -.1em}.word-mask>span{display:inline-block;animation:word-in 1.25s var(--ease) both;animation-delay:calc(80ms * var(--word))}@keyframes word-in{from{transform:translateY(115%) rotate(5deg)}to{transform:translateY(0) rotate(0)}}
@media(min-width:1500px){.hero-stamp{right:calc((100vw - 1250px)/2)}}
@media(max-width:860px){.hero-stamp{right:7%;bottom:65px}.hero-stamp .sprig{width:60px}.hero-stamp span{font-size:16px}.philo-grid{gap:38px}.interlude-copy{padding:40px}.interlude,.interlude-photo{min-height:500px}.s-card{border-right:0}.s-card .dish{min-height:0}.menu-art{right:10%;opacity:.55}.kontakt-grid{gap:40px}}
@media(max-width:600px){nav{padding:14px 20px;gap:8px}.logo{font-size:28px}.navlinks{gap:30px}.navlinks a{padding:10px 0}.hero{min-height:760px;min-height:calc(100svh - 116px);padding:65px 0 75px}.hero h1{font-size:clamp(53px,14vw,78px)}.hero p:not(.eyebrow){font-size:14px;max-width:36ch}.hero-stamp{display:none}.hero-ctas{flex-direction:row;gap:10px;margin-top:28px}.hero-ctas .btn{width:auto;flex:1;font-size:10px;padding:12px;gap:8px}.hero-bg img{object-position:58%}.hero-bg:after{background:#160f0a70}.interlude{grid-template-columns:1fr}.interlude-photo{min-height:420px}.interlude-copy{padding:50px 25px}.interlude-copy .sprig{display:none}.section-head{margin-bottom:32px}.philo-item h3{font-size:21px}.page-hero{padding:55px 0 35px}.menu-art{right:7%;top:55px}.menu-art .sprig{width:65px}.page-menu .page-hero p{max-width:30ch}.menu-tabs{gap:18px}.menu-tabs a{font-size:10px}.menu-section .dish{padding:23px 0}.menu-section .name{font-size:21px}.menu-section .dish:hover{padding-left:10px}.kontakt-grid form{padding:26px 18px;margin:0 -4px}.kontakt-grid form h2{font-size:29px}.field-row{gap:20px}.page-kontakt .page-hero h1{font-size:76px}.btn{min-height:46px}footer .logo{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal:not(.is-visible){opacity:1;translate:none;clip-path:none}.hero-bg img{transform:none!important}.interlude-photo img{transform:none!important}.sprig path{stroke-dashoffset:0}.page-curtain{display:none!important}}
.motion-switch{background:none;color:#efe7da;border:1px solid #efe7da55;padding:13px 16px;min-height:44px;font:12px Arial,sans-serif;cursor:pointer}.motion-paused .hero-stamp{animation-play-state:paused}@media(prefers-reduced-motion:reduce){.motion-switch{display:none}}
