:root{
  color-scheme:light;
  --paper:#f4efe5;--paper-bright:#fbf7ed;--paper-deep:#e7dccb;--ink:#102625;--ink-soft:#52615f;--line:#aab0a9;--line-soft:rgba(16,38,37,.16);--coral:#e7402c;--coral-dark:#b92f21;--coral-soft:#f5d0c4;--teal:#345f5a;--teal-bright:#397a71;--violet:#6d4aa1;--violet-soft:#e6dcf4;--green:#47752c;--green-soft:#e0edcf;--amber:#b66a19;--amber-soft:#f2dfc2;--white:#fffdf8;--display:Georgia,"Times New Roman",serif;--sans:"Helvetica Neue",Helvetica,Arial,sans-serif;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--shadow:0 18px 60px rgba(27,39,36,.10);--radius:1.25rem;--content:78rem;--narrow:52rem;--ease:cubic-bezier(.22,1,.36,1)
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6.5rem;background:var(--paper)}body{margin:0;color:var(--ink);background:radial-gradient(circle at 18% 8%,rgba(255,255,255,.6),transparent 30rem),radial-gradient(circle at 83% 35%,rgba(217,199,168,.17),transparent 34rem),var(--paper);font-family:var(--sans);font-size:clamp(1rem,.95rem + .18vw,1.11rem);line-height:1.7;overflow-x:hidden}body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.26;background-image:repeating-radial-gradient(circle at 0 0,transparent 0 2px,rgba(69,54,35,.07) 2.5px 3px,transparent 3.5px 9px),repeating-linear-gradient(97deg,transparent 0 23px,rgba(48,52,43,.035) 24px 25px,transparent 26px 49px);background-size:73px 61px,109px 89px;mix-blend-mode:multiply}a{color:inherit}button,input,textarea,select{font:inherit}button{touch-action:manipulation}:focus-visible{outline:3px solid var(--coral);outline-offset:4px}.skip-link{position:fixed;z-index:1000;top:.75rem;left:.75rem;padding:.7rem 1rem;background:var(--ink);color:var(--white);transform:translateY(-160%);transition:transform .2s}.skip-link:focus{transform:translateY(0)}
.site-header{position:sticky;z-index:100;top:0;min-height:5rem;padding:.65rem clamp(1rem,3vw,3rem);background:rgba(244,239,229,.94);backdrop-filter:blur(13px);border-bottom:1px solid rgba(16,38,37,.22);display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none}.brand-mark{width:2.4rem;height:2.4rem;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-weight:700;color:var(--coral)}.brand-copy{line-height:1.05}.brand-copy strong{display:block;font-family:var(--display);font-size:1.02rem}.brand-copy span{display:block;margin-top:.23rem;color:var(--ink-soft);font-size:.66rem;letter-spacing:.11em;text-transform:uppercase}.site-nav{display:flex;align-items:center;gap:.2rem;overflow-x:auto;scrollbar-width:none}.site-nav::-webkit-scrollbar{display:none}.site-nav a{flex:none;padding:.55rem .72rem;border-radius:999px;text-decoration:none;color:var(--ink-soft);font-size:.75rem;font-weight:700}.site-nav a:hover,.site-nav a[aria-current="page"]{background:var(--ink);color:var(--white)}.nav-cta{border:1px solid var(--coral)!important;color:var(--coral-dark)!important}.nav-cta:hover{background:var(--coral)!important;color:var(--white)!important}
.page-shell{width:min(100%,var(--content));margin:0 auto;padding:0 clamp(1rem,4vw,4rem)}.hero{min-height:calc(100vh - 5rem);min-height:calc(100dvh - 5rem);display:grid;align-items:center;padding-block:clamp(4rem,9vw,8rem)}.hero-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(25rem,1.1fr);gap:clamp(2rem,6vw,6rem);align-items:center}.eyebrow{margin:0 0 1rem;color:var(--coral);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800}.hero h1,.page-hero h1{margin:0;font-family:var(--display);font-weight:500;font-size:clamp(3.9rem,8vw,8rem);line-height:.93;letter-spacing:-.065em;text-wrap:balance}.hero-subtitle{margin:1.4rem 0;max-width:35rem;font-family:var(--display);font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.25}.hero-lede{max-width:42rem;color:var(--ink-soft);font-size:clamp(1.05rem,1.4vw,1.3rem)}.button-row{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.6rem}.button{min-height:3.2rem;padding:.75rem 1.25rem;border:1px solid var(--ink);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:.75rem;text-decoration:none;cursor:pointer;background:transparent;color:var(--ink);transition:transform .2s var(--ease),box-shadow .2s,background .2s,color .2s}.button.primary{background:var(--coral);border-color:var(--coral);color:var(--white);box-shadow:0 8px 22px rgba(185,47,33,.2)}.button.dark{background:var(--ink);color:var(--white)}.button.small{min-height:2.5rem;padding:.5rem .9rem;font-size:.78rem}.button:hover{transform:translateY(-2px);box-shadow:0 9px 24px rgba(16,38,37,.14)}.button:active{transform:translateY(0)}.button[disabled]{opacity:.5;cursor:not-allowed;transform:none}.trust-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem;padding-top:1rem;border-top:1px solid var(--line);color:var(--ink-soft);font-size:.75rem}.trust-row span+span::before{content:"•";color:var(--coral);margin-right:.8rem}
.hero-diagram{position:relative;min-height:35rem;border-left:1px solid var(--line);display:grid;place-items:center}.causal-orbit{position:relative;width:min(34rem,100%);aspect-ratio:1}.causal-orbit .center{position:absolute;inset:33%;border-radius:50%;display:grid;place-content:center;text-align:center;background:var(--ink);color:var(--white);box-shadow:0 0 0 1.2rem var(--coral-soft);font-family:var(--display);font-size:1.3rem}.causal-orbit .center small{display:block;color:var(--coral-soft);font-family:var(--sans);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase}.causal-orbit .node{position:absolute;width:8rem;min-height:4.2rem;display:grid;place-content:center;text-align:center;padding:.55rem;border:1px solid var(--line);border-radius:1rem;background:rgba(251,247,237,.94);box-shadow:var(--shadow);font-size:.72rem;font-weight:800}.causal-orbit .node:nth-of-type(2){left:50%;top:0;transform:translateX(-50%)}.causal-orbit .node:nth-of-type(3){right:0;top:22%}.causal-orbit .node:nth-of-type(4){right:4%;bottom:16%}.causal-orbit .node:nth-of-type(5){left:50%;bottom:0;transform:translateX(-50%)}.causal-orbit .node:nth-of-type(6){left:4%;bottom:16%}.causal-orbit .node:nth-of-type(7){left:0;top:22%}.causal-orbit::before,.causal-orbit::after{content:"";position:absolute;border:1px dashed rgba(16,38,37,.26);border-radius:50%}.causal-orbit::before{inset:17%}.causal-orbit::after{inset:8%}
.section{padding:clamp(4.5rem,8vw,8rem) 0;border-top:1px solid var(--line-soft)}.section.alt{background:rgba(251,247,237,.55)}.section-kicker{margin:0 0 1rem;color:var(--coral);font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}.section h2,.page-hero h2{margin:0 0 1.5rem;max-width:16ch;font-family:var(--display);font-size:clamp(2.5rem,5vw,5.1rem);font-weight:500;line-height:.98;letter-spacing:-.045em;text-wrap:balance}.section-lede{max-width:48rem;color:var(--ink-soft);font-size:clamp(1.15rem,1.7vw,1.45rem)}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2.5rem}.card{padding:1.35rem;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,253,248,.62);box-shadow:0 10px 35px rgba(27,39,36,.06)}.card .index{display:block;margin-bottom:2.2rem;color:var(--coral);font-family:var(--mono);font-size:.7rem}.card h3{margin:0 0 .6rem;font-family:var(--display);font-size:1.55rem;line-height:1.1;font-weight:500}.card p{margin:0;color:var(--ink-soft);font-size:.92rem}.card a.stretched{display:inline-block;margin-top:1rem;color:var(--coral-dark);font-weight:800;text-underline-offset:.2em}.act-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem}.act-card{position:relative;min-height:18rem;padding:1.4rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-bright);overflow:hidden}.act-card::after{content:"";position:absolute;width:15rem;height:15rem;border-radius:50%;right:-6rem;bottom:-7rem;background:var(--act-soft)}.act-card[data-act="1"]{--act:var(--teal);--act-soft:rgba(52,95,90,.12)}.act-card[data-act="2"]{--act:var(--amber);--act-soft:rgba(182,106,25,.13)}.act-card[data-act="3"]{--act:var(--green);--act-soft:rgba(71,117,44,.13)}.act-card[data-act="4"]{--act:var(--violet);--act-soft:rgba(109,74,161,.13)}.act-card .act-number{color:var(--act);font-family:var(--mono);font-size:.72rem;letter-spacing:.12em}.act-card h3{position:relative;z-index:1;margin:3rem 0 .7rem;max-width:15ch;font-family:var(--display);font-size:2rem;line-height:1.05;font-weight:500}.act-card p{position:relative;z-index:1;max-width:30rem;color:var(--ink-soft)}.act-card a{position:relative;z-index:1;display:inline-block;margin-top:1.2rem;color:var(--act);font-weight:800}
.page-hero{padding:clamp(5rem,9vw,8rem) 0 3rem}.page-hero h1{max-width:12ch;font-size:clamp(3.2rem,6.8vw,6.8rem)}.page-hero .lede{max-width:52rem;color:var(--ink-soft);font-size:1.2rem}.subnav{position:sticky;top:5rem;z-index:50;background:rgba(244,239,229,.93);border-bottom:1px solid var(--line-soft);backdrop-filter:blur(10px)}.subnav .page-shell{display:flex;align-items:center;gap:.25rem;overflow-x:auto;padding-block:.45rem;scrollbar-width:none}.subnav a{flex:none;padding:.4rem .65rem;border-radius:999px;text-decoration:none;color:var(--ink-soft);font-size:.7rem;font-weight:700}.subnav a:hover{background:var(--ink);color:var(--white)}
/* Reader */
.reader-layout{display:grid;grid-template-columns:minmax(0,1fr) 18rem;gap:4rem;align-items:start}.reader-main{min-width:0}.reader-toc{position:sticky;top:8rem;padding:1rem;border-left:1px solid var(--line)}.reader-toc h2{margin:0 0 .8rem;font-family:var(--display);font-size:1.3rem}.reader-toc ol{margin:0;padding:0;list-style:none}.reader-toc li+li{margin-top:.3rem}.reader-toc a{display:block;padding:.3rem .5rem;border-radius:.45rem;text-decoration:none;color:var(--ink-soft);font-size:.7rem}.reader-toc a:hover,.reader-toc a.active{background:var(--ink);color:var(--white)}.reader-act{padding:3rem 0 5rem;border-top:1px solid var(--line)}.reader-act:first-child{border-top:0}.reader-act-header{margin-bottom:3rem}.reader-act-header .act-tag{color:var(--coral);font-family:var(--mono);font-size:.72rem;letter-spacing:.12em}.reader-act-header h2{margin:.8rem 0;font-family:var(--display);font-size:clamp(2.5rem,4.8vw,4.8rem);font-weight:500;line-height:1;letter-spacing:-.04em}.reader-frame{padding:2.5rem 0;border-top:1px solid var(--line-soft);scroll-margin-top:8rem}.reader-frame:first-of-type{border-top:0}.frame-meta{display:flex;justify-content:space-between;gap:1rem;color:var(--ink-soft);font-family:var(--mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.reader-frame h3{margin:.7rem 0 1rem;font-family:var(--display);font-size:clamp(2rem,3.5vw,3.2rem);font-weight:500;line-height:1.05;letter-spacing:-.035em}.frame-summary{padding:1rem 1.1rem;border-left:3px solid var(--coral);background:rgba(255,255,255,.35);color:var(--ink-soft);font-size:.95rem}.reader-notes{max-width:76ch;margin-top:1.5rem}.reader-notes p{margin:0 0 1rem}.reader-notes ol,.reader-notes ul{padding-left:1.3rem}.source-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1.5rem}.source-chips a{padding:.35rem .55rem;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--teal);font-size:.7rem;font-weight:700}.aid-callout{margin-top:1rem;padding:.9rem 1rem;border:1px solid rgba(109,74,161,.25);border-radius:.8rem;background:var(--violet-soft)}.aid-callout strong{color:var(--violet);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.aid-callout p{margin:.3rem 0 0;font-size:.82rem}
/* Labs */
.lab-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem}.lab-card{padding:1.4rem;border:1px solid var(--line);border-radius:var(--radius);background:rgba(251,247,237,.75);box-shadow:var(--shadow)}.lab-card.wide{grid-column:1/-1}.lab-header{display:flex;justify-content:space-between;gap:1rem;align-items:start;margin-bottom:1rem}.lab-header h2,.lab-header h3{margin:0;font-family:var(--display);font-weight:500}.lab-header h2{font-size:2.2rem}.lab-header h3{font-size:1.5rem}.lab-badge{flex:none;padding:.3rem .5rem;border:1px solid var(--line);border-radius:999px;color:var(--coral);font-family:var(--mono);font-size:.62rem}.lab-copy{color:var(--ink-soft);font-size:.9rem}.control-row{display:flex;flex-wrap:wrap;gap:.6rem;align-items:end;margin:1rem 0}.field{display:grid;gap:.25rem}.field label{color:var(--ink-soft);font-size:.7rem;font-weight:700}.field input,.field select,.field textarea{min-height:2.7rem;padding:.55rem .65rem;border:1px solid var(--line);border-radius:.55rem;background:var(--white);color:var(--ink)}.field textarea{min-height:7rem;resize:vertical}.output-panel{padding:1rem;border:1px dashed var(--line);border-radius:.8rem;background:rgba(255,255,255,.35)}.output-panel strong.big{display:block;color:var(--coral);font-family:var(--display);font-size:clamp(2rem,4vw,4rem);line-height:1}.lab-note{margin-top:1rem;padding:.75rem .9rem;border-left:3px solid var(--coral);background:rgba(255,255,255,.28);color:var(--ink-soft);font-size:.8rem}.canvas-frame{position:relative;min-height:22rem;border:1px solid var(--ink);background:rgba(255,255,255,.22);overflow:hidden}.canvas-frame canvas{position:absolute;inset:0;width:100%;height:100%}.lab-stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:.7rem;overflow:hidden}.lab-stat{padding:.7rem;text-align:center;background:var(--paper-bright)}.lab-stat+.lab-stat{border-left:1px solid var(--line)}.lab-stat span{display:block;color:var(--ink-soft);font-size:.64rem;text-transform:uppercase;letter-spacing:.08em}.lab-stat b{display:block;margin-top:.2rem;font-family:var(--display);font-size:1.6rem}.stress-chart{width:100%;min-height:18rem}.stress-chart svg{width:100%;height:auto}.network-list{display:flex;flex-wrap:wrap;gap:.4rem}.network-list button{padding:.4rem .55rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink-soft);cursor:pointer;font-size:.68rem}.network-list button.active{background:var(--ink);color:var(--white)}.network-output{min-height:11rem;margin-top:1rem;padding:1rem;border:1px solid var(--line);border-radius:.8rem;background:var(--white)}.hopfield-board{display:grid;grid-template-columns:repeat(5,2.1rem);gap:.25rem;justify-content:center;margin:1rem}.hopfield-cell{width:2.1rem;height:2.1rem;border:1px solid var(--line);border-radius:.25rem;background:var(--paper);cursor:pointer}.hopfield-cell.on{background:var(--teal)}.quiz-question{padding:1rem 0;border-top:1px solid var(--line-soft)}.quiz-question:first-child{border-top:0}.quiz-question h3{margin:0 0 .7rem;font-family:var(--display);font-size:1.25rem}.quiz-choice{display:flex;gap:.6rem;align-items:flex-start;padding:.45rem;border-radius:.45rem;cursor:pointer}.quiz-choice:hover{background:rgba(231,64,44,.06)}.feedback{min-height:1.5rem;margin-top:.5rem;color:var(--ink-soft);font-size:.8rem}.feedback.correct{color:var(--green)}.feedback.incorrect{color:var(--coral-dark)}
/* Toolkit */
.tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem}.tool-card{padding:1.4rem;border:1px solid var(--line);border-radius:var(--radius);background:rgba(251,247,237,.78)}.tool-card.wide{grid-column:1/-1}.tool-card h2,.tool-card h3{margin:0 0 .8rem;font-family:var(--display);font-weight:500}.tool-card h2{font-size:2rem}.tool-card h3{font-size:1.45rem}.checklist{display:grid;gap:.5rem}.check-item{display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:start;padding:.6rem;border:1px solid var(--line-soft);border-radius:.55rem;background:rgba(255,255,255,.25)}.check-item input{width:1.2rem;height:1.2rem;margin-top:.25rem;accent-color:var(--coral)}.worksheet-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}.result-document{margin-top:1rem;padding:1.2rem;border:1px solid var(--line);border-radius:.8rem;background:var(--white)}.result-document h3{font-family:var(--display)}.capability-list{display:grid;gap:.5rem}.capability-row{display:grid;grid-template-columns:1fr 9rem;gap:.6rem;align-items:center}.capability-row input{min-height:2.5rem;padding:.5rem;border:1px solid var(--line);border-radius:.5rem;background:var(--white)}
/* Sources */
.filter-bar{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0}.filter-bar input,.filter-bar select{min-height:2.8rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:.6rem;background:var(--white)}.filter-bar input{flex:1;min-width:15rem}.source-list{margin:0;padding:0;list-style:none}.source-item{display:grid;grid-template-columns:3rem minmax(0,1fr) auto;gap:1rem;align-items:start;padding:1.2rem 0;border-top:1px solid var(--line)}.source-item .num{color:var(--coral);font-family:var(--mono);font-size:.7rem}.source-item h3{margin:0 0 .3rem;font-family:var(--display);font-size:1.25rem;font-weight:500;line-height:1.15}.source-item p{margin:0;color:var(--ink-soft);font-size:.8rem}.source-item .kind{padding:.25rem .45rem;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);font-family:var(--mono);font-size:.58rem;white-space:nowrap}.source-item a{display:inline-block;margin-top:.45rem;color:var(--teal);font-weight:800;font-size:.75rem}
.footer{padding:3rem 0;border-top:1px solid var(--line);color:var(--ink-soft);font-size:.78rem}.footer-grid{display:grid;grid-template-columns:1fr auto;gap:2rem}.footer nav{display:flex;flex-wrap:wrap;gap:.8rem}.footer a{color:var(--ink-soft)}.disclaimer{margin-top:1.5rem;max-width:70rem;padding-top:1rem;border-top:1px solid var(--line-soft)}.print-only{display:none}
@media(max-width:980px){.hero-grid,.reader-layout{grid-template-columns:1fr}.hero-diagram{min-height:27rem;border-left:0;border-top:1px solid var(--line)}.reader-toc{position:static;border-left:0;border-top:1px solid var(--line);order:-1}.card-grid{grid-template-columns:repeat(2,1fr)}.site-header{align-items:flex-start;flex-wrap:wrap}.site-nav{order:3;width:100%}.subnav{top:7.4rem}}
@media(max-width:680px){.page-shell{padding-inline:1rem}.hero{min-height:auto;padding-block:4rem}.hero h1,.page-hero h1{font-size:clamp(3rem,15vw,5rem)}.hero-diagram{min-height:22rem}.causal-orbit .node{width:6.5rem;font-size:.62rem}.card-grid,.act-grid,.lab-grid,.tool-grid,.worksheet-grid{grid-template-columns:1fr}.lab-card.wide,.tool-card.wide{grid-column:auto}.source-item{grid-template-columns:2rem 1fr}.source-item .kind{grid-column:2}.lab-stats{grid-template-columns:1fr}.lab-stat+.lab-stat{border-left:0;border-top:1px solid var(--line)}.capability-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.site-header{position:relative}.subnav{top:0}.page-hero{padding-top:3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media print{.site-header,.subnav,.button-row,.filter-bar,.no-print{display:none!important}.print-only{display:block}.page-shell{width:100%;padding:0}.section,.page-hero{padding:1.2rem 0}.reader-layout{display:block}.reader-toc{display:none}.reader-frame{break-inside:avoid}.lab-card,.tool-card,.card{box-shadow:none}body{background:white}body::before{display:none}}

/* System-objective laboratory chain */
.proxy-chain { display: grid; gap: .45rem; }
.proxy-chain span { display: block; padding: .75rem .85rem; border: 1px solid var(--line); border-radius: .65rem; background: rgba(255,255,255,.38); line-height: 1.45; }
.proxy-chain span b { display: block; margin-bottom: .15rem; color: var(--coral-dark); font-family: var(--mono); font-size: .65rem; letter-spacing: .08em; }
.proxy-chain i { justify-self: center; color: var(--coral); font-style: normal; font-size: 1.1rem; line-height: 1; }

/* Mobile containment and readable generated slide summaries */
.reader-main, .reader-act, .reader-frame, .frame-summary, .reader-notes { min-width: 0; max-width: 100%; }
.frame-summary, .reader-notes, .aid-callout, .source-chips a { overflow-wrap: anywhere; word-break: normal; }
.site-nav, .subnav .page-shell { min-width: 0; max-width: 100%; }
.site-header, .subnav { overflow-x: hidden; }

/* Prevent form-heavy toolkit cards from expanding the mobile grid track. */
.tool-grid, .tool-card, .worksheet-grid, .field, .field input, .field select, .field textarea { min-width: 0; }
.field input, .field select, .field textarea { width: 100%; max-width: 100%; }

/* Accessible evidence-library filters */
.filter-field{display:grid;gap:.25rem;min-width:0;color:var(--ink-soft);font-size:.68rem;font-weight:800}
.filter-field:first-child{flex:1;min-width:15rem}
.filter-field span{line-height:1.2}
.filter-field input,.filter-field select{width:100%;max-width:100%;font-size:.86rem;font-weight:400;color:var(--ink)}
@media(max-width:680px){.filter-field,.filter-field:first-child{width:100%;min-width:0}}
