/* Generic clean theme for gaststaette-treff-am-see.de
   The original Themler template2_20 CSS/JS was never archived by Wayback
   (CDX empty) and is unrecoverable. This restores a coherent, readable
   look for the small restaurant site without chasing the pixel-original. */

:root{
  --accent:#17627a;      /* lake blue */
  --accent-dark:#0f4657;
  --ink:#2c2c2c;
  --paper:#ffffff;
  --bg:#eef2f2;
}

*{box-sizing:border-box;}

body[class*="bd-body-"]{
  margin:0;
  font-family:"Open Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink);
  background:var(--bg);
  line-height:1.65;
}

img{max-width:100%;height:auto;}
a{color:var(--accent);}

/* ---------- Header / brand ---------- */
header.bd-headerarea-1{
  background:var(--paper);
  border-bottom:3px solid var(--accent);
  box-shadow:0 1px 4px rgba(0,0,0,.08);
}
header .bd-container-inner,
[class*="bd-contentlayout-"] > .bd-container-inner,
footer .bd-container-inner{
  max-width:1140px;
  margin:0 auto;
  padding-left:18px;
  padding-right:18px;
}
.bd-layoutbox-3 > .bd-container-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px;
  padding:14px 0;
}
a.bd-logo-2{
  font-family:Georgia,"Times New Roman",serif;
  font-size:26px;
  font-weight:700;
  color:var(--accent-dark);
  text-decoration:none;
  white-space:nowrap;
}
a.bd-logo-2 small{
  display:block;
  font-family:"Open Sans",sans-serif;
  font-size:12px;
  font-weight:400;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#6b7a7d;
}

/* ---------- Navigation ---------- */
.bd-responsivemenu-11,.bd-menu-close-icon,.bd-menuoverlay-11{display:none;}
.navbar-collapse.collapse{display:block !important;height:auto !important;}
ul.bd-menu-42{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:2px;
}
ul.bd-menu-42 > li{margin:0;}
ul.bd-menu-42 > li > a{
  display:block;
  padding:9px 12px;
  color:#37474a;
  text-decoration:none;
  font-size:14px;
  font-weight:600;
  border-radius:3px;
  white-space:nowrap;
}
ul.bd-menu-42 > li > a:hover{background:#e5eff1;color:var(--accent-dark);}
ul.bd-menu-42 > li.current > a,
ul.bd-menu-42 > li > a.active{background:var(--accent);color:#fff;}

/* ---------- Content ---------- */
[class*="bd-contentlayout-"]{padding:26px 0 40px;}
[class*="bd-content-"],[class*="bd-blog-"],[class*="bd-article-"],[class*="bd-postcontent-"]{width:100%;}
article[class*="bd-article-"]{
  background:var(--paper);
  padding:30px 34px;
  border-radius:5px;
  box-shadow:0 1px 4px rgba(0,0,0,.06);
}
[class*="bd-postcontent-"] h1,[class*="bd-postcontent-"] h2{
  color:var(--accent-dark);
  margin:.2em 0 .5em;
  line-height:1.25;
}
[class*="bd-postcontent-"] h2{font-size:1.7rem;}
[class*="bd-postcontent-"] h3{font-size:1.3rem;color:var(--accent-dark);}
[class*="bd-postcontent-"] h4{font-size:1.05rem;font-weight:600;margin:.4em 0;}
[class*="bd-postcontent-"] p{margin:.6em 0;}
[class*="bd-postcontent-"] a{color:var(--accent);}

/* Tables (opening-hours page) */
[class*="bd-postcontent-"] table{border-collapse:collapse;margin:12px 0;width:auto;}
[class*="bd-postcontent-"] table td,[class*="bd-postcontent-"] table th{
  padding:6px 16px 6px 0;
  border-bottom:1px solid #e3e8e8;
  text-align:left;
}

/* ---------- Footer ---------- */
footer.bd-footerarea-1{
  background:var(--accent-dark);
  color:#cfe0e4;
  margin-top:30px;
  padding:22px 0;
  font-size:13px;
  text-align:center;
}
footer.bd-footerarea-1 a{color:#fff;}
footer .row{display:block;}

/* Generic bootstrap-grid fallbacks (bootstrap.css absent) */
.container-fluid{width:100%;}
.row{display:block;}
.clearfix::after{content:"";display:table;clear:both;}
