@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--paper:#f4f2ec;--ink:#292e28;--muted:#777b71;--line:#d8d9cf;--olive:#5d6652;--dark:#272d26}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button{color:inherit}button,a,summary{touch-action:manipulation}button{cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #a7976f;outline-offset:5px}.wrap{width:calc(100% - 112px);max-width:1450px;margin:auto}header{height:106px;position:absolute;top:0;z-index:10;width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 56px;color:#fff;border-bottom:1px solid #ffffff40;transition:background .3s}header.scrolled{position:fixed;background:var(--dark);height:82px;box-shadow:0 1px 0 #ffffff1a}.brand{display:flex;flex-direction:column;line-height:1;align-items:center}.brand-name{font-family:'Manrope',sans-serif;font-size:33px;letter-spacing:3px;font-weight:800}.brand-dot{color:#c0b599}.brand-sub{font-size:8px;letter-spacing:4px;margin-top:8px}nav{display:flex;gap:36px;align-items:center;font-size:12px}nav a{position:relative}nav a:after{content:'';position:absolute;bottom:-6px;left:0;height:1px;width:0;background:currentColor;transition:.3s}nav a:hover:after{width:100%}.nav-contact{border-bottom:1px solid #ffffff80;padding-bottom:7px;margin-left:24px}.nav-contact span{margin-left:22px}.menu-toggle{display:none}.hero{height: min(950px,100svh);min-height:700px;position:relative;color:white;isolation:isolate}.hero-img{position:absolute;inset:0;z-index:-3;object-position:center 58%}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#121a1b66,transparent 40%,#101810ac);z-index:-2}.hero-top{position:absolute;top:135px;left:56px;right:56px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px}.hero-copy{position:absolute;left:8%;bottom:120px;width:80%;max-width:1100px}.eyebrow,.section-label{font-size:10px;letter-spacing:2px;font-weight:500}.hero h1{font-family:'Manrope',sans-serif;font-weight:400;font-size:clamp(64px,7.1vw,112px);line-height:1.07;letter-spacing:-5px;margin:22px 0 34px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400}.hero-bottom{display:flex;justify-content:space-between;align-items:center;max-width:850px}.hero-bottom p{font-size:15px;line-height:1.7;font-weight:400}.circle-link{width:64px;height:64px;border:1px solid #ffffff80;border-radius:50%;display:grid;place-items:center;font-size:26px;transition:.25s}.circle-link:hover{background:#fff;color:var(--ink);transform:translateY(4px)}.hero-foot{position:absolute;bottom:27px;left:56px;right:56px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.7px}.hero-foot span:nth-child(2){letter-spacing:.5px;opacity:.75}.intro{padding-top:125px;padding-bottom:135px;display:grid;grid-template-columns:1fr 2fr;gap:50px}.section-label{color:var(--olive);padding-top:10px}h2{font-family:'Manrope',Arial,sans-serif;font-weight:400;font-size:clamp(36px,4vw,62px);line-height:1.17;letter-spacing:-2.2px;margin:0 0 35px}.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:54px;max-width:830px;color:#65695f}.intro-columns p{margin:0 0 30px}.text-link{display:inline-flex;gap:40px;padding:10px 0;border-bottom:1px solid var(--ink);font-size:12px}.text-link span{transition:transform .3s}.text-link:hover span{transform:translate(3px,-3px)}.collection{background:#e9e9e0;padding:90px 0 70px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:65px}.section-heading .section-label{margin-bottom:30px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:13px;color:#71756a;margin-bottom:8px}.collection-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px 70px;align-items:start}.collection-card{background:none;border:0;padding:0;text-align:left;display:block;width:100%}.collection-card .photo{height:390px;overflow:hidden;position:relative}.collection-card.tall .photo{height:490px}.collection-card.offset{margin-top:100px}.collection-card img{transition:transform .8s}.collection-card:hover img{transform:scale(1.045)}.view{position:absolute;right:20px;bottom:20px;background:#f4f2eced;font-size:10px;letter-spacing:1px;padding:12px 17px;transform:translateY(5px);opacity:0;transition:.3s}.collection-card:hover .view,.collection-card:focus-visible .view{opacity:1;transform:none}.card-caption{display:flex;justify-content:space-between;align-items:center;margin:21px 0 4px}.card-caption h3{font-size:23px;font-weight:400;letter-spacing:-.6px;margin:0}.card-caption span{font-size:10px;color:#73796c}.collection-card p{font-size:12px;color:#767b6d;margin:0}.image-note{font-size:10px;color:#808477;padding-top:45px;max-width:1450px;line-height:1.5}.workshop{display:grid;grid-template-columns:1.1fr 1fr;background:var(--dark);color:#eee}.workshop-image{position:relative;min-height:650px}.workshop-image img{position:absolute;inset:0;object-position:40% center}.workshop-image:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 70%,#0007)}.workshop-image>span{position:absolute;bottom:22px;left:25px;z-index:1;font-size:8px;letter-spacing:1px}.workshop-copy{padding:90px 13%}.workshop .section-label{color:#b4bba6;margin-bottom:35px}.workshop-copy>p{color:#b9bdb2;font-size:14px;max-width:430px}.factory-stat{padding:28px 0 30px;display:flex;gap:25px;align-items:center;border-bottom:1px solid #ffffff30;margin-bottom:20px}.factory-stat strong{font-size:45px;letter-spacing:-2px;font-weight:400;white-space:nowrap}.factory-stat small{font-size:14px;letter-spacing:0}.factory-stat span{font-size:10px;color:#b9bdb2}.light{border-color:#949e86}.factory-gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;padding:70px 0 100px}.factory-gallery figure{margin:0}.factory-gallery img{height:310px;object-position:50% 52%}.factory-gallery figcaption{padding:17px 0;font-size:12px;border-bottom:1px solid var(--line)}.factory-gallery figcaption span{font-size:9px;margin-right:23px;color:#8a8e80}.process{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding:60px 0 120px}.process .section-label{margin-bottom:28px}.process-list details{border-top:1px solid var(--line)}.process-list details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;font-size:20px;padding:22px 0}summary::-webkit-details-marker{display:none}summary span{font-size:10px;color:#89917f;margin-right:30px}summary b{font-size:21px;font-weight:400;margin-left:auto}details[open] summary b{transform:rotate(45deg)}details p{font-size:13px;color:#777e70;margin:0 25px 26px 45px;max-width:430px}.projects{padding:20px 0 125px}.project-list button{display:grid;grid-template-columns:50px 1.5fr 1fr 1.3fr 30px;align-items:center;gap:10px;width:100%;text-align:left;padding:28px 12px;border:0;border-top:1px solid var(--line);background:none;transition:background .25s}.project-list button:last-child{border-bottom:1px solid var(--line)}.project-list button:hover{background:#e9e9df}.project-list h3{font-size:23px;font-weight:400;letter-spacing:-.7px;margin:0}.project-list span{font-size:11px;color:#777d70}.project-list .project-no{font-size:9px}.project-list b{font-size:22px;font-weight:400}.contact{background:#dce0d2;padding:100px 0}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px}.contact .section-label{margin-bottom:33px}.contact h2{font-size:clamp(50px,6.5vw,93px);line-height:1.07;letter-spacing:-4px}.contact p{font-size:13px;color:#707966}.contact-email{display:inline-block;border-bottom:1px solid #9da58e;padding:9px 0;font-size:15px;margin:12px 0}.contact-info{display:flex;flex-direction:column;font-size:12px;color:#6d7662;line-height:1.9}.contact-info span{margin-top:15px}form{padding-top:35px}form h3{font-size:25px;font-weight:400;margin:0 0 30px}label{display:block;font-size:10px;letter-spacing:.5px;margin-bottom:25px}input,select,textarea{width:100%;border:0;border-bottom:1px solid #aeb6a1;display:block;background:none;padding:11px 0;color:var(--ink);border-radius:0;font-size:13px;outline:none}input:focus,textarea:focus,select:focus{border-bottom-color:var(--ink)}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#8b937f}.submit{border:0;border-bottom:1px solid var(--ink);background:none;width:100%;display:flex;justify-content:space-between;padding:15px 0;font-size:13px}.submit span{font-size:20px}.form-note{font-size:10px!important}footer{display:flex;gap:35px;align-items:center;padding:50px 0;font-size:9px;color:#83887b}footer .footer-brand{font-family:'Manrope',Arial;font-weight:800;font-size:29px;letter-spacing:2px;color:var(--ink)}.footer-brand span{color:#8b927f}footer p{margin-right:auto}.back-top{margin-left:25px;font-size:8px;letter-spacing:1px}dialog{border:0;padding:0;max-width:900px;width:90vw;background:var(--paper);color:var(--ink);max-height:90svh;overflow:auto}dialog::backdrop{background:#151c17bb;backdrop-filter:blur(6px)}.close-dialog{position:absolute;right:14px;top:14px;background:var(--paper);width:40px;height:40px;border:0;border-radius:50%;font-size:27px;z-index:1}.dialog-img{height:360px;width:100%;object-fit:cover}.dialog-copy{padding:40px 50px}.dialog-copy h2{font-size:38px;margin:12px 0 20px}.dialog-copy p{color:#737a6b;font-size:14px}.dialog-copy .text-link{margin-top:15px}.dialog-note{font-size:10px!important}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}@media(min-width:1600px){.hero-copy{left:calc((100vw - 1350px)/2)}}@media(max-width:1000px){header{padding:0 30px}nav{gap:20px}.nav-contact{margin-left:0}.wrap{width:calc(100% - 60px)}.intro{grid-template-columns:1fr 2fr;gap:20px}.collection-grid{gap:45px}.collection-card .photo{height:300px}.collection-card.tall .photo{height:380px}.card-caption h3{font-size:19px}.workshop-copy{padding:65px 9%}.factory-stat{display:block}.factory-stat span{display:block}.factory-gallery img{height:240px}.process{gap:45px}.contact-grid{gap:60px}.project-list button{grid-template-columns:30px 1.5fr .8fr 1fr 25px}.project-list h3{font-size:20px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}header{height:84px;padding:0 20px}.brand-name{font-size:27px}.brand-sub{font-size:6px}.menu-toggle{display:flex;gap:17px;align-items:center;background:none;border:0;color:white;font-size:12px}nav{display:none;position:absolute;top:84px;left:0;right:0;background:var(--dark);padding:30px;flex-direction:column;align-items:start;gap:25px}header.scrolled nav{top:82px}header.menu-open nav{display:flex}.hero{min-height:650px;height:92svh;max-height:900px}.hero-top{top:110px;left:20px;right:20px;font-size:7px;letter-spacing:1px}.hero-top span{max-width:130px;text-align:right}.hero-img{object-position:54% center}.hero-copy{left:25px;bottom:105px;width:calc(100% - 50px)}.hero h1{font-size:60px;letter-spacing:-3px;line-height:1.1}.hero-bottom p{font-size:12px}.circle-link{width:48px;height:48px;font-size:22px}.hero-foot{left:20px;right:20px;bottom:25px;gap:12px;font-size:6px}.hero-foot span:nth-child(2){max-width:105px;text-align:center}.intro{display:block;padding:75px 0}.intro>.section-label{margin-bottom:30px}h2{font-size:38px;letter-spacing:-1.6px}.intro-columns{display:block}.intro-columns p{font-size:14px;margin-bottom:20px}.text-link{gap:25px}.collection{padding:65px 0 45px}.section-heading{display:block;margin-bottom:40px}.section-heading>p{margin-top:25px;font-size:12px}.collection-grid{gap:35px 20px}.collection-card .photo,.collection-card.tall .photo{height:240px}.collection-card.offset{margin-top:55px}.card-caption{margin-top:14px;gap:8px}.card-caption h3{font-size:16px;line-height:1.3;letter-spacing:-.4px}.card-caption span{font-size:8px}.collection-card p{font-size:10px;margin-top:8px;line-height:1.5}.view{display:none}.image-note{font-size:9px;padding-top:35px}.workshop{display:flex;flex-direction:column}.workshop-image{min-height:430px}.workshop-copy{padding:60px 25px}.workshop-copy h2{font-size:41px}.factory-stat{display:flex;gap:30px}.factory-stat strong{font-size:46px}.factory-gallery{gap:13px;padding:40px 0 65px}.factory-gallery img{height:185px}.factory-gallery figcaption{font-size:10px;line-height:1.5}.factory-gallery figcaption span{display:block;margin:0 0 5px}.process{display:block;padding:25px 0 75px}.process-list{margin-top:40px}summary{font-size:18px}.projects{padding:0 0 75px}.project-list button{grid-template-columns:24px 1fr 24px;padding:22px 0;gap:5px}.project-list h3{font-size:21px}.project-list button>span:nth-of-type(2){grid-column:2;font-size:10px}.project-list button>span:nth-of-type(3){grid-column:2;font-size:10px}.project-list b{grid-column:3;grid-row:1 / 4;align-self:center}.project-no{align-self:start;padding-top:5px}.contact{padding:65px 0}.contact-grid{display:block}.contact h2{font-size:66px;letter-spacing:-3px}.contact form{padding-top:60px}footer{flex-wrap:wrap;padding:35px 0;gap:18px}footer p{margin:0;width:calc(100% - 180px)}footer .footer-brand{font-size:25px}footer>span{margin-right:auto}.back-top{margin-left:0}.dialog-img{height:260px}.dialog-copy{padding:25px}.dialog-copy h2{font-size:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}

.joinery-gallery{padding:95px 0 100px}.joinery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.joinery-photo{padding:0;border:0;background:none;text-align:left;overflow:hidden}.joinery-photo img{aspect-ratio:3/4;height:auto;transition:transform .6s}.joinery-photo:hover img{transform:scale(1.025)}.joinery-photo>span{display:flex;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--line);font-size:14px}.joinery-photo b{font-weight:400}.photo-view{background:#eeeae0}.photo-view img{height:78svh;object-fit:contain}.photo-view-caption{padding:18px 25px;font-size:13px}@media(max-width:700px){.joinery-gallery{padding:65px 0}.joinery-grid{grid-template-columns:1fr 1fr;gap:25px 16px}.joinery-photo:last-child{grid-column:1 / -1;width:70%;margin:0 auto}.joinery-photo>span{font-size:12px}.factory-stat{gap:18px}.factory-stat strong{font-size:40px}.factory-stat span{min-width:0}}

/* Mobile layout and touch controls */
html,body{max-width:100%;overflow-x:clip}main,section,form{min-width:0}dialog{overscroll-behavior:contain}input,select,textarea{max-width:100%}
@media(max-width:700px){
 header{padding-top:env(safe-area-inset-top)}.menu-toggle{min-height:44px;min-width:80px;justify-content:flex-end}nav a{min-height:44px;display:flex;align-items:center}nav{max-height:calc(100svh - 84px);overflow-y:auto}
 .hero{height:90svh;min-height:640px}.hero-copy{bottom:100px}.hero h1{font-size:clamp(42px,10.8vw,64px);letter-spacing:-2.5px}.hero-top{font-size:7px}.hero-foot{align-items:end}.hero-foot span:nth-child(2){max-width:115px;font-size:6px}.hero-bottom{gap:16px}.circle-link{flex-shrink:0}
 .collection-grid{grid-template-columns:1fr;gap:38px}.collection-card.offset{margin-top:0}.collection-card .photo,.collection-card.tall .photo{height:auto;aspect-ratio:4/5;max-height:520px}.collection-card[data-detail="kitchen"] .photo{aspect-ratio:4/3}.card-caption h3{font-size:22px}.collection-card p{font-size:13px}.view{display:block;opacity:1;transform:none;font-size:9px;padding:10px 13px}
 .joinery-grid{grid-template-columns:1fr;gap:30px}.joinery-photo:last-child{grid-column:auto;width:100%;margin:0}.joinery-photo img{max-height:560px;object-position:center}.joinery-photo>span{font-size:15px}
 .workshop-image{min-height:340px}.workshop-copy{padding:50px 20px}.factory-stat{flex-wrap:wrap;gap:12px 24px}.factory-stat strong{font-size:44px}.factory-stat span{font-size:11px}.factory-gallery{grid-template-columns:1fr;gap:27px}.factory-gallery img{height:360px}.factory-gallery figcaption{font-size:13px}.factory-gallery figcaption span{display:inline;margin-right:15px}
 input,select,textarea{font-size:16px;padding:13px 0;min-height:48px}label{font-size:12px;margin-bottom:25px}.contact-email{font-size:16px;overflow-wrap:anywhere}.contact-info a{display:flex;align-items:center;min-height:44px;font-size:14px}.submit{min-height:54px;font-size:15px}.form-note{line-height:1.6}.close-dialog{width:48px;height:48px}.dialog-copy{padding:28px 22px}.dialog-img{height:300px}.photo-view img{height:75svh}.contact-grid{gap:0}footer{padding-bottom:calc(30px + env(safe-area-inset-bottom))}.back-top{display:flex;min-height:44px;align-items:center}
}
@media(max-width:360px){.hero h1{font-size:40px}.hero-top span{max-width:115px}.brand-name{font-size:24px}.wrap{width:calc(100% - 32px)}h2{font-size:34px}.contact h2{font-size:58px}.factory-stat strong{font-size:40px}.project-list h3{font-size:19px}}

.project-list button[hidden]{display:none}.project-list h3{overflow-wrap:anywhere}.projects-toggle{background:none;border:0;border-bottom:1px solid var(--ink);margin-top:30px;min-height:48px}.project-facts{display:flex;gap:60px;padding-top:20px;border-top:1px solid var(--line);font-size:10px!important;letter-spacing:1px}.project-facts strong{display:block;font-weight:400;font-size:22px;letter-spacing:0;color:var(--ink);padding-top:5px}@media(min-width:701px){.project-list h3{font-size:20px;line-height:1.4}.project-list button{grid-template-columns:40px 1.6fr .8fr 1.3fr 25px}}
