:root{--ink:#090b0a;--green:#58c86a;--white:#f3f6f4;--muted:#a1aaa4;--line:rgba(255,255,255,.13)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--white);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65}
a{color:inherit;text-decoration:none}
.bar{height:86px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px}
.brand img{width:50px;height:50px;object-fit:contain}
.brand strong,.brand small{display:block}
.brand strong{font:800 17px Manrope;letter-spacing:.08em}
.brand small{font-size:8px;letter-spacing:.16em;color:#c8cfcb}
.bar>a:last-child{font-weight:600}
.service-hero{min-height:590px;padding:110px 9vw 85px;background:linear-gradient(110deg,rgba(6,8,7,.98),rgba(6,8,7,.7)),url('assets/roofing-hero-real.webp') center/cover;display:flex;flex-direction:column;justify-content:end}
.back{font-size:13px;color:#c5ccc8;margin-bottom:auto}
.eyebrow{color:var(--green);font:700 12px Manrope;letter-spacing:.2em;margin:0 0 18px}
.service-hero h1{font:700 clamp(3.6rem,8vw,8rem)/.92 Manrope;letter-spacing:-.055em;margin:0;max-width:1050px}
.service-hero>p:last-child{color:#c2cac5;max-width:680px;font-size:19px;margin:28px 0 0}
.content{padding:100px 9vw;background:#eef1ef;color:#171a18;display:grid;grid-template-columns:1fr 1.5fr;gap:8vw}
.content h2{font:700 clamp(2.5rem,4.5vw,5rem)/1 Manrope;letter-spacing:-.045em;margin:0}
.content p{color:#58615b;font-size:18px;margin:0 0 28px}
.content ul{list-style:none;padding:0;margin:36px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0 30px}
.content li{border-top:1px solid #b8bfbb;padding:15px 0;font-weight:600}
.content li::before{content:'✓';color:#2c9b40;margin-right:10px}
.cta{padding:90px 9vw;display:flex;align-items:center;justify-content:space-between;gap:40px;background:#101311}
.cta h2{font:650 clamp(2.3rem,4vw,4.5rem)/1.05 Manrope;letter-spacing:-.04em;margin:0}
.buttons{display:flex;gap:12px;flex-wrap:wrap}
.btn{min-height:55px;padding:0 25px;display:inline-flex;align-items:center;justify-content:center;font:650 14px Manrope;border:1px solid var(--line)}
.primary{background:var(--green);color:#071008;border-color:var(--green)}
footer{padding:28px 5vw;display:flex;justify-content:space-between;color:#7f8982;font-size:12px;border-top:1px solid var(--line)}
footer .photo-credit{color:#59615c;font-size:10px}
.workflow{padding:75px 9vw;background:#dce2de;color:#141715}.workflow>div{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #aeb7b1}.workflow span{padding:25px 20px;border-right:1px solid #aeb7b1;font-weight:600}.workflow span:last-child{border:0}.workflow b{display:block;color:#299c3f;font-size:12px;margin-bottom:12px}.agents-hero h1{font-size:clamp(3.3rem,7vw,7rem);max-width:1150px}
@media(max-width:720px){.bar{height:76px;padding:0 20px}
.brand img{width:43px;height:43px}
.brand strong{font-size:14px}
.bar>a:last-child{font-size:13px}
.service-hero{min-height:570px;padding:95px 24px 68px}
.service-hero h1{font-size:3.7rem}
.service-hero>p:last-child{font-size:17px}
.content{padding:75px 24px;grid-template-columns:1fr;gap:35px}
.content h2{font-size:2.8rem}
.content ul{grid-template-columns:1fr}
.cta{padding:70px 24px;display:grid}
.buttons .btn{width:100%}
footer{padding:25px 24px;display:grid;gap:5px}
.workflow{padding:60px 24px}.workflow>div{grid-template-columns:1fr 1fr}.workflow span:nth-child(2){border-right:0}.workflow span:nth-child(-n+2){border-bottom:1px solid #aeb7b1}
}
.bar .brand img{width:clamp(210px,22vw,300px);height:auto}.bar .brand span{display:none}
@media(max-width:720px){.bar .brand img{width:205px;height:auto}}
.privacy-page{padding:95px 9vw 110px;background:#eef1ef;color:#171a18;min-height:calc(100vh - 143px)}
.privacy-page article{max-width:850px}
.privacy-page .back{display:inline-block;color:#59625c;margin-bottom:70px}
.privacy-page h1{font:700 clamp(3.4rem,7vw,6.6rem)/.95 Manrope;letter-spacing:-.055em;margin:0 0 16px}
.privacy-page .updated{color:#6b756f;font-size:14px;margin:0 0 44px}
.privacy-page article>p{color:#4f5953;font-size:17px;max-width:760px}
.privacy-page h2{font:700 1.4rem Manrope;margin:42px 0 8px}
.privacy-page article a:not(.back){text-decoration:underline;text-underline-offset:3px}
@media(max-width:720px){.privacy-page{padding:65px 24px 80px}.privacy-page .back{margin-bottom:50px}.privacy-page h1{font-size:3.5rem}}

.content p a{text-decoration:underline;text-underline-offset:3px}a:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

@media(max-width:380px){.bar .brand img{width:50vw;max-width:190px}.bar .brand{min-width:0}.bar>a:last-child{white-space:nowrap}}
