/* ============================================================
   legal.css — právní stránky (GDPR, obchodní podmínky)
   ============================================================ */

.legal{
  display:grid;grid-template-columns:250px minmax(0,1fr);
  gap:clamp(28px,5vw,96px);
  max-width:1280px;margin:0 auto;
  padding:clamp(40px,6vw,96px) var(--pad) clamp(70px,9vw,150px);
}

/* ---------- sticky table of contents ---------- */
.legal__toc{position:sticky;top:calc(var(--hdr-h) + 30px);align-self:start}
.legal__toc h2{
  font-family:var(--mono);font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;
  color:var(--red-ui);padding-bottom:14px;margin-bottom:6px;
  border-bottom:1px solid rgba(233,230,223,.12);
}
.legal__toc a{
  display:flex;gap:11px;padding:9px 0;
  font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;line-height:1.6;
  color:var(--gray);transition:color .25s var(--e-out),transform .35s var(--e-out);
}
.legal__toc a b{color:var(--steel-2);font-weight:400;flex:0 0 auto;transition:color .25s}
.legal__toc a:hover{color:var(--bone);transform:translateX(4px)}
.legal__toc a:hover b,.legal__toc a.is-on b{color:var(--red-ui)}
.legal__toc a.is-on{color:var(--bone)}
@media (max-width:900px){
  .legal{grid-template-columns:1fr}
  .legal__toc{position:static;margin-bottom:10px}
  .legal__toc nav{display:flex;flex-wrap:wrap;gap:0 18px}
}

/* ---------- body copy ---------- */
.legal__body{max-width:74ch}
.legal__intro{
  font-size:clamp(14px,1.15vw,16.5px);line-height:1.85;color:var(--gray-2);font-weight:300;
  padding-bottom:clamp(26px,3vw,42px);margin-bottom:clamp(26px,3vw,42px);
  border-bottom:1px solid rgba(233,230,223,.12);
}
.legal__body h2{
  font-family:var(--display);font-size:clamp(1.3rem,2.4vw,2.1rem);line-height:1;
  text-transform:uppercase;color:var(--warm);letter-spacing:-.01em;
  margin:clamp(34px,4vw,64px) 0 16px;scroll-margin-top:calc(var(--hdr-h) + 26px);
  display:flex;align-items:baseline;gap:14px;
}
.legal__body h2:first-child{margin-top:0}
.legal__body h2 b{
  font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:.16em;
  color:var(--red-ui);flex:0 0 auto;
}
.legal__body h3{
  font-family:var(--head);font-weight:600;font-size:13.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--bone);margin:26px 0 10px;
}
.legal__body p{font-size:13.5px;line-height:1.9;color:var(--gray-2);font-weight:300;margin-bottom:14px}
.legal__body strong{color:var(--bone);font-weight:500}
.legal__body a{color:var(--red-ui);border-bottom:1px solid rgba(236,28,36,.35);transition:border-color .25s}
.legal__body a:hover{border-bottom-color:var(--red-ui)}
.legal__body ul{margin:4px 0 18px;display:flex;flex-direction:column;gap:9px}
.legal__body li{
  display:flex;gap:12px;align-items:flex-start;
  font-size:13.5px;line-height:1.85;color:var(--gray-2);font-weight:300;
}
.legal__body li::before{
  content:'//';color:var(--red-ui);font-family:var(--mono);font-size:10px;
  line-height:1.95;flex:0 0 auto;
}
.legal__body ol{counter-reset:l;margin:4px 0 18px;display:flex;flex-direction:column;gap:9px}
.legal__body ol li::before{
  counter-increment:l;content:counter(l,decimal-leading-zero);
  font-family:var(--mono);font-size:10px;color:var(--red-ui);line-height:1.95;
}

/* ---------- company data table ---------- */
.legal__co{
  border:1px solid rgba(233,230,223,.12);background:var(--ink-2);
  padding:clamp(20px,2.4vw,32px);margin:clamp(26px,3vw,40px) 0;
}
.legal__co dl{display:grid;grid-template-columns:auto 1fr;gap:11px clamp(16px,2.4vw,36px);margin:0}
.legal__co dt{
  font-family:var(--mono);font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gray);white-space:nowrap;padding-top:2px;
}
.legal__co dd{margin:0;font-size:13.5px;color:var(--bone);font-weight:300;line-height:1.6}
.legal__co dd a{color:var(--bone);border-bottom:1px solid var(--steel)}
.legal__co dd a:hover{color:var(--red-ui);border-bottom-color:var(--red-ui)}
@media (max-width:520px){
  .legal__co dl{grid-template-columns:1fr;gap:3px}
  .legal__co dd{margin-bottom:12px}
}

/* ---------- editorial note (unresolved source text) ---------- */
.legal__note{
  border-left:2px solid var(--red-ui);background:rgba(236,28,36,.06);
  padding:16px 20px;margin:22px 0;
}
.legal__note b{
  display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.24em;
  text-transform:uppercase;color:var(--red-ui);margin-bottom:8px;
}
.legal__note p{font-size:12.5px;line-height:1.8;color:var(--gray-2);margin:0}
.legal__note p + p{margin-top:10px}

/* ---------- meta / effective date ---------- */
.legal__eff{
  margin-top:clamp(36px,4vw,60px);padding-top:22px;
  border-top:1px solid rgba(233,230,223,.12);
  font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gray);
}
.legal__eff b{color:var(--bone);font-weight:400}
