
.snz-slider{position:relative;overflow:hidden;min-height:320px;--arrow-size:44px;--dot-size:10px;--dot-gap:8px}
.snz-track{display:flex;height:100%;will-change:transform;transition:transform var(--tspeed,500ms) ease}
.snz-slider[data-transition="fade"] .snz-track{position:relative;transition:none}
.snz-slider[data-transition="fade"] .snz-slide{position:absolute;inset:0;opacity:0;transition:opacity var(--tspeed,500ms) ease}
.snz-slider[data-transition="fade"] .snz-slide[aria-current="true"]{opacity:1;position:absolute}

.snz-slide{min-width:100%;position:relative;display:flex;align-items:var(--snz-align,center);justify-content:var(--snz-just,center);height:100%}
.snz-bg{position:absolute;inset:0;z-index:1}
.snz-picture, .snz-picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:var(--fit,cover)}
.snz-picture[style*="--fit:auto"] img{object-fit:auto}
.snz-overlay{position:absolute;inset:0;pointer-events:none}

.snz-inner{position:relative;z-index:3;width:auto;max-width:var(--snz-inner-max,1100px);padding:clamp(16px,4vw,48px);flex:0 1 auto;box-sizing:border-box}
.snz-content{display:flex;flex-direction:column;gap:12px;max-width:900px}
.snz-title{margin:0;font-size:clamp(26px,4vw,54px);line-height:1.1;color:inherit}
.snz-desc{font-size:clamp(14px,2.2vw,18px);line-height:1.5;color:inherit;opacity:.95}
.snz-btnwrap{display:flex;justify-content:flex-start}
.snz-btn{display:inline-block;text-decoration:none;font-weight:600;background:#fff;color:#111;padding:.75em 1.5em;border-radius:999px;transition:transform .2s ease,opacity .2s ease}
.snz-btn:hover{transform:translateY(-1px);opacity:.95}

/* Arrows */
.snz-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;border:none;background:rgba(0,0,0,.35);color:#fff;width:var(--arrow-size);height:var(--arrow-size);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}
.snz-prev{left:14px}
.snz-next{right:14px}
.snz-slider[style*="--arrow-pos: outside"] .snz-prev{left:calc(-1 * var(--arrow-size) / 2)}
.snz-slider[style*="--arrow-pos: outside"] .snz-next{right:calc(-1 * var(--arrow-size) / 2)}

/* Dots */
.snz-dots{position:absolute;z-index:4;left:50%;transform:translateX(-50%);bottom:14px;display:flex;gap:var(--dot-gap)}
.snz-slider[style*="--dots-pos: outside"] .snz-dots{bottom:-22px}
.snz-dots button{width:var(--dot-size);height:var(--dot-size);border-radius:50%;border:none;background:rgba(255,255,255,.5);cursor:pointer;padding:0}
.snz-dots button[aria-current="true"]{background:#fff}

/* Ken Burns */
.snz-ken img{animation:snz-ken 12s ease-in-out infinite;transform-origin:center center}
@keyframes snz-ken{ 0%{transform:scale(1)} 50%{transform:scale(1.08)} 100%{transform:scale(1)} }
