/* Pixel Jam Builder: the few defaults every built page needs. Page styles are in uploads/pixeljam-builder/.
   Elements in "original markup" mode (.pjb-x, e.g. imported content) get none of these: their own classes style them. */
.pjb-root { --pjb-content-width: 1140px; display: flow-root; }
.pjb-root .pjb-el:not(.pjb-x), .pjb-root .pjb-el:not(.pjb-x)::before, .pjb-root .pjb-el:not(.pjb-x)::after { box-sizing: border-box; }
.pjb-c:not(.pjb-x) { position: relative; display: flex; flex-direction: column; gap: 20px; padding: 10px; }
.pjb-c.pjb-boxed { display: block; }
.pjb-c > .pjb-inner { display: flex; flex-direction: column; gap: 20px; width: 100%; max-width: var(--pjb-cw, var(--pjb-content-width)); margin-left: auto; margin-right: auto; }
a.pjb-c:not(.pjb-x) { color: inherit; text-decoration: none; }
.pjb-heading:not(.pjb-x), .pjb-text:not(.pjb-x) { margin: 0; }
.pjb-text:not(.pjb-x) > :first-child { margin-top: 0; }
.pjb-text:not(.pjb-x) > :last-child { margin-bottom: 0; }
.pjb-heading:not(.pjb-x) a { color: inherit; text-decoration: none; }
.pjb-image:not(.pjb-x) img { display: block; max-width: 100%; height: auto; }
.pjb-btn { display: inline-flex; align-items: center; gap: .5em; padding: 12px 24px; border-radius: 4px; background: #1d4ed8; color: #fff; font-weight: 600; line-height: 1.2; text-decoration: none; cursor: pointer; transition: background-color .2s, color .2s, border-color .2s; }
.pjb-btn-icon { display: inline-flex; }
.pjb-btn-icon svg { width: 1em; height: 1em; }
.pjb-icon { display: flex; line-height: 0; }
.pjb-icon svg { width: 40px; height: 40px; }
.pjb-icon a { color: inherit; }
.pjb-video { width: 100%; }
.pjb-video-frame { position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; background: #000; }
.pjb-video-frame iframe, .pjb-video-frame video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; object-fit: cover; }
.pjb-spacer { width: 100%; height: 40px; }
.pjb-divider { display: flex; width: 100%; padding: 10px 0; }
.pjb-divider-line { display: block; width: 100%; border-top: 1px solid #d0d5dd; }
