/* Theme trattoria – warm, elegant, italienisch; ergänzt terrazza.css (Farben/Schriften: optionen.css).
   Pfad: themes/trattoria/assets/trattoria.css */
:root{
  --bg:#faf6ef;--bg-2:#f2ebdf;--ink:#2b241f;--ink-2:#6b6157;--linie:#e3d9c8;
  --primaer:#8e1b2c;--primaer-2:#73121f;--akzent:#b08a3e;
  --gruen:#2e8b3a;--rot:#c8102e;--dunkel:#2a2018;
  --titel:"Cinzel","Trajan Pro",Georgia,serif;--sans:"IBM Plex Sans",system-ui,"Segoe UI",Roboto,Arial,sans-serif;
  --rund:4px;--schatten:0 10px 30px rgba(43,36,31,.14)
}
body{background:var(--bg) radial-gradient(rgba(176,138,62,.05) 1px,transparent 1px) 0 0/6px 6px;font-size:17px}
h1,h2,h3{font-family:var(--titel);font-weight:600;letter-spacing:.04em}
h1{font-size:clamp(32px,5.6vw,60px)}
h2{font-size:clamp(24px,3.2vw,36px);color:var(--dunkel)}
h3{letter-spacing:.06em}
/* Zierlinie unter Abschnitts-Überschriften */
.abschnitt h2::after,main.seite h1::after{content:"";display:block;width:64px;height:2px;margin-top:.45em;background:var(--akzent)}
.mitte h2::after,.kueche h2::after{margin-left:auto;margin-right:auto}
.kicker{color:var(--akzent);font-family:var(--sans);font-style:italic;text-transform:none;letter-spacing:.02em;font-size:17px;font-weight:400}
.knopf{border-radius:2px;letter-spacing:.08em;text-transform:uppercase;font-size:14px;padding:13px 26px}
.knopf.hell{background:transparent;color:#fff;border-color:rgba(255,255,255,.85)}
.knopf.hell:hover{background:#fff;color:var(--primaer)}
main.seite .knopf.hell,.abschnitt .knopf.hell{color:var(--primaer);border-color:var(--primaer)}

/* Kopf mit Trikolore */
.kopf{background:rgba(250,246,239,.97);border-bottom:1px solid var(--linie)}
.kopf::before{content:"";display:block;height:4px;background:linear-gradient(90deg,var(--gruen) 0 33.3%,#fff 33.3% 66.6%,var(--rot) 66.6%)}
.haupt{gap:4px 18px;flex-wrap:nowrap}
.haupt a,.menue nav a{font-family:var(--titel);font-size:13px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
@media (max-width:1100px){.haupt{display:none}.menue{display:block;order:3}}
.menue nav{top:76px;background:var(--bg)}

/* Startseite */
.held{min-height:min(88vh,820px);align-items:center;text-align:center}
.held::after{background:radial-gradient(ellipse at center,rgba(20,14,10,.35),rgba(20,14,10,.72))}
.held-text{display:flex;flex-direction:column;align-items:center}
.held h1{color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.35);max-width:14em}
.held h1::after{content:"";display:block;width:90px;height:2px;margin:.5em auto 0;background:var(--akzent)}
.held .kicker{color:#e8cf95;font-size:19px}
.held .lead{margin-left:auto;margin-right:auto}
.held .knoepfe{justify-content:center}
.vorteile{background:var(--dunkel);color:#f4ead7}
.vorteile li svg{color:var(--akzent)}
.vorteile b{font-family:var(--titel);letter-spacing:.06em;font-weight:600}
.flaeche{background:var(--bg-2)}
.bild-rund{position:relative}
.bild-rund img{border-radius:0;box-shadow:var(--schatten)}
@media (min-width:900px){
  .bild-rund::before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:2px solid var(--akzent);z-index:-1}
  .zweispaltig{position:relative;z-index:0}
}
.kueche{text-align:center}
.kueche .kicker{margin-bottom:.3em}
.kueche-raster figure{border-radius:0}
.empfehlungen li{border-bottom:1px dotted var(--akzent)}
.besuch{background:var(--bg-2);border-top:1px solid var(--linie)}

/* Unterseiten */
main.seite{padding-top:56px}
.karte{background:#fffdf9;border-color:var(--linie);border-radius:var(--rund)}
.karte img,.raster img{border-radius:0}
.sprungleiste{background:var(--bg)}
.sprungleiste a{background:transparent;border:1px solid var(--linie);border-radius:2px;font-family:var(--titel);letter-spacing:.06em;font-size:13px}
.sprungleiste a:hover,.sprungleiste a[aria-current]{background:var(--primaer);border-color:var(--primaer)}
.sprung-gruppe{font-family:var(--titel)}
.filter button{border-radius:2px;font-family:var(--titel);letter-spacing:.06em;font-size:13px;background:transparent}
.filter button[aria-pressed="true"],.filter button:hover{background:var(--primaer);border-color:var(--primaer);color:#fff}
h2.gruppe{display:block;text-align:center;border:0;color:var(--primaer);margin-top:64px}
h2.gruppe::before,h2.gruppe::after{content:"";display:inline-block;width:40px;height:1px;background:var(--akzent);vertical-align:middle;margin:0 16px}
.kategorie h3{text-align:center;font-size:24px;color:var(--dunkel)}
.kategorie .it{display:block;font-family:var(--sans);font-size:16px;letter-spacing:0;color:var(--akzent)}
.kategorie>.klein{text-align:center}
.karte-liste{max-width:820px;margin:0 auto}
.karte-liste li{border-bottom:0;padding:10px 0}
/* Punktlinie zwischen Gericht und Preis */
.karte-liste .zeile{align-items:baseline}
.karte-liste .zeile::after{content:"";order:1;flex:1;border-bottom:1px dotted var(--akzent);margin:0 6px;transform:translateY(-4px)}
.karte-liste .name{order:0}
.karte-liste .preis{order:2;color:var(--primaer)}
@media (max-width:600px){.karte-liste .zeile{flex-wrap:nowrap;gap:6px}.karte-liste .name{min-width:0}.karte-liste .zeile::after{min-width:12px;margin:0 2px}}
.karte-liste .nr{color:var(--akzent)}

/* Fuß */
.fuss{background:var(--dunkel);color:#d8ccb6}
.fuss-titel{color:var(--akzent);font-family:var(--titel);letter-spacing:.12em}
.fuss-name{font-family:var(--titel);letter-spacing:.06em;color:#f4ead7}
.fuss::before{content:"";display:block;height:4px;margin-top:-56px;margin-bottom:52px;background:linear-gradient(90deg,var(--gruen) 0 33.3%,#fff 33.3% 66.6%,var(--rot) 66.6%)}
