.sh-slider{--sh-height:clamp(320px,33vw,650px);position:relative;width:100%;background:#303030;color:#fff;isolation:isolate}
.sh-slider .sh-slide{position:relative;min-height:var(--sh-height);display:flex;align-items:center;justify-content:center;padding:60px 80px 95px;box-sizing:border-box}
.sh-slider [hidden]{display:none!important}
.sh-slider .sh-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.sh-slider .sh-slide:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.22);z-index:-1}
.sh-slider .sh-content{width:fit-content;max-width:1100px;text-align:center;padding:24px;margin:auto;color:#fff}
.sh-slider .sh-box{background:rgba(0,0,0,.58);border:1px solid rgba(255,255,255,.65);border-radius:3px}
.sh-slider .sh-title{color:inherit;font:inherit;font-size:clamp(25px,3vw,46px);font-weight:500;line-height:1.2;margin:0 0 20px;text-wrap:balance}
.sh-slider .sh-subtitle{color:inherit;font-size:clamp(17px,2.1vw,28px);line-height:1.5;margin:0;text-wrap:balance}
.sh-slider .sh-button{display:inline-block;margin-top:24px;padding:11px 23px;color:#fff;background:#51469a;border:1px solid #fff;border-radius:3px;text-decoration:none}
.sh-slider .sh-button:hover{background:#39316d;color:#fff}
.sh-slider .sh-controls{position:absolute;bottom:15px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:0 12px}
.sh-slider .sh-controls button{appearance:none;cursor:pointer;background:#222c;color:white;border:1px solid #fffa;border-radius:4px;min-width:40px;min-height:40px;padding:5px 12px;font:inherit;line-height:1.2}
.sh-slider .sh-controls .sh-prev,.sh-slider .sh-controls .sh-next{font-size:25px}
.sh-slider .sh-dots{display:flex;flex-wrap:wrap;justify-content:center;gap:2px}
.sh-slider .sh-dots button{padding:10px;min-width:32px;border:0;background:transparent}
.sh-slider .sh-dots span{display:block;width:9px;height:9px;background:#ffffff80;border:1px solid white;border-radius:50%}
.sh-slider .sh-dots [aria-current=true] span{background:#fff}
.sh-slider :is(button,a):focus-visible{outline:3px solid #ffde59;outline-offset:3px}
@media(max-width:600px){.sh-slider .sh-slide{padding:35px 18px 140px}.sh-slider .sh-content{padding:20px 14px}.sh-slider .sh-controls{gap:5px}.sh-slider .sh-pause{font-size:12px}.sh-slider .sh-title{margin-bottom:14px}}

/* Art direction : le navigateur choisit une seule image selon la largeur. */
.sh-slider .sh-background{position:absolute;inset:0;z-index:-2;display:block}
.sh-slider .sh-background .sh-image{z-index:auto}
@media(min-width:768px){
  .sh-slider .sh-position-left .sh-content{margin-left:0;margin-right:auto;max-width:50%;text-align:left}
  .sh-slider .sh-position-right .sh-content{margin-left:auto;margin-right:0;max-width:50%;text-align:right}
}

/* Une hauteur fixe par écran évite tout saut entre les slides. */
.sh-slider .sh-slide{height:var(--sh-height,500px);min-height:0}
.sh-slider .sh-content{box-sizing:border-box;overflow:auto;min-width:0;overflow-wrap:anywhere}
@media(max-width:767px){
  .sh-slider .sh-slide{height:var(--sh-mobile-height,400px);padding:30px 18px 120px}
}
.sh-slider[data-navigation="0"][data-autoplay="0"] .sh-slide{padding-bottom:35px}
