@font-face{font-family:Barlow;src:url('fonts/Barlow-Regular.woff2') format('woff2'),url('fonts/Barlow-Regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Barlow;src:url('fonts/Barlow-SemiBold.woff2') format('woff2'),url('fonts/Barlow-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:BarlowCondensed;src:url('fonts/BarlowCondensed-Black.woff2') format('woff2'),url('fonts/BarlowCondensed-Black.ttf') format('truetype');font-weight:900;font-display:swap}@font-face{font-family:BarlowCondensed;src:url('fonts/BarlowCondensed-Bold.woff2') format('woff2'),url('fonts/BarlowCondensed-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--orange:#f7941d;--ink:#262626;--sand:#e8dece;--silver:#bebebe;--white:#fff;--gutter:clamp(24px,5vw,80px);--rule:#26262630;--display:BarlowCondensed,Impact,sans-serif;--body:Barlow,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--sand);color:var(--ink);font:17px/1.65 var(--body);-webkit-font-smoothing:antialiased}body.menu-open,body.gallery-open{overflow:hidden}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-family:var(--display);line-height:.98;font-weight:900;letter-spacing:-.012em;text-transform:uppercase}h2{font-size:clamp(56px,6.25vw,88px)}h3{font-size:30px}p+p{margin-top:20px}a{color:inherit;text-underline-offset:5px}img{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:6px}input:focus,textarea:focus,select:focus{outline:2px solid var(--ink);outline-offset:2px}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}.wrap{width:calc(100% - var(--gutter)*2);max-width:1280px;margin-inline:auto}.section-space{padding-block:112px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:64px}.section-heading>p{max-width:365px;font-size:18px;line-height:1.65}.lead{font-size:24px;line-height:1.4}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:56px;padding:16px 24px;border:1px solid transparent;font-size:15px;font-weight:600;line-height:1.4;text-decoration:none;border-radius:0;transition:background .18s,color .18s}.button>span{font-size:24px;line-height:1;font-weight:400}.button-orange{background:var(--orange);color:var(--ink)}.button-orange:hover{background:#ffab43}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:#454545}.button-outline{border-color:#ffffff65;background:transparent;color:#fff}.button-outline:hover{background:#fff;color:var(--ink)}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;text-decoration:none;border-bottom:1px solid currentColor;padding-block:8px;font-weight:600;font-size:15px}.text-link>span{font-size:20px}.skip-link{position:fixed;left:20px;top:-90px;padding:14px 20px;background:#fff;z-index:1000}.skip-link:focus{top:10px}.brand-logo{display:block;width:226px;position:relative;overflow:hidden}.brand-logo img{position:absolute;max-width:none}.brand-logo.dark{mix-blend-mode:multiply}.brand-logo.light img{filter:url('#logo-white-filter')}.svg-filters{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;color:#fff;transition:background .2s}.site-header.is-scrolled,.site-header.menu-active{background:var(--ink)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:110px;border-bottom:1px solid #ffffff35;gap:40px}.site-header.is-scrolled .nav-wrap{min-height:82px;border-color:transparent}.header-brand{flex-shrink:0}.main-nav{display:flex;align-items:center;gap:39px;font-size:15px}.main-nav a{text-decoration:none;white-space:nowrap}.main-nav a:hover{text-decoration:underline}.main-nav .nav-cta{padding:13px 20px;border:1px solid #ffffff70;display:flex;align-items:center;gap:38px;margin-left:15px}.nav-cta span{font-size:21px}.menu-toggle{display:none}
.hero{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:var(--ink);min-height:850px;height:min(100svh,1000px)}.hero-image,.hero-shade{position:absolute;inset:0;z-index:-2}.hero-image img{height:100%;width:100%;object-fit:cover;object-position:60% 49%}.hero-shade{z-index:-1;background:linear-gradient(90deg,#1a1918ed,#1a19188a 37%,#1a191805 75%),linear-gradient(0deg,#1a1918f5,transparent 68%,#1a191873)}.hero-inner{height:100%;min-height:inherit;position:relative;display:flex;align-items:center;padding-top:132px;padding-bottom:143px}.hero-copy{max-width:780px}.hero-location{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;display:flex;align-items:center;gap:16px;margin-bottom:28px}.hero-location:before{content:'';width:38px;height:5px;background:var(--orange)}.hero h1{font-size:clamp(102px,9.2vw,140px);line-height:.95;color:var(--orange)}.hero-intro{max-width:425px;font-size:18px;line-height:1.65;margin-top:31px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:30px}.hero-phone{font-size:14px;text-decoration:none;border-bottom:1px solid #ffffff90;padding-bottom:4px}.hero-signoff{position:absolute;right:0;bottom:147px;font:700 30px/1 var(--display);text-transform:uppercase;color:var(--orange)}.hero-bottom{position:absolute;left:0;right:0;bottom:31px;border-top:1px solid #f7941d85;padding-top:22px;display:flex;align-items:center;justify-content:space-between;font-size:12px}.hero-bottom a{display:flex;align-items:center;gap:30px;text-decoration:none}.hero-bottom a span{display:grid;place-items:center;border:1px solid #ffffff70;border-radius:50%;width:35px;height:35px;font-size:19px}.service-line{background:var(--orange);padding-block:25px}.service-line>.wrap{display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:15px}.service-line span:first-child{font:700 30px/1 var(--display);text-transform:uppercase}.service-line i{font-style:normal;opacity:.5;padding-inline:20px}
.intro{background:var(--sand)}.intro-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:100px}.intro h2{font-size:clamp(58px,5.3vw,78px);max-width:520px}.intro-copy{padding-top:4px}.intro-copy>p:not(.lead){margin-top:26px;max-width:565px;color:#514e48}.working-values{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:44px;border-top:1px solid var(--rule);padding-top:25px}.working-values h3{font-size:24px;font-weight:700}.working-values p{font-size:15px;line-height:1.6;margin-top:10px;color:#514e48}.services{background:#fff}.services-layout{display:grid;grid-template-columns:1fr 1.12fr;gap:70px;align-items:start}.service-photo{position:sticky;top:115px}.service-photo img{width:100%;height:575px;object-fit:cover;object-position:50% 45%}.service-photo figcaption{font-size:12px;margin-top:15px;color:#656565}.service-item{border-top:1px solid var(--rule)}.service-item:last-child{border-bottom:1px solid var(--rule)}.service-item summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:25px 0;cursor:pointer}.service-item summary::-webkit-details-marker{display:none}.service-item h3{font-size:32px;font-weight:700;line-height:1.05}.expand-mark{width:24px;height:24px;position:relative;flex-shrink:0}.expand-mark:before,.expand-mark:after{content:'';position:absolute;background:var(--ink);width:15px;height:2px;left:4px;top:11px}.expand-mark:after{transform:rotate(90deg)}details[open] .expand-mark:after{transform:rotate(0)}.service-body{padding:0 35px 28px 0}.service-body p{color:#5f5f5f;font-size:17px;line-height:1.7;max-width:490px}.service-body .text-link{font-size:14px;margin-top:19px;max-width:100%}
.projects{background:var(--ink);color:#fff;padding-bottom:96px}.projects .section-heading>p{color:#d2d0ca}.project-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:42px 28px}.project-card{grid-column:span 2;min-width:0}.project-card:first-child{grid-column:span 4}.project-card:nth-child(2){grid-column:span 2}.project-card a{display:block;position:relative;overflow:hidden;background:#393939}.project-card img{width:100%;height:320px;object-fit:cover;transition:transform .3s}.project-card:nth-child(-n+2) img{height:445px}.project-card a:hover img{transform:scale(1.025)}.image-open{position:absolute;right:16px;bottom:16px;width:38px;height:38px;display:grid;place-items:center;background:var(--orange);color:var(--ink);font-size:21px}.project-card figcaption{display:flex;flex-direction:column;gap:8px;margin-top:20px}.project-card h3{font-size:24px;font-weight:700;line-height:1.1}.project-card figcaption>span{font-size:12px;color:var(--silver)}.gallery-action{display:flex;justify-content:center;margin-top:55px}.process{background:var(--orange);position:relative;isolation:isolate;overflow:hidden}.process:before{content:'';position:absolute;inset:0;z-index:-1;background:url('brand/linework-orange.webp') right center/cover no-repeat;opacity:.45}.process h2{font-size:clamp(82px,9vw,125px);line-height:.92}.process-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:77px}.process-steps article{border-top:1px solid #26262670;padding-top:25px}.step-number{font:600 13px/1 var(--body)}.process-steps h3{font-size:35px;margin-top:30px}.process-steps p{font-size:17px;line-height:1.65;max-width:320px;margin-top:17px}
.about{background:var(--sand)}.about-grid{display:grid;grid-template-columns:.95fr 1fr;gap:100px;align-items:center}.about h2{font-size:clamp(60px,5.7vw,80px)}.about-copy>.lead{margin-top:35px;line-height:1.5;font-size:23px}.about-copy>p:not(.lead){margin-top:22px;color:#514e48;max-width:520px}.about-copy .text-link{margin-top:28px}.team-photo img{width:100%;height:605px;object-fit:cover;object-position:50% 43%}.team-photo figcaption{display:flex;justify-content:space-between;margin-top:16px;font-size:12px;color:#605b54}.testimonials{background:white}.reviews-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:100px}.reviews-heading h2{font-size:58px}.reviews-heading .text-link{font-size:14px;margin-top:28px}.review{position:relative;padding-top:13px}.quote-symbol{font:900 115px/.65 var(--display);display:block;height:68px;color:var(--orange)}.review blockquote{font-size:26px;line-height:1.45;letter-spacing:-.01em;min-height:188px}.review-bottom{border-top:1px solid var(--rule);padding-top:27px;margin-top:34px;display:flex;justify-content:space-between;align-items:center;gap:20px}.review-bottom>p{font-weight:600;font-size:15px}.review-controls{display:flex;align-items:center;gap:12px}.review-controls>span{font-size:12px;margin-right:15px;color:#666}.review-controls button{background:transparent;border:1px solid #26262650;width:44px;height:44px;font-size:22px}.review-controls button:hover{background:var(--orange)}
.contact{background:var(--ink);color:white}.contact-layout{display:grid;grid-template-columns:.87fr 1.13fr;gap:95px;align-items:start}.contact-copy{position:sticky;top:120px}.contact h2{color:var(--orange);font-size:clamp(72px,7vw,98px)}.contact-copy>.lead{font-size:24px;line-height:1.4;margin-top:30px}.contact-copy>p:not(.lead){font-size:17px;color:#d1d0cd;max-width:355px;margin-top:22px}.contact-direct{border-top:1px solid #ffffff35;padding-top:27px;margin-top:39px}.contact-direct>a:not(.contact-email){display:flex;justify-content:space-between;align-items:center;max-width:345px;text-decoration:none;margin-bottom:16px}.contact-direct>a>span{font-size:14px;color:var(--silver)}.contact-direct>a>strong{font-weight:400;font-size:24px}.contact-direct .contact-email{font-size:15px;overflow-wrap:anywhere;display:inline-block;margin-top:16px}.contact-direct>p{font-size:13px;line-height:1.8;color:var(--silver);margin-top:24px}.contact-copy p.contact-signoff{font:700 36px/1 var(--display);text-transform:uppercase;color:var(--orange);margin-top:40px}
.project-form{background:white;color:var(--ink);padding:42px 44px;min-height:640px}.form-heading{display:flex;justify-content:space-between;align-items:center;gap:22px}.form-heading>p{font-size:12px;color:#666}.form-step-count{font-size:12px;white-space:nowrap}.form-step-count b{font-weight:600}.form-progress{list-style:none;display:flex;gap:15px;margin:26px 0 39px;padding:0}.form-progress li{flex:1;border-top:3px solid #dedbd4;padding-top:11px;font-size:12px;color:#73716d}.form-progress li.active{border-color:var(--orange);color:var(--ink);font-weight:600}.form-progress li.complete{border-color:var(--ink)}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font:700 31px/1 var(--display);text-transform:uppercase;letter-spacing:-.01em;padding:0;margin:0 0 27px;float:left;width:100%}fieldset>*:nth-child(2){clear:both}.field{margin-bottom:24px;min-width:0}.field label{display:block;font-size:14px;font-weight:600;line-height:1.5;margin-bottom:9px}.field label span{font-weight:400;color:#75716b}.field input,.field select,.field textarea{display:block;width:100%;background:#f7f6f3;border:1px solid #d4d1cc;border-radius:0;color:var(--ink);min-height:50px;padding:12px 14px;font-size:16px;line-height:1.45;box-shadow:none;max-width:100%}.field select{padding-right:32px}.field textarea{resize:vertical;min-height:112px}.field input::placeholder,.field textarea::placeholder{color:#807c77}.field-help{font-size:12px;line-height:1.6;color:#69655e;margin-top:10px}.conditional-fields{background:#f2eee6;padding:22px;margin:5px 0 25px;border-left:3px solid var(--orange)}.conditional-fields .field:last-child{margin-bottom:0}.conditional-fields .field input,.conditional-fields .field select{background:#fff}.field-intro{font-size:15px;line-height:1.65;color:#62605b;margin-bottom:24px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.appointment-types{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:29px}.appointment-types label{display:flex;align-items:start;gap:10px;border:1px solid #d4d1cc;padding:16px 13px;cursor:pointer;line-height:1.5}.appointment-types label:has(input:checked){border-color:var(--ink);background:#f1eadf}.appointment-types input{accent-color:var(--ink);margin-top:5px;width:15px;height:15px;flex-shrink:0}.appointment-types span{font-size:14px;font-weight:600}.appointment-types small{display:block;font-size:11px;font-weight:400;color:#656058;margin-top:4px}.request-review{background:#f7f6f3;padding:18px;margin-top:22px;font-size:12px;line-height:1.65;overflow-wrap:anywhere}.request-review b{font-weight:600;display:block}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:30px}.form-actions>.button{margin-left:auto;min-width:195px;font-size:14px}.form-back{border:0;background:none;padding:13px 0;font-size:14px;display:flex;gap:10px}.form-smallprint{font-size:11px;color:#76716a;line-height:1.5;margin-top:20px}.form-status{font-size:14px;line-height:1.6;margin-top:20px}.form-status:empty{display:none}.form-status.error{color:#9c301b}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.site-footer{background:var(--orange);color:var(--ink);padding-top:64px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-bottom:57px}.footer-brand .brand-logo{width:300px}.footer-top>p{font-size:17px;line-height:1.5}.back-top{text-decoration:none;font-size:13px;display:flex;gap:30px;align-items:center}.back-top span{font-size:22px}.footer-bottom{border-top:1px solid #2626264d;display:flex;justify-content:space-between;gap:30px;align-items:center;padding-block:24px;font-size:11px}.footer-bottom nav{display:flex;gap:25px}.footer-bottom nav a{text-decoration:none}.gallery-dialog{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:85px 90px 70px;border:none;background:#191919;color:#fff}.gallery-dialog::backdrop{background:#191919}.gallery-dialog[open]{display:flex;flex-direction:column}.gallery-dialog figure{min-height:0;flex:1;display:flex;align-items:center;justify-content:center;flex-direction:column}.gallery-dialog figure img{max-height:calc(100svh - 220px);width:auto;max-width:100%;object-fit:contain}.gallery-dialog figcaption{font-size:14px;margin-top:18px;text-align:center}.dialog-close{position:absolute;right:35px;top:25px;background:none;border:0;color:white;font-size:14px;display:flex;gap:18px;align-items:center;min-height:44px}.dialog-close span{font-size:30px}.dialog-controls{display:flex;gap:30px;align-items:center;justify-content:center;padding-top:22px;font-size:12px}.dialog-controls button{width:44px;height:44px;border:1px solid #ffffff75;background:none;color:white;font-size:24px}.dialog-controls button:hover{background:var(--orange);color:var(--ink)}
.thanks-page{background:var(--ink);color:#fff}.thanks-header{padding-block:35px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #ffffff30}.thanks-header>a:last-child{font-size:14px;text-decoration:none}.thanks-main{padding-block:100px 110px;position:relative}.thanks-main h1{font-size:clamp(80px,10vw,140px);color:var(--orange)}.thanks-check{display:grid;place-items:center;width:50px;height:50px;border:1px solid #f7941d99;color:var(--orange);font-size:28px;margin-bottom:30px}.thanks-main .lead{margin-top:30px}.thanks-main>p:not(.lead){max-width:500px;color:#d3d1ce;margin-top:20px}.thanks-main>.button{margin-top:32px}.thanks-main>p.thanks-phone{font-size:14px;margin-top:30px}.thanks-summary{margin-top:25px;border:1px solid #ffffff40;padding:20px 24px;max-width:520px;font-size:15px}
@media(min-width:1800px){.hero h1{font-size:148px}.hero-image img{object-position:center 53%}}
@media(max-width:1100px){.section-space{padding-block:88px}.intro-grid,.about-grid,.reviews-layout,.contact-layout{gap:55px}.services-layout{gap:40px}.main-nav{gap:25px}.main-nav .nav-cta{margin-left:0;gap:25px}.brand-logo{width:200px}.hero h1{font-size:110px}.hero-signoff{font-size:25px}.project-form{padding:34px 30px}.contact-layout{grid-template-columns:.85fr 1.15fr}.contact-direct>a>strong{font-size:21px}.contact-direct .contact-email{font-size:13px}.project-card:nth-child(-n+2) img{height:375px}.project-card img{height:260px}.process-steps{gap:35px}.team-photo img{height:530px}.reviews-layout{grid-template-columns:.8fr 1.2fr}.review blockquote{font-size:23px}.reviews-heading h2{font-size:50px}}
@media(max-width:900px){.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ink);padding:20px var(--gutter) 35px;max-height:calc(100svh - 95px);overflow:auto}.main-nav.open{display:flex;align-items:stretch;flex-direction:column;gap:0}.main-nav>a{padding-block:16px;border-top:1px solid #ffffff30;font-size:23px}.main-nav .nav-cta{margin-top:17px;padding:17px 20px;font-size:18px;background:var(--orange);color:var(--ink);border:none}.menu-toggle{display:flex;align-items:center;gap:12px;border:none;background:none;color:#fff;padding:10px 0 10px 15px;font-size:13px;min-height:44px}.menu-toggle i{width:20px;height:8px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.menu-toggle[aria-expanded=true] i{height:0;border-bottom:0;transform:rotate(45deg);position:relative}.menu-toggle[aria-expanded=true] i:after{content:'';position:absolute;top:-1px;left:0;width:20px;height:1px;background:currentColor;transform:rotate(90deg)}.nav-wrap{min-height:94px}.site-header.is-scrolled .nav-wrap{min-height:78px}.hero{min-height:800px}.hero-inner{padding-top:120px;padding-bottom:150px}.hero-copy{max-width:650px}.hero h1{font-size:112px}.hero-signoff{display:none}.intro-grid{grid-template-columns:1fr 1fr;gap:40px}.intro h2{font-size:60px}.lead{font-size:22px}.working-values{grid-template-columns:1fr;gap:22px;margin-top:30px}.services-layout{grid-template-columns:.85fr 1.15fr;gap:30px}.service-item h3{font-size:28px}.service-photo img{height:510px}.about-grid{gap:45px}.team-photo img{height:560px}.contact-layout{grid-template-columns:1fr;gap:48px}.contact-copy{position:static;display:grid;grid-template-columns:1fr 1fr;column-gap:50px}.contact-copy h2{grid-row:1/3}.contact-copy>.lead{margin-top:0}.contact-copy>p:not(.lead){margin-top:22px}.contact-direct{grid-column:1/3;display:flex;flex-wrap:wrap;gap:15px 30px;align-items:center;padding-top:25px;margin-top:30px}.contact-direct>a:not(.contact-email){width:calc(50% - 15px);max-width:none;margin-bottom:0;gap:20px}.contact-direct .contact-email{margin:0;font-size:15px}.contact-direct>p{margin:0 0 0 auto;font-size:12px}.contact-copy p.contact-signoff{display:none}.project-form{padding:40px;max-width:750px;width:100%;margin:auto;min-height:0}.footer-top>p{font-size:15px}.footer-brand .brand-logo{width:240px}.footer-bottom>span:last-child{display:none}.reviews-layout{grid-template-columns:1fr;gap:38px}.reviews-heading{display:flex;align-items:end;justify-content:space-between;gap:35px}.review blockquote{font-size:26px;min-height:140px}.quote-symbol{height:62px}.hero-shade{background:linear-gradient(90deg,#1a1918e0,#1a191840 85%),linear-gradient(0deg,#1a1918ef,transparent 70%,#1a191859)}}
@media(max-width:640px){:root{--gutter:24px}html{scroll-padding-top:98px}.section-space{padding-block:72px}h2{font-size:57px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{font-size:17px;margin-top:24px;max-width:350px}.brand-logo{width:185px}.nav-wrap{min-height:88px}.site-header.is-scrolled .nav-wrap{min-height:76px}.hero{height:auto;min-height:844px}.hero-image{bottom:auto;height:740px}.hero-image img{object-position:62% top}.hero-shade{background:linear-gradient(0deg,#1c1b19 0%,#1c1b19ed 17%,#1c1b19b0 45%,#1c1b1912 75%,#1c1b1990)}.hero-inner{min-height:844px;display:block;height:auto;padding-top:337px;padding-bottom:132px}.hero-location{font-size:8px;letter-spacing:.12em;gap:10px;line-height:1.5;margin-bottom:18px}.hero-location:before{width:27px;height:4px}.hero h1{font-size:clamp(60px,19vw,100px);line-height:.95}.hero-intro{font-size:17px;line-height:1.6;margin-top:24px;max-width:365px}.hero-actions{gap:21px;margin-top:25px;flex-wrap:wrap}.hero-actions .button{width:100%;font-size:14px;min-height:54px;padding:15px 19px}.hero-phone{font-size:13px}.hero-bottom{bottom:26px;padding-top:17px;font-size:9px;gap:20px}.hero-bottom>span{max-width:145px;line-height:1.55}.hero-bottom a{gap:14px;font-size:10px}.hero-bottom a span{width:29px;height:29px;font-size:16px}.service-line{padding-block:22px}.service-line>.wrap{display:block;font-size:12px}.service-line span:first-child{font-size:28px;display:block;margin-bottom:12px}.service-line i{padding-inline:13px}.intro-grid{grid-template-columns:1fr;gap:35px}.intro h2{font-size:58px}.intro .lead{font-size:22px;line-height:1.45}.intro-copy>p:not(.lead){font-size:17px;margin-top:22px}.working-values{grid-template-columns:1fr 1fr;gap:24px;padding-top:23px;margin-top:32px}.working-values h3{font-size:25px;line-height:1.05}.working-values p{font-size:14px;line-height:1.6}.services-layout{grid-template-columns:1fr;gap:28px}.service-photo{position:static}.service-photo img{height:345px;object-position:center 35%}.service-photo figcaption{font-size:11px}.service-item summary{padding:23px 0}.service-item h3{font-size:30px}.service-body{padding-right:12px}.service-body .text-link{font-size:13px;gap:14px}.project-grid{grid-template-columns:1fr 1fr;gap:30px 18px}.project-card,.project-card:first-child,.project-card:nth-child(2){grid-column:span 1}.project-card:first-child{grid-column:1/3}.project-card:nth-child(-n+2) img,.project-card img{height:223px}.project-card:first-child img{height:310px}.project-card h3{font-size:23px;line-height:1.02}.project-card figcaption{margin-top:16px;gap:8px}.project-card figcaption>span{font-size:10px;line-height:1.4}.image-open{width:31px;height:31px;right:10px;bottom:10px;font-size:18px}.gallery-action{margin-top:37px}.process h2{font-size:80px}.process:before{background-position:60% top;opacity:.32}.process-steps{grid-template-columns:1fr;gap:28px;margin-top:44px}.process-steps article{display:grid;grid-template-columns:30px 1fr;gap:14px 20px;padding-top:24px}.step-number{padding-top:6px}.process-steps h3{font-size:33px;margin-top:0}.process-steps p{grid-column:2;max-width:none;margin-top:0;font-size:16px}.about-grid{grid-template-columns:1fr;gap:37px}.about h2{font-size:60px}.about-copy>.lead{font-size:23px;margin-top:28px}.about-copy .text-link{font-size:14px}.team-photo img{height:420px;object-position:50% 38%}.team-photo figcaption{font-size:11px}.reviews-heading{display:block}.reviews-heading h2{font-size:54px}.reviews-heading .text-link{margin-top:22px;font-size:13px}.reviews-layout{gap:36px}.review blockquote{font-size:23px;line-height:1.5;min-height:290px}.review-bottom{margin-top:27px;padding-top:22px}.review-controls{gap:8px}.review-controls>span{margin-right:6px;font-size:10px}.review-bottom>p{font-size:14px}.contact-layout{gap:37px}.contact-copy{display:block}.contact h2{font-size:78px}.contact-copy>.lead{font-size:23px;margin-top:28px}.contact-copy>p:not(.lead){font-size:16px;max-width:none}.contact-direct{display:block;margin-top:31px;padding-top:25px}.contact-direct>a:not(.contact-email){width:100%;max-width:340px;margin-bottom:17px}.contact-direct>a>strong{font-size:24px}.contact-direct .contact-email{font-size:14px;margin-top:9px}.contact-direct>p{font-size:12px;margin-top:19px}.project-form{padding:27px 23px;margin-inline:-4px;width:calc(100% + 8px)}.form-heading{display:block}.form-heading>p{margin-top:7px;font-size:12px}.form-progress{gap:12px;margin:22px 0 30px}.form-progress li{font-size:11px;padding-top:10px}legend{font-size:29px;margin-bottom:23px}.field label{font-size:13px}.field{margin-bottom:22px}.field input,.field select,.field textarea{font-size:16px;padding:12px 11px}.conditional-fields{padding:17px 14px}.field-help{font-size:12px}.field-pair{grid-template-columns:1fr;gap:0}.appointment-types{gap:9px}.appointment-types label{padding:13px 9px;gap:7px}.appointment-types span{font-size:12px}.appointment-types small{font-size:10px}.appointment-types input{width:14px;height:14px}.form-actions{gap:15px;margin-top:25px}.form-actions>.button{min-width:160px;padding:15px 17px;gap:21px;font-size:13px}.form-back{font-size:13px;gap:7px}.form-smallprint{font-size:10px}.site-footer{padding-top:44px}.footer-top{display:grid;grid-template-columns:1fr auto;gap:27px 20px;padding-bottom:32px}.footer-brand{grid-column:1/3}.footer-brand .brand-logo{width:265px}.footer-top>p{font-size:14px}.back-top{font-size:11px;gap:15px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:17px;padding-block:23px;font-size:10px}.footer-bottom nav{gap:24px;font-size:12px}.gallery-dialog{padding:85px 18px 27px}.gallery-dialog figure img{max-height:calc(100svh - 210px)}.gallery-dialog figcaption{font-size:12px;line-height:1.6}.dialog-close{right:24px;top:19px}.dialog-controls{padding-top:20px}.thanks-header{padding-block:26px;align-items:start}.thanks-header>a:last-child{font-size:11px;max-width:80px;line-height:1.5;text-align:right}.thanks-header .brand-logo{width:183px}.thanks-main{padding-block:67px 78px}.thanks-main h1{font-size:90px}.thanks-main>.lead{font-size:24px}.thanks-main>p:not(.lead){font-size:16px}.thanks-main>.button{font-size:13px;gap:25px}}
@media(max-width:360px){:root{--gutter:20px}.brand-logo{width:175px}.hero h1{font-size:19vw}.hero-inner{padding-top:304px;padding-bottom:130px}.hero-intro{font-size:16px}.contact h2{font-size:69px}.project-form{padding:25px 19px}.appointment-types{grid-template-columns:1fr}.form-actions>.button{min-width:145px}.working-values{grid-template-columns:1fr}.hero-location{font-size:7px}.team-photo img{height:375px}.footer-brand .brand-logo{width:245px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.project-card a:hover img{transform:none}}
.project-form{scroll-margin-top:108px}legend:focus{outline:none}

.project-card img.client-deck-photo{object-position:50% 62%}

/* A quiet photographic pause between the work and the process. */
.home-breather{position:relative;isolation:isolate;overflow:hidden;background:var(--ink);color:var(--white)}
.breather-image{position:absolute;inset:0;z-index:-2}
.breather-image img{width:100%;height:100%;object-fit:cover;object-position:50% 58%}
.home-breather:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#262626c9 0%,#2626264d 32%,#26262600 68%)}
.breather-content{min-height:clamp(540px,45vw,720px);display:flex;align-items:flex-start;justify-content:flex-end;flex-direction:column;padding-block:80px}
.breather-content h2{font-size:clamp(54px,5vw,72px);line-height:1.03;max-width:100%;text-wrap:balance}
@media(max-width:640px){.breather-content{min-height:540px;padding-block:48px}.breather-image img{object-position:62% center}.breather-content h2{font-size:54px}}

.service-links{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px 24px}
