.sah-carousel{
    --sah-gap:14px;
    --sah-visible:4;
    --sah-expand:1.16;
    position:relative;
    width:100%;
    padding:0 42px;
    box-sizing:border-box;
}
.sah-carousel *{box-sizing:border-box;}
.sah-carousel[data-visible="1"]{--sah-visible:1;}
.sah-carousel[data-visible="2"]{--sah-visible:2;}
.sah-carousel[data-visible="3"]{--sah-visible:3;}
.sah-carousel[data-visible="4"]{--sah-visible:4;}
.sah-carousel[data-visible="5"]{--sah-visible:5;}
.sah-carousel[data-visible="6"]{--sah-visible:6;}
.sah-carousel[data-visible="7"]{--sah-visible:7;}
.sah-carousel[data-visible="8"]{--sah-visible:8;}

.sah-viewport{width:100%;overflow:hidden;position:relative;padding:1px;}
.sah-carousel.sah-is-hovering .sah-viewport{overflow:visible;}
.sah-track{
    display:flex;
    gap:var(--sah-gap);
    align-items:stretch;
    transition:transform .45s ease;
    will-change:transform;
}
.sah-card{
    --sah-hover-shift:0px;
    position:relative;
    min-height:520px;
    flex:0 0 calc((100% - (var(--sah-gap) * (var(--sah-visible) - 1))) / var(--sah-visible));
    overflow:hidden;
    background:#201b1d;
    border:1px solid #555;
    border-radius:18px;
    transition:flex-basis .42s ease, border-color .42s ease, box-shadow .42s ease;
    backface-visibility:hidden;
}
.sah-card::before{
    content:"";
    position:absolute;
    inset:0;
    border:0;
    opacity:0;
    pointer-events:none;
    transition:opacity .35s ease;
    z-index:4;
}
.sah-card:hover{
    flex-basis:calc(((100% - (var(--sah-gap) * (var(--sah-visible) - 1))) / var(--sah-visible)) * var(--sah-expand));
    border-color:#a4b129;
    box-shadow:0 16px 36px rgba(0,0,0,.24);
    z-index:8;
}
.sah-card:hover::before{opacity:1;}
.sah-image-link{display:block;height:48%;text-decoration:none;overflow:hidden;}
.sah-image{
    height:100%;
    background-size:cover;
    background-position:center;
    transition:transform .55s ease, filter .42s ease;
}
.sah-card:hover .sah-image{transform:scale(1.035);filter:brightness(.96);}
.sah-content{
    position:absolute;
    left:0;right:0;bottom:0;
    min-height:52%;
    padding:34px 32px 30px;
    background:#211d1f;
    transition:padding .42s ease;
    color:#fff;
}
.sah-content h3{
    margin:0 0 24px;
    color:#fff;
    font-size:24px;
    line-height:1.05;
    font-family:Georgia, 'Times New Roman', serif;
    font-weight:500;
}
.sah-content h3 a{color:inherit;text-decoration:none;}
.sah-content h3 a:hover{color:#d7ef67;}
.sah-subtitle,.sah-description{
    margin:0 0 18px;
    color:#f4f4f4;
    font-size:13px;
    line-height:1.45;
    max-width:420px;
}
.sah-description{
    opacity:0;
    max-height:0;
    overflow:hidden;
    transform:translateY(12px);
    transition:opacity .35s ease, max-height .42s ease, transform .42s ease;
}
.sah-card:hover .sah-content{padding-right:54px;}
.sah-card:hover .sah-subtitle,
.sah-card:hover .sah-description{max-width:100%;}
.sah-card:hover .sah-description{opacity:1;max-height:190px;transform:translateY(0);}
.sah-link{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-top:6px;
    color:#cfcfcf;
    text-decoration:none;
    font-size:15px;
    font-weight:600;
    transition:gap .3s ease, color .3s ease;
}
.sah-card:hover .sah-link{color:#a4b129;}
.sah-link:hover{gap:11px;color:#d7ef67;}
.sah-arrow{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    border-radius:6px;
    background:#9fbd3b;
    color:transparent !important;
    font-size:0 !important;
    line-height:0 !important;
    display:block !important;
    cursor:pointer;
    z-index:30;
    transition:opacity .25s ease, background .25s ease;
    appearance:none;
    -webkit-appearance:none;
}
.sah-arrow::before{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:9px;
    height:9px;
    border-top:2px solid #fff;
    border-right:2px solid #fff;
}
.sah-prev::before{transform:translate(-42%,-50%) rotate(-135deg);}
.sah-next::before{transform:translate(-58%,-50%) rotate(45deg);}
.sah-arrow:hover{background:#a4b129;}
.sah-arrow:disabled{opacity:.35;cursor:not-allowed;}
.sah-prev{left:8px;}.sah-next{right:8px;}
.sah-no-slider .sah-arrow{display:none !important;}
.sah-no-slider{padding-left:0;padding-right:0;}

@media(max-width:1024px){
    .sah-carousel{--sah-visible:2;--sah-expand:1.08;padding:0 38px;}
    .sah-card{min-height:500px;}
    .sah-card:hover{flex-basis:calc(((100% - var(--sah-gap)) / 2) * var(--sah-expand));}
}
@media(max-width:767px){
    .sah-carousel{--sah-visible:1;--sah-expand:1;padding:0 34px;}
    .sah-card{min-height:470px;flex-basis:100%;}
    .sah-track:hover .sah-card{flex-basis:100%;}
    .sah-card:hover{flex-basis:100%;}
    .sah-content{padding:28px 24px;}
    .sah-card:hover .sah-content{padding-right:24px;}
    .sah-card:hover .sah-subtitle,.sah-card:hover .sah-description{max-width:100%;}
    .sah-content h3{font-size:22px;}
    .sah-description{opacity:1;max-height:180px;transform:none;}
    .sah-arrow{width:30px !important;height:30px !important;min-width:30px !important;min-height:30px !important;}
}
@media(max-width:480px){
    .sah-carousel{padding:0 30px;--sah-gap:10px;}
    .sah-card{min-height:440px;}
    .sah-content{padding:24px 20px;}
    .sah-content h3{font-size:20px;margin-bottom:18px;}
    .sah-subtitle,.sah-description{font-size:12.5px;line-height:1.45;}
}
