:root{--navy:#102c3e;--deep:#0b2232;--orange:#eea84f;--copper:#b7682f;--paper:#faf9f5;--ink:#162f3e;--muted:#586671;--line:#d8dedf;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-underline-offset:5px}a:hover{color:#8d461f}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%;height:auto}figure{margin:0}p{margin:0 0 1.2rem}h1,h2,h3{line-height:1.1;letter-spacing:-.045em;margin:0 0 1.2rem}h1{font-size:clamp(2.8rem,5.4vw,5.5rem);font-weight:750}h2{font-size:clamp(2rem,3.5vw,3.45rem)}h3{font-size:1.6rem;letter-spacing:-.025em}ul{padding-left:1.2rem}li{margin-bottom:.4rem}.wrap{width:min(1260px,calc(100% - 96px));margin-inline:auto}.topline{background:var(--deep);color:#e4e9eb;font-size:.72rem;font-weight:700;letter-spacing:.12em;padding:10px 0}.topline span{color:var(--orange);margin:0 17px}header{background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:108px}.brand{text-decoration:none;display:inline-flex;flex-direction:column;line-height:.86;flex-shrink:0}.brand>span{font-size:2.55rem;font-weight:900;letter-spacing:-.07em}.brand .brand-mark{color:var(--copper);margin-left:6px;font-weight:400}.brand small{font-size:.8rem;font-weight:800;letter-spacing:.13em;margin-top:9px}nav{display:flex;align-items:center;gap:25px}nav a{text-decoration:none;font-size:.87rem;font-weight:700;white-space:nowrap}nav a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--copper);text-decoration-thickness:3px;text-underline-offset:8px}.nav-cta{background:var(--navy);color:white!important;padding:13px 17px}.nav-cta:hover{background:#24485e}.menu-toggle{border:1px solid var(--navy);background:transparent;padding:8px 14px}.skip{position:fixed;top:-100px;left:1rem;background:white;padding:12px;z-index:20}.skip:focus{top:1rem}:focus-visible{outline:3px solid #ae5522;outline-offset:5px}.eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.16em;color:#985020;margin-bottom:20px}.lead{font-size:1.2rem;line-height:1.65;color:#465b68}.hero{display:grid;grid-template-columns:1.04fr 1fr;padding-block:58px 64px;gap:55px;align-items:stretch}.hero-copy{padding-block:15px 0}.hero h1 em{font-style:normal;color:#a75929}.hero .lead{max-width:31rem}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--orange);color:var(--deep);font-size:.95rem;line-height:1.4;font-weight:750;text-decoration:none;border:0;padding:18px 24px;min-height:54px}.button:hover{background:#f7bc71;color:var(--deep)}.button:disabled{opacity:.55;cursor:not-allowed}.quiet-link,.text-link{font-size:.93rem;font-weight:700;text-decoration:underline;text-decoration-thickness:2px}.quiet-link{border:0;background:transparent;padding:0}.hero-proof{border-top:1px solid var(--line);margin-top:36px;padding-top:21px;display:flex;flex-direction:column;font-size:.9rem}.hero-proof span{color:var(--muted);font-size:.82rem;margin-top:2px}.hero-image{position:relative;min-height:570px;overflow:hidden;background:var(--navy)}.hero-image img{width:100%;height:100%;object-fit:cover;position:absolute}.hero-image:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(5,20,30,.82))}.hero-image figcaption{position:absolute;bottom:35px;left:35px;right:25px;color:white;z-index:1}.hero-image figcaption span{display:block;letter-spacing:.16em;font-size:.72rem;color:#ffe0aa;margin-bottom:13px}.hero-image figcaption strong{font-size:2rem;line-height:1.15;letter-spacing:-.03em}.section{padding-block:85px}.service-section{padding-block:28px 90px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:40px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:360px;color:var(--muted);margin-bottom:4px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.service-card{padding:35px 30px;display:flex;flex-direction:column;background:#fff}.service-card+.service-card{border-left:1px solid var(--line)}.service-card p{color:var(--muted)}.service-card .text-link{margin-top:auto;align-self:flex-start}.card-number{font-size:.9rem;letter-spacing:.1em;color:#9e5b29;display:block;margin-bottom:30px}.about-band{background:#e9eeef;padding:75px 0}.about-grid{display:grid;grid-template-columns:.72fr 1fr;gap:90px;align-items:center}.portrait-frame{max-width:430px;background:var(--navy);border-bottom:8px solid var(--orange)}.portrait-frame img{width:100%;aspect-ratio:5/5.5;object-fit:cover;object-position:50% 25%}.about-grid>div>p:not(.eyebrow){max-width:620px}.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin:0}.steps li{border-top:2px solid var(--ink);padding-top:20px}.steps span{display:block;color:#9e5b29;font-size:.9rem;margin-bottom:28px}.steps p{color:var(--muted)}.local-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-block:0 90px}.local-section p:not(.eyebrow){max-width:540px}.towns{display:flex;flex-direction:column;justify-content:center}.towns span{border-bottom:1px solid var(--line);padding:13px 0;font-weight:700}.cta{background:var(--navy);color:white;padding-block:65px}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{max-width:700px;font-size:clamp(2rem,3.2vw,3rem)}.cta p{color:#d2dee5}.cta .eyebrow{color:var(--orange)}.cta .button{flex-shrink:0}.cta p:last-child{margin-bottom:0}footer{background:var(--deep);color:#e1e8ed;padding-top:65px}footer a:hover{color:var(--orange)}.footer-grid{display:grid;grid-template-columns:1.1fr .75fr 1.2fr;gap:70px;padding-bottom:50px}.footer-brand{color:var(--orange);margin-bottom:25px}.footer-brand small{color:white}.footer-grid h2{font-size:1rem;letter-spacing:0;margin-bottom:20px}.footer-grid p,.footer-grid a:not(.brand){font-size:.9rem}.footer-grid>div:nth-child(2) a{display:block;margin-bottom:7px;text-decoration:none}.muted{color:#aebfc9}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #345063;padding-block:23px;font-size:.78rem;color:#b5c4ce}.page-intro{padding:70px 0 65px;background:var(--navy);color:white}.page-intro h1{max-width:950px}.page-intro .eyebrow{color:var(--orange)}.page-intro .lead{color:#d4dfe6;max-width:790px;margin-bottom:0}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.detail-card{background:white;border:1px solid var(--line);padding:34px}.detail-card h3{font-size:1.8rem}.detail-card p{color:var(--muted)}.detail-card ul{margin-bottom:0}.detail-card li::marker{color:var(--copper)}.note-panel{border-left:5px solid var(--copper);background:#e9eeef;padding:38px 45px;margin-bottom:85px}.note-panel h2{font-size:2rem}.note-panel p{max-width:1000px}.note-panel p:last-child{margin-bottom:0}.feature-split{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-bottom:80px}.project-feature{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center;padding-top:75px}.project-feature img{width:100%;object-fit:cover}.project-feature figcaption{font-size:.8rem;color:var(--muted);margin-top:10px}.contact-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.contact-layout aside h2{font-size:2.2rem}.contact-note{border-block:1px solid var(--line);padding-top:25px;margin:30px 0}.contact-note h3{font-size:1.1rem;letter-spacing:0}.small{font-size:.9rem;color:var(--muted)}form{padding:38px;background:white;border:1px solid var(--line)}form h2{font-size:1.8rem}label{display:block;font-size:.9rem;font-weight:700;margin-bottom:22px}input,select,textarea{display:block;width:100%;background:#fafbfb;border:1px solid #a6b4bd;border-radius:0;padding:12px;color:var(--ink);margin-top:8px;font-size:1rem;line-height:1.4}textarea{resize:vertical}.optional{font-weight:400;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.checkbox{display:flex;gap:12px;font-weight:400;line-height:1.6}.checkbox input{width:20px;height:20px;flex-shrink:0;margin-top:5px;accent-color:var(--navy)}.honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#form-status{font-size:.93rem;margin:18px 0 0}#form-status[data-state=error]{color:#9d281d}#form-status[data-state=success]{color:#216743}.prose{max-width:850px}.prose h2{font-size:1.65rem;margin-top:35px}.prose h2:first-child{margin-top:0}[hidden]{display:none!important}
@media(min-width:1001px){.menu-toggle{display:none!important}}
@media(max-width:1150px){nav{gap:15px}nav a{font-size:.8rem}.wrap{width:calc(100% - 60px)}.hero{gap:32px}.about-grid{gap:50px}.contact-layout{gap:40px}.footer-grid{gap:35px}}
@media(max-width:1000px){.header-inner{min-height:92px;flex-wrap:wrap;padding-block:20px}.menu-toggle:not([hidden]){display:block}nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding-block:10px}nav a{font-size:1rem;padding:13px 0}nav .nav-cta{padding:15px}html.js nav:not(.open){display:none}.hero{grid-template-columns:1fr 1fr;gap:30px}.hero-image{min-height:530px}h1{font-size:3.5rem}.service-card{padding:27px 22px}.service-card h3{font-size:1.4rem}.cta-inner{align-items:flex-start;flex-direction:column}.contact-layout{grid-template-columns:1fr}.contact-layout aside{max-width:600px}.contact-note{margin-block:20px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}}
@media(max-width:700px){body{font-size:16px}.wrap{width:calc(100% - 40px)}.topline{font-size:.6rem;letter-spacing:.04em}.topline span{margin-inline:5px}.brand>span{font-size:2.2rem}.hero{grid-template-columns:1fr;padding-top:28px;padding-bottom:45px;gap:30px}.hero h1{font-size:3.35rem}.hero-copy{padding:0}.hero .lead{font-size:1.08rem}.hero-image{min-height:365px}.hero-image figcaption{left:25px;bottom:25px}.hero-image figcaption strong{font-size:1.8rem}.hero-proof{margin-top:26px}.section-heading{display:block}.section-heading>p{margin-top:20px}.service-grid,.steps,.detail-grid,.about-grid,.local-section,.feature-split,.project-feature{grid-template-columns:1fr}.service-card+.service-card{border-left:0;border-top:1px solid var(--line)}.service-card{padding:30px}.service-card h3{font-size:1.7rem}.card-number{margin-bottom:20px}.section,.service-section{padding-block:45px}.about-band{padding-block:45px}.about-grid{gap:35px}.portrait-frame{max-width:350px}.steps{gap:25px}.steps span{margin-bottom:15px}.local-section{gap:15px;padding-bottom:45px}.cta{padding-block:45px}.footer-grid{gap:35px;grid-template-columns:1fr}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{flex-wrap:wrap;justify-content:flex-start;font-size:.8rem}.footer-bottom span:last-child{margin-left:auto}.page-intro{padding-block:45px}.page-intro h1{font-size:2.8rem}.lead{font-size:1.1rem}.detail-card{padding:27px}.note-panel{padding:27px;margin-bottom:45px}.note-panel h2{font-size:1.7rem}.feature-split{gap:15px;padding-bottom:35px}.project-feature{padding-top:40px;gap:30px}.contact-layout{gap:30px}form{padding:24px}.form-row{grid-template-columns:1fr;gap:0}.button{padding:16px 20px}.actions{gap:20px}.contact-layout aside h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Allow navigation and long headings to reflow when text is enlarged. */
nav{flex-wrap:wrap;justify-content:flex-end;min-width:0}h1,h2,h3{overflow-wrap:anywhere}.hero-copy,.service-card,.detail-card,.contact-layout>*{min-width:0}
@media(max-width:1000px){nav{justify-content:flex-start}}
