/* Port Protect rebuild: minimal overrides that keep the new markup visually identical to the live site. */

/* H1 added to pages that had none: keep the kit's H2 line-height (the only h1/h2 difference in the kit).
   Widget-level typography rules are more specific and still win. */
.elementor-kit-12 h1.pp-h1:not(.product_title) { line-height: 1.2em; }

/* Return Policy title was a <p> styled by the heading widget. As an H1 it keeps the widget's own
   font and colour rules; only the paragraph's spacing is restored. */
.elementor-kit-12 h1.pp-h1-p { margin-block: 0 0.9rem; }

/* Checkout: Turnstile sits where the live site's reCAPTCHA box was (304x78); keep the same space reserved. */
.wc-block-checkout__form .pp-turnstile { min-height: 78px; }
.wc-block-checkout__form .pp-payments-pending { margin: 0; font-size: 14px; }

/* Blog posts written in the dashboard editor (api/lib/posts.php wraps them in .pp-post-body) */
.pp-post-body p, .pp-post-body ul, .pp-post-body ol, .pp-post-body blockquote, .pp-post-body figure, .pp-post-body table { margin: 0 0 1em; }
.pp-post-body h2, .pp-post-body h3, .pp-post-body h4 { margin: 1.4em 0 .5em; }
.pp-post-body > :first-child { margin-top: 0; }
.pp-post-body ul, .pp-post-body ol { padding-left: 1.4em; }
.pp-post-body li { margin-bottom: .35em; }
.pp-post-body img { max-width: 100%; height: auto; }
.pp-post-body blockquote { border-left: 3px solid var(--e-global-color-accent, #3E9BC8); padding-left: 1em; font-style: italic; }
.pp-post-body table { border-collapse: collapse; width: 100%; } .pp-post-body th, .pp-post-body td { border: 1px solid #d9dee3; padding: .5em .75em; text-align: left; }
