.ff-slider{--ff-duration:800ms;position:relative;width:100%;max-width:1060px;margin-inline:auto;padding:0 50px 52px;background:transparent!important;isolation:isolate;touch-action:pan-y}
.ff-slider .ff-stage{position:relative;width:100%;aspect-ratio:16/9;background:transparent;overflow:hidden}
.ff-slider .ff-slide,.ff-slider .ff-fallback{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--ff-duration) ease-in-out,visibility 0s var(--ff-duration)}
.ff-slider .is-current{opacity:1;visibility:visible;pointer-events:auto;transition:opacity var(--ff-duration) ease-in-out,visibility 0s}
.ff-slider .ff-slide>a{display:block;width:100%;height:100%;background:transparent}
.ff-slider .ff-stage img{display:block;width:100%!important;height:100%!important;max-width:100%;object-fit:contain;object-position:center;border:0;border-radius:0;box-shadow:none;background:transparent;user-select:none}
.ff-slider .ff-controls{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.ff-slider [hidden]{display:none!important}
.ff-slider .ff-controls button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;min-width:44px;min-height:44px;padding:0;margin:0;border:1px solid transparent;border-radius:50%;background:rgba(0,0,0,.4);color:#fff;font:24px/1 Arial,sans-serif;box-shadow:none;cursor:pointer;transition:background-color .2s;pointer-events:auto}
.ff-slider .ff-controls button:hover{background:rgba(0,0,0,.75)}
.ff-slider .ff-controls button:focus-visible,.ff-slider a:focus-visible{outline:2px solid #e0b769;outline-offset:-3px}
.ff-slider .ff-dots{position:absolute;left:50%;bottom:-46px;transform:translateX(-50%);display:flex;overflow-x:auto;scrollbar-width:thin;max-width:calc(100% - 144px);pointer-events:auto}
.ff-slider .ff-dots button{position:relative;flex-basis:24px;min-width:24px;width:24px;border-radius:0;background:transparent;font-size:0}
.ff-slider .ff-dots button:after{content:"";width:7px;height:7px;border:1px solid #fff;border-radius:50%;background:#555;box-shadow:0 0 3px #000}
.ff-slider .ff-dots button[aria-current=true]:after{background:#e0b769;border-color:#e0b769;transform:scale(1.2)}
.ff-slider .ff-slide img{cursor:zoom-in}
.ff-slider.ff-lightbox-open{z-index:1000}
.ff-slider.ff-lightbox-open:before{content:"";position:fixed;z-index:-1;inset:0;background:rgba(8,8,8,.72);animation:ff-dim .25s ease-out}
.ff-slider.ff-lightbox-open .ff-stage{position:fixed;z-index:1001;inset:50% auto auto 50%;width:min(90vw,1200px);height:auto;aspect-ratio:16/9;transform:translate(-50%,-50%);background:rgba(14,14,14,.96);box-shadow:0 20px 80px rgba(0,0,0,.35);animation:ff-expand .3s cubic-bezier(.2,.8,.2,1)}
.ff-slider.ff-lightbox-open .ff-controls{z-index:1002;position:fixed;inset:0;padding:0 max(2vw,16px)}
@keyframes ff-expand{from{opacity:0;transform:translate(-50%,-50%) scale(.94)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@keyframes ff-dim{from{opacity:0}to{opacity:1}}
.ff-slider .ff-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.ff-flyer-modal-open{overflow:hidden}
@media(prefers-reduced-motion:reduce){.ff-slider *{transition:none!important}}
@media(max-width:560px){.ff-slider{padding-inline:40px}.ff-slider.ff-lightbox-open .ff-stage{width:94vw}.ff-slider .ff-controls button{min-width:40px;flex-basis:40px}}
