@layer cms {
/* Site:BackgroundImageHero */
.cms-site--background-image-hero .bg-hero {position: relative; display: grid; place-items: center; width: 100%; min-height: 28rem; padding: 5rem 1.25rem; overflow: hidden; background-color: var(--cms-color-text); text-align: center; box-sizing: border-box;}
.cms-site--background-image-hero .bg-hero__image {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; z-index: 0;}
.cms-site--background-image-hero .bg-hero--image::after {content: ""; position: absolute; inset: 0; background-color: var(--cms-color-text); opacity: 0.2; z-index: 1; pointer-events: none;}
.cms-site--background-image-hero .bg-hero__content {position: relative; z-index: 2; width: 100%; max-width: 48rem; margin: 0 auto; padding: 1.75rem 1.25rem; background-color: var(--cms-color-surface); color: var(--cms-color-text); border-radius: 8px; box-sizing: border-box; box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.15);}
.cms-site--background-image-hero .bg-hero__title {margin: 0 0 0.75rem; color: var(--cms-color-text); font-size: 1.375rem; font-weight: 700; line-height: 1.25; text-wrap: balance;}
.cms-site--background-image-hero .bg-hero__title:last-child {margin-bottom: 0;}
.cms-site--background-image-hero .bg-hero__text {color: var(--cms-color-text); font-size: 0.875rem; font-weight: 400; line-height: 1.5;}
.cms-site--background-image-hero .bg-hero__text p {margin: 0 0 0.625rem; font-size: inherit; font-weight: 400; line-height: inherit;}
.cms-site--background-image-hero .bg-hero__text p:last-child {margin-bottom: 0;}
.cms-site--background-image-hero .bg-hero__text a {color: var(--cms-color-accent-strong); text-decoration: underline; text-underline-offset: 0.15em;}
.cms-site--background-image-hero .bg-hero__text a:hover {text-decoration-thickness: 2px;}
.cms-site--background-image-hero .bg-hero__text a:focus-visible {text-decoration-thickness: 2px; outline: 2px solid var(--cms-color-accent-strong); outline-offset: 2px;}
@media (min-width: 48rem) {.cms-site--background-image-hero .bg-hero {min-height: 38rem; padding: 8rem 2rem;}
.cms-site--background-image-hero .bg-hero__content {padding: 2.5rem 3rem;}
.cms-site--background-image-hero .bg-hero__title {margin-bottom: 1rem; font-size: 1.75rem; font-weight: 700; line-height: 1.25;}
.cms-site--background-image-hero .bg-hero__text {font-size: 0.875rem; font-weight: 400; line-height: 1.5;}
}
/* Site:OverlappingPhotosText */
.cms-site--overlapping-photos-text .duo {display: grid; gap: 2.5rem; align-items: center;}
.cms-site--overlapping-photos-text .duo__title {margin: 0 0 1rem; color: var(--cms-color-text);}
.cms-site--overlapping-photos-text .duo__text {color: var(--cms-color-text-muted);}
.cms-site--overlapping-photos-text .duo__text h3 {margin: 1.75rem 0 0.5rem; color: var(--cms-color-text);}
.cms-site--overlapping-photos-text .duo__text p {margin: 0 0 1rem;}
.cms-site--overlapping-photos-text .duo__text a {color: var(--cms-color-accent-strong); text-decoration: underline; text-underline-offset: 0.15em; transition: color 0.2s ease;}
.cms-site--overlapping-photos-text .duo__text a:hover {color: var(--cms-color-accent);}
.cms-site--overlapping-photos-text .duo__text a:focus-visible {color: var(--cms-color-accent); outline: 2px solid var(--cms-color-accent); outline-offset: 2px;}
.cms-site--overlapping-photos-text .duo__media {position: relative;}
.cms-site--overlapping-photos-text .duo__photo {margin: 0;}
.cms-site--overlapping-photos-text .duo__photo img {display: block; width: 100%; height: auto; object-fit: cover; border-radius: 0.5rem;}
.cms-site--overlapping-photos-text .duo__photo--first img {aspect-ratio: 4 / 5;}
.cms-site--overlapping-photos-text .duo__photo--second img {aspect-ratio: 1 / 1;}
.cms-site--overlapping-photos-text .duo__media--pair .duo__photo--first {width: 68%;}
.cms-site--overlapping-photos-text .duo__media--pair .duo__photo--second {position: relative; z-index: 1; width: 55%; margin-top: -40%; margin-left: auto;}
.cms-site--overlapping-photos-text .duo__media--pair .duo__photo--second img {border: 0.5rem solid var(--cms-color-surface); border-radius: 0.75rem;}
.cms-site--overlapping-photos-text .duo--media-right .duo__media--pair .duo__photo--first {margin-left: auto;}
.cms-site--overlapping-photos-text .duo--media-right .duo__media--pair .duo__photo--second {margin-left: 0;}
@media (min-width: 48rem) {.cms-site--overlapping-photos-text .duo {grid-template-columns: 1fr 1fr; gap: 4rem;}
.cms-site--overlapping-photos-text .duo--media-left .duo__media {order: -1;}
}
/* Site:StepCards */
.cms-site--step-cards .step-cards__title {margin: 0 0 1.5rem; color: var(--cms-color-text);}
.cms-site--step-cards .step-cards__list {display: grid; gap: 1rem; margin: 0; padding: 0; list-style: none;}
.cms-site--step-cards .step-card {display: flex; flex-direction: column; gap: 0.75rem; padding: 1.5rem; border-radius: 1rem; background: var(--cms-color-accent-surface); color: var(--cms-color-text);}
.cms-site--step-cards .step-card__number {display: flex; align-items: center; justify-content: center; width: 2.75rem; height: 2.75rem; border-radius: 50%; background: var(--cms-color-accent); color: var(--cms-color-on-accent); font-weight: 700; font-size: 1.125rem; line-height: 1;}
.cms-site--step-cards .step-card__title {margin: 0; font-size: 1.125rem; line-height: 1.3;}
.cms-site--step-cards .step-card__text {color: var(--cms-color-text-muted);}
.cms-site--step-cards .step-card__text > :first-child {margin-top: 0;}
.cms-site--step-cards .step-card__text > :last-child {margin-bottom: 0;}
.cms-site--step-cards .step-card__text a {color: var(--cms-color-accent-strong);}
@media (min-width: 48rem) {.cms-site--step-cards .step-cards__list {grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); gap: 1.5rem;}
}
/* Site:VideoImageCarousel */
.cms-site--video-image-carousel .media-duo__title {margin: 0 0 1.5rem; color: var(--cms-color-text);}
.cms-site--video-image-carousel .media-duo__grid {display: grid; gap: 1.5rem;}
.cms-site--video-image-carousel .media-duo__player {margin: 0;}
.cms-site--video-image-carousel .media-duo__media {display: block; width: 100%; aspect-ratio: 16 / 9; border-radius: 0.5rem; background: var(--cms-color-text); object-fit: contain;}
.cms-site--video-image-carousel .media-duo__media:focus-visible {outline: 3px solid var(--cms-color-accent-strong); outline-offset: 3px;}
.cms-site--video-image-carousel .media-duo__caption {display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 0.25rem 1rem; margin-top: 0.75rem; color: var(--cms-color-text);}
.cms-site--video-image-carousel .media-duo__link {font-size: 0.875rem; color: var(--cms-color-accent-strong); text-decoration: underline; text-underline-offset: 0.2em;}
.cms-site--video-image-carousel .media-duo__link:hover, .cms-site--video-image-carousel .media-duo__link:focus-visible {text-decoration-thickness: 2px;}
.cms-site--video-image-carousel .media-duo__link:focus-visible {outline: 3px solid var(--cms-color-accent-strong); outline-offset: 2px;}
.cms-site--video-image-carousel .media-duo__video {position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 0.5rem; background: var(--cms-color-accent-surface); color: var(--cms-color-text); text-decoration: none;}
.cms-site--video-image-carousel .media-duo__poster {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease;}
.cms-site--video-image-carousel .media-duo__play {position: absolute; left: 0.75rem; right: 0.75rem; bottom: 0.75rem; display: flex; align-items: center; gap: 0.75rem; padding: 0.625rem 0.875rem; border-radius: 0.5rem; background: var(--cms-color-surface);}
.cms-site--video-image-carousel .media-duo__icon {position: relative; flex: none; width: 2.5rem; height: 2.5rem; border-radius: 50%; background: var(--cms-color-accent); transition: background-color 0.2s ease;}
.cms-site--video-image-carousel .media-duo__icon::after {content: ""; position: absolute; top: 50%; left: 55%; transform: translate(-50%, -50%); border-style: solid; border-width: 0.5rem 0 0.5rem 0.8rem; border-color: transparent transparent transparent var(--cms-color-on-accent);}
.cms-site--video-image-carousel .media-duo__text {display: flex; flex-direction: column; min-width: 0;}
.cms-site--video-image-carousel .media-duo__label {font-size: 0.875rem; color: var(--cms-color-text-muted);}
.cms-site--video-image-carousel .media-duo__video-title {font-weight: 700; line-height: 1.3;}
.cms-site--video-image-carousel .media-duo__video:hover .media-duo__icon, .cms-site--video-image-carousel .media-duo__video:focus-visible .media-duo__icon {background: var(--cms-color-accent-strong);}
.cms-site--video-image-carousel .media-duo__video:hover .media-duo__poster, .cms-site--video-image-carousel .media-duo__video:focus-visible .media-duo__poster {transform: scale(1.03);}
.cms-site--video-image-carousel .media-duo__video:focus-visible {outline: 3px solid var(--cms-color-accent-strong); outline-offset: 3px;}
.cms-site--video-image-carousel .media-duo__carousel {position: relative; aspect-ratio: 16 / 9; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; border-radius: 0.5rem; background: var(--cms-color-accent-surface); scrollbar-width: none;}
.cms-site--video-image-carousel .media-duo__carousel::-webkit-scrollbar {display: none;}
.cms-site--video-image-carousel .media-duo__carousel:focus-visible {outline: 3px solid var(--cms-color-accent-strong); outline-offset: 3px;}
.cms-site--video-image-carousel .media-duo__slides {display: flex; height: 100%; margin: 0; padding: 0; list-style: none;}
.cms-site--video-image-carousel .media-duo__slide {position: relative; flex: 0 0 100%; height: 100%; overflow: hidden; background: var(--cms-color-accent-surface); scroll-snap-align: start; scroll-snap-stop: always; scroll-margin-top: 25vh;}
.cms-site--video-image-carousel .media-duo__slide img {display: block; width: 100%; height: 100%; object-fit: cover;}
.cms-site--video-image-carousel .media-duo__arrow {position: absolute; top: 50%; width: 2.75rem; height: 2.75rem; margin-top: -1.375rem; border-radius: 50%; background: var(--cms-color-surface); color: var(--cms-color-text); box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2); transition: background-color 0.2s ease, color 0.2s ease;}
.cms-site--video-image-carousel .media-duo__arrow--prev {left: 0.75rem;}
.cms-site--video-image-carousel .media-duo__arrow--next {right: 0.75rem;}
.cms-site--video-image-carousel .media-duo__arrow::before {content: ""; position: absolute; top: 50%; left: 50%; width: 0.625rem; height: 0.625rem; border-top: 2px solid currentColor; border-right: 2px solid currentColor;}
.cms-site--video-image-carousel .media-duo__arrow--prev::before {transform: translate(-30%, -50%) rotate(-135deg);}
.cms-site--video-image-carousel .media-duo__arrow--next::before {transform: translate(-70%, -50%) rotate(45deg);}
.cms-site--video-image-carousel .media-duo__arrow:hover, .cms-site--video-image-carousel .media-duo__arrow:focus-visible {background: var(--cms-color-accent); color: var(--cms-color-on-accent);}
.cms-site--video-image-carousel .media-duo__arrow:focus-visible {outline: 3px solid var(--cms-color-accent-strong); outline-offset: 2px;}
.cms-site--video-image-carousel .media-duo__sr {position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0;}
@media (prefers-reduced-motion: no-preference) {.cms-site--video-image-carousel .media-duo__carousel {scroll-behavior: smooth;}
}
@media (prefers-reduced-motion: reduce) {.cms-site--video-image-carousel .media-duo__poster, .cms-site--video-image-carousel .media-duo__icon, .cms-site--video-image-carousel .media-duo__arrow {transition: none;}
}
@media (min-width: 48rem) {.cms-site--video-image-carousel .media-duo__grid {grid-template-columns: 1fr 1fr; align-items: start; gap: 2rem;}
.cms-site--video-image-carousel .media-duo--video-right .media-duo__video, .cms-site--video-image-carousel .media-duo--video-right .media-duo__player {order: 2;}
}
}
