:root{--green:#173d32;--deep:#122f27;--ink:#182e27;--soft:#51645a;--line:#d9dfd4;--paper:#fffef9;--ground:#f4f4ec;--accent:#e7f2a8;--tint:#ecf1e3;--sans:"DM Sans",Inter,"Segoe UI",Arial,sans-serif;--serif:"Instrument Serif","Iowan Old Style",Georgia,serif;--mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Consolas,monospace;font:15px/1.45 var(--sans);color:var(--ink);background:var(--ground);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #5a887b;outline-offset:3px}button{border:none;background:none}button:disabled{opacity:.5;cursor:default}button svg,span[data-icon] svg{vertical-align:middle}.icon{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}button,.label-line,.mono-line,.reset,.small-btn,.search,.who,.chip,.list-head,.section-head,.person,.dialog-title,.event-name,.actions,.hgroup,.brand,.overline{display:flex;align-items:center}.topbar{background:var(--green);color:white}.topinner,.shell{max-width:1510px;margin:auto;padding:0 clamp(20px,4.1vw,68px)}.topinner{height:61px;display:flex;align-items:center;gap:18px}.brand{gap:10px;font:600 22px/1 var(--sans);letter-spacing:-1.1px}.mark{display:flex;flex-direction:column;justify-content:space-between;width:23px;height:23px;transform:skewY(-17deg);color:var(--accent)}.mark i{display:block;height:5px;background:currentColor;border-radius:1px}.mark i:nth-child(2){width:74%}.mark i:nth-child(3){width:46%}.brandline{width:1px;height:18px;background:#6b8475}.workspace,.reset{font-size:12px;color:#e3e9df}.reset{gap:8px;margin-left:auto;border:1px solid #5e786a;border-radius:5px;padding:6px 11px}.reset:hover{background:#295041}.reset svg{width:14px;height:14px}.mast{display:flex;align-items:flex-end;justify-content:space-between;padding:33px 0 24px}.overline,.mono-line,.label-line,.eyebrow,.when,.job-tag,.plate{font:600 10px/1.35 var(--mono);letter-spacing:1.1px;text-transform:uppercase}.overline{gap:8px;font-size:10px;color:var(--soft);letter-spacing:1.5px}.little-line{width:19px;height:2px;background:#738873}h1,h2,h3,p{margin:0}h1,.hero h2,.next h3{font-family:var(--serif);font-weight:400}h1{font-size:clamp(45px,4.25vw,67px);letter-spacing:-.055em;line-height:1.04;margin-top:6px}.edition-wrap{display:flex;flex-direction:column;gap:6px}.edition-label{font-size:11px;font-weight:600;color:var(--soft)}#editions{display:flex;gap:3px;padding:3px;background:#e7ebdf;border:1px solid #d3dacb;border-radius:7px}#editions button{padding:8px 14px;gap:8px;border-radius:4px;font-size:13px;font-weight:600}#editions button[aria-pressed=true]{background:var(--green);color:white;box-shadow:0 1px 2px #172b281c}#editions button[aria-pressed=false]:hover{background:#d9e1d0}.layout{display:grid;grid-template-columns:clamp(248px,23.4vw,328px) minmax(0,1fr);gap:20px;align-items:start}.panel,.hero,.section-box,.next{border:1px solid var(--line);border-radius:9px;background:var(--paper)}.directory{overflow:hidden}.dir-head,.section-head{display:flex;align-items:center;justify-content:space-between}.dir-head{padding:19px 17px 13px}.dir-head h2,.section-head h3{font-size:16px;line-height:1.3;letter-spacing:-.45px;font-weight:650}.dir-head h2{display:flex;align-items:center;gap:8px}#count{background:#e9ecdf;border-radius:4px;min-width:21px;text-align:center;font:600 11px/21px var(--mono);color:var(--soft)}.small-btn{gap:5px;border:1px solid #c7d1c5;padding:6px 9px;border-radius:5px;background:#fffef9;font-size:12px;font-weight:600;white-space:nowrap}.small-btn:hover,.dots:hover,.ghost:hover{background:#edf0e5}.small-btn svg{width:14px;height:14px}.search{gap:8px;background:#f6f7f0;border:1px solid var(--line);border-radius:5px;margin:0 17px 13px;padding:6px 10px;color:var(--soft)}.search input{min-width:0;width:100%;background:none;border:0;outline:0;font-size:13px;color:var(--ink);height:20px}.search:focus-within{outline:2px solid #738e7a}.search input:focus-visible{outline:none}.search svg{width:15px;height:15px}#jobs{padding:0 8px 9px}.job-row{display:flex;align-items:center;gap:10px;position:relative;width:100%;text-align:left;min-height:74px;padding:13px 9px;border:1px solid transparent;border-top-color:#e5e8de}.job-row.active{border-color:#c8d7bc;background:#e8efdd;border-radius:6px}.job-row.active+.job-row{border-top-color:transparent}.job-row:hover:not(.active){background:#f4f5ed}.job-row .arrow{margin-left:auto;width:14px;color:var(--soft)}.initial{width:34px;height:34px;display:grid;place-items:center;flex-shrink:0;border:1px solid #d0dacb;border-radius:50%;font:600 11px var(--mono);letter-spacing:.1px}.row-copy{overflow:hidden}.row-copy strong,.row-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-copy strong{font-size:14px;font-weight:650}.row-copy small{font-size:12px;color:var(--soft);margin-top:2px}.hero{position:relative;min-height:178px;overflow:hidden;background:var(--green);color:#fffdf1;isolation:isolate;border-color:var(--green);display:flex;align-items:center}.hero:before{content:"";position:absolute;inset:0 0 0 49%;z-index:-2;background-image:linear-gradient(#e0efc408 1px,transparent 1px),linear-gradient(90deg,#e0efc408 1px,transparent 1px);background-size:15px 15px;mask-image:linear-gradient(90deg,transparent,#000 25%)}.drawing{position:absolute;right:1%;top:4%;height:91%;width:38%;z-index:-1}.plate{position:absolute;bottom:10px;right:16px;color:#adc3a6;font-size:8px;letter-spacing:1.8px}.hero-copy{max-width:63%;padding:24px 0 24px 26px}.hero .mono-line{color:#dbeab9;gap:8px}.hero .mono-line:before{content:"";width:16px;height:1px;background:#c1d69f}.hero h2{font-size:clamp(31px,3.5vw,56px);line-height:1.05;letter-spacing:-.055em;margin:11px 0 12px;overflow-wrap:anywhere}.who{gap:8px;flex-wrap:wrap;font-size:13px;color:#eef2e6}.who .sep{color:#bdcbbb}.hero .icon{width:15px;height:15px}.record-bar{display:flex;align-items:center;gap:10px;padding:13px 1px 15px;min-height:52px}.status{border-radius:20px;padding:4px 10px;display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:650;line-height:1.4;border:1px solid #c9d4ba;background:#edf3d9;white-space:nowrap}.status:before,.status-light{content:"";width:6px;height:6px;border-radius:50%;background:#557640}.edition-name{color:var(--soft);font-size:12px}.bar-actions{margin-left:auto;display:flex;align-items:center;gap:6px}.ghost,.dots{padding:5px;color:var(--soft);border-radius:4px;font-size:12px;gap:5px}.ghost svg,.dots svg{width:15px;height:15px}.next{display:grid;grid-template-columns:1fr auto;align-items:center;gap:13px;padding:19px 21px;background:var(--tint);border-color:#cdd9c5;position:relative}.eyebrow{color:var(--soft);font-size:10px;display:flex;gap:7px;align-items:center}.eyebrow svg{width:14px;height:14px}.next h3{font-size:clamp(24px,2.1vw,34px);letter-spacing:-.045em;line-height:1.1;margin:7px 0 4px}.next p{font-size:12px;color:var(--soft);line-height:1.5}.primary{gap:8px;justify-content:center;border:1px solid var(--green);border-radius:5px;padding:9px 12px;background:var(--green);color:white;font-size:12px;font-weight:600;white-space:nowrap}.primary:hover{background:#2f5643}.primary svg{width:14px;height:14px}.cards{margin-top:15px;display:grid;grid-template-columns:1.13fr 1fr;gap:15px}.section-box{padding:17px 19px;min-width:0}.section-head{min-height:23px;margin-bottom:12px;gap:6px}.hgroup{gap:8px;min-width:0}.hgroup .icon{color:#566d56;width:17px}.section-head h3{font-size:15px}.list-data{margin:0}.data-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid #e8eae0;line-height:1.45;font-size:12px}.data-row dt{color:var(--soft)}.data-row dd{margin:0;font-weight:550;text-align:right;overflow-wrap:anywhere;min-width:0}.data-row .blank{color:#798376;font-weight:400}.person{gap:11px;margin-bottom:10px}.person strong{font-size:14px}.person small{display:block;color:var(--soft);font-size:11px}.contact-list{padding-top:8px;border-top:1px solid #e8eae0;display:grid;gap:8px;font-size:12px}.contact-list div{display:flex;align-items:center;gap:9px;overflow-wrap:anywhere}.contact-list .icon{width:14px;height:14px;color:var(--soft)}.history{margin-top:15px}.history .section-head{margin-bottom:6px}.timeline{display:grid}.event{display:grid;grid-template-columns:16px 1fr auto;gap:9px;position:relative;padding:8px 0;align-items:start}.event:before{position:absolute;left:5px;top:16px;bottom:-12px;width:1px;background:#d8dfd1;content:""}.event:last-child:before{display:none}.pin{width:8px;height:8px;border-radius:50%;margin:5px 0 0 2px;border:1px solid #7d9278;background:#f2f5e9;z-index:1}.event:first-child .pin{background:#63805b}.event-name{font-size:12px;font-weight:550;overflow-wrap:anywhere;display:block}.when{font-weight:400;color:var(--soft);font-size:10px;letter-spacing:.3px;line-height:1.8}.mute{color:var(--soft);font-size:13px}.no-jobs{padding:22px 11px;color:var(--soft);font-size:13px}.empty{text-align:center;display:grid;justify-items:center;gap:12px;padding:52px 20px}.empty h2{font:400 32px var(--serif)}footer{display:flex;align-items:center;justify-content:center;gap:7px;padding:22px 0;color:var(--soft);font-size:11px}.status-light{background:#798d6e;width:5px;height:5px}
dialog{border:1px solid #bcc8b8;border-radius:12px;background:var(--paper);color:var(--ink);padding:0;width:min(520px,calc(100% - 26px));max-height:88dvh;box-shadow:0 16px 70px #112d272b}dialog::backdrop{background:#102b23a3}.dialog-title{padding:18px 21px;justify-content:space-between;border-bottom:1px solid var(--line)}.dialog-title h2{font:400 28px/1.15 var(--serif);letter-spacing:-.04em}.dialog-title button{padding:6px;border-radius:50%}form,.dialog-content{padding:18px 21px 21px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid h3,.form-grid .wide{grid-column:1/-1}.form-grid h3{font-size:13px;margin:5px 0 0;border-top:1px solid var(--line);padding-top:12px}.form-grid label{display:grid;gap:4px;align-content:start;font-size:12px;font-weight:600}.form-grid input,.form-grid textarea,.form-grid select{width:100%;min-width:0;padding:8px;border:1px solid #cbd3c4;border-radius:4px;background:#fff;color:var(--ink);font-size:14px}.form-grid textarea{min-height:66px;resize:vertical}.dialog-content p,form>p{font-size:14px;color:var(--soft);margin:0 0 15px}.actions{gap:8px;justify-content:flex-end;margin-top:18px}.danger{background:#90462f;border-color:#90462f}.actions .small-btn{padding:9px 12px}.field-edit{align-self:stretch}.fields-list{margin:0;padding:0;list-style:none}.fields-list li{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:9px 0;font-size:13px}.fields-list small{color:var(--soft)}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);border-radius:6px;background:var(--deep);color:white;font-size:13px;box-shadow:0 3px 12px #173d3220;z-index:10;max-width:92%;text-align:center}#toast:not(:empty){padding:10px 15px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1550px){.job-row{min-height:79px}.hero{min-height:205px}}
@media(max-width:1100px){.layout{grid-template-columns:235px minmax(0,1fr);gap:14px}.topinner,.shell{padding-inline:24px}.cards{gap:11px}.section-box{padding:15px}.next{padding:16px}.dir-head{padding-inline:13px}.hero-copy{padding-left:20px}.data-row{font-size:11.8px}}
@media(max-width:825px){.layout{grid-template-columns:205px minmax(0,1fr)}.section-box{padding:14px}.cards{grid-template-columns:1fr}.next{grid-template-columns:1fr}.next .primary{justify-self:start}.edition-name{display:none}.hero-copy{max-width:67%}.drawing{opacity:.8;right:-1%}.hero{min-height:158px}.dir-head{padding-inline:10px}.search{margin-inline:10px}.row-copy strong{font-size:13px}.row-copy small{font-size:11px}.job-row{gap:8px;padding-inline:6px}.initial{width:29px;height:29px}}
@media(max-width:640px){.topinner,.shell{padding-inline:15px}.topinner{height:54px;gap:12px}.workspace{font-size:11px}.brand{font-size:20px}.reset{font-size:11px;padding:6px 8px}.mast{padding:20px 0 15px;align-items:center;gap:10px}.overline{font-size:8px;letter-spacing:1px}.little-line{width:12px}h1{font-size:39px}.edition-label{font-size:10px}.edition-wrap{gap:3px}#editions button{font-size:11px;padding:6px;gap:4px}#editions .icon{width:13px;height:13px}.layout{display:flex;flex-direction:column;gap:12px}.directory,#detail{width:100%}.dir-head{padding:10px 12px}.dir-head h2{font-size:14px}.search{margin:0 12px 8px;padding:3px 8px}.job-row .arrow{display:none}#jobs{display:flex;overflow-x:auto;padding:0 10px 8px;gap:4px;scroll-snap-type:x proximity}.job-row{min-width:145px;width:auto;min-height:45px;max-width:200px;scroll-snap-align:start;padding:7px;border:1px solid var(--line);border-radius:5px}.job-row.active+.job-row{border-top-color:var(--line)}.job-row .initial{display:none}.job-row .row-copy small{font-size:10px}.hero-copy{padding:18px 0 18px 15px;max-width:67%}.hero .mono-line{font-size:9px}.hero{min-height:143px}.hero h2{font-size:34px;margin:9px 0}.who{font-size:11px;gap:4px}.hero .icon{width:12px;height:12px}.plate{right:9px;bottom:8px;font-size:6px}.record-bar{padding:8px 1px;min-height:40px}.edition-name{display:block;font-size:10px}.cards{grid-template-columns:1fr 1fr}.section-box{padding:14px}.data-row{flex-wrap:wrap;gap:1px 7px}.data-row dd{margin-left:auto}.next{grid-template-columns:1fr auto;gap:9px}.next h3{font-size:23px}.next p{font-size:11px}.section-head h3{font-size:14px}.history{margin-top:11px}.contact-list{font-size:11px}}
@media(max-width:490px){.cards{grid-template-columns:1fr}.next{grid-template-columns:1fr}.next .primary{padding:7px 12px}.brandline,.workspace{display:none}.data-row{font-size:12px}.edition-name{display:none}.dialog-title h2{font-size:25px}.form-grid{gap:10px}.hero h2{font-size:30px}.who .sep{display:none}.who .town{flex-basis:100%;margin-left:16px}}
@media(prefers-reduced-motion:no-preference){button{transition:background .12s ease}}
.tone-0{background:#e9e6d9;color:#77684b}.tone-1{background:#e6e4eb;color:#665d77}.tone-2{background:#d4e3cf;color:#3f654b}.tone-3{background:#ece1d4;color:#775d47}.tone-4{background:#dce6e3;color:#4b6967}
[data-edition=roofing]{--tint:#f4eddf;--deep:#3e3f2d}
[data-edition=roofing] .next{border-color:#ded5bb}
#metrics{display:grid;grid-template-columns:1fr 1fr;margin:0 17px 12px;padding:9px 0;background:#f3f5ec;border-radius:5px}
#metrics div{display:flex;flex-direction:column;gap:2px;padding:0 9px}
#metrics div+div{border-left:1px solid var(--line)}
#metrics b{font:550 17px/1.2 var(--sans);letter-spacing:-.6px}
#metrics span{font-size:10px;color:var(--soft)}
.dots:has(span){gap:4px;font-size:11px}
.job-row{min-height:66px}
@media(max-width:825px){#metrics{margin-inline:10px}#metrics span{font-size:9px}}
@media(max-width:640px){#metrics{margin:0 12px 8px;padding:5px 0}#metrics div{flex-direction:row;align-items:center;gap:5px}#metrics b{font-size:12px}#metrics span{font-size:10px}.job-row{min-height:45px}}
