:root{--ink:#253e35;--cream:#f7f5ed;--paper:#fffef9;--lime:#e1edb9;--lilac:#e8e3ee;--muted:#59655b;--line:#cfd3c8;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a,button{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #8b61bb;outline-offset:5px}button:disabled{cursor:default}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:1.06}h2{font-size:clamp(42px,4.5vw,68px)}h3{font-size:35px}em{font-weight:400}p{max-width:65ch}.eyebrow{font-size:11px;letter-spacing:.16em;line-height:1.5;font-weight:700}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;padding:17px 25px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:3px;font-size:14px;font-weight:600;line-height:1.4;transition:background .2s,color .2s,transform .2s}.button span{font-size:21px;line-height:1}.button:hover{background:#3b594b;transform:translateY(-2px)}.button.small{padding:13px 19px;gap:24px}.skip{position:absolute;left:10px;top:-80px;background:var(--ink);color:white;padding:12px;z-index:100}.skip:focus{top:8px}.topline{padding:8px max(5vw,24px);background:var(--ink);color:var(--cream);display:flex;justify-content:space-between;font-size:11px;letter-spacing:.02em}.topline a:hover{text-decoration:underline}.topline a span{padding-left:8px}.header{max-width:1440px;margin:auto;padding:28px 5vw;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:11px}.brand svg{width:31px;height:43px;fill:var(--ink)}.brand strong{display:block;font-family:var(--serif);font-size:31px;font-weight:400;letter-spacing:-.055em;line-height:1.15}.brand small{font-size:7.4px;letter-spacing:.16em;display:block;margin-top:4px}.header nav{display:flex;align-items:center;gap:34px;font-size:13px}.header nav>a:not(.button){border-bottom:1px solid transparent}.header nav>a:not(.button):hover{border-color:var(--ink)}.menu{display:none}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1.04fr;gap:5%;padding:34px 5vw 54px;align-items:center}.hero-copy{padding-bottom:24px}.hero .eyebrow{display:flex;align-items:center;gap:9px}.dot{width:6px;height:6px;background:var(--ink);border-radius:50%}h1{font-size:clamp(52px,6.2vw,91px);margin:24px 0;line-height:1.03;letter-spacing:-.06em}.hero h1 em{color:#617558}.intro{max-width:390px;font-size:16px;color:var(--muted);margin-bottom:27px;line-height:1.75}.hero-note{font-size:11px;margin-top:12px;color:var(--muted)}.hero-facts{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:36px;font-size:10px}.hero-facts span{display:flex;align-items:center;gap:5px}.hero-facts span:before{content:'✓';font-size:11px}.hero-explorer{position:relative}.photo-frame{position:relative;height:410px;border-radius:120px 3px 3px 3px;overflow:hidden;background:#dfded2}.photo-frame>img{height:100%;width:100%;object-fit:cover;object-position:49% 50%}.photo-label{position:absolute;top:23px;right:20px;background:var(--paper);border-radius:30px;display:flex;align-items:center;gap:8px;padding:7px 12px;font-size:8px;letter-spacing:.12em;font-weight:700}.tiny-spark{font-size:19px}.inspiration{position:absolute;bottom:10px;right:14px;font-size:9px;background:#253e35c9;color:white;padding:2px 7px}.hotspot{position:absolute;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--cream);border:1px solid white;box-shadow:0 0 0 6px #ffffff3d;font-size:13px;font-weight:bold;transition:transform .2s,background .2s}.hotspot:hover{transform:scale(1.13)}.hotspot[aria-pressed=true]{background:var(--lime);box-shadow:0 0 0 7px #e1edb94a}.floor{left:58%;top:76%}.kitchen{left:84%;top:45%}.living{left:25%;top:55%}.explorer-panel{margin-top:13px;background:var(--lilac);padding:20px 21px;display:flex;gap:18px;align-items:flex-start;min-height:136px;border-radius:3px}.explorer-num{font-family:var(--serif);font-size:25px;line-height:1;padding-top:2px}.explorer-panel h2{font-size:23px;letter-spacing:-.035em;margin:4px 0 6px}.explorer-panel p:not(.eyebrow){font-size:11px;line-height:1.55;max-width:36ch}.explorer-panel .eyebrow{font-size:8px}.explorer-panel>a{margin-left:auto;border:1px solid #a8a5b0;border-radius:50%;width:32px;height:32px;flex-shrink:0;display:grid;place-items:center}.explorer-panel>a:hover{background:var(--paper)}.interaction-cue{font-size:10px;color:var(--muted);margin-top:12px;text-align:center;max-width:100%}.interaction-cue span{margin-right:5px}.care-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 5vw;display:flex;justify-content:space-between;align-items:center;gap:20px}.care-strip p{font-family:var(--serif);font-size:24px;letter-spacing:-.02em;display:flex;align-items:center;gap:16px}.care-strip svg{width:26px;fill:var(--ink)}.care-strip>a{font-size:11px}.care-strip>a span{margin-left:25px}.section{padding:100px 5vw;max-width:1440px;margin:auto}.services{display:grid;grid-template-columns:.83fr 1.17fr;gap:8%}.section-heading h2{margin:20px 0 23px}.section-heading>p:last-child{font-size:14px;max-width:34ch;color:var(--muted)}.service-explorer{padding-top:5px}.service-tabs button{display:flex;width:100%;text-align:left;align-items:center;gap:18px;background:none;border:0;border-top:1px solid var(--line);font-size:16px;padding:19px 16px;transition:background .2s}.service-tabs button:last-child{border-bottom:1px solid var(--line)}.service-tabs button>span:first-child{font-size:10px;opacity:.6}.service-tabs button>span:last-child{margin-left:auto;font-size:20px}.service-tabs button[aria-selected=true]{background:var(--lime)}.service-tabs button:hover{background:#e7ebd7}.service-panel{background:var(--paper);padding:30px;position:relative;margin-top:16px;min-height:266px;border:1px solid #eeeee2}.service-mark{position:absolute;right:20px;top:20px;font-family:var(--serif);font-size:31px}.service-panel .eyebrow{font-size:9px;margin-bottom:14px;padding-right:28px}.service-panel h3{font-size:30px;max-width:17ch;margin-bottom:16px}.service-panel>p:not(.eyebrow){font-size:13px;max-width:48ch;color:var(--muted)}.text-link{display:inline-flex;gap:34px;align-items:center;font-size:13px;font-weight:600;padding-bottom:5px;border-bottom:1px solid var(--ink);margin-top:25px}.text-link:hover{color:#6c7839}.work{background:var(--lilac);max-width:none;padding-left:max(5vw,calc((100vw - 1296px)/2));padding-right:max(5vw,calc((100vw - 1296px)/2))}.work-top{display:flex;align-items:flex-end;justify-content:space-between;gap:8%}.work-top h2{margin-top:20px}.work-top>p{font-size:13px;max-width:37ch;color:#505952;padding-bottom:4px}.work-controls{display:flex;align-items:center;justify-content:space-between;margin:40px 0 25px}.segmented{display:flex;padding:4px;border:1px solid #b9b7bf;border-radius:3px;gap:3px}.segmented button{padding:10px 21px;border:0;background:none;font-size:12px;border-radius:2px}.segmented button[aria-pressed=true]{background:var(--ink);color:var(--paper)}#gallery-count{font-size:9px;letter-spacing:.14em}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.work-photo{background:var(--paper);border:0;padding:0;text-align:left;overflow:hidden;border-radius:2px}.work-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;transition:transform .4s}.work-photo:hover img{transform:scale(1.035)}.work-photo>span{display:flex;justify-content:space-between;padding:9px 13px;font-size:10px}.work-photo>span span{font-size:16px}.photo-caption{font-size:10px;color:#5b5a60;margin-top:15px}.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:12%;align-items:center}.about-photo{position:relative;background:#e3e8db;padding:25px 25px 0;max-width:440px}.about-photo img{width:100%;height:440px;object-fit:cover;object-position:50% 25%;border-radius:160px 160px 0 0}.about-photo>span{position:absolute;left:-16px;bottom:23px;transform:rotate(-6deg);background:var(--lime);padding:16px 22px;font-size:10px;letter-spacing:.13em;line-height:1.65}.about-copy h2{margin:20px 0 24px}.about-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-bottom:14px;max-width:48ch}.neighbor-note{display:flex;gap:17px;padding-top:27px;border-top:1px solid var(--line);margin-top:30px}.neighbor-note>span{font-size:33px;line-height:1.4}.neighbor-note strong{font-size:13px}.neighbor-note p{font-size:11px;color:var(--muted)}.neighbor-note a{font-size:10px;text-decoration:underline;text-underline-offset:3px}.quote{background:var(--ink);color:var(--cream);max-width:none;display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;padding-left:max(5vw,calc((100vw - 1296px)/2));padding-right:max(5vw,calc((100vw - 1296px)/2))}.quote h2{margin:20px 0 24px}.quote h2 em{color:var(--lime)}.quote-copy>p:not(.eyebrow){font-size:14px;color:#d1d8ca;max-width:37ch}.contact-details{margin-top:40px;display:grid;gap:24px}.contact-details>div>span{display:block;font-size:8px;letter-spacing:.15em;color:#d2dcc5;margin-bottom:5px}.contact-details strong{font-weight:400;font-family:var(--serif);font-size:21px}.contact-details p{font-size:11px;color:#d1d8ca}.contact-details a{font-size:23px;font-family:var(--serif)}.contact-details a span{font-family:Arial;font-size:15px;margin-left:15px}.form-wrap{background:var(--cream);color:var(--ink);padding:30px;border-radius:3px}.preview-label{display:flex;gap:11px;background:var(--lilac);padding:13px 15px;margin-bottom:24px;border-radius:2px;font-size:11px;line-height:1.5}.preview-label>span{font-size:19px}label{display:block;font-size:11px;font-weight:600;margin-bottom:17px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #bfc7b9;background:var(--paper);border-radius:2px;padding:10px 11px;color:var(--ink);font-size:14px;line-height:1.5;min-height:44px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--ink)}input:user-invalid,select:user-invalid,textarea:user-invalid{border-color:#b3473b}textarea::placeholder{font-size:11px;color:#677162;font-weight:400}.optional{font-weight:400}form>.button{width:100%;font-size:13px}.form-footnote{font-size:9px;text-align:center;margin-top:12px}.form-feedback{background:var(--lime);padding:15px;font-size:13px;margin-top:17px;border-left:3px solid var(--ink)}footer{padding:48px 5vw 20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:30px}.footer-brand{font-family:var(--serif);font-size:39px;letter-spacing:-.05em;line-height:1.1}.footer-brand span{display:block;font-family:Arial;font-size:8px;letter-spacing:.14em;margin-top:7px}footer>div:not(.footer-bottom){text-align:right}footer>div>p{font-family:var(--serif);font-size:20px;letter-spacing:-.025em;line-height:1.35}footer>div>a{font-size:10px;display:inline-block;margin-top:12px}.footer-bottom{flex-basis:100%;border-top:1px solid var(--line);padding-top:17px;display:flex;justify-content:space-between;gap:12px;font-size:8px;color:var(--muted);margin-top:16px}dialog{padding:18px;border:0;border-radius:3px;width:min(720px,92vw);background:var(--cream);color:var(--ink);max-height:95dvh}dialog::backdrop{background:#14241de8}#lightbox-img{width:auto;height:auto;max-height:72dvh;max-width:100%;margin:auto}.lightbox-close{border:0;background:none;font-size:13px;display:block;margin:0 0 12px auto;padding:4px 8px}.lightbox-close span{font-size:20px;margin-left:8px}.lightbox-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:13px;font-size:12px}.lightbox-bottom button{background:var(--ink);color:white;border:0;width:40px;height:40px;border-radius:50%}.will-reveal{opacity:0;transform:translateY(16px);transition:opacity .6s,transform .6s}.will-reveal.visible{opacity:1;transform:none}@media(min-width:1441px){.header,.hero{padding-left:72px;padding-right:72px}.section:not(.work):not(.quote){padding-left:72px;padding-right:72px}}@media(max-width:1050px){.header nav{gap:22px}.hero{gap:3%}h1{font-size:65px}.photo-frame{height:380px}.hero-facts{gap:10px;font-size:9px}.explorer-panel{padding:17px;gap:12px}.services{gap:6%}.section{padding-top:75px;padding-bottom:75px}.about{gap:8%}.about-photo img{height:380px}.quote{gap:6%}.form-wrap{padding:24px}.topline{font-size:10px}}@media(max-width:760px){.topline{padding:7px 20px}.topline>span{font-size:9px;max-width:170px;line-height:1.4}.topline>a{font-size:10px;align-self:center;white-space:nowrap}.topline a span{display:none}.header{padding:22px 20px;position:relative}.brand strong{font-size:28px}.brand small{font-size:6.5px}.brand svg{width:27px;height:37px}.menu{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:none;border-radius:3px;font-size:11px;padding:10px 13px}.menu span{font-size:16px}.header nav{display:none;position:absolute;top:100%;left:20px;right:20px;z-index:30;background:var(--cream);padding:20px;border:1px solid var(--line);box-shadow:0 15px 25px #253e3510;align-items:stretch;gap:18px}.header nav.open{display:flex;flex-direction:column}.header nav>a:not(.button){padding:5px}.header .button{max-width:250px}.hero{display:block;padding:27px 20px 33px}.hero-copy{padding-bottom:30px}.hero .eyebrow{font-size:10px}h1{font-size:clamp(48px,10.8vw,80px);margin:20px 0;line-height:1.01}.intro{font-size:14px;max-width:42ch;margin-bottom:23px}.button{padding:15px 20px;font-size:13px;gap:34px}.hero-note{font-size:10px}.hero-facts{margin-top:23px;font-size:9px;gap:16px}.photo-frame{height:365px;border-top-left-radius:100px;max-height:100vw}.explorer-panel{min-height:127px;padding:17px}.explorer-panel h2{font-size:23px}.explorer-panel p:not(.eyebrow){font-size:11px;max-width:40ch}.explorer-panel .eyebrow{font-size:8px}.interaction-cue{font-size:9px}.care-strip{padding:21px 20px;gap:10px;flex-wrap:wrap}.care-strip p{font-size:21px;gap:10px}.care-strip svg{width:22px}.care-strip>a{font-size:10px;padding-left:32px}.care-strip>a span{margin-left:18px}.section{padding:62px 20px}.services{display:block}.section-heading h2{margin:18px 0;font-size:44px}.section-heading>p:last-child{max-width:44ch;font-size:13px}.service-explorer{margin-top:30px}.service-tabs button{padding:17px 12px;font-size:15px}.service-panel{min-height:262px;padding:25px}.service-panel h3{font-size:31px}.service-panel>p:not(.eyebrow){font-size:13px}.work-top{display:block}.work h2{font-size:44px}.work-top>p{font-size:12px;margin-top:20px;max-width:43ch}.work-controls{margin:28px 0 18px;gap:10px;flex-wrap:wrap}.segmented button{font-size:11px;padding:9px 13px}#gallery-count{font-size:8px}.photo-grid{gap:9px}.photo-caption{font-size:9px}.work-photo>span{padding:5px 8px}.work-photo>span span{font-size:13px}.about{display:flex;flex-direction:column;gap:35px}.about-photo{width:100%;max-width:400px;padding:22px 22px 0}.about-photo img{height:400px}.about-photo>span{left:-5px;bottom:22px;padding:13px 17px;font-size:9px}.about-copy{width:100%}.about-copy h2{font-size:44px;margin:18px 0 22px}.about-copy>p:not(.eyebrow){font-size:13px;max-width:52ch}.quote{display:block}.quote h2{font-size:47px}.quote-copy>p:not(.eyebrow){font-size:13px;max-width:44ch}.contact-details{grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}.contact-details>div:last-child{grid-column:1/-1}.contact-details a{font-size:21px}.contact-details a span{font-size:12px;margin-left:5px}.contact-details strong{font-size:20px}.form-wrap{margin-top:32px;padding:23px 19px}.form-row{gap:12px}.preview-label{font-size:10px;padding:12px}label{font-size:10px}.form-footnote{font-size:9px}footer{padding:36px 20px 20px;gap:24px}.footer-brand{font-size:33px}.footer-brand span{font-size:6.7px}footer>div>p{font-size:17px}.footer-bottom{flex-direction:column;gap:5px;font-size:8px;margin-top:4px}}@media(max-width:380px){.topline>span{max-width:140px;font-size:8px}.brand strong{font-size:25px}.brand small{font-size:6px}.brand{gap:7px}.menu{padding:9px 10px}.hero-facts{gap:9px;font-size:8px}h1{font-size:47px}.photo-frame{height:315px}.hotspot{width:34px;height:34px}.explorer-panel{gap:10px;padding:16px 13px}.explorer-panel h2{font-size:21px}.explorer-panel>a{width:27px;height:27px}.form-row{grid-template-columns:1fr;gap:0}.contact-details{grid-template-columns:1fr}.contact-details>div:last-child{grid-column:auto}.segmented button{padding:9px 11px}.footer-brand{font-size:29px}.footer-brand span{font-size:6px}footer>div>p{font-size:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.will-reveal{opacity:1;transform:none}}

/* Readability and touch refinements */
.hotspot{width:44px;height:44px}.segmented button{min-height:44px}.explorer-panel{min-height:147px}.explorer-panel p:not(.eyebrow){font-size:13px}.explorer-panel>a{width:38px;height:38px}.interaction-cue{font-size:11px}.section-heading>p:last-child,.service-panel>p:not(.eyebrow),.work-top>p,.about-copy>p:not(.eyebrow),.quote-copy>p:not(.eyebrow){font-size:15px}.service-panel{min-height:286px}.preview-label{font-size:12px}label{font-size:12px}input,select,textarea{font-size:16px}.contact-details p{font-size:13px}.form-footnote{font-size:11px}.neighbor-note p{font-size:13px}.neighbor-note a{font-size:12px}.photo-caption{font-size:11px}
@media(max-width:760px){.intro{font-size:15px}.hero-facts{font-size:10px;gap:12px}.interaction-cue{font-size:10px}.section-heading>p:last-child,.service-panel>p:not(.eyebrow),.work-top>p,.about-copy>p:not(.eyebrow),.quote-copy>p:not(.eyebrow){font-size:14px}.explorer-panel p:not(.eyebrow){font-size:12px}.explorer-panel>a{width:33px;height:33px}.explorer-panel{min-height:147px}.service-panel{min-height:290px}.preview-label{font-size:12px}label{font-size:12px}.contact-details p{font-size:12px}.photo-grid{grid-template-columns:1fr;gap:18px}.work-photo img{aspect-ratio:1.25}.work-photo>span{padding:9px 12px;font-size:11px}.photo-caption{font-size:11px}.neighbor-note p{font-size:12px}.neighbor-note a{font-size:11px}}
@media(max-width:380px){.hero-facts{font-size:9px;gap:9px}.explorer-panel{padding:16px 13px}.form-row{grid-template-columns:1fr}}
