@font-face{font-family:Barlow;src:url('assets/barlow-condensed-bold.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/manrope-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/manrope-bold.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
:root{--bg:#191a18;--panel:#222320;--ink:#f0eee7;--muted:#acada4;--orange:#f1844e;--line:#3d3e37;--font:Manrope,Arial,sans-serif;--display:Barlow,Impact,'Arial Narrow',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:127px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:18px;line-height:1.65}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}button,a,input,textarea{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--orange);outline-offset:5px}::selection{background:var(--orange);color:var(--bg)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--display);font-weight:700;line-height:.98;letter-spacing:-.02em}h2{font-size:clamp(42px,5.2vw,76px)}em{font-style:normal;color:var(--orange)}.muted{color:#979b91}.eyebrow{font-size:14px;letter-spacing:.15em;font-weight:700;line-height:1.6}.section-number{color:var(--orange);margin-right:14px}.skip-link{position:fixed;top:-100px;left:20px;background:var(--orange);color:var(--bg);padding:12px;z-index:99}.skip-link:focus{top:10px}.site-header{height:103px;padding:0 5.55%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:30}.brand{display:flex;gap:14px;align-items:center;flex-shrink:0}.brand-mark{font-family:var(--display);font-size:46px;line-height:1;letter-spacing:-.05em;color:var(--orange);border:1px solid var(--orange);width:74px;height:58px;display:flex;align-items:center;justify-content:center;padding-bottom:2px}.brand-mark sup{font-size:21px;align-self:flex-start;margin-top:6px;letter-spacing:0}.brand-name{font-size:16px;font-weight:700;line-height:1.15;letter-spacing:.07em}.brand-location{display:block;margin-top:9px;font-size:12px;letter-spacing:.23em;color:#adaea6}.site-header nav{display:flex;align-items:center;gap:29px;font-size:16px;font-weight:700}.site-header nav>a:not(.nav-cta){position:relative;padding:8px 0}.site-header nav>a:not(.nav-cta):after{content:'';position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--orange);transition:width .2s}.site-header nav>a:hover:after,.site-header nav>a[aria-current="location"]:after{width:100%}.site-header nav>a:not(.nav-cta)[aria-current="location"]{color:var(--orange)}.site-header nav>.nav-cta[aria-current="location"]{border-color:var(--orange)}.nav-cta{display:flex;gap:32px;align-items:center;border:1px solid #5b5d54;padding:13px 20px;margin-left:9px}.nav-cta span{font-size:19px;color:var(--orange)}.nav-cta:hover{background:var(--orange);color:var(--bg);border-color:var(--orange)}.nav-cta:hover span{color:var(--bg)}.menu-toggle{display:none;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:48px;padding:0;color:var(--orange);background:none;border:1px solid #51544a;transition:color .2s,border-color .2s}
.menu-toggle:hover,.menu-toggle[aria-expanded="true"]{border-color:var(--orange)}
.menu-lines{position:relative;display:block;width:26px;height:22px}
.menu-lines>span{position:absolute;left:0;top:10px;width:100%;height:2px;border-radius:1px;background:currentColor;transform-origin:center;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .2s}
.menu-lines>span:first-child{transform:translateY(-8px)}
.menu-lines>span:last-child{transform:translateY(8px)}
.menu-toggle[aria-expanded="true"] .menu-lines>span:first-child,.menu-toggle[aria-expanded="true"] .menu-lines>span:last-child{transform:scaleX(0);opacity:0}
/* Overlapping middle strokes rotate apart into the same X used on Ivan's site. */
.menu-toggle[aria-expanded="true"] .menu-lines>span:nth-child(2){transform:rotate(135deg)}
.menu-toggle[aria-expanded="true"] .menu-lines>span:nth-child(3){transform:rotate(225deg)}
.hero{position:relative;min-height:690px;overflow:hidden}.hero-image{position:absolute;inset:0 0 67px 38%;overflow:hidden}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 0%,rgba(25,26,24,.88) 6%,rgba(25,26,24,.24) 32%,rgba(25,26,24,.06) 100%),linear-gradient(0deg,rgba(25,26,24,.5),transparent 40%);pointer-events:none}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:45% center;filter:grayscale(1) brightness(.81)}.hero-copy{position:relative;z-index:1;padding:61px 5.55% 115px;pointer-events:none;max-width:920px}.hero-copy a{pointer-events:auto}.orange-line{height:2px;width:26px;background:var(--orange);display:inline-block;vertical-align:middle;margin-right:12px}.hero-copy .eyebrow{font-size:12px;letter-spacing:.18em}.hero h1{font-size:clamp(85px,8.55vw,130px);line-height:.88;letter-spacing:-.014em;margin-top:28px}.hero-intro{font-size:18px;color:#d2d3cb;line-height:1.65;margin:28px 0 24px}.hero-actions{display:flex;align-items:center;gap:27px}.button{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:16px;font-weight:700;line-height:1.45;padding:18px 22px;border:1px solid transparent;min-height:54px;transition:background .2s,transform .2s}.primary{background:var(--orange);color:#171816}.primary:hover{background:#ffa675;transform:translateY(-2px)}.button span{font-size:21px;line-height:1}.text-link{min-height:44px;font-size:16px;font-weight:700;display:inline-flex;align-items:center;gap:20px;padding:6px 0;background:none;border:0;color:var(--ink)}.text-link span{color:var(--orange);font-size:20px;transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}.photo-label{position:absolute;top:39px;right:7.5%;z-index:1;font-size:12px;letter-spacing:.18em;line-height:1.6;font-weight:700;color:#fff;text-shadow:0 1px 8px #191a18}.crosshair{font-size:23px;vertical-align:middle;color:var(--orange);margin-right:10px;font-weight:400}.photo-label-indent{padding-left:28px}.photo-credit{position:absolute;bottom:24px;right:7.5%;z-index:1;font-size:12px;letter-spacing:.06em;color:#dddcd4;max-width:60%;text-align:right}.hero-foot{height:67px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:absolute;bottom:0;left:0;right:0;padding:0 5.55%;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:700;letter-spacing:.15em}.hero-foot>span:nth-child(2){color:#9a9e94}.hero-foot a{flex-shrink:0;display:flex;align-items:center;gap:17px}.hero-foot a span{font-size:20px;color:var(--orange)}.status-dot{display:inline-block;width:5px;height:5px;background:var(--orange);border-radius:50%;margin:0 8px 1px 0}.section-pad{padding:94px 5.55%}.section-heading>.eyebrow{margin-bottom:28px}.section-heading>div{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.section-heading>div>p{width:292px;color:var(--muted);font-size:16px;line-height:1.9;padding-bottom:5px}.service-grid{margin-top:45px;display:grid;grid-template-columns:1fr 1fr;gap:24px}.service{border:1px solid var(--line);background:#20211e;padding:24px 30px 31px;position:relative;overflow:hidden;transition:background .25s,border-color .25s}.service:hover,.service:focus-visible{background:#282922;border-color:#7f7662}.service-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.service-top>.eyebrow{font-size:12px;color:var(--muted)}.round-arrow{display:flex;justify-content:center;align-items:center;border-radius:50%;border:1px solid #5e6056;width:36px;height:36px;font-size:19px;transition:transform .25s,color .25s,background .25s}.service:hover .round-arrow,.service:focus-visible .round-arrow{transform:rotate(45deg);background:var(--orange);color:var(--bg);border-color:var(--orange)}.building-drawing{height:168px;width:100%;margin:18px auto 23px;stroke:#999e8e;stroke-width:1;transition:transform .4s}.service:hover .building-drawing{transform:scale(1.04)}.drawing-accent{stroke:var(--orange);stroke-width:1.3}.drawing-guide{stroke:#575b4e;stroke-dasharray:3 5;stroke-width:.5}.service-bottom{display:grid;grid-template-columns:1fr;gap:10px 22px}.service-bottom h3{font-size:43px;grid-column:1/-1}.service-bottom p{font-size:16px;color:var(--muted);line-height:1.7}.service-link{align-self:end;margin-top:7px;font-size:12px;font-weight:700;display:flex;gap:15px;align-items:center;white-space:nowrap}.service-link span{font-size:19px;color:var(--orange)}.service-note{display:flex;justify-content:space-between;align-items:center;gap:30px;border-bottom:1px solid var(--line);padding:26px 0}.service-note>span{font-size:12px;letter-spacing:.14em;color:var(--muted);font-weight:700}.service-note p{font-size:16px;color:var(--muted)}.service-note a{color:var(--ink);margin-left:12px}.service-note a span{color:var(--orange);margin-left:10px}.story{background:#22231f;display:grid;grid-template-columns:1fr 1fr;gap:8.3%;align-items:center}.sal-portrait{position:relative;padding-right:26px}.sal-portrait img{width:100%;aspect-ratio: .86;object-fit:cover;object-position:center;filter:saturate(.66);max-height:640px}.sal-portrait figcaption{display:flex;justify-content:space-between;gap:15px;margin-top:17px;font-size:12px;letter-spacing:.12em;font-weight:700}.sal-portrait figcaption span:last-child{color:var(--muted);font-size:12px;align-self:center}.portrait-tag{position:absolute;top:32px;right:0;background:var(--orange);color:var(--bg);font-family:var(--display);font-size:27px;line-height:.98;padding:21px 23px;transform:rotate(3deg);box-shadow:0 3px 12px #0002}.story-copy>.eyebrow{margin-bottom:26px}.story-copy h2{font-size:clamp(46px,5.1vw,74px)}.story-rule{width:43px;height:2px;background:var(--orange);margin:29px 0}.story-copy p{font-size:16px;line-height:1.9;color:var(--muted);max-width:400px}.story-copy p.story-lead{font-size:17px;color:var(--ink);line-height:1.5;margin-bottom:18px}.story-copy p+p{margin-top:16px}.story-copy>.text-link{margin-top:23px}.signature{font-family:Georgia,serif;font-size:27px;font-style:italic;margin-top:32px}.signature>span{display:block;margin-top:5px;font:700 12px/1.6 var(--font);letter-spacing:.2em;color:var(--muted)}.work{border-bottom:1px solid var(--line)}.gallery-awaiting{display:grid;grid-template-columns:1.45fr 1fr;gap:6%;margin-top:44px;background:#21221e;padding:25px}.gallery-illustration{min-height:300px;position:relative;background:linear-gradient(90deg,#33352c44 1px,transparent 1px),linear-gradient(#33352c44 1px,transparent 1px);background-size:28px 28px;border:1px solid #363930;display:flex;align-items:center;justify-content:center;overflow:hidden}.gallery-index,.gallery-coordinate{position:absolute;left:20px;font-size:12px;letter-spacing:.17em;color:#c1c4b7}.gallery-index{top:15px}.gallery-coordinate{bottom:15px}.frame-corner{position:absolute;width:16px;height:16px;border-color:var(--orange);border-style:solid}.frame-corner.a{top:0;left:0;border-width:1px 0 0 1px}.frame-corner.b{top:0;right:0;border-width:1px 1px 0 0}.frame-corner.c{bottom:0;left:0;border-width:0 0 1px 1px}.frame-corner.d{bottom:0;right:0;border-width:0 1px 1px 0}.outline-building{display:flex;align-items:flex-end;width:70%;height:155px;transform:skewY(-9deg);border-bottom:1px solid #9b9d8e;gap:8px}.outline-building>div{width:33.3%;height:85%;border:1px solid #a0a38e;background:repeating-linear-gradient(0deg,transparent 0px,transparent 24px,#707461 25px,transparent 26px),repeating-linear-gradient(90deg,transparent 0px,transparent 25px,#707461 26px,transparent 27px);position:relative}.outline-building>div:nth-child(2){height:110%;border-top-color:var(--orange)}.outline-building>div:nth-child(3){height:62%;border-right-color:var(--orange)}.gallery-message{align-self:center;padding:15px 30px 15px 0}.tiny-tag{display:inline-block;font-size:12px;letter-spacing:.18em;padding:5px 8px;border:1px solid #555c48;color:#bdc0b1;margin-bottom:18px}.gallery-message h3{font-size:41px}.gallery-message p{font-size:16px;line-height:1.85;color:var(--muted);margin:17px 0;max-width:270px}.testimonials{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;border-bottom:1px solid var(--line)}.testimonials .eyebrow{margin-bottom:26px}.testimonials h2{font-size:clamp(42px,4.6vw,67px)}.testimonial-empty{position:relative;border-left:1px solid var(--line);padding:25px 0 25px 51px}.quote-mark{font-family:Georgia,serif;font-size:74px;color:var(--orange);line-height:.7;display:block;height:56px}.testimonial-empty h3{font-family:var(--font);font-size:20px;letter-spacing:-.04em;line-height:1.4}.testimonial-empty p{font-size:16px;color:var(--muted);margin:18px 0 14px;line-height:1.9}.pending-label{display:block;margin-top:20px;font-size:12px;letter-spacing:.13em;color:#a1a494}.contact{display:grid;grid-template-columns:1fr 1fr;gap:8%;position:relative;overflow:hidden;background:#22231f}.contact-copy{position:relative;display:flex;flex-direction:column;align-items:flex-start}.contact-copy>.eyebrow{margin-bottom:27px}.contact-copy h2{font-size:clamp(48px,5.4vw,78px)}.contact-copy>p:not(.eyebrow):not(.contact-next){font-size:16px;line-height:1.85;color:var(--muted);margin:23px 0 36px}.contact-email{font-size:24px;letter-spacing:-.03em;border-bottom:1px solid #76776b;padding-bottom:11px;width:100%;max-width:355px;display:flex;justify-content:space-between}.contact-email span{color:var(--orange)}.contact-details{margin-top:27px;display:flex;flex-wrap:wrap;gap:25px 35px}.contact-details>div{display:flex;flex-direction:column;gap:6px;font-size:14px;color:#dddfd4}.contact-details .eyebrow{font-size:12px;color:var(--muted)}.contact-details small{font-size:12px;color:var(--muted)}.big-watermark{font-family:var(--display);font-size:175px;color:#33362d;line-height:1;letter-spacing:-.045em;margin-top:45px;user-select:none}.project-form{padding:30px;background:#2b2d26;border:1px solid #45483a;align-self:start}.form-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.form-heading>.eyebrow{font-size:12px}.form-heading>span:last-child{color:var(--orange);font-size:23px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}label,legend{font-size:14px;display:block;font-weight:700;margin-bottom:9px}label>span[aria-hidden]{color:var(--orange)}.optional{font-size:12px;font-weight:400;color:#b4b8a9}input,textarea{width:100%;color:var(--ink);background:#24261f;border:1px solid #515443;border-radius:0;padding:13px 12px;font-size:16px;min-width:0;resize:vertical}input::placeholder,textarea::placeholder{color:#b2b5a6;opacity:1}input,textarea{margin-bottom:20px}fieldset{margin:0 0 19px;padding:0;border:0;min-width:0}.project-types{display:flex;flex-wrap:wrap;gap:8px}.project-types label{flex:1 1 90px;cursor:pointer;margin:0}.project-types input{position:absolute;opacity:0;width:1px;height:1px;overflow:hidden;margin:0}.project-types span{display:block;text-align:center;font-size:14px;border:1px solid #515443;padding:11px 8px;color:#c8cbbd;white-space:nowrap}.project-types input:checked+span{border-color:var(--orange);background:#3b3226;color:#ffab7c}.project-types input:focus-visible+span{outline:2px solid var(--orange);outline-offset:3px}.project-form>.button{width:100%;font-size:16px}.form-help{font-size:14px;line-height:1.8;color:#bdc0b1;margin-top:12px}.form-result{margin-top:18px;padding:14px;font-size:16px;background:#35382c;border:1px solid #717a5b;overflow-wrap:anywhere}.form-result p+p{margin-top:9px}.form-result a,.form-result button{border:0;background:none;padding:0;color:#ffab7c;text-decoration:underline;font-size:16px;line-height:1.8;margin-right:12px}.site-footer{padding:51px 5.55% 0;display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;align-items:center}.footer-brand .brand-mark{font-size:38px;width:60px;height:50px}.footer-brand .brand-mark sup{font-size:16px}.footer-brand .brand-name{font-size:16px}.site-footer>p{font-family:var(--display);font-size:24px;line-height:1.15}.site-footer>p span{color:var(--orange)}.site-footer>div:not(.footer-bottom){justify-self:end;display:flex;flex-direction:column;font-size:16px;gap:6px}.site-footer>div>span{color:var(--muted);font-size:14px}.footer-bottom{grid-column:1/-1;flex-wrap:wrap;gap:16px;border-top:1px solid var(--line);margin-top:9px;padding:23px 0;display:flex;justify-content:space-between;font-size:14px;color:var(--muted)}.footer-bottom>span:nth-child(2){font-size:14px;letter-spacing:.14em}.footer-bottom a{font-size:14px;color:var(--ink);letter-spacing:.09em}dialog{max-width:540px;width:calc(100% - 32px);max-height:calc(100dvh - 40px);border:1px solid #656951;background:#25271f;color:var(--ink);padding:38px;overflow-y:auto}dialog::backdrop{background:#111d;backdrop-filter:blur(5px)}.dialog-close{min-width:44px;min-height:44px;position:absolute;top:10px;right:15px;color:var(--ink);font-size:29px;background:none;border:0;padding:0 5px}.dialog-close:hover{color:var(--orange)}dialog>.eyebrow{font-size:12px;color:var(--orange);margin-bottom:19px}dialog h2{font-size:43px}dialog>p:not(.eyebrow){font-size:16px;color:var(--muted);margin:17px 0 24px}.permission{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.6;font-weight:400;color:#c6cabb}.permission input{width:16px;height:16px;margin:2px 0 18px;flex-shrink:0;accent-color:var(--orange)}dialog .button{width:100%;margin-top:12px}
@media(min-width:1600px){.site-header,.hero-copy,.hero-foot,.section-pad,.site-footer{padding-left:max(5.55%,calc((100vw - 1420px)/2));padding-right:max(5.55%,calc((100vw - 1420px)/2))}.hero-copy{max-width:1100px}.hero{min-height:770px}.hero-copy{padding-top:78px;padding-bottom:125px}.hero-image{left:35%}.hero h1{font-size:140px}}
@media(max-width:1100px){.site-header{padding-left:4%;padding-right:4%;gap:18px}.site-header nav{gap:20px;font-size:14px}.brand-mark{width:60px;height:52px;font-size:40px}.brand-name{font-size:16px}.nav-cta{margin-left:0;gap:16px;padding:12px 14px}.hero{min-height:660px}.hero h1{font-size:105px}.hero-copy{padding-top:58px}.section-pad{padding-top:78px;padding-bottom:78px}.service{padding-left:24px;padding-right:24px}.service-bottom{grid-template-columns:1fr}.service-link{margin-top:7px}.story{gap:6%}.story-copy h2{font-size:53px}.story-copy p{font-size:16px}.story-copy p.story-lead{font-size:18px}.story-rule{margin:23px 0}.signature{margin-top:20px}.gallery-message h3{font-size:35px}.contact{gap:5%}.contact h2{font-size:57px}.contact-details{gap:20px}.project-form{padding:23px}.form-row{grid-template-columns:1fr;gap:0}.big-watermark{font-size:140px}.testimonial-empty{padding-left:35px}.testimonials h2{font-size:48px}}
@media(max-width:1000px){.site-header{height:88px;padding:0 6%}.menu-toggle{display:flex}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;max-height:calc(100dvh - 88px);overflow-y:auto;overscroll-behavior:contain;background:#22231f;padding:24px 6%;border-bottom:1px solid var(--line);box-shadow:0 20px 30px #1116;flex-direction:column;align-items:stretch;gap:8px;font-size:16px}.site-header nav.open{display:flex}.site-header nav>a:not(.nav-cta){padding:12px 0}.nav-cta{justify-content:space-between;margin-top:8px;padding:14px}}
@media(max-width:800px){html{scroll-padding-top:112px}.hero{min-height:705px}.hero-copy{padding:51px 6% 100px}.hero h1{font-size:110px}.hero-image{left:26%;bottom:61px}.hero-image:after{background:linear-gradient(90deg,var(--bg) 0%,rgba(25,26,24,.85) 10%,rgba(25,26,24,.13) 100%),linear-gradient(0deg,rgba(25,26,24,.74),transparent 60%)}.hero-image img{object-position:50% center;filter:grayscale(1) brightness(.65)}.hero-copy .eyebrow{font-size:12px}.photo-label{font-size:12px;top:35px;right:8%;opacity:.9}.hero-foot{height:61px;padding:0 6%;font-size:12px}.hero-foot>span:nth-child(2){display:none}.photo-credit{font-size:12px;right:8%;bottom:19px}.section-pad{padding:67px 6%}.section-heading>div{gap:30px}.section-heading h2{font-size:52px}.section-heading>div>p{font-size:16px;max-width:220px}.service-grid{gap:15px;margin-top:32px}.service{padding:18px}.building-drawing{height:136px;margin:20px 0}.service-bottom h3{font-size:35px}.service-top>.eyebrow{font-size:12px}.round-arrow{width:29px;height:29px;font-size:16px;flex-shrink:0}.service-bottom p{font-size:16px}.service-link{font-size:12px;gap:7px}.service-note{align-items:flex-start;gap:20px}.service-note>span{font-size:12px;min-width:120px}.service-note p{font-size:16px}.service-note a{margin:5px 0 0;display:block}.story{gap:5%;align-items:start}.sal-portrait{padding-right:12px}.sal-portrait img{aspect-ratio:.64}.portrait-tag{font-size:20px;top:20px;padding:16px}.sal-portrait figcaption{display:block;font-size:12px}.sal-portrait figcaption span:last-child{display:block;margin-top:3px;font-size:12px}.story-copy>.eyebrow{margin-bottom:21px;font-size:12px}.story-copy h2{font-size:43px}.story-copy p{font-size:16px}.story-copy p.story-lead{font-size:18px}.story-copy>.text-link{font-size:12px;gap:9px;margin-top:19px}.signature{font-size:23px}.gallery-awaiting{grid-template-columns:1.1fr 1fr;gap:6%;padding:19px}.gallery-message{padding-right:0}.gallery-message h3{font-size:31px}.gallery-message p{font-size:16px}.gallery-illustration{min-height:280px}.testimonials{gap:4%}.testimonials h2{font-size:42px}.testimonial-empty{padding-left:24px}.testimonial-empty h3{font-size:17px}.testimonial-empty p{font-size:16px}.pending-label{font-size:12px}.contact{grid-template-columns:1fr;gap:38px}.contact-copy h2{font-size:68px}.contact-copy>p:not(.eyebrow):not(.contact-next){margin:22px 0}.contact-email{font-size:22px;max-width:370px}.contact-details{gap:50px}.big-watermark{position:absolute;right:0;bottom:0;font-size:115px;z-index:0;opacity:.6;pointer-events:none}.contact-details{position:relative;z-index:1}.project-form{padding:30px}.site-footer{padding:39px 6% 0;gap:28px;grid-template-columns:1fr 1fr}.site-footer>div:not(.footer-bottom){grid-column:1/-1;justify-self:start;flex-direction:row;gap:25px}.site-footer>p{font-size:23px;justify-self:end}.footer-bottom{margin-top:0;gap:18px}}
@media(max-width:520px){.hero{min-height:758px}.hero-copy{padding-top:41px;padding-bottom:150px}.hero h1{font-size:99px;margin-top:31px}.hero-intro{font-size:16px;margin-top:27px}.hero-actions{align-items:flex-start;flex-direction:column;gap:15px}.hero-actions .button{font-size:14px;padding:16px 18px;gap:22px}.hero-actions>.text-link{font-size:14px}.hero-image{left:0;bottom:82px}.hero-image img{object-position:53% center;filter:grayscale(1) brightness(.59)}.hero-image:after{background:linear-gradient(90deg,rgba(25,26,24,.95) 0%,rgba(25,26,24,.73) 40%,rgba(25,26,24,.2) 100%),linear-gradient(0deg,rgba(25,26,24,.75),transparent 60%)}.photo-label{display:none}.photo-credit{max-width:80%;font-size:12px;right:6%;bottom:17px}.hero-foot{height:82px;font-size:12px;gap:16px;line-height:1.6}.hero-copy .eyebrow{font-size:12px;letter-spacing:.1em}.orange-line{width:19px;margin-right:9px}.section-heading>.eyebrow{margin-bottom:23px;font-size:12px}.section-heading>div{display:block}.section-heading h2{font-size:50px}.section-heading>div>p{max-width:none;width:auto;margin-top:20px;font-size:16px}.section-heading>div>p br{display:none}.service-grid{grid-template-columns:1fr;gap:17px}.service{padding:22px 25px 27px}.service-top>.eyebrow{font-size:12px}.building-drawing{height:155px;margin:22px 0}.service-bottom h3{font-size:42px}.service-bottom p{font-size:16px}.service-link{font-size:14px;margin-top:12px}.service-note{display:block;padding:22px 0}.service-note p{margin-top:8px;font-size:16px}.service-note a{display:inline-block;margin-left:0}.story{grid-template-columns:1fr;gap:39px}.sal-portrait{padding-right:19px}.sal-portrait img{aspect-ratio:.93;object-position:center 42%}.portrait-tag{font-size:26px;padding:18px;top:27px}.sal-portrait figcaption{display:flex;flex-wrap:wrap;font-size:12px}.sal-portrait figcaption span:last-child{font-size:12px;margin-top:0}.story-copy h2{font-size:55px}.story-copy p{font-size:16px;line-height:1.8}.story-copy p.story-lead{font-size:18px}.story-copy .eyebrow{font-size:12px}.story-copy>.text-link{min-height:44px;font-size:16px;gap:16px;margin-top:24px}.signature{font-size:26px;margin-top:27px}.gallery-awaiting{grid-template-columns:1fr;gap:20px;padding:19px;margin-top:27px}.gallery-illustration{min-height:240px}.gallery-message{padding:6px 3px 15px}.gallery-message h3{font-size:37px}.gallery-message p{font-size:16px;max-width:100%}.tiny-tag{font-size:12px}.testimonials{grid-template-columns:1fr;gap:32px}.testimonials h2{font-size:49px}.testimonials .eyebrow{font-size:12px}.testimonial-empty{padding:28px 0 0;border-left:0;border-top:1px solid var(--line)}.testimonial-empty h3{font-size:20px}.testimonial-empty p{font-size:16px}.pending-label{font-size:12px}.contact-copy>.eyebrow{font-size:12px}.contact-copy h2{font-size:56px}.contact-copy>p:not(.eyebrow):not(.contact-next){font-size:16px}.contact-copy>p>br{display:none}.contact-email{font-size:24px;max-width:none}.contact-details{gap:27px;flex-wrap:wrap}.big-watermark{display:none}.project-form{padding:22px 18px}.form-heading>.eyebrow{font-size:12px}.form-row{grid-template-columns:1fr;gap:0}input,textarea{font-size:16px;padding:12px;margin-bottom:20px}input::placeholder,textarea::placeholder{font-size:16px}label,legend{font-size:16px}.project-types{gap:5px}.project-types span{font-size:14px;padding:11px 5px}.optional{font-size:12px}.form-help{font-size:14px}.site-footer{grid-template-columns:1fr;gap:26px}.site-footer>p{justify-self:start;font-size:28px}.site-footer>div:not(.footer-bottom){font-size:14px;justify-content:space-between;gap:15px;width:100%}.footer-bottom{flex-wrap:wrap;gap:13px}.footer-bottom>span:nth-child(2){display:none}.footer-bottom>span{font-size:14px}dialog{padding:34px 22px 26px}dialog h2{font-size:39px}.permission{font-size:14px}.permission input{width:18px;height:18px;min-width:18px}}
img{height:auto}
.hero-image img{height:100%}
@media(max-width:520px){.hero h1{font-size:clamp(78px,25.4vw,99px)}}
@media(max-width:360px){.site-header{gap:10px}.brand{gap:10px}.site-header .brand-mark{width:50px}.site-header .brand-name{font-size:14px}.site-header .brand-location{letter-spacing:.1em}.project-types{flex-wrap:wrap}.project-types label{flex:1 1 100%}.service{padding-left:20px;padding-right:20px}.service-bottom p br{display:none}.service-link{white-space:normal}.site-footer>div:not(.footer-bottom){flex-wrap:wrap}.hero-actions .button{gap:12px}}
.photo-credit:hover{text-decoration:underline;text-underline-offset:3px}
.photo-story{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:40px;align-items:center;border-top:1px solid var(--line);padding:36px 0 4px;margin-top:8px}
.photo-story-image{display:block;border:1px solid var(--line);overflow:hidden}
.photo-story-image img{width:100%;height:auto;filter:grayscale(1);transition:filter .25s}
.photo-story-image:hover img{filter:grayscale(0)}
.photo-story-copy>.eyebrow{font-size:12px;color:var(--muted);margin-bottom:13px}
.photo-story-copy h2{font-size:38px;margin-bottom:17px}
.photo-story-copy>p:not(.eyebrow){font-size:16px;line-height:1.8;color:var(--muted)}
.photo-story-copy>p.photo-story-credit{font-size:14px;line-height:1.7;margin-top:15px}
.photo-story-copy>.text-link{font-size:14px;margin-top:13px;gap:12px}
.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}
@media(max-width:800px){.photo-story{gap:28px;grid-template-columns:1fr}.photo-story-image{max-width:560px}.photo-story-copy>p{max-width:65ch}}
@media(max-width:520px){.photo-story{padding-top:28px;gap:23px}.photo-story-copy h2{font-size:36px}.photo-story-copy>.text-link{flex-wrap:wrap}}
.form-heading{gap:20px;align-items:flex-start}
.form-heading h3{font-size:29px;line-height:1.1;max-width:340px}
.form-heading p{font-size:14px;line-height:1.7;color:var(--muted);margin-top:12px;font-weight:400}
.form-heading p>span[aria-hidden]{color:var(--orange)}
input:focus,textarea:focus{border-color:var(--orange);background:#20221c}
.project-types span{min-height:48px;display:flex;align-items:center;justify-content:center;white-space:normal}
.optional{font-size:14px}
.contact-next{font-size:16px;line-height:1.8;color:var(--muted);margin-top:36px;padding-top:25px;border-top:1px solid var(--line);width:100%;max-width:400px}
.contact-next .eyebrow{display:block;font-size:12px;color:var(--orange);margin-bottom:9px}
.footer-bottom a{display:inline-flex;align-items:center;min-height:44px}
.footer-bottom{align-items:center;padding-top:12px;padding-bottom:12px}
.photo-credit{min-height:44px;display:flex;align-items:center;justify-content:flex-end}
@media(max-width:1000px){.site-header{box-shadow:0 6px 18px #0002}.menu-toggle{min-width:48px}.site-header nav{padding-top:16px;padding-bottom:20px}}
@media(max-width:800px){.contact{gap:30px}.contact-copy h2{font-size:clamp(48px,8vw,68px)}.contact-next{display:none}.photo-story{padding-top:30px}}
@media(min-width:521px) and (max-width:640px){.service-grid{grid-template-columns:1fr}.service{padding:25px}.service-top>.eyebrow{font-size:12px}.building-drawing{height:160px}.service-bottom h3{font-size:42px}}
@media(max-width:520px){.section-pad{padding-top:56px;padding-bottom:56px}.hero-copy{padding-bottom:162px}.hero-intro{max-width:32ch}.project-form{padding:25px 20px}.form-heading h3{font-size:28px}.contact-copy>p:not(.eyebrow):not(.contact-next){margin-bottom:25px}.gallery-illustration{min-height:205px}.service-note{line-height:1.8}.footer-bottom{row-gap:4px}.form-help{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.form-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.button:disabled{cursor:default;opacity:.75}
.form-result[data-state="success"]{border-color:#8dba82}
.form-result[data-state="error"]{border-color:var(--orange)}

.privacy-page{max-width:1040px;margin:auto;min-height:80vh}.privacy-page h1{font-size:clamp(40px,5.5vw,70px);margin:20px 0}.privacy-page h2{font-size:32px;margin:44px 0 16px}.privacy-page p{max-width:760px;margin-bottom:20px}.privacy-page .privacy-updated{font-size:16px;color:var(--muted)}.privacy-page p a{text-decoration:underline;text-underline-offset:4px}.privacy-page .button{margin-top:30px}.footer-bottom>a{min-height:44px;display:flex;align-items:center}
@media(max-width:520px){body:has(.privacy-page) .site-header{gap:12px}body:has(.privacy-page) .site-header>.text-link{font-size:14px;gap:8px}.privacy-page h2{font-size:28px}.privacy-page .button{font-size:15px;gap:16px}}

picture{display:block}.hero-image picture{height:100%}
.footer-ownership{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.footer-bottom .footer-credit{gap:9px;letter-spacing:0;color:var(--muted)}.footer-credit img{width:32px;height:32px;flex:none}.footer-credit-copy>span{color:var(--orange);white-space:nowrap}.footer-credit:hover .footer-credit-copy>span{text-decoration:underline;text-underline-offset:4px}
@media(max-width:520px){.footer-ownership{flex-basis:100%;margin-bottom:4px}}
