@font-face{font-family:DM Sans;src:local("DM Sans");font-display:swap}
:root{--paper:#f3f0e9;--ink:#292e28;--muted:#727569;--line:#d9d9ce;--olive:#7a7d65;--serif:Georgia,"Times New Roman",serif;--sans:"DM Sans","Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}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}img{display:block;max-width:100%;height:auto}button{color:inherit}::selection{background:#ced0b9;color:var(--ink)}:focus-visible{outline:2px solid #8e724b;outline-offset:5px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;z-index:200;top:12px;left:12px;background:var(--ink);color:white;padding:12px 20px;transform:translateY(-150%)}.skip-link:focus{transform:none}
.site-header{height:103px;padding:0 5.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:30;background:var(--paper)}.brand{display:block}.logo-crop{position:relative;display:block;width:108px;height:73px;overflow:hidden}.logo-crop img{position:absolute;width:218px;max-width:none;height:auto;left:-56px;top:-24px}.desktop-nav{display:flex;gap:36px;margin-left:70px;font-size:12px}.desktop-nav a{position:relative;padding:8px 0}.desktop-nav a::after{content:"";position:absolute;bottom:3px;left:0;width:100%;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .3s}.desktop-nav a:hover::after{transform:scaleX(1)}.header-cta{font-size:12px;border:1px solid #999e90;border-radius:2px;padding:11px 19px;display:flex;gap:30px;align-items:center}.header-cta span{font-size:19px}.menu-toggle{display:none}.mobile-menu{position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px 6%;border-bottom:1px solid var(--line)}.mobile-menu a{display:block;padding:13px 0;border-bottom:1px solid var(--line)}
.hero{display:grid;grid-template-columns:1.03fr 1fr;min-height:690px;height:calc(100svh - 103px);max-height:880px;padding-left:7.3%;padding-right:2.1%;gap:3%}.hero-copy{padding-top:67px;display:flex;align-items:flex-start;flex-direction:column;position:relative;z-index:1}.eyebrow{font-size:10px;letter-spacing:1.9px;font-weight:500;line-height:1.6;margin:0 0 26px}.small-line{display:inline-block;width:27px;height:1px;background:var(--olive);vertical-align:middle;margin-right:12px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-2.7px;line-height:1.12}h1{font-size:clamp(62px,6.5vw,104px);margin-bottom:24px}h1 em,h2 em{font-weight:400;color:var(--olive)}.hero-description{color:#6d7166;font-size:13px;line-height:1.8;margin-bottom:32px}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:16px 23px;font-size:12px;border:1px solid transparent;border-radius:2px;transition:background .25s,transform .25s}.button span{font-size:20px;line-height:1}.button:hover{transform:translateY(-3px)}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:#454d3d}.hero-bottom{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:auto;gap:15px;padding:35px 0 27px}.scroll-cue{font-size:8px;letter-spacing:1.5px;display:flex;align-items:center;gap:10px}.scroll-icon{border:1px solid #c2c6b8;width:29px;height:37px;display:grid;place-items:center;border-radius:20px;font-size:14px}.hero-location{font-size:9px;color:var(--muted)}.hero-visual{position:relative;margin:22px 0 24px;min-width:0}.hero-image-wrap{position:absolute;inset:0;overflow:hidden;background:#ada18b}.hero-image{width:100%;height:112%;max-width:none;object-fit:cover;object-position:50% 45%;will-change:transform;transform:translateY(calc(var(--hero-progress,0) * -8%));filter:brightness(.95)}.hero-caption{position:absolute;bottom:27px;left:-30px;right:30px;padding:22px 27px;background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:16px}.hero-caption .eyebrow{display:block;font-size:8px;margin:0 0 7px;letter-spacing:1.7px}.hero-caption strong{font-family:var(--serif);font-weight:400;font-size:23px;letter-spacing:-.5px}.circle-arrow{width:38px;height:38px;border:1px solid #c3c7ba;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-size:19px}.vertical-note{position:absolute;right:17px;top:25px;writing-mode:vertical-rl;font-size:8px;letter-spacing:2px;color:white;text-shadow:0 1px 5px #222}.image-index{position:absolute;bottom:135px;left:25px;font-size:9px;color:white;letter-spacing:2px;text-shadow:0 1px 3px #222}.ticker{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:21px 0}.ticker-track{display:flex;width:max-content;transform:translateX(calc(var(--page-progress,0) * -300px));will-change:transform}.ticker-track>span{white-space:nowrap;flex-shrink:0;font-size:10px;letter-spacing:2.8px;padding-right:50px}.ticker i{font-style:normal;font-size:20px;color:var(--olive);margin:0 45px;vertical-align:middle}
.section-pad{padding:110px 7.3%}h2{font-size:clamp(39px,4.1vw,65px);margin-bottom:25px}.essence>.eyebrow{margin-bottom:43px}.essence-main{display:grid;grid-template-columns:1.2fr 1fr;gap:10%}.essence-main h2{max-width:660px}.essence-copy{color:var(--muted);padding-top:9px;font-size:13px;max-width:410px}.essence-copy p{margin-bottom:19px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;font-size:12px;border-bottom:1px solid #9ea18e;padding:7px 0;color:var(--ink)}.text-link span{font-size:19px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid var(--line);padding-top:27px;margin-top:53px;font-size:12px}.values b{font-weight:400;color:var(--olive);font-size:10px;margin-right:22px}.projects{background:#e9e9df;padding-top:96px}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end}.section-heading h2{max-width:600px;margin-bottom:0}.section-aside{font-size:12px;color:var(--muted);margin-bottom:6px}.project-toolbar{display:flex;align-items:center;justify-content:space-between;margin:45px 0 32px;border-bottom:1px solid #cccec0;min-height:48px}.filters{display:flex;gap:28px}.filter{font-size:11px;border:0;padding:12px 0;background:transparent;position:relative;color:#686d5e;min-height:44px}.filter::after{position:absolute;content:"";bottom:-1px;left:0;width:100%;height:2px;background:var(--ink);transform:scaleX(0);transition:transform .25s}.filter.active{color:var(--ink)}.filter.active::after{transform:scaleX(1)}.filter span{font-size:8px;margin-left:5px}.project-hint{font-size:8px;letter-spacing:1.7px}.project-hint span{margin-left:10px;font-size:18px}.project-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:6%;row-gap:60px}.project{min-width:0}.project-offset{padding-top:95px}.project-photo{display:block;position:relative;overflow:hidden;background:#d0cbbf}.photo-tall{aspect-ratio:4/5}.photo-short{aspect-ratio:1/1}.project-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.65,.3,1),filter .6s}.project-photo:hover img{transform:scale(1.045);filter:brightness(.85)}.photo-action{position:absolute;bottom:20px;right:20px;display:flex;align-items:center;justify-content:space-between;gap:22px;background:var(--paper);padding:10px 15px;font-size:8px;letter-spacing:1.5px;transition:transform .3s}.photo-action span{font-size:20px;line-height:1}.project-photo:hover .photo-action{transform:translateY(-4px)}.project-meta{display:flex;justify-content:space-between;gap:15px;margin-top:22px}.project-meta .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:7px}.project-meta h3{font-family:var(--serif);font-size:29px;letter-spacing:-.6px;margin-bottom:0}.project-meta>span{font-size:10px;color:var(--muted);padding-top:3px}.project-grid.filtered .project-offset{padding-top:0}.instagram-line{margin-top:57px;padding-top:25px;border-top:1px solid #cccec0;display:flex;align-items:center;justify-content:space-between;gap:24px}.instagram-line>span{font-family:var(--serif);font-style:italic;font-size:23px}
.detail-section{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:var(--paper)}.detail-photo{min-height:680px;overflow:hidden}.detail-photo img{width:100%;height:100%;object-fit:cover;max-height:800px}.detail-copy{padding:90px 13%;align-self:center}.detail-copy .eyebrow{color:#c8cdbb}.detail-copy h2{font-size:clamp(43px,4.2vw,66px)}.detail-copy h2 em{color:#b9bea4}.detail-copy>p:not(.eyebrow):not(.material-note){font-size:12px;max-width:310px;color:#c1c6b8;line-height:1.9}.material-samples{display:flex;gap:26px;margin-top:34px}.material-samples>span{font-size:9px;color:#d1d5c8}.sample{display:block;width:38px;height:38px;border-radius:50%;margin:0 0 12px;border:1px solid #b8bea03b}.wood{background:repeating-linear-gradient(88deg,#9d7a50 0px,#a78359 2px,#ba966a 3px,#98764f 5px)}.stone{background:#d0c9b9}.graphite{background:#555a56}.material-note{font-size:8px;margin-top:24px;color:#a3aa97}
.process{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}.process-intro{position:sticky;top:60px}.process-intro>p:not(.eyebrow){font-size:13px;color:var(--muted)}.process-intro .text-link{margin-top:15px}.process-step{display:flex;gap:27px;border-top:1px solid var(--line);padding:35px 0 50px;align-items:baseline}.process-step:last-child{border-bottom:1px solid var(--line);padding-bottom:30px}.step-number{font-size:11px;color:var(--olive)}.process-step h3{font-family:var(--serif);font-size:28px;letter-spacing:-.7px;margin-bottom:14px}.process-step p{font-size:12px;color:var(--muted);max-width:310px;line-height:1.9;margin-bottom:0}.step-symbol{font-size:25px;color:var(--olive);margin-left:auto}.faq{border-top:1px solid var(--line);display:grid;grid-template-columns:.9fr 1.1fr;gap:9%;padding-top:80px;padding-bottom:90px}.faq h2{font-size:47px}.faq-items details{border-bottom:1px solid var(--line)}.faq-items details:first-child{border-top:1px solid var(--line)}.faq-items summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:13px;gap:20px;padding:22px 0}.faq-items summary::-webkit-details-marker{display:none}.faq-items summary span{font-size:21px;font-weight:300;transition:transform .25s}.faq-items details[open] summary span{transform:rotate(45deg)}.faq-items details p{font-size:12px;color:var(--muted);padding:0 32px 12px 0;max-width:480px}
.contact{background:#dfe1d3;display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.contact h2{font-size:clamp(51px,5.5vw,82px)}.contact-copy>p:not(.eyebrow):not(.contact-location){color:#626a58;font-size:13px}.contact-phone{display:inline-flex;gap:40px;align-items:center;font-size:20px;letter-spacing:-.5px;border-bottom:1px solid #a9af9a;padding:9px 0}.contact-phone span{font-size:24px}.contact-location{font-size:10px;color:#626a58;margin-top:15px}.contact-card{background:var(--paper);padding:37px 40px 32px;border-radius:2px}.contact-card>.eyebrow{font-size:8px;margin-bottom:12px}.contact-card h3{font-family:var(--serif);font-size:32px;letter-spacing:-1px;margin-bottom:25px}form label{display:block;font-size:10px;margin:22px 0 4px}form label span{color:var(--muted)}form input,form textarea,form select{color:var(--ink);width:100%;border:0;border-bottom:1px solid #c5c9bb;background:transparent;border-radius:0;padding:8px 0 12px;font-size:12px;resize:vertical;min-height:43px}form textarea{max-height:250px}form input::placeholder,form textarea::placeholder{color:#858a7b}form select:invalid{color:#858a7b}form .button{width:100%;margin-top:25px}.form-note{font-size:9px;line-height:1.7;color:#737968;margin:14px 0 0}.form-feedback{font-size:11px;margin:15px 0 0}.form-feedback a{text-decoration:underline}.site-footer{background:#242923;color:var(--paper);padding:43px 7.3% 25px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:32px}.brand-footer .logo-crop{width:112px;height:73px}.footer-main p{font-family:var(--serif);font-size:17px;letter-spacing:-.2px;margin:0;color:#c9cdbf}.footer-main>a:not(.brand){font-size:10px;white-space:nowrap}.footer-main>a span{margin-left:20px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #454c3e;padding-top:21px;font-size:9px;color:#b8bfae}.floating-contact{position:fixed;z-index:35;bottom:22px;right:26px;border:1px solid #b3ba9f;background:#292e28;color:#f3f0e9;border-radius:50px;display:flex;align-items:center;justify-content:center;gap:10px;padding:13px 18px;box-shadow:0 4px 20px #0002;transition:transform .25s}.floating-contact:hover{transform:translateY(-4px)}.floating-contact svg{width:24px;height:24px}.floating-contact span{font-size:10px}
.project-dialog{width:min(1040px,94vw);max-height:94svh;overflow:auto;border:0;background:var(--paper);color:var(--ink);padding:23px 30px 30px}.project-dialog::backdrop{background:#161b15d9;backdrop-filter:blur(5px)}.dialog-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.dialog-bar .eyebrow{margin:0}.dialog-close{display:flex;align-items:center;gap:20px;background:transparent;border:0;font-size:12px;min-height:40px}.dialog-close span{font-size:30px}.dialog-body{display:grid;grid-template-columns:42px 1.1fr 42px .8fr;gap:20px;align-items:center}.dialog-body>img{width:100%;height:auto;max-height:70svh;object-fit:contain}.gallery-arrow{width:42px;height:42px;border:1px solid var(--line);background:transparent;border-radius:50%;font-size:20px}.dialog-description{padding-left:13px}.dialog-description h2{font-size:39px;letter-spacing:-1.5px}.dialog-description .eyebrow{font-size:8px;margin-bottom:14px}.dialog-description .button{margin-top:30px;font-size:10px;width:100%;gap:10px}.dialog-description .text-link{font-size:10px}
.reveal{opacity:1}.motion-ready .reveal{opacity:0;transform:translateY(24px);transition:opacity .75s,transform .75s}.motion-ready .reveal.in-view{opacity:1;transform:none}.motion-ready .hero-enter{animation:arrive .9s both}.motion-ready h1.hero-enter{animation-delay:.12s}.motion-ready .hero-description.hero-enter{animation-delay:.23s}.motion-ready .button.hero-enter{animation-delay:.34s}@keyframes arrive{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.hero-copy{padding-top:90px}.hero{padding-left:max(7.3%,calc((100vw - 1460px)/2))}.section-pad{padding-left:max(7.3%,calc((100vw - 1460px)/2));padding-right:max(7.3%,calc((100vw - 1460px)/2))}}
@media(max-width:1100px){.hero{min-height:640px;max-height:760px;padding-left:5.5%;gap:3%}.hero-copy{padding-top:55px}h1{font-size:68px;letter-spacing:-2.5px}.hero-caption{left:-15px;right:18px;padding:18px}.hero-caption strong{font-size:20px}.hero-bottom{align-items:start;flex-direction:column;gap:8px}.section-pad{padding:85px 6%}.desktop-nav{gap:25px;margin-left:0}.detail-copy{padding:60px 10%}.detail-photo{min-height:620px}.contact{gap:6%}.contact-card{padding:30px}.project-meta h3{font-size:25px}.hero-location{margin-left:39px}.process{gap:6%}.dialog-body{gap:12px;grid-template-columns:36px 1fr 36px .8fr}.gallery-arrow{width:36px;height:36px}}
@media(max-width:760px){html{scroll-padding-top:24px}.site-header{height:85px;padding:0 6%}.desktop-nav{display:none}.logo-crop{width:88px;height:65px}.logo-crop img{width:183px;left:-48px;top:-20px}.header-cta{font-size:10px;padding:8px 13px;gap:18px;margin-left:auto;margin-right:20px}.menu-toggle{border:0;background:transparent;width:32px;min-height:44px;display:flex;justify-content:center;flex-direction:column;gap:6px;padding:5px}.menu-toggle span{display:block;height:1px;width:22px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.hero{height:auto;max-height:none;min-height:0;display:flex;flex-direction:column;padding:0;gap:0}.hero-copy{padding:42px 7% 32px}.eyebrow{font-size:8px;letter-spacing:1.7px;margin-bottom:25px}h1{font-size:clamp(58px,10vw,79px);line-height:1.09;letter-spacing:-2.5px;margin-bottom:23px}.hero-description{font-size:12px;margin-bottom:25px}.button{min-height:52px;font-size:11px;padding:14px 20px}.hero-bottom{padding:30px 0 0;align-items:center;flex-direction:row;gap:10px}.hero-location{font-size:8px;margin-left:0;max-width:110px}.scroll-cue{font-size:7px;letter-spacing:1px}.scroll-icon{height:32px;width:25px}.hero-visual{height:560px;margin:0 5% 24px}.hero-image{object-position:center 39%}.hero-caption{left:-9px;right:19px;bottom:20px;padding:19px}.hero-caption strong{font-size:21px}.hero-caption .eyebrow{font-size:7px}.image-index{bottom:125px}.ticker{padding:15px 0}.ticker-track>span{font-size:8px;letter-spacing:2px}.ticker i{margin:0 25px;font-size:18px}.section-pad{padding:70px 7%}h2{font-size:42px;letter-spacing:-1.8px}.essence>.eyebrow{margin-bottom:30px}.essence-main{display:block}.essence-copy{padding-top:7px;max-width:none}.essence-copy p{font-size:12px}.values{grid-template-columns:1fr;gap:0;margin-top:30px;padding-top:5px}.values span{padding:17px 0;border-bottom:1px solid var(--line);font-size:11px}.section-heading{display:block}.section-heading h2{max-width:330px}.section-aside{margin:22px 0 0;font-size:11px}.project-toolbar{margin-top:25px}.filters{gap:21px}.filter{font-size:10px}.project-hint{display:none}.project-grid{column-gap:5%;row-gap:30px}.project-offset{padding-top:50px}.photo-tall{aspect-ratio:3/5}.photo-short{aspect-ratio:3/4}.project-photo img{object-position:center}.project-meta{margin-top:15px;gap:8px}.project-meta .eyebrow{font-size:6px;letter-spacing:.9px;line-height:1.8}.project-meta h3{font-size:23px;line-height:1.2;letter-spacing:-.6px}.project-meta>span{font-size:8px}.photo-action{bottom:9px;right:9px;font-size:6px;padding:6px 8px;gap:8px;letter-spacing:.7px}.photo-action span{font-size:14px}.instagram-line{margin-top:33px;padding-top:19px;display:block}.instagram-line>span{font-size:23px;display:block;margin-bottom:15px}.text-link{font-size:11px}.detail-section{grid-template-columns:1fr}.detail-photo{min-height:0;height:460px}.detail-photo img{object-position:center 58%}.detail-copy{padding:55px 8% 48px}.detail-copy h2{font-size:47px}.detail-copy>p:not(.eyebrow):not(.material-note){max-width:360px}.process{display:block}.process-intro{position:static}.process-intro .text-link{margin-top:0;margin-bottom:37px}.process-step{gap:20px;padding:25px 0 33px}.process-step h3{font-size:28px}.process-step p{font-size:12px}.process-step:last-child{padding-bottom:33px}.faq{display:block;padding-top:55px}.faq h2{font-size:41px}.faq-items{margin-top:35px}.faq-items summary{font-size:12px}.contact{display:block;padding-top:62px}.contact h2{font-size:62px}.contact-card{margin-top:35px;padding:28px 26px}.contact-card h3{font-size:31px}.site-footer{padding:35px 7% 85px}.footer-main{display:grid;grid-template-columns:1fr 1fr;gap:20px 35px}.footer-main p{font-size:15px}.brand-footer .logo-crop{width:95px;height:70px}.footer-main>a:not(.brand){font-size:10px}.footer-bottom{font-size:8px;line-height:1.8;align-items:start}.footer-bottom>span:last-child{max-width:110px;text-align:right}.floating-contact{bottom:16px;right:16px;padding:11px;border-radius:50%;width:49px;height:49px}.floating-contact span{display:none}.floating-contact svg{width:25px}.project-dialog{padding:14px 17px 24px;width:95vw;max-height:95svh}.dialog-body{grid-template-columns:38px 1fr 38px;gap:6px}.dialog-body>img{max-height:50svh}.dialog-description{grid-column:1/-1;padding:20px 5px 0}.dialog-description h2{font-size:35px;margin-bottom:12px}.dialog-description .button{margin-top:18px}.dialog-bar{margin-bottom:8px}}
@media(max-width:380px){.header-cta{margin-right:12px}.hero-copy{padding-top:35px}h1{font-size:56px}.hero-visual{height:470px}.hero-caption strong{font-size:18px}.hero-caption{padding:17px 14px}.project-meta h3{font-size:21px}.filters{gap:16px}.contact h2{font-size:55px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}.hero-image,.ticker-track{transform:none!important;will-change:auto}}

/* Navigation stays available while visitors explore the portfolio. */
html { scroll-padding-top: 120px; }
.site-header {
  position: sticky;
  top: 0;
  background: #f3f0e9f5;
  backdrop-filter: blur(16px);
  transition: box-shadow .3s, background .3s;
}
.site-header.is-scrolled { box-shadow: 0 8px 24px #292e280a; }
.desktop-nav { gap: 26px; margin-left: 20px; }
.desktop-nav a[aria-current="location"]::after { transform: scaleX(1); }
.desktop-nav a[aria-current="location"] { color: #566044; }
.header-cta[aria-current="location"] { background: var(--ink); color: var(--paper); }
.reading-progress {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #8d9473;
  transform: scaleX(var(--reading-progress, 0));
  transform-origin: left;
}
.room-shortcuts { display: flex; align-items: center; gap: 14px; margin-top: 19px; font-size: 10px; color: var(--muted); }
.room-shortcuts a { padding: 8px 0; text-underline-offset: 5px; }
.room-shortcuts a:hover { color: var(--ink); text-decoration: underline; }
.room-shortcuts > span { color: #b2b6a5; }
.project-toolbar {
  position: sticky;
  top: 103px;
  z-index: 10;
  background: #e9e9dff5;
  backdrop-filter: blur(12px);
  padding: 10px 0;
}
.filters { gap: 12px; }
.filter { border-radius: 24px; padding: 10px 18px; transition: color .2s, background .2s; }
.filter::after { display: none; }
.filter.active { background: var(--ink); color: var(--paper); }
.filter:not(.active):hover { background: #dce0d0; }
.process-intro { top: 135px; }
.menu-backdrop { position: fixed; inset: 85px 0 0; border: 0; background: #20271f66; backdrop-filter: blur(4px); z-index: 25; }
.dialog-body > img { grid-column: 2; grid-row: 1; }
.gallery-prev { grid-column: 1; grid-row: 1; }
.gallery-next { grid-column: 3; grid-row: 1; }
@media (min-width: 761px) and (max-width: 1100px) {
  .desktop-nav { gap: 17px; margin-left: 0; font-size: 11px; }
  .header-cta { gap: 15px; padding: 10px 13px; }
}
@media (max-width: 760px) {
  html { scroll-padding-top: 105px; }
  body.menu-open { overflow: hidden; }
  body.menu-open .floating-contact { visibility: hidden; }
  .mobile-menu { padding: 25px 7% 30px; max-height: calc(100dvh - 85px); overflow-y: auto; box-shadow: 0 14px 30px #2221; }
  .mobile-menu > .eyebrow { margin-bottom: 12px; color: var(--muted); }
  .mobile-menu a { font-family: var(--serif); font-size: 25px; padding: 11px 0; display: flex; align-items: center; gap: 22px; }
  .mobile-menu a > span { font-family: var(--sans); font-size: 9px; color: var(--muted); }
  .mobile-menu a[aria-current="location"] { color: #566044; }
  .mobile-menu a[aria-current="location"]::after { content: "↗"; margin-left: auto; font-size: 20px; }
  .mobile-menu a.mobile-contact { font: 12px var(--sans); background: var(--ink); color: var(--paper); justify-content: space-between; margin-top: 20px; padding: 18px; border: 0; }
  .room-shortcuts { gap: 13px; margin-top: 12px; }
  .hero-bottom { padding-top: 20px; }
  .project-toolbar { top: 85px; padding: 9px 0; }
  .filters { width: 100%; gap: 4px; justify-content: space-between; }
  .filter { padding: 9px 12px; font-size: 10px; }
  .filter span { display: none; }
  .dialog-description { grid-row: 2; }
}
