*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#faf9f6;--bg-alt:#f3f1ec;--text:#1c1917;--text-secondary:#78716c;--accent:#92785c;--border:#e0dcd5;--white:#fff;--serif:"EB Garamond",Georgia,serif;--sans:"Karla",-apple-system,sans-serif}html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}::selection{background:var(--accent);color:var(--white)}a{color:inherit}img{max-width:100%;display:block}.nav{z-index:100;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(24px,4vw,64px);transition:all .4s;display:flex;position:fixed;top:0;left:0;right:0}.nav.scrolled{-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#faf9f6eb}.nav-logo{font-family:var(--serif);letter-spacing:.01em;color:var(--text);font-size:20px;font-weight:500;line-height:1;text-decoration:none}.nav-logo span{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--text-secondary);margin-top:2px;font-size:10px;font-weight:500;display:block}.nav-links{gap:36px;list-style:none;display:flex}.nav-links a{font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);font-size:13px;font-weight:500;text-decoration:none;transition:color .3s;position:relative}.nav-links a:hover,.nav-links a.active{color:var(--text)}.nav-links a.active:after{content:"";background:var(--accent);height:1px;position:absolute;bottom:-4px;left:0;right:0}.nav-mobile-toggle{cursor:pointer;background:0 0;border:none;padding:8px;display:none}.nav-mobile-toggle span{background:var(--text);width:24px;height:1.5px;margin:6px 0;transition:all .3s;display:block}.mobile-menu{background:var(--bg);z-index:99;flex-direction:column;justify-content:center;align-items:center;gap:32px;display:none;position:fixed;inset:0}.mobile-menu.open{display:flex}.mobile-menu a{font-family:var(--serif);color:var(--text);font-size:32px;text-decoration:none}@media (max-width:768px){.nav-links{display:none}.nav-mobile-toggle{display:block}}.hero{flex-direction:column;justify-content:flex-end;min-height:100vh;padding:120px clamp(24px,4vw,64px) clamp(48px,8vh,96px);display:flex;position:relative;overflow:hidden}.hero-bg{z-index:0;background:linear-gradient(135deg,#e8e4de 0%,#d4cfc6 50%,#c8c0b4 100%);position:absolute;inset:0}.hero-bg:after{content:"";background:linear-gradient(#0000 0%,#1c19170d 40%,#1c191759 100%);position:absolute;inset:0}.hero-content{z-index:1;max-width:800px;position:relative}.hero h1{font-family:var(--serif);color:var(--white);letter-spacing:-.01em;opacity:0;margin-bottom:24px;font-size:clamp(36px,5.5vw,72px);font-weight:400;line-height:1.1;animation:1s .3s forwards hero-in;transform:translateY(24px)}.hero p{font-family:var(--sans);color:#fffc;opacity:0;max-width:560px;font-size:clamp(15px,1.6vw,18px);line-height:1.7;animation:1s .6s forwards hero-in;transform:translateY(24px)}@keyframes hero-in{to{opacity:1;transform:translateY(0)}}.hero-scroll-cue{z-index:1;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;bottom:32px;right:clamp(24px,4vw,64px)}.hero-scroll-cue span{font-family:var(--sans);letter-spacing:.15em;text-transform:uppercase;color:#ffffff80;writing-mode:vertical-rl;font-size:10px}.hero-scroll-cue .line{background:#ffffff4d;width:1px;height:48px;animation:2s ease-in-out infinite pulse-line}@keyframes pulse-line{0%,to{opacity:.3}50%{opacity:.8}}.section-label{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;font-size:11px;font-weight:600}.section-title{font-family:var(--serif);max-width:600px;margin-bottom:48px;font-size:clamp(28px,3.5vw,44px);font-weight:400;line-height:1.2}.page-intro{font-family:var(--sans);color:var(--text-secondary);max-width:520px;margin-top:8px;font-size:16px;line-height:1.7}.featured-work{padding:clamp(64px,10vw,120px) clamp(24px,4vw,64px)}.project-grid{grid-template-columns:repeat(2,1fr);gap:clamp(16px,2.5vw,32px);display:grid}@media (max-width:768px){.project-grid{grid-template-columns:1fr}}.project-card{cursor:pointer;color:inherit;text-decoration:none;display:block}.project-card-image{aspect-ratio:4/3;position:relative;overflow:hidden}.project-card-image.wide{aspect-ratio:3/2}.project-card-image img,.project-card-image .placeholder{transition:transform .6s}.project-card:hover img,.project-card:hover .placeholder{transform:scale(1.03)}.placeholder{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.placeholder span{font-family:var(--serif);color:#fff9;font-size:14px;font-style:italic}.project-card-info{padding:16px 0}.project-card-info h3{font-family:var(--serif);margin-bottom:4px;font-size:clamp(18px,2vw,22px);font-weight:500;transition:color .3s}.project-card:hover .project-card-info h3{color:var(--accent)}.project-card-info .meta{font-family:var(--sans);color:var(--text-secondary);font-size:13px}.project-tag{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#ffffffe6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1c1917b3;padding:4px 10px;font-size:10px;font-weight:600;position:absolute;top:12px;left:12px}.philosophy{background:var(--bg-alt);padding:clamp(64px,10vw,120px) clamp(24px,4vw,64px)}.philosophy-inner{max-width:720px;margin:0 auto}.philosophy blockquote{font-family:var(--serif);color:var(--text);font-size:clamp(24px,3vw,36px);font-style:italic;font-weight:400;line-height:1.4}.attribution{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-top:24px;font-size:13px;font-weight:500}.cta-band{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:clamp(48px,8vw,80px) clamp(24px,4vw,64px);display:flex}.cta-band h2{font-family:var(--serif);font-size:clamp(24px,3vw,36px);font-weight:400}.btn{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;background:var(--text);color:var(--white);cursor:pointer;border:none;padding:16px 40px;font-size:13px;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn:hover{background:var(--accent)}.work-page{padding:clamp(120px,14vw,160px) clamp(24px,4vw,64px) clamp(64px,10vw,120px)}.work-filters{flex-wrap:wrap;gap:8px;margin-bottom:48px;display:flex}.filter-btn{font-family:var(--sans);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;padding:10px 20px;font-size:12px;font-weight:600;transition:all .3s}.filter-btn.active,.filter-btn:hover{background:var(--text);color:var(--white);border-color:var(--text)}.all-projects-grid{grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.5vw,32px);display:grid}@media (max-width:1024px){.all-projects-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.all-projects-grid{grid-template-columns:1fr}}.about-page{padding:clamp(120px,14vw,160px) clamp(24px,4vw,64px) clamp(64px,10vw,120px)}.about-layout{grid-template-columns:300px 1fr;gap:clamp(48px,6vw,96px);max-width:1100px;display:grid}@media (max-width:868px){.about-layout{grid-template-columns:1fr}}.about-sidebar{align-self:start;position:sticky;top:96px}@media (max-width:868px){.about-sidebar{position:static}}.about-portrait{aspect-ratio:3/4;background:linear-gradient(145deg,#c4b8a8,#b0a494);justify-content:center;align-items:center;width:100%;margin-bottom:24px;display:flex;position:relative;overflow:hidden}.about-portrait span{font-family:var(--serif);color:#fff9;font-size:14px;font-style:italic}.about-sidebar h2{font-family:var(--serif);margin-bottom:4px;font-size:22px;font-weight:500}.title-line{font-family:var(--sans);color:var(--text-secondary);margin-bottom:20px;font-size:13px}.credentials{list-style:none}.credentials li{font-family:var(--sans);color:var(--text-secondary);border-top:1px solid var(--border);padding:8px 0;font-size:13px}.credentials li strong{color:var(--text);letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;font-size:11px;font-weight:600;display:block}.about-body p{font-family:var(--sans);color:var(--text);margin-bottom:24px;font-size:16px;line-height:1.8}.about-body p.lead{font-family:var(--serif);margin-bottom:32px;font-size:clamp(20px,2.4vw,26px);line-height:1.5}.areas-served{border-top:1px solid var(--border);margin-top:48px;padding-top:32px}.areas-served h3{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;font-size:11px;font-weight:600}.areas-served p{font-family:var(--sans);color:var(--text-secondary);font-size:14px;line-height:1.8}.process-page{padding:clamp(120px,14vw,160px) clamp(24px,4vw,64px) clamp(64px,10vw,120px)}.process-intro{max-width:640px;margin-bottom:64px}.process-intro p{font-family:var(--sans);color:var(--text-secondary);margin-top:12px;font-size:16px;line-height:1.8}.process-phases{max-width:900px}.process-phase{border-top:1px solid var(--border);grid-template-columns:80px 1fr;gap:32px;padding:clamp(32px,4vw,48px) 0;display:grid}@media (max-width:640px){.process-phase{grid-template-columns:1fr;gap:16px}}.phase-number{font-family:var(--serif);color:var(--border);font-size:48px;font-weight:400;line-height:1}.phase-content h3{font-family:var(--serif);margin-bottom:4px;font-size:clamp(22px,2.5vw,30px);font-weight:500}.phase-content .duration{font-family:var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;font-size:12px;font-weight:600;display:block}.phase-content .summary{font-family:var(--serif);color:var(--text);margin-bottom:16px;font-size:18px;font-style:italic;line-height:1.5}.phase-content .body-text{font-family:var(--sans);color:var(--text-secondary);font-size:15px;line-height:1.8}.process-coda{border-top:1px solid var(--border);max-width:640px;margin-top:64px;padding-top:48px}.process-coda p{font-family:var(--serif);color:var(--text);font-size:clamp(20px,2.4vw,26px);font-style:italic;line-height:1.5}.furniture-page{padding:clamp(120px,14vw,160px) clamp(24px,4vw,64px) clamp(64px,10vw,120px)}.furniture-hero{max-width:720px;margin-bottom:64px}.furniture-brand{font-family:var(--sans);letter-spacing:.25em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;font-size:11px;font-weight:600}.furniture-hero h1{font-family:var(--serif);margin-bottom:24px;font-size:clamp(32px,4vw,52px);font-weight:400;line-height:1.15}.furniture-hero p{font-family:var(--sans);color:var(--text-secondary);font-size:16px;line-height:1.8}.features-grid{grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.5vw,32px);margin-bottom:64px;display:grid}@media (max-width:768px){.features-grid{grid-template-columns:1fr}}.feature-card{border:1px solid var(--border);padding:32px}.feature-card h3{font-family:var(--serif);margin-bottom:12px;font-size:20px;font-weight:500}.feature-card p{font-family:var(--sans);color:var(--text-secondary);font-size:14px;line-height:1.7}.furniture-details{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:clamp(32px,4vw,64px);padding-top:48px;display:grid}@media (max-width:768px){.furniture-details{grid-template-columns:1fr}}.furniture-details h3{font-family:var(--serif);margin-bottom:16px;font-size:clamp(22px,2.5vw,28px);font-weight:400}.furniture-details p{font-family:var(--sans);color:var(--text-secondary);font-size:15px;line-height:1.8}.specs-list{list-style:none}.specs-list li{font-family:var(--sans);border-top:1px solid var(--border);justify-content:space-between;padding:12px 0;font-size:14px;display:flex}.specs-list li strong{color:var(--text);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600}.specs-list li span{color:var(--text-secondary)}.contact-page{padding:clamp(120px,14vw,160px) clamp(24px,4vw,64px) clamp(64px,10vw,120px)}.contact-layout{grid-template-columns:1fr 1fr;gap:clamp(48px,6vw,96px);max-width:1100px;display:grid}@media (max-width:868px){.contact-layout{grid-template-columns:1fr}}.contact-info h1{font-family:var(--serif);margin-bottom:16px;font-size:clamp(32px,4vw,48px);font-weight:400}.contact-info .desc{font-family:var(--sans);color:var(--text-secondary);margin-bottom:32px;font-size:16px;line-height:1.8}.status-indicator{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);align-items:center;gap:8px;margin-bottom:32px;font-size:13px;font-weight:600;display:flex}.status-dot{background:#6b8e5a;border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite status-pulse}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.5}}.contact-details{list-style:none}.contact-details li{font-family:var(--sans);color:var(--text-secondary);padding:8px 0;font-size:14px}.contact-details li strong{color:var(--text);letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;font-size:11px;font-weight:600;display:block}.contact-form{flex-direction:column;gap:20px;display:flex}.form-group label{font-family:var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:6px;font-size:11px;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea{width:100%;font-family:var(--sans);border:none;border-bottom:1px solid var(--border);color:var(--text);background:0 0;outline:none;padding:12px 0;font-size:15px;transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent)}.form-group textarea{resize:vertical;min-height:120px}.form-group select{cursor:pointer;appearance:none}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (max-width:640px){.form-row{grid-template-columns:1fr}}.footer{border-top:1px solid var(--border);grid-template-columns:1fr auto 1fr;align-items:start;gap:48px;padding:clamp(48px,6vw,64px) clamp(24px,4vw,64px);display:grid}@media (max-width:768px){.footer{text-align:center;grid-template-columns:1fr}}.footer-brand .footer-logo{font-family:var(--serif);margin-bottom:8px;font-size:18px;font-weight:500}.footer-brand p{font-family:var(--sans);color:var(--text-secondary);font-size:13px}.footer-nav{justify-content:center;gap:24px;display:flex}.footer-nav a{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-size:12px;font-weight:500;text-decoration:none;transition:color .3s}.footer-nav a:hover{color:var(--text)}.footer-copy{font-family:var(--sans);color:var(--text-secondary);text-align:right;font-size:12px}@media (max-width:768px){.footer-copy{text-align:center}}.fade-in{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(24px)}.fade-in.visible{opacity:1;transform:translateY(0)}
