:root{
  --ink:#21282D;      /* Anthrazit aus dem Logo */
  --orange:#E8622B;   /* Orange aus dem Logo */
  --paper:#F4F3F1;
  --muted:#5B666D;
  --line:#DCDAD6;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{
  min-height:100vh;display:flex;flex-direction:column;
  background:var(--paper);color:var(--ink);
  font-family:"Helvetica Neue",Helvetica,Arial,system-ui,sans-serif;
  -webkit-font-smoothing:antialiased;line-height:1.5;
}
a{color:inherit}

/* Visitenkarte */
.card-wrap{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 16px}
.card{
  width:100%;max-width:560px;background:#fff;
  border-top:8px solid var(--orange);
  box-shadow:0 1px 2px rgba(33,40,45,.06),0 12px 40px rgba(33,40,45,.08);
  padding:56px 48px 44px;text-align:center;
}
.card .logo{width:200px;max-width:60%;height:auto;display:block;margin:0 auto}
.tagline{margin-top:28px;font-size:20px;font-weight:600;letter-spacing:-.2px}
.claim{margin-top:6px;color:var(--muted);font-size:16px}

.contact{margin-top:36px;padding-top:28px;border-top:1px solid var(--line);
  display:grid;gap:12px;font-size:17px}
.contact a{text-decoration:none;font-weight:600}
.contact a:hover{color:var(--orange)}
.cta{display:inline-block;margin-top:32px;background:var(--orange);color:#fff;
  font-weight:700;font-size:17px;padding:14px 28px;text-decoration:none}
.cta:hover{background:#cf5320}

.notice{margin-top:28px;font-size:14px;color:var(--muted);letter-spacing:.2px}
.notice::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;
  background:var(--orange);margin-right:8px;vertical-align:1px}

/* Platzhalter, bis echte Daten da sind */
.ph{color:#8A979F;border-bottom:1.5px dashed #8A979F}

footer{padding:20px 16px 28px;text-align:center;font-size:14px;color:var(--muted)}
footer a{margin:0 10px;text-decoration:none}
footer a:hover{color:var(--orange)}

/* Rechtstexte */
.legal{max-width:760px;width:100%;margin:0 auto;padding:40px 16px 24px}
.legal .back{display:inline-flex;align-items:center;gap:12px;text-decoration:none}
.legal .back img{width:56px;height:auto}
.legal h1{font-size:32px;letter-spacing:-.5px;margin:36px 0 20px}
.legal h2{font-size:19px;margin:28px 0 8px}
.legal p,.legal li{font-size:16px;color:#33404A}
.legal ul{padding-left:20px}

@media (max-width:480px){
  .card{padding:44px 24px 36px}
  .tagline{font-size:18px}
}
