:root{--red:#D50D10;--red-dark:#A40A0C;--black:#111318;--muted:#5b6472;--bg:#f6f7f9;--card:#fff;--line:rgba(15,23,42,.12);--shadow:0 14px 40px rgba(0,0,0,.08);--radius:24px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;margin:0;background:var(--bg);color:var(--black);line-height:1.65}
a{color:var(--red)}
.sitebar{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.sitebar-inner{max-width:980px;margin:0 auto;padding:11px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.sitebrand{display:flex;align-items:center;gap:11px;color:var(--black);text-decoration:none;min-width:0}
.sitebrand img{width:46px;height:46px;border-radius:12px;object-fit:cover;flex:0 0 auto}
.sitebrand strong{display:block;letter-spacing:.08em;font-size:16px;line-height:1.1}
.sitebrand span{display:block;color:var(--muted);font-size:12px;white-space:nowrap}
.wrap{max-width:980px;margin:0 auto;padding:30px 18px 44px}
.card{background:var(--card);border-radius:var(--radius);padding:clamp(20px,4vw,38px);border:1px solid var(--line);box-shadow:var(--shadow)}
h1{margin:0 0 6px;font-size:clamp(32px,5vw,48px);line-height:1.08;letter-spacing:-.035em}
h2{margin-top:30px;line-height:1.25;color:#1b1e24}
p,li{font-size:16px}.muted{color:var(--muted)}
.note{background:#fff7f7;border:1px solid rgba(213,13,16,.22);border-left:5px solid var(--red);border-radius:16px;padding:14px 16px}
.btnrow{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 17px;border-radius:999px;border:1px solid var(--line);background:var(--red);color:#fff!important;font-weight:800;text-decoration:none;min-height:46px}
.btn.secondary{background:#fff;color:var(--black)!important}
.legal-nav{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin:22px auto 0;font-size:13px;color:var(--muted)}
.legal-nav a{color:inherit;text-underline-offset:3px}
.legal-footer{max-width:980px;margin:0 auto;padding:0 18px 35px;text-align:center;color:var(--muted);font-size:13px}
.pdf-shell{margin-top:18px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#eceff3;box-shadow:0 12px 30px rgba(0,0,0,.08)}
.pdf-shell object{display:block;width:100%;height:min(78vh,980px);min-height:650px;border:0;background:#fff}
.small{font-size:13px;color:var(--muted)}
@media(max-width:640px){.sitebrand span{display:none}.sitebar-inner{padding:9px 14px}.wrap{padding:20px 14px 34px}.card{border-radius:20px}.pdf-shell object{height:72vh;min-height:520px}.btnrow .btn{width:100%}}

/* V26: multilingual legal pages and readable HTML terms */
.sitebar-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.lang-switch{display:inline-flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:999px;background:#fff}
.lang-switch a,.lang-switch span{display:grid;place-items:center;min-width:36px;height:34px;padding:0 9px;border-radius:999px;text-decoration:none;color:var(--muted);font-size:12px;font-weight:900;letter-spacing:.04em}
.lang-switch .active{background:var(--black);color:#fff}
.lang-switch a:hover{background:#fff1f1;color:var(--red)}
.terms-intro{margin:18px 0;padding:18px;border-radius:18px;background:#f7f8fa;border:1px solid var(--line)}
.terms-intro p{margin:0 0 14px}
.terms-toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:18px 0 8px}
.terms-toolbar button{font:inherit;cursor:pointer}
.terms-toolbar .btn{min-width:190px;padding:12px 18px;box-shadow:none}
.terms-toolbar .btn.secondary{background:#fff;color:var(--black)!important}
.terms-toc{margin:24px 0 34px;padding:20px;border-radius:20px;background:#f7f8fa;border:1px solid var(--line)}
.terms-toc strong{display:block;margin-bottom:12px}.terms-toc ol{columns:2;column-gap:30px;margin:0;padding-left:22px}.terms-toc li{break-inside:avoid;margin:4px 0}.terms-toc a{color:var(--black);text-decoration:none}.terms-toc a:hover{color:var(--red);text-decoration:underline}
.terms-section{scroll-margin-top:90px;padding-top:10px;margin-top:10px;border-top:1px solid var(--line)}
.terms-section h2{color:var(--red);font-size:clamp(22px,3vw,28px)}
.terms-section ol{padding-left:25px}.terms-section li{margin:0 0 12px;padding-left:4px}
.scope-badge{display:inline-flex;align-items:center;margin:4px 8px 4px 0;padding:6px 12px;border-radius:999px;border:1px solid rgba(17,19,24,.12);background:rgba(17,19,24,.06);color:#17191e;font-size:11px;font-weight:800;letter-spacing:.02em;line-height:1.15;vertical-align:middle;box-shadow:none}.scope-badge.consumer{border-color:rgba(213,13,16,.16);background:rgba(213,13,16,.10);color:var(--red)}
.language-note{background:#fff8e8;border:1px solid #ead49a;border-left:5px solid #d4a017;border-radius:16px;padding:14px 16px}
.print-only{display:none}
@media(max-width:700px){.sitebar-actions .btn{display:none}.sitebrand span span{display:none}.terms-toc ol{columns:1}.terms-section ol{padding-left:21px}}
@media print{.sitebar,.legal-nav,.legal-footer,.terms-toolbar,.lang-switch{display:none!important}.wrap{max-width:none;padding:0}.card{box-shadow:none;border:0;padding:0}.terms-toc{display:none}.terms-section{break-inside:avoid}.print-only{display:block}body{background:#fff;color:#000}.terms-section h2{color:#000}}


/* V27: legal pages on narrow phones */
@media(max-width:420px){
  .sitebar-inner{gap:8px;padding:8px 12px}
  .sitebrand{gap:8px;overflow:hidden}
  .sitebrand img{width:38px;height:38px;flex-basis:38px}
  .sitebrand strong{font-size:14px;white-space:nowrap}
  .sitebar-actions{gap:6px}
  .lang-switch a,.lang-switch span{min-width:31px;height:30px;padding:0 7px}
  .wrap{padding:16px 12px 30px}
  .card{padding:19px 15px;border-radius:18px}
  h1{font-size:30px;overflow-wrap:anywhere}
  h2{font-size:22px}
  p,li{font-size:15px}
  .terms-intro,.terms-toc{padding:15px;border-radius:16px}
  .terms-toolbar .btn{width:100%}
  .scope-badge{margin-left:0;margin-top:6px}
}


/* V28: legal page header and badge polish */
.sitebar-inner{gap:18px}
.sitebar-actions .btn{min-height:42px;padding:10px 16px;box-shadow:none}
.terms-toolbar .btn:hover,.sitebar-actions .btn:hover{border-color:rgba(213,13,16,.18)}
@media(max-width:700px){.terms-toolbar{flex-direction:column;align-items:stretch}.terms-toolbar .btn{width:100%;min-width:0}}
@media(max-width:520px){.terms-intro{padding:16px}.terms-intro .scope-badge{display:inline-flex}}

/* V30: softer AGB scope labels */
.terms-intro{display:block}.terms-intro .scope-badge + .scope-badge{margin-left:2px}

.skip-link{position:fixed;left:14px;top:12px;z-index:3000;transform:translateY(-160%);padding:10px 14px;border-radius:10px;background:#111318;color:#fff;font-weight:800;text-decoration:none;box-shadow:0 8px 24px rgba(0,0,0,.2)}.skip-link:focus{transform:translateY(0)}

/* V33 print layout for the downloadable AGB PDF */
@media print{
  @page{size:A4;margin:14mm 14mm 16mm;@bottom-right{content:"Seite " counter(page) " / " counter(pages);font-size:8pt;color:#666}}
  .skip-link,.sitebar,.legal-nav,.legal-footer,.terms-toolbar,.lang-switch,.bc-consent-layer{display:none!important}
  html,body{background:#fff!important;color:#000!important;font-size:10pt;line-height:1.42}
  .wrap{max-width:none!important;padding:0!important;margin:0!important}
  .card{border:0!important;box-shadow:none!important;padding:0!important;border-radius:0!important}
  h1{font-size:24pt!important;margin:0 0 3mm!important}
  .card>p.muted{margin:0 0 5mm!important;font-size:10pt!important}
  .terms-intro{margin:0 0 6mm!important;padding:4mm!important;border-radius:3mm!important}
  .terms-intro p{margin:0 0 3mm!important}
  .terms-toc{display:none!important}
  .terms-section{break-inside:auto!important;page-break-inside:auto!important;margin-top:4mm!important;padding-top:3mm!important}
  .terms-section h2{font-size:14pt!important;margin:0 0 2.5mm!important;break-after:avoid!important;page-break-after:avoid!important}
  .terms-section ol{padding-left:6mm!important;margin:0!important}
  .terms-section li{font-size:9.5pt!important;line-height:1.4!important;margin:0 0 2mm!important;padding-left:1mm!important}
  .scope-badge{font-size:7.5pt!important;padding:1mm 2mm!important;margin:1mm 1.5mm 1mm 0!important}
}





.footer-legal{padding:26px 0 38px;text-align:center;color:#6b7280;font-size:13px}.footer-legal p{margin:14px 0 0;line-height:1.6}.footer-legal p a{color:inherit;text-decoration:none}.footer-legal-nav{display:flex;justify-content:center;gap:14px 22px;flex-wrap:wrap}.footer-legal-nav a,.footer-link-btn{color:#6b7280;text-decoration:underline;text-underline-offset:3px;background:none;border:0;padding:0;font:inherit;cursor:pointer;transition:color .18s ease}.footer-legal-nav a:hover,.footer-link-btn:hover,.footer-legal p a:hover{color:#D50D10}
