/* ===== RESET & BASIS ===== */
*{box-sizing:border-box;margin:0;padding:0}
html,body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#222;background:#f9f9f9;line-height:1.6}

/* ===== CONTAINER ===== */
.container{width:98%;max-width:1400px;margin:0 auto;padding:0 20px}

/* ===== HEADER + NAV (immer Hamburger) ===== */
.site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid #eee}
.header-flex{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;position:relative}
.logo{max-height:80px;height:auto;display:block}

/* Hamburger immer sichtbar */
.menu-toggle{
  display:inline-flex!important;align-items:center;justify-content:center;
  width:44px;height:44px;font-size:22px;border:0;background:transparent;cursor:pointer;color:#333
}

/* Panel-Navigation (standardmäßig zu) */
.main-nav{display:none}
.main-nav.show{
  display:block;position:absolute;top:100%;left:0;right:0;background:#fff;z-index:1000;
  border-top:1px solid rgba(0,0,0,.06);box-shadow:0 12px 24px rgba(0,0,0,.08)
}

/* Vertikale Liste im Panel */
.nav-list{list-style:none;margin:0;padding:.25rem .75rem;display:flex;flex-direction:column;gap:0}
.nav-item{position:relative}
.nav-link{display:block;padding:.9rem .5rem;text-decoration:none;color:#333;font-weight:600;background:transparent}

/* Hover wie bei deinen Links: Farbwechsel, kein grauer Kasten */
.site-header nav a:hover,.nav-link:hover,.nav-link:focus{color:#007BFF;background:transparent}

/* Submenü – optisch wie normale Links; nur Einrückung */
.submenu{display:none;margin:0;padding:.25rem 0;list-style:none}
.nav-item.open>.submenu{display:block}
.submenu .nav-link{display:block;padding:.6rem .5rem;padding-left:1.25rem}

/* Panel-Layout im aufgeklappten Zustand */
.main-nav.show .nav-list{flex-direction:column;align-items:stretch;gap:0}
.main-nav.show .nav-item{width:100%}
.main-nav.show .nav-link{padding:.9rem 0;width:100%;justify-content:space-between}


/* ===== IMPRESSUM-SEKTION ===== */
.impressum-section{
  background:#fff;
  box-shadow:0 0 10px rgba(0,0,0,.05);
  border-radius:8px;
  margin-top:2rem;
}
.impressum-section .container{
  padding:2rem 1.25rem;
}
.impressum-section h1{
  font-size:2rem;
  margin-bottom:1.5rem;
  color:#1e1e1e;
  border-bottom:2px solid #c8102e;
  padding-bottom:.4rem;
}
.impressum-section h2{
  font-size:1.3rem;
  margin-top:2rem;
  margin-bottom:.8rem;
  color:#c8102e;
}
.impressum-section p{margin-bottom:1rem;color:#222}
.impressum-section a{
  color:#c8102e;
  text-decoration:underline;
}
.impressum-section a:hover{
  text-decoration:none;
  color:#a20c21;
}

/* Info-Kästchen (optional) */
.impressum-note{
  background:#fff4f4;
  border-left:4px solid #c8102e;
  border-radius:6px;
  padding:1rem 1.25rem;
  margin:1.25rem 0;
  color:#5c0a12;
}

/* ===== LINKS (global) ===== */
a{color:#c8102e}
a:hover{color:#a20c21}

/* ===== FOOTER ===== */
.site-footer{
  background:#fff;
  color:#555;
  border-top:1px solid #e0e0e0;
  padding:40px 20px 20px;
  margin-top:60px;
}
.footer-flex{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:30px;
  max-width:1200px;
  margin:0 auto;
}
.footer-info,.footer-kontakt,.footer-links{flex:1 1 200px}
.footer-logo{max-width:120px;margin-bottom:10px;display:block}
.site-footer a{
  color:#666;
  text-decoration:none;
}
.site-footer a:hover{
  color:#c8102e;
  text-decoration:underline;
}
.copyright{
  text-align:center;
  margin-top:30px;
  font-size:.9rem;
  color:#888;
}

/* ===== RESPONSIVE ===== */
@media (max-width:768px){
  .footer-flex{flex-direction:column;gap:1.5rem}
  .footer-info,.footer-kontakt,.footer-links{flex:1 1 100%}
}
