/* de.restaurant - Verzeichnis. Schriften self-hosted (selfhost-google-fonts). */
@font-face{font-family:Playfair;src:url(/assets/playfair.woff2)format('woff2');font-weight:400 900;font-display:swap;font-style:normal}
@font-face{font-family:Poppins;src:url(/assets/poppins.woff2)format('woff2');font-weight:400;font-display:swap}
:root{
  --tinte:#14110f; --papier:#faf8f5; --karte:#fff; --linie:#e6e0d8;
  --rot:#9c2b1f; --gold:#b8873a; --grau:#6b6259;
}
*{box-sizing:border-box}
body{margin:0;background:var(--papier);color:var(--tinte);
     font:16px/1.65 Poppins,system-ui,sans-serif;-webkit-text-size-adjust:100%}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
a{color:var(--rot);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{font-family:Playfair,Georgia,serif;font-weight:700;line-height:1.2;margin:0 0 .5em}
h1{font-size:clamp(1.8rem,4vw,2.6rem);margin-top:.6em}
h2{font-size:clamp(1.3rem,2.6vw,1.7rem);margin-top:1.8em}
h3{font-size:1.05rem;margin:0 0 .25em}

.kopf{background:var(--tinte);color:#fff;position:sticky;top:0;z-index:20}
.kopf .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;padding-top:12px;padding-bottom:12px}
.marke{font-family:Playfair,serif;font-size:1.15rem;color:#fff;font-weight:700;line-height:1.1}
.marke span{display:block;font-family:Poppins,sans-serif;font-size:.72rem;font-weight:400;
            color:var(--gold);letter-spacing:.08em;text-transform:uppercase}
.kopf nav{display:flex;flex-wrap:wrap;gap:4px 16px;margin-left:auto}
.kopf nav a{color:#e8e2da;font-size:.88rem}
.kopf nav a.aktiv{color:var(--gold)}

.brot{font-size:.85rem;color:var(--grau);margin:18px 0 0}
.brot a{color:var(--grau)}
.intro{font-size:1.05rem;max-width:62ch;color:#2b2622}

.band{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:22px 0 0}
.band li{background:var(--karte);border:1px solid var(--linie);border-radius:10px;
         padding:10px 16px;min-width:130px}
.band b{display:block;font-family:Playfair,serif;font-size:1.5rem;line-height:1}
.band span{font-size:.78rem;color:var(--grau)}

.liste{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:12px}
.eintrag{display:flex;gap:14px;background:var(--karte);border:1px solid var(--linie);
         border-radius:12px;padding:14px 16px}
.rang{font-family:Playfair,serif;font-size:1.1rem;color:var(--gold);min-width:2ch}
.inhalt{flex:1;min-width:0}
.note{margin:.1em 0 .3em;font-size:.88rem;color:var(--grau)}
.sterne{color:var(--gold);letter-spacing:1px;margin-right:6px}
.note b{color:var(--tinte)}
.adr{margin:.1em 0;font-size:.92rem}
.kontakt{margin:.35em 0 0;font-size:.9rem}
.zeiten{margin-top:.5em;font-size:.86rem}
.zeiten summary{cursor:pointer;color:var(--grau)}
.zeiten div{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
            gap:2px 14px;margin-top:6px;color:var(--grau)}
.zeiten b{color:var(--tinte);margin-right:6px}

.kacheln{list-style:none;padding:0;margin:24px 0 0;display:grid;
         grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.kacheln a{display:block;background:var(--karte);border:1px solid var(--linie);
           border-radius:12px;overflow:hidden;color:inherit}
.kacheln img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}
.kacheln h2{font-size:1.1rem;margin:12px 16px 2px}
.kacheln p{margin:0 16px 14px;font-size:.86rem;color:var(--grau)}

.nachbarn{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-wrap:wrap;gap:8px 10px}
.nachbarn a{background:var(--karte);border:1px solid var(--linie);border-radius:999px;
            padding:6px 14px;font-size:.88rem;display:inline-block}
.hinweis{margin-top:22px;font-size:.9rem;color:var(--grau);background:#f2ede6;
         border-left:3px solid var(--gold);padding:12px 16px;border-radius:0 8px 8px 0}

.fuss{margin-top:56px;background:var(--tinte);color:#cdc5bb;padding:28px 0;font-size:.86rem}
.fuss p{margin:0 0 12px;max-width:70ch}
.fuss nav{display:flex;flex-wrap:wrap;gap:18px}
.fuss a{color:var(--gold)}
main{padding-bottom:10px}
@media(max-width:560px){.kopf .wrap{gap:6px}.kopf nav{margin-left:0;width:100%}}
/* KI-Kennzeichnung nach Art. 50 KI-VO: sichtbar, nicht nur im Quelltext */
.kimark{font-size:.72rem;color:var(--grau);opacity:.85;margin:0 16px 12px!important}
