:root{--paper:#f8f9f6;--white:#fff;--ink:#293b35;--muted:#5c6b64;--line:#d7dfd8;--accent:#365d4d;--wash:#e6ece4;--wash2:#eef1eb;--serif:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button{cursor:pointer}header{max-width:1240px;margin:auto;padding:27px 44px;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap}.brand span{padding:0 10px;color:#85948a}nav{display:flex;gap:24px;flex-wrap:wrap}nav a{font-size:13px;text-decoration:none;color:var(--muted)}nav a[aria-current=page]{color:var(--ink);text-decoration:underline}main{max-width:1050px;margin:auto;min-height:72vh;padding:58px 40px 65px}h1,h2,h3,p{margin-top:0}h1{font:normal clamp(30px,4.6vw,46px)/1.18 var(--serif);letter-spacing:-.025em;margin-bottom:14px}h2{font:normal 28px/1.3 var(--serif);letter-spacing:-.015em}h3{font-size:16px;font-weight:600}.intro{color:var(--muted);max-width:680px;margin-bottom:28px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted);margin-bottom:12px}.hero{max-width:760px}.diagram{display:block;width:100%;height:auto;margin:18px 0 4px;overflow:visible}.diagram path{fill:var(--wash2);stroke:var(--paper);stroke-width:5;transition:fill .15s}.diagram .shape-even{fill:var(--wash)}.diagram a:hover path,.diagram a[aria-current=step] path{fill:#d4e0d3}.diagram a:focus-visible{outline:none}.diagram a:focus-visible path{stroke:var(--accent);stroke-width:3}.diagram text{fill:var(--ink);font-size:21px;font-weight:500;pointer-events:none}.diagram .small{font-size:12px;font-weight:400;fill:#586c60}.diagram .number{font-size:11px;fill:#5c7162}.diagram .axis{stroke:#d6ded6;stroke-width:1;stroke-dasharray:3 5}.diagram-caption{display:flex;justify-content:space-around;font-size:12px;color:var(--muted);margin:0 0 30px}.diagram-caption a{font-size:11px}.stage{border-top:1px solid var(--line);padding-top:27px;margin-top:12px}.stage-heading{display:flex;justify-content:space-between;align-items:start;gap:30px}.stage-heading h2{margin-bottom:8px}.stage-heading p{max-width:570px;color:var(--muted);margin-bottom:22px}.tag{font-size:11px;border:1px solid var(--line);padding:4px 9px;border-radius:3px;white-space:nowrap;color:var(--muted)}.task-list{list-style:none;padding:0;margin:0 0 26px;counter-reset:steps}.task-list li{counter-increment:steps;padding:9px 0 9px 34px;position:relative}.task-list li:before{content:'0' counter(steps);position:absolute;left:0;font-size:12px;top:12px;color:var(--muted)}.output{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.output p{margin:0;font-size:14px}.output small{display:block;color:var(--muted);font-size:12px}.button{display:inline-block;text-decoration:none;border:1px solid var(--accent);padding:9px 16px;font-size:13px;border-radius:3px;color:var(--accent);white-space:nowrap;background:transparent}.button:hover{background:var(--wash)}details{border-bottom:1px solid var(--line)}summary{padding:17px 24px 17px 0;cursor:pointer;list-style:none;font-size:14px;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:2px;font-size:19px;top:12px;font-weight:300}details[open]>summary:after{content:'−'}details .detail{padding:0 24px 20px 0;font-size:14px;max-width:820px}.detail p:last-child{margin-bottom:0}.detail p{margin-bottom:12px}.detail h3{font-size:14px;margin:16px 0 5px}.detail ul{padding-left:20px}.citation{font-size:12px;color:var(--muted)}.stage-nav{display:flex;justify-content:space-between;gap:24px;margin-top:25px;font-size:13px}.stage-nav a{text-decoration:none}.stage-nav a:hover{text-decoration:underline}.stage-nav .next{margin-left:auto}.source-line{font-size:12px;color:var(--muted);margin-top:18px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 28px}.filter{font-size:12px;border:1px solid var(--line);padding:6px 12px;border-radius:3px;color:var(--muted);background:none}.filter[aria-pressed=true]{background:var(--wash);border-color:var(--accent);color:var(--ink)}.search{width:100%;max-width:440px;background:var(--white);border:1px solid var(--line);border-radius:3px;padding:10px 13px;color:var(--ink);font-size:14px}.search-label{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.resource summary{padding-top:22px;padding-bottom:22px}.resource summary:after{top:25px}.resource-title{display:block;font-size:17px;font-family:var(--serif);line-height:1.4;margin-bottom:4px}.resource-meta{font-size:12px;color:var(--muted)}.resource .detail{max-width:850px}.resource-actions{display:flex;gap:20px;align-items:center;margin-top:18px;font-size:12px}.count{font-size:12px;color:var(--muted);margin-bottom:5px}.download-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}.download-row h2{font-size:23px;margin:0 0 4px}.download-row p{color:var(--muted);font-size:14px;margin:0}.download-row .index{font-size:12px;color:var(--muted);margin-right:18px}.download-title{display:flex;align-items:center}.ref{font-size:13px;padding:18px 0 18px 25px;text-indent:-25px;border-bottom:1px solid var(--line);overflow-wrap:anywhere;line-height:1.75;scroll-margin-top:25px}.ref:target{background:var(--wash2)}.ref-heading{margin-top:35px;font-size:22px}.study-title{max-width:790px}.study-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:30px 0}.study-grid h2{font-size:23px}.study-grid p,.study-grid li{font-size:14px}.study-grid ul{padding-left:19px}.draft-note{color:var(--muted);font-size:12px;margin-top:20px}.example{border-left:2px solid var(--line);padding-left:16px;margin:16px 0}.example p{margin-bottom:5px}.empty{padding:30px 0;color:var(--muted)}footer{max-width:1152px;margin:0 auto;padding:22px 0 28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted)}.skip{position:fixed;top:-100px;left:20px;background:white;padding:10px;z-index:5}.skip:focus{top:10px}.noscript{padding:30px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}
@media(max-width:760px){header{padding:22px 24px;align-items:start;flex-direction:column;gap:17px}nav{gap:19px}.brand{font-size:13px}main{padding:36px 24px 45px}.diagram{margin-top:26px}.diagram text{font-size:25px}.diagram .small{display:none}.diagram .number{font-size:15px}.diagram-caption{font-size:11px;margin-bottom:20px}.stage-heading{gap:12px}.stage-heading .tag{font-size:10px}.output{align-items:start;flex-direction:column;gap:14px}.study-grid{grid-template-columns:1fr;gap:15px}.download-row{align-items:start}.download-row h2{font-size:21px}.download-row .button{padding:7px 11px}.download-row .index{display:none}footer{margin:0 24px;font-size:10px;align-items:start}.stage-heading p{font-size:14px}.task-list{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{header,footer,.filters,.search-label,.search,.button,.stage-nav{display:none}main{max-width:none;padding:0}body{background:white;color:black}details .detail{display:block}details{break-inside:avoid}a{color:black}summary:after{display:none}}

.mobile-diagrams{display:none}.mobile-diamond{width:100%;height:auto;overflow:hidden}.mobile-diamond path{fill:var(--wash2);stroke:var(--paper);stroke-width:5}.mobile-diamond .shape-even{fill:var(--wash)}.mobile-diamond a[aria-current=step] path{fill:#d4e0d3}.mobile-diamond text{fill:var(--ink);font:24px -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;pointer-events:none}.mobile-diamond .small{font-size:14px}.mobile-diamond .number{font-size:14px}.mobile-diamond a:focus-visible path{stroke:var(--accent);stroke-width:3}
@media(max-width:600px){.diagram,.diagram-caption{display:none}.mobile-diagrams{display:grid;grid-template-columns:1fr;gap:0;margin:15px auto 20px;max-width:390px}.stage-heading{flex-direction:column-reverse;gap:12px}.stage-heading h2{font-size:27px}.stage-heading p{max-width:none}.brand{white-space:normal}.download-row{flex-direction:column;gap:12px}.intro{font-size:15px}.mobile-diamond .small{font-size:15px}}
