:root{--ink:#101315;--paper:#f4f1ea;--white:#fff;--muted:#6f7472;--line:rgba(16,19,21,.14);--dark:#07151c;--dark2:#0b2029;--accent:#c8a46a;--max:1240px;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.container{width:min(calc(100% - 64px),var(--max));margin-inline:auto}.skip-link{position:fixed;left:12px;top:-60px;z-index:100;background:#fff;color:#000;padding:10px 14px}.skip-link:focus{top:12px}
.site-header{height:88px;background:rgba(244,241,234,.94);backdrop-filter:blur(16px);position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center}.brand img{width:164px;height:auto;max-height:62px;object-fit:contain}.nav{display:flex;align-items:center;gap:27px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.nav>a:not(.nav-cta){position:relative;padding:32px 0}.nav>a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:24px;height:1px;background:var(--accent);transition:right .25s}.nav>a:not(.nav-cta):hover:after,.nav>a[aria-current="page"]:after{right:0}.nav-cta{display:inline-flex;gap:10px;align-items:center;background:var(--ink);color:#fff;padding:14px 18px;transition:.2s}.nav-cta:hover{background:var(--dark2);transform:translateY(-1px)}.menu-toggle{display:none;border:0;background:transparent;padding:8px;cursor:pointer}.menu-toggle span{display:block;width:25px;height:1.5px;background:var(--ink);margin:5px 0}
.hero{min-height:calc(100vh - 88px);height:760px;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,9,11,.88),rgba(4,9,11,.55) 48%,rgba(4,9,11,.16))}.hero-inner{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:end;min-height:560px}.hero-copy-wrap{max-width:760px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;margin:0 0 19px;display:flex;align-items:center;gap:12px}.eyebrow:before{content:"";width:31px;height:1px;background:var(--accent);flex:0 0 auto}.eyebrow.light{color:#fff}.hero h1,.section h2,.statement h2,.contact-band h2,.project-hero h1{font-family:var(--serif);font-weight:500;line-height:.95;letter-spacing:-.045em}.hero h1{font-size:clamp(60px,8vw,112px);margin:0 0 27px}.hero h1 em,.section h2 em,.statement h2 em,.contact-band h2 em{font-style:italic}.hero-copy{font-size:18px;line-height:1.55;max-width:600px;color:rgba(255,255,255,.82);margin:0 0 30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:17px;background:var(--accent);color:#0d1214;padding:15px 20px;border:1px solid var(--accent);font:700 10px var(--sans);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:#dfbf8b}.button-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}.button-ghost:hover{background:#fff;color:var(--ink)}.hero-note{display:flex;flex-direction:column;gap:8px;border-left:1px solid rgba(255,255,255,.38);padding-left:17px;font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:rgba(255,255,255,.72)}.scroll-cue{position:absolute;right:28px;bottom:26px;z-index:3;color:#fff;font-size:9px;text-transform:uppercase;letter-spacing:.16em;display:flex;align-items:center;gap:10px;writing-mode:vertical-rl}.scroll-cue i{width:1px;height:48px;background:rgba(255,255,255,.45)}
.section{padding:120px 0}.section-dark{background:var(--dark);color:#fff}.section-light{background:#e8e4db}.statement{padding:125px 0}.statement-grid{display:grid;grid-template-columns:.55fr 1.45fr;gap:80px}.statement h2{font-size:clamp(48px,6vw,82px);margin:0 0 34px}.statement-text{display:grid;grid-template-columns:1fr 1fr;gap:45px;max-width:900px;color:#5b605e}.statement-text p{margin:0}.text-link{display:inline-flex;gap:13px;align-items:center;margin-top:32px;color:#9a753c;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.section-intro{display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:end;margin-bottom:64px}.section h2{font-size:clamp(46px,5.5vw,76px);margin:0}.section-intro>p{max-width:480px;color:#777b78;margin:0}.dark-intro>p{color:rgba(255,255,255,.62)}
.service-list{border-top:1px solid rgba(255,255,255,.2)}.service-row{display:grid;grid-template-columns:65px 1fr 1.25fr;gap:42px;padding:44px 0;border-bottom:1px solid rgba(255,255,255,.2)}.service-number{font:500 13px var(--serif);color:rgba(255,255,255,.45);padding-top:5px}.service-title h3{font:500 31px/1.1 var(--serif);margin:0 0 8px}.service-title p{margin:0;color:rgba(255,255,255,.46);font-size:11px;text-transform:uppercase;letter-spacing:.12em}.service-body>p{margin:0 0 18px;color:rgba(255,255,255,.72);max-width:560px}.service-body ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:7px 25px;color:rgba(255,255,255,.56);font-size:12px}.service-body li:before{content:"—";color:var(--accent);margin-right:8px}
.projects{background:var(--paper)}.project-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:255px;gap:14px}.project{position:relative;overflow:hidden;display:block;background:#bdb9b0;isolation:isolate}.project:nth-child(1){grid-column:span 7;grid-row:span 2}.project:nth-child(2){grid-column:span 5}.project:nth-child(3){grid-column:span 5}.project:nth-child(4){grid-column:span 5;grid-row:span 2}.project:nth-child(5){grid-column:span 7}.project:nth-child(6){grid-column:span 7}.project img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .45s}.project:after{content:"";position:absolute;inset:35% 0 0;z-index:1;background:linear-gradient(transparent,rgba(0,0,0,.83))}.project:hover img,.project:focus-visible img{transform:scale(1.045);filter:brightness(.74)}.project-hover{position:absolute;z-index:3;inset:0;padding:28px;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:linear-gradient(135deg,rgba(5,13,17,.9),rgba(5,13,17,.46));opacity:0;transform:translateY(12px);transition:opacity .3s,transform .3s}.project-hover .project-type{font-size:9px;font-weight:700;letter-spacing:.15em;margin-bottom:11px;color:rgba(255,255,255,.7)}.project-hover h3{font:500 28px/1.05 var(--serif);margin:0 0 12px}.project-hover p{font-size:12px;line-height:1.55;color:rgba(255,255,255,.8);max-width:430px;margin:0}.project-link{display:inline-flex;margin-top:18px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.project:hover .project-hover,.project:focus-visible .project-hover{opacity:1;transform:none}.project-meta{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;color:#fff;display:grid;grid-template-columns:auto 1fr;column-gap:13px;align-items:end;transition:.25s}.project:hover .project-meta,.project:focus-visible .project-meta{opacity:0;transform:translateY(7px)}.project-meta .number{font:500 12px var(--serif);opacity:.72}.project-meta strong{font-size:12px;text-transform:uppercase;letter-spacing:.11em}.project-meta small{grid-column:2;color:rgba(255,255,255,.64);font-size:10px;margin-top:2px}
.approach-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:95px;align-items:center}.approach-image{height:610px;overflow:hidden}.approach-image img{width:100%;height:100%;object-fit:cover}.approach-copy>p:not(.eyebrow){max-width:560px;color:#5d625f;margin:27px 0 38px}.principles{border-top:1px solid var(--line)}.principles>div{display:grid;grid-template-columns:50px 1fr 1.3fr;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.principles span{font:500 12px var(--serif);color:#9a753c}.principles h3{font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin:0}.principles p{font-size:12px;color:#727673;margin:0}
.leadership{background:#fff}.leadership-intro{margin-bottom:55px}.leaders{border-top:1px solid #cfcfc8}.leader-card{display:grid;grid-template-columns:70px minmax(220px,.8fr) minmax(320px,1.2fr);gap:38px;padding:48px 0;border-bottom:1px solid #cfcfc8;align-items:start}.leader-index{font:500 14px var(--serif);color:#b46b4d}.leader-card .role{font-size:10px;font-weight:700;letter-spacing:.14em;color:#737774;margin:0 0 10px}.leader-card h3{font:500 43px/1 var(--serif);margin:0}.leader-bio{max-width:600px}.leader-bio p{color:#5f635f;margin:0 0 13px}.leader-bio p:last-child{margin-bottom:0}
.contact-band{background:var(--dark);color:#fff;padding:96px 0}.contact-band-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:85px;align-items:end}.contact-band h2{font-size:clamp(54px,7vw,94px);margin:0}.contact-band-inner>div:last-child p{max-width:500px;color:rgba(255,255,255,.68);margin:0 0 25px}.contact-section{background:var(--paper)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px}.contact-copy h2{font-size:clamp(48px,5.5vw,72px);margin:0 0 25px}.contact-copy>p:not(.eyebrow){color:#666b68;max-width:490px}.contact-details{display:grid;gap:22px;margin-top:42px}.contact-details div{display:grid;gap:5px}.contact-details span{font-size:9px;text-transform:uppercase;letter-spacing:.15em;font-weight:700;color:#858985}.contact-details a{font-size:17px;font-weight:600}.contact-details address{font-style:normal;color:#575c59}.contact-form{display:grid;gap:18px}.contact-form label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;color:#666b68}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:8px;border:0;border-bottom:1px solid #aaa9a2;background:transparent;padding:10px 0 13px;color:var(--ink);outline:none;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-bottom-color:var(--ink)}.hidden-field{position:absolute!important;left:-9999px!important}.form-note{font-size:11px;color:#7b7e7b;margin:0}.form-status{font-size:12px;color:#5b605d;min-height:20px}.footer{background:#0a1013;color:#fff;padding-top:58px}.footer-main{display:grid;grid-template-columns:1.1fr .9fr .7fr;gap:60px;padding-bottom:45px}.footer-brand img{filter:brightness(0) invert(1);width:154px}.footer-main p{color:rgba(255,255,255,.55);font-size:11px;line-height:1.7;margin:16px 0 0}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;align-content:start;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.footer-links a:hover{color:var(--accent)}.footer-contact{display:grid;align-content:start;justify-items:start;gap:8px;font-size:11px;color:rgba(255,255,255,.55)}.footer-contact a{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);padding:17px 0 23px;display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.42);font-size:10px}.footer-bottom a:hover{color:#fff}
/* Detail pages */.project-detail{background:var(--paper)}.project-detail .site-header{background:rgba(7,21,28,.96);color:#fff;border-bottom-color:rgba(255,255,255,.1)}.project-detail .brand img{filter:brightness(0) invert(1)}.project-detail .nav>a:not(.nav-cta){color:#fff}.project-detail .menu-toggle span{background:#fff}.project-hero{background:var(--dark);color:#fff;padding:100px 0 80px}.project-back{display:inline-flex;margin-bottom:34px;color:rgba(255,255,255,.62);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.project-back:hover{color:#fff}.project-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:end}.project-hero h1{font-size:clamp(55px,7vw,96px);margin:15px 0 0}.project-hero .eyebrow{color:rgba(255,255,255,.58)}.project-hero-grid>p{max-width:520px;color:rgba(255,255,255,.7);font-size:16px}.project-image-wrap{margin-top:55px;height:min(61vw,700px);overflow:hidden}.project-image-wrap img{width:100%;height:100%;object-fit:cover}.project-content{padding:105px 0}.project-content-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.project-content h2,.detail-extra h2{font:500 44px/1.08 var(--serif);margin:0 0 26px}.project-content p,.detail-extra p{color:#5e635f;line-height:1.8}.project-points{border-top:1px solid #c9c8c2}.project-points div{padding:21px 0;border-bottom:1px solid #c9c8c2}.project-points h3,.detail-extra h3{font-size:11px;text-transform:uppercase;letter-spacing:.13em;margin:0 0 8px}.project-points p{margin:0}.detail-extra{padding:75px 0;background:#ebe7df}.detail-extra-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.detail-extra p{margin:0 0 26px}.detail-nav{display:flex;justify-content:space-between;gap:20px;margin-top:42px;padding-top:24px;border-top:1px solid rgba(0,0,0,.14);font-size:11px;text-transform:uppercase;letter-spacing:.1em}.detail-nav a:hover{color:#9a753c}.project-cta{background:var(--dark);color:#fff;padding:90px 0}.project-cta-inner{display:flex;justify-content:space-between;gap:40px;align-items:end}.project-cta h2{font:500 clamp(44px,6vw,74px)/1 var(--serif);margin:0}.project-cta p{color:rgba(255,255,255,.65);max-width:430px}
@media(max-width:1050px){.nav{gap:18px}.nav-cta{padding:12px 14px}.statement-grid,.contact-grid{gap:55px}.leader-card{grid-template-columns:55px .9fr 1.1fr}.project-grid{grid-auto-rows:220px}}
@media(max-width:800px){.container{width:min(calc(100% - 42px),var(--max))}.site-header{height:76px}.brand img{width:145px;max-height:54px}.menu-toggle{display:block}.nav{position:fixed;inset:76px 0 auto 0;background:var(--paper);color:var(--ink);display:grid;gap:0;padding:16px 21px 24px;border-bottom:1px solid var(--line);box-shadow:0 18px 35px rgba(0,0,0,.12);transform:translateY(-130%);opacity:0;pointer-events:none;transition:.25s}.nav.is-open{transform:none;opacity:1;pointer-events:auto}.nav>a:not(.nav-cta){padding:16px 0;border-bottom:1px solid var(--line)}.nav>a:not(.nav-cta):after{display:none}.nav-cta{margin-top:12px;justify-content:center}.hero{min-height:660px;height:calc(100svh - 76px)}.hero-inner{min-height:0;align-items:center}.hero h1{font-size:clamp(55px,14vw,84px)}.hero-copy{font-size:16px}.hero-note,.scroll-cue{display:none}.section,.section-dark,.section-light,.statement{padding:88px 0}.section-intro,.statement-grid,.contact-grid,.project-hero-grid,.project-content-grid,.detail-extra-grid{grid-template-columns:1fr;gap:38px}.statement-text{grid-template-columns:1fr;gap:22px}.service-row{grid-template-columns:45px 1fr;gap:18px}.service-body{grid-column:2}.service-body ul{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr;grid-auto-rows:310px}.project:nth-child(n){grid-column:span 1;grid-row:span 1}.project-hover{opacity:1;transform:none;justify-content:flex-end;background:linear-gradient(transparent 25%,rgba(5,13,17,.9))}.project-meta{opacity:0}.approach-grid{grid-template-columns:1fr;gap:48px}.approach-image{height:450px}.principles>div{grid-template-columns:45px 1fr;gap:15px}.principles p{grid-column:2}.leader-card{grid-template-columns:45px 1fr;gap:10px 18px}.leader-identity,.leader-bio{grid-column:2}.leader-card h3{font-size:38px}.contact-band-inner{grid-template-columns:1fr;gap:35px}.footer-main{grid-template-columns:1fr;gap:32px}.project-hero{padding:82px 0 60px}.project-image-wrap{height:60vh;margin-top:42px}.project-content{padding:78px 0}.project-cta-inner{display:grid;gap:35px}}
@media(max-width:480px){.container{width:calc(100% - 32px)}.hero{min-height:610px}.hero-actions{flex-direction:column;align-items:stretch;max-width:290px}.button{width:100%}.section h2{font-size:44px}.project-grid{grid-auto-rows:285px}.approach-image{height:380px}.contact-band h2{font-size:51px}.footer-bottom{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* V12 commercial project gallery */
.commercial-gallery{padding:0 0 95px;background:#fff}.commercial-gallery-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:14px}.commercial-gallery figure{margin:0;overflow:hidden;background:#eee}.commercial-gallery img{display:block;width:100%;height:clamp(280px,38vw,560px);object-fit:cover}.commercial-gallery figure:first-child img{object-position:center}.commercial-gallery figure:nth-child(2) img{object-position:center}.commercial-gallery figcaption{padding:14px 2px 0;color:#6a6d68;font-size:11px;line-height:1.5;letter-spacing:.02em}@media(max-width:760px){.commercial-gallery{padding-bottom:65px}.commercial-gallery-grid{grid-template-columns:1fr}.commercial-gallery img{height:68vw;min-height:240px;max-height:420px}}

/* v14: consistent, accessible finishing details across every page. */
:root{--muted:#595f5b;--accent-ink:#775526}
html{scroll-padding-top:112px}body{font-size:16px;-webkit-font-smoothing:antialiased}::selection{background:#c8a46a;color:#07151c}
:focus-visible{outline:3px solid #a07539;outline-offset:5px}.section-dark :focus-visible,.project-hero :focus-visible,.footer :focus-visible{outline-color:#e2bd81}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.nav{font-size:11px;letter-spacing:.07em;gap:22px}.nav-cta,.button{min-height:48px;font-size:11px;letter-spacing:.08em}.nav-cta{background:var(--dark)}
.eyebrow{font-size:11px}.hero{height:auto;min-height:min(820px,calc(100svh - 88px));padding:96px 0 80px}.hero-inner{min-height:470px;gap:32px}.hero-copy{max-width:540px;line-height:1.75}.hero-note{font-size:10px;flex-shrink:0}.hero-overlay{background:linear-gradient(90deg,rgba(4,9,11,.86),rgba(4,9,11,.48) 57%,rgba(4,9,11,.2))}
.hero h1,.section h2,.statement h2,.project-hero h1{line-height:1.05}.section,.statement{padding-block:104px}.section-intro>p{color:#5c625e}.dark-intro>p{color:#b9c2c4}.statement-grid{gap:64px}.text-link{font-size:12px;color:var(--accent-ink);min-height:44px;margin-top:20px}.text-link:hover{text-decoration:underline;text-underline-offset:6px}
.service-number,.service-title p,.service-body ul{color:#aeb9bd}.service-body ul{font-size:14px}.service-body li{display:flex;align-items:baseline}.service-title h3{line-height:1.2}.service-row{padding-block:40px}
.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;gap:32px 24px}.project:nth-child(n){grid-column:auto;grid-row:auto}.project{display:flex;flex-direction:column;background:transparent;overflow:visible}.project img{height:auto;aspect-ratio:8/5;object-fit:cover;transition:filter .3s}.project:after{display:none}.project-hover{position:static;opacity:1;transform:none;padding:22px 0 0;background:none;color:var(--ink);flex:1;justify-content:flex-start}.project-hover .project-type{color:#676c67;font-size:10px;margin-bottom:10px}.project-hover h3{font-size:31px;line-height:1.15;margin-bottom:12px}.project-hover p{font-size:14px;color:#5b605c;max-width:490px}.project-link{color:var(--accent-ink);font-size:11px;padding-bottom:19px;border-bottom:1px solid var(--line);width:100%;margin-top:auto;padding-top:20px}.project-meta{display:none}.project:hover img,.project:focus-visible img{transform:none;filter:brightness(.92)}.project:hover .project-link{text-decoration:underline;text-underline-offset:5px}
.approach-grid{gap:64px}.approach-image{height:580px}.principles>div{grid-template-columns:28px 1fr 1.3fr;gap:16px}.principles p{font-size:14px;color:#5b605c}.principles h3{font-size:12px}.leader-index{color:var(--accent-ink)}.leader-card .role{color:#626762}.contact-band{padding-block:80px}.contact-grid{gap:80px}
.contact-details span{font-size:11px;color:#60655f}.contact-details .map-link{font-size:13px;font-weight:500;text-decoration:underline;text-underline-offset:4px;margin-top:8px;width:fit-content}.contact-form{align-content:start;gap:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-form label{font-size:11px;letter-spacing:.08em;color:#404842}.required-note{font-weight:400;text-transform:none;letter-spacing:0}.contact-form input,.contact-form textarea{font-size:16px;line-height:1.6;letter-spacing:normal;font-weight:400;border:1px solid #b2b1a8;background:#ffffff80;border-radius:0;padding:12px;min-height:48px}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid #8a6534;outline-offset:2px;border-color:#8a6534}.contact-form textarea::placeholder{color:#6a706b;opacity:1}.form-note{font-size:13px;line-height:1.6;color:#575e58}.form-status{margin:0;font-size:14px;color:#505950}.form-status:empty{display:none}.form-status[data-state="error"]{color:#913729}.contact-form .button{justify-self:start;min-width:180px}.button:disabled{opacity:.65;cursor:wait;transform:none}
.footer-main p,.footer-contact{font-size:13px;color:#afb6b8}.footer-links{font-size:11px;gap:4px 24px}.footer-links a{padding:8px 0;min-height:40px}.footer-bottom{font-size:12px;color:#a6aeb0}.footer-bottom a{padding:6px 0}.footer-contact a{overflow-wrap:anywhere}.project-detail .nav-cta{background:var(--accent);color:var(--dark)}.project-back{font-size:11px;min-height:44px;align-items:center}.project-hero{padding-top:60px}.project-hero-grid{gap:60px}.project-hero h1{font-size:clamp(48px,6.6vw,90px)}.project-image-wrap{height:auto;aspect-ratio:16/9}.project-image-wrap img{height:100%;object-fit:cover}.project-content,.detail-extra{padding-block:80px}.detail-nav{flex-wrap:wrap}.detail-nav a{min-height:44px;display:inline-flex;align-items:center;max-width:100%}.commercial-gallery figcaption{padding:16px;font-size:13px}.confirmation{padding:100px 0 120px;min-height:65vh}.confirmation .container{max-width:920px}.confirmation h1{font:500 clamp(44px,6vw,78px)/1.1 var(--serif);letter-spacing:-.035em;margin:24px 0}.confirmation p:not(.eyebrow){max-width:560px;color:#5b625d;margin-bottom:32px}.confirmation-mark{width:52px;height:52px;border:1px solid var(--accent);display:grid;place-items:center;font-size:24px;margin-bottom:32px;color:var(--accent-ink)}.confirmation .text-link{margin-left:24px}
@media(min-width:801px) and (max-width:1100px){.nav{gap:13px;font-size:10px}.brand img{width:138px}.nav-cta{font-size:10px;padding:12px}.hero-note{display:none}.approach-grid,.contact-grid{gap:40px}.principles>div{grid-template-columns:24px 1fr}.principles p{grid-column:2}}
@media(max-width:800px){html{scroll-padding-top:96px}.menu-toggle{min-width:48px;min-height:48px;z-index:2}.nav{visibility:hidden;max-height:calc(100dvh - 76px);overflow:auto;transform:translateY(-8px);font-size:12px}.nav.is-open{visibility:visible}.project-detail .nav{background:var(--dark);color:#fff}.project-detail .nav>a:not(.nav-cta){border-color:#ffffff26}.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.menu-toggle span{transition:transform .2s,opacity .2s}.hero{min-height:650px;padding:90px 0}.hero-inner{min-height:0}.section,.statement{padding-block:76px}.section-intro{gap:28px;margin-bottom:42px}.statement-grid,.contact-grid{gap:36px}.project-grid{gap:36px 20px}.project-hover{padding-top:18px}.project-hover h3{font-size:27px}.approach-grid{gap:40px}.approach-image{height:440px}.principles>div{grid-template-columns:28px 1fr}.contact-band{padding-block:64px}.project-hero{padding:40px 0 48px}.project-hero-grid{gap:22px}.project-hero h1{font-size:clamp(44px,9vw,70px)}.project-image-wrap{aspect-ratio:4/3}.project-content,.detail-extra{padding-block:64px}.project-content-grid,.detail-extra-grid{gap:24px}.project-cta{padding-block:64px}.footer-main{gap:28px}.confirmation{padding:70px 0}.confirmation .text-link{margin-left:0;display:flex;width:fit-content}}
@media(max-width:580px){.project-grid{grid-template-columns:1fr}.project img{aspect-ratio:4/3}.form-row{grid-template-columns:1fr;gap:24px}.hero{min-height:620px}.hero h1{font-size:clamp(49px,13vw,74px)}.hero-actions{max-width:340px}.statement h2,.section h2{font-size:clamp(38px,10vw,52px)}.service-title h3{font-size:28px}.service-row{grid-template-columns:28px 1fr}.service-body{grid-column:1/-1}.leader-card{grid-template-columns:28px 1fr}.leader-bio{grid-column:1/-1;margin-top:20px}.contact-details a{overflow-wrap:anywhere}.project-content h2,.detail-extra h2{font-size:36px}.project-back{margin-bottom:20px}.project-hero h1{overflow-wrap:normal}.approach-image{height:380px}.footer-bottom{gap:8px}.contact-form .button{width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.site-header,.footer,.hero-actions,.scroll-cue,.contact-form,.contact-band,.project-cta{display:none}.hero{min-height:0;padding:30px 0;color:#000}.hero-img,.hero-overlay{display:none}.hero-copy{color:#333}.section,.statement,.project-content{padding:30px 0}.project-grid{grid-template-columns:1fr 1fr}.project{break-inside:avoid}}


/* v17: bar & hospitality gallery */
.hospitality-gallery{padding:0 0 88px;background:#fff}.hospitality-gallery-intro{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:end;margin:0 0 40px}.hospitality-gallery-intro h2{font:500 clamp(36px,4.6vw,66px)/1.06 var(--serif);letter-spacing:-.04em;margin:0}.hospitality-gallery-intro p:not(.eyebrow){margin:0;color:#5d635f;max-width:560px}.hospitality-gallery-grid{columns:3 280px;column-gap:16px}.hospitality-gallery-grid figure{break-inside:avoid;margin:0 0 16px;background:#fff}.hospitality-gallery-grid img{display:block;width:100%;height:auto;background:#ece8de}.hospitality-gallery-grid figcaption{padding:12px 0 0;color:#646965;font-size:13px;line-height:1.55}.hospitality-gallery-grid figure:hover img{filter:brightness(.98)}@media(max-width:800px){.hospitality-gallery{padding-bottom:64px}.hospitality-gallery-intro{grid-template-columns:1fr;gap:18px;margin-bottom:28px}.hospitality-gallery-grid{columns:2 220px}}@media(max-width:580px){.hospitality-gallery-grid{columns:1}}


/* v18: Dolphin Square Spa gallery */
.wellness-gallery{padding:0 0 88px;background:#fff}.wellness-gallery-intro{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:end;margin:0 0 40px}.wellness-gallery-intro h2{font:500 clamp(36px,4.6vw,66px)/1.06 var(--serif);letter-spacing:-.04em;margin:0}.wellness-gallery-intro p:not(.eyebrow){margin:0;color:#5d635f;max-width:560px}.wellness-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.wellness-gallery-grid figure{margin:0;background:#fff}.wellness-gallery-grid figure:nth-child(4),.wellness-gallery-grid figure:nth-child(5){grid-row:span 2}.wellness-gallery-grid img{display:block;width:100%;height:clamp(300px,38vw,560px);object-fit:cover;background:#21150f}.wellness-gallery-grid figure:nth-child(5) img{height:100%;min-height:620px}.wellness-gallery-grid figcaption{padding:12px 0 0;color:#646965;font-size:13px;line-height:1.55}@media(max-width:800px){.wellness-gallery{padding-bottom:64px}.wellness-gallery-intro{grid-template-columns:1fr;gap:18px;margin-bottom:28px}.wellness-gallery-grid{grid-template-columns:1fr}.wellness-gallery-grid figure:nth-child(4),.wellness-gallery-grid figure:nth-child(5){grid-row:auto}.wellness-gallery-grid img,.wellness-gallery-grid figure:nth-child(5) img{height:auto;min-height:0}}


/* v18: prime residential gallery */
.residential-gallery{padding:0 0 88px;background:#fff}.residential-gallery-intro{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:end;margin:0 0 40px}.residential-gallery-intro h2{font:500 clamp(36px,4.6vw,66px)/1.06 var(--serif);letter-spacing:-.04em;margin:0}.residential-gallery-intro p:not(.eyebrow){margin:0;color:#5d635f;max-width:560px}.residential-gallery-grid{columns:3 280px;column-gap:16px}.residential-gallery-grid figure{break-inside:avoid;margin:0 0 18px;background:#fff}.residential-gallery-grid img{display:block;width:100%;height:auto;background:#ece8de}.residential-gallery-grid figcaption{padding:12px 0 0;color:#646965;font-size:13px;line-height:1.55}@media(max-width:800px){.residential-gallery{padding-bottom:64px}.residential-gallery-intro{grid-template-columns:1fr;gap:18px;margin-bottom:28px}.residential-gallery-grid{columns:2 220px}}@media(max-width:580px){.residential-gallery-grid{columns:1}}


/* v22: retail case study panels */
.retail-case-studies{padding:0 0 88px;background:#fff}.retail-case-studies-intro{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:end;margin:0 0 40px}.retail-case-studies-intro h2{font:500 clamp(36px,4.6vw,66px)/1.06 var(--serif);letter-spacing:-.04em;margin:0}.retail-case-studies-intro p:not(.eyebrow){margin:0;color:#5d635f;max-width:560px}.retail-case-study-grid{display:grid;grid-template-columns:1fr;gap:30px}.retail-case-study-grid figure{margin:0}.retail-case-study-grid img{display:block;width:100%;height:auto;background:#ece8de}.retail-case-study-grid figcaption{padding:12px 0 0;color:#646965;font-size:13px;line-height:1.55}@media(max-width:800px){.retail-case-studies{padding-bottom:64px}.retail-case-studies-intro{grid-template-columns:1fr;gap:18px;margin-bottom:28px}.retail-case-study-grid{gap:22px}}


/* v30: expanded services */
