/* Page Builder front-end styles (used by published pagebuilder pages) */
.pb-section { padding: 4rem 0; }
.pb-section--alt { background: #f1f5f3; }
.pb-section-head { text-align: center; max-width: 760px; margin: 0 auto 2.25rem; }
.pb-section-head h2 { margin: 0 0 .6rem; }
.pb-section-head p { color: var(--brand-muted); font-size: 1.1rem; margin: 0; }
.pb-card { background: #fff; border-radius: 12px; box-shadow: var(--brand-shadow); padding: 1.5rem; height: 100%; }
.pb-card h3, .pb-card h4 { margin: 0 0 .5rem; }
.pb-image { display: block; max-width: 100%; height: auto; border-radius: 12px; box-shadow: var(--brand-shadow); margin: 0 auto; }
.pb-spacer { height: 3rem; }
.pb-divider { border: 0; border-top: 1px solid var(--brand-border); margin: 2rem 0; }

/* Built pages sit full-bleed inside <main> */
.pagebuilder-content { min-height: 50vh; }
.pagebuilder-page main { padding: 0; }