:root{--paper:#f0f5f6;--ink:#20323a;--accent:#245b6e;--panel:#dbe9ed;--on-accent:#ffffff}@font-face{font-family:Display;src:url("fonts/display.ttf") format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Body;src:url("fonts/body.ttf") format("truetype");font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:var(--accent) var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 Body,sans-serif}::selection{background:var(--accent);color:var(--paper)}a{color:inherit;text-underline-offset:.22em;min-height:24px;display:inline-flex;align-items:center}a:hover{color:var(--accent)}a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1,h2,h3{font-family:Display,serif;line-height:1.08;text-wrap:balance;font-weight:600}h1{font-size:clamp(2.6rem,5vw,5rem);max-width:16ch;margin:0 0 1.5rem;letter-spacing:-.025em}h2{font-size:clamp(1.8rem,3vw,2.8rem);margin:0 0 1rem}h3{font-size:1.5rem}p{max-width:70ch;margin:.6rem 0 1rem}main{max-width:1180px;margin:auto;padding:0 2rem 3rem}img{max-width:100%;height:auto;display:block}figure{margin:0}figcaption{font-size:.9rem;padding:.7rem 0}address{font-style:normal;line-height:1.8}.j93-mast{max-width:1280px;margin:auto;padding:1.4rem 3rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;border-bottom:1px solid var(--ink)}.j93-mast nav{display:flex;flex-wrap:wrap;gap:.3rem 1.3rem}.j93-brand{font:1.8rem/1.2 Display,serif;text-decoration:none}.j93-mast p{font-size:.9rem;margin:.4rem 0 0}.j93-mast [aria-current=page]{font-weight:bold;text-decoration-thickness:3px}.j93-header-phone{margin-top:.5rem}.j93-skip{position:absolute;left:1rem;top:-6rem;background:var(--paper);padding:.7rem 1rem;z-index:10}.j93-skip:focus{top:1rem}.j93-action{display:inline-flex;padding:.85rem 1.4rem;min-height:48px;background:var(--accent);color:var(--on-accent);font-weight:bold;text-decoration:none;align-self:start}.j93-action:hover{color:var(--on-accent);text-decoration:underline}.j93-owner{display:grid;grid-template-columns:.7fr 1.3fr;gap:3rem;align-items:center;padding:3rem 0;margin-top:3rem;border-top:1px solid}.j93-owner img{max-height:20rem;object-fit:cover;width:100%}.j93-credentials{padding:2rem;background:var(--panel);margin:3rem 0;overflow-wrap:anywhere}.j93-credentials p{margin:.6rem 0}.j93-reviews{padding:3rem 0}.j93-reviews article{border-top:1px solid;border-bottom:1px solid;padding:1.5rem 0;margin:1.4rem 0}.j93-reviews a{margin-top:.6rem}.j93-work{margin:3rem 0}.j93-work img{width:100%;max-height:25rem;object-fit:cover}.j93-service-directory{padding:3rem 0}.j93-service-directory dl{margin:0}.j93-service-directory dl div{display:grid;grid-template-columns:1fr 1.4fr;gap:2rem;padding:1.4rem 0;border-bottom:1px solid}.j93-service-directory dt{font:1.5rem Display,serif}.j93-service-directory dd{margin:0}.j93-service-directory a{display:flex}.j93-trade-notes{padding:2rem 0;border-top:1px solid}.j93-site-foot{display:grid;grid-template-columns:1.4fr 1fr;gap:3rem;padding:3rem max(2rem,calc((100vw - 1116px)/2));background:var(--panel);border-top:1px solid}.j93-site-foot>div{display:flex;flex-direction:column;align-items:start;gap:.65rem}.j93-inside{padding-top:3rem}.j93-contact-options{display:flex;flex-wrap:wrap;gap:1rem;margin:2rem 0}.j93-contact-options a{padding:.8rem 1rem;border:1px solid}.j93-questions{max-width:54rem;margin:3rem 0}.j93-questions details{border-top:1px solid;padding:1rem 0}.j93-questions summary{cursor:pointer;min-height:44px;display:flex;justify-content:space-between;gap:1.5rem;align-items:center;font-weight:bold}.j93-questions summary::after{content:'+';font-size:1.6rem}.j93-questions details[open] summary::after{content:'−'}.j93-questions details p{padding:1rem 0;margin:0}.j93-closing{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2rem;background:var(--panel);margin:3rem 0}.j93-opening{animation:arrive .5s ease-out}@keyframes arrive{from{filter:blur(1px)}to{filter:blur(0)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.j93-opening{animation:none}}.j93-drying-journal{display:grid;grid-template-columns:.9fr 1.1fr;gap:2rem 5rem;padding:4rem 0}.j93-drying-journal>header{grid-row:span 2;padding-top:1rem}.j93-drying-journal h1{font-size:clamp(2.6rem,4.5vw,4.3rem);max-width:12ch}.j93-record-lead{padding:1rem 0;border-top:1px solid}.j93-record-entries{list-style:none;padding:0 2rem;margin:0;background:var(--panel)}.j93-record-entries li{padding:1.2rem 0;border-bottom:1px solid}.j93-record-entries li:last-child{border:0}.j93-record-entries h2{font-size:1.7rem;margin-bottom:.6rem}.j93-drying-journal>aside{grid-column:1/-1;border-top:1px solid;padding:1.5rem 0}@media(max-width:760px){main{padding:0 1.2rem 2rem}.j93-mast{padding:1.2rem;display:block}.j93-mast nav{gap:.15rem 1rem;margin-top:.8rem}.j93-mast nav a{min-height:44px}.j93-mast p{max-width:100%}a{min-height:44px;overflow-wrap:anywhere}.j93-brand{min-height:44px}h1{font-size:2.7rem;max-width:18ch}h2{font-size:1.9rem}.j93-opening{padding:0}.j93-opening>*{width:100%;max-width:100%;margin-left:0;margin-right:0;float:none}.j93-opening section,.j93-opening header,.j93-opening article,.j93-opening aside,.j93-opening div{grid-template-columns:minmax(0,1fr);gap:1rem}.j93-opening>section,.j93-opening>header,.j93-opening>div{padding:2rem 0;margin-top:0;margin-bottom:0}.j93-opening .j93-action{width:auto;padding:.8rem 1.2rem}.j93-opening dl,.j93-opening ol{display:block}.j93-opening dl div,.j93-opening ol li{margin:.7rem 0;padding:1.1rem}.j93-opening div div{grid-column:auto;grid-row:auto}.j93-opening section>h2,.j93-opening section>a,.j93-opening dl div{grid-column:auto}.j93-opening table{font-size:.9rem}.j93-opening th,.j93-opening td{padding:.7rem}.j93-opening aside{border-radius:0;padding:1.2rem}.j93-opening p{max-width:100%}.j93-opening strong{font-size:1.6rem}.j93-owner,.j93-site-foot{display:block}.j93-owner{gap:0}.j93-owner>div{padding-top:2rem}.j93-site-foot>div{margin-top:2rem;gap:.2rem}.j93-service-directory dl div{display:block}.j93-service-directory dd{margin:.5rem 0}.j93-credentials{padding:1.2rem}.j93-closing{display:block;padding:1.2rem}.j93-closing a{margin-top:1rem}.j93-contact-options{display:grid;grid-template-columns:1fr 1fr}.j93-opening .j93-material-title,.j93-opening .j93-booking,.j93-opening .j93-surface-head,.j93-opening .j93-counter-title,.j93-opening .j93-vent-booking,.j93-opening .j93-handover-call,.j93-opening .j93-inspection-evidence aside,.j93-opening .j93-sweep-report footer{display:block}.j93-opening .j93-tall-mirror{min-height:12rem;border-radius:5rem 5rem 0 0}.j93-opening .j93-room-plan{padding:1rem}.j93-opening .j93-room-plan a{min-height:8rem;padding:1.2rem}.j93-opening .j93-stoop a{width:100%;font-size:1.5rem;padding:1rem;display:block}.j93-opening .j93-care-tags dl,.j93-opening .j93-airflow ol,.j93-opening .j93-handover dl,.j93-opening .j93-access-ticket dl,.j93-opening .j93-inspection-evidence ol{display:block}.j93-opening .j93-vent-route>div{flex-direction:column;align-items:stretch}.j93-opening .j93-sweep-report>div{display:block}.j93-opening .j93-cut-sheet,.j93-opening .j93-gutter-ledger,.j93-opening .j93-fence-options{width:100%;padding:1rem}.j93-opening .j93-boundary .j93-yard{display:block}.j93-opening .j93-yard>a{display:block;padding:1rem}.j93-opening .j93-bond{display:block}.j93-opening .j93-bond p{margin:.7rem 0}.j93-opening .j93-downpipe{margin-left:35%;width:65%;padding:1rem}.j93-opening .j93-gate{gap:1.5rem}.j93-opening .j93-cable-path{display:flex;flex-direction:column}.j93-opening .j93-cable-path>article{order:-1}.j93-opening .j93-room-list{padding:1rem}.j93-opening .j93-room-list a{grid-column:auto;min-height:6rem}.j93-opening .j93-flue{margin:0;padding:1.3rem}.j93-opening .j93-flue-copy{width:100%;padding:2rem 0}.j93-opening .j93-view{padding:1rem}.j93-opening .j93-response-order{padding:1.2rem}.j93-opening .j93-moisture-map{padding:1rem}.j93-opening .j93-room-search{padding:1rem}.j93-opening .j93-airflow,.j93-opening .j93-wash-zones,.j93-opening .j93-method-board,.j93-opening .j93-joint-notes,.j93-opening .j93-flue,.j93-opening .j93-sweep-report,.j93-opening .j93-coverage-plan,.j93-opening .j93-handover,.j93-opening .j93-cut-sheet,.j93-opening .j93-measure-counter,.j93-opening .j93-dry-record,.j93-opening .j93-vent-route,.j93-opening .j93-access-ticket,.j93-opening .j93-inspection-evidence,.j93-opening .j93-room-search,.j93-opening .j93-response-order{padding:1.2rem}.j93-opening .j93-stoop span{display:block}.j93-opening .j93-pour{padding:0}.j93-opening .j93-pour .j93-pour-call,.j93-opening .j93-pour article{padding:1.5rem}.j93-opening .j93-team-pair{padding:1rem}.j93-opening .j93-dry-record{padding:1rem}}
