.align-left {
  margin: 0 var(--psi-grid-gap) var(--psi-grid-gap) 0;
}

.align-right {
  margin: 0 0 var(--psi-grid-gap) var(--psi-grid-gap);
}

.align-center {
  margin: var(--psi-grid-gap) auto;
}
.align-center img {
  margin: 0 auto;
}

[class*=l-flex] > * {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  margin: calc(var(--psi-grid-gap) / 2 * -1) calc(var(--psi-grid-gap) / 2 * -1);
}

[class*=l-flex] > * > * {
  margin: calc(var(--psi-grid-gap) / 2) calc(var(--psi-grid-gap) / 2);
}

.l-flex__alignment--start > * {
  justify-content: flex-start;
}

.l-flex__alignment--center > * {
  justify-content: center;
}

.l-flex__alignment--end > * {
  justify-content: flex-end;
}

.l-flex__alignment--end > * {
  justify-content: flex-end;
}

.l-flex__no-wrap > * {
  flex-wrap: nowrap;
}

[class*=l-constrained] {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--psi-width-xlarge);
}

[class*=l-constrained] [class*=l-constrained] {
  margin-left: 0;
  margin-right: 0;
}

.l-constrained {
  max-width: var(--psi-width-xlarge);
}
@media (max-width: 991.98px) {
  .l-constrained {
    max-width: var(--psi-width-medium);
  }
}

.l-constrained__width--narrow {
  max-width: var(--psi-width-medium);
}

.l-constrained__width--wide {
  max-width: var(--psi-width-xxlarge);
}

.l-constrained__width--full {
  width: 100%;
}

.layout--fourcol-section {
  display: flex;
  flex-wrap: wrap;
}

.layout--fourcol-section > .layout__region {
  flex: 0 1 23%;
  width: 100%;
}
@media (max-width: 1199.98px) {
  .layout--fourcol-section > .layout__region {
    flex: 0 1 48%;
  }
}
@media (max-width: 767.98px) {
  .layout--fourcol-section > .layout__region {
    flex: 0 1 100%;
  }
}

.layout-builder-block {
  padding: 0.5em;
}

.layout {
  gap: 1rem;
  flex-wrap: nowrap;
}
.layout.padded {
  max-width: 1282px;
  margin: 0 auto;
  padding: 0 4.5rem;
}
@media (max-width: 499.98px) {
  .layout.padded {
    padding: 0;
  }
}
.layout.spacing-top {
  margin-top: 3.5rem;
}
.layout.spacing-bottom {
  margin-bottom: 3.5rem;
}
.layout.spacing-left {
  margin-left: 3.5rem;
}
.layout.spacing-right {
  margin-right: 3.5rem;
}
.layout.bg-wired .bg__right {
  background-image: url(../../images/psi-bg-after-wired.png);
  background-repeat: no-repeat;
  background-position: bottom right;
}
.layout.bg-wired .bg__left {
  background-image: url(../../images/psi-bg-before-wired.png);
  background-repeat: no-repeat;
  background-position: top left;
}
@media (max-width: 991.98px) {
  .layout.bg-wired .bg__right {
    background-image: none;
    background-image: initial;
  }
  .layout.bg-wired .bg__left {
    background-image: none;
    background-image: initial;
  }
}
.layout.bg-wired .text-content {
  -webkit-backdrop-filter: blur(1px);
          backdrop-filter: blur(1px);
  background-color: rgba(255, 255, 255, 0.5);
}
.layout.padded-medium {
  max-width: 1016px;
  margin: 0 auto;
  padding: 0 4.5rem;
}
@media (max-width: 499.98px) {
  .layout.padded-medium {
    padding: 0;
  }
}
.layout.padded-big {
  max-width: 664px;
  margin: 0 auto;
  padding: 0 4.5rem;
}
@media (max-width: 499.98px) {
  .layout.padded-big {
    padding: 0;
  }
}
.layout.bg-teal {
  background-color: var(--psi-color-teal);
}
.layout.bg-green {
  background-color: var(--psi-color-green);
}
.layout.bg-blue-light {
  background-color: var(--psi-color-blue-light);
}
.layout.bg-blue-lighter {
  background-color: var(--psi-color-blue-lighter);
}

.block-content.padded {
  max-width: 1282px;
  margin: 0 auto;
  padding: 0 4.5rem;
}
@media (max-width: 499.98px) {
  .block-content.padded {
    padding: 0;
  }
}
@media (max-width: 499.98px) {
  .block-content.padded {
    padding: 0;
  }
}
.block-content.padded-medium {
  max-width: 1016px;
  margin: 0 auto;
  padding: 0 4.5rem;
}
@media (max-width: 499.98px) {
  .block-content.padded-medium {
    padding: 0;
  }
}
.block-content.padded-big {
  max-width: 664px;
  margin: 0 auto;
  padding: 0 4.5rem;
}
@media (max-width: 499.98px) {
  .block-content.padded-big {
    padding: 0;
  }
}
.block-content.bg-teal {
  background-color: var(--psi-color-teal);
}
.block-content.bg-green {
  background-color: var(--psi-color-green);
}
.block-content.bg-blue-light {
  background-color: var(--psi-color-blue-light);
}
.block-content.bg-blue-lighter {
  background-color: var(--psi-color-blue-lighter);
}
.block-content.spacing-top {
  margin-top: 3.5rem;
}
.block-content.spacing-bottom {
  margin-bottom: 3.5rem;
}
.block-content.spacing-left {
  margin-left: 3.5rem;
}
.block-content.spacing-right {
  margin-right: 3.5rem;
}
.block-content.padded-top {
  padding-top: 3.5rem;
}
.block-content.padded-bottom {
  padding-bottom: 3.5rem;
}

.dialog-off-canvas-main-canvas {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  justify-content: space-between;
}

.layout.layout--fourcol-section,
.layout.layout--twocol-section {
  display: flex;
  justify-content: center;
}
@media (max-width: 499.98px) {
  .layout.layout--fourcol-section,
  .layout.layout--twocol-section {
    flex-wrap: wrap;
  }
}

.ui-widget.ui-widget-content {
  background-color: var(--psi-color-white);
}

@media (max-width: 499.98px) {
  .layout-container {
    padding: 0 0.5rem;
  }
}