/* Cinematic Scroll Widget v0.6.1 */
.elementor-widget-csw_cinematic_scene{
    width:100vw!important;
    max-width:100vw!important;
    flex:0 0 100vw!important;
    align-self:stretch!important;
    position:relative!important;
    left:50%!important;
    margin-left:-50vw!important;
    margin-right:-50vw!important;
}
.elementor-widget-csw_cinematic_scene > .elementor-widget-container{
    width:100%!important;
    max-width:none!important;
    padding:0!important;
    margin:0!important;
    overflow:visible!important;
}
.csw-scene{
    position:relative;
    width:100vw;
    max-width:100vw;
    min-height:100vh;
    margin:0;
    padding:0;
    overflow:hidden;
    isolation:isolate;
    color:#fff;
    background:#000;
}
.csw-scene__media-wrap,
.csw-scene__media{
    position:absolute;
    inset:-1px;
    width:calc(100% + 2px);
    height:calc(100% + 2px);
    overflow:hidden;
    pointer-events:none;
}
.csw-scene__media-wrap{z-index:0}
.csw-scene__media{
    z-index:0;
    transform:translateZ(0) scale(1.002);
    transform-origin:center center;
    will-change:transform;
}
.csw-scene__image,
.csw-scene__video{
    --csw-media-y:50%;
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    min-width:100%;
    min-height:100%;
    display:block;
    object-fit:cover;
    object-position:50% var(--csw-media-y);
    transform:translateZ(0) scale(1.01);
    transform-origin:center center;
    will-change:transform;
}
.csw-scene__overlay{position:absolute;inset:0;z-index:1;pointer-events:none}
.csw-scene__placeholder{position:absolute;inset:0;display:grid;place-items:center;background:#111;color:rgba(255,255,255,.65);font:500 14px/1.4 system-ui,sans-serif}
.csw-scene__content{position:relative;z-index:3;min-height:inherit;width:100%;display:flex;align-items:flex-end;justify-content:flex-start;box-sizing:border-box}
.csw-scene__copy{width:min(1100px,100%);max-width:100%;box-sizing:border-box}
.csw-scene__eyebrow{text-transform:uppercase;letter-spacing:.18em;font:600 12px/1.2 system-ui,sans-serif;margin:0 0 20px}
.csw-scene__title{padding:0;margin:0 0 28px;max-width:100%;font-weight:700;line-height:.84;letter-spacing:-.055em;text-transform:uppercase;overflow-wrap:normal;word-break:normal}
.csw-scene__title-line{display:block;overflow:hidden;padding-bottom:.08em;max-width:100%}
.csw-scene__title-line>span{display:block;will-change:transform}
.csw-scene__description{margin:0 0 28px;max-width:620px;font:400 clamp(16px,1.4vw,22px)/1.45 system-ui,sans-serif;opacity:.92}
.csw-scene__button{display:inline-flex;gap:14px;align-items:center;margin:0;color:inherit;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font:600 12px/1 system-ui,sans-serif;border:0;border-bottom:1px solid currentColor;padding:0 0 8px;transition:color .25s ease,background-color .25s ease,border-color .25s ease,transform .25s ease}
.csw-scene__button:hover{transform:translateY(-2px)}
.csw-scene__button-icon{display:inline-block;line-height:1}
.csw-scene__progress{position:absolute;z-index:4;right:24px;bottom:24px;width:80px;height:2px;background:rgba(255,255,255,.25);overflow:hidden}
.csw-scene__progress span{display:block;width:100%;height:100%;background:currentColor;transform-origin:left center;transform:scaleX(0)}
body.csw-has-scene{overflow-x:clip}
@supports not (overflow:clip){body.csw-has-scene{overflow-x:hidden}}
@media(max-width:767px){
    .csw-scene__progress{right:16px;bottom:16px}
}
@media(prefers-reduced-motion:reduce){
    .csw-scene *{animation:none!important;transition:none!important}
    .csw-scene__media,.csw-scene__image,.csw-scene__video,.csw-scene__title-line>span{transform:none!important;clip-path:none!important}
}

/* Scroll-scrub video timeline */
.csw-scene__text-scenes{
    position:absolute;
    inset:0;
    z-index:4;
    width:100%;
    height:100%;
    box-sizing:border-box;
    pointer-events:none;
}
.csw-scene__text-scene{
    position:absolute;
    left:var(--csw-x,6%);
    top:var(--csw-y,62%);
    width:var(--csw-w,88%);
    max-width:calc(100vw - 32px);
    opacity:0;
    will-change:transform,opacity;
    pointer-events:none;
}
.csw-scene__timeline-text{
    margin:0;
    padding:0;
    color:var(--csw-text-color, #fff);
    font:700 clamp(48px,8vw,150px)/.86 system-ui,sans-serif;
    letter-spacing:-.055em;
    text-transform:uppercase;
    text-wrap:balance;
}
@media(max-width:767px){
    .csw-scene__text-scene{max-width:calc(100vw - 24px)}
}


/* Opening intro text for pinned autoplay video */
.csw-scene__intro{
    --csw-intro-y:50%;
    position:absolute;
    inset:0;
    z-index:6;
    pointer-events:none;
    display:block;
    text-align:center;
}
.csw-scene__intro-inner{
    position:absolute;
    left:50%;
    top:var(--csw-intro-y);
    transform:translate(-50%,-50%);
    width:100%;
    max-width:90%;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    box-sizing:border-box;
    padding:24px;
}
.csw-scene__intro-line{
    display:block;
    overflow:hidden;
    margin:0;
    padding:.04em 0;
    color:#fff;
    font:700 clamp(34px,5.6vw,104px)/.94 system-ui,sans-serif;
    letter-spacing:-.04em;
    text-transform:uppercase;
}
.csw-scene__intro-line>span{
    display:block;
    will-change:transform,opacity;
}
@media(max-width:767px){
    .csw-scene__intro-inner{max-width:94%;padding:18px}
}
