:root{--iron:#18201f;--iron-2:#27312f;--steel:#5f6b68;--stone:#eeece5;--paper:#faf9f5;--white:#fff;--copper:#bb542f;--copper-dark:#943d21;--line:#c8ccc7;--shadow:0 24px 70px rgb(24 32 31 / 18%)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--iron);background:var(--paper);font-family:Aptos,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.6}body:after{content:"";display:block;height:4.5rem}img{display:block;max-width:100%}a{color:inherit}button,input,select,textarea{font:inherit}.container{width:min(100% - 2rem,76rem);margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;z-index:100;top:.5rem;left:.5rem;padding:.7rem 1rem;background:var(--copper);color:#fff;transform:translateY(-150%)}.skip:focus{transform:none}
h1,h2,h3{margin:0;font-family:Bahnschrift,"Arial Narrow",Aptos,sans-serif;line-height:.98;letter-spacing:-.045em;text-wrap:balance}h1{font-size:clamp(3.2rem,9vw,7.2rem);font-weight:650}h2{font-size:clamp(2.45rem,6vw,5rem);font-weight:620}h3{font-size:clamp(1.55rem,3vw,2.4rem);font-weight:650}p{margin:0 0 1rem}.section{padding:5rem 0}.micro{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;color:var(--copper-dark);font-size:.82rem;font-weight:850}.micro:before{content:"";width:2.4rem;height:3px;background:currentColor}.micro--light{color:#e58a64}.copy{max-width:42rem;margin-top:1.4rem;color:#47514f;font-size:1.05rem}.section-heading{max-width:58rem;margin-bottom:2.5rem}
.topline{color:#d8ddda;background:#0d1211;font-size:.78rem}.topline .container{min-height:2.4rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.topline a{color:#f08a62;font-weight:800;text-decoration:none}.header{position:relative;z-index:30;background:rgb(250 249 245 / 96%);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.header__inner{min-height:5.2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none}.brand>span:last-child{display:grid;line-height:1.05}.brand img{width:3.1rem;height:3.1rem;object-fit:contain}.brand strong{font-family:Bahnschrift,"Arial Narrow",sans-serif;font-size:1.12rem}.brand small{display:none;color:var(--steel);font-size:.68rem}.menu{width:2.8rem;height:2.8rem;display:grid;place-content:center;gap:5px;background:transparent;border:1px solid var(--line)}.menu span{width:1.25rem;height:2px;background:var(--iron)}.nav{display:none;position:absolute;inset:100% 0 auto;padding:.75rem 1rem 1rem;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.nav.is-open{display:grid}.nav a{padding:.75rem;font-weight:750;text-decoration:none}.header__cta{display:none}
.hero{min-height:min(51rem,88vh);position:relative;display:grid;overflow:hidden;color:#fff;background:var(--iron)}.hero__image,.hero__shade{position:absolute;inset:0;width:100%;height:100%}.hero__image{object-fit:cover;object-position:center}.hero__shade{background:linear-gradient(90deg,rgb(11 17 16 / 96%) 0%,rgb(11 17 16 / 83%) 44%,rgb(11 17 16 / 12%) 78%)}.hero__inner{z-index:1;display:flex;align-items:center;padding-top:4.5rem;padding-bottom:4.5rem}.hero__copy{max-width:49rem}.hero h1{max-width:10ch}.hero__lead{max-width:41rem;margin-top:1.4rem;color:#dce1df;font-size:clamp(1.05rem,2vw,1.3rem)}.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.8rem}.button{min-height:3.4rem;display:inline-flex;align-items:center;justify-content:center;padding:.8rem 1.25rem;border:1px solid transparent;font-weight:850;line-height:1.15;text-align:center;text-decoration:none;cursor:pointer}.button--copper{color:#fff;background:var(--copper)}.button--copper:hover{background:var(--copper-dark)}.button--glass{color:#fff;background:rgb(255 255 255 / 7%);border-color:rgb(255 255 255 / 45%);backdrop-filter:blur(8px)}.button--dark{color:#fff;background:var(--iron)}.button--line{background:transparent;border-color:var(--iron)}.button--cream{background:var(--stone);color:var(--iron)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #f09a73;outline-offset:3px}.hero__proof{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;margin:1.6rem 0 0;padding:1.15rem 0 0;border-top:1px solid rgb(255 255 255 / 25%);list-style:none;color:#dce1df;font-size:.84rem}.hero__proof li{display:flex;align-items:center;gap:.5rem}.hero__proof li:before{content:"";width:.48rem;height:.48rem;background:var(--copper);border-radius:50%}
.intro{background:var(--stone)}.intro__grid{display:grid;gap:2.3rem}.intro h2{max-width:16ch}.intro__copy{max-width:40rem;color:#48524f;font-size:1.08rem}.types{background:#fff}.feature{display:grid;background:var(--iron);color:#e2e7e4}.feature img{width:100%;height:24rem;object-fit:cover}.feature>div{padding:2rem}.feature span,.type-grid span{color:#e58a64;font-size:.8rem;font-weight:850}.feature h3{margin:.45rem 0 1rem;color:#fff;font-size:clamp(3rem,7vw,5.7rem)}.feature p{max-width:34rem}.feature a,.type-grid a{font-weight:850;text-underline-offset:.3rem}.feature a{color:#f08a62}.type-grid{display:grid;margin-top:1.2rem;border-top:1px solid var(--line)}.type-grid article{display:grid;border-bottom:1px solid var(--line)}.type-grid img{width:100%;height:16rem;object-fit:cover}.type-grid article>div{padding:1.4rem 0 1.8rem}.type-grid h3{margin:.35rem 0 .7rem}.type-grid p{color:#4f5957}.type-grid a{color:var(--copper-dark)}
.chooser{color:#fff;background:var(--iron-2);overflow:hidden}.chooser__grid{display:grid;gap:2.3rem}.chooser__grid>div:first-child>p:last-child{max-width:38rem;color:#cdd4d1}.chooser__panel{background:var(--paper);box-shadow:var(--shadow)}.chooser__buttons{display:grid;gap:.5rem;padding:.8rem;background:#dfe2dc}.chooser__buttons button{padding:.9rem 1rem;color:var(--iron);background:var(--paper);border:1px solid #bfc5c0;text-align:left;font-weight:800;cursor:pointer}.chooser__buttons button.is-selected,.chooser__buttons button:hover{color:#fff;background:var(--copper);border-color:var(--copper)}.chooser__result{padding:1.8rem;color:var(--iron)}.chooser__result small{color:var(--copper-dark);font-weight:850}.chooser__result h3{margin:.4rem 0 .8rem}.chooser__result p{color:#4f5957}
.craft__grid{display:grid;gap:3rem}.craft figure{margin:0}.craft figure img{width:100%;height:29rem;object-fit:cover}.craft figcaption,.service-hero figcaption{margin-top:.6rem;color:var(--steel);font-size:.76rem}.steps{margin:1.8rem 0 0;padding:0;list-style:none}.steps li{display:grid;grid-template-columns:2.5rem 1fr;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.steps li:last-child{border-bottom:1px solid var(--line)}.steps li>span{width:2rem;height:2rem;display:grid;place-items:center;color:#fff;background:var(--copper);font-weight:850}.steps strong{font-size:1.05rem}.steps p{margin:.25rem 0 0;color:#56605d}.finishes{background:var(--stone)}.finish-grid{display:grid;gap:3rem}.finish-grid>div:first-child p:last-child{max-width:41rem;margin-top:1.3rem;color:#4d5754}.finish-lines{border-top:1px solid #bfc4bf}.finish-lines div{display:grid;gap:.25rem;padding:1rem 0;border-bottom:1px solid #bfc4bf}.finish-lines span{color:#53605c;font-size:.9rem}.coverage{color:#fff;background:#121817}.coverage__grid{display:grid;gap:2.5rem}.coverage p:not(.micro){max-width:40rem;margin-top:1.2rem;color:#cdd5d2}.coverage img{width:100%;height:28rem;object-fit:cover}.areas{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}.areas a{padding:.45rem .7rem;border:1px solid rgb(255 255 255 / 25%);font-size:.8rem;text-decoration:none}.areas a:hover{color:#fff;border-color:var(--copper);background:var(--copper)}.faq{background:#fff}.faq-grid{display:grid;gap:2.5rem}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;gap:1rem;padding:1.15rem 0;font-weight:850;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";color:var(--copper);font-size:1.5rem;font-weight:400}.faq-list details[open] summary:after{content:"−"}.faq-list p{padding-right:2rem;color:#515c59}.contact{padding:5rem 0;color:#fff;background:var(--iron);background-image:linear-gradient(90deg,transparent 49%,rgb(255 255 255 / 3%) 50%)}.contact__grid{display:grid;gap:2.5rem}.contact__grid>div>p:not(.micro){max-width:39rem;color:#ccd4d1}.direct{display:flex;flex-wrap:wrap;gap:1rem 2rem;margin-top:1.7rem}.direct a{display:grid;text-decoration:none}.direct small{color:#aebbb6}.direct strong{color:#f08a62;font-size:1.2rem}.quote-form{display:grid;gap:1rem;padding:1.4rem;color:var(--iron);background:var(--paper);box-shadow:var(--shadow)}.field{display:grid;gap:.3rem}.field label{font-size:.86rem;font-weight:850}.field input,.field select,.field textarea{width:100%;padding:.8rem;color:var(--iron);background:#fff;border:1px solid #919d98;border-radius:0}.field textarea{min-height:6rem;resize:vertical}.form-note{margin:0;color:#596460;font-size:.75rem}
.footer{padding:4rem 0 1rem;color:#c7cfcc;background:#090d0c}.footer__grid{display:grid;gap:2rem}.footer__grid>div{display:grid;align-content:start;gap:.35rem}.footer__grid p{max-width:27rem;margin:.4rem 0}.footer__grid a{text-decoration-color:rgb(255 255 255 / 30%);text-underline-offset:.2rem}.footer__brand{color:#fff;font-family:Bahnschrift,"Arial Narrow",sans-serif;font-size:1.5rem;font-weight:700;text-decoration:none}.footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;margin-top:2.5rem;padding-top:1rem;border-top:1px solid rgb(255 255 255 / 14%);font-size:.78rem}.mobile-cta{position:fixed;z-index:50;inset:auto 0 0;height:4.5rem;display:grid;grid-template-columns:1fr 1fr;gap:.5rem;padding:.55rem;background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -10px 30px rgb(24 32 31 / 18%)}.mobile-cta a{display:grid;place-items:center;font-weight:850;text-decoration:none}.mobile-cta a:first-child{color:#fff;background:var(--iron)}.mobile-cta a:last-child{color:#fff;background:var(--copper)}
.seo-hub{background:#fff}.seo-hub .section-heading>p:last-child{max-width:45rem;margin-top:1rem;color:#4f5957}.seo-hub__grid,.related__grid,.coverage-list{display:grid;border-top:1px solid var(--line)}.seo-hub__grid a,.related__grid a,.coverage-list a{display:grid;gap:.2rem;padding:1.15rem 0;border-bottom:1px solid var(--line);text-decoration:none}.seo-hub__grid a:hover strong,.related__grid a:hover,.coverage-list a:hover strong{color:var(--copper-dark)}.seo-hub__grid span,.related__grid span,.coverage-list span{color:var(--steel);font-size:.9rem}.breadcrumbs{display:flex;flex-wrap:wrap;gap:.45rem;padding-top:.9rem;padding-bottom:.9rem;color:var(--steel);font-size:.78rem}.breadcrumbs a{color:var(--copper-dark)}.service-hero{padding:4.5rem 0;background:var(--stone)}.service-hero__grid{display:grid;gap:2.5rem;align-items:center}.service-hero h1{max-width:11ch;font-size:clamp(3.2rem,8vw,6.5rem)}.area-hero h1{max-width:13ch;font-size:clamp(2.8rem,7vw,5.8rem)}.lead{max-width:42rem;margin-top:1.3rem;color:#44504c;font-size:1.15rem}.service-hero figure{margin:0}.service-hero img{width:100%;height:29rem;object-fit:cover;box-shadow:var(--shadow)}.split,.process,.faq-grid{display:grid;gap:3rem}.split h2{max-width:13ch}.spec-list{margin:0;padding:0;border-top:1px solid var(--line);list-style:none}.spec-list li{display:grid;gap:.25rem;padding:1rem 0;border-bottom:1px solid var(--line)}.spec-list span{color:#52605b}.section--stone{background:var(--stone)}.process ol{margin:0;padding:0;list-style:none}.process li{display:grid;grid-template-columns:2.5rem 1fr;gap:1rem;padding:1rem 0;border-top:1px solid #bcc2bd}.process li:last-child{border-bottom:1px solid #bcc2bd}.process li>span{width:2rem;height:2rem;display:grid;place-items:center;color:#fff;background:var(--copper);font-weight:850}.process p{margin:.25rem 0 0;color:#56615d}.related h2{margin-bottom:2rem;font-size:clamp(2.2rem,5vw,4rem)}.area-links{display:flex;flex-wrap:wrap;align-content:start;gap:.55rem}.area-links a{padding:.55rem .8rem;color:var(--iron);background:#fff;border:1px solid var(--line);font-weight:750;text-decoration:none}.area-links a:hover{color:#fff;background:var(--copper);border-color:var(--copper)}.cta-band{padding:3.5rem 0;color:#fff;background:var(--copper)}.cta-band .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem}.cta-band .micro{color:#fff}.cta-band h2{font-size:clamp(2.4rem,5vw,4.3rem)}.legal{min-height:65vh;padding:4rem 0 6rem;background:var(--stone)}.legal article{max-width:53rem}.legal h1{margin-bottom:2rem;font-size:clamp(3rem,8vw,5.5rem)}.legal h2{margin:2.2rem 0 .7rem;font-size:1.7rem}.legal p,.legal li{color:#4c5753}
@media(min-width:760px){body:after{display:none}.brand small{display:block}.hero__image{object-position:center}.type-grid{grid-template-columns:repeat(3,1fr)}.type-grid article{border-right:1px solid var(--line)}.type-grid article>div{padding:1.4rem}.chooser__panel{display:grid;grid-template-columns:1fr 1.1fr}.seo-hub__grid,.related__grid,.coverage-list{grid-template-columns:1fr 1fr}.seo-hub__grid a,.related__grid a,.coverage-list a{padding:1.2rem;border-right:1px solid var(--line)}.footer__grid{grid-template-columns:1.5fr 1fr 1fr}.mobile-cta{display:none}}
@media(min-width:980px){.menu{display:none}.nav{display:flex;position:static;align-items:center;gap:.15rem;padding:0;background:transparent;border:0;box-shadow:none}.nav a{padding:.65rem;font-size:.87rem}.nav a:hover{color:var(--copper-dark)}.header__cta{display:inline-flex;padding:.72rem 1rem;color:#fff;background:var(--copper);font-weight:850;text-decoration:none}.intro__grid{grid-template-columns:1.08fr .92fr;align-items:end}.feature{grid-template-columns:1.2fr .8fr}.feature img{height:34rem}.feature>div{display:flex;flex-direction:column;justify-content:center;padding:3.2rem}.chooser__grid{grid-template-columns:.82fr 1.18fr;align-items:center}.craft__grid{grid-template-columns:1.08fr .92fr;align-items:center}.finish-grid{grid-template-columns:1fr 1fr}.coverage__grid{grid-template-columns:1fr 1fr;align-items:center}.faq-grid{grid-template-columns:.8fr 1.2fr}.contact__grid{grid-template-columns:1fr .8fr;align-items:start}.service-hero__grid{grid-template-columns:1fr .9fr}.split{grid-template-columns:1fr .85fr}.process{grid-template-columns:.8fr 1.2fr}}
.image-note{margin:1rem 0 0;color:var(--steel);font-size:.76rem}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
