@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{--paper:#f4f0e7;--cream:#e7e2d7;--ink:#272724;--clay:#a96851;--sage:#687362;--line:#cbc6bb;--white:#fbfaf6;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 var(--sans)}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit}.site-header{height:78px;padding:0 5.2vw;display:flex;align-items:center;justify-content:space-between;background:#f8f6f0;position:sticky;top:0;z-index:30;border-bottom:1px solid #d8d3c9}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-mark{font:600 27px/1 var(--serif);letter-spacing:-2px;color:var(--clay)}.brand-mark span{font:400 19px var(--sans);padding:0 2px}.brand-name{font-size:11px;letter-spacing:1.55px;font-weight:700;line-height:1.25}.brand-name small{font-weight:500;font-size:9px;letter-spacing:2.45px}.site-header nav{display:flex;gap:clamp(15px,2.25vw,36px);align-items:center}.site-header nav a{font-size:13px;color:#55564f;transition:color .2s}.site-header nav a:hover,.text-link:hover,.under-link:hover{color:var(--clay)}.header-cta{border-bottom:1px solid var(--clay);font-size:13px;padding:8px 0;color:var(--clay)}.header-cta span{padding-left:12px}.menu-toggle{display:none}
.hero{min-height:700px;height:min(790px,calc(100vh - 78px));position:relative;display:grid;grid-template-columns:minmax(0,1.62fr) minmax(350px,.78fr);padding:26px 5.2vw 50px;gap:0;background:#eae5dc;overflow:hidden}.hero-image{position:relative;overflow:hidden;min-height:550px}.hero-image img{object-position:center 55%;animation:revealPhoto 1s both}.cover-label{position:absolute;top:22px;left:22px;padding:8px 14px;background:var(--paper);font:11px var(--sans);letter-spacing:1.5px}.image-index{position:absolute;bottom:22px;left:22px;color:white;text-shadow:0 1px 8px #333;font:600 15px var(--sans)}.image-index i{font-style:normal;color:#ddd;margin:0 4px}.hero-rail{padding:clamp(48px,9vw,132px) 0 30px clamp(32px,5vw,76px);align-self:stretch;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}.eyebrow{font:600 11px/1.4 var(--sans);letter-spacing:1.55px;color:#77766d;margin:0 0 23px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--clay);margin-right:8px;vertical-align:1px}.hero h1{font:500 clamp(48px,6vw,86px)/.99 var(--serif);letter-spacing:-3px;margin:0 0 23px}.hero h1 em,.threshold-intro h2 em,.about-text h2 em,.service-heading h2 em,.process-title h2 em,.material-copy h2 em,.gallery-heading h2 em,.reviews h2 em,.contact h2 em,.service-area h2 em{color:var(--clay);font-weight:500}.hero-copy{max-width:350px;font-size:17px;color:#57574f;margin:0 0 30px}.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:17px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:14px 19px;font-size:13px;font-weight:600;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:17px}.button-dark{background:var(--ink);color:var(--white)}.button-dark:hover{background:var(--clay)}.text-link,.under-link{font-size:13px;border-bottom:1px solid var(--line);padding:4px 0;color:#55564f}.text-link span{margin-left:12px}.rail-note{position:absolute;bottom:8px;left:clamp(32px,5vw,76px);right:0;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:#7c7b72}.hero-swatch{position:absolute;width:136px;height:138px;left:calc(5.2vw + 49%);bottom:75px;border:8px solid #eae5dc;z-index:3}.hero-swatch img{filter:saturate(.7)}.hero-swatch span{position:absolute;right:-124px;bottom:8px;font-size:9px;line-height:1.5;letter-spacing:1.3px;color:#716e65}
.threshold-intro{padding:130px 12vw 110px;background:var(--paper)}.section-kicker{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:14px;font-size:10px;letter-spacing:1.7px;color:#77766d}.section-kicker span{font-size:17px;color:var(--clay)}.intro-content{display:grid;grid-template-columns:1.2fr .8fr;gap:12%;padding:58px 0 68px}.threshold-intro h2,.about-text h2,.service-heading h2,.process-title h2,.material-copy h2,.gallery-heading h2,.reviews h2,.contact h2,.service-area h2{font:500 clamp(38px,5vw,66px)/1.08 var(--serif);letter-spacing:-1.5px;margin:0}.intro-copy{align-self:end;max-width:460px}.intro-copy p{margin:0 0 25px;color:#5d5b54}.threshold-line{display:flex;align-items:center;gap:15px;color:#817e73;font-size:9px;letter-spacing:1.15px}.threshold-line b{height:1px;background:var(--clay);opacity:.6;flex:1}.about-band{display:grid;grid-template-columns:1.05fr .95fr;background:#e4dfd4;min-height:680px}.about-photo{height:680px;position:relative}.about-photo img{object-position:50% 35%}.photo-caption{position:absolute;bottom:28px;left:28px;background:var(--paper);padding:8px 13px;font:italic 14px var(--serif)}.about-text{padding:90px clamp(44px,8vw,126px) 70px 9%;align-self:center}.about-text .eyebrow{margin-bottom:18px}.about-text h2{margin-bottom:28px}.about-text>p:not(.eyebrow){color:#5c5a54;max-width:480px;margin-bottom:32px}.fact-row{display:grid;grid-template-columns:38px 1fr;gap:12px;border-top:1px solid #c7c1b5;padding:15px 0}.fact-row>span{color:var(--clay);font-size:12px}.fact-row strong,.fact-row small{display:block}.fact-row strong{font-size:14px}.fact-row small{font-size:12px;color:#706f67;margin-top:3px}
.services{padding:130px 8vw 132px;display:grid;grid-template-columns:.72fr 1.28fr;gap:8%;background:var(--white)}.service-heading{padding-top:34px}.service-heading h2{margin-bottom:23px}.service-heading>p:last-child{max-width:330px;color:#65635c}.service-explorer{display:grid;grid-template-columns:1.1fr .9fr;gap:38px;align-items:center}.service-list{border-top:1px solid var(--line)}.service-tab{width:100%;display:grid;grid-template-columns:34px 1fr 20px;gap:12px;align-items:center;padding:18px 0;background:none;border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;transition:color .2s,padding .2s}.service-tab span{font-size:10px;color:#928d82}.service-tab strong{font-size:15px;font-weight:500}.service-tab i{font-style:normal;color:var(--clay);opacity:0;transition:opacity .2s}.service-tab.active,.service-tab:hover{color:var(--clay);padding-left:8px}.service-tab.active i,.service-tab:hover i{opacity:1}.service-preview{margin:0;position:relative;background:#ece8df;padding-bottom:57px}.service-preview img{height:400px;transition:opacity .25s}.service-preview figcaption{position:absolute;top:14px;left:14px;right:14px;display:flex;justify-content:space-between;color:#fff;text-shadow:0 1px 8px #444;font-size:9px;letter-spacing:1.2px}.service-preview>p{position:absolute;bottom:0;margin:0;padding:12px 15px;color:#626057;font-size:12px;line-height:1.5}.process{padding:120px 8vw 135px;background:#d8d8cb}.process-title{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:50px}.process-title .eyebrow{width:28%}.process-title h2{width:72%}.process-image{height:640px;position:relative;overflow:hidden}.process-image>img{object-position:center 50%;filter:brightness(.83)}.process-steps{position:absolute;inset:auto 0 0;display:grid;grid-template-columns:repeat(4,1fr);background:#f4f0e7}.process-steps article{padding:24px 22px 26px;border-right:1px solid var(--line)}.process-steps article:last-child{border:0}.process-steps span{font-size:9px;letter-spacing:1.5px;color:var(--clay)}.process-steps h3{font:500 20px var(--serif);margin:9px 0}.process-steps p{font-size:12px;line-height:1.55;color:#66645e;margin:0}
.material-note{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:#f8f6f0;min-height:620px}.material-photo{height:620px;position:relative;overflow:hidden}.material-photo img{object-position:center 45%}.orbit-stamp{position:absolute;right:30px;bottom:30px;border:1px solid #f8f6f0;width:78px;height:78px;display:grid;place-content:center;text-align:center;border-radius:50%;font-size:9px;letter-spacing:1px;color:#fff}.material-copy{padding:70px 11%}.tiny-tag{font-size:10px;letter-spacing:1.6px;color:var(--sage)}.material-copy h2{font-size:clamp(36px,4.2vw,57px);margin:20px 0 22px}.material-copy>p{color:#626057;max-width:460px;margin-bottom:28px}.gallery{padding:130px 8vw 140px;background:#e7e2d7}.gallery-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:46px}.gallery-heading h2{font-size:clamp(44px,5vw,70px)}.gallery-heading>p{max-width:330px;color:#65635c;margin:0 3% 5px 0}.gallery-stage{display:grid;grid-template-columns:1.45fr .65fr;gap:24px;min-height:660px}.gallery-main,.gallery-secondary{margin:0;position:relative;overflow:hidden;background:#d3cfc5}.gallery-main img{height:660px;transition:opacity .3s}.gallery-main figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:rgba(244,240,231,.94);font-size:12px}.gallery-main figcaption span+span{font-size:9px;letter-spacing:1.4px;color:#77766d}.gallery-side{display:flex;flex-direction:column;gap:17px}.gallery-secondary{height:245px}.gallery-secondary img{transition:opacity .25s}.gallery-secondary figcaption{position:absolute;left:15px;bottom:13px;background:var(--paper);padding:6px 10px;font:italic 13px var(--serif)}.window-selector{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;align-content:start}.window-thumb{height:91px;padding:0;position:relative;border:0;cursor:pointer;background:#d4d0c5;overflow:hidden}.window-thumb img{transition:transform .35s,filter .25s}.window-thumb:hover img{transform:scale(1.08)}.window-thumb.selected{outline:2px solid var(--clay);outline-offset:2px}.window-thumb span{position:absolute;left:5px;bottom:4px;color:#fff;text-shadow:0 1px 5px #222;font-size:9px}
.reviews{display:grid;grid-template-columns:.28fr 1fr .72fr;gap:30px;align-items:center;padding:120px 12vw;background:#f8f6f0}.review-mark{font:italic 140px/.7 var(--serif);color:#c78f78;align-self:start}.reviews h2{font-size:clamp(38px,4vw,56px);margin-bottom:22px}.reviews>div:nth-child(2)>p:not(.eyebrow){max-width:440px;color:#636158}.reviews-swatch{height:260px;overflow:hidden;margin-left:20px}.reviews-swatch img{object-position:center}.contact{padding:120px 10vw;background:#d9ddd1}.contact-top{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;align-items:start}.contact-copy{padding-top:25px}.contact h2{font-size:clamp(48px,5.2vw,72px);margin-bottom:22px}.contact-copy>p:not(.eyebrow){color:#5b6056;max-width:390px}.phone-link{display:block;font:500 25px var(--serif);margin:25px 0 2px}.phone-link span{font:16px var(--sans);color:var(--clay);margin-left:8px}.email-link{font-size:13px;color:#656a5f}.contact address{font-style:normal;margin:21px 0 15px;font-size:14px;color:#4f554c;line-height:1.7}.button-outline{border:1px solid #9a9d90;margin-bottom:28px}.button-outline:hover{background:var(--ink);color:#fff}.map-frame{height:235px;width:100%;border:7px solid #eeeae0;background:#d7d9d1}.map-frame iframe{border:0;width:100%;height:100%;filter:saturate(1.35) contrast(1.03)}.form-wrap{background:#f8f6f0;padding:43px clamp(28px,5vw,67px) 34px;position:relative}.form-heading{position:relative;border-bottom:1px solid var(--line);padding-bottom:23px;margin-bottom:21px}.form-heading .eyebrow{margin-bottom:9px}.form-heading h3{font:500 34px/1.08 var(--serif);margin:0 0 9px}.form-heading>p:last-child{font-size:13px;color:#747168;margin:0}.form-spark{position:absolute;right:5px;top:7px;color:var(--clay);font-size:40px;transform:rotate(12deg)}form label{display:block;font-size:12px;font-weight:600;margin:15px 0 5px}form label span{margin-left:5px}form input,form textarea{width:100%;border:1px solid #d4cfc5;background:#fffefa;padding:11px 12px;outline:none;font-size:14px;color:var(--ink);border-radius:0;transition:border .2s,box-shadow .2s}form textarea{resize:vertical;min-height:105px}form input:focus,form textarea:focus{border-color:var(--sage);box-shadow:0 0 0 2px #6873621c}form ::placeholder{color:#aaa69c}.submit-button{margin-top:19px;width:100%;border:0;cursor:pointer}.form-privacy{font-size:10px;color:#89867d;margin:12px 0 0}.form-error{color:#a1372d;font-size:12px;margin-top:8px}.form-success{background:#f8f6f0;padding:60px 35px;text-align:center}.form-success>span{font-size:45px;color:var(--clay)}.form-success h3{font:500 32px var(--serif);margin:15px 0 5px}.form-success p{color:#666}.service-area{padding:88px 12vw;background:var(--clay);color:#f8f6f0;display:grid;grid-template-columns:1fr .7fr;gap:12%;align-items:center}.service-area .eyebrow{color:#f1d5c7}.service-area h2{font-size:clamp(34px,4vw,53px)}.service-area h2 em{color:#f4d2c1}.service-area>p{max-width:440px;color:#f4e9e2}.site-footer{padding:45px 7vw;background:#292a26;color:#f1eee6;display:flex;align-items:center;justify-content:space-between;gap:28px}.site-footer .brand-mark{color:#d09a81}.site-footer .brand-name{color:#f1eee6}.site-footer p,.site-footer>a:not(.brand){font-size:12px;color:#d2d0c8}.site-footer>small{font-size:10px;color:#aaa89f}.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s,transform .65s}.reveal.visible{opacity:1;transform:none}@keyframes revealPhoto{from{opacity:.5;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}
@media(max-width:1050px){.site-header{padding:0 4vw}.site-header nav{gap:14px}.site-header nav a{font-size:12px}.hero{padding-left:4vw;padding-right:4vw;grid-template-columns:1.25fr .8fr}.hero-rail{padding-left:35px}.hero h1{font-size:clamp(48px,6.8vw,70px)}.threshold-intro{padding-left:8vw;padding-right:8vw}.about-text{padding-left:8%;padding-right:8%}.services{padding-left:6vw;padding-right:6vw;gap:5%}.service-explorer{gap:22px}.service-tab strong{font-size:13px}.service-preview img{height:350px}.process{padding-left:6vw;padding-right:6vw}.gallery,.contact{padding-left:7vw;padding-right:7vw}.site-footer{padding-left:5vw;padding-right:5vw}}
@media(max-width:760px){body{font-size:16px}.site-header{height:68px;padding:0 21px}.brand-mark{font-size:24px}.menu-toggle{display:block;margin-left:auto;border:0;background:none;font-size:13px;padding:10px 14px;cursor:pointer}.menu-toggle span{color:var(--clay);padding-left:4px}.header-cta{margin-left:12px;font-size:12px}.site-header nav{display:none;position:absolute;top:67px;left:0;right:0;background:#f8f6f0;border-bottom:1px solid var(--line);padding:12px 22px 20px;grid-template-columns:1fr 1fr;gap:0 20px}.site-header nav.open{display:grid}.site-header nav a{padding:11px 0;border-bottom:1px solid #e1ddd4;font-size:14px}.hero{height:auto;min-height:0;display:flex;flex-direction:column;padding:15px 15px 44px}.hero-image{height:57vw;min-height:310px;max-height:490px}.hero-rail{padding:40px 16px 52px}.hero h1{font-size:clamp(48px,12vw,76px);letter-spacing:-2px}.hero-copy{font-size:16px}.hero-swatch{width:100px;height:108px;left:auto;right:31px;bottom:22px;border-width:6px}.hero-swatch span{right:104px;bottom:4px;white-space:nowrap}.rail-note{left:16px;bottom:12px;right:125px}.threshold-intro{padding:76px 25px 72px}.intro-content{display:block;padding:42px 0}.threshold-intro h2,.about-text h2,.service-heading h2,.process-title h2,.material-copy h2,.gallery-heading h2,.reviews h2,.contact h2{font-size:clamp(39px,10vw,59px)}.intro-copy{margin-top:25px}.threshold-line{gap:6px;font-size:7px}.threshold-line b{min-width:8px}.about-band{display:flex;flex-direction:column}.about-photo{height:370px}.about-text{padding:65px 27px}.services{display:block;padding:78px 25px}.service-heading{padding:0 0 33px}.service-explorer{display:flex;flex-direction:column-reverse;gap:24px}.service-list{width:100%}.service-preview{width:100%}.service-preview img{height:65vw;max-height:420px}.process{padding:78px 22px}.process-title{display:block;margin-bottom:29px}.process-title .eyebrow,.process-title h2{width:auto}.process-title .eyebrow{margin-bottom:15px}.process-image{height:auto}.process-image>img{height:340px}.process-steps{position:relative;grid-template-columns:1fr 1fr}.process-steps article{padding:18px 15px;min-height:155px}.process-steps h3{font-size:18px}.material-note{display:flex;flex-direction:column;align-items:stretch}.material-photo{height:390px}.material-copy{padding:58px 27px 72px}.gallery{padding:78px 20px 88px}.gallery-heading{display:block;margin-bottom:27px}.gallery-heading>p{margin-top:16px}.gallery-stage{display:flex;flex-direction:column;min-height:0;gap:14px}.gallery-main img{height:70vw;min-height:310px;max-height:530px}.gallery-main figcaption{padding:14px 13px;font-size:11px}.gallery-main figcaption span+span{font-size:8px}.gallery-secondary{height:270px}.window-selector{grid-template-columns:repeat(4,1fr);gap:8px}.window-thumb{height:21vw;max-height:116px}.reviews{grid-template-columns:42px 1fr;padding:74px 26px;gap:12px}.review-mark{font-size:82px}.reviews-swatch{grid-column:2;height:195px;margin:22px 0 0}.contact{padding:78px 22px}.contact-top{display:flex;flex-direction:column;gap:42px}.contact-copy{padding:0}.form-wrap{width:100%;padding:33px 24px}.service-area{display:block;padding:65px 27px}.service-area>p{margin-top:20px}.site-footer{padding:35px 25px;display:grid;grid-template-columns:1fr 1fr;gap:22px}.site-footer p{margin:0}.site-footer>a:not(.brand){font-size:11px}.site-footer>small{text-align:right}}
@media(max-width:390px){.header-cta{font-size:11px}.brand-name{font-size:9px}.brand-name small{font-size:8px}.window-thumb{height:20vw}.process-steps article{padding:15px 11px}.process-steps p{font-size:11px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
