/* =========================
   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
}
img{max-width:100%;display:block}
a{color:inherit}
.container{width:98%;max-width:1200px;margin:0 auto;padding:0 20px}

/* =========================
   HEADER + NAV (Burger Panel)
========================= */
.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}

/* Burger 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 */
.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)
}

/* Menü Liste */
.nav-list{list-style:none;margin:0;padding:.25rem .75rem;display:flex;flex-direction:column}
.nav-item{position:relative}
.nav-link{
  display:block;padding:.9rem .5rem;text-decoration:none;color:#333;
  font-weight:800;background:transparent
}
.nav-link:hover,.nav-link:focus{color:#007BFF}

/* Submenu */
.submenu{display:none;margin:0;padding:.25rem 0;list-style:none}
.nav-item.open>.submenu{display:block}
.submenu .nav-link{padding:.6rem .5rem;padding-left:1.25rem}

/* Wenn du das Submenü (Standorte) über CSS öffnen willst:
   -> kannst du mit .nav-has-submenu:hover .submenu arbeiten (für Desktop),
   aber bei Burger ist JS meist besser. */
@media (max-width:768px){
  .logo{max-height:60px}
}

/* =========================
   HERO KARRIERE
========================= */
.hero-karriere{
  position:relative;
  min-height:70vh;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:70px 20px;
  color:#fff;
  overflow:hidden;
  /* Fallback Hintergrund, wenn kein Bild gesetzt wird */
  background:
    linear-gradient(rgba(0,0,0,.55), rgba(0,0,0,.55)),
    url("../img/herokarriere.jpg") center/cover no-repeat;
}

.hero-karriere .hero-content{
  max-width:900px;
  z-index:2;
}
.hero-karriere h1{
  font-size:clamp(2rem, 4vw, 3.1rem);
  font-weight:800;
  margin-bottom:14px;
  text-shadow:2px 2px 10px rgba(0,0,0,.45);
}
.hero-karriere p{
  font-size:clamp(1.05rem, 2vw, 1.3rem);
  margin-bottom:26px;
  opacity:.95;
  text-shadow:1px 1px 8px rgba(0,0,0,.35);
}

/* Button Style (du nutzt btn-hero bereits) */
.btn-hero{
  display:inline-block;
  background:#c8102e;
  color:#fff;
  padding:14px 28px;
  font-size:1.05rem;
  font-weight:800;
  border-radius:12px;
  text-decoration:none;
  transition:transform .15s ease, opacity .2s ease;
  box-shadow:0 12px 24px rgba(0,0,0,.25);
}
.btn-hero:hover{transform:translateY(-2px);opacity:.95}

/* =========================
   KARRIERE SECTION (Wrapper)
========================= */
.karriere-section{
  padding:70px 0;
  background:#f9f9f9;
}
.karriere-section h2{
  font-size:clamp(1.6rem, 2.6vw, 2.2rem);
  margin-bottom:14px;
  color:#111;
  text-align:center;
}
.intro-text{
  max-width:900px;
  margin:0 auto 28px;
  color:#444;
  text-align:center;
  font-size:1.05rem;
}

/* =========================
   INTRO + AUSBILDUNG Blöcke
========================= */
.karriere-intro .container,
.karriere-ausbildung .container{
  background:#fff;
  border:1px solid #ececec;
  border-radius:18px;
  padding:26px;
  box-shadow:0 1px 3px rgba(2,8,23,.08);
  margin:18px auto;
}

.karriere-intro h2,
.karriere-ausbildung h2{
  text-align:left;
  margin-bottom:10px;
  color:#003366;
  font-size:1.35rem;
}
.karriere-intro p,
.karriere-ausbildung p{
  color:#333;
  margin-bottom:12px;
}

/* Ausbildung Boxen Grid */
.karriere-boxen{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));
  gap:16px;
  margin-top:18px;
}
.karriere-box{
  background:#f8fafc;
  border:1px solid #e8eef6;
  border-radius:16px;
  padding:18px;
  box-shadow:0 1px 2px rgba(2,8,23,.06);
  transition:transform .15s ease, box-shadow .2s ease;
}
.karriere-box:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 24px rgba(2,8,23,.10);
}
.karriere-box h3{
  margin-bottom:8px;
  font-size:1.05rem;
  color:#111;
}
.karriere-box p{color:#445;}

/* =========================
   BLOG SECTION
========================= */
.blog-section{padding:20px 0 0}
.blog-post{
  max-width:980px;
  margin:30px auto 0;
  padding:24px;
  background:#fff;
  border:1px solid #ececec;
  border-radius:18px;
  box-shadow:0 1px 3px rgba(2,8,23,.08);
}
.blog-post h3{
  font-size:1.35rem;
  margin-bottom:12px;
  color:#003366;
}
.blog-post p{
  margin-bottom:10px;
  color:#333;
}

/* =========================
   JOBS LISTE
========================= */
.karriere-jobs{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
  gap:16px;
  margin:26px 0 26px;
}

.karriere-job{
  background:#fff;
  border:1px solid #ececec;
  border-radius:18px;
  padding:18px;
  box-shadow:0 1px 2px rgba(2,8,23,.06);
  transition:transform .15s ease, box-shadow .2s ease, border-color .2s ease;
}
.karriere-job:hover{
  transform:translateY(-2px);
  border-color:#ddd;
  box-shadow:0 12px 24px rgba(2,8,23,.10);
}
.karriere-job h3{
  font-size:1.15rem;
  margin-bottom:8px;
  color:#111;
}
.karriere-job p{color:#444;margin-bottom:8px}
.karriere-job p strong{color:#111}

/* Zweiter Bewerben Button etwas Abstand */
.karriere-section .btn-hero{
  margin-top:18px;
}

/* =========================
   FOOTER
========================= */
.site-footer{
  background:#003366;
  color:#fff;
  padding:3rem 1rem 2rem;
  margin-top:60px;
}
.footer-flex{
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:2rem;
  max-width:1200px;
  margin:0 auto;
}
.footer-info,.footer-kontakt,.footer-links{flex:1 1 250px}
.footer-logo{max-width:120px;margin-bottom:10px}
.footer-kontakt a,.footer-links a{
  color:#fff;text-decoration:none;display:block;margin:.3rem 0;transition:color .2s
}
.footer-kontakt a:hover,.footer-links a:hover{color:#aad4ff;text-decoration:underline}
footer .copyright{
  border-top:1px solid rgba(255,255,255,.2);
  margin-top:2.5rem;padding-top:1rem;text-align:center;font-size:.9rem;color:#ddd
}

/* =========================
   RESPONSIVE FEINSCHLIFF
========================= */
@media (max-width:768px){
  .hero-karriere{min-height:60vh;padding:60px 16px}
  .karriere-intro .container,
  .karriere-ausbildung .container{padding:18px}
  .blog-post{padding:18px}
}
.submenu{display:none;margin:0;padding:.25rem 0;list-style:none}
.nav-item.open > .submenu{display:block}
.submenu .nav-link{padding:.6rem .5rem;padding-left:1.25rem}
