@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--green:#173c31;--ink:#23372e;--gold:#dfb66e;--paper:#f8f6ef;--line:#d9ded3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,textarea,summary{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header{height:96px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;font-size:17px;font-weight:700;letter-spacing:2px}.brand small{display:block;font-size:9px;letter-spacing:3px;margin-top:5px}.mark{font-family:Georgia,serif;font-size:25px;letter-spacing:-3px;border:1px solid #9aa797;padding:9px 13px;position:relative}.mark span{font-family:Arial;font-size:15px;position:absolute;right:2px;top:0;letter-spacing:0}nav{display:flex;gap:30px;align-items:center;font-size:13px}.button{background:var(--green);color:white;display:inline-flex;gap:30px;justify-content:space-between;align-items:center;padding:19px 24px;border:0;font-size:14px;font-weight:600}.button.small{padding:14px 19px}.button span{font-size:19px}.soft{background:#cbd7cf;color:#15354f}.menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:640px}.hero-copy{padding:70px 9% 35px 10%}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;margin:0 0 24px;display:flex;align-items:center;gap:9px}.dot{width:7px;height:7px;background:var(--green);border-radius:50%}h1,h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;letter-spacing:-2px;line-height:1.02}h1{font-size:clamp(56px,5.7vw,88px);margin:30px 0}h1 em,h2 em{font-weight:400;color:#75806a}.intro{font-size:16px;line-height:1.8;max-width:400px;margin:0 0 30px;color:#5a665b}.text-link{display:block;font-size:12px;margin-top:23px}.text-link span{margin-left:15px}.hero-foot{display:flex;gap:20px;font-size:10px;border-top:1px solid var(--line);margin-top:45px;padding-top:20px}.hero-picture{position:relative;overflow:hidden;background:#d5cbb8}.hero-picture>img{width:100%;height:100%;position:absolute;object-fit:cover;image-rendering:auto}.hero-picture:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 50%,#102c24b8)}.photo-note{position:absolute;bottom:45px;left:8%;z-index:1;color:white}.photo-note span{display:block;font-size:9px;letter-spacing:2px;margin-bottom:12px}.photo-note strong{font:32px Georgia,serif;font-weight:400}.image-tag{position:absolute;right:20px;top:22px;background:#f8f6efd9;padding:10px;font-size:8px;letter-spacing:1px}.service-strip{display:flex;justify-content:space-around;align-items:center;gap:10px;padding:25px 5%;background:var(--green);color:#e8dfca;font-size:11px;letter-spacing:3px}.service-strip i{font-size:18px;color:var(--gold)}.section{padding:85px 7%}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:44px}h2{font-size:clamp(42px,4.8vw,66px);margin:0}.section-heading>p{max-width:335px;font-size:14px;line-height:1.8;color:#657163}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.services article{padding:35px 30px 15px 0}.services article+article{border-left:1px solid var(--line);padding-left:30px}.service-number{font-size:11px;color:#808978}.services h3{font-size:22px;font-weight:500;margin:28px 0 15px}.services p{font-size:14px;line-height:1.8;color:#657163}.services button{border:0;border-bottom:1px solid #b3bca9;background:none;color:var(--green);padding:12px 0;display:flex;width:100%;justify-content:space-between;font-size:12px;margin-top:20px}.projects{background:#eeeee4}.filters{display:flex;gap:10px;margin-bottom:30px;flex-wrap:wrap}.filters button{border:1px solid #c5cdbd;background:transparent;padding:10px 18px;border-radius:30px;font-size:12px;color:var(--green)}.filters .active{background:var(--green);color:white;border-color:var(--green)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 24px}.project.wide{grid-column:span 2}.photo-open{display:block;width:100%;height:285px;border:0;padding:0;position:relative;background:#c7cbbd;overflow:hidden}.photo-open img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.photo-open:hover img{transform:scale(1.035)}.photo-open span{position:absolute;right:12px;bottom:12px;font-size:10px;padding:9px 12px;background:#f8f6eff0}.project-info h3{font-size:19px;font-weight:500;margin:18px 0 10px}.project-info>span{font-size:9px;letter-spacing:1px;color:#747e6f}.project-info p{font-size:13px;line-height:1.7;color:#657163}.about{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:var(--green);color:#eeeedd}.about em{color:#d3b980}.about p{font-size:14px;line-height:1.9}.about .about-intro{font-size:22px;line-height:1.6;margin-top:0}.about-points{border-top:1px solid #536758;margin-top:30px}.about-points span{display:block;padding:14px 0;border-bottom:1px solid #536758;font-size:12px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps>div>span{font:42px Georgia;color:#b19b6c}.steps h3{font-weight:500;font-size:19px}.steps p{font-size:13px;line-height:1.8;color:#657163}.quote{background:#e8e8db;display:grid;grid-template-columns:1fr 1fr;gap:9%}.quote>div>p{font-size:14px;line-height:1.8}.contact-note{font-size:12px;line-height:1.7;border-left:2px solid #9d9e83;padding-left:15px;max-width:330px;margin-top:30px;color:#657163}label{display:block;font-size:12px;font-weight:500;margin-bottom:20px}input,select,textarea{display:block;width:100%;margin-top:9px;background:#f8f6ef;border:1px solid #c4cbbb;border-radius:0;padding:13px;color:var(--ink);font-size:14px}textarea{resize:vertical;line-height:1.6}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}form>.button{width:100%}.form-hint{font-size:10px;line-height:1.6;color:#657163}#request-result{margin-top:25px}#copy-status{font-size:12px}.copy{padding:12px 20px}.faq h2{margin-bottom:30px}.faq details{border-top:1px solid var(--line);padding:22px 0}.faq details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-size:16px}.faq details p{max-width:700px;font-size:14px;color:#657163;line-height:1.8}footer{padding:45px 7%;border-top:1px solid var(--line);display:flex;gap:30px;flex-wrap:wrap;align-items:center;justify-content:space-between}footer p{font:20px Georgia;color:#74816b}footer>span{width:100%;font-size:10px;color:#657163}dialog{border:0;padding:20px;background:var(--paper);max-width:90vw;max-height:90vh}dialog::backdrop{background:#0a1e18de}dialog img{display:block;max-width:80vw;max-height:70vh;margin:auto}dialog p{font-size:13px;padding-right:30px}#close-gallery{position:absolute;top:0;right:0;width:35px;height:35px;background:var(--green);color:white;border:0;font-size:25px}[hidden]{display:none!important}@media(max-width:760px){header{height:78px;padding:0 6%}.brand{font-size:13px}.brand small{font-size:8px}nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:25px;box-shadow:0 15px 20px #173c3110}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:20px}.menu{display:block;border:0;background:none;font-size:25px;color:var(--green)}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 7% 30px}h1{font-size:61px;margin:22px 0}.hero-picture{min-height:355px}.hero-foot{margin-top:30px}.hero-picture>img{object-position:center 42%}.service-strip{font-size:8px;letter-spacing:1px;padding:22px 4%}.section{padding:58px 7%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:22px;max-width:100%}.services{grid-template-columns:1fr}.services article,.services article+article{padding:25px 0;border-left:0;border-bottom:1px solid var(--line)}.services h3{margin-top:17px}.project-grid{grid-template-columns:1fr 1fr;gap:26px 16px}.project.wide{grid-column:span 2}.photo-open{height:205px}.project.wide .photo-open{height:280px}.project-info h3{font-size:17px}.project-info p{font-size:12px}.project-info>span{font-size:8px}.about,.quote{grid-template-columns:1fr;gap:30px}.steps{grid-template-columns:1fr;gap:26px}.steps>div{display:grid;grid-template-columns:48px 1fr;column-gap:15px}.steps>div>span{grid-row:span 2}.steps h3{margin:0}.steps p{margin:8px 0 0}.filters{gap:6px}.filters button{padding:9px 12px;font-size:10px}footer{padding:35px 7%}.photo-note strong{font-size:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.direct-contact{display:flex;gap:22px;flex-wrap:wrap;margin-top:20px;font-size:12px}.direct-contact a,.footer-contact a{border-bottom:1px solid #a4ae98;padding-bottom:5px}.footer-contact{display:flex;flex-direction:column;gap:12px;font-size:13px}#whatsapp-request{margin-bottom:12px}@media(min-width:761px) and (max-width:1100px){nav{gap:15px;font-size:11px}}

/* Brand colors and the owner's original logo. */
:root{--green:#082f54;--ink:#15354f;--gold:#f2b929;--paper:#faf9f4;--line:#d8dfe3}.brand-logo{width:72px;height:72px;object-fit:contain;border-radius:50%;display:block}.mark{display:none}.soft{color:#15354f}.dot{background:#082f54}.service-strip{color:#f5f4ea}.hero-picture:after{background:linear-gradient(transparent 50%,#082f54b8)}h1 em,h2 em{color:#7c8c9a}.about em{color:#f2c451}.about-points,.about-points span{border-color:#49657d}.profile-link{display:inline-block;margin-top:18px;font-size:11px;border-bottom:1px solid #a9b4be;padding-bottom:5px}.about-profile{display:inline-block;font-size:12px;margin-top:25px;border-bottom:1px solid #b8c6d0;padding-bottom:7px}.services{grid-template-columns:repeat(2,1fr)}.services article:nth-child(3){border-left:0;padding-left:0;border-top:1px solid var(--line)}.services article:nth-child(4){border-top:1px solid var(--line)}.thumbtack-section{display:flex;justify-content:space-between;align-items:center;gap:35px;border-bottom:1px solid var(--line);background:#edf1f4}.thumbtack-section p:not(.eyebrow){max-width:570px;font-size:14px;line-height:1.8;color:#596c7b}.thumbtack-section .button{flex-shrink:0}nav{gap:20px;font-size:12px}@media(min-width:761px) and (max-width:1150px){header{padding:0 3%}.brand{font-size:12px;letter-spacing:1px}.brand-logo{width:60px;height:60px}.brand small{font-size:8px;letter-spacing:2px}nav{gap:12px;font-size:10px}nav .button.small{padding:12px}}@media(max-width:760px){.brand-logo{width:58px;height:58px}.brand{gap:9px}.services{grid-template-columns:1fr}.services article:nth-child(3),.services article:nth-child(4){border-top:0;padding-left:0}.thumbtack-section{display:block}.thumbtack-section .button{margin-top:20px}header{height:82px}nav{top:82px}.hero-foot{gap:14px}.brand small{letter-spacing:2px}}

.service-details{border-top:1px solid var(--line);margin-top:28px;padding-top:26px}.service-details h3{font-size:21px;font-weight:500}.service-details>p{font-size:13px;line-height:1.8;color:#596c7b}.service-tags{display:flex;flex-wrap:wrap;gap:9px;margin:20px 0}.service-tags span{padding:9px 13px;border:1px solid #d0dae1;font-size:12px;background:#f0f3f3}.service-details .scope-note{font-size:12px}.profile-facts{font-size:11px!important;color:#c2d1dc;line-height:1.7!important}.gallery-note{font-size:11px;color:#627887}.photo-open{background:#dce2e4}.photo-open img{object-fit:contain}.hero-picture>img{object-fit:contain;position:relative;height:auto;max-height:560px;align-self:center}.hero-picture{display:flex;align-items:center;justify-content:center;background:#e4e7df}.hero-picture:after{pointer-events:none}.hero-picture .photo-note{background:#082f54e8;padding:18px 22px;bottom:25px;left:5%;right:5%}.photo-note strong{font-size:27px}.project.wide .photo-open{height:285px}@media(max-width:760px){.hero-picture{min-height:340px}.hero-picture>img{max-height:330px}.hero-picture .photo-note{bottom:15px;padding:12px 15px}.photo-note strong{font-size:21px}.image-tag{top:12px;right:12px}.project.wide .photo-open{height:250px}}

/* Original full-resolution photography, with no stretched thumbnails. */
.hero-picture{min-height:680px;background:#d3d9d5;overflow:hidden}.hero-picture>img{position:absolute;width:100%;height:100%;max-height:none;object-fit:cover;object-position:50% 46%}.photo-open{height:auto!important;aspect-ratio:3/4;background:#e2e7e7}.photo-open img{object-fit:contain;height:100%;width:100%}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.small-source .photo-open img{width:auto;height:auto;max-width:100%;max-height:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.small-source .photo-open:hover img{transform:translate(-50%,-50%)}dialog img{max-height:72vh;width:auto;height:auto;max-width:85vw;object-fit:contain}.gallery-controls{display:flex;justify-content:space-between;gap:18px;align-items:center;font-size:12px}.gallery-controls button{padding:9px 13px;background:#082f54;color:#fff;border:0}.gallery-controls button:focus-visible{outline:3px solid #f2b929}@media(max-width:760px){.hero-picture{min-height:490px}.hero-picture>img{max-height:none}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.small-source .photo-open{min-height:190px}dialog{padding:12px}dialog img{max-width:84vw;max-height:68vh}}@media(max-width:420px){.project-grid{gap:24px 12px}.project-info h3{font-size:15px}.project-info>span{letter-spacing:.5px}}

.services .moving-service{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding:30px 0 20px}.moving-service p{max-width:760px}.moving-service button{max-width:360px}.hero-picture>img{object-position:center 42%}@media(max-width:760px){.services .moving-service{grid-column:auto}}
/* Project-focused ways to start a conversation. */
.hero-reassurance{font-size:12px;line-height:1.7;color:#596c7b;margin:18px 0 0}.quick-start{background:#edf1f4}.task-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.task-grid button{text-align:left;background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:27px 22px;display:flex;flex-direction:column;align-items:flex-start;transition:border-color .2s,transform .2s}.task-grid button:hover{border-color:#082f54;transform:translateY(-3px)}.task-grid button>span{font-size:9px;letter-spacing:1.2px;color:#596c7b}.task-grid strong{font:28px/1.1 Georgia,serif;display:block;margin-top:25px}.task-grid p{font-size:13px;line-height:1.8;color:#596c7b;flex:1}.task-grid b{font-size:12px;border-bottom:1px solid #acbac6;padding-bottom:7px;margin-top:15px}.photo-prompt{background:var(--green);color:white;margin-top:24px;padding:30px;display:flex;align-items:center;justify-content:space-between;gap:30px}.photo-prompt strong{font:25px Georgia,serif}.photo-prompt p{font-size:13px;line-height:1.8;color:#d7e3ec;max-width:570px;margin-bottom:0}.photo-prompt .button{flex-shrink:0}.work-cta{margin-top:36px;padding-top:26px;border-top:1px solid #c4cdd0;display:flex;justify-content:space-between;align-items:center;gap:20px}.work-cta strong{font:26px Georgia,serif}.sms-link{display:inline-block;font-size:13px;text-decoration:underline;line-height:1.8;margin-top:12px}.sticky-contact{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);width:min(720px,calc(100% - 32px));background:#082f54;color:white;z-index:20;display:flex;align-items:center;gap:20px;padding:14px 18px;box-shadow:0 8px 36px #00172c35;border:1px solid #45627a;border-radius:5px}.sticky-contact>div{flex:1}.sticky-contact strong{font-size:13px;display:block}.sticky-contact>div span{font-size:11px;display:block;margin-top:5px;color:#cbd8e3}.sticky-contact .button{font-size:12px;padding:14px 19px;white-space:nowrap}.sticky-sms{font-size:12px;text-decoration:underline;white-space:nowrap}footer{padding-bottom:130px}body{scroll-padding-bottom:110px}@media(max-width:1000px){.task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-prompt{align-items:flex-start;flex-direction:column}}@media(max-width:600px){h1{font-size:54px}.hero-copy .intro{font-size:15px}.task-grid{gap:12px}.task-grid button{padding:22px 16px}.task-grid strong{font-size:24px}.task-grid button>span{font-size:8px}.photo-prompt{padding:25px}.photo-prompt .button{width:100%;gap:12px}.work-cta{align-items:flex-start;flex-direction:column}.sticky-contact{bottom:10px;padding:12px;gap:12px}.sticky-contact>div{display:none}.sticky-contact .button{flex:1;justify-content:center}.sticky-sms{padding:10px}.hero-foot{margin-top:22px}}@media(prefers-reduced-motion:reduce){.task-grid button:hover{transform:none}}

/* Subtle sage calls to action complement the navy brand. */
.button.soft{transition:background-color .2s ease}.button.soft:hover{background:#b9cbbf}.button.soft:active{background:#adbfB3}.button.soft:focus-visible{outline-color:#688b7a}

.review-links{display:flex;flex-direction:column;gap:12px;flex-shrink:0}.profile-link+.profile-link{margin-left:18px}.thumbtack-section .review-links .button{margin-top:0}@media(max-width:760px){.review-links{margin-top:20px;align-items:flex-start}}

/* Customer reviews sourced from Thumbtack, checked 2026-10-17. */
.customer-reviews{background:#f3f5f1}.review-rating strong{font-size:32px;font-weight:600}.review-rating strong span{font-size:19px;color:#527363;letter-spacing:2px}.review-rating p{font-size:13px;margin:10px 0;color:#596c7b}.review-rating small{font-size:11px;color:#596c7b}.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:25px}.review-card{padding:28px;background:var(--paper);border:1px solid var(--line);display:flex;flex-direction:column}.review-stars{color:#527363;letter-spacing:3px;font-size:15px}.review-text{font-size:15px;line-height:1.8;margin:20px 0 25px}.review-summary-label{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#596c7b;margin:20px 0 -10px}.review-author{margin-top:auto}.review-author strong{font-size:14px;display:block}.review-author span{font-size:11px;color:#596c7b;display:block;margin-top:7px;line-height:1.6}.review-source{font-size:11px;text-decoration:underline;margin-top:18px}.reviews-disclosure{font-size:11px;color:#596c7b;line-height:1.8;margin-bottom:24px}nav{gap:14px}@media(max-width:1050px){.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.reviews-grid{grid-template-columns:1fr}.review-rating{margin-top:25px}.review-card{padding:25px}}

/* Completed project examples sourced from the company's Thumbtack project cards. */
.project-facts{margin:18px 0;border-top:1px solid #ccd5d7}.project-facts>div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid #ccd5d7;font-size:12px}.project-facts dt{color:#596c7b}.project-facts dd{margin:0;text-align:right;font-weight:600;color:var(--ink)}.project-source{display:inline-block;font-size:11px;text-decoration:underline;margin-top:3px}.project-pricing-note{max-width:850px;font-size:12px;line-height:1.8;color:#596c7b;margin:-10px 0 28px}.project-pricing-note strong{display:block;font-size:15px;color:var(--ink);margin-bottom:6px}@media(max-width:600px){.project-facts>div{display:block;font-size:11px}.project-facts dd{text-align:left;margin-top:5px}}
