*{box-sizing:border-box} body{margin:0;background:#eaf1f8;color:#0f1f35;font-family:Arial,Helvetica,sans-serif;line-height:1.55} a{color:#0b4d86} .site-shell{width:min(1320px,calc(100% - 28px));margin:20px auto 34px;background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 22px 65px rgba(24,42,70,.14);border:1px solid rgba(255,255,255,.8)}.hero{min-height:340px;background:linear-gradient(90deg,rgba(4,22,48,.88),rgba(4,22,48,.42)),url('../img/banner-armin.jpg') center/cover no-repeat;display:flex;align-items:center;padding:44px 58px;color:#fff}.hero-text{max-width:720px}.eyebrow{display:inline-flex;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:7px 13px;font-weight:800;margin-bottom:12px}.hero h1{font-size:54px;line-height:1.02;margin:0 0 12px;text-shadow:0 3px 18px rgba(0,0,0,.3)}.hero p{font-size:28px;margin:0;font-weight:700;text-shadow:0 3px 14px rgba(0,0,0,.24)}.main-nav{display:flex;gap:8px;flex-wrap:wrap;padding:14px 28px;background:#fff;border-bottom:1px solid #e2e8f0}.main-nav a{text-decoration:none;color:#0f2b4d;font-weight:900;border-radius:999px;padding:10px 15px}.main-nav a:hover,.main-nav a.active{background:#0b4d86;color:#fff}.main-nav .admin-link{margin-left:auto;background:#f4f7fb;border:1px solid #dbe4ef}.notice{margin:22px 36px 0;border-left:6px solid #0b4d86;background:#eef6ff;border-radius:14px;padding:14px 18px;font-weight:800;color:#15385f}.content{padding:34px 42px 42px}.content h2{font-size:38px;line-height:1.15;margin:0 0 14px;color:#102a4c}.content h3{font-size:24px;margin:0 0 9px;color:#123b68}.lead{font-size:20px;color:#40516b}.kicker{display:inline-flex;background:#fff7e2;color:#7b560d;border:1px solid #ecd496;border-radius:999px;padding:7px 13px;font-weight:900;margin-bottom:14px}.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:center;margin-bottom:30px}.rounded-image,.content-photo{width:100%;border-radius:24px;box-shadow:0 18px 42px rgba(15,35,60,.13);border:1px solid #e4ebf3}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.btn{display:inline-flex;text-decoration:none;background:#0b4d86;color:#fff!important;border-radius:999px;padding:12px 20px;font-weight:900}.btn.light{background:#fff;color:#0b4d86!important;border:1px solid #ccd9e8}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0}.card-grid article,.text-card,.contact-box{background:#f8fbff;border:1px solid #dce7f3;border-radius:22px;padding:24px;box-shadow:0 10px 28px rgba(15,35,60,.055)}.image-strip{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0}.image-strip img{width:100%;height:340px;object-fit:cover;border-radius:24px;box-shadow:0 14px 34px rgba(15,35,60,.11)}.image-strip.gallery{grid-template-columns:repeat(3,1fr)}.image-strip.gallery img{height:280px}.contact-box a{font-weight:900}.footer{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:22px 36px;background:#0b2440;color:#dbeafe}.footer a{color:#fff;font-weight:900}@media(max-width:860px){.site-shell{width:100%;margin:0;border-radius:0}.hero{min-height:280px;padding:32px 24px}.hero h1{font-size:36px}.hero p{font-size:22px}.main-nav .admin-link{margin-left:0}.content{padding:24px 18px}.intro-grid,.card-grid,.image-strip,.image-strip.gallery{grid-template-columns:1fr}.image-strip img,.image-strip.gallery img{height:260px}.notice{margin:18px 18px 0}.footer{padding:20px}}


/* =========================================================
   Banner-Helligkeit Fix
   Entfernt den dunklen Schleier aus dem Header-Banner.
   Die Lesbarkeit bleibt über eine kleine Textbox erhalten,
   nicht über Abdunkelung des gesamten Bildes.
   ========================================================= */
.hero{
  background-image:url('../img/banner-armin.jpg') !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  background-color:#dff3ff !important;
}

.hero-text{
  background:rgba(5,31,58,.22);
  border:1px solid rgba(255,255,255,.28);
  border-radius:22px;
  padding:20px 24px;
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
  box-shadow:0 14px 34px rgba(0,0,0,.10);
}

.hero h1,
.hero p,
.eyebrow{
  text-shadow:0 2px 10px rgba(0,0,0,.28);
}

@media(max-width:860px){
  .hero{
    background-position:62% center !important;
  }
  .hero-text{
    padding:16px 18px;
    border-radius:18px;
  }
}


/* =========================================================
   Finale Banner-Feineinstellung
   - Schriftrahmen fast unsichtbar / sehr transparent
   - weisse Schrift mit feiner dunkler Kontur
   ========================================================= */
.hero-text{
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  box-shadow:none !important;
}

.eyebrow{
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.14) !important;
}

.hero h1,
.hero p,
.eyebrow{
  text-shadow:
    -1px -1px 0 rgba(0,0,0,.32),
     1px -1px 0 rgba(0,0,0,.32),
    -1px  1px 0 rgba(0,0,0,.32),
     1px  1px 0 rgba(0,0,0,.32),
     0    2px 8px rgba(0,0,0,.14) !important;
}


/* Besucherzähler */
.visitor-counter{
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
  padding:18px 28px;
  background:#f6f9fd;
  border-top:1px solid #dbe4ef;
}
.visitor-counter span{
  min-width:112px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid #dbe4ef;
  border-radius:18px;
  padding:10px 14px;
  box-shadow:0 8px 22px rgba(15,35,60,.055);
}
.visitor-counter b{
  font-size:22px;
  line-height:1;
  color:#0b4d86;
}
.visitor-counter em{
  font-style:normal;
  font-size:12px;
  font-weight:900;
  color:#53647c;
  text-transform:uppercase;
  letter-spacing:.04em;
  margin-top:5px;
}

@media(max-width:860px){
  .visitor-counter{
    padding:14px 12px;
    gap:8px;
  }
  .visitor-counter span{
    min-width:86px;
    padding:9px 10px;
    border-radius:14px;
  }
  .visitor-counter b{
    font-size:19px;
  }
}
