:root{--navy:#121f2b;--copper:#dfb084;--paper:#fafafa;--ink:#182734;--muted:#596772}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.6}a{color:inherit}button,input,textarea,select{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b77740;outline-offset:5px}.skip{position:absolute;top:-100px;z-index:9;background:white;padding:12px}.skip:focus{top:0}header{padding:23px 5%;display:flex;align-items:center;justify-content:space-between;gap:28px;background:var(--paper)}.brand{font-size:30px;font-weight:800;letter-spacing:6px;text-decoration:none;line-height:1.2}.brand span{display:block;font-size:10px;letter-spacing:2.1px;margin-top:7px}nav{display:flex;gap:34px;font-size:14px}nav a{text-decoration:none}nav a:hover{color:#946037}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 25px;background:var(--navy);color:white;text-decoration:none;border:1px solid transparent;cursor:pointer;font-size:14px;font-weight:600;min-height:48px}.button:hover{filter:brightness(1.15)}.button.copper{background:var(--copper);color:var(--navy)}.small{padding:11px 22px}.hero{position:relative;display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:white;min-height:660px}.hero-copy{padding:72px 11% 40px 10%}.eyebrow{font-size:12px;letter-spacing:2.2px;font-weight:700;margin-bottom:20px}.hero .eyebrow,.project .eyebrow{color:var(--copper)}h1{font-size:clamp(56px,6.5vw,96px);line-height:1.06;letter-spacing:-4px;font-weight:500;margin:30px 0}h1 em{font-family:Georgia,serif;font-weight:400;color:var(--copper)}.hero-copy>p{max-width:450px;color:#c6cdd3;font-size:17px;margin-bottom:32px}.hero-foot{display:flex;gap:20px;flex-wrap:wrap;border-top:1px solid #3a454f;margin-top:49px;padding-top:22px;font-size:12px;color:#c6cdd3}.hero-image{margin:0;position:relative;min-height:600px;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;position:absolute}.hero-image:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#101923b3)}figcaption{position:absolute;z-index:1;bottom:36px;left:36px;right:30px;font-family:Georgia,serif;font-size:23px}figcaption small{display:block;font:12px Arial;margin-top:9px;color:#e2e5e7}.vertical{position:absolute;right:12px;top:30px;writing-mode:vertical-rl;letter-spacing:2px;font-size:11px;text-shadow:0 1px 4px #000}.promise{display:flex;justify-content:space-between;gap:24px;padding:25px 5%;border-bottom:1px solid #ddd;font-size:14px}.promise span:before{content:'✓';color:#976b42;margin-right:12px}.section{padding:100px 7%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:48px}h2{font-size:clamp(34px,4vw,54px);line-height:1.15;font-weight:500;letter-spacing:-1.8px;margin:0 0 22px}.section-head>p{max-width:350px;color:var(--muted)}.services{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #cbd0d3}.services article{padding:32px 24px 12px 0;border-right:1px solid #dce0e2;margin-right:24px;display:flex;flex-direction:column}.services article:last-child{border:0;margin:0;padding-right:0}.number{font-size:13px;letter-spacing:2px;color:#926139}h3{font-size:22px;line-height:1.3;font-weight:500;letter-spacing:-.5px}.services p{font-size:15px;color:var(--muted);margin-top:0}.services a{font-size:14px;text-underline-offset:6px;margin-top:auto;padding-top:20px}.approach{background:#e9edf0;display:grid;grid-template-columns:1fr 1fr;gap:12%}.approach>div>p{color:var(--muted);max-width:460px}.signature{font-family:Georgia,serif;font-style:italic;font-size:32px;margin-top:32px}.signature span{display:block;font:11px Arial;letter-spacing:2px;margin-top:8px}.steps{list-style:none;margin:0;padding:0}.steps li{display:flex;gap:26px;padding:20px 0;border-bottom:1px solid #c4cdd3}.steps li:first-child{padding-top:0}.steps li>span{color:#926139;font-size:14px;padding-top:5px}.steps h3{margin:0 0 10px}.steps p{color:var(--muted);font-size:15px;margin:0}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}details{border-bottom:1px solid #cbd0d3;padding:19px 0}summary{cursor:pointer;font-size:17px}details p{color:var(--muted);padding-right:22px}.project{background:var(--navy);color:white;display:grid;grid-template-columns:1fr 1fr;gap:12%}.project p{color:#c3cbd1;max-width:390px}.project .note{font-size:14px}.coverage{margin-top:55px;font-size:12px;letter-spacing:2px;color:var(--copper)}.coverage strong{display:block;font-size:19px;color:white;font-weight:400;letter-spacing:0;margin-top:12px}form{display:flex;flex-direction:column;gap:10px}label{font-size:14px;margin-top:8px}input,select,textarea{width:100%;border:1px solid #63717c;border-radius:0;padding:13px;background:#1d2b37;color:white;min-width:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#aeb8c1}input:focus,select:focus,textarea:focus{outline:2px solid var(--copper);outline-offset:2px}form>.button{margin-top:10px;align-self:start}#result{margin-top:18px}#result label{display:block}#copy{border-color:#82909b;margin-top:10px}#status{font-size:14px}footer{padding:40px 5%;display:flex;justify-content:space-between;align-items:center;gap:30px}footer p,footer>span{font-size:13px;color:var(--muted)}@media(min-width:1600px){body{max-width:1700px;margin:auto}}@media(max-width:1000px){nav{gap:16px}.hero-copy{padding:55px 8%}h1{letter-spacing:-2px}.services{grid-template-columns:1fr 1fr;gap:30px}.services article:nth-child(2){border:0}.section{padding:70px 6%}.promise{flex-wrap:wrap;justify-content:center}.approach,.project{gap:7%}}@media(max-width:650px){header{padding:20px 6%;gap:12px}.brand{font-size:25px}.brand span{font-size:8px;letter-spacing:1.6px}nav{display:none}.small{padding:9px 12px;font-size:12px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 7% 35px}.hero h1{font-size:64px;margin:22px 0}.hero-copy>p{font-size:16px}.hero-foot{margin-top:30px}.hero-image{min-height:330px}.vertical{display:none}.promise{display:grid;grid-template-columns:1fr 1fr;font-size:12px;gap:16px;padding:24px 6%}.promise span:before{margin-right:6px}.section{padding:55px 7%}.section-head{display:block;margin-bottom:25px}.section-head>p{max-width:none}.services{grid-template-columns:1fr;gap:0}.services article{margin:0;padding:28px 0;border:0;border-bottom:1px solid #dce0e2!important}.services h3{margin:15px 0}.services a{padding-top:8px}.approach,.faq,.project{grid-template-columns:1fr;gap:35px}.steps li{padding:24px 0}.coverage{margin-top:28px}.project h2{font-size:40px}footer{align-items:start;flex-wrap:wrap;padding:30px 7%}footer p{width:100%;order:3;margin:0}footer>span{margin-top:7px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.brand{font-size:27px;letter-spacing:-1px;white-space:nowrap}.brand span{font-size:10px;letter-spacing:2px}.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.button.outline{border-color:#9ba7b0;background:transparent;color:white}.services{grid-template-columns:repeat(3,1fr);row-gap:25px}.services article{border-right:1px solid #dce0e2!important;padding-right:24px!important;margin-right:24px!important}.services article:nth-child(3n){border-right:0!important;margin-right:0!important}.portfolio{background:#f0f3f5}.gallery-nav{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:40px}.gallery-nav a{background:white;border:1px solid #c5cdd3;padding:10px 15px;font-size:14px;text-decoration:none}.gallery-nav a:hover{background:var(--navy);color:white}.project-group{padding-top:30px;margin-bottom:55px;scroll-margin-top:20px}.project-group:last-child{margin-bottom:0}.group-head{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #bbc7d0;padding-top:24px;margin-bottom:24px}.group-head h3{margin:0;font-size:29px}.group-head p{max-width:490px;color:var(--muted);font-size:15px;margin:0}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.photo-grid figure{margin:0;min-width:0}.photo-link{display:block;overflow:hidden;background:#dce2e7}.photo-grid img{display:block;width:100%;height:360px;object-fit:cover;transition:transform .25s}.photo-link:hover img{transform:scale(1.025)}.photo-grid figcaption{position:static;font:14px/1.5 Arial,sans-serif;color:var(--ink);padding-top:12px}.project-group:has(.photo-grid figure:nth-child(2):last-child) .photo-grid{grid-template-columns:repeat(2,1fr)}#photo-dialog{border:0;padding:15px;background:var(--navy);color:white;max-width:92vw;max-height:94vh;width:auto}#photo-dialog::backdrop{background:#000d}#close-photo{display:block;margin:0 0 12px auto;padding:10px 15px;background:white;border:0;cursor:pointer;color:var(--navy)}#large-photo{display:block;max-width:85vw;max-height:72vh;object-fit:contain;margin:auto}#photo-caption{margin:14px 5px 0;font-size:15px}.mobile-contact{display:none}#copy{margin:0}.hero-image img{object-position:center 45%}@media(max-width:1000px){.services{grid-template-columns:1fr 1fr}.services article:nth-child(3n){border-right:1px solid #dce0e2!important;margin-right:24px!important}.services article:nth-child(2n){border-right:0!important;margin-right:0!important}.photo-grid{grid-template-columns:1fr 1fr}.photo-grid img{height:320px}}@media(max-width:650px){.brand{font-size:24px}.brand span{font-size:9px}.services{grid-template-columns:1fr}.services article{margin-right:0!important;padding-right:0!important;border-right:0!important}.services article:nth-child(3n){margin-right:0!important;border-right:0!important}.gallery-nav{display:flex}.group-head{display:block}.group-head h3{margin-bottom:12px}.photo-grid{gap:15px;grid-template-columns:1fr 1fr}.photo-grid img{height:230px}.photo-grid figcaption{font-size:13px}.contact-actions .button{font-size:14px;padding:13px 18px}.hero-copy .contact-actions{flex-direction:column;align-items:stretch}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:4;padding-bottom:env(safe-area-inset-bottom);background:var(--navy);border-top:1px solid #526575}.mobile-contact a{width:50%;padding:14px;text-align:center;text-decoration:none;color:white;font-weight:600}.mobile-contact a:last-child{background:var(--copper);color:var(--navy)}footer{padding-bottom:95px}.project-group{margin-bottom:35px}}@media(max-width:380px){.photo-grid,.project-group:has(.photo-grid figure:nth-child(2):last-child) .photo-grid{grid-template-columns:1fr}.photo-grid img{height:360px}}@media(prefers-reduced-motion:reduce){.photo-grid img{transition:none}}
