:root {
    --col-gap: var(--list-gap-wide);
}
.block-cta-columns {
    display: flex;
    justify-content: center;
    width: 100vw;
    flex-direction: row;
    margin: -1rem 0;
    padding: 1rem 0;
}
.block-cta-columns > .wrap {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
    justify-content: flex-start;
    gap: var(--list-gap-wide);
    overflow-x: auto;
    overflow-y: hidden;
    flex-shrink: 1;
    width: fit-content;
    padding: 1rem var(--max-width-deficit);
    text-align: center;
    opacity: 1;
    transform: translate(0, 0);
    filter: blur(0);
    transition: none;
    will-change: none;
}
.block-cta-columns > .wrap > * {
    display: flex;
    flex: 1 0 calc((100% - (var(--s0-1) * var(--col-gap)))/ var(--s1_2-2));
    flex-direction: column;
    opacity: 0;
    transform: translateY(var(--anim-distance));
    filter: blur(10px);
    will-change: opacity, transform, filter;
    transition: 
        opacity var(--anim-duration) var(--anim-easing),
        transform var(--anim-duration) var(--anim-easing),
        filter var(--anim-duration) var(--anim-easing);
    max-width: 85%;
    justify-content: center;
    border-radius: var(--s1-5);
}
.is-visible .block-cta-columns > * > * {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
}
.block-cta-columns.scroll > * {
    flex: 0 0 calc((100% - (var(--s0-2) * var(--col-gap)))/ var(--s1_2-2_8));
}
.is-visible .block-cta-columns > * > *:nth-child(1) { transition-delay: 0.1s; }
.is-visible .block-cta-columns > * > *:nth-child(2) { transition-delay: 0.2s; }
.is-visible .block-cta-columns > * > *:nth-child(3) { transition-delay: 0.3s; }
.is-visible .block-cta-columns > * > *:nth-child(4) { transition-delay: 0.4s; }
.is-visible .block-cta-columns > * > *:nth-child(5) { transition-delay: 0.5s; }

.block-cta-columns.sticky-titles .scroll {
    padding-top: 0;
}
.block-cta-columns.sticky-titles .block-title {
    position: sticky;
    top:0;
    padding:var(--block-padding-y) 0 var(--block-gap) 0;
    margin: calc(var(--block-gap) * -1);
    z-index:1;
    backdrop-filter: blur(10px);
    mask: linear-gradient(to bottom, black 0%, black calc(100% - calc(var(--block-gap) * 0.5)), transparent 100%);
}
.block-cta-columns.sticky-titles .block-title + * {
    margin-top:var(--block-gap);
}
.sticky-titles .block-title:before {
    z-index: -1;
    opacity: 0.95;
    content: "";
    position: absolute;
    top: 0;
    left:0;
    inset: 0;
    mask: linear-gradient(to bottom, black 0%, black calc(100% - var(--block-gap)), transparent 100%);
}
.sticky-titles .style-bright .block-title:before {
    background: var(--style-bright-bg);
}
.sticky-titles .style-dark .block-title:before {
    background: var(--style-dark-bg);
}
.sticky-titles .style-mid .block-title:before {
    background: var(--style-mid-bg);
}