:root{--ink:#11120f;--ink-soft:#181a16;--ink-raised:#20221d;--limestone:#e8e4da;--paper:#f1eee6;--stone:#aaa99f;--stone-dark:#85867d;--gold:#c6b37b;--gold-highlight:#ddcf9f;--gold-pressed:#a9965f;--brass:var(--gold);--brass-pale:var(--gold-highlight);--oxblood:#3f4a3e;--line:#e8e4da2e;--line-dark:#11120f2b;--control-border:#e8e4da66;--ease-out:cubic-bezier(.22, 1, .36, 1);--gutter:clamp(20px, 4vw, 64px);--shell:min(1600px, calc(100% - var(--gutter) * 2));--section-space:clamp(84px, 7.25vw, 112px)}*{box-sizing:border-box}html{background:var(--ink);color:var(--limestone);scroll-behavior:smooth;scroll-padding-top:96px}body{background:var(--ink);color:var(--limestone);font-family:var(--font-sans), Arial, sans-serif;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.55;overflow-x:clip}::selection{background:var(--brass);color:var(--ink)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,summary,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}img{max-width:100%}h1,h2,h3,p{margin-top:0}:focus-visible{outline:2px solid var(--brass-pale);outline-offset:4px}.skip-link{z-index:1000;background:var(--paper);color:var(--ink);padding:12px 18px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.page-shell{width:var(--shell);margin-inline:auto}.eyebrow{color:var(--brass-pale);letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:.69rem;font-weight:650;line-height:1.25}.text-link{border-bottom:1px solid;align-items:center;gap:14px;min-height:44px;font-size:.86rem;font-weight:600;transition:color .2s;display:inline-flex}.text-link:hover{color:var(--brass-pale)}.architectural-caption{color:var(--stone);letter-spacing:.11em;text-transform:uppercase;margin-top:12px;font-size:.62rem;line-height:1.5}.button{letter-spacing:.01em;border:1px solid #0000;border-radius:999px;justify-content:space-between;align-items:center;gap:32px;min-height:50px;padding:12px 22px;font-size:.78rem;font-weight:700;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.button-light{background:var(--limestone);color:var(--ink)}.button-light:hover{background:var(--brass-pale)}.site-header{z-index:100;width:var(--shell);border-bottom:1px solid #e8e4da3b;grid-template-columns:1fr auto 1fr;align-items:center;min-height:96px;display:grid;position:absolute;top:0;left:50%;transform:translate(-50%)}.brand{align-items:center;width:fit-content;min-height:48px;display:inline-flex}.brand-intro{--intro-ease:cubic-bezier(.76, 0, .24, 1);--intro-out:cubic-bezier(.22, 1, .36, 1);z-index:900;color:var(--brass);pointer-events:auto;contain:layout paint;place-items:center;animation:1ms 5s forwards intro-finish;display:grid;position:fixed;inset:0;overflow:hidden}.brand-intro[data-state=ready]{animation:1ms 3.35s forwards intro-finish}.brand-intro[data-state=dismissed]{display:none}.brand-intro-panel{width:calc(50% + 1px);animation:intro-panel-open .95s 2.4s var(--intro-ease) both;background:#000;position:absolute;inset-block:0}.brand-intro-panel-left{--panel-exit:-101%;left:0}.brand-intro-panel-right{--panel-exit:101%;right:0}.brand-intro-composition{width:min(1080px,94vw);margin-top:-3vh;animation:.45s cubic-bezier(.4,0,1,1) 2.32s both intro-composition-exit;position:relative}.brand-intro-lockup{aspect-ratio:1659/948;position:relative}.brand-intro-emblem{animation:intro-emblem-place .95s 1.05s var(--intro-out) both;position:absolute;inset:0}.brand-intro-drawing{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.brand-intro-guides{transform-origin:287px 478px;animation:intro-guides 1.45s var(--intro-out) both}.brand-intro-outline{animation:.6s .95s both intro-outline-fade}.brand-intro-outline path{stroke-dasharray:1;stroke-dashoffset:1px;animation:1.05s cubic-bezier(.4,0,.2,1) .1s both intro-line-draw}.brand-intro-outline .brand-intro-outline-inner{animation-delay:.25s}.brand-intro-original-mark{clip-path:inset(0 69% 0 0);animation:intro-gold-resolve .85s .65s var(--intro-out) both;position:absolute;inset:0}.brand-intro-reference-logo{object-fit:contain;width:100%;height:100%;display:block}.brand-intro-wordmark{animation:intro-wordmark-reveal 1s 1.2s var(--intro-out) both;position:absolute;inset:0}.brand-intro-baseline{background:color-mix(in srgb, var(--gold) 14%, transparent);width:72px;height:1px;animation:.25s 2.2s both intro-baseline-exit;position:absolute;bottom:clamp(32px,6vh,64px);left:calc(50% - 36px);overflow:hidden}.brand-intro-baseline span{background:var(--brass);transform-origin:0;height:100%;animation:2.2s cubic-bezier(.3,.1,.3,1) both intro-baseline-fill;display:block}.brand-intro[data-state=waiting] *{animation-play-state:paused}body:has(.brand-intro:not([data-state=dismissed])){--hero-entrance-delay:2.45s}body:has(.brand-intro[data-state=waiting]) .hero :is(.hero-eyebrow,h1,.hero-description,.hero-actions,.hero-figure,.hero-scroll){animation-play-state:paused}body:has(.brand-intro[data-state=dismissed]) .hero :is(.hero-eyebrow,h1,.hero-description,.hero-actions,.hero-figure,.hero-scroll){animation:none}@keyframes intro-line-draw{to{stroke-dashoffset:0}}@keyframes intro-guides{0%{opacity:0;transform:scale(1.12)}22%,45%{opacity:.32}to{opacity:0;transform:scale(1)}}@keyframes intro-outline-fade{to{opacity:0}}@keyframes intro-gold-resolve{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes intro-emblem-place{0%{transform:translate(32.5%)}to{transform:translate(0)}}@keyframes intro-wordmark-reveal{0%{opacity:0;clip-path:inset(0 70% 0 30%);transform:translate(18px)}to{opacity:1;clip-path:inset(0 0 0 30%);transform:translate(0)}}@keyframes intro-composition-exit{to{opacity:0;transform:translateY(-12px)scale(.985)}}@keyframes intro-panel-open{to{transform:translateX(var(--panel-exit))}}@keyframes intro-baseline-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes intro-baseline-exit{to{opacity:0}}@keyframes intro-finish{to{visibility:hidden;pointer-events:none}}.monogram-letter{fill:var(--limestone);stroke:none}.desktop-nav{align-items:center;gap:clamp(22px,3vw,48px);display:flex}.desktop-nav a{color:#e8e4dac7;min-height:44px;padding-block:13px;font-size:.72rem;font-weight:600;position:relative}.desktop-nav a:after{background:var(--brass);content:"";transform-origin:100%;height:1px;transition:transform .22s;position:absolute;bottom:8px;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after{transform-origin:0;transform:scaleX(1)}.header-cta{border:1px solid #e8e4da7a;border-radius:999px;justify-content:space-between;justify-self:end;align-items:center;gap:30px;min-height:46px;padding:10px 18px;font-size:.72rem;font-weight:650;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.header-cta:hover{border-color:var(--limestone);background:var(--limestone);color:var(--ink)}.mobile-menu{display:none}.hero{background:var(--ink);position:relative;overflow:hidden}.hero-main{align-items:center;min-height:clamp(650px,100svh - 100px,900px);padding-block:156px 130px;display:flex;position:relative}.hero-copy{z-index:2;width:55%;position:relative}.hero-eyebrow{color:var(--limestone);letter-spacing:.17em;align-items:center;gap:12px;margin-bottom:30px;font-size:.65rem;animation:.7s .1s both rise-in;display:flex}.hero-eyebrow>span{background:var(--brass);flex:none;width:6px;height:6px;transform:rotate(45deg)}.hero h1{letter-spacing:-.065em;margin:0;font-size:clamp(4.5rem,7.3vw,8.2rem);font-weight:450;line-height:1;animation:.85s .2s both rise-in}.hero h1>span,.hero h1>em{white-space:nowrap;display:block}.hero h1>em{color:var(--brass-pale);font-family:var(--font-serif), Georgia, serif;letter-spacing:-.045em;margin-top:-.01em;font-size:1.28em;font-weight:500;line-height:.99}.hero-description{color:#bcbdb5;text-wrap:pretty;max-width:365px;margin:30px 0 0;font-size:.94rem;line-height:1.8;animation:.8s .3s both rise-in}.hero-actions{align-items:center;gap:26px;margin-top:32px;animation:.8s .4s both rise-in;display:flex}.hero-actions .button{background:var(--brass-pale);border-radius:3px;gap:34px;min-height:54px;padding:14px 20px;font-size:.76rem}.hero-actions .button:hover{background:var(--paper)}.hero-actions svg,.hero-services svg{flex-shrink:0;transition:transform .22s}.hero-actions a:hover svg,.hero-services a:hover svg{transform:translate(2px,-2px)}.hero-work-link{align-items:center;gap:12px;min-height:48px;font-size:.74rem;font-weight:550;transition:color .2s;display:inline-flex}.hero-work-link:hover{color:var(--brass-pale)}.hero-work-link svg{width:16px;height:16px}.hero-figure{background:#1b2633;width:60%;margin:0;animation:1.2s cubic-bezier(.2,.72,.18,1) both hero-image-in;position:absolute;top:128px;bottom:36px;right:0;overflow:hidden}.hero-image{object-fit:cover;object-position:67% center}.hero-image-shade{pointer-events:none;background:linear-gradient(90deg,#11120f80,#0000 42%),linear-gradient(#0000 74%,#090e11b3);position:absolute;inset:0}.hero-figure figcaption{color:var(--paper);justify-content:space-between;align-items:flex-end;gap:20px;display:flex;position:absolute;bottom:21px;left:24px;right:24px}.hero-figure figcaption>span:first-child{font-size:.73rem;font-weight:500}.hero-figure figcaption>span:last-child{letter-spacing:.1em;text-align:right;text-transform:uppercase;max-width:120px;font-size:.6rem;line-height:1.6}.hero-scroll{color:var(--stone);align-items:center;gap:14px;font-size:.64rem;line-height:1.7;animation:.7s .5s both rise-in;display:inline-flex;position:absolute;bottom:38px;left:0}.hero-scroll-icon{border:1px solid var(--line);width:44px;height:44px;color:var(--limestone);border-radius:50%;place-items:center;transition:border-color .2s,transform .2s;display:grid}.hero-scroll:hover .hero-scroll-icon{border-color:var(--brass);transform:translateY(3px)}.hero-services{border-top:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:clamp(22px,3vw,48px);min-height:100px;display:grid}.hero-services>a{border-left:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding-left:clamp(20px,3vw,48px);font-size:.82rem;font-weight:500;transition:color .2s;display:flex}.hero-services>a:hover{color:var(--brass-pale)}.hero-services>a:first-child{border-left:0;padding-left:0}.hero-services svg{width:17px;height:17px;color:var(--brass)}.about-diamond .monogram-letter{display:none}.intro-section,.services-section,.approach-section,.faq-section,.contact-section{padding-block:var(--section-space)}.intro-section{padding-bottom:clamp(78px,6vw,96px)}.section-index{border-top:1px solid var(--line);color:var(--stone);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;padding-top:16px;font-size:.68rem;font-weight:600;display:flex}.intro-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:start;gap:clamp(50px,11vw,180px);margin-top:clamp(58px,6vw,88px);display:grid}.intro-grid h2,.section-heading-row h2,.work-heading h2,.approach-intro h2,.about-content h2,.faq-heading h2,.contact-heading h2,.service-hero h1,.service-content h2{letter-spacing:-.055em;text-wrap:balance;word-spacing:.065em;margin:0;font-size:clamp(3.1rem,6.2vw,7.2rem);font-weight:430;line-height:.95}.answer-block>p{color:#e8e4dac2;margin:0 0 24px;font-size:clamp(1rem,1.3vw,1.17rem);line-height:1.75}.answer-block>p:first-child{color:var(--limestone);letter-spacing:-.035em;font-size:clamp(1.3rem,2vw,1.9rem);line-height:1.4}.answer-block .text-link{margin-top:12px}.principles-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-top:clamp(68px,7vw,104px);display:grid}.principles-strip article{min-height:184px;padding:30px clamp(22px,3vw,46px) 34px;position:relative}.principles-strip article:first-child{padding-left:0}.principles-strip article+article{border-left:1px solid var(--line)}.principles-strip article:after{background:var(--brass);content:"";width:5px;height:5px;position:absolute;top:-3px;left:clamp(22px,3vw,46px);transform:rotate(45deg)}.principles-strip article:first-child:after{left:0}.principles-strip span{color:var(--brass);letter-spacing:.13em;text-transform:uppercase;font-size:.66rem;font-weight:650}.principles-strip h3{letter-spacing:-.035em;margin:28px 0 12px;font-size:clamp(1.1rem,1.65vw,1.55rem);font-weight:500}.principles-strip p{max-width:340px;color:var(--stone);margin:0;font-size:.82rem;line-height:1.65}.services-section{padding-top:0}.section-heading-row{border-top:1px solid var(--line);grid-template-columns:.68fr 1.32fr;align-items:start;padding-top:clamp(30px,3.6vw,52px);display:grid}.service-list{border-top:1px solid var(--line);margin-top:clamp(56px,6vw,86px)}.service-row{border-bottom:1px solid var(--line);grid-template-columns:.28fr .72fr .85fr 64px;align-items:center;gap:clamp(20px,3vw,52px);min-height:150px;transition:background-color .24s;display:grid}.service-row:hover{background:var(--ink-soft)}.service-number{color:var(--brass);letter-spacing:.15em;font-size:.7rem}.service-row h3{letter-spacing:-.04em;margin:0;font-size:clamp(1.65rem,3vw,3.2rem);font-weight:450;line-height:1.05}.service-row p{max-width:510px;color:var(--stone);margin:0;font-size:.91rem;line-height:1.65}.round-arrow{border:1px solid var(--line);border-radius:50%;place-items:center;width:54px;height:54px;transition:background-color .2s,color .2s,transform .2s;display:grid}.service-row:hover .round-arrow{background:var(--brass-pale);color:var(--ink);transform:rotate(45deg)}.work-section{padding-block:var(--section-space);background:var(--paper);color:var(--ink)}.work-heading{grid-template-columns:1.35fr .65fr;align-items:end;gap:clamp(50px,10vw,160px);margin-bottom:40px;display:grid}.work-heading .eyebrow{color:var(--oxblood);margin-bottom:28px}.work-heading-aside{flex-direction:column;align-items:flex-start;gap:clamp(24px,3vw,42px);max-width:450px;display:flex}.work-heading h2 em,.local-copy h2 em{font-family:var(--font-serif), Georgia, serif;font-size:1.14em;font-weight:500}.work-heading-aside p{color:#55564f;max-width:450px;margin:0;font-size:1rem;line-height:1.7}.gallery-toolbar{border-top:1px solid var(--line-dark);justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;padding-top:18px;display:flex}.gallery-toolbar>span{color:#65655e;letter-spacing:.04em;font-size:.69rem}.gallery-toolbar>span>span[aria-hidden]{color:#939188;margin-inline:12px}.gallery-buttons{flex-shrink:0;gap:10px;display:flex}.gallery-buttons button{width:48px;height:48px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #8b8a81;border-radius:50%;place-items:center;font-size:1.35rem;transition:background-color .18s,color .18s;display:grid}.gallery-buttons button:hover:not(:disabled){background:var(--ink);color:var(--paper)}.gallery-buttons button:disabled{opacity:.3;cursor:default}.work-section :focus-visible{outline-color:var(--oxblood)}.gallery-track{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:calc((100vw - var(--shell)) / 2);scrollbar-width:thin;scrollbar-color:#aaa69a transparent;padding:0 calc((100vw - var(--shell)) / 2) 30px;align-items:flex-start;gap:clamp(22px,2.5vw,40px);display:flex;overflow-x:auto}.work-gallery[data-scroll-driven=true]{height:calc(100svh + var(--gallery-travel,0px))}.work-gallery[data-scroll-driven=true] .gallery-sticky{flex-direction:column;justify-content:center;height:100svh;padding-block:24px;display:flex;position:sticky;top:0}.work-gallery[data-scroll-driven=true] .gallery-toolbar{flex-shrink:0}.work-gallery[data-scroll-driven=true] .gallery-track{scroll-snap-type:none;flex-shrink:0;overflow-x:hidden}.work-gallery[data-scroll-driven=true] .gallery-card{flex-basis:min(46vw,133.333svh - 426.667px,760px)}.work-gallery[data-scroll-driven=true] .gallery-card-portrait{flex-basis:min(32vw,80svh - 192px,520px)}.gallery-card{scroll-snap-align:start;flex:0 0 min(46vw,760px);min-width:0;margin:0}.gallery-card:nth-child(2n){padding-top:clamp(36px,5vw,80px)}.gallery-card-portrait{flex-basis:min(32vw,520px)}.gallery-image-wrap{aspect-ratio:4/3;background:#d4d0c5;position:relative;overflow:hidden}.gallery-card-portrait .gallery-image-wrap{aspect-ratio:4/5}.gallery-image-wrap img{object-fit:cover;transition:transform .5s}@media (hover:hover){.gallery-card:hover img{transform:scale(1.025)}}.project-meta{border-top:1px solid var(--line-dark);justify-content:space-between;gap:24px;margin-top:16px;padding-top:14px;display:flex}.project-meta h3{margin:0;font-size:.95rem;font-weight:650}.project-meta span,.visual-disclaimer{color:#63645b;letter-spacing:.11em;text-transform:uppercase;font-size:.68rem}.visual-disclaimer{margin-top:26px;margin-bottom:0}.local-section{border-bottom:1px solid var(--line);padding-block:var(--section-space);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(40px,6vw,96px);display:grid}.local-copy .eyebrow{margin-bottom:28px}.local-copy h2{letter-spacing:-.055em;margin:0;font-size:clamp(2.8rem,4.3vw,5rem);font-weight:430;line-height:1.03}.local-copy h2 em{color:var(--brass-pale)}.local-copy>p:not(.eyebrow){max-width:380px;color:var(--stone);margin-block:28px;font-size:.94rem;line-height:1.8}.local-visual{min-width:0;margin:0}.local-image-wrap{aspect-ratio:3/2;background:var(--ink-raised);position:relative}.local-image-wrap img{object-fit:cover}.local-visual figcaption{color:var(--stone);justify-content:space-between;gap:20px;padding-top:15px;font-size:.68rem;display:flex}.interior-section{border-bottom:1px solid var(--line);padding-block:var(--section-space);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:stretch;gap:clamp(48px,7vw,112px);display:grid}.interior-visual{flex-direction:column;min-width:0;margin:0;display:flex}.interior-image-wrap{background:var(--ink-raised);flex:1;min-height:540px;position:relative;overflow:hidden}.interior-image-wrap img{object-fit:cover;object-position:40% center}.interior-visual figcaption{color:var(--stone);justify-content:space-between;gap:20px;padding-top:16px;font-size:.72rem;line-height:1.6;display:flex}.interior-visual figcaption span:last-child{text-align:right}.interior-content{align-self:center;padding-block:12px 32px}.interior-content .eyebrow{margin-bottom:28px}.interior-content h2{letter-spacing:-.055em;margin:0;font-size:clamp(3.4rem,5.7vw,6rem);font-weight:430;line-height:.98}.interior-description{max-width:460px;color:var(--stone);text-wrap:pretty;margin:28px 0 32px;font-size:1rem;line-height:1.75}.interior-details{margin:0}.interior-details>div{border-top:1px solid var(--line);grid-template-columns:minmax(130px,.85fr) minmax(0,1.15fr);gap:24px;padding-block:20px;display:grid}.interior-details dt{font-size:.84rem;font-weight:600}.interior-details dd{color:var(--stone);margin:0;font-size:.82rem;line-height:1.65}.interior-cta{color:var(--brass-pale);margin-top:18px}.interior-cta:hover{color:var(--paper)}@media (min-width:761px) and (max-width:1040px){.interior-section{gap:36px}.interior-details>div{grid-template-columns:1fr;gap:6px;padding-block:16px}.interior-visual figcaption{flex-direction:column;gap:4px}.interior-visual figcaption span:last-child{text-align:left}}@media (max-width:760px){.interior-section{grid-template-columns:1fr;gap:36px}.interior-content{order:-1;padding:0}.interior-content h2{font-size:clamp(3.2rem,13vw,4.6rem)}.interior-image-wrap{aspect-ratio:4/3;min-height:0}.interior-details>div{grid-template-columns:1fr;gap:7px;padding-block:18px}.interior-visual figcaption{font-size:.68rem}}.approach-section{grid-template-columns:1.05fr .95fr;gap:clamp(70px,11vw,180px);display:grid}.approach-intro{align-self:start;position:sticky;top:80px}.approach-intro .eyebrow{margin-bottom:clamp(40px,6vw,80px)}.approach-intro h2 span{color:var(--brass-pale)}.process-list{border-top:1px solid var(--line)}.process-list article{border-bottom:1px solid var(--line);grid-template-columns:58px .58fr 1fr;gap:24px;padding-block:clamp(30px,3.4vw,48px);display:grid}.process-list article>span{color:var(--brass);letter-spacing:.14em;font-size:.68rem}.process-list h3{letter-spacing:-.035em;margin:0;font-size:clamp(1.3rem,2vw,2rem);font-weight:500}.process-list p{color:var(--stone);margin:0;font-size:.91rem;line-height:1.7}.about-section{padding-block:var(--section-space);background:var(--oxblood);color:var(--paper);position:relative;overflow:hidden}.about-diamond{color:#e8e4da1c;width:min(86vw,1200px);height:min(86vw,1200px);position:absolute;top:-40%;right:-22vw}.about-content{grid-template-columns:1.05fr .75fr;gap:clamp(70px,11vw,180px);display:grid;position:relative}.about-content .eyebrow{color:#eadba5;margin-bottom:clamp(38px,5vw,70px)}.about-copy{align-self:end}.about-copy>p{color:#f1eee6c7;font-size:clamp(1rem,1.35vw,1.17rem);line-height:1.75}.about-copy>p+p{margin-top:30px}.about-copy .about-signoff{color:#eadba5;letter-spacing:.01em;font-size:clamp(.9rem,1.15vw,1.05rem);font-weight:650;line-height:1.55}.area-list{flex-wrap:wrap;gap:9px;margin-top:48px;display:flex}.area-list span{letter-spacing:.08em;text-transform:uppercase;border:1px solid #f1eee652;border-radius:999px;padding:9px 14px;font-size:.65rem}.faq-section{grid-template-columns:.75fr 1.25fr;gap:clamp(70px,11vw,180px);display:grid}.faq-heading .eyebrow{margin-bottom:34px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;letter-spacing:-.025em;grid-template-columns:1fr 44px;align-items:center;gap:24px;min-height:90px;font-size:clamp(1.05rem,1.7vw,1.5rem);font-weight:500;list-style:none;display:grid}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{border:1px solid var(--line);width:38px;height:38px;color:var(--brass-pale);border-radius:50%;place-items:center;transition:transform .22s;display:grid}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details>p{max-width:690px;color:var(--stone);margin:-5px 70px 36px 0;font-size:.96rem;line-height:1.75}.contact-section{border-top:1px solid var(--line);grid-template-columns:.72fr 1.28fr;gap:clamp(70px,10vw,160px);display:grid}.contact-heading .eyebrow{margin-bottom:clamp(38px,5vw,70px)}.contact-heading>p:last-child{max-width:510px;color:var(--stone);margin-top:42px;line-height:1.75}.inquiry-form{align-self:start}.form-help{color:var(--stone);margin:0 0 24px;font-size:.76rem}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.field-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field{margin-bottom:25px;position:relative}.field label{color:var(--stone);letter-spacing:.11em;text-transform:uppercase;margin-bottom:9px;font-size:.7rem;font-weight:650;display:block}.field label span{color:var(--stone-dark);text-transform:none}.field input,.field select,.field textarea{border:1px solid var(--line);width:100%;min-height:54px;color:var(--limestone);background:0 0;border-radius:0;outline:none;padding:13px 14px;transition:border-color .2s,background-color .2s}.field textarea{resize:vertical;min-height:144px}.field select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-color:var(--ink)}.field input::placeholder,.field textarea::placeholder{color:var(--stone-dark)}.field input:hover,.field select:hover,.field textarea:hover,.field input:focus,.field select:focus,.field textarea:focus{background:#e8e4da06;border-color:#e8e4da94}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--brass-pale);outline-offset:2px}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-submit-row{align-items:center;gap:24px;margin-top:10px;display:flex}.form-submit-row button{cursor:pointer;background:var(--limestone);min-width:220px;min-height:54px;color:var(--ink);border:0;border-radius:999px;justify-content:space-between;align-items:center;gap:30px;padding:13px 22px;font-size:.76rem;font-weight:700;transition:background-color .2s,opacity .2s;display:inline-flex}.form-submit-row button:hover{background:var(--brass-pale)}.form-submit-row button:disabled{cursor:wait;opacity:.6}.form-submit-row p{max-width:300px;color:var(--stone-dark);margin:0;font-size:.72rem;line-height:1.55}.form-submit-row p a{color:var(--stone);text-underline-offset:3px;text-decoration:underline}.form-submit-row p a:hover{color:var(--limestone)}.form-status{min-height:26px;margin:22px 0 0;font-size:.82rem}.form-status.success{color:#c8d2aa}.form-status.error{color:#e9afa8}.site-footer{width:var(--shell);border-top:1px solid var(--line);margin-inline:auto;padding-block:clamp(72px,7vw,104px) 30px}.footer-lead{justify-content:space-between;align-items:flex-start;gap:50px;display:flex}.footer-brand{align-items:center;display:inline-flex}.footer-logo{width:clamp(220px,22vw,320px);height:auto;display:block}.footer-lead>p{color:var(--brass-pale);letter-spacing:-.035em;text-align:right;word-spacing:.05em;margin:0;font-size:clamp(1.4rem,3vw,3rem);line-height:1.05}.footer-grid{grid-template-columns:1fr 1fr 1fr;gap:40px;width:63%;margin:clamp(62px,7vw,100px) 0 clamp(62px,7vw,100px) auto;display:grid}.footer-grid>div{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.footer-label{color:var(--stone-dark);letter-spacing:.13em;text-transform:uppercase;margin-bottom:8px;font-size:.68rem;font-weight:650}.footer-grid a,.footer-grid p{color:var(--stone);margin:0;font-size:.8rem;line-height:1.6;transition:color .2s}.footer-grid a{min-height:30px}.footer-grid a:hover{color:var(--limestone)}.footer-bottom{border-top:1px solid var(--line);color:var(--stone-dark);letter-spacing:.08em;text-transform:uppercase;grid-template-columns:1fr auto 1fr;gap:20px;padding-top:24px;font-size:.7rem;display:grid}.footer-bottom span:last-child{text-align:right}@keyframes rise-in{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-image-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.service-page{background:var(--paper);color:var(--ink)}.service-hero{background:var(--ink);min-height:92svh;color:var(--limestone);position:relative;overflow:hidden}.service-hero-image{object-fit:cover;object-position:center;opacity:.48}.service-hero:after{content:"";background:linear-gradient(90deg,#11120fe0,#11120f59 70%),linear-gradient(#0000 40%,#11120fb8);position:absolute;inset:0}.service-hero-inner{z-index:1;flex-direction:column;justify-content:flex-end;min-height:92svh;padding:170px 0 clamp(70px,9vw,120px);display:flex;position:relative}.service-breadcrumb{color:var(--stone);align-items:center;gap:12px;margin-bottom:clamp(34px,5vw,64px);font-size:.7rem;display:flex}.service-breadcrumb a{min-height:36px;padding-block:7px}.service-hero h1{max-width:1100px;color:var(--limestone)}.service-hero-summary{color:#e8e4dac7;max-width:650px;margin:clamp(36px,5vw,58px) 0 0 auto;font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.6}.service-content{padding-block:clamp(84px,7vw,108px)}.service-answer{border-top:1px solid var(--line-dark);grid-template-columns:.46fr 1.54fr;gap:clamp(44px,7vw,110px);padding-top:clamp(40px,4.5vw,66px);display:grid}.service-rail{flex-direction:column;justify-content:space-between;min-height:100%;display:flex}.service-rail dl{margin:90px 0 0}.service-rail dl>div{border-top:1px solid var(--line-dark);grid-template-columns:74px 1fr;gap:14px;padding-block:13px;display:grid}.service-rail dl>div:last-child{border-bottom:1px solid var(--line-dark)}.service-rail dt{color:var(--oxblood);letter-spacing:.11em;text-transform:uppercase;font-size:.68rem;font-weight:700}.service-rail dd{color:#55564f;margin:0;font-size:.72rem}.service-answer .eyebrow,.service-scope .eyebrow,.service-questions .eyebrow{color:var(--oxblood)}.service-answer-body>p:first-child{letter-spacing:-.035em;font-size:clamp(1.35rem,2.15vw,2.1rem);line-height:1.45}.service-answer-body>p:not(:first-child){color:#55564f;max-width:720px;line-height:1.75}.service-scope{grid-template-columns:.46fr 1.54fr;gap:clamp(44px,7vw,110px);margin-top:clamp(82px,8vw,124px);display:grid}.scope-list{border-top:1px solid var(--line-dark)}.scope-list li{border-bottom:1px solid var(--line-dark);grid-template-columns:42px 1fr;padding-block:25px;font-size:clamp(1rem,1.7vw,1.35rem);list-style:none;display:grid}.scope-list{counter-reset:scope;margin:0;padding:0}.scope-list li:before{color:var(--oxblood);content:counter(scope, decimal-leading-zero);counter-increment:scope;letter-spacing:.12em;font-size:.68rem}.service-questions{grid-template-columns:.46fr 1.54fr;gap:clamp(44px,7vw,110px);margin-top:clamp(82px,8vw,124px);display:grid}.service-question-list article{border-top:1px solid var(--line-dark);padding-block:30px 42px}.service-question-list h2{max-width:720px;font-size:clamp(1.5rem,2.8vw,2.8rem);line-height:1.06}.service-question-list p{color:#55564f;max-width:720px;margin:22px 0 0;line-height:1.75}.service-cta{background:var(--oxblood);color:var(--paper);padding-block:clamp(82px,7vw,104px)}.service-cta-inner{justify-content:space-between;align-items:flex-end;gap:50px;display:flex}.service-cta h2{letter-spacing:-.055em;word-spacing:.065em;max-width:900px;margin:0;font-size:clamp(3rem,6vw,7rem);font-weight:430;line-height:.94}.privacy-page{min-height:80svh;padding:180px 0 var(--section-space)}.privacy-page h1{letter-spacing:-.055em;word-spacing:.06em;margin:0 0 70px;font-size:clamp(3rem,7vw,7rem);font-weight:430;line-height:.95}.privacy-content{max-width:780px;color:var(--stone);margin-left:auto;line-height:1.75}.privacy-content h2{color:var(--limestone);margin:42px 0 12px;font-size:1.35rem}.not-found-page{grid-template-columns:minmax(140px,.42fr) minmax(0,1.58fr);align-content:center;column-gap:clamp(36px,8vw,130px);min-height:78svh;padding-block:150px 90px;display:grid}.not-found-page>.eyebrow{grid-column:1;align-self:start;padding-top:.65em}.not-found-page>h1,.not-found-content{grid-column:2}.not-found-page>h1{margin-bottom:clamp(34px,4vw,54px)}.not-found-content{width:100%;margin-left:0}.not-found-content .text-link{margin-top:18px}@media (max-width:1040px){.site-header{grid-template-columns:1fr auto}.desktop-nav,.header-cta{display:none}.mobile-menu{justify-self:end;display:block;position:relative}.mobile-menu summary{cursor:pointer;border:1px solid #e8e4da66;border-radius:999px;place-items:center;min-width:70px;min-height:44px;font-size:.69rem;font-weight:650;list-style:none;display:grid}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{border:1px solid var(--line);background:#11120ffa;flex-direction:column;width:min(300px,100vw - 40px);padding:14px;display:flex;position:absolute;top:56px;right:0;box-shadow:0 24px 80px #00000059}.mobile-menu nav a{border-bottom:1px solid var(--line);min-height:48px;padding:13px 10px;font-size:.82rem}.mobile-menu nav a:last-child{border:1px solid var(--brass);text-align:center;border-radius:999px;margin-top:12px}.intro-grid,.work-heading,.approach-section,.about-content,.faq-section,.contact-section,.service-answer,.service-scope,.service-questions{grid-template-columns:1fr}.answer-block,.work-heading-aside,.about-copy,.faq-list,.inquiry-form,.service-answer-body,.service-rail,.scope-list,.service-question-list{width:min(100%,760px);margin-left:auto}.service-rail dl{grid-template-columns:repeat(3,1fr);margin-top:34px;display:grid}.service-rail dl>div{border-bottom:1px solid var(--line-dark);grid-template-columns:1fr}.service-rail dl>div+div{border-left:1px solid var(--line-dark);padding-left:20px}.approach-intro{position:static}.footer-grid{width:80%}}@media (max-width:760px){:root{--shell:calc(100vw - 40px);--section-space:72px}.site-header{min-height:78px}.intro-grid{margin-top:54px}.principles-strip{grid-template-columns:1fr;margin-top:62px}.principles-strip article{grid-template-columns:88px 1fr;align-items:start;column-gap:12px;min-height:0;padding:22px 0 24px;display:grid}.principles-strip article+article{border-top:1px solid var(--line);border-left:0}.principles-strip article:after,.principles-strip article:first-child:after{left:0}.principles-strip h3{margin:0 0 8px;font-size:1.05rem}.principles-strip p{grid-column:2;font-size:.76rem}.intro-section{padding-bottom:62px}.services-section{padding-top:0}.intro-grid h2,.section-heading-row h2,.work-heading h2,.approach-intro h2,.about-content h2,.faq-heading h2,.contact-heading h2,.service-hero h1,.service-content h2{font-size:clamp(2.85rem,13vw,4.6rem)}.section-heading-row{grid-template-columns:1fr;gap:45px}.service-list{margin-top:54px}.service-row{grid-template-columns:44px 1fr 48px;grid-template-areas:"number title arrow"".copy copy";gap:12px;padding-block:27px}.service-number{grid-area:number;align-self:center}.service-row h3{grid-area:title}.service-row p{grid-area:copy;padding-right:12px}.round-arrow{grid-area:arrow;place-self:center end;width:44px;height:44px}.gallery-card,.gallery-card-portrait{flex-basis:82vw}.work-gallery[data-scroll-driven=true] .gallery-card{flex-basis:min(82vw,80svh - 192px)}.gallery-card:nth-child(2n){padding-top:0}.gallery-image-wrap,.gallery-card-portrait .gallery-image-wrap{aspect-ratio:4/5}.gallery-toolbar>span{max-width:150px}.gallery-toolbar>span>span[aria-hidden]{display:none}.gallery-scroll-hint{display:block}.local-section{grid-template-columns:1fr}.local-copy h2{font-size:clamp(2.6rem,10.5vw,4.6rem)}.project-meta{flex-direction:column;gap:7px}.process-list article{grid-template-columns:42px 1fr}.process-list p{grid-column:2}.about-diamond{width:150vw;height:150vw;top:-5%;right:-70vw}.faq-list summary{min-height:84px}.field-row{grid-template-columns:1fr;gap:0}.form-submit-row{flex-direction:column;align-items:flex-start}.form-submit-row button{width:100%}.footer-lead{flex-direction:column}.footer-lead>p{text-align:left}.footer-grid{grid-template-columns:1fr 1fr;width:100%;margin-left:0}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid a{align-items:center;min-height:44px;display:inline-flex}.footer-bottom{grid-template-columns:1fr 1fr}.footer-bottom a{align-items:center;min-height:44px;display:inline-flex}.footer-bottom span:last-child{text-align:left;grid-column:1/-1}.service-hero,.service-hero-inner{min-height:84svh}.service-hero-inner{padding-top:130px}.service-hero-summary{margin-left:0}.service-cta-inner{flex-direction:column;align-items:flex-start}.service-rail dl{grid-template-columns:1fr;margin-top:28px}.service-rail dl>div+div{border-left:0;padding-left:0}.not-found-page{grid-template-columns:1fr;align-content:center;row-gap:22px;min-height:76svh;padding-block:126px 74px}.not-found-page>.eyebrow,.not-found-page>h1,.not-found-content{grid-column:1}.not-found-page>.eyebrow{padding-top:0}.not-found-page>h1{margin-bottom:8px}}@media (min-width:761px) and (max-width:1100px){.hero-copy{width:62%}.hero h1{font-size:clamp(4.4rem,7.8vw,5.8rem)}.hero-figure{width:54%}.hero-description{max-width:300px;font-size:.86rem}.hero-actions{gap:20px}.hero-actions .button{gap:24px}.hero-figure figcaption>span:first-child{max-width:130px}.hero-services{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 20px;padding-block:18px}.hero-services>a{padding-left:20px;font-size:.74rem}.hero-services>a:nth-child(3n+1){border-left:0;padding-left:0}}@media (max-width:760px){.hero-main{flex-direction:column;align-items:stretch;min-height:0;padding-block:126px 0}.hero-copy{width:100%}.hero-eyebrow{letter-spacing:.13em;margin-bottom:28px;font-size:.59rem}.hero h1{font-size:clamp(3.65rem,12.2vw,5.8rem)}.hero h1>em{font-size:1.3em}.hero-description{max-width:360px;margin-top:24px;font-size:.9rem;line-height:1.75}.hero-actions{flex-wrap:wrap;gap:12px 26px;margin-top:26px}.hero-actions .button{gap:28px;min-height:52px}.hero-figure{width:100%;height:clamp(280px,62vw,440px);margin-top:38px;position:relative;top:auto;bottom:auto;right:auto}.hero-image{object-position:65% center}.hero-image-shade{background:linear-gradient(#0000 65%,#090e11c2)}.hero-figure figcaption{gap:16px;bottom:18px;left:18px;right:18px}.hero-figure figcaption>span:first-child{max-width:150px;font-size:.69rem}.hero-figure figcaption>span:last-child{max-width:112px;font-size:.57rem}.hero-scroll{display:none}.hero-services{border-top:0;grid-template-columns:1fr;gap:0;min-height:0;padding-block:12px 26px}.hero-services>a{border-bottom:1px solid var(--line);border-left:0;min-height:58px;padding:12px 0;font-size:.85rem}}@media (max-width:360px){.hero h1{font-size:3.15rem}.hero-actions{gap:12px 18px}.hero-actions .button{gap:20px;padding-inline:16px}}@media (prefers-reduced-motion:reduce){body{--hero-entrance-delay:0s!important}.brand-intro{display:none}html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-play-state:running!important;animation-delay:0s!important}}.desktop-nav a[aria-current],nav[aria-label=Mobile\ navigation] a[aria-current]{color:var(--gold-highlight)}[data-reveal-state]{transition:opacity .42s ease, transform .48s var(--ease-out)}[data-reveal-state=pending]{opacity:0;transform:translateY(16px)}[data-reveal-state=visible],[data-reveal-state=pending]:focus-within{opacity:1;transform:none}@media (prefers-reduced-motion:reduce),print{[data-reveal-state]{opacity:1;transition:none;transform:none}}
