/* Ein Vorgeschmack in Bewegung. Statische Darstellung bleibt ohne JS nutzbar. */
.reading-progress{position:absolute;bottom:-1px;left:0;right:0;height:2px;overflow:hidden;pointer-events:none}
.reading-progress span{display:block;width:100%;height:100%;background:var(--gold);transform:scaleX(var(--page-progress,0));transform-origin:left}
.hero-line{display:block;overflow:hidden;padding-bottom:.06em}
.hero-line>span{display:block}
.motion-live .hero-line>span{animation:hero-line-enter 1s cubic-bezier(.22,1,.36,1) both}
.motion-live .hero-line:nth-child(2)>span{animation-delay:.14s}
.motion-live .hero-copy>.eyebrow{animation:hero-fade-enter .8s .08s both}
.motion-live .hero-copy>p{animation:hero-fade-enter .8s .3s both}
.motion-live .hero-copy>.hero-actions{animation:hero-fade-enter .8s .44s both}
.motion-live .hero-copy{transform:translateY(var(--hero-copy-y,0px));will-change:transform}
.motion-live .gasthaus-hero-photo{inset:-4%;width:108%;height:108%;transform:translateY(var(--hero-y,0px)) scale(var(--hero-scale,1.075));will-change:transform}
.hero-grid{min-height:max(680px,93svh);padding-bottom:105px}
.scroll-invitation{position:absolute;bottom:38px;left:0;display:flex;align-items:center;gap:17px;font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--paper)}
.scroll-invitation .ui-icon{width:20px;height:20px;transform:rotate(90deg)}
.motion-live .scroll-invitation .ui-icon{animation:scroll-cue 2.3s ease-in-out infinite}
.scroll-invitation:hover{color:var(--gold-light)}
.btn,.nav-book{position:relative;isolation:isolate;overflow:hidden;transition:transform .25s,background .25s,box-shadow .25s}
.btn:after,.nav-book:after{content:'';position:absolute;inset:-40%;pointer-events:none;background:linear-gradient(110deg,transparent 35%,#ffffff30 48%,transparent 62%);transform:translateX(-90%);transition:transform .8s;z-index:-1}
.btn:hover:after,.nav-book:hover:after{transform:translateX(90%)}
.motion-live .btn:hover,.motion-live .nav-book:hover{transform:translate3d(var(--button-x,0px),calc(var(--button-y,0px) - 2px),0);box-shadow:0 7px 25px #0002}
.reveal{transition-duration:.85s;transition-timing-function:cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms)}
.reveal.is-pending{transform:translateY(38px)}
.intro-photo-window{position:relative;overflow:hidden;min-height:450px}
.intro-photo-window>.intro-main-photo{position:absolute;inset:-5% 0;width:100%;height:110%;min-height:0;object-fit:cover}
.motion-live .parallax-photo{transform:translateY(var(--photo-y,0px)) scale(1.09);will-change:transform}
.experience-photo{overflow:hidden}
.motion-live [data-tilt]{transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .4s;will-change:transform}
.food-card:hover .food-photo img{transform:scale(1.075)}

.taste-story{position:relative;background:var(--deep);color:var(--paper)}
.taste-stage{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:70px 8%;overflow:hidden;background:radial-gradient(ellipse at 70% 46%,#47762b50 0%,transparent 63%),radial-gradient(ellipse at 88% 75%,#c68a3530 0%,transparent 45%),var(--deep)}
.taste-stage:after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gold);transform:scaleX(var(--taste-progress,1));transform-origin:left;opacity:.65;z-index:10;pointer-events:none}
.taste-skip{grid-column:1/-1;justify-self:end;font-size:11px;color:#dce4d1;z-index:5;min-height:32px}
.taste-skip .ui-icon{width:15px;height:15px}
.taste-heading{position:relative;grid-column:1;z-index:1}
.taste-heading h2{font-size:clamp(55px,7.5vw,115px);line-height:.98;letter-spacing:-.055em;text-wrap:initial}
.taste-heading em{color:var(--gold)}
.taste-heading .eyebrow{font-size:11px;letter-spacing:.2em}
.taste-backdrop{position:absolute;left:46%;top:35%;font-family:var(--display);font-size:clamp(130px,26vw,420px);line-height:1;color:transparent;-webkit-text-stroke:1px #d6af5538;letter-spacing:-.065em;white-space:nowrap;z-index:-1;pointer-events:none;user-select:none}
.taste-art{position:relative;grid-column:2;grid-row:2/4;align-self:center;z-index:2;filter:drop-shadow(0 26px 38px #0007);max-width:700px}
.taste-art>img{width:100%;height:auto;user-select:none}
.taste-dish-label{position:absolute;right:0;bottom:11%;padding:14px 20px;background:var(--gold);color:var(--deep);font-size:10px;font-weight:700;line-height:1.6;transform:rotate(3deg);box-shadow:0 8px 25px #0002;max-width:250px}
.taste-dish-label strong{display:block;font-size:14px}
.taste-chapters{grid-column:1;position:relative;z-index:3;max-width:410px;align-self:center}
.taste-chapter{display:none}
.taste-chapter.is-active{display:block}
.taste-number{font-size:10px;font-weight:800;color:var(--gold);letter-spacing:.16em;display:block;margin-bottom:15px}
.taste-chapter h3{font-size:28px;line-height:1.18;letter-spacing:-.04em;margin-bottom:18px}
.taste-chapter p{font-size:14px;line-height:1.85;max-width:390px;color:#dce6d1}
.taste-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:25px;z-index:4;margin-top:10px}
.taste-bottom>.btn{margin-left:auto;min-height:54px;font-size:13px}
.taste-jumps{display:none;align-items:center;gap:12px}
.taste-jumps button{position:relative;background:transparent;color:#b6c9a7;width:54px;min-height:44px;padding:8px 0;font-size:10px;font-weight:800;letter-spacing:.1em}
.taste-jumps button:before{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:#d6af5540;transition:background .3s}
.taste-jumps button[aria-pressed=true]{color:var(--gold)}
.taste-jumps button[aria-pressed=true]:before{background:var(--gold)}
.motion-live .taste-story{height:265svh}
.motion-live .taste-stage{display:block;position:sticky;top:0;height:100svh;min-height:0;padding:0}
.motion-live .taste-skip{position:absolute;right:8%;top:116px}
.motion-live .taste-heading{position:absolute;left:8%;top:23%;opacity:var(--heading-opacity,1);transform:translateX(var(--heading-x,0px))}
.motion-live .taste-backdrop{top:48%;left:43%}
.motion-live .taste-art{position:absolute;left:66%;top:52%;width:min(54vw,78svh,760px);max-width:none;transform:translate(-50%,-50%) translate3d(var(--plate-x,29vw),var(--plate-y,64svh),0) rotate(var(--plate-rotate,-22deg)) scale(var(--plate-scale,.64));opacity:var(--plate-opacity,0);will-change:transform,opacity}
.motion-live .taste-dish-label{opacity:var(--label-opacity,0)}
.motion-live .taste-chapters{position:absolute;left:8%;bottom:17.5%;width:31%;height:185px;max-width:420px}
.motion-live .taste-chapter{display:block;position:absolute;inset:0;opacity:0;visibility:hidden;transform:translateY(28px);transition:opacity .4s,transform .5s,visibility .4s}
.motion-live .taste-chapter.is-active{opacity:1;visibility:visible;transform:none}
.motion-live .taste-bottom{position:absolute;left:8%;right:8%;bottom:42px;margin:0}
.motion-live .taste-jumps{display:flex}
.flavour-marquee{overflow:hidden;background:var(--gold);color:var(--deep);padding:23px 0;border-block:1px solid #1a4e2633}
.marquee-track{display:flex;width:max-content;will-change:transform}
.marquee-group{display:flex;align-items:center;gap:50px;padding-right:50px;font-family:var(--display);font-size:clamp(24px,3vw,45px);line-height:1.2;text-transform:uppercase;letter-spacing:-.04em;white-space:nowrap}
.marquee-group span:nth-child(even){color:transparent;-webkit-text-stroke:1px var(--deep)}
.motion-live .flavour-marquee.in-view .marquee-track{animation:flavour-loop 32s linear infinite}
.page-hidden .marquee-track{animation-play-state:paused!important}
@keyframes hero-line-enter{from{transform:translateY(115%)}to{transform:translateY(0)}}
@keyframes hero-fade-enter{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}
@keyframes scroll-cue{0%,100%{transform:translateY(0) rotate(90deg)}50%{transform:translateY(7px) rotate(90deg)}}
@keyframes flavour-loop{to{transform:translateX(-50%)}}

@media(max-width:1300px){
 .taste-heading h2{font-size:clamp(68px,8vw,100px)}.taste-chapter h3{font-size:25px}.taste-chapter p{font-size:13px}.motion-live .taste-chapters{height:175px}.taste-dish-label{padding:12px 16px}.taste-dish-label strong{font-size:12px}
}
@media(max-width:1120px){
 .hero-grid{min-height:max(630px,90svh)}.motion-live .taste-skip{top:108px}.motion-live .taste-heading{top:24%;left:6%}.motion-live .taste-chapters{left:6%;width:35%;height:175px;bottom:17%}.motion-live .taste-art{left:68%;width:min(58vw,75svh)}.motion-live .taste-bottom{left:6%;right:6%}.motion-live .taste-skip{right:6%}.taste-heading h2{font-size:clamp(62px,8.4vw,90px)}.taste-heading .eyebrow{font-size:10px}.taste-chapter h3{font-size:23px}.taste-chapter p{font-size:12px}.taste-dish-label{right:4%;bottom:13%;padding:10px 13px;font-size:9px}.taste-dish-label strong{font-size:11px}
}
@media(max-width:820px){
 .taste-heading h2{font-size:65px}.motion-live .taste-chapters{height:175px}.taste-chapter h3{font-size:21px}.taste-chapter p{font-size:11px}.taste-dish-label{display:none}.taste-skip{font-size:10px}.taste-bottom>.btn{font-size:12px;padding-inline:20px}
}
@media(max-width:700px){
 .hero-grid{min-height:max(610px,93svh);padding-bottom:110px}.scroll-invitation{font-size:8px;letter-spacing:.12em;bottom:35px;gap:12px}.scroll-invitation .ui-icon{width:16px;height:16px}
 .intro-photo-window{min-height:0;height:350px}
 .taste-stage{grid-template-columns:1fr;padding:50px 20px;gap:25px}.taste-skip{grid-column:1;min-height:35px}.taste-heading{grid-column:1}.taste-heading h2{font-size:56px}.taste-art{grid-column:1;grid-row:auto;max-width:400px;margin:auto}.taste-chapters{grid-column:1;max-width:100%}.taste-chapter h3{font-size:27px}.taste-chapter p{font-size:14px}.taste-bottom{grid-column:1}.taste-bottom>.btn{width:100%;margin:0;font-size:12px}.taste-backdrop{font-size:170px;left:15%;top:35%}
 .motion-live .taste-story{height:235svh}
 .motion-live .taste-skip{top:88px;right:20px;left:20px;font-size:9px;justify-content:end;min-height:28px}
 .motion-live .taste-heading{top:131px;left:20px;max-width:calc(100% - 40px)}
 .taste-heading h2{font-size:clamp(46px,11.2vw,65px)}.taste-heading .eyebrow{font-size:9px;margin-bottom:14px;letter-spacing:.14em}
 .motion-live .taste-art{left:54%;top:44%;width:min(88vw,45svh);margin:0}
 .motion-live .taste-backdrop{left:8%;top:43%;font-size:42vw}
 .motion-live .taste-chapters{left:20px;right:20px;bottom:160px;width:auto;max-width:none;height:138px}
 .motion-live .taste-chapters:before{content:'';position:absolute;inset:-14px -20px -18px;z-index:-1;background:linear-gradient(0deg,#0d2816 65%,#0d2816e8 90%,transparent 100%);pointer-events:none}
 .taste-number{font-size:9px;margin-bottom:10px}
 .taste-chapter h3{font-size:24px;margin-bottom:12px;line-height:1.15}
 .taste-chapter p{font-size:12px;line-height:1.7;max-width:460px}
 .motion-live .taste-bottom{left:20px;right:20px;bottom:85px;gap:17px}
 .taste-jumps{gap:9px}.taste-jumps button{width:30px;font-size:9px}
 .taste-bottom>.btn{width:auto;font-size:11px;min-height:48px;padding:12px 15px;gap:10px}
 .taste-bottom>.btn .ui-icon{width:16px;height:16px}
 .flavour-marquee{padding:20px 0}.marquee-group{font-size:28px;gap:32px;padding-right:32px}
}
@media(max-width:390px){
 .taste-heading h2{font-size:46px}.taste-heading .eyebrow{font-size:8px}.taste-chapter h3{font-size:22px}.taste-chapter p{font-size:11px}.taste-bottom>.btn{font-size:10px;padding-inline:12px}.taste-jumps{gap:8px}.taste-jumps button{width:28px}.motion-live .taste-chapters{height:133px}
}
@media(min-width:701px) and (max-height:650px){
 .motion-live .taste-heading{top:22%}.taste-heading h2{font-size:clamp(46px,10.5svh,68px)}.taste-heading .eyebrow{font-size:9px;margin-bottom:13px}.motion-live .taste-art{top:49%;width:min(50vw,69svh)}.motion-live .taste-chapters{bottom:17%;height:133px}.taste-chapter h3{font-size:21px;margin-bottom:10px}.taste-chapter p{font-size:11px;line-height:1.7}.taste-number{font-size:9px;margin-bottom:8px}.motion-live .taste-bottom{bottom:26px}.motion-live .taste-skip{top:105px}
}
@media(max-width:700px) and (max-height:720px){
 .motion-live .taste-heading{top:117px}.taste-heading h2{font-size:44px}.taste-heading .eyebrow{margin-bottom:10px}.motion-live .taste-art{top:41%;width:min(86vw,37svh)}.motion-live .taste-chapters{bottom:160px;height:119px}.taste-number{font-size:8px;margin-bottom:8px}.taste-chapter h3{font-size:21px;margin-bottom:10px}.taste-chapter p{font-size:11px;line-height:1.65}.motion-live .taste-bottom{bottom:85px}
}
@media(prefers-reduced-motion:reduce){
 .hero-line>span,.hero-copy,.gasthaus-hero-photo,.parallax-photo,[data-tilt],.btn,.nav-book{transform:none!important;will-change:auto!important}.hero-copy>.eyebrow,.hero-copy>p,.hero-copy>.hero-actions{opacity:1!important}.scroll-invitation .ui-icon{transform:rotate(90deg)!important}.reading-progress span{transition:none}.marquee-track{animation:none!important;transform:none!important}.reveal.is-pending{opacity:1;transform:none}
}
