@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Source+Serif+4:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--ink:#0a1420;--muted:#52606c;--gold:#c99a4f;--gold-ink:#76501b;--line:#d9dfe3;--paper:#f4f6f7;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--ink);font:400 17px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-underline-offset:4px}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}a.button{text-decoration:none}.wrap{width:min(1200px,calc(100% - 64px));margin:auto}.header{border-bottom:1px solid var(--line);background:var(--white)}.nav{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{text-decoration:none;font:600 42px/1 'DM Sans',sans-serif;letter-spacing:-3px;display:flex;align-items:center}.brand span{color:var(--gold)}.brand small{font:600 11px/1.2 'DM Sans',sans-serif;letter-spacing:2px;margin-left:23px;border-left:1px solid var(--line);padding-left:23px}nav{display:flex;gap:30px;align-items:center;font-size:14px;font-weight:600}nav a{text-decoration:none}nav a:hover{text-decoration:underline}.nav-cta{border:1px solid var(--ink);padding:9px 18px}.hero{background:var(--ink);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:70px;align-items:stretch}.hero-copy{padding:74px 0 80px}.eyebrow{font-weight:700;font-size:12px;letter-spacing:2px;color:var(--gold-ink);margin:0 0 22px}.hero .eyebrow{color:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Source Serif 4',Georgia,serif;font-weight:500;letter-spacing:-1.6px;line-height:1.08}h1{font-size:clamp(42px,4.6vw,68px);margin-bottom:27px}h1 em{color:#dfb575;font-weight:400}h2{font-size:clamp(36px,4vw,52px);margin-bottom:26px}h3{font-size:31px;letter-spacing:-.7px}.lead{font-size:18px;line-height:1.7;color:#cbd3dc;max-width:540px;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:center;text-align:center;font-size:15px;font-weight:700;padding:15px 23px;min-height:52px;transition:background .15s,transform .15s}.button:hover{transform:translateY(-2px)}.gold{background:var(--gold);color:var(--ink)}.gold:hover{background:#dfb575}.micro{font-size:13px;line-height:1.6;margin:14px 0 0;color:#bdc7d0}.hero-aside{position:relative;min-height:600px;background:#243440;overflow:hidden}.roof-image{position:absolute;inset:0;background-size:cover;background-position:center}.hero-aside:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,20,32,.96),rgba(10,20,32,.12) 65%)}.hero-note{position:absolute;bottom:42px;left:35px;right:25px;z-index:1;border-left:2px solid var(--gold);padding-left:22px}.hero-note span{font-size:11px;letter-spacing:1.5px;font-weight:600;color:#d4dce4}.hero-note p{font:400 28px/1.3 'Source Serif 4',Georgia,serif;margin:12px 0 0}.outcomes{background:var(--paper);border-bottom:1px solid var(--line)}.outcome-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-block:25px}.outcome-grid p{margin:0;font-size:15px;font-weight:600}.outcome-grid span{font-size:12px;color:var(--gold-ink);margin-right:15px}.section{padding:90px 0;scroll-margin-top:20px}.assessment-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:100px;align-items:start}.large{font-size:18px;color:var(--muted);max-width:570px}.assessment-card{background:var(--ink);color:white;padding:42px;box-shadow:10px 10px 0 #e7edf0}.assessment-card h3{margin:20px 0}.assessment-card p{color:#cbd3dc;font-size:16px}.assessment-card .micro{font-size:13px}.pill{font-weight:700;font-size:11px;letter-spacing:1.6px;color:#dfb575;border:1px solid #8c744f;padding:7px 10px;display:inline-block}.email-text{font-size:14px;display:inline-block;margin-top:12px;color:#dfb575}.footer{display:flex;align-items:center;justify-content:space-between;padding-block:35px;gap:25px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}.footer p{margin:0}.footer .brand{font-size:34px;color:var(--ink)}.skip{position:absolute;top:-100px;left:20px;background:#fff;padding:12px;z-index:100}.skip:focus{top:10px}
@media(max-width:900px){.wrap{width:calc(100% - 40px)}.hero-grid{gap:30px;grid-template-columns:1.2fr 1fr}.hero-copy{padding:55px 0}.hero-aside{min-height:540px}.assessment-grid{gap:40px}.assessment-card{padding:28px}.section{padding:65px 0}nav{gap:18px}.hero-note{left:22px;bottom:30px;padding-left:16px}.hero-note p{font-size:25px}}
@media(max-width:650px){.wrap{width:calc(100% - 40px)}.nav{min-height:76px}.brand{font-size:35px}.brand small{font-size:10px;letter-spacing:1px;padding-left:12px;margin-left:12px}nav a:not(.nav-cta){display:none}.nav-cta{font-size:13px;padding:8px 12px}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:42px 0 36px}h1{font-size:46px;letter-spacing:-1.3px}.lead{font-size:17px}.hero-aside{min-height:270px;margin:0 -20px}.roof-image{background-position:center 42%}.hero-note{bottom:24px;left:25px}.hero-note p{font-size:23px}.outcome-grid{grid-template-columns:1fr;gap:9px;padding-block:22px}.outcome-grid p{font-size:14px}.assessment-grid{grid-template-columns:1fr;gap:30px}.section{padding:55px 0}.assessment-card{padding:28px}.assessment-card .button{width:100%}.footer{align-items:flex-start;flex-direction:column;gap:20px}.large{font-size:17px}h2{font-size:38px}}
.roof-image{background-image:url('roofing-work.jpg');background-size:auto 150%;background-position:32% 38%}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end;margin-bottom:38px}.section-heading h2{margin-bottom:0}.section-heading .large{margin-bottom:0}.problem-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.problem-list summary{display:grid;grid-template-columns:190px 1fr 36px;align-items:center;gap:30px;padding:27px 0}.number{font-size:11px;font-weight:700;letter-spacing:1.6px;color:var(--gold-ink)}.problem-list h3{font-size:29px;margin:0}.expand{font:300 32px/1 Arial,sans-serif;text-align:center;transition:transform .2s}.problem-list details[open] .expand{transform:rotate(45deg)}.problem-list details[open] summary{padding-bottom:18px}.problem-body{display:grid;grid-template-columns:1fr 1.1fr;gap:50px;padding:0 66px 30px 220px;color:var(--muted);font-size:16px}.problem-body p{margin:0}.problem-body h4{margin:0 0 9px;font-size:11px;letter-spacing:1.5px;color:var(--gold-ink)}.measure{font-size:13px;color:var(--ink);display:inline-block;margin-top:15px;border-bottom:2px solid #d1b586;padding-bottom:4px}.problem-close{font-size:17px;color:var(--muted);max-width:800px;margin:30px 0 0}#assessment{background:var(--paper);padding-bottom:35px}.assessment-detail{background:var(--paper);padding:15px 0 75px}.deliverables{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;padding:32px 0;border-top:1px solid var(--line)}.deliverables h3{font-size:27px;margin:12px 0}.deliverables p{font-size:16px;color:var(--muted);margin:0}.scope-note{border-left:2px solid var(--gold);padding:3px 0 3px 20px;color:var(--muted);font-size:14px;max-width:950px}.scope-note strong{color:var(--ink)}.example-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:85px;align-items:center}.example{padding:35px;border:1px solid var(--line);box-shadow:8px 8px 0 var(--paper)}.example-label{font-size:10px;letter-spacing:1.2px;color:var(--muted);font-weight:700}.example h3{margin:21px 0 25px}.example-step{display:grid;grid-template-columns:92px 1fr;gap:20px;padding:14px 0;border-top:1px solid var(--line);font-size:15px}.example-step span{font-size:10px;letter-spacing:1.2px;font-weight:700;color:var(--gold-ink);padding-top:4px}.example-step p{margin:0}.example-note{font-size:13px;color:var(--muted);margin:16px 0 0}.team-section{background:var(--ink);color:white}.team-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:100px;align-items:center}.team-wordmark{font:600 105px/1 'DM Sans',sans-serif;letter-spacing:-8px}.team-wordmark span{color:var(--gold)}.team-wordmark div{font:500 11px/1.8 'DM Sans',sans-serif;letter-spacing:1.6px;margin-top:28px;color:#b7c3ce}.team-section p:not(.eyebrow){color:#cbd3dc;font-size:17px}.team-section .eyebrow,.final-cta .eyebrow{color:var(--gold)}.text-link{color:#dfb575;font-size:15px}.faq-grid{display:grid;grid-template-columns:1fr 1.65fr;gap:75px}.faq{border-top:1px solid var(--line)}.faq summary{display:flex;gap:25px;justify-content:space-between;align-items:center;padding:23px 0;font-size:16px;font-weight:600;line-height:1.4}.faq summary span{font-size:25px;font-weight:400;color:var(--gold-ink)}.faq details[open] summary span{transform:rotate(45deg)}.faq p{font-size:16px;color:var(--muted);padding-right:35px;margin-bottom:24px}.final-cta{background:var(--ink);color:white;text-align:center;padding:70px 0}.final-cta h2{margin-bottom:20px}.final-cta p:not(.eyebrow){color:#cbd3dc}.final-cta .micro{font-size:13px;margin-top:17px}.photo-credit{font-size:11px;color:var(--muted);padding:0 0 24px;margin-bottom:0}
@media(max-width:900px){.section-heading{gap:40px}.problem-list summary{grid-template-columns:140px 1fr 30px;gap:20px}.problem-body{padding-left:160px;padding-right:35px;gap:30px}.problem-list h3{font-size:27px}.example-grid{gap:35px}.example{padding:26px}.team-grid{gap:45px}.faq-grid{gap:35px}.deliverables{gap:30px}.hero-aside{min-height:610px}.team-wordmark{font-size:80px}}
@media(max-width:650px){.section-heading{grid-template-columns:1fr;gap:23px;margin-bottom:28px}.problem-list summary{grid-template-columns:1fr 26px;gap:12px;padding:23px 0}.problem-list .number{grid-column:1/-1;font-size:10px}.problem-list h3{font-size:26px;letter-spacing:-.6px}.problem-body{padding:0 10px 25px 0;grid-template-columns:1fr;gap:20px;font-size:16px}.problem-close{font-size:16px}.deliverables{grid-template-columns:1fr;gap:28px;padding-top:25px}.deliverables>div{display:grid;grid-template-columns:28px 1fr;gap:5px 15px}.deliverables .number{padding-top:6px;grid-row:1/3}.deliverables h3{margin:0 0 6px;font-size:25px}.deliverables p{grid-column:2}.assessment-detail{padding-bottom:50px}.scope-note{font-size:14px}.example-grid,.team-grid,.faq-grid{grid-template-columns:1fr;gap:25px}.example{padding:24px}.example h3{font-size:27px}.example-step{grid-template-columns:1fr;gap:6px}.example-label{font-size:10px}.team-wordmark{font-size:60px;letter-spacing:-4px;margin-bottom:15px}.team-wordmark div{font-size:10px;letter-spacing:1.2px;margin-top:15px}.faq-grid h2{margin-bottom:8px}.faq p{padding-right:0}.final-cta{padding:55px 0}.final-cta h2{font-size:35px}.hero-aside{min-height:270px}.roof-image{background-size:auto 170%;background-position:25% 33%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
