@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#1b1b1a;background:#ecebe7;font-size:16px;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}button,a{font:inherit}a{color:inherit}button{color:inherit}.skip-link{position:absolute;z-index:20;left:1rem;top:-5rem;background:#1b1b1a;color:white;padding:.75rem}.skip-link:focus{top:1rem}.site-header{height:94px;padding:0 3.4vw;display:flex;align-items:center;gap:5vw;border-bottom:1px solid #b9b8b2}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;white-space:nowrap}.brand-mark{font-family:Manrope,sans-serif;font-size:2.15rem;font-weight:800;letter-spacing:-.12em;line-height:1}.brand-dot{color:#a64d35;letter-spacing:0}.brand-sub{font-size:.69rem;font-weight:700;line-height:1.13;letter-spacing:.11em}.nav{display:flex;gap:2.3rem;margin-left:auto}.nav a,.site-footer a{text-decoration:none}.nav a{font-size:.88rem;font-weight:600}.nav a:hover,.site-footer a:hover{text-decoration:underline;text-underline-offset:.35em}.header-loc{font-size:.65rem;letter-spacing:.08em;color:#666;margin-left:3vw;white-space:nowrap}.intro{min-height:390px;padding:34px 3.4vw 34px;display:flex;flex-direction:column;justify-content:space-between}.intro-meta,.intro-bottom,.section-head,.card-info,.site-footer{display:flex;justify-content:space-between;align-items:center}.intro-meta{font-size:.69rem;letter-spacing:.1em;font-weight:700}.intro h1{font-family:Manrope,Arial,sans-serif;font-weight:600;letter-spacing:-.08em;line-height:1.06;font-size:clamp(3.1rem,7.2vw,8.5rem);margin:2rem 0}.intro h1 em{font-style:normal;color:#8b8b84}.intro-bottom p{margin:0;color:#555;font-size:.96rem}.text-link{font-weight:700;text-decoration:none;border-bottom:1px solid #1b1b1a;padding-bottom:6px}.text-link span{margin-left:2rem}.work{padding:0 3.4vw 8vw}.section-head{padding:20px 0 17px;border-top:1px solid #1b1b1a;font-size:.7rem;letter-spacing:.08em;font-weight:700;text-transform:uppercase}.section-head h2{font:inherit;margin:0}.count{color:#8a8a84}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.project-card{border:0;background:transparent;padding:0;text-align:left;cursor:pointer;min-width:0}.card-health{grid-column:span 2}.card-image{display:block;position:relative;overflow:hidden;background:#cecfc8;aspect-ratio:1.56}.card-health .card-image{aspect-ratio:2.18}.card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s ease;filter:saturate(.8)}.project-card:hover img,.project-card:focus-visible img{transform:scale(1.035)}.image-note{position:absolute;bottom:14px;left:16px;background:#ecebe7e6;padding:6px 8px;font-size:.59rem;font-weight:700;letter-spacing:.08em}.card-info{align-items:start;gap:18px;border-top:1px solid #1b1b1a;padding:15px 0 24px}.card-number{font-size:.7rem;white-space:nowrap}.card-copy{flex:1}.card-copy strong{display:block;font-family:Manrope,sans-serif;font-size:clamp(1.15rem,2vw,1.95rem);font-weight:600;letter-spacing:-.035em;line-height:1.12}.card-copy small{display:block;margin-top:7px;font-size:.82rem;color:#666}.card-arrow{font-size:1.5rem;line-height:1}.approach,.about,.contact{display:grid;grid-template-columns:35% 65%;padding:5.7vw 3.4vw 8vw;border-top:1px solid #1b1b1a}.eyebrow{font-size:.7rem;letter-spacing:.12em;font-weight:700}.approach h2,.about h2,.contact h2{font:600 clamp(2.5rem,5.2vw,6.3rem)/1.1 Manrope,Arial,sans-serif;letter-spacing:-.07em;margin:0 0 3rem}.approach p,.about p{font-size:clamp(1rem,1.6vw,1.4rem);line-height:1.55;max-width:760px;margin:0 0 2rem}.service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:4rem;max-width:760px}.service-list span{padding:1.1rem 0;border-top:1px solid #aaa;font-size:.95rem;font-weight:600}.service-list span:nth-child(odd){margin-right:2rem}.about{background:#d9d8d2}.about h2{margin-bottom:2rem}.contact{background:#222320;color:#f0eee8;min-height:500px}.contact-email{display:inline-flex;gap:3rem;font:500 clamp(1.2rem,2.65vw,2.7rem) Manrope,sans-serif;letter-spacing:-.04em;text-decoration:none;border-bottom:1px solid #f0eee8;padding-bottom:.8rem;overflow-wrap:anywhere}.contact-email:hover{color:#c8b7a6}.contact p{margin-top:3rem;color:#c1c0b9}.site-footer{padding:1.6rem 3.4vw;font-size:.71rem;font-weight:700;letter-spacing:.07em;gap:1rem}.project-dialog{width:min(100%,1000px);max-height:100dvh;border:0;padding:0;background:#ecebe7;color:#1b1b1a;box-shadow:0 15px 50px #0005}.project-dialog::backdrop{background:#171717ad}.dialog-inner{padding:7rem clamp(20px,7vw,85px) 5rem}.dialog-close{position:sticky;z-index:2;top:16px;float:right;margin:18px 18px -60px 0;padding:.6rem .8rem;border:1px solid #222;background:#ecebe7;cursor:pointer;font-size:.8rem}.dialog-close span{font-size:1.2rem;padding-left:2rem}.dialog-kicker{font-size:.72rem;letter-spacing:.1em;font-weight:700}.dialog-inner h2{font:600 clamp(2.5rem,5vw,5.5rem)/1.08 Manrope,sans-serif;letter-spacing:-.065em;margin:1.5rem 0}.dialog-location{color:#666}.dialog-inner img{width:100%;aspect-ratio:1.7;object-fit:cover;margin-top:2rem}.dialog-image-note{font-size:.76rem;color:#555;margin:.5rem 0 3rem}.dialog-description{font-size:1.2rem;line-height:1.6;max-width:700px}.dialog-facts{border-top:1px solid #aaa;margin-top:3rem}.dialog-facts div{display:grid;grid-template-columns:32% 68%;gap:1rem;padding:1rem 0;border-bottom:1px solid #aaa}.dialog-facts dt{color:#666}.dialog-facts dd{margin:0;font-weight:600}a:focus-visible,button:focus-visible{outline:2px solid #a64d35;outline-offset:4px}@media(max-width:760px){.site-header{height:76px;padding:0 5vw;gap:0;flex-wrap:wrap}.brand-mark{font-size:1.8rem}.brand-sub{font-size:.55rem}.nav{gap:1rem;margin-left:auto}.nav a{font-size:.72rem}.nav a:nth-child(2),.nav a:nth-child(3){display:none}.header-loc{display:none}.intro{min-height:340px;padding:24px 5vw}.intro-meta span:last-child{display:none}.intro h1{font-size:clamp(2.55rem,10vw,5.4rem)}.intro-bottom{align-items:end;gap:1rem}.intro-bottom p{max-width:50%;font-size:.8rem}.text-link{font-size:.78rem;white-space:nowrap}.text-link span{margin-left:.4rem}.work{padding:0 5vw 5rem}.project-grid{display:block}.project-card{width:100%;margin-bottom:1.5rem}.card-health .card-image,.card-image{aspect-ratio:1.18}.card-info{gap:.7rem}.card-number{font-size:.62rem}.card-copy strong{font-size:1.2rem}.card-copy small{font-size:.72rem}.approach,.about,.contact{display:block;padding:3rem 5vw 5rem}.eyebrow{margin-bottom:4rem}.approach h2,.about h2,.contact h2{font-size:clamp(2.7rem,9vw,4.5rem)}.service-list{margin-top:3rem}.service-list span{font-size:.77rem}.contact{min-height:420px}.contact-email{font-size:1.16rem;gap:.5rem}.site-footer{padding:1.4rem 5vw;font-size:.62rem}.site-footer span:last-child{display:none}.dialog-inner{padding:6rem 5vw 3rem}.dialog-facts div{grid-template-columns:1fr;gap:.25rem}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.card-image img{transition:none}}
