*{margin:0;padding:0;box-sizing:border-box;}
body{
  font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;
  background:#e8e6e1;
  color:#333;
  line-height:1.6;
  min-height:100vh;
}

/* Skip-Link -- unsichtbar bis per Tastatur fokussiert (WCAG 2.4.1) */
.skip-link{
  position:absolute;
  left:-9999px;
  top:0;
  z-index:9999;
  background:#6b4a30;
  color:#f5ede0;
  padding:12px 20px;
  border-radius:0 0 8px 0;
  font-weight:700;
  text-decoration:none;
}
.skip-link:focus{left:0;}
.site-wrap{max-width:1300px;margin:0 auto;padding:20px;}
.container{max-width:1200px;margin:0 auto;padding:20px;} /* Kompatibilitaet fuer admin.php */

/* ── HEADER / HOLZOPTIK ────────────────────────────────────────── */
.site-header{
  position:relative;
  border-radius:10px 10px 0 0;
  padding:24px 30px 0;
  box-shadow:0 8px 16px -6px rgba(0,0,0,.35);
  height:210px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  overflow:hidden;
  z-index:0;
}
.site-header::before{
  content:'';
  position:absolute;
  top:0; left:0; right:0; bottom:0;
  background-color:#2b1c10;
  background-image:
    linear-gradient(180deg, rgba(20,12,6,.35) 0%, rgba(20,12,6,.55) 100%),
    url('uploads/wood-bg.jpg');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  z-index:-1;
}
.header-inner{display:flex;align-items:center;gap:20px;padding-bottom:18px;}
.logo-badge{
  flex-shrink:0;
}
.logo-img{
  max-height:80px;
  width:auto;
  display:block;
}
.site-title{color:#f5ede0;font-size:30px;font-weight:800;letter-spacing:.5px;text-shadow:0 2px 6px rgba(0,0,0,.4);}

.main-nav{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  padding:14px 0;
}
.main-nav a{
  color:#f0e4d0;
  text-decoration:none;
  padding:8px 16px;
  border-radius:6px;
  font-weight:700;
  font-size:14px;
  transition:all .2s;
}
.main-nav a:hover,.main-nav a.active{
  background:rgba(255,255,255,.15);
  color:#fff;
}

/* ── HERO-BILD ──────────────────────────────────────────────────── */
.hero-image{
  width:100%;
  max-height:480px;
  overflow:hidden;
  box-shadow:0 5px 20px rgba(0,0,0,.2);
}
.hero-image img{width:100%;height:100%;object-fit:cover;display:block;}

/* ── HAUPTBEREICH: CONTENT + SIDEBAR ───────────────────────────── */
.site-main{
  display:block;
  margin-top:24px;
}
.site-main.has-sidebar{
  display:grid;
  grid-template-columns:1fr 340px;
  gap:24px;
  align-items:start;
}
.main-col{min-width:0;}
.content-box{
  background:#f0ede6;
  padding:36px;
  border-radius:10px;
  box-shadow:0 4px 16px rgba(0,0,0,.1);
}
.content-box h1{color:#2b2b2b;margin-bottom:20px;font-size:28px;font-weight:800;}
.content-box h2{color:#4a3220;margin:28px 0 14px;font-size:22px;font-weight:800;}
.content-box p{margin-bottom:14px;color:#4a4a4a;}

.sidebar-col{display:flex;flex-direction:column;gap:14px;}
.sidebar-image{
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 4px 14px rgba(0,0,0,.15);
  background:#fff;
}
.sidebar-image img{width:100%;height:200px;object-fit:cover;display:block;}

@media(max-width:900px){
  .site-main.has-sidebar{grid-template-columns:1fr;}
  .sidebar-col{flex-direction:row;flex-wrap:wrap;}
  .sidebar-image{flex:1 1 45%;}
}

/* ── GALERIE-SEITE ──────────────────────────────────────────────── */
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin:30px 0;}
.gallery-item{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,.12);transition:all .25s;}
.gallery-item:hover{transform:translateY(-4px);box-shadow:0 10px 22px rgba(0,0,0,.18);}
.gallery-item img{width:100%;height:200px;object-fit:cover;display:block;}
.gallery-info{padding:16px;}
.gallery-info h3{color:#4a3220;margin-bottom:6px;font-size:16px;}
.gallery-info p{color:#777;font-size:13px;}

/* ── FOOTER ─────────────────────────────────────────────────────── */
.site-footer{
  position:relative;
  color:#cbb99a;
  padding:22px;
  border-radius:0 0 10px 10px;
  text-align:center;
  margin-top:24px;
  font-size:13px;
  overflow:hidden;
  z-index:0;
}
.site-footer::before{
  content:'';
  position:absolute;
  top:0; left:0; right:0; bottom:0;
  background-color:#2b1c10;
  background-image:
    linear-gradient(180deg, rgba(20,12,6,.65) 0%, rgba(20,12,6,.8) 100%),
    url('uploads/wood-bg.jpg');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  z-index:-1;
}
.site-footer a{color:#e4c896;text-decoration:none;font-weight:600;}
.site-footer a:hover{text-decoration:underline;}

/* ── ADMIN (unveraendert vom Original-CMS) ─────────────────────── */
.admin-header{background:linear-gradient(135deg,#4a3220 0%,#6b4a30 100%);color:#fff;padding:30px;border-radius:12px;margin-bottom:30px;box-shadow:0 5px 20px rgba(0,0,0,.2);}
.admin-header h1{margin-bottom:10px;}
.admin-nav{background:#fff;padding:20px;border-radius:12px;margin-bottom:30px;box-shadow:0 5px 15px rgba(0,0,0,.1);}
.admin-nav a{color:#4a3220;text-decoration:none;margin-right:20px;padding:10px 20px;border-radius:8px;display:inline-block;font-weight:600;transition:all .3s;border:2px solid transparent;}
.admin-nav a:hover,.admin-nav a.active{background:#f5ede0;border-color:#4a3220;}
.box{background:#fff;padding:30px;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.1);margin-bottom:30px;}
.box h2{color:#4a3220;margin-bottom:20px;font-size:24px;}
.form-group{margin-bottom:20px;}
.form-group label{display:block;color:#4a3220;font-weight:600;margin-bottom:8px;font-size:14px;}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px;border:2px solid #e5ddd0;border-radius:8px;font-size:14px;font-family:inherit;}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#6b4a30;box-shadow:0 0 0 3px rgba(107,74,48,.1);}
.form-group textarea{min-height:150px;resize:vertical;}
.rsv-input{width:100%;padding:11px;border:1.5px solid #d8cdb8;border-radius:6px;font-size:15px;font-family:inherit;background:#fff}
.rsv-input:focus{outline:none;border-color:#6b4a30;box-shadow:0 0 0 3px rgba(107,74,48,.12)}
button,.btn{padding:12px 24px;background:linear-gradient(135deg,#4a3220 0%,#6b4a30 100%);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;display:inline-block;text-decoration:none;}
button:hover,.btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgba(74,50,32,.3);}
.btn-small{padding:6px 12px;font-size:12px;margin:0 3px;}
.btn-del{background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);}
.btn-del:hover{box-shadow:0 5px 15px rgba(220,38,38,.3);}
table{width:100%;border-collapse:collapse;margin:20px 0;}
table th{background:linear-gradient(135deg,#4a3220 0%,#6b4a30 100%);color:#fff;padding:12px;text-align:left;font-size:14px;}
table td{padding:12px;border-bottom:1px solid #e5ddd0;}
table tr:hover{background:#faf8f5;}
.badge-on{background:#e8f5e9;color:#2e7d32;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;}
.badge-off{background:#ffebee;color:#c62828;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;}
.success{background:#e8f5e9;color:#2e7d32;padding:15px;border-radius:8px;margin-bottom:20px;border-left:4px solid #2e7d32;}
.error{background:#ffebee;color:#c62828;padding:15px;border-radius:8px;margin-bottom:20px;border-left:4px solid #c62828;}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin:30px 0;}
.stat-card{background:#fff;padding:30px;border-radius:12px;text-align:center;box-shadow:0 5px 15px rgba(0,0,0,.1);border-top:4px solid #4a3220;}
.stat-card .stat-num{font-size:32px;font-weight:700;color:#4a3220;margin-bottom:10px;}
.stat-card .stat-label{color:#64748b;font-size:14px;font-weight:600;}
.empty{text-align:center;padding:60px 20px;color:#94a3b8;font-size:16px;}

@media(max-width:768px){
  .site-wrap{padding:10px;}
  .site-header{padding:18px 18px 14px;height:auto;min-height:0;overflow:visible;}
  .site-title{font-size:22px;}
  .content-box,.box{padding:20px;}
  .gallery-grid{grid-template-columns:1fr;}
  .admin-nav a{display:block;margin:5px 0;}
  table{font-size:12px;}
  table th,table td{padding:8px;}
}
