.nxb-banner { position: relative; display: grid; min-height: clamp(24rem, 48vw, 42rem); overflow: hidden; color: #fff; background: var(--nxb-colour-ink); }
.nxb-banner--large { --nxb-banner-header-offset: 6.5rem; height: calc(100vh - var(--nxb-banner-header-offset)); min-height: 34rem; max-height: 56rem; }
@supports (height: 100svh) { .nxb-banner--large { height: calc(100svh - var(--nxb-banner-header-offset)); } }
.nxb-banner--compact { min-height: clamp(19rem, 32vw, 29rem); }
.nxb-banner__media, .nxb-banner__media img, .nxb-banner__fade { position: absolute; inset: 0; width: 100%; height: 100%; }
.nxb-banner__media img { object-position: center; }
/*
.nxb-banner__fade { background: linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.76) 34%,rgba(0,0,0,.28) 70%,rgba(0,0,0,.12)),linear-gradient(180deg,rgba(0,0,0,.32),transparent 44%,rgba(0,0,0,.34)); }
*/
.nxb-banner__fade {
    background: linear-gradient(90deg, rgba(0, 0, 0, .8), rgba(0, 0, 0, .66) 34%, rgba(0, 0, 0, .28) 70%, rgba(0, 0, 0, .12)), linear-gradient(180deg, rgba(0, 0, 0, .12), transparent 44%, rgba(0, 0, 0, .2));
}
.nxb-banner__content { position: relative; z-index: 1; align-self: center; padding-block: clamp(8.5rem,16vw,13rem) clamp(4rem,8vw,7rem); }
.nxb-banner--large .nxb-banner__content { padding-block: clamp(2.5rem,5vh,4.5rem); }
.nxb-banner--compact .nxb-banner__content { align-self: end; padding-block: clamp(8rem,13vw,11rem) clamp(2.8rem,6vw,4.5rem); }
.nxb-banner h1, .nxb-banner h2 { max-width: 11ch; margin-bottom: .25em; color: #fff; font-size: clamp(3rem,7vw,7rem); text-transform: uppercase; }
.nxb-banner--compact h1, .nxb-banner--compact h2 { max-width: 18ch; font-size: clamp(2.5rem,5vw,4.8rem); }
.nxb-banner h1 span, .nxb-banner h1 strong, .nxb-banner h2 span, .nxb-banner h2 strong { display: block; }
.nxb-banner h1 strong, .nxb-banner h2 strong { color: var(--nxb-colour-brand-bright); }
.nxb-banner__subtitle { max-width: 52rem; margin: .8rem 0; color: #fff; font-size: clamp(1.1rem,2vw,1.5rem); font-weight: 750; }
.nxb-banner__date { display: block; margin-top: .8rem; color: rgba(255,255,255,.8); font-weight: 700; }
.nxb-banner__body { max-width: 39rem; color: rgba(255,255,255,.9); }
.nxb-banner__body > :last-child { margin-bottom: 0; }
.nxb-banner__actions { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 2rem; }
.nxb-banner__trust { position: absolute; z-index: 2; right: 0; bottom: 0; display: flex; min-width: min(31rem,90%); align-items: center; gap: 1rem; padding: 1.2rem var(--nxb-gutter) 1.2rem 3rem; border-top: 4px solid var(--nxb-colour-brand); color: #fff; background: rgba(5,13,14,.94); clip-path: polygon(12% 0,100% 0,100% 100%,0 100%); }
.nxb-banner__trust > span { display: grid; width: 2.9rem; height: 2.9rem; flex: 0 0 auto; place-items: center; border: 3px solid var(--nxb-colour-brand-bright); border-radius: 50%; font-size: 1.2rem; font-weight: 900; }
.nxb-banner__trust p { margin: 0; text-transform: uppercase; }
.nxb-banner__trust strong, .nxb-banner__trust small { display: block; }
.nxb-banner__trust small { color: var(--nxb-colour-brand-bright); font-size: .85rem; font-weight: 750; }
.nxb-main-content > .nxb-banner { margin-block: 0; }
@media (max-width: 1050px) and (min-width: 721px) { .nxb-banner--large { --nxb-banner-header-offset: 5.8rem; } }
@media (max-width: 720px) {
    .nxb-banner { min-height: 44rem; }
    .nxb-banner--large { height: auto; max-height: none; }
    .nxb-banner--compact { min-height: 27rem; }
    .nxb-banner__fade { background: linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.5)),linear-gradient(180deg,rgba(0,0,0,.4),transparent 44%,rgba(0,0,0,.6)); }
    .nxb-banner__content { align-self: start; padding-top: 8.5rem; }
    .nxb-banner__actions { max-width: 23rem; align-items: stretch; flex-direction: column; }
    .nxb-banner__trust { min-width: 100%; padding-left: var(--nxb-gutter); clip-path: none; }
}
