/* Einheitliches Erscheinungsbild der rechtlichen Unterseiten. Nur Darstellung, keine Textaenderungen. */
html{background:#1b1b1b}
body{box-sizing:border-box!important;width:100%!important;max-width:none!important;min-height:100vh!important;margin:0!important;padding:28px clamp(18px,4vw,54px) 70px!important;background:#1b1b1b!important;color:#f2f2f2!important;font-family:Arial,Helvetica,sans-serif!important;font-size:16px!important;line-height:1.75!important;overflow-wrap:break-word}
.legal-brand{max-width:1400px;margin:0 auto 34px!important;padding:6px 0 22px!important;border-bottom:1px solid #d7b76e!important}
.legal-brand a{display:flex;justify-content:center;align-items:center;gap:15px;text-decoration:none}
.legal-brand img:first-child{width:95px;height:auto}.legal-brand img:last-child{width:290px;max-width:65vw;height:auto}
#outputPage.ContractText{box-sizing:border-box;max-width:1200px;margin:0 auto;padding:clamp(22px,4vw,54px);background:#393939;border:1px solid rgba(215,183,110,.72);border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.12);color:#f2f2f2}
#outputPage.ContractText *{max-width:100%;box-sizing:border-box}
#outputPage.ContractText h1{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(2rem,4vw,3rem)!important;letter-spacing:.055em!important;color:#d7b76e!important;margin:0 0 26px!important;line-height:1.2!important}
#outputPage.ContractText h2,#outputPage.ContractText h3,#outputPage.ContractText h4{font-family:Georgia,'Times New Roman',serif!important;color:#d7b76e!important;line-height:1.3!important;margin-top:26px!important;margin-bottom:12px!important;letter-spacing:normal!important;text-transform:none!important}
#outputPage.ContractText p,#outputPage.ContractText li,#outputPage.ContractText span,#outputPage.ContractText div{color:inherit}
#outputPage.ContractText p{line-height:1.75!important;margin-bottom:14px!important}
#outputPage.ContractText li{line-height:1.7!important;margin-bottom:8px!important}
#outputPage.ContractText a{color:#e4c87e!important;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
#outputPage.ContractText a:hover{color:#ffe3a0!important}
#outputPage.ContractText strong,#outputPage.ContractText b{color:#fff!important}
#outputPage.ContractText table{width:100%;max-width:100%;border-collapse:collapse}
#outputPage.ContractText td,#outputPage.ContractText th{padding:8px;border-bottom:1px solid rgba(215,183,110,.3)}
a.back{display:block!important;box-sizing:border-box;width:max-content;max-width:calc(100% - 36px);margin:32px auto 0!important;padding:12px 23px!important;background:#393939;color:#e4c87e!important;border:1px solid #d7b76e!important;border-radius:8px!important;text-decoration:none!important;font-weight:600}
a.back:hover{background:#4a4234!important}
@media(max-width:650px){body{padding:16px 16px 48px!important}.legal-brand img:first-child{width:60px}.legal-brand img:last-child{width:205px}#outputPage.ContractText{padding:20px 17px;border-radius:8px}#outputPage.ContractText h1{font-size:2rem!important}}

/* ORIGINALKRONE UND ORIGINALSCHRIFTZUG: GEMEINSAME UNTERKANTE, KEIN UNTERSTRICH */
.legal-brand { border-bottom: none !important; }
.legal-brand a { align-items: flex-end !important; text-decoration: none !important; border-bottom: none !important; }
.legal-brand a img { display: block !important; align-self: flex-end !important; margin-bottom: 0 !important; transform: none !important; }

/* Mobile Lesbarkeit und Marken-Ausrichtung; Rechtstexte unverändert */
@media (max-width:650px) {
  html,body { overflow-x:clip; }
  body { padding:14px 12px 42px !important; font-size:15px !important; }
  .legal-brand { margin-bottom:20px !important; padding:6px 0 10px !important; }
  .legal-brand a { gap:8px !important; max-width:100%; align-items:flex-end !important; }
  .legal-brand img:first-child { width:clamp(48px,15vw,66px) !important; max-width:22vw !important; }
  .legal-brand img:last-child { width:clamp(160px,57vw,235px) !important; max-width:65vw !important; }
  #outputPage.ContractText { padding:20px 15px !important; min-width:0; overflow-wrap:anywhere; }
  #outputPage.ContractText table { display:block; max-width:100%; overflow-x:auto; }
  #outputPage.ContractText pre { white-space:pre-wrap; overflow-wrap:anywhere; }
  a.back { max-width:100%; text-align:center; }
}

/* FREIGABE: Mobiles Original-Markenzeichen auf Impressum und Datenschutz
   gleiche Groessen wie auf den Standardseiten, Unterkanten buendig. */
@media (max-width: 700px) {
  .legal-brand a {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    gap: 8px !important;
    max-width: 100% !important;
    border-bottom: none !important;
    text-decoration: none !important;
  }
  .legal-brand a img:first-child {
    width: clamp(76px, 24vw, 104px) !important;
    max-width: none !important;
    flex: 0 0 auto !important;
    height: auto !important;
    align-self: flex-end !important;
  }
  .legal-brand a img:last-child {
    width: clamp(188px, 59vw, 258px) !important;
    max-width: none !important;
    flex: 0 1 auto !important;
    height: auto !important;
    align-self: flex-end !important;
  }
}
@media (max-width: 340px) {
  .legal-brand a img:first-child { width: 72px !important; }
  .legal-brand a img:last-child { width: 184px !important; }
}

/* 10. GOLDENER NACH-OBEN-BUTTON */
.nach-oben{position:fixed;bottom:24px;right:24px;z-index:1100;display:flex;align-items:center;justify-content:center;width:50px;height:50px;border:0;border-radius:50%;background:#dfbd52;color:#fff;box-shadow:0 5px 16px #0004;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s,transform .2s,visibility .2s}
.nach-oben.sichtbar{opacity:1;visibility:visible;transform:translateY(0)}
.nach-oben:hover{background:#d4af37}

