:root{--ink:#202622;--paper:#f5f3ec;--sand:#e6d8be;--rust:#9b553c;--muted:#676d64;--line:#d9dcd1;--white:#fff;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #ba6c37;outline-offset:5px}.skip{position:absolute;z-index:20;left:10px;top:-60px;padding:15px;background:white}.skip:focus{top:10px}.site-header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:flex;gap:13px;align-items:center;font-size:24px;font-weight:800;letter-spacing:.07em}.brand small{display:block;font-size:9px;letter-spacing:.22em;margin-top:5px}.brand-mark{display:grid;grid-template-columns:18px 18px;gap:3px;transform:skewY(-7deg)}.brand-mark i{height:12px;background:var(--rust)}.brand-mark i:nth-child(2),.brand-mark i:nth-child(3){background:var(--ink)}nav{display:flex;align-items:center;gap:32px;font-size:13px}nav a:hover,nav a[aria-current]{color:var(--rust)}nav .nav-contact{border:1px solid var(--ink);padding:14px 19px;font-weight:700;margin-left:15px}.nav-contact span{margin-left:20px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:46% 54%;min-height:690px}.hero-copy{background:var(--ink);color:var(--paper);padding:70px 10.8% 35px;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.19em;line-height:1.6;color:var(--rust);margin:0 0 25px}.eyebrow.light{color:var(--sand)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(48px,5.8vw,88px);line-height:1.01;font-weight:500;letter-spacing:-.055em;margin-bottom:30px}h1 em,h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.05em}h2{font-size:clamp(36px,4vw,60px);line-height:1.08;font-weight:500;letter-spacing:-.05em;margin-bottom:25px}.hero-description{color:#d6d8cf;font-size:16px;line-height:1.7;max-width:330px}.hero-actions{display:flex;flex-wrap:wrap;gap:23px;align-items:center;margin-top:17px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;font-size:12px;font-weight:700;padding:19px 24px;transition:background .15s,color .15s}.cream{background:var(--sand);color:var(--ink)}.cream:hover{background:#fff}.text-link{font-size:12px;font-weight:600;border-bottom:1px solid #697068;padding-bottom:8px;display:inline-flex;gap:22px}.hero-note{font-size:9px;letter-spacing:.11em;color:#b5bcad;margin:40px 0 0;padding-top:20px;border-top:1px solid #41493f;width:100%}.hero-image{position:relative;min-height:690px;overflow:hidden}.hero-image img{object-position:63% center}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 60%,#121e17a6)}.photo-note{position:absolute;bottom:35px;left:35px;color:#fff;z-index:1}.photo-note span{font-size:8px;letter-spacing:.17em;display:block;margin-bottom:9px}.photo-note strong{font-family:var(--serif);font-weight:400;font-size:23px}.intro-strip{padding:28px 5%;display:flex;gap:45px;align-items:center;border-bottom:1px solid var(--line)}.intro-strip>span{font-size:9px;letter-spacing:.13em;font-weight:700;color:var(--rust)}.intro-strip p{margin:0;font-family:var(--serif);font-size:20px}.intro-strip>a{margin-left:auto;font-size:25px}.section{padding:100px 6%}.section-heading{max-width:600px;margin-bottom:45px}.section-heading>p:last-child{max-width:430px;color:var(--muted);line-height:1.8;font-size:14px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.service-grid article{padding:35px 35px 0 0;display:flex;flex-direction:column}.service-grid article+article{padding-left:35px;border-left:1px solid var(--line)}.service-number{font-size:9px;letter-spacing:.15em;color:var(--rust);font-weight:700;margin-bottom:36px}h3{font-size:30px;line-height:1.15;font-weight:500;letter-spacing:-.03em;margin-bottom:18px}.service-grid p{font-size:13px;color:var(--muted);line-height:1.8;max-width:275px;margin-bottom:30px}.service-detail{font-size:9px;line-height:1.8;letter-spacing:.04em;margin-top:auto}.work-section{background:#eaece4}.horizontal{max-width:none;display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.horizontal h2{margin:0}.outline{border:1px solid #aaaFA1;white-space:nowrap}.outline:hover{background:var(--ink);color:white}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.project-tile{display:block}.project-tile img{aspect-ratio:1.18;height:auto;transition:filter .2s}.project-tile:hover img{filter:brightness(.9)}.project-tile>span{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.02em;margin-top:13px}.project-tile b{font-size:17px;font-weight:400}.about-section{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding:110px 6%}.about-photo{position:relative}.about-photo img{aspect-ratio:4/5;object-position:center}.image-tag{position:absolute;bottom:22px;left:22px;background:var(--paper);padding:14px;font-size:8px;letter-spacing:.15em}.about-copy{max-width:460px}.about-copy p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted)}.about-copy .text-link{margin-top:20px}.contact-section{background:var(--ink);color:var(--paper);padding:85px 6%;display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.contact-section h2{font-size:clamp(36px,4.5vw,66px)}.contact-section p:not(.eyebrow){font-size:13px;color:#b9c0b3}.contact-details>a:not(.facebook-contact){position:relative;display:block;padding:28px 30px 28px 0;border-top:1px solid #51594e}.contact-details span{font-size:9px;letter-spacing:.15em;color:var(--sand);display:block;margin-bottom:16px}.contact-details strong{font-weight:400;font-size:clamp(22px,3vw,38px);letter-spacing:-.02em}.contact-details strong.email{font-size:clamp(13px,1.45vw,20px);overflow-wrap:anywhere}.contact-details b{position:absolute;right:0;top:48px;font-size:25px;font-weight:400}.facebook-contact{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #51594e;padding-top:25px;font-size:12px}.facebook-contact span{margin:0;font-size:22px}footer{padding:40px 6% 24px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.footer-brand{font-size:16px;font-weight:700}footer>p{font-family:var(--serif);font-style:italic;color:var(--muted);margin:0;text-align:right}footer>div{display:flex;gap:22px;font-size:11px}footer .credit{font-family:Arial,sans-serif;font-style:normal;font-size:9px;grid-column:1/-1;border-top:1px solid var(--line);padding-top:25px;margin-top:10px;text-align:left}footer .credit a{text-decoration:underline}.gallery-intro h1{font-size:clamp(42px,5vw,76px);margin-bottom:25px}.gallery-intro>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.8}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;margin:50px 0 30px;gap:20px;border-bottom:1px solid var(--line);padding-bottom:20px}.filters{display:flex;flex-wrap:wrap;gap:8px}.filters button{background:transparent;border:1px solid var(--line);padding:11px 15px;color:var(--ink);font-size:11px}.filters button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.filters span{opacity:.6;margin-left:10px;font-size:9px}#gallery-count{font-size:10px;color:var(--muted);margin:0;white-space:nowrap}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-tile{padding:0;border:0;background:#dce0d6;aspect-ratio:1;position:relative;overflow:hidden}.gallery-tile img{transition:transform .25s}.gallery-tile:hover img{transform:scale(1.035)}.gallery-tile>span{position:absolute;right:13px;bottom:13px;display:grid;place-items:center;background:var(--paper);width:30px;height:30px}.gallery-tile[hidden]{display:none}.gallery-cta{display:flex;justify-content:space-between;align-items:center;margin-top:70px;padding-top:35px;border-top:1px solid var(--line)}.gallery-cta h2{font-size:32px;margin:0}.charcoal{background:var(--ink);color:white}dialog{border:0;background:#111912f5;color:white;padding:65px 60px 35px;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0}dialog::backdrop{background:#101710}dialog[open]{display:flex;align-items:center;justify-content:center}dialog figure{margin:0;display:flex;flex-direction:column;align-items:center;max-width:100%;height:100%;gap:14px}dialog img{object-fit:contain;max-height:calc(100% - 35px);height:auto;flex:1;min-height:0}dialog figcaption{font-size:12px;color:#dce2d5;text-align:center}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;border:1px solid #697467;color:#fff;background:#202b22;padding:12px}.lightbox-close{right:20px;top:15px;font-size:11px}.lightbox-prev{left:10px;top:50%}.lightbox-next{right:10px;top:50%}body.modal-open{overflow:hidden}@media(min-width:1600px){.hero-copy{padding-top:90px}.hero{min-height:800px}.hero-image{min-height:800px}}@media(max-width:1000px){nav{gap:20px}.site-header{padding:0 4%;height:85px}.brand{font-size:20px}.hero-copy{padding:50px 9% 30px}.hero,.hero-image{min-height:630px}.hero h1{font-size:62px}.hero-actions{gap:22px}.button{padding:17px 18px;gap:20px}.hero-note{font-size:8px}.intro-strip{gap:20px}.intro-strip p{font-size:17px}.section{padding:75px 5%}.service-grid article{padding-right:20px}.service-grid article+article{padding-left:20px}.service-grid h3{font-size:26px}.about-section{padding:80px 5%;gap:7%}.contact-section{padding:70px 5%;gap:7%}}@media(max-width:720px){.site-header{height:80px;position:relative;z-index:5;padding:0 6%}.brand{font-size:20px}.brand small{font-size:8px}.brand-mark{grid-template-columns:15px 15px}.brand-mark i{height:10px}.menu-toggle{display:flex;align-items:center;gap:10px;background:transparent;border:0;padding:10px 0 10px 10px;font-size:11px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--paper);padding:24px 6%;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 12px 15px #0001}nav.is-open{display:flex}nav a{padding:15px 0}nav .nav-contact{margin:12px 0 0}.hero{grid-template-columns:1fr}.hero-copy{padding:50px 7% 30px}.hero h1{font-size:clamp(58px,13vw,86px);line-height:1.02}.hero h1 br:nth-child(2){display:none}.hero-description{max-width:340px;font-size:15px}.hero-actions{gap:25px;width:100%}.hero-note{margin-top:30px;font-size:9px}.hero-image{min-height:390px;height:60vw;max-height:520px}.hero-image img{object-position:60% center}.photo-note{left:25px;bottom:25px}.intro-strip{padding:25px 7%;align-items:flex-start;gap:12px;flex-wrap:wrap}.intro-strip>span{width:100%;font-size:8px}.intro-strip p{font-size:17px;max-width:85%}.intro-strip>a{margin-top:-8px}.section{padding:65px 7%}.eyebrow{font-size:9px;margin-bottom:20px}h2{font-size:38px}.section-heading{margin-bottom:35px}.service-grid{grid-template-columns:1fr}.service-grid article,.service-grid article+article{padding:28px 0;border-left:0;border-bottom:1px solid var(--line)}.service-number{margin-bottom:20px}.service-grid h3{font-size:28px}.service-grid h3 br{display:none}.service-grid p{max-width:100%;margin-bottom:20px}.service-detail{font-size:10px}.horizontal{display:block}.horizontal .button{margin-top:25px}.project-grid{grid-template-columns:repeat(2,1fr);gap:22px 12px}.project-tile>span{font-size:9px;line-height:1.5}.project-tile b{margin-left:5px}.about-section{grid-template-columns:1fr;padding:65px 7%;gap:40px}.about-photo img{aspect-ratio:1.1}.about-copy{max-width:100%}.about-copy h2{font-size:42px}.contact-section{grid-template-columns:1fr;padding:65px 7%;gap:30px}.contact-section h2{font-size:48px}.contact-details strong{font-size:32px}.contact-details strong.email{font-size:16px}.contact-details span{font-size:9px}footer{padding:35px 7% 25px;grid-template-columns:1fr;gap:18px}footer>p{text-align:left;font-size:14px}footer>div{flex-wrap:wrap;gap:20px;font-size:11px}.gallery-intro h1{font-size:43px}.gallery-toolbar{align-items:flex-start;margin-top:30px;flex-direction:column;gap:15px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:12px}.filters button{padding:11px;font-size:10px}.filters span{margin-left:5px}.gallery-cta{align-items:flex-start;gap:20px;flex-direction:column;margin-top:45px}.gallery-cta h2{font-size:30px}dialog{padding:65px 43px 30px}.lightbox-next,.lightbox-prev{padding:10px 8px}.lightbox-next{right:4px}.lightbox-prev{left:4px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.hero-copy{min-width:0}.hero h1{max-width:100%}@media(max-width:720px){.hero{grid-template-columns:minmax(0,1fr)}.hero-image{min-width:0}}
@media(max-width:720px){.hero h1 em{display:block}}
