/* =========================================================================
   Prohlášení o zpracování osobních údajů — izolované styly (namespace privacy__).
   Čitelný právní dokument: bílé pozadí, typografie TOXIN, úzký textový sloupec.
   Sdílené soubory nepřepisuje.
   ========================================================================= */

.privacy {
  --nv: #021128;
  --bl: #27348b;
  --gy: #3f4859;
  --gy2: #5a6478;
  --bd: #e6e9f2;
  display: block; background: #fff; padding: 36px 20px 64px;
  font-family: 'Raleway', -apple-system, BlinkMacSystemFont, sans-serif; color: var(--nv);
}
.privacy * { box-sizing: border-box; }
:where(.privacy) :where(h1, h2, h3, p, ol, ul) { margin: 0; }
.privacy [id] { scroll-margin-top: 80px; }

.privacy__doc { max-width: 760px; margin: 0 auto; }

/* ---------- hlavička dokumentu ---------- */
.privacy__head { padding-bottom: 28px; border-bottom: 1px solid var(--bd); }
.privacy h1 { font-size: 30px; line-height: 1.2; font-weight: 800; color: var(--nv); letter-spacing: -.01em; margin-bottom: 18px; }
.privacy__intro p { font-size: 15.5px; line-height: 1.7; color: var(--gy2); }
.privacy__intro p + p { margin-top: 12px; }

/* ---------- obsah ---------- */
.privacy__toc { margin: 28px 0 8px; padding: 18px 20px; background: #f6f8fd; border-radius: 12px; }
.privacy__toc-title { font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--bl); margin-bottom: 10px; }
.privacy__toc ol { list-style: none; padding: 0; display: grid; grid-template-columns: 1fr; gap: 6px; }
.privacy__toc a { display: flex; gap: 8px; font-size: 14px; line-height: 1.45; color: var(--nv); text-decoration: none; }
.privacy__toc a:hover { color: var(--bl); text-decoration: underline; }
.privacy__toc .privacy__num { flex: 0 0 26px; color: var(--bl); font-weight: 700; }

/* ---------- části dokumentu ---------- */
.privacy__part { padding-top: 32px; }
.privacy h2 { font-size: 20px; line-height: 1.35; font-weight: 800; color: var(--nv); margin-bottom: 12px; display: flex; gap: 10px; }
.privacy h3 { font-size: 17px; line-height: 1.4; font-weight: 800; color: var(--nv); margin: 24px 0 10px; display: flex; gap: 10px; }
.privacy h2 .privacy__num, .privacy h3 .privacy__num { color: var(--bl); flex: 0 0 auto; }
.privacy__part p { font-size: 15.5px; line-height: 1.75; color: var(--gy); }
.privacy__part p + p, .privacy__part ul + p, .privacy__part p + ul { margin-top: 12px; }
.privacy__list { padding-left: 22px; list-style: disc; }
.privacy__list li { font-size: 15.5px; line-height: 1.7; color: var(--gy); margin-top: 8px; padding-left: 4px; }
.privacy__list li::marker { color: var(--bl); }
.privacy strong { color: var(--nv); font-weight: 700; }

.privacy a:focus-visible { outline: 3px solid var(--bl); outline-offset: 3px; border-radius: 2px; }

/* ---------- responsive ---------- */
@media (min-width: 768px) {
  .privacy { padding: 48px 32px 88px; }
  .privacy h1 { font-size: 38px; }
  .privacy h2 { font-size: 22px; }
  .privacy__part { padding-top: 40px; }
  .privacy__toc ol { grid-template-columns: 1fr 1fr; column-gap: 28px; }
  .privacy__intro p { font-size: 16px; }
  .privacy__part p, .privacy__list li { font-size: 16px; }
}
@media (min-width: 1024px) {
  .privacy { padding-top: 56px; }
  .privacy h1 { font-size: 42px; }
}

/* tlačítko pro znovuotevření nastavení cookies (sdílená knihovna cookieconsent, data-cc="c-settings") */
.privacy__cc-link {
  font: inherit; color: var(--bl); background: none; border: 0; padding: 0; cursor: pointer;
  text-decoration: underline; text-underline-offset: 2px;
}
.privacy__cc-link:focus-visible { outline: 3px solid var(--bl); outline-offset: 3px; border-radius: 2px; }
.privacy__part a { color: var(--bl); text-underline-offset: 2px; }
.privacy__updated { margin-top: 16px; font-size: 13.5px; color: var(--gy2); }
