.np-nursing {
  max-width: var(--page-width);
  margin-inline: auto;
  padding: var(--space-20) var(--page-gutter);
  color: var(--ink);
  font-family: var(--sans);
  scroll-margin-top: var(--space-20);
}
.np-nursing *, .np-nursing *::before, .np-nursing *::after { box-sizing: border-box; }
.np-nursing h2, .np-nursing h3, .np-nursing h4, .np-nursing p, .np-nursing ol, .np-nursing dl, .np-nursing dd { margin: 0; }
.np-nursing h2 { font-size: clamp(2rem, 3.6vw, 3.5rem); line-height: 1.08; letter-spacing: -.035em; font-weight: 600; text-wrap: balance; }
.np-nursing p { font-size: 1rem; line-height: 1.6; color: var(--ink-soft); }
.np-nursing a { color: var(--ink); text-underline-offset: .25em; text-decoration-thickness: 1px; }
.np-nursing a:hover { color: var(--ink-soft); }
.np-nursing a:focus-visible { outline: 2px solid var(--focus); outline-offset: var(--space-1); }
.np-nursing svg { width: 24px; height: 24px; flex: 0 0 24px; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.np-nursing ::selection { color: var(--ink); background: var(--accent-soft); }
.np-nursing__intro { display: grid; grid-template-columns: 1.4fr 1fr; align-items: end; gap: var(--space-16); margin-bottom: var(--space-12); }
.np-nursing__intro-copy { max-width: 48ch; }
.np-nursing .np-nursing__status { display: flex; align-items: baseline; gap: var(--space-2); margin-top: var(--space-6); font-size: .875rem; color: var(--ink); }
.np-nursing__status-mark { width: 8px; height: 8px; border: 1px solid var(--ink-soft); border-radius: 50%; flex: 0 0 8px; }
.np-nursing__record { background: var(--paper); border: 1px solid var(--line); }
.np-nursing__record-head { display: flex; justify-content: space-between; align-items: baseline; gap: var(--space-6); padding: var(--space-6) var(--space-8); border-bottom: 1px solid var(--line); }
.np-nursing__record-head h3 { font-size: 1.25rem; font-weight: 600; letter-spacing: -.015em; }
.np-nursing__record-head p { font-size: .875rem; }
.np-nursing__flow { display: grid; grid-template-columns: 1fr 1fr 1fr; list-style: none; padding: var(--space-10) var(--space-8); }
.np-nursing__flow > li { display: flex; flex-direction: column; min-width: 0; padding-inline: var(--space-8); border-inline-start: 1px solid var(--line); }
.np-nursing__flow > li:first-child { padding-inline-start: 0; border-inline-start: 0; }
.np-nursing__flow > li:last-child { padding-inline-end: 0; }
.np-nursing__step-head { display: flex; align-items: center; justify-content: space-between; gap: var(--space-6); margin-bottom: var(--space-8); }
.np-nursing__step-head h4 { font-size: clamp(1.5rem, 2.3vw, 2rem); line-height: 1.1; font-weight: 500; letter-spacing: -.025em; }
.np-nursing__step-head svg { color: var(--ink-soft); }
.np-nursing .np-nursing__prompt { margin-bottom: var(--space-4); font-size: 1.25rem; color: var(--ink); line-height: 1.35; letter-spacing: -.015em; font-weight: 500; max-width: 24ch; }
.np-nursing__tool { display: flex; align-items: center; gap: var(--space-2); padding-top: var(--space-8); margin-top: auto; font-size: .875rem; line-height: 1.5; color: var(--ink-soft); }
.np-nursing__record-foot { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: var(--space-6); padding: var(--space-5) var(--space-8); border-top: 1px solid var(--line); }
.np-nursing__record-foot p { font-size: .875rem; }
.np-nursing__record-foot a { justify-self: end; }
.np-nursing__record-foot a, .np-nursing__route-list a { display: inline-flex; align-items: center; gap: var(--space-2); min-height: 44px; font-size: .875rem; line-height: 1.5; overflow-wrap: anywhere; }
.np-nursing__record-foot a svg, .np-nursing__route-list a svg { width: 18px; height: 18px; flex-basis: 18px; }
.np-nursing__pathways { display: grid; grid-template-columns: 1fr 1.3fr; gap: var(--space-16); padding-block: var(--space-16); }
.np-nursing__pathway-intro h2 { font-size: clamp(1.75rem, 2.6vw, 2.5rem); }
.np-nursing__pathway-intro p { max-width: 40ch; margin-top: var(--space-5); }
.np-nursing__route-list > div { display: grid; grid-template-columns: minmax(100px, .5fr) 1fr; gap: var(--space-6); padding-block: var(--space-5); border-top: 1px solid var(--line); }
.np-nursing__route-list dt { font-size: .875rem; color: var(--ink-soft); padding-top: var(--space-1); }
.np-nursing__route-list dd { min-width: 0; }
.np-nursing__route-list strong { display: block; font-size: 1.125rem; line-height: 1.4; font-weight: 500; }
.np-nursing__route-list p { margin-top: var(--space-2); font-size: .875rem; }
.np-nursing__route-list a { margin-top: var(--space-2); }
.np-nursing__close { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: var(--space-12); padding-block: var(--space-10) var(--space-2); border-top: 1px solid var(--line); }
.np-nursing__close h2 { font-size: clamp(1.75rem, 2.6vw, 2.5rem); }
.np-nursing__close p { max-width: 65ch; margin-top: var(--space-5); }
.np-nursing__actions { display: flex; flex-direction: column; align-items: center; gap: var(--space-3); }
.np-nursing .np-nursing__button { display: inline-flex; justify-content: center; align-items: center; gap: var(--space-6); padding: var(--space-4) var(--space-6); min-height: 52px; background: var(--ink); color: var(--paper); text-decoration: none; font-size: 1rem; font-weight: 500; border: 1px solid var(--ink); }
.np-nursing .np-nursing__button:hover { background: var(--ink-soft); border-color: var(--ink-soft); }
.np-nursing__contact { display: inline-flex; min-height: 44px; align-items: center; font-size: .875rem; }
@media (max-width: 980px) {
  .np-nursing__intro { gap: var(--space-8); grid-template-columns: 1.2fr 1fr; }
  .np-nursing__flow { padding-inline: var(--space-6); }
  .np-nursing__flow > li { padding-inline: var(--space-5); }
  .np-nursing__record-head, .np-nursing__record-foot { padding-inline: var(--space-6); }
  .np-nursing__pathways { gap: var(--space-8); }
}
@media (max-width: 720px) {
  .np-nursing { padding-block: var(--space-12); }
  .np-nursing__intro, .np-nursing__pathways, .np-nursing__close { grid-template-columns: 1fr; gap: var(--space-6); }
  .np-nursing__intro { margin-bottom: var(--space-8); }
  .np-nursing__intro-copy { max-width: 65ch; }
  .np-nursing__record-head { flex-direction: column; align-items: start; gap: var(--space-2); }
  .np-nursing__flow { grid-template-columns: 1fr; padding: var(--space-6); }
  .np-nursing__flow > li { padding: var(--space-6) 0; border-inline-start: 0; border-top: 1px solid var(--line); }
  .np-nursing__flow > li:first-child { padding-top: 0; border-top: 0; }
  .np-nursing__flow > li:last-child { padding-bottom: 0; }
  .np-nursing__step-head { margin-bottom: var(--space-5); }
  .np-nursing__step-head svg { transform: rotate(90deg); }
  .np-nursing .np-nursing__prompt { max-width: 30ch; }
  .np-nursing__tool { padding-top: var(--space-5); }
  .np-nursing__record-foot { grid-template-columns: 1fr; gap: var(--space-2); }
  .np-nursing__record-foot a { justify-self: start; }
  .np-nursing__pathways { padding-block: var(--space-12); }
  .np-nursing__pathway-intro p { max-width: 65ch; }
  .np-nursing__route-list > div { grid-template-columns: 1fr; gap: var(--space-2); }
  .np-nursing__close { padding-top: var(--space-8); }
  .np-nursing__actions { align-items: start; }
  .np-nursing__button { width: 100%; }
}
