/* Preserved cascade: style.css */
/* Daly's Draft2: Broadway warmth, a printed-menu sensibility, real photography. */
@font-face{font-family:Boska;src:url("assets/fonts/Boska-Regular.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Switzer;src:url("assets/fonts/Switzer-Regular.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Switzer;src:url("assets/fonts/Switzer-Semibold.woff2") format("woff2");font-style:normal;font-weight:600;font-display:swap}
:root{
  --charcoal:#252723;--cream:#f5f0e6;--paper:#eee8dc;--red:#8e3039;
  --red-hover:#71252d;--rose:#e6a49b;--gold:#c3a366;--ink:#30342c;
  --muted:#625c50;--line:#d6ccba;--dark-line:#ffffff29;
  --font-display:Boska,Georgia,serif;--font-body:Switzer,Arial,sans-serif;
  --text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;
  --text-title:clamp(2.5rem,1.75rem + 3vw,4.75rem);
  --text-hero:clamp(3.25rem,1.5rem + 4.7vw,6.25rem);
  --s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.25rem;
  --s6:1.5rem;--s8:2rem;--s10:2.5rem;--s12:3rem;--s16:4rem;
  --s20:5rem;--s24:6rem;--gutter:clamp(1.25rem,5.5vw,6rem);
  --section-space:clamp(4rem,7vw,7.5rem);--header-height:88px;
  --ease:cubic-bezier(.2,.7,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + var(--s6));-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;overflow-wrap:anywhere;-webkit-font-smoothing:antialiased}
main :where(section,div,figure){min-width:0}
a{color:inherit;text-decoration:none}
button,input{font:inherit;color:inherit}
button,a,input{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:disabled{cursor:default}
a,button,input{transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease),transform .2s var(--ease)}
:focus-visible{outline:3px solid var(--red);outline-offset:5px}
:is(.site-header,.hero,.space-section,.signature-plate,footer) :focus-visible{outline-color:var(--gold)}
main:focus{outline:none}
::selection{background:var(--red);color:var(--cream)}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,h4,p,figure{margin:0}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;line-height:1.04;letter-spacing:-.035em;text-wrap:balance}
h2{font-size:var(--text-title)}
p{line-height:1.7}
.eyebrow,.rail-label{font-size:var(--text-xs);font-weight:600;letter-spacing:.13em;line-height:1.5}
.eyebrow{margin-bottom:var(--s6)}
.section-pad{padding:var(--section-space) var(--gutter)}
.site-header{height:auto;min-height:88px;position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:var(--s6);padding:var(--s3) var(--gutter);background:var(--charcoal);color:var(--cream);border-bottom:1px solid var(--dark-line)}
.wordmark{display:block;flex-shrink:0;font-family:var(--font-display);font-size:2.5rem;line-height:1;letter-spacing:-.04em}
.wordmark span,.footer-brand span{display:block;font-family:var(--font-body);font-size:var(--text-xs);font-weight:400;letter-spacing:.13em;line-height:1.4;margin-top:var(--s1)}
.site-header nav{display:flex;align-items:center;gap:var(--s8)}
.site-header nav a{font-size:var(--text-sm);min-height:44px;display:flex;align-items:center;border-bottom:1px solid transparent}
.site-header nav a:hover,.site-header nav a[aria-current=location]{color:var(--gold);border-bottom-color:var(--gold)}
.languages{display:flex;align-items:center;gap:var(--s1);font-size:var(--text-xs)}
.languages>span{color:#b8b9af}
.languages button{display:block;min-width:44px;min-height:44px;padding:var(--s2);border:1px solid transparent;background:transparent;color:#c9c8bd;font-size:var(--text-sm)}
.languages button[aria-pressed=true]{color:var(--cream);border-bottom-color:var(--gold)}
.languages button:hover{background:#ffffff0d;color:var(--cream)}
.hero{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,5rem);padding:var(--s12) var(--gutter) var(--s16);background:linear-gradient(#252723dc,#252723ee),url("assets/leather.webp") center/cover no-repeat;color:var(--cream);align-items:center}
.hero-copy{padding-bottom:var(--s5);min-width:0}
.hero-identity{display:flex;align-items:center;gap:var(--s6);margin-bottom:var(--s8)}
.hero-logo{width:68px;height:102px;object-fit:contain;flex-shrink:0}
.hero-identity .eyebrow{margin-bottom:var(--s1);color:var(--gold)}
.identity-place{font-size:var(--text-xs);letter-spacing:.12em;color:#dad4c8}
.hero h1{font-size:var(--text-hero);line-height:1.01;letter-spacing:-.04em}
.hero h1>span{display:block}
.hero h1 .accent{color:var(--rose)}
.hero-description{max-width:33ch;color:#d9d8ce;margin-top:var(--s6);font-size:var(--text-base)}
.hero-actions{display:flex;gap:var(--s8);align-items:center;flex-wrap:wrap;margin-top:var(--s8)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--s8);padding:var(--s4) var(--s6);min-height:52px;max-width:100%;border:1px solid transparent;font-size:var(--text-sm);font-weight:600;line-height:1.4}
.button>span:first-child,.text-link>span:first-child,.map-button>span:first-child{min-width:0}
.primary{background:var(--red);color:#fff}
.primary:hover{background:var(--red-hover);transform:translateY(-2px)}
.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--s5);min-height:44px;padding-block:var(--s2);border-bottom:1px solid #c3a36690;font-size:var(--text-sm);color:var(--cream)}
.text-link:hover{border-bottom-color:currentColor;color:var(--gold)}
.text-link.dark{color:var(--red)}
.text-link.dark:hover{color:var(--red-hover)}
.hero-address{margin-top:var(--s10);font-size:var(--text-xs);letter-spacing:.08em;color:#c9c6ba;display:flex;flex-wrap:wrap;gap:var(--s3)}
.hero-image{position:relative;min-width:0;padding-top:var(--s5)}
.hero-photo{aspect-ratio:1/1.05;padding:var(--s2);border:1px solid #c3a36688}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.hero-image figcaption{display:flex;justify-content:space-between;gap:var(--s4);padding-top:var(--s4);font-size:var(--text-xs);color:#e4d8c3}
.hero-image figcaption [lang]{color:var(--gold)}
.hero-flourish{position:absolute;right:var(--s4);top:calc(-1 * var(--s3));width:110px;height:28px;object-fit:contain;padding-inline:var(--s3)}
.ribbon{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--s6);padding:var(--s5) var(--gutter);background:var(--red);color:var(--cream);font-size:var(--text-xs);letter-spacing:.13em}
.ribbon-mark{color:#e7c581;font-size:var(--text-lg)}
.introduction{display:grid;grid-template-columns:1.3fr 1fr;gap:8vw;align-items:center}
.introduction h2{color:var(--red)}
.intro-detail>p{max-width:42ch;margin-bottom:var(--s6)}
.food-story{display:grid;grid-template-columns:1fr 1fr .85fr;gap:var(--s8);align-items:center;padding:0 var(--gutter) var(--section-space)}
.food-story figure:first-child img{aspect-ratio:1/1.05;object-fit:cover}
.food-story figure:nth-child(2){padding-top:var(--s20)}
.food-story figure:nth-child(2) img{aspect-ratio:1.15;object-fit:cover}
.food-story figcaption{display:flex;justify-content:space-between;gap:var(--s3);font-size:var(--text-xs);margin-top:var(--s4)}
.food-story figcaption>span:last-child{color:var(--muted)}
.signature-plate{text-align:center;align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--s6);background:var(--charcoal);color:var(--cream);border:1px solid #c3a36688}
.signature-plate .eyebrow{color:var(--gold);margin-bottom:var(--s4)}
.signature-plate img{width:100%;max-width:300px;margin:auto}
.signature-plate button{border:0;border-bottom:1px solid var(--gold);background:transparent;margin-top:var(--s4)}
.menu-section{background:var(--paper);border-block:1px solid var(--line)}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:var(--s8)}
.section-heading h2{color:var(--red)}
.section-heading>p{max-width:32ch;color:var(--muted)}
.menu-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:start;margin-top:var(--s12)}
.menu-rail{position:sticky;top:calc(var(--header-height) + var(--s8))}
.rail-label{color:var(--muted);margin-bottom:var(--s5)}
.categories{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.categories button{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);text-align:left;min-height:48px;width:100%;padding:var(--s3) var(--s4);background:transparent;border:0;border-bottom:1px solid var(--line);font-size:var(--text-sm)}
.categories button:hover{background:#dfd5c3}
.categories button[aria-pressed=true]{background:var(--red);border-color:var(--red);color:#fff}
.category-count{font-size:var(--text-xs);font-variant-numeric:tabular-nums;opacity:.8}
.rail-flourish{width:140px;margin:var(--s8) auto 0}
.menu-body{min-width:0}
.search-row{display:flex;align-items:end;gap:var(--s6)}
.search-label{display:block;flex:1;min-width:0;font-size:var(--text-xs);font-weight:600;letter-spacing:.03em}
.search-label>span{display:block;margin-bottom:var(--s2)}
.search-label input{width:100%;min-width:0;min-height:48px;padding:var(--s3) var(--s4);border:1px solid #afa28c;border-radius:0;background:#f8f4eb;font-size:var(--text-base);font-weight:400;letter-spacing:0}
.search-label input::placeholder{color:#6e6657;opacity:1}
.clear-button{min-height:48px;padding:var(--s3) 0;border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--red);font-size:var(--text-sm)}
.clear-button:disabled{color:var(--muted);border-color:var(--line)}
.result-status{font-size:var(--text-xs);color:var(--muted);margin-top:var(--s4);min-height:1.7em}
#menu-content{min-height:220px}
.menu-group{margin-top:var(--s8)}
.menu-group+.menu-group{margin-top:var(--s12)}
.menu-group h3{display:flex;align-items:baseline;gap:var(--s4);color:var(--red);font-size:2.25rem;border-bottom:1px solid #b8aa91;padding-bottom:var(--s4)}
.group-number{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.06em;color:var(--muted)}
.menu-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--s10)}
.menu-item{padding:var(--s6) 0;border-bottom:1px solid var(--line);break-inside:avoid;min-width:0}
.menu-item-heading{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s4)}
.menu-item h4{font-size:1.75rem;line-height:1.14;letter-spacing:-.02em;overflow-wrap:anywhere}
.price{font-family:var(--font-body);font-size:var(--text-sm);font-variant-numeric:tabular-nums;white-space:nowrap}
.price.pending{font-size:var(--text-xs);white-space:normal;text-align:right;flex-shrink:0;max-width:95px;color:var(--muted)}
.menu-item p{margin-top:var(--s3);font-size:var(--text-sm);color:var(--muted);line-height:1.65;max-width:45ch}
.menu-item .review-note{font-size:var(--text-xs);color:var(--red)}
.menu-footnote{font-size:var(--text-xs);color:var(--muted);border-top:1px solid var(--line);padding-top:var(--s6);margin-top:var(--s10)}
.empty-state,.error-state{padding:var(--s10) var(--s6);margin-top:var(--s8);border:1px solid var(--line);background:var(--cream)}
.empty-state p,.error-state p{max-width:48ch;margin-bottom:var(--s5)}
.empty-state .button,.error-state .button{font-size:var(--text-sm)}
.loading-copy{padding-top:var(--s8);color:var(--muted)}
.space-section{display:grid;grid-template-columns:1fr 1fr;background:var(--charcoal);color:var(--cream)}
.space-photo{min-width:0}
.space-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.space-copy{padding:var(--section-space) var(--gutter);background:linear-gradient(#252723ed,#252723f5),url("assets/leather.webp") center/cover no-repeat}
.space-copy .eyebrow{color:var(--gold)}
.space-copy h2{color:var(--rose)}
.space-copy>p:not(.eyebrow){max-width:37ch;margin-top:var(--s6);color:#d9d8ce}
.window-detail{max-width:300px;margin:var(--s8) 0}
.window-photo{width:100%;aspect-ratio:1.4;object-fit:cover;object-position:50% 55%;padding:var(--s2);border:1px solid #c3a36680}
.window-detail figcaption{font-size:var(--text-xs);color:#c9c6ba;margin-top:var(--s3)}
.visit-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr));gap:6vw;align-items:center}
.visit-copy .eyebrow{color:var(--muted)}
.visit-copy h2{color:var(--red);margin-bottom:var(--s8)}
address{font-style:normal;font-size:var(--text-base);line-height:1.8}
address strong{font-weight:600}
.phone{display:inline-flex;align-items:center;min-height:44px;font-size:1.5rem;letter-spacing:-.02em;margin-top:var(--s4);color:var(--red)}
.phone:hover{text-decoration:underline;text-underline-offset:5px}
.visit-actions{display:flex;gap:var(--s6);align-items:center;flex-wrap:wrap;margin-top:var(--s6)}
.visit-note{font-size:var(--text-sm);color:var(--muted);margin-top:var(--s6)}
.location-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,max(13rem,50%)),1fr));border:1px solid var(--line);min-width:0}
.storefront{position:relative}
.storefront img{width:100%;height:100%;min-height:420px;object-fit:cover;object-position:50% 20%}
.storefront-label{position:absolute;left:var(--s4);bottom:var(--s4);padding:var(--s2) var(--s3);background:var(--cream);color:var(--ink);font-size:var(--text-xs);letter-spacing:.1em}
.map-slot{display:flex;justify-content:center;align-items:center;text-align:center;min-height:280px;padding:var(--s8);background:var(--paper)}
.map-slot .eyebrow{margin-bottom:var(--s3);color:var(--muted)}
.map-address{font-family:var(--font-display);font-size:2rem;line-height:1.2}
.map-address span{font-family:var(--font-body);font-size:var(--text-sm)}
.map-button{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--s6);min-height:48px;border:1px solid var(--charcoal);padding:var(--s3) var(--s5);margin:var(--s5) 0 var(--s3);background:var(--charcoal);color:var(--cream);font-size:var(--text-sm)}
.map-button:hover{background:var(--red);border-color:var(--red)}
.map-slot small{display:block;font-size:var(--text-xs);color:var(--muted);max-width:36ch;margin:auto}
.map-slot.loaded{padding:0;min-height:340px}
.map-slot iframe{display:block;width:100%;height:340px;border:0}
.map-fallback{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding:var(--s4) var(--s5);min-height:52px;border-top:1px solid var(--line);font-size:var(--text-xs);color:var(--red)}
.map-fallback:hover{background:var(--paper)}
footer{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:var(--s8);padding:var(--s16) var(--gutter) var(--s6);background:var(--charcoal);color:var(--cream)}
.footer-brand{font-family:var(--font-display);font-size:3.75rem;line-height:1;letter-spacing:-.04em}
footer>p{color:#d9d8ce;font-size:var(--text-sm)}
.review-label{grid-column:1/-1;display:flex;justify-content:space-between;gap:var(--s4);border-top:1px solid var(--dark-line);padding-top:var(--s6);font-size:var(--text-xs);letter-spacing:.05em;color:#c9c6ba}
.mobile-actions{display:none}
.skip{position:fixed;top:-120px;left:var(--s5);z-index:100;padding:var(--s4);background:var(--cream);color:var(--ink)}
.skip:focus{top:var(--s3)}
[data-t=comfort],[data-t=stay],[data-t=visitTitle],[data-t=thanks],[data-t=menuIntro],[data-t=enjoy]{white-space:pre-line}
@media(min-width:1800px){:root{--gutter:max(6rem,calc((100vw - 1560px)/2))}}
@media(max-width:1100px){
  .hero{gap:var(--s8)}
  .hero h1{font-size:clamp(3.25rem,1.25rem + 4.6vw,5rem)}
  .hero-actions{gap:var(--s5)}
  .menu-layout{grid-template-columns:175px minmax(0,1fr);gap:var(--s8)}
  .menu-grid{grid-template-columns:1fr}
  .food-story{gap:var(--s6);grid-template-columns:1fr 1fr}
  .signature-plate{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;text-align:left;gap:var(--s5);padding:var(--s6) var(--s8)}
  .signature-plate .eyebrow{grid-column:2;grid-row:1;align-self:end;margin-bottom:0}
  .signature-plate img{grid-column:1;grid-row:1/3;width:220px;max-width:100%}
  .signature-plate button{grid-column:2;grid-row:2;align-self:start;justify-self:start;margin-top:0}
  .site-header nav{gap:var(--s5)}
}
@media(max-width:760px){
  :root{--header-height:120px}
  .site-header{height:auto;min-height:120px;padding:var(--s3) var(--gutter) 0;gap:0;flex-wrap:wrap}
  .wordmark{font-size:2rem}
  .wordmark span{font-size:var(--text-xs);letter-spacing:.06em}
  .site-header nav{order:3;flex-basis:100%;flex-wrap:wrap;justify-content:space-between;gap:0 var(--s4);margin-top:var(--s2)}
  .site-header nav a{font-size:var(--text-sm);min-height:44px}
  .hero{grid-template-columns:1fr;padding-top:var(--s8);padding-bottom:var(--s8);gap:var(--s8)}
  .hero-identity{gap:var(--s5);margin-bottom:0;order:0}
  .hero-logo{width:52px;height:78px}
  .hero h1{font-size:clamp(3rem,1.5rem + 6.5vw,4.5rem);order:1}
  .hero-description{max-width:40ch;order:3;margin-top:0}
  .hero-actions{order:4;margin-top:0}
  .hero-address{margin-top:0;order:5;font-size:var(--text-xs);letter-spacing:.04em;gap:var(--s2)}
  .hero-copy{display:contents}
  .hero-image{padding-top:0;order:2}
  .hero-photo{aspect-ratio:1.25}
  .hero-flourish{display:none}
  .ribbon{gap:var(--s3);font-size:var(--text-xs);letter-spacing:.05em;padding-block:var(--s4)}
  .ribbon>span:nth-child(n+4){display:none}
  .introduction{grid-template-columns:1fr;gap:var(--s6)}
  .intro-detail>p{max-width:50ch}
  .food-story{gap:var(--s4)}
  .food-story figure:nth-child(2){padding-top:var(--s12)}
  .food-story figcaption{line-height:1.4;gap:var(--s2)}
  .food-story figcaption>span:last-child{display:none}
  .signature-plate{padding:var(--s5);gap:var(--s4)}
  .signature-plate button{font-size:var(--text-xs);gap:var(--s3)}
  .section-heading{display:block}
  .section-heading>p{margin-top:var(--s5);max-width:40ch}
  .menu-layout{display:block;margin-top:var(--s8)}
  .menu-rail{position:static}
  .rail-label{margin-bottom:var(--s3)}
  .rail-flourish{display:none}
  .categories{flex-direction:row;gap:var(--s2);border:0;overflow-x:auto;padding:var(--s2) var(--s1) var(--s4);margin-inline:calc(-1 * var(--s1));scrollbar-width:thin;scrollbar-color:var(--red) var(--line);overscroll-behavior-x:contain}
  .categories button{flex:0 0 auto;width:auto;min-height:48px;padding:var(--s3) var(--s4);border:1px solid #b8aa91;white-space:nowrap}
  .category-count{display:none}
  .menu-body{margin-top:var(--s6)}
  .search-row{gap:var(--s4)}
  .clear-button{font-size:var(--text-xs);max-width:78px;line-height:1.5}
  .menu-group h3{font-size:2.25rem}
  .menu-item h4{font-size:1.75rem}
  .space-section{grid-template-columns:1fr}
  .space-photo img{height:auto;max-height:none;object-fit:contain}
  .space-copy{padding:var(--s12) var(--gutter)}
  .window-detail{max-width:none}
  .window-photo{aspect-ratio:1.5}
  .visit-section{grid-template-columns:1fr;gap:var(--s10)}
  .location-card{grid-template-columns:1fr}
  .storefront img{height:auto;min-height:0;object-fit:contain}
  footer{grid-template-columns:1fr auto;padding-top:var(--s12);padding-bottom:calc(88px + env(safe-area-inset-bottom))}
  footer>p{grid-column:1/-1;grid-row:2}
  .footer-brand{font-size:3rem}
  .review-label{flex-direction:column;font-size:var(--text-xs)}
  .mobile-actions{position:fixed;bottom:0;left:0;right:0;z-index:40;display:grid;grid-template-columns:1fr 1fr 1fr;padding-bottom:env(safe-area-inset-bottom);background:var(--cream);border-top:1px solid var(--line)}
  .mobile-actions a{display:flex;align-items:center;justify-content:center;min-height:56px;font-size:var(--text-sm);font-weight:600;color:var(--red)}
  .mobile-actions a+a{border-left:1px solid var(--line)}
  .mobile-actions a:first-child{background:var(--red);color:#fff}
  .mobile-actions a:hover{background:var(--charcoal);color:var(--cream)}
  html{scroll-padding-bottom:80px}
}
@media(max-width:360px){
  .hero h1{font-size:3rem}
  .hero-identity{gap:var(--s4)}
  .hero-identity .eyebrow,.identity-place{letter-spacing:.03em}
  .hero-actions{gap:var(--s4)}
  .hero-actions .button{padding-inline:var(--s5)}
  .hero-actions .text-link{gap:var(--s3)}
  .ribbon{letter-spacing:0}
  .search-row{gap:var(--s3)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Draft3: a photo-led journey, with distinct roles for photographs and artwork. */
:root{--section-space:clamp(3rem,5.3vw,5.5rem);--text-hero:clamp(3.25rem,2rem + 3.5vw,5.75rem)}
html{scroll-behavior:auto}
.hero{grid-template-columns:.85fr 1.15fr;gap:4vw;padding-top:2.5rem;padding-bottom:3rem;background:linear-gradient(#252723ec,#252723f7),url('assets/leather.webp') center/cover}
.hero h1{font-size:var(--text-hero)}
.hero-identity{margin-bottom:1.5rem;gap:1rem}.hero-logo{width:60px;height:90px}
.hero-description{max-width:34ch}.hero-address{margin-top:1.5rem}
.hero-photo{aspect-ratio:1.2;padding:0;border:0}.hero-photo img{object-fit:cover;border-radius:2px;object-position:50% 50%}
.hero-image{padding:1rem}.hero-flourish{display:none}
.hero-corner{position:absolute;width:75px;height:70px;object-fit:contain;pointer-events:none;opacity:.8;z-index:1}.corner-tl{top:0;left:0}.corner-br{right:0;bottom:2.7rem}
.hero-image figcaption{font-size:.875rem}.hero h1 .accent{color:#efb1a1}
.ribbon{padding-block:1rem}
.section-heading{margin-bottom:2rem;align-items:start}.section-heading>p,.section-heading>div>p:not(.eyebrow){max-width:36ch;color:var(--muted)}
.section-heading h2{max-width:13ch;font-size:clamp(2.75rem,2rem + 2.7vw,4.75rem)}
.food-story{display:block;padding:var(--section-space) var(--gutter);background:var(--cream)}
.food-story .section-heading h2{color:var(--red)}
.gallery{min-width:0;max-width:100%;position:relative}.gallery-track{position:relative;display:flex;gap:1.5rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:.35rem .35rem 1rem;scrollbar-width:thin;scrollbar-color:#a8997d transparent;scroll-padding-inline:.35rem;touch-action:pan-x pan-y}
.gallery-track:focus-visible{outline-offset:1px}.gallery-card{flex:0 0 calc((100% - 3rem)/3);min-width:0;scroll-snap-align:start;display:flex;flex-direction:column}
.photo-open{border:0;padding:0;background:transparent;display:block;position:relative;width:100%;min-width:0;overflow:hidden;cursor:zoom-in;isolation:isolate}
.gallery-card .photo-open{aspect-ratio:1.1}.gallery-card .photo-open>img{width:100%;height:100%;object-fit:cover;transition:transform .35s var(--ease)}
.photo-open:hover>img{transform:scale(1.025)}.photo-open:focus-visible{outline-offset:-5px;outline:3px solid var(--red)}
.enlarge-mark{position:absolute;bottom:.7rem;right:.7rem;display:grid;place-items:center;width:38px;height:38px;background:var(--cream);color:var(--red);border-radius:50%;font-size:1.2rem;box-shadow:0 1px 10px #0001}
.gallery-card figcaption{font-size:.875rem;line-height:1.5;margin-top:.8rem;color:var(--muted);padding-right:1rem}
.food-story figure:nth-child(2){padding:0}.food-story figure:first-child img,.food-story figure:nth-child(2) img{aspect-ratio:auto;object-fit:cover}
.gallery-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:.6rem}.gallery-hint{font-size:.75rem;color:var(--muted)}.gallery-controls{display:flex;align-items:center;gap:.75rem}.gallery-controls button{width:48px;height:48px;flex-shrink:0;border:1px solid #a99e88;border-radius:50%;background:transparent;color:var(--red);font-size:1.25rem}.gallery-controls button:hover{background:var(--red);color:white;border-color:var(--red)}.gallery-controls button[aria-disabled=true]{opacity:.38;cursor:default}.gallery-controls button[aria-disabled=true]:hover{background:transparent;color:inherit;border-color:#a99e88}.gallery-position{font-size:.75rem;min-width:4rem;text-align:center;font-variant-numeric:tabular-nums}
.plate-section{background:var(--charcoal);color:var(--cream);position:relative}.plate-section h2{color:#efb1a1}.plate-section .eyebrow{color:var(--gold)}.plate-section .section-heading>p{color:#d9d8ce}.plate-section .gallery-hint,.plate-section figcaption{color:#d9d8ce}.plate-section .gallery-controls button{color:var(--cream);border-color:#ad9871}.plate-section :focus-visible{outline-color:var(--gold)}
.art-card .photo-open{aspect-ratio:1/1;background:#393c34;padding:1rem;border:1px solid #c3a3663d}.art-card .photo-open>img{object-fit:contain!important;object-position:center}.art-card .photo-open:hover>img{transform:none}.art-card figcaption{padding-right:0}.plate-foot{display:flex;align-items:center;justify-content:space-between;gap:2rem;border-top:1px solid #c3a3664d;margin-top:1.75rem;padding-top:1.5rem}.plate-foot>p{max-width:65ch;font-size:.75rem;color:#cecbbf}.plate-foot button{background:none;border:0;border-bottom:1px solid var(--gold);min-width:10rem}
.picture-menu{display:grid;grid-template-columns:.85fr 1.15fr;gap:5vw;align-items:center;background:#e7dfce;border-bottom:1px solid var(--line)}.picture-intro h2{color:var(--red);font-size:clamp(2.75rem,2rem + 2.5vw,4.5rem);max-width:12ch}.picture-intro>p:not(.eyebrow){margin:1.5rem 0;color:var(--muted);max-width:40ch}.picture-sheets{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.picture-sheets .gallery-card{width:100%}.picture-sheets .photo-open{background:#eae4d8;border:1px solid #b9a778;padding:.75rem;aspect-ratio:1/1.16;box-shadow:0 12px 25px #2821190a}.picture-sheets .gallery-card:nth-child(2){padding-top:2rem}.picture-sheets .photo-open img{object-fit:contain}.picture-sheets figcaption{color:var(--muted);font-size:.75rem}.picture-sheets .enlarge-mark{width:34px;height:34px;bottom:.5rem;right:.5rem}
.menu-section{padding-top:var(--section-space)}.menu-section .section-heading h2{max-width:none}.menu-section .section-heading{margin-bottom:0}
.refreshments{background:#f3edde}.refreshments h2{color:var(--red)}.refreshments .section-heading>div:last-child{max-width:38ch}.refreshments .section-heading .text-link{margin-top:1rem}.refreshments .gallery-card{flex-basis:calc((100% - 4.5rem)/4)}.refreshments .gallery-card .photo-open{aspect-ratio:1/1.15}.refreshments .gallery-card:first-child .photo-open>img{object-position:55% 60%}.collection-note{font-size:.75rem;color:var(--muted);max-width:80ch;margin-top:1.5rem}
.room-section{background:var(--charcoal);color:var(--cream)}.room-section .eyebrow{color:var(--gold)}.room-section .section-heading h2{color:#efb1a1}.room-section .section-heading>p{color:#d9d8ce}.room-lead{display:grid;grid-template-columns:1.4fr 1fr;gap:4vw;align-items:center;margin-bottom:2rem}.room-lead .photo-open{max-height:560px;aspect-ratio:1.25;background:#1b1d19}.room-lead .photo-open>img{height:100%;width:100%;object-fit:contain}.room-note{padding:1rem}.room-note img{width:150px;height:auto;margin-bottom:2rem}.room-note p{font-family:var(--font-display);font-size:clamp(2rem,1.3rem + 2vw,3.5rem);line-height:1.15;white-space:pre-line;max-width:16ch;margin-bottom:2rem}.room-section .gallery-card .photo-open{aspect-ratio:1.1}.room-section figcaption,.room-section .gallery-hint{color:#d9d8ce}.room-section .gallery-controls button{color:var(--cream);border-color:#ad9871}.room-section :focus-visible{outline-color:var(--gold)}
.visit-section{background:var(--cream)}.storefront img{object-fit:contain;background:#e7dfce}.arrival-detail{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:2rem;max-width:800px;margin:0 var(--gutter) var(--section-space);border-top:1px solid var(--line);padding-top:1.5rem}.arrival-detail>img{width:180px;height:150px;object-fit:cover;object-position:50% 70%}.arrival-detail figcaption{display:flex;flex-direction:column;gap:.5rem;font-size:.875rem}.arrival-detail figcaption>span:last-child{font-size:.75rem;color:var(--muted)}
#photo-dialog{border:1px solid #aa976b;background:#23251f;color:var(--cream);padding:1rem;max-width:min(94vw,1400px);width:fit-content;max-height:92dvh;overflow:auto;overscroll-behavior:contain}#photo-dialog::backdrop{background:#111b;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;gap:1.5rem;align-items:center;margin-bottom:1rem;font-size:.875rem}.dialog-top button{background:var(--cream);color:var(--ink);border:0;min-height:44px;padding:.6rem 1rem}#dialog-image{height:auto;width:auto;max-height:calc(85dvh - 130px);max-width:100%;object-fit:contain;margin:auto;background:#34372e}#photo-dialog-caption{font-size:.875rem;margin-top:1rem;max-width:70ch}.photo-opened{overflow:hidden}#photo-dialog :focus-visible{outline-color:var(--gold)}
@media(min-width:1500px){.hero-photo{aspect-ratio:1.28}.hero h1{max-width:9ch}}
@media(max-width:1100px){.hero{grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(3.25rem,2rem + 3vw,5rem)}.hero-identity{gap:.8rem}.hero-logo{width:50px;height:75px}.hero-identity .eyebrow,.identity-place{font-size:.75rem;letter-spacing:.07em}.hero-photo{aspect-ratio:.9}.gallery-card{flex-basis:calc((100% - 1.5rem)/2)}.refreshments .gallery-card{flex-basis:calc((100% - 3rem)/3)}.picture-menu{gap:3vw;grid-template-columns:1fr 1.2fr}}
@media(max-width:760px){
 :root{--section-space:3rem}.hero{display:flex;flex-direction:column;align-items:stretch;padding:1.5rem var(--gutter) 2rem;gap:1.3rem}.hero-copy{display:contents}.hero-identity{order:0;margin:0;gap:1rem}.hero-logo{width:42px;height:63px}.hero h1{order:1;font-size:clamp(2.8rem,1.5rem + 6vw,4rem);line-height:1.03}.hero-image{order:2;padding:.4rem}.hero-photo{aspect-ratio:1.45}.hero-image figcaption{font-size:.75rem;padding-top:.65rem}.hero-description{order:3;font-size:1rem;margin:0;max-width:45ch}.hero-actions{order:4;margin:0;gap:1.5rem}.hero-address{order:5;margin:0;line-height:1.6}.hero-corner{width:45px;height:42px;opacity:.8}.corner-br{bottom:2rem}.ribbon{gap:.6rem;font-size:.7rem}.section-heading{display:block;margin-bottom:1.5rem}.section-heading h2{font-size:clamp(2.6rem,1.5rem + 5vw,3.5rem);max-width:15ch}.section-heading>p,.section-heading>div>p:not(.eyebrow){margin-top:1rem;font-size:1rem}.food-story{padding:var(--section-space) var(--gutter)}.gallery-track{gap:1rem;padding-bottom:.7rem}.gallery-card,.refreshments .gallery-card{flex-basis:82%}.food-story figure:nth-child(2){padding-top:0}.gallery-card figcaption{font-size:.875rem;margin-top:.7rem}.gallery-footer{align-items:center;margin-top:.5rem;flex-wrap:wrap}.gallery-hint{flex:1;max-width:17ch}.gallery-controls{gap:.5rem}.gallery-position{min-width:3.5rem}.gallery-controls button{width:44px;height:44px}.art-card .photo-open{padding:1rem}.plate-foot{display:block;margin-top:1.25rem;padding-top:1rem}.plate-foot button{margin-top:1rem}.picture-menu{display:block}.picture-intro h2{font-size:3rem;max-width:15ch}.picture-intro>p:not(.eyebrow){max-width:48ch;margin:1rem 0}.picture-sheets{margin-top:1.5rem;gap:.75rem}.picture-sheets .photo-open{padding:.3rem;aspect-ratio:.8}.picture-sheets .gallery-card:nth-child(2){padding-top:1.2rem}.picture-sheets figcaption{font-size:.75rem}.picture-sheets .enlarge-mark{width:30px;height:30px;bottom:.3rem;right:.3rem}.room-lead{grid-template-columns:1fr;gap:1.5rem}.room-lead .photo-open{aspect-ratio:1/1.1;max-height:520px}.room-note{display:none}.room-section .gallery-card .photo-open{aspect-ratio:1/1.15}.arrival-detail{grid-template-columns:110px 1fr;gap:1rem;margin-bottom:2rem}.arrival-detail>img{width:110px;height:140px}.arrival-detail figcaption{font-size:.875rem}.gallery-controls{margin-left:auto}.menu-section .section-heading{margin-bottom:0}#photo-dialog{padding:.75rem;max-width:96vw}.dialog-top{gap:1rem}.collection-note{margin-top:1rem}.refreshments .section-heading>div:last-child{max-width:none}
}
@media(max-width:360px){.hero h1{font-size:2.65rem}.hero-identity .eyebrow,.identity-place{font-size:.7rem}.gallery-footer{display:block}.gallery-hint{max-width:none;margin-bottom:.5rem}.gallery-controls{justify-content:flex-end}.picture-sheets{gap:.5rem}.arrival-detail{grid-template-columns:90px 1fr}.arrival-detail>img{width:90px;height:130px}}
@media(prefers-reduced-motion:reduce){.gallery-track{scroll-behavior:auto}.photo-open:hover>img{transform:none}}
/* Keep the plate shortcut inside narrow columns at enlarged text sizes. */
.plate-foot button{min-width:0;max-width:100%}

/* Draft4: prices first; imagery is an invitation, not a prerequisite. */
[hidden]{display:none!important}
.menu-section{padding-block:var(--s10) var(--s12)}
.menu-section .section-heading{align-items:center}
.menu-introduction{max-width:40ch}
.menu-introduction>p{color:var(--muted)}
.menu-introduction .text-link{margin-top:var(--s2)}
.menu-section .menu-layout{margin-top:var(--s6)}
.owner-note{margin-top:var(--s4);padding-block:var(--s3);border-block:1px solid var(--line);font-size:var(--text-xs);color:var(--muted)}
.owner-note summary{cursor:pointer;min-height:44px;display:list-item;align-content:center;padding-block:var(--s2)}
.owner-note>p{max-width:85ch;padding:var(--s2) 0 var(--s3);font-size:var(--text-sm)}
.price{font-size:var(--text-base);font-weight:600}
.menu-item:focus{outline:2px solid var(--red);outline-offset:var(--s2);background:#f5f0e680}
.menu-artwork.photo-open{display:inline-flex;width:auto;min-height:44px;align-items:center;overflow:visible;cursor:pointer;font-size:var(--text-xs);font-weight:600;color:var(--red);border-bottom:1px solid var(--line);margin-top:var(--s3)}
.menu-artwork.photo-open:hover{border-color:var(--red)}
.menu-artwork.photo-open:focus-visible{outline-offset:3px}
.image-menu-link{display:flex;align-items:center;min-height:44px;align-self:flex-start;font-size:var(--text-sm);color:var(--red);text-decoration:underline;text-underline-offset:4px;margin-top:var(--s2)}
.plate-section .image-menu-link{color:var(--cream);text-decoration-color:var(--gold)}
.unmatched-art{margin-top:var(--s3);font-size:var(--text-xs);color:#cecbbf}
.gallery-controls button:active{transform:scale(.96)}
.ribbon,.hero-identity .eyebrow,.identity-place{font-size:var(--text-xs)}
#photo-error{max-width:45ch;margin-block:var(--s6);font-size:var(--text-base)}
#retry-photo{min-height:44px;border:1px solid var(--gold);background:var(--cream);color:var(--ink);padding:var(--s3) var(--s5);font-size:var(--text-sm)}
.map-slot.loaded{flex-direction:column}
.map-help{padding:var(--s4);font-size:var(--text-xs);color:var(--muted);background:var(--paper)}
.map-dismiss{display:block;min-height:44px;margin:var(--s2) auto 0;padding:var(--s2) var(--s4);background:transparent;border:1px solid var(--line);color:var(--red);font-size:var(--text-xs)}
.map-dismiss:hover{border-color:var(--red)}
@media(max-width:760px){
  .menu-section{padding-top:var(--s8)}
  .menu-section .section-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--s4);row-gap:var(--s2)}
  .menu-introduction{display:contents}
  .menu-introduction>p{grid-column:1/-1;margin-top:0!important;font-size:var(--text-sm)!important}
  .menu-introduction .text-link{grid-column:2;grid-row:1;align-self:center;max-width:11ch;gap:var(--s2);margin:0;font-size:var(--text-xs)}
  .menu-section .eyebrow{margin-bottom:var(--s3)}
  .menu-section .menu-layout{margin-top:var(--s4)}
  .menu-rail .rail-label{display:none}
  .menu-section .menu-body{margin-top:var(--s4)}
  .owner-note{padding-block:var(--s1)}
  .owner-note summary{line-height:1.6}
}

/* Draft5 — content-shaped imagery and a menu that keeps its place. */
:root{--mobile-filter-height:0px}
select{font:inherit;color:inherit;max-width:100%}
.compact-category{display:none}
.return-to-photos{background:transparent;border:0;border-bottom:1px solid var(--red);padding:.5rem 0;min-height:44px;color:var(--red);font-size:.875rem;margin-top:.6rem;cursor:pointer}
.menu-section .eyebrow{display:none}.menu-section .section-heading h2{font-size:clamp(2.8rem,2rem + 2.5vw,4.5rem)}
.menu-section .section-heading{align-items:center}.menu-introduction .text-link{margin-top:.25rem}
.menu-item{scroll-margin-top:calc(var(--mobile-filter-height) + 16px)}
#menu-results{scroll-margin-top:calc(var(--mobile-filter-height) + 12px)}
.menu-section .owner-note{margin-top:2rem;border-bottom:0}
.photo-grid{columns:2;column-gap:clamp(1rem,3vw,2.5rem)}
.photo-grid .gallery-card{display:block;break-inside:avoid;margin:0 0 1.5rem;width:100%}
.photo-grid .photo-open{aspect-ratio:auto;background:none}
.photo-grid .photo-open>img{width:100%;height:auto;object-fit:contain;aspect-ratio:auto}
.photo-grid figcaption{margin-top:.65rem;font-size:.875rem}
.photo-grid .image-menu-link{margin-top:.25rem}
.photo-open:hover>img{transform:none;filter:brightness(1.03)}
.plate-section{--plate-height:clamp(15rem,22vw,21rem)}
.plate-section .gallery-track{gap:clamp(1.5rem,4vw,3.5rem);align-items:flex-start;padding-top:1.2rem}
.plate-section .gallery-card{flex:0 0 auto;width:min(calc(var(--plate-height) * var(--image-ratio)),100%)}
.plate-section .art-card .photo-open{aspect-ratio:var(--image-ratio);padding:0;border:0;background:none}
.plate-section .art-card .photo-open>img{object-fit:contain;width:100%;height:100%}
.plate-section .art-card .enlarge-mark{bottom:.1rem;right:.1rem;width:32px;height:32px;opacity:.9}
.plate-section .gallery-card figcaption{font-size:.875rem;margin-top:.8rem}
.plate-section .image-menu-link{margin-top:0;font-size:.875rem}
.plate-section .unmatched-art{margin-top:.25rem;max-width:30ch}
.picture-sheets{position:relative;align-items:start;padding:1.25rem;gap:1.5rem}
.picture-sheets .photo-open{aspect-ratio:var(--image-ratio);padding:0;background:none;border:0;box-shadow:none}
.picture-sheets .photo-open img{width:100%;height:100%;object-fit:contain}
.picture-sheets .gallery-card{width:100%;padding:0!important}
.picture-sheets .gallery-card:nth-of-type(2){margin-top:1rem}
.collage-corner{position:absolute;width:70px;height:65px;object-fit:contain;pointer-events:none;opacity:.75}
.collage-tr{top:0;right:0}.collage-bl{bottom:2.2rem;left:0}
.coffee-detail{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem;align-items:center;margin:0 0 2rem;max-width:920px}
.coffee-detail .photo-open{aspect-ratio:var(--image-ratio);max-height:none}
.coffee-detail .photo-open img{width:100%;height:100%;object-fit:contain}
.coffee-detail figcaption{font-family:var(--font-display);font-size:clamp(1.8rem,1.2rem + 1vw,2.5rem);line-height:1.15;color:var(--red);padding-right:0;max-width:15ch}
.refreshments{--shelf-height:clamp(12rem,18vw,17rem)}
.refreshments .gallery-card{flex:0 0 auto;width:min(calc(var(--shelf-height) * var(--image-ratio)),calc(100vw - 2 * var(--gutter) - 1rem))}
.refreshments .gallery-card .photo-open{aspect-ratio:var(--image-ratio)}
.refreshments .gallery-card img{width:100%;height:100%;object-fit:contain}
.room-lead{grid-template-columns:.85fr 1.15fr;align-items:start;gap:3vw;margin-bottom:2rem}
.room-lead>figure .photo-open{aspect-ratio:3/4;max-height:none;background:none}
.room-lead>figure .photo-open>img{width:100%;height:100%;object-fit:contain}
.room-note{display:flex;flex-direction:column;padding:0;gap:1.25rem;min-width:0}
.room-note>img{display:none}.room-note>p{font-size:clamp(1.9rem,1.3rem + 1vw,2.6rem);max-width:22ch;margin:0}
.room-support .photo-open{aspect-ratio:var(--image-ratio);background:none}
.room-support .photo-open img{width:100%;height:100%;object-fit:contain}
.room-support figcaption{font-size:.875rem;margin-top:.6rem;color:#d9d8ce}
.room-section{--room-height:clamp(13rem,21vw,20rem)}
.room-section .gallery-card{flex:0 0 auto;width:min(calc(var(--room-height) * var(--image-ratio)),calc(100vw - 2 * var(--gutter) - 1rem))}
.room-section .gallery-card .photo-open{aspect-ratio:var(--image-ratio)}
.room-section .gallery-card .photo-open img{object-fit:contain;width:100%;height:100%}
.arrival-detail{grid-template-columns:minmax(100px,180px) 1fr;max-width:720px;gap:1.5rem}
.arrival-detail>img{width:100%;height:auto;object-fit:contain;max-height:none}
@media(max-width:760px){
 html{scroll-padding-top:calc(var(--header-height) + 12px)}
 .menu-section{padding-top:1.25rem;padding-bottom:2rem}
 .menu-section .section-heading{grid-template-columns:minmax(0,1fr) auto;gap:.5rem 1rem}
 .menu-section .section-heading h2{font-size:2.8rem}
 .menu-introduction .text-link{max-width:none;font-size:.75rem;white-space:nowrap}
 .menu-introduction>p{font-size:.875rem!important}
 .menu-section .menu-layout{margin-top:.75rem}
 .menu-rail{position:sticky;top:calc(var(--header-height) - 1px);z-index:20;background:var(--paper);padding:.45rem 0;border-block:1px solid var(--line)}
 .menu-rail #categories{display:none}
 .compact-category{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem;align-items:center;font-size:.875rem;min-width:0}
 .compact-category select{min-height:44px;width:100%;min-width:0;border:1px solid #afa28c;border-radius:0;background:var(--cream);padding:.5rem .65rem;font-size:1rem}
 .menu-section .menu-body{margin-top:1rem}.menu-group{margin-top:1rem}.menu-group h3{font-size:2rem;padding-bottom:.65rem}.menu-item{padding:1.1rem 0}
 .result-status{margin-top:.6rem}.menu-item h4{font-size:1.7rem}.menu-item p{margin-top:.45rem}
 .plate-section{--plate-height:clamp(11rem,55vw,15rem)}
 .plate-section .gallery-track{gap:1.5rem;padding-top:.75rem}
 .plate-section .gallery-card{width:min(calc(var(--plate-height) * var(--image-ratio)),100%)}
 .picture-sheets{padding:.8rem;gap:1rem}.picture-sheets .photo-open{aspect-ratio:var(--image-ratio);padding:0}
 .collage-corner{width:45px;height:42px}.collage-bl{bottom:3.2rem}
 .photo-grid{column-gap:1rem}.photo-grid .gallery-card{margin-bottom:1.25rem}.photo-grid figcaption{font-size:.875rem}
 .coffee-detail{grid-template-columns:1.3fr 1fr;gap:1rem;margin-bottom:1.5rem}.coffee-detail figcaption{font-size:1.65rem}
 .refreshments{--shelf-height:12rem}.refreshments .gallery-track{gap:1rem}
 .room-lead{grid-template-columns:1fr;gap:1.5rem}.room-lead>figure .photo-open{aspect-ratio:3/4;max-height:none}
 .room-note{display:block}.room-note>p,.room-note>.text-link{display:none}
 .room-section{--room-height:14rem}.room-section .gallery-track{gap:1rem}
 .arrival-detail{grid-template-columns:100px minmax(0,1fr);gap:1rem}
 .return-to-photos{margin-top:.3rem}
}
@media(max-width:360px){.compact-category{gap:.65rem}.coffee-detail figcaption{font-size:1.45rem}.menu-introduction .text-link{font-size:.75rem}.menu-section .section-heading{column-gap:.5rem}}
@media(prefers-reduced-motion:reduce){.photo-open:hover>img{filter:none}}
/* Let the menu heading wrap as whole words when browser text is enlarged. */
@media(max-width:760px){
 .menu-section .section-heading{display:flex;flex-wrap:wrap;gap:.5rem 1rem}
 .menu-section .section-heading h2{flex:1 1 10rem;min-width:0}
 .menu-introduction .text-link{flex:0 1 auto;white-space:normal}
 .menu-introduction>p{order:3;flex:1 0 100%}
 .photo-grid{columns:2 8rem}
 .coffee-detail{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr))}
}
.picture-sheets{padding-bottom:3.5rem}.collage-bl{bottom:0}

/* Draft6: content-shaped compositions, not equal-size inventory tiles.
   Native image ratios, approved derivatives and manual galleries are retained. */
.plate-section .gallery-track{
  gap:clamp(var(--s6),3vw,var(--s12));
  padding-top:var(--s3);
}
.plate-section .art-card .photo-open{
  background:radial-gradient(ellipse at 50% 55%,#c3a36612,transparent 72%);
}
.plate-section :focus-visible{outline-color:var(--gold)}

/* Give each picture menu enough width for its baked-in dish names.
   auto-fit also changes to one full sheet when text/layout space is narrow. */
.picture-menu{display:block}
.picture-intro{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  column-gap:var(--s12);
  row-gap:var(--s3);
  align-items:start;
}
.picture-intro>.eyebrow{grid-column:1/-1;margin-bottom:0}
.picture-intro>h2{grid-column:1;grid-row:2/span 3;max-width:16ch}
.picture-intro>p:not(.eyebrow),.picture-intro>.text-link{grid-column:2;margin:0}
.picture-intro>.text-link{justify-self:start}
.picture-intro>.collection-note{font-size:var(--text-xs)}
.picture-sheets{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));
  width:100%;
  max-width:60rem;
  margin:var(--s8) auto 0;
  padding:var(--s4) var(--s4) var(--s10);
  gap:var(--s8);
}
.picture-sheets .gallery-card:nth-of-type(2){margin-top:0}
.picture-sheets figcaption{font-size:var(--text-sm);margin-top:var(--s3)}
.picture-sheets .enlarge-mark{width:44px;height:44px}
.collage-bl{bottom:0}

/* The landscape coffee detail and portrait shelf gallery share one row.
   They keep their own ratios instead of leaving a large empty coffee panel. */
.refreshments{--shelf-height:clamp(12rem,17vw,16rem)}
.refreshments .section-heading{margin-bottom:var(--s8)}
.refreshment-layout{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.65fr);
  gap:var(--s8);
  align-items:start;
}
.coffee-detail{display:block;margin:0;max-width:none}
.coffee-detail .photo-open{background:transparent}
.coffee-detail figcaption{
  font-family:var(--font-body);
  font-size:var(--text-sm);
  line-height:1.6;
  color:var(--muted);
  max-width:none;
  margin-top:var(--s3);
}
.refreshments .gallery-track{gap:var(--s4)}
.refreshments .gallery-hint{max-width:24ch}
.refreshment-layout .gallery-footer{flex-wrap:wrap;gap:var(--s3) var(--s4)}
.refreshment-layout .gallery-hint{flex:1 1 10rem;min-width:0}
.refreshment-layout .gallery-controls{margin-left:auto}
.refreshments .collection-note{margin-top:var(--s4);font-size:var(--text-sm)}
@media(max-width:760px){
  .picture-intro{display:block}
  .picture-intro>h2{margin-top:var(--s4)}
  .picture-intro>p:not(.eyebrow){margin-top:var(--s4)}
  .picture-intro>.text-link{margin-top:var(--s3)}
  .picture-sheets{margin-top:var(--s6);padding-inline:var(--s3);gap:var(--s6)}
  .collage-bl{bottom:0}
  .refreshment-layout{grid-template-columns:minmax(0,1fr);gap:var(--s6)}
  .coffee-detail{
    display:grid;
    grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);
    gap:var(--s4);
    align-items:center;
  }
  .coffee-detail figcaption{margin-top:0}
  .refreshments .section-heading{margin-bottom:var(--s6)}
  .refreshments{--shelf-height:12rem}
}
@media(max-width:360px){
  .coffee-detail{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}
}

/* Preserved cascade: draft7.css */
/* Draft7 refinement layer. Existing behavioral states and native-ratio artwork remain. */
:root {
  --charcoal: #252723;
  --cream: #f8f3e9;
  --paper: #f2ecdf;
  --red: #812c36;
  --red-hover: #66212b;
  --rose: #efb5a3;
  --gold: #d0ae71;
  --ink: #302e29;
  --muted: #60584d;
  --line: #d8ceba;
  --section-space: clamp(3rem, 5.3vw, 5.5rem);
}

/* An original-logo masthead, not another dark band above the leather. */
.site-header {
  min-height: 88px;
  background: var(--cream);
  color: var(--ink);
  border-bottom: 1px solid var(--line);
}
.site-header .wordmark {
  display: flex;
  align-items: center;
  gap: 14px;
  color: var(--red);
}
.site-header .hero-logo { width: 42px; height: 63px; }
.wordmark .wordmark-type {
  margin: 0;
  font: 400 2.2rem/1 var(--font-display);
  letter-spacing: -.04em;
}
.wordmark small {
  display: block;
  margin-top: 5px;
  color: var(--ink);
  font: 600 .625rem/1.4 var(--font-body);
  letter-spacing: .12em;
}
.site-header nav a { font-weight: 600; }
.site-header nav a:hover,
.site-header nav a[aria-current=location] { color: var(--red); border-color: var(--red); }
.site-header .languages button { color: var(--muted); }
.site-header .languages button[aria-pressed=true] {
  background: var(--red);
  border-color: var(--red);
  color: white;
}
.site-header .languages button:hover { background: var(--paper); color: var(--red); }
.site-header :focus-visible { outline-color: var(--red); }

/* Bold, casual restaurant typography; Boska remains the editorial counterpoint. */
.hero {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.17fr);
  gap: clamp(2rem, 4.8vw, 5rem);
  padding-block: clamp(3rem, 5vw, 5rem);
}
.hero-copy { padding: 0; }
.hero-identity { margin-bottom: 1.6rem; }
.hero-identity .eyebrow { color: var(--gold); }
.identity-place { color: #e2dacc; }
.hero h1 {
  max-width: none;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: clamp(3rem, 1.25rem + 4.5vw, 5.5rem);
  line-height: 1.04;
  letter-spacing: -.055em;
  text-wrap: initial;
}
.hero h1 > span { overflow-wrap: anywhere; }
.hero h1 .accent { color: var(--rose); }
.hero-description {
  max-width: 34ch;
  margin-top: 1.5rem;
  color: #e2dacc;
  font-size: 1.0625rem;
  line-height: 1.65;
}
.hero-actions { margin-top: 1.75rem; gap: 1.75rem; }
.hero-actions .primary { min-width: 190px; font-size: 1rem; }
.hero-actions .text-link { font-size: 1rem; }
.hero-address { margin-top: 1.6rem; color: #d8d0c3; }
.hero-image { padding-top: 0; }
.hero-photo { padding: 0; border: 0; aspect-ratio: 4 / 3; }
.hero-photo > img { aspect-ratio: 4 / 3; height: auto; object-fit: contain; }
.hero-image figcaption { font-size: .8125rem; }
.ribbon { padding-block: 1rem; background: var(--red); }
.button { min-height: 52px; }

/* Prices and names are information, not decoration. */
.menu-section { background: var(--cream); }
.menu-section .section-heading { align-items: center; }
.menu-section .section-heading h2 { font-size: clamp(2.8rem, 4.6vw, 4.25rem); }
.menu-layout { margin-top: 2rem; gap: clamp(1.5rem, 4vw, 4rem); }
.search-label { font-size: .875rem; }
.search-label input { background: #fffdf7; border-color: #887962; }
.compact-category select { border-color: #887962; }
.menu-group h3 {
  font: 600 1.4rem/1.3 var(--font-body);
  letter-spacing: -.02em;
  padding-bottom: 1rem;
  border-bottom: 2px solid var(--red);
}
.menu-item { padding-block: 1.4rem; }
.menu-item h4 {
  font: 600 1.125rem/1.4 var(--font-body);
  letter-spacing: -.015em;
  text-wrap: initial;
}
.menu-item .price:not(.pending) { font-size: 1rem; font-weight: 600; color: var(--red); }
.menu-item p { font-size: 1rem; line-height: 1.6; color: var(--muted); }
.menu-item .review-note { font-size: .8125rem; color: var(--red); }
.result-status { font-size: .8125rem; }
.categories button { font-size: .9375rem; min-height: 48px; }
.owner-note { border-color: var(--line); }
.owner-note summary { min-height: 44px; }

/* Give each collection its own quiet surface; keep images unfiltered and complete. */
.food-story { background: var(--cream); border-top: 1px solid var(--line); }
.food-story .section-heading h2,
.plate-section .section-heading h2,
.refreshments .section-heading h2,
.room-section .section-heading h2 { font-size: clamp(2.65rem, 4.3vw, 4.25rem); }
.food-story .photo-open,
.room-section .photo-open { background: #35372f; }
.photo-grid figcaption { font-size: .9375rem; }
.gallery-controls button { border-color: #8c795c; }
.plate-section .gallery-controls button,
.room-section .gallery-controls button { border-color: var(--gold); }
.plate-section { background-color: var(--charcoal); }
.plate-section .section-heading h2 { color: var(--cream); }
.plate-section .section-heading p { color: #e2dacc; }
.plate-section .section-heading .eyebrow { color: var(--gold); }
.plate-section .collection-note { color: #e2dacc; font-size: .875rem; }
.plate-section .art-card figcaption { font-size: .9375rem; }
.plate-section .unmatched-note { color: #e2dacc; }
.picture-menu { background: #e9dfcb; }
.picture-intro h2 { font-size: clamp(2.8rem, 4.4vw, 4.25rem); }
.refreshments { background: var(--cream); }
.refreshments .collection-note { font-size: .875rem; }
.visit-copy h2 { font-size: clamp(3rem, 4.5vw, 4.5rem); }
.visit-copy address strong { font-size: 1.125rem; }
.mobile-actions { background: var(--red); color: #fff; border-top-color: #a8545e; }
.mobile-actions a { color: #fff; min-height: 52px; }
.mobile-actions a:focus-visible { outline-color: white; outline-offset: -6px; }

@media (max-width: 1100px) and (min-width: 761px) {
  .hero { gap: 2rem; }
  .hero h1 { font-size: clamp(2.6rem, 4.7vw, 3.5rem); }
}
@media (max-width: 760px) {
  .site-header { min-height: 108px; padding-top: .5rem; }
  .site-header .hero-logo { width: 32px; height: 48px; }
  .site-header .wordmark { gap: 10px; }
  .wordmark .wordmark-type { font-size: 1.8rem; }
  .wordmark small { font-size: .5625rem; letter-spacing: .08em; }
  .site-header nav { margin-top: .25rem; }
  .hero { display: flex; padding-block: 1.75rem 2rem; gap: 1.3rem; }
  .hero-copy { display: contents; }
  .hero-identity { margin: 0; }
  .hero h1 { font-size: clamp(2.6rem, 10.65vw, 4.5rem); line-height: 1.04; }
  .hero-description { font-size: 1rem; margin: 0; }
  .hero-image { padding: .4rem; }
  .hero-photo, .hero-photo > img { aspect-ratio: 4 / 3; }
  .hero-image figcaption { font-size: .75rem; }
  .hero-actions { margin: 0; gap: 1rem 1.4rem; }
  .hero-actions .primary { min-width: 165px; padding-inline: 1rem; gap: 1rem; font-size: .9375rem; }
  .hero-actions .text-link { font-size: .9375rem; }
  .hero-address { margin: 0; }
  .ribbon { padding-block: .9rem; }
  .menu-layout { margin-top: 1.3rem; }
  .menu-section .section-heading h2 { font-size: 2.8rem; }
  .menu-group h3 { font-size: 1.3rem; }
  .menu-item { padding-block: 1.25rem; }
  .menu-item h4 { font-size: 1.125rem; }
  .menu-item p { font-size: 1rem; }
  .menu-rail { background: var(--cream); }
  .food-story .section-heading h2,
  .plate-section .section-heading h2,
  .refreshments .section-heading h2,
  .room-section .section-heading h2 { font-size: 2.8rem; }
}
@media (prefers-reduced-motion: reduce) {
  .primary:hover { transform: none; }
}

/* Preserved cascade: draft8.css */
/* Draft8 ordering links: ordinary same-tab navigation, no third-party load. */
.order-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem 1rem;background:var(--red);color:#fff;font-size:.875rem;font-weight:600;text-decoration:none;line-height:1.4;text-align:center}
.order-link:hover{background:var(--red-hover);color:#fff}
.order-link:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.site-header nav a.order-link{border:0;color:#fff}
.site-header nav{gap:clamp(1rem,2vw,2rem)}
.order-strip{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1.25rem;margin-top:1rem}
.order-strip p{font-size:.875rem;line-height:1.5;color:var(--muted)}
@media(min-width:761px) and (max-width:1100px){
 .site-header{flex-wrap:wrap;gap:.25rem 1rem}
 .site-header nav{order:3;flex-basis:100%;justify-content:space-between;flex-wrap:wrap}
 .site-header .languages{margin-left:auto}
}
@media(max-width:760px){
 .site-header nav a.header-order{display:none}
 .order-strip{gap:.4rem .8rem;margin-top:.75rem}
 .order-strip .order-link{padding:.5rem .8rem}
 .order-strip p{flex:1 1 10rem;font-size:.8125rem}
 .mobile-actions{grid-template-columns:repeat(4,minmax(0,1fr))}
 .mobile-actions a{font-size:.8125rem;min-width:0;padding:.25rem;text-align:center;overflow-wrap:anywhere}
 .mobile-actions .quick-order{background:var(--red-hover)}
}
@media(max-width:760px){
 .mobile-actions{font-size:.8125rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,5.5em),1fr))}
 .mobile-actions a{font-size:inherit;overflow-wrap:normal}
 footer{padding-bottom:calc(var(--quick-actions-height,56px) + 2rem)}
 html{scroll-padding-bottom:calc(var(--quick-actions-height,56px) + 1rem)}
}

/* Keep restaurant copy and the visit shortcut available at every screen size. */
@media(max-width:760px){
 .room-note>p{display:block;margin-top:1.25rem;font-size:1.75rem;line-height:1.25}
 .room-note>.text-link{display:inline-flex;margin-top:1rem}
 .ribbon>span:nth-child(n+4){display:inline}
}

/* Preserved cascade: draft9.css */
/* Draft9: one restrained editorial system; original image pixels stay untouched. */
:root{--section-space:clamp(2.75rem,5vw,5rem)}
.site-header .hero-logo{background:var(--charcoal);padding:5px;box-sizing:content-box;width:42px;height:63px;border:1px solid #b79a60}
.site-header .wordmark{gap:1rem}
.hero{gap:clamp(2rem,4vw,4rem);align-items:center}
.hero h1{font-size:clamp(3rem,1.2rem + 4.2vw,5.2rem);letter-spacing:-.045em;line-height:1.06}
.hero-description{max-width:32ch;font-size:1.0625rem}
.hero-image figcaption{color:#e2dacc;letter-spacing:.01em}
.hero-corner{opacity:.7}
.section-heading h2,.picture-intro h2{letter-spacing:-.025em;line-height:1.08}
.section-heading>p,.section-heading>div>p:not(.eyebrow){max-width:43ch;line-height:1.65}
.eyebrow{letter-spacing:.12em}
/* Ordering is a quiet continuation of the menu, not a second headline. */
.order-strip{padding:1rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:1.5rem}
.order-strip .order-link{background:transparent;color:var(--red);padding:.5rem 0;text-decoration:underline;text-underline-offset:5px;justify-content:flex-start}
.order-strip .order-link:hover{text-decoration-thickness:2px}
.menu-layout{margin-top:1.5rem}
.menu-item-heading{gap:1rem;align-items:baseline}
.menu-item .price{font-variant-numeric:tabular-nums;letter-spacing:.01em}
.menu-item h4{font-size:1.1875rem;line-height:1.35}
.menu-group h3{border-bottom-width:1px;padding-bottom:.75rem}
.menu-group+.menu-group{margin-top:3rem}
.categories button{border-left:2px solid transparent;padding-left:.75rem}
.categories button[aria-pressed=true]{border-left-color:var(--red)}
/* Transparent plate artwork blends into the charcoal section.
   Padding and contain rendering preserve each complete composition. */
.plate-section{--plate-height:clamp(18rem,24vw,22rem)}
.plate-section .gallery-track{gap:1.75rem;padding-block:1rem}
.plate-section .art-card .photo-open{background:transparent;padding:1rem;border:0;box-shadow:none}
.plate-section .art-card .photo-open>img{width:100%;height:100%;object-fit:contain;filter:none}
.plate-section .art-card .enlarge-mark{width:36px;height:36px;background:var(--red);color:white;bottom:.4rem;right:.4rem;opacity:1}
.plate-section .unmatched-art{font-size:.8125rem;line-height:1.55;color:#e2dacc;max-width:32ch}
.plate-section .image-menu-link{min-height:44px;line-height:1.5}
.photo-open:hover>img{filter:none;transform:none}
.photo-open:focus-visible{outline-width:3px;outline-offset:5px}
.gallery-controls button{transition:background-color .16s,color .16s,border-color .16s}
.gallery-controls button:hover:not([aria-disabled=true]){background:var(--red);border-color:var(--red);color:white}
.plate-section .gallery-controls button:hover:not([aria-disabled=true]),.room-section .gallery-controls button:hover:not([aria-disabled=true]){background:var(--cream);border-color:var(--cream);color:var(--charcoal)}
/* Transparent artwork also needs the same stage when enlarged. */
#dialog-image{background:#f2ecdf;padding:.75rem;box-sizing:border-box}
.room-lead{gap:2rem}
.room-note>p{font-family:var(--font-display);font-weight:400;font-size:clamp(1.8rem,2.5vw,2.5rem);line-height:1.15;color:var(--cream)}
.photo-grid figcaption,.room-support figcaption{line-height:1.5}
@media(max-width:1100px) and (min-width:761px){.hero h1{font-size:clamp(2.5rem,4.7vw,3.5rem)}}
@media(max-width:760px){
 .site-header .hero-logo{width:30px;height:45px;padding:3px}
 .site-header .wordmark{gap:.65rem}
 .hero{gap:1.25rem}
 .hero h1{font-size:clamp(2.5rem,10.5vw,4.25rem)}
 .hero-description{font-size:1rem;max-width:none}
 .hero-image{padding:0}
 .order-strip{margin-top:1rem;padding:.5rem 0;gap:.25rem 1rem}
 .menu-item h4{font-size:1.125rem}
 .plate-section{--plate-height:clamp(14rem,67vw,18rem)}
 .plate-section .gallery-track{gap:1.25rem;padding-block:.75rem}
 .plate-section .art-card .photo-open{padding:.75rem}
 .plate-section .art-card .enlarge-mark{width:32px;height:32px}
 .room-note>p{font-size:1.85rem}
}
@media(prefers-reduced-motion:reduce){.gallery-controls button{transition:none}}

/* At enlarged text, a tall masthead must not consume the reading viewport. */
.site-header[data-static="true"]{position:relative;top:auto}

/* Background rhythm: bottles against charcoal, the room on warm paper. */
.refreshments{background:var(--charcoal);color:var(--cream)}
.refreshments .section-heading h2{color:var(--cream)}
.refreshments .section-heading .eyebrow{color:var(--gold)}
.refreshments .section-heading p,.refreshments .coffee-detail figcaption,
.refreshments .gallery-card figcaption,.refreshments .gallery-hint,
.refreshments .collection-note{color:#e2dacc}
.refreshments .text-link,.refreshments .text-link.dark{color:var(--cream);border-color:var(--gold)}
.refreshments .text-link:hover{color:var(--gold)}
.refreshments .gallery-controls button{color:var(--cream);border-color:var(--gold)}
.refreshments .gallery-controls button:hover:not([aria-disabled=true]){background:var(--cream);border-color:var(--cream);color:var(--charcoal)}
.refreshments .photo-open{outline-offset:4px}
.refreshments :focus-visible{outline-color:var(--gold)}
.room-section{background:var(--paper);color:var(--ink)}
.room-section .section-heading h2{color:var(--red)}
.room-section .section-heading .eyebrow,.room-section .section-heading p,
.room-section .room-support figcaption,.room-section .gallery-card figcaption,
.room-section .gallery-hint{color:var(--muted)}
.room-section .room-note>p{color:var(--ink)}
.room-section .text-link{color:var(--red);border-color:var(--red)}
.room-section .text-link:hover{color:var(--red-hover)}
.room-section .gallery-controls button{color:var(--red);border-color:#887962}
.room-section .gallery-controls button:hover:not([aria-disabled=true]){background:var(--red);border-color:var(--red);color:white}
.room-section :focus-visible{outline-color:var(--red)}
.refreshments .section-heading>div:last-child p{color:#e2dacc}
.refreshments .gallery-position{color:var(--cream)}
.room-section .gallery-position{color:var(--muted)}

/* Preserved cascade: draft11.css */
/* Draft11: the owner's image-led composition. Existing image pixels and menu data are retained. */
.site-header .wordmark-type{font-size:2.65rem}
.site-header .wordmark small{font-size:.7rem}
.site-header nav a{font-size:1rem}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:center;padding:clamp(2rem,5vw,5rem) var(--gutter);background:linear-gradient(#25272370,#25272380),url('assets/leather.webp') center/cover}
.hero-brand{display:flex;align-items:center;justify-content:center;min-width:0}
.hero-brand h1{font-size:inherit;margin:0;width:100%;display:flex;justify-content:center}
.hero .hero-logo{width:clamp(12rem,24vw,21rem);max-width:90%;height:auto;max-height:32rem;object-fit:contain;background:transparent;border:0;padding:0}
.hero .hero-copy{padding:0;max-width:35rem;min-width:0}
.hero .hero-identity{margin:0 0 1.5rem}
.hero .identity-place{font-size:.85rem;line-height:1.6}
.hero .hero-description{font:400 clamp(1.7rem,2.6vw,2.6rem)/1.3 var(--font-body);letter-spacing:-.025em;max-width:20ch;margin:0 0 2rem;color:var(--cream)}
.hero .hero-actions{flex-wrap:wrap;gap:1.25rem 2rem}
.hero .hero-address{margin-top:2rem;line-height:1.8}
.menu-section .section-heading{margin-bottom:0}
.food-menu-links{display:flex;flex-wrap:wrap;gap:.35rem 1.5rem;margin:-.5rem 0 2rem;border-block:1px solid var(--line);padding:.5rem 0}
.food-menu-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--red);font-size:.875rem;text-underline-offset:5px;text-decoration:underline;line-height:1.5}
.food-menu-links a:hover{text-decoration-thickness:2px}
.photo-grid{columns:2;column-gap:1.5rem}
.photo-grid .gallery-card{margin-bottom:1.5rem}
.photo-grid .photo-open{display:block;width:100%}
.photo-grid .photo-open>img{height:auto;width:100%;object-fit:contain}
.food-story .section-heading{margin-bottom:1.5rem}
.plate-section .section-heading{align-items:center;flex-wrap:wrap}
.plate-section #explore-plates{color:var(--cream);border-color:var(--gold);margin:0}
.plate-section .image-menu-link{font-size:.875rem;margin-top:.75rem}
.picture-intro{align-self:start}
.picture-intro .text-link{margin-top:1.5rem}
.picture-sheets{padding:0}
.refreshments .section-heading{align-items:center;flex-wrap:wrap}
.refreshments .section-heading>div:last-child{margin:0}
.room-section .section-heading{margin-bottom:2rem}
.room-lead{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(1.25rem,3vw,3rem);margin-bottom:2rem}
.room-lead figure{margin:0;min-width:0}
.room-lead>figure .photo-open{aspect-ratio:3/4}
.room-note{display:flex;gap:1.5rem;align-items:flex-start}
.room-note .room-support{width:100%}
.room-note .room-visit{display:inline-flex;background:var(--red);color:#fff;border:1px solid var(--red);padding:1rem 1.5rem;gap:1.5rem;min-height:52px}
.room-note .room-visit:hover{background:var(--red-hover);color:#fff}
.room-section{--room-height:clamp(14rem,24vw,22rem)}
.visit-section{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,3vw,3rem);align-items:start}
.visit-copy h2{font-size:clamp(2.2rem,3vw,3.7rem);line-height:1.1;white-space:pre-line}
.visit-actions{gap:1rem}
.visit-actions .button{padding:1rem;gap:1rem}
.visit-photos{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:.75rem;min-width:0}
.visit-photos .storefront img{min-height:0;height:auto;width:100%;object-fit:contain}
.visit-photos .arrival-detail{display:block;margin:0;padding:0;max-width:none;width:100%;border:0}
.visit-photos .arrival-detail>img{width:100%;height:auto;max-height:none;object-fit:contain}
.location-card{display:block;border:0;min-width:0}
.location-card .map-slot{min-height:310px;padding:1.5rem 1rem;border:1px solid var(--line)}
.location-card #map-slot:has(iframe){display:flex;flex-direction:column;padding:0}
.location-card iframe{width:100%;height:310px;border:0}
.location-card .map-help{padding:1rem}
footer{background:linear-gradient(#25272385,#25272395),url('assets/leather.webp') center/cover;color:var(--cream);grid-template-columns:auto minmax(0,1fr) auto;gap:2rem;align-items:center}
footer .footer-brand{padding:0;line-height:1}
footer .footer-logo{display:block;width:6rem;height:auto;background:transparent;object-fit:contain}
footer>p{font-size:clamp(1.15rem,2vw,1.7rem);line-height:1.5;margin:0;max-width:26ch}
footer .text-link{color:var(--cream);border-color:var(--gold)}
footer .review-label{grid-column:1/-1}
@media(max-width:1100px){.site-header .wordmark-type{font-size:2.4rem}.visit-section{gap:1.5rem}.visit-photos .arrival-detail{max-width:18rem}.visit-copy h2{font-size:2.4rem}}
@media(max-width:900px){.visit-section{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.visit-photos{grid-template-columns:1fr 1fr}.visit-photos .storefront{display:block}.visit-photos .arrival-detail{max-width:none}.location-card{grid-column:1/-1}.location-card .map-slot{min-height:240px}}
@media(max-width:760px){
 .site-header .wordmark-type{font-size:2.25rem}.site-header .wordmark small{font-size:.65rem}.site-header nav a{font-size:.9375rem}
 .hero{grid-template-columns:1fr;gap:1.75rem;padding-block:2rem}
 .hero .hero-logo{width:12rem;max-height:none;max-width:75%}
 .hero .hero-copy{max-width:none;text-align:center}
 .hero .hero-identity{justify-content:center;margin-bottom:.75rem}
 .hero .hero-description{font-size:1.6rem;max-width:22ch;margin:0 auto 1.5rem}
 .hero .hero-actions{justify-content:center;gap:1rem 1.5rem}
 .hero .hero-address{font-size:.68rem;margin-top:1.5rem}
 .food-menu-links{gap:.25rem 1.25rem;margin-bottom:1.5rem}
 .food-menu-links a{font-size:.8125rem}
 .photo-grid{column-gap:.75rem}.photo-grid .gallery-card{margin-bottom:.75rem}
 .plate-section .section-heading{gap:1rem}.plate-section .section-heading .text-link{font-size:.875rem}
 .room-lead{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:1rem;align-items:center}
 .room-note{display:flex;gap:1rem}.room-note .room-visit{display:inline-flex;padding:.75rem;gap:.5rem;font-size:.8125rem;min-height:48px}
 .room-section{--room-height:15rem}
 .visit-section{grid-template-columns:1fr;gap:2rem}.visit-copy h2{font-size:3rem}.visit-photos{grid-template-columns:1fr 1fr;gap:1rem}.location-card{grid-column:auto}
 footer{grid-template-columns:auto minmax(0,1fr);gap:1.5rem}footer .footer-logo{width:5rem}footer>p{grid-column:2;grid-row:1;font-size:1.125rem}footer>.text-link{grid-column:1/-1;justify-self:start}footer .review-label{grid-column:1/-1}
}
@media(max-width:360px){.hero .hero-actions{flex-direction:column}.room-lead{grid-template-columns:1fr}.room-lead>figure{max-width:75%;margin:auto}.room-note{align-items:flex-start}.photo-grid{columns:1}.hero .hero-description{font-size:1.45rem}}
/* Native buttons must inherit the dark section's link treatment. */
.plate-section #explore-plates{background:transparent;padding:.5rem 0;font:inherit;min-height:44px}
.room-note .room-support .photo-open{max-height:none;aspect-ratio:var(--image-ratio);background:transparent}

/* Owner follow-up: image windows show the photograph and controls only. */
.visually-hidden{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;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
#photo-dialog .dialog-top{justify-content:flex-end}
.food-menu-links{justify-content:center;text-align:center}
.coffee-column{min-width:0}
.coffee-column .coffee-detail{width:100%;margin:0}
.coffee-column .collection-note{margin:1rem 0 0;font-size:.875rem;line-height:1.6;max-width:36ch}
.room-note{align-self:start}
.room-note .room-visit{align-self:flex-start}
/* One integrated card: street view, storefront, map; full-width external-map link below. */
.visit-section{grid-template-columns:minmax(0,.95fr) minmax(0,2.45fr);gap:clamp(1.5rem,3vw,3rem);align-items:start}
.visit-media{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);min-width:0;background:var(--paper)}
.visit-media .visit-photos{grid-column:1/3;display:grid;grid-template-columns:.75fr .711fr;gap:.5rem;align-items:start}
.visit-media .visit-photos .arrival-detail{max-width:none;margin:0}
.visit-media .visit-photos img{display:block;width:100%;height:auto;min-height:0;max-height:none;object-fit:contain}
.visit-media .location-card{grid-column:3;grid-row:1;display:flex;align-self:stretch;min-width:0}
.visit-media .location-card .map-slot{width:100%;height:100%;min-height:0;padding:1rem .75rem;border:0}
.visit-media .location-card #map-slot:has(iframe){padding:0}
.visit-media .map-address{font-size:clamp(1.3rem,2.1vw,2.25rem);overflow-wrap:normal}
.visit-media .map-address span{font-size:.875rem}
.visit-media .map-button{padding:.75rem 1rem;gap:1rem}
.visit-media .map-slot small{font-size:.75rem;line-height:1.5}
.visit-media>.text-link{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;margin:0;min-height:64px;border:0;border-top:1px solid var(--line);color:var(--red);background:var(--cream)}
footer .footer-logo{width:7.5rem}
footer>p{text-align:center;justify-self:center;max-width:30ch;width:100%}
@media(max-width:1100px){.visit-section{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.visit-media{grid-template-columns:repeat(2,minmax(0,1fr))}.visit-media .visit-photos{grid-column:1/-1}.visit-media .location-card{grid-column:1/-1;grid-row:2}.visit-media .location-card .map-slot{min-height:250px;padding:1.5rem}.visit-media .map-address{font-size:2rem}}
@media(max-width:760px){.visit-section{grid-template-columns:1fr}.visit-media .location-card{grid-column:1/-1}.visit-media>.text-link{padding:1rem}.coffee-column .collection-note{max-width:none;margin-top:.75rem}footer .footer-logo{width:6.25rem}footer>p{text-align:center}}

/* Preserved cascade: draft12.css */
/* Draft12: a clear restaurant name beside the original logo; one location line. */
.hero .hero-copy{display:block}
.hero .hero-name{font:400 clamp(3.2rem,5.4vw,5.5rem)/1.04 var(--font-display);letter-spacing:-.035em;color:var(--rose);margin:0 0 1.5rem}
.hero .hero-name>span{display:block;font:600 clamp(.95rem,1.6vw,1.4rem)/1.5 var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--cream);margin-top:.75rem}
.hero .hero-description{font-size:1.125rem;line-height:1.6;letter-spacing:0;max-width:32ch;margin-bottom:2rem}
/* A shared image height aligns every original ratio without cropping or empty frames. */
.refreshment-layout{grid-template-columns:minmax(0,calc(var(--shelf-height) * 1.775723)) minmax(0,1fr);align-items:start}
.coffee-column .coffee-detail{display:block}
.coffee-column .coffee-detail .photo-open{width:100%;height:var(--shelf-height);aspect-ratio:1.775723}
.coffee-column .coffee-detail .photo-open img{display:block;width:100%;height:100%;object-fit:contain}
.refreshments .gallery-track{padding-top:0;align-items:flex-start}
.refreshments .gallery-card .photo-open{height:var(--shelf-height);aspect-ratio:var(--image-ratio)}
@media(max-width:760px){
 .hero .hero-name{font-size:3.5rem;margin-bottom:1.25rem}
 .hero .hero-name>span{font-size:.95rem;letter-spacing:.075em}
 .hero .hero-description{font-size:1.0625rem;margin:0 auto 1.5rem;max-width:30ch}
 .hero .hero-address{justify-content:center}
 .refreshments{--shelf-height:min(12rem,calc((100vw - 2 * var(--gutter)) / 1.775723))}
 .refreshment-layout{grid-template-columns:minmax(0,1fr)}
 .coffee-column .coffee-detail{width:min(100%,calc(var(--shelf-height) * 1.775723));margin-inline:auto}
 .coffee-column .collection-note{margin:.75rem auto 0;text-align:center;max-width:36ch}
}
@media(max-width:360px){.hero .hero-name{font-size:3rem}.hero .hero-name>span{font-size:.8125rem}}

/* Unified typography and alignment: one role scale for both languages and all widths. */
:root{
 --type-display:clamp(3rem,5.4vw,5rem);
 --type-section:clamp(2.25rem,3.9vw,3.5rem);
 --type-category:clamp(1.375rem,1.7vw,1.5rem);
 --type-dish:clamp(1.125rem,1.4vw,1.25rem);
 --type-body:1rem;--type-control:1rem;--type-nav:.9375rem;--type-note:.875rem;
 --control-height:3rem;--control-gap:.75rem;
}
body{font-family:var(--font-body);font-size:var(--type-body);line-height:1.6}
button,input,select{font-family:var(--font-body)}
.hero .hero-name{font:400 var(--type-display)/1.08 var(--font-display);letter-spacing:-.025em}
.hero .hero-name>span{font:600 clamp(.875rem,1.3vw,1.125rem)/1.5 var(--font-body);letter-spacing:.08em}
.hero .hero-description{font:400 1.125rem/1.6 var(--font-body);letter-spacing:0}
.section-heading h2,.menu-section .section-heading h2,.room-section .section-heading h2,
.food-story .section-heading h2,.plate-section .section-heading h2,.refreshments .section-heading h2,
.picture-intro h2,.visit-copy h2{font:400 var(--type-section)/1.12 var(--font-display);letter-spacing:-.025em;max-width:none}
.menu-group h3{font:600 var(--type-category)/1.35 var(--font-body);letter-spacing:-.015em;gap:0;padding-bottom:.875rem}
.menu-item h4{font:600 var(--type-dish)/1.4 var(--font-body);letter-spacing:-.01em}
.menu-item p{font:400 var(--type-body)/1.6 var(--font-body);letter-spacing:0}
.menu-item .price:not(.pending){font:600 var(--type-body)/1.4 var(--font-body);font-variant-numeric:tabular-nums;letter-spacing:0}
.menu-item-heading{align-items:baseline;gap:1rem}
.menu-item{padding-block:1.5rem}
.menu-item .review-note,.menu-item .price.pending,.result-status,.search-label,
.eyebrow,.rail-label,.hero .hero-address,.gallery-hint,.gallery-position,
.collection-note,.coffee-column .collection-note,.order-strip p,.visit-media .map-slot small,
.map-help,.menu-section .compact-category,.review-label{font-family:var(--font-body);font-size:var(--type-note);line-height:1.6}
.hero .hero-address{letter-spacing:.04em}
.eyebrow,.rail-label{font-weight:600;letter-spacing:.1em}
.review-label{font-size:.75rem}
.site-header nav a,.languages button{font:600 var(--type-nav)/1.4 var(--font-body)}
.site-header nav{column-gap:clamp(1rem,2vw,2rem);row-gap:.5rem}
.site-header nav a,.languages button{min-height:44px}
.categories button{font:600 var(--type-control)/1.4 var(--font-body);min-height:var(--control-height);padding:.75rem}
.category-count{font-size:var(--type-note);font-weight:400}
.search-label input,.compact-category select{font:400 var(--type-body)/1.5 var(--font-body);min-height:var(--control-height);padding:.75rem}
.button,.order-link,.dialog-top button,#retry-photo,.map-button,.visit-media .map-button,
.map-dismiss,.room-note .room-visit,.visit-actions .button,.hero-actions .primary{
 font:600 var(--type-control)/1.4 var(--font-body);min-height:var(--control-height);
 padding:.75rem 1.25rem;gap:var(--control-gap);align-items:center;justify-content:center;
}
.button,.order-link,.room-note .room-visit,.map-button,.visit-media .map-button{display:inline-flex}
.text-link,.food-menu-links a,.image-menu-link,.menu-artwork.photo-open,
.return-to-photos,.clear-button,.hero-actions .text-link,.plate-section #explore-plates{
 font:600 var(--type-control)/1.5 var(--font-body);letter-spacing:0;min-height:44px;gap:var(--control-gap);
}
.text-link{align-items:center}
.food-menu-links{column-gap:1.5rem;row-gap:.25rem;justify-content:center}
.food-menu-links a{padding-block:.5rem}
.image-menu-link{overflow-wrap:anywhere}
.section-heading,.refreshments .section-heading,.plate-section .section-heading{align-items:center;gap:1.5rem;margin-bottom:2rem}
.menu-section .section-heading{margin-bottom:0}
.picture-intro .text-link{margin-top:1.5rem}
.gallery-footer{align-items:center;gap:1rem;margin-top:.75rem}
.gallery-controls{align-items:center;gap:.75rem}
.gallery-controls button{font:400 1.25rem/1 var(--font-body);min-width:44px;min-height:44px;width:44px;height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center}
.dialog-top{gap:1rem;margin-bottom:1rem}
.visit-copy address{font:400 var(--type-body)/1.7 var(--font-body)}
.visit-copy address strong{font-size:var(--type-body);font-weight:600}
.phone{font:600 1.375rem/1.5 var(--font-body)}
.visit-media .map-address{font:400 clamp(1.5rem,2.1vw,2.25rem)/1.2 var(--font-display);letter-spacing:-.015em}
.visit-media .map-address span{font:400 var(--type-body)/1.6 var(--font-body);letter-spacing:0}
footer>p{font:400 1.25rem/1.6 var(--font-body);text-align:center}
@media(max-width:760px){
 .hero .hero-description{font-size:var(--type-body)}
 .section-heading,.refreshments .section-heading,.plate-section .section-heading{margin-bottom:1.5rem;gap:1rem}
 .menu-section .section-heading{margin-bottom:0}
 .hero .hero-actions{column-gap:1.5rem;row-gap:1rem}
 .hero .hero-actions .primary,.hero .hero-actions .text-link{font-size:var(--type-control)}
 .room-note .room-visit{font-size:var(--type-control);padding:.75rem 1rem;white-space:normal;text-align:center}
 .mobile-actions{grid-template-columns:repeat(4,minmax(0,1fr));font-size:var(--type-nav)}
 .mobile-actions a{font:600 var(--type-nav)/1.35 var(--font-body);min-height:56px;padding:.5rem .25rem;overflow-wrap:normal;text-align:center}
 .hero .hero-address{font-size:var(--type-note);justify-content:center}
 .search-row{align-items:end;gap:1rem}
 .clear-button{max-width:8rem;text-align:center}
 footer>p{font-size:1.125rem}
}

/* Preserved cascade: draft13.css */
/* Draft13: swap complete food sections and alternate charcoal/cream stages. */
.hero .hero-name{font:400 var(--type-display)/1.08 var(--font-display);letter-spacing:-.025em;white-space:pre-line;color:var(--rose)}
/* Original artwork keeps its existing ivory stage for legibility. */
/* Picture menu precedes the food photographs; cream and charcoal alternate. */
.food-story,.room-section{background:var(--charcoal);color:var(--cream)}
.food-story .section-heading h2,.room-section .section-heading h2{color:var(--rose)}
.room-section .text-link{color:var(--cream);border-color:var(--gold)}
.room-section .text-link:hover{color:var(--gold)}
.food-story :focus-visible,.room-section :focus-visible{outline-color:var(--gold)}
.food-story .food-menu-links{border-color:var(--dark-line)}
.food-story .food-menu-links a{color:var(--cream)}
.food-story .food-menu-links a:hover{color:var(--gold)}
.picture-menu{background:var(--cream);color:var(--ink)}
.picture-menu .picture-intro h2{color:var(--red)}
.picture-menu .text-link,.picture-menu .text-link.dark{color:var(--red);border-color:var(--red)}
.picture-menu .text-link:hover{color:var(--red-hover)}
.picture-menu :focus-visible{outline-color:var(--red)}
.room-section .gallery-hint,.room-section .gallery-position{color:#e2dacc}
.room-section .gallery-controls button{color:var(--cream);border-color:var(--gold)}
.room-section .gallery-controls button:hover:not([aria-disabled=true]){background:var(--cream);border-color:var(--cream);color:var(--charcoal)}
/* Drinks now use the same light cream stage as the rest of the light content. */
.refreshments{background:var(--cream);color:var(--ink)}
.refreshments .section-heading h2{color:var(--red)}
.refreshments .text-link,.refreshments .text-link.dark{color:var(--red);border-color:var(--red)}
.refreshments .text-link:hover{color:var(--red-hover)}
.refreshments .coffee-column .collection-note,.refreshments .gallery-hint,
.refreshments .gallery-position,.refreshments .collection-note{color:var(--muted)}
.refreshments .gallery-controls button{color:var(--red);border-color:#887962}
.refreshments .gallery-controls button:hover:not([aria-disabled=true]){background:var(--red);border-color:var(--red);color:white}
.refreshments :focus-visible{outline-color:var(--red)}

/* Proposed hospitality copy: invitation above the food description, useful footer below. */
.hero .hero-invitation{font:600 1.25rem/1.5 var(--font-body);color:var(--cream);margin:0 0 .5rem;letter-spacing:0}
.hero .hero-description{margin-bottom:1.75rem}
footer{grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);column-gap:clamp(1.5rem,3vw,3rem);row-gap:2rem}
footer .footer-message{min-width:0;text-align:center}
footer .footer-message h2{font:400 clamp(1.75rem,2.5vw,2.25rem)/1.2 var(--font-display);letter-spacing:-.02em;color:var(--cream);margin:0}
footer .footer-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem 1.5rem;margin-top:1.25rem}
footer .footer-links .text-link{font-size:1rem;min-height:44px;line-height:1.5;gap:.5rem}
footer .footer-contact{min-width:0;justify-self:end;color:var(--cream)}
footer .footer-contact .eyebrow{font:600 .875rem/1.5 var(--font-body);color:var(--gold);letter-spacing:.08em;margin:0 0 .5rem}
footer .footer-contact address{font:400 1rem/1.6 var(--font-body);font-style:normal;letter-spacing:0}
footer .footer-phone{font:600 1rem/1.5 var(--font-body);display:inline-flex;align-items:center;min-height:44px;color:var(--cream);text-decoration:underline;text-underline-offset:5px}
footer .footer-links a:hover,footer .footer-phone:hover{color:var(--gold)}
footer .review-label{margin-top:0}
@media(max-width:1000px){footer{grid-template-columns:1fr}footer .footer-brand,footer .footer-message{justify-self:center;text-align:center}footer .footer-contact{grid-column:1/-1;justify-self:center;text-align:center}footer .review-label{grid-column:1/-1}}
@media(max-width:760px){
 .hero .hero-invitation{font-size:1.125rem;margin-bottom:.5rem}
 footer{grid-template-columns:1fr;justify-items:center;gap:1.5rem}
 footer .footer-brand,footer .footer-message,footer .footer-contact{grid-column:1;justify-self:center;text-align:center}
 footer .footer-links{gap:.5rem 1.25rem;margin-top:1rem}
 footer .footer-message h2{font-size:1.75rem}
 footer .review-label{grid-column:1;width:100%}
}

/* Center the image itself inside its wrapper, including the stacked phone hero. */
.hero-brand-image{display:flex;justify-content:center;align-items:center;width:100%;min-width:0}

/* Align the two supporting text blocks beneath the shared-height drinks images. */
.refreshments .gallery-track{padding-bottom:0}
.refreshments .gallery-footer{margin-top:.75rem;align-items:flex-start}
.refreshments .coffee-column .collection-note{margin-top:.75rem;margin-inline:0;text-align:left}
/* Keep the picture-menu action with its heading after the supporting copy was removed. */
.picture-intro{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem 1.5rem}
.picture-intro>h2{margin:0;grid-column:auto;grid-row:auto}
.picture-intro>.text-link{margin:0;flex-shrink:0}

/* Reserve native image geometry before lazy loading, preventing collapsed photo sections. */
.photo-grid .photo-open{aspect-ratio:var(--image-ratio)}
.photo-grid .photo-open>img{width:100%;height:100%;object-fit:contain}
.room-lead>figure{width:100%}
/* Give the two phone interior photographs one shared lower edge. */
@media(max-width:760px){.room-lead{align-items:end}}
/* Let labels and fields reflow instead of squeezing or clipping at large text sizes. */
.picture-intro>.text-link{flex:0 1 auto;max-width:100%}
.picture-intro>.text-link>span{min-width:0}
.search-row{flex-wrap:wrap}
.search-row .search-label{flex:1 1 14rem}
.search-row .clear-button{flex:0 1 auto}
@media(max-width:760px){
 .compact-category{display:flex;flex-wrap:wrap;gap:.5rem 1rem}
 .compact-category select{flex:1 1 12rem;width:auto;max-width:100%}
 .mobile-actions{grid-template-columns:repeat(auto-fit,minmax(min(100%,5em),1fr))}
}

/* Owner-supplied restaurant hours, shared by both language views. */
.business-hours{max-width:32rem;margin-block:1.25rem;font:400 var(--type-body)/1.6 var(--font-body);letter-spacing:0}
.business-hours .hours-heading{margin:0 0 .4rem;font:600 var(--type-note)/1.5 var(--font-body);letter-spacing:.08em;text-transform:uppercase}
.business-hours dl{margin:0}
.business-hours .hours-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem 1.25rem;padding-block:.15rem}
.business-hours dt,.business-hours dd{margin:0;font:inherit}
.business-hours dd{font-variant-numeric:tabular-nums}
.hero .hero-hours{color:var(--cream);border-top:1px solid var(--dark-line);padding-top:1rem;text-align:left}
.hero-hours .hours-heading{color:var(--gold)}
.visit-hours{color:var(--ink)}
.visit-hours .hours-heading{color:var(--red)}
@media(max-width:760px){.hero .hero-hours{margin-inline:auto}}
@media(max-width:380px),(min-width:761px) and (max-width:1100px){
 .business-hours .hours-row{grid-template-columns:1fr;gap:0;padding-block:.25rem}
 .hero .hero-hours{text-align:center}
}

/* A short bilingual welcome between the footer heading and navigation. */
footer .footer-welcome{max-width:42ch;margin:.9rem auto 0;font:400 var(--type-body)/1.65 var(--font-body);letter-spacing:0;color:var(--cream);text-align:center;white-space:pre-line}
footer .footer-message h2{color:var(--rose)}
