/* All privacy reading styles stay within this page and use the site's navy/slate palette. */
.privacy-root {
    --privacy-paper: #f8fafc;
    --privacy-paper-deep: #f8fafc;
    --privacy-ink: #0a1f2e;
    --privacy-muted: #475569;
    --privacy-teal: var(--surf-dark);
    --privacy-line: #e2e8f0;
    color: var(--privacy-ink);
    background: var(--privacy-paper);
    font-family: 'Poppins', system-ui, sans-serif;
    -webkit-font-smoothing: antialiased;
}
.privacy-root *, .privacy-root *::before, .privacy-root *::after { box-sizing: border-box; }
.privacy-root .privacy-text-link, .privacy-root .privacy-sidebar__top, .privacy-root .privacy-index a { min-height: 44px; }
.privacy-root .privacy-policy .overflow-x-auto:focus-visible { outline: 3px solid var(--privacy-teal); outline-offset: 4px; }
.privacy-root .privacy-shell { width: min(1240px, calc(100% - 96px)); margin-inline: auto; }
.privacy-root a, .privacy-root button { -webkit-tap-highlight-color: transparent; }
.privacy-root a:focus-visible, .privacy-root button:focus-visible, .privacy-root summary:focus-visible { outline: 3px solid var(--privacy-teal); outline-offset: 5px; border-radius: 3px; }
.privacy-root .privacy-eyebrow { display: flex; align-items: center; gap: 12px; margin: 0; color: var(--privacy-teal); font-size: 10px; line-height: 1.5; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.privacy-root .privacy-eyebrow::before { content: ''; width: 27px; height: 2px; flex-shrink: 0; background: currentColor; }

.privacy-root .privacy-hero { padding: 142px 0 0; }
.privacy-root .privacy-hero__grid { display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(240px, .8fr); align-items: end; gap: 64px; padding: 30px 0 54px; }
.privacy-root .privacy-hero__title { max-width: 850px; margin: 0 0 28px; font-size: clamp(3.5rem, 6.4vw, 6rem); font-weight: 700; line-height: 1.04; letter-spacing: -.065em; text-wrap: balance; overflow-wrap: anywhere; }
.privacy-root[lang='de'] .privacy-hero__title { font-size: clamp(3rem, 5.8vw, 5.35rem); hyphens: auto; overflow-wrap: normal; }
.privacy-root[lang='fr'] .privacy-hero__title { font-size: clamp(3rem, 5.8vw, 5.35rem); hyphens: auto; }
.privacy-root .privacy-date { display: inline-flex; align-items: center; gap: 10px; max-width: 100%; margin: 0; padding: 10px 15px; border: 1px solid #cbd5e1; border-radius: 999px; color: var(--privacy-teal); background: #f1f5f9; font-size: 11px; font-weight: 700; line-height: 1.5; }
.privacy-root .privacy-date svg { width: 16px; height: 16px; flex-shrink: 0; }
.privacy-root .privacy-hero__note { padding-bottom: 4px; }
.privacy-root .privacy-hero__line { display: block; width: 42px; height: 3px; margin-bottom: 20px; background: var(--privacy-teal); }
.privacy-root .privacy-hero__note-title { margin: 0 0 10px; font-size: 20px; line-height: 1.4; font-weight: 700; letter-spacing: -.035em; }
.privacy-root .privacy-hero__note-body { max-width: 300px; margin: 0 0 23px; color: var(--privacy-muted); font-size: 13px; line-height: 1.85; }
.privacy-root .privacy-text-link { display: inline-flex; align-items: center; justify-content: flex-start; gap: 12px; width: auto; min-height: 32px; padding: 0; border: 0; background: none; color: var(--privacy-teal); font: inherit; font-size: 12px; line-height: 1.5; font-weight: 700; text-decoration: none; text-underline-offset: 5px; cursor: pointer; }
.privacy-root .privacy-text-link:hover { text-decoration: underline; }
.privacy-root .privacy-text-link svg { width: 18px; height: 18px; flex-shrink: 0; }
.privacy-root .privacy-quicklinks { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 18px 0; border-top: 1px solid var(--privacy-line); border-bottom: 1px solid var(--privacy-line); }
.privacy-root .privacy-quicklinks__count { color: var(--privacy-muted); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.privacy-root .privacy-quicklinks__actions { display: flex; align-items: center; gap: 34px; }

.privacy-root .privacy-layout { display: grid; grid-template-columns: 264px minmax(0, 1fr); align-items: start; gap: 76px; padding-top: 64px; padding-bottom: 76px; }
.privacy-root .privacy-sidebar { position: sticky; top: 116px; min-width: 0; }
.privacy-root .privacy-contents--desktop { max-height: calc(100vh - 140px); overflow-y: auto; padding: 2px 16px 12px 2px; scrollbar-width: thin; scrollbar-color: #cbd5e1 transparent; }
.privacy-root .privacy-contents--desktop > .privacy-eyebrow { margin-bottom: 23px; }
.privacy-root .privacy-index { display: flex; flex-direction: column; gap: 2px; }
.privacy-root .privacy-index a { display: grid; grid-template-columns: 21px minmax(0, 1fr); align-items: start; gap: 11px; padding: 9px 8px; border-left: 2px solid transparent; color: var(--privacy-muted); font-size: 11px; font-weight: 400; line-height: 1.6; text-decoration: none; transition: color .15s, background-color .15s, border-color .15s; }
.privacy-root .privacy-index__number { padding-top: 1px; font-size: 9px; font-weight: 700; color: var(--privacy-muted); }
.privacy-root .privacy-index a:hover, .privacy-root .privacy-index a[aria-current='location'] { border-left-color: var(--privacy-teal); background: #f1f5f9; color: var(--privacy-teal); }
.privacy-root .privacy-index a[aria-current='location'] { font-weight: 700; }
.privacy-root .privacy-index a[aria-current='location'] .privacy-index__number { color: var(--privacy-teal); }
.privacy-root .privacy-sidebar__top { display: inline-flex; align-items: center; gap: 18px; margin: 26px 0 0 10px; color: var(--privacy-teal); font-size: 10px; font-weight: 700; text-decoration: none; }
.privacy-root .privacy-sidebar__top:hover { text-decoration: underline; text-underline-offset: 4px; }
.privacy-root .privacy-contents--mobile { display: none; }

.privacy-root .privacy-policy { min-width: 0; max-width: 824px; font-size: 16px; font-weight: 400; line-height: 1.9; color: #334155; overflow-wrap: break-word; }
.privacy-root .privacy-policy, .privacy-root .privacy-policy__section { scroll-margin-top: 116px; }
.privacy-root .privacy-intro { padding-bottom: 10px; }
.privacy-root .privacy-intro .lead { margin: 0 0 22px; color: var(--privacy-ink); font-size: 19px; line-height: 1.85; letter-spacing: -.02em; }
.privacy-root .privacy-policy p { margin: 0 0 20px; }
.privacy-root .privacy-policy a, .privacy-root .privacy-policy .js-cookie-settings { color: var(--privacy-teal); font-weight: 700; text-decoration: underline; text-decoration-color: #cbd5e1; text-underline-offset: 4px; transition: text-decoration-color .15s; }
.privacy-root .privacy-policy a:hover, .privacy-root .privacy-policy .js-cookie-settings:hover { color: var(--privacy-ink); text-decoration-color: currentColor; }
.privacy-root .privacy-policy .js-cookie-settings { font-size: inherit; line-height: inherit; }
.privacy-root .privacy-policy strong { color: var(--privacy-ink); font-weight: 700; }
.privacy-root .privacy-policy__section { padding: 36px 0 26px; border-top: 1px solid var(--privacy-line); }
.privacy-root .privacy-policy__section > h2 { margin: 0 0 22px; color: var(--privacy-ink); font-size: clamp(1.4rem, 2vw, 1.75rem); line-height: 1.4; font-weight: 700; letter-spacing: -.035em; text-wrap: balance; }
.privacy-root .privacy-policy__section h3 { margin: 32px 0 16px; color: var(--privacy-teal); font-size: 15px; line-height: 1.6; font-weight: 700; letter-spacing: -.01em; }
.privacy-root .privacy-policy ul { margin: 0 0 24px; padding-left: 22px; list-style: disc; }
.privacy-root .privacy-policy li { margin: 0; padding: 3px 0 3px 5px; }
.privacy-root .privacy-policy li::marker { color: var(--privacy-teal); }
.privacy-root .privacy-policy li + li { margin-top: 7px; }
.privacy-root .privacy-policy__section > :last-child { margin-bottom: 0; }
.privacy-root .privacy-policy .overflow-x-auto { width: 100%; margin: 20px 0 28px; padding: 0; border: 1px solid #cbd5e1; border-radius: 12px; background: #fff; overflow-x: auto; overscroll-behavior-x: contain; -webkit-overflow-scrolling: touch; }
.privacy-root .privacy-policy table { width: 100%; min-width: 620px; margin: 0; border: 0; border-collapse: collapse; border-radius: 0; overflow: visible; font-size: 12px; line-height: 1.85; }
.privacy-root .privacy-policy thead { background: #e2e8f0; color: var(--privacy-ink); }
.privacy-root .privacy-policy th { padding: 15px 18px; border: 0; border-bottom: 1px solid #cbd5e1; vertical-align: top; font-size: 11px; line-height: 1.6; font-weight: 700; text-align: left; }
.privacy-root .privacy-policy td { padding: 16px 18px; border: 0; border-bottom: 1px solid #e2e8f0; vertical-align: top; }
.privacy-root .privacy-policy tr:last-child td { border-bottom: 0; }
.privacy-root .privacy-policy tbody tr:nth-child(even) { background: #f8fafc; }
.privacy-root .privacy-policy code { padding: 2px 4px; border-radius: 3px; background: #f1f5f9; color: #334155; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .93em; white-space: normal; overflow-wrap: anywhere; }
.privacy-root #privacy-section-1 { margin: 16px 0 34px; padding: 30px; border: 1px solid #cbd5e1; border-radius: 16px; background: #fff; }
.privacy-root #privacy-section-1 > h2 { font-size: 23px; }
.privacy-root #privacy-section-1 ul { padding-left: 0; list-style: none; }
.privacy-root #privacy-section-1 li { padding-left: 0; }
.privacy-root #privacy-section-13 { padding-bottom: 0; }
.privacy-root #privacy-section-13 > .font-bold { font-size: 21px; letter-spacing: -.025em; }
.privacy-root .privacy-policy .text-sm { font-size: 12px; }
.privacy-root .privacy-policy .text-slate-500 { color: var(--privacy-muted); }

.privacy-root .privacy-contact { border-top: 1px solid var(--privacy-line); background: var(--privacy-paper-deep); padding: 58px 0 64px; }
.privacy-root .privacy-contact__inner { display: flex; align-items: center; justify-content: space-between; gap: 48px; }
.privacy-root .privacy-contact h2 { margin: 18px 0 12px; max-width: 590px; color: var(--privacy-ink); font-size: clamp(1.7rem, 2.6vw, 2.5rem); font-weight: 700; line-height: 1.3; letter-spacing: -.045em; text-wrap: balance; }
.privacy-root .privacy-contact__body { margin: 0; color: var(--privacy-muted); font-size: 13px; line-height: 1.8; }
.privacy-root .privacy-contact__link { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; flex-shrink: 0; padding: 15px 0; border-bottom: 1px solid var(--privacy-teal); color: var(--privacy-teal); font-size: 17px; font-weight: 700; letter-spacing: -.025em; text-decoration: none; }
.privacy-root .privacy-contact__link span { font-size: 25px; line-height: 1; }
.privacy-root .privacy-contact__link:hover { color: var(--privacy-ink); border-color: var(--privacy-ink); }

@media (max-width: 1100px) {
    .privacy-root .privacy-shell { width: calc(100% - 64px); }
    .privacy-root .privacy-hero__grid { gap: 36px; grid-template-columns: minmax(0, 1.7fr) minmax(220px, .8fr); }
    .privacy-root .privacy-layout { grid-template-columns: 222px minmax(0, 1fr); gap: 38px; }
    .privacy-root .privacy-policy { font-size: 15px; }
    .privacy-root .privacy-intro .lead { font-size: 17px; }
    .privacy-root .privacy-contact__inner { gap: 30px; }
    .privacy-root .privacy-contact__link { font-size: 15px; }
}

@media (max-width: 800px) {
    .privacy-root .privacy-hero { padding-top: 118px; }
    .privacy-root .privacy-hero__grid { grid-template-columns: 1fr; gap: 28px; padding: 26px 0 32px; }
    .privacy-root .privacy-hero__title { max-width: 600px; margin-bottom: 23px; font-size: clamp(3rem, 9vw, 4.8rem); }
    .privacy-root[lang='de'] .privacy-hero__title, .privacy-root[lang='fr'] .privacy-hero__title { font-size: clamp(2.8rem, 7.5vw, 4.2rem); }
    .privacy-root .privacy-hero__note { display: grid; grid-template-columns: 1fr auto; column-gap: 24px; align-items: end; }
    .privacy-root .privacy-hero__line, .privacy-root .privacy-hero__note-title { display: none; }
    .privacy-root .privacy-hero__note-body { max-width: 440px; margin-bottom: 0; }
    .privacy-root .privacy-hero__note > .privacy-text-link { white-space: nowrap; }
    .privacy-root .privacy-quicklinks { gap: 16px; }
    .privacy-root .privacy-quicklinks__actions { gap: 20px; }
    .privacy-root .privacy-quicklinks__count { font-size: 9px; }
    .privacy-root .privacy-text-link { font-size: 11px; }
    .privacy-root .privacy-layout { grid-template-columns: 1fr; gap: 30px; padding-top: 32px; padding-bottom: 46px; }
    .privacy-root .privacy-sidebar { position: static; }
    .privacy-root .privacy-contents--desktop { display: none; }
    .privacy-root .privacy-contents--mobile { display: block; border: 1px solid #cbd5e1; border-radius: 10px; background: #f1f5f9; }
    .privacy-root .privacy-contents--mobile summary { display: flex; align-items: center; gap: 14px; min-height: 58px; padding: 15px 18px; color: var(--privacy-ink); font-size: 12px; font-weight: 700; list-style: none; cursor: pointer; }
    .privacy-root .privacy-contents--mobile summary::-webkit-details-marker { display: none; }
    .privacy-root .privacy-contents__count { margin-left: auto; color: var(--privacy-muted); font-size: 9px; font-weight: 400; }
    .privacy-root .privacy-contents__toggle { font-size: 21px; font-weight: 400; color: var(--privacy-teal); line-height: 1; }
    .privacy-root .privacy-contents--mobile[open] .privacy-contents__toggle { transform: rotate(45deg); }
    .privacy-root .privacy-contents--mobile .privacy-index { padding: 0 15px 17px; }
    .privacy-root .privacy-index a { padding-block: 11px; font-size: 12px; min-height: 44px; }
    .privacy-root .privacy-policy { max-width: none; font-size: 15px; }
    .privacy-root .privacy-intro .lead { font-size: 17px; }
    .privacy-root .privacy-policy__section { padding: 30px 0 25px; }
    .privacy-root .privacy-policy__section > h2 { font-size: 23px; }
    .privacy-root #privacy-section-1 { padding: 26px; }
    .privacy-root .privacy-contact { padding-block: 42px 48px; }
    .privacy-root .privacy-contact__inner { align-items: flex-start; flex-direction: column; gap: 22px; }
}

@media (max-width: 480px) {
    .privacy-root .privacy-shell { width: calc(100% - 40px); }
    .privacy-root .privacy-hero { padding-top: 110px; }
    .privacy-root .privacy-eyebrow { font-size: 9px; letter-spacing: .15em; }
    .privacy-root .privacy-hero__title { font-size: clamp(2.85rem, 11.5vw, 3.5rem); letter-spacing: -.065em; }
    .privacy-root[lang='de'] .privacy-hero__title { font-size: clamp(2rem, 9vw, 2.75rem); line-height: 1.1; }
    .privacy-root[lang='fr'] .privacy-hero__title { font-size: clamp(2.1rem, 9vw, 2.6rem); line-height: 1.12; }
    .privacy-root .privacy-date { padding: 9px 12px; gap: 7px; font-size: 10px; }
    .privacy-root .privacy-hero__grid { gap: 22px; padding-bottom: 27px; }
    .privacy-root .privacy-hero__note { display: block; }
    .privacy-root .privacy-hero__note-body { max-width: 330px; margin-bottom: 14px; font-size: 12px; }
    .privacy-root .privacy-quicklinks { align-items: flex-start; flex-direction: column; gap: 8px; padding-block: 15px; }
    .privacy-root .privacy-quicklinks__actions { flex-wrap: wrap; gap: 8px 24px; }
    .privacy-root .privacy-quicklinks__actions .privacy-text-link { min-height: 44px; }
    .privacy-root .privacy-layout { gap: 25px; padding-top: 25px; }
    .privacy-root .privacy-intro .lead { font-size: 16px; line-height: 1.9; }
    .privacy-root .privacy-policy { font-size: 15px; line-height: 1.9; }
    .privacy-root .privacy-policy__section > h2 { font-size: 21px; }
    .privacy-root #privacy-section-1 { padding: 22px; border-radius: 12px; }
    .privacy-root #privacy-section-1 > h2 { font-size: 20px; }
    .privacy-root .privacy-policy h3 { font-size: 14px; }
    .privacy-root .privacy-policy table { min-width: 570px; font-size: 11px; }
    .privacy-root .privacy-policy th, .privacy-root .privacy-policy td { padding: 14px; }
    .privacy-root .privacy-contact__link { font-size: 16px; }
}

@media (prefers-reduced-motion: reduce) {
    .privacy-root a, .privacy-root button { transition: none; }
}
.privacy-root .privacy-text-link, .privacy-root .privacy-sidebar__top { min-height: 44px; }
.privacy-root .privacy-contents--desktop { padding: 8px 16px 12px 8px; }
