/* Asset version: 2026.09.22-1 */
body.privacy-page { height:auto; min-height:100vh; display:flex; flex-direction:column; }
.privacy-page .container { max-width:1200px; }
.privacy-page .brand-logo { width:276px; height:auto; max-height:none; }
.privacy-page.specialist .brand-logo { width:325px; }
.privacy-page main { background:#0e3056; flex:1 0 auto; }
.legal-document { max-width:800px; margin:0 auto; padding:72px 32px 88px; color:#e9eef4; }
.legal-header { padding-bottom:24px; margin-bottom:8px; }
.legal-kicker { color:#506980; text-transform:uppercase; letter-spacing:.12em; font-size:12px !important; font-weight:650; margin:0 0 18px !important; }
.legal-document h1 { color:#f5f7fa; font-size:clamp(30px,4.2vw,44px); line-height:1.15; letter-spacing:-.035em; margin:0 0 20px; overflow-wrap:anywhere; }
.legal-document p { font-size:16px; line-height:1.8; margin:0 0 16px; }
.legal-document .legal-intro { font-size:18px; line-height:1.65; }
.legal-meta { color:#b8c7d7; font-size:13px !important; margin:20px 0 0 !important; }
.legal-section { margin:0 0 32px; break-inside:avoid-page; }
.legal-document h2 { margin:0; font-size:18px; line-height:1.5; }
.legal-number { color:#62788f; font-size:13px; font-variant-numeric:tabular-nums; line-height:27px; flex:0 0 22px; }
.legal-document a { color:#dae9fa; text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.legal-document .review-note { border-left:2px solid #a2b3c5; padding-left:16px; color:#b8c7d7; font-size:14px; }
.legal-sources { border-top:1px solid #ffffff26; padding-top:22px; font-size:13px !important; color:#b8c7d7; }
.privacy-page footer.site-footer { margin-top:0; }
.privacy-page .site-footer .cols { grid-template-columns:repeat(6,minmax(0,1fr)); }
.privacy-page.specialist .site-footer .cols { grid-template-columns:repeat(2,minmax(0,1fr)); }
.privacy-page .site-nav-tray { overflow-y:auto; }
.privacy-page .nav-cta { min-width:44px; min-height:44px; }
@media (max-width:1068px) { .privacy-page .nav-items { gap:10px; } .privacy-page .nav-items a { font-size:14px; padding-inline:3px; } .privacy-page .brand-logo { width:230px; } .privacy-page.specialist .brand-logo { width:240px; } .privacy-page .site-footer .cols { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:833px) { .privacy-page .brand-logo, .privacy-page.specialist .brand-logo { width:min(276px,calc(100vw - 136px)); } .privacy-page .nav-cta { right:12px; } }
@media (max-width:600px) { .legal-document { padding:40px 24px 48px; } .legal-header { padding-bottom:24px; margin-bottom:28px; } .legal-document p { font-size:15px; line-height:1.75; } .legal-document .legal-intro { font-size:17px; } .legal-document h2 { margin:0; font-size:18px; line-height:1.5; } .privacy-page .site-footer .cols, .privacy-page.specialist .site-footer .cols { grid-template-columns:1fr; } }
@media (prefers-reduced-motion:reduce) { *, *::before, *::after { scroll-behavior:auto !important; transition:none !important; } }
@media print { .site-nav,.site-nav-placeholder,.site-nav-tray,.nav-curtain,.site-footer,.skip-link { display:none !important; } .legal-document { max-width:none; padding:0; } .privacy-page main { background:white; } .legal-document p { font-size:10pt; } .legal-document h1 { font-size:24pt; } .legal-document h2 { margin:0; font-size:18px; line-height:1.5; } }

.privacy-page .site-nav-placeholder { flex:none; }

:root { --acc-expand:250ms; --acc-collapse:250ms; --acc-chevron:250ms; --acc-ease:cubic-bezier(0.22,1,0.36,1); }
.t-acc { border-bottom:1px solid #ffffff26; }
.t-acc:first-of-type { border-top:1px solid #ffffff26; }
.t-acc-head { display:flex; align-items:center; justify-content:space-between; gap:24px; width:100%; padding:24px 0; border:0; background:none; color:#f5f7fa; font:inherit; font-weight:550; text-align:left; cursor:pointer; }
.t-acc-head:hover { color:#badbfa; }
.t-acc-head:focus-visible { outline:2px solid #a5d1ff; outline-offset:4px; }
.t-acc-chevron { flex:none; width:18px; height:18px; }
.t-acc-chevron svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.legal-answer { padding:0 30px 20px 0; }
.legal-answer p:last-child { margin-bottom:0; }
.privacy-footer-link { margin:28px 0 0; color:#c7d5e4; font-size:13px; }

/* grid-template-rows 0fr → 1fr gives a clean height animation
   with no JS measurement; the inner element clips overflow. */
.t-acc-panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows var(--acc-collapse) var(--acc-ease);
}
.t-acc[data-open="true"] .t-acc-panel {
  grid-template-rows: 1fr;
  transition: grid-template-rows var(--acc-expand) var(--acc-ease);
}
.t-acc-panel-inner {
  overflow: hidden;
  opacity: 0;
  filter: blur(2px);
  transition:
    opacity var(--acc-collapse) var(--acc-ease),
    filter var(--acc-collapse) var(--acc-ease);
}
.t-acc[data-open="true"] .t-acc-panel-inner {
  opacity: 1;
  filter: blur(0);
  transition:
    opacity var(--acc-expand) var(--acc-ease),
    filter var(--acc-expand) var(--acc-ease);
}
/* Flip the chevron vertically to turn the "v" into a "^".
   scaleY(-1) about the centre passes through a flat line at
   the midpoint (same look as a `d:` path morph) but animates
   in every browser, unlike CSS `d:` morphing (Chromium only).
   The chevron path is symmetric about the 16x16 viewBox
   centre, so the flip lands exactly on the "^"; non-scaling
   -stroke keeps the stroke width constant through the flip. */
.t-acc-chevron {
  display: inline-flex;
  transform: scaleY(1);
  transform-origin: center;
  transition: transform var(--acc-chevron) var(--acc-ease);
}
.t-acc-chevron path { vector-effect: non-scaling-stroke; }
.t-acc[data-open="true"] .t-acc-chevron {
  transform: scaleY(-1);
}

@media (prefers-reduced-motion: reduce) {
  .t-acc-panel, .t-acc-panel-inner, .t-acc-chevron {
    transition: none !important;
  }
}

@media print { .t-acc-panel { grid-template-rows:1fr !important; } .t-acc-panel-inner { opacity:1 !important; filter:none !important; overflow:visible; } .t-acc-chevron { display:none; } .legal-document,.legal-document h1,.legal-document p,.t-acc-head,.legal-document a { color:#000 !important; } }

@media print { .legal-document .review-note, .legal-document .legal-meta { color:#333 !important; } .t-acc { break-inside:avoid; } }
