// ── Olivo · Baarerhof — Stammdaten ────────────────────────────────────────── // Allergen-Kürzel (Schweizer Deklaration, vereinfacht) const ALLERGENS = { G: "Gluten", L: "Laktose", E: "Ei", N: "Schalenfrüchte", F: "Fisch", W: "Weichtiere", K: "Krebstiere", SE: "Sellerie", SF: "Senf", SU: "Sulfite", }; // Kategorien in Reihenfolge der Speisekarte const CATEGORIES = [ { id: "mittag", label: "Mittagsmenü", kicker: "Pranzo · Mo–Fr", note: "Schnell & günstig für die Mittagspause — Montag bis Freitag, 11–14 Uhr, inklusive kleinem Saisonsalat." }, { id: "antipasti", label: "Antipasti & Mezze", kicker: "Zum Beginnen" }, { id: "pasta", label: "Pasta & Risotto", kicker: "Primi" }, { id: "pizza", label: "Pizza", kicker: "Dal forno" }, { id: "grill", label: "Heisser Stein & Grill", kicker: "Dalla griglia", note: "Vom 400° heissen Lavastein direkt an deinen Tisch — oder frisch vom Grill. Mediterran gewürzt." }, { id: "secondi", label: "Mediterrane Hauptgänge", kicker: "Secondi" }, { id: "dolci", label: "Dolci", kicker: "Süsses" }, { id: "bevande", label: "Getränke", kicker: "Bevande" }, ]; // Varianten-Vorlagen const SIZE_PIZZA = { id: "groesse", label: "Grösse", required: true, choices: [ { id: "n", label: "Klassisch · 30 cm", delta: 0 }, { id: "f", label: "Familie · 40 cm", delta: 6 }, ], }; const SIZE_PASTA = { id: "portion", label: "Portion", required: true, choices: [ { id: "n", label: "Normal", delta: 0 }, { id: "g", label: "Grande (+CHF 4)", delta: 4 }, ], }; const EXTRA_PARM = { id: "extra", label: "Extra", required: false, choices: [ { id: "0", label: "Ohne", delta: 0 }, { id: "p", label: "Extra Grana Padano", delta: 2.5 }, { id: "t", label: "Schwarzer Trüffel", delta: 7 }, ], }; const BEILAGE = { id: "beilage", label: "Beilage", required: true, choices: [ { id: "p", label: "Pommes frites", delta: 0 }, { id: "r", label: "Djuvec-Reis", delta: 0 }, { id: "g", label: "Ofengemüse", delta: 0 }, { id: "s", label: "Gemischter Salat", delta: 0 }, ], }; // tone = Farbton (HSL hue) für den getönten Platzhalter const MENU = [ // ── MITTAGSMENÜ (Mo–Fr) ── { id: "m1", cat: "mittag", name: "Pasta del Giorno", price: 19.5, tone: 40, tags: ["vegi"], allergens: ["G", "E"], desc: "Wechselnde Pasta des Tages mit kleinem Saisonsalat. Frag uns einfach, was heute im Topf ist." }, { id: "m2", cat: "mittag", name: "Tagesteller", price: 23.5, tone: 28, tags: [], allergens: ["SE", "SU"], desc: "Fleisch oder Fisch des Tages mit Marktbeilage und kleinem Salat — in 12 Minuten am Tisch." }, { id: "m3", cat: "mittag", name: "Risotto-Lunch", price: 21.0, tone: 50, tags: ["vegi"], allergens: ["L", "SE", "SU"], desc: "Kleines Carnaroli-Risotto nach Tagesart, dazu ein kleiner grüner Salat." }, { id: "m4", cat: "mittag", name: "Gemüse-Schale", price: 19.5, tone: 86, tags: ["vegi"], allergens: ["L"], desc: "Ofengemüse der Saison in der feuerfesten Schale, Feta, Kräuter — leicht und sättigend." }, // ── ANTIPASTI & MEZZE ── { id: "a1", cat: "antipasti", name: "Bruschetta al Pomodoro", price: 12.5, tone: 78, tags: ["vegan"], allergens: ["G"], desc: "Geröstetes Sauerteigbrot, San-Marzano-Tomaten, Knoblauch, Basilikum, natives Olivenöl." }, { id: "a2", cat: "antipasti", name: "Burrata Pugliese", price: 18.5, tone: 64, tags: ["vegi"], allergens: ["L"], desc: "Cremige Burrata aus Apulien, Datterini-Tomaten, Taggiasca-Oliven, Basilikumöl." }, { id: "a3", cat: "antipasti", name: "Saganaki", price: 14.5, tone: 46, tags: ["vegi"], allergens: ["G", "L"], desc: "Gebratener Graviera-Käse aus Kreta, Honig, Sesam, Zitrone. Heiss serviert." }, { id: "a4", cat: "antipasti", name: "Dolmades", price: 13.0, tone: 92, tags: ["vegi"], allergens: ["L"], desc: "Gefüllte Weinblätter mit Reis & Kräutern, kühler Joghurt-Minze-Dip." }, { id: "a5", cat: "antipasti", name: "Pršut & Ajvar", price: 19.0, tone: 18, tags: [], allergens: ["L", "SU"], desc: "Luftgetrockneter dalmatinischer Rohschinken, hausgemachtes Ajvar, Schafskäse, Oliven." }, { id: "a6", cat: "antipasti", name: "Vitello Tonnato", price: 21.0, tone: 38, tags: [], allergens: ["E", "F"], desc: "Rosa gegarte Kalbsnuss, samtige Thunfisch-Kapern-Creme, Limone." }, { id: "a7", cat: "antipasti", name: "Mezze della Casa", price: 24.0, tone: 30, tags: ["vegi"], allergens: ["G", "L", "SE"], desc: "Auswahl mediterraner Vorspeisen: Hummus, Tzatziki, Ajvar, Oliven, warmes Fladenbrot — zum Teilen." }, // ── PASTA & RISOTTO ── { id: "p1", cat: "pasta", name: "Tagliatelle al Ragù", price: 26.5, tone: 28, tags: [], allergens: ["G", "E", "SE"], options: [SIZE_PASTA, EXTRA_PARM], desc: "Frische Eiernudeln, acht Stunden geschmortes Rindsragù, Soffritto, Grana." }, { id: "p2", cat: "pasta", name: "Spaghetti alle Vongole", price: 28.0, tone: 44, tags: [], allergens: ["G", "W"], options: [SIZE_PASTA], desc: "Venusmuscheln, Weisswein, Knoblauch, Peperoncino, Petersilie." }, { id: "p3", cat: "pasta", name: "Ravioli Ricotta e Spinaci", price: 25.0, tone: 88, tags: ["vegi"], allergens: ["G", "E", "L"], options: [SIZE_PASTA, EXTRA_PARM], desc: "Hausgemachte Ravioli, Ricotta & Spinat, Salbeibutter, Grana Padano." }, { id: "p4", cat: "pasta", name: "Linguine al Pesto Genovese", price: 23.5, tone: 96, tags: ["vegi"], allergens: ["G", "N", "L"], options: [SIZE_PASTA], desc: "Basilikumpesto aus dem Mörser, Pinienkerne, Pecorino, grüne Bohnen." }, { id: "p5", cat: "pasta", name: "Risotto ai Porcini", price: 27.0, tone: 36, tags: ["vegi"], allergens: ["L", "SE", "SU"], options: [EXTRA_PARM], desc: "Carnaroli-Reis, Steinpilze, Weisswein, Grana — glutenfrei, à la minute gerührt." }, { id: "p6", cat: "pasta", name: "Gnocchi alla Sorrentina", price: 22.5, tone: 16, tags: ["vegi"], allergens: ["G", "L"], options: [SIZE_PASTA], desc: "Kartoffelgnocchi, San-Marzano-Sugo, Fior di Latte, Basilikum, im Ofen überbacken." }, // ── PIZZA ── { id: "z1", cat: "pizza", name: "Margherita D.O.P.", price: 18.5, tone: 14, tags: ["vegi"], allergens: ["G", "L"], options: [SIZE_PIZZA], desc: "San-Marzano-Tomaten, Fior di Latte, Basilikum, Olivenöl. Die Königin." }, { id: "z2", cat: "pizza", name: "Diavola", price: 22.0, tone: 10, tags: ["scharf"], allergens: ["G", "L"], options: [SIZE_PIZZA], desc: "Scharfe Salami, Tomate, Mozzarella, Peperoncino, Oregano." }, { id: "z3", cat: "pizza", name: "Quattro Formaggi", price: 23.5, tone: 48, tags: ["vegi"], allergens: ["G", "L", "N"], options: [SIZE_PIZZA], desc: "Gorgonzola, Fontina, Grana, Mozzarella, Honigtropfen, Walnuss." }, { id: "z4", cat: "pizza", name: "Prosciutto e Funghi", price: 23.0, tone: 26, tags: [], allergens: ["G", "L"], options: [SIZE_PIZZA], desc: "Cotto-Schinken, frische Champignons, Mozzarella, Tomate." }, { id: "z5", cat: "pizza", name: "Tartufo", price: 28.0, tone: 32, tags: ["vegi"], allergens: ["G", "L"], options: [SIZE_PIZZA], desc: "Trüffelcreme, Steinpilze, Fior di Latte, Ruccola, Grana-Späne." }, { id: "z6", cat: "pizza", name: "Ortolana", price: 21.0, tone: 84, tags: ["vegi"], allergens: ["G", "L"], options: [SIZE_PIZZA], desc: "Grilliertes Marktgemüse der Saison, Tomate, Mozzarella, Basilikum." }, // ── HEISSER STEIN & GRILL ── { id: "g1", cat: "grill", name: "Heisser Stein «Manzo»", price: 49.0, tone: 22, tags: [], allergens: ["L", "SF", "SU"], desc: "Tranchen vom Schweizer Rindsfilet, am Tisch auf 400° Lavastein gegart. Drei Saucen, Pommes & Gemüse." }, { id: "g2", cat: "grill", name: "Heisser Stein «Mediterraneo»", price: 52.0, tone: 16, tags: [], allergens: ["L", "K", "SF", "SU"], desc: "Rind, Maispoulet & Scampi gemischt auf dem heissen Stein. Mit Saucen und Beilagen — für Geniesser." }, { id: "g3", cat: "grill", name: "Ćevapčići", price: 32.0, tone: 24, tags: ["scharf"], allergens: ["SU"], options: [BEILAGE], desc: "Gegrillte kroatische Hackröllchen, Ajvar, rohe Zwiebeln, Sauerrahm." }, { id: "g4", cat: "grill", name: "Pljeskavica", price: 34.0, tone: 20, tags: [], allergens: ["L", "SU"], options: [BEILAGE], desc: "Saftiges Hacktätschli vom Grill, gefüllt mit Schafskäse, Ajvar und gerösteten Zwiebeln." }, { id: "g5", cat: "grill", name: "Souvlaki vom Schwein", price: 33.0, tone: 34, tags: [], allergens: ["G", "L"], options: [BEILAGE], desc: "Marinierte Schweinsspiesse vom Grill, Tzatziki, warme Pita, Zitrone." }, { id: "g6", cat: "grill", name: "Entrecôte «Café de Paris»", price: 46.0, tone: 18, tags: [], allergens: ["L", "SF", "SU"], desc: "Schweizer Rinds-Entrecôte, klassische Café-de-Paris-Kräuterbutter, knusprige Pommes frites." }, // ── MEDITERRANE HAUPTGÄNGE ── { id: "s1", cat: "secondi", name: "Branzino al Forno", price: 44.0, tone: 50, tags: [], allergens: ["F", "SE"], desc: "Ganzer Wolfsbarsch aus dem Ofen, Mittelmeerkräuter, Zitrone, Ofengemüse." }, { id: "s2", cat: "secondi", name: "Ossobuco con Gremolata", price: 46.0, tone: 24, tags: [], allergens: ["SE", "L", "SU"], desc: "Geschmorte Kalbshaxe, Gremolata, Safran-Risotto Milanese." }, { id: "s3", cat: "secondi", name: "Saltimbocca alla Romana", price: 42.0, tone: 30, tags: [], allergens: ["L", "SE", "SU"], desc: "Kalbsschnitzel, Salbei, Parmaschinken, Marsala-Jus, Kartoffelpüree." }, { id: "s4", cat: "secondi", name: "Moussaka", price: 34.0, tone: 26, tags: [], allergens: ["L", "E", "G", "SE"], desc: "Griechischer Klassiker: Aubergine, würziges Hackfleisch, goldene Béchamel — im Ofen überbacken." }, { id: "s5", cat: "secondi", name: "Bouillabaisse", price: 39.0, tone: 36, tags: [], allergens: ["F", "W", "K", "G", "SE"], desc: "Provenzalische Fischsuppe mit Fisch & Meeresfrüchten, Rouille und geröstetem Brot." }, { id: "s6", cat: "secondi", name: "Gemüse aus der Schale", price: 29.0, tone: 88, tags: ["vegi"], allergens: ["L"], desc: "Saisongemüse in der feuerfesten Schale geschmort, Kräuter, Feta, Olivenöl. Auch vegan möglich." }, // ── DOLCI ── { id: "d1", cat: "dolci", name: "Tiramisù della Casa", price: 12.0, tone: 32, tags: ["vegi"], allergens: ["G", "E", "L"], desc: "Mascarpone, Espresso, Savoiardi, Kakao — nach Familienrezept." }, { id: "d2", cat: "dolci", name: "Panna Cotta ai Frutti", price: 10.5, tone: 20, tags: ["vegi"], allergens: ["L"], desc: "Vanille-Panna-Cotta, lauwarmes Waldbeer-Ragout." }, { id: "d3", cat: "dolci", name: "Baklava", price: 11.0, tone: 40, tags: ["vegi"], allergens: ["G", "N", "L"], desc: "Knuspriger Filoteig, Walnüsse & Pistazien, Honigsirup. Dazu ein Klecks Joghurt." }, { id: "d4", cat: "dolci", name: "Palačinke", price: 11.5, tone: 28, tags: ["vegi"], allergens: ["G", "E", "L", "N"], desc: "Kroatische Crêpes mit Walnuss-Schokolade, gerollt und warm serviert." }, { id: "d5", cat: "dolci", name: "Affogato al Caffè", price: 9.5, tone: 26, tags: ["vegi"], allergens: ["L"], desc: "Hausgemachtes Vanilleglace, ertränkt in heissem Espresso." }, // ── BEVANDE ── { id: "b1", cat: "bevande", name: "Aperol Spritz", price: 14.0, tone: 22, tags: [], allergens: ["SU"], desc: "Aperol, Prosecco, Soda, Orange. Der Apéro-Klassiker." }, { id: "b2", cat: "bevande", name: "Plavac Mali", price: 9.5, tone: 12, tags: [], allergens: ["SU"], desc: "Kräftiger dalmatinischer Rotwein, 1 dl. Auch flaschenweise erhältlich." }, { id: "b3", cat: "bevande", name: "Limonata Amalfi", price: 6.5, tone: 56, tags: ["vegan"], allergens: [], desc: "Hausgemachte Zitronenlimonade mit Amalfi-Zitronen." }, { id: "b4", cat: "bevande", name: "San Pellegrino / Panna", price: 5.5, tone: 52, tags: ["vegan"], allergens: [], desc: "Mineralwasser mit oder ohne Kohlensäure, 0,5 l." }, { id: "b5", cat: "bevande", name: "Espresso Italiano", price: 4.5, tone: 26, tags: ["vegan"], allergens: [], desc: "Dunkle Röstung, sizilianische Mischung. Doppio +CHF 1.50." }, ]; const RESTAURANT = { name: "Olivo", sub: "Baarerhof", full: "Restaurant Olivo · Baarerhof", tagline: "Cucina mediterranea · Zug", owners: "Rosi & Ivan Grgic", phone: "+41 41 556 88 86", phoneHref: "tel:+41415568886", email: "reservation@olivo-zug.ch", address: { street: "Baarerstrasse 65", city: "6300 Zug", country: "Schweiz" }, hours: [ { d: "Montag – Freitag", t: "11:00 – 14:00 · 17:00 – 23:00" }, { d: "Samstag", t: "17:00 – 23:00" }, { d: "Sonntag", t: "12:00 – 21:00" }, ], takeawayHours: "Täglich · Mittag & Abend", }; Object.assign(window, { ALLERGENS, CATEGORIES, MENU, RESTAURANT });