*{box-sizing:border-box}body{margin:0;background:#f9f9f7;color:#242424;font:16px/1.8 "Helvetica Neue",Arial,sans-serif}a{color:inherit;text-underline-offset:5px}nav{padding:22px 6%;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #ddd}nav a{text-decoration:none;font-size:12px}nav img{width:88px;height:64px}.navlinks{display:flex;gap:25px;align-items:center}.btn{display:inline-block;padding:13px 22px;border:1px solid #292929;text-decoration:none;font-size:11px;letter-spacing:1px;text-transform:uppercase}.solid{background:#242424;color:white}header{padding:90px 8% 55px;max-width:1120px}h1,h2,h3{font-weight:300;line-height:1.12;letter-spacing:-1.5px}h1{font-size:clamp(42px,6vw,80px);margin:20px 0 30px}h2{font-size:clamp(30px,4vw,48px)}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:2px;color:#777}.lead{font-size:20px;max-width:750px;color:#62615d}.hero-image{margin:0 6% 65px}.hero-image img{width:100%;max-height:650px;object-fit:contain;background:#eeeae3}figcaption{font-size:12px;color:#6b6963;padding-top:12px;line-height:1.6}.prose{max-width:800px;margin:0 auto;padding:0 25px 65px}.prose p{color:#595954}.gallery{padding:0 6% 70px;display:grid;grid-template-columns:1fr 1fr;gap:45px 28px}figure{margin:0}.gallery img{width:100%;height:390px;object-fit:cover}.timeline{border-left:1px solid #b7b0a5;padding-left:28px}.timeline p{padding-bottom:15px}.next{background:#eeeee9;padding:65px 8%;display:flex;justify-content:space-between;align-items:center;gap:35px}.sources{font-size:12px;border-top:1px solid #ccc;padding-top:25px}.sources a{display:inline-block;margin:0 16px 10px 0}footer{padding:35px 6%;font-size:11px;display:flex;justify-content:space-between;gap:20px}a:focus-visible{outline:3px solid #9b7950;outline-offset:5px}@media(max-width:700px){nav{align-items:flex-start}.navlinks{flex-wrap:wrap;justify-content:flex-end;gap:12px}nav .btn{padding:8px 12px}header{padding:50px 7% 35px}.lead{font-size:17px}.gallery{grid-template-columns:1fr;gap:30px}.gallery img{height:auto;max-height:500px}.next{display:block}.next .btn{margin:10px 0}.hero-image{margin-bottom:40px}.prose{padding-bottom:40px}footer{flex-wrap:wrap}}
.gallery img{height:auto;max-height:650px;object-fit:contain;background:#eeeee9}.gallery figure{align-self:start}.design-credit{padding:30px 0 45px;border-bottom:1px solid #ddd;margin-bottom:45px}.prose a{overflow-wrap:anywhere}

.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px;overflow:visible;margin:0;padding-bottom:65px}.gallery figure{min-width:0}.gallery img{width:100%;height:300px;object-fit:contain;background:#eeeee9}.gallery a{display:block;cursor:zoom-in}.photo-viewer{border:0;padding:16px;background:#f9f9f7;width:min(1100px,94vw);max-height:94vh}.photo-viewer::backdrop{background:rgba(0,0,0,.85)}.photo-viewer img{display:block;width:100%;height:auto;max-height:75vh;object-fit:contain}.photo-viewer button{display:block;margin:0 0 12px auto;padding:10px 18px;cursor:pointer}.photo-viewer p{margin:12px 0 0;font-size:13px}@media(max-width:1000px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.gallery{grid-template-columns:1fr}.gallery img{height:auto;max-height:520px}}

.story-photo{margin:32px 0 46px}.story-photo img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;background:#eeeee9}.story-photo figure{max-width:100%}header+.story-photo{margin:0 8% 60px;max-width:1100px}.story-photo a{cursor:zoom-in}.project-timeline{margin-bottom:45px}.design-credit h3{margin-top:42px}

nav{position:sticky;top:0;z-index:100;background:#f9f9f7;padding-top:12px;padding-bottom:12px;box-shadow:0 1px 0 #ddd}.estate-home-link{display:flex;align-items:center;gap:18px;white-space:nowrap}.estate-home-link span{font-size:13px;text-decoration:underline}nav .navlinks{gap:20px}@media(max-width:700px){nav{padding:10px 5%;align-items:center;gap:10px}.estate-home-link{flex-direction:column;gap:2px}.estate-home-link img{width:60px;height:42px}.estate-home-link span{font-size:11px}.navlinks{gap:9px}.navlinks>a:not(.btn){font-size:11px}nav .btn{font-size:9px;padding:10px}.navlinks{max-width:210px}}
