
:root{
  --blue:#0056b8;
  --blue2:#0a8fd2;
  --navy:#07111f;
  --muted:#5d6b7c;
  --line:#dce6f1;
  --paper:#ffffff;
  --soft:#f4f8fc;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:system-ui,ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  color:var(--navy);
  background:#fff;
  line-height:1.55;
}
a{color:inherit}
.hero{
  min-height:calc(100vh - 66px);
  display:grid;
  place-items:center;
  position:relative;
  overflow:hidden;
  isolation:isolate;
  padding:72px 24px 140px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.42)),
    url("assets/versicherungswelt-hintergrund.webp") center top / cover no-repeat;
}
.hero::before{
  content:"";
  position:absolute; inset:0;
  z-index:-1;
  background:radial-gradient(circle at center,rgba(255,255,255,.99) 0 19%,rgba(255,255,255,.94) 30%,rgba(255,255,255,.35) 57%,rgba(255,255,255,0) 72%);
}
.hero-card{
  width:min(760px,94vw);
  text-align:center;
  padding:36px 42px 34px;
  border:1px solid rgba(190,209,228,.62);
  border-radius:24px;
  background:rgba(255,255,255,.80);
  backdrop-filter:blur(8px);
  box-shadow:0 24px 70px rgba(24,70,112,.10);
}
.logo{display:block;width:min(680px,100%);height:auto;margin:0 auto 25px}
.rule{
  width:100%;height:1px;border:0;
  background:linear-gradient(90deg,transparent,var(--blue2),transparent);
  margin:12px 0 25px;
}
h1{font-size:clamp(31px,4vw,52px);line-height:1.08;margin:0;color:#0058b5;font-weight:650;letter-spacing:-.03em}
.claim{font-size:clamp(18px,2vw,25px);font-weight:650;margin:20px 0 5px}
.sub{font-size:clamp(15px,1.4vw,19px);margin:0;color:#26384c}
.contact-strip{
  position:absolute;left:0;right:0;bottom:0;
  background:rgba(255,255,255,.94);
  border-top:1px solid var(--line);
}
.contact-inner{
  max-width:var(--max);margin:auto;padding:20px 24px;
  display:flex;align-items:center;justify-content:center;gap:32px;flex-wrap:wrap;
  font-size:15px;
}
.contact-item{display:flex;align-items:center;gap:10px}
.icon{
  width:34px;height:34px;border:1px solid #b9d4ef;border-radius:50%;
  display:grid;place-items:center;color:var(--blue);font-weight:800;
}
footer{
  min-height:66px;background:linear-gradient(110deg,#064d99,#006fcc);
  color:white;display:flex;align-items:center;
}
.footer-inner{
  width:100%;max-width:var(--max);margin:auto;padding:17px 24px;
  display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;
}
.footer-links{display:flex;gap:22px;flex-wrap:wrap}
.footer-links a{text-decoration:none;border-bottom:1px solid transparent}
.footer-links a:hover{border-color:white}
.small{font-size:13px;color:var(--muted)}
@media(max-width:720px){
  .hero{padding:34px 14px 180px;background-position:center top}
  .hero::before{background:rgba(255,255,255,.72)}
  .hero-card{padding:28px 20px;border-radius:18px}
  .contact-inner{justify-content:flex-start;gap:13px;padding:17px 20px}
  .contact-item{width:100%}
  .footer-inner{justify-content:center;text-align:center}
  .legal h1{font-size:34px}
}


/* Einheitliches Layout für Impressum und Datenschutz */
.legal-page{
  min-height:100vh;
  background:
    linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,255,255,.94)),
    url("assets/versicherungswelt-hintergrund.webp") center top / cover no-repeat;
}
.legal-shell{
  width:min(1180px,calc(100% - 32px));
  margin:0 auto;
  padding:36px 0 70px;
}
.legal-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:18px 24px;
  border:1px solid rgba(190,209,228,.72);
  border-radius:20px;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(8px);
  box-shadow:0 18px 55px rgba(24,70,112,.09);
}
.legal-topbar img{
  width:min(500px,68vw);
  height:auto;
  display:block;
}
.legal-content-card{
  margin-top:24px;
  padding:42px 48px 50px;
  border:1px solid rgba(190,209,228,.72);
  border-radius:22px;
  background:rgba(255,255,255,.94);
  box-shadow:0 24px 70px rgba(24,70,112,.10);
}
.legal-content-card h1{
  color:#0058b5;
  font-size:clamp(34px,4vw,48px);
  line-height:1.1;
  margin:0 0 26px;
}
.legal-content-card h2{
  color:var(--navy);
  font-size:24px;
  margin:34px 0 10px;
}
.legal-content-card h3{
  color:var(--navy);
  font-size:18px;
  margin:25px 0 8px;
}
.legal-content-card p,
.legal-content-card li{
  color:#28394b;
}
.legal-content-card a{
  color:var(--blue);
}
.legal-footer{
  margin-top:24px;
  border-radius:18px;
  overflow:hidden;
}
@media(max-width:720px){
  .legal-shell{width:min(100% - 20px,1180px);padding-top:18px}
  .legal-topbar{padding:16px;align-items:flex-start;flex-direction:column}
  .legal-topbar img{width:100%;max-width:460px}
  .legal-content-card{padding:28px 20px 34px;border-radius:18px}
}

.legal-logo-link{
  display:block;
  max-width:min(500px,68vw);
}
.legal-logo-link img{
  width:100%;
  height:auto;
}

@media(max-width:720px){
  .hero{
    min-height:auto;
    display:block;
    padding:30px 14px 0;
    background-position:center top;
  }
  .hero-card{
    margin:0 auto 30px;
  }
  .contact-strip{
    position:static;
    margin:0 -14px;
  }
  .legal-logo-link{max-width:100%}
}
