/* Legal text: prose rules for the wysiwyg body (its markup carries no classes). */
.pb-legal__body > :first-child { margin-top: 0; }
.pb-legal__body h2 { margin: 2.5rem 0 1rem; font-family: var(--font-display, "Russo One", sans-serif); font-size: 1.5rem; font-weight: 400; line-height: 1.2; letter-spacing: 0.05em; text-transform: uppercase; }
.pb-legal__body h3 { margin: 2rem 0 0.75rem; font-family: var(--font-display, "Russo One", sans-serif); font-size: 1.125rem; font-weight: 400; line-height: 1.3; letter-spacing: 0.04em; text-transform: uppercase; }
.pb-legal__body h4 { margin: 1.5rem 0 0.5rem; font-size: 1rem; font-weight: 600; }
.pb-legal__body p { margin: 0 0 1rem; }
.pb-legal__body ul, .pb-legal__body ol { margin: 0 0 1rem; padding-left: 1.5rem; }
.pb-legal__body ul { list-style: disc; }
.pb-legal__body ol { list-style: decimal; }
.pb-legal__body li { margin: 0.35rem 0; }
.pb-legal__body a { color: var(--color-accent, #193798); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.pb-legal__body a:hover { color: var(--color-accent-dark, #1A306A); }
.pb-legal__body strong { font-weight: 600; }
.pb-legal__body hr { margin: 2.5rem 0; border: 0; border-top: 1px solid var(--color-line, #e5e7eb); }
/* Anchor landings sit 40px under the fixed header (pt-16 top padding = 4rem). */
.pb-legal { scroll-margin-top: calc(40px - 4rem); }
/* Core blocks inside the column: reset the block gap and let the prose rules above set the rhythm. */
.pb-legal__body > * { margin-left: 0; margin-right: 0; }
.pb-legal__body .wp-block-list { padding-left: 1.5rem; }
.pb-legal__body .wp-block-separator { margin: 2.5rem 0; border: 0; border-top: 1px solid var(--color-line, #e5e7eb); width: 100%; }
/* Editor: the inner-blocks wrappers sit between the column and its blocks; keep them transparent. */
.pb-legal__body > .block-editor-inner-blocks, .pb-legal__body > .block-editor-inner-blocks > .block-editor-block-list__layout { display: contents; }
