/* meisternick.de – minimal landing page */
:root{
  --accent:#0870ba;
  --text:#0b1220;
  --muted:#5b6474;
  --bg:#ffffff;
  --panel:#f4f6f8;
  --border:#e6e9ee;
  --shadow: 0 10px 30px rgba(0,0,0,.12);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Helvetica,Arial,sans-serif;color:var(--text);background:var(--bg);line-height:1.45}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1080px;margin:0 auto;padding:0 20px}
.section{padding:56px 0}
.lead{font-size:1.1rem;color:#fff;opacity:.95;max-width:62ch}
.lead-sm{font-size:1.05rem;color:var(--text)}
.fineprint{font-size:.92rem;color:rgba(255,255,255,.9)}
.textlink{font-weight:600}

.topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0}
.brand{display:flex;align-items:center;gap:10px}
.brand-text{display:flex;flex-direction:column}
.brand-badge{width:38px;height:38px;border-radius:12px;background:var(--accent);display:grid;place-items:center;color:#fff;font-weight:800;letter-spacing:.02em;box-shadow:0 6px 18px rgba(8,112,186,.35)}
.brand-title{font-weight:800}
.brand-sub{font-size:.9rem;color:var(--muted)}
.nav{display:flex;gap:14px;flex-wrap:wrap}
.nav a{color:var(--text);font-weight:600}
.nav a:hover{color:var(--accent);text-decoration:none}

.hero{position:relative;min-height:72vh;display:grid;align-items:end;overflow:hidden}
.hero-media{position:absolute;inset:0;background-size:cover;background-position:70% 20%;transform:scale(1.03)}
.hero-overlay{position:absolute;inset:0;background:
  radial-gradient(1200px 500px at 25% 30%, rgba(8,112,186,.35), rgba(8,112,186,0)),
  linear-gradient(to bottom, rgba(0,0,0,.35), rgba(0,0,0,.55));
}
.hero-content{position:relative;padding:64px 20px 56px}
.eyebrow{margin:0 0 10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:rgba(255,255,255,.92)}
.hero h1{margin:0 0 12px;font-size:clamp(2.1rem, 4.2vw, 3.4rem);color:#fff;line-height:1.07}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 10px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:14px;padding:12px 16px;font-weight:800;border:1px solid transparent;box-shadow:none;transition:transform .08s ease, box-shadow .2s ease, background .2s ease}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--accent);color:#fff;box-shadow:0 14px 30px rgba(8,112,186,.35)}
.btn-primary:hover{text-decoration:none;filter:brightness(1.03)}
.btn-ghost{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.25)}
.btn-ghost:hover{text-decoration:none;background:rgba(255,255,255,.18)}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:0 6px 16px rgba(0,0,0,.06)}
.card h2{margin:0 0 8px;font-size:1.2rem}
.card p{margin:0 0 10px;color:var(--muted)}

.split{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:start}
.callout{background:#fff;border:1px solid var(--border);border-radius:16px;padding:14px;box-shadow:0 6px 16px rgba(0,0,0,.06);margin:14px 0}
.bullets{padding-left:18px;color:var(--muted)}
.form{background:#fff;border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:var(--shadow)}
.form label{display:block;font-weight:700;margin-bottom:12px}
.form input,.form textarea{width:100%;margin-top:8px;border:1px solid var(--border);border-radius:14px;padding:12px 12px;font-size:1rem}
.form input:focus,.form textarea:focus{outline:2px solid rgba(8,112,186,.25);border-color:rgba(8,112,186,.45)}
.checkbox{display:flex;gap:10px;align-items:flex-start;font-weight:600;color:var(--muted)}
.checkbox input{width:auto;margin-top:4px}
.honeypot{position:absolute;left:-9999px;opacity:0}

.footer-cta{padding:34px 0 60px}
.footer-cta-inner{background:linear-gradient(135deg, rgba(8,112,186,.12), rgba(8,112,186,.05));border:1px solid var(--border);border-radius:22px;padding:22px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.footer-cta-inner h2{margin:0}
.footer-cta-inner p{margin:0;color:var(--muted)}

.footer{border-top:1px solid var(--border);padding:18px 0}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.footer-title{font-weight:900}
.footer-sub{color:var(--muted);font-size:.92rem}
.footer-links{display:flex;gap:12px}
.footer-links a{color:var(--muted);font-weight:700}
.footer-links a:hover{color:var(--accent);text-decoration:none}

@media (max-width: 900px){
  .cards{grid-template-columns:1fr}
  .split{grid-template-columns:1fr}
  .hero{min-height:78vh}
}


.brand-logo{height:34px;width:auto;display:block}
