/* NR-METH-015 v0.1.5. Page-owned styles; canonical shell remains immutable. */
main .nr015-page {--nr-ink:#07100b;--nr-black:#0d1410;--nr-green:#59ec65;--nr-mint:#c5f6dc;--nr-muted:#91b8a5;--nr-paper:#f5fff8;--nr-line:rgba(197,246,220,.14);--nr-line-strong:rgba(89,236,101,.34);--nr-radius-card:20px;--nr-radius-large:28px;--nr-section-space:72px;--nr-shadow:none;color:var(--nr-paper);font:19px/1.6 Onest,Arial,sans-serif;overflow:clip;}
main .nr015-page *,main .nr015-page *::before,main .nr015-page *::after {box-sizing:border-box;}
main .nr015-page a {color:inherit;text-underline-offset:4px;}
main .nr015-page a:hover {color:var(--nr-green);}
main .nr015-page button:focus-visible,main .nr015-page a:focus-visible,main .nr015-page summary:focus-visible {outline:3px solid var(--nr-green);outline-offset:4px;}
main .nr015-page section[id] {scroll-margin-top:110px;}
main .nr015-container {width:min(1240px,calc(100% - 40px));margin-inline:auto;}
main .nr015-page h1,main .nr015-page h2,main .nr015-page h3 {margin:0;color:var(--nr-paper);font-weight:600;text-wrap:balance;}
main .nr015-page h1,main .nr015-page h2 {letter-spacing:-.045em;}
main .nr015-page h2 {font-size:clamp(32px,3.5vw,46px);line-height:1.08;max-width:1000px;}
main .nr015-page h3 {font-size:23px;line-height:1.25;letter-spacing:-.025em;}
main .nr015-page p {margin:16px 0 0;}
main .nr015-page strong {font-weight:600;color:var(--nr-mint);}
main .nr015-page em {font-style:normal;color:transparent;background:linear-gradient(100deg,#1cba8d,#59ec65);background-clip:text;-webkit-background-clip:text;}
main .nr015-page .nr015-eyebrow {margin:0 0 24px;color:var(--nr-green);font-size:16px;line-height:1.5;font-weight:600;letter-spacing:.06em;text-transform:uppercase;}
main .nr015-hero {position:relative;isolation:isolate;padding:24px 0 56px;border-bottom:1px solid var(--nr-line);background:radial-gradient(circle at 86% 24%,rgba(28,186,141,.06),transparent 42%);}
main .nr015-document-id {white-space:nowrap;}
main .nr015-breadcrumbs {display:flex;flex-wrap:wrap;gap:8px;color:var(--nr-muted);font-size:14px;line-height:1.5;}
main .nr015-hero-layout {display:grid;grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr);gap:64px;align-items:center;margin-top:40px;}
main .nr015-hero h1 {font-size:clamp(40px,5.35vw,70px);line-height:.98;letter-spacing:-.06em;}
main .nr015-page .nr015-lead {max-width:600px;font-size:22px;line-height:1.45;color:var(--nr-mint);margin-top:28px;}
main .nr015-actions {display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:28px;}
main .nr015-button {display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:56px;border:1px solid var(--nr-line-strong);border-radius:16px;padding:15px 24px;background:linear-gradient(100deg,#1cba8d,#59ec65);color:var(--nr-ink)!important;font-size:16px;font-weight:700;line-height:1.5;text-decoration:none;text-align:center;}
main .nr015-button:hover {filter:brightness(1.06);}
main .nr015-button-secondary {background:rgba(255,255,255,.025);color:var(--nr-paper)!important;}
main .nr015-text-link {display:inline-flex;gap:16px;align-items:center;min-height:44px;font-size:16px;line-height:1.5;font-weight:600;color:var(--nr-mint)!important;}
main .nr015-hero-figure {margin:0;align-self:center;}
main .nr015-freeze {display:flex;justify-content:center;align-items:center;gap:12px;color:var(--nr-mint);font-size:16px;line-height:1.4;padding-bottom:24px;border-bottom:1px solid var(--nr-line);}
main .nr015-freeze svg {color:var(--nr-green);flex:none;}
main .nr015-wave-labels {display:flex;justify-content:space-between;padding:24px 40px 0;gap:24px;}
main .nr015-wave-labels span {display:grid;gap:4px;}
main .nr015-wave-labels small {font-size:14px;color:var(--nr-muted);}
main .nr015-wave-labels strong {font-size:22px;color:var(--nr-paper);}
main .nr015-hero-figure>svg {display:block;width:100%;height:auto;}
main .nr015-hero-figure figcaption {display:grid;gap:8px;text-align:center;font-size:17px;line-height:1.5;color:var(--nr-muted);}
main .nr015-hero-figure figcaption>span {font-size:16px;}
main .nr015-outline {border-bottom:1px solid var(--nr-line);}
main .nr015-outline .nr015-container {display:flex;flex-wrap:wrap;gap:0 28px;padding-block:12px;}
main .nr015-outline a {display:flex;align-items:center;min-height:44px;font-size:16px;font-weight:500;text-decoration:none;color:var(--nr-muted);}
main .nr015-section {padding-block:72px;border-bottom:1px solid var(--nr-line);}
main .nr015-soft {background:rgba(13,20,16,.28);}
main .nr015-section-lead {max-width:840px;color:var(--nr-muted);font-size:20px;line-height:1.55;margin-top:24px!important;}
main .nr015-intro {display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:24px;color:var(--nr-muted);}
main .nr015-intro p {margin:0;}
main .nr015-example {display:grid;grid-template-columns:1.08fr .92fr;gap:48px;margin-top:32px;align-items:center;}
main .nr015-question-sheet {padding:24px;border:1px solid var(--nr-line-strong);border-radius:20px;background:linear-gradient(125deg,rgba(28,186,141,.08),transparent);}
main .nr015-label {font-size:16px;line-height:1.5;font-weight:600;color:var(--nr-green);}
main .nr015-question-sheet>div {display:grid;grid-template-columns:40px 1fr;gap:16px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--nr-line);}
main .nr015-id {font-size:16px;color:var(--nr-muted);}
main .nr015-question-sheet>div p {margin:0;}
main .nr015-page .nr015-note {font-size:16px;line-height:1.5;color:var(--nr-muted);}
main .nr015-example-waves>div:not(.nr015-wave-connector) {display:flex;gap:24px;align-items:start;}
main .nr015-example-waves p {color:var(--nr-muted);margin-top:8px;}
main .nr015-step-number {display:grid;place-items:center;width:56px;height:56px;flex:none;border:1px solid var(--nr-line-strong);border-radius:16px;color:var(--nr-green);font-size:28px;}
main .nr015-wave-connector {padding:12px 18px;color:var(--nr-muted);font-size:24px;}
main .nr015-definitions {display:grid;grid-template-columns:repeat(3,1fr);margin:32px 0 0;border-top:1px solid var(--nr-line);}
main .nr015-definitions>div {padding:24px 24px 0;border-right:1px solid var(--nr-line);}
main .nr015-definitions>div:first-child {padding-left:0;}
main .nr015-definitions>div:last-child {border:0;}
main .nr015-definitions dt {font-size:23px;font-weight:600;}
main .nr015-definitions dd {margin:8px 0 0;color:var(--nr-muted);font-size:17px;}
main .nr015-flow {display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:40px 0;border-block:1px solid var(--nr-line);}
main .nr015-flow li {position:relative;padding:24px;border-right:1px solid var(--nr-line);}
main .nr015-flow li:first-child {padding-left:0;}
main .nr015-flow li:last-child {border:0;}
main .nr015-flow li>span {display:block;margin-bottom:24px;font-size:16px;font-weight:600;color:var(--nr-green);}
main .nr015-flow li:not(:last-child)::after {content:'→';position:absolute;right:16px;top:20px;color:var(--nr-muted);font-size:24px;}
main .nr015-flow p {font-size:17px;color:var(--nr-muted);}
main .nr015-section-subhead {display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start;margin:40px 0 24px;}
main .nr015-section-subhead h3 {font-size:28px;}
main .nr015-section-subhead p {margin:0;color:var(--nr-muted);}
main .nr015-levels {border-block:1px solid var(--nr-line);}
main .nr015-levels>div {display:grid;grid-template-columns:190px 210px 1fr;gap:16px 24px;padding:24px 0;border-bottom:1px solid var(--nr-line);}
main .nr015-levels>div:last-child {border:0;}
main .nr015-levels p {margin:0;}
main .nr015-levels .nr015-note {grid-column:3;}
main .nr015-callout {margin:32px 0 0;padding:24px 32px;border-left:3px solid var(--nr-green);background:linear-gradient(95deg,rgba(89,236,101,.06),transparent);}
main .nr015-callout p {max-width:1000px;color:var(--nr-muted);margin-top:12px;}
main .nr015-callout .nr015-text-link {margin-top:16px;}
main .nr015-reading {max-width:1000px;color:var(--nr-muted);margin-top:24px!important;}
main .nr015-passport {margin-top:32px;border:1px solid var(--nr-line-strong);border-radius:20px;overflow:hidden;}
main .nr015-passport>header {display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;padding:24px 32px;border-bottom:1px solid var(--nr-line);background:rgba(89,236,101,.04);}
main .nr015-passport-status {margin-left:auto;font-size:16px;color:var(--nr-muted);}
main .nr015-passport dl {margin:0;padding:0 32px;}
main .nr015-passport dl>div {display:grid;grid-template-columns:280px 1fr;gap:32px;padding:24px 0;border-bottom:1px solid var(--nr-line);}
main .nr015-passport dl>div:last-child {border:0;}
main .nr015-passport dt {font-weight:600;color:var(--nr-mint);}
main .nr015-passport dd {margin:0;color:var(--nr-muted);}
main .nr015-repeat-diagram {display:grid;grid-template-columns:1fr 40px 1.15fr 40px 1fr;gap:24px;align-items:center;margin:40px 0;padding:32px 0;border-block:1px solid var(--nr-line);}
main .nr015-repeat-diagram>div {min-width:0;}
main .nr015-big-number {display:block;margin-bottom:16px;color:var(--nr-green);font-size:64px;line-height:1.1;font-weight:600;}
main .nr015-repeat-diagram p {font-size:17px;color:var(--nr-muted);}
main .nr015-diagram-arrow {color:var(--nr-muted);font-size:28px;text-align:center;}
main .nr015-repeat-dots {display:flex;gap:8px;margin-bottom:30px;}
main .nr015-repeat-dots span {display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--nr-line-strong);border-radius:50%;color:var(--nr-green);font-size:16px;}
main .nr015-procedure {list-style:none;padding:0;margin:32px 0 0;}
main .nr015-procedure li {display:grid;grid-template-columns:72px minmax(0,960px);gap:32px;padding:28px 0;border-top:1px solid var(--nr-line);}
main .nr015-procedure li>span {font-size:32px;color:var(--nr-green);font-weight:500;}
main .nr015-procedure p {margin:12px 0 0;color:var(--nr-muted);}
main .nr015-changes {margin-top:32px;border-block:1px solid var(--nr-line);}
main .nr015-changes>div {display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;padding:24px 0;border-bottom:1px solid var(--nr-line);}
main .nr015-changes>div:last-child {border:0;}
main .nr015-changes-head {font-size:16px;color:var(--nr-green);font-weight:600;}
main .nr015-changes p {margin:0;color:var(--nr-muted);}
main .nr015-result-list {list-style:none;padding:0;margin:32px 0;}
main .nr015-result-list li {display:flex;gap:24px;padding:24px 0;border-top:1px solid var(--nr-line);}
main .nr015-result-list li>span {font-size:16px;color:var(--nr-green);padding-top:4px;}
main .nr015-result-list strong {font-size:23px;}
main .nr015-result-list p {margin:8px 0 0;color:var(--nr-muted);}
main .nr015-next {display:flex;align-items:center;justify-content:space-between;gap:32px;border:1px solid var(--nr-line-strong);border-radius:20px;padding:32px;}
main .nr015-next h3 {margin-top:8px;}
main .nr015-next p {font-size:17px;color:var(--nr-muted);}
main .nr015-next .nr015-button {flex:none;max-width:100%;}
main .nr015-faq {margin-top:32px;}
main .nr015-faq details {border-top:1px solid var(--nr-line);}
main .nr015-faq summary {position:relative;display:block;cursor:pointer;list-style:none;padding:24px 40px 24px 0;min-height:56px;font-size:22px;font-weight:500;line-height:1.35;}
main .nr015-faq summary::-webkit-details-marker {display:none;}
main .nr015-faq summary::after {content:'+';position:absolute;right:8px;top:24px;color:var(--nr-green);font-size:24px;line-height:1;}
main .nr015-faq details[open] summary::after {content:'−';}
main .nr015-faq details p {max-width:1000px;margin:0;padding:0 0 24px;color:var(--nr-muted);}
main .nr015-page .nr015-meta {font-size:16px;color:var(--nr-muted);}
main .nr015-page img {max-width:100%;}
@media(max-width:1100px) {
main .nr015-hero-layout {grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:40px;}
main .nr015-levels>div {grid-template-columns:160px 180px 1fr;gap:16px;}
main .nr015-repeat-diagram {gap:16px;grid-template-columns:1fr 28px 1.15fr 28px 1fr;}
main .nr015-repeat-dots {gap:4px;}
main .nr015-repeat-dots span {width:36px;height:36px;}
main .nr015-next {display:grid;}
main .nr015-next .nr015-button {justify-self:start;}
}
@media(max-width:860px) {
main .nr015-hero-layout {grid-template-columns:1fr;gap:40px;}
main .nr015-hero h1 {font-size:clamp(40px,8vw,60px);}
main .nr015-hero-figure {max-width:540px;width:100%;justify-self:center;}
main .nr015-intro {gap:24px;}
main .nr015-example {gap:32px;grid-template-columns:1fr;}
main .nr015-example-waves {display:grid;grid-template-columns:1fr 24px 1fr;gap:16px;align-items:center;}
main .nr015-example-waves>div:not(.nr015-wave-connector) {display:grid;gap:16px;}
main .nr015-wave-connector {transform:rotate(-90deg);padding:0;}
main .nr015-flow {grid-template-columns:1fr 1fr;}
main .nr015-flow li:nth-child(2) {border-right:0;}
main .nr015-flow li:nth-child(3) {padding-left:0;border-top:1px solid var(--nr-line);}
main .nr015-flow li:nth-child(4) {border-top:1px solid var(--nr-line);}
main .nr015-section-subhead {grid-template-columns:1fr;gap:16px;}
main .nr015-levels>div {grid-template-columns:180px 1fr;}
main .nr015-levels>div>p {grid-column:2;}
main .nr015-passport dl>div {grid-template-columns:200px 1fr;gap:24px;}
main .nr015-repeat-diagram {grid-template-columns:1fr;gap:20px;}
main .nr015-repeat-diagram>div {text-align:center;}
main .nr015-repeat-dots {justify-content:center;margin-bottom:16px;}
main .nr015-repeat-dots span {width:44px;height:44px;}
main .nr015-diagram-arrow {transform:rotate(90deg);}
main .nr015-changes>div {gap:24px;}
}
@media(max-width:600px) {
main .nr015-container {width:calc(100% - 28px);}
main .nr015-page {font-size:18px;--nr-section-space:48px;}
main .nr015-section {padding-block:48px;}
main .nr015-hero {padding-block:24px 40px;}
main .nr015-hero-layout {margin-top:28px;gap:24px;}
main .nr015-hero h1 {font-size:clamp(40px,11.5vw,56px);line-height:1.02;letter-spacing:-.05em;}
main .nr015-page .nr015-eyebrow {font-size:16px;margin-bottom:20px;}
main .nr015-page .nr015-lead {font-size:20px;margin-top:24px;}
main .nr015-actions {display:grid;gap:12px;}
main .nr015-hero .nr015-actions {grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;margin-top:24px;}
main .nr015-hero .nr015-button {padding:12px 16px;gap:10px;}
main .nr015-text-link {justify-content:center;}
main .nr015-hero .nr015-text-link {gap:8px;}
main .nr015-freeze {padding-bottom:16px;}
main .nr015-wave-labels {padding:16px 16px 0;}
main .nr015-wave-labels strong {font-size:20px;}
main .nr015-hero-figure figcaption {font-size:16px;}
main .nr015-outline .nr015-container {display:grid;grid-template-columns:1fr 1fr;gap:0 16px;}
main .nr015-outline a {font-size:16px;}
main .nr015-intro {grid-template-columns:1fr;gap:16px;}
main .nr015-section-lead {font-size:19px;}
main .nr015-example {gap:24px;}
main .nr015-question-sheet {padding:20px;}
main .nr015-question-sheet>div {grid-template-columns:32px 1fr;gap:12px;}
main .nr015-example-waves {grid-template-columns:1fr;gap:16px;}
main .nr015-example-waves>div:not(.nr015-wave-connector) {display:flex;}
main .nr015-wave-connector {transform:none;padding-left:18px;}
main .nr015-step-number {width:48px;height:48px;}
main .nr015-definitions {grid-template-columns:1fr;}
main .nr015-definitions>div,main .nr015-definitions>div:first-child {padding:20px 0;border-right:0;border-bottom:1px solid var(--nr-line);}
main .nr015-flow {grid-template-columns:1fr;}
main .nr015-flow li,main .nr015-flow li:nth-child(3) {padding:24px 0;border:0;border-bottom:1px solid var(--nr-line);}
main .nr015-flow li:nth-child(4) {border:0;}
main .nr015-flow li:not(:last-child)::after {content:'↓';}
main .nr015-flow li>span {margin-bottom:12px;}
main .nr015-levels>div {grid-template-columns:1fr;gap:12px;}
main .nr015-levels>div>p,main .nr015-levels .nr015-note {grid-column:auto;}
main .nr015-levels h3 {font-size:25px;}
main .nr015-callout {padding:20px;margin-top:24px;}
main .nr015-passport>header {padding:20px;gap:8px 16px;}
main .nr015-passport-status {margin-left:0;width:100%;}
main .nr015-passport dl {padding:0 20px;}
main .nr015-passport dl>div {grid-template-columns:1fr;gap:8px;padding:20px 0;}
main .nr015-procedure li {grid-template-columns:40px 1fr;gap:16px;padding:24px 0;}
main .nr015-procedure li>span {font-size:24px;}
main .nr015-changes>div {grid-template-columns:1fr;gap:12px;}
main .nr015-changes-head {display:none!important;}
main .nr015-result-list strong {font-size:22px;line-height:1.3;display:block;}
main .nr015-next {padding:20px;gap:24px;}
main .nr015-next .nr015-button {width:100%;}
main .nr015-faq summary {font-size:20px;}
}
@media(prefers-reduced-motion:reduce) {main .nr015-page *,main .nr015-page *::before,main .nr015-page *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}}

main .nr015-page button {font-family:Onest,Arial,sans-serif;cursor:pointer;}

/* Author: composition and approved assets from /methodology/#author.
   Page-scoped adaptation to the current 8px spacing and typography contract. */
main .nr015-author { padding-block: var(--nr-section-space); }
main .nr015-author-dense {
  position: relative; isolation: isolate; overflow: hidden;
  border: 1px solid var(--nr-line-strong); border-radius: var(--nr-radius-large);
  background: linear-gradient(145deg, rgba(89,236,101,.06), rgba(13,20,16,.96) 42%);
  box-shadow: var(--nr-shadow);
}
main .nr015-author-dense p { margin: 0; font-size: 17px; line-height: 1.55; }
main .nr015-author-dense h3 { margin: 8px 0; font-size: 24px; line-height: 1.2; letter-spacing: -.025em; }
main .nr015-author-dense .method-author-cover-v08 {
  position: relative; display: grid; grid-template-columns: minmax(300px,.78fr) minmax(0,1.22fr);
  border-bottom: 1px solid var(--nr-line);
}
main .nr015-author-dense .method-author-portrait-v08 {
  position: relative; min-width: 0; min-height: 520px; margin: 0; overflow: hidden;
  border-right: 1px solid var(--nr-line); background: var(--nr-ink);
}
main .nr015-author-dense .method-author-portrait-v08 img {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 25%;
}
main .nr015-author-dense .method-author-portrait-v08::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(transparent 54%, rgba(7,16,11,.92));
}
main .nr015-author-dense .method-author-portrait-v08 figcaption {
  position: absolute; z-index: 1; bottom: 24px; left: 24px; right: 24px; display: grid; gap: 8px;
}
main .nr015-author-dense .method-author-portrait-v08 figcaption span { color: var(--nr-green); font-size: 16px; font-weight: 700; }
main .nr015-author-dense .method-author-portrait-v08 figcaption strong { font-size: 24px; line-height: 1.25; }
main .nr015-author-dense .method-author-portrait-v08 figcaption .nr015-meta { font-size: 16px; color: var(--nr-mint); }
main .nr015-author-dense .method-author-identity-v08 { min-width: 0; padding: 40px; align-self: center; }
main .nr015-author-dense .method-author-identity-v08 > header { padding-right: 128px; }
main .nr015-author-dense .method-author-identity-v08 > header > span { color: var(--nr-green); font-size: 16px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
main .nr015-author-dense .method-author-identity-v08 h2 { margin: 16px 0; font-size: clamp(40px,4.2vw,60px); line-height: 1.04; letter-spacing: -.045em; }
main .nr015-author-dense .method-author-identity-v08 > header > p { color: var(--nr-mint); }
main .nr015-author-dense .method-author-role-v08 { margin-top: 24px; padding: 24px; border: 1px solid var(--nr-line-strong); border-radius: var(--nr-radius-card); background: rgba(89,236,101,.04); }
main .nr015-author-dense .method-author-role-v08 span { color: var(--nr-green); font-size: 16px; font-weight: 700; }
main .nr015-author-dense .method-author-role-v08 .nr015-meta { display: block; font-size: 16px; color: var(--nr-mint); line-height: 1.5; }
main .nr015-author-dense .author-affiliation-note { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--nr-line); color: var(--nr-muted); font-size: 16px; }
main .nr015-author-dense .method-author-affiliations { position: absolute; z-index: 2; inset: 24px 24px auto; display: flex; justify-content: space-between; pointer-events: none; }
main .nr015-author-dense .author-affiliation { display: grid; place-items: center; width: 112px; height: 112px; pointer-events: auto; }
main .nr015-author-dense .author-affiliation img { width: 100%; height: 100%; object-fit: contain; }
main .nr015-author-dense .method-author-credentials-v08 { display: grid; grid-template-columns: minmax(216px,.55fr) minmax(0,1.45fr); border-bottom: 1px solid var(--nr-line); }
main .nr015-author-dense .method-author-credentials-v08 > header { padding: 24px; border-right: 1px solid var(--nr-line); align-content: center; background: rgba(89,236,101,.03); }
main .nr015-author-dense .method-author-credentials-v08 > header > span { font-size: 16px; font-weight: 700; color: var(--nr-green); }
main .nr015-author-dense .method-author-credentials-v08 > header > p { font-size: 16px; color: var(--nr-muted); }
main .nr015-author-dense .method-author-proof-v08 { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 0; }
main .nr015-author-dense .method-author-proof-v08 > div { min-width: 0; padding: 24px; border-right: 1px solid var(--nr-line); border-bottom: 1px solid var(--nr-line); }
main .nr015-author-dense .method-author-proof-v08 > div:nth-child(3n) { border-right: 0; }
main .nr015-author-dense .method-author-proof-v08 > div:nth-last-child(-n+3) { border-bottom: 0; }
main .nr015-author-dense .method-author-proof-v08 dt { color: var(--nr-green); font-size: 16px; font-weight: 700; margin-bottom: 8px; overflow-wrap: anywhere; }
main .nr015-author-dense .method-author-proof-v08 dd { margin: 0; }
main .nr015-author-dense .method-author-proof-v08 strong { display: block; font-size: 19px; line-height: 1.3; }
main .nr015-author-dense .method-author-proof-v08 dd > span { display: block; margin-top: 8px; color: var(--nr-muted); font-size: 16px; line-height: 1.5; }
main .nr015-author-dense .method-author-manifesto-v08 { display: grid; grid-template-columns: minmax(0,1.13fr) minmax(0,.87fr); border-bottom: 1px solid var(--nr-line); }
main .nr015-author-dense .method-author-quote-v08 { margin: 0; padding: 32px; border-right: 1px solid var(--nr-line); }
main .nr015-author-dense .method-author-quote-v08 > span,
main .nr015-author-dense .method-author-position-v08 > span,
main .nr015-author-dense .method-author-institution-strip-v08 > div > span { font-size: 16px; font-weight: 700; color: var(--nr-green); }
main .nr015-author-dense .method-author-quote-v08 p,
main .nr015-author-dense .method-author-position-v08 p { margin-top: 16px; }
main .nr015-author-dense .method-author-position-v08 { padding: 32px; background: linear-gradient(135deg,rgba(89,236,101,.07),transparent); }
main .nr015-author-dense .method-author-institution-strip-v08 { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr); gap: 32px; padding: 32px; border-bottom: 1px solid var(--nr-line); }
main .nr015-author-dense .method-author-institution-strip-v08 > div { min-width: 0; }
main .nr015-author-dense .method-author-institution-strip-v08 p { margin-top: 16px; color: var(--nr-mint); }
main .nr015-author-dense .method-author-source-links { display: grid; gap: 8px; align-content: start; border-left: 1px solid var(--nr-line); padding-left: 24px; }
main .nr015-author-dense .method-author-source-links a,
main .nr015-author-dense .method-author-actions-v08 > a:last-child {
  display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 48px;
  padding: 8px 16px; border: 1px solid var(--nr-line); border-radius: 16px;
  color: var(--nr-mint); font-size: 16px; font-weight: 700; line-height: 1.4; text-decoration: none; overflow-wrap: anywhere;
}
main .nr015-author-dense .method-author-signature { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px; padding: 24px 32px; border-bottom: 1px solid var(--nr-line); background: rgba(89,236,101,.03); }
main .nr015-author-dense .method-author-signature > span { font-size: 24px; }
main .nr015-author-dense .method-author-signature-mark { width: 160px; height: auto; }
main .nr015-author-dense .method-author-signature .nr015-meta { color: var(--nr-muted); font-size: 16px; }
main .nr015-author-dense .method-author-actions-v08 { display: grid; grid-template-columns: minmax(0,.42fr) minmax(0,.58fr); gap: 16px; padding: 24px; }
main .nr015-author-dense .method-author-actions-v08 .nr015-button { padding-block: 16px; text-align: center; }
@media(max-width:1200px) {
  main .nr015-author-dense .method-author-identity-v08 { padding: 32px; }
  main .nr015-author-dense .method-author-identity-v08 > header { padding-right: 96px; }
  main .nr015-author-dense .author-affiliation { width: 88px; height: 88px; }
  main .nr015-author-dense .method-author-credentials-v08 { grid-template-columns: 1fr; }
  main .nr015-author-dense .method-author-credentials-v08 > header { border-right: 0; border-bottom: 1px solid var(--nr-line); }
}
@media(max-width:992px) {
  main .nr015-author-dense .method-author-cover-v08 { grid-template-columns: minmax(240px,.8fr) minmax(0,1.2fr); }
  main .nr015-author-dense .method-author-identity-v08 > header { padding-right: 0; padding-top: 88px; }
  main .nr015-author-dense .method-author-manifesto-v08,
  main .nr015-author-dense .method-author-institution-strip-v08 { grid-template-columns: 1fr; }
  main .nr015-author-dense .method-author-quote-v08 { border-right: 0; border-bottom: 1px solid var(--nr-line); }
  main .nr015-author-dense .method-author-source-links { border-left: 0; padding-left: 0; }
}
@media(max-width:768px) {
  main .nr015-author-dense .method-author-cover-v08 { grid-template-columns: 1fr; }
  main .nr015-author-dense .method-author-portrait-v08 { min-height: 0; height: min(118vw,560px); border-right: 0; border-bottom: 1px solid var(--nr-line); }
  main .nr015-author-dense .method-author-identity-v08 { padding: 24px; }
  main .nr015-author-dense .method-author-identity-v08 > header { padding-top: 0; }
  main .nr015-author-dense .method-author-role-v08 { padding: 24px; }
  main .nr015-author-dense .method-author-proof-v08 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  main .nr015-author-dense .method-author-proof-v08 > div { border-right: 1px solid var(--nr-line); border-bottom: 1px solid var(--nr-line); }
  main .nr015-author-dense .method-author-proof-v08 > div:nth-child(3n) { border-right: 1px solid var(--nr-line); }
  main .nr015-author-dense .method-author-proof-v08 > div:nth-last-child(-n+3) { border-bottom: 1px solid var(--nr-line); }
  main .nr015-author-dense .method-author-proof-v08 > div:nth-child(2n) { border-right: 0; }
  main .nr015-author-dense .method-author-proof-v08 > div:nth-last-child(-n+2) { border-bottom: 0; }
  main .nr015-author-dense .method-author-actions-v08 { grid-template-columns: 1fr; }
}
@media(max-width:576px) {
  main .nr015-author-dense .method-author-proof-v08 { grid-template-columns: 1fr; }
  main .nr015-author-dense .method-author-proof-v08 > div,
  main .nr015-author-dense .method-author-proof-v08 > div:nth-child(3n),
  main .nr015-author-dense .method-author-proof-v08 > div:nth-last-child(-n+2) { border-right: 0; border-bottom: 1px solid var(--nr-line); }
  main .nr015-author-dense .method-author-proof-v08 > div:last-child { border-bottom: 0; }
  main .nr015-author-dense .method-author-role-v08 { padding: 16px; }
  main .nr015-author-dense .method-author-quote-v08,
  main .nr015-author-dense .method-author-position-v08,
  main .nr015-author-dense .method-author-institution-strip-v08,
  main .nr015-author-dense .method-author-signature { padding: 24px; }
  main .nr015-author-dense .method-author-affiliations { inset: 16px 16px auto; }
  main .nr015-author-dense .author-affiliation { width: 80px; height: 80px; }
  main .nr015-author-dense .method-author-signature { justify-content: center; text-align: center; }
}

/* Worked example and reusable template: page-owned components only. */
main .nr015-worked-example {margin-block:32px;padding:28px 32px;border:1px solid var(--nr-line-strong);border-radius:20px;background:linear-gradient(125deg,rgba(28,186,141,.05),transparent);}
main .nr015-worked-example h3,main .nr015-template h3 {margin-top:8px;}
main .nr015-worked-example>p,main .nr015-template>p {color:var(--nr-muted);max-width:1020px;}
main .nr015-example-details {margin-top:24px;border-top:1px solid var(--nr-line);}
main .nr015-example-details summary {display:flex;align-items:center;gap:16px;cursor:pointer;list-style:none;min-height:56px;padding:16px 0;color:var(--nr-mint);font-size:18px;font-weight:600;line-height:1.4;}
main .nr015-example-details summary::-webkit-details-marker {display:none;}
main .nr015-example-details summary::after {content:'+';font-size:24px;color:var(--nr-green);margin-left:auto;flex:none;}
main .nr015-example-details[open] summary::after {content:'−';}
main .nr015-observation {margin:0;}
main .nr015-observation>div {display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;padding:20px 0;border-top:1px solid var(--nr-line);}
main .nr015-observation dt {font-weight:600;color:var(--nr-mint);}
main .nr015-observation dd {margin:0;color:var(--nr-muted);overflow-wrap:anywhere;}
main .nr015-observation blockquote {margin:0 0 16px;padding-left:20px;border-left:2px solid var(--nr-green);color:var(--nr-paper);}
main .nr015-wave-results {display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:24px;padding-block:24px;border-block:1px solid var(--nr-line);}
main .nr015-wave-results>div+div {border-left:1px solid var(--nr-line);padding-left:32px;}
main .nr015-wave-results h4 {margin:0;font-size:20px;line-height:1.4;font-weight:600;color:var(--nr-mint);}
main .nr015-wave-results p {font-size:18px;color:var(--nr-muted);}
main .nr015-run-codes {display:flex;gap:12px;margin-top:20px;}
main .nr015-run-codes span {display:grid;place-items:center;min-width:40px;height:40px;border:1px solid var(--nr-line-strong);border-radius:50%;font-size:18px;color:var(--nr-mint);}
main .nr015-template {margin-block:32px;padding-block:32px;border-block:1px solid var(--nr-line);scroll-margin-top:110px;}
main .nr015-template .nr015-example-details label {display:block;margin:8px 0 16px;}
main .nr015-page textarea {display:block;width:100%;resize:vertical;min-height:240px;margin:0;padding:20px;border:1px solid var(--nr-line-strong);border-radius:16px;background:var(--nr-black);color:var(--nr-mint);font:16px/1.6 Onest,Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;}
main .nr015-page textarea:focus-visible {outline:3px solid var(--nr-green);outline-offset:4px;}
main .nr015-page .nr015-copy-status {font-size:16px;line-height:1.5;min-height:24px;margin-top:12px;}
@media(max-width:600px) {
 main .nr015-worked-example {padding:24px 20px;margin-block:24px;}
 main .nr015-observation>div {grid-template-columns:1fr;gap:8px;}
 main .nr015-wave-results {grid-template-columns:1fr;gap:24px;}
 main .nr015-wave-results>div+div {border-left:0;padding:24px 0 0;border-top:1px solid var(--nr-line);}
 main .nr015-run-codes {gap:10px;}
 main .nr015-run-codes span {min-width:34px;height:34px;}
 main .nr015-template {margin-block:24px;padding-block:24px;}
 main .nr015-page textarea {padding:16px;}
}

/* Source provenance uses the existing page typography and disclosure pattern. */
main .nr015-method-sources {margin-top:40px;padding-top:32px;border-top:1px solid var(--nr-line);max-width:1000px;scroll-margin-top:110px;}
main .nr015-method-sources>p {color:var(--nr-muted);font-size:17px;}
main .nr015-source-list {margin:0;padding:0 0 0 24px;color:var(--nr-muted);font-size:17px;line-height:1.6;overflow-wrap:anywhere;}
main .nr015-source-list li {padding:0 0 16px 8px;}
