:root{--navy:#071e30;--ink:#172631;--muted:#59636a;--gold:#b69b6c;--line:#e4e6e7;--pale:#f5f5f3;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font:16px/1.75 var(--sans);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-1.4px;line-height:1.12;color:#091e2e}h1{font-size:clamp(42px,4.7vw,70px)}h2{font-size:clamp(30px,3.2vw,46px)}h3{font-size:18px;line-height:1.4;font-weight:500}p{margin:18px 0;color:var(--muted)}a{color:inherit;text-decoration:none}a:hover{color:#947642}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:5px}svg{width:23px;height:23px;vertical-align:middle;flex-shrink:0}img{max-width:100%;display:block;object-fit:cover;height:auto}button{color:inherit}a,button{transition:color .18s,background .18s,transform .18s}.wrap{width:min(1190px,calc(100% - 100px));margin:auto}.section{padding:85px 0}.pale{background:var(--pale)}.eyebrow{display:block;color:#6a737a;letter-spacing:1.9px;font-size:11px;line-height:1.8;font-weight:500;margin-bottom:18px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;background:var(--navy);color:white;border:1px solid var(--navy);border-radius:3px;padding:12px 22px;font-size:12px;font-weight:600;line-height:1.5;min-height:46px;white-space:normal}.button svg{width:17px;height:17px}.button:hover{background:#143a53;color:white;transform:translateY(-1px)}.outline{background:transparent;color:var(--navy);border-color:#9ba3a7}.outline:hover{background:var(--navy)}.actions{display:flex;gap:12px;flex-wrap:wrap}.skip{position:fixed;top:-100px;left:12px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}.header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40}.header-inner{height:90px;display:flex;align-items:center;gap:20px}.brand{display:block;margin-right:auto;flex-shrink:0}nav{display:flex;gap:22px;align-items:center}nav a{font-size:11px;line-height:1.5;padding:12px 0;position:relative;white-space:nowrap}nav a[aria-current=page]:after{content:'';height:1px;background:var(--gold);position:absolute;bottom:5px;left:0;right:0}.language{font-size:11px;border-left:1px solid var(--line);padding-left:15px}.header-cta{font-size:11px;padding:11px 17px;min-height:40px}.menu-toggle{display:none}.hero{height:600px;position:relative;background:#edf1f2;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-position:70% 55%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.99) 0%,rgba(255,255,255,.93) 26%,rgba(255,255,255,.4) 49%,rgba(255,255,255,0) 70%)}.hero-inner{height:100%;display:flex;align-items:center;position:relative;z-index:1}.hero-copy{max-width:590px;padding-bottom:10px}.hero h1{max-width:600px}.hero-copy p{max-width:400px;color:#283640;font-size:16px;line-height:1.65;margin:24px 0}.hero .eyebrow{line-height:1.9;font-size:12px;letter-spacing:2px}.photo-label{position:absolute;bottom:9px;right:20px;z-index:2;color:white;background:#071e30aa;border-radius:2px;padding:2px 7px;font-size:9px}.services-strip{padding:35px 0;border-bottom:1px solid #f1f1ef}.service-grid{display:grid;grid-template-columns:repeat(5,1fr)}.service-grid>a{text-align:center;padding:2px 20px;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center}.service-grid>a:last-child{border:0}.service-grid>a>svg{width:37px;height:37px;margin-bottom:17px}.service-grid h2{font-family:var(--sans);font-size:13px;font-weight:500;line-height:1.5;letter-spacing:0;max-width:155px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.about-grid p{font-size:14px;max-width:460px}.ticks{list-style:none;padding:0;margin:22px 0 28px;line-height:2.1;font-size:13px;color:#3c474d}.ticks svg{color:var(--gold);width:18px;height:18px;margin-right:12px}.image-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:relative}.image-mosaic img{width:100%;height:172px;object-fit:cover}.image-mosaic img:first-child{grid-row:span 2;height:356px}.image-mosaic small{position:absolute;bottom:-25px;left:0;font-size:10px;color:var(--muted)}.facts{background:var(--navy);color:#fff;padding:26px 0}.facts-grid{display:grid;grid-template-columns:repeat(4,1fr)}.facts-grid>div{display:flex;align-items:center;gap:18px;border-right:1px solid #ffffff22;padding:0 22px}.facts-grid>div:first-child{padding-left:0}.facts-grid>div:last-child{border:0}.facts svg{color:#d4bd91;width:32px;height:32px}.facts p{margin:0;color:#fff;font-size:12px;line-height:1.7}.facts strong{display:block;font-size:16px;font-weight:500}.facts span{display:block;color:#d5dce1;font-size:10px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:70px;margin-bottom:38px}.section-heading>div{flex:1}.section-heading p{font-size:13px;max-width:450px;margin-top:0}.section-heading>.button{flex-shrink:0}.project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.project-card[hidden]{display:none}.gallery-open{width:100%;display:block;border:0;background:#f4f4f2;padding:0;position:relative;text-align:left;overflow:hidden;border-radius:2px}.gallery-open img{width:100%;height:235px;transition:transform .4s}.gallery-open:hover img{transform:scale(1.04)}.gallery-open span{position:absolute;bottom:10px;right:10px;font-size:10px;background:white;padding:3px 10px;border-radius:2px}.project-card h3{font-size:14px;margin:15px 0 3px}.project-card p{font-size:10px;margin:0}.process{background:linear-gradient(90deg,#031a2ded,#031a2dbb),url('/assets/img/construction.jpg') center 48%/cover;color:white}.process h2{color:white}.process p{color:#dce1e5;max-width:700px;font-size:14px}.process .eyebrow{color:#d7c39f}.process .outline,.cta .outline{border-color:#a4adb3;color:white}.process .outline:hover,.cta .outline:hover{background:white;color:var(--navy)}.steps{display:grid;grid-template-columns:repeat(6,1fr);list-style:none;padding:0;margin:45px 0 35px;gap:16px;position:relative}.steps:before{content:'';position:absolute;top:22px;left:6%;right:6%;height:1px;background:#baa77e}.steps li{text-align:center;position:relative}.steps li>span{position:relative;display:flex;align-items:center;justify-content:center;width:46px;height:46px;background:#f7f7f4;color:var(--navy);border-radius:50%;margin:0 auto 10px}.steps h3{font-size:12px;font-weight:400;max-width:120px;margin:4px auto}.steps small{color:#cdb992;font-size:9px;letter-spacing:1px}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.blog-card{border-bottom:1px solid var(--line);padding-bottom:25px}.blog-card>img{width:100%;height:210px}.blog-card>div{padding-top:23px}.blog-card .eyebrow{font-size:9px;margin-bottom:12px}.blog-card h3{font-family:var(--serif);font-size:25px;line-height:1.25}.blog-card p{font-size:13px;line-height:1.75}.text-link{font-size:12px;display:inline-flex;gap:18px;align-items:center}.text-link svg{width:17px;height:17px}.cta{background:#102e43;color:#fff;padding:50px 0;border-bottom:1px solid #ffffff18}.cta h2{color:white;font-size:34px}.cta p{color:#cbd4da;font-size:13px;margin-bottom:0}.cta .eyebrow{color:#d3bd94}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}footer{background:var(--navy);color:#d4dce1;padding-top:60px;font-size:12px}.footer-grid{display:grid;grid-template-columns:1.2fr .75fr 1.1fr;gap:90px;padding-bottom:45px}.footer-brand{font-family:var(--serif);font-size:33px;color:white;line-height:1.2;display:inline-block}.footer-brand span{font-family:var(--sans);font-size:9px;letter-spacing:3px;display:block;margin-top:7px}.footer-grid h3{font-size:13px;color:white;margin-bottom:20px}.footer-grid>div>a:not(.footer-brand){display:block;margin:9px 0}.footer-grid p{color:#acbbc5;font-size:12px;max-width:280px}footer svg{width:17px;height:17px;margin-right:6px}.social{display:flex;gap:12px;margin-top:25px;flex-wrap:wrap}.social a{border:1px solid #a7b2bb66;padding:9px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px}.social a span{display:none}.social svg{width:19px;height:19px;margin:0}.footer-bottom{border-top:1px solid #ffffff16;padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:10px}.footer-bottom>div{display:flex;gap:22px}.contact-rail{position:fixed;right:12px;top:165px;z-index:30;display:flex;flex-direction:column;padding:10px 5px;background:rgba(255,255,255,.96);box-shadow:0 4px 22px #001a3022;border-radius:10px;border:1px solid var(--line);width:59px}.contact-rail a{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 0;font-size:8px;line-height:1.5;color:var(--navy);min-height:54px}.contact-rail svg{width:25px;height:25px;margin-bottom:4px}.contact-rail a:hover{background:#eef0f1}.page-head{background:linear-gradient(100deg,#f3f4f2,#fcfcfb);padding:55px 0 65px;border-bottom:1px solid var(--line)}.page-head h1{max-width:1000px;font-size:clamp(38px,4.5vw,62px)}.page-head p{max-width:820px;font-size:16px;margin-bottom:0}.crumb{display:block;font-size:10px;margin-bottom:25px}.page-head .eyebrow{font-size:9px}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:80px}.company-facts{background:var(--pale);padding:30px;margin:0;font-size:14px}.company-facts dt{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-top:15px}.company-facts dt:first-child{margin-top:0}.company-facts dd{margin:3px 0 0}.full{grid-template-columns:repeat(2,1fr);gap:28px}.full article{padding:35px;border:1px solid var(--line);scroll-margin-top:115px}.full article>svg{width:40px;height:40px;margin-bottom:23px;color:var(--navy)}.full h3{font-size:23px;font-family:var(--serif)}.full p,.full ul{font-size:14px}.full ul{padding-left:20px;color:var(--muted);margin-bottom:25px}.notice{padding:28px 32px;border-left:2px solid var(--gold);background:var(--pale);margin:40px 0;font-size:14px}.notice p:last-child{margin-bottom:0}.notice h2{font-size:29px}.filters{display:flex;gap:10px;margin:30px 0;flex-wrap:wrap}.filters button{border:1px solid #bcc2c5;border-radius:2px;background:white;padding:8px 22px;font-size:12px}.filters button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}.fine{font-size:11px;line-height:1.7}.fine a{text-decoration:underline;text-underline-offset:3px}.timeline{max-width:900px}.timeline article{display:flex;gap:40px;border-bottom:1px solid var(--line);padding:30px 0}.timeline article>span{color:var(--gold);font-family:var(--serif);font-size:35px}.timeline h2{font-size:30px}.timeline p{font-size:15px}.article-layout{display:grid;grid-template-columns:235px 1fr;gap:75px;align-items:start}.contents{position:sticky;top:130px;font-size:12px}.contents ol{padding-left:18px;color:var(--muted);line-height:1.8}.contents li{margin:14px 0}.prose{font-size:16px;max-width:830px}.prose h2{font-size:32px;margin:40px 0 18px}.prose h3{font-size:19px;margin:25px 0 12px}.prose p{line-height:1.9}.prose>img{width:100%;height:350px;margin-bottom:35px}.prose a{color:#3e6178;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.prose .notice h2{margin-top:0;font-size:26px}.legal{margin:auto}.article-next{border-top:1px solid var(--line);margin-top:40px;padding-top:25px;font-size:14px}.contact-details>a:not(.button){display:block;font-size:18px;margin:22px 0;overflow-wrap:anywhere}.contact-details>p{font-size:14px}.contact-details .social{margin:30px 0}.contact-details svg{margin-right:10px}.contact-details .social svg{margin:0}form{padding:35px;background:var(--pale)}form h2{font-size:32px}form>p{font-size:13px}label{display:block;font-size:12px;margin:18px 0 6px}input,select,textarea{width:100%;padding:12px;border:1px solid #c7cccf;background:#fff;border-radius:2px;color:var(--ink);font-size:14px}textarea{resize:vertical}form .actions{margin-top:20px}#form-status{font-size:12px;margin-bottom:0}.lightbox{border:0;border-radius:4px;padding:25px;background:white;max-width:min(1000px,90vw);max-height:90vh;overflow:auto;box-shadow:0 20px 80px #0006}.lightbox::backdrop{background:#001424de}.lightbox img{max-height:70vh;width:auto;max-width:100%;margin:auto}.lightbox p{font-size:12px;margin-bottom:0}.close-dialog{display:block;margin:0 0 10px auto;border:0;background:none;font-size:30px;line-height:1;min-width:35px;min-height:35px}[hidden]{display:none!important}@media(min-width:1450px){.contact-rail{right:25px}}@media(max-width:1150px){.wrap{width:calc(100% - 100px)}.header-inner{gap:15px}nav{gap:14px}nav a{font-size:10px}.header-cta{padding:10px}.about-grid{gap:45px}.footer-grid{gap:45px}.hero h1{font-size:55px}.section{padding:65px 0}.contact-rail{right:7px;width:50px}.contact-rail a{font-size:7px}.facts-grid>div{gap:10px;padding:0 12px}.facts strong{font-size:14px}}@media(max-width:940px){.header-inner{height:78px}.menu-toggle{display:block;background:none;border:1px solid var(--line);padding:7px 12px;font-size:13px;margin-left:auto;min-height:40px}nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:18px 50px;box-shadow:0 10px 20px #0001;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100vh - 78px);overflow:auto}nav.open{display:flex}nav a{font-size:14px;padding:10px}.brand{margin-right:0}.header-cta{display:none}.hero{height:570px}.hero-copy{max-width:510px}.hero:after{background:linear-gradient(90deg,#fffffff5 0%,#ffffffd9 35%,#ffffff10 95%)}.hero h1{font-size:52px}.service-grid>a{padding:0 10px}.service-grid h2{font-size:11px}.about-grid{gap:35px;grid-template-columns:1fr 1fr}.image-mosaic img{height:140px}.image-mosaic img:first-child{height:292px}.facts-grid{grid-template-columns:repeat(2,1fr);gap:24px}.facts-grid>div:nth-child(3){padding-left:0}.facts-grid>div:nth-child(2){border:0}.project-grid{grid-template-columns:repeat(2,1fr)}.section-heading{gap:35px}.blog-grid{gap:20px}.blog-card h3{font-size:22px}.blog-card>img{height:170px}.article-layout{grid-template-columns:180px 1fr;gap:35px}.two-column{gap:35px}.footer-grid{gap:35px;grid-template-columns:1fr .8fr 1.1fr}.cta h2{font-size:30px}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}body{font-size:15px}.header-inner{height:72px;gap:14px}nav{top:72px;padding:15px 20px}.hero{height:640px}.hero-photo{object-position:65% 50%}.hero:after{background:linear-gradient(90deg,#ffffffe8,#ffffff8c),linear-gradient(0deg,#ffffff80,transparent)}.hero h1{font-size:46px;letter-spacing:-1.6px}.hero-copy{padding-right:30px}.hero-copy p{font-size:14px;max-width:320px;margin:22px 0}.hero .eyebrow{font-size:10px}.hero .actions{flex-direction:column;align-items:start}.hero .button{min-width:180px}.photo-label{right:10px;bottom:8px;font-size:8px}.services-strip{padding:28px 0}.service-grid{grid-template-columns:repeat(2,1fr);gap:24px 0}.service-grid>a{border:0;padding:0 20px}.service-grid>a:nth-child(odd){border-right:1px solid var(--line)}.service-grid>a:last-child{grid-column:1/-1;border:0}.service-grid h2{font-size:12px;max-width:170px}.service-grid>a>svg{width:31px;height:31px;margin-bottom:10px}.section{padding:50px 0}.about-grid{grid-template-columns:1fr;gap:45px}.about-grid h2{font-size:35px}.about-grid p{max-width:none}.image-mosaic img{height:150px}.image-mosaic img:first-child{height:312px}.facts{padding:28px 0}.facts-grid{gap:25px 12px}.facts svg{width:25px;height:25px}.facts strong{font-size:13px}.facts span{font-size:9px}.section-heading{flex-direction:column;align-items:start;gap:20px;margin-bottom:28px}.section-heading h2{font-size:34px}.section-heading p{margin:0 0 20px}.project-grid{gap:25px 14px}.gallery-open img{height:175px}.project-card h3{font-size:12px}.project-card p{font-size:9px}.process h2{font-size:34px}.process p{font-size:13px}.steps{grid-template-columns:repeat(3,1fr);gap:25px 10px}.steps:before{display:none}.steps h3{font-size:11px}.blog-grid{grid-template-columns:1fr;gap:35px}.blog-card>img{height:230px}.blog-card h3{font-size:27px}.cta-inner{display:block}.cta h2{font-size:31px}.cta .button{margin-top:28px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{min-width:0}.footer-grid>div>a:not(.footer-brand){overflow-wrap:anywhere}.footer-bottom{display:block;padding-bottom:95px}.footer-bottom>div{margin-top:18px;flex-wrap:wrap;gap:12px 20px}.contact-rail{top:auto;bottom:10px;right:10px;left:10px;width:auto;border-radius:7px;flex-direction:row;justify-content:space-around;padding:2px 0;box-shadow:0 4px 25px #001a3040}.contact-rail a{flex:1;min-height:52px;font-size:8px;padding:4px}.contact-rail svg{width:21px;height:21px;margin-bottom:2px}.page-head{padding:35px 0 45px}.page-head h1{font-size:39px}.page-head p{font-size:14px}.two-column{grid-template-columns:1fr;gap:35px}.full{grid-template-columns:1fr;gap:20px}.full article{padding:26px}.notice{padding:22px;margin:28px 0}.notice h2{font-size:27px}.filters button{padding:8px 14px}.article-layout{display:block}.contents{position:static;border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:30px}.contents ol{display:grid;grid-template-columns:1fr 1fr;gap:8px 25px}.contents li{margin:0}.prose{font-size:15px}.prose h2{font-size:28px}.prose>img{height:235px}.timeline article{gap:22px;padding:25px 0}.timeline h2{font-size:27px}.timeline p{font-size:14px}form{padding:25px}.contact-details>a:not(.button){font-size:17px}.lightbox{padding:15px}.lightbox p{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media print{.header,.contact-rail,.cta,footer,.contents,.actions,.filters,.lightbox{display:none}.wrap{width:100%}.section{padding:20px 0}body{font-size:11pt}.article-layout{display:block}.page-head{padding:20px 0}h1{font-size:30pt}.prose{max-width:none}a{color:inherit;text-decoration:none}.prose img{max-height:250px}}

.hero-photo{transform:scaleX(-1)}.footer-grid>div{min-width:0}.footer-grid a,.footer-grid p{overflow-wrap:anywhere}

.brand-logo{display:block;width:190px;height:auto}.footer-brand img{width:230px;height:auto}.facts strong{white-space:normal}@media(max-width:1150px){.brand-logo{width:165px}}@media(max-width:760px){.brand-logo{width:155px}.footer-brand img{width:220px}.facts strong{font-size:12px}}
.footer-bottom{flex-wrap:wrap}.footer-bottom>div{flex-wrap:wrap;align-items:center}.footer-credit{margin-left:auto;white-space:nowrap;font-size:11px;color:#cad5dc}.footer-credit strong{font-weight:500;color:#d3bd94}.cookie-settings{border:0;background:none;color:inherit;font:inherit;padding:0;text-align:left;cursor:pointer}.cookie-settings:hover,.footer-credit:hover{color:#d3bd94}.cookie-banner{position:fixed;left:25px;bottom:25px;z-index:60;width:min(470px,calc(100vw - 50px));padding:25px;background:#fff;border:1px solid #dde2e5;border-top:3px solid var(--gold);border-radius:5px;box-shadow:0 12px 55px #071e3033;max-height:70vh;overflow:auto}.cookie-banner h2{font-family:var(--sans);font-size:19px;letter-spacing:0;font-weight:500;line-height:1.4}.cookie-banner p{font-size:12px;line-height:1.8;margin:13px 0 20px}.cookie-banner p a{text-decoration:underline;text-underline-offset:3px;color:#254e69}.cookie-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cookie-actions button{padding:11px 10px;background:var(--navy);color:#fff;border:1px solid var(--navy);border-radius:2px;min-height:44px;font-size:12px}.cookie-actions button:hover{background:#20445d}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:760px){.cookie-banner{left:12px;bottom:82px;width:calc(100vw - 24px);padding:21px;max-height:calc(100dvh - 180px)}.footer-credit{display:block;text-align:right;margin:22px 0 0}.cookie-actions{gap:10px}}@media print{.cookie-banner,.cookie-settings{display:none!important}}
