:root{
  --blue:#1E3A5F;
  --red:#D52B1E;
  --text:#0F172A;
  --muted:#475569;
  --bg:#FFFFFF;
  --panel:#F4F6F8;
  --border:#E5E7EB;
  --radius:14px;
  --max:1040px;
}

*{box-sizing:border-box}

html,body{
margin:0;
padding:0;
font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
color:var(--text);
background:var(--bg);
}

a{color:inherit;text-decoration:none}

.container{
max-width:var(--max);
margin:0 auto;
padding:0 20px
}

.nav{
position:sticky;
top:0;
z-index:20;
background:rgba(255,255,255,.92);
backdrop-filter:saturate(180%) blur(8px);
border-bottom:1px solid var(--border);
}

.nav-inner{
display:flex;
align-items:center;
justify-content:space-between;
gap:18px;
padding:14px 0
}

.brand{
display:flex;
align-items:center;
gap:12px
}

.brand img{
height:34px
}

.brand strong{
color:var(--blue);
letter-spacing:.5px
}

.links{
display:flex;
gap:14px;
align-items:center;
font-weight:600;
color:var(--blue)
}

.links a{
padding:8px 10px;
border-radius:10px
}

.links a:hover{
background:var(--panel)
}


/* =========================
   BUTTONS (verbessert)
   ========================= */

.btn{
display:inline-flex;
align-items:center;
justify-content:center;

padding:14px 22px;
min-height:52px;

border-radius:12px;

font-weight:800;
font-size:16px;
letter-spacing:.2px;

background:var(--red);
color:white;

box-shadow:0 10px 24px rgba(213,43,30,.18);

transition:all .15s ease;
}

.btn:hover{
transform:translateY(-1px);
box-shadow:0 14px 28px rgba(213,43,30,.22);
}

.btn.secondary{
background:white;
color:var(--blue);
border:1px solid var(--border);
box-shadow:none
}

.btn.secondary:hover{
background:var(--panel);
transform:none;
}


/* =========================
   HERO
   ========================= */

.hero{
padding:54px 0 22px
}

.kicker{
display:inline-flex;
gap:10px;
align-items:center;
padding:8px 12px;
border-radius:999px;
background:var(--panel);
color:var(--blue);
font-weight:700
}

h1{
font-size:44px;
line-height:1.06;
margin:14px 0 12px;
color:var(--blue)
}

.sub{
font-size:18px;
line-height:1.55;
color:var(--muted);
max-width:760px
}

.cta-row{
display:flex;
gap:14px;
flex-wrap:wrap;
margin-top:20px
}


/* =========================
   GRID / CARDS
   ========================= */

.grid{
display:grid;
gap:16px
}

.cards{
grid-template-columns:repeat(3,minmax(0,1fr))
}

.steps{
grid-template-columns:repeat(3,minmax(0,1fr))
}

@media (max-width:900px){

.cards{grid-template-columns:1fr}

.steps{grid-template-columns:1fr}

h1{font-size:36px}

}


.card{
border:1px solid var(--border);
background:white;
border-radius:var(--radius);
padding:18px;
box-shadow:0 10px 26px rgba(15,23,42,.06);
}

.card h3{
margin:4px 0 8px;
color:var(--blue)
}

.card p{
margin:0;
color:var(--muted);
line-height:1.55
}

.section{
padding:26px 0
}

.section.alt{
background:var(--panel);
border-top:1px solid var(--border);
border-bottom:1px solid var(--border)
}

h2{
color:var(--blue);
margin:0 0 10px;
font-size:28px
}

ul{
margin:10px 0 0 18px;
color:var(--muted);
line-height:1.7
}

.step-num{
width:34px;
height:34px;
border-radius:999px;
display:inline-flex;
align-items:center;
justify-content:center;
background:rgba(30,58,95,.1);
color:var(--blue);
font-weight:900;
margin-bottom:10px
}

.footer{
padding:26px 0;
color:var(--muted);
font-size:14px
}

.footer a{
color:var(--blue);
font-weight:700
}

.hr{
height:1px;
background:var(--border);
margin:16px 0
}

.small{
font-size:13px;
color:var(--muted)
}

.notice{
display:flex;
gap:10px;
align-items:flex-start;
padding:14px 16px;
border:1px solid var(--border);
border-radius:var(--radius);
background:white
}

.notice b{
color:var(--blue)
}


/* =========================
   FORMULAR (verbessert)
   ========================= */

form label{
display:block;
font-weight:600;
margin:12px 0 6px;
}

form input,
form select,
form textarea{
width:100%;
padding:12px;
border:1px solid #d9d9d9;
border-radius:10px;
font:inherit;
background:#fff;
box-sizing:border-box;
}

form textarea{
min-height:120px;
}

form input[type="file"]{
padding:10px;
}

form input[type="checkbox"]{
width:auto;
margin-right:8px;
}
