.as-legal-page {
  float:none !important;
  width:auto !important;
  max-width:1160px;
  margin:0 auto !important;
  padding:26px 10px 46px;
  font-family:Arial,Helvetica,sans-serif;
  color:#1f2933;
  background:#ffffff;
}
.as-legal-page * { box-sizing:border-box; }
.as-legal-hero {
  margin:0 0 20px;
  padding:26px 30px;
  border:1px solid #bfd5eb;
  border-radius:8px;
  background:#eaf2fb;
}
.as-legal-hero h1 { margin:0 0 8px; color:#153f73; font-size:30px; }
.as-legal-hero p { margin:0; line-height:1.5; }
.as-legal-layout { display:grid; grid-template-columns:minmax(0,1fr) 250px; gap:22px; }
.as-legal-document,
.as-legal-aside { border:1px solid #d9e2ec; border-radius:8px; background:#fff; }
.as-legal-document { padding:28px; }
.as-legal-document table { width:100% !important; border-collapse:collapse; }
.as-legal-document td { width:auto !important; padding:0 0 13px; vertical-align:top; }
.as-legal-document td[bgcolor] { padding:14px 22px 16px !important; }
.as-legal-document td[bgcolor].mittel { padding:18px 22px 10px !important; }
.as-legal-document td[bgcolor] p {
  display:block;
  margin:0 0 12px;
  padding:0 6px;
}
.as-legal-document td[bgcolor] > *:first-child { margin-top:0; }
.as-legal-document td[bgcolor] > *:last-child { margin-bottom:0; }
.as-legal-document td[bgcolor].Inhalt,
.as-legal-document td[bgcolor].inhalt {
  padding-left:28px !important;
  padding-right:28px !important;
}
.as-legal-document td[bgcolor].mittel {
  padding-left:28px !important;
  padding-right:28px !important;
}
.as-legal-document td.Inhalt,
.as-legal-document td.inhalt { font-size:15px; line-height:1.58; }
.as-legal-document td.mittel { padding-top:16px; color:#153f73; font-size:18px; font-weight:bold; text-align:left; }
.as-legal-aside {
  position:sticky;
  top:16px;
  align-self:start;
  padding:14px;
  background:#f8fafc;
}
.as-legal-aside a {
  display:block;
  margin:0;
  padding:9px 8px;
  border-bottom:1px solid #d9e2ec;
  color:#2f4377;
  text-decoration:underline;
}
.as-legal-aside a:last-child { border-bottom:0; }
.as-legal-print { margin:20px 0 0; font-size:14px; }
.as-legal-modal {
  position:fixed;
  inset:0;
  z-index:20000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
  background:rgba(15,23,42,0.42);
}
.as-legal-modal.is-open { display:flex; }
.as-legal-modal-card {
  width:min(760px,96vw);
  height:min(680px,88vh);
  overflow:hidden;
  border:1px solid #c9d7e6;
  border-radius:8px;
  background:#ffffff;
  box-shadow:0 20px 60px rgba(15,23,42,0.28);
}
.as-legal-modal-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:48px;
  padding:10px 14px 10px 18px;
  border-bottom:1px solid #d9e2ec;
  background:#f8fafc;
}
.as-legal-modal-title {
  margin:0;
  color:#153f73;
  font-size:16px;
  font-weight:bold;
}
.as-legal-modal-close {
  min-width:88px;
  height:32px;
  border:1px solid #b7c6d8;
  border-radius:4px;
  background:#ffffff;
  color:#1f2933;
  font:14px Arial,Helvetica,sans-serif;
  cursor:pointer;
}
.as-legal-modal-close:hover,
.as-legal-modal-close:focus {
  border-color:#153f73;
  color:#153f73;
}
.as-legal-modal-frame {
  display:block;
  width:100%;
  height:calc(100% - 49px);
  border:0;
  background:#ffffff;
}
@media (max-width:860px) {
  .as-legal-layout { grid-template-columns:1fr; }
  .as-legal-page { padding:14px 7px 28px; }
  .as-legal-hero { padding:18px; }
  .as-legal-hero h1 { font-size:24px; }
  .as-legal-document { padding:18px; }
  .as-legal-aside { position:static; }
  .as-legal-modal { padding:10px; }
  .as-legal-modal-card { width:100%; height:92vh; }
}
