/* ============================================================
   GEMEINSAME HÜLLE + UNTERSEITEN — Design „Leiste + Karte"
   Wird auf ALLEN Seiten geladen (Startseite und Unterseiten).
   Auf Unterseiten liegt sie NACH theme.css und überschreibt den
   alten dunklen Kopf/Fuß; die Inhalte selbst bleiben von
   theme.css gestylt (Speisekarte, Getränke, Gutscheine).
   Scope: body.ml-neu
   ============================================================ */

body.ml-neu{
  --papier:#FBF6EA;--tinte:#2E2A1A;--braun:#8A6410;--gruen:#505534;--dgruen:#3E4229;
  --leise:#5C5640;--creme:#F3EBD8;--linie:rgba(138,100,16,.4);
  background:var(--papier);
  color:var(--tinte);
  font-family:'Alegreya Sans',sans-serif;font-weight:500;font-size:1.04rem;line-height:1.8;
  overflow-x:hidden;
  /* Versalziffern: Cormorant setzt sonst Mediaevalziffern — die 1 sieht dann aus
     wie ein I (0911 wurde zu 09II, 18:00 zu I8:00). Vererbt sich auf alles. */
  font-variant-numeric:lining-nums;
  font-feature-settings:"lnum" 1;
}
body.ml-neu img{max-width:100%}

/* Sprungmarke */
body.ml-neu .skip{position:absolute;left:-9999px;top:0;background:var(--gruen);color:var(--creme);padding:.7rem 1.2rem;z-index:99}
body.ml-neu .skip:focus{left:0}

/* ---------- Original-Logo (kompletter Lockup als ein Bild) ---------- */
body.ml-neu .mllogo{display:block;height:auto;max-width:100%}

/* ---------- Kopfleiste — Logo MITTIG, Menü-Knopf als Icon (☰ → ✕) ----------
   Farbwelten (auch vom Menü-Overlay unten genutzt):
     Handy  = beiges Papier, grüne Schrift, grüner Akzent
     Desktop= grün, beige Schrift, beiger Akzent          (kein Gold)
   Das Logo wird als Maske eingefärbt und wechselt dadurch die Farbe. */
body.ml-neu{
  /* EINE Farbwelt fuer Kopf und Menue — auf ALLEN Groessen gruen mit cremefarbener
     Schrift. Das beige Handy-Papier ist bewusst raus (Wunsch 23.07.2026), damit
     Kopf und Fuss dieselbe Farbe haben und die Seite den Rhythmus
     gruen - Papier - gruen - Papier - gruen bekommt. */
  --mm-bg:#505534; --mm-ink:#F7F1E1;
  --mm-soft:rgba(247,241,225,.74); --mm-mut:rgba(247,241,225,.55);
  --mm-line:rgba(247,241,225,.24); --mm-acc:#E7DDC3; --mm-acc2:#F7F1E1;
}
body.ml-neu .leiste-hg{background:var(--mm-bg);color:var(--mm-ink);padding:.8rem 0;
  border-bottom:1px solid var(--mm-line);position:relative;z-index:70}
body.ml-neu .leiste{max-width:1040px;margin:0 auto;padding:0 clamp(1.1rem,4.5vw,2.4rem);
  display:flex;align-items:center;justify-content:center;position:relative;min-height:56px}
/* Logo als Silhouetten-Maske → nimmt die Schriftfarbe an (grün auf beige / creme auf grün) */
body.ml-neu .marke{display:block;width:clamp(150px,42vw,190px);aspect-ratio:1000/560;
  background:var(--mm-ink);
  -webkit-mask:url(../images/logo/mountlavinia-logo-weiss.svg) center/contain no-repeat;
          mask:url(../images/logo/mountlavinia-logo-weiss.svg) center/contain no-repeat}
body.ml-neu .marke .mllogo{display:none}
/* Die alte Quicklinks-Zeile entfällt im neuen, ruhigen Kopf */
body.ml-neu .leiste nav{display:none}
body.ml-neu .lrechts{position:absolute;right:clamp(1.1rem,4.5vw,2.4rem);top:50%;transform:translateY(-50%)}
body.ml-neu .qmenu{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;
  padding:0;cursor:pointer;background:transparent;border:1px solid var(--mm-line);border-radius:0;
  transition:background .2s,border-color .2s}
body.ml-neu .qmenu:hover{border-color:var(--mm-ink);background:rgba(120,120,90,.10)}
body.ml-neu .qmenu .bars{position:relative;width:23px;height:15px;display:block}
body.ml-neu .qmenu .bars i{position:absolute;left:0;width:23px;height:2px;background:var(--mm-ink);border-radius:2px;
  transition:transform .32s cubic-bezier(.6,.05,.2,1),opacity .18s ease}
body.ml-neu .qmenu .bars i:nth-child(1){top:0}
body.ml-neu .qmenu .bars i:nth-child(2){top:6.5px}
body.ml-neu .qmenu .bars i:nth-child(3){top:13px}
/* offenes Menü → die drei Striche morphen zum ✕ */
body.ml-neu.menu-auf .qmenu .bars i:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
body.ml-neu.menu-auf .qmenu .bars i:nth-child(2){opacity:0}
body.ml-neu.menu-auf .qmenu .bars i:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
/* bei offenem Menü Kopf fest oben halten → Logo springt nicht mehr */
body.ml-neu.menu-auf .leiste-hg{position:fixed;top:0;left:0;right:0;z-index:1201}

/* ---------- Gruß über dem Logo (Singhalesisch & Tamil, dann Englisch) ----------
   Die Farben laufen über die --mm-* Variablen mit: am Handy dunkelgrüne Schrift
   auf beigem Papier, am Desktop creme auf Grün. Bewusst KEIN Gold — der neue
   Kopf ist goldfrei. Die Leiste wird dafür zur Spalte, damit der Gruß über dem
   Logo sitzt und das Logo mittig bleibt. */
body.ml-neu .leiste{flex-direction:column}
body.ml-neu .gruss{order:-1;margin:0 0 .3rem;font-size:.8rem;line-height:1.3;color:var(--mm-ink);text-align:center}
body.ml-neu .gruss .sy{font-family:'Noto Serif Sinhala','Nirmala UI','Iskoola Pota',serif;font-size:1.16em;vertical-align:-.03em}
body.ml-neu .gruss .ta{font-family:'Noto Serif Tamil','Nirmala UI','Latha',serif;font-size:1.16em;vertical-align:-.03em}
body.ml-neu .gruss .amp{margin:0 .32em;color:var(--mm-acc);font-family:'Alegreya Sans',sans-serif;font-style:italic}
body.ml-neu .gruss .en{display:block;margin-top:.12rem;font-family:'Alegreya Sans',sans-serif;letter-spacing:.17em;text-transform:uppercase;font-size:.62rem;color:var(--mm-soft)}

/* Frueher schaltete hier eine Media Query am Desktop von Beige auf Gruen um.
   Es gibt jetzt nur noch die eine gruene Farbwelt (siehe oben) — die Umschaltung
   ist deshalb ersatzlos entfallen. */

/* ---------- Knöpfe (Marcellus-Versalien, Print-Anmutung) ---------- */
/* Doppellinie: Außenrahmen + feine Innenlinie mit Luft dazwischen — wie der
   Rahmen einer gedruckten Menükarte. Gemacht mit inset-Schatten, damit die
   Knopfgröße unverändert bleibt. */
body.ml-neu .btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.8rem 2.2rem;
  border:2px solid var(--gruen);color:var(--gruen);background:none;cursor:pointer;text-decoration:none;
  font-family:'Alegreya Sans',sans-serif;font-weight:400;font-size:.88rem;letter-spacing:.16em;text-transform:uppercase;
  border-radius:0;transition:all .2s;margin:.35rem;
  box-shadow:inset 0 0 0 1px #FEFCF4,inset 0 0 0 2px rgba(138,100,16,.45)}
body.ml-neu .btn:hover{background:var(--gruen);color:var(--papier);
  box-shadow:inset 0 0 0 1px var(--gruen),inset 0 0 0 2px rgba(251,246,234,.5)}
body.ml-neu .btn.voll{background:var(--gruen);color:var(--papier);
  box-shadow:inset 0 0 0 1px var(--gruen),inset 0 0 0 2px rgba(251,246,234,.5)}
body.ml-neu .btn.voll:hover{background:#3E4229;border-color:#3E4229;
  box-shadow:inset 0 0 0 1px #3E4229,inset 0 0 0 2px rgba(251,246,234,.55)}
/* Der Lieferdienst-Knopf trägt bewusst KEINE Fremdfarbe mehr (das Türkis von
   Wolt hat die Seite zerrissen) — er ist ein Knopf wie die anderen. */

/* ---------- Videos (klick-zum-Laden, youtube-nocookie) ----------
   Auf allen Seiten: Startseite, Buffet & Catering, Unser Team.
   Das JavaScript dazu liegt in footer.php und greift bei .vid[data-yt]. */
body.ml-neu .vid{position:relative;aspect-ratio:16/10;max-width:520px;margin:1.8rem auto 0;
  border:1px solid var(--linie);box-shadow:0 12px 26px rgba(46,42,26,.16);
  background:#000;overflow:hidden;cursor:pointer}
body.ml-neu .vid img{width:100%;height:100%;object-fit:cover;opacity:.92;
  margin:0;border-radius:0;box-shadow:none}
body.ml-neu .vid .play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}
body.ml-neu .vid .play i{width:64px;height:64px;border-radius:50%;background:rgba(251,246,234,.94);color:var(--gruen);
  display:flex;align-items:center;justify-content:center;font-style:normal;font-size:1.4rem;padding-left:5px;box-shadow:0 6px 18px rgba(0,0,0,.4)}
body.ml-neu .vid .vcap{position:absolute;left:0;right:0;bottom:0;padding:.6rem;background:linear-gradient(transparent,rgba(0,0,0,.6));
  color:#FBF6EA;font-family:'Alegreya Sans',sans-serif;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;pointer-events:none;text-align:center}
body.ml-neu .vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ---------- Sternanis-Trenner ---------- */
body.ml-neu .anis{display:block;width:min(210px,56%);aspect-ratio:829/110;margin:0 auto;background:var(--gruen);
  -webkit-mask:url(../img/sternanis-divider.svg) center/contain no-repeat;
          mask:url(../img/sternanis-divider.svg) center/contain no-repeat}
body.ml-neu .trenn{padding:.4rem 0;text-align:center}

/* ---------- Grüner Fuß ---------- */
body.ml-neu .fuss{background:var(--gruen);color:rgba(243,235,216,.85);text-align:center;padding:2.6rem 1.2rem 2.4rem;margin-top:3rem}
body.ml-neu .fuss .mllogo{width:240px;margin:0 auto .2rem}
body.ml-neu .fuss p{color:rgba(243,235,216,.85);font-size:.9rem;margin:1.2rem auto 0;max-width:none}
body.ml-neu .fuss a{color:var(--creme);text-decoration:underline;text-decoration-color:rgba(243,235,216,.4);text-underline-offset:3px}
body.ml-neu .fuss a:hover{color:#fff}
/* Zweite Fußzeile mit Zeiten, letzter Bestellung, Telefon und Adresse (26.07.2026).
   Kleiner und leiser als die Zeile darüber, damit die Reihenfolge
   Marke → Kontakt → Servicezeiten erhalten bleibt. Die feine Trennlinie macht die
   vier Angaben als eigenen Block lesbar, ohne einen Kasten zu bauen. */
body.ml-neu .fuss .fuss-fakten{
  margin:1.1rem auto 0;padding-top:1rem;font-size:.83rem;line-height:1.9;
  border-top:1px solid rgba(243,235,216,.22);max-width:44rem}

/* ---------- Menü-Overlay — Handy beige / Desktop grün, mittig, kein Gold ---------- */
body.ml-neu .mlmenu{position:fixed;inset:0;z-index:1200;overflow-y:auto;opacity:0;transition:opacity .28s ease;
  background:var(--mm-bg);color:var(--mm-ink);line-height:1.5}
body.ml-neu .mlmenu.offen{opacity:1}
body.ml-neu .mlmenu .mm-pin{max-width:900px;margin:0 auto;min-height:100%;display:flex;flex-direction:column;
  padding:calc(var(--hd-h,84px) + clamp(1.4rem,4vw,2rem)) clamp(1.2rem,5vw,2.4rem) clamp(1.6rem,4vw,2.2rem)}
/* Rubrik-Überschrift */
body.ml-neu .mlmenu .mm-eyebrow{font-family:'Alegreya Sans',sans-serif;text-transform:uppercase;letter-spacing:.3em;
  font-size:.62rem;color:var(--mm-acc);text-align:center;margin:0 0 1rem}
/* Menüpunkt: Titel, kleine Zeile ZENTRIERT DARUNTER */
body.ml-neu .mlmenu .mm-grp{display:flex;flex-direction:column;align-items:center;margin:.2rem 0}
body.ml-neu .mlmenu a.mm-lnk{display:flex;flex-direction:column;align-items:center;gap:.1rem;width:100%;
  text-decoration:none;color:var(--mm-ink);padding:.5rem 0}
body.ml-neu .mlmenu a.mm-lnk .mm-t{font-family:'Vollkorn',serif;font-weight:500;line-height:1.12;
  font-size:clamp(1.55rem,5.4vw,1.95rem)}
body.ml-neu .mlmenu a.mm-lnk .mm-sub{font-family:'Vollkorn',serif;font-style:italic;font-size:1rem;color:var(--mm-mut)}
body.ml-neu .mlmenu a.mm-lnk:hover .mm-t{color:var(--mm-acc2)}
body.ml-neu .mlmenu a.mm-lnk.mm-aktiv .mm-t{color:var(--mm-acc2)}
body.ml-neu .mlmenu a.mm-lnk.mm-aktiv .mm-t::after{content:"◆";font-style:normal;font-size:.5em;vertical-align:middle;margin-left:.5em;color:var(--mm-acc)}
/* Sternanis-Ornament zwischen den Rubriken */
body.ml-neu .mlmenu .mm-orn{display:block;width:132px;height:18px;margin:1.5rem auto;background:var(--mm-acc);opacity:.85;
  -webkit-mask:url(../img/sternanis-divider.svg) center/contain no-repeat;mask:url(../img/sternanis-divider.svg) center/contain no-repeat}
/* „Tisch reservieren" als ruhiger Rahmen-Knopf */
body.ml-neu .mlmenu a.mm-cta{flex-direction:row;justify-content:center;gap:.6rem;width:auto;white-space:nowrap;margin-top:1.1rem;
  border:1px solid var(--mm-mut);padding:.72rem 2rem;min-height:48px;box-shadow:inset 0 0 0 3px rgba(120,120,90,.12)}
body.ml-neu .mlmenu a.mm-cta .mm-t{font-family:'Alegreya Sans',sans-serif;font-weight:400;font-size:.78rem;text-transform:uppercase;letter-spacing:.17em;line-height:1}
body.ml-neu .mlmenu a.mm-cta:hover{border-color:var(--mm-ink);background:rgba(120,120,90,.10)}
/* Fuß im Menü: Zeiten + Telefon (nur Handy — am Desktop stehen sie links) */
body.ml-neu .mlmenu .mm-foot{margin-top:auto;text-align:center;font-family:'Alegreya Sans',sans-serif;font-size:.84rem;color:var(--mm-mut);padding-top:1.6rem;line-height:1.7}
body.ml-neu .mlmenu .mm-foot b{color:var(--mm-ink);font-weight:500}
body.ml-neu .mlmenu .mm-foot a{color:var(--mm-ink);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--mm-line)}
/* Willkommen links — nur Desktop */
body.ml-neu .mlmenu .mm-brand{display:none}
body.ml-neu .mlmenu .mm-brand .mm-hi{font-family:'Vollkorn',serif;font-style:italic;font-weight:500;font-size:clamp(2rem,3vw,2.6rem);line-height:1.1;margin:.2rem 0 .5rem;color:var(--mm-ink)}
body.ml-neu .mlmenu .mm-brand .mm-tag{font-family:'Alegreya Sans',sans-serif;color:var(--mm-soft);font-size:.98rem;line-height:1.65;max-width:30ch}
body.ml-neu .mlmenu .mm-brand .mm-orn-l{margin:1.4rem 0;-webkit-mask-position:left;mask-position:left}
body.ml-neu .mlmenu .mm-brand .mm-hrs{font-family:'Alegreya Sans',sans-serif;color:var(--mm-mut);font-size:.88rem;line-height:1.85}
body.ml-neu .mlmenu .mm-brand .mm-hrs b{color:var(--mm-ink);font-weight:500}
body.ml-neu .mlmenu .mm-brand a{color:var(--mm-ink);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--mm-line)}

@media (min-width:900px){
  body.ml-neu .mlmenu .mm-pin{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2.4rem,5vw,4.5rem);align-items:center;max-width:1060px}
  body.ml-neu .mlmenu .mm-brand{display:block;text-align:left}
  body.ml-neu .mlmenu .mm-stack{border-left:1px solid var(--mm-line);padding-left:clamp(2.4rem,5vw,4.5rem)}
  body.ml-neu .mlmenu .mm-eyebrow{text-align:left}
  body.ml-neu .mlmenu .mm-grp{align-items:flex-start}
  body.ml-neu .mlmenu a.mm-lnk:not(.mm-cta){align-items:flex-start;text-align:left}
  body.ml-neu .mlmenu .mm-stack .mm-orn{margin-left:0;-webkit-mask-position:left;mask-position:left}
  body.ml-neu .mlmenu a.mm-cta{justify-content:flex-start}
  body.ml-neu .mlmenu .mm-foot{display:none}   /* Zeiten stehen links im Willkommen-Block */
  /* :not(.mm-cta) ist wichtig — sonst würde diese spätere Regel die kleine
     Versal-Schrift des Reservieren-Knopfes überschreiben. */
  body.ml-neu .mlmenu a.mm-lnk:not(.mm-cta) .mm-t{font-size:1.95rem}
  /* etwas kompakter, damit das ganze Menü auch auf flachen Notebooks
     ohne Scrollen auf einen Bildschirm passt */
  /* Auch hier :not(.mm-cta) — sonst überschreibt die Zeile das padding .72rem 2rem
     des Reservieren-Knopfes und die Schrift klebte am Rahmen. */
  body.ml-neu .mlmenu a.mm-lnk:not(.mm-cta){padding:.32rem 0}
  body.ml-neu .mlmenu .mm-stack .mm-orn{margin:1.1rem 0}
  body.ml-neu .mlmenu .mm-pin{padding-top:calc(var(--hd-h,92px) + 1.2rem)}
}

/* =========================================================
   UNTERSEITEN — Papier-Look (überschreibt den alten Blatt-Stil)
   ========================================================= */
body.ml-neu main#main,body.ml-neu main#main.on-olive{background:transparent}

/* Kopf der Unterseite: zentriert, Papier statt weißer Schrift auf Oliv */
body.ml-neu .page-head{background:transparent;color:var(--tinte);text-align:center;
  padding:clamp(2.2rem,5vw,3.4rem) clamp(1.1rem,4vw,2.4rem) 1rem;max-width:1040px;margin:0 auto}
body.ml-neu .page-head h1{font-family:'Vollkorn',serif;font-weight:500;line-height:1.12;
  color:var(--tinte);font-size:clamp(2rem,4.4vw,3.1rem);margin:.2rem auto .5rem;max-width:22ch}
body.ml-neu .page-head h1 em{font-style:italic;color:var(--braun)}
body.ml-neu .page-head .crumb{font-family:'Alegreya Sans',sans-serif;font-size:.62rem;letter-spacing:.24em;
  text-transform:uppercase;color:var(--braun);margin:0}
body.ml-neu .page-head .phrule{display:block;width:min(210px,56%);aspect-ratio:829/110;margin:.9rem auto 0;background:var(--gruen);
  -webkit-mask:url(../img/sternanis-divider.svg) center/contain no-repeat;
          mask:url(../img/sternanis-divider.svg) center/contain no-repeat}

/* skin.css setzt den Kopf in einen eigenen Kasten und gewinnt über die reine
   Spezifität (body:not(.home) .page-head:not(.ed-head-band)). Hier deshalb
   gezielt mit höherer Spezifität zurückgesetzt, damit der neue Papier-Kopf
   greift — auch beim eigenen Kopfband der Speise-/Getränkekarte. */
body.ml-neu:not(.home) .page-head:not(.ed-head-band),
body.ml-neu .page-head.ed-head-band{
  max-width:1040px;margin:0 auto;background:none;border:0;box-shadow:none;
  display:flex;flex-direction:column;align-items:center;text-align:center;
  padding:clamp(2.2rem,5vw,3.4rem) clamp(1.1rem,4vw,2.4rem) 1rem}
/* Die Spezial-Templates schreiben die Überzeile UNTER die Überschrift —
   hier wandert sie wie überall sonst nach oben. */
body.ml-neu:not(.home) .page-head:not(.ed-head-band) .crumb{order:-1}
body.ml-neu:not(.home) .page-head:not(.ed-head-band) h1,
body.ml-neu .page-head.ed-head-band h1{color:var(--tinte);text-shadow:none;line-height:1.12}
body.ml-neu:not(.home) .page-head:not(.ed-head-band) .crumb,
body.ml-neu .page-head.ed-head-band .crumb{color:var(--braun);margin-top:0}

/* Inhaltsblatt: helles Papier, feiner Rahmen — Inhalte bleiben von theme.css gestylt */
body.ml-neu .entry-sheet,body.ml-neu main#main.on-olive .entry-sheet{max-width:1000px;margin:0 auto 3rem;position:relative}
body.ml-neu .sheet-edge{display:none}
body.ml-neu .entry{max-width:1000px;margin:0 auto;background:#FEFCF4;border:1px solid var(--linie);
  border-radius:0;box-shadow:0 10px 26px rgba(46,42,26,.1);
  padding:clamp(1.6rem,4vw,3rem) clamp(1.2rem,5vw,3.6rem) clamp(2rem,5vw,3.4rem)}
body.ml-neu .entry h1,body.ml-neu .entry h2{font-family:'Vollkorn',serif;font-weight:500;
  color:var(--tinte);text-align:center;font-size:clamp(1.7rem,3.2vw,2.4rem);margin:2rem 0 1rem;line-height:1.15}
body.ml-neu .entry h2 em,body.ml-neu .entry h1 em{font-style:italic;color:var(--braun)}
body.ml-neu .entry h3{font-family:'Vollkorn',serif;font-weight:500;color:var(--gruen);
  text-align:center;font-size:1.4rem;margin:1.6rem 0 .6rem}
body.ml-neu .entry p{color:var(--leise);font-family:'Alegreya Sans',sans-serif;font-weight:500;font-size:1.02rem;line-height:1.85;margin-bottom:1rem}
body.ml-neu .entry p b,body.ml-neu .entry p strong{color:var(--tinte);font-weight:600}
body.ml-neu .entry li{color:var(--leise)}
body.ml-neu .entry a{color:var(--gruen)}
body.ml-neu .entry img{border-radius:0;box-shadow:0 10px 24px rgba(46,42,26,.16);margin:1.4rem auto}
/* Küchenchef im Fensterbild (Seite „Unser Team"). Das Motiv ist freigestellt —
   ein rechteckiger Kasten-Schatten läge um die Luft herum. Deshalb wie auf der
   Startseite ein weicher Schatten ENTLANG DER KONTUR (drop-shadow). */
body.ml-neu .entry .ml-chef-fenster{margin:1.8rem 0 .6rem;text-align:center}
body.ml-neu .entry .ml-chef-fenster img{width:min(340px,72vw);height:auto;margin:0 auto;
  box-shadow:none;border-radius:0;filter:drop-shadow(0 18px 30px rgba(46,42,26,.3))}
/* =========================================================
   EINLEITUNGSSATZ — KORRIGIERT 26.07.2026
   ---------------------------------------------------------
   HIER STAND:  body.ml-neu .entry > p:first-of-type { ... }

   Also: „Der erste Absatz einer Seite ist die Einleitung und wird zentriert
   und kursiv gesetzt." Das stimmt aber nur, wenn der erste Absatz auch
   wirklich eine Einleitung IST. Am Bildschirm nachgesehen war es auf
   mehreren Seiten etwas ganz anderes:

     · Häufige Fragen (FAQ) — die erste ANTWORT stand zentriert und kursiv
       da, alle folgenden linksbündig. Sah aus wie ein Fehler, war einer.
     · Gutschein — „Kandy Menü" mit Preis war zentriert, „Royal Dinner"
       und „Wertgutschein" direkt darunter linksbündig.

   Und der Fehler wandert: Er trifft jede Seite, deren erster Absatz keine
   Einleitung ist — auch jede, die künftig im Backend geschrieben wird.
   Genau deshalb steht in mehreren Vorlagen der Kommentar „bewusst ein
   <div> und kein <p>": Man musste um diese Regel herumbauen.

   JETZT UMGEKEHRT: Der Einleitungssatz wird angesagt, nicht erraten.
   Wer ihn will, gibt dem Absatz die Klasse .ml-lead (oder nutzt <div
   class="ml-lead">, wie es die Vorlagen tun). Alles andere bleibt normaler
   Fließtext. Nichts wird mehr zufällig zentriert.
   ========================================================= */
body.ml-neu .entry > p.ml-lead,
body.ml-neu .entry > .ml-lead{
  text-align:center;font-family:'Vollkorn',serif;font-style:italic;
  font-size:1.2rem;color:var(--leise);max-width:60ch;margin-left:auto;margin-right:auto}

/* Bilder im Fließtext, die KEINE eigene Klasse mitbringen (kommen aus der
   Datenbank, z. B. das Porträt auf „Unser Team"): Breite begrenzen und
   mittig setzen. Ohne das lief ein Foto über die ganze Blattbreite —
   auf der Team-Seite füllte das Porträt fast zwei Bildschirmhöhen. */
body.ml-neu .entry > figure:not([class*="ml-"]) img,
body.ml-neu .entry > .wp-block-image:not([class*="ml-"]) img{
  max-width:min(420px,80%);height:auto;display:block;margin-left:auto;margin-right:auto}

/* Alte mobile Aktionsleiste des dunklen Themes ausblenden (Menü-Overlay ersetzt sie) */
body.ml-neu .mlx-mbar{display:none}

/* Scroll-Einblendung des alten Themes abschalten: theme.css setzt .rv auf
   opacity:0 und lässt sie erst per JavaScript erscheinen. Ohne das JS bleibt
   die halbe Speisekarte unsichtbar — und gewollt ist der Effekt ohnehin nicht. */
body.ml-neu .rv,body.ml-neu .rv-mask{opacity:1;transform:none;transition:none}

/* =========================================================
   RESERVIERUNG — gilt auf ALLEN Seiten (Startseite + eigene
   Reservierungsseite). Zahlen als Versal-/Tabellenziffern,
   Knöpfe in Marcellus wie die übrigen Knöpfe.
   ========================================================= */
body.ml-neu .rr-cal-day,body.ml-neu .rr-cal-title,body.ml-neu .rr-slot-btn,
body.ml-neu .rr-pers-btn,body.ml-neu .rr-dur-btn,body.ml-neu .rr-summary{
  font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1}
body.ml-neu .rr-cal-day{font-family:'Vollkorn',serif;font-weight:600;
  font-size:1.4rem;color:var(--tinte)}
body.ml-neu .rr-cal-day.rr-disabled{color:#B9B29A}
/* Wie in startseite.css: das Plugin vergibt --off/--past/--closed, nicht .rr-disabled.
   Greift, falls das Reservierungs-Formular je außerhalb der Startseite steht. */
body.ml-neu .rr-cal-day.rr-cal-day--past{color:#B9B29A}
body.ml-neu .rr-cal-day.rr-cal-day--closed{color:#A79F84}
body.ml-neu .rr-cal-dow span{color:var(--braun)}
body.ml-neu .rr-hint,body.ml-neu #rr-date-hint{font-family:'Vollkorn',serif;
  font-style:italic;font-size:1.1rem;color:var(--leise);text-align:center;display:block;
  margin-top:1.1rem}
body.ml-neu .rr-submit,body.ml-neu .rr-next,body.ml-neu .rr-back{
  font-family:'Alegreya Sans',sans-serif;font-weight:400;font-size:.88rem;letter-spacing:.16em;
  text-transform:uppercase;border-radius:0;
  box-shadow:inset 0 0 0 1px var(--gruen),inset 0 0 0 2px rgba(251,246,234,.5)}

/* =========================================================
   SPEZIAL-TEMPLATES im Papier-Look
   Speisekarte, Getränkekarte, Gewürze, Reservierung, Gutschein
   haben eigene Templates. theme.css/skin.css bleiben geladen
   (sonst bricht die Struktur) — hier kommt nur das Papier
   darüber: heller Grund, dunkle Tinte, eckige Kanten.
   ========================================================= */

/* Kleinversalien: Marcellus hat keine Versalziffern, „Kapitel 01"
   wurde damit zu „Kapitel OI". Deshalb Jost. */
body.ml-neu .ed-ov,body.ml-neu .eyebrow{font-family:'Alegreya Sans',sans-serif;font-weight:500;
  font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--braun)}

/* Das Blatt — dieselbe Bühne wie .entry auf den übrigen Unterseiten */
body.ml-neu .entry-sheet,body.ml-neu main#main.on-olive .entry-sheet{
  max-width:1000px;margin:0 auto 3rem;background:none;border:0;box-shadow:none;padding:0}
body.ml-neu .sheet-body,body.ml-neu .menu-main{
  background:#FEFCF4;border:1px solid var(--linie);border-radius:0;
  box-shadow:0 10px 26px rgba(46,42,26,.1);
  padding:clamp(1.6rem,4vw,3rem) clamp(1.2rem,5vw,3.6rem) clamp(2rem,5vw,3.4rem)}
body.ml-neu .menu-main{max-width:1000px;margin:0 auto 3rem}
body.ml-neu .sheet-body p,body.ml-neu .sheet-body li{color:var(--leise)}
body.ml-neu .sheet-body b,body.ml-neu .sheet-body strong{color:var(--tinte)}

/* Kopfband der Speise-/Getränkekarte: die Landkarte kleiner und ruhig daneben */
body.ml-neu .ed-head-band .ed-chefs{font-family:'Vollkorn',serif;font-style:italic;
  font-size:1.15rem;color:var(--leise);max-width:56ch;margin:.6rem auto 0}
/* Der Kopf ist jetzt eine Spalte — die Landkarte gehört unter den Text, nicht darüber. */
body.ml-neu .ed-head-band .ed-head-tx{order:1}
body.ml-neu .ed-head-band .ed-map{order:2}
body.ml-neu .ed-map{margin:1.2rem auto 0;max-width:150px}
body.ml-neu .ed-map img{margin:0 auto}
body.ml-neu .ed-map figcaption{font-family:'Vollkorn',serif;font-style:italic;
  font-size:.92rem;color:var(--leise);text-align:center;margin-top:.4rem}

/* Allergen-Legende: ruhiges Papierband statt Kasten */
body.ml-neu .allergen-legend{max-width:1000px;margin:1.4rem auto .2rem;background:none;
  border:0;border-top:1px solid var(--linie);border-bottom:1px solid var(--linie);
  border-radius:0;box-shadow:none;color:var(--leise);font-size:.86rem;text-align:center}
body.ml-neu .allergen-legend strong,body.ml-neu .allergen-legend b{color:var(--braun)}

/* Gerichte und Getränke */
body.ml-neu .dish-nm{font-family:'Vollkorn',serif;font-weight:500;color:var(--tinte)}
body.ml-neu .dish-no{color:var(--braun);font-weight:500;margin-right:.35em}
body.ml-neu .dish-price{font-family:'Vollkorn',serif;font-weight:600;color:var(--braun);
  font-variant-numeric:lining-nums}
body.ml-neu .dish-dc{font-family:'Vollkorn',serif;font-style:italic;color:var(--leise)}
body.ml-neu .dish-allergene{color:var(--leise);font-size:.82rem}
body.ml-neu .dish-more a{color:var(--gruen)}
body.ml-neu .ed-menu .menu-note{background:#FBF6EA;border-color:var(--linie);color:var(--leise)}
body.ml-neu .hh-plate{background:#FEFCF4;border-color:rgba(138,100,16,.45)}
body.ml-neu .fbtn{font-family:'Alegreya Sans',sans-serif;font-weight:500;color:var(--leise)}
body.ml-neu .fbtn.is-on{color:var(--gruen);border-bottom-color:var(--gruen)}

/* Gewürze-Karten: eckig statt abgerundet */
body.ml-neu .spice-card{background:#FEFCF4;border:1px solid var(--linie);border-radius:0;
  box-shadow:0 6px 16px rgba(46,42,26,.08)}
body.ml-neu .spice-name{font-family:'Vollkorn',serif;font-weight:500;color:var(--tinte)}
body.ml-neu .spice-tag{font-family:'Vollkorn',serif;font-style:italic;color:var(--braun)}
body.ml-neu .spice-text,body.ml-neu .spice-note{color:var(--leise)}

/* Reservierungsseite */
body.ml-neu .resv-intro{font-family:'Vollkorn',serif;font-style:italic;
  font-size:1.15rem;color:var(--leise);text-align:center;max-width:60ch;margin:0 auto 1.8rem}
body.ml-neu .resv-card{background:#FBF6EA;border:1px solid var(--linie);border-radius:0;
  box-shadow:none;padding:1.4rem 1.5rem}
body.ml-neu .resv-card .resv-row b{font-family:'Alegreya Sans',sans-serif;font-weight:700;color:var(--tinte)}
body.ml-neu .resv-card .resv-row span{font-family:'Vollkorn',serif;font-weight:600;
  font-size:1.2rem;color:var(--tinte)}
body.ml-neu .resv-big{font-family:'Vollkorn',serif;font-weight:600;color:var(--gruen)}
body.ml-neu .resv-mail{color:var(--gruen)}
body.ml-neu .resv-note{color:var(--leise);font-size:.88rem}
body.ml-neu .resv-card address{color:var(--leise)}
/* „Schritt 01" auch außerhalb der Startseite als eigene Zeile */
body.ml-neu .rr-q .rr-num{display:block;font-family:'Alegreya Sans',sans-serif;font-weight:500;
  font-style:normal;font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;
  color:var(--braun);margin-bottom:.55rem}
body.ml-neu .rr-q{font-family:'Vollkorn',serif;font-style:italic;font-weight:500;
  font-size:1.5rem;color:var(--tinte);text-align:center;display:block}

/* Karten-Einwilligung: heller Kasten statt dunkelgrüner Fläche */
body.ml-neu .map-consent{background:#FBF6EA;border:1px solid var(--linie);border-radius:0;
  box-shadow:none;color:var(--leise);flex-direction:column;gap:.6rem}
body.ml-neu .map-consent p{color:var(--leise);margin-bottom:.4rem}
body.ml-neu .map-consent figcaption{color:var(--leise);font-family:'Vollkorn',serif;
  font-style:italic}

/* Gutscheinseite */
body.ml-neu .mlgs-panel,body.ml-neu .mlgs-card{background:#FEFCF4;border:1px solid var(--linie);
  border-radius:0;box-shadow:0 10px 26px rgba(46,42,26,.1)}
body.ml-neu .mlgs-panel{max-width:1000px;margin:0 auto 3rem;
  padding:clamp(1.6rem,4vw,2.8rem) clamp(1.2rem,5vw,3rem)}
body.ml-neu .mlgs-page h1,body.ml-neu .mlgs-page h2,body.ml-neu .mlgs-page h3{color:var(--tinte)}
body.ml-neu .mlgs-page p{color:var(--leise)}
body.ml-neu .mlgs-chip,body.ml-neu .mlgs-check{border-radius:0}

/* ---------- Responsiv ----------
   Hinweis: Die alte Regel „.lrechts{position:static}" ist bewusst entfallen —
   der Menü-Knopf bleibt jetzt auf ALLEN Größen rechts oben neben dem mittigen
   Logo. Ebenso entfallen die Regeln zu .mspalten und den Schnelllinks, weil es
   diese Elemente im neuen Menü nicht mehr gibt. */
@media(max-width:640px){
  body.ml-neu .entry{padding:1.4rem 1.1rem 1.8rem}
}

/* ============================================================
   CATERING + MITTAGSTISCH (25.07.2026)
   Warum hier und nicht in theme.css: neu.css wird zuletzt geladen
   und setzt mit body.ml-neu die Textfarben der Unterseiten. Stünden
   diese Regeln in theme.css, würde neu.css sie wieder überschreiben.
   Das Anfrageformular selbst (.mlcat-form) bleibt in theme.css —
   daran ändert sich nichts.
   ============================================================ */

/* Betriebsferien-Hinweis — fällt auf, ohne zu schreien */
body.ml-neu .entry .mlcat-ferien{
  background:var(--creme);border-left:4px solid var(--gruen);
  padding:.95rem 1.2rem;margin:0 0 1.6rem;border-radius:4px;
  font-size:.98rem;line-height:1.7;color:var(--tinte)
}

/* Aufmacherbild: kein Rahmen, gleiche Bühne wie die übrigen Bilder im Blatt */
body.ml-neu .entry .mlcat-bild{margin:0 auto 1.8rem;text-align:center}
body.ml-neu .entry .mlcat-bild img{
  width:min(520px,92%);height:auto;margin:0 auto;border-radius:12px
}

/* „Der Rahmen" — Liste ohne Aufzählungspunkte, ruhig gesetzt */
body.ml-neu .entry ul.mlcat-rahmen{list-style:none;margin:0 0 1.4rem;padding:0}
body.ml-neu .entry ul.mlcat-rahmen li{
  color:var(--leise);line-height:1.8;padding:.55rem 0 .55rem 0;
  border-bottom:1px solid rgba(138,100,16,.18)
}
body.ml-neu .entry ul.mlcat-rahmen li:last-child{border-bottom:0}
body.ml-neu .entry ul.mlcat-rahmen strong{color:var(--tinte)}

/* Kontaktzeile: E-Mail und Telefon groß genug, um sie am Handy zu treffen */
body.ml-neu .entry .mlcat-kontakt{text-align:center;margin:1.2rem 0 1.6rem;line-height:2.2}
body.ml-neu .entry .mlcat-kontakt a{
  font-family:'Vollkorn',serif;font-size:1.5rem;color:var(--gruen);
  border-bottom:1px solid var(--linie);padding-bottom:2px
}
body.ml-neu .entry .mlcat-kontakt a:hover{color:var(--braun)}
body.ml-neu .entry .mlcat-kontakt .mlcat-zeit{
  display:inline-block;font-size:.85rem;color:var(--leise);border:0;margin-left:.4rem
}

/* Mittagskarte — Gericht links, Preis rechts, dazwischen Luft */
body.ml-neu .entry ul.mtis-liste{list-style:none;margin:0 0 1.6rem;padding:0}
body.ml-neu .entry .mtis-item{
  padding:.9rem 0;border-bottom:1px solid rgba(138,100,16,.18)
}
body.ml-neu .entry .mtis-item:last-child{border-bottom:0}
/* Zwischenüberschrift „Vorspeisen" / „Hauptgerichte" (26.07.2026).
   Kein Gericht, deshalb ohne Trennlinie darunter und in der Label-Schrift —
   sonst liest man sie als Speise ohne Preis. */
body.ml-neu .entry .mtis-gruppe{
  font-family:'Alegreya Sans',sans-serif;font-size:.7rem;letter-spacing:.24em;
  text-transform:uppercase;color:var(--braun);
  margin:1.8rem 0 .2rem;padding:0;border:0}
body.ml-neu .entry .mtis-gruppe:first-child{margin-top:.4rem}
body.ml-neu .entry .mtis-kopf{
  display:flex;align-items:baseline;justify-content:space-between;gap:1rem
}
body.ml-neu .entry .mtis-name{
  font-family:'Vollkorn',serif;font-size:1.35rem;color:var(--gruen);line-height:1.3
}
body.ml-neu .entry .mtis-preis{
  font-family:'Vollkorn',serif;font-size:1.25rem;color:var(--tinte);white-space:nowrap
}
body.ml-neu .entry .mtis-text{margin:.25rem 0 0;color:var(--leise);font-size:.98rem;line-height:1.7}
body.ml-neu .entry .mtis-zeichen{
  margin:.3rem 0 0;font-family:'Alegreya Sans',sans-serif;font-size:.66rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--braun)
}
body.ml-neu .entry .mtis-hinweis{font-size:.9rem;color:var(--leise)}

@media(max-width:560px){
  body.ml-neu .entry .mlcat-kontakt a{font-size:1.3rem}
  body.ml-neu .entry .mtis-kopf{gap:.6rem}
  body.ml-neu .entry .mtis-name{font-size:1.2rem}
}

/* ============================================================
   NEUE TEXTFASSUNG · 26.07.2026
   Klassen, die mit den überarbeiteten Texten dazugekommen sind.
   Bewusst am Ende der Datei: neu.css wird als letztes geladen, damit
   nichts von theme.css dazwischenkommt.
   ============================================================ */

/* Einleitungssatz eines Seitentexts. neu.css macht aus dem ersten Absatz im
   Blatt ohnehin einen kursiven Einleitungssatz — diese Klasse gibt denselben
   Look auch dann, wenn davor ein Hinweiskasten steht und die Regel für den
   „ersten Absatz" deshalb nicht greift. */
body.ml-neu .entry .ml-lead{
  font-family:'Vollkorn',serif;font-style:italic;
  font-size:1.18rem;line-height:1.6;color:var(--tinte);margin-bottom:1.4rem}

/* Gerichtszeile mit Preis, wie auf einer gedruckten Karte. Der Preis steht
   rechts, der Name links; auf dem Handy bricht es sauber um. */
body.ml-neu .entry .ml-dish{
  display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .6rem;
  padding:.7rem 0;border-bottom:1px solid var(--linie);margin:0}
body.ml-neu .entry .ml-dish:last-of-type{border-bottom:0}
body.ml-neu .entry .ml-dish strong{
  font-family:'Vollkorn',serif;font-weight:600;font-size:1.16rem;color:var(--tinte)}
body.ml-neu .entry .ml-dish-preis{
  font-family:'Vollkorn',serif;font-weight:600;font-size:1.1rem;
  color:#6B4E09;margin-left:auto;white-space:nowrap}
body.ml-neu .entry .ml-dish-text{
  flex:1 0 100%;font-size:.92rem;line-height:1.7;color:var(--leise)}

/* „Zum ersten Mal hier?" — steht oben auf der Speisekarte, vor den Kapiteln.
   Heller Kasten auf dem grünen Grund, damit er als Hilfe erkennbar ist und
   nicht mit einem Gericht verwechselt wird. */
.menu-erstbesuch{
  max-width:720px;margin:1.4rem auto 0;padding:1.1rem 1.4rem;
  background:var(--papier,#FBF6EA);border:1px solid rgba(138,100,16,.4);
  color:#2E2A1A;font-size:.98rem;line-height:1.75;text-align:left}
.menu-erstbesuch p{margin:0}
.menu-erstbesuch strong{font-weight:600}
@media (max-width:560px){
  .menu-erstbesuch{margin-left:1rem;margin-right:1rem;padding:.95rem 1.1rem;font-size:.94rem}
}

/* Einleitung über dem Gewürz-Raster. */
body.ml-neu .spice-intro{
  font-family:'Vollkorn',serif;font-style:italic;
  font-size:1.15rem;line-height:1.6;color:var(--tinte);
  max-width:46ch;margin:0 auto 1.8rem;text-align:center}

/* -------------------------------------------------------------------------
   TEXT AUS DEM BACKEND (26.07.2026)
   Hülle für den im WordPress-Editor eingetragenen Seitentext auf Seiten mit
   fester Vorlage (Speisekarte, Getränke, Gutschein, Buffet & Catering,
   Gewürze, Mittagstisch). Steht dort nichts, wird die Hülle gar nicht erst
   ausgegeben — diese Regeln greifen dann nirgends.
   Absichtlich zurückhaltend: Der Text soll aussehen wie der Rest der Seite
   und nicht wie ein aufgeklebter Kasten. ------------------------------- */
body.ml-neu .ml-editor-text > :first-child{margin-top:0}
body.ml-neu .ml-editor-text > :last-child{margin-bottom:0}
body.ml-neu .ml-editor-text img{max-width:100%;height:auto}

/* Auf den Kartenseiten (Speisekarte/Getränke) liegt der Text außerhalb des
   Papier-Blattes und braucht deshalb eigene Breite und Ränder. */
body.ml-neu .ed-editor-text{
  max-width:64ch;margin:1.6rem auto 0;
  padding:0 clamp(1.1rem,4vw,2.4rem);
  font-family:'Alegreya Sans',sans-serif;font-size:1.02rem;line-height:1.75;
  color:var(--tinte);text-align:center}

/* =========================================================================
   GUTSCHEINSEITE (statisch, ohne WooCommerce) — 26.07.2026
   -------------------------------------------------------------------------
   Aufbau nach Sheris Vorlage: drei Karten mit dunklem Kopffeld, Titel,
   Beschreibung, Preis bzw. Auswahl-Kacheln, Lieferung und Knopf unten.

   ZWEI BEWUSSTE ABWEICHUNGEN VON DER VORLAGE (Vorgabe 26.07.2026):
     · ECKIG. Kein border-radius, nirgends. Die Vorlage hatte weiche Ecken
       an Karten, Kacheln und Knoepfen; die Seite passt eckig besser zur
       Print-Anmutung des uebrigen Themes.
     · KOMPAKTER. Kopffeld, Abstaende und Schriftgroessen sind rund ein
       Fuenftel kleiner, damit die drei Karten am Desktop ohne Scrollen
       nebeneinander stehen.

   Die Kacheln sehen aus wie Auswahlfelder, sind aber reine Anzeige — auf
   dieser Seite fuellt niemand etwas aus. Damit das nicht truegt, tragen sie
   KEINE Radio-Punkte und keinen „ausgewaehlt"-Zustand: Ein leerer Kreis
   daneben wuerde zum Klicken auffordern, und der Klick landet ohnehin
   im Partner-Shop.
   ========================================================================= */

body.ml-neu .mlgs-wrap{
  max-width:1040px;margin:0 auto;padding:0 clamp(1.1rem,4vw,2.4rem) 2.4rem}

body.ml-neu .mlgs-eigener-text{margin:0 auto 1.4rem;max-width:64ch;text-align:center}

body.ml-neu .mlgs-intro{
  font-family:'Vollkorn',serif;font-style:italic;
  font-size:1.16rem;line-height:1.7;color:var(--leise);
  max-width:62ch;margin:0 auto 2rem;text-align:center}

body.ml-neu .mlgs-grid{
  display:grid;grid-template-columns:1fr;gap:1.1rem;margin:0 0 2.2rem}
@media(min-width:820px){
  body.ml-neu .mlgs-grid{grid-template-columns:repeat(3,1fr);gap:1.2rem}
}

/* ---- die Karte ist als Ganzes ein Link ---- */
body.ml-neu .mlgs-karte{
  display:flex;flex-direction:column;
  background:#FFFDF6;border:1px solid rgba(80,85,52,.26);border-radius:0;
  text-decoration:none;color:inherit;overflow:hidden;
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
body.ml-neu .mlgs-karte:hover,
body.ml-neu .mlgs-karte:focus-visible{
  border-color:var(--gruen);box-shadow:0 8px 22px rgba(46,42,26,.13);transform:translateY(-2px)}
body.ml-neu .mlgs-karte.is-featured{border-color:rgba(138,100,16,.5)}

/* ---- dunkles Kopffeld mit Goldschrift ---- */
body.ml-neu .mlgs-kopf{
  display:flex;align-items:center;justify-content:center;
  min-height:96px;padding:1rem;
  background:linear-gradient(160deg,#5A5F3A 0%,#464B2C 55%,#3A3E24 100%);
  color:#C9973A;border-radius:0;
  font-family:'Alegreya Sans',sans-serif;font-size:.82rem;
  letter-spacing:.2em;text-transform:uppercase;text-align:center;line-height:1.4}

/* ---- Inhalt ---- */
body.ml-neu .mlgs-body{
  display:flex;flex-direction:column;flex:1;padding:1.2rem 1.15rem 1.15rem}
body.ml-neu .mlgs-titel{
  display:block;font-family:'Vollkorn',serif;font-weight:500;
  font-size:1.45rem;line-height:1.2;color:var(--tinte)}
body.ml-neu .mlgs-tag{
  display:block;margin-top:.4rem;
  font-family:'Alegreya Sans',sans-serif;font-size:.66rem;font-weight:500;
  letter-spacing:.13em;text-transform:uppercase;color:var(--leise)}
body.ml-neu .mlgs-text{
  display:block;margin-top:.75rem;
  font-size:.93rem;line-height:1.6;color:var(--tinte)}
body.ml-neu .mlgs-preis{
  display:block;margin-top:.9rem;
  font-family:'Vollkorn',serif;font-size:1.65rem;line-height:1.1;color:var(--braun)}
body.ml-neu .mlgs-preis i{
  font-family:'Alegreya Sans',sans-serif;font-style:normal;font-size:.74rem;
  letter-spacing:.05em;color:var(--leise)}

/* ---- Auswahl-Bloecke (Anzeige, nicht Formular) ---- */
body.ml-neu .mlgs-block{display:block;margin-top:1rem}
body.ml-neu .mlgs-block-titel{
  display:block;margin-bottom:.45rem;
  font-family:'Alegreya Sans',sans-serif;font-size:.63rem;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;color:var(--leise)}
body.ml-neu .mlgs-kacheln{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem}
body.ml-neu .mlgs-kacheln.ist-breit{grid-template-columns:1fr}
body.ml-neu .mlgs-kachel{
  display:block;border:1px solid rgba(80,85,52,.28);border-radius:0;
  background:#FBF7EC;padding:.55rem .6rem;
  font-family:'Alegreya Sans',sans-serif;font-size:.85rem;line-height:1.3;
  color:var(--tinte);text-align:center}
body.ml-neu .mlgs-kacheln.ist-breit .mlgs-kachel{text-align:left}
body.ml-neu .mlgs-kachel i{font-style:normal;color:var(--braun);font-size:.82em}
body.ml-neu .mlgs-fuss{
  display:block;margin-top:.45rem;
  font-family:'Alegreya Sans',sans-serif;font-size:.76rem;color:var(--leise)}

/* ---- Knopf ----
   margin-top:auto schiebt ihn ans Kartenende. Dadurch stehen die Knoepfe
   aller drei Karten auf einer Linie, egal wie lang der Text darueber ist.
   Das obere margin von 1.2rem haelt Abstand zum Lieferungs-Block. */
/* ACHTUNG beim Aendern: margin-top MUSS auto bleiben. Schreibt man hier einen
   festen Wert hin, klebt der Knopf nicht mehr am Kartenende und die drei
   Knoepfe stehen wieder auf verschiedenen Hoehen. Der Abstand nach oben kommt
   deshalb vom letzten Block darueber (Regel direkt darunter). */
body.ml-neu .mlgs-karte .mlgs-btn{
  display:block;margin:auto 0 0;
  padding:.9rem 1rem;border-radius:0;text-align:center;
  background:var(--gruen);color:#F7F1E1;
  font-family:'Alegreya Sans',sans-serif;font-size:.8rem;
  letter-spacing:.16em;text-transform:uppercase;
  transition:background .2s ease}
body.ml-neu .mlgs-karte .mlgs-block:last-of-type{margin-bottom:1.2rem}
body.ml-neu .mlgs-karte.is-featured .mlgs-btn{background:#B8860F;color:#FFF9EC}
body.ml-neu .mlgs-karte:hover .mlgs-btn{background:#3E4229}
body.ml-neu .mlgs-karte.is-featured:hover .mlgs-btn{background:#9C7009}

/* ---- Zusagen unter den Karten ---- */
body.ml-neu .mlgs-zusagen{
  list-style:none;margin:0 0 1.6rem;padding:1.4rem 0 0;
  border-top:1px solid rgba(80,85,52,.2);
  display:grid;grid-template-columns:1fr 1fr;gap:1.1rem .8rem;text-align:center}
@media(min-width:820px){
  body.ml-neu .mlgs-zusagen{grid-template-columns:repeat(4,1fr)}
}
body.ml-neu .mlgs-zusagen li{margin:0;padding:0}
body.ml-neu .mlgs-zusagen strong{
  display:block;font-family:'Vollkorn',serif;font-weight:500;
  font-size:1.1rem;color:var(--tinte)}
body.ml-neu .mlgs-zusagen span{
  display:block;margin-top:.25rem;
  font-family:'Alegreya Sans',sans-serif;font-size:.82rem;line-height:1.45;color:var(--leise)}

body.ml-neu .mlgs-hilfe{
  text-align:center;font-size:.94rem;color:var(--leise);margin:0}

/* Der alte dunkle Kopfbalken der Kartenseiten gilt hier nicht. */
body.ml-neu .mlgs-static .page-head{padding-bottom:.6rem}

/* =========================================================================
   LESBARKEIT — 26.07.2026
   -------------------------------------------------------------------------
   Rueckmeldung: „Die feine Schrift ist schwer leserlich."
   Stimmt. Vollkorn ist eine Zierschrift mit sehr duennen Strichen
   und kleinen Kleinbuchstaben; kursiv und in Grau wird sie im Fliesstext
   zaeh. Dazu kam Jost in 300 — der duennste Schnitt, den wir ueberhaupt
   ausliefern.

   Diese Schicht laedt ZULETZT und stellt drei Dinge nach:
     1. mehr Strichstaerke im Fliesstext,
     2. dunklere Textfarbe (der Graugruen-Ton war zu hell fuer kleine Groessen),
     3. Gerichtsbeschreibungen aufrecht statt kursiv.
   Kein Schriftwechsel — das Aussehen bleibt, es wird nur lesbar.

   Wird spaeter eine andere Schriftfamilie gewaehlt, kann dieser Block
   groesstenteils entfallen; die neuen Schriften bringen ihre Staerke mit.
   ========================================================================= */

/* Etwas dunklere Tinte fuer die leisen Texte. Kontrast vorher rund 6,1:1,
   jetzt rund 8,0:1 auf dem Papierton — beides besteht AA, das zweite liest
   sich bei 14 bis 15 px aber spuerbar leichter. */
body.ml-neu{--leise:#4A4534}

/* Fliesstext: 500 statt 400/300. Jost ist eine geometrische Schrift, die
   duenn schnell blass wirkt. */
body.ml-neu .entry p,
body.ml-neu .entry li,
body.ml-neu .sek p,
body.ml-neu .sek li{font-weight:500}

/* Cormorant im Fliesstext: 500 statt 400. Betrifft Einleitungssaetze und
   alles, was in der Zierschrift gesetzt ist. */
body.ml-neu .entry .ml-lead,
body.ml-neu .entry > .ml-lead,
body.ml-neu .mlgs-intro,
body.ml-neu .ml-editor-text{font-weight:500}

/* Kleine Servicezeilen (Oeffnungszeiten, Hinweise, Fusszeile): nie unter 400. */
body.ml-neu .fuss p,
body.ml-neu .fuss-fakten,
body.ml-neu .mm-hrs,
body.ml-neu .mm-foot,
body.ml-neu .mlgs-fuss,
body.ml-neu .mtis-hinweis,
body.ml-neu .mlcat-hint{font-weight:500}

/* Gerichtsbeschreibungen: aufrecht statt kursiv.
   Kursiv gesetzte Cormorant in 15 px ist die schlechteste Kombination auf
   der ganzen Seite — genau die Zeile, in der die Zutaten stehen. */
body.ml-neu .dish-dc,
body.ml-neu .ed-dish-dc,
body.ml-neu .mtis-text,
body.ml-neu .ml-dish-text{
  font-family:'Alegreya Sans',sans-serif;font-style:normal;font-weight:500;
  font-size:.95rem;line-height:1.6;color:var(--leise)}

/* Preise und Gerichtenamen etwas kraeftiger — sie sind die Zeile, die der
   Gast sucht. */
body.ml-neu .dish-nm,
body.ml-neu .mtis-name{font-weight:600}
body.ml-neu .dish-price,
body.ml-neu .mtis-preis{font-weight:600}

/* Die Startseite laedt theme.css nicht, ihre eigenen Klassen deshalb hier. */
body.ml-home3 .sek p,
body.ml-home3 .praxis,
body.ml-home3 .tripad{font-weight:500}

/* =========================================================================
   AUSRICHTUNG SELBST BESTIMMEN — 26.07.2026
   -------------------------------------------------------------------------
   Damit sich Texte im WordPress-Backend selbst zentrieren, links- oder
   rechtsbuendig setzen lassen, muessen die Klassen, die der Block-Editor
   dafuer vergibt, im Theme auch wirken. Bisher taten sie das nicht ueberall:
   Die Theme-Regeln waren spezifischer und haben die Wahl im Editor
   ueberstimmt — man klickte auf „zentriert" und es passierte nichts.

   Deshalb stehen sie hier, ganz am Ende der zuletzt geladenen Datei, mit
   !important. Das ist hier ausnahmsweise richtig: Es geht um eine
   ausdrueckliche Entscheidung des Redakteurs, und die soll das Theme nicht
   ueberstimmen duerfen.

   SO GEHT ES IM BACKEND
     Text markieren bzw. Block anklicken -> in der kleinen Werkzeugleiste
     darueber das Ausrichtungs-Symbol -> zentriert / links / rechts.
     Fuer Bilder und Gruppen dasselbe.
   ========================================================================= */
body.ml-neu .has-text-align-center{text-align:center !important}
body.ml-neu .has-text-align-left{text-align:left !important}
body.ml-neu .has-text-align-right{text-align:right !important}
body.ml-neu .has-text-align-justify{text-align:justify !important}

/* Bilder und Bloecke: aligncenter/left/right des Editors. */
body.ml-neu .entry .aligncenter,
body.ml-neu .ml-editor-text .aligncenter{
  display:block;margin-left:auto !important;margin-right:auto !important;text-align:center}
body.ml-neu .entry .alignleft,
body.ml-neu .ml-editor-text .alignleft{
  margin-left:0 !important;margin-right:auto !important}
body.ml-neu .entry .alignright,
body.ml-neu .ml-editor-text .alignright{
  margin-left:auto !important;margin-right:0 !important}

/* Ein zentriert gesetztes Bild soll auch wirklich mittig stehen, nicht nur
   sein Kasten. */
body.ml-neu .entry figure.aligncenter img,
body.ml-neu .ml-editor-text figure.aligncenter img{margin-left:auto;margin-right:auto;display:block}

/* Schriftgroessen aus dem Editor („Klein / Normal / Gross / Riesig") ---------
   Ohne diese Zeilen bleibt die Wahl im Backend wirkungslos, weil das Theme
   eine eigene Groesse setzt. */
body.ml-neu .has-small-font-size{font-size:.86rem !important}
body.ml-neu .has-medium-font-size{font-size:1.04rem !important}
body.ml-neu .has-large-font-size{font-size:1.35rem !important}
body.ml-neu .has-x-large-font-size{font-size:1.9rem !important;line-height:1.25}

/* Fett und kursiv aus dem Editor sollen sichtbar sein — bei einer Schrift,
   die ohnehin schon 500 laeuft, ist 600 zu wenig Unterschied. */
body.ml-neu .entry strong,
body.ml-neu .entry b,
body.ml-neu .ml-editor-text strong,
body.ml-neu .ml-editor-text b{font-weight:700}

/* Aufzaehlungen und Zitate aus dem Editor bekommen das Papier-Kleid. */
body.ml-neu .ml-editor-text ul,
body.ml-neu .ml-editor-text ol{margin:1rem 0 1rem 1.3rem;padding:0}
body.ml-neu .ml-editor-text li{margin:.35rem 0}
body.ml-neu .entry blockquote,
body.ml-neu .ml-editor-text blockquote{
  margin:1.4rem 0;padding:.2rem 0 .2rem 1.1rem;
  border-left:3px solid var(--linie);color:var(--leise);font-style:italic}

/* =========================================================================
   FEINJUSTIERUNG NACH DEM SCHRIFTWECHSEL — 26.07.2026
   -------------------------------------------------------------------------
   Vollkorn und Alegreya Sans haben groessere Kleinbuchstaben als Cormorant
   und Jost. Bei gleicher Punktgroesse wirken sie deshalb deutlich groesser —
   genau das macht sie lesbarer, aber die grossen Zierueberschriften wurden
   dadurch zu wuchtig. Hier wird das ausgeglichen: Ueberschriften minimal
   zurueck, Fliesstext bleibt wie er ist (er SOLL groesser wirken).

   ZWEITE SACHE: Alegreya Sans gibt es in 400, 500 und 700 — nicht in 600.
   Wo 600 stand, wuerde der Browser die 400er kuenstlich fetten, was
   ausgefranst aussieht. Solche Stellen stehen jetzt auf 700.
   ========================================================================= */

/* Zierueberschriften: Vollkorn traegt bei gleicher Groesse mehr auf. */
body.ml-neu .page-head h1{font-size:clamp(1.9rem,4vw,2.85rem)}
body.ml-home3 h1{font-size:clamp(1.9rem,4.1vw,2.9rem)}
body.ml-home3 h2{font-size:clamp(1.8rem,3.4vw,2.5rem)}

/* Gesperrte Versalien (Knoepfe, Eyebrow-Zeilen): Alegreya Sans braucht dort
   700, sonst wirken sie neben der kraeftigen Vollkorn blass. Die Sperrung
   darf etwas enger werden — Alegreya Sans laeuft von sich aus weiter als
   das frueher hier gesetzte Marcellus. */
body.ml-neu .btn{font-weight:700;letter-spacing:.13em;font-size:.82rem}
body.ml-neu .mlgs-karte .mlgs-btn{font-weight:700;letter-spacing:.12em}
body.ml-neu .mlgs-kopf{font-weight:700;letter-spacing:.16em}
body.ml-neu .crumb,
body.ml-home3 .kicker,
body.ml-home3 .tagline{font-weight:700}

/* Kursive Vollkorn ist kraeftig genug fuer den Einleitungssatz — die
   Aufhellung, die Cormorant dort noetig hatte, faellt weg. */
body.ml-neu .entry > .ml-lead,
body.ml-neu .mlgs-intro{color:var(--tinte);font-weight:500}

/* =========================================================================
   KENNZEICHNUNGEN BRECHEN NICHT MEHR MITTEN IM WORT — 26.07.2026
   -------------------------------------------------------------------------
   Auf schmalen Bildschirmen stand da „GLUTEN / FREI" und „AYURVE / DA":
   Die Woerter wurden mitten durchgeschnitten. Ursache ist die Sperrung
   (letter-spacing) zusammen mit der geringen Breite — der Browser darf
   umbrechen, wo er will, wenn man es ihm nicht verbietet.

   nowrap verbietet es INNERHALB einer Kennzeichnung. Zwischen zwei
   Kennzeichnungen darf weiter umgebrochen werden, sonst liefe die Zeile
   aus dem Bild. Aus
       VEGETARISCH · VEGAN · GLUTEN
       FREI · AYURVEDA
   wird
       VEGETARISCH · VEGAN ·
       GLUTENFREI · AYURVEDA
   ========================================================================= */
body.ml-neu .ed-meta .m,
body.ml-neu .dish-tags .chip,
body.ml-neu .mtis-zeichen,
body.ml-neu .chip{white-space:nowrap}

/* Der Trenner „·" gehoert zwischen die Kennzeichnungen, nicht an den
   Zeilenanfang. Mit inline-block und etwas Luft rundherum bleibt er beim
   Wort davor. */
body.ml-neu .ed-meta{display:flex;flex-wrap:wrap;justify-content:inherit;gap:.15rem .55rem}
body.ml-neu .ed-meta .m{display:inline-block}

/* =========================================================================
   FOTO VON CHEF SADUN — 26.07.2026
   -------------------------------------------------------------------------
   Es stand auf „Unser Team" nicht mittig und lief fast ueber die volle
   Blattbreite. Grund: Die Regel weiter oben setzt zwar text-align:center auf
   die figure, das Bild selbst ist aber ein inline-Element und nimmt dann die
   Breite, die es mitbringt (860 px).
   display:block plus margin auto zentriert es zuverlaessig, unabhaengig von
   text-align. Die Breite ist ausdruecklich begrenzt.
   ========================================================================= */
body.ml-neu .entry .ml-chef-fenster{margin:1.8rem auto .6rem;text-align:center;max-width:100%}
body.ml-neu .entry .ml-chef-fenster img{
  display:block;width:min(320px,72vw);height:auto;
  margin-left:auto;margin-right:auto;
  box-shadow:none;border-radius:0;
  filter:drop-shadow(0 14px 24px rgba(46,42,26,.26))}

/* =========================================================================
   VIDEOS AUS DEM EIGENEN HAUS (26.07.2026) — siehe mlv2_video()
   -------------------------------------------------------------------------
   Bewusst schlicht: Der Browser bringt seine eigenen Bedienelemente mit, die
   jeder kennt. Ein nachgebauter Player waere mehr Code und weniger vertraut.
   ========================================================================= */
body.ml-neu .ml-video{margin:1.8rem auto;text-align:center;max-width:100%}
body.ml-neu .ml-video video{
  display:block;width:100%;height:auto;margin:0 auto;
  background:#1a1810;border:1px solid var(--linie);
  box-shadow:0 12px 26px rgba(46,42,26,.16)}
body.ml-neu .ml-video figcaption{
  margin-top:.6rem;font-family:'Alegreya Sans',sans-serif;
  font-size:.82rem;letter-spacing:.02em;color:var(--leise)}

/* Hochformat (9:16, wie vom Handy gefilmt): schmal halten, sonst nimmt es am
   Rechner die halbe Seitenhoehe ein. */
body.ml-neu .ml-video-hoch{max-width:min(300px,72vw)}

/* =========================================================================
   SRI-LANKA-KARTE AUF DER SPEISEKARTE (26.07.2026)
   Die neue, illustrierte Karte vertraegt mehr Platz als die alte 74-px-Vignette.
   Am Handy sitzt sie unter dem Titel, am Rechner rechts daneben.
   ========================================================================= */
body.ml-neu .ed-map figcaption{
  display:block;margin-top:.5rem;
  font-family:'Alegreya Sans',sans-serif;font-size:.68rem;
  letter-spacing:.13em;text-transform:uppercase;color:var(--braun)}
