/* ACF Hero Slider - breakpoints match Elementor: tablet <=1024px, mobile <=767px */
.hs{--hs-h-d:80vh;--hs-h-t:65vh;--hs-h-m:55vh;--hs-speed:800ms;position:relative;box-sizing:border-box;height:var(--hs-h-d);min-height:320px;overflow:hidden;background:#111;color:#fff;isolation:isolate;touch-action:pan-y}
.hs *,.hs *::before,.hs *::after{box-sizing:border-box}
.hs--full{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw)}
body:has(.hs--full){overflow-x:clip}
.hs-notice{padding:12px 16px;background:#fff3cd;color:#664d03}
.hs-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Track + slides */
.hs-track{position:absolute;inset:0}
.hs-slide{--hs-text:#fff;--hs-ov-c:#000;--hs-ov-o:.4;position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity var(--hs-speed) ease,visibility 0s linear var(--hs-speed)}
.hs-slide.is-active{opacity:1;visibility:visible;z-index:2;transition-delay:0s}
.hs[data-effect="slide"] .hs-slide{opacity:1;transition:transform var(--hs-speed) ease}
.hs[data-effect="slide"] .hs-slide.is-leaving{visibility:visible;z-index:1}

/* Media */
.hs-media{position:absolute;inset:0;overflow:hidden;background:#111;container-type:size}
.hs-media picture{display:block}
.hs .hs-img,.hs .hs-poster,.hs .hs-video{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--hs-pos-d,center)}
.hs-video,.hs-embed{opacity:0;transition:opacity .6s ease}
.hs-media.is-playing .hs-video,.hs-media.is-playing .hs-embed{opacity:1}
.hs-embed{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.hs-media.has-controls .hs-embed,.hs-media.has-controls .hs-video{pointer-events:auto}
.hs-embed iframe{position:absolute;top:50%;left:50%;width:100%;height:100%;transform:translate(-50%,-50%);border:0}
@supports (width:1cqw){.hs-embed iframe{width:max(100cqw,177.78cqh);height:max(100cqh,56.25cqw)}}

/* Overlay + whole-slide link */
.hs-overlay{position:absolute;inset:0;z-index:1;background:var(--hs-ov-c);opacity:var(--hs-ov-o);pointer-events:none}
.hs-slide-link{position:absolute;inset:0;z-index:2}

/* Content */
.hs-content{position:absolute;inset:0;z-index:3;display:flex;align-items:center;padding:clamp(24px,5vw,96px) clamp(60px,8vw,140px);color:var(--hs-text);pointer-events:none}
.hs-inner{width:100%;max-width:min(720px,100%);opacity:0;transform:translateY(20px);transition:opacity .6s ease .2s,transform .6s ease .2s}
.hs-slide.is-active .hs-inner{opacity:1;transform:none}
.hs-inner a{pointer-events:auto}
.hs-al-left{justify-content:flex-start;text-align:left}
.hs-al-center{justify-content:center;text-align:center}
.hs-al-right{justify-content:flex-end;text-align:right}
.hs-av-top{align-items:flex-start}
.hs-av-center{align-items:center}
.hs-av-bottom{align-items:flex-end}
.hs-content.hs-av-bottom{padding-bottom:clamp(64px,7vw,110px)}
.hs-al-left .hs-actions{justify-content:flex-start}
.hs-al-center .hs-actions{justify-content:center}
.hs-al-right .hs-actions{justify-content:flex-end}

.hs .hs-eyebrow{margin:0 0 .75em;color:inherit;font-size:.9rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.hs .hs-title{margin:0 0 .4em;color:inherit;font-size:clamp(.9rem,1.2vw,1rem);line-height:1.1;font-weight:700;overflow-wrap:break-word}
.hs .hs-desc{margin:0 0 .75em;color:inherit;font-size:clamp(.875rem,1.2vw,0.25rem);line-height:1.4}
.hs-actions{display:flex;flex-wrap:wrap;gap:12px}

/* Buttons: solid uses text colour as fill and overlay colour as label for guaranteed contrast pairing */
.hs .hs-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;padding:.8em 1.8em;border:2px solid var(--hs-text);border-radius:4px;font-size:1rem;font-weight:600;line-height:1.2;text-align:center;text-decoration:none;overflow-wrap:anywhere;transition:transform .2s ease,opacity .2s ease}
.hs .hs-btn--solid{background:var(--hs-text);color:var(--hs-ov-c)}
.hs .hs-btn--outline{background:transparent;color:inherit}
.hs .hs-btn--text{background:transparent;border-color:transparent;padding-inline:0;color:inherit;text-decoration:underline;text-underline-offset:4px}
.hs .hs-btn:hover{opacity:.88;transform:translateY(-2px)}

/* Controls */
.hs .hs-arrow{position:absolute;top:50%;z-index:5;transform:translateY(-50%);display:grid;place-items:center;width:48px;height:48px;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.5);color:#fff;cursor:pointer;transition:background .2s}
.hs .hs-arrow:hover{background:rgba(255,255,255,.65)!important;}
.hs .hs-arrow[disabled]{opacity:.35;cursor:default}
.hs-prev{left:16px}.hs-next{right:16px}
.hs-bar{position:absolute;left:0;right:0;bottom:14px;z-index:5;display:flex;justify-content:center;align-items:center;gap:8px;pointer-events:none}
.hs-bar>*{pointer-events:auto}
.hs-dots{display:flex;gap:0}
.hs .hs-dot{display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;background:none;cursor:pointer}
.hs .hs-dot::before{content:"";width:12px;height:12px;border:2px solid #fff;border-radius:50%;transition:background .2s}
.hs .hs-dot[aria-current="true"]::before{background:#fff}
.hs .hs-pause{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.5);color:#fff;cursor:pointer}
.hs-pause .hs-i-play{display:none}
.hs-pause.is-paused .hs-i-play{display:block}
.hs-pause.is-paused .hs-i-pause{display:none}
.hs button:focus-visible,.hs a:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px rgba(0,0,0,.6)}

/* Tablet */
@media (max-width:1024px){
	.hs{height:var(--hs-h-t)}
	.hs .hs-title{font-size:clamp(1.9rem,5.2vw,3rem)}
	.hs-content{padding-left:clamp(56px,8vw,100px);padding-right:clamp(56px,8vw,100px)}
}

/* Mobile */
@media (max-width:767px){
	.hs{height:var(--hs-h-m);min-height:380px}
	.hs .hs-img,.hs .hs-poster,.hs .hs-video{object-position:var(--hs-pos-m,var(--hs-pos-d,center))}
	.hs-content{padding:24px 20px 72px}
	.hs .hs-title{font-size:clamp(1.6rem,7.5vw,2.25rem)}
	.hs .hs-desc{font-size:1rem;margin-bottom:.25em}
	.hs .hs-arrow{top:auto;bottom:6px;width:40px;height:40px;transform:none}
	.hs-prev{left:8px}.hs-next{right:8px}
	.hs-bar{bottom:10px}
	.hs-mav-top{align-items:flex-start}
	.hs-mav-center{align-items:center}
	.hs-mav-bottom{align-items:flex-end}
	.hs-mal-left{justify-content:flex-start;text-align:left}
	.hs-mal-center{justify-content:center;text-align:center}
	.hs-mal-right{justify-content:flex-end;text-align:right}
	.hs-mal-left .hs-actions{justify-content:flex-start}
	.hs-mal-center .hs-actions{justify-content:center}
	.hs-mal-right .hs-actions{justify-content:flex-end}
}
@media (max-width:480px){
	.hs .hs-actions .hs-btn:not(.hs-btn--text){flex:1 1 100%}
}

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
	.hs{--hs-speed:0ms}
	.hs-slide,.hs-inner,.hs-video,.hs-embed,.hs .hs-btn{transition:none}
	.hs-inner{opacity:1;transform:none}
}
