.nnow-sec { padding-bottom: 0; }
.nnow { padding: 20px 24px 14px; border: 1px solid var(--line-strong); border-left: 4px solid var(--ball); border-radius: var(--r-lg); background: #fff; box-shadow: var(--sh-1); }
.nnow__h { display: flex; align-items: center; gap: 10px; font-size: 16px; }
.nnow__ball { flex: 0 0 auto; width: 12px; height: 12px; border-radius: 50%; background: var(--ball); box-shadow: 0 0 0 4px var(--ball-glow); }
.nnow__list { list-style: none; display: grid; margin-top: 6px; }
.nnow__list li + li { border-top: 1px solid var(--line-soft); }
.nnow__a { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; padding: 10px 0; color: var(--ink); text-decoration: none; }
.nnow__a:hover .nnow__t { color: var(--indigo-ink); text-decoration: underline; text-underline-offset: 3px; }
.nnow__t { font-size: 16px; font-weight: 500; line-height: 1.6; }
.nnow__until { color: var(--muted); font-size: 13.5px; white-space: nowrap; }

.nlist .hub-find { margin-bottom: 18px; }

.subhero--post { padding-bottom: 48px; }
.subhero--post .subhero__title { max-width: 880px; font-size: 38px; line-height: 1.45; word-break: auto-phrase; overflow-wrap: anywhere; }
.npost__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; color: var(--on-navy-2); font-size: 15px; }
.npost__meta .nrow__cat--maint { background: #fff; color: var(--navy); }
.npost { max-width: 760px; }
.npost > :first-child { margin-top: 0; }
.npost h2 { margin: 40px 0 12px; font-size: 21px; }
.npost h3 { margin: 28px 0 10px; font-size: 18px; }
.npost p { margin: 0 0 16px; color: var(--ink-2); font-size: 16.5px; line-height: 1.95; }
.npost ul, .npost ol { display: grid; gap: 6px; margin: 0 0 18px; padding-left: 1.4em; color: var(--ink-2); font-size: 16.5px; line-height: 1.85; }
.npost ul { list-style: disc; }
.npost ol { list-style: decimal; }
.npost li::marker { color: var(--indigo); }
.npost a { color: var(--indigo-ink); text-underline-offset: 3px; }
.npost strong { color: var(--ink); }
.npost__back { margin-top: 40px; }
.npost__back .link-arrow { color: var(--indigo-ink); }

@media (max-width: 760px) {
  .nnow { padding: 16px 18px 10px; }
  .subhero--post { padding-bottom: 36px; }
  .subhero--post .subhero__title { font-size: 25px; }
  .npost p, .npost ul, .npost ol { font-size: 16px; }
  .npost h2 { margin-top: 32px; font-size: 19.5px; }
}
