/* ==========================================================================
   PolishConnection · juridische pagina's (voorwaarden, privacy, cookies)
   Bouwt verder op pc-over-ons.css: zelfde tokens, raster en typografie.
   ========================================================================== */
.legal-notice{
  margin-top:1.4rem; padding:1rem 1.2rem;
  border:1px solid var(--hair-2); border-left:3px solid var(--copper);
  background:var(--white); font-size:0.92rem; line-height:1.55; color:var(--ink-2);
}
.legal-notice b{ font-weight:600; color:var(--ink); }

.legal{ position:relative; padding-block:clamp(2rem, 5vh, 4rem) clamp(5rem, 11vh, 8.5rem); }
.legal-toc{
  grid-column:1 / 4; align-self:start; position:sticky; top:6.5rem;
  border-top:1px solid var(--ink); padding-top:1.2rem;
}
.legal-toc ol{ margin:1rem 0 0; padding:0; list-style:none; counter-reset:toc; }
.legal-toc li{ counter-increment:toc; font-size:0.86rem; line-height:1.45; margin-top:0.55rem; }
.legal-toc li::before{
  content:counter(toc, decimal-leading-zero) "—"; font-family:var(--font-mono);
  font-size:0.62rem; letter-spacing:0.12em; color:var(--copper-ink); margin-right:0.5rem;
}
.legal-toc a{ color:var(--ink-2); transition:color 0.2s var(--ease); }
.legal-toc a:hover{ color:var(--copper-ink); }

.legal-body{ grid-column:5 / 13; max-width:74ch; min-width:0; }
.legal-body > :first-child{ margin-top:0; }
.legal-body h2{
  margin-top:3.2rem; padding-top:1.4rem; border-top:1px solid var(--hair);
  font-size:clamp(1.45rem, 2.4vw, 2rem); line-height:1.15; letter-spacing:-0.02em;
  font-weight:300; color:var(--ink); scroll-margin-top:6.5rem;
}
.legal-body h2 .no{
  display:block; margin-bottom:0.5rem; font-family:var(--font-mono); font-size:0.62rem;
  font-weight:500; letter-spacing:0.26em; text-transform:uppercase; color:var(--copper-ink);
}
.legal-body h3{ margin-top:1.8rem; font-size:1.08rem; font-weight:500; color:var(--ink); letter-spacing:-0.005em; }
.legal-body p, .legal-body li{ font-weight:300; font-size:1rem; line-height:1.68; color:var(--ink-2); }
.legal-body p{ margin-top:0.9rem; }
.legal-body b, .legal-body strong{ font-weight:500; color:var(--ink); }
.legal-body ul, .legal-body ol{ margin:0.8rem 0 0; padding-left:1.25rem; list-style:disc; }
.legal-body ol{ list-style:decimal; }
.legal-body li{ margin-top:0.4rem; }
.legal-body li::marker{ color:var(--copper-ink); }
.legal-body a{ color:var(--copper-ink); border-bottom:1px solid rgba(180,105,30,0.35); overflow-wrap:anywhere; }
.legal-body a:hover{ color:var(--copper); border-color:var(--copper); }
.legal-body .ph{ font-family:var(--font-mono); font-size:0.85em; color:var(--copper-ink); background:var(--copper-soft); padding:0 0.25em; }

.legal-table{ margin-top:1.2rem; overflow-x:auto; -webkit-overflow-scrolling:touch; border-top:1px solid var(--ink); }
.legal-table table{ width:100%; min-width:36rem; border-collapse:collapse; font-size:0.88rem; }
.legal-table th, .legal-table td{ text-align:left; vertical-align:top; padding:0.7rem 0.8rem 0.7rem 0; border-bottom:1px solid var(--hair); line-height:1.5; }
.legal-table th{
  font-family:var(--font-mono); font-size:0.6rem; font-weight:500; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--faint);
}
.legal-table td{ font-weight:300; color:var(--ink-2); }

.legal-end{
  margin-top:3.2rem; padding-top:1.4rem; border-top:1px solid var(--ink);
  font-family:var(--font-mono); font-size:0.62rem; letter-spacing:0.2em;
  text-transform:uppercase; color:var(--faint); line-height:2;
}

@media (max-width:60rem){
  .legal-toc{ grid-column:1 / 13; position:static; margin-bottom:1.5rem; }
  .legal-body{ grid-column:1 / 13; }
}

/* lange woorden (Privacyverklaring, PolishConnection) in de kleine kopregel */
.hero-title .ln-3{ overflow-wrap:anywhere; }
@media (max-width:44rem){
  .hero-title .ln-3{ font-size:clamp(1.15rem, 5.4vw, 1.6rem); line-height:1.3; }
}
