/* 1.2: readable menu data, language switch and events. */
.menu-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:24px}
.menu-card-content{padding:18px;container-type:inline-size}
.menu-overline{font-size:10px;line-height:1.5;display:block;letter-spacing:.06em}
.menu-card h2{font-size:27px;line-height:1.18;margin:10px 0}
.menu-card .dish-price{display:block;margin:0 0 16px;font-size:25px;line-height:1.3}
.dish-price{font-family:var(--clean,Arial,sans-serif);font-weight:600;font-size:25px;letter-spacing:0;color:#23452b;white-space:nowrap;font-variant-numeric:tabular-nums}
.dish-price-unset{display:block;color:#677563;font-size:12px;line-height:1.5;margin-bottom:14px}
.dialog-content .dish-price,.dish-hero-copy .dish-price{display:block;margin:12px 0 18px;font-size:30px}
.home-dish-copy>.dish-price{display:block;font-size:23px;margin:9px 0 14px}
.nutrition-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin:18px 0 0;padding:0;align-items:start;isolation:isolate}
.nutrition-strip>.nutrition{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1/1;width:100%;min-width:0;min-height:40px;max-width:64px;margin:0 auto;padding:4px 1px;border:0;border-radius:50%;position:relative;overflow:visible;gap:3px;color:#fff;transform:none;text-align:center;font-family:Arial,Helvetica,sans-serif;line-height:1}
.nutrition-strip .nutrition-label,.nutrition-strip .nutrition-value,.nutrition-strip .nutrition-unit{display:block;position:relative;z-index:1;inset:auto;transform:none;margin:0;padding:0;width:auto;height:auto;line-height:1;letter-spacing:0;text-transform:none;font-style:normal;color:#fff;white-space:nowrap}
.nutrition-strip .nutrition-label{font-size:8px;font-weight:700}
.nutrition-strip .nutrition-value{font-size:12px;font-size:clamp(10px,3.2cqw,14px);font-weight:700;font-variant-numeric:tabular-nums}
.nutrition-strip .nutrition-unit{font-size:7px;font-weight:400;opacity:1}
.nutrition-strip>.nutrition-calorie{background:#c45f37}.nutrition-strip>.nutrition-sugar{background:#8d5599}.nutrition-strip>.nutrition-fat{background:#d2a52c}.nutrition-strip>.nutrition-carbs{background:#668b52}.nutrition-strip>.nutrition-protein{background:#4d7ea2}.nutrition-strip>.nutrition-salt{background:#88857e}
.menu-card-footer{align-items:center;flex-direction:row}
.nutrition-key{font-size:10px;line-height:1.8;color:#667361;margin:14px 0 0}
.menu-card-content>.translation-note{font-size:10px;line-height:1.6;min-height:0}
.translation-note{font-size:12px;color:#697562;line-height:1.7;margin:12px 0}
.language-notice{background:#e7eadf;border-bottom:1px solid #cbd2c0;padding:12px 24px;text-align:center;font-size:12px;color:#465b40}
.site-header{padding-inline:clamp(22px,3.5vw,68px)}
.desktop-nav{gap:clamp(16px,1.6vw,29px)}
.desktop-nav a{font-size:12px}
.header-tools{display:flex;align-items:center;gap:24px;justify-self:end}
.language-switch{display:flex;align-items:center;gap:2px;font-size:10px;font-family:var(--clean,Arial,sans-serif);font-weight:600;letter-spacing:.04em;white-space:nowrap}
.language-switch a{display:grid;place-items:center;min-width:33px;min-height:40px;color:#75806d;border-bottom:1px solid transparent}
.language-switch a[aria-current]{color:#264a2f;border-color:#264a2f}
.header-tools .header-visit{font-size:9px;gap:16px}
.events-intro{padding:66px var(--gutter,6vw) 44px;text-align:center;max-width:900px;margin:auto}
.events-intro .kicker{justify-content:center}
.events-intro h1{font:400 clamp(46px,5.5vw,82px)/1.07 var(--display,Georgia,serif);letter-spacing:-.025em;margin:0}
.events-intro p:not(.kicker){font-size:14px;color:var(--copy,#63705f);max-width:540px;margin:22px auto 0}
.events-section{padding:0 var(--gutter,6vw) 70px}
.events-section>h2{font:400 35px/1.2 var(--display,Georgia,serif);margin:24px 0}
.event-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:30px}
.event-card{background:var(--paper,#fcfbf5);border:1px solid var(--line,#d3d8cb);min-width:0;overflow:hidden}
.event-photo{display:block;aspect-ratio:3/2;position:relative;overflow:hidden;background:#e6eade}
.event-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.event-card:hover .event-photo img{transform:scale(1.03)}
.event-art{height:100%;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 60%,#e3e8d9,#d8decd);color:#7c906d}
.event-art>.icon-leaf{width:64px;height:80px}
.event-card-copy{padding:24px}
.event-meta{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;text-transform:uppercase;letter-spacing:.09em;font-size:9px;color:#6f7e64}
.event-card h2{font:400 33px/1.15 var(--display,Georgia,serif);letter-spacing:-.01em;margin:14px 0}
.event-card p{font-size:13px;color:var(--copy,#62735c);line-height:1.8;margin:12px 0}
.event-card .event-when{color:#355638;font-weight:600;font-size:12px}
.event-card-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line,#d3d8cb);margin-top:22px;padding-top:8px;font-size:11px}
.event-card-foot .text-link{font-size:10px;gap:12px;flex-shrink:0}
.events-empty{border:1px solid var(--line,#d3d8cb);padding:46px 24px;text-align:center;max-width:800px;margin:0 auto}
.events-empty .icon-leaf{margin:auto auto 20px;color:#7c906d}
.events-empty h2{font:400 36px/1.2 var(--display,Georgia,serif);margin:0 0 16px}
.events-empty p{max-width:460px;margin:0 auto 15px;font-size:14px;color:var(--copy,#62735c)}
.home-events{background:#ebeee4}
.home-events .event-grid{margin-top:35px}
.event-detail{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:65px;padding:30px var(--gutter,6vw) 75px;align-items:start}
.event-detail-content{min-width:0}
.event-detail-content>.event-photo{margin-bottom:30px}
.event-detail-content .article-body{font-size:15px}
.event-facts{background:#e7ebdf;padding:28px;position:sticky;top:calc(var(--header-height,94px) + 25px)}
.event-facts dl{margin:0}
.event-facts dl>div{border-bottom:1px solid #c4cdbb;padding:17px 0}
.event-facts dt{font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:#6c7d60}
.event-facts dd{margin:7px 0 0;font-size:14px;line-height:1.7}
.event-facts .button{margin-top:25px;width:100%}
.event-state-note{font-size:12px;color:#566a4d;margin:20px 0 0}
.translation-editor-row{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:24px 0;border-top:1px solid #dce1d5;align-items:start}
.translation-editor-row small{display:block;color:#74816b;font-size:10px}
.translation-source{white-space:pre-wrap;background:#f1f3eb;padding:14px;margin-top:10px;font-size:13px;line-height:1.7;overflow-wrap:anywhere;max-height:420px;overflow:auto}
.translation-stale,.translation-missing{display:block;color:#946e31;font-size:11px;font-weight:400;margin:7px 0}
@media(max-width:1100px){.site-header{grid-template-columns:1fr auto auto;gap:20px}.desktop-nav,.header-tools .header-visit{display:none}.mobile-toggle{display:flex}.header-tools{gap:0}.event-detail{gap:35px}}
@media(max-width:700px){.menu-grid{gap:23px}.menu-card-content{padding:16px}.nutrition-strip>.nutrition{min-height:40px}.menu-card .dish-price{font-size:25px}.header-tools .language-switch a{min-width:30px}.site-header{gap:18px}.events-intro{padding-top:42px}.events-section{padding-bottom:50px}.event-grid{gap:24px}.event-detail{grid-template-columns:1fr;gap:28px;padding-bottom:50px}.event-facts{position:static;order:-1}.event-card-copy{padding:20px}.translation-editor-row{grid-template-columns:1fr;gap:12px}.event-facts dl>div{padding:12px 0}}
@media(max-width:360px){.menu-card-content{padding:12px}.nutrition-strip{gap:3px}.nutrition-strip>.nutrition{min-height:38px;gap:2px}.nutrition-strip .nutrition-value{font-size:10px}.nutrition-strip .nutrition-label{font-size:7px}.nutrition-strip .nutrition-unit{font-size:7px}.site-header{gap:10px}.language-switch a{min-width:28px}.mobile-toggle{gap:8px}.event-card-foot{align-items:flex-start;flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){.event-photo img{transition:none}.event-card:hover .event-photo img{transform:none}}

.nutrition-strip .nutrition-value-long{font-size:9px}.nutrition-strip .nutrition-value-tiny{font-size:7px}
