/* Farbpalette */
:root{
--yellow:#f4b400;
--teal:#1496a0;
--orange:#e85c2a;
--text:#1f2a37;
--muted:#5b6b7b;
--bg:#f6f7f9;
--card:#ffffff;
--border:#e5e7eb;
}

/* Grundlayout – breiter & größere Schrift */
html{font-size:19px;}
body{
margin:0; font-family:system-ui, Arial, sans-serif;
color:var(--text); background:var(--bg); line-height:1.7;
}
.container{max-width:1200px; margin:0 auto; padding:20px;}

/* Topbar */
.topbar{background:var(--yellow); color:#fff; padding:14px 0;}
.topbar .container{display:flex; justify-content:space-between; align-items:center;}
.brand{font-size:1.25rem; font-weight:800;}
.brand span{font-weight:800;}
.nav a{color:#fff; margin-left:18px; font-weight:700; text-decoration:none;}
.nav a:hover{text-decoration:underline;}

/* Hero */
.hero{
background:linear-gradient(180deg, var(--yellow), #f7c844);
color:#fff; text-align:center; padding:80px 20px 64px;
border-bottom:1px solid #e2a800;
}
.hero h1{font-size:2.6rem; margin:0 0 10px; line-height:1.15;}
.hero p{font-size:1.05rem; margin:0 0 20px;}
.btn{display:inline-block; background:var(--orange); color:#fff; padding:12px 20px; border-radius:8px; font-weight:800; text-decoration:none;}
.btn.small{padding:8px 12px; font-size:.9rem;}
.btn.big{padding:16px 28px; font-size:1.05rem; box-shadow:0 6px 16px rgba(232,92,42,.25);}
.btn.big:hover{transform:translateY(-1px);}

/* Sektionen */
.section{padding:56px 20px;}
.section.alt{background:#fff;}
h2{color:var(--teal); font-size:1.7rem; margin:0 0 16px; letter-spacing:.2px;}

/* Leistungen */
.services{list-style:none; padding:0; margin:0;}
.services li{
background:var(--card); border:1px solid var(--border);
border-radius:12px; padding:20px; margin-bottom:16px;
}
.services strong{display:block; font-weight:800; margin-bottom:8px;}
.services .topics{color:#2e3541; letter-spacing:.1px;}

/* Karten + Ticks */
.card{background:var(--card); border:1px solid var(--border); border-radius:12px; padding:22px; box-shadow:0 8px 24px rgba(16,24,40,.04);}
.card-cta{margin-top:12px;}
.ticks{list-style:none; padding:0; margin:0;}
.ticks li{margin:10px 0; padding-left:30px; position:relative;}
.ticks li::before{content:"✓"; position:absolute; left:0; top:0; color:var(--teal); font-weight:800;}

/* Kontakt – roter Hinweis */
.contact-highlight{
color:var(--orange); font-size:1.25rem; font-weight:900;
text-transform:uppercase; letter-spacing:.5px;
margin:6px 0 14px; display:inline-block;
border-bottom:3px solid rgba(232,92,42,.25); padding-bottom:4px;
}
#kontakt a{font-weight:700;}

/* Footer */
.footer{background:#fff; border-top:1px solid var(--border); text-align:center; padding:20px; font-size:.9rem; color:var(--muted);}
.footer a{color:var(--teal); text-decoration:none;}
.footer a:hover{text-decoration:underline;}

/* Mobile Sticky CTA */
.cta-sticky{display:none;}
@media (max-width:760px){
html{font-size:18px;}
.hero h1{font-size:1.9rem;}
.cta-sticky{
position:fixed; left:0; right:0; bottom:14px; display:flex; justify-content:center; z-index:50;
}
.cta-sticky .btn{box-shadow:0 8px 20px rgba(232,92,42,.35);}
}