/* Kismet Restaurant - Nachbau von GK Restaurant (Stil 3) 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: #a73030;
  --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: #a73030; color: #fff; }

/* ---------- Seite ---------- */
body.site {
  background: #1d1d1d url('../../../../../images/kismet/bg_pattern.png') repeat 0 0;
  color: #7d7b7a;
  font-size: 14px;
}
a { color: #a73030; }
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: 1160px; 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% - 1160px) / 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: #a73030; background: none; text-decoration: none; }
.container-header .metismenu > li:last-child > a { color: #a73030; 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: #a73030; }

/* ---------- Raster: Inhalt + rechte Spalte, max. 1160 px ---------- */
@media (min-width: 992px) {
  .wrapper-static .site-grid {
    grid-template-columns: [full-start] minmax(16px, 1fr) [main-start] repeat(4, minmax(0, 283px)) [main-end] minmax(16px, 1fr) [full-end];
    column-gap: 26px;
    padding-top: 190px;
  }
  /* erste Box der rechten Spalte auf Hoehe der Papier-Oberkante (wie kr) ziehen */
  .container-sidebar-right > :first-child { margin-top: -70px !important; }
}

/* 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: -190px; height: 190px; pointer-events: none;
  background: url('../../../../../images/kismet/clips.png') no-repeat left -6px,
              url('../../../../../images/kismet/clips.png') no-repeat right -6px,
              url('../../../../../images/kismet/paper.png') repeat-x 0 120px;
}
.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: #a73030; }
.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: #a73030; 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: 1160px; 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: #a73030; }

/* ---------- 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: #a73030; border-color: #a73030; color: #fff; }
.btn-primary { background: #a73030; border-color: #a73030; }
.btn-primary:hover { background: #7d1f1f; border-color: #7d1f1f; }

/* ---------- 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: 1160px; 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: #a73030; 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: #a73030; }
.mod-articles-item:hover .mod-articles-title a { color: #a73030; }
.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: #a73030; }
.kr-meta { margin: 0; color: #888; font-size: 14px; }
.kr-author { color: #a73030; }
.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: #a73030; border: 0; border-radius: 0; color: #fff !important; padding: 6px 12px; font-size: 15px; text-decoration: none; }
.kr-button:hover, .kr-button:focus { background: #7d1f1f; 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: #a73030; }
  /* 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-117:hover > ul.mm-collapse,
  .container-header .metismenu > li.item-117:focus-within > ul.mm-collapse { display: flex !important; width: 460px; gap: 24px; }
  .container-header .metismenu li.item-117 > ul > li { flex: 1 1 50%; border: 0; }
  .container-header .metismenu li.item-117 > ul > li > a { color: #a73030; text-transform: uppercase; font-size: 16px; padding-top: 4px; }
  .container-header .metismenu li.item-117 > ul > li > a[title]::after { color: #e9e9e9; }
  .container-header .metismenu li.item-117 > 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-117 > 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-117 > ul > li > ul > li:hover > ul.mm-collapse,
  .container-header .metismenu li.item-117 > ul > li > ul > li:focus-within > ul.mm-collapse { display: block !important; }
  .container-header .metismenu li.item-117 > ul > li > ul > li.parent::before { content: "\2039"; position: absolute; left: -14px; top: 9px; color: #a73030; 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-117 > ul.mm-collapse { align-items: flex-start; }
}
@media (min-width: 992px) {
  .container-header .metismenu li.item-117 > 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: #a73030 !important; color: #fff; }

/* === Eselsohr / umgeknickte Ecke box_menu === */
.card.box_menu{ background:#fff !important; border:0 !important; border-radius:0 !important;
  box-shadow:none !important; position:relative; overflow:hidden; }
.card.box_menu .card-body{ border:0 !important; box-shadow:none !important; }
.card.box_menu::before{ content:""; position:absolute; top:0; right:0; width:31px; height:31px;
  background:#1d1d1d url('../../../../../images/kismet/bg_pattern.png') repeat 0 0;
  -webkit-clip-path:polygon(100% 0, 0 0, 100% 100%); clip-path:polygon(100% 0, 0 0, 100% 100%); z-index:2; }
.card.box_menu::after{ content:""; position:absolute; top:0; right:0; width:30px; height:30px;
  background:linear-gradient(225deg,#f2f2f2 0%,#d2d2d2 55%,#b4b4b4 100%);
  -webkit-clip-path:polygon(0 0, 100% 100%, 0 100%); clip-path:polygon(0 0, 100% 100%, 0 100%); z-index:3; }

/* === Schlagwörter als rote Ribbon-Chips (wie kr K2 Tags) === */
.mod-tagspopular-cloud { display: flex; flex-wrap: wrap; gap: 7px 13px; padding-top: 4px; margin: 0; }
.mod-tagspopular-cloud .tag { display: inline-block; margin: 0; }
.mod-tagspopular-cloud .tag-name {
  position: relative; display: inline-block; margin-left: 11px;
  background: #a73030; color: #fff !important;
  font: 600 12px/18px "Expletus Sans", sans-serif !important;
  padding: 2px 12px; border-radius: 0 3px 3px 0; text-decoration: none;
}
.mod-tagspopular-cloud .tag-name::before {
  content: ""; position: absolute; left: -11px; top: 0; width: 0; height: 0;
  border: 11px solid transparent; border-right-color: #a73030; border-left: 0;
}
.mod-tagspopular-cloud .tag-name::after {
  content: ""; position: absolute; left: 1px; top: 50%; transform: translateY(-50%);
  width: 5px; height: 5px; border-radius: 50%; background: #fff;
}
.mod-tagspopular-cloud .tag-name:hover { background: #7d1f1f; }
.mod-tagspopular-cloud .tag-name:hover::before { border-right-color: #7d1f1f; }

/* === Holz-Box Reservierung in der rechten Spalte === */
.container-sidebar-right .card.wood1 { min-height: 0; padding: 24px; color: #fff; }
.container-sidebar-right .card.wood1 .card-header {
  color: #fff; background: none; border-bottom: 1px solid rgba(255,255,255,.4);
  padding: 0 0 12px; margin-bottom: 16px; background-size: 0 0;
}
.kr-reserv { text-align: center; }
.kr-reserv .kr-lead { font-family: "Norican", cursive; font-size: 24px; color: #fff; margin: 0 0 4px; }
.kr-reserv .kr-tel { font-size: 27px; font-weight: 700; margin: 2px 0 6px; }
.kr-reserv .kr-tel a { color: #fff; text-decoration: none; }
.kr-reserv .kr-note { font-size: 13px; margin: 0 0 16px; }
.kr-reserv .kr-btn {
  display: inline-block; background: #a73030; color: #fff; text-shadow: none;
  padding: 10px 24px; border-radius: 3px; font-weight: 600; text-transform: uppercase;
  letter-spacing: .5px; text-decoration: none;
}
.kr-reserv .kr-btn:hover { background: #7d1f1f; }

/* === Holz-Box Variante 2: dunkle Eiche + gestrichelter Innenrahmen (wie kr K2 Comments) === */
.card.wood2 {
  position: relative;
  background: url('../../../../../images/kismet/bg_wood2.jpg') repeat 0 0 !important;
  color: #fff; text-shadow: 1px 1px 2px rgba(40,25,10,.9);
  padding: 28px; overflow: hidden;
}
.container-sidebar-right .card.wood2 { min-height: 0; color: #fff; }
.card.wood2::after {
  content: ""; position: absolute; inset: 14px; border: 1px dashed rgba(255,255,255,.55);
  pointer-events: none; z-index: 1;
}
.card.wood2 > * { position: relative; z-index: 2; }
.card.wood2 .card-header {
  color: #fff; background: none !important; background-size: 0 0; border-bottom: 0;
  padding: 0 0 8px; margin: 2px 0 14px;
}

/* === Schlagwörter-Box ohne weißen Kasten: Chips direkt auf dunklem Hintergrund (wie kr) === */
.container-sidebar-right .card:has(.mod-tagspopular-cloud) {
  background: transparent !important; padding: 0 !important; box-shadow: none !important;
}
.container-sidebar-right .card:has(.mod-tagspopular-cloud) .card-header {
  color: #9a9a9a; background: none !important; background-size: 0 0;
  border-bottom: 0; padding: 0 0 14px; margin: 0;
}

/* === "Details"-Infoblock (Autor/Kategorie/Datum/Zugriffe) bei Artikeln ausblenden === */
.item-page .article-info,
.blog-item .article-info,
.com-content-article .article-info,
.com-content-category-blog .article-info { display: none; }

/* === Artikelbild über volle Breite, Text darunter statt umflossen (wie kr) === */
.item-page figure.item-image,
.com-content-article figure.item-image,
.blog-item figure.item-image {
  float: none !important; width: auto !important; max-width: 100%;
  display: block; margin: 0 0 20px !important;
}
.item-page figure.item-image img,
.com-content-article figure.item-image img,
.blog-item figure.item-image img { max-width: 100%; height: auto; }

/* === Startseite: nur haengende Klammern/Seile (keine Perforation), Inhalt hoeher, Klammern VOR dem Brett === */
@media (min-width: 992px) {
  body.itemid-101 .site-grid { padding-top: 122px; }
  body.itemid-101 .site-grid > .container-component::before {
    display: block; top: -135px; height: 153px; z-index: 5;
    background: url('../../../../../images/kismet/clips.png') no-repeat left bottom,
                url('../../../../../images/kismet/clips.png') no-repeat right bottom;
  }
}
/* Startseite: rechte Box nicht hochziehen (keine Perforation zum Ausrichten) */
body.itemid-101 .container-sidebar-right > :first-child { margin-top: 0 !important; }
