/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/

/*
 * Consistent spacing between elements
 * 
 */

.brxe-text > * + *,
.brxe-post-content:where(:not([data-source="bricks"])) > * + * {
  margin-block-start: var(--flow-spacing, initial);
  margin-block-end: 0;
}

.brxe-text > * + :where(h1, h2, h3, h4, h5, h6),
.brxe-post-content:where(:not([data-source="bricks"])) > * + :where(h1, h2, h3, h4, h5, h6) {
  margin-block-start: var(--heading-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}

.brxe-text > :where(* + h2),
.brxe-post-content:where(:not([data-source="bricks"])) > :where(* + h2) {
  margin-block-start: var(--h2-spacing, var(--heading-spacing));
  margin-block-end: 0;
}

.brxe-text > :where(* + h3),
.brxe-post-content:where(:not([data-source="bricks"])) > :where(* + h3) {
  margin-block-start: var(--h3-spacing, var(--heading-spacing));
  margin-block-end: 0;
}

.brxe-text > :where(* + h4),
.brxe-post-content:where(:not([data-source="bricks"])) > :where(* + h4) {
  margin-block-start: var(--h4-spacing, var(--heading-spacing));
  margin-block-end: 0;
}

.brxe-text > :where(* + h5),
.brxe-post-content:where(:not([data-source="bricks"])) > :where(* + h5) {
  margin-block-start: var(--h5-spacing, var(--heading-spacing));
  margin-block-end: 0;
}

.brxe-text > :where(* + h6),
.brxe-post-content:where(:not([data-source="bricks"])) > :where(* + h6) {
  margin-block-start: var(--h6-spacing, var(--heading-spacing));
  margin-block-end: 0;
}

.brxe-text > * + p,
.brxe-post-content:where(:not([data-source="bricks"])) > * + p {
  margin-block-start: var(--paragraph-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}

.brxe-text > :is(* + ul, * + ol),
.brxe-post-content:where(:not([data-source="bricks"])) > :is(* + ul, * + ol) {
  margin-block: var(--list-spacing, var(--flow-spacing, initial));
}

.brxe-text > :is(ul, ol),
.brxe-post-content:where(:not([data-source="bricks"])) > :is(ul, ol) {
  padding-inline-start: var(--list-indent-spacing, var(--flow-spacing, initial));
}

.brxe-text > ul * + li,
.brxe-text > ol * + li,
.brxe-post-content:where(:not([data-source="bricks"])) > ul * + li,
.brxe-post-content:where(:not([data-source="bricks"])) > ol * + li {
  margin-block-start: var(--list-item-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}

.brxe-text > ul ul,
.brxe-text > ol ol,
.brxe-text > ul ol,
.brxe-text > ol ul,
.brxe-post-content:where(:not([data-source="bricks"])) > ul ul,
.brxe-post-content:where(:not([data-source="bricks"])) > ol ol,
.brxe-post-content:where(:not([data-source="bricks"])) > ul ol,
.brxe-post-content:where(:not([data-source="bricks"])) > ol ul {
  margin-block: var(--nested-list-spacing, var(--list-item-spacing, initial));
  padding-inline-start: var(--nested-list-indent-spacing, initial);
}

.brxe-text > :is(ul, ol) :is(ul, ol) li,
.brxe-post-content:where(:not([data-source="bricks"])) > :is(ul, ol) :is(ul, ol) li {
  margin-block-start: var(--nested-list-item-spacing, var(--list-item-spacing, initial));
}

.brxe-text > * + figure,
.brxe-text > * + picture,
.brxe-post-content:where(:not([data-source="bricks"])) > * + figure,
.brxe-post-content:where(:not([data-source="bricks"])) > * + picture {
  margin-block: var(--figure-spacing, var(--flow-spacing, initial));
}

.brxe-text figcaption,
.brxe-post-content:where(:not([data-source="bricks"])) figcaption {
  margin-block: var(--figcaption-spacing, var(--flow-spacing, initial));
}

.brxe-text > * + blockquote:where(:not(figure > blockquote)),
.brxe-post-content:where(:not([data-source="bricks"])) > * + blockquote:where(:not(figure > blockquote)) {
  margin-block: var(--blockquote-spacing, var(--flow-spacing, initial));
}

.brxe-text > blockquote * + *,
.brxe-post-content:where(:not([data-source="bricks"])) > blockquote * + * {
  margin-block-start: var(--paragraph-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}

.brxe-text > :is(figure, blockquote, ul, ol) + *,
.brxe-post-content:where(:not([data-source="bricks"])) > :is(figure, blockquote, ul, ol) + * {
  --paragraph-spacing: 0;
  --flow-spacing: 0;
}
