/* Mastro Slider Nativo — intentionally independent from all theme CSS. */
.msn-slider{--msn-bg:#f5f9ff;--msn-text:#06245d;--msn-accent:#46b83d;position:relative;isolation:isolate;overflow:hidden;background:var(--msn-bg);color:var(--msn-text);width:100%;box-sizing:border-box;font-family:inherit}
.msn-slider *,.msn-slider *::before,.msn-slider *::after{box-sizing:border-box}
.msn-slider .msn-slide[hidden],.msn-slider button[hidden]{display:none!important}
.msn-slider .msn-slides{position:relative}
.msn-slider .msn-slide{position:relative;min-height:390px;animation:msn-arrive .35s ease both}
.msn-slider .msn-slide-inner{width:min(100% - 52px,1200px);margin:0 auto;min-height:390px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.87fr);align-items:center;gap:clamp(24px,4vw,60px);padding:54px 0 78px}
.msn-slider .msn-slide.msn-text-only .msn-slide-inner{grid-template-columns:1fr}
.msn-slider .msn-copy{position:relative;z-index:2;min-width:0}
.msn-slider .msn-copy h2{font-family:inherit;font-size:clamp(2rem,4.4vw,4rem);font-weight:800;letter-spacing:-.035em;line-height:1.12;margin:0 0 17px;padding:0;color:inherit;max-width:850px;text-transform:none}
.msn-slider .msn-copy p{font-family:inherit;font-size:clamp(1rem,1.6vw,1.2rem);font-weight:400;line-height:1.65;margin:0 0 23px;padding:0;max-width:680px;color:inherit;opacity:.85}
.msn-slider .msn-cta{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:14px 23px;border-radius:9px;background:var(--msn-accent);color:#fff!important;text-decoration:none!important;font-size:1rem;line-height:1.35;font-weight:700;border:1px solid transparent;transition:transform .2s ease,filter .2s ease,box-shadow .2s ease;box-shadow:0 7px 20px rgba(0,0,0,.08)}
.msn-slider .msn-cta:hover{transform:translateY(-2px);filter:brightness(.94);box-shadow:0 10px 22px rgba(0,0,0,.14)}
.msn-slider .msn-media{width:100%;overflow:hidden;border-radius:18px;box-shadow:0 23px 50px rgba(6,36,93,.13)}
.msn-slider .msn-media img{display:block;width:100%;height:auto;max-height:420px;aspect-ratio:3/2;object-fit:cover;margin:0;border:0}
.msn-slider .msn-controls{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);z-index:5;display:flex;align-items:center;justify-content:center;gap:12px;padding:6px 10px;border-radius:50px;background:rgba(255,255,255,.92);box-shadow:0 3px 15px rgba(6,36,93,.10);width:max-content;max-width:calc(100% - 20px)}
.msn-slider .msn-arrow,.msn-slider .msn-pause{appearance:none;-webkit-appearance:none;border:1px solid rgba(6,36,93,.16)!important;background:#fff!important;color:#06245d!important;border-radius:50%!important;display:grid;place-items:center;min-width:36px;width:36px;min-height:36px;height:36px;padding:0!important;cursor:pointer;font-family:Arial,sans-serif;font-size:23px;line-height:1;box-shadow:none!important;text-transform:none}
.msn-slider .msn-pause{font-size:15px}
.msn-slider .msn-arrow:hover,.msn-slider .msn-pause:hover{background:var(--msn-accent)!important;color:#fff!important}
.msn-slider .msn-dots{display:flex;align-items:center;gap:9px;margin:0 4px}
.msn-slider .msn-dot{appearance:none;-webkit-appearance:none;width:11px;min-width:11px;height:11px;min-height:11px;border-radius:50%!important;border:0!important;background:#a9b8cc!important;padding:0!important;cursor:pointer;box-shadow:none!important;transition:background-color .2s ease,transform .2s ease}
.msn-slider .msn-dot.is-active,.msn-slider .msn-dot[aria-current="true"]{background:var(--msn-accent)!important;transform:scale(1.22)}
.msn-slider button:focus-visible,.msn-slider a:focus-visible{outline:3px solid #ffb600!important;outline-offset:3px}
.msn-slider .msn-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Full-width image with readable dark gradient overlay */
.msn-slider.msn-layout-cover{background:var(--msn-bg);color:#fff}
.msn-slider.msn-layout-cover .msn-slide{min-height:470px;background:var(--msn-bg)}
.msn-slider.msn-layout-cover .msn-slide::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(3,23,62,.88) 0%,rgba(3,23,62,.66) 45%,rgba(3,23,62,.18) 100%);pointer-events:none}
.msn-slider.msn-layout-cover .msn-cover-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:0}
.msn-slider.msn-layout-cover .msn-slide-inner{position:relative;z-index:2;min-height:470px;display:flex;align-items:center;padding:70px 0 100px}
.msn-slider.msn-layout-cover .msn-copy{max-width:750px}
.msn-slider.msn-layout-cover .msn-copy p{opacity:.95}
@keyframes msn-arrive{from{opacity:.55;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){
 .msn-slider .msn-slide,.msn-slider .msn-slide-inner{min-height:0}
 .msn-slider .msn-slide-inner{width:min(100% - 36px,1200px);display:flex;flex-direction:column;align-items:stretch;gap:25px;padding:43px 0 84px}
 .msn-slider .msn-copy h2{font-size:clamp(1.85rem,7.5vw,3rem)}
 .msn-slider .msn-copy p{font-size:1rem}
 .msn-slider .msn-media img{max-height:260px}
 .msn-slider.msn-layout-cover .msn-slide,.msn-slider.msn-layout-cover .msn-slide-inner{min-height:410px}
 .msn-slider.msn-layout-cover .msn-slide-inner{padding-top:58px;padding-bottom:93px}
 .msn-slider.msn-layout-cover .msn-slide::after{background:linear-gradient(90deg,rgba(3,23,62,.88),rgba(3,23,62,.53))}
}
@media(prefers-reduced-motion:reduce){.msn-slider .msn-slide{animation:none!important}.msn-slider .msn-cta,.msn-slider .msn-dot{transition:none!important}}
