:root{--ink:#142b38;--muted:#50646e;--teal:#126d68;--paper:#f7f7f2;--line:#cdd7d5;--white:#fff;--copper:#a06536;--sans:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--serif:Iowan Old Style,Palatino,'Book Antiqua',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:var(--teal);text-underline-offset:4px}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--copper);outline-offset:5px}button{font:inherit;cursor:pointer}p{margin:0 0 1em}h1,h2,h3{margin:0;font-weight:500;line-height:1.1;letter-spacing:-.035em}h2{font-family:var(--serif);font-size:clamp(35px,4.1vw,62px);font-weight:400}h3{font-size:20px;letter-spacing:-.02em}main{max-width:1440px;margin:auto}.masthead,footer{max-width:1520px;margin:auto;padding:28px 48px;display:flex;align-items:center;gap:30px;justify-content:space-between}.masthead{border-bottom:1px solid var(--line);font-size:13px}.brand{font-size:15px;font-weight:650;letter-spacing:.12em;color:var(--ink);text-decoration:none}.masthead>span{margin-right:auto;color:var(--muted)}.masthead>a:last-child{font-size:13px}.skip{position:absolute;top:-100px;z-index:20;background:white;padding:15px}.skip:focus{top:0}.hero{padding:68px 48px 0}.eyebrow{font-size:11px;letter-spacing:.17em;font-weight:650;color:var(--teal)}.hero-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:100px;padding:24px 0 54px;align-items:end}h1{font-family:var(--serif);font-weight:400;font-size:clamp(60px,7.2vw,108px);letter-spacing:-.055em}.hero-statement{font-family:var(--serif);font-size:clamp(28px,3.2vw,47px);line-height:1.16;letter-spacing:-.02em;margin:28px 0 0}.hero-statement em{color:var(--teal);font-weight:400}.hero-copy{max-width:510px;font-size:18px;line-height:1.7;color:var(--muted)}.hero-copy p+p{font-size:16px}.primary{display:inline-flex;align-items:center;gap:50px;text-decoration:none;margin-top:10px;padding:12px 0 8px;border-bottom:1px solid var(--teal);font-size:15px;font-weight:600;color:var(--teal)}.publication{border-top:1px solid var(--line);padding:19px 0;display:flex;gap:28px;flex-wrap:wrap;font-size:11px;color:var(--muted)}.publication span:first-child{color:var(--teal);font-weight:650}.publication i{display:inline-block;width:6px;height:6px;background:var(--teal);border-radius:50%;margin-right:7px}.publication span:last-child{margin-left:auto}.section-nav{z-index:5;position:sticky;top:0;margin:0 48px;padding:18px 0;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;overflow-x:auto;white-space:nowrap}.section-nav a{font-size:12px;text-decoration:none;color:var(--muted)}.section-nav a:hover{color:var(--teal)}.chapter{padding:76px 48px 80px;border-bottom:1px solid var(--line)}.section-label{display:flex;gap:23px;align-items:center;font-size:11px;text-transform:uppercase;letter-spacing:.13em;margin-bottom:32px;color:var(--teal);font-weight:650}.section-label span:first-child{font-weight:500;color:var(--muted)}.chapter-head{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start;margin-bottom:42px}.chapter-head>p{font-size:18px;color:var(--muted);max-width:550px;margin-top:5px}.map-shell{background:var(--white);border:1px solid var(--line)}.map-toolbar,.map-caption{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;gap:20px;font-size:12px}.map-toolbar{border-bottom:1px solid var(--line)}.map-toolbar>span{font-weight:600}.map-toolbar>div{display:flex;align-items:center;gap:12px}.map-toolbar button{border:1px solid var(--line);background:var(--white);padding:4px 10px;color:var(--ink);font-size:13px;min-height:32px}.map-toolbar button:hover{background:#e6eeeb}.map-toolbar output{min-width:43px;font-variant-numeric:tabular-nums;text-align:center}.map-toolbar button:disabled{opacity:.4;cursor:default}#map-viewport{overflow:auto;max-height:850px;background:#fff;overscroll-behavior:contain;scrollbar-color:#73948f #ecf0ed}#map-viewport svg{display:block;width:100%;height:auto;max-width:none}.map-caption{border-top:1px solid var(--line);color:var(--muted)}.thesis-row{margin-top:45px;display:grid;grid-template-columns:1fr 1fr;gap:90px}.thesis-row strong{font-family:var(--serif);font-size:31px;font-weight:400;line-height:1.15}.thesis-row p{color:var(--muted);margin:0;font-size:16px}.triptych{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border-top:1px solid var(--line);padding-top:29px}.triptych article{padding-right:20px}.triptych h3{color:var(--teal);margin-bottom:17px}.triptych p{color:var(--muted);font-size:15px}.contract-note{margin:25px 0 35px;padding:25px 30px;background:#e8efeb;border-left:2px solid var(--teal);font-size:16px}.diagram-detail{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.diagram-detail summary,.full-spec summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:20px 25px;font-size:14px;font-weight:550}.diagram-detail summary::-webkit-details-marker,.full-spec summary::-webkit-details-marker{display:none}.diagram-detail summary:hover,.full-spec summary:hover{background:#edf2ed}.diagram-detail summary span,.full-spec summary span{font-size:23px;color:var(--teal)}.diagram-detail[open] summary span,.full-spec[open] summary span{transform:rotate(45deg)}.diagram-detail svg{display:block;width:100%;height:auto;max-height:1350px}.diagram-tools{text-align:right;padding:12px 25px;font-size:12px}.assumption{background:var(--ink);color:#e9efe9;padding:30px 35px;margin:20px 0 35px;display:grid;grid-template-columns:1fr 2fr;gap:40px}.assumption strong{font-family:var(--serif);font-weight:400;font-size:25px;line-height:1.3;color:#d5ab85}.assumption p{font-size:15px;color:#d2dddc;margin:0}.table-scroll{overflow:auto;margin:25px 0}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;min-width:740px}caption{text-align:left;font-size:12px;color:var(--muted);margin-bottom:17px}th,td{border-bottom:1px solid var(--line);padding:19px 20px 19px 0;vertical-align:top}thead th{text-transform:uppercase;font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--teal);border-top:1px solid var(--line)}tbody th{font-weight:550;min-width:145px}tbody td{color:var(--muted)}.status{border:1px solid #c8cfc5;background:#edf0e8;border-radius:3px;color:#4e6049;padding:3px 6px;font-size:10px;white-space:nowrap}.fine{font-size:12px;line-height:1.7;color:var(--muted)}.trial{list-style:none;padding:0;margin:20px 0;display:grid;grid-template-columns:1fr 1fr;column-gap:50px}.trial li{display:flex;gap:25px;border-top:1px solid var(--line);padding:25px 0}.trial li>span{font-family:var(--serif);font-size:35px;font-weight:400;color:#8a9e94;line-height:1}.trial h3{font-size:20px;margin-bottom:10px}.trial p{font-size:15px;color:var(--muted);max-width:430px;margin:0}.measure{padding:27px 30px;background:var(--ink);color:white;margin:20px 0 35px}.measure strong{font-size:18px;font-weight:500}.measure p{font-size:14px;color:#cfddda;margin:8px 0 0}.full-spec{margin-top:30px;border:1px solid var(--line);background:#fff}.prose{max-width:980px;margin:auto;padding:25px 45px 50px;font-size:16px;line-height:1.8}.prose h3{font-family:var(--serif);font-size:31px;margin:48px 0 25px}.prose h3:first-child{margin-top:10px}.prose p,.prose li{color:#344b55}.prose li{padding:4px 0}.prose code{font-size:12px;background:#edf2ef;padding:2px 4px;overflow-wrap:anywhere}.prose table{font-size:13px}.references ul{list-style:none;margin:15px 0 25px;padding:0}.references li{padding:13px 0;border-bottom:1px solid var(--line);font-size:15px;color:var(--muted)}.review-prompt{padding:40px 0 0;max-width:850px}.review-prompt>p:first-of-type{font-family:var(--serif);font-size:31px;line-height:1.3;margin:16px 0}.review-prompt>p:last-child{color:var(--muted);font-size:14px}footer{font-size:11px;color:var(--muted);padding-top:40px;padding-bottom:40px}
@media(min-width:1600px){#map-viewport{max-height:970px}}
@media(max-width:900px){.masthead,footer{padding:24px}.masthead>span{display:none}.hero{padding:45px 24px 0}.hero-grid{gap:35px;grid-template-columns:1fr;padding-bottom:35px}.hero-copy{max-width:650px}.hero-statement{font-size:35px}.publication{gap:13px}.publication span:last-child{margin-left:0;flex-basis:100%}.section-nav{margin:0 24px;gap:28px;justify-content:flex-start}.chapter{padding:55px 24px}.chapter-head{grid-template-columns:1fr;gap:23px;margin-bottom:30px}.chapter-head p{max-width:650px;font-size:17px}.triptych{gap:20px}.thesis-row{gap:30px;grid-template-columns:1fr 1.4fr}.assumption{grid-template-columns:1fr;gap:15px}.map-toolbar{flex-wrap:wrap}.map-caption{align-items:start}.map-caption span{max-width:230px}.diagram-detail svg{max-height:none}.prose{padding:20px 25px 40px}}
@media(max-width:580px){body{font-size:15px}h1{font-size:66px}.hero-statement{font-size:32px}.hero-copy{font-size:17px}.triptych{grid-template-columns:1fr;gap:15px}.triptych article{border-bottom:1px solid var(--line);padding:0 0 15px}.triptych p{margin:0}.trial{grid-template-columns:1fr}.thesis-row{grid-template-columns:1fr;gap:20px}.contract-note{padding:22px;font-size:15px}.assumption{padding:25px}.map-toolbar{padding:12px;gap:12px}.map-toolbar>div{gap:8px;flex-wrap:wrap}.map-toolbar a{font-size:11px}.map-caption{padding:12px;font-size:10px}.diagram-detail summary,.full-spec summary{padding:18px;font-size:13px}footer{flex-wrap:wrap;gap:15px}footer>span{order:3;flex-basis:100%}footer>a:last-child{margin-left:auto}.prose{padding:12px 18px 30px;font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{body{background:white;font-size:11px}.section-nav,.map-toolbar,.primary,.skip{display:none}.hero,.chapter{padding:25px 0}.hero-grid,.chapter-head{gap:25px}.hero h1{font-size:50px}h2{font-size:30px}.hero-statement{font-size:26px}.masthead,footer{padding:15px 0}.publication{font-size:9px}#map-viewport{max-height:none!important}#map-viewport svg{width:100%!important}.table-scroll{overflow:visible}table{min-width:0;font-size:10px}th,td{padding:10px 8px 10px 0}a{color:inherit}.diagram-detail,.full-spec{break-inside:auto}.chapter-head,.triptych article,.trial li{break-inside:avoid}.prose{padding:15px 0;max-width:none;font-size:11px}}
.rfc-links{display:flex;flex-wrap:wrap;gap:14px 26px;font-size:13px;margin:25px 0}.prose pre{background:#142b38;color:#e7eeeb;padding:22px;overflow:auto;line-height:1.65;font-size:13px;border-radius:3px}.prose pre code{background:none;color:inherit;font-size:inherit;padding:0;overflow-wrap:normal}#rfc-001>.fine{margin-top:24px}
/* Publication identity: the full claim and accountable author share the opening frame. */
.hero-subtitle{display:block;font-size:clamp(30px,3.05vw,45px);line-height:1.17;letter-spacing:-.025em;margin-top:24px;max-width:660px;color:var(--teal)}
.author{display:grid;gap:5px;margin-top:32px;padding-left:18px;border-left:2px solid var(--copper);font-family:var(--sans)}
.author-label{font-size:10px;letter-spacing:.18em;font-weight:650;color:var(--muted)}
.author-name{font-size:25px;letter-spacing:-.02em;font-weight:550;line-height:1.4}
.author a{font-size:14px;width:fit-content;text-decoration:none;letter-spacing:.01em}
.author a:hover{text-decoration:underline}
.hero-copy .claim-scope{font-size:15px;line-height:1.75;margin-top:22px}
@media(max-width:900px){.hero-subtitle{font-size:36px;max-width:650px}.hero-grid{gap:30px}.author{margin-top:28px}}
@media(max-width:580px){.hero-subtitle{font-size:30px}.author-name{font-size:23px}.hero h1{font-size:clamp(52px,12vw,66px)}}
@media print{.hero-subtitle{font-size:25px}.author-name{font-size:18px}.author{margin-top:20px}.author a{font-size:12px}}
/* Affiliation belongs to the author, not the architecture's vocabulary. */
.author-affiliation{font-size:18px;font-weight:400;white-space:nowrap}
.author .author-affiliation a{font-size:inherit;letter-spacing:0}
@media(max-width:580px){.author-affiliation{font-size:17px}}
