.nxa-re{--nxa-columns:3;--nxa-gap:24px;--nxa-ratio:1.6;--nxa-focus:currentColor;--nxa-media-width:50%;--nxa-split-gap:64px;--nxa-row-gap:88px;color:inherit;min-width:0}
.nxa-re-stack{--nxa-section-gap:88px;display:grid;gap:var(--nxa-section-gap);min-width:0}
.nxa-re-stack[hidden],.nxa-re[data-nxa-dedupe-hidden="1"]{display:none!important}
.nxa-re,.nxa-re *{box-sizing:border-box}
.nxa-re .nxa-re__heading{width:100%;max-width:720px;margin:0 auto 16px;color:inherit;text-align:center}
.nxa-re .nxa-re__intro{width:100%;max-width:760px;margin:0 auto 28px;color:inherit;line-height:1.65;text-align:center}
.nxa-re .nxa-re__list{display:grid;grid-template-columns:repeat(var(--nxa-columns),minmax(0,1fr));gap:var(--nxa-gap);padding:0;margin:0;list-style:none}
.nxa-re .nxa-re__item{margin:0;padding:0;min-width:0;list-style:none}
.nxa-re .nxa-re__card{display:flex;flex-direction:column;height:100%;overflow:hidden;border:1px solid transparent;border-radius:12px;background:transparent;transition:border-color .15s ease,transform .15s ease}
.nxa-re .nxa-re__card:hover,.nxa-re .nxa-re__card:focus-within{border-color:currentColor}
.nxa-re .nxa-re__image{aspect-ratio:var(--nxa-ratio);overflow:hidden;background:transparent}
.nxa-re .nxa-re__image img{display:block;width:100%;height:100%;object-fit:contain}
.nxa-re .nxa-re__body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:24px;min-width:0}
.nxa-re .nxa-re__eyebrow{margin:0 0 8px;color:inherit;font-size:14px;font-weight:600;line-height:1.4;letter-spacing:.04em;text-transform:uppercase}
.nxa-re .nxa-re__title{font-size:22px;line-height:1.25;margin:0 0 12px;color:inherit;overflow-wrap:anywhere}
.nxa-re .nxa-re__title a{color:inherit;text-decoration:none}
.nxa-re .nxa-re__description{font-size:16px;line-height:1.65;color:inherit;margin:0 0 20px}
.nxa-re .nxa-re__cta{display:inline-block;margin-top:auto;padding:4px 0;color:inherit;font-size:16px;line-height:1.5;font-weight:600;text-decoration:none;overflow-wrap:anywhere;transition:color .15s ease,background-color .15s ease,border-color .15s ease}
.nxa-re .nxa-re__cta:hover,.nxa-re .nxa-re__title a:hover{color:inherit;text-decoration:none}
.nxa-re a:focus-visible,.nxa-re button:focus-visible,.nxa-re [role=tabpanel]:focus-visible{outline:3px solid var(--nxa-focus);outline-offset:4px}

/* Fit short card rows to their real item count instead of reserving empty tracks. */
.nxa-re--cards.nxa-re--fit[data-nxa-count="1"] .nxa-re__list{grid-template-columns:minmax(0,440px);justify-content:center}
.nxa-re--cards.nxa-re--fit[data-nxa-count="2"] .nxa-re__list{grid-template-columns:repeat(2,minmax(0,440px));justify-content:center}

/* Editorial tabs: restrained navigation with a strong selected indicator. */
.nxa-re .nxa-re__nav{display:flex;align-items:stretch;gap:28px;margin:0 0 28px;overflow-x:auto;border-bottom:1px solid transparent;scrollbar-width:thin}
.nxa-re .nxa-re__nav button{appearance:none;position:relative;flex:0 0 auto;cursor:pointer;white-space:normal;text-align:start;border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;color:inherit;font:inherit;font-weight:600;line-height:1.4;padding:12px 2px 13px;min-height:48px;transition:color .15s ease,background-color .15s ease,border-color .15s ease}
.nxa-re .nxa-re__nav button:hover{color:inherit;background:transparent}
.nxa-re .nxa-re__nav button[aria-selected=true]{background:transparent;color:inherit;border-bottom-color:currentColor}
.nxa-re.nxa-re--enhanced .nxa-re__list{display:block}
.nxa-re.nxa-re--enhanced .nxa-re__card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:360px;border-radius:16px}
.nxa-re.nxa-re--enhanced .nxa-re__image{height:100%;aspect-ratio:auto}
.nxa-re.nxa-re--enhanced .nxa-re__body{align-self:center;padding:clamp(28px,5vw,64px)}
.nxa-re.nxa-re--enhanced .nxa-re__body:only-child{grid-column:1/-1}

/* Split Rows is the long-form media-and-copy presentation used on Solution pages. */
.nxa-re--split .nxa-re__list{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--nxa-row-gap)}
.nxa-re--split .nxa-re__card{display:grid;grid-template-columns:minmax(0,var(--nxa-media-width)) minmax(0,calc(100% - var(--nxa-media-width) - var(--nxa-split-gap)));gap:var(--nxa-split-gap);align-items:center;overflow:visible;border:0;border-radius:0;background:transparent}
.nxa-re--split .nxa-re__card:hover,.nxa-re--split .nxa-re__card:focus-within{border-color:transparent;transform:none}
.nxa-re--split .nxa-re__image{display:flex;grid-row:1;align-items:center;justify-content:center;min-height:320px;border-radius:16px}
.nxa-re--split .nxa-re__image img{flex:0 0 auto;object-position:center center}
/* Fragile shared-layout boundary: both related widgets use these same split-row
 * selectors. Keep panel controls scoped below .nxa-re--split so saved card and
 * tab widgets cannot inherit split-only dimensions, backgrounds or alignment. */
.nxa-re--split .nxa-re__body{grid-row:1;height:100%;justify-content:center;padding:0}
/* Split rows stretch the copy panel to the media height. Do not let the shared
 * card CTA auto-margin consume that height and create a false content gap. */
.nxa-re--split .nxa-re__cta{margin-top:0}
.nxa-re--split .nxa-re__item--media-left .nxa-re__image{grid-column:1}
.nxa-re--split .nxa-re__item--media-left .nxa-re__body{grid-column:2}
.nxa-re--split .nxa-re__item--media-right .nxa-re__image{grid-column:2}
.nxa-re--split .nxa-re__item--media-right .nxa-re__body{grid-column:1}
.nxa-re--split .nxa-re__body:only-child{grid-column:1/-1}

.nxa-re .nxa-re__footer{display:flex;justify-content:center;margin-top:32px}
.nxa-re .nxa-re__pagination{margin-top:clamp(2rem,4vw,4rem)}
.nxa-re .nxa-re__pagination ul{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;list-style:none;margin:0;padding:0}
.nxa-re .nxa-re__pagination a,.nxa-re .nxa-re__pagination span{display:grid;min-height:2.75rem;min-width:2.75rem;place-items:center;text-decoration:none}
.nxa-re .nxa-re__more{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit;font-weight:600;line-height:1.4;text-decoration:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease}
.nxa-re .nxa-re__more:hover,.nxa-re .nxa-re__more:focus-visible{border-color:currentColor;background:transparent;color:inherit;text-decoration:none}
.nxa-re [hidden],.nxa-re .nxa-re__nav[hidden]{display:none!important}
.nxa-re-empty{padding:16px;border:1px dashed currentColor;color:inherit}

@media(max-width:1024px){
	.nxa-re{--nxa-columns:2;--nxa-split-gap:40px;--nxa-row-gap:64px}
	.nxa-re--split .nxa-re__card{grid-template-columns:minmax(0,var(--nxa-media-width)) minmax(0,calc(100% - var(--nxa-media-width) - var(--nxa-split-gap)))}
}
@media(max-width:767px){
	.nxa-re{--nxa-columns:1;--nxa-row-gap:48px}
	.nxa-re--cards.nxa-re--fit[data-nxa-count="2"] .nxa-re__list{grid-template-columns:minmax(0,1fr)}
	.nxa-re.nxa-re--enhanced .nxa-re__card,.nxa-re--split .nxa-re__card{grid-template-columns:minmax(0,1fr);gap:24px;min-height:0}
	.nxa-re.nxa-re--enhanced .nxa-re__image{min-height:240px}
	.nxa-re .nxa-re__nav{gap:22px;margin-bottom:22px}
	.nxa-re--split .nxa-re__image,.nxa-re--split .nxa-re__body{grid-column:1!important}
	.nxa-re--split.nxa-re--mobile-media-first .nxa-re__image{grid-row:1}
	.nxa-re--split.nxa-re--mobile-media-first .nxa-re__body{grid-row:2}
	.nxa-re--split.nxa-re--mobile-media-after .nxa-re__body{grid-row:1}
	.nxa-re--split.nxa-re--mobile-media-after .nxa-re__image{grid-row:2}
}
@media(prefers-reduced-motion:reduce){.nxa-re .nxa-re__card,.nxa-re .nxa-re__cta,.nxa-re .nxa-re__nav button,.nxa-re .nxa-re__more{transition:none}}
