/* ================================
   FRAMEWORK: ACSS (Atomic CSS System)
   ================================ */

body a:where(:not([class*='bricks-button'], .icon-link)) {
  color: var(--link-color, inherit);
  font-weight: var(--link-weight, inherit);
  -webkit-text-decoration: var(--link-decoration, inherit);
  text-decoration: var(--link-decoration, inherit);
  text-underline-offset: var(--link-underline-offset, auto);
  transition: var(--link-transition, var(--transition));
}
@media (hover: hover) and (pointer: fine) {
  body a:where(:not([class*='bricks-button'], .bricks-button, .icon-link)):hover,
  body a:where(.icon-link):hover > span {
    color: var(--link-color-hover, inherit);
    -webkit-text-decoration: var(--link-decoration-hover, underline);
    text-decoration: var(--link-decoration-hover, underline);
  }
}

/* Default Contextual Spacing */
section:where(:not(.bricks-shape-divider)) {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--container-gap);
}
section > div:where(:not(.bricks-shape-divider)) {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--content-gap);
}
:where(:where(.brxe-block)) {
  gap: var(--content-gap);
}
:where(:where(.brxe-div)) {
  gap: var(--content-gap);
}
section > div:where([class*='grid--']),
:where([class*='grid--']) {
  gap: var(--grid-gap);
}

/* Smart Spacing */
body :where(p, h1, h2, h3, h4, h5, h6, ul, ol, li) {
  margin-block: 0;
}
.smart-spacing-normalize :where(p, h1, h2, h3, h4, h5, h6, ul, ol, li) {
  margin-block: 0;
}
.smart-spacing {
  gap: 0 !important;
}
.smart-spacing > * + * {
  margin-block-start: var(--flow-spacing, initial);
  margin-block-end: 0;
}
.smart-spacing > * + :where(h1, h2, h3, h4, h5, h6) {
  margin-block-start: var(--heading-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
.smart-spacing > :where(* + h2) {
  margin-block-start: var(--h2-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
.smart-spacing > :where(* + h3) {
  margin-block-start: var(--h3-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
.smart-spacing > :where(* + h4) {
  margin-block-start: var(--h4-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
.smart-spacing > :where(* + h5) {
  margin-block-start: var(--h5-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
.smart-spacing > :where(* + h6) {
  margin-block-start: var(--h6-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
.smart-spacing > * + p {
  margin-block-start: var(--paragraph-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
.smart-spacing > :is(* + ul, * + ol) {
  margin-block: var(--list-spacing, var(--flow-spacing, initial));
}
.smart-spacing > :is(ul, ol) {
  padding-inline-start: var(--list-indent-spacing, var(--flow-spacing, initial));
}
.smart-spacing > ul * + li,
.smart-spacing > ol * + li {
  margin-block-start: var(--list-item-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
.smart-spacing > ul ul,
.smart-spacing > ol ol,
.smart-spacing > ul ol,
.smart-spacing > ol ul {
  margin-block: var(--nested-list-spacing, var(--list-item-spacing, initial));
  padding-inline-start: var(--nested-list-indent-spacing, initial);
}
.smart-spacing > :is(ul, ol) :is(ul, ol) li {
  margin-block-start: var(--nested-list-item-spacing, var(--list-item-spacing, initial));
}
.smart-spacing > * + figure,
.smart-spacing > * + picture {
  margin-block: var(--figure-spacing, var(--flow-spacing, initial));
}
.smart-spacing figcaption {
  margin-block: var(--figcaption-spacing, var(--flow-spacing, initial));
}
.smart-spacing > * + blockquote:where(:not(figure > blockquote)) {
  margin-block: var(--blockquote-spacing, var(--flow-spacing, initial));
}
.smart-spacing > blockquote * + * {
  margin-block-start: var(--paragraph-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
.smart-spacing--off :where(p, h1, h2, h3, h4, h5, h6, ul, ol, li) {
  margin-block: 0;
}

:is(.brxe-text) {
  gap: 0 !important;
}
:is(.brxe-text) > * + * {
  margin-block-start: var(--flow-spacing, initial);
  margin-block-end: 0;
}
:is(.brxe-text) > * + :where(h1, h2, h3, h4, h5, h6) {
  margin-block-start: var(--heading-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
:is(.brxe-text) > :where(* + h2) {
  margin-block-start: var(--h2-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.brxe-text) > :where(* + h3) {
  margin-block-start: var(--h3-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.brxe-text) > :where(* + h4) {
  margin-block-start: var(--h4-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.brxe-text) > :where(* + h5) {
  margin-block-start: var(--h5-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.brxe-text) > :where(* + h6) {
  margin-block-start: var(--h6-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.brxe-text) > * + p {
  margin-block-start: var(--paragraph-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
:is(.brxe-text) > :is(* + ul, * + ol) {
  margin-block: var(--list-spacing, var(--flow-spacing, initial));
}
:is(.brxe-text) > :is(ul, ol) {
  padding-inline-start: var(--list-indent-spacing, var(--flow-spacing, initial));
}
:is(.brxe-text) > ul * + li,
:is(.brxe-text) > ol * + li {
  margin-block-start: var(--list-item-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
:is(.brxe-text) > ul ul,
:is(.brxe-text) > ol ol,
:is(.brxe-text) > ul ol,
:is(.brxe-text) > ol ul {
  margin-block: var(--nested-list-spacing, var(--list-item-spacing, initial));
  padding-inline-start: var(--nested-list-indent-spacing, initial);
}
:is(.brxe-text) > :is(ul, ol) :is(ul, ol) li {
  margin-block-start: var(--nested-list-item-spacing, var(--list-item-spacing, initial));
}
:is(.brxe-text) > * + figure,
:is(.brxe-text) > * + picture {
  margin-block: var(--figure-spacing, var(--flow-spacing, initial));
}
:is(.brxe-text) figcaption {
  margin-block: var(--figcaption-spacing, var(--flow-spacing, initial));
}
:is(.brxe-text) > * + blockquote:where(:not(figure > blockquote)) {
  margin-block: var(--blockquote-spacing, var(--flow-spacing, initial));
}
:is(.brxe-text) > blockquote * + * {
  margin-block-start: var(--paragraph-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
:is(.brxe-text) > :is(figure, blockquote, ul, ol):where(:not(:first-child)) + * {
  --paragraph-spacing: 0;
  --flow-spacing: 0;
}
.smart-spacing--off :where(p, h1, h2, h3, h4, h5, h6, ul, ol, li) {
  margin-block: 0;
}
.brxe-text,
.brxe-post-content:where(:not([data-source='bricks'])) {
  gap: 0 !important;
}
.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):where(:not(:first-child)) + *,
.brxe-post-content:where(:not([data-source='bricks'])) > :is(figure, blockquote, ul, ol):where(:not(:first-child)) + * {
  --paragraph-spacing: 0;
  --flow-spacing: 0;
}
body :where(p:last-of-type) + :is(h1, h2, h3, h4, h5, h6) {
  margin-top: 0;
  margin-block-start: 0;
}
:is(.brxe-text) {
  gap: 0 !important;
}
:is(.brxe-text) > * + * {
  margin-block-start: var(--flow-spacing, initial);
  margin-block-end: 0;
}
:is(.brxe-text) > * + :where(h1, h2, h3, h4, h5, h6) {
  margin-block-start: var(--heading-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
:is(.brxe-text) > :where(* + h2) {
  margin-block-start: var(--h2-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.brxe-text) > :where(* + h3) {
  margin-block-start: var(--h3-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.brxe-text) > :where(* + h4) {
  margin-block-start: var(--h4-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.brxe-text) > :where(* + h5) {
  margin-block-start: var(--h5-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.brxe-text) > :where(* + h6) {
  margin-block-start: var(--h6-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.brxe-text) > * + p {
  margin-block-start: var(--paragraph-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
:is(.brxe-text) > :is(* + ul, * + ol) {
  margin-block: var(--list-spacing, var(--flow-spacing, initial));
}
:is(.brxe-text) > :is(ul, ol) {
  padding-inline-start: var(--list-indent-spacing, var(--flow-spacing, initial));
}
:is(.brxe-text) > ul * + li,
:is(.brxe-text) > ol * + li {
  margin-block-start: var(--list-item-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
:is(.brxe-text) > ul ul,
:is(.brxe-text) > ol ol,
:is(.brxe-text) > ul ol,
:is(.brxe-text) > ol ul {
  margin-block: var(--nested-list-spacing, var(--list-item-spacing, initial));
  padding-inline-start: var(--nested-list-indent-spacing, initial);
}
:is(.brxe-text) > :is(ul, ol) :is(ul, ol) li {
  margin-block-start: var(--nested-list-item-spacing, var(--list-item-spacing, initial));
}
:is(.brxe-text) > * + figure,
:is(.brxe-text) > * + picture {
  margin-block: var(--figure-spacing, var(--flow-spacing, initial));
}
:is(.brxe-text) figcaption {
  margin-block: var(--figcaption-spacing, var(--flow-spacing, initial));
}
:is(.brxe-text) > * + blockquote:where(:not(figure > blockquote)) {
  margin-block: var(--blockquote-spacing, var(--flow-spacing, initial));
}
:is(.brxe-text) > blockquote * + * {
  margin-block-start: var(--paragraph-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
:is(.brxe-text) > :is(figure, blockquote, ul, ol):where(:not(:first-child)) + * {
  --paragraph-spacing: 0;
  --flow-spacing: 0;
}
.smart-spacing--off :where(p, h1, h2, h3, h4, h5, h6, ul, ol, li) {
  margin-block: 0;
}
.brxe-text,
.brxe-post-content:where(:not([data-source='bricks'])) {
  gap: 0 !important;
}
.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):where(:not(:first-child)) + *,
.brxe-post-content:where(:not([data-source='bricks'])) > :is(figure, blockquote, ul, ol):where(:not(:first-child)) + * {
  --paragraph-spacing: 0;
  --flow-spacing: 0;
}
body :where(p:last-of-type) + :is(h1, h2, h3, h4, h5, h6) {
  margin-top: 0;
  margin-block-start: 0;
}
ul.list--none,
ol.list--none,
.list--none > ul,
.list--none > ol {
  list-style: none;
  list-style-type: none;
  padding-inline-start: 0;
  -webkit-margin-before: 0em;
  margin-block-start: 0em;
  margin-block-end: 0;
}

/* Feature: Content Grid */
.content-grid {
  --full: minmax(var(--gutter), 1fr);
  padding-inline: 0;
  column-gap: 0 !important;
  display: grid !important;
  grid-template-columns:
    [full-start] var(--full) [feature-max-start] minmax(0, var(--feature-max-width, 100px))
    [feature-start] minmax(0, var(--feature-width, 50px)) [content-start] min(
      var(--content-width),
      100% - var(--gutter) * 2
    )
    [content-end] minmax(0, var(--feature-width, 50px)) [feature-end] minmax(0, var(--feature-max-width, 100px))
    [feature-max-end] var(--full) [full-end];
}
.content-grid > :not(.content--feature, .content--feature-max, .content--full, .content--full-safe) {
  width: 100%;
}
.content-grid > :where(:not(.content--feature, .content--feature-max, .content--full, .content--full-safe)) {
  grid-column: content;
}
.content--feature {
  grid-column: feature;
}
.content--feature-max {
  grid-column: feature-max;
}
.content--full {
  grid-column: full;
}
.content--full-safe {
  grid-column: full;
  padding-inline: var(--gutter);
}
.content-grid:where(.content--full-safe) {
  padding-inline: var(--gutter);
}
:is(.content--feature, .content--feature-max, .content--full, .content--full-safe):not(
  .content-grid--off :is(.content--feature, .content--feature-max, .content--full, .content--full-safe)
) {
  width: 100% !important;
  max-width: 100%;
}
.content-grid:is([class*='padding--'], [class*='section--'], [class*='header--']) {
  padding-inline: 0;
}

/* Feature: Clickable Parent */
.clickable-parent:not(a) {
  position: static;
}
.clickable-parent:not(a) a {
  position: static;
}
.clickable-parent:not(a) > a::after {
  content: '';
  position: absolute;
  inset: 0;
  cursor: pointer !important;
  display: flex;
  z-index: 1;
}
button.clickable-parent,
a.clickable-parent {
  position: static !important;
}
button.clickable-parent::after,
a.clickable-parent::after {
  content: '';
  position: absolute;
  inset: 0;
  cursor: pointer !important;
  display: flex;
  z-index: 1;
}
.bricks-area a.clickable-parent::after,
.bricks-area .clickable-parent > a::after {
  content: '';
  position: relative;
}

/* Feature: Hidden Accessible */
.hidden-accessible {
  position: absolute !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: rect(0, 0, 0, 0);
  white-space: nowrap;
  /* added line */
  border: 0;
}
.bricks-area .hidden-accessible {
  position: relative !important;
  inline-size: 2ch !important;
  block-size: 2ch !important;
  margin: 0;
  line-height: 1;
  visibility: hidden;
}
.bricks-area .hidden-accessible::before {
  content: 'A';
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  position: absolute;
  background: #111;
  color: #f5f5f5;
  font-size: max(60%, 13px);
  padding: 0.5em;
  inset-block-start: 0;
  inset-inline-start: 0;
  inline-size: 20px;
  block-size: 20px;
  visibility: visible;
  border-radius: 50%;
}

/* Feature: Object Fit */
[class*='object-fit--'],
[class*='object-fit--'] img {
  -o-object-position: var(--object-position, 50% 50%);
  object-position: var(--object-position, 50% 50%);
}

/* Feature: Color Schemes */
[data-theme='light'] {
  background: var(--bg-light);
  --relative-heading-color: var(--bg-light-heading);
  --icon-scheme: var(--bg-light-icon);
}

[data-theme='ultra-light'] {
  background: var(--bg-ultra-light);
  --relative-heading-color: var(--bg-ultra-light-heading);
  --icon-scheme: var(--bg-ultra-light-icon);
}
[data-theme='dark'] {
  background: var(--bg-dark);
  --relative-heading-color: var(--bg-dark-heading);
  --icon-scheme: var(--bg-dark-icon);
}
[data-theme='ultra-dark'] {
  background: var(--bg-ultra-dark);
  --relative-heading-color: var(--bg-ultra-dark-heading);
  --icon-scheme: var(--bg-ultra-dark-icon);
}

:where(.bg--light, [data-theme='light']) {
  --relative-text-color: var(--bg-light-text);
  color: var(--relative-text-color, inherit);
}
.bg--light :where(h1, h2, h3, h4, h5, h6),
[data-theme='light'] :where(h1, h2, h3, h4, h5, h6) {
  color: var(--relative-heading-color, inherit);
}
.bg--light [class*='bricks-button']:not(.unrelate),
[data-theme='light'] [class*='bricks-button']:not(.unrelate) {
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-l-1);
  --btn-text-color: var(--primary-l-2);
  --btn-text-color-hover: var(--primary-l-2);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}
.bg--light [class*='bricks-button']:not(.unrelate).outline,
[data-theme='light'] [class*='bricks-button']:not(.unrelate).outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-l-1);
  --btn-text-color: var(--primary);
  --btn-text-color-hover: var(--primary-l-2);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}
:where(.bg--ultra-light, [data-theme='ultra-light']) {
  --relative-text-color: var(--bg-ultra-light-text);
  color: var(--relative-text-color, inherit);
}
.bg--ultra-light :where(h1, h2, h3, h4, h5, h6),
[data-theme='ultra-light'] :where(h1, h2, h3, h4, h5, h6) {
  color: var(--relative-heading-color, inherit);
}
.bg--ultra-light [class*='bricks-button']:not(.unrelate),
[data-theme='ultra-light'] [class*='bricks-button']:not(.unrelate) {
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-l-1);
  --btn-text-color: var(--primary-l-2);
  --btn-text-color-hover: var(--primary-l-2);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}
.bg--ultra-light [class*='bricks-button']:not(.unrelate).outline,
[data-theme='ultra-light'] [class*='bricks-button']:not(.unrelate).outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-l-1);
  --btn-text-color: var(--primary);
  --btn-text-color-hover: var(--primary-l-2);
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}
:where(.bg--dark, [data-theme='dark']) {
  --relative-text-color: var(--bg-dark-text);
  color: var(--relative-text-color, inherit);
}
.bg--dark :where(h1, h2, h3, h4, h5, h6),
[data-theme='dark'] :where(h1, h2, h3, h4, h5, h6) {
  color: var(--relative-heading-color, inherit);
}
.bg--dark [class*='bricks-button']:not(.unrelate),
[data-theme='dark'] [class*='bricks-button']:not(.unrelate) {
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-l-1);
  --btn-text-color: var(--primary-l-2);
  --btn-text-color-hover: var(--primary-l-2);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}
.bg--dark [class*='bricks-button']:not(.unrelate).outline,
[data-theme='dark'] [class*='bricks-button']:not(.unrelate).outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-l-1);
  --btn-text-color: var(--primary);
  --btn-text-color-hover: var(--primary-l-2);
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}
:where(.bg--ultra-dark, [data-theme='ultra-dark']) {
  --relative-text-color: var(--bg-ultra-dark-text);
  color: var(--relative-text-color, inherit);
}
.bg--ultra-dark :where(h1, h2, h3, h4, h5, h6),
[data-theme='ultra-dark'] :where(h1, h2, h3, h4, h5, h6) {
  color: var(--relative-heading-color, inherit);
}
.bg--ultra-dark [class*='bricks-button']:not(.unrelate),
[data-theme='ultra-dark'] [class*='bricks-button']:not(.unrelate) {
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-l-1);
  --btn-text-color: var(--primary-l-2);
  --btn-text-color-hover: var(--primary-l-2);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}
.bg--ultra-dark [class*='bricks-button']:not(.unrelate).outline,
[data-theme='ultra-dark'] [class*='bricks-button']:not(.unrelate).outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-l-1);
  --btn-text-color: var(--primary-l-1);
  --btn-text-color-hover: var(--primary-d-3);
  --btn-border-color: var(--primary-l-1);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}

/* Feature: Buttons */
.bricks-button[class*='primary'] {
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-l-1);
  --btn-text-color: var(--primary-d-3);
  --btn-text-color-hover: var(--primary-d-3);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}
.bricks-button[class*='primary'].outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-l-1);
  --btn-text-color: var(--primary-d-3);
  --btn-text-color-hover: var(--primary-d-3);
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}
.bricks-button[class*='secondary'] {
  --btn-background: var(--secondary);
  --btn-background-hover: var(--secondary-l-1);
  --btn-text-color: var(--secondary-l-2);
  --btn-text-color-hover: var(--secondary-l-2);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--secondary-l-1);
}
.bricks-button[class*='secondary'].outline {
  --btn-background: transparent;
  --btn-background-hover: var(--secondary-l-1);
  --btn-text-color: var(--secondary);
  --btn-text-color-hover: var(--secondary-l-2);
  --btn-border-color: var(--secondary);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--secondary-l-1);
}
.bricks-button[class*='accent'] {
  --btn-background: var(--accent);
  --btn-background-hover: var(--accent-l-1);
  --btn-text-color: var(--primary-d-3);
  --btn-text-color-hover: var(--primary-d-3);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--accent-l-1);
}
.bricks-button[class*='accent'].outline {
  --btn-background: transparent;
  --btn-background-hover: var(--accent-l-1);
  --btn-text-color: var(--accent);
  --btn-text-color-hover: var(--primary-d-3);
  --btn-border-color: var(--accent);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--accent-l-1);
}
.bricks-button[class*='light'] {
  --btn-background: var(--primary-l-2);
  --btn-background-hover: var(--primary-l-1);
  --btn-text-color: var(--primary-d-3);
  --btn-text-color-hover: var(--primary-d-3);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}
.bricks-button[class*='light'].outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-l-1);
  --btn-text-color: var(--primary-l-1);
  --btn-text-color-hover: var(--primary-d-3);
  --btn-border-color: var(--primary-l-1);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}
.bricks-button[class*='dark'] {
  --btn-background: var(--primary-d-3);
  --btn-background-hover: var(--primary-d-2);
  --btn-text-color: var(--primary-l-2);
  --btn-text-color-hover: var(--primary-l-2);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-d-2);
}
.bricks-button[class*='dark'].outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-d-2);
  --btn-text-color: var(--primary-d-3);
  --btn-text-color-hover: var(--primary-l-2);
  --btn-border-color: var(--primary-d-3);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}
.bricks-button[class*='outline'] {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-l-1);
  --btn-text-color: var(--primary-d-3);
  --btn-text-color-hover: var(--primary-d-3);
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-l-1);
}

[class*='bricks-button']:where(:not(.button--none, .wp-block-button)),
[class*='bricks-button'].wp-block-button > .wp-block-button__link {
  background: var(--btn-background);
  color: var(--btn-text-color);
  padding-block: var(--btn-padding-block);
  padding-inline: var(--btn-padding-inline);
  inline-size: var(--btn-width, auto);
  min-inline-size: var(--btn-min-width);
  line-height: var(--btn-line-height);
  font-family: var(--btn-font-family);
  font-size: var(--btn-font-size, var(--text-m));
  font-weight: var(--btn-font-weight);
  font-style: var(--btn-font-style);
  text-transform: var(--btn-text-transform);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: var(--btn-text-decoration);
  border-width: var(--btn-border-width);
  border-style: var(--btn-border-style);
  border-radius: var(--btn-border-radius);
  border-color: var(--btn-border-color);
  transition: var(--btn-transition, var(--transition));
  justify-content: var(--btn-justify-content, center);
  align-items: var(--btn-align-items, center);
  text-align: var(--btn-text-align, center);
  display: var(--btn-display, inline-flex);
}
@media (hover: hover) and (pointer: fine) {
  [class*='bricks-button']:where(:not(.button--none, .wp-block-button)):hover,
  [class*='bricks-button'].wp-block-button > .wp-block-button__link:hover {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
}
[class*='bricks-button']:where(:not(.button--none, .wp-block-button)):where(:focus-visible),
[class*='bricks-button'].wp-block-button > .wp-block-button__link:where(:focus-visible) {
  outline-style: solid;
  outline-color: var(--focus-color);
  outline-width: var(--focus-width);
  outline-offset: var(--focus-offset);
}
.bricks-button.xs {
  --btn-font-size: var(--text-xs);
}
.bricks-button.sm {
  --btn-font-size: var(--text-s);
}
.bricks-button.md {
  --btn-font-size: var(--text-m);
}
.bricks-button.lg {
  --btn-font-size: var(--text-l);
}
.bricks-button.xl {
  --btn-font-size: var(--text-xl);
}
.bricks-button.xxl {
  --btn-font-size: var(--text-xxl);
}
.bricks-button.button--none {
  background: none;
  border: none;
}

/* Feature: Icons */
[data-icon]:is(svg, i, a) {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  box-sizing: content-box;
  color: var(--icon-color, var(--dark));
  font-size: var(--icon-size);
  height: var(--icon-height, var(--icon-size, 24px));
  width: var(--icon-width, var(--icon-size, 24px));
  transition: var(--icon-transition, var(--transition));
  box-shadow: var(--icon-shadow, none);
  overflow: visible;
}
[data-icon]:is(i)::before {
  width: 100%;
  height: 100%;
  text-align: center;
  font-size: var(--icon-size);
}
[data-icon].brxe-icon {
  font-size: var(--icon-size);
}
[data-icon] svg {
  color: var(--icon-color);
}
[data-icon]:is(a):hover,
[data-icon] [data-icon-hover]:hover,
[data-icon] [data-icon-hover]:hover [data-icon] {
  --icon-background: var(--icon-background-hover);
  --icon-color: var(--icon-color-hover);
  --icon-border-color: var(--icon-border-color-hover);
}
.icon--xs,
[data-icon-size='xs'] {
  --icon-size: var(--icon-size-xs);
  --icon-padding: var(--icon-padding-xs);
}
.icon--s,
[data-icon-size='s'] {
  --icon-size: var(--icon-size-s);
  --icon-padding: var(--icon-padding-s);
}
.icon--m,
[data-icon-size='m'] {
  --icon-size: var(--icon-size-m);
  --icon-padding: var(--icon-padding-m);
}
.icon--l,
[data-icon-size='l'] {
  --icon-size: var(--icon-size-l);
  --icon-padding: var(--icon-padding-l);
}
.icon--xl,
[data-icon-size='xl'] {
  --icon-size: var(--icon-size-xl);
  --icon-padding: var(--icon-padding-xl);
}
.icon--xxl,
[data-icon-size='2xl'] {
  --icon-size: var(--icon-size-xxl);
  --icon-padding: var(--icon-padding-2xl);
}
.icon--light,
[data-icon-theme='light'] {
  --icon-color: var(--base);
  --icon-color-hover: var(--primary-l-1);
  --icon-background: var(--primary-l-3);
  --icon-background-hover: var(--primary-l-2);
  --icon-border-color: var(--border-color-light);
  --icon-border-color-hover: var(--border-color-light);
  --icon-shadow: ;
}
.icon--dark,
[data-icon-theme='dark'] {
  --icon-color: var(--white);
  --icon-color-hover: var(--primary-l-1);
  --icon-background: var(--primary-d-2);
  --icon-background-hover: var(--primary-d-1);
  --icon-border-color: var(--border-color-dark);
  --icon-border-color-hover: var(--border-color-dark);
  --icon-shadow: ;
}
.icon--boxed,
[data-icon-style='boxed'] {
  padding: var(--icon-padding, 12px);
  border-width: var(--icon-border-width, 0);
  border-style: var(--icon-border-style, solid);
  border-radius: var(--icon-radius, var(--radius));
  background: var(--icon-background, var(--neutral-l-2));
  border-color: var(--icon-border-color, transparent);
}
.icon--naked,
[data-icon-style='naked'] {
  --icon-background: transparent;
  --icon-border-width: 0;
  --icon-padding: 0;
}
:is([data-icon-list], .icon-list) {
  display: flex;
  flex-direction: column;
  gap: var(--icon-list-gap, 1em);
}
:is([data-icon-list], .icon-list) :where(svg, i) {
  --icon-size: var(--icon-list-icon-size, 1em);
  position: relative;
  translate: var(--icon-inline-offset, 0) var(--icon-block-offset, 0);
  flex-shrink: 0;
}
:is([data-icon-list], .icon-list) :where(svg, i):is(svg, i, a) {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  box-sizing: content-box;
  color: var(--icon-color, var(--neutral-dark));
  font-size: var(--icon-size);
  height: var(--icon-height, var(--icon-size, 24px));
  width: var(--icon-width, var(--icon-size, 24px));
  transition: var(--icon-transition, var(--transition));
  box-shadow: var(--icon-shadow, none);
  overflow: visible;
}
:is([data-icon-list], .icon-list) :where(svg, i):is(i)::before {
  width: 100%;
  height: 100%;
  text-align: center;
  font-size: var(--icon-size);
}
:is([data-icon-list], .icon-list) :where(svg, i).brxe-icon {
  font-size: var(--icon-size);
}
:is([data-icon-list], .icon-list) :where(svg, i) svg {
  color: var(--icon-color);
}
:is([data-icon-list], .icon-list) :where(svg, i):is(a):hover,
:is([data-icon-list], .icon-list) :where(svg, i) [data-icon-hover]:hover,
:is([data-icon-list], .icon-list) :where(svg, i) [data-icon-hover]:hover [data-icon] {
  --icon-background: var(--icon-background-hover);
  --icon-color: var(--icon-color-hover);
  --icon-border-color: var(--icon-border-color-hover);
}
:is([data-icon-list], .icon-list) a:hover {
  --icon-color: var(--icon-color-hover, var(--primary));
  --icon-background: var(--icon-background-hover, var(--primary-l-1));
}
:where(a:has(> svg, > i)):hover {
  --icon-color: var(--icon-color-hover, var(--primary));
  --icon-background: var(--icon-background-hover, var(--primary-l-1));
}

/* Feature: WS Form */
.form--light .wsf-form button.wsf-button,
.form--light .wsf-form button.wsf-button.wsf-button-primary {
  background-color: var(--tertiary);
  color: var(--text-color);
  border-style: var(--f-btn-border-style, solid);
  border-width: 1px;
  border-color: var(--tertiary);
  border-radius: var(--radius-s) var(--radius-s) 2px var(--radius-s);
  -webkit-border-radius: var(--radius-s) var(--radius-s) 2px var(--radius-s);
  -moz-border-radius: var(--radius-s) var(--radius-s) 2px var(--radius-s);
  -ms-border-radius: var(--radius-s) var(--radius-s) 2px var(--radius-s);
  -o-border-radius: var(--radius-s) var(--radius-s) 2px var(--radius-s);
  font-size: var(--f-btn-text-size, --text-m);
  font-weight: var(--f-btn-font-weight, 400);
  line-height: var(--f-btn-line-height, 1);
  padding: var(--f-btn-padding-y, 0.75em) var(--f-btn-padding-x, 1.5em);
  margin-block-start: var(--f-btn-margin-top, 0);
  text-align: center;
  -webkit-text-decoration: var(--f-btn-text-decoration, none);
  text-decoration: var(--f-btn-text-decoration, none);
  text-transform: var(--f-btn-text-transform, none);
  transition: all var(--btn-transition-duration) ease;
  min-height: var(--f-input-height, inherit);
}

.form--light .wsf-form button.wsf-button:hover,
.form--light .wsf-form button.wsf-button.wsf-button-primary:hover {
  background-color: var(--tertiary-l-1);
  color: var(--text-dark);
  border-color: ar(--tertiary-l-1);
}

.form--light .wsf-form input[type='checkbox'].wsf-field + label.wsf-label {
  color: var(--white);
}

/* Feature: Overlay Header */
#bricks-blank-canvas > .actions,
body:not(.content-offset--off):not(:has(header:is([data-sticky-header='0'])))
  main:not(.panel-content)
  > *:first-child
  > *:first-child:not(:is(.bricks-shape-divider, .bricks-background-video-wrapper)),
main > *:first-child > .bricks-shape-divider ~ .brxe-container {
  margin-block-start: var(--header-height);
}
