.legal-header{max-width:1120px;margin:auto;padding:22px 30px;display:flex;align-items:center;justify-content:space-between;gap:25px}.legal-header .logo-link{width:150px}.legal-header .outline-cta{font-size:9px}.legal-content{max-width:850px;margin:35px auto 70px;padding:45px clamp(24px,5vw,60px);background:linear-gradient(145deg,rgba(32,18,42,.92),rgba(11,5,20,.96));border:1px solid var(--line);border-radius:24px;box-shadow:0 25px 70px #0005}.legal-content h1{font-size:clamp(42px,7vw,75px);line-height:1.1;letter-spacing:-.025em;margin:18px 0 25px}.legal-intro{font-size:18px;line-height:1.6;color:#f6dbea}.review-note{border-left:2px solid var(--hot);background:#f7007310;padding:15px 20px;margin:24px 0 32px;color:#d4b8cd;font-size:12px;line-height:1.65}.legal-content section{margin-top:32px}.legal-content h2{font-family:Georgia,serif;font-weight:400;font-size:25px;margin:0 0 16px}.legal-content p,.legal-content address{line-height:1.8;font-size:14px;color:#d7c8d9;margin-bottom:14px;font-style:normal}.legal-content a{color:#f89dc8;text-decoration:underline;text-underline-offset:3px}.legal-content .legal-updated{font-size:11px;letter-spacing:.06em;margin-top:45px;color:#b7a4bc}.legal-footer{max-width:1000px;margin:auto;padding:20px 30px 45px;display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);color:#c2a9be;font-size:10px;letter-spacing:.1em}.legal-footer nav{display:flex;gap:22px}.legal-footer a:hover{color:#ff90c3}@media(max-width:700px){.legal-header{padding:18px}.legal-header .logo-link{width:110px}.legal-header .outline-cta{font-size:8px;padding:10px 13px;gap:12px}.legal-content{margin:20px 15px 40px;padding:28px 24px}.legal-footer{margin:0 18px;padding:25px 6px 35px;flex-direction:column;line-height:1.7}.legal-footer nav{flex-wrap:wrap;gap:20px}.legal-intro{font-size:16px}}
/* Privacy only: keep scrolling text above the floating bottom controls. */
html:has(body.privacy-page){overflow:hidden}
.privacy-page{overflow:hidden}
.privacy-scroll{height:calc(100dvh - 90px - env(safe-area-inset-bottom,0px) - var(--controls-viewport-inset,0px));overflow-y:auto;overscroll-behavior-y:contain;scroll-behavior:smooth}
html[lang^="de"] .privacy-page .legal-content h1{overflow-wrap:normal;word-break:normal;hyphens:none}
@media(max-width:700px){html[lang^="de"] .privacy-page .legal-content h1{font-size:clamp(30px,8.4vw,42px)}}

html[lang^="de"] .privacy-page .legal-content h1.privacy-heading{white-space:normal;word-break:normal;overflow-wrap:normal;hyphens:manual}

/* Anchor the language switch to the privacy page scrolling area. */
.privacy-page .privacy-scroll{position:relative}
