*{box-sizing:border-box}html{overflow-anchor:none;scroll-behavior:auto;scroll-padding-top:76px}body{margin:0;background:var(--pique-paper);color:var(--pique-ink);font-family:var(--pique-body)}a{color:inherit}button,select{font:inherit;color:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button,select{min-height:42px}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.skip{position:fixed;top:-100px;z-index:20;background:white;padding:12px}.skip:focus{top:0}.nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:15px;padding:9px 4%;height:64px;background:var(--pique-paper);border-bottom:1px solid var(--line)}.brand{text-decoration:none;letter-spacing:.08em;font-weight:800;margin-right:auto;font-size:14px;white-space:nowrap}.brand span{font-size:10px;font-weight:400}.nav label{font-size:11px}.nav select{max-width:320px;min-width:220px;background:transparent;border:1px solid var(--line);padding:6px 10px}.nav button{border:0;background:var(--pique-ink);color:var(--pique-paper);padding:8px 16px}.opening{position:relative;isolation:isolate;min-height:calc(100svh - 64px);padding:5vh 7% 24px;overflow:hidden}.eyebrow{font-size:11px;letter-spacing:.16em;line-height:1.6;font-weight:700}h1{font-family:var(--pique-display);font-size:clamp(68px,9vw,128px);font-weight:400;line-height:.94;letter-spacing:-.055em;margin:35px 0}h1 em{font-weight:400;color:var(--orange)}.opening-bottom{display:flex;align-items:end;gap:40px;position:relative;z-index:1}.opening-bottom p{font-size:18px;line-height:1.55;max-width:440px}.start{font-size:13px;text-decoration:none;border-bottom:1px solid;padding:15px 0;min-width:180px}.start span{float:right;font-size:24px}.draft-note{font-size:11px;line-height:1.5;max-width:510px;margin-top:36px}.skyline{position:absolute;right:4%;top:90px;width:35%;height:380px;display:flex;align-items:end;gap:8px;z-index:-1;opacity:.3;transform:skewY(-8deg)}.skyline i{width:15%;height:40%;border:1px solid var(--green);background:repeating-linear-gradient(0deg,transparent 0 19px,var(--green) 20px 21px),repeating-linear-gradient(90deg,transparent 0 16px,var(--green) 17px 18px)}.skyline i:nth-child(2n){height:65%}.skyline i:nth-child(3n){height:95%}.chapter-intro{min-height:65vh;padding:70px 9% 50px;border-top:1px solid var(--line);position:relative;display:flex;flex-direction:column;justify-content:center;scroll-margin-top:64px}.chapter-intro .district-code{position:absolute;right:7%;top:8%;font-size:clamp(90px,15vw,200px);color:#dce1d6;font-weight:800;letter-spacing:-.07em;z-index:-1}.chapter-intro h2{font-family:var(--pique-display);font-size:clamp(36px,5vw,68px);line-height:1.05;font-weight:400;max-width:750px;margin:16px 0 20px;letter-spacing:-.03em}.chapter-intro .intro{font-size:18px;line-height:1.6;max-width:550px}.chapter-intro .prompt{font-size:12px;letter-spacing:.04em;margin-top:20px}.tour{position:relative;border-top:1px solid var(--line)}.stage{position:sticky;top:64px;height:clamp(310px,51vh,445px);z-index:2;margin:0;background:var(--pique-paper);border-bottom:1px solid var(--line);padding:12px 5% 9px;display:flex;flex-direction:column}.stage-top{display:flex;align-items:center;gap:20px}.stage-name{font-size:12px;font-weight:bold;margin-right:auto}.views{display:flex;gap:3px}.views button{background:none;border:0;padding:4px 10px;font-size:11px;min-height:30px;border-bottom:2px solid transparent}.views button.active{border-color:var(--orange);color:var(--orange)}.stage svg{width:100%;flex:1;min-height:0;display:block;overflow:visible}.stage svg text{font-family:Arial,sans-serif;fill:var(--pique-ink)}.legend{display:flex;gap:22px;align-items:center;font-size:10px;line-height:1.4}.legend span:before{content:"";display:inline-block;width:18px;height:8px;margin-right:6px;background:#ced8ca;border:1px solid #566b60}.legend span:nth-child(2):before{background:var(--lime);border:1px dashed var(--green)}.legend span:nth-child(3):before{background:#e5b89e;border:1px solid var(--orange)}.steps{max-width:1100px;margin:auto;padding:0 5%}.step{min-height:65vh;padding:46px 0 70px;display:grid;grid-template-columns:80px 1fr;gap:25px;align-content:start;scroll-margin-top:calc(51vh + 80px)}.step .number{font-family:Georgia,serif;font-size:38px;color:var(--orange);border-top:1px solid;padding-top:10px}.step h3{font-size:clamp(25px,3.2vw,40px);font-family:var(--pique-display);line-height:1.1;font-weight:400;margin:0 0 14px;letter-spacing:-.02em}.step p{max-width:680px;line-height:1.6;margin:8px 0;font-size:16px}.step .rule{font-size:13px;color:var(--green);font-weight:bold}.step .cite{font-size:10px;line-height:1.5;color:var(--pique-muted);max-width:680px}.step .assumption{font-size:12px;color:var(--pique-muted)}.step details{font-size:12px;margin-top:12px;max-width:680px}.step details p{font-size:12px}.step summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.next-chapter{padding:30px 9% 70px;text-align:right}.next-chapter a{font-size:18px;text-decoration:none;border-bottom:1px solid;padding-bottom:12px}footer{padding:70px 9% 100px;border-top:1px solid var(--line);background:#e5e8dc}footer h2{font-family:Georgia,serif;font-size:40px;font-weight:400}footer p{max-width:740px;font-size:14px;line-height:1.7}footer summary{cursor:pointer;font-size:14px} .source-id{overflow-wrap:anywhere;font-family:monospace;font-size:11px} 
@media(min-width:1500px){.stage{padding-left:15%;padding-right:15%}}
@media(max-width:650px){html{scroll-padding-top:62px}.nav{height:58px;padding:6px 4%;gap:7px}.brand{font-size:11px;letter-spacing:.03em}.brand span,.nav label{display:none}.nav select{min-width:0;width:155px;font-size:11px;max-width:48vw;padding:5px}.nav button{padding:6px 10px;font-size:11px}.opening{min-height:calc(100svh - 58px);padding:42px 6% 28px}h1{font-size:76px;margin:45px 0 30px}.eyebrow{font-size:9px}.opening-bottom{display:block}.opening-bottom p{font-size:16px;max-width:300px}.start{display:block;width:200px;margin-top:16px}.skyline{right:-12%;top:170px;width:65%;height:320px;opacity:.14}.draft-note{margin-top:28px;font-size:10px}.chapter-intro{min-height:62svh;padding:55px 6% 40px;scroll-margin-top:58px}.chapter-intro h2{font-size:40px}.chapter-intro .intro{font-size:16px}.chapter-intro .district-code{font-size:110px;top:6%;right:5%}.stage{top:58px;height:365px;max-height:48svh;padding:10px 4% 8px}.stage-top{gap:4px}.stage-name{font-size:11px}.views button{padding:3px 8px;font-size:10px}.legend{font-size:9px;gap:10px;flex-wrap:wrap}.legend span:before{width:12px}.steps{padding:0 6%}.step{grid-template-columns:32px 1fr;gap:13px;min-height:66svh;padding:28px 0 60px;scroll-margin-top:calc(48svh + 70px)}.step .number{font-size:23px}.step h3{font-size:28px}.step p{font-size:14px;line-height:1.55}.step .rule{font-size:12px}.step .assumption{font-size:11px}.step .cite{font-size:9px}.next-chapter{padding:15px 6% 50px}.next-chapter a{font-size:15px}footer{padding:55px 6%}footer h2{font-size:33px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}html[data-pique-reduced-motion="reduce"]{scroll-behavior:auto}
/* A quieter, original illustrated treatment. */
html{scroll-padding-top:20px}
.opening{min-height:100svh}
.stage{top:0;height:clamp(390px,58vh,540px);padding:16px 5% 12px;background:#fbfaf7;border-bottom:1px solid #e6e5de}
.stage-name{font-weight:600;letter-spacing:.025em;color:#646b63}
.projection-note{font-size:11px;color:#767b72}
.stage-top{padding-bottom:5px}
.legend{justify-content:center;font-size:11px;color:#60695f}
.legend span:first-child:before{background:#e8dac1;border-color:#b9ab93}
.legend span:nth-child(2):before{background:#c6dabb}
.legend span:nth-child(3):before{background:#e6ac83}
.chapter-intro{scroll-margin-top:0}
.steps{max-width:910px}
.step{grid-template-columns:42px 1fr;gap:22px;padding-top:30px}
.step .number{font-family:Arial,sans-serif;font-size:18px;border:0;color:#939c88}
.step h3{font-size:clamp(28px,3vw,38px)}
@media(max-width:650px){
 .stage{top:0;height:430px;max-height:54svh;padding:12px 3% 10px}
 .stage-name{font-size:10px}.projection-note{font-size:9px}
 .legend{gap:12px;font-size:10px}
 .opening{min-height:100svh}.chapter-intro{scroll-margin-top:0}
 .step{grid-template-columns:25px 1fr;gap:12px;padding-top:24px}
 .step h3{font-size:28px}
}
