
:root{
  --kc-navy:#0B2B4C;
  --kc-navy-600:#153E67;
  --kc-navy-50:#F3F6FA;
  --kc-gold:#C9A227;
  --kc-gold-600:#A7871F;
  --kc-ink:#0F172A;
  --kc-muted:#525F7A;
  --kc-white:#FFFFFF;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, 'Helvetica Neue', Arial, 'Apple Color Emoji','Segoe UI Emoji';
  color:var(--kc-ink);
  background:#fff;
  line-height:1.65;
}
header, footer{background:var(--kc-navy); color:#fff}
.header-inner, .container{max-width:1100px; margin:0 auto; padding:1rem}
.navbar{display:flex; align-items:center; justify-content:space-between; gap:1rem}
.logo{display:flex; align-items:center; gap:.75rem; text-decoration:none; color:#fff}
.logo img{height:40px; width:auto}
nav a{color:#fff; text-decoration:none; margin:0 .5rem; padding:.25rem .5rem; border-radius:.5rem}
nav a:focus, nav a:hover{outline:2px solid var(--kc-gold); outline-offset:2px; background:rgba(255,255,255,.1)}
.lang-toggle{display:flex; gap:.25rem; align-items:center}
.lang-toggle button{
  background:transparent; border:1px solid var(--kc-gold); color:#fff; border-radius:.5rem; padding:.25rem .5rem; cursor:pointer
}
.lang-toggle button.active{background:var(--kc-gold); color:#000}
.hero{background:linear-gradient(180deg,var(--kc-navy-50),#fff); padding:4rem 1rem}
.hero .inner{max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1.2fr 1fr; gap:2rem}
.hero h1{font-size:clamp(2rem,4vw,3rem); margin:.25rem 0}
.subtitle{color:var(--kc-muted); font-size:1.1rem}
.ctas{display:flex; gap:.75rem; margin-top:1rem; flex-wrap:wrap}
.btn{display:inline-block; padding:.75rem 1rem; border-radius:.75rem; text-decoration:none; font-weight:600}
.btn-primary{background:var(--kc-navy); color:#fff; border:1.5px solid var(--kc-navy)}
.btn-primary:hover{border-color:var(--kc-gold)}
.btn-secondary{background:transparent; color:var(--kc-navy); border:1.5px solid var(--kc-navy)}
.btn-secondary:hover{border-color:var(--kc-gold)}
.grid{display:grid; gap:1rem}
.grid.cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:#fff; border:1px solid #eaeef3; border-radius:1rem; padding:1rem; box-shadow:0 4px 18px rgba(11,43,76,.06); transition: transform .2s ease, box-shadow .2s ease}
.card:hover{transform:translateY(-2px); box-shadow:0 8px 24px rgba(11,43,76,.10)}
.section{padding:3rem 1rem}
.section.alt{background:var(--kc-navy-50)}
h2{font-size:clamp(1.5rem,3vw,2rem); margin:.25rem 0 1rem}
footer .container{display:flex; flex-wrap:wrap; gap:1rem; align-items:center; justify-content:space-between}
footer a{color:#fff; text-decoration:none}
.small{font-size:.9rem; opacity:.9}
.notice{background:#fff7e6; border:1px solid #ffe1a6; color:#7a5a00; padding:.75rem; border-radius:.5rem}
fieldset{border:none; padding:0; margin:0}
label{display:block; margin:.5rem 0 .25rem}
input, textarea{width:100%; padding:.65rem .75rem; border:1px solid #d7dde6; border-radius:.5rem}
input:focus, textarea:focus{outline:2px solid var(--kc-gold)}
form .row{display:grid; gap:1rem; grid-template-columns:1fr 1fr}
@media (max-width:800px){ .hero .inner{grid-template-columns:1fr} form .row{grid-template-columns:1fr} }
.starfield{background-image: radial-gradient(1px 1px at 10% 20%, rgba(11,43,76,.25) 50%, transparent 51%), radial-gradient(1px 1px at 30% 80%, rgba(11,43,76,.18) 50%, transparent 51%), radial-gradient(1px 1px at 70% 30%, rgba(11,43,76,.2) 50%, transparent 51%); background-size: 600px 600px, 500px 500px, 700px 700px; background-repeat: repeat; }
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:static;width:auto;height:auto;background:#fff;color:#000;padding:.5rem;z-index:1000}

/* === Hero Section mit Hintergrundbild === */
.hero {
  background-image: url('../img/hero-background.png'); /* Pfad zum Bild */
  background-size: cover; /* Bild füllt den gesamten Bereich */
  background-position: center; /* Bild wird zentriert */
  background-repeat: no-repeat; /* Bild wird nicht wiederholt */
  
  padding: 6rem 1rem; /* Mehr Innenabstand, damit das Bild sichtbar ist */
  border-radius: 1rem; /* Abgerundete Ecken, passend zum Design */
  margin: 1rem; /* Ein kleiner Abstand um die Sektion */
}

/* Textfarbe und Lesbarkeit im Hero-Bereich anpassen */
.hero h1, 
.hero p {
  color: #ffffff; /* Textfarbe auf Weiß ändern */
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5); /* Textschatten für bessere Lesbarkeit */
  text-align: center; /* Text zentrieren */
  max-width: 800px; /* Maximale Breite für den Text, damit er nicht zu lang wird */
  margin-left: auto;
  margin-right: auto;
}

/* Buttons im Hero-Bereich anpassen */
.hero .button-group {
    justify-content: center; /* Zentriert die Buttons */
}
