/* Article typography — guides and ordinary pages written in the block editor.
   Mirrors the guide design (H2 30px/700, H3 21px/700, body 17.5px/1.7). */
.cb-article { font-size: 17.5px; line-height: 1.7; color: #2E2A24; }
.cb-article > :first-child { margin-top: 0; }
.cb-article section { scroll-margin-top: 120px; }
.cb-article section + section { margin-top: 44px; }
.cb-article h2 { font-size: 30px; font-weight: 700; letter-spacing: -0.026em; margin: 44px 0 14px; color: #151515; scroll-margin-top: 120px; }
.cb-article section > h2:first-child { margin-top: 0; }
.cb-article h3 { font-size: 21px; font-weight: 700; letter-spacing: -0.02em; margin: 26px 0 10px; color: #151515; }
.cb-article p { margin: 0 0 16px; }
.cb-article a { color: #7C172D; border-bottom: 1px solid #D9C3C8; }
.cb-article ul, .cb-article ol { margin: 0 0 16px; padding-left: 1.2em; }
.cb-article blockquote { border-left: 3px solid #7C172D; background: #FFFDF9; border-radius: 0 10px 10px 0; padding: 18px 22px; margin: 24px 0; font-size: 16.5px; color: #3C362E; }
.cb-article table { width: 100%; border-collapse: collapse; background: #FFFDF9; border: 1px solid #E2DCD2; border-radius: 12px; overflow: hidden; margin: 8px 0 18px; font-size: 15px; }
.cb-article th { background: #151515; color: #EFEAE2; font-family: 'IBM Plex Mono', monospace; font-size: 10.5px; letter-spacing: 0.1em; text-transform: uppercase; text-align: left; padding: 13px 16px; font-weight: 500; }
.cb-article td { padding: 14px 16px; border-top: 1px solid #E2DCD2; color: #4A443B; }
.cb-article td:first-child { font-weight: 600; color: #151515; }
.cb-article img { max-width: 100%; height: auto; border-radius: 14px; }
.cb-article figure { margin: 24px 0; }
.cb-article figcaption { font-family: 'IBM Plex Mono', monospace; font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: #6E6659; margin-top: 10px; }
@media (max-width: 620px) { .cb-article { font-size: 16.5px; } .cb-article h2 { font-size: 25px; } }
