/* Article-only reading surfaces; the shared site theme remains untouched. */
body.dna-articles-page { background:#f2f2f2; }
.dna-articles-page .top-page-wrapper { background:#f2f2f2; }
.dna-articles-page .body-container { overflow:clip; }
.dna-articles-page .body-lines { display:none !important; }
.dna-articles-page .page-loader-container { display:none !important; }
.dna-articles-page .editorial-banner { min-height:400px; height:auto; margin-bottom:0; }
.dna-articles-page .editorial-banner .page-title-bg { filter:grayscale(1); }
.dna-articles-page .editorial-banner .page-title-bg::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(12,12,12,.42),rgba(12,12,12,.08)); }
.dna-articles-page .editorial-banner .page-title-row { padding:28px 60px 70px; }
.dna-articles-page .editorial-banner .page-title-box { max-width:1000px; }
.dna-articles-page .editorial-banner .page-title { color:#fff; font-family:Sora,sans-serif; font-size:64px; line-height:1.16; font-weight:400; letter-spacing:-.045em; }
.dna-articles-page .editorial-banner-detail .page-title { font-size:clamp(36px,3.7vw,56px); line-height:1.24; }
.dna-articles-page .editorial-banner .page-title-box-icon { width:210px; height:auto; margin-bottom:20px; }
.dna-articles-page .breadcrumbs { font-size:14px; }
.dna-articles-page .editorial-banner .breadcrumbs { background:#f2f2f2; }
.dna-articles-page .editorial-banner .breadcrumbs a:before { background:#333; }
.dna-articles-page .editorial-banner .breadcrumbs-wrapper:before { box-shadow:0 20px 0 0 #f2f2f2; }
.dna-articles-page .editorial-banner .breadcrumbs-wrapper:after { box-shadow:0 20px 0 0 #f2f2f2; }
.dna-articles-page .header .main-menu { display:flex; flex-wrap:nowrap; align-items:center; }
.dna-articles-page .header .main-menu > li { flex-shrink:0; }
.dna-articles-page .header .header-menu-container { width:auto; flex:1; }
.dna-articles-page .header .header-menu-container nav { display:flex; justify-content:flex-end; }
.dna-articles-page .header .logo-container { margin-right:25px; }
.dna-articles-page .header .logo-container .logo { width:250px; height:60px; overflow:hidden; }
.dna-articles-page .header .logo-container .logo img { width:700px; max-width:none; height:100px; margin-top:-20px; }
.dna-articles-page .header .header-row > .header-icons-container:first-child { width:auto; }
.dna-articles-page .header .main-menu > li > a { padding-left:18px; padding-right:18px; }
.dna-articles-page .header .header-row { min-height:112px; }
.dna-editorial { --ink:#1f1f1f; --muted:#5c5c5c; --line:#e3e3e3; --wash:#f2f2f2; --accent:#222222; color:var(--ink); font:500 17px/1.85 Manrope,sans-serif; background:#f2f2f2; padding:48px 0 80px; overflow-wrap:break-word; }
.dna-editorial *, .dna-editorial *::before, .dna-editorial *::after { box-sizing:border-box; }
.dna-editorial h2,.dna-editorial h3,.dna-editorial h4 { color:var(--ink); font-family:Sora,sans-serif; letter-spacing:-.035em; font-weight:400; }
.dna-editorial p { margin:0 0 24px; }
.dna-editorial a { color:var(--accent); text-decoration:underline; text-underline-offset:4px; }
.dna-editorial a:hover { color:#000000; }
.dna-editorial :focus-visible,.dna-articles-page .editorial-banner a:focus-visible { outline:3px solid #222222; outline-offset:4px; }
.dna-editorial .editorial-shell { width:min(1280px,calc(100% - 80px)); margin:auto; }
.dna-editorial#article-main { scroll-margin-top:145px; }
.dna-editorial .eyebrow { font-size:12px; font-weight:700; line-height:1.65; letter-spacing:.09em; text-transform:uppercase; color:var(--muted); }
.dna-editorial .editorial-intro { margin-bottom:36px; }
.dna-editorial .editorial-intro h2 { font-size:36px; line-height:1.25; margin:14px 0 18px; }
.dna-editorial .editorial-deck { max-width:800px; font-size:20px; line-height:1.75; color:#494949; }
.dna-editorial .editorial-meta { display:flex; align-items:center; gap:10px 24px; flex-wrap:wrap; font-size:14px; color:var(--muted); }
.dna-editorial .editorial-meta strong { color:var(--ink); font-weight:700; }
.dna-editorial .article-layout { display:grid; grid-template-columns:240px minmax(0,1fr); gap:36px; align-items:start; }
.dna-editorial .article-toc { position:sticky; top:145px; max-height:calc(100dvh - 165px); overflow:auto; font-size:14px; line-height:1.55; padding:24px 18px; background:#fff; border-radius:20px; scrollbar-width:thin; }
.dna-editorial .article-toc ol { padding:0; margin:14px 0 18px; list-style:none; }
.dna-editorial .article-toc li { margin:0; padding:0; }
.dna-editorial .article-toc a { display:block; color:#585858; text-decoration:none; border-left:2px solid transparent; padding:10px 10px; min-height:44px; }
.dna-editorial .article-toc a:hover,.dna-editorial .article-toc a.is-current { color:#1f1f1f; background:#f3f3f3; border-color:#222222; border-radius:0 8px 8px 0; }
.dna-editorial .article-toc .toc-bottom { border-top:1px solid var(--line); padding-top:14px; }
.dna-editorial .article-content { min-width:0; background:#fff; border-radius:24px; padding:44px 52px; }
.dna-editorial .article-content > section { scroll-margin-top:150px; padding-bottom:36px; }
.dna-editorial .article-content > section + section { border-top:1px solid var(--line); padding-top:28px; }
.dna-editorial .article-content h2 { font-size:30px; line-height:1.35; margin:12px 0 24px; }
.dna-editorial .article-content h3 { font-size:23px; line-height:1.45; margin:30px 0 18px; }
.dna-editorial .article-content .article-lead { font-size:20px; line-height:1.8; color:#3a3a3a; }
.dna-editorial .article-content li { margin-bottom:12px; }
.dna-editorial .article-content ul,.dna-editorial .article-content ol { padding-left:24px; }
.dna-editorial .article-note { padding:24px; margin:28px 0; background:#f3f3f3; border-left:3px solid #333333; border-radius:0 12px 12px 0; font-size:15px; line-height:1.8; }
.dna-editorial .article-note strong { display:block; margin-bottom:8px; }
.dna-editorial .article-note p:last-child,.dna-editorial figure p:last-child { margin-bottom:0; }
.dna-editorial .equation { background:#f7f7f7; border:1px solid var(--line); border-radius:12px; margin:28px 0; overflow:hidden; }
.dna-editorial .equation > span { display:block; padding:14px 18px; font-size:12px; font-weight:700; line-height:1.6; border-bottom:1px solid var(--line); }
.dna-editorial pre { border:0; background:none; padding:20px; margin:0; font:13px/1.8 ui-monospace,SFMono-Regular,Menlo,monospace; overflow:auto; color:#333333; white-space:pre; }
.dna-editorial code { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.88em; background:#f1f1f1; padding:2px 4px; border-radius:3px; overflow-wrap:anywhere; }
.dna-editorial .table-wrap { overflow:auto; margin:28px 0; border:1px solid var(--line); border-radius:12px; overscroll-behavior-x:contain; }
.dna-editorial .table-wrap::before { content:"Scroll table horizontally if needed \2192"; display:block; position:sticky; left:0; width:100%; padding:10px 16px; font-size:12px; color:#626262; background:#f3f3f3; }
.dna-editorial table { width:100%; margin:0; border:0; border-collapse:collapse; text-align:left; font-size:14px; line-height:1.7; }
.dna-editorial caption { text-align:left; padding:16px; color:var(--muted); background:#fbfbfb; font-size:13px; }
.dna-editorial th,.dna-editorial td { padding:16px; border:0; border-top:1px solid var(--line); vertical-align:top; min-width:155px; }
.dna-editorial th { color:var(--ink); background:#f2f2f2; font-weight:700; }
.dna-editorial td:first-child { font-weight:700; }
.dna-editorial figure { margin:28px 0; padding:24px; border:1px solid var(--line); border-radius:16px; background:#f7f7f7; }
.dna-editorial figcaption { font-size:12px; font-weight:700; letter-spacing:.025em; color:var(--muted); margin-bottom:20px; }
.dna-editorial figure p { font-size:14px; line-height:1.75; }
.dna-editorial .article-content .architecture-flow { display:grid; grid-template-columns:1fr; list-style:none; padding:0; margin:0 0 20px; gap:10px; }
.dna-editorial .architecture-flow li { display:grid; grid-template-columns:140px 1fr; gap:3px 18px; margin:0; padding:16px; background:#fff; border:1px solid var(--line); border-radius:10px; }
.dna-editorial .architecture-flow span { grid-row:span 2; font-size:11px; font-weight:700; color:var(--muted); padding-top:2px; }
.dna-editorial .architecture-flow strong { font-size:15px; line-height:1.5; }
.dna-editorial .architecture-flow small { font-size:13px; line-height:1.65; color:var(--muted); }
.dna-editorial .state-track { display:flex; flex-wrap:wrap; gap:12px; align-items:center; font-size:14px; }
.dna-editorial .state-track strong { background:#fff; border:1px solid var(--line); padding:12px 16px; border-radius:10px; }
.dna-editorial .state-branches { display:flex; flex-wrap:wrap; gap:16px; }
.dna-editorial .state-branches div { flex:1; min-width:150px; }
.dna-editorial .article-end { border-top:1px solid var(--line); margin-top:20px; padding-top:24px; display:flex; gap:12px 24px; flex-wrap:wrap; font-size:14px; }
.dna-editorial .article-end a { padding:8px 0; min-height:44px; }
.dna-editorial .featured-article { display:grid; grid-template-columns:1fr 1fr; border-radius:24px; background:#fff; overflow:hidden; margin-bottom:48px; }
.dna-editorial .featured-copy { display:flex; flex-direction:column; align-items:flex-start; padding:42px; }
.dna-editorial .featured-copy h2 { font-size:36px; line-height:1.28; margin:20px 0; }
.dna-editorial .featured-copy h2 a { color:var(--ink); text-decoration:none; }
.dna-editorial .featured-copy h2 a:hover { color:var(--accent); }
.dna-editorial .featured-copy p { font-size:16px; }
.dna-editorial .featured-copy p.eyebrow { font-size:12px; }
.dna-editorial .editorial-button { display:inline-flex; align-items:center; justify-content:space-between; gap:32px; background:#303030; color:#fff; padding:16px 24px; border-radius:40px; text-decoration:none; font-size:15px; font-weight:700; min-height:54px; margin-top:auto; }
.dna-editorial .editorial-button:hover { color:#fff; background:#111; }
.dna-editorial .featured-visual { display:flex; flex-direction:column; justify-content:center; padding:38px; color:#fff; background:#1c1c1c; }
.dna-editorial .featured-visual .eyebrow { color:#d1d1d1; }
.dna-editorial .protocol-visual { width:100%; max-width:430px; align-self:center; padding:30px 0; }
.dna-editorial .pv-top { display:flex; gap:12px; }
.dna-editorial .pv-node { border:1px solid #777777; border-radius:12px; padding:16px 10px; text-align:center; font-size:13px; background:#2e2e2e; flex:1; }
.dna-editorial .pv-line { height:32px; width:1px; margin:auto; background:#979797; }
.dna-editorial .pv-core { padding:24px 12px; text-align:center; border:1px solid #a7a7a7; border-radius:16px; background:#2e2e2e; }
.dna-editorial .pv-core strong { font:400 32px/1.4 Sora,sans-serif; display:block; letter-spacing:-.04em; }
.dna-editorial .pv-core span { font-size:13px; color:#e3e3e3; }
.dna-editorial .pv-bottom { display:flex; justify-content:center; gap:12px; }
.dna-editorial .pv-trustee { border:1px solid #979797; border-radius:50%; height:46px; width:46px; display:grid; place-items:center; font-size:13px; background:#2e2e2e; }
.dna-editorial .pv-label { text-align:center; font-size:11px; color:#d1d1d1; margin-top:14px; }
.dna-editorial .research-principles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.dna-editorial .research-principles h3 { font-size:21px; line-height:1.4; margin:12px 0; }
.dna-editorial .research-principles p { font-size:15px; color:var(--muted); }
.mobile-reading-tools { display:none; }
.editorial-skip { position:fixed; left:20px; top:-100px; background:#fff; padding:12px 20px; z-index:999999; }
.editorial-skip:focus { top:10px; }
.dna-editorial .diagram-player { margin-bottom:22px; }
.dna-editorial .diagram-heading { display:flex; flex-wrap:wrap; justify-content:space-between; gap:5px 16px; margin-bottom:14px; color:#646464; font-size:10px; font-weight:700; letter-spacing:.04em; }
.dna-editorial .diagram-heading span:last-child { font-weight:400; letter-spacing:0; font-size:12px; }
.dna-editorial .diagram-controls,.dna-editorial .diagram-paths { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:12px; }
.dna-editorial .diagram-player button { appearance:none; min-height:44px; padding:10px 15px; border:1px solid #c5c5c5; border-radius:8px; background:#fff; color:#222222; font:600 13px/1.45 Sora,sans-serif; cursor:pointer; }
.dna-editorial .diagram-player button:hover:not(:disabled) { background:#ececec; border-color:#333333; }
.dna-editorial .diagram-player button:focus-visible { outline:3px solid #222222; outline-offset:3px; }
.dna-editorial .diagram-player button:disabled { color:#747474; background:#f0f0f0; cursor:default; }
.dna-editorial .diagram-player [data-action="play"],.dna-editorial .diagram-paths [aria-pressed="true"] { background:#222222; border-color:#222222; color:#fff; }
.dna-editorial .diagram-player [data-action="play"]:hover:not(:disabled),.dna-editorial .diagram-paths [aria-pressed="true"]:hover { background:#000000; color:#fff; }
.dna-editorial .diagram-player [data-action="play"]:disabled { background:#eaeaea; color:#676767; border-color:#c5c5c5; }
.dna-editorial .diagram-player .diagram-status { min-height:3.5em; margin:0 0 10px; font-size:13px; line-height:1.75; font-weight:600; color:#333333; }
.dna-editorial .diagram-progress { height:4px; background:#e6e6e6; border-radius:4px; overflow:hidden; }
.dna-editorial .diagram-progress span { display:block; height:100%; width:0; background:#262626; transition:width .55s ease; }
.dna-editorial .diagram-enhanced .architecture-flow li,.dna-editorial .diagram-enhanced .state-track strong,.dna-editorial .diagram-enhanced .state-branches > div { transition:background-color .35s ease,border-color .35s ease,box-shadow .35s ease; }
.dna-editorial .diagram-enhanced .state-branches { margin-top:18px; }
.dna-editorial .diagram-enhanced .state-branches > div { padding:16px; border:1px solid var(--line); border-radius:10px; background:#fff; }
.dna-editorial .diagram-enhanced .state-branches p { margin:8px 0 0; }
.dna-editorial .diagram-enhanced .is-current { border-color:#262626!important; background:#f1f1f1!important; box-shadow:inset 4px 0 #262626; }
.dna-editorial .diagram-enhanced .is-complete { border-color:#bababa; background:#f8f8f8; }
.dna-editorial .diagram-enhanced .state-branches .is-unused { background:repeating-linear-gradient(135deg,#f7f7f7,#f7f7f7 7px,#f2f2f2 7px,#f2f2f2 8px); }
.dna-editorial .diagram-running .is-current { animation:diagram-highlight 2.2s ease-in-out infinite; }
@keyframes diagram-highlight { 0%,100% { box-shadow:inset 4px 0 #262626,0 0 0 0 #26262600; } 50% { box-shadow:inset 4px 0 #262626,0 0 0 3px #2626261c; } }
@media (prefers-reduced-motion:reduce) {
  .dna-editorial .diagram-enhanced * { animation:none!important; transition:none!important; }
}
@media (max-width:1199px) {
  .dna-editorial .editorial-shell { width:calc(100% - 48px); }
  .dna-editorial .article-layout { grid-template-columns:210px minmax(0,1fr); gap:24px; }
  .dna-editorial .article-toc { top:110px; max-height:calc(100dvh - 130px); font-size:13px; }
  .dna-editorial .article-content { padding:32px; }
  .dna-editorial .featured-copy { padding:32px; }
  .dna-editorial .featured-copy h2 { font-size:30px; }
}
@media (max-width:1023px) {
  .dna-editorial .article-layout { display:block; }
  .dna-editorial .article-toc { display:none; }
  .dna-editorial .article-content { max-width:820px; margin:auto; }
  .dna-editorial .mobile-reading-tools { display:flex; align-items:flex-start; justify-content:space-between; position:sticky; top:0; z-index:4; background:#fff; border:1px solid var(--line); border-radius:12px; margin:0 auto 24px; max-width:820px; box-shadow:0 5px 18px #2424240a; }
  .dna-editorial .mobile-contents { flex:1; min-width:0; }
  .dna-editorial .mobile-contents summary { display:flex; align-items:center; justify-content:space-between; cursor:pointer; list-style:none; padding:16px 18px; min-height:56px; font-size:15px; font-weight:700; }
  .dna-editorial .mobile-contents summary::-webkit-details-marker { display:none; }
  .dna-editorial .mobile-contents summary span { font-size:22px; line-height:1; margin-left:20px; }
  .dna-editorial .mobile-contents[open] summary span { transform:rotate(45deg); }
  .dna-editorial .mobile-contents nav { padding:0 14px 14px; max-height:55dvh; overflow:auto; }
  .dna-editorial .mobile-contents ol { list-style:none; padding:0; margin:0; }
  .dna-editorial .mobile-contents li { margin:0; }
  .dna-editorial .mobile-contents a { display:block; padding:12px 8px; min-height:46px; border-top:1px solid #f0f0f0; font-size:14px; line-height:1.5; text-decoration:none; color:#494949; }
  .dna-editorial .reading-top { flex-shrink:0; padding:16px 18px; min-height:56px; font-size:14px; color:#303030; text-decoration:none; }
  .dna-editorial .reading-progress { position:absolute; left:8px; right:8px; bottom:0; height:3px; overflow:hidden; border-radius:4px; }
  .dna-editorial .reading-progress span { display:block; height:100%; width:0; background:#333333; }
  .dna-editorial .article-content > section { scroll-margin-top:82px; }
  .dna-editorial#article-main { scroll-margin-top:16px; }
  .dna-articles-page .mobile-header.sticky-header { display:none!important; }
}
@media (max-width:767px) {
  .dna-editorial .diagram-player .diagram-status { min-height:5.25em; }
  .dna-articles-page .mobile-header .mobile-header-row { padding:16px 20px; min-height:80px; }
  .dna-articles-page .mobile-header .logo-container .logo { width:190px; max-width:calc(100vw - 120px); height:52px; overflow:hidden; }
  .dna-articles-page .mobile-header .logo-container .logo img { width:540px; max-width:none; height:auto; margin-top:-12px; }
  .dna-articles-page .editorial-banner { min-height:290px; margin-top:16px; border-radius:20px; }
  .dna-articles-page .editorial-banner .page-title-row { padding:0 24px 46px; }
  .dna-articles-page .editorial-banner .page-title-box-icon { width:170px; margin-bottom:15px; }
  .dna-articles-page .editorial-banner .page-title { font-size:42px; }
  .dna-articles-page .editorial-banner-detail { min-height:320px; }
  .dna-articles-page .editorial-banner-detail .page-title { font-size:30px; line-height:1.25; }
  .dna-articles-page .editorial-banner .breadcrumbs { font-size:12px; }
  .dna-editorial { font-size:17px; line-height:1.85; padding:30px 0 50px; }
  .dna-editorial .editorial-shell { width:calc(100% - 32px); }
  .dna-editorial .editorial-intro { margin-bottom:24px; padding:0 4px; }
  .dna-editorial .editorial-intro h2 { font-size:28px; }
  .dna-editorial .editorial-deck { font-size:18px; line-height:1.75; margin-bottom:20px; }
  .dna-editorial .editorial-meta { font-size:13px; gap:8px 18px; }
  .dna-editorial .editorial-meta > :last-child { flex-basis:100%; }
  .dna-editorial .eyebrow { font-size:11px; }
  .dna-editorial .article-content { padding:26px 22px; border-radius:16px; }
  .dna-editorial .article-content .article-lead { font-size:18px; line-height:1.85; }
  .dna-editorial .article-content h2 { font-size:25px; line-height:1.4; margin:8px 0 22px; }
  .dna-editorial .article-content h3 { font-size:21px; }
  .dna-editorial .article-content > section { padding-bottom:24px; }
  .dna-editorial .article-note { padding:18px; font-size:15px; }
  .dna-editorial figure { padding:18px 14px; }
  .dna-editorial .architecture-flow li { grid-template-columns:1fr; gap:5px; padding:14px; }
  .dna-editorial .architecture-flow span { grid-row:auto; }
  .dna-editorial .state-track { flex-direction:column; }
  .dna-editorial .state-track strong { width:100%; text-align:center; }
  .dna-editorial .state-track > span { transform:rotate(90deg); }
  .dna-editorial pre { padding:16px; font-size:12px; }
  .dna-editorial .featured-article { grid-template-columns:1fr; border-radius:20px; margin-bottom:36px; }
  .dna-editorial .featured-copy { grid-row:1; padding:28px 24px; }
  .dna-editorial .featured-copy h2 { font-size:30px; }
  .dna-editorial .featured-copy .editorial-button { width:100%; margin-top:4px; }
  .dna-editorial .featured-visual { padding:24px; }
  .dna-editorial .protocol-visual { padding:20px 0 0; }
  .dna-editorial .research-principles { grid-template-columns:1fr; gap:16px; padding:0 8px; }
  .dna-editorial .research-principles > div + div { border-top:1px solid var(--line); padding-top:20px; }
}
@media (max-width:374px) {
  .dna-articles-page .editorial-banner .page-title-row { padding-left:20px; padding-right:20px; }
  .dna-articles-page .editorial-banner-detail .page-title { font-size:27px; }
  .dna-editorial .article-content { padding:24px 18px; }
  .dna-editorial .editorial-shell { width:calc(100% - 24px); }
}
@media print {
  .diagram-player { display:none!important; }
  .dna-editorial .diagram-enhanced * { animation:none!important; transition:none!important; box-shadow:none!important; }
  .header-wrapper,.header,.mobile-header,.footer-wrapper,.page-loader-container,.mobile-header-menu-container,.dna-nav-panel,.dna-nav-backdrop,.site-search,.article-toc,.mobile-reading-tools,.editorial-skip,.breadcrumbs-wrapper { display:none!important; }
  .dna-articles-page .editorial-banner { min-height:0; padding:0; margin:0; background:none; }
  .dna-articles-page .editorial-banner .page-title-bg,.dna-articles-page .editorial-banner .page-title-box-icon { display:none; }
  .dna-articles-page .editorial-banner .page-title-row { padding:0; }
  .dna-articles-page .editorial-banner .page-title { color:#000; font-size:26pt; }
  .dna-editorial { font-size:10pt; color:#000; padding:20px 0; background:#fff; }
  .dna-editorial .editorial-shell { width:100%; }
  .dna-editorial .article-layout { display:block; }
  .dna-editorial .article-content { padding:0; max-width:none; }
  .dna-editorial h2,.dna-editorial h3 { break-after:avoid; }
  .dna-editorial table,.dna-editorial figure { break-inside:avoid; }
  .dna-editorial .table-wrap { overflow:visible; }
  .dna-editorial .table-wrap::before { display:none; }
  .dna-editorial th,.dna-editorial td { min-width:0; font-size:8pt; padding:8px; }
  .dna-editorial pre { white-space:pre-wrap; }
}
