/* Simple legal reading pages, using the existing navigation and site rhythm. */
.legal-page .header:not(.is-scrolled) { background:#fff; color:#050607; border-color:#e1e6e9; }
.legal-page .legal-brand-light { display:none; }
.legal-page .header.is-scrolled .legal-brand-dark { display:none; }
.legal-page .header.is-scrolled .legal-brand-light { display:block; }
.legal-page .header:not(.is-scrolled) .nav-link { color:#52616c; }
.legal-page .header:not(.is-scrolled) .nav-link:is(:hover,:focus-visible),
.legal-page .header:not(.is-scrolled) .services-nav.is-open > .services-trigger { color:#050607; background:#f1f4f6; }
.legal-page .header:not(.is-scrolled) .services-menu { background:#24272a; -webkit-backdrop-filter:none; backdrop-filter:none; }
.legal-page .header:not(.is-scrolled) .header-language { color:#626f79; border-color:#cbd4da; background:#fff; }
.legal-page .header:not(.is-scrolled) .language-option:is(:hover,:focus-visible) { color:#050607; background:#f1f4f6; }
.legal-page .header:not(.is-scrolled) .language-option.is-active { background:#050607; color:#fff; }
.legal-page .header:not(.is-scrolled) .menu-toggle { color:#050607; }
.legal-page .header:not(.is-scrolled) .header-contact { --button-base-bg:#050607; --button-base-fg:#fff; --button-base-border:#050607; --button-hover-bg:#fff; --button-hover-fg:#050607; --button-hover-border:#050607; }
.legal-page .legal-main { background:#fff; padding:calc(112px + var(--section-space)) var(--gutter) var(--section-space); }
.legal-wrap { max-width:1120px; margin-inline:auto; }
.legal-intro { margin-bottom:clamp(48px,5vw,80px); }
.legal-intro h1 { font-size:clamp(48px,4.7vw,80px); line-height:1.07; letter-spacing:-.05em; overflow-wrap:break-word; }
.legal-date { color:#626f79; margin-top:24px; font-size:16px; }
.legal-imprint-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); align-items:start; gap:clamp(40px,5vw,80px); }
.legal-identity { background:#f1f4f6; padding:clamp(28px,3vw,40px); }
.legal-page .legal-main h2 { font-size:24px; line-height:1.2; letter-spacing:-.03em; font-weight:600; margin-bottom:18px; }
.legal-address { font-style:normal; font-size:18px; line-height:1.65; }
.legal-contact { display:flex; flex-direction:column; align-items:flex-start; gap:10px; margin-top:24px; }
.legal-page .legal-main a { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; transition:color .2s ease; overflow-wrap:anywhere; }
.legal-page .legal-main a:is(:hover,:focus-visible) { color:#52616c; }
.legal-block + .legal-block { margin-top:36px; padding-top:36px; border-top:1px solid #e1e6e9; }
.legal-block p { color:#52616c; font-size:18px; line-height:1.65; text-wrap:pretty; }
.legal-policy { max-width:800px; }
@media (max-width:1100px) {
  .legal-page .legal-main { padding-top:calc(88px + var(--section-space)); }
  .legal-intro h1 { font-size:var(--compact-h2); }
  .legal-page .legal-main h2 { font-size:var(--compact-h3); }
  .legal-block p,.legal-address,.legal-contact { font-size:var(--compact-body); }
}
@media (max-width:760px) {
  .legal-imprint-grid { grid-template-columns:1fr; gap:var(--compact-gap); }
  .legal-identity { padding:var(--compact-padding); }
  .legal-intro { margin-bottom:var(--compact-gap); }
  .legal-block + .legal-block { margin-top:28px; padding-top:28px; }
}
