.nl-main { padding:32px 0 72px; }
.nl-breadcrumb { display:flex; flex-wrap:wrap; gap:10px; font-size:11px; color:var(--nh-muted); margin-bottom:42px; }
.nl-breadcrumb a:hover { color:var(--nh-accent); }
.nl-heading { max-width:800px; margin-bottom:42px; }
.nl-heading h1 { font-size:clamp(32px,4.2vw,50px); font-weight:600; letter-spacing:-1.8px; line-height:1.2; margin:16px 0 20px; }
.nl-heading > p { color:var(--nh-muted); font-size:14px; line-height:1.9; max-width:650px; margin:0; }
.nl-layout { display:grid; grid-template-columns:260px minmax(0,1fr); align-items:start; gap:40px; }
.nl-sidebar { position:sticky; top:24px; }
.nl-index { border:1px solid var(--nh-border); border-radius:14px; background:var(--nh-surface); padding:24px; }
.nl-index h2 { font-size:14px; font-weight:600; margin:0 0 18px; }
.nl-index ol { list-style:none; counter-reset:section; padding:0; margin:0; }
.nl-index li { counter-increment:section; }
.nl-index a { display:flex; align-items:baseline; gap:10px; min-height:44px; padding:10px 0; font-size:11px; line-height:1.7; color:var(--nh-muted); }
.nl-index a::before { content:counter(section, decimal-leading-zero); color:var(--nh-secondary); font-size:10px; }
.nl-index a:hover { color:var(--nh-accent); }
.nl-related { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:20px 8px; font-size:12px; color:var(--nh-accent) !important; }
.nl-related .nh-icon { width:18px; }
.nl-document { min-width:0; border:1px solid var(--nh-border); border-radius:18px; background:var(--nh-surface); padding:36px 40px; }
.nl-document p, .nl-document li { font-size:13px; line-height:1.95; color:var(--nh-muted); }
.nl-intro { margin:0 0 30px; padding-bottom:30px; border-bottom:1px solid var(--nh-border); }
.nl-section + .nl-section { margin-top:30px; padding-top:28px; border-top:1px solid var(--nh-border); }
.nl-section h2 { font-size:19px; font-weight:600; line-height:1.5; margin:0 0 14px; scroll-margin-top:24px; }
.nl-section p { margin:0 0 14px; }
.nl-section p:last-child { margin-bottom:0; }
.nl-section ul { margin:16px 0; padding-left:22px; }
.nl-section li { padding-left:5px; margin-bottom:8px; }
.nl-section li::marker { color:var(--nh-accent); }
.nl-document strong, .nl-document b { color:var(--nh-ink); font-weight:600; }
.nl-document a { color:var(--nh-accent); text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.nl-contact { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:42px; padding:30px 36px; border:1px solid var(--nh-border); background:var(--nh-soft); border-radius:14px; }
.nl-contact h2 { font-size:21px; font-weight:600; margin:0 0 8px; line-height:1.4; }
.nl-contact p { font-size:12px; line-height:1.8; color:var(--nh-muted); margin:0; }
@media (max-width:1000px) {
  .nl-layout { grid-template-columns:220px minmax(0,1fr); gap:24px; }
  .nl-document { padding:28px; }
}
@media (max-width:767px) {
  .nl-main { padding:24px 0 44px; }
  .nl-breadcrumb { margin-bottom:30px; font-size:10px; }
  .nl-heading { margin-bottom:28px; }
  .nl-heading h1 { letter-spacing:-1px; }
  .nl-heading > p { font-size:13px; }
  .nl-layout { grid-template-columns:minmax(0,1fr); gap:20px; }
  .nl-sidebar { position:static; }
  .nl-index { padding:20px; }
  .nl-index ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:18px; }
  .nl-index a { font-size:10px; gap:7px; }
  .nl-related { padding:16px 4px 0; }
  .nl-document { padding:24px; border-radius:14px; }
  .nl-document p, .nl-document li { font-size:12px; }
  .nl-section h2 { font-size:17px; }
  .nl-contact { align-items:flex-start; flex-direction:column; padding:24px; margin-top:28px; }
  .nl-contact h2 { font-size:19px; }
}
@media (max-width:360px) {
  .nl-index ol { grid-template-columns:minmax(0,1fr); }
  .nl-document { padding:20px; }
}
