:root{--ink:#27231f;--cream:#f7f3eb;--paper:#fffcf7;--rust:#995435}body{font-size:16px}p{line-height:1.75}.nav{gap:20px}.hero{min-height:740px}.hero h1{font-size:clamp(66px,8vw,128px)}.hero-photo{filter:brightness(.95)}.hero:after{background:linear-gradient(90deg,#211b18ed 0%,#211b1896 49%,#211b1826 100%)}.hero .actions .button{font-size:12px}.ribbon span:not(:first-child){display:none}.ribbon{justify-content:center}.cuisine-notes{display:grid;grid-template-columns:1fr 1fr;gap:6%;width:min(1280px,88%);margin:70px auto 0}.cuisine-notes a{padding:35px 0;border-top:1px solid var(--rust)}.cuisine-notes span,.cuisine-notes b{font-size:12px;letter-spacing:1px;color:#874728}.cuisine-notes h3{font-size:40px;margin:25px 0}.cuisine-notes p{max-width:460px;color:var(--muted)}.story-intro{font-size:16px;color:#e3dbce;max-width:510px}.story{background:#29231f}.story-photo{box-shadow:0 25px 70px #0004}.story-grid{gap:65px}.gallery{display:grid;grid-template-columns:1.6fr 1fr;gap:24px}.gallery button{padding:0;border:0;background:transparent;text-align:left;cursor:zoom-in;color:var(--ink)}.gallery button:first-child{grid-row:span 2}.gallery img{width:100%;height:240px;object-fit:cover}.gallery button:first-child img{height:555px}.gallery span{display:block;font-size:13px;padding:14px 0}.photo-dialog{border:0;background:var(--cream);width:min(1100px,95vw);max-height:94svh;padding:18px}.photo-dialog::backdrop{background:#181411e8}.photo-dialog img{max-height:75svh;width:100%;object-fit:contain}.photo-dialog button{margin-bottom:12px}.anniversary-statement{text-align:center;background:#e8dfd0;padding:90px 6%;color:#392c22}.anniversary-statement>span{font-size:12px;letter-spacing:2px}.anniversary-statement p{font:clamp(45px,7vw,90px)/1.1 Georgia,serif;margin:30px 0}.preview-notice{padding:18px 6%;background:#eee2d0;color:#593b24;font-size:14px;line-height:1.6}.page-step{display:flex;align-items:center;gap:18px;justify-content:space-between;margin-bottom:25px}.booking-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.panel{background:#fffcf7;border:1px solid #ded5c8;padding:32px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid .wide{grid-column:1/-1}label{display:flex;flex-direction:column;gap:9px;font-size:14px;line-height:1.4}input,select,textarea{font:inherit;font-size:16px;min-height:48px;width:100%;max-width:100%;border:1px solid #b7ad9f;background:white;border-radius:0;padding:12px;color:#27231f}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #995435;outline-offset:2px}.trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}small,.fine{font-size:13px}.booking-layout .preview-notice{padding:18px}.panel .button{width:100%}.form-result{line-height:1.7}.form-error{color:#8b221e;font-weight:bold}.form-success{padding:20px;background:#e6eddf;color:#25371d}.reveal-on-scroll.visible{animation:enter .6s ease both}.nav a{min-height:44px;display:flex;align-items:center}.menu-controls{scrollbar-width:thin}.lightbox{width:min(1280px,98vw)}.lightbox img{min-width:600px}.lightbox{overflow:auto}.lightbox button{position:sticky;right:0}.menu-stage{grid-template-columns:220px 1fr}a,button{touch-action:manipulation}@media(max-width:1100px){.nav{gap:13px}.brand{width:170px}.nav a{font-size:11px}.booking-layout{gap:35px}}@media(max-width:900px){.menu-toggle{display:block}.nav{display:none;position:absolute;top:92px;left:0;right:0;background:var(--ink);padding:25px 6%;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{font-size:16px}.gallery img{height:190px}.gallery button:first-child img{height:455px}}@media(max-width:760px){.nav{top:78px}.hero{min-height:calc(100svh - 78px - 65px);align-items:flex-end}.hero .wrap{padding-top:120px;padding-bottom:80px}.hero h1{font-size:clamp(58px,13.9vw,90px);letter-spacing:-2.5px}.hero-photo{object-position:65% center}.hero:after{background:linear-gradient(0deg,#211b18f7 0%,#211b18aa 55%,#211b1835 100%)}.hero .actions{display:grid;grid-template-columns:1fr;max-width:340px}.hero .actions .button{min-height:48px;padding:13px 12px}.hero .eyebrow{font-size:10px}.hero p{font-size:16px}.hero-bottom{bottom:24px}.anniversary{top:20px}.cuisine-notes{grid-template-columns:1fr;gap:5px;margin-top:38px}.cuisine-notes h3{font-size:36px}.story-intro{font-size:16px}.gallery{grid-template-columns:1fr;gap:20px}.gallery img,.gallery button:first-child img{height:auto;max-height:500px;object-fit:contain}.gallery button:first-child{grid-row:auto}.gallery-section .section-top h2{font-size:43px}.booking-layout{grid-template-columns:1fr;gap:30px}.panel{padding:22px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.anniversary-statement{padding:65px 6%}.page-step .button{padding:12px}.menu-stage{grid-template-columns:1fr}.menu-stage p{font-size:15px}.section p{font-size:16px}.hero-bottom span{font-size:9px}.room-grid img{height:auto}.footer{padding-bottom:115px}.phone{overflow-wrap:anywhere}.preview-notice{font-size:13px}}@media(prefers-reduced-motion:reduce){.reveal-on-scroll.visible{animation:none}}

/* Consistent, tactile controls across all guest pages. */
.button,.text-link,.menu-toggle,.menu-controls button,.mobile-bar a,.lightbox button{border-radius:8px;cursor:pointer;transition:background .18s ease,box-shadow .18s ease,transform .18s ease;line-height:1.4}
.button{gap:10px;font-size:13px;letter-spacing:.15px;box-shadow:0 3px 10px #27231f12}
.button:hover{transform:translateY(-1px);box-shadow:0 5px 16px #27231f24}
.button.dark:hover{background:#4a3830;border-color:#4a3830}
.button.ghost:hover{background:#ffffff15}.button:disabled{opacity:.6;cursor:wait;transform:none}
.text-link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 19px;border:1px solid currentColor;font-size:13px;font-weight:600;text-decoration:none}
.text-link:hover{background:#99543512}.visit .text-link:hover{background:#ffffff12}
.nav{gap:7px}.nav a:not(.button){border:1px solid #ffffff30;border-radius:7px;padding:11px 12px;font-size:12px}.nav a:hover{background:#ffffff0c}
.hero-bottom a{padding:10px 14px;border:1px solid #ffffff70;border-radius:7px}
.cuisine-notes a{border:1px solid #d8d2c5;border-radius:12px;padding:28px;background:var(--paper);transition:box-shadow .2s ease}
.cuisine-notes a:hover{box-shadow:0 8px 28px #27231f12}.cuisine-notes b{display:inline-flex;background:var(--ink);color:var(--cream);padding:14px 18px;border-radius:8px;font:600 13px Arial,sans-serif}
.footer-links{flex-wrap:wrap;gap:10px}.footer-links a{border:1px solid #ffffff35;padding:10px 14px;border-radius:7px;min-height:44px;display:inline-flex;align-items:center;font-size:12px}
.faq a,.legal a{color:var(--rust);text-decoration:underline;text-underline-offset:3px}
.visit .phone{display:inline-flex;border:1px solid #ffffff60;border-radius:8px;padding:12px 18px;font-size:clamp(20px,3vw,32px)}
.gallery button,.menu-image-button{position:relative;border-radius:10px;overflow:hidden}.gallery button:after,.menu-image-button:after{content:'Bild vergrößern';position:absolute;bottom:14px;right:14px;background:#27231ff2;color:#fff;padding:12px 15px;border:1px solid #ffffff70;border-radius:7px;font:13px Arial,sans-serif;pointer-events:none}
.form-grid input,.form-grid select,.form-grid textarea{border-radius:7px}.social-links{flex-wrap:wrap;gap:12px}
@media(max-width:1050px){.nav{gap:5px}.nav a:not(.button){padding:10px 8px;font-size:11px}}
@media(max-width:760px){.nav a:not(.button){font-size:16px;padding:14px}.hero .actions .button{width:100%;font-size:13px}.text-link{max-width:100%;text-align:center}.cuisine-notes a{padding:24px}.hero-bottom a{font-size:9px}.mobile-bar a{font-size:12px}.footer-links{gap:8px}}
/* Final responsive and interaction pass. */
:root{--muted:#625d55}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}.section,.story,.visit{scroll-margin-top:92px}.form-title{font-size:36px;letter-spacing:-1px;margin:12px 0 16px}.booking-layout .panel{border-radius:16px;box-shadow:0 18px 50px #27231f08}.booking-layout aside .preview-notice{border-radius:9px;border-left:3px solid var(--rust);margin-top:24px}.form-grid .fine{margin:0}.nav a[aria-current=page]{border-color:var(--gold);background:#c6aa7619}.button:disabled{opacity:.4;cursor:default}.page-step{gap:10px}.page-step>span{white-space:nowrap;font-variant-numeric:tabular-nums}.menu-controls button{flex-shrink:0}.menu-controls button:hover{border-color:var(--ink)}.lightbox{padding:0}.lightbox-toolbar{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;gap:12px;padding:12px;background:var(--cream);border-bottom:1px solid var(--line)}.lightbox-toolbar button{position:static;float:none;min-height:46px}.lightbox img{min-width:0;max-width:100%;width:100%;height:auto}.lightbox.zoomed img{min-width:900px;max-width:none}.lightbox-toolbar{width:100%}.gallery button:after{bottom:58px}.gallery span{padding:16px 2px}.hero .button.ghost{background:#211b1855;backdrop-filter:blur(6px)}.hero .button.ghost:hover{background:#211b18a0}
@media(min-width:761px) and (max-width:1100px){.menu-toggle{display:block}.nav{display:none;position:absolute;top:92px;left:0;right:0;background:var(--ink);padding:24px 6%;flex-direction:column;align-items:stretch;max-height:calc(100svh - 92px);overflow:auto}.nav.open{display:flex}.nav a:not(.button){font-size:16px;padding:14px}.brand{width:215px}}
@media(max-width:760px){.mobile-bar{grid-template-columns:1fr 1.25fr .8fr;padding-left:4%;padding-right:4%}.mobile-bar a{padding:12px 5px;white-space:nowrap}.mobile-bar a:nth-child(2){background:var(--gold);color:var(--ink);border-color:var(--gold);font-weight:bold}.nav{max-height:calc(100svh - 145px);overflow:auto}.hero .wrap{padding-top:115px;padding-bottom:94px}.hero h1{font-size:clamp(48px,12.8vw,76px)}.hero-bottom>span{display:none}.hero-bottom{justify-content:center}.section h2,.story h2{font-size:clamp(35px,10.4vw,46px);overflow-wrap:break-word}.subhero h1{font-size:clamp(42px,11.8vw,60px)}.booking-layout{display:flex;flex-direction:column}.booking-layout .panel{order:-1}.booking-layout aside h2{font-size:36px}.page-step .button{font-size:12px;padding:12px 10px}.form-grid{gap:18px}.cuisine-notes{gap:18px}.ribbon{font-size:9px;letter-spacing:1px;text-align:center;line-height:1.6}.social .text-link{min-width:120px}.lightbox.zoomed .lightbox-toolbar{position:sticky;left:0}.footer{padding-bottom:calc(110px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Preserve the original logo proportions in the footer. */
.footer-top>a{display:block;flex:0 0 auto;width:260px;max-width:100%}.footer-top>a img{display:block;width:100%;height:auto;aspect-ratio:2560/277;object-fit:contain}.footer-top{align-items:center}.footer-top p{max-width:420px}
@media(max-width:760px){.footer-top{align-items:flex-start;gap:24px}.footer-top>a{width:min(260px,100%)}.footer-top p{text-align:left}}

/* Editorial front page: natural photography, clear actions and calmer storytelling. */
.editorial-hero{display:grid;grid-template-columns:48% 52%;min-height:0;background:var(--cream);color:var(--ink);overflow:hidden}
.editorial-hero:after{display:none}
.editorial-hero .hero-photo{position:relative;inset:auto;grid-column:2;grid-row:1;width:100%;height:100%;min-height:650px;object-position:57% center;filter:none}
.editorial-hero .wrap{grid-column:1;grid-row:1;width:100%;padding:85px clamp(30px,5vw,96px);margin:0;align-self:center}
.editorial-hero .eyebrow{color:var(--rust);letter-spacing:1.8px;margin-bottom:38px}
.editorial-hero h1{font-size:clamp(62px,6.2vw,104px);letter-spacing:-3.8px;line-height:1.02;margin-bottom:30px}
.editorial-hero h1 em{color:var(--rust)}
.editorial-hero p{color:var(--muted);font-size:17px;max-width:380px}
.editorial-hero .actions{gap:12px;margin-top:32px}
.editorial-hero .actions .button{font-size:13px;padding:17px 20px}
.editorial-hero .button.ghost{color:var(--ink);border-color:#92877a;background:transparent;backdrop-filter:none}
.editorial-hero .button.ghost:hover{background:#e9e0d3}
.editorial-hero .anniversary{right:30px;top:30px;background:#27231fe8;color:#f6e6c9;box-shadow:0 6px 25px #27231f20}
.editorial-hero .hero-bottom{position:static;grid-column:1/-1;background:var(--ink);color:var(--cream);padding:20px 6%;gap:20px}
.editorial-hero .hero-bottom a{font-size:11px;letter-spacing:.7px;text-transform:none;min-height:44px;display:flex;align-items:center}
.section-top .text-link{margin-top:24px}.food-photo{border-radius:3px}.food-caption{padding-top:25px}.food-caption p{max-width:400px}
.story-chapters{max-width:520px;margin-top:22px;color:#e3dbce;font-size:16px;line-height:1.8}.story-intro{margin-top:30px}
.story-years{display:flex;align-items:center;gap:25px;max-width:420px;margin:38px 0 26px;color:var(--gold);font:38px Georgia,serif;font-variant-numeric:lining-nums}
.story-years i{height:1px;flex:1;background:#c6aa7655}.story .signature{font-size:17px;font-family:Georgia,serif;font-style:italic;letter-spacing:.2px}
.story-grid{grid-template-columns:1fr 1fr;gap:80px}.story figure{padding:14px;border:1px solid #c6aa7640;background:#211c19}.story .caption{text-align:center;margin-bottom:4px;color:#d8c6a7;letter-spacing:1px}
.culinary-gallery{grid-template-columns:1fr 1fr;gap:30px;align-items:start}.culinary-gallery button:first-child{grid-row:auto}.culinary-gallery img,.culinary-gallery button:first-child img{height:auto;aspect-ratio:1/1;object-fit:cover}.culinary-gallery button:nth-child(2){margin-top:75px}.culinary-gallery button:after{bottom:65px}.culinary-gallery span{padding:20px 3px;font:24px Georgia,serif}
.menu-feature{border:1px solid #d7cbb8;background:#eee5d7}.menu-feature .button{min-width:210px}.anniversary-statement{position:relative;background:var(--paper);border-top:1px solid var(--line)}.anniversary-statement:before{content:'';display:block;width:1px;height:48px;background:var(--rust);margin:0 auto 30px}.anniversary-statement p{letter-spacing:-2px;color:var(--rust)}
.faq summary{min-height:44px;align-items:center}.legal h1{font-size:clamp(42px,7vw,72px);letter-spacing:-2px}.legal .preview-notice{border-left:3px solid var(--rust)}
@media(min-width:1600px){.editorial-hero .wrap{padding-left:max(6vw,calc((100vw - 1280px)/2))}.editorial-hero .hero-photo{min-height:730px}}
@media(min-width:761px) and (max-width:1100px){.editorial-hero{grid-template-columns:52% 48%}.editorial-hero .wrap{padding:65px 32px}.editorial-hero h1{font-size:clamp(58px,7.1vw,78px)}.editorial-hero .actions{flex-direction:column;align-items:flex-start}.editorial-hero .actions .button{min-width:235px}.story-grid{gap:35px}.story h2{font-size:clamp(44px,5vw,58px)}}
@media(max-width:760px){.editorial-hero{grid-template-columns:1fr;min-height:0;align-items:stretch}.editorial-hero .wrap{grid-column:1;grid-row:1;padding:44px 6% 36px}.editorial-hero .eyebrow{font-size:10px;max-width:none;margin-bottom:24px;letter-spacing:1.4px}.editorial-hero h1{font-size:clamp(50px,13.1vw,76px);letter-spacing:-2.7px;margin-bottom:22px}.editorial-hero p{font-size:16px;margin-bottom:0}.editorial-hero .actions{display:grid;grid-template-columns:1fr;max-width:none;margin-top:24px;gap:10px}.editorial-hero .actions .button{min-height:50px;padding:14px}.editorial-hero .hero-photo{grid-column:1;grid-row:2;min-height:0;height:280px;object-position:center}.editorial-hero .hero-bottom{grid-row:3;padding:14px 6%;justify-content:center}.editorial-hero .hero-bottom a{font-size:12px;min-width:210px;justify-content:center}.editorial-hero .anniversary{top:auto;bottom:94px;right:6%;width:80px;height:80px}.story-grid{grid-template-columns:1fr;gap:35px}.story-intro{margin-top:26px}.story-years{margin:28px 0 24px;font-size:34px}.story figure{padding:8px}.culinary-gallery{grid-template-columns:1fr;gap:24px}.culinary-gallery button:nth-child(2){margin-top:0}.culinary-gallery img,.culinary-gallery button:first-child img{height:auto;max-height:none;aspect-ratio:auto}.culinary-gallery span{font-size:23px}.room-grid img{aspect-ratio:16/9;object-fit:contain}.anniversary-statement p{letter-spacing:-1.5px}.menu-feature .button{width:100%}}

/* Keep the anniversary wording comfortably inside the mobile seal. */
@media(max-width:760px){
  .editorial-hero .anniversary{
    width:106px;
    height:106px;
    right:5%;
    bottom:81px;
    padding:10px 6px;
  }
  .editorial-hero .anniversary strong{font-size:38px}
  .editorial-hero .anniversary span{
    display:block;
    max-width:100%;
    margin-top:7px;
    font-size:6px;
    line-height:1;
    letter-spacing:1.05px;
    text-align:center;
    white-space:nowrap;
  }
}
.reservation-status-page{max-width:760px}.status-brand{display:block;background:#27231f;padding:26px;margin:-2rem -1rem 3rem;text-align:center}.status-brand img{display:inline-block;width:min(280px,80%);height:auto}.status-card{margin:2rem 0}.status-kicker{font-size:.72rem;letter-spacing:.16em;color:#995435;font-weight:700}.status-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.5rem 0}.status-actions .button{margin:0}.reservation-status-page .fine{font-size:.88rem;color:#665b51}
/* Safari: shrink native date inputs to their actual form column. */
.booking-layout>*{min-width:0}.booking-layout .panel{width:100%;max-width:100%;box-sizing:border-box}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid>label,.form-grid>*{min-width:0;max-width:100%}.form-grid input,.form-grid select,.form-grid textarea{box-sizing:border-box;min-width:0;max-width:100%;width:100%}input[type=date],input[type=time]{appearance:none;-webkit-appearance:none;display:block;min-inline-size:0;inline-size:100%;max-inline-size:100%;min-height:48px}input::-webkit-date-and-time-value{min-width:0;text-align:left}input::-webkit-datetime-edit{min-width:0;padding:0}.menu-stage>*{min-width:0}.menu-image-button{display:block;min-width:0;max-width:100%}.menu-image-button img,#menu-image{display:block;width:100%;height:auto;max-height:none;object-fit:contain;aspect-ratio:990/1400}.legal h2{font:30px/1.25 Georgia,serif;letter-spacing:-.5px;text-wrap:wrap;overflow-wrap:anywhere}.legal a{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}.legal h1{overflow-wrap:anywhere}.legal p{max-width:70ch}@media(max-width:760px){.form-grid{grid-template-columns:minmax(0,1fr)}.booking-layout{width:100%;align-items:stretch}.booking-layout .panel{width:100%;min-width:0}.legal h2,.section .legal h2{font-size:25px;line-height:1.3;letter-spacing:-.3px}.menu-stage{padding:16px}.lightbox-toolbar{flex-wrap:wrap}.lightbox-toolbar button{min-width:0;flex:1}}

/* Readable menu and current recommendations: no horizontal page overflow. */
[hidden]{display:none!important}.digital-menu{padding-top:55px}.menu-search-tools{display:flex;gap:18px;align-items:end;padding:24px;background:#e9e1d4;border-radius:12px}.menu-search-tools label:first-child{flex:2}.menu-search-tools label{flex:1;min-width:0}.menu-search-tools input,.menu-search-tools select{border-radius:7px}.menu-search-tools .button{flex:0 0 auto}.menu-result{margin:20px 0 35px}.menu-category{padding:25px 0 50px;scroll-margin-top:110px}.category-title{display:flex;align-items:baseline;gap:20px;border-bottom:1px solid #ad9377;padding-bottom:18px;margin-bottom:12px}.category-title>span{font:12px Arial,sans-serif;color:var(--rust)}.category-title h3{font:40px Georgia,serif;margin:0}.dish-list{display:grid;grid-template-columns:1fr 1fr;column-gap:7%}.menu-dish{padding:23px 0;border-bottom:1px solid #dfd6c9;min-width:0}.dish-heading{display:flex;justify-content:space-between;gap:16px;align-items:baseline}.dish-heading h4{font:22px/1.3 Georgia,serif;margin:0;overflow-wrap:anywhere}.dish-heading>span{white-space:nowrap;font-size:16px;font-variant-numeric:tabular-nums;color:#79452c}.menu-dish>p{font-size:14px;color:var(--muted);line-height:1.6;margin:9px 0}.menu-dish details{font-size:12px;color:var(--muted)}.menu-dish summary{cursor:pointer;min-height:34px;padding:8px 0}.menu-dish details p{font-size:12px;line-height:1.5}.menu-footnote{padding:24px;border:1px solid #d8cbbc;border-radius:10px}.menu-footnote p{font-size:14px}.oggi-section{background:#e9e1d4}.oggi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px}.oggi-card{background:var(--paper);border:1px solid #d9cbbb;border-radius:12px;overflow:hidden}.oggi-card>img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover}.oggi-card>div{padding:24px}.oggi-heading{display:flex;gap:18px;align-items:baseline;justify-content:space-between}.oggi-heading h3{font:26px/1.25 Georgia,serif;margin:0;overflow-wrap:anywhere}.oggi-heading span{white-space:nowrap;color:var(--rust)}.oggi-card p{font-size:15px;line-height:1.65}.oggi-editors{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:20px;margin:28px 0}.oggi-editor{min-width:0;margin:0}.oggi-editor legend{font:24px Georgia,serif;padding:0 10px}.oggi-editor .check-label{display:flex;flex-direction:row;align-items:center;margin-bottom:25px}.oggi-editor .check-label input{width:22px;min-height:22px}.oggi-photo-preview{width:100%;height:180px;object-fit:cover;margin-top:20px;border-radius:8px}.culinary-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.culinary-gallery button:first-child{grid-row:auto}.culinary-gallery img,.culinary-gallery button:first-child img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}.culinary-gallery button[data-photo*="history"] img{object-position:top}.culinary-gallery button:after{bottom:60px}.culinary-gallery span{padding-right:6px}
@media(max-width:760px){.menu-search-tools{flex-direction:column;align-items:stretch;padding:20px;gap:16px}.dish-list{grid-template-columns:1fr}.category-title h3{font-size:34px}.menu-category{padding-bottom:30px}.dish-heading h4{font-size:21px}.dish-heading{gap:12px}.dish-heading>span{font-size:15px}.menu-dish>p{font-size:15px}.menu-footnote{padding:20px}.culinary-gallery{grid-template-columns:1fr 1fr;gap:20px 14px}.culinary-gallery button:after{content:'Ansehen';font-size:11px;padding:9px 11px;bottom:62px;right:9px}.culinary-gallery span{font-size:12px;min-height:49px}.oggi-editors{grid-template-columns:1fr}.oggi-card>div{padding:22px}.oggi-editor .form-grid{grid-template-columns:1fr}.menu-search-tools input{font-size:16px}}
/* Public drinks and wine list; presentation only, no ordering controls. */
.menu-kind-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.menu-kind-tabs button{min-height:48px;border:1px solid #aa927b;border-radius:8px;background:transparent;color:var(--ink);font:600 14px Arial,sans-serif;padding:12px 20px;cursor:pointer}.menu-kind-tabs button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--cream)}.menu-kind-tabs button:focus-visible{outline:3px solid var(--rust);outline-offset:3px}.beverage-prices{margin:14px 0 0;display:flex;flex-wrap:wrap;gap:10px 26px}.beverage-prices>div{display:flex;gap:12px;align-items:baseline}.beverage-prices dt{color:var(--muted);font-size:14px}.beverage-prices dd{margin:0;white-space:nowrap;color:#79452c;font-size:16px;font-variant-numeric:tabular-nums}.individual-menu-pdfs{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:18px}.individual-menu-pdfs a{padding:10px 0;color:var(--rust);text-decoration:underline;text-underline-offset:4px}#menu-heading{scroll-margin-top:110px}@media(max-width:760px){.menu-kind-tabs{gap:8px}.menu-kind-tabs button{padding:12px 14px}.category-title h3{overflow-wrap:anywhere}.beverage-prices{gap:10px 22px}.beverage-prices>div{gap:8px}}
/* Daily dishes: readable names, aligned prices and no competing photography. */
.oggi-section{background:#eee6d8;border-bottom:1px solid var(--line)}
.oggi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.oggi-card{border-radius:10px;border-top:3px solid #b59159;box-shadow:0 7px 24px #46331d06}
.oggi-card>div{padding:28px 30px}
.oggi-heading{gap:20px}
.oggi-heading h3{font-size:27px;text-wrap:pretty;overflow-wrap:normal}
.oggi-heading span{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}
.oggi-card p{margin:16px 0 0;color:var(--muted);max-width:55ch}
.oggi-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
@media(max-width:760px){.oggi-grid{grid-template-columns:minmax(0,1fr);gap:16px}.oggi-card>div{padding:24px 20px}.oggi-heading{gap:12px}.oggi-heading h3{font-size:23px}.oggi-heading span{font-size:16px}.oggi-actions{gap:12px}.oggi-section .section-top p{font-size:16px}}

/* Oggi highlight and mobile usability */
.oggi-featured{grid-column:1/-1;border-top:4px solid #b59159;background:#29231d;color:#fff6e7;display:grid;grid-template-columns:1fr 1fr;align-items:center}.oggi-featured:not(:has(>img)){display:block}.oggi-featured>img{height:100%;max-height:430px;aspect-ratio:4/3}.oggi-featured p,.oggi-featured .oggi-heading span{color:#ebd6b4}.oggi-badge{display:inline-block;font:600 12px/1.5 Arial,sans-serif;letter-spacing:.06em;margin-bottom:16px;border:1px solid #b59159;border-radius:4px;padding:6px 10px}.sold-out{background:#f3e2cf;color:#5f3624;margin-left:6px}.oggi-editor-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.oggi-editor-actions .button{min-height:44px;padding:10px 12px;font-size:13px}.oggi-heading h3{overflow-wrap:anywhere;min-width:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #aa713a;outline-offset:4px}#oggi{scroll-margin-top:100px}
@media(max-width:760px){.oggi-featured{grid-template-columns:minmax(0,1fr)}.oggi-featured>img{max-height:320px}.dashboard input,.dashboard textarea,.dashboard select{font-size:16px}.nav.open{max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain}.mobile-bar{padding-bottom:env(safe-area-inset-bottom)}.oggi-editor-actions .button{flex:1 1 42%}.oggi-heading{flex-wrap:wrap}.oggi-heading h3{flex:1 1 180px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-on-scroll{opacity:1!important;transform:none!important}}

/* Compact header on scroll and tighter Oggi cards. */
.header{transition:height .18s ease}
.header.is-compact{height:64px}
.header.is-compact .brand{width:180px}
.header.is-compact .brand span{display:none}
.header.is-compact .menu-toggle{min-height:44px;padding:9px 12px}
.oggi-card>div{padding:23px 25px}
.oggi-card p{margin-top:10px;line-height:1.6}
.oggi-badge{margin-bottom:10px;padding:5px 9px}
@media(max-width:1100px){.header .nav{top:100%;max-height:calc(100dvh - 100px)}.header.is-compact .nav{max-height:calc(100dvh - 76px)}}
@media(max-width:760px){.header.is-compact{height:58px}.header.is-compact .brand{width:150px}.oggi-card>div{padding:18px 20px}.oggi-grid{gap:14px}.oggi-card p{margin-top:10px;line-height:1.6}}
@media(prefers-reduced-motion:reduce){.header{transition:none}}
/* Opening information and factual guest guidance. */
.opening-strip{background:var(--cream);border-bottom:1px solid var(--line)}.opening-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:12px;padding-bottom:12px}.opening-strip p{margin:0;font-size:14px;line-height:1.5;min-width:0}.opening-strip .button{min-height:44px;flex-shrink:0;padding:10px 18px}.hero .hero-location{font-size:16px;margin-bottom:12px;font-weight:600}.confirmation-note{font-size:14px;line-height:1.65}.oggi-date{font-size:13px!important;margin-bottom:18px!important;color:var(--muted)}.quote-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px}.quote-grid figure{margin:0;padding:24px;border:1px solid var(--line);background:var(--paper)}.quote-grid blockquote{margin:0}.quote-grid figcaption{font-size:13px}.faq summary:focus-visible{outline:3px solid var(--rust);outline-offset:4px}
@media(max-width:400px){.opening-strip .wrap{width:92%;gap:10px}.opening-strip p{font-size:13px}.opening-strip .button{padding:10px 14px}.hero .hero-location{font-size:15px}.booking-layout .phone{font-size:24px;max-width:100%}.confirmation-note{overflow-wrap:anywhere}.faq summary{min-height:44px}}

/* Compact, readable reservation response information. */
.confirmation-summary{display:grid;gap:.3rem;margin:.7rem 0}.confirmation-summary strong{font-size:1rem}.confirmation-summary>span{font-size:.95rem;line-height:1.5}.confirmation-details{display:block;font-size:.875rem;line-height:1.6}.form-success{white-space:pre-line}

.celebration-facts ul{padding-left:1.3rem;max-width:52rem}.celebration-facts li{margin:.8rem 0;line-height:1.6}#email-response-hint{display:block;font-size:.875rem;line-height:1.5;margin-top:.4rem}

.review-callout{margin-top:1.5rem}.review-callout p{margin-bottom:.75rem}.review-button{background:#27231f;color:#fffcf7;border:1px solid #b49a65;min-height:44px;white-space:normal;text-align:center}.review-button:focus-visible{outline:3px solid #995435;outline-offset:4px}.footer-reviews{padding-top:1.5rem;padding-bottom:2rem}.footer-reviews .review-callout p{color:#f7f3eb}.footer-reviews .review-button{background:#f7f3eb;color:#27231f}.guest-quotes .quote-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.guest-quotes figure{margin:0;padding:1.5rem;min-width:0;background:#fffcf7;color:#27231f;border:1px solid #ded5c8}.guest-quotes blockquote{margin:0 0 1rem}.guest-quotes figcaption{font-size:.9rem}.guest-quotes .text-link{display:inline-block;margin-top:1rem}@media(max-width:700px){.guest-quotes .quote-grid{grid-template-columns:1fr}.review-button{max-width:100%}}

/* San Marco collection on the restaurant landing page */
.home-merch{background:#eae3d5;border-top:1px solid #d4c6aa;border-bottom:1px solid #d4c6aa;margin-bottom:80px}.home-merch-heading{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-bottom:36px}.home-merch-heading h2{margin:12px 0}.home-merch-heading p{max-width:560px}.home-merch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.home-merch-card{display:flex;flex-direction:column;align-items:center;background:#faf7f0;color:#27231d;text-decoration:none;border:1px solid #d7cbb5;border-radius:12px;overflow:hidden;transition:transform .2s}.home-merch-card:hover{transform:translateY(-3px)}.home-merch-card:focus-visible{outline:3px solid #725221;outline-offset:5px}.home-merch-card img{display:block;width:250px;max-width:100%;height:auto;object-fit:contain}.home-merch-card>div{padding:18px 24px 24px;align-self:stretch}.home-merch-card span{font-size:10px;letter-spacing:.12em;color:#765b30}.home-merch-card h3{font-size:27px;line-height:1.15;margin:10px 0}.home-merch-card p{font-size:14px;margin:0;color:#625c51}.home-merch-note{font-size:12px;color:#625c51;margin:24px 0 0;line-height:1.6}@media(max-width:700px){.home-merch{margin-bottom:48px}.home-merch-heading{grid-template-columns:1fr;gap:10px}.home-merch-grid{grid-template-columns:1fr;gap:16px}.home-merch-card{flex-direction:row;align-items:center}.home-merch-card img{width:38%;max-width:180px;flex-shrink:0}.home-merch-card>div{padding:20px 16px;align-self:auto;min-width:0}.home-merch-card h3{font-size:24px}.home-merch-card p{font-size:13px}}@media(prefers-reduced-motion:reduce){.home-merch-card{transition:none}.home-merch-card:hover{transform:none}}
