/* The facts stay in the reading flow. Only their local illustration changes. */
.privacy-room {
  --privacy-ink:var(--ink);
  --privacy-muted:var(--muted);
  --privacy-accent:var(--signal);
  --privacy-rule:color-mix(in srgb,var(--ink) 22%,transparent);
  --privacy-surface:color-mix(in srgb,var(--panel) 90%,var(--signal) 10%);
  padding-block:clamp(80px,9vw,130px) clamp(70px,8vw,110px);
  background:var(--page);
  color:var(--privacy-ink);
}
.privacy-room :focus-visible { outline:3px solid var(--privacy-accent); outline-offset:5px; }
.privacy-room-heading { display:grid; grid-template-columns:1.25fr .85fr; gap:10%; align-items:end; margin-bottom:clamp(36px,5vw,64px); }
.privacy-room .privacy-room-heading h2 { font:400 clamp(48px,6vw,92px)/1.02 var(--sans,'IBM Plex Sans',sans-serif); letter-spacing:-.055em; margin:0; color:var(--privacy-ink); }
.privacy-room-heading > p { margin:0 0 5px; font-size:clamp(18px,1.5vw,20px); line-height:1.65; color:var(--privacy-muted); max-width:29em; }
.privacy-workspace { display:grid; grid-template-columns:1.3fr 1fr; gap:8%; align-items:start; }
.privacy-local-scene { position:sticky; top:clamp(96px,16vh,155px); min-width:0; margin:0; padding-block:16px; }
.privacy-local-label { display:flex; align-items:center; gap:10px; margin:0 0 12px 3%; color:var(--privacy-muted); font-size:17px; line-height:1.5; }
.privacy-local-label > span { width:7px; height:7px; border-radius:50%; background:var(--privacy-accent); }
.privacy-drawing { display:block; width:100%; height:auto; overflow:visible; }
.privacy-computer { fill:var(--panel); fill-opacity:.5; stroke:var(--privacy-ink); stroke-opacity:.35; stroke-width:1.5; }
.privacy-computer-edge,.privacy-ground { fill:none; stroke:var(--privacy-ink); stroke-opacity:.3; stroke-width:1.5; }
.privacy-ground { stroke-opacity:.15; }
.privacy-camera { fill:var(--privacy-muted); opacity:.6; }
.privacy-layer-back { fill:var(--privacy-accent); fill-opacity:.09; stroke:var(--privacy-accent); stroke-opacity:.35; stroke-width:1.2; }
.privacy-layer-back path { fill:none; }
.privacy-layer-mid { fill:var(--privacy-accent); fill-opacity:.13; stroke:var(--privacy-accent); stroke-opacity:.4; stroke-width:1.2; }
.privacy-layer-back,.privacy-layer-mid { transform-box:fill-box; transform-origin:center; transition:transform .55s cubic-bezier(.2,.65,.2,1); }
.privacy-room[data-active='voice'] .privacy-layer-back { transform:translate(5px,-4px); }
.privacy-room[data-active='voice'] .privacy-layer-mid { transform:translate(2px,-2px); }
.privacy-room[data-active='rehearsal'] .privacy-layer-back { transform:translate(-3px,5px); }
.privacy-room[data-active='rehearsal'] .privacy-layer-mid { transform:translate(-1px,2px); }
.privacy-reader-surface { filter:drop-shadow(0 12px 14px color-mix(in srgb,var(--ink) 16%,transparent)); }
.privacy-reader-surface > rect { fill:var(--privacy-surface); stroke:var(--privacy-accent); stroke-opacity:.65; stroke-width:1.3; }
.privacy-reader-surface text { fill:var(--privacy-ink); font:400 40px var(--sans,'IBM Plex Sans',sans-serif); letter-spacing:-1.6px; }
.privacy-reader-surface .privacy-reader-current { fill:var(--privacy-accent); }
.privacy-reader-dot { fill:var(--privacy-accent); }
.privacy-reader-rule { stroke:var(--privacy-ink); stroke-opacity:.3; stroke-width:1.5; }
.privacy-reader-progress { stroke:var(--privacy-accent); stroke-width:2; }
.privacy-source { opacity:0; transform:translateX(-7px); transition:opacity .24s,transform .45s cubic-bezier(.2,.65,.2,1); }
.privacy-room[data-active='script'] [data-local-view='script'],.privacy-room[data-active='voice'] [data-local-view='voice'],.privacy-room[data-active='rehearsal'] [data-local-view='rehearsal'] { opacity:1; transform:none; }
.privacy-source-surface { fill:var(--privacy-surface); stroke:var(--privacy-accent); stroke-opacity:.65; stroke-width:1.5; }
.privacy-sheet-back { fill:var(--privacy-accent); fill-opacity:.1; stroke:var(--privacy-accent); stroke-opacity:.35; stroke-width:1.2; }
.privacy-script-lines { fill:none; stroke:var(--privacy-ink); stroke-opacity:.7; stroke-width:3; stroke-linecap:round; }
.privacy-script-emphasis { stroke:var(--privacy-accent); stroke-width:3; stroke-linecap:round; }
.privacy-voice-space { fill:var(--privacy-accent); fill-opacity:.08; stroke:var(--privacy-accent); stroke-opacity:.35; stroke-width:1.3; }
.privacy-wave { fill:none; stroke:var(--privacy-accent); stroke-width:2.7; stroke-linecap:round; stroke-linejoin:round; }
.privacy-chart-baseline { stroke:var(--privacy-ink); stroke-opacity:.3; stroke-width:1.5; }
.privacy-history-bars { stroke:var(--privacy-accent); stroke-width:8; stroke-linecap:round; }
.privacy-local-route { opacity:0; }
.privacy-room[data-active='script'] [data-route='script'],.privacy-room[data-active='voice'] [data-route='voice'],.privacy-room[data-active='rehearsal'] [data-route='rehearsal'] { opacity:1; }
.privacy-route-stroke { fill:none; stroke:var(--privacy-accent); stroke-width:2.2; stroke-linecap:round; stroke-dasharray:1; stroke-dashoffset:0; }
.privacy-route-end { fill:var(--privacy-accent); }
[data-privacy-enhanced='true'][data-active='script'] [data-route='script'] .privacy-route-stroke,
[data-privacy-enhanced='true'][data-active='voice'] [data-route='voice'] .privacy-route-stroke,
[data-privacy-enhanced='true'][data-active='rehearsal'] [data-route='rehearsal'] .privacy-route-stroke { animation:privacy-local-path .7s cubic-bezier(.2,.65,.2,1) both; }
[data-privacy-enhanced='true'][data-active='voice'] .privacy-wave { stroke-dasharray:1; animation:privacy-local-path .6s ease-out both; }
@keyframes privacy-local-path { from { stroke-dashoffset:1; opacity:.2; } to { stroke-dashoffset:0; opacity:1; } }
.privacy-local-scene figcaption { color:var(--privacy-muted); font-size:16px; line-height:1.5; margin:12px 0 0 3%; }
.privacy-explanations { min-width:0; }
.privacy-copy-panel { position:relative; display:flex; flex-direction:column; justify-content:center; min-height:clamp(260px,38vh,350px); padding:35px 0 35px 30px; border-left:1px solid var(--privacy-rule); scroll-margin-top:120px; }
.privacy-copy-panel::before { content:''; position:absolute; top:36px; bottom:36px; left:-1px; width:2px; background:var(--privacy-accent); opacity:0; transition:opacity .3s; }
.privacy-copy-panel[data-privacy-current='true']::before { opacity:1; }
.privacy-fact-symbol { width:30px; height:30px; flex:none; margin-bottom:19px; fill:none; stroke:var(--privacy-accent); stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
.privacy-room .privacy-copy-panel h3 { margin:0 0 17px; color:var(--privacy-ink); font:400 clamp(29px,2.65vw,39px)/1.13 var(--sans,'IBM Plex Sans',sans-serif); letter-spacing:-.035em; }
.privacy-copy-panel > p { margin:0; color:var(--privacy-muted); font-size:19px; line-height:1.65; max-width:30em; }
.privacy-network { margin-top:clamp(42px,6vw,80px); border-top:1px solid var(--privacy-rule); padding-top:38px; }
.privacy-room .privacy-network > h3 { color:var(--privacy-ink); font:400 clamp(28px,3vw,42px)/1.14 var(--sans,'IBM Plex Sans',sans-serif); letter-spacing:-.035em; margin:0 0 34px; }
.privacy-network-facts { display:grid; grid-template-columns:1fr 1fr; gap:10%; }
.privacy-network h4 { color:var(--privacy-ink); font:500 20px/1.35 var(--sans,'IBM Plex Sans',sans-serif); margin:0 0 12px; }
.privacy-network-facts p { font-size:18px; line-height:1.7; color:var(--privacy-muted); margin:0; max-width:36em; }
.privacy-evidence-link { display:inline-flex; align-items:center; gap:20px; min-height:48px; font-size:18px; line-height:1.5; margin-top:25px; color:var(--privacy-ink); text-decoration:underline; text-decoration-color:var(--privacy-accent); text-underline-offset:5px; }
.privacy-evidence-link > span { color:var(--privacy-accent); }
.privacy-evidence-link:hover { color:var(--privacy-accent); }
@media (max-width:1000px) {
  .privacy-room-heading { gap:7%; }
  .privacy-workspace { grid-template-columns:1.15fr 1fr; gap:5%; }
  .privacy-copy-panel { padding-left:25px; }
  .privacy-copy-panel > p { font-size:18px; }
}
@media (max-width:760px) {
  .privacy-room { padding-block:75px; }
  .privacy-room-heading { grid-template-columns:1fr; gap:25px; margin-bottom:28px; }
  .privacy-room .privacy-room-heading h2 { font-size:clamp(44px,11vw,72px); }
  .privacy-room-heading > p { font-size:18px; max-width:32em; }
  .privacy-workspace { grid-template-columns:minmax(0,1fr); gap:20px; }
  .privacy-local-scene { position:static; width:min(100%,420px); margin-inline:auto; padding:0; }
  .privacy-local-label { font-size:16px; margin-left:0; }
  .privacy-local-scene figcaption { margin:8px 0 0; font-size:15px; }
  .privacy-copy-panel { min-height:0; padding:30px 0 31px 24px; }
  .privacy-copy-panel::before { top:30px; bottom:31px; }
  .privacy-fact-symbol { width:27px; height:27px; margin-bottom:17px; }
  .privacy-room .privacy-copy-panel h3 { font-size:30px; margin-bottom:15px; }
  .privacy-copy-panel > p { font-size:18px; }
  .privacy-network { margin-top:34px; padding-top:31px; }
  .privacy-room .privacy-network > h3 { font-size:31px; margin-bottom:28px; }
  .privacy-network-facts { grid-template-columns:1fr; gap:28px; }
  .privacy-network h4 { font-size:19px; }
  .privacy-network-facts p { font-size:18px; }
  .privacy-evidence-link { font-size:17px; gap:14px; }
}
[data-privacy-visible='false'] :is(.privacy-route-stroke,.privacy-wave) { animation-play-state:paused!important; }
[data-privacy-motion='static'] * { animation:none!important; transition:none!important; }
[data-privacy-motion='static'] :is(.privacy-layer-back,.privacy-layer-mid,.privacy-source) { transform:none!important; }
@media (prefers-reduced-motion:reduce) {
  .privacy-room * { animation:none!important; transition:none!important; }
  .privacy-layer-back,.privacy-layer-mid,.privacy-source { transform:none!important; }
}
html[data-motion='paused'] .privacy-room * { animation:none!important; transition:none!important; }
html[data-motion='paused'] .privacy-room :is(.privacy-layer-back,.privacy-layer-mid,.privacy-source) { transform:none!important; }
