@import url('fonts.css?v=2');
:root{--paper:#f2f0eb;--ink:#272c28;--muted:#74766f;--line:#d5d6ce;--accent:#8b4c35}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px}button,a{-webkit-tap-highlight-color:transparent}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #b17551;outline-offset:5px}button{border:0}header{position:absolute;z-index:10;top:0;left:0;width:100%;height:104px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;color:#fff;border-bottom:1px solid #ffffff35}.logo{font-size:49px;font-weight:700;letter-spacing:-5px;line-height:1}.logo span{font:14px Arial;vertical-align:top;letter-spacing:0;margin-left:6px}nav{display:flex;gap:36px;font-size:14px}.header-cta{background:none;color:inherit;border-bottom:1px solid #aaa;padding:12px 0;font-size:14px}.menu-toggle{display:none}.hero{height:850px;min-height:680px;max-height:1100px;position:relative;color:#fff;background:#44463e}.hero-photo,.hero-shade{position:absolute;inset:0}.hero-photo{background-size:cover;background-position:center}.hero-shade{background:linear-gradient(90deg,#111b19a8,transparent 85%),linear-gradient(0deg,#10211acc,transparent 60%,#14201866)}.hero-top{position:absolute;top:138px;left:4%;right:4%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:1.6px}.hero-content{position:absolute;bottom:140px;left:7%;right:7%}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:600}.hero h1{font-size:clamp(50px,6.8vw,108px);font-weight:400;line-height:1.1;letter-spacing:-5px;margin:26px 0 32px}.hero em{font-family:Prata,Georgia,serif;font-weight:400;font-size:.85em;letter-spacing:-4px}.hero-bottom{display:flex;justify-content:space-between;align-items:end}.hero-bottom p{font-size:16px;line-height:1.7;color:#f1f1e7}.light-button{background:#f2f0eb;color:var(--ink);padding:22px 28px;min-width:236px;display:flex;align-items:center;justify-content:space-between;gap:40px}.button-dot{width:7px;height:7px;border-radius:100%;background:var(--accent)}.hero-foot{position:absolute;bottom:0;left:4%;right:4%;height:75px;border-top:1px solid #ffffff45;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:1.4px}.hero-foot a span{margin-left:15px}.section{padding:110px 7%}.intro h2{font-size:clamp(42px,5vw,76px);font-weight:400;line-height:1.18;letter-spacing:-3px;margin:50px 0}.intro h2 span{color:#94998f}.intro-bottom{display:grid;grid-template-columns:1fr 1fr;gap:10%}.intro-bottom p{line-height:1.8;max-width:510px}.intro-bottom p:first-child{font-size:20px}.intro-bottom p:last-child{color:#676b63}@media(min-height:850px){.hero{height:95vh}}@media(max-width:700px){header{height:82px;padding:0 6%}.logo{font-size:42px}nav,.header-cta{display:none}.menu-toggle{display:flex;width:40px;height:35px;flex-direction:column;justify-content:center;gap:7px;background:none;padding:6px}.menu-toggle span{height:1px;width:100%;background:white}.hero{height:calc(100svh - 20px);min-height:690px}.hero-top{top:110px;left:6%;right:6%;font-size:10px;letter-spacing:1px}.hero-top span:first-child{max-width:140px}.hero-content{left:6%;right:6%;bottom:114px}.hero h1{font-size:52px;letter-spacing:-2.4px}.hero em{letter-spacing:-2px}.hero-bottom{display:block}.hero-bottom p{font-size:14px}.light-button{margin-top:25px;min-width:220px;width:max-content;padding:20px}.hero-foot{left:6%;right:6%;font-size:10px}.hero-foot>span:first-child{display:none}.section{padding:75px 6%}.intro h2{letter-spacing:-2px;margin:35px 0}.intro-bottom{grid-template-columns:1fr;gap:6px}.intro-bottom p:first-child{font-size:18px}}
.hero-photo{background-image:url(assets/kitchen.jpg)}
::selection{background:#a57a59;color:#fff}h2,h3,p{margin-top:0}h2{font-size:clamp(38px,4.5vw,68px);line-height:1.15;font-weight:400;letter-spacing:-2.6px}h2 em{font-family:Prata,Georgia,serif;font-size:.88em;letter-spacing:-2px;font-weight:400}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:48px}.section-heading h2{margin:28px 0 0}.section-heading>p{color:var(--muted);line-height:1.8;margin:0 0 5px}.spaces{padding-top:40px}.filters{display:flex;gap:30px;border-bottom:1px solid var(--line);margin-bottom:42px}.filters button{background:none;color:#74776e;padding:0 0 20px;font-size:14px;position:relative}.filters button.active{color:var(--ink)}.filters button.active:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--ink)}.filters sup{font-size:10px;margin-left:5px}.project-grid{display:grid;grid-template-columns:1.18fr 1fr;gap:64px 45px;align-items:start}.project-card{padding:0;background:none;text-align:left;min-width:0}.project-card.offset{margin-top:96px}.project-image{position:relative;overflow:hidden;height:490px;background:#dbd9d3}.project-card.large .project-image{height:400px}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform 1s}.project-card:hover img{transform:scale(1.045)}.detail-crop img{object-position:85% 50%;transform:scale(1.5)}.detail-crop:hover img{transform:scale(1.57)}.image-label{position:absolute;left:22px;top:22px;color:#fff;font-size:11px;letter-spacing:1px;background:#20241c88;padding:9px 12px}.image-action{position:absolute;right:18px;bottom:18px;background:var(--paper);padding:13px 17px;font-size:12px;opacity:0;transform:translateY(6px);transition:.3s}.project-card:hover .image-action,.project-card:focus-visible .image-action{opacity:1;transform:none}.project-caption{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:21px}.project-caption h3{font-size:22px;font-weight:500;letter-spacing:-.7px;margin:0}.project-caption>span{font-size:12px;color:var(--muted);text-align:right;line-height:1.5;max-width:150px}.reference-note{font-size:12px;line-height:1.7;color:#777b73;margin:38px 0 0}.material-section{display:grid;grid-template-columns:1fr 1fr;background:#e6e5df}.material-photo{min-height:750px;position:relative;overflow:hidden}.material-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:35% 50%}.material-photo-label{position:absolute;bottom:30px;left:35px;font-size:11px;letter-spacing:1.4px;color:#fff;background:#29302899;padding:10px}.material-content{padding:80px 13%}.material-content h2{margin:28px 0}.material-content>p{color:#6c7167;line-height:1.8;max-width:385px}.swatches{display:flex;gap:20px;margin:35px 0 22px}.swatch{width:44px;height:44px;border-radius:50%;position:relative}.swatch:after{content:'';position:absolute;inset:-6px;border:1px solid transparent;border-radius:50%}.swatch.selected:after{border-color:var(--ink)}.swatch.wood{background:#9c7857}.swatch.graphite{background:#353a35}.swatch.milk{background:#f6f3e8;border:1px solid #d4d1c6}.material-info{min-height:111px}.material-info h3{font-size:20px;font-weight:500;margin-bottom:9px}.material-info p{font-size:14px;line-height:1.7;color:#646a61}.material-content .material-caption{font-size:12px;line-height:1.6}.text-button{display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #a4a79b;padding:17px 0;background:none;color:inherit;font-size:14px;min-width:230px}.text-button span{font-size:23px;font-weight:400}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:70px}.approach-grid article{border-top:1px solid var(--line);padding-top:27px}.step-num{font-size:12px;color:var(--accent)}.approach-grid h3{font-size:22px;font-weight:500;margin:45px 0 18px;letter-spacing:-.5px}.approach-grid p{color:#74776e;font-size:14px;line-height:1.9}.statement{height:640px;position:relative;display:flex;align-items:center;justify-content:center;color:white;text-align:center;overflow:hidden}.statement>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.statement:after{content:'';position:absolute;inset:0;background:#18251b70}.statement>div{position:relative;z-index:1;padding:30px}.statement h2{font-size:clamp(42px,5vw,76px);margin:40px 0}.statement .light-button{margin:auto}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.faq h2{margin-top:30px}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;font-size:17px;padding:25px 35px 25px 0;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:2px;top:22px;font-size:24px;font-weight:400;color:#73796e}.faq details[open] summary:after{content:'−'}.faq details p{font-size:14px;line-height:1.9;color:#6b7166;margin:0 25px 25px 0}.contact{background:#293229;color:#f4f3ec;padding-top:55px;padding-bottom:70px}.contact-top{display:flex;justify-content:space-between;color:#c1c5b9}.contact h2{font-size:clamp(60px,8vw,120px);line-height:1.08;letter-spacing:-5px;margin:70px 0 40px}.contact h2 em{color:#c4b599;letter-spacing:-4px}.contact-bottom{display:flex;justify-content:space-between;align-items:center}.contact-bottom p{color:#c6cbbf;line-height:1.9;font-size:16px}footer{padding:65px 7% 25px}.footer-top{display:flex;justify-content:space-between;align-items:start;gap:40px;padding-bottom:50px}.footer-top .logo{font-size:56px}.footer-top .logo span{display:block;letter-spacing:3px;font-size:10px;margin:15px 0 0 3px}.footer-top p{font-size:13px;line-height:1.8;color:#797c73}.footer-top>div{display:flex;flex-direction:column;gap:13px;font-size:13px}.footer-top .text-button{margin-top:-12px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:25px;color:#80857a;font-size:11px}.footer-bottom button{padding:0;background:none;font-size:12px;color:#6d7267}.footer-bottom>span:last-child{letter-spacing:1px}.reveal{transition:opacity .75s,transform .75s}.reveal.pending{opacity:0;transform:translateY(24px)}[hidden]{display:none!important}dialog{border:0;padding:0;color:var(--ink);background:var(--paper);max-height:90svh;max-width:calc(100vw - 30px);overflow-y:auto}dialog::backdrop{background:#142016bb;backdrop-filter:blur(5px)}body:has(dialog[open]){overflow:hidden}.dialog-close{position:absolute;z-index:2;right:15px;top:15px;width:42px;height:42px;border-radius:50%;background:var(--paper);color:var(--ink);font-size:27px;line-height:1}.project-dialog{width:900px}.project-dialog>img{width:100%;height:390px;object-fit:cover;display:block}.project-dialog-content{padding:40px 50px}.project-dialog-content h2{font-size:44px;margin:22px 0}.project-dialog-content>p{line-height:1.8;color:#6c7267}.project-tags{display:flex;flex-wrap:wrap;gap:10px}.project-tags span{border:1px solid #c6cabf;padding:8px 13px;font-size:12px}.project-dialog-content .reference-note{margin:20px 0}.dark-button{background:var(--ink);color:white;padding:18px 25px;font-size:14px}.dark-button:hover{background:#485241}.brief-dialog{width:640px;padding:48px}.brief-progress{display:flex;gap:8px;margin:30px 0}.brief-progress span{height:2px;flex:1;background:#d7d9ce}.brief-progress .on{background:var(--ink)}.step-label{font-size:10px;letter-spacing:1px;color:#818675}.brief-step h2{font-size:36px;letter-spacing:-1px;margin:18px 0}.brief-step>p{font-size:14px;line-height:1.7;color:#70766b}.brief-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:30px 0}.brief-options label{cursor:pointer;position:relative}.brief-options input{position:absolute;left:18px;top:20px;accent-color:var(--ink)}.brief-options label>span{display:block;border:1px solid #cdd1c6;padding:22px 18px 22px 45px;font-size:15px}.brief-options label:has(input:checked)>span{border-color:var(--ink);background:#e5e8dd}.brief-options small{display:block;font-size:11px;color:#78806e;margin-top:10px}.field{display:block;font-size:13px;margin:24px 0}.field input,.field textarea{width:100%;padding:14px 0;background:transparent;border:0;border-bottom:1px solid #b7bdaf;display:block;font-size:16px;border-radius:0;resize:vertical}.field-note{font-size:12px!important;line-height:1.7;color:#6f7767}.step-actions,.result-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:25px 0}.back-step,.copy-button{padding:10px 0;background:none;font-size:14px;color:var(--ink);text-decoration:underline;text-underline-offset:5px}.brief-result{padding:24px;background:#e3e7db;white-space:pre-line;line-height:1.8;font-size:14px;margin:25px 0;overflow-wrap:anywhere}.sources-dialog{width:630px;padding:50px}.sources-dialog h2{font-size:32px;margin:25px 0}.sources-dialog p,.sources-dialog li{font-size:14px;line-height:1.8}.sources-dialog li{margin:15px 0}.sources-dialog a{text-decoration:underline}.menu-open nav{display:flex;position:absolute;top:82px;left:0;right:0;background:#293229;flex-direction:column;padding:30px 6%;gap:25px}.menu-open .menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}.menu-open .menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}
@media(max-width:1050px){.project-caption{display:block}.project-caption>span{display:block;text-align:left;margin-top:8px;max-width:none}.material-content{padding:65px 10%}.material-content h2{font-size:52px}.footer-top{flex-wrap:wrap}.approach-grid{gap:30px}}
@media(max-width:700px){.section-heading{display:block;margin-bottom:32px}.section-heading h2{margin-top:25px}.section-heading>p{margin-top:25px;font-size:14px}.spaces{padding-top:10px}.filters{gap:26px;margin-bottom:28px}.project-grid{grid-template-columns:1fr;gap:35px}.project-card.offset{margin-top:0}.project-image,.project-card.large .project-image{height:330px}.project-caption{display:flex;align-items:start}.project-caption h3{font-size:20px}.project-caption>span{text-align:right;font-size:11px;max-width:140px;margin:0}.image-action{opacity:1;transform:none;font-size:11px;padding:11px}.material-section{grid-template-columns:1fr}.material-photo{min-height:390px}.material-content{padding:55px 6%}.material-content h2{font-size:48px}.material-content h2 br:nth-child(2){display:none}.material-info{min-height:95px}.material-photo-label{left:6%;bottom:22px}.approach-grid{grid-template-columns:1fr;gap:30px;margin-top:45px}.approach-grid article{position:relative;padding-left:45px}.step-num{position:absolute;top:27px;left:0}.approach-grid h3{margin:0 0 15px}.approach-grid p{margin-bottom:0}.statement{height:460px}.statement h2{font-size:43px;letter-spacing:-2px}.faq{grid-template-columns:1fr;gap:10px}.faq h2{font-size:42px}.faq summary{font-size:15px;line-height:1.6}.contact-top{gap:30px}.contact-top .eyebrow{font-size:10px;letter-spacing:1px}.contact h2{font-size:58px;letter-spacing:-3px;margin:60px 0 30px}.contact h2 em{letter-spacing:-2.5px}.contact-bottom{display:block}.contact-bottom p{font-size:14px}.contact-bottom .light-button{margin-top:30px}.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:30px}.footer-top .text-button{grid-column:1/-1;width:100%;margin:0}.footer-top>div{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:25px}.footer-top .logo{font-size:47px}.footer-bottom{flex-wrap:wrap;font-size:10px}.footer-bottom>span:last-child{display:none}.project-dialog>img{height:260px}.project-dialog-content{padding:30px 24px}.project-dialog-content h2{font-size:35px}.brief-dialog{padding:40px 24px}.brief-step h2{font-size:29px}.brief-options{gap:9px}.brief-options label>span{padding:20px 12px 20px 33px;font-size:14px}.brief-options input{left:10px}.brief-options small{font-size:10px;line-height:1.5}.sources-dialog{padding:45px 25px}.result-actions{gap:10px}.dark-button{padding:17px 19px}.hero .eyebrow{font-size:10px;letter-spacing:1.2px}}
@media(max-width:380px){.hero h1{font-size:45px}.contact h2{font-size:51px}.brief-options{grid-template-columns:1fr}.project-caption{display:block}.project-caption>span{text-align:left;margin-top:7px;max-width:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal.pending{opacity:1;transform:none}}
.material-content,.material-photo{min-width:0}.material-section{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}@media(max-width:700px){.material-section{grid-template-columns:minmax(0,1fr)}.material-content h2 br:nth-child(2){display:initial}.material-content h2{font-size:44px}}
