/* Polityka prywatności v32 — dark opening, then the unchanged legal text in .ds-prose with a sticky table of contents.
   Legal sections carry .faq-group only so app.js shows them in the header location (breadcrumbs). */
.ds-lead:has(+ .kp-updated){margin-bottom:12px}
.kp-updated{margin:0 0 30px;font:600 15px/1.4 Figtree,sans-serif;color:var(--amber)}

/* Opening visual: the document with nine points and a lock. */
.kp-visual{display:grid;place-items:center;min-height:clamp(300px,27vw,390px)}
.kp-sheet{position:relative;width:min(310px,80%);padding:26px 26px 30px;background:var(--paper);color:var(--ink);box-shadow:0 22px 44px #00000066;transform:rotate(-3deg)}
.kp-sheet-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid var(--ink)}
.kp-sheet-head b{font:700 17px/1.1 Sora,sans-serif;letter-spacing:-.04em}
.kp-sheet-head span{font:600 11.5px/1.2 Figtree,sans-serif;color:#6b706a}
.kp-sheet-lines{list-style:none;display:grid;gap:10px;margin:0;padding:0;counter-reset:kp}
.kp-sheet-lines li{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:8px;counter-increment:kp}
.kp-sheet-lines li:before{content:counter(kp);font:700 11px/1 Sora,sans-serif;color:var(--gold)}
.kp-sheet-lines i{display:block;width:var(--w);height:6px;background:#15191c2b}
.kp-lock{position:absolute;right:clamp(22px,4vw,64px);bottom:clamp(22px,3vw,40px);width:clamp(84px,8vw,112px);height:auto;transform:rotate(6deg)}
.ds .ds-open .kp-lock .o{stroke:var(--ink);stroke-width:2.4}

.kp-facts a{display:block;color:inherit}
.kp-facts a b{transition:color .2s}
.kp-facts a:hover b{color:var(--amber)}

/* Document: table of contents (sticky) and the text */
.kp-layout{display:grid;grid-template-columns:minmax(250px,.34fr) minmax(0,1fr);gap:clamp(40px,7vw,120px);align-items:start}
.kp-aside{position:sticky;top:108px;display:grid;gap:24px}
.kp-index{display:grid;padding-top:18px;border-top:2px solid var(--ink)}
.kp-index strong{margin-bottom:8px;font:600 13px/1.3 Figtree,sans-serif;letter-spacing:.02em;color:var(--gold)}
.kp-index a{display:block;padding:9px 0;border-bottom:1px solid var(--line);font:500 15.5px/1.35 Figtree,sans-serif;color:#3d423e;transition:color .2s,padding .2s}
.kp-index a:hover{padding-left:6px;color:var(--ink)}
.kp-contact{display:grid;gap:6px;padding:20px 22px;background:#171a21;color:var(--paper)}
.kp-contact>span{font-size:14px;color:#b9bcb6}
.kp-contact a{display:inline-flex;align-items:center;gap:14px;font:600 18px/1.3 Figtree,sans-serif;letter-spacing:-.02em;color:var(--paper)}
.kp-contact a span{color:var(--amber);font-size:20px;transition:transform .25s}
.kp-contact a:hover span{transform:translate(3px,-3px)}
.ds .kp-copy{max-width:76ch}
.ds .kp-copy section{margin:0 0 34px;padding-top:26px;border-top:1px solid var(--line);scroll-margin-top:100px}
.ds .kp-copy section:last-child{margin-bottom:0}
.ds .kp-copy .faq-group h2{font:700 clamp(24px,2.2vw,32px)/1.15 Sora,sans-serif;letter-spacing:-.045em;margin:0 0 14px;color:var(--ink)}
.ds .kp-copy section:target h2{color:var(--gold)}
.ds .kp-copy p:last-child{margin-bottom:0}

@media(max-width:380px){.ds-open h1{font-size:13.2vw}}
@media(max-width:860px){
  .kp-layout{grid-template-columns:1fr;gap:40px}
  .kp-aside{position:static}
  .kp-index{grid-template-columns:1fr 1fr;column-gap:24px}
  .kp-index strong{grid-column:1/-1}
}
@media(max-width:600px){
  .kp-index{grid-template-columns:1fr}
  .kp-sheet{padding:20px 20px 24px}
  .kp-lock{right:14px;bottom:16px;width:76px}
}
@media(prefers-reduced-motion:reduce){.kp-index a,.kp-contact a span,.kp-facts a b{transition:none}}
/* V34 — page headings: same line count after the looser letter spacing (generated). */
html body.ds .ds .kp-copy .faq-group h2{font-size:calc(clamp(24px,2.2vw,32px) * .92)!important}
@media(max-width:380px){html body.ds .ds-open h1{font-size:calc(13.2vw * .93)!important}}
