/* ===== HERO ENGINE (versione pulita) ===== */
.hs-stage{position:relative;overflow:hidden;background:#0b1220;height:var(--hs-h-d,520px);}
@media(max-width:991.98px){.hs-stage{height:var(--hs-h-t,420px);}}
@media(max-width:575.98px){.hs-stage{height:var(--hs-h-m,340px);}}
.hs-stage.hs-layout-fullscreen{height:100vh !important;}
.hs-track{position:relative;height:100%;}
.hs-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity var(--hs-speed,600ms) ease,visibility 0s linear var(--hs-speed,600ms);}
.hs-slide.is-active{opacity:1;visibility:visible;transition:opacity var(--hs-speed,600ms) ease;}
.hs-t-zoom .hs-slide{transform:scale(1.07);}
.hs-t-zoom .hs-slide.is-active{transform:scale(1);transition:opacity var(--hs-speed,600ms) ease,transform calc(var(--hs-speed,600ms)*1.15) cubic-bezier(.16,1,.3,1);}
.hs-t-slide .hs-track{display:flex;transition:transform var(--hs-speed,550ms) cubic-bezier(.22,.61,.36,1);}
.hs-t-slide .hs-slide{position:relative;flex:0 0 100%;opacity:1;visibility:visible;}
.hs-media{position:absolute;inset:0;}
.hs-img{width:100%;height:100%;object-fit:cover;display:none;}
.hs-img-d{display:block;}
@media(max-width:991.98px){.hs-img-d{display:none;}.hs-slide.has-t .hs-img-t{display:block;}.hs-slide:not(.has-t) .hs-img-d{display:block;}}
@media(max-width:575.98px){.hs-slide.has-t .hs-img-t{display:none;}.hs-slide.has-m .hs-img-m{display:block;}.hs-slide:not(.has-m) .hs-img-d{display:block;}.hs-slide.has-m:not(.has-t) .hs-img-d{display:block;}}
.hs-loader{position:absolute;inset:0;z-index:1;pointer-events:none;transition:opacity .4s;}
.hs-loaded .hs-loader{opacity:0;}
.hs-loading-shimmer{background:linear-gradient(100deg,#eef2f7 40%,#f8fafc 50%,#eef2f7 60%);background-size:200% 100%;animation:hsShim 1.2s linear infinite;}
@keyframes hsShim{to{background-position:-200% 0;}}
.hs-loading-skeleton{background:#e8edf3;}
.hs-loading-spinner{background:#e8edf3;display:flex;align-items:center;justify-content:center;}
.hs-loading-spinner::after{content:'';width:34px;height:34px;border:3px solid #cbd5e1;border-top-color:#4f46e5;border-radius:50%;animation:hsSpin .8s linear infinite;}
@keyframes hsSpin{to{transform:rotate(360deg);}}
.hs-loading-none{display:none;}
.hs-content{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;justify-content:center;gap:14px;padding:0 8%;color:#fff;text-align:center;}
.hs-align-left{text-align:left;align-items:flex-start;}
.hs-align-right{text-align:right;align-items:flex-end;}
.hs-kicker{font-family:var(--hs-kick-font,inherit);font-size:var(--hs-kick-size,12px);letter-spacing:.28em;text-transform:uppercase;color:var(--hs-kick-color,#ffffff);opacity:.92;}
.hs-title{margin:0;font-family:var(--hs-title-font,inherit);font-size:var(--hs-ts-d,var(--hs-title-size,clamp(30px,5vw,58px)));font-weight:800;line-height:1.08;color:var(--hs-title-color,#ffffff);}
@media(max-width:991.98px){.hs-title{font-size:var(--hs-ts-t,calc(var(--hs-title-size,48px)*.8));}}
@media(max-width:575.98px){.hs-title{font-size:var(--hs-ts-m,calc(var(--hs-title-size,48px)*.62));}}
.hs-sub{font-family:var(--hs-sub-font,inherit);font-size:var(--hs-sub-size,clamp(14px,1.6vw,18px));color:var(--hs-sub-color,#ffffff);opacity:.92;max-width:56ch;margin-left:auto;margin-right:auto;align-self:center;}
.hs-align-left .hs-sub{align-self:flex-start;margin-left:0;margin-right:auto;}
.hs-align-right .hs-sub{align-self:flex-end;margin-left:auto;margin-right:0;}
.hs-cta{display:inline-block;padding:13px 30px;background:#c92a2a;border-radius:6px;color:#fff;font-weight:700;text-decoration:none;}
.hs-cta:hover{background:#111827;color:#fff;}
.hs-titlelink{color:inherit;text-decoration:none;}
.hs-titlelink:hover{text-decoration:underline;}
.hs-content.ta-run > *{opacity:0;animation-delay:calc(var(--i,0)*90ms);}
.hs-slide.is-active .ta-fadeup.ta-run > *{animation:hsFadeUp .7s cubic-bezier(.16,1,.3,1) forwards;}
@keyframes hsFadeUp{from{opacity:0;transform:translateY(26px);}to{opacity:1;transform:none;}}
.hs-slide.is-active .ta-mask.ta-run > *{animation:hsMask .8s cubic-bezier(.16,1,.3,1) forwards;}
@keyframes hsMask{from{opacity:1;clip-path:inset(0 0 100% 0);}to{opacity:1;clip-path:inset(0 0 -10% 0);}}
.hs-slide.is-active .ta-blur.ta-run > *{animation:hsBlur .8s ease forwards;}
@keyframes hsBlur{from{opacity:0;filter:blur(10px);}to{opacity:1;filter:blur(0);}}
.hs-slide.is-active .ta-scale.ta-run > *{animation:hsScale .7s cubic-bezier(.16,1,.3,1) forwards;}
@keyframes hsScale{from{opacity:0;transform:scale(.86);}to{opacity:1;transform:scale(1);}}
.ta-type .hs-title{overflow:hidden;white-space:nowrap;border-right:2px solid #fff;width:0;max-width:100%;}
.hs-slide.is-active .ta-type.ta-run .hs-title{animation:hsType 1.6s steps(30,end) forwards;}
@keyframes hsType{to{width:100%;}}
.hs-split span{display:inline-block;opacity:0;transform:translateY(60%);}
.hs-slide.is-active .ta-split.ta-run .hs-split span{animation:hsUp2 .6s cubic-bezier(.16,1,.3,1) forwards;animation-delay:calc(var(--ci,0)*40ms);}
@keyframes hsUp2{to{opacity:1;transform:none;}}
.hs-reduced *{animation:none !important;transition:none !important;}
.hs-reduced .hs-content > *{opacity:1 !important;}
.hs-reveal{position:absolute;inset:0;z-index:4;display:flex;pointer-events:none;}
.hs-stage.revealing .hs-reveal{z-index:12;}
.hs-reveal i{flex:1;transform:scaleY(0);transform-origin:top;background:var(--hs-rv,#0b1220);}
.hs-reveal.go i{animation:hsRvD calc(var(--hs-speed,600ms)*.75) cubic-bezier(.16,1,.3,1) forwards;animation-delay:calc(var(--li,0)*60ms);}
.hs-reveal.go.out i{transform-origin:bottom;animation:hsRvU calc(var(--hs-speed,600ms)*.75) cubic-bezier(.16,1,.3,1) forwards;animation-delay:calc(var(--li,0)*60ms);}
@keyframes hsRvD{from{transform:scaleY(0);}to{transform:scaleY(1);}}
@keyframes hsRvU{from{transform:scaleY(1);}to{transform:scaleY(0);}}
.hs-reveal.rv2{flex-direction:column;}
.hs-reveal.rv2 i{transform:scaleX(0);transform-origin:left;}
.hs-reveal.rv2.go i{animation-name:hsRvDX;}
.hs-reveal.rv2.go.out i{transform-origin:right;animation-name:hsRvUX;}
@keyframes hsRvDX{from{transform:scaleX(0);}to{transform:scaleX(1);}}
@keyframes hsRvUX{from{transform:scaleX(1);}to{transform:scaleX(0);}}
.hs-reveal.rv3{display:block;}
.hs-reveal.rv3 i{position:absolute;inset:0;transform:none;clip-path:circle(0% at 50% 50%);}
.hs-reveal.rv3.go i{animation:hsRvC calc(var(--hs-speed,600ms)*.75) cubic-bezier(.16,1,.3,1) forwards;}
.hs-reveal.rv3.go.out i{animation:hsRvCout calc(var(--hs-speed,600ms)*.75) cubic-bezier(.16,1,.3,1) forwards;}
@keyframes hsRvC{from{clip-path:circle(0% at 50% 50%);}to{clip-path:circle(140% at 50% 50%);}}
@keyframes hsRvCout{from{clip-path:circle(140% at 50% 50%);}to{clip-path:circle(0% at 50% 50%);}}
.hs-reveal.rv4 i{transform:scaleY(0) skewY(8deg);}
.hs-reveal.rv4.go i{animation-name:hsRvS;}
.hs-reveal.rv4.go.out i{animation-name:hsRvSU;}
@keyframes hsRvS{from{transform:scaleY(0) skewY(8deg);}to{transform:scaleY(1) skewY(0);}}
@keyframes hsRvSU{from{transform:scaleY(1) skewY(0);}to{transform:scaleY(0) skewY(-8deg);}}
.hs-bullets{position:absolute;bottom:18px;left:0;right:0;z-index:5;display:flex;justify-content:center;gap:8px;}
.hs-bullets button{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.5);cursor:pointer;padding:0;}
.hs-bullets button.on{background:#fff;transform:scale(1.25);}
.hs-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:44px;height:44px;border:0;border-radius:50%;background:rgba(15,23,42,.35);color:#fff;font-size:18px;cursor:pointer;}
.hs-arrow:hover{background:rgba(15,23,42,.6);}
.hs-arrow.prev{left:14px;}
.hs-arrow.next{right:14px;}
.hs-tip{position:absolute;z-index:30;transform:translate(-50%,-50%);background:none;border:0;padding:0;cursor:pointer;}
.hs-tip-dot{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#fff;color:#111;font-weight:700;font-size:14px;animation:hsPulse 2s infinite;}
@keyframes hsPulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.45);}70%{box-shadow:0 0 0 12px rgba(255,255,255,0);}100%{box-shadow:0 0 0 0 rgba(255,255,255,0);}}
.hs-tip-card{position:absolute;bottom:34px;left:50%;transform:translateX(-50%) translateY(6px);background:#fff;color:#111;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:600;white-space:nowrap;opacity:0;pointer-events:none;transition:.25s;box-shadow:0 8px 24px rgba(15,23,42,.18);text-decoration:none;}
.hs-tip.open .hs-tip-card{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto;}
.hs-pc{position:relative;height:100%;background:#f8fafc;}
.hs-pc-track{display:flex;gap:var(--hs-pc-gap,20px);height:100%;overflow-x:auto;padding:24px 4%;scroll-snap-type:x mandatory;cursor:grab;scrollbar-width:none;}
.hs-pc-track::-webkit-scrollbar{display:none;}
.hs-pc-track.dragfree{scroll-snap-type:none;}
.hs-pc-card{flex:0 0 var(--hs-pc-size,350px);scroll-snap-align:start;display:flex;flex-direction:column;overflow:hidden;border-radius:12px;background:#fff;color:#111;text-decoration:none;}
.hs-pc-card img{width:100%;height:70%;object-fit:cover;}
.hs-pc-info{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;font-weight:600;}
.hs-pc-price{color:#c92a2a;font-weight:800;}