/* HappyLand home slider. Logical/RTL-aware; height is fixed per breakpoint so nothing shifts while images load. */
.hs{position:relative;background:var(--night);color:#fff;isolation:isolate;--hs-ease:cubic-bezier(.65,.05,.2,1)}
.hs-viewport{position:relative;overflow:hidden;height:var(--hs-hd,440px);touch-action:pan-y}
.hs-track{display:flex;height:100%;will-change:transform;transition:transform .7s var(--hs-ease)}
.hs.is-dragging .hs-track{transition:none;cursor:grabbing}
.hs-slide{position:relative;flex:0 0 100%;min-width:0;height:100%;display:flex;align-items:center;overflow:hidden;
  background:linear-gradient(135deg,var(--hs-c1),var(--hs-c2))}
.hs-media,.hs-img{position:absolute;inset:0;width:100%;height:100%;display:block}
.hs-img{object-fit:cover;user-select:none;-webkit-user-drag:none}
.hs-shade{position:absolute;inset:0;pointer-events:none;background:rgba(20,10,40,var(--hs-o,.3))}
.hs-t-dark .hs-shade{background:rgba(255,255,255,var(--hs-o,.3))}
.hs-a-start .hs-shade{background:linear-gradient(to left,rgba(20,10,40,var(--hs-o,.3)) 20%,rgba(20,10,40,0) 85%)}
.hs-a-end .hs-shade{background:linear-gradient(to right,rgba(20,10,40,var(--hs-o,.3)) 20%,rgba(20,10,40,0) 85%)}
.hs-t-dark.hs-a-start .hs-shade{background:linear-gradient(to left,rgba(255,255,255,var(--hs-o,.3)) 20%,rgba(255,255,255,0) 85%)}
.hs-t-dark.hs-a-end .hs-shade{background:linear-gradient(to right,rgba(255,255,255,var(--hs-o,.3)) 20%,rgba(255,255,255,0) 85%)}
[dir=ltr] .hs-a-start .hs-shade{background:linear-gradient(to right,rgba(20,10,40,var(--hs-o,.3)) 20%,rgba(20,10,40,0) 85%)}
[dir=ltr] .hs-a-end .hs-shade{background:linear-gradient(to left,rgba(20,10,40,var(--hs-o,.3)) 20%,rgba(20,10,40,0) 85%)}
.hs-inner{position:relative;z-index:1;width:100%;display:flex;padding-block:24px}
.hs-a-start .hs-inner{justify-content:flex-start}
.hs-a-center .hs-inner{justify-content:center;text-align:center}
.hs-a-end .hs-inner{justify-content:flex-end}
.hs-copy{max-width:560px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.hs-a-center .hs-copy{align-items:center}
.hs-a-end .hs-copy{align-items:flex-start}
.hs-t-dark .hs-copy{color:var(--ink)}
.hs-badge{display:inline-block;background:var(--sun);color:var(--ink);font-weight:800;font-size:13px;border-radius:99px;padding:5px 14px;border:2px solid var(--ink);transform:rotate(-2deg)}
.hs-title{margin:0;font-family:var(--font-disp);font-weight:400;font-size:clamp(28px,4.6vw,54px);line-height:1.25;text-shadow:0 2px 14px rgba(20,10,40,.28)}
.hs-t-dark .hs-title{text-shadow:none}
.hs-text{margin:0;font-size:clamp(14px,1.5vw,17px);font-weight:600;line-height:1.9;max-width:46ch;text-shadow:0 1px 10px rgba(20,10,40,.3)}
.hs-t-dark .hs-text{text-shadow:none}
.hs-btn{margin-top:8px}
/* entrance of the active slide's copy */
.hs-slide .hs-copy>*{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
.hs-slide.is-active .hs-copy>*{opacity:1;transform:none}
.hs-slide.is-active .hs-copy>:nth-child(2){transition-delay:.08s}.hs-slide.is-active .hs-copy>:nth-child(3){transition-delay:.16s}.hs-slide.is-active .hs-copy>:nth-child(4){transition-delay:.24s}
.hs-slide.has-img.is-active .hs-img{animation:hs-kb 9s ease-out forwards}
@keyframes hs-kb{from{transform:scale(1)}to{transform:scale(1.06)}}
/* fade effect */
.hs--fade .hs-track{display:block;position:relative;transition:none;transform:none!important}
.hs--fade .hs-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility 0s .8s;z-index:0}
.hs--fade .hs-slide.is-active{opacity:1;visibility:visible;transition:opacity .8s ease;z-index:1}
/* arrows */
.hs-nav{position:absolute;top:50%;translate:0 -50%;z-index:3;width:46px;height:46px;border-radius:50%;border:2px solid var(--ink);background:#fff;color:var(--ink);display:grid;place-items:center;cursor:pointer;
  box-shadow:0 4px 0 var(--ink);transition:transform .15s,box-shadow .15s,opacity .2s}
.hs-nav:hover{transform:translateY(2px);box-shadow:0 2px 0 var(--ink)}
.hs-prev{right:16px}.hs-next{left:16px}
/* bar: pause + dots */
.hs-bar{position:absolute;z-index:3;inset-inline:0;bottom:16px;display:flex;justify-content:center;align-items:center;gap:12px;pointer-events:none}
.hs-bar>*{pointer-events:auto}
.hs-dots{display:flex;gap:8px;align-items:center;background:rgba(255,255,255,.88);padding:7px 12px;border-radius:99px;box-shadow:0 2px 10px rgba(20,10,40,.18)}
.hs-dot{position:relative;border:0;background:none;padding:6px 2px;cursor:pointer;line-height:0}
.hs-dot span{display:block;position:relative;width:10px;height:10px;border-radius:99px;background:#CFC4E3;overflow:hidden;transition:width .3s,background .3s}
.hs-dot.is-on span{width:34px;background:#E7DFF5}
.hs-dot.is-on span::after{content:"";position:absolute;inset:0;background:var(--pink);transform-origin:right center;transform:scaleX(var(--hs-p,0))}
.hs[data-autoplay="0"] .hs-dot.is-on span,.hs.is-static .hs-dot.is-on span{background:var(--pink)}
.hs[data-autoplay="0"] .hs-dot.is-on span::after,.hs.is-static .hs-dot.is-on span::after{display:none}
[dir=ltr] .hs-dot.is-on span::after{transform-origin:left center}
.hs-pp{width:34px;height:34px;border-radius:50%;border:0;background:rgba(255,255,255,.88);color:var(--ink);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 10px rgba(20,10,40,.18)}
.hs-pp .i-play{display:none}.hs.is-paused .hs-pp .i-play{display:block}.hs.is-paused .hs-pp .i-pause{display:none}
.hs-nav:focus-visible,.hs-dot:focus-visible,.hs-pp:focus-visible,.hs-btn:focus-visible{outline:3px solid var(--sun);outline-offset:3px}
@media (max-width:700px){
  .hs-viewport{height:var(--hs-hm,340px)}
  .hs-nav{display:none}
  .hs-a-start .hs-inner,.hs-a-end .hs-inner,.hs-a-center .hs-inner{justify-content:center;text-align:center}
  .hs-copy,.hs-a-end .hs-copy{align-items:center;padding-bottom:34px}
  .hs-a-start .hs-shade,.hs-a-end .hs-shade{background:rgba(20,10,40,var(--hs-o,.3))}
  .hs-t-dark.hs-a-start .hs-shade,.hs-t-dark.hs-a-end .hs-shade{background:rgba(255,255,255,var(--hs-o,.3))}
}
@media (prefers-reduced-motion:reduce){
  .hs-track,.hs--fade .hs-slide,.hs-slide .hs-copy>*{transition:none!important}
  .hs-slide.has-img.is-active .hs-img{animation:none}
  .hs-slide .hs-copy>*{opacity:1;transform:none}
}
