/* NS - Text banner: shared styles (section-specific rules stay inline in the section) */
.nsl-banner{position:relative;isolation:isolate}
.nsl-banner .nsl-disp,.nsl-banner .nsl-banner__body{color:var(--nsl-text) !important}
.nsl-banner--media{display:flex;min-height:var(--mh-m,0px)}
@media (min-width:990px){.nsl-banner--media{min-height:var(--mh,0px)}}
.nsl-banner--media>.nsl__inner{position:relative;z-index:2;width:100%;display:flex;flex-direction:column;justify-content:var(--va-m,center)}
@media (min-width:990px){.nsl-banner--media>.nsl__inner{justify-content:var(--va,center)}}
.nsl-banner--media .nsl-banner__copy{text-shadow:0 1px 14px rgba(0,0,0,.35)}
.nsl-banner--light-media .nsl-banner__copy{text-shadow:none}
.nsl-banner--media .nsl-banner__body{opacity:1}
.nsl-banner__media{position:absolute;inset:0;z-index:0;overflow:hidden}
.nsl-banner__media img,.nsl-banner__media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--mp,center)}
.nsl-banner__overlay{position:absolute;inset:0;z-index:1;background:var(--ov-c,#000);opacity:var(--ov-o,0);pointer-events:none}
.nsl-banner__overlay--gradient{background:linear-gradient(0deg,var(--ov-c,#000) 0%,var(--ov-c,#000) 35%,transparent 100%)}
@media (min-width:750px){.nsl-banner__overlay--gradient{background:linear-gradient(90deg,var(--ov-c,#000) 0%,var(--ov-c,#000) 30%,transparent 75%)}}
.nsl-banner--center .nsl-banner__overlay--gradient{background:radial-gradient(ellipse at center,var(--ov-c,#000) 0%,transparent 80%)}
.nsl-banner__pause{position:absolute;right:16px;bottom:16px;z-index:3;width:40px;height:40px;border-radius:50%;border:0;background:rgba(0,0,0,.45);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s;touch-action:manipulation}
.nsl-banner__pause:hover{background:rgba(0,0,0,.75)}
.nsl-banner__pause svg{width:16px;height:16px;fill:currentColor}
.nsl-banner__pause .i-play{display:none}
.nsl-banner__pause.is-paused .i-play{display:block}
.nsl-banner__pause.is-paused .i-pause{display:none}
.nsl-banner__pause:focus-visible{outline:3px solid #FF6B00;outline-offset:2px}
@media (max-width:749px){.nsl-banner__media--has-mobile .nsl-banner__video-wrap,.nsl-banner__media--has-mobile .nsl-banner__pause{display:none}}
@media (min-width:750px){.nsl-banner__mobile-img{display:none}}
.nsl-banner__body--m{display:none}
.nsl-btn--accent{background:var(--nsl-accent,#FFA300);color:var(--nsl-accent-text,#111);border-color:var(--nsl-accent,#FFA300)}
.nsl-btn--accent:hover{background:#111;color:#fff;border-color:#111}