/* TruScan 2.0 privacy page (docs/design/truscan-2.0/screens/Privacy.html). The numbered rules
   mirror the screen one to one; colours use the theme tokens. */
/* The screens use browser defaults: undo the older site-wide heading, paragraph and link tweaks. */
.pv-page :where(h1, h2, h3, h4) { letter-spacing: normal; text-wrap: wrap; }
.pv-page :where(p) { text-wrap: wrap; }
.pv-page :where(a) { text-underline-offset: auto; }
.pv-1 {
  max-width: 1200px;
  margin: 0 auto;
  padding: 72px 24px 0;
}
.pv-2 {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 48px;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 40px;
}
.pv-3 {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.pv-4 {
  font-size: 14px;
  font-weight: 600;
  color: var(--accent);
}
.pv-5 {
  margin: 0;
  font-size: clamp(56px, 7vw, 96px);
  font-weight: 600;
  line-height: 0.93;
  letter-spacing: -0.058em;
}
.pv-6 {
  display: flex;
  gap: 8px;
  align-items: center;
  height: 36px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  font-size: 14px;
  color: var(--text-2);
}
.pv-7 {
  position: relative;
  overflow: hidden;
  padding: 36px;
  border-radius: 32px;
  background: radial-gradient(ellipse 50% 80% at 0% 0%, var(--mint-soft), rgba(168,245,213,0) 60%), var(--panel);
  border: 1px solid rgba(168,245,213,0.18);
  animation-delay: .08s;
}
.pv-8 {
  margin: 0 0 24px;
  font-size: 26px;
  font-weight: 600;
  letter-spacing: -0.03em;
}
.pv-9 {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(250px, 100%), 1fr));
  gap: 12px;
}
.pv-10, .pv-15, .pv-20, .pv-25 {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 18px;
  border-radius: 20px;
  background: rgba(255,255,255,0.03);
}
.pv-11, .pv-16, .pv-21, .pv-26 {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: var(--mint-soft);
  color: var(--accent);
}
.pv-12, .pv-17, .pv-22, .pv-27 {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.pv-13, .pv-18, .pv-23, .pv-28 {
  font-size: 16px;
  font-weight: 600;
}
.pv-14, .pv-19, .pv-24, .pv-29, .pv-89, .pv-93 {
  font-size: 14px;
  line-height: 1.5;
  color: var(--text-3);
}
.pv-30 {
  margin: 20px 0 0;
  font-size: 14px;
  line-height: 1.5;
  color: var(--muted);
}
.pv-31 {
  text-decoration: none;
}
.pv-32 {
  display: flex;
  flex-wrap: wrap;
  gap: 40px 64px;
  align-items: flex-start;
  margin-top: 72px;
}
.pv-33 {
  flex: 1 1 240px;
  max-width: 280px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.pv-34 {
  margin: 0 0 6px;
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: var(--text-3);
}
.pv-35 {
  list-style: none;
  margin: 0;
  padding: 0 0 0 14px;
  border-left: 1px solid rgba(255,255,255,0.08);
  display: flex;
  flex-direction: column;
  font-size: 15px;
}
.pv-36 {
  position: relative;
}
.pv-37 {
  position: absolute;
  left: -15px;
  top: 10px;
  width: 2px;
  height: 20px;
  border-radius: 2px;
  background: var(--mint);
}
.pv-38 {
  display: flex;
  align-items: center;
  min-height: 40px;
  color: var(--text);
  text-decoration: none;
  font-weight: 500;
}
.pv-39, .pv-40, .pv-41, .pv-42, .pv-43, .pv-44, .pv-45, .pv-46, .pv-47, .pv-48, .pv-49 {
  display: flex;
  align-items: center;
  min-height: 40px;
}
.pv-50 {
  flex: 999 1 560px;
  min-width: 0;
  max-width: 760px;
  display: flex;
  flex-direction: column;
  gap: 64px;
  font-size: 17px;
  line-height: 1.7;
  color: var(--text-2);
}
.pv-51, .pv-54, .pv-60, .pv-81, .pv-95, .pv-100, .pv-104, .pv-107, .pv-112, .pv-153, .pv-186, .pv-191 {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.pv-52, .pv-55, .pv-61, .pv-82, .pv-96, .pv-101, .pv-105, .pv-108, .pv-113, .pv-154, .pv-187, .pv-192 {
  margin: 0;
  font-size: 30px;
  font-weight: 600;
  letter-spacing: -0.04em;
  line-height: 1.1;
  color: var(--text);
}
.pv-53, .pv-56, .pv-83, .pv-84, .pv-94, .pv-97, .pv-98, .pv-99, .pv-102, .pv-103, .pv-106, .pv-109, .pv-110, .pv-111, .pv-155, .pv-184, .pv-185, .pv-188, .pv-190, .pv-193 {
  margin: 0;
}
.pv-57, .pv-189 {
  text-decoration: none;
  font-weight: 500;
}
.pv-58 {
  margin: 0;
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 16px 20px;
  border-radius: 18px;
  background: rgba(255,193,90,0.08);
  color: var(--text);
  font-size: 16px;
  line-height: 1.55;
}
.pv-59 {
  flex-shrink: 0;
  margin-top: 3px;
}
.pv-62 {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  background: var(--panel);
  border: 1px solid var(--line);
  overflow: hidden;
}
.pv-63, .pv-67, .pv-70, .pv-74 {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 24px 26px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.pv-64, .pv-68, .pv-71, .pv-75, .pv-79 {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  color: var(--text);
}
.pv-65, .pv-66, .pv-69, .pv-72, .pv-73, .pv-76, .pv-77, .pv-80 {
  margin: 0;
  font-size: 16px;
  line-height: 1.65;
}
.pv-78 {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 24px 26px;
}
.pv-85 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
  gap: 8px;
}
.pv-86, .pv-90 {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 18px;
  border-radius: 18px;
  background: var(--panel);
  border: 1px solid var(--line);
}
.pv-87, .pv-91 {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  color: var(--text-3);
}
.pv-88, .pv-92 {
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.03em;
  color: var(--text);
}
.pv-114, .pv-156 {
  overflow-x: auto;
  border-radius: 24px;
  background: var(--panel);
  border: 1px solid var(--line);
}
.pv-115 {
  width: 100%;
  min-width: 560px;
  border-collapse: collapse;
  font-size: 15px;
  line-height: 1.55;
}
.pv-116, .pv-158 {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
}
.pv-117, .pv-159 {
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.pv-118 {
  text-align: left;
  padding: 16px 20px;
  width: 24%;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  color: var(--text-3);
}
.pv-119, .pv-160 {
  text-align: left;
  padding: 16px 20px;
  width: 30%;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  color: var(--text-3);
}
.pv-120, .pv-162 {
  text-align: left;
  padding: 16px 20px;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  color: var(--text-3);
}
.pv-121 {
  color: var(--text-2);
}
.pv-122, .pv-126, .pv-131, .pv-135, .pv-139, .pv-144, .pv-149, .pv-164, .pv-168, .pv-172, .pv-176, .pv-180 {
  border-top: 1px solid rgba(255,255,255,0.06);
}
.pv-123, .pv-127, .pv-132, .pv-136, .pv-140, .pv-145, .pv-150 {
  text-align: left;
  vertical-align: top;
  padding: 16px 20px;
  color: var(--text);
  font-weight: 600;
}
.pv-124, .pv-125, .pv-129, .pv-130, .pv-133, .pv-134, .pv-137, .pv-138, .pv-142, .pv-143, .pv-147, .pv-148, .pv-151, .pv-152 {
  vertical-align: top;
  padding: 16px 20px;
}
.pv-128, .pv-141, .pv-146 {
  display: block;
  font-size: 13px;
  font-weight: 400;
  color: var(--text-3);
}
.pv-157 {
  width: 100%;
  min-width: 560px;
  border-collapse: collapse;
  font-size: 15px;
  line-height: 1.5;
}
.pv-161 {
  text-align: left;
  padding: 16px 20px;
  width: 28%;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  color: var(--text-3);
}
.pv-163 {
  color: var(--text-2);
  font-family: var(--font-mono);
  font-size: 14px;
}
.pv-165, .pv-169, .pv-173, .pv-177, .pv-181 {
  text-align: left;
  padding: 14px 20px;
  font-family: var(--font-sans);
  font-size: 15px;
  font-weight: 600;
  color: var(--text);
}
.pv-166, .pv-167, .pv-170, .pv-171, .pv-174, .pv-175, .pv-178, .pv-179, .pv-182, .pv-183 {
  padding: 14px 20px;
}
.pv-194 {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  align-items: center;
  margin-top: 8px;
}
.pv-195 {
  display: flex;
  align-items: center;
  height: 52px;
  padding: 0 28px;
  border-radius: 999px;
  background: var(--mint);
  color: var(--mint-ink);
  text-decoration: none;
  font-size: 16px;
  font-weight: 600;
}
.pv-196 {
  display: flex;
  align-items: center;
  height: 52px;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
}

/* SVG colours follow the theme tokens. */
.pv-page [stroke="#FFC15A"] { stroke: var(--amber); }

/* Light theme. */
[data-theme="light"] .pv-6 {
  background: rgba(11,18,16,0.05);
}
[data-theme="light"] .pv-7 {
  background: radial-gradient(ellipse 50% 80% at 0% 0%, rgba(168,245,213,0.3), rgba(168,245,213,0) 60%), var(--panel);
  border: 1px solid rgba(11,122,82,0.16);
  box-shadow: 0 1px 2px rgba(11,18,16,0.04);
}
[data-theme="light"] .pv-10, [data-theme="light"] .pv-15, [data-theme="light"] .pv-20, [data-theme="light"] .pv-25 {
  background: rgba(11,18,16,0.03);
}
[data-theme="light"] .pv-11, [data-theme="light"] .pv-16, [data-theme="light"] .pv-21, [data-theme="light"] .pv-26 {
  background: rgba(11,122,82,0.08);
}
[data-theme="light"] .pv-35 {
  border-left: 1px solid rgba(11,18,16,0.08);
}
[data-theme="light"] .pv-62 {
  border: 1px solid rgba(11,18,16,0.07);
  box-shadow: 0 1px 2px rgba(11,18,16,0.04);
}
[data-theme="light"] .pv-63, [data-theme="light"] .pv-67, [data-theme="light"] .pv-70, [data-theme="light"] .pv-74 {
  border-bottom: 1px solid rgba(11,18,16,0.06);
}
[data-theme="light"] .pv-86, [data-theme="light"] .pv-90 {
  border: 1px solid rgba(11,18,16,0.07);
  box-shadow: 0 1px 2px rgba(11,18,16,0.04);
}
[data-theme="light"] .pv-114, [data-theme="light"] .pv-156 {
  border: 1px solid rgba(11,18,16,0.07);
  box-shadow: 0 1px 2px rgba(11,18,16,0.04);
}
[data-theme="light"] .pv-117, [data-theme="light"] .pv-159 {
  border-bottom: 1px solid rgba(11,18,16,0.08);
}
[data-theme="light"] .pv-122, [data-theme="light"] .pv-126, [data-theme="light"] .pv-131, [data-theme="light"] .pv-135, [data-theme="light"] .pv-139, [data-theme="light"] .pv-144, [data-theme="light"] .pv-149, [data-theme="light"] .pv-164, [data-theme="light"] .pv-168, [data-theme="light"] .pv-172, [data-theme="light"] .pv-176, [data-theme="light"] .pv-180 {
  border-top: 1px solid rgba(11,18,16,0.06);
}

/* The page body is a flex column: keep the screen's full-width container. */
.pv-1 { box-sizing: border-box; width: 100%; max-width: 1248px; }

/* On this page: the first section is marked until a section is opened by its link (no script). */
.pv-35 > li { position: relative; }
.pv-toc-link { color: var(--text-2); text-decoration: none; }
.pv-toc-link:hover { color: var(--text); }
.pv-toc-link::before { content: ""; position: absolute; left: -15px; top: 10px; width: 2px; height: 20px; border-radius: 2px; background: var(--mint); opacity: 0; }
[data-theme="light"] .pv-toc-link::before { background: var(--accent); }
.pv-38::before { opacity: 1; }
.pv-page:has(.pv-50 :target) .pv-38 { color: var(--text-2); font-weight: 400; }
.pv-page:has(.pv-50 :target) .pv-38::before { opacity: 0; }
.pv-page:has(#what-truscan-does:target) .pv-35 a[href="#what-truscan-does"],
.pv-page:has(#contact:target) .pv-35 a[href="#contact"],
.pv-page:has(#what-we-process:target) .pv-35 a[href="#what-we-process"],
.pv-page:has(#telegram-bot:target) .pv-35 a[href="#telegram-bot"],
.pv-page:has(#watchlist:target) .pv-35 a[href="#watchlist"],
.pv-page:has(#chart:target) .pv-35 a[href="#chart"],
.pv-page:has(#external-links:target) .pv-35 a[href="#external-links"],
.pv-page:has(#sharing:target) .pv-35 a[href="#sharing"],
.pv-page:has(#providers:target) .pv-35 a[href="#providers"],
.pv-page:has(#storage:target) .pv-35 a[href="#storage"],
.pv-page:has(#rights:target) .pv-35 a[href="#rights"],
.pv-page:has(#not-advice:target) .pv-35 a[href="#not-advice"] { color: var(--text); font-weight: 500; }
.pv-page:has(#what-truscan-does:target) .pv-35 a[href="#what-truscan-does"]::before,
.pv-page:has(#contact:target) .pv-35 a[href="#contact"]::before,
.pv-page:has(#what-we-process:target) .pv-35 a[href="#what-we-process"]::before,
.pv-page:has(#telegram-bot:target) .pv-35 a[href="#telegram-bot"]::before,
.pv-page:has(#watchlist:target) .pv-35 a[href="#watchlist"]::before,
.pv-page:has(#chart:target) .pv-35 a[href="#chart"]::before,
.pv-page:has(#external-links:target) .pv-35 a[href="#external-links"]::before,
.pv-page:has(#sharing:target) .pv-35 a[href="#sharing"]::before,
.pv-page:has(#providers:target) .pv-35 a[href="#providers"]::before,
.pv-page:has(#storage:target) .pv-35 a[href="#storage"]::before,
.pv-page:has(#rights:target) .pv-35 a[href="#rights"]::before,
.pv-page:has(#not-advice:target) .pv-35 a[href="#not-advice"]::before { opacity: 1; }

/* States. */
.pv-ext { font-weight: 500; text-decoration: none; }
.pv-page .ts-btn-p { transition: background .2s, box-shadow .2s; }
.pv-page .ts-btn-p:hover { color: var(--mint-ink); background: var(--mint-hover); box-shadow: 0 0 0 6px var(--mint-ring); }

@media (max-width: 639px) {
  .pv-1 { padding-top: 40px; }
  .pv-32 { margin-top: 56px; }
}
