.escs-slider{
    --escs-card-w:220px;
    --escs-mobile-card-w:190px;
    --escs-card-h:290px;
    --escs-gap:18px;
    --escs-radius:14px;
    --escs-peek:28px;
    --escs-edge-fade-w:120px;
    --escs-edge-content-w:1280px;
    --escs-desktop-max-w:1280px;
    --escs-section-radius:24px;
    --escs-divider-color:#d9d9df;
    --escs-divider-w:1px;
    --escs-divider-gap:14px;
    --escs-edge-fade-color:#ffffff;
    position:relative;
    display:block;
    width:100%;
    max-width:min(var(--escs-desktop-max-w), 100%);
    margin:16px auto;
    box-sizing:border-box;
    overflow:hidden;
    isolation:isolate;
    user-select:none;
    -webkit-user-select:none;
    -webkit-touch-callout:none;
    -webkit-tap-highlight-color:transparent;
    touch-action:pan-y;
}

.escs-section-rounded{
    border-radius:var(--escs-section-radius);
}

.escs-section-rounded .escs-viewport{
    border-radius:var(--escs-section-radius);
}

.escs-section-dividers{
    padding-left:calc(var(--escs-divider-gap) + var(--escs-divider-w));
    padding-right:calc(var(--escs-divider-gap) + var(--escs-divider-w));
}

.escs-section-dividers:before,
.escs-section-dividers:after{
    content:"";
    position:absolute;
    top:calc(var(--escs-card-h) / 2);
    height:var(--escs-card-h);
    z-index:2;
    width:var(--escs-divider-w);
    background:var(--escs-divider-color);
    pointer-events:none;
    opacity:.95;
    border-radius:999px;
    transform:translateY(-50%);
}

.escs-section-dividers:before{
    left:0;
}

.escs-section-dividers:after{
    right:0;
}

.escs-edge-fade .escs-viewport:before,
.escs-edge-fade .escs-viewport:after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    z-index:3;
    width:max(var(--escs-edge-fade-w), calc((100vw - min(var(--escs-edge-content-w), 100vw)) / 2));
    max-width:42vw;
    pointer-events:none;
}

.escs-edge-fade .escs-viewport:before{
    left:0;
    background:var(--escs-edge-fade-color);
    -webkit-mask-image:linear-gradient(90deg, #000 0%, rgba(0,0,0,0) 100%);
    mask-image:linear-gradient(90deg, #000 0%, rgba(0,0,0,0) 100%);
}

.escs-edge-fade .escs-viewport:after{
    right:0;
    background:var(--escs-edge-fade-color);
    -webkit-mask-image:linear-gradient(270deg, #000 0%, rgba(0,0,0,0) 100%);
    mask-image:linear-gradient(270deg, #000 0%, rgba(0,0,0,0) 100%);
}

.escs-viewport{
    position:relative;
    display:block;
    width:100%;
    overflow:hidden;
    margin:0;
    touch-action:pan-y;
    cursor:grab;
    box-sizing:border-box;
    outline:none;
    transform:translateZ(0);
    -webkit-transform:translateZ(0);
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
}

.escs-viewport:active{
    cursor:grabbing;
}

.escs-track{
    position:relative;
    top:0;
    left:0;
    display:flex;
    align-items:stretch;
    margin:0 !important;
    padding:0 !important;
    list-style:none;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
}

.escs-slide{
    width:auto !important;
}

.escs-card{
    position:relative;
    display:block;
    width:var(--escs-card-w);
    height:var(--escs-card-h);
    border-radius:var(--escs-radius);
    overflow:hidden;
    background:#111;
    color:#fff;
    text-decoration:none !important;
    box-shadow:0 12px 28px rgba(15, 23, 42, .16);
    transform:translateZ(0);
    -webkit-transform:translateZ(0);
    user-select:none;
    -webkit-user-select:none;
    -webkit-touch-callout:none;
    -webkit-user-drag:none;
    touch-action:pan-y;
    transition:transform .22s ease, box-shadow .22s ease, filter .22s ease;
}

.escs-card:hover{
    transform:translateY(-2px);
    box-shadow:0 16px 34px rgba(15, 23, 42, .2);
    filter:saturate(1.03);
}

.escs-image{
    position:absolute;
    inset:0;
    display:block;
    width:100% !important;
    height:100% !important;
    min-width:100%;
    min-height:100%;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center;
    pointer-events:none;
    -webkit-user-drag:none;
    user-select:none;
    -webkit-user-select:none;
}

.escs-shade{
    position:absolute;
    inset:0;
    z-index:1;
    background:
        linear-gradient(180deg, rgba(0,0,0,.34) 0%, rgba(0,0,0,0) 34%),
        linear-gradient(180deg, rgba(0,0,0,0) 42%, rgba(0,0,0,.66) 100%);
    pointer-events:none;
}

.escs-pill{
    position:absolute;
    top:10px;
    left:10px;
    z-index:2;
    max-width:calc(100% - 20px);
    padding:5px 9px;
    border-radius:999px;
    background:rgba(18, 18, 18, .72);
    color:#fff;
    font-size:10px;
    line-height:1;
    font-weight:800;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);
    backdrop-filter:blur(8px);
}

.escs-copy{
    position:absolute;
    left:12px;
    right:12px;
    bottom:12px;
    z-index:2;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:5px;
    min-width:0;
}

.escs-title{
    display:block;
    max-width:100%;
    color:#fff;
    font-size:14px;
    line-height:1.15;
    font-weight:800;
    text-shadow:0 1px 8px rgba(0,0,0,.45);
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.escs-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    max-width:100%;
    color:rgba(255,255,255,.9);
    font-size:11px;
    line-height:1.2;
    font-weight:700;
    text-shadow:0 1px 6px rgba(0,0,0,.35);
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.escs-arrow{
    position:absolute;
    top:50%;
    z-index:4;
    width:34px;
    height:34px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:50%;
    background:rgba(255,255,255,.9);
    color:#111;
    font-size:24px;
    line-height:1;
    cursor:pointer;
    transform:translateY(-50%);
    box-shadow:0 8px 20px rgba(15, 23, 42, .18);
}

.escs-prev{
    left:8px;
}

.escs-next{
    right:8px;
}

.escs-dots{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    margin-top:12px;
}

.escs-dot,
.splide__pagination__page{
    width:7px;
    height:7px;
    border:0;
    border-radius:50%;
    padding:0;
    background:#c8c8c8;
    cursor:pointer;
    transition:width .2s ease, background .2s ease;
}

.escs-dot.is-active,
.splide__pagination__page.is-active{
    width:18px;
    border-radius:999px;
    background:#111;
    transform:none;
}

.splide__pagination{
    position:static !important;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    padding:0 !important;
    margin:0 !important;
}

@media (max-width:768px){
    .escs-slider{
        max-width:100%;
        margin:12px auto;
        --escs-peek:max(18px, var(--escs-peek));
    }

    .escs-edge-fade .escs-viewport:before,
    .escs-edge-fade .escs-viewport:after{
        display:none;
    }

    .escs-section-dividers:not(.escs-section-dividers-mobile):before,
    .escs-section-dividers:not(.escs-section-dividers-mobile):after{
        display:none;
    }

    .escs-section-dividers:not(.escs-section-dividers-mobile){
        padding-left:0;
        padding-right:0;
    }

    .escs-card{
        flex-basis:var(--escs-mobile-card-w);
        width:var(--escs-mobile-card-w);
        box-shadow:0 10px 22px rgba(15, 23, 42, .14);
    }

    .escs-card:hover{
        transform:none;
    }

    .escs-title{
        font-size:13px;
    }
}

@media (max-width:420px){
    .escs-slider{
        --escs-gap:14px;
        --escs-peek:18px;
    }

    .escs-copy{
        left:10px;
        right:10px;
        bottom:10px;
    }

    .escs-pill{
        top:9px;
        left:9px;
        font-size:9px;
    }

    .escs-arrow{
        display:none;
    }
}
