/* Hero Slider Pro – frontend */
.hsp-slider{position:relative;width:100%;height:var(--hsp-h,700px);overflow:hidden;background:#1c1c1c;isolation:isolate;box-sizing:border-box}
.hsp-slider *,.hsp-slider *::before,.hsp-slider *::after{box-sizing:border-box}
.hsp-track{position:absolute;inset:0}
.hsp-slide{position:absolute;inset:0;display:flex;padding:0 90px;visibility:hidden;opacity:0;z-index:1}
.hsp-slide.is-active{visibility:visible;opacity:1;z-index:2}
.hsp-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;max-width:none;margin:0;display:block}
.hsp-overlay{position:absolute;inset:0;background:var(--hsp-overlay,rgba(0,0,0,.45));pointer-events:none}

/* content */
.hsp-content{position:relative;z-index:3;width:100%;max-width:var(--hsp-cw,900px);margin:0 auto;display:flex;flex-direction:column;gap:18px;padding:40px 0 64px;font-family:var(--hsp-b-font,inherit)}
.hsp-valign-bottom .hsp-content{justify-content:flex-end}
.hsp-valign-center .hsp-content{justify-content:center}
.hsp-valign-top .hsp-content{justify-content:flex-start}
.hsp-align-center .hsp-content{align-items:center;text-align:center}
.hsp-align-left .hsp-content{align-items:flex-start;text-align:left;margin-left:0}
.hsp-align-right .hsp-content{align-items:flex-end;text-align:right;margin-right:0}
.hsp-heading{margin:0;color:var(--hsp-h-color,#fff);font-family:var(--hsp-h-font,Georgia,serif);font-size:var(--hsp-h-size,64px);font-weight:700;line-height:1.05;letter-spacing:0;text-shadow:0 2px 24px rgba(0,0,0,.25)}
.hsp-text{margin:0;color:var(--hsp-t-color,#fff);font-family:var(--hsp-b-font,inherit);font-size:var(--hsp-s-size,20px);font-weight:400;line-height:1.5;max-width:720px}
.hsp-btn{display:inline-block;margin-top:6px;padding:16px 34px;background:var(--hsp-btn-bg,#f3f1cf);color:var(--hsp-btn-color,#000);border:2px solid var(--hsp-btn-border,#000);border-radius:var(--hsp-btn-radius,12px);font-family:var(--hsp-b-font,inherit);font-size:16px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;text-decoration:none;line-height:1.2;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}
.hsp-btn:hover,.hsp-btn:focus-visible{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.3);color:var(--hsp-btn-color,#000)}
.hsp-btn:focus-visible{outline:3px solid #fff;outline-offset:3px}

/* content entrance */
.hsp-slide .hsp-heading,.hsp-slide .hsp-text,.hsp-slide .hsp-btn{opacity:0;transform:translateY(22px)}
.hsp-slide.is-active .hsp-heading,.hsp-slide.is-active .hsp-text,.hsp-slide.is-active .hsp-btn{opacity:1;transform:none;transition:opacity .7s ease,transform .7s ease}
.hsp-slide.is-active .hsp-heading{transition-delay:.25s}
.hsp-slide.is-active .hsp-text{transition-delay:.4s}
.hsp-slide.is-active .hsp-btn{transition-delay:.55s,.55s;transition-property:opacity,transform,box-shadow}

/* transitions */
.hsp-tr-fade .hsp-slide{transition:opacity var(--hsp-speed,800ms) ease,visibility 0s linear var(--hsp-speed,800ms)}
.hsp-tr-fade .hsp-slide.is-active{transition:opacity var(--hsp-speed,800ms) ease,visibility 0s}
.hsp-tr-slide .hsp-slide{opacity:1;transition:transform var(--hsp-speed,800ms) cubic-bezier(.65,0,.35,1)}
.hsp-tr-slide .hsp-slide.is-leaving{visibility:visible;z-index:1}

/* arrows */
.hsp-arrow{position:absolute;top:50%;z-index:5;width:50px;height:50px;margin:-25px 0 0;padding:0;display:flex;align-items:center;justify-content:center;background:var(--hsp-arrow-bg,rgba(0,0,0,.65));color:var(--hsp-arrow-color,#fff);border:0;border-radius:0;cursor:pointer;transition:background .2s ease}
.hsp-arrow:hover,.hsp-arrow:focus-visible{background:var(--hsp-arrow-bg-hover,#000);color:var(--hsp-arrow-color,#fff)}
.hsp-arrow:focus-visible{outline:2px solid #fff;outline-offset:2px}
.hsp-prev{left:22px}
.hsp-next{right:22px}

/* dots */
.hsp-dots{position:absolute;left:0;right:0;bottom:22px;z-index:5;display:flex;justify-content:center;gap:10px}
.hsp-dot{width:10px;height:10px;padding:0;border:2px solid #fff;border-radius:50%;background:transparent;cursor:pointer;opacity:.8;transition:background .2s ease,transform .2s ease}
.hsp-dot:hover{transform:scale(1.2)}
.hsp-dot.is-active{background:#fff;opacity:1}
.hsp-dot:focus-visible{outline:2px solid #fff;outline-offset:3px}

@media (max-width:767px){
	.hsp-slider{height:var(--hsp-h-m,480px)}
	.hsp-slide{padding:0 20px}
	.hsp-content{gap:12px;padding:24px 0 56px}
	.hsp-heading{font-size:var(--hsp-h-size-m,34px)}
	.hsp-text{font-size:var(--hsp-s-size-m,16px)}
	.hsp-btn{padding:13px 26px;font-size:14px}
	.hsp-arrow{width:38px;height:38px;margin-top:-19px}
	.hsp-prev{left:8px}
	.hsp-next{right:8px}
	.hsp-dots{bottom:16px}
}
@media (prefers-reduced-motion:reduce){
	.hsp-slide,.hsp-slide *{transition-duration:.01ms !important;transition-delay:0s !important}
}
