.main-layout {
  position: relative;
}
.main-layout > .brxe-section {
  position: relative;
}
.main-layout > .brxe-section[data-full-bleed] {
  position: relative;
  isolation: isolate; 
}


.main-layout > .brxe-section[data-full-bleed]::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  width: 100vw;
  transform: translateX(-50%);
}


.main-layout > .brxe-section[data-full-bleed="primary"]::before {
  background-color: var(--color-therapeutic-blue);
}

.main-layout > .brxe-section[data-full-bleed="secondary"]::before {
  background-color: var(--color-navy);
}

.main-layout > .brxe-section[data-full-bleed="accent"]::before {
  background-color: var(--color-accent, #10b981);
}

.main-layout > .brxe-section[data-full-bleed="dark"]::before {
  background-color: var(--color-dark, #1f2937);
}

.main-layout > .brxe-section[data-full-bleed="light"]::before {
  background-color: var(--color-light, #ffffff);
}

.main-layout > .brxe-section[data-full-bleed="muted"]::before {
  background-color: var(--color-muted, #f9fafb);
}


.main-layout > .brxe-section[data-full-bleed="custom"]::before {
  background-color: var(--section-bg-color, #f5f5f5);
}





.main-layout > .brxe-section[data-full-bleed][data-padding="large"] {
  padding-block: var(--space-3xl, 80px);
}

.main-layout > .brxe-section[data-full-bleed][data-padding="medium"] {
  padding-block: var(--space-2xl, 60px);
}

.main-layout > .brxe-section[data-full-bleed][data-padding="small"] {
  padding-block: var(--space-xl, 40px);
}





.main-layout > .brxe-section[data-full-bleed][data-border-top="true"]::before {
  border-top: 1px solid var(--color-border, #e5e7eb);
}

.main-layout > .brxe-section[data-full-bleed][data-border-bottom="true"]::before {
  border-bottom: 1px solid var(--color-border, #e5e7eb);
}

.main-layout > .brxe-section[data-full-bleed][data-shadow="true"]::before {
  box-shadow: 
    0 1px 3px 0 rgba(0, 0, 0, 0.1), 
    0 1px 2px -1px rgba(0, 0, 0, 0.1);
}






.main-layout > .brxe-section[data-full-bleed] > .brxe-container {
  position: relative;
  z-index: 1;
}


.main-layout > .brxe-section[data-full-bleed] .brxe-block {
  position: relative;
  z-index: 1;
}


.main-layout > .brxe-section[data-full-bleed][data-animate] {
  
}




.main-layout > .brxe-section.full-bleed-alt {
  margin-left: calc(-1 * var(--container-padding, 20px));
  margin-right: calc(-100vw + 100% + var(--container-padding, 20px));
  padding-left: var(--container-padding, 20px);
  padding-right: var(--container-padding, 20px);
  background-color: var(--color-bg-secondary, #f5f5f5);
}


.main-layout > .brxe-section.full-bleed-alt.bg-primary {
  background-color: var(--color-primary, #2563eb);
}

.main-layout > .brxe-section.full-bleed-alt.bg-dark {
  background-color: var(--color-dark, #1f2937);
  color: var(--color-text-light, #ffffff);
}




.full-bleed-secondary {
  --section-bg-color: var(--color-secondary, #f3f4f6);
}

.full-bleed-dark {
  --section-bg-color: var(--color-dark, #1f2937);
  color: var(--color-text-light, #ffffff);
}

.full-bleed-light {
  --section-bg-color: var(--color-light, #ffffff);
}




.main-layout > .brxe-section[data-full-bleed]::before {
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}



@media print {
  .main-layout > .brxe-section[data-full-bleed]::before {
    position: static;
    width: 100%;
    transform: none;
  }
}



@media (prefers-reduced-motion: reduce) {
  .main-layout > .brxe-section[data-full-bleed]::before {
    transition: none;
    animation: none;
  }
}