/* Shared reading scale. Product mockups, diagram labels and controls retain
   their own UI typography; these rules apply only to editorial copy. */
.article-v2 {
 --reading-size: 17px;
 --reading-compact: 16px;
 --reading-leading: 1.6;
 --slide-heading: clamp(30px, 3.2vw, 48px);
 --slide-subheading: clamp(26px, 2.5vw, 36px);
}
.article-v2 .spread h2 {
 font-size: var(--slide-heading);
 font-weight: 500;
 line-height: 1.12;
 letter-spacing: -.035em;
 text-wrap: balance;
}
.article-v2 :is(.features-intro, .house-portal-spread, .agencies-spread, .offer-spread) h2 {
 font-size: clamp(36px, 4.2vw, 60px);
}
.article-v2 :is(.origin-columns, .manifest-seq .capability-step, .feature-copy, .context-copy, .capability-copy-stack > .capability-step, .room-links, .data-room-heading) p,
.article-v2 .spread .features-sub,
.article-v2 .spread .offer-intro {
 font-family: var(--font-reading);
 font-size: var(--reading-size);
 font-weight: 400;
 line-height: var(--reading-leading);
}
.article-v2 :is(.origin-columns, .capability-step, .feature-copy, .context-copy) p + p { margin-top: .85em; }
.article-v2 :is(.origin-columns, .capability-step, .feature-copy, .context-copy, .room-links, .features-sub) :is(b, strong) {
 font-weight: 700;
 color: var(--article-ink);
}
.article-v2 .capability-step h3 {
 font-size: var(--slide-subheading);
 font-weight: 500;
 line-height: 1.15;
 letter-spacing: -.025em;
 text-wrap: balance;
}
.article-v2 .origin-columns h3,
.article-v2 .denkraum-intro-columns h3 {
 font-size: 22px;
 font-weight: 600;
 line-height: 1.2;
 margin-bottom: 16px;
}
.article-v2 .agency-safeguard-grid h4 { font-size: 22px; line-height: 1.2; }
.article-v2 .spread .agency-safeguard-grid p,
.article-v2 .spread .denkraum-intro-columns p,
.article-v2 .spread .founding-side p,
.article-v2 .spread .founding-renewal p {
 font-size: var(--reading-compact);
 line-height: 1.55;
}
.article-v2 .denkraum-editorial-copy > p {
 font-size: var(--reading-size);
 line-height: 1.65;
 column-count: auto;
 margin: 0;
}
.article-v2 .denkraum-editorial-copy { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 36px; }
.article-v2 .denkraum-next { grid-column: 1 / -1; }
.article-v2 #denkraum { padding-block: 32px 64px; }
.article-v2 #denkraum-title { font-size: clamp(28px, 2.8vw, 40px); }
.article-v2 #denkraum .denkraum-quote { margin-bottom: 20px; }
.article-v2 #denkraum figure { max-width: min(680px, 64svh); }
.article-v2 #denkraum .denkraum-editorial-copy { row-gap: 24px; }
.article-v2 #denkraum .denkraum-next { margin-top: 0; }
.article-v2 #poznaj-denkraum .denkraum-intro-columns p { font-size: var(--reading-compact); line-height: 1.55; }
.article-v2 .denkraum-artboard { width: min(100%, 840px); }
.article-v2 .house-portal-heading > p { font-size: var(--reading-size); line-height: var(--reading-leading); }
.article-v2 :is(.m-list, .context-methods, .founding-benefits) {
 list-style: disc;
 padding-left: 1.15em;
}
.article-v2 :is(.m-list, .context-methods, .founding-benefits) li {
 display: list-item;
 padding-left: .3em;
 font: 400 var(--reading-size)/1.55 var(--font-reading);
}
.article-v2 :is(.m-list, .context-methods, .founding-benefits) li::before { content: none; }
.article-v2 :is(.m-list, .context-methods, .founding-benefits) li::marker { color: var(--article-orange); }
.article-v2 :is(.m-list, .context-methods, .founding-benefits) li + li { margin-top: .35em; }
.article-v2 .capability-step .m-list { margin-block: .85em; }
.article-v2 .founding-benefits li { font-size: var(--reading-compact); }
.article-v2 .sequence-steps button { min-height: 44px; }
.article-v2 .sequence-steps button:focus-visible {
 outline: 2px solid var(--article-orange);
 outline-offset: 3px;
 border-radius: 4px;
}
@media (max-width: 900px) {
 .article-v2 .topic-rail { display: none; }
 .article-v2 .denkraum-editorial-copy { grid-template-columns: 1fr; gap: 20px; }
}
@media (max-width: 700px) {
 .article-v2 { --reading-size: 16px; --slide-heading: 30px; --slide-subheading: 26px; }
 .article-v2 :is(.features-intro, .house-portal-spread, .agencies-spread, .offer-spread) h2 { font-size: 34px; }
 .article-v2 .origin-columns h3,
 .article-v2 .denkraum-intro-columns h3,
 .article-v2 .agency-safeguard-grid h4 { font-size: 20px; }
 .article-v2 .sequence-steps { flex-wrap: wrap; }
}
