/* Studio 95 — Prose
   Long-form flowing text: /o-nas, /podminky, /gdpr, workshop descriptions.
   Wrap a run of raw HTML in .s95-prose and headings, paragraphs, lists, quotes
   and tables space themselves. Measure is capped for readability — put it on the
   text column, never on a full-width container. */

.s95-prose{max-width:var(--content-measure);font-size:var(--body-size);line-height:var(--body-leading);color:var(--color-text);text-wrap:pretty}
.s95-prose>*+*{margin-top:var(--space-4)}

.s95-prose h2{font-size:var(--h2-size);line-height:var(--h2-leading);font-weight:var(--h2-weight);letter-spacing:var(--h2-tracking);color:var(--color-heading);text-wrap:balance}
.s95-prose h3{font-size:var(--h3-size);line-height:var(--h3-leading);font-weight:var(--h3-weight);letter-spacing:var(--h3-tracking);color:var(--color-heading)}
.s95-prose h4{font-size:var(--h4-size);line-height:var(--h4-leading);font-weight:var(--h4-weight);color:var(--color-heading)}
.s95-prose>h2+*,.s95-prose>h3+*,.s95-prose>h4+*{margin-top:var(--space-2)}
.s95-prose>*+h2{margin-top:var(--space-10)}
.s95-prose>*+h3{margin-top:var(--space-8)}
.s95-prose>*+h4{margin-top:var(--space-6)}

/* First paragraph after a top-level heading reads as a lead. */
.s95-prose>h2:first-child+p,.s95-prose>p:first-child{font-size:var(--lead-size);line-height:var(--lead-leading);color:var(--color-text-muted)}

.s95-prose ul,.s95-prose ol{padding-left:1.35em;display:flex;flex-direction:column;gap:var(--space-2)}
.s95-prose ul{list-style:none;padding-left:0}
.s95-prose ul>li{position:relative;padding-left:1.35em}
.s95-prose ul>li::before{content:"";position:absolute;left:.35em;top:.62em;width:5px;height:1px;background:var(--sand-600)}
.s95-prose ol>li::marker{color:var(--color-text-subtle);font-variant-numeric:tabular-nums}
.s95-prose li>ul,.s95-prose li>ol{margin-top:var(--space-2)}

.s95-prose strong{font-weight:var(--weight-semibold);color:var(--color-heading)}
.s95-prose small{font-size:var(--small-size);color:var(--color-text-muted)}
.s95-prose hr{border:0;border-top:1px solid var(--color-divider);margin:var(--space-10) 0}

.s95-prose blockquote{margin:0;padding-left:var(--space-5);border-left:1px solid var(--sand-500);font-size:var(--lead-size);line-height:var(--lead-leading);color:var(--color-text-muted)}
.s95-prose figure{margin:0}
.s95-prose figure img{border-radius:var(--radius-media);width:100%}
.s95-prose figcaption{margin-top:var(--space-2);font-size:var(--small-size);color:var(--color-text-subtle)}
.s95-prose>figure{margin-top:var(--space-8)}

.s95-prose code{font-family:var(--font-mono);font-size:.92em;background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-xs);padding:.1em .35em}

.s95-prose table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}
.s95-prose th{text-align:left;font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-subtle);padding:10px 12px;border-bottom:1px solid var(--color-border)}
.s95-prose td{padding:11px 12px;border-bottom:1px solid var(--color-divider)}

/* Legal density: /podminky and /gdpr are long and numbered — tighten and allow
   deep numbering without hand-written markers. */
.s95-prose--legal{font-size:var(--text-sm);line-height:1.62}
.s95-prose--legal>*+*{margin-top:var(--space-3)}
.s95-prose--legal>*+h2{margin-top:var(--space-8)}
.s95-prose--legal h2{font-size:var(--h4-size);line-height:1.3}
.s95-prose--legal ol{counter-reset:s95-l}
.s95-prose--legal ol>li{counter-increment:s95-l}
