.np-page { margin: 0; color: var(--ink); background: var(--bg); font: var(--type-body)/var(--type-body-lh) var(--font-sans); --action-ink: var(--accent-purple-ink); --action-tint: color-mix(in srgb, var(--accent-purple) 10%, var(--surface)); }
.np-page *, .np-page *::before, .np-page *::after { box-sizing: border-box; }
.np-page [hidden] { display: none !important; }
.np-rail { width: min(100%, calc(var(--control-height) * 29)); margin-inline: auto; padding-inline: clamp(var(--space-8), 4vw, var(--space-16)); }
.np-header { color: var(--brand-canvas-ink); }
.np-header-inner, .np-controls, .np-footer-inner, .np-footer nav { display: flex; align-items: center; gap: var(--space-4); }
.np-header-inner { min-height: var(--header-h); justify-content: space-between; padding-block: var(--space-4); }
.np-logo { --np-logo-height: calc(var(--control-height) * 3 / var(--logo-ratio)); margin-inline-start: calc(var(--np-logo-height) * var(--logo-start-clearance-ratio) * -1); width: calc(var(--control-height) * 3); min-height: var(--control-height); display: flex; align-items: center; flex: none; }
.np-logo img { display: block; width: 100%; height: auto; }
.np-header .btn { color: var(--midnight-ink); border-color: var(--midnight-ink); }
.np-header [aria-pressed='true'] { text-decoration: underline; text-underline-offset: var(--space-2); }
.np-main { scroll-margin-top: var(--sticky-top); display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr); gap: var(--section-gap) var(--space-16); padding-block: var(--section-gap); }
.np-intro, .np-apply, .np-benefits, .np-questions { min-width: 0; }
.np-page h1, .np-page h2, .np-page h3 { font-family: var(--font-display); font-weight: var(--weight-display); color: var(--ink); text-wrap: balance; }
.np-page h1 { font-size: var(--type-h1); line-height: var(--type-h1-lh); letter-spacing: var(--type-h1-ls); margin: var(--space-6) 0 var(--space-12); white-space: pre-line; }
.np-page h2 { font-size: var(--type-h2); line-height: var(--type-h2-lh); letter-spacing: var(--type-h2-ls); margin: 0 0 var(--space-8); }
.np-page h3 { font-size: var(--type-h3); line-height: var(--type-h3-lh); letter-spacing: var(--type-h3-ls); margin: 0 0 var(--space-6); }
.np-page p { margin: 0 0 var(--space-8); }
.np-eyebrow { font-size: var(--type-eyebrow); letter-spacing: var(--type-eyebrow-ls); text-transform: uppercase; font-weight: 600; }
.np-lead { font-size: var(--type-lead); line-height: var(--type-lead-lh); max-width: 58ch; }
.np-summary { color: var(--ink-muted); max-width: 66ch; }
.np-journey { margin: var(--space-16) 0 var(--space-8); padding: 0; list-style: none; }
.np-journey li { position: relative; display: grid; grid-template-columns: var(--control-height) minmax(0, 1fr); gap: var(--space-8); padding-bottom: var(--space-12); animation: np-arrive calc(var(--motion-enter) * 2) var(--ease-ui) both; }
.np-journey li:nth-child(2) { animation-delay: var(--motion-enter); }
.np-journey li:nth-child(3) { animation-delay: calc(var(--motion-enter) * 2); padding-bottom: 0; }
.np-journey li:not(:last-child)::after { content: ''; position: absolute; left: calc(var(--control-height) / 2); top: calc(var(--control-height) + var(--space-2)); bottom: var(--space-2); width: calc(var(--space-1) / 2); background: var(--border-strong); }
.np-number { display: grid; place-items: center; height: var(--control-height); border: calc(var(--space-1) / 2) solid var(--border-strong); border-radius: var(--radius); font-family: var(--font-mono); font-weight: 600; }
.np-journey h2 { font-size: var(--type-h3); line-height: var(--type-h3-lh); letter-spacing: var(--type-h3-ls); margin-block: var(--space-2) var(--space-4); }
.np-journey p { color: var(--ink-muted); margin-bottom: var(--space-8); }
.np-request { display: flex; flex-wrap: wrap; gap: var(--space-4) var(--space-8); padding: var(--space-6) 0; border-block: calc(var(--space-1) / 2) solid var(--border); }
.np-request span { font-size: var(--type-h4); }
.np-caption { font-size: var(--type-h4); color: var(--ink-muted); line-height: var(--type-body-lh); }
.np-apply { align-self: start; background: var(--surface); border-top: var(--space-1) solid var(--accent-purple); padding: var(--space-12); border-radius: var(--radius); }
.np-apply > p:not(.np-eyebrow) { color: var(--ink-muted); }
.np-field { margin-bottom: var(--space-8); }
.np-field label { display: block; margin-bottom: var(--space-4); font-weight: 600; }
.np-field input { display: block; width: 100%; min-width: 0; min-height: var(--control-height); background: var(--surface-inset); color: var(--ink); border: calc(var(--space-1) / 2) solid var(--border-strong); border-radius: var(--radius); padding: var(--space-4) var(--space-6); font: inherit; }
.np-field input[aria-invalid='true'] { border-color: var(--danger); }
.np-field input:focus-visible { outline: var(--space-1) solid var(--ring); outline-offset: var(--space-2); }
.np-field .np-caption { margin-top: var(--space-4); }
.np-page #np-submit { width: 100%; }
.np-page #np-privacy { margin-top: var(--space-8); }
.np-error { color: var(--danger); }
.np-approval { padding-top: var(--space-8); border-top: calc(var(--space-1) / 2) solid var(--border); }
.np-status { outline: none; }
.np-status:focus-visible { outline: var(--space-1) solid var(--ring); outline-offset: var(--space-2); }
.np-benefits, .np-questions { grid-column: 1 / -1; }
.np-benefit-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-16); }
.np-benefit-grid p { color: var(--ink-muted); }
.np-questions { max-width: calc(var(--control-height) * 20); width: 100%; }
.np-questions details { padding-block: var(--space-4); border-top: calc(var(--space-1) / 2) solid var(--border); }
.np-questions summary { min-height: var(--control-height); cursor: pointer; padding-block: var(--space-6); font-weight: 600; }
.np-questions details p { color: var(--ink-muted); padding-top: var(--space-4); }
.np-footer { border-top: calc(var(--space-1) / 2) solid var(--border); }
.np-footer-inner { justify-content: space-between; flex-wrap: wrap; gap: var(--space-8); padding-block: var(--space-12); }
.np-footer nav { flex-wrap: wrap; gap: var(--space-4) var(--space-12); }
.np-footer a { color: var(--ink); min-height: var(--control-height); display: inline-flex; align-items: center; text-decoration: underline; text-underline-offset: var(--space-2); }
.np-page a, .np-page p, .np-page label, .np-page h1, .np-page h2, .np-page h3, .np-page summary { overflow-wrap: anywhere; }
.np-skip { position: absolute; top: var(--space-4); left: var(--space-4); padding: var(--space-8); background: var(--surface); color: var(--ink); z-index: 50; transform: translateY(-200%); }
.np-skip:focus { transform: none; }
@keyframes np-arrive { from { opacity: 0; transform: translateY(var(--space-8)); } to { opacity: 1; transform: none; } }
@media (max-width: 900px) { .np-main { grid-template-columns: 1fr; } .np-apply { width: 100%; max-width: calc(var(--control-height) * 14); } .np-benefit-grid { gap: var(--space-12); } }
@media (max-width: 600px) { .np-benefit-grid { grid-template-columns: 1fr; gap: var(--space-8); } .np-header-inner { flex-wrap: wrap; } .np-header .np-controls { margin-left: auto; } .np-apply { padding: var(--space-8); } .np-journey { margin-top: var(--space-12); } }
@media (prefers-reduced-motion: reduce) { .np-journey li { animation: none; } }
