:root{--ink:#071c35;--navy:#092b4d;--blue:#0b75bd;--cyan:#1db9e8;--text:#263e53;--muted:#62778a;--line:#d7e1e9;--soft:#f3f7fa;--warning:#b96a00;--warning-bg:#fff6e6;--ok:#137652;--shell:min(1180px,calc(100% - 40px));font-family:Inter,Arial,Helvetica,sans-serif;color:var(--text);background:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;line-height:1.6}a{color:inherit;text-decoration:none}.shell{width:var(--shell);margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;z-index:999;background:#fff;padding:10px 14px}.legal-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:62px;height:46px;object-fit:contain}.brand strong,.brand span{display:block}.brand strong{color:var(--ink);font-size:.92rem}.brand span{color:#6f8395;font-size:.62rem}.nav{display:flex;align-items:center;gap:22px}.nav a{color:#4f6578;font-size:.76rem;font-weight:760}.nav a:hover,.nav a.active{color:var(--blue)}.nav-cta{padding:9px 12px;border:1px solid var(--line)}.menu{display:none;border:1px solid var(--line);background:#fff;padding:9px 12px}.legal-hero{position:relative;overflow:hidden;background:var(--ink);color:#fff}.legal-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,transparent,black)}.legal-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;min-height:410px;padding:95px 0 70px}.crumb{display:flex;gap:9px;color:#7fa0ba;font-size:.69rem}.eyebrow{display:block;margin-top:34px;color:#54c9ef;font-size:.68rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.legal-hero h1{max-width:760px;margin:13px 0 18px;font-size:clamp(3.2rem,7vw,6.2rem);line-height:.88;letter-spacing:-.07em}.legal-hero h1 span{display:block;color:#4fc9ed}.legal-hero p{max-width:720px;color:#b4c5d3}.legal-status{display:flex;align-items:flex-start;gap:14px;padding:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13)}.legal-status>span{width:11px;height:11px;margin-top:6px;border-radius:50%;background:#e7a23a;box-shadow:0 0 0 6px rgba(231,162,58,.12)}.legal-status.is-ready>span{background:#42c28a}.legal-status strong,.legal-status small{display:block}.legal-status small{margin-top:3px;color:#9fb4c5;font-size:.72rem}.legal-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:70px;padding:75px 0 110px}.legal-sidebar{position:relative}.legal-sidebar-inner{position:sticky;top:110px}.legal-toc{display:grid;border-left:1px solid var(--line)}.legal-toc a{padding:9px 15px;color:#6b7e8e;font-size:.74rem}.legal-toc a.active,.legal-toc a:hover{margin-left:-1px;color:var(--blue);border-left:2px solid var(--cyan)}.legal-sidebar button{width:100%;margin-top:22px;border:1px solid var(--line);background:#fff;padding:11px 13px;color:var(--ink);font-weight:800;cursor:pointer}.legal-content{min-width:0}.legal-intro{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:45px}.summary-card{padding:20px;background:var(--soft);border-top:3px solid var(--cyan)}.summary-card small,.summary-card strong{display:block}.summary-card small{color:#7d8e9c;font-size:.61rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.summary-card strong{margin-top:7px;color:var(--ink);font-size:.9rem}.legal-section{scroll-margin-top:110px;padding:38px 0;border-top:1px solid var(--line)}.legal-section:first-of-type{border-top:0}.section-number{display:block;color:var(--blue);font-size:.65rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.legal-section h2{margin:7px 0 15px;color:var(--ink);font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.06;letter-spacing:-.045em}.legal-section h3{margin:27px 0 8px;color:#173a57;font-size:1rem}.legal-section p,.legal-section li{font-size:.88rem}.legal-section ul{padding-left:20px}.legal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.data-row{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:13px 0;border-bottom:1px solid #e3e9ee}.data-row dt{color:#718393;font-size:.72rem}.data-row dd{margin:0;color:var(--ink);font-weight:760}.is-missing{color:var(--warning)!important;font-style:normal}.draft-box{margin:25px 0;padding:18px 20px;background:var(--warning-bg);border-left:4px solid #e3a041}.draft-box strong{display:block;color:#764300}.draft-box p{margin:5px 0 0}.note-box{margin:25px 0;padding:18px 20px;background:#eaf6fb;border-left:4px solid var(--cyan)}.legal-source-list{display:grid;gap:8px}.legal-source-list a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.legal-hub{padding:80px 0 110px}.hub-head{display:grid;grid-template-columns:1fr .7fr;gap:50px;margin-bottom:40px}.hub-head h2{margin:0;color:var(--ink);font-size:clamp(2.5rem,5vw,4.5rem);line-height:.92;letter-spacing:-.06em}.hub-head p{color:var(--muted)}.hub-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.hub-card{position:relative;min-height:260px;padding:28px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--cyan);transition:.2s}.hub-card:hover{transform:translateY(-3px);box-shadow:0 20px 45px rgba(7,28,53,.1)}.hub-card b{color:#9aabba;font-size:.65rem;letter-spacing:.12em}.hub-card h3{margin:28px 0 10px;color:var(--ink);font-size:1.8rem}.hub-card p{color:var(--muted);font-size:.84rem}.hub-card span{position:absolute;right:24px;bottom:22px;color:var(--blue);font-weight:900}.legal-footer{padding:48px 0 24px;background:#041425;color:#fff}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:45px;padding-bottom:35px}.footer-grid p{max-width:340px;color:#7f98ad;font-size:.78rem}.footer-grid>div>strong{display:block;margin-bottom:12px}.footer-grid a{display:block;margin:7px 0;color:#7f98ad;font-size:.72rem}.footer-grid a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid #1b3044;color:#5f788e;font-size:.66rem}@media(max-width:900px){.nav{display:none}.menu{display:block}.nav.open{position:absolute;left:20px;right:20px;top:74px;display:grid;padding:10px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 40px rgba(7,28,53,.18)}.nav.open a{padding:10px}.legal-hero-inner{grid-template-columns:1fr;gap:30px}.legal-layout{grid-template-columns:1fr;gap:35px}.legal-sidebar-inner{position:static}.legal-toc{grid-template-columns:repeat(2,1fr)}.legal-intro{grid-template-columns:1fr}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2}.hub-head{grid-template-columns:1fr}}@media(max-width:620px){:root{--shell:calc(100% - 28px)}.brand img{width:52px}.legal-hero-inner{padding:75px 0 55px}.legal-hero h1{font-size:clamp(3rem,16vw,4.7rem)}.legal-layout{padding:55px 0 80px}.legal-toc{grid-template-columns:1fr}.legal-grid,.hub-grid{grid-template-columns:1fr}.data-row{grid-template-columns:1fr;gap:4px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:7px}}@media print{.legal-header,.legal-sidebar,.legal-footer,.legal-status{display:none!important}.legal-hero{background:#fff;color:#000}.legal-hero:after{display:none}.legal-hero-inner{display:block;min-height:0;padding:20px 0}.legal-hero h1,.legal-hero h1 span{color:#000;font-size:34px}.legal-hero p,.crumb{color:#333}.legal-layout{display:block;padding:0}.legal-section{break-inside:avoid}.draft-box{border:1px solid #999;background:#fff}.shell{width:100%}}


/* Phase 19 – einheitliche Plattformnavigation */
.nav-tools{padding:8px 10px;border:1px solid var(--line);background:#f7fafc;color:#173f61!important}
.nav a[aria-current="page"]{color:var(--blue)}
.back-to-top{position:fixed;right:22px;bottom:22px;z-index:140;width:44px;height:44px;border:1px solid rgba(7,28,53,.13);background:rgba(255,255,255,.96);color:#071c35;box-shadow:0 14px 34px rgba(7,28,53,.16);font-size:1.1rem;font-weight:900;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:.22s ease;backdrop-filter:blur(12px)}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:none}.back-to-top:hover{color:#fff;background:#0b5797}
@media(max-width:1160px){.nav{display:none}.menu{display:block}.nav.open{position:absolute;left:20px;right:20px;top:78px;display:grid;padding:10px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 40px rgba(7,28,53,.16)}.nav.open a{padding:11px}.nav-tools{border:0;background:#f4f8fb}}
@media(max-width:650px){.back-to-top{right:14px;bottom:14px;width:42px;height:42px}}


/* Phase 21 – Tastaturbedienung und reduzierte Bewegung */
:where(a, button, input, select, textarea):focus-visible { outline: 3px solid #48d7ff; outline-offset: 3px; }
:where(input, select, textarea):focus-visible { border-color: #1687ff; box-shadow: 0 0 0 4px rgba(22,135,255,.14); }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
/* Branding 2026-09-14 – langer Unternehmensname ohne Header-Kollision */
.brand{min-width:0}.brand>div{min-width:0}.brand strong{max-width:285px;line-height:1.12;overflow-wrap:normal;hyphens:none}.brand span{margin-top:3px}
@media(max-width:1100px){.header-inner{gap:18px}.brand strong{font-size:.82rem}.nav{gap:15px}.nav a{font-size:.7rem}}
@media(max-width:620px){.brand strong{max-width:215px;font-size:.74rem;line-height:1.08}.brand span{font-size:.55rem}}
/* Mobile text safety – rechtliche Seiten */
@media(max-width:620px){
  .legal-hero h1{max-width:100%;font-size:clamp(2.55rem,12vw,3.25rem);line-height:.94;letter-spacing:-.055em;overflow-wrap:anywhere;hyphens:auto;text-wrap:balance}
  .legal-hero p,.hub-head h2,.hub-card h3{overflow-wrap:anywhere;hyphens:auto}
  .legal-status,.legal-status>div{min-width:0}.legal-status small,.legal-status strong{overflow-wrap:anywhere}
  .hub-head h2{font-size:clamp(2.2rem,10.5vw,3rem);line-height:.98}
}
