*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f3f1ec;color:#171919;font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #db181d;outline-offset:4px}.draft{background:#242626;color:#c9cbcb;font-size:11px;text-align:center;padding:6px 16px;letter-spacing:.5px}.nav{background:#080909;color:white;display:flex;align-items:center;justify-content:space-between;padding:12px max(5vw,20px);gap:25px}.logo{display:block;width:155px;height:78px;overflow:hidden;flex-shrink:0}.logo img{width:155px;height:155px;transform:translateY(-38px)}.navlinks{display:flex;gap:28px;align-items:center;font-size:12px;font-weight:700}.btn,button{border:none;background:#cf151b;color:#fff;display:inline-flex;justify-content:center;align-items:center;gap:20px;padding:15px 23px;cursor:pointer;font-weight:bold;font-size:13px;border-radius:2px}.btn:hover,button:hover{background:#aa1015}.btn.light{background:#fff;color:#191b1b}.btn.line{background:none;border:1px solid #858888;color:inherit}.hero{background:#101212;color:white;display:grid;grid-template-columns:1fr 1fr;min-height:610px}.hero-text{padding:65px 5vw 58px;align-self:center}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:2px;font-weight:bold;color:#777f7e}.hero .eyebrow{color:#c2c7c5}.hero h1{font-size:clamp(54px,5.8vw,86px);letter-spacing:-4px;line-height:1.03;margin:23px 0}.hero h1 span{color:#ed353a}.hero p{color:#c4c8c7;font-size:16px;max-width:440px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.hero-photo{position:relative;min-height:400px;overflow:hidden}.hero-photo>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:67% center}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,#000b)}.hero-caption{position:absolute;z-index:1;bottom:28px;left:30px;color:white;font-size:11px;letter-spacing:1px}.hero-caption strong{display:block;font-size:19px;letter-spacing:0}.ribbon{background:#cf151b;color:#fff;display:flex;justify-content:space-between;gap:18px;padding:17px 5vw;font-size:11px;font-weight:bold;letter-spacing:.6px}.wrap{max-width:1200px;margin:auto;padding:0 5vw}section{padding:74px 0;border-bottom:1px solid #d7d9d2}h2{font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-2px;margin:15px 0 23px}h3{line-height:1.2}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:30px}.section-head p{font-size:14px;color:#5e6765;max-width:330px}.service-row{display:grid;grid-template-columns:50px 1fr 1fr;gap:25px;padding:28px 0;border-top:1px solid #bfc6c2;align-items:start}.service-row>span{font-size:12px;color:#b21016;font-weight:bold}.service-row h3{font-size:24px;margin:0;letter-spacing:-.7px}.service-row p{font-size:14px;color:#5e6765;margin:0}.compare{display:grid;grid-template-columns:1fr 1fr;gap:14px}figure{margin:0}.compare figure{position:relative}.compare img{width:100%;height:440px;object-fit:cover;object-position:center 55%;display:block}.badge{position:absolute;top:16px;left:16px;background:#fff;color:#191919;padding:6px 13px;font-size:11px;font-weight:bold;letter-spacing:1px}.badge.red{background:#cf151b;color:#fff}.caption{font-size:12px;color:#6b7470;margin-top:12px;max-width:760px}.feature{background:#111414;color:#fff;margin-top:45px;display:grid;grid-template-columns:1fr 1fr}.feature-content{padding:45px}.feature .eyebrow{color:#df3c40}.feature p{color:#bdc5c0;font-size:14px}.feature video{height:100%;min-height:380px;max-height:500px;width:100%;object-fit:contain;background:#000}.media-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.film{background:#121414;position:relative}.film video{width:100%;height:470px;display:block;object-fit:contain;background:#080808}.film figcaption{color:white;padding:22px}.film figcaption strong{font-size:20px;display:block;letter-spacing:-.5px}.film figcaption span{color:#bac2bc;font-size:12px}.equipment{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;align-items:center}.equipment img{width:100%;height:410px;object-fit:cover;object-position:50% 68%}.equipment p{color:#5e6765;font-size:14px}.equipment .bullet{border-top:1px solid #bfc6c2;padding:12px 0;font-size:12px;font-weight:bold}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:30px}.process span{color:#ba1217;font-size:11px;font-weight:bold}.process h3{font-size:19px}.process p{color:#5e6765;font-size:13px}.quote{display:grid;grid-template-columns:1fr 1fr;gap:55px}.quote p{font-size:14px;color:#5e6765}.towns{font-size:12px;line-height:2.2;margin:24px 0;color:#46514c}.review{border-left:3px solid #cf151b;padding-left:17px;margin-top:30px;font-size:24px;font-weight:bold}.review span{display:block;font-size:11px;font-weight:normal;color:#6a746e}form{background:#e7e8e1;padding:28px}label{display:block;font-size:12px;font-weight:bold;margin:13px 0 6px}input,select,textarea{width:100%;border:1px solid #bec5be;padding:12px;background:#fff;border-radius:2px;font-size:14px}textarea{min-height:110px}form button{margin-top:16px}form .small{font-size:11px;color:#667069}.small a{text-decoration:underline}#result{padding-top:15px}#result button,#result a{margin-top:10px;width:100%}footer{background:#080909;color:#ccc;padding:28px 5vw;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px}.foot-links{display:flex;gap:22px}.mobile-cta{display:none}@media(min-width:1400px){.hero-text{padding-left:max(5vw,calc((100vw - 1200px)/2))}}@media(max-width:760px){.nav{padding:8px 20px}.navlinks>a:not(.btn){display:none}.logo{width:125px;height:64px}.logo img{width:125px;height:125px;transform:translateY(-30px)}.nav .btn{padding:11px 14px;font-size:11px}.hero{grid-template-columns:1fr}.hero-text{padding:40px 24px}.hero h1{font-size:58px;letter-spacing:-3px}.hero-photo{height:300px;min-height:300px}.hero-photo>img{object-position:center 67%}.ribbon{gap:14px;padding:18px 24px;flex-wrap:wrap;font-size:10px}.wrap{padding:0 24px}section{padding:48px 0}.section-head{display:block}.section-head p{max-width:none}.service-row{grid-template-columns:25px 1fr;gap:15px}.service-row p{grid-column:2}.service-row h3{font-size:21px}.compare img{height:300px}.compare{gap:8px}.badge{top:10px;left:10px;font-size:9px;padding:5px 9px}.media-grid,.equipment,.quote,.feature{grid-template-columns:1fr}.feature{margin-top:30px}.feature-content{padding:28px}.feature video{min-height:360px;max-height:420px}.media-grid{gap:20px}.film video{height:400px}.equipment img{height:320px}.equipment{gap:24px}.process{grid-template-columns:1fr;gap:8px}.quote{gap:24px}.quote h2{font-size:41px}form{padding:20px}footer{display:block;padding:25px 24px 82px}.foot-links{margin-top:15px}.mobile-cta{display:flex;position:fixed;bottom:0;left:0;width:100%;background:#cf151b;color:white;padding:15px 24px;justify-content:space-between;z-index:9;font-size:13px;font-weight:bold}.hero .btn{flex:1}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.project-film{margin:24px 0}.project-film summary{cursor:pointer;font-size:13px;font-weight:bold;padding:15px 0;color:#b20e14}.project-film video{display:block;width:100%;max-height:480px;background:#080909;margin-top:12px}
.service-cards{display:grid;grid-template-columns:1fr 1fr;gap:25px}.service-card{background:#e7e8e1;border:1px solid #d3d7ce}.service-card img{width:100%;height:310px;object-fit:cover;object-position:center 55%;display:block}.service-card figcaption{font-size:10px;color:#657069;padding:7px 22px}.service-copy{padding:20px 28px 30px}.service-copy h3{font-size:32px;letter-spacing:-1px;margin:12px 0}.service-copy p,.service-copy li{font-size:14px;color:#515f57}.service-copy ul{padding-left:18px;margin:20px 0}.debris-banner{background:#171b18;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:28px;margin-top:25px}.debris-banner h3{margin:0}.debris-banner p{font-size:13px;color:#c2c9c2;max-width:620px}.debris-banner a{font-size:13px;color:#fff;white-space:nowrap;text-decoration:underline}.detail-hero{padding:65px 0 40px}.detail-hero h1{font-size:clamp(42px,5.6vw,70px);line-height:1.06;letter-spacing:-3px;max-width:850px}.detail-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:45px;align-items:start}.detail-layout img{width:100%;max-height:450px;object-fit:cover}.detail-layout p,.detail-layout li,.faq p{font-size:15px;color:#526057}.detail-layout li{margin:10px 0}.detail-image{margin:25px 0}.detail-image figcaption{font-size:11px;color:#657069;padding-top:7px}.related{display:flex;gap:20px;flex-wrap:wrap;margin-top:30px;font-size:13px;text-decoration:underline}.faq details{border-top:1px solid #bbc4ba;padding:18px 0}.faq summary{font-weight:bold;cursor:pointer}.detail-cta{background:#141915;color:#fff;padding:35px;margin:30px 0}.detail-cta p{color:#c5ccc4}@media(max-width:760px){.service-cards,.detail-layout{grid-template-columns:1fr}.service-card img{height:270px}.service-copy{padding:17px 22px 25px}.debris-banner{display:block;padding:23px}.detail-hero{padding-top:35px}.detail-hero h1{letter-spacing:-2px}.detail-cta{padding:25px}.service-copy h3{font-size:29px}}
/* Consistent sentence case and a shorter request flow. */
.eyebrow{text-transform:none;letter-spacing:.4px;font-size:12px}.ribbon{letter-spacing:0;font-size:12px}.draft{letter-spacing:0}.hero-caption{letter-spacing:0}.badge{letter-spacing:0;text-transform:none}.service-copy{padding-top:25px}.service-copy h3{font-size:29px;margin-top:0}.service-copy ul{margin:16px 0 22px}.detail-layout h2{font-size:27px;letter-spacing:-.8px;margin-top:30px}.detail-layout h2:first-child{margin-top:0}.estimate-panel{background:#e7e8e1;padding:32px}.estimate-panel h3{font-size:25px;letter-spacing:-.6px;margin-top:0}.estimate-panel ol{padding:0;list-style:none;counter-reset:request}.estimate-panel li{counter-increment:request;position:relative;padding:14px 0 14px 42px;border-top:1px solid #c3c9bf}.estimate-panel li:before{content:counter(request);position:absolute;left:0;top:16px;color:#bd151b;font-size:13px;font-weight:bold}.estimate-panel strong{display:block;font-size:15px}.estimate-panel li span{font-size:13px;color:#536059}.estimate-panel .btn{width:100%;margin-top:18px}.estimate-panel .small{font-size:12px;color:#657066}.service-card figure{line-height:0}.hero h1{letter-spacing:-3px}.navlinks{font-size:13px}.process{display:none}@media(max-width:760px){.estimate-panel{padding:24px}.hero h1{font-size:51px;letter-spacing:-2px}.section-head h2{font-size:35px}.ribbon{font-size:11px}.service-copy h3{font-size:26px}}@media(min-width:761px){.hero h1{font-size:clamp(48px,5.2vw,76px)}}

/* Title Case across the navigation, headings and calls to action. */
h1,h2,h3,h4,.eyebrow,.navlinks,.btn,button,summary,.ribbon,.hero-caption,.badge,.mobile-cta{text-transform:none}

/* Direct estimate requests and contact options. */
.estimate-panel label{display:block;font-size:13px;font-weight:600;margin:15px 0 0}.estimate-panel input:not([type=hidden]),.estimate-panel textarea{display:block;box-sizing:border-box;width:100%;margin-top:7px;padding:12px;border:1px solid #aab3a8;border-radius:2px;background:#fff;color:#172019;font:inherit;min-width:0}.estimate-panel textarea{resize:vertical}.estimate-panel input:focus,.estimate-panel textarea:focus{outline:2px solid #bd151b;outline-offset:2px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.optional{font-weight:400;color:#536059}.contact-actions{flex-wrap:wrap}.contact-actions .btn{margin-top:10px}.quote>div>p a{overflow-wrap:anywhere}.estimate-panel button{border:0;cursor:pointer;font:inherit}.estimate-panel input[type=file]{font-size:12px;padding:10px}@media(max-width:480px){.form-grid{grid-template-columns:1fr}.estimate-panel{padding:20px}}

/* Simpler estimate flow and mobile contact navigation. */
.hero-rating{display:inline-flex;flex-wrap:wrap;gap:7px;align-items:center;font-size:13px;margin-top:24px;color:#e7e8e1}.hero-rating strong{color:#fff}.hero-rating span{display:block;width:100%;font-size:11px;color:#b3bab6}.reviews-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.reviews-layout p{color:#526057}.rating-card{padding:28px;border:1px solid #c5cbc2;text-align:center;background:#e7e8e1}.rating-card strong{font-size:34px;display:block}.rating-card p{margin:3px 0;font-size:14px}.rating-card span{font-size:11px;color:#657066}.stars{color:#b80e16;font-size:24px;letter-spacing:4px}.estimate-panel form{padding:0}.estimate-panel .form-intro{font-size:13px;margin-top:-8px}.optional-fields{margin-top:18px;border-top:1px solid #bec5be;padding-top:15px}.optional-fields summary{cursor:pointer;font-size:13px;font-weight:600}.mobile-actions{display:none}section[id]{scroll-margin-top:24px}.foot-links{flex-wrap:wrap}@media(max-width:760px){.mobile-cta{display:none!important}.mobile-actions{display:grid;grid-template-columns:1.35fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:20;background:#080909;padding:10px 14px calc(10px + env(safe-area-inset-bottom));gap:10px}.mobile-actions a{display:flex;align-items:center;justify-content:center;background:#cf151b;color:white;min-height:46px;font-size:13px;font-weight:700;border-radius:2px}.mobile-actions a:last-child{background:#252929;border:1px solid #7c8581}.reviews-layout{grid-template-columns:1fr;gap:24px}footer{padding-bottom:110px}.hero-text{padding-bottom:32px}.foot-links{gap:14px}.form-grid{gap:0 12px}input,textarea{font-size:16px!important}.optional-fields summary{min-height:44px;display:flex;align-items:center}}@media(max-width:480px){.form-grid{grid-template-columns:1fr 1fr}.estimate-panel{padding:20px}.form-grid label{font-size:12px}.quote h2{font-size:36px}}

.service-links{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 35px}.service-links a{display:block;padding:12px 17px;border:1px solid #bcc5bc;font-size:14px;font-weight:600;background:#fff}.service-links a:hover{border-color:#b31016;color:#b31016}.browse-services{margin-top:32px}.browse-services h3{font-size:21px}.detail-hero h1{max-width:1000px}.detail-hero p{max-width:690px}@media(max-width:760px){.service-links a{flex:1 1 145px;font-size:13px}.detail-hero h1{font-size:42px;letter-spacing:-1.5px}}

.detail-layout>figure img{display:block;width:100%;height:auto;max-height:500px;object-fit:cover}.detail-layout>figure{align-self:start}
