:root{--ink:#10212c;--navy:#132d3d;--navy2:#0b1c27;--cream:#f5f1e8;--paper:#fff;--amber:#eaa928;--line:#dfe4e7;--muted:#60717b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:"DM Sans",sans-serif;line-height:1.6}.shell{width:min(1160px,calc(100% - 40px));margin:auto}.nav{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-family:Manrope,sans-serif;font-size:16px;font-weight:800;letter-spacing:.09em}.brand b{display:block;font-size:9px;letter-spacing:.25em;color:#657680}.brand-mark{width:36px;height:31px;display:block;position:relative;border-bottom:5px solid var(--amber)}.brand-mark:before,.brand-mark:after,.brand-mark i{content:"";position:absolute;background:var(--navy);height:5px;transform:rotate(-37deg);transform-origin:left}.brand-mark:before{width:30px;left:0;top:20px}.brand-mark:after{width:31px;right:-2px;top:2px;transform:rotate(37deg);transform-origin:right}.brand-mark i{width:17px;right:-1px;top:15px;transform:rotate(90deg)}.nav-cta{color:var(--ink);font-weight:700;text-decoration:none;border-bottom:2px solid var(--amber);padding:5px 0}.hero{min-height:690px;position:relative;display:flex;align-items:center;overflow:hidden;background:var(--navy2)}.hero-image{position:absolute;inset:0;background:url('assets/roofing-hero.png') center/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,22,32,.96) 0%,rgba(8,23,34,.86) 39%,rgba(9,24,34,.2) 70%,rgba(9,24,34,.08))}.hero-content{position:relative;color:white;padding:90px 0}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:12px;font-weight:700;margin:0 0 24px;display:flex;align-items:center;gap:10px}.eyebrow span{width:30px;height:2px;background:var(--amber)}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.1;margin-top:0}h1{font-size:clamp(50px,7vw,88px);letter-spacing:-.055em;margin-bottom:26px;max-width:760px}.hero-copy{font-size:19px;max-width:590px;color:#dce4e8;margin:0 0 34px}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:54px;padding:0 24px;border:0;border-radius:3px;font:700 14px "DM Sans";text-decoration:none;cursor:pointer}.button.primary{background:var(--amber);color:#162530;box-shadow:0 12px 30px rgba(234,169,40,.2)}.button.primary:hover{background:#f1b841;transform:translateY(-1px)}.text-link{color:#fff;font-weight:600;text-decoration:none}.trust-row{display:flex;gap:30px;flex-wrap:wrap;margin-top:54px;font-size:13px;color:#ccd6dc}.trust-row span::first-letter{color:var(--amber)}.service-strip{background:var(--cream);border-bottom:1px solid #e2ddd2}.service-grid{display:grid;grid-template-columns:repeat(3,1fr)}.service-grid article{display:flex;gap:18px;padding:32px;border-right:1px solid #dfd8cb}.service-grid article:first-child{border-left:1px solid #dfd8cb}.service-grid article>span{color:var(--amber);font:700 12px Manrope}.service-grid h3{font-size:16px;margin-bottom:6px}.service-grid p{font-size:13px;color:var(--muted);margin:0}.section{padding:110px 0}.section-heading{display:grid;grid-template-columns:.7fr 1.2fr 1fr;gap:50px;align-items:end;margin-bottom:60px}.eyebrow.dark{color:#52636e;margin-bottom:0}.section-heading h2,.estimate-intro h2,.success-card h2{font-size:clamp(36px,4vw,54px);letter-spacing:-.045em;margin:0}.section-heading>p:last-child{color:var(--muted);margin:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.steps article{padding:34px;border:1px solid var(--line);min-height:230px;position:relative}.steps b{display:grid;place-items:center;width:38px;height:38px;background:var(--cream);color:#8b651b;border-radius:50%;margin-bottom:35px}.steps h3{font-size:20px;margin-bottom:10px}.steps p{color:var(--muted);font-size:14px;margin:0}.estimate-wrap{background:var(--navy);color:white;padding:110px 0}.estimate-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.estimate-intro{position:sticky;top:30px}.estimate-intro h2{margin-bottom:24px}.estimate-intro>p:not(.eyebrow){color:#cad5db;max-width:440px}.privacy-note{margin-top:44px;border-left:2px solid var(--amber);padding-left:18px;color:#bac8cf;font-size:13px}.privacy-note strong{color:white}.lead-form,.success-card{background:white;color:var(--ink);padding:40px;border-radius:6px;box-shadow:0 28px 70px rgba(0,0,0,.25)}.form-head{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.1em}.progress{height:4px;background:#e9ecee;margin:16px 0 34px;overflow:hidden}.progress i{display:block;height:100%;width:33.333%;background:var(--amber);transition:.25s}.form-step{display:none}.form-step.active{display:block}.form-step h3{font-size:25px;margin-bottom:28px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label,legend{font-size:13px;font-weight:700;display:block}input,textarea{width:100%;margin-top:7px;padding:15px 14px;border:1px solid #cad3d8;border-radius:3px;font:15px "DM Sans";color:var(--ink);background:#fff}input:focus,textarea:focus{outline:3px solid rgba(234,169,40,.23);border-color:#bd8417}textarea{resize:vertical}fieldset{border:0;padding:0;margin:0 0 24px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:9px}.choice-grid label{position:relative}.choice-grid input{position:absolute;opacity:0;pointer-events:none}.choice-grid span{display:flex;align-items:center;min-height:50px;padding:10px 14px;border:1px solid #cad3d8;border-radius:3px;font-weight:600}.choice-grid input:checked+span{border-color:var(--amber);background:#fff8e9;box-shadow:inset 3px 0 var(--amber)}.timing{margin-bottom:4px}.consent{display:flex;gap:10px;align-items:flex-start;margin-top:20px;font-weight:500}.consent input{width:18px;height:18px;margin:2px 0 0}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:28px}.button.ghost{background:white;border:1px solid #cbd4d9;color:var(--ink)}.form-error{color:#a3342d;font-size:13px;min-height:18px;margin:14px 0 0}.success-card{text-align:center;padding:70px 50px}.success-icon{display:grid;place-items:center;margin:0 auto 25px;width:64px;height:64px;border-radius:50%;background:#e5f3e9;color:#277347;font-size:30px}.success-card .eyebrow{justify-content:center}.success-card p:not(.eyebrow){color:var(--muted);max-width:520px;margin:20px auto 30px}.success-card .button{width:100%}.text-button{border:0;background:none;margin-top:22px;color:#526570;text-decoration:underline;cursor:pointer}footer{background:#07141c;color:#d9e2e6;padding:46px 0}footer .shell{display:grid;grid-template-columns:1fr 1fr auto;gap:30px;align-items:center}footer span{font:800 14px Manrope;letter-spacing:.1em}footer p,footer small{margin:0;color:#91a2ab;font-size:12px}@media(max-width:800px){.nav{height:68px}.nav-cta{font-size:12px}.hero{min-height:650px}.hero-image{background-position:65% center}.hero-shade{background:rgba(7,22,32,.72)}.hero-content{padding:70px 0}.service-grid,.steps,.section-heading,.estimate-grid{grid-template-columns:1fr}.service-grid article,.service-grid article:first-child{border-left:0;border-right:0;border-bottom:1px solid #dfd8cb}.section{padding:80px 0}.section-heading{gap:20px}.estimate-wrap{padding:75px 0}.estimate-intro{position:static}.field-grid{grid-template-columns:1fr}.estimate-grid{gap:38px}.lead-form{padding:28px 20px}.choice-grid{grid-template-columns:1fr}footer .shell{grid-template-columns:1fr}}@media(max-width:480px){.shell{width:min(100% - 28px,1160px)}.brand{font-size:13px}.brand-mark{transform:scale(.85)}.nav-cta{display:none}h1{font-size:50px}.hero-actions{align-items:flex-start;flex-direction:column}.trust-row{gap:12px;flex-direction:column}.success-card{padding:50px 24px}}
