/* Kismet Restaurant (konuksever.eu) - Nachbau von GK Restaurant (Stil 1, hell/gruen) fuer Cassiopeia / Joomla 6 - Stand 2026-10-26 */
/* Schriften lokal (DSGVO): Expletus Sans, Norican, Rock Salt - SIL Open Font License */
@font-face {
  font-family: 'Expletus Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../../../../../images/kismet/fonts/ExpletusSans-400-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Expletus Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../../../../../images/kismet/fonts/ExpletusSans-400-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Expletus Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../../../../../images/kismet/fonts/ExpletusSans-600-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Expletus Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../../../../../images/kismet/fonts/ExpletusSans-600-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Expletus Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../../../../../images/kismet/fonts/ExpletusSans-700-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Expletus Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../../../../../images/kismet/fonts/ExpletusSans-700-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Norican';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../../../../../images/kismet/fonts/Norican-400-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Norican';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../../../../../images/kismet/fonts/Norican-400-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Rock Salt';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../../../../../images/kismet/fonts/RockSalt-400-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --cassiopeia-color-primary: #151515;
  --cassiopeia-color-link: #8fbe1d;
  --cassiopeia-color-hover: #222;
  --cassiopeia-font-family-body: "Expletus Sans", Georgia, serif;
  --cassiopeia-font-family-headings: "Norican", cursive;
  --cassiopeia-font-weight-headings: 400;
}
::selection { background: #8fbe1d; color: #fff; }

/* ---------- Seite ---------- */
body.site {
  background: #1d1d1d url('../../../../../images/kismet/bg_pattern.png') repeat 0 0;
  color: #7d7b7a;
  font-size: 14px;
}
a { color: #8fbe1d; }
a:hover, a:focus { color: #222; }
h1, h2, h3, h4, h5, .page-header h1, .page-header h2, .item-title { font-family: "Norican", cursive; font-weight: 400; color: #484848; }

/* ---------- Kopfleiste mit Banner-Logo ---------- */
.container-header {
  margin-top: 20px;
  min-height: 68px;
  background: #151515;
  border-top: 1px solid #262626;
  border-bottom: 1px solid #262626;
  box-shadow: none;
  position: relative;
  z-index: 10;
}
.container-header .grid-child { max-width: 1000px; margin: 0 auto; padding: 0 16px; }
.container-header .navbar-brand { padding: 0; margin: 0; }
.container-header .brand-logo img { height: 103px; width: auto; max-width: none; margin: -27px 0 -40px -14px; position: relative; z-index: 5; }
.container-header .site-description { display: none; }
.container-topbar { display: none; }
.container-header .container-nav {
  position: absolute; top: 0; right: max(16px, calc((100% - 1000px) / 2)); height: 68px;
  display: flex; align-items: center; padding: 0; margin: 0; background: transparent;
}
.container-header .metismenu > li > a,
.container-header .metismenu > li > button,
.container-header .mod-menu > li > a {
  font-family: "Expletus Sans", sans-serif; font-size: 15px; font-weight: 600; text-transform: uppercase;
  color: #e9e9e9; background: none; padding: 0 15px; line-height: 68px; text-decoration: none;
}
.container-header .metismenu > li.active > a,
.container-header .metismenu > li.current > a,
.container-header .metismenu > li > a:hover,
.container-header .metismenu > li > button:hover { color: #8fbe1d; background: none; text-decoration: none; }
.container-header .metismenu > li:last-child > a { color: #8fbe1d; border-left: 1px solid #e9e9e9; line-height: 14px; }
.container-header .metismenu .mm-collapse {
  background: #151515 url('../../../../../images/kismet/bg_menu.png') no-repeat right bottom;
  border: 0; box-shadow: 0 4px 10px rgba(0,0,0,.5); min-width: 230px;
}
.container-header .metismenu .mm-collapse a { color: #e9e9e9; font-family: "Expletus Sans", sans-serif; font-size: 13px; text-transform: none; }
.container-header .metismenu .mm-collapse a:hover { color: #8fbe1d; }

/* ---------- Raster: Inhalt + rechte Spalte, max. 1000 px ---------- */
@media (min-width: 992px) {
  .wrapper-static .site-grid {
    grid-template-columns: [full-start] minmax(16px, 1fr) [main-start] repeat(4, minmax(0, 230px)) [main-end] minmax(16px, 1fr) [full-end];
    column-gap: 26px;
    padding-top: 120px;
  }
}

/* Inhalt auf Papier mit Klammern */
.site-grid > .container-component {
  position: relative;
  background: #fff url('../../../../../images/kismet/paper.png') repeat-x 0 -64px;
  padding: 40px 40px 24px;
  margin-bottom: 0;
}
.site-grid > .container-component::before {
  content: ""; position: absolute; left: 0; right: 0; top: -150px; height: 150px; pointer-events: none;
  background: url('../../../../../images/kismet/clips.png') no-repeat left bottom, url('../../../../../images/kismet/clips.png') no-repeat right bottom;
}
.container-component .card { background: transparent; border: 0; border-radius: 0; box-shadow: none; margin: 0 0 24px; }
.container-component .card-body { padding: 0; }
.card.nomargin { margin: -40px -40px 24px -40px !important; }
.card.nomargin + .card.nomargin { margin-top: 0 !important; }
.card.clear > .card-header { display: none; }
.container-component .page-header h1, .container-component .page-header h2 { font-size: 40px; }

/* Startseite: wie im Original nur die Module, keine Beitragsliste */
body.itemid-101 .com-content-featured,
body.itemid-101 .blog-featured { display: none; }

/* Modultitel: Rock Salt mit Unterstrich */
.card-header {
  font-family: "Rock Salt", cursive; font-size: 22px; line-height: 1.3; font-weight: 400;
  color: #484848; background: transparent url('../../../../../images/kismet/bg_underscore.png') no-repeat 0 bottom;
  background-size: 65% 12px; border: 0; padding: 0 0 22px; margin-bottom: 18px;
}

/* ---------- Kopfbild "Willkommen" ---------- */
.gkHeader {
  background: #111 url('../../../../../images/kismet/typography/bg_demo.jpg') no-repeat left bottom;
  min-height: 425px; position: relative; overflow: hidden; width: 100%;
}
.gkHeader > * { position: absolute; margin: 0; }
.gkHeader h1 { top: 45px; right: 30px; width: 365px; color: #fff; font-size: 60px; line-height: 1.1; font-family: "Norican", cursive; }
.gkHeader p { top: 150px; right: 30px; width: 365px; color: #efefef; font-size: 18px; line-height: 1.3; }
.gkHeader p small { display: block; margin-top: 20px; color: #ccc; font-size: 14px; line-height: 1.5; }
.gkHeaderHat, .gkHeaderOrder, .gkHeaderSign { text-indent: -9999px; overflow: hidden; background-repeat: no-repeat; }
.gkHeaderHat { left: 40px; top: 40px; width: 305px; height: 248px; background-image: url('../../../../../images/kismet/typography/bg_demo_hat.png'); }
.gkHeaderOrder { left: 30px; bottom: 0; width: 393px; height: 129px; background-image: url('../../../../../images/kismet/typography/bg_demo_order.png'); }
.gkHeaderSign { right: 40px; bottom: 40px; width: 248px; height: 92px; background-image: url('../../../../../images/kismet/typography/bg_demo_sign.png'); }

/* ---------- Beliebte Rezepte (3 Spalten) ---------- */
.mod-articles-grid { gap: 24px; }
.mod-articles-item { text-align: center; }
.mod-articles-item img {
  width: 100%; height: 135px; object-fit: cover; border: 4px solid #fff;
  box-shadow: 0 0 2px rgba(0,0,0,.35); transition: transform .4s ease;
}
.mod-articles-item a:hover img { transform: scale(1.05) rotate(-2deg); }
.mod-articles-title { font-family: "Norican", cursive; font-size: 30px; color: #484848; margin: 18px 0 6px; }
.mod-articles-title a { color: #484848; text-decoration: none; }
.mod-articles-title a:hover { color: #8fbe1d; }
.mod-articles-item-content p { font-size: 13px; color: #777; margin: 0; }
.mod-articles-item dl, .mod-articles-item .article-info { display: none; }

/* ---------- Spezielle Angebote: Holz, Zettel, Kreidetafel ---------- */
.card.wood1 {
  background: url('../../../../../images/kismet/bg_wood1.jpg') repeat 0 0 !important;
  color: #fff; text-shadow: 1px 1px 2px #98784b; padding: 24px; overflow: hidden; min-height: 490px;
}
.gkTitle { color: #fff; font-family: "Rock Salt", cursive; font-size: 30px; text-transform: uppercase; margin: 0; }
.gkTitle sub { font-size: 30px; position: relative; top: 36px; }
.gkDemoImage { display: block; float: left; width: 399px; height: 364px; text-indent: -9999px; overflow: hidden; background: url('../../../../../images/kismet/bg_papers.png') no-repeat 0 0; }
.gkChalkboard {
  box-sizing: border-box; float: right; width: 375px; height: 338px; padding: 90px 50px 0; margin-top: -70px;
  color: #eee; text-shadow: none; font-family: "Rock Salt", cursive; transform: rotate(6deg);
  background: url('../../../../../images/kismet/bg_chalkboard.png') no-repeat 0 0;
}
.gkChalkboard strong { display: block; border-bottom: 1px solid #aaa; font-size: 17px; margin-bottom: 20px; text-align: center; color: #eee; font-weight: 400; }
.gkChalkboard p { text-align: center; font-size: 12px; }

/* ---------- Rechte Spalte ---------- */
.container-sidebar-right .card { background: #fff; border: 0; border-radius: 0; box-shadow: none; padding: 24px; margin-bottom: 34px; color: #777; }
.container-sidebar-right .card-body { padding: 0; }
.card.box_menu { background: #fff url('../../../../../images/kismet/bg_paper.png') no-repeat right top; }
.card.box_menu ul { list-style: none; margin: 0; padding: 0; }
.card.box_menu li { margin: 0; padding: 0; background: url('../../../../../images/kismet/menu_separator_bg.png') no-repeat center bottom; background-size: 100% 3px; }
.card.box_menu li a { display: block; padding: 8px 0 8px 30px; font-size: 15px; color: #777; text-decoration: none; }
.card.box_menu li a:hover, .card.box_menu li.active a { color: #777; background: url('../../../../../images/kismet/menu_active.png') no-repeat left center; }
.card.border { border: 5px solid #474747 !important; }
.card.border .mod-articles-items { list-style: none; padding: 0; margin: 0; }
.card.border .mod-articles-item { display: flex; gap: 10px; text-align: left; padding: 10px 0; border-bottom: 1px solid #e5e5e5; }
.card.border .mod-articles-item img { width: 67px; height: 50px; border: 0; box-shadow: none; }
/* Titel unsichtbar, aber als Link ueber dem ganzen Eintrag (siehe unten) */
.card.border .mod-articles-title { margin: 0; font-size: 0; line-height: 0; }
.card.border .mod-articles-item-content p { font-size: 12px; line-height: 1.4; }

/* ---------- Fussbereich: 4 Spalten auf dunklem Grund ---------- */
.container-bottom-b {
  display: grid; grid-template-columns: 1.7fr 1fr 1fr 1.2fr; gap: 30px;
  margin-top: 48px; color: #a9a7a7; font-size: 13px; text-shadow: 1px 1px 0 #000;
}
.container-bottom-b .card { background: transparent; border: 0; padding: 0; margin: 0; color: #a9a7a7; }
.container-bottom-b .card-body { padding: 0; }
.container-bottom-b .card-header { color: #a9a7a7; font-size: 20px; background: none; padding: 0 0 14px; margin: 0; }
.container-bottom-b a { color: #8fbe1d; text-decoration: none; }
.container-bottom-b a:hover { color: #b9b7b7; }
.container-bottom-b ul { list-style: none; margin: 0; padding: 0; }
.container-bottom-b li { line-height: 20px; padding: 0; }
.gkDemoLogo { display: block; width: 291px; max-width: 100%; height: 52px; text-indent: -9999px; overflow: hidden; background: url('../../../../../images/kismet/footer_logo.png') no-repeat 0 0; }
.socialBlock { margin-top: 12px; padding-top: 12px; border-top: 1px dashed #a9a7a7; }
.gkFacebook, .gkTwitter, .gkVimeo { display: inline-block; width: 20px; height: 17px; margin-right: 2px; text-indent: -9999px; overflow: hidden;
  background: url('../../../../../images/kismet/social_icons.png') no-repeat 0 0; }
.gkFacebook { background-position: -20px 0; }
.gkVimeo { background-position: -40px 0; }
.gkTwitter:hover { background-position: 0 100%; }
.gkFacebook:hover { background-position: -20px 100%; }
.gkVimeo:hover { background-position: -40px 100%; }

.container-footer {
  background: transparent url('../../../../../images/kismet/bg_underscore.png') no-repeat center top; background-size: 80% 12px;
  border: 0; margin-top: 50px; padding: 30px 0 40px; color: #a9a7a7; font-family: "Rock Salt", cursive; font-size: 11px; text-shadow: 1px 1px 0 #000;
}
.container-footer .grid-child { max-width: 1000px; margin: 0 auto; }
.container-footer ul { display: flex; flex-wrap: wrap; gap: 6px 22px; list-style: none; margin: 0; padding: 0; }
.container-footer a { color: #b9b7b7; text-decoration: none; }
.container-footer a:hover { color: #8fbe1d; }

/* ---------- Beitrags- und Kategorieseiten ---------- */
.blog-item .item-image img, .item-page .item-image img { border: 6px solid #fff; box-shadow: 0 0 3px rgba(0,0,0,.35); }
.tags .btn-info, .tags a { background: #8fbe1d; border-color: #8fbe1d; color: #fff; }
.btn-primary { background: #8fbe1d; border-color: #8fbe1d; }
.btn-primary:hover { background: #6f9616; border-color: #6f9616; }

/* ---------- Kleine Bildschirme ---------- */
@media (max-width: 991.98px) {
  .container-header .container-nav { position: static; height: auto; justify-content: flex-end; padding: 0 16px 8px; }
  .container-header .metismenu > li > a, .container-header .metismenu > li > button { line-height: 40px; }
  .wrapper-static .site-grid { padding-top: 40px; }
  .site-grid > .container-component::before { display: none; }
  .gkDemoImage { display: none; }
  .gkChalkboard { float: none; margin: 30px auto 0; transform: none; }
  .container-bottom-b { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
  .container-header .brand-logo img { height: 70px; margin: -10px 0 -10px -8px; }
  .site-grid > .container-component { padding: 24px 16px; }
  .card.nomargin { margin: -24px -16px 16px -16px !important; }
  .gkHeader { min-height: 0; padding: 24px; background-size: cover; }
  .gkHeader > * { position: static; width: auto !important; }
  .gkHeaderHat, .gkHeaderOrder, .gkHeaderSign { display: none; }
  .gkHeader h1 { font-size: 44px; }
  .gkChalkboard { width: 100%; height: auto; padding: 60px 30px 40px; background-size: 100% 100%; }
  .container-bottom-b { grid-template-columns: 1fr; }
}

/* ---------- Korrekturen Runde 2 ---------- */
/* Hauptmenue kompakt und ueber dem Logo-Bereich */
.container-header .container-nav { z-index: 6; }
.container-header .metismenu > li > a,
.container-header .mod-menu > li > a { padding: 0 13px; font-size: 14px; }
.container-header .metismenu > li > button.mm-toggler { padding: 0 6px 0 0; margin-left: -8px; line-height: 68px; color: #e9e9e9; }
.container-header .metismenu > li > button.mm-toggler::after { display: none; }

/* Beliebte Rezepte: 3 Spalten, Bild vor Titel */
.container-component .mod-articles-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; list-style: none; padding: 0; margin: 0; }
.mod-articles-item-content { display: flex; flex-direction: column; }
.mod-articles-item-content > figure,
.mod-articles-item-content > .item-image,
.mod-articles-item-content > .mod-articles-image { order: -1; margin: 0; }
.container-component .mod-articles-title { font-size: 26px; line-height: 1.15; }

/* Ende des Papiers buendig mit dem Holzbrett */
.container-component .card.nomargin:last-child { margin-bottom: -24px !important; }

/* Fussmenue waagerecht */
.container-footer .mod-menu, .container-footer ul.nav { display: flex !important; flex-direction: row !important; flex-wrap: wrap; gap: 6px 24px; }
.container-footer .mod-menu > li { display: inline-block; margin: 0; padding: 0; }
.container-bottom-b { margin-bottom: 0; }
.container-footer { margin-top: 30px; }
@media (max-width: 767.98px) {
  .container-component .mod-articles-grid { grid-template-columns: 1fr; }
}

/* ---------- Korrekturen Runde 3 ---------- */
/* Navigation rechtsbuendig neben dem Logo */
.container-header .container-nav {
  left: 0; right: 0; max-width: 1000px; margin: 0 auto; padding: 0 16px;
  justify-content: flex-end; width: auto;
}
.container-header .container-nav > *,
.container-header .container-nav nav,
.container-header .container-nav .navbar-collapse { margin-left: auto; justify-content: flex-end; flex-grow: 0; }
/* Nur das erste randlose Modul ragt in den Papierrand, keine Ueberlappung */
.container-component .card.nomargin { margin: 0 -40px 24px -40px !important; }
.container-component .card.nomargin:first-child { margin-top: -40px !important; }
body.itemid-101 .container-component .card.wood1 { margin-bottom: 0 !important; }
body.itemid-101 .site-grid > .container-component { padding-bottom: 0; }
body.itemid-101 .site-grid > .container-component > main:empty,
body.itemid-101 .site-grid > .container-component > main { margin: 0; padding: 0; }
@media (max-width: 991.98px) {
  .container-header .container-nav { position: static; max-width: none; }
}
@media (max-width: 600px) {
  .container-component .card.nomargin { margin: 0 -16px 16px -16px !important; max-width: none !important; width: calc(100% + 32px) !important; }
  .container-component .card.nomargin:first-child { margin-top: -24px !important; }
}

/* ---------- Korrekturen Runde 4: Handy ---------- */
@media (max-width: 991.98px) {
  .container-header .container-nav { justify-content: flex-start; padding: 0 16px 10px; }
  .container-header .navbar-toggler { color: #e9e9e9; border-color: #444; margin-left: auto; }
  .container-header .metismenu > li > a, .container-header .metismenu > li > button { line-height: 40px; }
  .container-header .metismenu > li:last-child > a { border-left: 0; line-height: 40px; }
  .gkHeader p, .gkHeader h1 { width: auto; }
  .container-component img { max-width: 100%; }
}

/* ---------- Korrekturen Runde 5: Handy ---------- */
@media (max-width: 991.98px) {
  body.site { overflow-x: hidden; }
  .site-grid > * { min-width: 0; }
  .container-component .card, .container-component .card-body, .gkHeader, .gkChalkboard { max-width: 100%; box-sizing: border-box; }
  .container-header .navbar-toggler {
    display: inline-flex; align-items: center; justify-content: center;
    background: #8fbe1d; border: 0; border-radius: 3px; color: #fff; padding: 8px 12px; margin: 10px 0;
  }
  .container-header .navbar-toggler .icon-menu, .container-header .navbar-toggler span { color: #fff; font-size: 20px; }
  .container-header .navbar-collapse .metismenu { flex-direction: column; align-items: flex-start; }
}

/* ---------- Korrekturen Runde 6: randlose Module auf kleinen Bildschirmen ---------- */
@media (max-width: 991.98px) {
  .site-grid > .container-component { padding-left: 16px !important; padding-right: 16px !important; }
  .container-component .card.nomargin { margin: 0 -16px 16px -16px !important; max-width: none !important; width: calc(100% + 32px) !important; }
  .container-component .card.nomargin:first-child { margin-top: -24px !important; }
}

/* ---------- Fuss-Logo als Schriftzug statt englischer Template-Grafik ---------- */
.gkDemoLogo {
  background: none; text-indent: 0; width: auto; height: auto; overflow: visible;
  font-family: "Norican", cursive; font-size: 34px; line-height: 1.1; color: #a9a7a7; margin-bottom: 10px;
}

/* ---------- Ganze Eintraege klickbar (Bild + Text), wie im Original ---------- */
.mod-articles-item { position: relative; }
.mod-articles-item .mod-articles-link::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.mod-articles-item:hover .mod-articles-item-content p { color: #8fbe1d; }
.mod-articles-item:hover .mod-articles-title a { color: #8fbe1d; }
.card.border .mod-articles-item { cursor: pointer; }

/* ---------- Viele Module oben (z. B. Fruehstueck): hoechstens 3 pro Reihe ---------- */
@media (min-width: 768px) {
  .container-top-a { flex-wrap: wrap; row-gap: 1em; }
  .container-top-a > * { flex: 1 1 calc(33.333% - 1em); min-width: 0; }
}
.container-top-a .card.wood1 { min-height: 0; }

/* ---------- Kategorie-Blog wie im Original (K2-Liste): untereinander, Datums-Schild, roter Button ---------- */
.com-content-category-blog .blog-items:has(.kr-item) { display: block; column-count: 1; }
.com-content-category-blog .blog-item:has(.kr-item) { width: auto; margin: 0; padding: 0; border: 0; background: none; box-shadow: none; }
.kr-item { position: relative; padding: 8px 0 40px; margin: 0 0 40px; border-bottom: 1px solid #eee; }
.blog-item:last-child .kr-item { border-bottom: 0; margin-bottom: 0; }
.kr-date {
  position: absolute; left: -61px; top: 3px; width: 145px; height: 77px; box-sizing: border-box; padding: 0 10px;
  background: url("../../../../../images/kismet/time.png") no-repeat 0 0;
  font-family: "Rock Salt", cursive; font-size: 21px; line-height: 61px; color: #fff; text-shadow: 0 0 1px #47351f; white-space: nowrap;
}
.kr-header { margin: 0 0 24px 111px; min-height: 77px; }
.kr-title { font-size: 46px; line-height: 1.05; margin: 0 0 12px; }
.kr-title a { color: #484848; text-decoration: none; }
.kr-title a:hover { color: #8fbe1d; }
.kr-meta { margin: 0; color: #888; font-size: 14px; }
.kr-author { color: #8fbe1d; }
.kr-image { padding: 8px; border: 1px solid #eee; margin: 0 0 28px; line-height: 0; overflow: hidden; }
.kr-image img { width: 100%; height: auto; border: 0 !important; box-shadow: none !important; transition: transform .4s ease; }
.kr-image a:hover img { transform: scale(1.05); }
.kr-intro { line-height: 1.9; }
.kr-readmore { margin: 16px 0 0; }
.kr-button, .kr-button:visited { display: inline-block; background: #8fbe1d; border: 0; border-radius: 0; color: #fff !important; padding: 6px 12px; font-size: 15px; text-decoration: none; }
.kr-button:hover, .kr-button:focus { background: #6f9616; color: #fff !important; }
@media (max-width: 767px) {
  .kr-date { left: -16px; transform: scale(.8); transform-origin: left top; }
  .kr-header { margin-left: 100px; }
  .kr-title { font-size: 32px; }
}
.com-content-category-blog, .com-content-category-blog .blog-items:has(.kr-item), .com-content-category-blog .blog-item:has(.kr-item) { overflow: visible !important; }

/* ---------- Aufklappmenue wie im Original (beim Ueberfahren mit der Maus) ---------- */
@media (min-width: 992px) {
  .container-header .metismenu > li { position: relative; }
  .container-header .metismenu button.mm-toggler { display: none !important; }
  .container-header .metismenu ul.mm-collapse {
    display: none !important; position: absolute; z-index: 1000; height: auto !important;
    margin: 0; padding: 14px 24px 18px; list-style: none; text-align: left;
  }
  .container-header .metismenu > li:hover > ul.mm-collapse,
  .container-header .metismenu > li:focus-within > ul.mm-collapse { display: block !important; top: 100%; left: -20px; min-width: 230px; }
  .container-header .metismenu ul.mm-collapse li { position: relative; margin: 0; padding: 0; border-bottom: 1px solid #2c2c2c; }
  .container-header .metismenu ul.mm-collapse li:last-child { border-bottom: 0; }
  .container-header .metismenu ul.mm-collapse a {
    display: block; padding: 10px 0; line-height: 1.25; font-size: 15px; font-weight: 400; color: #e9e9e9; white-space: nowrap; text-decoration: none;
  }
  .container-header .metismenu ul.mm-collapse a:hover,
  .container-header .metismenu ul.mm-collapse li.active > a { color: #8fbe1d; }
  /* Kurzbeschreibung unter dem Menuetitel (aus "Titel-Attribut" des Menuepunkts) */
  .container-header .metismenu ul.mm-collapse a[title]::after {
    content: attr(title); display: block; margin-top: 3px; font-size: 11px; color: #bdbdbd; text-transform: none;
  }
  /* "Speisen & Getraenke": zwei Spalten mit Gruppenueberschrift */
  .container-header .metismenu > li.item-111:hover > ul.mm-collapse,
  .container-header .metismenu > li.item-111:focus-within > ul.mm-collapse { display: flex !important; width: 460px; gap: 24px; }
  .container-header .metismenu li.item-111 > ul > li { flex: 1 1 50%; border: 0; }
  .container-header .metismenu li.item-111 > ul > li > a { color: #8fbe1d; text-transform: uppercase; font-size: 16px; padding-top: 4px; }
  .container-header .metismenu li.item-111 > ul > li > a[title]::after { color: #e9e9e9; }
  .container-header .metismenu li.item-111 > ul > li > ul.mm-collapse {
    display: block !important; position: static; padding: 6px 0 0 4px; min-width: 0; background: none; box-shadow: none;
  }
  /* dritte Ebene (z. B. Getraenkekarte) klappt seitlich auf */
  .container-header .metismenu li.item-111 > ul > li > ul > li > ul.mm-collapse { display: none !important; position: absolute; top: -14px; right: calc(100% + 4px); left: auto; min-width: 220px; }
  .container-header .metismenu li.item-111 > ul > li > ul > li:hover > ul.mm-collapse,
  .container-header .metismenu li.item-111 > ul > li > ul > li:focus-within > ul.mm-collapse { display: block !important; }
  .container-header .metismenu li.item-111 > ul > li > ul > li.parent::before { content: "\2039"; position: absolute; left: -14px; top: 9px; color: #8fbe1d; font-size: 18px; }
}
/* Handy: Pfeile zum Aufklappen wieder sichtbar */
@media (max-width: 991.98px) {
  .container-header .metismenu button.mm-toggler { color: #e9e9e9; }
  .container-header .metismenu > li > button.mm-toggler::after,
  .container-header .metismenu button.mm-toggler::after { display: inline-block !important; }
  .container-header .metismenu ul.mm-collapse a { display: block; padding: 6px 0; }
}
@media (min-width: 992px) {
  .container-header .metismenu ul.mm-collapse li { display: block; padding: 0; }
  .container-header .metismenu li.item-111 > ul.mm-collapse { align-items: flex-start; }
}
@media (min-width: 992px) {
  .container-header .metismenu li.item-111 > ul > li > ul > li > ul.mm-collapse { right: 100%; border-right: 28px solid transparent; background-clip: padding-box; box-shadow: none; }
}
.container-component .badge { background: #8fbe1d !important; color: #fff; }

/* =====================================================================
   konuksever.eu: GK Restaurant Stil 1 (hell, gruen, Hintergrundfoto)
   ===================================================================== */
:root { --cassiopeia-color-primary: #ffffff; --cassiopeia-color-link: #8fbe1d; --cassiopeia-color-hover: #222; }
body.site {
  background: #e9e9e9 url('../../../../../images/kismet/bg_pattern.png') repeat 0 0; color: #7d7b7a;
}
body.site::before {
  content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1100px; z-index: 0; pointer-events: none;
  background: url('../../../../../images/kismet/bg_image.jpg') no-repeat center top;
}
body.site > * { position: relative; z-index: 1; }
a { color: #8fbe1d; }
a:hover, a:focus { color: #222; }
.header.container-header {
  background: #fff; border-top: 1px solid #e0dfdf; border-bottom: 1px solid #e0dfdf; box-shadow: none;
}
.container-header .metismenu > li > a,
.container-header .metismenu > li > button,
.container-header .mod-menu > li > a { color: #555; font-weight: 400; }
.container-header .metismenu > li.active > a,
.container-header .metismenu > li.current > a,
.container-header .metismenu > li > a:hover { color: #8fbe1d; }
.container-header .metismenu > li:last-child > a { color: #555; border-left: 0; line-height: 68px; }
.container-header .metismenu .mm-collapse {
  background: #fff url('../../../../../images/kismet/bg_menu.png') no-repeat right bottom;
  border-left: 1px solid #e0dfdf; border-top: 1px solid #e0dfdf; box-shadow: 0 4px 10px rgba(0,0,0,.12);
}
.container-header .metismenu .mm-collapse a,
.container-header .metismenu ul.mm-collapse a { color: #555 !important; }
.container-header .metismenu ul.mm-collapse a:hover,
.container-header .metismenu ul.mm-collapse li.active > a { color: #8fbe1d !important; }
.container-header .metismenu ul.mm-collapse li { border-bottom-color: #ececec !important; }
.container-header .metismenu ul.mm-collapse a[title]::after { color: #a6a6a6 !important; }
.container-header .metismenu button.mm-toggler { color: #555 !important; }
.container-header .navbar-toggler { color: #555; border-color: #ddd; }
/* Fussbereich hell */
.container-bottom-b, .container-bottom-b .card, .footer, .container-footer { color: #888; text-shadow: 1px 1px 0 #fff; }
.container-bottom-b .card-header, .container-bottom-b h3 { color: #484848 !important; }
.container-bottom-b a, .container-footer a { color: #888; }
.container-bottom-b a:hover, .container-footer a:hover { color: #444; }
.footer { background: transparent; }
/* Fussbereich wie im Original: 3 Spalten, zentriert */
@media (min-width: 768px) {
  .container-bottom-b { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 30px; text-align: center; }
  .container-bottom-b > .card { grid-column: auto !important; grid-row: auto !important; width: auto !important; }
}
.container-bottom-b li { line-height: 22px; }
.container-footer .kismet-copy { font-family: "Rock Salt", cursive; font-size: 11px; text-transform: uppercase; color: #888; margin: 0; text-align: right; }
/* Aufklappmenue ueber dem Inhalt */
body.site > .header.container-header { z-index: 50; }
/* Wochenkarte: Holzbrett mit Kreideschrift wie im Original (gkblock-9) */
.gkblock-9 {
  background: url('../../../../../images/kismet/bg_wood2.jpg') repeat 0 0; color: #fff !important; text-shadow: 1px 1px 2px #5f4726;
  padding: 18px 24px; margin: 20px 0; font-family: "Rock Salt", cursive; font-size: 13px; line-height: 1.9;
}
.gkblock-9 .gkblock-9 { background: none; padding: 0; margin: 28px 0; }
.gkblock-9 p, .gkblock-9 strong, .gkblock-9 td { color: #fff !important; }
.gkblock-9 strong { font-size: 15px; font-weight: 400; }
.gkblock-9 table { width: 100%; border-collapse: collapse; margin: 6px 0 0; }
.gkblock-9 td { padding: 12px 10px; border-bottom: 1px solid rgba(255,255,255,.85); vertical-align: top; }
.gkblock-9 td:last-child { text-align: right; white-space: nowrap; }
/* Breite wie konuksever.eu (1000 px): Kopfzeile kompakter, Logo buendig mit dem Papier */
@media (min-width: 992px) {
  .container-header .grid-child { padding: 0; }
  .container-header .brand-logo img { margin-left: 0; height: 96px; }
  .container-header .container-nav { padding: 0; }
  .container-header .metismenu > li > a, .container-header .mod-menu > li > a { padding: 0 10px; font-size: 13.5px; }
  .container-header .metismenu > li:last-child > a { padding-right: 0; }
}
@media (min-width: 992px) {
  .container-header .metismenu > li { margin: 0 !important; padding: 0 !important; }
  .container-header .metismenu > li + li { margin-left: 8px !important; }
  .container-header .metismenu > li > a, .container-header .mod-menu > li > a { padding: 0 12px !important; }
  .container-header .brand-logo img { height: 90px; margin-top: -24px; }
}
/* Speisen & Getraenke: Kategorieliste wie im Original (Stern, Grossbuchstaben, Anzahl in Klammern), ohne rechte Spalte */
body.view-categories .container-sidebar-right { display: none; }
@media (min-width: 992px) {
  body.view-categories .site-grid > .container-component { grid-column: main-start / main-end !important; }
}
.kr-catlist { border-bottom: 0; }
.kr-catlist .kr-header { margin-bottom: 36px; min-height: 77px; }
.kr-catlist .kr-title { font-size: 52px; margin: 6px 0 0; }
.kr-catlist-items { list-style: none; margin: 0; padding: 0 0 0 4px; }
.kr-catlist-items li { position: relative; padding: 0 0 0 38px; margin: 0 0 13px; line-height: 1.4; }
.kr-catlist-items li::before { content: "\2605"; position: absolute; left: 4px; top: 1px; color: #e5ad1e; font-size: 14px; }
.kr-catlist-items a { color: #8fbe1d; text-decoration: none; text-transform: uppercase; font-size: 17px; }
.kr-catlist-items a:hover { color: #222; }
.kr-catlist-items small { color: #8fbe1d; font-size: 12px; margin-left: 2px; }
