:root{--petrol:#12575D;--petrol-dark:#0d4348;--bg:#fff;--text:#1d2b2c;--soft:#eef5f5;--radius:16px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:17px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}
a{color:var(--petrol)}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}
h1,h2,h3{line-height:1.2}
h2{color:var(--petrol);font-size:1.7rem;margin:0 0 .6em}

/* Hero */
.hero{position:relative;color:#fff;min-height:540px;display:flex;align-items:center;
  background:linear-gradient(100deg,rgba(13,67,72,.94) 0%,rgba(18,87,93,.82) 45%,rgba(18,87,93,.25) 100%),url(img/hero.jpg) center/cover no-repeat}
.hero .wrap{padding-top:40px;padding-bottom:160px}
.hero .logo{height:96px;width:auto;margin:0 0 28px -8px;filter:brightness(0) invert(1)}
.hero h1{font-size:clamp(2rem,5vw,3.2rem);margin:0 0 .3em;max-width:16em}
.hero p{font-size:1.2rem;max-width:30em;margin:0 0 1.6em;opacity:.95}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px}

/* Buttons */
.btn{display:inline-block;background:var(--petrol);color:#fff;text-decoration:none;font-weight:600;padding:14px 28px;border-radius:999px;box-shadow:0 2px 8px rgba(18,87,93,.25);transition:transform .15s,box-shadow .15s,background .15s}
.btn:hover,.btn:focus-visible{background:var(--petrol-dark);transform:translateY(-1px);box-shadow:0 4px 14px rgba(18,87,93,.35)}
.btn-light{background:#fff;color:var(--petrol)}
.btn-light:hover,.btn-light:focus-visible{background:var(--soft)}
.btn-ghost{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.85);box-shadow:none}
.btn-ghost:hover,.btn-ghost:focus-visible{background:rgba(255,255,255,.15)}

/* Sections */
section{padding:64px 0}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin:-90px 0 64px;position:relative;z-index:2}
.card{background:#fff;border-radius:var(--radius);padding:28px;box-shadow:0 8px 30px rgba(18,87,93,.14)}
.card h2{font-size:1.25rem;margin-bottom:.5em}
.card ul{margin:0;padding-left:1.1em}
.card li+li{margin-top:.5em}
.tel{display:block;font-size:1.9rem;font-weight:800;color:var(--petrol);text-decoration:none;margin:.1em 0 .2em}
.small{font-size:.92rem;opacity:.85}

/* Upload-Band */
.upload{background:var(--petrol);color:#fff;text-align:center}
.upload h2{color:#fff}
.upload p{max-width:38em;margin:0 auto 1.6em;font-size:1.1rem}
.upload p.small{margin:1.2em auto 0;font-size:.92rem}

/* Footer */
footer{background:var(--petrol-dark);color:#fff;font-size:.92rem;padding:32px 0}
footer a{color:#fff}

/* Unterseiten */
.page-head{background:var(--petrol);padding:20px 0}
.page-head img{height:56px;width:auto;filter:brightness(0) invert(1)}
.legal{padding:48px 0}
.legal h1{color:var(--petrol)}
.legal h2{margin-top:1.6em}
.legal h3{color:var(--text);margin-top:1.2em;font-size:1.1rem}

@media (max-width:640px){
  .hero{min-height:480px}
  .hero .wrap{padding-bottom:110px}
  .hero .logo{height:72px}
  .cards{margin-top:-60px}
  section{padding:48px 0}
}
