:root{--ink:#163e40;--muted:#536766;--paper:#fbf8f0;--line:#d5d9cd;--sage:#dfe9df;--copper:#a95e3c;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-underline-offset:4px}button{font:inherit}button,a,input,summary{touch-action:manipulation}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #b2602f;outline-offset:5px}.wrap{width:min(1180px,calc(100% - 88px));margin-inline:auto}.skip{position:absolute;left:12px;top:-100px;padding:12px 20px;background:var(--ink);color:white;z-index:100}.skip:focus{top:12px}.site-header{display:flex;justify-content:space-between;align-items:center;gap:32px;padding-block:28px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:16px;font-weight:800;letter-spacing:.055em;line-height:1.3;flex-shrink:0}.brand svg{width:44px;height:40px;fill:none;stroke:currentColor;stroke-width:2}.brand small{display:block;font-size:10px;letter-spacing:.22em;font-weight:500;margin-top:5px}.site-header nav{display:flex;align-items:center;gap:27px;font-size:12px}.site-header nav a{text-decoration:none;white-space:nowrap}.site-header nav a:hover{text-decoration:underline}.nav-pill{padding:11px 17px;background:var(--sage);border-radius:30px}.nav-pill span{padding-left:12px}.eyebrow,.overline{font-size:10px;font-weight:700;letter-spacing:.16em;line-height:1.6}.eyebrow{margin:0 0 19px;color:var(--muted)}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:1.09;margin:0 0 22px}h1{font-size:76px;max-width:850px}h1 em{font-weight:400;color:#456c58}h2{font-size:46px}h3{font-size:28px}p{margin:0 0 19px}.hero{display:grid;grid-template-columns:1.06fr 1fr;gap:22px;align-items:center;padding-block:68px 56px}.hero h1{font-size:72px}.hero-deck{font-size:18px;line-height:1.7;color:var(--muted);max-width:610px}.hero-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:29px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--ink);color:var(--paper);text-decoration:none;border:1px solid var(--ink);border-radius:2px;padding:13px 21px;min-height:48px;font-size:12px;font-weight:700;line-height:1.6;cursor:pointer}.button:hover{background:#2d5754}.text-link{font-size:11px;font-weight:700;white-space:nowrap}.fine{font-size:11px;color:var(--muted);line-height:1.7}.hero .fine{margin:16px 0 0}.hero-picture{background:#e5ebdf;border:1px solid #d7dfd0;padding:15px 12px 25px;border-radius:47% 47% 2px 2px}.roof-illustration{display:block;width:100%;height:auto}.hero-picture p{text-align:center;font-size:8px;letter-spacing:.13em;font-weight:700;margin:-3px 0 0}.quick-note{display:grid;grid-template-columns:150px 1fr;gap:28px;border-block:1px solid var(--ink);padding-block:24px;align-items:center}.quick-note p{margin:0;font-size:15px;max-width:830px}.section{padding-block:72px}.section-top{display:grid;grid-template-columns:170px 1fr .9fr;gap:25px;align-items:start;margin-bottom:36px}.section-top .eyebrow{padding-top:6px;max-width:120px}.section-top p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.8;padding-top:3px;margin:0}.three-up{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.three-up article{border-top:1px solid var(--line);padding-top:26px}.number{font-family:var(--serif);font-size:25px;color:#648375;display:block;margin-bottom:20px}.three-up p{font-size:14px;color:var(--muted)}.three-up h3{font-size:27px}.three-up a,.prose a,.article-aside a{font-size:13px;font-weight:600}.dark-section{background:var(--ink);color:var(--paper);padding-block:65px}.safety-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.dark-section .eyebrow{color:#bed1c1}.dark-section h2{font-size:55px}.dark-section p{font-size:14px;line-height:1.8;color:#d9e4d9}.dark-section .large{font-size:22px;color:var(--paper);line-height:1.5}.dark-section a:not(.button){font-size:12px;color:#e9d4a4}.button.pale{background:#dfe9df;color:var(--ink);border-color:#dfe9df;margin-top:10px}.area-tabs{display:flex;flex-wrap:wrap;gap:14px;margin:0 0 35px}.area-tabs a{font-size:12px;padding:9px 22px;border:1px solid #b5c1b3;border-radius:50px;text-decoration:none;min-height:44px}.area-tabs a:hover{background:var(--sage)}.area-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ink);gap:0 70px}.area{padding-block:34px;border-bottom:1px solid var(--line)}.area .overline{display:block;color:#56705d;margin-bottom:20px}.area h3{font-size:34px}.area p{font-size:14px;line-height:1.8;color:var(--muted)}.area-link,.inline-links a{font-size:13px;font-weight:700;display:inline-block;padding-block:8px}.inline-links{display:flex;gap:22px;flex-wrap:wrap}.local-source a{font-size:11px;color:var(--ink)}.planning-band{background:#e7dfcc;padding-block:49px}.planning-layout{display:grid;grid-template-columns:1fr .8fr;gap:100px;align-items:center}.planning-layout>div>p:not(.eyebrow){font-size:14px;max-width:570px}.call-box{border:1px solid #b8c2b2;background:#f1f2e6;padding:27px 30px}.call-box .phone{font-family:var(--serif);font-size:33px;letter-spacing:-.02em;margin:9px 0 15px}.call-box button{border:1px solid #9daea2;background:#d4ddd3;color:#3e564a;min-height:47px;font-size:12px;font-weight:700;width:100%;padding:10px;cursor:not-allowed}.call-box p:last-child{font-size:11px;line-height:1.7;margin:13px 0 0;color:#526459}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;font-size:14px;font-weight:700;padding:20px 23px 20px 0;min-height:56px;position:relative;list-style:none}summary:after{content:'+';position:absolute;right:1px;font-weight:400;font-size:22px;top:14px}summary::-webkit-details-marker{display:none}details[open]>summary:after{content:'−'}.faq details p{font-size:13px;color:var(--muted);line-height:1.8}.site-footer{display:grid;grid-template-columns:1fr 1fr;gap:28px;border-top:1px solid var(--ink);padding-block:34px}.brand-word{font-size:15px;font-weight:700;text-decoration:none}.site-footer p{font-size:11px;color:var(--muted);margin:8px 0 0}.site-footer nav{display:flex;gap:8px 22px;justify-content:flex-end;flex-wrap:wrap;align-items:flex-start;font-size:11px}.site-footer nav a{padding:4px 0}.site-footer .footer-note{grid-column:1/-1;font-size:10px;margin:0;max-width:900px}.article-hero{padding-block:55px 38px;border-bottom:1px solid var(--line)}.breadcrumb{font-size:11px;display:inline-block;margin-bottom:24px;color:var(--muted)}.article-hero h1{font-size:68px}.article-hero .hero-deck{max-width:800px}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:90px;padding-block:48px 65px}.prose h2{font-size:34px;line-height:1.2;margin-top:42px;margin-bottom:20px}.prose>h2:first-child{margin-top:0}.prose p,.prose li{font-size:15px;line-height:1.9;color:#425d59}.prose ul{padding-left:22px}.prose li{padding-left:5px;margin-bottom:12px}.prose strong{color:var(--ink)}.prose .fine{font-size:11px}.article-aside>div{padding-block:15px 28px;border-bottom:1px solid var(--line);margin-bottom:29px}.article-aside h3{font-size:30px}.article-aside p,.article-aside li{font-size:12px;line-height:1.8;color:var(--muted)}.article-aside .call-box{padding:24px 20px;margin-top:25px}.article-aside .phone{font-size:29px}.article-aside .overline{font-size:9px}.directory-link{display:inline-block;margin-top:25px}.note{padding:25px 27px;background:var(--sage);margin-block:30px;border-left:3px solid #6a8c74}.note p{margin:8px 0 0;font-size:14px}.steps{list-style:none;counter-reset:step;padding:0}.steps>li{counter-increment:step;border-top:1px solid var(--line);padding:25px 0 8px 43px;position:relative}.steps>li:before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:25px;font:25px var(--serif);color:#648375}.steps h3{font-size:27px;margin-bottom:14px}.question-card{padding:28px 30px;background:#e7dfcc;margin:35px 0}.question-card p{font-family:var(--serif);font-size:24px;line-height:1.5;margin:15px 0}.sources{border-top:1px solid var(--line);margin-top:42px;padding-top:20px}.sources h2{font-family:var(--sans);font-size:15px;font-weight:700;letter-spacing:0;margin-top:0}.sources p,.sources li,.sources a{font-size:11px;line-height:1.8}.sources li{margin-bottom:7px}.material-list>section{padding:30px 0;border-top:1px solid var(--line)}.material-list>section:last-child{border-bottom:1px solid var(--line)}.material-list h2{margin-top:0}.material-list .number{margin-bottom:12px}.material-list .ask{background:#edf0e4;padding:15px 20px;margin-bottom:0;font-size:14px}.narrow{max-width:820px;padding-block:45px 70px}.checklist{border-top:1px solid var(--line)}.checklist label{display:flex;align-items:flex-start;gap:17px;border-bottom:1px solid var(--line);padding:21px 0;cursor:pointer;font-size:14px;line-height:1.8}.checklist label strong{display:block}.checklist input{width:23px;height:23px;accent-color:var(--ink);margin:5px 0 0;flex-shrink:0}.checklist input:checked+span{color:#66816b}.checklist input:checked+span strong{text-decoration:line-through}.quote-panel{background:#e8ecdf;padding:30px;margin:35px 0}.quote-panel h2{margin:0 0 22px}.quote-panel #quote-text{font-size:14px;line-height:1.9}.quote-panel #copy-status{font-size:12px;margin:12px 0 0;min-height:22px}#check-progress{font-size:12px;margin-top:15px;font-weight:700}.measurement-controls{font-size:12px;border-top:1px solid var(--line);padding:24px 0}.measurement-controls button{min-height:44px;margin:5px 8px 5px 0;padding:8px 14px;font-size:12px}.measurement-controls p{margin-bottom:8px}::selection{background:#e8b86f;color:var(--ink)}
@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.site-header nav{gap:16px;font-size:11px}.brand{font-size:14px}.brand small{font-size:8px}.hero h1{font-size:59px}.hero{gap:15px;padding-top:49px}.hero-deck{font-size:16px}.section-top{grid-template-columns:120px 1fr .9fr;gap:20px}.section-top h2{font-size:40px}.area-grid{column-gap:40px}.planning-layout{gap:50px}.article-layout{gap:45px;grid-template-columns:minmax(0,1fr) 265px}.article-hero h1{font-size:59px}.safety-layout,.faq{gap:45px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.site-header{padding-block:19px;gap:15px;align-items:center;flex-wrap:wrap}.brand{font-size:14px}.brand svg{width:34px;height:34px}.site-header nav{width:100%;gap:8px 19px;justify-content:space-between;font-size:10px}.nav-pill{padding:8px 10px}.nav-pill span{display:none}.hero{grid-template-columns:1fr;gap:30px;padding-block:37px 33px}.hero h1{font-size:63px}.hero-deck{font-size:16px}.eyebrow{font-size:9px;letter-spacing:.14em}.hero-actions{gap:20px;margin-top:23px}.hero-picture{width:100%;max-width:490px;margin:auto;padding:0 7px 16px}.roof-illustration{max-height:330px}.hero-picture p{font-size:7px}.quick-note{grid-template-columns:1fr;gap:9px;padding-block:21px}.quick-note p{font-size:13px}.overline{font-size:9px}.section{padding-block:45px}.section-top{display:block;margin-bottom:25px}.section-top .eyebrow{max-width:none;padding:0;margin-bottom:12px}.section-top h2{font-size:38px}.section-top h2 br{display:none}.section-top p:not(.eyebrow){font-size:13px}.three-up{grid-template-columns:1fr;gap:22px}.three-up article{position:relative;padding:22px 0 0 47px}.three-up .number{position:absolute;left:0;top:22px;font-size:26px}.three-up h3{font-size:26px;margin-bottom:14px}.three-up p{font-size:13px}.three-up a{font-size:12px}.dark-section{padding-block:43px}.safety-layout{grid-template-columns:1fr;gap:5px}.dark-section h2{font-size:43px}.dark-section h2 br{display:none}.dark-section .large{font-size:20px}.dark-section p{font-size:13px}.area-tabs{gap:8px;margin-bottom:22px}.area-tabs a{font-size:11px;padding:9px 17px}.area-grid{grid-template-columns:1fr}.area{padding-block:27px}.area h3{font-size:32px}.area p{font-size:13px}.inline-links{gap:17px}.planning-band{padding-block:34px}.planning-layout{grid-template-columns:1fr;gap:27px}.planning-layout h2{font-size:38px}.planning-layout h2 br{display:none}.planning-layout>div>p:not(.eyebrow){font-size:13px}.call-box{padding:23px}.call-box .phone{font-size:33px}.faq{grid-template-columns:1fr;gap:5px}.faq h2{font-size:38px}.faq h2 br{display:none}summary{font-size:13px}.site-footer{grid-template-columns:1fr;gap:14px;padding-block:25px}.site-footer nav{justify-content:flex-start;gap:8px 20px}.site-footer .footer-note{font-size:9px}.article-hero{padding-block:33px 27px}.article-hero h1{font-size:50px}.article-hero .hero-deck{font-size:16px}.article-hero .fine{font-size:10px}.article-layout{display:block;padding-block:32px 40px}.prose h2{font-size:30px;margin-top:32px}.prose p,.prose li{font-size:14px;line-height:1.85}.prose a{font-size:12px}.article-aside{margin-top:40px;border-top:1px solid var(--line);padding-top:24px}.article-aside>div{padding:0 0 24px;margin-bottom:22px}.article-aside .call-box{max-width:400px}.sources p,.sources li,.sources a{font-size:11px}.note,.question-card{padding:20px}.question-card p{font-size:22px}.quote-panel{padding:22px}.quote-panel #quote-text{font-size:13px}.narrow{padding-block:30px 45px}.steps>li{padding-left:39px}.checklist label{font-size:13px}.material-list>section{padding-block:25px}}
@media(max-width:370px){.wrap{width:calc(100% - 28px)}.hero h1{font-size:53px}.site-header nav{gap:6px 12px;font-size:9px}.nav-pill{padding-inline:8px}.article-hero h1{font-size:42px}.hero-actions{gap:13px}.text-link{font-size:10px}.button{padding-inline:16px}.area-tabs a{padding-inline:13px}.brand{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.call-link{display:block;border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:12px;text-align:center;text-decoration:none;font-size:13px;font-weight:700;min-height:48px}.call-link:hover{background:#2d5754}.article-aside .call-link{font-size:13px}
