/**
 * Typeset długich treści tekstowych.
 * Arkusz jest ładowany tylko na wybranych stronach.
 */

.sb-page--typeset {
  --sb-legal-text: #20201f;
  --sb-legal-heading: #10100f;
  --sb-legal-muted: #626260;
  --sb-legal-rule: #e8e7e3;
  --sb-legal-link: var(--sb-color-primary, #ce1720);
  --sb-legal-link-hover: var(--sb-color-secondary, #007c30);
}

.sb-page--typeset .elementor-widget-html article {
  width: min(100% - 48px, 78ch);
  margin-inline: auto;
  padding-block: clamp(56px, 7vw, 96px) clamp(72px, 9vw, 128px);
  color: var(--sb-legal-text);
  font-family: "Inter", Arial, sans-serif;
  font-size: clamp(16px, 0.3vw + 15px, 18px);
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: -0.008em;
  text-wrap: pretty;
}

.sb-page--typeset .elementor-widget-html article > header {
  margin-block-end: clamp(48px, 6vw, 72px);
}

/* Na stronie O nas tytuł znajduje się w osobnym widżecie Elementora. */
.sb-page--typeset.sb-page--about .elementor-widget-html article {
  width: 100%;
  margin-inline: 0;
  padding-block: 0;
}

.sb-page--typeset.sb-page--about .elementor-widget-html article > header {
  margin-block-end: 32px;
}

.sb-page--typeset .elementor-widget-html article h1,
.sb-page--typeset .elementor-widget-html article h2,
.sb-page--typeset .elementor-widget-html article h3 {
  margin-block-start: 0;
  color: var(--sb-legal-heading);
  font-family: inherit;
  font-weight: 600;
  text-wrap: balance;
}

.sb-page--typeset .elementor-widget-html article h1 {
  margin-block-end: clamp(20px, 3vw, 28px);
  font-size: clamp(38px, 5vw, 58px);
  line-height: 1.04;
  letter-spacing: -0.045em;
}

.sb-page--typeset .elementor-widget-html article > header > p {
  max-width: 66ch;
  margin: 0;
  color: var(--sb-legal-muted);
  font-size: clamp(18px, 0.45vw + 16px, 21px);
  line-height: 1.62;
  letter-spacing: -0.015em;
}

.sb-page--typeset .elementor-widget-html article section {
  scroll-margin-top: 140px;
}

.sb-page--typeset .elementor-widget-html article section + section {
  margin-block-start: clamp(48px, 6vw, 72px);
}

.sb-page--typeset .elementor-widget-html article h2 {
  margin-block-end: 24px;
  padding-block-start: clamp(28px, 4vw, 40px);
  border-block-start: 1px solid var(--sb-legal-rule);
  font-size: clamp(27px, 2.5vw, 36px);
  line-height: 1.16;
  letter-spacing: -0.035em;
}

.sb-page--typeset .elementor-widget-html article h3 {
  margin-block: 32px 14px;
  font-size: clamp(20px, 1.5vw, 24px);
  line-height: 1.3;
  letter-spacing: -0.025em;
}

.sb-page--typeset .elementor-widget-html article p,
.sb-page--typeset .elementor-widget-html article ol,
.sb-page--typeset .elementor-widget-html article ul {
  margin-block: 0 1.35em;
}

.sb-page--typeset.sb-page--about
  .elementor-widget-html
  article
  section
  > :last-child {
  margin-block-end: 0;
}

.sb-page--typeset .elementor-widget-html article ol,
.sb-page--typeset .elementor-widget-html article ul {
  padding-inline-start: 1.45em;
}

.sb-page--typeset .elementor-widget-html article li {
  padding-inline-start: 0.35em;
}

.sb-page--typeset .elementor-widget-html article li + li {
  margin-block-start: 0.55em;
}

.sb-page--typeset .elementor-widget-html article li > ol,
.sb-page--typeset .elementor-widget-html article li > ul {
  margin-block: 0.55em 0.8em;
}

.sb-page--typeset .elementor-widget-html article li > ol li + li,
.sb-page--typeset .elementor-widget-html article li > ul li + li {
  margin-block-start: 0.3em;
}

.sb-page--typeset .elementor-widget-html article li::marker {
  color: #858581;
  font-variant-numeric: tabular-nums;
}

.sb-page--typeset .elementor-widget-html article strong {
  color: var(--sb-legal-heading);
  font-weight: 600;
}

.sb-page--typeset .elementor-widget-html article a {
  color: var(--sb-legal-link);
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
  transition: color 160ms ease, text-decoration-color 160ms ease;
}

.sb-page--typeset .elementor-widget-html article a:hover {
  color: var(--sb-legal-link-hover);
}

@media (max-width: 767px) {
  .sb-page--typeset .elementor-widget-html article {
    width: min(100% - 40px, 78ch);
    padding-block: 44px 80px;
    line-height: 1.68;
  }

  .sb-page--typeset .elementor-widget-html article > header {
    margin-block-end: 44px;
  }

  .sb-page--typeset .elementor-widget-html article h2 {
    margin-block-end: 20px;
  }

  .sb-page--typeset .elementor-widget-html article section + section {
    margin-block-start: 44px;
  }
}

@media print {
  .sb-page--typeset .elementor-widget-html article {
    width: 100%;
    padding: 0;
    color: #000;
    font-size: 10pt;
    line-height: 1.5;
  }

  .sb-page--typeset .elementor-widget-html article a {
    color: #000;
  }
}
