:root{--ink:#1d2529;--bronze:#8b5b2d;--gold:#d3a269;--paper:#fff;--soft:#f3f5f3;--line:#dce1de;--muted:#5f696e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.6}a{color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}img{display:block;max-width:100%;height:auto}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.skip-link{position:absolute;z-index:20;top:-90px;left:20px;background:var(--ink);color:white;padding:12px}.skip-link:focus{top:12px}.site-header{min-height:105px;max-width:1600px;margin:auto;padding:5px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:block;flex-shrink:0}.brand img{width:208px;height:94px;object-fit:contain}.site-header nav{display:flex;gap:32px;align-items:center}.site-header nav a{text-decoration:none;font-size:.9375rem;font-weight:600}.site-header nav a:hover{color:var(--bronze)}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;padding:16px 24px;font-size:.9375rem;font-weight:600;line-height:1.3;border:1px solid transparent;min-height:50px;transition:background .2s,color .2s}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#35424a}.button-bronze{background:var(--gold);color:#141d23}.button-bronze:hover{background:#e1b17f}.text-link{font-size:.9375rem;font-weight:600;text-underline-offset:6px;text-decoration-thickness:1px}.text-link:hover{color:var(--gold)}.hero{min-height:660px;background:var(--ink);color:#fff;position:relative;isolation:isolate;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% center;z-index:-2}.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,23,29,.94) 0%,rgba(12,23,29,.78) 30%,rgba(12,23,29,.32) 57%,rgba(12,23,29,.05) 100%);z-index:-1}.hero-inner{padding:88px 6% 105px;max-width:800px;position:relative;z-index:1}.eyebrow{font-size:.8125rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin:0 0 22px;line-height:1.5}.hero .eyebrow{color:#f0cda5}h1,h2,h3,p{overflow-wrap:break-word}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:1.07;margin:0}h1{font-size:clamp(3.5rem,6.1vw,6.2rem)}h1 em{font-weight:400;color:#e8bd89}.hero-copy{max-width:370px;margin:28px 0 34px;font-size:1.125rem;color:#e2e7e9;line-height:1.8}.hero-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap}.image-caption{position:absolute;right:22px;bottom:17px;font-size:.75rem;margin:0;background:rgba(12,23,29,.75);padding:4px 10px;color:white;letter-spacing:.02em}.location-strip{padding:21px 6%;background:var(--ink);color:#dce1e3;display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-size:.875rem}.location-strip p{margin:0}.location-strip p:first-child{color:#e8bd89;font-weight:700}.location-strip span{width:30px;height:1px;background:#76858c}h2{font-size:clamp(2.75rem,4.4vw,4.5rem)}.section{padding:90px 6%;max-width:1600px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:26px}.section-heading .eyebrow,.approach .eyebrow{color:var(--bronze)}.section-intro{max-width:325px;margin:0 0 3px;color:var(--muted);font-size:1.0625rem}.sample-notice{font-size:.875rem;color:var(--muted);margin:0 0 35px}.sample-notice strong{color:var(--ink)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px 26px}.project-featured{grid-column:1/-1}.project-image{position:relative;width:100%;background:var(--soft);border:0;padding:0;text-align:left;display:block;overflow:hidden}.project-image img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .5s}.project-featured .project-image img{aspect-ratio:2.35/1;object-position:center 54%}.project-image:hover img{transform:scale(1.035)}.sample-tag{position:absolute;left:18px;top:18px;background:rgba(255,255,255,.95);color:var(--ink);font-size:.75rem;line-height:1.5;padding:5px 10px;font-weight:600}.view-label{position:absolute;right:18px;bottom:18px;background:var(--ink);color:white;font-size:.875rem;padding:9px 15px;line-height:1.5}.project-info{display:flex;justify-content:space-between;align-items:center;padding:18px 0 0;border-bottom:1px solid var(--line);padding-bottom:20px}.project-type{margin:0 0 5px;color:var(--muted);font-size:.8125rem}.project-info h3{margin:0;font-size:1.5rem;letter-spacing:-.025em;font-weight:500;line-height:1.3}.project-number{font-family:Georgia,serif;font-size:1.5rem;color:#879196}.approach{max-width:none;background:var(--soft);display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.approach-intro{max-width:580px}.approach-intro>p:not(.eyebrow){color:var(--muted);max-width:440px;margin:26px 0 24px;font-size:1.0625rem}.dark-link{color:var(--ink)}.dark-link:hover{color:var(--bronze)}.process{max-width:600px}.process-step{display:flex;gap:25px;padding:27px 0;border-top:1px solid #cdd4d0}.process-step:last-child{border-bottom:1px solid #cdd4d0}.process-step>span{color:var(--bronze);font-size:.875rem;flex-shrink:0;line-height:2.1}.process-step h3{margin:0;font-size:1.25rem;font-weight:600;letter-spacing:-.015em}.process-step p{margin:9px 0 0;color:var(--muted);max-width:400px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:95px 6%;background:var(--ink);color:white}.contact .eyebrow{color:#e8bd89}.contact h2+p{color:#d5dadc;max-width:440px;font-size:1.0625rem}.contact .service-area{font-size:.875rem;color:#e8bd89;margin-top:30px}.contact-card{padding:36px;border:1px solid #526066;align-self:center}.contact-card .eyebrow{margin-bottom:15px}.email{font-size:clamp(1.125rem,2vw,1.65rem);text-underline-offset:7px;overflow-wrap:anywhere}.contact-card>p:not(.eyebrow){color:#d5dadc}.contact-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin-top:26px}.copy-email{border:0;background:transparent;color:white;padding:6px 0;font-size:.875rem;text-decoration:underline;text-underline-offset:5px}.copy-email:hover{color:var(--gold)}.contact-card .email-note{font-size:.875rem;margin:18px 0 0}.copy-status{font-size:.875rem;margin:12px 0 0}.copy-status:empty{display:none}.site-footer{padding:28px 6%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.875rem;color:var(--muted);background:white}.footer-brand{font-weight:700;color:var(--ink);text-decoration:none}.site-footer p{margin:0}dialog{padding:0;border:0;max-width:1040px;width:calc(100% - 48px);max-height:90vh;overflow:auto;background:white;color:var(--ink);box-shadow:0 25px 80px #0007}dialog::backdrop{background:rgba(10,19,24,.8)}.dialog-close{position:sticky;top:12px;float:right;z-index:1;margin:12px 12px -55px 0;border:0;background:var(--ink);color:white;padding:10px 15px;min-height:44px;font-size:.875rem;display:flex;align-items:center;gap:14px}.dialog-close span{font-size:1.5rem;line-height:1}.dialog-content{padding:34px 42px 42px}.dialog-content .eyebrow{color:var(--bronze);margin-bottom:12px}.dialog-content h2{font-size:clamp(2rem,4vw,3.3rem)}.dialog-content>p:not(.eyebrow){max-width:740px}.dialog-disclaimer{color:var(--muted);font-size:.875rem}.dialog-content .button{margin-top:12px}#dialog-image{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.dialog-open{overflow:hidden}@media(min-width:1600px){.hero-inner{margin-left:calc((100vw - 1600px)/2);padding-left:96px}.hero{min-height:740px}}@media(max-width:1050px){.site-header nav{gap:20px}.contact{gap:4%}.contact-card{padding:25px}.approach{gap:7%}.hero-inner{max-width:650px}}@media(max-width:800px){.site-header{padding:7px 5% 15px;min-height:0;gap:0 20px;flex-wrap:wrap}.brand img{width:175px;height:80px}.site-header nav{order:3;width:100%;justify-content:center;gap:35px;border-top:1px solid var(--line);padding-top:12px;margin-top:3px}.site-header nav a{font-size:.875rem}.header-cta{padding:13px 18px;font-size:.875rem}.hero{min-height:620px}.hero-inner{padding:70px 6% 90px;max-width:620px}.hero-photo{object-position:65% center}.hero::before{background:linear-gradient(90deg,rgba(12,23,29,.91),rgba(12,23,29,.55) 65%,rgba(12,23,29,.22))}.section{padding:65px 6%}.section-heading{align-items:flex-start;flex-direction:column;gap:20px}.section-intro{max-width:500px}.project-featured .project-image img{aspect-ratio:1.6/1}.project-grid{gap:30px 20px}.project-info h3{font-size:1.25rem}.approach{grid-template-columns:1fr;gap:35px}.approach-intro,.process{max-width:none}.contact{grid-template-columns:1fr;padding:65px 6%;gap:30px}.contact-card{padding:30px}.email{font-size:1.5rem}.site-footer{flex-wrap:wrap;justify-content:flex-start;gap:10px 25px}dialog{width:calc(100% - 28px)}.dialog-content{padding:25px}.dialog-close{margin-right:10px}}@media(max-width:480px){.brand img{width:155px;height:72px}.header-cta{font-size:.875rem;padding:12px 15px}.site-header{padding-left:4%;padding-right:4%;gap:0 8px}.hero{min-height:590px}.hero-inner{padding-top:65px}h1{font-size:clamp(3rem,13vw,3.75rem)}.hero-copy{font-size:1rem;max-width:300px}.hero-actions{gap:20px}.hero-actions .button{padding:16px 20px}.hero-actions .text-link{font-size:.875rem}.eyebrow{font-size:.75rem;letter-spacing:.12em}.location-strip{gap:5px 15px}.location-strip span{display:none}.location-strip p:last-child{width:100%}.project-grid{grid-template-columns:1fr}.project-featured{grid-column:auto}.project-featured .project-image img{aspect-ratio:3/2}.sample-tag{left:12px;top:12px}.view-label{right:12px;bottom:12px}.section-heading h2{font-size:2.8rem}.contact-card{padding:23px}.email{font-size:1.22rem}.contact-actions{gap:15px}.site-footer{display:block}.site-footer p{margin:8px 0}.process-step{gap:18px}dialog{max-height:94vh}.dialog-content{padding:23px}#dialog-image{aspect-ratio:4/3}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Architectural composition informed by the construction references. */
.site-header{position:absolute;top:0;left:0;right:0;z-index:5;max-width:none;padding:0 6%;min-height:118px;color:white;gap:30px;align-items:center}.brand{align-self:flex-start;background:white;padding:3px 13px 8px;box-shadow:0 8px 30px #0711161a}.brand img{width:219px;height:107px}.site-header nav{margin-left:auto;gap:38px}.site-header nav a{font-size:.875rem;letter-spacing:.065em;text-transform:uppercase}.site-header nav a:hover{color:#edcba4}.header-cta{color:var(--ink);background:white;padding:16px 22px}.header-cta:hover{background:#f0cda5;color:var(--ink)}.hero{min-height:780px;min-height:max(780px,92svh);display:flex;align-items:flex-end}.hero-photo{object-position:center center}.hero::before{background:linear-gradient(180deg,rgba(8,19,25,.65) 0%,rgba(8,19,25,.08) 30%,rgba(8,19,25,.18) 46%,rgba(8,19,25,.85) 100%)}.hero-inner{padding:250px 6% 80px;max-width:980px}h1,h2{font-family:Arial,Helvetica,sans-serif;font-weight:650;letter-spacing:-.055em;line-height:1.02}h1{font-size:clamp(3.75rem,6.3vw,6.3rem);font-weight:750}h1 em{font-style:normal;font-weight:inherit;color:#edcba4}.hero .eyebrow{margin-bottom:20px;color:white}.hero-copy{max-width:425px;margin:23px 0 28px;font-size:1.0625rem;line-height:1.7}.image-caption{bottom:19px}.location-strip{background:#ac7439;color:#fff;padding:19px 6%;font-size:.9375rem;justify-content:space-between}.location-strip p:first-child{color:white;letter-spacing:.07em;text-transform:uppercase;font-size:.875rem}.location-strip span{display:none}h2{font-size:clamp(2.7rem,4.4vw,4.5rem);line-height:1.08}.section{padding-top:105px;padding-bottom:105px}.section-heading{margin-bottom:30px;align-items:center}.project-grid{gap:46px 38px}.project-info{border-bottom:0;padding-top:21px;padding-bottom:0}.project-info h3{font-size:1.625rem;font-weight:600}.project-number{font-family:Arial,sans-serif;font-size:.875rem;font-weight:700}.view-label{background:rgba(255,255,255,.95);color:var(--ink);padding:10px 20px}.sample-tag{border:1px solid #fff8;background:rgba(18,29,35,.82);color:white}.approach{background:#eff2f0}.contact{padding-top:105px;padding-bottom:105px}.contact-card{border-top:3px solid var(--gold);background:#263137;border-left:0;border-right:0;border-bottom:0}.footer-brand{text-transform:uppercase;letter-spacing:.06em}.dialog-content h2{font-family:Arial,Helvetica,sans-serif;font-weight:600}
@media(min-width:1600px){.hero-inner{padding-left:96px}.hero{min-height:92svh}}
@media(max-width:1050px){.site-header nav{gap:22px}.site-header{padding-left:4%;padding-right:4%;gap:20px}.brand img{width:190px;height:94px}.header-cta{font-size:.875rem;padding:15px 17px}.hero-inner{max-width:850px}.hero{min-height:760px}}
@media(max-width:800px){.site-header{padding:0 5%;min-height:0;gap:0 20px;flex-wrap:wrap}.brand img{width:180px;height:91px}.brand{padding:3px 8px 6px}.site-header nav{order:3;width:100%;justify-content:flex-end;gap:30px;border:0;padding-top:15px;margin-top:0;min-height:52px;margin-left:0}.site-header nav a{font-size:.875rem}.header-cta{margin-left:auto;align-self:center}.hero{min-height:790px;min-height:max(740px,95svh)}.hero-inner{padding:230px 6% 80px;max-width:700px}.hero-photo{object-position:60% center}.hero::before{background:linear-gradient(180deg,rgba(8,19,25,.8),rgba(8,19,25,.12) 28%,rgba(8,19,25,.18) 40%,rgba(8,19,25,.9) 100%)}.section{padding-top:70px;padding-bottom:70px}.section-heading{align-items:flex-start}.project-grid{gap:35px 24px}.project-info h3{font-size:1.3rem}.contact{padding-top:70px;padding-bottom:70px}.location-strip{gap:7px 25px}}
@media(max-width:480px){.site-header{padding:0 4%;gap:0 10px}.brand img{width:147px;height:75px}.brand{padding:0 8px 5px}.header-cta{padding:13px 14px;font-size:.875rem;min-height:45px}.site-header nav{justify-content:space-between;gap:18px;min-height:54px;padding-top:15px}.site-header nav a{font-size:.8125rem}.hero{min-height:720px;min-height:max(690px,92svh)}.hero-inner{padding-top:200px;padding-bottom:70px}.hero h1{font-size:clamp(2.85rem,12vw,3.65rem)}.hero-copy{font-size:1rem;max-width:330px}.hero-actions{gap:20px}.hero-actions .button{padding:16px 20px}.hero-actions .text-link{font-size:.875rem}.section-heading h2{font-size:2.7rem}.project-grid{gap:35px}.project-info h3{font-size:1.4rem}.location-strip{padding:18px 6%;font-size:.875rem}.location-strip p:last-child{width:auto}.contact h2{font-size:2.7rem}.image-caption{font-size:.75rem;right:16px}.process-step h3{font-size:1.1875rem}}
.contact-form{min-width:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-field{margin-bottom:20px;min-width:0}.form-field label{display:block;font-size:.9375rem;font-weight:600;margin-bottom:8px}.form-field label span{color:#edcba4}.form-field input,.form-field select,.form-field textarea{display:block;width:100%;border:1px solid #66767e;border-radius:0;background:#1d282e;color:#fff;min-height:48px;padding:12px;font-size:1rem;line-height:1.4}.form-field input::placeholder,.form-field textarea::placeholder{color:#b9c4ca;opacity:1}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid var(--gold);outline-offset:2px}.form-field textarea{resize:vertical;min-height:140px}.form-note{font-size:.875rem;color:#ced8dd;line-height:1.6;margin:0 0 22px}.form-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.form-submit:disabled{opacity:.65;cursor:wait}.form-status{color:#edcba4;font-size:1rem;line-height:1.6;margin:18px 0 0}.form-status:empty{display:none}.form-status.form-error{color:#ffd1c4}.direct-email{font-size:1rem;color:#d5dadc;margin-top:22px}.direct-email a{text-underline-offset:5px}.contact-card .eyebrow{font-size:.8125rem}.contact-form .form-note{color:#ced8dd}@media(max-width:480px){.form-row{grid-template-columns:1fr;gap:0}.contact-form{padding:23px}.form-submit{width:100%}}
/* Supporting pages, preview, and the public coming-soon page. */
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}.service-grid article{border-top:2px solid var(--bronze);padding-top:24px}.service-grid h3{font-size:1.5rem;letter-spacing:-.025em;margin:10px 0 15px;line-height:1.25}.service-grid p{color:var(--muted);margin:0 0 23px}.faq{background:#f7f8f6;max-width:none}.faq-list{max-width:960px}.faq details{border-top:1px solid #d3dad5}.faq details:last-child{border-bottom:1px solid #d3dad5}.faq summary{cursor:pointer;padding:22px 32px 22px 0;position:relative;font-weight:600;font-size:1.0625rem}.faq details p{color:var(--muted);margin:0 0 24px;max-width:750px}.faq summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.site-footer nav{display:flex;gap:22px;flex-wrap:wrap}.site-footer nav a{text-underline-offset:5px}.interior-page .site-header{position:relative;background:var(--ink);min-height:118px}.interior-page .brand{align-self:center}.page-intro{background:#eff2f0;padding:65px 6% 75px}.page-intro .eyebrow{color:var(--bronze)}.page-intro h1{max-width:1100px;font-size:clamp(2.8rem,5vw,5rem)}.page-intro>p:last-child{max-width:680px;margin:28px 0 0;color:var(--muted);font-size:1.1875rem}.breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;font-size:.875rem;color:var(--muted);margin-bottom:35px}.breadcrumbs a{text-underline-offset:4px}.content-sections{max-width:1150px}.content-sections section+section{border-top:1px solid var(--line);margin-top:60px;padding-top:60px}.content-sections h2{font-size:clamp(2rem,3.4vw,3.5rem);max-width:800px}.content-sections p:not(.eyebrow){max-width:800px;color:var(--muted);font-size:1.0625rem}.page-cta{padding:80px 6%;background:var(--ink);color:white}.page-cta .eyebrow{color:var(--gold)}.page-cta h2{max-width:800px}.page-cta>p:not(.eyebrow){max-width:600px;color:#d5dadc;margin:26px 0}.article-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:8%;align-items:start}.article-layout h2{font-size:clamp(2.3rem,3.8vw,3.7rem)}.article-layout p:not(.eyebrow){color:var(--muted)}.article-layout h3{margin-top:35px}.article-layout ul{padding-left:22px}.article-layout li{margin-bottom:10px}.fact-card{background:var(--soft);padding:32px;border-top:3px solid var(--bronze)}.fact-card .eyebrow{color:var(--bronze)}.fact-card h3{margin:0;font-size:1.5rem}.fact-card dt{font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-top:20px}.fact-card dd{margin:5px 0 0;overflow-wrap:anywhere}.fact-card .button{margin-top:24px}.planning-article{max-width:1000px;padding-top:70px}.planning-article h2{font-size:clamp(1.8rem,3vw,2.5rem);margin:45px 0 20px;letter-spacing:-.035em}.planning-article p{font-size:1.0625rem;color:var(--muted)}.planning-article .article-lead{font-size:1.1875rem;color:var(--ink);margin-top:0}.planning-example{padding:25px 30px;background:var(--soft);border-left:3px solid var(--bronze);margin-top:35px}.planning-example h3{margin-top:0}.coming-soon{background:#192429;color:white;min-height:100svh;display:flex;flex-direction:column}
.coming-header{padding:24px 6%;display:flex;align-items:center;justify-content:space-between;gap:20px}
.coming-header>a{color:#f4f5f5;font-size:1rem;font-weight:700;text-decoration:none}
.coming-header>p{font-size:.875rem;color:#b9c5ca;margin:0}
.coming-main{width:100%;max-width:1200px;margin:0 auto;padding:0 6% 38px;flex:1;display:flex;flex-direction:column;align-items:center;text-align:center}
.coming-hero{width:100%;max-width:1040px;box-shadow:0 20px 60px #0003}
.coming-hero img{display:block;width:100%;height:auto}
.coming-main h1{font-size:clamp(1.75rem,2.8vw,2.4rem);line-height:1.18;letter-spacing:-.025em;margin:26px 0 0}
.coming-description{max-width:650px;font-size:1rem;line-height:1.7;color:#cbd4d8;margin:16px 0 22px}
.coming-email{display:block;width:fit-content;margin-top:16px;font-size:.9375rem;color:#e2e7e9;text-underline-offset:5px}
.coming-footer{padding:22px 6%;border-top:1px solid #3d4c53;display:flex;justify-content:space-between;gap:20px;font-size:.875rem;color:#b9c5ca}
.coming-footer p{margin:0}.coming-footer a{text-underline-offset:5px}
@media(max-width:800px){.service-grid{grid-template-columns:1fr;gap:32px}.service-grid article{max-width:650px}.interior-page .site-header{padding-bottom:15px}.interior-page .site-header nav{justify-content:space-between}.page-intro{padding-top:40px;padding-bottom:55px}.article-layout{grid-template-columns:1fr;gap:40px}.page-cta{padding:65px 6%}.coming-header{padding-top:22px;padding-bottom:22px}}@media(max-width:480px){.site-header nav{gap:10px}.site-header nav a{font-size:.75rem;letter-spacing:.025em}.site-footer nav{margin:20px 0}.coming-header{padding:22px 6%;gap:8px;flex-direction:column;text-align:center}.coming-header>p{font-size:.875rem}.coming-main{padding:0 5% 32px}.coming-main h1{font-size:1.75rem;margin-top:24px}.coming-description{font-size:1rem}.coming-footer{padding:22px 6%;gap:18px;flex-wrap:wrap}.page-intro>p:last-child{font-size:1.0625rem}}
