@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;font-family:'DM Sans',sans-serif;color:#193025;background:#fcfcf7;line-height:1.6;--accent:#d5fb6d;--dark:#193025}.roofing{--accent:#f4b057;--dark:#162c35;color:#162c35}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.disclosure{background:var(--dark);color:white;padding:12px 5%;display:flex;justify-content:space-between;gap:20px;font-size:12px}.disclosure a{font-size:14px}.disclosure span{opacity:.8}header{padding:28px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{font-size:24px;font-weight:800;letter-spacing:1px;line-height:1.2}.logo small{display:block;font-size:12px;letter-spacing:3px;margin-top:7px}nav{display:flex;align-items:center;gap:30px;font-size:14px}.estimate{display:inline-block;background:var(--accent);color:var(--dark);padding:14px 22px;font-weight:700;font-size:15px;border-radius:3px}.trade-hero{position:relative;min-height:650px;color:white;display:flex;align-items:center}.trade-hero>img,.overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.overlay{background:linear-gradient(90deg,#10271fe0,#10271f20)}.roofing .overlay{background:linear-gradient(90deg,#10222de0,#10222d10)}.hero-text{position:relative;padding:65px 7%;max-width:860px}.hero-text>p:first-child,.section-title>p,.approach>div>p:first-child,.trade-contact>p:first-child{font-size:12px;letter-spacing:2px;font-weight:700}.hero-text h1{font-family:Georgia,serif;font-size:clamp(52px,7vw,96px);font-weight:400;line-height:1.03;letter-spacing:-3px;margin:20px 0 25px}.roofing h1,.roofing h2{font-family:'Manrope',sans-serif;font-weight:700}.lede{font-size:20px;max-width:410px;margin-bottom:32px}.service-section{padding:90px 7%}.section-title h2,.approach h2,.trade-contact h2{font-family:Georgia,serif;font-size:48px;font-weight:400;line-height:1.1;letter-spacing:-1.5px;margin:20px 0 40px}.roofing .section-title h2,.roofing .approach h2,.roofing .trade-contact h2{font-family:'Manrope',sans-serif;font-size:43px;font-weight:600}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.services article{border-top:1px solid #c9d3c6;padding-top:20px}.services article>span{font-size:14px;color:#71816d}.services h3{font-size:23px;margin:20px 0 12px}.services p{font-size:16px;color:#64735e}.approach{display:grid;grid-template-columns:1fr 1fr;background:#edf0e6;align-items:center}.approach>img{width:100%;height:100%;min-height:530px;object-fit:cover}.approach>div{padding:60px 12%}.approach p{font-size:17px}.approach ol{padding-left:20px;font-size:16px}.approach li{margin-bottom:12px}.trade-contact{padding:90px 24px;text-align:center;background:var(--dark);color:white}.trade-contact p{max-width:570px;margin:0 auto 25px}.trade-contact h2{margin-bottom:25px}footer{padding:35px 6%;display:flex;justify-content:space-between;align-items:center;gap:30px}footer p{font-size:14px}footer p a{text-decoration:underline}@media(max-width:700px){.disclosure{flex-direction:column;gap:8px}.disclosure span{font-size:12px}header{padding:24px 6%}nav>a:not(.estimate){display:none}nav .estimate{font-size:12px;padding:12px}.logo{font-size:18px}.logo small{font-size:10px}.trade-hero{min-height:570px}.hero-text{padding:55px 7%}.hero-text h1{font-size:58px;letter-spacing:-2px}.lede{font-size:18px}.service-section{padding:60px 7%}.services{grid-template-columns:1fr;gap:24px}.section-title h2,.approach h2,.trade-contact h2,.roofing .section-title h2,.roofing .approach h2,.roofing .trade-contact h2{font-size:37px}.approach{grid-template-columns:1fr}.approach>img{min-height:0;height:330px}.approach>div{padding:45px 7%}.trade-contact{padding:65px 7%}footer{align-items:start;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Ridgeline: structured, bold, architectural. */
.roofing{background:#f5f6f6;--dark:#152a35}.roofing header{border-bottom:1px solid #ccd3d6}.roofing .trade-hero{display:grid;grid-template-columns:1fr 1fr;min-height:590px;background:#152a35}.roofing .trade-hero>img{position:relative;grid-column:2;height:590px;object-position:60% center}.roofing .overlay{display:none}.roofing .hero-text{grid-column:1;grid-row:1;padding:60px 10%}.roofing .hero-text h1{font-size:clamp(48px,5.3vw,78px);font-weight:800;letter-spacing:-3px}.roofing .estimate{border-radius:0;text-transform:uppercase;font-size:13px;letter-spacing:.5px}.trade-strip{display:flex;justify-content:space-around;gap:20px;padding:23px 6%;background:#f4b057;font-weight:700;font-size:14px}.roofing .service-section{display:grid;grid-template-columns:1fr 1.5fr;gap:60px}.roofing .services{grid-template-columns:1fr;gap:0}.roofing .services article{display:grid;grid-template-columns:35px 1fr;padding:22px 0}.roofing .services h3{margin:0 0 10px}.roofing .services p{grid-column:2;margin:0}.roofing .approach{background:#dfe6e9}.roof-guide,.trade-faq{padding:80px 7%}.roof-guide{background:#152a35;color:white}.roof-guide>div:first-child{max-width:650px}.roof-guide h2{font-size:44px;line-height:1.15;letter-spacing:-1.5px}.roof-guide>div:first-child>p:last-child{color:#b7c6cf}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:45px}.guide-grid article{border-top:2px solid #f4b057;padding-top:20px}.guide-grid article>span{font-size:14px;color:#f4b057}.guide-grid h3{font-size:22px}.guide-grid p{color:#b7c6cf}.kicker{font-size:12px;letter-spacing:2px;font-weight:700}.trade-faq{max-width:1100px;margin:auto}.trade-faq h2{font-size:43px;line-height:1.2}.trade-faq details{padding:20px 0;border-bottom:1px solid #bfcbbd}.trade-faq summary{cursor:pointer;font-size:18px;font-weight:600}.trade-faq details p{max-width:700px}.roofing .trade-contact{background:#f4b057;color:#152a35}.roofing .trade-contact .estimate{background:#152a35;color:white}
/* Fieldwork: open, botanical, editorial. */
.landscaping{background:#fffdf6;--accent:#e2e9a8}.landscaping header{padding-top:35px;padding-bottom:35px}.landscaping .logo{font-family:Georgia,serif;font-size:30px;font-weight:400;letter-spacing:3px}.landscaping .logo small{font-family:'DM Sans',sans-serif;letter-spacing:4px}.landscaping .trade-hero{margin:0 3%;border-radius:180px 180px 8px 8px;overflow:hidden;min-height:730px;text-align:center;justify-content:center;align-items:end}.landscaping .trade-hero>img{object-position:center 40%}.landscaping .overlay{background:linear-gradient(0deg,#162f26ee,#162f2655 65%,#162f2611)}.landscaping .hero-text{padding-bottom:60px;max-width:1000px}.landscaping .hero-text h1{font-size:clamp(60px,7vw,100px);letter-spacing:-3px}.landscaping .lede{margin:0 auto 28px;max-width:520px}.landscaping .estimate{border-radius:40px}.garden-intro{text-align:center;padding:95px 7% 30px;max-width:980px;margin:auto}.garden-intro>p:first-child{letter-spacing:2px;font-size:12px}.garden-intro h2{font-family:Georgia,serif;font-weight:400;font-size:48px;line-height:1.2}.garden-intro>p:last-child{max-width:600px;margin:auto;font-size:18px;color:#66745b}.landscaping .service-section{padding-top:60px}.landscaping .section-title{display:none}.landscaping .services{gap:25px}.landscaping .services article{border:1px solid #d5dcc8;border-radius:90px 90px 5px 5px;padding:50px 30px 35px;background:#eff1df;text-align:center}.landscaping .services h3{font-family:Georgia,serif;font-weight:400;font-size:30px}.landscaping .approach{margin:10px 6% 60px;background:transparent;gap:35px}.landscaping .approach>img{border-radius:5px 130px 5px 5px}.landscaping .approach>div{padding:35px 7%}.garden-seasons{padding:80px 7%;background:#e8eddf}.season-heading{display:grid;grid-template-columns:1fr 1fr;gap:0 70px}.season-heading .kicker{grid-column:1/-1}.season-heading h2{font-family:Georgia,serif;font-size:54px;font-weight:400;line-height:1.1;margin:15px 0 35px}.season-heading>p:last-child{align-self:center;max-width:400px;font-size:18px}.season-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.season-grid article{border-top:1px solid #b0bc9e;padding-top:25px}.season-grid article>span{font-size:12px;letter-spacing:2px}.season-grid h3{font-family:Georgia,serif;font-weight:400;font-size:30px}.landscaping .trade-faq h2{font-family:Georgia,serif;font-weight:400;font-size:48px}.landscaping .trade-contact{margin:0 3% 30px;border-radius:8px 8px 90px 90px}@media(max-width:700px){.roofing .trade-hero{grid-template-columns:1fr}.roofing .trade-hero>img{grid-column:1;grid-row:2;height:320px}.roofing .hero-text{padding:45px 7%}.roofing .hero-text h1{font-size:52px}.trade-strip{display:grid;grid-template-columns:1fr 1fr;font-size:12px}.roofing .service-section{grid-template-columns:1fr;gap:15px}.guide-grid,.season-grid{grid-template-columns:1fr;gap:24px}.roof-guide,.trade-faq{padding:55px 7%}.roof-guide h2,.trade-faq h2{font-size:34px}.landscaping .trade-hero{border-radius:90px 90px 5px 5px;min-height:620px}.landscaping .hero-text h1{font-size:56px}.landscaping header .logo{font-size:23px}.garden-intro{padding-top:65px}.garden-intro h2{font-size:36px}.landscaping .approach{margin:0 6% 45px}.landscaping .approach>div{padding:25px 0}.season-heading{grid-template-columns:1fr}.season-heading h2{font-size:43px}.season-heading>p:last-child{margin-top:0}.landscaping .trade-faq h2{font-size:39px}}
