/* Motyw ogranicza treść strony do 820 px — dokument ze spisem treści
   potrzebuje pełnej szerokości sekcji. */
.aldo-dokument .entry-content { max-width: none; }

/* ============================================================
   Dokumenty tekstowe (polityka prywatności, regulamin)
   Kilkanaście sekcji ciągiem — potrzebny spis treści, spokojna
   miara wiersza i wyraźny rytm nagłówków.
   ============================================================ */
.aldo-dokument .dok {
  display: grid;
  /* Kolumna tekstu ograniczona do ok. 75 znaków w wierszu — dłuższe wiersze męczą
     przy takiej ilości tekstu. Całość wyśrodkowana, żeby nie wisiała przy lewej. */
  grid-template-columns: 250px minmax(0, 620px);
  gap: 72px;
  justify-content: center;
  align-items: start;
}

/* --- spis treści --- */
.aldo-dokument .dok__spis {
  position: sticky;
  top: 108px;
  padding: 22px 24px;
  background: var(--aldo-soft);
  border: 1px solid var(--aldo-line);
  border-radius: 14px;
}
.aldo-dokument .dok__spis-tytul {
  margin: 0 0 12px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--aldo-muted);
}
.aldo-dokument .dok__spis ol {
  counter-reset: sekcja;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 9px;
}
.aldo-dokument .dok__spis li { counter-increment: sekcja; position: relative; padding-left: 26px; }
.aldo-dokument .dok__spis li::before {
  content: counter(sekcja);
  position: absolute; left: 0; top: 2px;
  font-size: 11.5px; font-weight: 700; color: var(--aldo-red-dark);
}
.aldo-dokument .dok__spis a {
  font-size: 14px;
  line-height: 1.4;
  color: var(--aldo-text);
  text-decoration: none;
  border-bottom: 1px solid transparent;
}
.aldo-dokument .dok__spis a:hover,
.aldo-dokument .dok__spis a:focus-visible { color: var(--aldo-heading); border-bottom-color: var(--aldo-red); }

/* --- treść --- */
.aldo-dokument .dok__tresc { max-width: none; }

.aldo-dokument .dok__tresc h2 {
  margin: 46px 0 14px;
  padding-top: 22px;
  font-size: 25px;
  line-height: 1.25;
  font-weight: 700;
  color: var(--aldo-heading);
  border-top: 1px solid var(--aldo-line);
  scroll-margin-top: 100px;
}
.aldo-dokument .dok__tresc h2:first-child { margin-top: 0; padding-top: 0; border-top: none; }

.aldo-dokument .dok__tresc p {
  margin: 0 0 16px;
  font-size: 16.5px;
  line-height: 1.75;
  color: var(--aldo-text);
}

/* Listy dziedziczyły 0.75em z motywu — w dokumencie mają czytać się jak akapity. */
.aldo-dokument .dok__tresc ol,
.aldo-dokument .dok__tresc ul { margin: 0 0 20px; padding-left: 0; list-style: none; counter-reset: punkt; }
.aldo-dokument .dok__tresc li {
  position: relative;
  margin: 0 0 12px;
  padding-left: 34px;
  font-size: 16.5px;
  line-height: 1.7;
  color: var(--aldo-text);
}
.aldo-dokument .dok__tresc ol > li { counter-increment: punkt; }
.aldo-dokument .dok__tresc ol > li::before {
  content: counter(punkt) ".";
  position: absolute; left: 0; top: 0;
  min-width: 24px;
  font-weight: 700;
  color: var(--aldo-red-dark);
  font-variant-numeric: tabular-nums;
}
.aldo-dokument .dok__tresc ul > li::before {
  content: "";
  position: absolute; left: 10px; top: 12px;
  width: 6px; height: 6px;
  background: var(--aldo-red);
  border-radius: 50%;
}
.aldo-dokument .dok__tresc a { color: var(--aldo-heading); text-decoration: underline; text-underline-offset: 2px; }

@media (max-width: 1000px) {
  .aldo-dokument .dok { grid-template-columns: 1fr; gap: 28px; }
  .aldo-dokument .dok__spis { position: static; }
  .aldo-dokument .dok__spis ol { grid-template-columns: 1fr 1fr; display: grid; }
}
@media (max-width: 620px) {
  .aldo-dokument .dok__spis ol { grid-template-columns: 1fr; }
}
