/* The editorial page inherits the studio identity while giving the story room. */
body.nh-page:has(.na-page) { background:#101010; }
.na-page { --na-paper:#ffffff; --na-ink:#222222; --na-muted:#636363; --nh-link-text:#555555; --nh-link-hover:#101010; --nh-link-line:#20202038; background:var(--na-paper); color:var(--na-ink); }
.na-hero,.na-next { color:var(--na-paper); background:#101010; --nh-link-text:#c4c4c4; --nh-link-hover:#fff; --nh-link-line:#ffffff38; }
.na-hero { padding:42px 0 72px; overflow:clip; }
.na-page .na-back { margin-bottom:29px; }
.na-hero__grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(0,1fr); gap:55px; align-items:center; }
.na-meta { display:flex; align-items:center; flex-wrap:wrap; gap:9px 18px; margin-bottom:21px; font-size:14px; line-height:1.5; color:#bcbcbc; }
.na-meta>time+span { display:flex; align-items:center; gap:5px; }
.na-meta>time+span::before { content:''; width:4px; height:4px; border-radius:50%; background:#ff7840; margin-right:13px; }
.na-hero h1 { font-size:clamp(38px,4vw,58px); font-weight:500; line-height:1.13; letter-spacing:-.043em; overflow-wrap:anywhere; text-wrap:pretty; }
.na-page .na-lead { font-size:18px; line-height:1.75; color:#c4c4c4; margin-top:26px; max-width:730px; }
.na-byline { display:flex; align-items:center; flex-wrap:wrap; gap:18px 35px; margin-top:30px; }
.na-author { display:inline-flex; align-items:center; gap:12px; font-size:14px; line-height:1.5; }
.na-author__stamp { display:grid; place-items:center; width:38px; height:38px; flex:none; border-radius:13px; color:#ffffff; background:#303030; font-size:19px; box-shadow:2px 2px 0 #060606; border:1px solid #ffffff12; }
.na-hero__art { min-width:0; }
.na-model { height:405px; }
.na-hero__fallback .nb-editorial { width:240px; height:280px; }
.na-cover { margin:0; border:1px solid #ffffff1a; background:#222222; border-radius:28px; overflow:hidden; }
.na-cover img { width:100%; height:auto; max-height:500px; object-fit:contain; }
.na-reading { padding:80px 0 85px; scroll-margin-top:20px; }
.na-reading__grid { display:grid; grid-template-columns:260px minmax(0,760px); justify-content:space-between; gap:75px; align-items:start; }
.na-reading__grid--plain { grid-template-columns:minmax(0,760px); justify-content:center; }
.na-reading__main { min-width:0; }
.na-sidebar { align-self:stretch; min-width:0; }
.na-sidebar__sticky { position:sticky; top:112px; }
.na-contents { border-top:1px solid #dddddd; }
.na-contents summary { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:18px 0 16px; min-height:54px; list-style:none; cursor:pointer; font-size:15px; font-weight:500; }
.na-contents summary::-webkit-details-marker { display:none; }
.na-contents__mark { width:17px; height:17px; position:relative; flex:none; }
.na-contents__mark::before,.na-contents__mark::after { content:''; position:absolute; width:11px; height:1.5px; top:8px; left:3px; background:#565656; transition:rotate 350ms cubic-bezier(.22,1,.36,1); }
.na-contents__mark::after { rotate:90deg; }
.na-contents[open] .na-contents__mark::after { rotate:0deg; }
.na-toc { max-height:min(62vh,590px); overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#aaaaaa transparent; padding-right:6px; }
.na-toc ol { list-style:none; padding:0; margin:0; }
.na-toc li+li { margin-top:3px; }
.na-toc a { display:grid; grid-template-columns:22px minmax(0,1fr); gap:8px; padding:10px 11px; border-radius:10px; font-size:14px; line-height:1.5; color:#606060!important; transition:color 280ms,background 280ms; }
.na-toc__number { color:#808080; font-size:11px; padding-top:3px; font-variant-numeric:tabular-nums; }
.na-toc a[aria-current=location] { color:#222222!important; background:#f0f0f0; font-weight:500; }
.na-toc a[aria-current=location] .na-toc__number { color:#b64715; }
.na-toc a:hover { background:#f4f4f4; color:#222222!important; }
.na-meter { margin-top:24px; padding:17px 0 0; border-top:1px solid #dddddd; }
.na-meter[hidden] { display:none; }
.na-meter>div { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:12px; line-height:1.5; color:#666666; }
.na-meter progress { display:block; width:100%; height:3px; border:0; margin-top:12px; appearance:none; background:#e2e2e2; border-radius:3px; overflow:hidden; accent-color:#ff6418; }
.na-meter progress[hidden] { display:none; }
.na-meter progress::-webkit-progress-bar { background:#e2e2e2; border-radius:3px; }
.na-meter progress::-webkit-progress-value { background:#ff6418; border-radius:3px; }
.na-meter progress::-moz-progress-bar { background:#ff6418; border-radius:3px; }
.na-prose { font-size:19px; line-height:1.85; letter-spacing:-.01em; overflow-wrap:anywhere; }
.na-prose>:first-child { margin-top:0!important; }
.na-prose>:last-child { margin-bottom:0!important; }
.na-page .na-prose :is(p,ul,ol,figure,table,pre,blockquote) { margin:0 0 25px; }
.na-page .na-prose :is(h1,h2) { font-size:clamp(28px,2.7vw,36px); font-weight:500; line-height:1.24; letter-spacing:-.034em; margin:58px 0 23px; text-wrap:pretty; }
.na-page .na-prose h3 { font-size:25px; line-height:1.35; font-weight:500; letter-spacing:-.025em; margin:36px 0 16px; }
.na-page .na-prose :is(h4,h5,h6) { font-size:21px; font-weight:600; line-height:1.4; margin:28px 0 15px; }
.na-prose [id] { scroll-margin-top:24px; }
.na-prose :is(ul,ol) { padding-left:1.4em; }
.na-prose li { padding-left:.25em; margin:11px 0; }
.na-prose li::marker { color:#b64614; font-size:.85em; }
.na-prose ol li::marker { font-weight:500; font-variant-numeric:tabular-nums; }
.na-prose li :is(ul,ol) { margin-top:12px!important; margin-bottom:14px!important; }
.na-prose strong { font-weight:600; color:#151515; }
.na-page .na-prose a { color:#85401d; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; text-decoration-color:#b66b4590; transition:color 250ms,text-decoration-color 250ms; }
.na-page .na-prose a:hover { color:#b44716; text-decoration-color:#b44716; }
.na-page .na-prose blockquote { margin:34px 0; padding:26px 28px; border-left:3px solid #ff6418; border-radius:0 20px 20px 0; background:#f4f4f4; color:#333333; font-size:21px; line-height:1.75; }
.na-prose blockquote>:last-child { margin-bottom:0!important; }
.na-prose img { width:auto; height:auto; max-width:100%; max-height:740px; object-fit:contain; border-radius:20px; margin:30px auto; }
.na-prose figure { margin:36px 0!important; }
.na-prose figure img { margin:0 auto; }
.na-prose figcaption { font-size:14px; line-height:1.6; color:#666666; margin-top:14px; text-align:center; }
.na-prose table { display:block; max-width:100%; overflow:auto; border-collapse:collapse; font-size:16px; line-height:1.65; border:1px solid #dddddd; border-radius:16px; scrollbar-width:thin; }
.na-prose :is(th,td) { padding:14px 18px; border-bottom:1px solid #dddddd; text-align:left; min-width:150px; vertical-align:top; }
.na-prose th { font-weight:600; background:#f2f2f2; }
.na-prose tr:last-child td { border-bottom:0; }
.na-prose caption { text-align:left; padding:14px; font-size:15px; }
.na-prose code { font-family:Consolas,monospace; font-size:.85em; background:#eeeeee; border-radius:5px; padding:2px 5px; }
.na-prose pre { max-width:100%; overflow:auto; padding:22px; border-radius:18px; background:#222222; color:#f5f5f5; font-size:15px; line-height:1.7; }
.na-prose pre code { background:transparent; color:inherit; padding:0; font-size:inherit; }
.na-prose hr { margin:44px 0; border:0; border-top:1px solid #dddddd; }
.na-endnote { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:20px; padding-top:30px; margin-top:45px; border-top:1px solid #dddddd; }
.na-endnote .na-author__stamp { background:#eeeeee; color:#444444; border-color:#dddddd; box-shadow:2px 2px 0 #cccccc; }
.na-back-top svg { rotate:-45deg; }
.na-page .na-all-articles { margin-top:22px; }
.na-next { padding:80px 0; overflow:clip; }
.na-next__grid { display:grid; grid-template-columns:1.5fr 1fr; gap:70px; align-items:center; }
.na-page .na-eyebrow { display:flex; align-items:center; gap:10px; font-size:14px; margin-bottom:22px; }
.na-eyebrow::before { content:''; width:7px; height:7px; border-radius:50%; background:#ff6418; box-shadow:0 0 0 5px #ff641815; }
.na-next h2 { font-size:clamp(35px,4vw,58px); font-weight:500; max-width:640px; line-height:1.13; letter-spacing:-.04em; }
.na-page .na-next__body { color:#c4c4c4; font-size:18px; line-height:1.7; margin:25px 0 30px; max-width:510px; }
.na-next__actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px 28px; }
.na-next__grid:hover .nb-closing__mark>span:last-child { transform:translate3d(5px,-7px,20px) rotate(-4deg); }
.na-page summary:focus-visible { outline:3px solid #b83d00; outline-offset:5px; border-radius:8px; }
@media(max-width:1100px) { .na-hero__grid { gap:30px; grid-template-columns:1.6fr 1fr; } .na-model { height:330px; } .na-reading__grid { grid-template-columns:235px minmax(0,1fr); gap:48px; } .na-reading__grid--plain { grid-template-columns:minmax(0,740px); } }
@media(max-width:1000px) {
  .na-hero { padding:35px 0 55px; }
  .na-hero h1 { font-size:40px; }
  .na-hero__grid { grid-template-columns:1.6fr 1fr; gap:20px; }
  .na-page .na-lead { font-size:17px; }
  .na-model { height:300px; }
  .na-reading { padding:45px 0 60px; }
  .na-reading__grid { grid-template-columns:minmax(0,740px); justify-content:center; gap:36px; }
  .na-sidebar__sticky { position:static; }
  .na-contents { border:1px solid #dddddd; background:#f7f7f7; border-radius:18px; }
  .na-contents summary { padding:16px 20px; min-height:58px; font-size:16px; }
  .na-toc { max-height:48vh; padding:0 12px 12px; }
  .na-toc a { padding:10px; }
  .na-toc a[aria-current=location] { background:#e9e9e9; }
  .na-meter { margin-top:16px; padding-top:0; border:0; }
  .na-meter>div { font-size:12px; }
  .na-next__grid { gap:35px; }
}
@media(max-width:700px) {
  .na-hero { padding-top:26px; }
  .na-page .na-back { margin-bottom:22px; }
  .na-hero__grid { grid-template-columns:1fr; gap:15px; }
  .na-meta { font-size:13px; margin-bottom:20px; }
  .na-hero h1 { font-size:clamp(32px,7.8vw,46px); line-height:1.16; }
  .na-page .na-lead { font-size:17px; margin-top:22px; }
  .na-byline { margin-top:24px; gap:14px 22px; }
  .na-author { font-size:13px; }
  .na-model { height:265px; max-width:410px; margin:10px auto -10px; }
  .na-hero__fallback .nb-editorial { width:185px; height:215px; }
  .na-cover { margin-top:20px; border-radius:20px; }
  .na-cover img { max-height:330px; }
  .na-reading { padding-top:35px; }
  .na-prose { font-size:18px; line-height:1.85; }
  .na-page .na-prose :is(h1,h2) { font-size:29px; margin-top:43px; margin-bottom:20px; }
  .na-page .na-prose h3 { font-size:23px; margin-top:31px; }
  .na-page .na-prose :is(p,ul,ol) { margin-bottom:23px; }
  .na-page .na-prose blockquote { padding:20px; font-size:19px; }
  .na-prose img { border-radius:15px; }
  .na-endnote { margin-top:32px; padding-top:24px; }
  .na-next { padding:55px 0 65px; }
  .na-next__grid { grid-template-columns:1fr; gap:45px; }
  .na-next h2 { font-size:39px; }
  .na-page .na-next__body { font-size:18px; }
}
@media(prefers-reduced-motion:reduce) { .na-page *, .na-page *::before,.na-page *::after { animation:none!important; transition:none!important; } .na-next__grid:hover .nb-closing__mark>span:last-child { transform:translateZ(20px); } }
@media print { .na-hero__art,.na-sidebar,.na-next,.na-all-articles,.na-back-top,.na-back { display:none!important; } .na-hero { background:white; color:black; padding:15px 0 30px; } .na-hero__grid,.na-reading__grid { display:block; } .na-page .na-lead,.na-meta { color:#333; } .na-page { background:white; } .na-reading { padding-top:20px; } .na-prose { font-size:12pt; } .na-prose h2,.na-prose h3 { break-after:avoid; } .na-prose img,.na-prose blockquote { break-inside:avoid; } }
