
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Segoe UI',system-ui,-apple-system,'Helvetica Neue',Arial,sans-serif;
color:#14323d;background:#fff;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:#12708f;text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{line-height:1.18;letter-spacing:-.02em;margin:0 0 .5em;color:#0d3c4d;font-weight:700}
h1{font-size:clamp(2rem,4.4vw,3.25rem)}
h2{font-size:clamp(1.55rem,2.9vw,2.3rem)}
h3{font-size:clamp(1.1rem,1.6vw,1.3rem)}
p{margin:0 0 1.1em}
.wrap{width:min(1180px,92vw);margin:0 auto}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Topbar */
.topbar{background:#0d3c4d;color:#cfe6ee;font-size:.86rem}
.topbar .wrap{display:flex;flex-wrap:wrap;gap:.4rem 1.5rem;justify-content:space-between;
align-items:center;padding:.5rem 0}
.topbar a{color:#fff}
.topbar .tset{display:flex;flex-wrap:wrap;gap:.4rem 1.25rem}

/* Header */
.hdr{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);
backdrop-filter:blur(8px);border-bottom:1px solid #e3edf1}
.hdr .wrap{display:flex;align-items:center;gap:1.2rem;padding:.7rem 0}
.logo{display:flex;align-items:center;gap:.7rem;font-weight:700;color:#0d3c4d;
font-size:1.05rem;letter-spacing:-.01em}
.logo:hover{text-decoration:none}
.logo img{width:54px;height:auto}
.logo span small{display:block;font-weight:500;font-size:.72rem;color:#5d7c88;letter-spacing:.02em}
nav.main{margin-left:auto}
nav.main ul{display:flex;gap:.2rem;list-style:none;margin:0;padding:0}
nav.main a{display:block;padding:.55rem .8rem;border-radius:8px;color:#26505f;font-weight:600;font-size:.95rem}
nav.main a:hover{background:#eaf5f9;color:#12708f;text-decoration:none}
nav.main a[aria-current]{color:#158db2;background:#eaf5f9}
.btn{display:inline-block;padding:.8rem 1.4rem;border-radius:999px;font-weight:700;
background:#158db2;color:#fff;border:2px solid #158db2;cursor:pointer;font-size:1rem}
.btn:hover{background:#0d7091;border-color:#0d7091;text-decoration:none}
.btn.ghost{background:transparent;color:#0d3c4d;border-color:#b9d7e2}
.btn.ghost:hover{background:#eaf5f9;color:#0d3c4d}
.btn.light{background:#fff;color:#0d3c4d;border-color:#fff}
.btn.sm{padding:.55rem 1.05rem;font-size:.92rem}
.hdr .btn{white-space:nowrap}
.burger{display:none;margin-left:auto;background:none;border:1px solid #cfe1e8;border-radius:9px;
padding:.5rem .7rem;font-size:1.2rem;line-height:1;color:#0d3c4d}

/* Hero */
.hero{background:linear-gradient(170deg,#eaf5f9 0%,#f7fbfc 60%,#fff 100%);padding:3.4rem 0 2.6rem;
border-bottom:1px solid #e8f1f5}
.hero .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:2.6rem;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:.5rem;background:#fff;border:1px solid #cfe6ee;
color:#12708f;font-weight:600;font-size:.83rem;padding:.35rem .85rem;border-radius:999px;margin-bottom:1rem}
.lead{font-size:1.13rem;color:#39616f;max-width:36em}
.hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}
.heroimg{border-radius:18px;overflow:hidden;box-shadow:0 24px 50px -28px rgba(13,60,77,.55)}
.heroimg img{width:100%;height:100%;object-fit:cover;min-height:270px}

/* Trust */
.trust{border-bottom:1px solid #eef4f7;background:#fff}
.trust ul{list-style:none;margin:0;padding:1.6rem 0;display:grid;
grid-template-columns:repeat(4,1fr);gap:1.2rem}
.trust li{display:flex;gap:.7rem;align-items:flex-start;font-size:.95rem;color:#39616f}
.trust b{display:block;color:#0d3c4d}
.tick{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:#e2f2f7;color:#12708f;
display:grid;place-items:center;font-size:.75rem;margin-top:.2rem}

section{padding:3.6rem 0}
section.alt{background:#f5f9fb}
.shead{max-width:44em;margin-bottom:2.1rem}
.shead p{color:#4a6f7c;margin:0}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.card{background:#fff;border:1px solid #e5eef2;border-radius:16px;overflow:hidden;
display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 18px 34px -24px rgba(13,60,77,.55)}
.card img{aspect-ratio:4/3;object-fit:cover;width:100%}
.card .body{padding:1.2rem 1.3rem 1.4rem}
.card h3{margin-bottom:.4rem}
.card p{font-size:.95rem;color:#4a6f7c;margin-bottom:.9rem}
.more{font-weight:600;font-size:.93rem}

.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;counter-reset:s}
.step{background:#fff;border:1px solid #e5eef2;border-radius:16px;padding:1.5rem}
.step::before{counter-increment:s;content:counter(s);display:grid;place-items:center;
width:38px;height:38px;border-radius:11px;background:#0d3c4d;color:#fff;font-weight:700;margin-bottom:.9rem}
.step p{margin:0;color:#4a6f7c;font-size:.96rem}

.split{display:grid;grid-template-columns:1fr 1fr;gap:2.4rem;align-items:start}
.regbox{background:#fff;border:1px solid #e5eef2;border-radius:16px;padding:1.6rem}
.regbox h3{margin-bottom:.3rem}
.regbox .sub{color:#6b8e9b;font-size:.9rem;margin-bottom:.9rem}
.chips{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0}
.chips li a,.chips li span{display:block;background:#f0f7fa;border:1px solid #dceaf0;color:#26505f;
padding:.32rem .7rem;border-radius:999px;font-size:.87rem}
.chips li a:hover{background:#158db2;color:#fff;border-color:#158db2;text-decoration:none}

.prose{max-width:44em}
.prose ul{padding-left:1.15rem;color:#39616f}
.prose li{margin-bottom:.45rem}
.prose h2{margin-top:2rem}
.prose h3{margin-top:1.5rem}

.cols2{columns:2;column-gap:2.5rem;list-style:none;padding:0;margin:0}
.cols2 li{break-inside:avoid;padding:.4rem 0;border-bottom:1px solid #e5eef2;color:#39616f}

.callout{background:#0d3c4d;color:#e4f1f6;border-radius:20px;padding:2.4rem;
display:flex;flex-wrap:wrap;gap:1.5rem;align-items:center;justify-content:space-between}
.callout h2{color:#fff;margin:0 0 .3rem}
.callout p{margin:0;color:#b8d6e1}

.postlist{display:grid;gap:1.1rem}
.post{border:1px solid #e5eef2;border-radius:14px;padding:1.3rem 1.4rem;background:#fff}
.post .meta{font-size:.83rem;color:#7796a2;margin-bottom:.35rem}
.post h3{margin-bottom:.35rem}
.post p{margin:0;color:#4a6f7c;font-size:.96rem}

/* Kontakt */
.kgrid{display:grid;grid-template-columns:1fr 1fr;gap:2.4rem;align-items:start}
.infobox{background:#f5f9fb;border:1px solid #e5eef2;border-radius:16px;padding:1.6rem}
.infobox dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.55rem 1rem;font-size:.98rem}
.infobox dt{color:#6b8e9b}
.infobox dd{margin:0;font-weight:600;color:#0d3c4d}
form.cf{display:grid;gap:.9rem}
form.cf label{font-weight:600;font-size:.92rem;color:#26505f;display:grid;gap:.35rem}
form.cf input,form.cf textarea{font:inherit;padding:.7rem .85rem;border:1px solid #cfe1e8;
border-radius:10px;background:#fff;color:#14323d;width:100%}
form.cf input:focus,form.cf textarea:focus{outline:2px solid #158db2;outline-offset:1px;border-color:#158db2}
form.cf textarea{min-height:150px;resize:vertical}
.hp{position:absolute;left:-9999px}
.formnote{font-size:.83rem;color:#6b8e9b}
.msg{padding:.8rem 1rem;border-radius:10px;font-size:.94rem;display:none}
.msg.ok{background:#e6f6ec;color:#1d6b3c;display:block}
.msg.err{background:#fdecec;color:#a32626;display:block}

/* Footer */
footer{background:#0d3c4d;color:#b8d6e1;padding:3rem 0 1.5rem;margin-top:0;font-size:.95rem}
footer h4{color:#fff;font-size:1rem;margin:0 0 .8rem}
footer a{color:#d8ecf3}
footer .fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem}
footer ul{list-style:none;margin:0;padding:0}
footer li{margin-bottom:.4rem}
.fbottom{border-top:1px solid #1d5568;margin-top:2.2rem;padding-top:1.2rem;
display:flex;flex-wrap:wrap;gap:.6rem 1.5rem;justify-content:space-between;font-size:.86rem;color:#8ab6c6}

/* Cookie */
#cb{position:fixed;left:50%;transform:translateX(-50%);bottom:16px;z-index:120;width:min(680px,94vw);
background:#fff;border:1px solid #d9e7ed;border-radius:14px;padding:1rem 1.2rem;
box-shadow:0 20px 45px -20px rgba(13,60,77,.5);display:none;gap:1rem;align-items:center;flex-wrap:wrap}
#cb p{margin:0;font-size:.9rem;color:#39616f;flex:1 1 320px}

@media(max-width:960px){
  .hero .grid,.split,.kgrid{grid-template-columns:1fr}
  .cards,.steps{grid-template-columns:repeat(2,1fr)}
  .trust ul{grid-template-columns:repeat(2,1fr)}
  footer .fgrid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .burger{display:block}
  nav.main{position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid #e3edf1;
  padding:.6rem 4vw 1rem;display:none;box-shadow:0 18px 30px -22px rgba(13,60,77,.6)}
  nav.main.open{display:block}
  nav.main ul{flex-direction:column;gap:.1rem}
  nav.main a{padding:.75rem .6rem}
  .hdr .btn{display:none}
  .cards,.steps{grid-template-columns:1fr}
  .cols2{columns:1}
  .callout{padding:1.6rem}
  footer .fgrid{grid-template-columns:1fr}
  .topbar .tset.left{display:none}
}
