.site-block {
  min-width: 0;
}

:root {
  --site-h1-size: 4.25rem;
  --site-h2-size: 3.25rem;
  --site-h3-size: 2.25rem;
  --site-h4-size: 1.55rem;
  --site-h5-size: 1.08rem;
  --site-h6-size: 0.95rem;
  --site-heading-font-weight: 400;
}

.public-site :is(h1, h2, h3, h4, h5, h6),
.public-page :is(h1, h2, h3, h4, h5, h6),
.cms-page-render :is(h1, h2, h3, h4, h5, h6) {
  max-width: var(--site-heading-width);
  color: var(--site-heading-color);
  line-height: 1.05;
  letter-spacing: 0;
  font-weight: var(--site-heading-font-weight) !important;
}

.public-site :is(h1, h2, h3, h4, h5, h6) *,
.public-page :is(h1, h2, h3, h4, h5, h6) *,
.cms-page-render :is(h1, h2, h3, h4, h5, h6) * {
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit;
}

.public-site h1,
.public-page h1,
.cms-page-render h1 {
  font-size: var(--site-h1-size);
}

.public-site h2,
.public-page h2,
.cms-page-render h2 {
  font-size: var(--site-h2-size);
}

.public-site h3,
.public-page h3,
.cms-page-render h3 {
  font-size: var(--site-h3-size);
}

.public-site h4,
.public-page h4,
.cms-page-render h4 {
  font-size: var(--site-h4-size);
}

.public-site h5,
.public-page h5,
.cms-page-render h5 {
  font-size: var(--site-h5-size);
}

.public-site h6,
.public-page h6,
.cms-page-render h6 {
  font-size: var(--site-h6-size);
  text-transform: uppercase;
}

@media (max-width: 960px) {
  :root {
    --site-h1-size: 3.15rem;
    --site-h2-size: 2.45rem;
    --site-h3-size: 1.85rem;
  }
}
@media (max-width: 760px) {
  .cms-site-expansion-panel {
    margin-inline: 0 !important;
  }
  .cms-site-expansion-panel summary {
    padding: 1rem 1.1rem;
  }
  .cms-site-expansion-content {
    padding: 1.1rem;
  }
  .cms-site-expansion-content .cms-layout-columns {
    gap: var(--cms-layout-grid-gap, 1rem);
  }
  .cms-site-expansion-content .cms-layout-columns > .cms-layout-grid-item {
    flex-basis: 100%;
    max-width: 100%;
    padding-inline: 0.75rem !important;
  }
  .cms-site-expansion-content .cms-layout-column {
    padding: 0.35rem 0 !important;
  }
  .cms-site-expansion-content .site-block > :is(.cms-text-section, .cms-site-check-list, .cms-site-simple-list) {
    box-sizing: border-box;
    padding-inline: 0.35rem;
  }
  .cms-site-expansion-content .cms-site-check-list ul,
  .cms-site-expansion-content .cms-site-simple-list ul,
  .cms-site-expansion-content .cms-site-simple-list ol {
    gap: 0.75rem;
    padding-inline: 0.15rem;
  }
  .cms-site-expansion-content .cms-site-check-list li,
  .cms-site-expansion-content .cms-site-simple-list li {
    gap: 0.8rem;
    padding: 0.35rem 0.1rem;
    overflow-wrap: anywhere;
  }
  .cms-site-expansion-content :is(h1, h2, h3, h4, h5, h6, p, li) {
    overflow-wrap: anywhere;
  }
  .public-section .cms-layout-columns {
    row-gap: var(--cms-layout-grid-gap, 1.25rem);
  }
  .public-section .cms-layout-columns > .cms-layout-grid-item {
    flex-basis: 100% !important;
    max-width: 100% !important;
    padding-inline: 0.85rem !important;
  }
  .public-section .cms-layout-column > .site-block > :is(.cms-text-section, .cms-site-simple-list) {
    box-sizing: border-box;
    max-width: 100% !important;
    padding-inline: clamp(0.85rem, 3vw, 1.1rem) !important;
  }
  .public-section .cms-layout-column > .site-block > .cms-site-simple-list :is(ul, ol) {
    padding-left: 1.35rem;
    padding-right: 0.25rem;
  }
}
@media (max-width: 640px) {
  :root {
    --site-h1-size: 2.2rem;
    --site-h2-size: 2rem;
    --site-h3-size: 1.55rem;
  }
  .public-hero .cms-layout-columns,
  .cms-layout-columns {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    gap: var(--cms-layout-grid-gap, 1rem) !important;
  }
  .public-hero .cms-layout-columns > .cms-layout-grid-item,
  .cms-layout-columns > .cms-layout-grid-item {
    padding: 0 !important;
  }
  .public-hero :is(.cms-text-section, .rich-text, h1, h2, h3, h4, h5, h6, p) {
    width: 100%;
    max-width: min(100%, 100vw - 3.25rem) !important;
    overflow-wrap: anywhere;
  }
  .public-hero .cms-text-section :is(h1, h2, h3, h4, h5, h6, p),
  .public-hero .rich-text :is(h1, h2, h3, h4, h5, h6, p) {
    max-width: min(100%, 100vw - 3.25rem) !important;
    overflow-wrap: anywhere;
  }
}
@media (max-width: 420px) {
  :root {
    --site-h1-size: 2rem;
    --site-h2-size: 1.8rem;
  }
}
.site-block-root {
  display: block;
}

.site-block-root.site-block-full {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}

.site-block-nested,
.cms-layout-grid-item > .site-block,
.cms-layout-column > .site-block,
.cms-composable-stack > .site-block,
.cms-site-tab-panel > .site-block,
.cms-site-expansion-content > .site-block,
.content-rotator__slide-content > .site-block {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-inline: 0;
}

.cms-text-section,
.cms-text-section .rich-text,
.cms-text-section .rich-text > :is(p, ul, ol, blockquote),
.cms-site-simple-list,
.cms-site-simple-list :is(ul, ol, li) {
  color: var(--site-heading-color);
}

.cms-text-section :is(h1, h2, h3, h4, h5, h6),
.cms-text-section .rich-text :is(h1, h2, h3, h4, h5, h6) {
  color: var(--site-heading-color);
}

[style*="--cms-block-bg"] {
  background-color: var(--cms-block-bg-render, var(--cms-block-bg)) !important;
}

[style*="--cms-block-bg"]:not([style*="--cms-block-bg-media"]) {
  background: var(--cms-block-bg-render, var(--cms-block-bg)) !important;
}

[style*="--cms-block-bg-media"] {
  position: relative;
  overflow: hidden;
}

.cms-block-background-media-layer {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  border-radius: inherit;
  overflow: hidden;
  pointer-events: none;
}

.cms-block-background-media-layer::after {
  position: absolute;
  inset: 0;
  display: block;
  content: "";
  background: var(--cms-block-bg-overlay, transparent);
}

:root[data-site-theme=light] .cms-block-background-media-layer::after {
  background: var(--cms-block-light-bg-overlay, var(--cms-block-bg-overlay, transparent));
}

:root[data-site-theme=dark] .cms-block-background-media-layer::after {
  background: var(--cms-block-dark-bg-overlay, var(--cms-block-bg-overlay, transparent));
}

.cms-block-background-media-layer > :is(img, .cms-responsive-picture),
.cms-block-background-media-layer > .cms-responsive-picture > img {
  width: 100%;
  height: 100%;
  min-height: 100%;
  max-height: none;
  display: block;
  border-radius: inherit;
  object-fit: cover;
  object-position: center;
}

.cms-rendered-hero .cms-block-background-media-layer > :is(img, .cms-responsive-picture),
.cms-rendered-hero .cms-block-background-media-layer > .cms-responsive-picture > img,
.public-hero .cms-block-background-media-layer > :is(img, .cms-responsive-picture),
.public-hero .cms-block-background-media-layer > .cms-responsive-picture > img {
  height: 100% !important;
  min-height: 100% !important;
  max-height: none !important;
}

.cms-block-background-media-layer.mode-contain > img,
.cms-block-background-media-layer.mode-contain > .cms-responsive-picture > img {
  object-fit: contain;
}

.cms-block-background-media-layer:is(.mode-auto, .mode-repeat, .mode-repeat-x, .mode-repeat-y) > img,
.cms-block-background-media-layer:is(.mode-auto, .mode-repeat, .mode-repeat-x, .mode-repeat-y) > .cms-responsive-picture > img {
  object-fit: none;
}

[style*="--cms-block-bg-media"] > :not(.cms-block-background-media-layer) {
  position: relative;
  z-index: 1;
}

:root[data-site-theme=light] [style*="--cms-block-light-bg"] {
  background-color: var(--cms-block-light-bg-render, var(--cms-block-light-bg)) !important;
}

:root[data-site-theme=light] [style*="--cms-block-light-bg"]:not([style*="--cms-block-bg-media"]) {
  background: var(--cms-block-light-bg-render, var(--cms-block-light-bg)) !important;
}

:root[data-site-theme=dark] [style*="--cms-block-dark-bg"] {
  background-color: var(--cms-block-dark-bg-render, var(--cms-block-dark-bg)) !important;
}

:root[data-site-theme=dark] [style*="--cms-block-dark-bg"]:not([style*="--cms-block-bg-media"]) {
  background: var(--cms-block-dark-bg-render, var(--cms-block-dark-bg)) !important;
}

[style*="--cms-block-text"] {
  color: var(--cms-block-text) !important;
}

:root[data-site-theme=light] [style*="--cms-block-light-text"] {
  color: var(--cms-block-light-text) !important;
}

:root[data-site-theme=dark] [style*="--cms-block-dark-text"] {
  color: var(--cms-block-dark-text) !important;
}

[style*="--cms-block-heading"] :is(h1, h2, h3, h4, h5, h6) {
  color: var(--cms-block-heading) !important;
}

:root[data-site-theme=light] [style*="--cms-block-light-heading"] :is(h1, h2, h3, h4, h5, h6) {
  color: var(--cms-block-light-heading) !important;
}

:root[data-site-theme=dark] [style*="--cms-block-dark-heading"] :is(h1, h2, h3, h4, h5, h6) {
  color: var(--cms-block-dark-heading) !important;
}

[style*="--cms-block-border"] {
  border-color: var(--cms-block-border) !important;
}

:root[data-site-theme=light] [style*="--cms-block-light-border"] {
  border-color: var(--cms-block-light-border) !important;
}

:root[data-site-theme=dark] [style*="--cms-block-dark-border"] {
  border-color: var(--cms-block-dark-border) !important;
}

[style*="--cms-block-text"] :is(.rich-text, .rich-text > p, .rich-text > ul, .rich-text > ol, .rich-text > blockquote, .cms-site-simple-list, .cms-site-simple-list ul, .cms-site-simple-list ol, .cms-site-simple-list li) {
  color: var(--cms-block-text);
}

:root[data-site-theme=light] [style*="--cms-block-light-text"] :is(.rich-text, .rich-text > p, .rich-text > ul, .rich-text > ol, .rich-text > blockquote, .cms-site-simple-list, .cms-site-simple-list ul, .cms-site-simple-list ol, .cms-site-simple-list li) {
  color: var(--cms-block-light-text);
}

:root[data-site-theme=dark] [style*="--cms-block-dark-text"] :is(.rich-text, .rich-text > p, .rich-text > ul, .rich-text > ol, .rich-text > blockquote, .cms-site-simple-list, .cms-site-simple-list ul, .cms-site-simple-list ol, .cms-site-simple-list li) {
  color: var(--cms-block-dark-text);
}

.site-block-nested > :is(.public-section, .public-hero, .public-image-block, .public-video-block, .public-card-block, .cms-site-panel-block, .cms-site-accordion, .cms-site-expansion-panel, .public-alert-block, .cms-layout-stack, .cms-layout-columns, .cms-site-tabs, .cms-site-simple-list, .cms-site-table-block, .cms-site-quote-block, .cms-site-nav-links, .cms-site-menu-list, .cms-site-tree-view, .cms-site-timeline, .cms-site-stepper, .cms-site-button-group, .cms-site-toolbar-block, .cms-site-progress-block, .cms-site-rating-block, .cms-site-skeleton-block),
.cms-layout-grid-item > .site-block > :is(.public-section, .public-hero, .public-image-block, .public-video-block, .public-card-block, .cms-site-panel-block, .cms-site-accordion, .cms-site-expansion-panel, .public-alert-block, .cms-layout-stack, .cms-layout-columns, .cms-site-tabs, .cms-site-simple-list, .cms-site-table-block, .cms-site-quote-block, .cms-site-nav-links, .cms-site-menu-list, .cms-site-tree-view, .cms-site-timeline, .cms-site-stepper, .cms-site-button-group, .cms-site-toolbar-block, .cms-site-progress-block, .cms-site-rating-block, .cms-site-skeleton-block),
.cms-layout-column > .site-block > :is(.public-section, .public-hero, .public-image-block, .public-video-block, .public-card-block, .cms-site-panel-block, .cms-site-accordion, .cms-site-expansion-panel, .public-alert-block, .cms-layout-stack, .cms-layout-columns, .cms-site-tabs, .cms-site-simple-list, .cms-site-table-block, .cms-site-quote-block, .cms-site-nav-links, .cms-site-menu-list, .cms-site-tree-view, .cms-site-timeline, .cms-site-stepper, .cms-site-button-group, .cms-site-toolbar-block, .cms-site-progress-block, .cms-site-rating-block, .cms-site-skeleton-block),
.cms-composable-stack > .site-block > :is(.public-section, .public-hero, .public-image-block, .public-video-block, .public-card-block, .cms-site-panel-block, .cms-site-accordion, .cms-site-expansion-panel, .public-alert-block, .cms-layout-stack, .cms-layout-columns, .cms-site-tabs, .cms-site-simple-list, .cms-site-table-block, .cms-site-quote-block, .cms-site-nav-links, .cms-site-menu-list, .cms-site-tree-view, .cms-site-timeline, .cms-site-stepper, .cms-site-button-group, .cms-site-toolbar-block, .cms-site-progress-block, .cms-site-rating-block, .cms-site-skeleton-block),
.cms-site-tab-panel > .site-block > :is(.public-section, .public-hero, .public-image-block, .public-video-block, .public-card-block, .cms-site-panel-block, .cms-site-accordion, .cms-site-expansion-panel, .public-alert-block, .cms-layout-stack, .cms-layout-columns, .cms-site-tabs, .cms-site-simple-list, .cms-site-table-block, .cms-site-quote-block, .cms-site-nav-links, .cms-site-menu-list, .cms-site-tree-view, .cms-site-timeline, .cms-site-stepper, .cms-site-button-group, .cms-site-toolbar-block, .cms-site-progress-block, .cms-site-rating-block, .cms-site-skeleton-block),
.cms-site-expansion-content > .site-block > :is(.public-section, .public-hero, .public-image-block, .public-video-block, .public-card-block, .cms-site-panel-block, .cms-site-accordion, .cms-site-expansion-panel, .public-alert-block, .cms-layout-stack, .cms-layout-columns, .cms-site-tabs, .cms-site-simple-list, .cms-site-table-block, .cms-site-quote-block, .cms-site-nav-links, .cms-site-menu-list, .cms-site-tree-view, .cms-site-timeline, .cms-site-stepper, .cms-site-button-group, .cms-site-toolbar-block, .cms-site-progress-block, .cms-site-rating-block, .cms-site-skeleton-block),
.content-rotator__slide-content > .site-block > :is(.public-section, .public-hero, .public-image-block, .public-video-block, .public-card-block, .cms-site-panel-block, .cms-site-accordion, .cms-site-expansion-panel, .public-alert-block, .cms-layout-stack, .cms-layout-columns, .cms-site-tabs, .cms-site-simple-list, .cms-site-table-block, .cms-site-quote-block, .cms-site-nav-links, .cms-site-menu-list, .cms-site-tree-view, .cms-site-timeline, .cms-site-stepper, .cms-site-button-group, .cms-site-toolbar-block, .cms-site-progress-block, .cms-site-rating-block, .cms-site-skeleton-block) {
  box-sizing: border-box;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  margin-inline: 0 !important;
}

@media (max-width: 760px) {
  .cms-layout-column > .site-block-type-columns .cms-layout-columns:has(.site-block-type-simple-list) {
    gap: 0.5rem !important;
    row-gap: 0.5rem !important;
    padding-block: 0 !important;
  }
  .cms-layout-column > .site-block-type-columns .cms-layout-columns:has(.site-block-type-simple-list) > .cms-layout-grid-item {
    padding-block: 0 !important;
    padding-inline: 0.35rem !important;
  }
  .public-section .cms-layout-column .site-block-type-simple-list > .cms-site-simple-list,
  .cms-layout-column .site-block-type-simple-list > .cms-site-simple-list {
    width: 100% !important;
    max-width: 100% !important;
    margin-block: 0 !important;
    padding-inline: 0 !important;
  }
  .public-section .cms-layout-column .site-block-type-simple-list > .cms-site-simple-list :is(ul, ol),
  .cms-layout-column .site-block-type-simple-list > .cms-site-simple-list :is(ul, ol) {
    margin-block: 0;
    padding-left: clamp(1.45rem, 6vw, 1.8rem) !important;
    padding-right: 0.25rem !important;
  }
}
.public-section.utility .cms-text-section :is(h1),
.public-section.utility .cms-text-section .rich-text :is(h1) {
  font-size: clamp(2rem, 4vw, 2.75rem) !important;
  line-height: 1.1;
}

.public-section.utility .cms-text-section :is(h2),
.public-section.utility .cms-text-section .rich-text :is(h2) {
  font-size: clamp(1.05rem, 1.8vw, 1.35rem) !important;
  line-height: 1.2;
}

.public-section.utility .cms-text-section :is(h3),
.public-section.utility .cms-text-section .rich-text :is(h3) {
  font-size: clamp(0.95rem, 1.4vw, 1.1rem) !important;
  line-height: 1.25;
}

.public-section.utility .cms-text-section :is(h4, h5, h6),
.public-section.utility .cms-text-section .rich-text :is(h4, h5, h6) {
  font-size: clamp(0.9rem, 1.2vw, 1rem) !important;
  line-height: 1.3;
}

.public-section.utility .cms-site-divider {
  display: none;
}
