*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:#151515;background:#fff}.container{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid #e8e8e8;backdrop-filter:blur(12px)}.nav-wrap{height:84px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#111;min-width:max-content}.brand-mark{width:44px;height:44px;border-radius:50%;background:#111;color:#fff;display:grid;place-items:center;font-weight:800;font-size:20px}.brand-text{display:flex;flex-direction:column}.brand-text strong{font-size:20px;letter-spacing:-.4px}.brand-text small{font-size:11px;color:#777;text-transform:uppercase;letter-spacing:1.3px;margin-top:2px}.desktop-nav{display:flex;gap:26px;margin-left:auto}.desktop-nav a,.mobile-menu a{color:#252525;text-decoration:none;font-weight:600;font-size:14px}.desktop-nav a:hover{color:#b21f24}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border-radius:8px;text-decoration:none;font-weight:700;border:1px solid transparent;cursor:pointer}.btn-primary{background:#b21f24;color:white}.btn-primary:hover{background:#95191d}.btn-ghost{color:#fff;border-color:rgba(255,255,255,.4);background:rgba(255,255,255,.06)}.btn-light{background:#fff;color:#111}.nav-cta{padding:12px 17px}.menu-btn{display:none;margin-left:auto;background:none;border:0;font-size:25px}.mobile-menu{display:none;padding:0 20px 20px;flex-direction:column;gap:15px}.hero{position:relative;min-height:680px;background:linear-gradient(120deg,#111 0%,#1b1b1b 55%,#2a2a2a 100%);color:white;overflow:hidden}.hero:after{content:"";position:absolute;right:-8%;bottom:-35%;width:680px;height:680px;border-radius:50%;border:1px solid rgba(255,255,255,.06)}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center;min-height:680px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:2px;color:#e1b85a;margin-bottom:20px}.eyebrow.dark{color:#a21c20}.hero h1{font-family:"Playfair Display",serif;font-size:64px;line-height:1.02;margin:0 0 24px;letter-spacing:-1.8px}.hero h1 span{color:#e3c071}.hero-copy>p{font-size:18px;line-height:1.7;color:#d0d0d0;max-width:650px}.hero-actions{display:flex;gap:12px;margin-top:30px}.hero-trust{display:flex;gap:34px;margin-top:46px;padding-top:28px;border-top:1px solid rgba(255,255,255,.12)}.hero-trust div{display:flex;flex-direction:column;gap:5px}.hero-trust strong{font-size:14px}.hero-trust span{font-size:12px;color:#aaa}.hero-card{background:#f6f1e8;color:#111;border-radius:18px;padding:26px;min-height:430px;box-shadow:0 30px 60px rgba(0,0,0,.28);display:flex;flex-direction:column}.hero-card-top{display:flex;justify-content:space-between;font-size:12px;font-weight:800;letter-spacing:1.3px}.dot{width:10px;height:10px;border-radius:50%;background:#b21f24}.roof-graphic{position:relative;flex:1;margin:35px 0 20px;min-height:200px}.roof-line{position:absolute;height:8px;background:#111;border-radius:20px;transform-origin:left center}.roof-line.one{width:74%;transform:rotate(-28deg);left:14%;top:52%}.roof-line.two{width:60%;transform:rotate(28deg);left:42%;top:52%}.roof-line.three{width:62%;height:3px;background:#b21f24;left:23%;top:75%}.hero-card h3{font-family:"Playfair Display",serif;font-size:28px;margin:0 0 10px}.hero-card p{color:#555;line-height:1.6}.hero-card a{color:#a21c20;font-weight:800;text-decoration:none}.intro-strip{border-bottom:1px solid #e5e5e5;background:white}.strip-grid{display:grid;grid-template-columns:1fr 2fr 1fr 1.5fr}.strip-grid>div{padding:24px 18px;border-right:1px solid #eee}.strip-grid>div:last-child{border-right:0}.mini-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:#888;margin-bottom:7px}.strip-grid strong,.strip-grid a{font-size:13px;color:#222;text-decoration:none}.section{padding:110px 0}.light{background:#fafafa}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:90px}.section h2{font-family:"Playfair Display",serif;font-size:46px;line-height:1.1;margin:0}.body-copy p,.section-heading p,.section-copy p{font-size:17px;line-height:1.75;color:#616161}.text-link{display:inline-block;margin-top:10px;color:#a21c20;font-weight:800;text-decoration:none}.dark-section{background:#111;color:white}.section-heading{max-width:680px;margin-bottom:42px}.dark-section .section-heading p{color:#b8b8b8}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{border:1px solid #2b2b2b;border-radius:12px;padding:28px;background:#171717;min-height:230px}.service-card span,.process-step span{color:#d0a949;font-size:12px;font-weight:800;letter-spacing:1.4px}.service-card h3,.process-step h3{font-size:21px;margin:26px 0 10px}.service-card p{color:#aaa;line-height:1.7;font-size:14px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:45px}.process-step{padding:26px;border-top:3px solid #b21f24;background:white;box-shadow:0 10px 30px rgba(0,0,0,.05)}.process-step p{font-size:14px;line-height:1.7;color:#666}.area-section{background:#8f171b;color:white}.area-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.area-section .section-copy p{color:#f0d9da}.area-list{display:flex;flex-wrap:wrap;gap:10px}.area-list span{padding:12px 15px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.08);font-size:13px}.quote-section{background:#f3efe8}.quote-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.contact-card{margin-top:30px;padding:24px;border-left:3px solid #b21f24;background:white}.contact-card p{line-height:1.6}.contact-card a{color:#111;text-decoration:none}.quote-form{background:#fff;padding:32px;border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.08)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.quote-form label{display:block;font-size:13px;font-weight:700;margin-bottom:16px}.quote-form input,.quote-form select,.quote-form textarea{width:100%;margin-top:8px;padding:13px 14px;border:1px solid #d8d8d8;border-radius:8px;font:inherit;background:#fff}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{outline:2px solid rgba(178,31,36,.18);border-color:#b21f24}.full{width:100%}.form-note{text-align:center;color:#888;font-size:11px;margin:12px 0 0}.cta-band{background:#d1a948;padding:45px 0}.cta-wrap{display:flex;justify-content:space-between;align-items:center}.cta-wrap .eyebrow{color:#5f4710;margin-bottom:8px}.cta-wrap h2{font-family:"Playfair Display",serif;font-size:38px;margin:0}footer{background:#0d0d0d;color:#d0d0d0;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px}.footer-brand{font-family:"Playfair Display",serif;font-size:28px;color:white;font-weight:700}.footer-grid h4{color:white}.footer-grid a{color:#ddd;text-decoration:none}.footer-grid p{line-height:1.7;color:#999}.footer-bottom{border-top:1px solid #222;margin-top:45px;padding-top:20px;font-size:12px;color:#666}.reveal{opacity:0;transform:translateY(14px);transition:.65s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:950px){.desktop-nav,.nav-cta{display:none}.menu-btn{display:block}.mobile-menu.open{display:flex}.hero-grid,.two-col,.area-layout,.quote-grid{grid-template-columns:1fr}.hero-grid{padding:80px 0}.hero-card{min-height:360px}.strip-grid{grid-template-columns:1fr 1fr}.service-grid{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:52px}}@media(max-width:620px){.container{width:min(100% - 28px,1180px)}.nav-wrap{height:74px}.brand-text strong{font-size:17px}.brand-text small{font-size:9px}.hero h1{font-size:43px}.hero-copy>p{font-size:16px}.hero-actions{flex-direction:column}.hero-trust{gap:18px;flex-wrap:wrap}.strip-grid{grid-template-columns:1fr}.strip-grid>div{border-right:0;border-bottom:1px solid #eee}.section{padding:78px 0}.section h2{font-size:36px}.service-grid,.process-grid,.form-row,.footer-grid{grid-template-columns:1fr}.quote-form{padding:22px}.cta-wrap{flex-direction:column;align-items:flex-start;gap:22px}.cta-wrap h2{font-size:32px}}

.license-badge{display:inline-block;margin:0 0 22px;padding:9px 13px;border:1px solid rgba(227,192,113,.45);border-radius:999px;background:rgba(227,192,113,.08);color:#f0d58f;font-size:12px;font-weight:800;letter-spacing:.45px}
.credential-line{display:inline-block;margin-top:5px;color:#8b1b20;font-size:10px;font-weight:800;letter-spacing:.3px}
.footer-license{font-size:12px!important;color:#d0a949!important;font-weight:700}
