/* Scoped to the NPR solution catalog. */
.npr-solution-catalog { margin:0; color:#000; background:#fff; font-family:'SUIT','Malgun Gothic',sans-serif; line-height:1.7; word-break:keep-all; overflow-wrap:anywhere; }
.npr-solution-catalog:not(.nc-list-page):not(.nc-story-page) .home-header { color:#000; background:#fff; }
.npr-solution-catalog:not(.nc-list-page):not(.nc-story-page) .home-header .brand-color { opacity:1; }
.npr-solution-catalog:not(.nc-list-page):not(.nc-story-page) .home-header .brand-inverse { opacity:0; }
.npr-solution-catalog:is(.nc-list-page,.nc-story-page) .home-header:not(.is-open):not(.is-scrolled):not(.is-light-hero) { color:#fff; background:transparent; --home-green-text:#fff; }
.npr-solution-catalog:is(.nc-list-page,.nc-story-page) .home-header:not(.is-open):not(.is-scrolled):not(.is-light-hero) :focus-visible { outline-color:#fff; }
.npr-solution-catalog .home-language-options a { display:block; padding:6px 12px; min-height:40px; color:#fff; text-align:center; border-radius:4px; }
.npr-solution-catalog .home-language-options a:is(:hover,:focus-visible) { background:#656565; }
.npr-solution-catalog .home-language-options [aria-current] { text-decoration:underline; text-underline-offset:5px; }
.npr-solution-catalog .home-footer { font-family:inherit; }
.npr-solution-catalog .nc-main { padding-top:64px; }
.npr-solution-catalog:is(.nc-list-page,.nc-story-page) .nc-main { padding-top:0; }
.npr-solution-catalog .nc-main *, .npr-solution-catalog .nc-main *::before, .npr-solution-catalog .nc-main *::after { box-sizing:border-box; }
.npr-solution-catalog .nc-main :is(h1,h2,h3,h4,p,ul,ol,figure,dl,dd) { margin:0; }
.npr-solution-catalog .nc-main :is(h1,h2,h3,h4) { color:#000; font-weight:700; letter-spacing:-.035em; line-height:1.28; text-wrap:balance; }
.npr-solution-catalog .nc-main a { color:inherit; text-decoration:none; }
.npr-solution-catalog .nc-main img { display:block; max-width:100%; }
.npr-solution-catalog .nc-main :is(h1,.has-entered) { animation:none!important; }
.npr-solution-catalog .nc-main :is(a,button):focus-visible { outline:2px solid #000; outline-offset:5px; }
.npr-solution-catalog .nc-main button { font:inherit; cursor:pointer; }
.npr-solution-catalog .nc-wrap { width:min(calc(100% - 2 * var(--npr-page-gutter)),var(--npr-content-width)); margin-inline:auto; }
.npr-solution-catalog .nc-main h1 { font-size:clamp(38px,4.6vw,64px); }
.npr-solution-catalog .nc-main h2 { font-size:clamp(30px,3.3vw,44px); }
.npr-solution-catalog .nc-main h3 { font-size:25px; }
.npr-solution-catalog .nc-main h4 { font-size:30px; }
.npr-solution-catalog .nc-main p { font-size:18px; line-height:1.8; color:#454545; }
.npr-solution-catalog .nc-main .nc-kicker { margin-bottom:20px; font-size:13px; font-weight:700; letter-spacing:.09em; color:#000; }
.npr-solution-catalog .nc-hero { position:relative; overflow:hidden; background:#061321; }
.npr-solution-catalog .nc-main .nc-hero-inner { position:relative; width:100%; min-height:100vh; min-height:100svh; display:flex; align-items:center; justify-content:center; padding:calc(var(--home-header-height,64px) + 64px) 48px 80px; }
.npr-solution-catalog .nc-hero-copy { position:relative; width:min(100%,1100px); text-align:center; z-index:1; }
.npr-solution-catalog .nc-main .nc-hero-copy .nc-kicker { color:#fff; }
.npr-solution-catalog .nc-hero h1 { color:#fff; font-size:clamp(40px,5vw,88px); line-height:1.2; }
.npr-solution-catalog .nc-hero-copy > p:not(.nc-kicker) { max-width:780px; margin:32px auto 0; color:#fff; font-size:clamp(17px,1.5vw,22px); }
.npr-solution-catalog .nc-hero-art { position:absolute; inset:0; overflow:hidden; }
.npr-solution-catalog .nc-hero-art::after { position:absolute; inset:0; content:''; background:rgba(3,14,30,.76); }
.npr-solution-catalog .nc-hero-art img { width:100%; height:100%; object-fit:cover; object-position:center; }
.npr-solution-catalog .nc-partner-hero { background:#f3f4f6; }
.npr-solution-catalog .nc-partner-hero .nc-hero-art::after { background:rgba(255,255,255,.12); }
.npr-solution-catalog .nc-main .nc-partner-hero .nc-hero-copy :is(h1,p) { color:#20252b; }
.npr-solution-catalog .nc-text-link { display:inline-flex; gap:16px; align-items:center; min-height:44px; font-size:16px; font-weight:600; }
.npr-solution-catalog .nc-text-link:hover { text-decoration:underline; text-underline-offset:5px; }
.npr-solution-catalog .nc-main .nc-layout { display:grid; align-items:start; width:min(calc(100% - 96px),1600px); grid-template-columns:minmax(0,1fr) 160px; gap:32px; padding-block:64px 80px; }
.npr-solution-catalog .nc-layout > .site-resource-nav { grid-area:1 / 2; justify-self:stretch; position:sticky; top:calc(var(--home-header-height,64px) + 32px); display:flex; flex-direction:column; flex-wrap:nowrap; gap:4px; width:auto; margin:0; padding:0; border:0; max-height:calc(100svh - var(--home-header-height,64px) - 48px); overflow-y:auto; }
.npr-solution-catalog .nc-layout > .nc-content { grid-area:1 / 1; width:100%; min-width:0; }
.npr-solution-catalog .nc-content .nc-wrap { width:100%; }
.npr-solution-catalog .nc-content > .nc-context { padding-top:0; }
.npr-solution-catalog .nc-content > :is(.nc-features,.nc-adoption) { padding-inline:24px; }
.npr-solution-catalog .nc-fields { padding-bottom:64px; }
.npr-solution-catalog .nc-heading { margin-bottom:44px; }
.npr-solution-catalog.nc-list-page .nc-fields > .nc-heading { text-align:center; }
.npr-solution-catalog .nc-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); max-width:960px; margin-inline:auto; gap:28px; align-items:stretch; }
.npr-solution-catalog .nc-group { display:flex; flex-direction:column; min-width:0; }
.npr-solution-catalog .nc-card { display:flex; flex-direction:column; flex:1; min-width:0; min-height:394px; border:1px solid transparent; border-radius:var(--npr-radius); overflow:hidden; background:#f5f5f5; }
.npr-solution-catalog .nc-card:is(:hover,:focus-within) { border-color:var(--npr-green,#8dc21f); background:var(--npr-green,#8dc21f); }
.npr-solution-catalog .nc-card-copy { padding:40px; }
.npr-solution-catalog .nc-card-heading { display:flex; flex-wrap:wrap; align-items:start; gap:12px; }
.npr-solution-catalog .nc-main .nc-card-copy h3 { flex:1 1 140px; min-width:0; font-size:32px; line-height:1.5; }
.npr-solution-catalog .nc-main .nc-card-detail { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; margin-left:auto; padding:8px 10px; border-radius:var(--npr-button-radius,9999px); background:#e0e0e0; color:#222; font-size:12px; font-weight:600; white-space:nowrap; }
.npr-solution-catalog .nc-main .nc-card-detail:hover { color:#fff; background:#000; }
.npr-solution-catalog .nc-main .nc-card-description { margin-top:20px; font-size:19px; line-height:1.75; color:#454545; }
.npr-solution-catalog .nc-card-bottom { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:14px; margin-top:auto; padding:0 40px 40px; }
.npr-solution-catalog .nc-card-bottom .nc-actions { display:grid; min-width:0; }
.npr-solution-catalog .nc-main .nc-card-bottom .nc-button { width:100%; min-width:0; min-height:54px; gap:8px; padding:12px; font-size:18px; background:#fff; color:#000!important; border-color:#fff; }
.npr-solution-catalog .nc-main .nc-card-bottom .nc-card-detail { width:100%; min-width:0; min-height:54px; margin-left:0; gap:8px; padding:12px; font-size:18px; text-align:center; white-space:normal; }
.npr-solution-catalog .nc-main .nc-card-bottom .nc-button:hover { background:#e9e9e9; }
.npr-solution-catalog .nc-actions { display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
.npr-solution-catalog .nc-main .nc-button { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:48px; padding:12px 20px; border:1px solid transparent; border-radius:var(--npr-button-radius,9999px); font-size:15px; font-weight:700; line-height:1.5; transition:background-color .2s,color .2s; }
.npr-solution-catalog .nc-primary { background:var(--npr-green,#8dc21f); color:#000!important; }
.npr-solution-catalog .nc-main .nc-secondary { border-color:#aaa; background:transparent; color:#000; }
.npr-solution-catalog .nc-main .nc-button:hover { color:#fff!important; background:#000; }
.npr-solution-catalog .nc-main .nc-note { font-size:13px; color:#555; margin-block:12px; }
.npr-solution-catalog .nc-detail-hero { padding-block:40px 72px; background:linear-gradient(120deg,#fff 25%,#f5f5f5); }
.npr-solution-catalog .nc-detail-intro { display:grid; grid-template-columns:1fr 1.05fr; gap:52px; align-items:center; padding-top:48px; }
.npr-solution-catalog .nc-detail-intro h1 { font-size:clamp(34px,3.4vw,48px); }
.npr-solution-catalog .nc-detail-intro .nc-lead { margin-top:24px; font-size:22px; color:#000; }
.npr-solution-catalog .nc-detail-intro p:not(.nc-lead):not(.nc-kicker) { margin-top:16px; font-size:16px; }
.npr-solution-catalog .nc-detail-intro .nc-actions { margin-top:28px; }
.npr-solution-catalog .nc-screen { min-width:0; }
.npr-solution-catalog .nc-screen > img { display:block; padding:16px; width:100%; border:1px solid #ddd; border-radius:var(--npr-radius); background:#fff; }
.npr-solution-catalog.npr-partner-solutions .nc-screen > img { padding:0; border:0; border-radius:0; background:transparent; }
.npr-solution-catalog .nc-screen img { width:100%; height:auto; }
.npr-solution-catalog .nc-screen figcaption { margin-top:12px; font-size:13px; color:#555; }
.npr-solution-catalog .nc-screen figcaption span { display:block; }
.npr-solution-catalog .nc-main section[id] { scroll-margin-top:calc(var(--home-header-height,64px) + 32px); }
.npr-solution-catalog .nc-context,.npr-solution-catalog .nc-process,.npr-solution-catalog .nc-related { padding-block:80px; }
.npr-solution-catalog .nc-facts { list-style:none; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:48px; margin-top:40px!important; }
.npr-solution-catalog .nc-facts p { margin-top:16px; }
.npr-solution-catalog .nc-features { padding-block:80px; background:#f5f5f5; }
.npr-solution-catalog .nc-feature { padding-block:28px; border-top:1px solid #d8d8d8; }
.npr-solution-catalog .nc-feature > div { display:grid; grid-template-columns:48px minmax(200px,.75fr) 1.4fr; gap:24px; align-items:start; }
.npr-solution-catalog .nc-feature-wide .nc-screen { margin-top:32px; }
.npr-solution-catalog .nc-step { font-size:15px; color:#555; font-weight:600; }
.npr-solution-catalog .nc-main .nc-process ol,.npr-solution-catalog .nc-planning { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; list-style:none; padding:0; margin-top:40px; }
.npr-solution-catalog .nc-process li { padding-top:24px; border-top:2px solid var(--npr-green); }
.npr-solution-catalog .nc-process h3 { margin-block:20px 14px; }
.npr-solution-catalog .nc-adoption { background:#f5f5f5; padding-block:80px; }
.npr-solution-catalog .nc-adoption-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; margin-top:44px; }
.npr-solution-catalog .nc-main .nc-subheading { font-size:22px; margin-bottom:24px; }
.npr-solution-catalog .nc-adoption dt { font-weight:600; font-size:17px; }
.npr-solution-catalog .nc-adoption dd { font-size:16px; color:#454545; margin-top:8px; }
.npr-solution-catalog .nc-adoption dl > div+div { margin-top:24px; }
.npr-solution-catalog .nc-main .nc-boundary { padding:24px 0; border-block:1px solid #ccc; margin-block:40px; color:#000; font-size:18px; }
.npr-solution-catalog .nc-main .nc-planning { margin-top:0; }
.npr-solution-catalog .nc-main .nc-planning h4 { font-size:19px; }
.npr-solution-catalog .nc-planning p { font-size:16px; margin-top:12px; }
.npr-solution-catalog .nc-related .nc-text-link { margin-top:24px; }
.npr-solution-catalog .nc-missing { padding-block:100px; }
.npr-solution-catalog .nc-missing a { margin-top:32px; }
.npr-solution-catalog .nc-moving { opacity:var(--nc-opacity,1)!important; transform:translateY(var(--nc-y,0px))!important; animation:none!important; transition:none!important; }
.npr-solution-catalog .nc-story-hero { position:relative; isolation:isolate; overflow:hidden; display:flex; flex-direction:column; min-height:100vh; min-height:100svh; color:#fff; background:#0a1008; }
.npr-solution-catalog .nc-story-hero-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:0; }
.npr-solution-catalog .nc-story-hero::after { position:absolute; inset:0; content:''; background:linear-gradient(90deg,rgba(0,0,0,.52),rgba(0,0,0,.32)70%,rgba(0,0,0,.18)); z-index:1; }
.npr-solution-catalog .nc-main .nc-story-hero-content { position:relative; z-index:2; display:flex; flex:1; flex-direction:column; align-items:flex-start; justify-content:center; min-height:0; padding-block:calc(var(--home-header-height,64px) + 72px) 88px; }
.npr-solution-catalog .nc-main .nc-story-hero h1 { max-width:900px; color:#fff; font-size:clamp(40px,4vw,72px); line-height:1.25; }
.npr-solution-catalog .nc-main .nc-story-hero-summary { width:100%; max-width:960px; margin-top:72px; }
.npr-solution-catalog .nc-main .nc-story-english-title { color:#fff; font-size:clamp(24px,2.2vw,32px); font-weight:650; line-height:1.4; letter-spacing:-.02em; }
.npr-solution-catalog .nc-main .nc-story-description { max-width:100%; margin-top:0; color:#ededed; font-size:20px; line-height:1.85; }
.npr-solution-catalog .nc-main .nc-story-english-title + .nc-story-description { margin-top:20px; }
.npr-solution-catalog .nc-story-hero-actions { position:relative; z-index:2; width:100%; background:transparent; }
.npr-solution-catalog .nc-story-hero-actions-inner { display:flex; align-items:center; justify-content:flex-start; gap:16px; min-height:112px; padding-block:24px; }
.npr-solution-catalog .nc-main .nc-story-purchase { display:inline-flex; align-items:center; justify-content:center; gap:32px; min-width:164px; min-height:56px; padding:14px 28px; border-radius:var(--npr-button-radius,9999px); background:#fff; color:#111; font-size:18px; font-weight:650; }
.npr-solution-catalog .nc-main .nc-story-purchase:hover { background:var(--npr-green,#94c218); color:#111; }
.npr-solution-catalog .nc-main .nc-story-hero :focus-visible { outline-color:#fff; }
.npr-solution-catalog .nc-product-screens { display:grid; grid-template-columns:minmax(0,1fr); gap:32px; margin-top:48px; }
.npr-solution-catalog .nc-product-screen { min-width:0; }
.npr-solution-catalog .nc-product-screen-heading { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:20px; }
.npr-solution-catalog .nc-main .nc-product-screen-heading h3 { font-size:24px; line-height:1.5; }
.npr-solution-catalog .nc-product-screen-heading a { padding-block:8px; font-size:16px; text-decoration:underline; text-underline-offset:4px; }
.npr-solution-catalog :is(.nc-product-overview,.nc-product-architecture) { margin-top:36px; }
.npr-solution-catalog .nc-main :is(.nc-product-screen,.nc-product-overview,.nc-product-architecture) .nc-screen img { width:100%; height:auto; padding:0; }
.npr-solution-catalog .nc-partner-story-hero::after { background:linear-gradient(90deg,rgba(12,16,20,.35),rgba(12,16,20,.12)65%,transparent); }
.npr-solution-catalog .nc-partner-story-hero.is-light { color:#20252b; background:#f7f6f3; }
.npr-solution-catalog .nc-partner-story-hero.is-light::after { background:linear-gradient(90deg,rgba(250,249,246,.65),rgba(250,249,246,.2)60%,transparent); }
.npr-solution-catalog .nc-main .nc-partner-story-hero.is-light :is(h1,.nc-story-english-title,.nc-story-description) { color:#20252b; }
.npr-solution-catalog .nc-main .nc-partner-story-hero.is-light :focus-visible { outline-color:#20252b; }
.npr-solution-catalog .nc-story-body { background:#fff; }
.npr-solution-catalog .nc-main .nc-layout.nc-story-layout { grid-template-columns:minmax(0,1fr) 180px; gap:48px; padding-block:72px 0; }
/* Stack the detail TOC above the content until the outer right gutter is wide enough. */
body.npr-solution-catalog .nc-main .nc-layout:has(> .nc-story-nav) > .nc-content { grid-area:2 / 1; }
@media(min-width:1760px) {
 body.npr-solution-catalog .nc-main .nc-layout:has(> .nc-story-nav) > .nc-content { grid-area:1 / 1; }
}
.npr-solution-catalog .nc-story-layout > .nc-story-nav { z-index:1; padding:24px; background:transparent; }
.npr-solution-catalog .nc-story-layout .nc-story-nav a { min-height:44px; font-size:17px; }
.npr-solution-catalog .nc-story-section { position:relative; isolation:isolate; padding-block:56px; background:#fff; }
/* Extend section color beyond the content frame without adding scrollable width. */
.npr-solution-catalog .nc-story-section::before { position:absolute; inset:0; z-index:-1; content:''; background:inherit; box-shadow:0 0 0 100vmax #fff; clip-path:inset(0 -100vmax); }
.npr-solution-catalog .nc-story-section:nth-child(even) { background:#f5f5f5; }
.npr-solution-catalog .nc-story-section:nth-child(even)::before { box-shadow:0 0 0 100vmax #f5f5f5; }
.npr-solution-catalog .nc-story-section:first-child { padding-top:0; }
.npr-solution-catalog .nc-story-section:last-child { padding-bottom:0; border-bottom:0; }
.npr-solution-catalog .nc-main .nc-story-label { margin-bottom:16px; color:#555; font-size:15px; font-weight:600; letter-spacing:.04em; text-align:center; }
.npr-solution-catalog .nc-main .nc-story-section h2 { max-width:1050px; margin-inline:auto; font-size:40px; line-height:1.45; text-align:center; }
.npr-solution-catalog .nc-main :is(.nc-story-intro,.nc-story-prose p) { max-width:64ch; margin-top:24px; margin-inline:auto; color:#454545; font-size:20px; line-height:1.85; text-align:center; }
.npr-solution-catalog .nc-main :is(#solution-context,#solution-features,#solution-outcomes,.nc-partner-architecture).nc-story-section h2 { max-width:1200px; font-size:var(--npr-section-title-size); font-weight:700; line-height:1.4; }
.npr-solution-catalog .nc-main #solution-context.nc-story-section .nc-story-prose { max-width:1200px; margin:48px auto 0; }
.npr-solution-catalog .nc-main #solution-context.nc-story-section .nc-story-prose p { max-width:none; margin:0; font-size:clamp(20px,1.9vw,26px); font-weight:700; line-height:1.75; }
.npr-solution-catalog .nc-main :is(#solution-features,#solution-strengths,#solution-outcomes,.nc-partner-architecture).nc-story-section > .nc-story-intro { max-width:1200px; margin:48px auto 0; font-size:clamp(20px,1.9vw,26px); font-weight:700; line-height:1.75; }
.npr-solution-catalog :is(#solution-features,#solution-outcomes).nc-story-section { padding-block:var(--npr-section-space); }
.npr-solution-catalog .nc-story-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:36px; }
.npr-solution-catalog .nc-story-card { min-width:0; padding:32px; border-radius:var(--npr-radius); background:#fff; }
.npr-solution-catalog :is(.nc-outcome-card,.nc-work-card) { display:grid; grid-template-columns:112px minmax(0,1fr); align-items:center; gap:24px; min-height:216px; }
.npr-solution-catalog :is(.nc-outcome-card,.nc-work-card) > div { min-width:0; }
.npr-solution-catalog .nc-main :is(.nc-outcome-icon,.nc-work-icon) { width:112px; height:112px; object-fit:contain; }
.npr-solution-catalog #solution-outcomes .nc-outcome-card { background:#f5f5f5; }
.npr-solution-catalog .nc-main .nc-story-card h3 { font-size:26px; line-height:1.5; }
.npr-solution-catalog .nc-main .nc-story-card p { margin-top:14px; color:#454545; font-size:19px; line-height:1.85; }
.npr-solution-catalog .nc-main .nc-story-points { margin-top:32px; }
.npr-solution-catalog .nc-story-points > div { display:grid; grid-template-columns:minmax(300px,.35fr) minmax(0,1fr); gap:28px; padding-block:28px; border-top:1px solid #d5d5d5; }
.npr-solution-catalog .nc-story-points dt { font-size:24px; font-weight:600; line-height:1.5; }
.npr-solution-catalog .nc-story-points dd { color:#454545; font-size:20px; line-height:1.85; }
.npr-partner-solutions .nc-main :is(#solution-strengths,#solution-adoption) .nc-story-points { max-width:1000px; margin:32px auto 0; }
.npr-solution-catalog .nc-story-section > .nc-screen { margin-top:36px; }
.npr-solution-catalog #solution-adoption.nc-story-section > .nc-screen { max-width:630px; margin-inline:auto; }
.npr-solution-catalog #solution-adoption.nc-story-section > .nc-screen > img { padding:0; border:0; border-radius:0; background:transparent; }
.npr-solution-catalog .nc-architecture-placeholder { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; min-height:320px; margin-top:36px; padding:32px; border:1px dashed #bfbfbf; border-radius:var(--npr-radius); background:#fff; text-align:center; }
.npr-solution-catalog .nc-architecture-placeholder span { font-size:26px; font-weight:600; }
.npr-solution-catalog .nc-main .nc-architecture-placeholder p { color:#767676; font-size:16px; }
.npr-solution-catalog .nc-architecture-parts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; margin-top:32px; }
.npr-solution-catalog .nc-architecture-parts > article { min-width:0; padding:24px; border:1px solid #dedede; border-radius:var(--npr-radius); background:#fff; }
.npr-solution-catalog .nc-main .nc-architecture-parts h3 { font-size:24px; line-height:1.5; }
.npr-solution-catalog .nc-main .nc-architecture-parts p { margin-top:12px; color:#454545; font-size:18px; line-height:1.85; }
.npr-solution-catalog .nc-main .nc-story-note { margin-top:28px; padding-top:20px; border-top:1px solid #d5d5d5; color:#555; font-size:17px; line-height:1.85; }
.npr-solution-catalog .nc-partner-architecture > .nc-screen { max-width:1000px; margin-inline:auto; }
.npr-solution-catalog .nc-story-section.nc-partner-architecture { background:#f8f9fb; }
.npr-solution-catalog .nc-story-section.nc-partner-architecture::before { box-shadow:0 0 0 100vmax #f8f9fb; }
.npr-solution-catalog .nc-main .nc-usage-flow { max-width:1000px; margin:40px auto 0; padding:0; list-style:none; }
.npr-solution-catalog .nc-usage-step + .nc-usage-step { margin-top:40px; padding-top:40px; }
.npr-solution-catalog .nc-usage-copy { display:grid; grid-template-columns:40px minmax(0,1fr); gap:20px; }
.npr-solution-catalog .nc-usage-number { padding-top:3px; color:#547824; font-size:20px; font-weight:700; line-height:1.5; }
.npr-solution-catalog .nc-main .nc-usage-copy h3 { font-size:24px; line-height:1.5; }
.npr-solution-catalog .nc-main .nc-usage-copy p { margin-top:12px; color:#454545; font-size:16px; line-height:1.85; text-align:left; }
.npr-solution-catalog .nc-usage-step > .nc-screen { margin-top:24px; }
.npr-solution-catalog .nc-usage-step .nc-screen a { display:block; }
.npr-solution-catalog .nc-usage-step .nc-screen img { display:block; width:auto; max-width:100%; height:auto; margin-inline:auto; }
.npr-solution-catalog .nc-partner-steps { grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); }
.npr-solution-catalog .nc-partner-screen { margin-top:40px; }
.npr-solution-catalog .nc-main .nc-partner-screen h3 { font-size:24px; line-height:1.5; }
.npr-solution-catalog .nc-main .nc-partner-screen > p { margin-top:12px; }
.npr-solution-catalog .nc-partner-screen .nc-screen { margin-top:24px; }
.npr-solution-catalog .nc-screen figcaption a { display:inline-block; margin-top:8px; text-decoration:underline; text-underline-offset:3px; }
.npr-solution-catalog .nc-main .nc-partner-note { margin-top:24px; font-size:16px; color:#555; }
.npr-solution-catalog .nc-partner-subheading { margin:0!important; text-align:center; }
.npr-solution-catalog .nc-story-section.nc-partner-planning { background:#fff; }
.npr-solution-catalog .nc-story-section.nc-partner-planning::before { box-shadow:0 0 0 100vmax #fff; }
.npr-solution-catalog .nc-partner-sources { margin-top:32px; border-block:1px solid #dedede; }
.npr-solution-catalog .nc-partner-sources summary { padding:16px 0; cursor:pointer; font-size:18px; font-weight:600; }
.npr-solution-catalog .nc-main .nc-partner-sources ul { padding:0 0 16px 24px; }
.npr-solution-catalog .nc-partner-sources li a { display:inline-block; padding-block:8px; text-decoration:underline; text-underline-offset:3px; }
.npr-solution-catalog .nc-partner-sources .nc-screen { margin-block:24px; }
.npr-solution-catalog .nc-main summary:focus-visible { outline:2px solid #000; outline-offset:4px; }
@media(max-width:1000px) {
 .npr-solution-catalog .nc-main .nc-layout { width:calc(100% - 64px); grid-template-columns:minmax(0,1fr) 140px; gap:24px; padding-block:48px; }
 .npr-solution-catalog .nc-groups { gap:24px; }
 .npr-solution-catalog .nc-card { min-height:0; }
 .npr-solution-catalog .nc-card-copy { padding:24px; }
 .npr-solution-catalog .nc-main .nc-card-copy h3 { font-size:24px; }
 .npr-solution-catalog .nc-main .nc-card-description { font-size:16px; }
 .npr-solution-catalog .nc-card-bottom { gap:12px; padding:0 24px 24px; }
 .npr-solution-catalog .nc-main .nc-card-bottom :is(.nc-button,.nc-card-detail) { min-height:52px; gap:6px; padding:10px 8px; font-size:14px; }
 .npr-solution-catalog .nc-detail-intro { grid-template-columns:1fr; gap:32px; }
 .npr-solution-catalog .nc-detail-intro > div { max-width:760px; }
 .npr-solution-catalog .nc-feature > div { grid-template-columns:40px 1fr; }
 .npr-solution-catalog .nc-feature > div p { grid-column:2; }
 .npr-solution-catalog .nc-main .nc-layout.nc-story-layout { grid-template-columns:minmax(0,1fr) 140px; gap:24px; padding-block:48px 0; }
 .npr-solution-catalog .nc-story-layout > .nc-story-nav { padding:16px; }
 .npr-solution-catalog .nc-story-grid, .npr-solution-catalog .nc-architecture-parts { grid-template-columns:1fr; }
 .npr-solution-catalog .nc-story-points > div { grid-template-columns:1fr; gap:12px; }
 .npr-solution-catalog .nc-main .nc-story-section h2 { font-size:34px; }
}
@media(max-width:700px) {
 .npr-solution-catalog .nc-main .nc-usage-flow { margin-top:28px; }
 .npr-solution-catalog .nc-usage-copy { grid-template-columns:30px minmax(0,1fr); gap:12px; }
 .npr-solution-catalog .nc-main .nc-usage-copy h3 { font-size:21px; }
 .npr-solution-catalog .nc-usage-step + .nc-usage-step { margin-top:28px; padding-top:28px; }
 .npr-solution-catalog .nc-main { padding-top:60px; }
 .npr-solution-catalog .nc-main h1 { font-size:36px; }
 .npr-solution-catalog .nc-main h2 { font-size:30px; }
 .npr-solution-catalog .nc-main h3 { font-size:23px; }
 .npr-solution-catalog .nc-main p { font-size:16px; }
 .npr-solution-catalog .nc-main .nc-hero-inner { padding:calc(var(--home-header-height,60px) + 48px) 20px 48px; }
 .npr-solution-catalog .nc-hero h1 { font-size:clamp(34px,7.5vw,54px); }
 .npr-solution-catalog .nc-hero-copy > p:not(.nc-kicker) { margin-top:24px; }
 .npr-solution-catalog .nc-main .nc-layout { display:block; width:calc(100% - 40px); padding-block:32px 40px; }
 .npr-solution-catalog .nc-layout > .site-resource-nav { position:static; flex-direction:row; flex-wrap:wrap; gap:8px 20px; margin-bottom:24px; padding-bottom:12px; border-bottom:1px solid #f5f5f5; max-height:none; overflow:visible; }
 .npr-solution-catalog .nc-fields { padding-bottom:40px; }
 .npr-solution-catalog .nc-heading { margin-bottom:28px; }
 .npr-solution-catalog .nc-groups { grid-template-columns:1fr; gap:24px; }
 .npr-solution-catalog .nc-main .nc-button { font-size:14px; gap:12px; padding:12px 16px; }
 .npr-solution-catalog .nc-detail-hero { padding-block:24px 40px; }
 .npr-solution-catalog .nc-detail-intro { padding-top:28px; }
 .npr-solution-catalog .nc-detail-intro h1 { font-size:34px; }
 .npr-solution-catalog .nc-detail-intro .nc-lead { font-size:20px; }
 .npr-solution-catalog .nc-context,.npr-solution-catalog .nc-process,.npr-solution-catalog .nc-related,.npr-solution-catalog .nc-features,.npr-solution-catalog .nc-adoption { padding-block:48px; }
 .npr-solution-catalog .nc-facts,.npr-solution-catalog .nc-adoption-grid,.npr-solution-catalog .nc-main .nc-process ol,.npr-solution-catalog .nc-main .nc-planning { grid-template-columns:1fr; gap:28px; }
 .npr-solution-catalog .nc-facts { margin-top:28px!important; }
 .npr-solution-catalog .nc-feature > div { display:block; }
 .npr-solution-catalog .nc-feature h3 { margin-block:12px 16px; }
 .npr-solution-catalog .nc-screen > img { padding:8px; }
 .npr-solution-catalog .nc-main .nc-boundary { margin-block:32px; font-size:16px; }
 .npr-solution-catalog .nc-main .nc-story-hero-content { padding-block:calc(var(--home-header-height,60px) + 40px) 56px; }
 .npr-solution-catalog .nc-story-hero-image { object-position:70% center; }
 .npr-solution-catalog .nc-story-hero::after { background:rgba(0,0,0,.6); }
 .npr-solution-catalog .nc-partner-story-hero::after { background:rgba(12,16,20,.65); }
 .npr-solution-catalog .nc-partner-story-hero.is-light::after { background:rgba(250,249,246,.84); }
 .npr-solution-catalog .nc-main .nc-story-hero h1 { font-size:38px; }
 .npr-solution-catalog .nc-main .nc-story-hero-summary { margin-top:40px; }
 .npr-solution-catalog .nc-main .nc-story-english-title { font-size:24px; }
 .npr-solution-catalog .nc-main .nc-story-description { font-size:18px; }
 .npr-solution-catalog .nc-story-hero-actions-inner { min-height:96px; padding-block:20px; }
 .npr-solution-catalog .nc-main .nc-layout.nc-story-layout { padding-block:32px 0; }
 .npr-solution-catalog .nc-story-layout > .nc-story-nav { padding:12px 16px; border:0; }
 .npr-solution-catalog .nc-story-section { padding-block:36px; }
 .npr-solution-catalog .nc-main .nc-story-section h2 { font-size:30px; }
 .npr-solution-catalog .nc-main :is(.nc-story-intro,.nc-story-prose p,.nc-story-card p) { font-size:18px; }
 .npr-solution-catalog .nc-story-card { padding:24px; }
 .npr-solution-catalog :is(.nc-outcome-card,.nc-work-card) { grid-template-columns:1fr; gap:20px; min-height:0; }
 .npr-solution-catalog .nc-main :is(.nc-outcome-icon,.nc-work-icon) { width:96px; height:96px; }
 .npr-solution-catalog .nc-main .nc-story-card h3 { font-size:24px; }
 .npr-solution-catalog .nc-story-points dt { font-size:22px; }
 .npr-solution-catalog .nc-story-points dd { font-size:18px; }
 .npr-solution-catalog .nc-architecture-placeholder { min-height:220px; padding:24px; }
}
