.cms-composable-stack {
    display: grid;
    align-content: inherit;
    gap: inherit;
    min-width: 0;
}

.cms-composable-stack-hero {
    width: 100%;
}

.cms-rendered-hero > .cms-composable-stack-hero {
    justify-items: center;
    text-align: center;
}

.public-section:is(.layout-two-column, .layout-three-column, .layout-four-column) > .cms-composable-stack,
.cms-mud-paper-block:is(.layout-two-column, .layout-three-column, .layout-four-column) > .cms-composable-stack {
    display: grid;
    align-items: stretch;
}

.public-section.layout-two-column > .cms-composable-stack,
.cms-mud-paper-block.layout-two-column > .cms-composable-stack {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.public-section.layout-three-column > .cms-composable-stack,
.cms-mud-paper-block.layout-three-column > .cms-composable-stack {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.public-section.layout-four-column > .cms-composable-stack,
.cms-mud-paper-block.layout-four-column > .cms-composable-stack {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cms-hero-regions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.78fr);
    align-items: stretch;
    gap: inherit;
    width: 100%;
    min-width: 0;
}

.cms-rendered-hero.layout-media-left .cms-hero-regions {
    grid-template-columns: minmax(280px, 0.78fr) minmax(0, 1fr);
}

.cms-layout-columns {
    align-items: stretch;
    width: 100%;
    min-width: 0;
}

.cms-layout-columns > .cms-layout-grid-item {
    min-width: 0;
}

.cms-layout-column {
    display: grid;
    align-content: start;
    gap: inherit;
    min-width: 0;
    min-height: 100%;
}

.cms-layout-column.layout-media {
    align-content: stretch;
}

.cms-hero-regions > .cms-layout-column.layout-media,
.cms-layout-column.layout-media[style*="--cms-block-bg-media"] {
    width: 100%;
    justify-self: stretch;
}

.cms-layout-column.layout-sidebar {
    align-content: start;
    border-left: 1px solid var(--line);
    padding-left: clamp(1rem, 2.5vw, 1.5rem);
}

.cms-layout-column.layout-media .public-image-block,
.cms-layout-column.layout-media .cms-image-placeholder {
    min-height: 100%;
}

.cms-layout-column .public-image-block,
.cms-layout-column .public-image-block.layout-contained,
.cms-layout-column .public-image-block.layout-full-bleed {
    width: 100%;
    max-width: none;
    margin: 0;
}

.cms-layout-column > :is(.public-section, .public-hero, .public-image-block, .public-card-block, .cms-mud-paper-block, .cms-mud-expansion-panel, .public-alert-block, .cms-layout-stack, .cms-layout-columns),
.cms-layout-column > .site-block > :is(.public-section, .public-hero, .public-image-block, .public-card-block, .cms-mud-paper-block, .cms-mud-expansion-panel, .public-alert-block, .cms-layout-stack, .cms-layout-columns),
.cms-layout-grid-item > .site-block > :is(.public-section, .public-hero, .public-image-block, .public-card-block, .cms-mud-paper-block, .cms-mud-expansion-panel, .public-alert-block, .cms-layout-stack, .cms-layout-columns),
.site-block-nested > :is(.cms-mud-chip-block, .cms-mud-badge-block, .cms-mud-avatar-block, .cms-mud-progress-block, .cms-mud-rating-block, .cms-mud-timeline, .cms-mud-tree-view, .cms-mud-stepper, .cms-mud-link-block, .cms-mud-button-group, .cms-mud-icon-block, .cms-mud-icon-button-block, .cms-mud-fab-block, .cms-mud-toolbar-block, .cms-mud-quote-block, .cms-mud-simple-list, .cms-mud-image-gallery, .cms-mud-breadcrumbs, .cms-mud-menu-list, .cms-mud-nav-links, .cms-mud-tabs, .cms-mud-table-block, .cms-mud-skeleton-block),
.cms-layout-column > .site-block > :is(.cms-mud-chip-block, .cms-mud-badge-block, .cms-mud-avatar-block, .cms-mud-progress-block, .cms-mud-rating-block, .cms-mud-timeline, .cms-mud-tree-view, .cms-mud-stepper, .cms-mud-link-block, .cms-mud-button-group, .cms-mud-icon-block, .cms-mud-icon-button-block, .cms-mud-fab-block, .cms-mud-toolbar-block, .cms-mud-quote-block, .cms-mud-simple-list, .cms-mud-image-gallery, .cms-mud-breadcrumbs, .cms-mud-menu-list, .cms-mud-nav-links, .cms-mud-tabs, .cms-mud-table-block, .cms-mud-skeleton-block),
.cms-layout-grid-item > .site-block > :is(.cms-mud-chip-block, .cms-mud-badge-block, .cms-mud-avatar-block, .cms-mud-progress-block, .cms-mud-rating-block, .cms-mud-timeline, .cms-mud-tree-view, .cms-mud-stepper, .cms-mud-link-block, .cms-mud-button-group, .cms-mud-icon-block, .cms-mud-icon-button-block, .cms-mud-fab-block, .cms-mud-toolbar-block, .cms-mud-quote-block, .cms-mud-simple-list, .cms-mud-image-gallery, .cms-mud-breadcrumbs, .cms-mud-menu-list, .cms-mud-nav-links, .cms-mud-tabs, .cms-mud-table-block, .cms-mud-skeleton-block) {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    margin-inline: 0 !important;
    margin-block: 0 !important;
}

.cms-layout-column.layout-media .public-image-block img {
    height: 100%;
    max-height: none;
}

.cms-layout-column .cms-text-section,
.cms-layout-grid-item .cms-text-section,
.cms-layout-column .cms-text-section .rich-text,
.cms-layout-grid-item .cms-text-section .rich-text,
.cms-layout-column .cms-text-section :is(h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote),
.cms-layout-grid-item .cms-text-section :is(h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote) {
    max-width: 100% !important;
    margin-inline: 0 !important;
}
