
:root{
  --blue:#0B2F6F;
  --orange:#F15A24;
  --text:#263447;
  --muted:#4E5E70;
  --line:#E5E9EE;
  --footer:#07182F;
}

*{box-sizing:border-box}

html,body{
  margin:0;
  padding:0;
  background:#fff;
  color:var(--text);
  font-family:Arial, Helvetica, sans-serif;
  -webkit-font-smoothing:antialiased;
}

a{
  color:inherit;
  text-decoration:none;
}

.legal-shell{
  width:min(calc(100% - 40px), 820px);
  margin:0 auto;
}

/* Logo und Trennlinie exakt auf derselben Achse wie der Inhalt */
.legal-header{
  background:#fff;
}

.legal-header-inner{
  padding:28px 0 24px;
  border-bottom:1px solid var(--line);
}

.legal-logo{
  display:inline-block;
  line-height:0;
}

.legal-logo img{
  display:block;
  width:245px;
  height:auto;
  object-fit:contain;
}

.legal{
  padding:34px 0 52px;
}

.legal-wrap{
  padding:0;
}

.section-kicker{
  margin:0 0 24px;
  color:var(--orange);
  font-size:13px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.legal h1{
  margin:0 0 36px;
  color:#2E3B4D;
  font-size:42px;
  line-height:1.05;
  letter-spacing:-.035em;
}

.legal h2{
  margin:28px 0 10px;
  color:#2E3B4D;
  font-size:24px;
  line-height:1.2;
  letter-spacing:-.02em;
}

.legal p{
  margin:0 0 16px;
  color:#3F4D5E;
  font-size:18px;
  line-height:1.55;
}

.legal p.small{
  margin-top:28px;
  color:#667587;
  font-size:15px;
}

.legal a{
  color:#3F4D5E;
}

.legal a:hover{
  color:var(--orange);
}

.legal-footer{
  background:var(--footer);
  color:#fff;
}

.legal-footer-inner{
  min-height:74px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  font-size:13px;
}

.legal-footer-links{
  display:flex;
  align-items:center;
  gap:20px;
}

.legal-footer a{
  color:#DDE6EF;
}

.legal-footer a:hover{
  color:#fff;
}

@media(max-width:680px){
  .legal-shell{
    width:min(calc(100% - 28px), 820px);
  }

  .legal-header-inner{
    padding:20px 0 18px;
  }

  .legal-logo img{
    width:205px;
  }

  .legal{
    padding:28px 0 42px;
  }

  .section-kicker{
    margin-bottom:18px;
    font-size:12px;
  }

  .legal h1{
    margin-bottom:28px;
    font-size:34px;
  }

  .legal h2{
    font-size:21px;
  }

  .legal p{
    font-size:16px;
  }
}

/* FINAL: sichtbares Logo und Rechtstext exakt bündig */
.legal-shell{
  width:min(calc(100% - 40px), 820px);
  margin-left:auto;
  margin-right:auto;
}

.legal-header-inner,
.legal-wrap,
.legal-footer-inner{
  padding-left:0;
  padding-right:0;
}

.legal-logo{
  display:block;
  width:max-content;
  margin:0;
  padding:0;
  line-height:0;
}

.legal-logo img{
  display:block;
  width:245px;
  height:auto;
  margin:0;
  padding:0;
}

.legal .section-kicker,
.legal h1,
.legal h2,
.legal p{
  margin-left:0;
  padding-left:0;
}

@media(max-width:680px){
  .legal-shell{
    width:min(calc(100% - 28px), 820px);
  }

  .legal-logo img{
    width:205px;
  }
}
