:root{--wine:#244b3d;--wine2:#16382e;--gold:#9b3f35;--cream:#f2f2e9;--paper:#fbfaf5;--ink:#20231f;--muted:#666b63;--line:#d9ddd2;--green:#244b3d;--focus:#13657a;--italian-red:#9b3f35}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,'Times New Roman',serif;font-size:16px;line-height:1.6}a{color:inherit}button,input{font:inherit}.skip{position:absolute;left:-100vw;top:1rem;background:white;padding:.8rem;z-index:20}.skip:focus{left:1rem}.preview-ribbon{text-align:center;background:var(--wine2);color:#fff;padding:.28rem;font:700 .65rem/1.5 Arial,sans-serif;letter-spacing:.22em}.site-header{height:94px;padding:0 clamp(1rem,5vw,5.5rem);display:flex;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid #eee7de;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;color:var(--wine);font: .65rem/1.25 Arial,sans-serif;letter-spacing:.15em}.brand img{width:53px;height:53px;object-fit:contain}.brand b{font-size:.9rem;letter-spacing:.12em}.site-header nav{display:flex;align-items:center;gap:clamp(.8rem,2vw,2rem);font: .84rem Arial,sans-serif}.site-header nav a{text-decoration:none}.site-header nav a:hover,.text-link:hover{color:var(--wine)}.admin-link{color:#8a837b;font-size:.72rem}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.02fr .98fr;min-height:605px;background:var(--cream)}.hero-copy{padding:clamp(3rem,7vw,7rem) clamp(1.5rem,7vw,7rem);display:flex;flex-direction:column;justify-content:center}.eyebrow{font:700 .68rem Arial,sans-serif;letter-spacing:.2em;color:var(--wine);margin:0 0 1.1rem}.hero h1{font-size:clamp(3rem,5.6vw,5.7rem);line-height:.98;font-weight:400;letter-spacing:-.045em;margin:0 0 1.5rem}.hero h1 em,h2 em{color:var(--wine);font-weight:400}.lead{max-width:27rem;font-size:1.15rem;color:#554a43}.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin:1.6rem 0 2rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.2rem;padding:.85rem 1.2rem;text-decoration:none;border:1px solid transparent;font:700 .78rem Arial,sans-serif;letter-spacing:.02em;cursor:pointer;min-height:48px}.button-gold{background:var(--wine);color:white}.button-gold:hover{background:var(--wine2)}.button-plain{color:var(--wine);border-color:#bba999}.button-outline{color:var(--wine);border-color:var(--wine);background:transparent}.button:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.hero-meta{font: .7rem/1.8 Arial,sans-serif;color:#746b63;display:flex;gap:1.6rem;flex-wrap:wrap}.hero-image{position:relative;min-height:400px;overflow:hidden;background:radial-gradient(ellipse at center,#ded0bc 0,#a88967 62%,#4c2725 100%)}.hero-image img{width:min(70%,460px);height:76%;position:absolute;inset:12% 15%;object-fit:contain;mix-blend-mode:multiply}.story-photo{display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#4a2424,#8f6548 55%,#d3b482)}.story-mark{text-align:center;color:#f6f1e8;font-size:clamp(3rem,7vw,7rem);line-height:.85;letter-spacing:.04em}.story-mark em{color:#e3c489}.story-mark span{display:block;margin-top:1.5rem;font:700 .62rem Arial,sans-serif;letter-spacing:.2em;color:#f2dfbf}.image-note{position:absolute;bottom:1.4rem;right:1.5rem;background:#fffdf7e8;color:var(--wine);padding:.65rem .9rem;font:700 .63rem Arial,sans-serif;letter-spacing:.16em}.image-note span{color:var(--gold)}.notice{display:flex;align-items:center;gap:1rem;background:#f1e7d8;border-block:1px solid #e9dcc9;padding:1rem clamp(1.5rem,9vw,9rem);font-size:.92rem}.notice p{margin:0}.notice-mark{color:var(--wine);font-size:1.6rem}.section{padding:clamp(4rem,8vw,7.5rem) clamp(1.5rem,10vw,10rem)}.section-kicker{font:700 .62rem Arial,sans-serif;letter-spacing:.2em;color:#9b8d7b}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem}.section h2,.story h2,.preview-modules h2{font-weight:400;font-size:clamp(2.3rem,4vw,4rem);line-height:1.05;margin:.3rem 0 1rem;letter-spacing:-.035em}.text-link{font:700 .78rem Arial,sans-serif;color:var(--wine);text-underline-offset:5px}.section-intro{max-width:650px;color:var(--muted)}.menu-tools{display:flex;align-items:end;gap:1.5rem;flex-wrap:wrap;margin:2rem 0 1rem}.search-label{display:grid;gap:.35rem;color:#645c55;font:700 .7rem Arial,sans-serif;letter-spacing:.05em}.search-label input{width:min(22rem,78vw);padding:.75rem;border:1px solid #bfb5a9;background:white}.filters{display:flex;gap:.5rem;flex-wrap:wrap}.filter{border:1px solid var(--line);padding:.55rem .8rem;background:transparent;color:var(--wine);cursor:pointer}.filter[aria-pressed=true]{background:var(--wine);color:white}.menu-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 3rem}.menu-item{padding:1.2rem 0;border-bottom:1px solid var(--line)}.menu-item h3{font-size:1.2rem;font-weight:400;margin:0}.menu-item p{margin:.3rem 0;color:var(--muted);font-size:.9rem}.menu-price{float:right;font-variant-numeric:tabular-nums;color:var(--wine)}.empty-state{padding:2rem;text-align:center;color:var(--muted);background:#f7f3ed}.story{display:grid;grid-template-columns:1fr 1fr;background:#ece4d8;min-height:480px}.story-photo{position:relative;min-height:350px}.story-copy{padding:clamp(3rem,7vw,7rem);align-self:center}.story-copy p:not(.eyebrow){max-width:34rem;color:#5e554e}.hours{display:grid;grid-template-columns:1fr 1.15fr;gap:3rem}.hours dl{margin:0}.hours dl div{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.hours dt{font-weight:bold}.hours dd{margin:0;text-align:right}.closed{color:var(--wine);font-style:italic}.small-note{font-size:.82rem;color:var(--muted)}.reserve{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,8vw,8rem);background:var(--green);color:white}.reserve .eyebrow{color:#e1c08c}.reserve h2{color:white}.reserve-copy p{max-width:27rem}.reserve .small-note{color:#d3d5cf}.reserve form{display:grid;gap:1rem}.reserve label{display:grid;gap:.35rem;font: .76rem Arial,sans-serif}.reserve input{background:#f8f5ef;border:1px solid transparent;padding:.75rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.reserve .check{display:flex;align-items:flex-start;gap:.6rem}.reserve .check input{margin:0}.reserve button:disabled{opacity:.55}.form-state{font-size:.8rem;color:#e7d8bd}.contact{display:grid;grid-template-columns:1fr .8fr;gap:4rem;align-items:center}.contact-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem}.map-card{min-height:260px;background:linear-gradient(135deg,#e9e0d2,#d9ccb8);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.25rem;text-align:center;color:var(--wine);border:1px solid #d8c8b3}.map-pin{font-size:2rem}.map-card a{margin-top:1rem;font:700 .75rem Arial,sans-serif}.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-top:2rem}.preview-modules{padding:4rem clamp(1.5rem,10vw,10rem);background:#f2ede5}.module-grid article{border-top:2px solid var(--gold);padding-top:1rem}.module-grid article>span{font:700 .65rem Arial,sans-serif;color:var(--wine)}.module-grid h3{font-size:1.15rem;margin:.5rem 0}.module-grid p{font-size:.86rem;color:var(--muted)}footer{background:#251d1b;color:#eee4d8;padding:3rem clamp(1.5rem,8vw,8rem) 1rem}.footer-top{display:grid;grid-template-columns:1.1fr 1fr 1.4fr .7fr;gap:1.5rem;align-items:start;font-size:.8rem}.footer-brand{color:#ead8bc}.footer-top a{text-decoration:none}.footer-bottom{border-top:1px solid #554943;margin-top:2rem;padding-top:1rem;display:flex;justify-content:space-between;gap:1rem;color:#c7bdb3;font: .68rem Arial,sans-serif}.footer-bottom a{color:#fff}.mobile-bar{display:none}
@media(max-width:850px){.site-header{height:78px}.menu-toggle{display:block;border:1px solid var(--wine);background:transparent;color:var(--wine);padding:.55rem .8rem}.site-header nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:1rem 1.5rem 1.5rem;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:4rem 8vw 3rem}.hero-image{min-height:380px}.story{grid-template-columns:1fr 1fr}.hours,.reserve{gap:2rem}.module-grid{grid-template-columns:repeat(2,1fr)}.footer-top{grid-template-columns:1fr 1fr}}
@media(max-width:600px){body{font-size:15px;padding-bottom:58px}.site-header{padding:0 1rem}.brand img{width:45px;height:45px}.hero-copy{padding:3.2rem 1.3rem 2.5rem}.hero h1{font-size:3.25rem}.hero-image{min-height:310px}.hero-meta{display:grid;gap:.1rem}.notice{padding:1rem 1.2rem;align-items:flex-start;font-size:.84rem}.section{padding:4rem 1.25rem}.section-heading{align-items:start;flex-direction:column}.menu-list{grid-template-columns:1fr}.story{grid-template-columns:1fr}.story-photo{min-height:290px}.story-copy{padding:3rem 1.5rem}.hours,.reserve,.contact{grid-template-columns:1fr;gap:1.5rem}.hours dl div{display:block}.hours dd{text-align:left;margin-top:.2rem}.form-row{grid-template-columns:1fr}.contact-actions .button{flex:1}.map-card{min-height:220px}.module-grid{grid-template-columns:1fr 1fr;gap:1rem}.preview-modules{padding:3rem 1.25rem}.footer-top{grid-template-columns:1fr 1fr;gap:1rem}.footer-bottom{flex-direction:column;gap:.5rem}.mobile-bar{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;bottom:0;left:0;right:0;background:#fffdf8;border-top:1px solid var(--line);z-index:12;padding:.45rem .3rem env(safe-area-inset-bottom);box-shadow:0 -4px 15px #0001}.mobile-bar a{text-align:center;text-decoration:none;color:var(--wine);font:700 .67rem Arial,sans-serif;padding:.42rem 0}.hero-actions .button{flex:1}.admin-link{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.legal{max-width:760px;margin:4rem auto;padding:0 1.3rem 5rem}.legal h1{font-weight:400;font-size:3rem;color:var(--wine)}.legal p{margin:1.2rem 0}
.site-notice{position:fixed;inset:0;z-index:40;display:grid;place-items:center;background:#1a1514a8;padding:1rem}.site-notice[hidden]{display:none}.site-notice-panel{max-width:560px;background:#252c3b;border:1px solid #d9d5cf;border-top:5px solid #c79a5b;padding:2rem;color:white;text-align:center;box-shadow:0 20px 80px #0005}.site-notice-panel h2{font-size:1.7rem;font-weight:400}.site-notice-panel a{color:#fff}.site-notice-panel>a{display:inline-block;background:#c7652d;padding:.7rem 1rem;text-decoration:none}.site-notice-panel p:last-child{font: .75rem Arial,sans-serif}
.honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.source-codes{font: .7rem Arial,sans-serif;letter-spacing:.04em;color:#6f6459}.notice[hidden]{display:none}
.assistant{display:grid;grid-template-columns:1fr 1fr;gap:2rem;background:#f1e7d8}.assistant form{display:grid;gap:1rem;align-content:center}.assistant label{display:grid;gap:.4rem;font: .76rem Arial,sans-serif}.assistant input{padding:.8rem;border:1px solid var(--line)}@media(max-width:600px){.assistant{grid-template-columns:1fr}}
.creator-credit{display:flex;align-items:center;justify-content:center;gap:.3rem;flex-wrap:wrap;margin:1rem auto 0;color:#c7bdb3;font: .68rem/1.5 Arial,sans-serif;text-align:center}.creator-credit a{color:#fff;text-underline-offset:3px}.swiss-cross{width:18px;height:14px;display:inline-block;vertical-align:middle;margin-left:.1rem}.legal-footer{border-top:1px solid var(--line);margin-top:3rem;padding-top:1rem;display:grid;gap:.35rem;color:var(--muted);font: .72rem/1.6 Arial,sans-serif;text-align:center}.legal-footer a{color:inherit}.legal-draft{border-left:3px solid var(--gold);background:#f1e7d8;padding:.9rem 1rem;margin:1.5rem 0;font-size:.92rem}.legal-draft p{margin:.45rem 0}.legal h2{font-size:1.35rem;color:var(--wine);margin:2rem 0 .4rem}
.legal-footer .creator-credit{color:var(--muted)}.legal-footer .creator-credit a{color:var(--wine)}

/* Italienische Farben: tiefes Blattgruen, warmes Weiss und dunkles Tomatenrot. */
.hero-image{background:#253a30}.hero-image .hero-photo{width:100%;height:100%;position:absolute;inset:0;z-index:0;object-fit:cover;mix-blend-mode:normal}.hero-image:before{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#13251fcc);z-index:1;pointer-events:none}.image-note{z-index:2;background:#fbfaf5ed;color:var(--wine2)}.story-photo{overflow:hidden;background:#ddd}.story-photo img{display:block;width:100%;height:100%;min-height:350px;object-fit:cover}.story{background:#f0f1e8}.gallery{background:#f4f3eb}.gallery-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:1.25rem;margin-top:1.6rem}.gallery-grid figure{margin:0;min-width:0}.gallery-grid img{display:block;width:100%;height:clamp(240px,34vw,460px);object-fit:cover}.gallery-grid figure:first-child img{object-position:center 56%}.gallery-grid figcaption{padding:.75rem 0;color:var(--muted);font:700 .75rem Arial,sans-serif;letter-spacing:.06em}.notice-mark{color:var(--italian-red)}.hero h1 em,.section h2 em,.story h2 em{color:var(--italian-red)}.legal-footer .creator-credit{color:var(--muted)}.legal-footer .creator-credit a{color:var(--wine)}
@media(max-width:600px){.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:280px}.story-photo img{min-height:270px}}
