/* Research and engineering extensions to the established Tonelingo theme. */
.continuity-section,.engineering-section,.comparison-section{padding-top:82px;padding-bottom:30px}
.continuity-section .heading-split>p,.engineering-section .heading-split>p,.comparison-section .heading-split>p{width:385px}
.revision-demo{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);margin-top:38px}
.revision-source{padding:34px;background:#f2f8f3;display:flex;flex-direction:column;align-items:flex-start}
.revision-source blockquote{margin:26px 0 19px;font-size:27px;line-height:1.3;letter-spacing:-.035em;max-width:460px;font-weight:450}
.revision-source>p{font-size:15px;line-height:1.7;color:var(--muted);margin:0 0 25px;max-width:455px}
.revision-button{margin-top:auto;min-height:47px;font-size:14px}
.revision-record{padding:30px 34px;align-self:stretch}
.record-header{display:flex;align-items:center;justify-content:space-between;gap:10px;font:12px/1.6 var(--mono);color:#5f7e69;border-bottom:1px solid var(--line);padding-bottom:20px}
.record-state{background:#edf6ef;border:1px solid #d5e7da;padding:4px 7px;color:#4c775c}
.revision-row{display:grid;grid-template-columns:112px 1fr;gap:15px;padding:15px 0;border-bottom:1px solid #edf1ed;font-size:14px;line-height:1.6}
.revision-row>span{color:#7a877f}.revision-row>strong{font-weight:500}
.record-note{font-size:13px;color:#75887c;line-height:1.7;padding-top:17px}
.revision-demo.is-corrected .record-state{background:#d0efdb;border-color:#91bca0;color:#285f3e}
.revision-demo.is-corrected #rev-approval,.revision-demo.is-corrected #rev-handoff{color:#087046}
.section-footnote{display:flex;justify-content:space-between;gap:30px;align-items:baseline;margin-top:17px}
.section-footnote p{font-size:12px;line-height:1.7;color:#7c8981;margin:0;max-width:690px}
.section-footnote a,.comparison-note{font-size:12px;color:#5a7b66;line-height:1.7}
.section-footnote a{flex-shrink:0;border-bottom:1px solid #bcd2c4}
.platform-section{padding-top:73px}
.demo-body{min-height:456px}.workflow-step{min-height:76px}.workflow-steps{gap:4px}
.verification-list{border:1px solid #34503d;background:#14251a}
.verification-list>div{display:grid;grid-template-columns:32px 1fr;gap:11px;padding:13px 15px;border-bottom:1px solid #2d4133}
.verification-list>div:last-child{border-bottom:0}.verification-list>div>span{font:12px var(--mono);color:#83ab90;padding-top:3px}
.verification-list p{font-size:13px;color:#9db4a5;line-height:1.6;margin:0}.verification-list strong{display:block;font-size:14px;color:#d9e9de;font-weight:500;margin-bottom:3px}
.research-section{background:var(--dark);color:#f2f7f3;padding:79px 0 48px;margin-bottom:63px}
.research-section .heading-split h2>span,.getting-started-section .heading-split h2>span{color:#89aa96}
.research-section .heading-split>p,.getting-started-section .heading-split>p{color:#a5b5aa;width:390px}
.method-workbench{margin-top:36px;border:1px solid #34503d;display:grid;grid-template-columns:330px 1fr;background:#111f16}
.method-sidebar{padding:29px 23px;border-right:1px solid #34503d}.method-sidebar>.eyebrow{color:#84a88f}
.method-tabs{margin:23px -23px 22px;display:flex;flex-direction:column;gap:5px}
.method-tab{display:flex;align-items:center;text-align:left;gap:12px;background:transparent;border:0;border-left:2px solid transparent;color:#93b09e;padding:16px 20px;font-size:14px}
.method-tab>span{font:12px var(--mono);color:#71927c}.method-tab>b{font-weight:400;margin-left:auto;opacity:0}
.method-tab.active{border-left-color:#98d9b0;background:linear-gradient(90deg,#294b3477,transparent);color:#def1e4}.method-tab.active>b{opacity:1}
.method-tab:hover{color:#def1e4}.method-sidebar>p{font-size:14px;line-height:1.8;color:#859e8e;margin:0 0 20px}
.method-sidebar>a{font-size:13px;color:#bbd8c5;border-bottom:1px solid #486853;padding-bottom:4px}
.method-panel{padding:29px 34px}.method-panel-heading{display:flex;gap:16px;align-items:center;justify-content:space-between}
.method-panel-heading .eyebrow{color:#8bac96}.method-tag{font-size:12px;border:1px solid #405d49;color:#a2bfad;padding:3px 7px}
.method-panel h3{font-size:28px;line-height:1.2;letter-spacing:-.035em;font-weight:450;margin:27px 0 23px}
.method-fields{display:grid;grid-template-columns:1fr 1fr;gap:23px 29px}
.method-fields>div{border-top:1px solid #314a39;padding-top:13px}.method-fields>div>span{font:12px var(--mono);color:#b8d6c2}
.method-fields p{font-size:14px;line-height:1.75;color:#8da798;margin:9px 0 0}
.method-files{padding:19px 0 0;margin-top:22px;border-top:1px solid #2e4336;display:flex;flex-wrap:wrap;gap:8px}
.method-files code{font:12px/1.6 var(--mono);color:#98baa5;background:#182d20;padding:3px 7px;border:1px solid #304d3b}
.research-exchange{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding-top:43px;margin-top:12px}
.research-exchange .eyebrow{color:#7ca98c}.research-exchange h3{font-size:32px;line-height:1.2;font-weight:450;letter-spacing:-.035em;margin:19px 0 17px}
.research-exchange>div>p{font-size:16px;line-height:1.8;color:#95aa9d;margin:0;max-width:535px}
.exchange-contract{display:flex;flex-direction:column;gap:0}.exchange-contract>div{display:flex;align-items:flex-start;gap:18px;border-bottom:1px solid #2a3e31;padding:13px 0}
.exchange-contract>div:first-child{padding-top:0}.exchange-contract>div>span{font:12px var(--mono);color:#7daa8b;padding-top:5px}
.exchange-contract p{margin:0;color:#c0d5c7;font-size:15px;line-height:1.7}.exchange-contract small{font-size:13px;color:#789581}
.research-footnote{display:flex;justify-content:space-between;gap:35px;border-top:1px solid #2a3e31;padding-top:21px;margin-top:31px;font-size:12px;color:#809b89}
.research-footnote p{margin:0;max-width:760px;line-height:1.8}.research-footnote a{color:#afccb9;flex-shrink:0;align-self:flex-start;border-bottom:1px solid #547260}
.principles-section{margin-top:0}.engineering-section{padding-bottom:40px}
.boundary-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);margin-top:39px}
.boundary-grid>article{padding:28px;border-right:1px solid var(--line);display:flex;flex-direction:column}.boundary-grid>article:last-child{border-right:0}
.boundary-grid .eyebrow{color:#6c937a}.boundary-grid h3{font-size:24px;line-height:1.2;letter-spacing:-.03em;font-weight:500;margin:22px 0 16px}
.boundary-grid p{font-size:15px;line-height:1.8;color:#6c7d72;margin:0 0 19px}.boundary-grid code{font:13px var(--mono);background:#edf6ef;color:#456b52;padding:2px 4px;overflow-wrap:anywhere}
.boundary-grid .boundary-detail{font-size:13px;border-top:1px solid var(--line);padding-top:16px;margin:0;margin-top:auto;color:#7c8d82}
.evaluation-panel{display:grid;grid-template-columns:1fr 1fr;column-gap:70px;padding:33px;background:#f1f7f2;border:1px solid #d8e7db;margin-top:28px}
.evaluation-intro .eyebrow{color:#5e896c}.evaluation-intro h3{font-size:31px;line-height:1.18;letter-spacing:-.035em;font-weight:450;margin:20px 0 18px}
.evaluation-intro>p{font-size:15px;line-height:1.8;color:#6d8274;margin:0;max-width:480px}
.evaluation-criteria>div{display:flex;gap:16px;padding:0 0 16px;margin-bottom:16px;border-bottom:1px solid #d4e3d8}.evaluation-criteria>div:last-child{border:0;margin:0;padding:0}
.evaluation-criteria>div>span{font:12px var(--mono);color:#73a183;margin-top:4px}.evaluation-criteria p{font-size:14px;line-height:1.7;color:#789180;margin:0}
.evaluation-criteria strong{display:block;color:#375b43;font-weight:500;font-size:15px;margin-bottom:3px}
.evaluation-note{grid-column:1/-1;display:flex;gap:17px;align-items:center;padding-top:21px;border-top:1px solid #cadfce;margin-top:25px}
.evidence-label{font:12px/1.5 var(--mono);border:1px solid #adccb7;padding:5px 8px;color:#5d8068;flex-shrink:0}
.evaluation-note p{font-size:12px;line-height:1.7;color:#74917e;margin:0}.evaluation-note a{font-size:12px;color:#446e53;flex-shrink:0;margin-left:auto;border-bottom:1px solid #accab7}
.comparison-section{padding-top:43px;padding-bottom:66px}.comparison-table-wrap{margin-top:34px;overflow-x:auto;border:1px solid var(--line)}
.comparison-table{width:100%;border-collapse:collapse;table-layout:fixed;text-align:left;font-size:15px;line-height:1.75}
.comparison-table th,.comparison-table td{padding:22px 24px;border-bottom:1px solid var(--line);vertical-align:top;border-right:1px solid var(--line)}
.comparison-table th:last-child,.comparison-table td:last-child{border-right:0}.comparison-table tr:last-child th,.comparison-table tr:last-child td{border-bottom:0}
.comparison-table thead{background:#f1f7f3;color:#73917f}.comparison-table thead th{font:12px/1.6 var(--mono);font-weight:400;padding-block:15px}
.comparison-table th:first-child{width:23%}.comparison-table tbody th{font-weight:500;font-size:15px;letter-spacing:-.01em}.comparison-table td{color:#718377}
.comparison-table tbody td:last-child{background:#fafcf9;color:#526e5c}.comparison-table a:hover{color:var(--green)}.comparison-note{max-width:930px;margin:17px 0 0;color:#87988c}
.getting-started-section{padding:74px 0 37px;background:var(--dark);color:#eff7f1}
.setup-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:56px;margin-top:36px}
.setup-terminal{border:1px solid #3c5745;background:#0a130e;align-self:start;min-width:0}.setup-terminal-top{padding:16px 20px;border-bottom:1px solid #2f4436;display:flex;align-items:center;justify-content:space-between;gap:15px}
.setup-terminal-top>span{font:12px var(--mono);color:#91b09c}.setup-terminal pre{font:13px/2 var(--mono);color:#c3dfce;padding:26px 22px;overflow:auto;margin:0}
.setup-terminal-bottom{padding:16px 20px;border-top:1px solid #2f4436;display:flex;flex-wrap:wrap;gap:9px 20px;color:#7c9d87;font-size:12px}
.setup-terminal-bottom code{font:12px var(--mono);color:#bddcc9}.setup-requirements>.eyebrow{color:#91b79d}.setup-requirements h3{font-size:26px;font-weight:450;line-height:1.2;letter-spacing:-.03em;margin:16px 0 18px}
.setup-requirements dl{margin:0 0 17px}.setup-requirements dl>div{display:grid;grid-template-columns:131px 1fr;padding:11px 0;border-bottom:1px solid #2f4436;gap:13px;font-size:14px;line-height:1.7}
.setup-requirements dt{color:#9fc0aa}.setup-requirements dd{margin:0;color:#749681}.setup-requirements>a{font-size:13px;border-bottom:1px solid #496c54;color:#bddbc7}
.setup-troubleshoot{margin:20px 0 0;font-size:12px;color:#7d9e88;line-height:1.8}.setup-troubleshoot code{font:12px var(--mono);color:#a7c4b1}
.first-run-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:0;margin:42px 0 0;list-style:none;border:1px solid #304a38}
.first-run-steps>li{padding:25px 22px;border-right:1px solid #304a38;min-width:0}.first-run-steps>li:last-child{border-right:0}
.first-run-steps>li>span{font:12px var(--mono);color:#709d7e}.first-run-steps h3{font-size:19px;font-weight:450;letter-spacing:-.02em;margin:20px 0 13px;line-height:1.35}
.first-run-steps p{font-size:14px;line-height:1.8;color:#8aa794;margin:0}.getting-started-note{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:24px;font-size:12px;color:#7e9d89}
.getting-started-note>a{color:#c0d7c8;border-bottom:1px solid #50735b}
.project-section{padding-top:80px;padding-bottom:36px;display:grid;grid-template-columns:1fr 1fr;gap:85px}
.project-intro h2{margin:25px 0 22px}.project-intro>p{font-size:16px;line-height:1.8;color:#6c7b70;max-width:460px;margin:0 0 27px}
.project-intro .project-access{font-size:13px;line-height:1.8;margin-top:20px;color:#829688;max-width:460px}
.project-resources{border-top:1px solid var(--line)}.project-resources>a{display:flex;gap:30px;justify-content:space-between;border-bottom:1px solid var(--line);padding:20px 0;transition:color .2s}
.project-resources small{font:12px/1.7 var(--mono);color:#84a18c}.project-resources strong{display:block;font-size:19px;line-height:1.3;font-weight:500;letter-spacing:-.02em;margin:6px 0 7px}
.project-resources p{font-size:14px;line-height:1.75;color:#829287;margin:0;max-width:430px}.project-resources b{font-size:22px;font-weight:400;color:#6c977b;padding-top:17px}.project-resources>a:hover{color:var(--green)}
.reviewed-note{display:flex;flex-wrap:wrap;gap:10px 18px;font:12px/1.8 var(--mono);color:#8c9b91;margin-top:20px;align-items:baseline}.reviewed-note code{font-size:12px;color:#547b61}
.faq-section{padding-top:64px}.cta-section p{max-width:730px}.cta-section .button-white{gap:24px}
@media(max-width:1200px){.method-workbench{grid-template-columns:285px 1fr}.method-panel{padding:26px}.method-fields{gap:22px}.research-exchange{gap:45px}.evaluation-panel{column-gap:42px;padding:28px}.setup-grid{gap:36px}.setup-requirements dl>div{grid-template-columns:115px 1fr}.first-run-steps>li{padding:23px 18px}.project-section{gap:56px}.revision-source,.revision-record{padding:27px}.section-footnote{gap:20px;display:block}.section-footnote a{display:inline-block;margin-top:10px}.evaluation-note{flex-wrap:wrap}.evaluation-note p{flex:1;min-width:250px}.evaluation-note a{margin-left:0}.boundary-grid>article{padding:25px}}
@media(max-width:960px){.hero .eyebrow{font-size:11px}.continuity-section .heading-split>p,.engineering-section .heading-split>p,.comparison-section .heading-split>p{width:310px}.revision-demo{grid-template-columns:1fr 1fr}.revision-source,.revision-record{padding:22px}.revision-source blockquote{font-size:24px}.revision-row{grid-template-columns:90px 1fr;font-size:13px}.record-header{font-size:11px;flex-wrap:wrap}.research-section .heading-split>p,.getting-started-section .heading-split>p{width:310px}.method-workbench{grid-template-columns:236px 1fr}.method-sidebar{padding-inline:18px}.method-tabs{margin-inline:-18px}.method-tab{padding-inline:15px;font-size:13px;gap:8px}.method-panel{padding:24px 22px}.method-panel-heading{align-items:flex-start;flex-direction:column;gap:12px}.method-panel h3{font-size:26px;margin-top:20px}.method-fields{grid-template-columns:1fr;gap:16px}.method-fields p{font-size:14px}.method-sidebar>p{font-size:13px}.research-exchange{gap:30px}.research-exchange>div>p{font-size:15px}.research-footnote{display:block}.research-footnote a{display:inline-block;margin-top:12px}.boundary-grid>article{padding:23px 20px}.boundary-grid h3{font-size:22px}.boundary-grid p{font-size:14px}.evaluation-panel{column-gap:25px;padding:23px}.evaluation-intro h3{font-size:28px}.comparison-table th,.comparison-table td{padding:18px;font-size:14px}.comparison-table tbody th{font-size:14px}.setup-grid{grid-template-columns:1fr;gap:28px}.setup-requirements dl{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.setup-requirements dl>div{grid-template-columns:1fr;gap:3px}.first-run-steps{grid-template-columns:1fr 1fr}.first-run-steps>li:nth-child(2){border-right:0}.first-run-steps>li:nth-child(-n+2){border-bottom:1px solid #304a38}.project-section{gap:35px}.project-intro h2{font-size:37px}.project-resources strong{font-size:17px}.project-resources>a{gap:16px}.project-intro>p{font-size:15px}.project-access{font-size:12px!important}}
@media(max-width:720px){.continuity-section{padding-top:51px;padding-bottom:8px}.continuity-section .heading-split>p,.engineering-section .heading-split>p,.comparison-section .heading-split>p,.research-section .heading-split>p,.getting-started-section .heading-split>p{width:auto}.hero .eyebrow{font-size:12px;flex-wrap:nowrap;max-width:320px}.hero-description{font-size:17px}.revision-demo{grid-template-columns:1fr;margin-top:27px}.revision-source{padding:25px 22px}.revision-source blockquote{font-size:26px;margin-top:20px}.revision-source>p{font-size:15px}.revision-record{border-top:1px solid var(--line);padding:22px}.revision-row{font-size:14px;grid-template-columns:88px 1fr;gap:12px}.record-header{font-size:12px}.section-footnote p,.section-footnote a{font-size:12px}.platform-section{padding-top:52px}.demo-body{min-height:0}.workflow-steps{overflow-x:auto;gap:0;scrollbar-width:thin}.workflow-step{min-width:86px;min-height:91px;padding-inline:7px}.workflow-step strong{font-size:12px}.demo-panel{min-height:421px}.verification-list>div{padding:12px;grid-template-columns:25px 1fr}.verification-list p{font-size:13px}.verification-list strong{font-size:14px}.research-section{padding:50px 0 31px;margin-bottom:40px}.method-workbench{grid-template-columns:1fr;margin-top:29px}.method-sidebar{padding:22px;border-right:0;border-bottom:1px solid #34503d}.method-tabs{flex-direction:row;margin:19px 0;gap:7px}.method-tab{flex:1;border:1px solid #34503d;padding:12px 9px;justify-content:center;font-size:13px}.method-tab>span,.method-tab>b{display:none}.method-tab.active{background:#294b34;border:1px solid #729b80}.method-sidebar>p{font-size:14px;margin-bottom:15px}.method-panel{padding:24px 22px}.method-panel-heading{flex-direction:row;flex-wrap:wrap;align-items:center}.method-panel-heading .eyebrow,.method-tag{font-size:12px}.method-panel h3{font-size:27px}.method-fields{grid-template-columns:1fr;gap:20px}.method-fields p{font-size:15px;line-height:1.75}.method-fields>div>span{font-size:12px}.method-files{gap:7px}.research-exchange{grid-template-columns:1fr;gap:29px;padding-top:29px}.research-exchange h3{font-size:31px}.research-exchange>div>p{font-size:16px}.exchange-contract>div{padding:15px 0}.exchange-contract p{font-size:15px}.exchange-contract small{font-size:13px}.research-footnote{margin-top:27px;padding-top:20px}.engineering-section{padding-top:51px;padding-bottom:25px}.boundary-grid{grid-template-columns:1fr;margin-top:29px}.boundary-grid>article{border-right:0;border-bottom:1px solid var(--line);padding:25px 23px}.boundary-grid>article:last-child{border-bottom:0}.boundary-grid h3{font-size:25px;margin-top:18px}.boundary-grid p{font-size:16px}.boundary-grid .boundary-detail{font-size:14px}.evaluation-panel{display:block;padding:25px 22px}.evaluation-intro h3{font-size:30px;margin-top:19px}.evaluation-intro>p{font-size:15px}.evaluation-criteria{margin-top:28px}.evaluation-criteria p{font-size:15px}.evaluation-criteria strong{font-size:16px}.evaluation-note{display:flex;align-items:flex-start;gap:14px;margin-top:26px}.evaluation-note p{font-size:13px;min-width:0;flex-basis:100%}.evaluation-note a{font-size:13px}.comparison-section{padding-top:25px;padding-bottom:47px}.comparison-table-wrap{margin-top:27px}.comparison-table{table-layout:auto;min-width:670px}.comparison-table th:first-child{width:170px}.comparison-table th,.comparison-table td{padding:17px 18px;font-size:14px}.comparison-table tbody th{font-size:14px}.comparison-note{font-size:12px}.getting-started-section{padding-top:51px;padding-bottom:30px}.setup-grid{margin-top:27px;gap:30px}.setup-terminal-top{padding:14px 15px}.setup-terminal-top>span{font-size:12px}.setup-terminal pre{font-size:12px;padding:23px 17px;line-height:2.1}.setup-terminal-bottom{padding:15px;font-size:12px;line-height:1.8}.setup-requirements h3{font-size:26px}.setup-requirements dl{grid-template-columns:1fr;gap:0}.setup-requirements dl>div{grid-template-columns:115px 1fr;gap:13px;font-size:14px;padding:12px 0}.setup-requirements>a{font-size:13px}.first-run-steps{grid-template-columns:1fr;margin-top:29px}.first-run-steps>li{border-right:0;border-bottom:1px solid #304a38;padding:24px}.first-run-steps>li:last-child{border-bottom:0}.first-run-steps h3{font-size:21px;margin-top:15px}.first-run-steps p{font-size:15px}.getting-started-note{display:block;font-size:12px;line-height:1.8}.getting-started-note a{display:inline-block;margin-top:12px}.project-section{display:block;padding-top:51px;padding-bottom:18px}.project-intro h2{font-size:37px;margin-top:20px}.project-intro>p{font-size:16px}.project-intro .project-access{font-size:13px!important}.project-resources{margin-top:33px}.project-resources strong{font-size:20px}.project-resources p{font-size:15px}.project-resources>a{padding:21px 0}.project-resources b{padding-top:25px}.faq-section{padding-top:37px}.cta-section h2{font-size:35px}.cta-section .button-white{font-size:14px;gap:15px}.reviewed-note{font-size:12px}.section-index{display:none}}
@media(prefers-reduced-motion:reduce){.revision-demo *,.method-panel *{animation:none!important;transition:none!important}}

/* Keep navigation available and anchor destinations clear of the header. */
:root { --header-height: 96px; }
html { scroll-padding-top: calc(var(--header-height) + 16px); }
.site-header { position: sticky; top: 0; z-index: 40; box-shadow: 0 3px 18px #113a2010; }
@media (max-width: 720px) {
  :root { --header-height: 79px; }
  .mobile-nav:not([hidden]) {
    position: fixed;
    top: var(--header-height);
    z-index: 39;
    max-height: calc(100vh - var(--header-height));
    max-height: calc(100dvh - var(--header-height));
    overflow-y: auto;
    overscroll-behavior: contain;
  }
}
