:root{
  --paper:#f3eee7; --paper2:#e8e0d6; --ink:#21211e; --muted:#766e66; --line:#d4cbc0; --dark:#23231f; --cream:#f7f2ec;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{margin:0;overflow-x:clip;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-weight:300;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}.site-header{height:74px;position:sticky;top:0;z-index:40;display:flex;justify-content:space-between;align-items:center;padding:0 4.2vw;background:rgba(243,238,231,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(33,33,30,.08)}.brand{font-size:13px;letter-spacing:.3em;font-weight:500}.site-header nav{display:flex;gap:30px;align-items:center;font-size:12px;letter-spacing:.03em}.site-header nav a{transition:opacity .2s}.site-header nav a:hover{opacity:.5}.nav-cta{padding-bottom:3px;border-bottom:1px solid var(--ink)}
.hero{display:grid;grid-template-columns:44% 56%;min-height:calc(100vh - 74px);padding:10vw 3vw 0;gap:2.5vw}.hero-image{background:url('https://static.wixstatic.com/media/d4cd47_21b7ffa9111c406aae28519a7da8bbe3~mv2.jpg') center/cover no-repeat;min-height:690px}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:5vw 3vw 9vw 0}.eyebrow{font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;margin:0 0 24px}.hero h1,.section-head h2,.manifesto h2,.about h2,.wix-cta h2,.contact h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.03;margin:0}.hero h1{font-size:clamp(45px,4.25vw,66px);max-width:10ch}.lead{max-width:31em;font-size:15px;line-height:1.45;margin:44px 0;color:#35332f}.text-link{display:inline-flex;align-items:center;gap:12px;width:max-content;font-size:11px;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:5px}.text-link span{font-size:14px}.pill-button{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:12px 20px;border:1px solid var(--ink);border-radius:999px;background:var(--ink);color:var(--cream);font-size:11px;text-transform:uppercase;transition:background .25s,color .25s}.pill-button:hover{background:transparent;color:var(--ink)}
.section-wrap{padding:9vw 6.5vw}.narrow{padding-left:20vw;padding-right:20vw}.manifesto{text-align:center;background:#eae8e3;border:0;padding-top:9vw;padding-bottom:9vw}.manifesto h2{font-size:clamp(42px,4.2vw,62px);margin-bottom:28px}.manifesto p{font-size:16px;line-height:1.45;margin:0 auto;max-width:48em}.section-head{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:5vw}.section-head h2{font-size:clamp(45px,5vw,72px)}.section-head p{font-size:15px;line-height:1.5;max-width:42em;margin:22px auto 0}.project-editorial-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:20px}.project-card{margin:0}.project-a{grid-row:span 2}.project-d{grid-column:1/-1}.image-box{background-position:center;background-size:cover;background-repeat:no-repeat}.project-a .image-box{min-height:860px}.project-b .image-box,.project-c .image-box{min-height:420px}.project-d .image-box{min-height:500px}.img-living-1{background-image:url('https://static.wixstatic.com/media/d4cd47_2d5717da6ca543f699cca4909969df7d~mv2.jpg')}.img-living-2{background-image:url('https://static.wixstatic.com/media/d4cd47_8fbf0a344a6341e4be6ebef7407ba330~mv2.jpg')}.img-material{background-image:url('https://static.wixstatic.com/media/d4cd47_515e6ce2a6484048919980cf0d55154c~mv2.jpg')}.img-wood{background-image:url('https://static.wixstatic.com/media/d4cd47_81066606c323415ea1b8b2ddff05236f~mv2.jpg')}.project-caption{display:flex;justify-content:space-between;gap:20px;padding:15px 2px 28px;border-top:1px solid var(--line);font-size:11px}.project-caption span{text-transform:uppercase;letter-spacing:.18em}.project-caption strong{font-weight:400}
.philosophy-band{display:grid;grid-template-columns:1.1fr .9fr;gap:10vw;padding:8vw 8vw;background:#ddd3c8}.philosophy-band h2{font-size:clamp(42px,5vw,72px)}.philosophy-band>p{align-self:end;max-width:34em;font-size:15px;line-height:1.8;margin:0 0 8px}
.services{background:#ece4db}.service-list{margin-top:1vw}.service-list article{display:grid;grid-template-columns:72px 1fr 1.2fr;gap:30px;align-items:start;padding:28px 0;border-top:1px solid #cfc4b7}.service-list article:last-child{border-bottom:1px solid #cfc4b7}.service-list span{font-size:10px;letter-spacing:.18em}.service-list h3{font-family:'Playfair Display',Georgia,serif;font-size:30px;font-weight:400;margin:0}.service-list p{font-size:14px;line-height:1.7;margin:0;max-width:44em;color:#555049}
.about{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center}.wix-about{padding-top:9vw;padding-bottom:9vw}.about-image{overflow:hidden;background:#ddd2c7;border-radius:50%;aspect-ratio:1}.about-image img{display:block;width:100%;height:100%;object-fit:cover}.about-copy h2{font-size:clamp(42px,4.6vw,68px);max-width:9ch}.subhead{text-transform:uppercase;letter-spacing:.16em;font-size:10px;margin:15px 0 32px}.about-copy>p:not(.eyebrow):not(.subhead){font-size:15px;line-height:1.8;max-width:35em;color:#514c46}.underlined-link{display:inline-block;margin-top:16px;font-size:12px;border-bottom:1px solid currentColor;padding-bottom:3px}.wix-cta{min-height:370px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:34px;text-align:center;background:#eae8e3}.wix-cta h2{font-size:clamp(42px,5vw,70px)}
.visual-break{height:min(62vw,760px);background-position:center;background-size:cover}.img-travertine-wide{background-image:url('https://static.wixstatic.com/media/d4cd47_bb4dce88c8d742c4a700558718eb10c9~mv2.jpg')}
.contact{display:grid;grid-template-columns:.72fr 1.28fr;gap:8vw;background:var(--dark);color:var(--cream)}.contact h2{font-size:clamp(44px,5.1vw,74px);max-width:9ch}.contact-copy>p:last-child{font-size:14px;line-height:1.75;max-width:31em;color:#d7d0c8}.project-form{display:flex;flex-direction:column;gap:20px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.project-form label{font-size:10px;letter-spacing:.14em;text-transform:uppercase}.project-form input,.project-form select,.project-form textarea{width:100%;margin-top:8px;padding:12px 0;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.35);border-radius:0;color:#fff;font:inherit;font-size:14px;outline:none}.project-form select option{color:#222}.project-form textarea{border:1px solid rgba(255,255,255,.28);padding:14px;resize:vertical}.project-form input:focus,.project-form select:focus,.project-form textarea:focus{border-color:#fff}.consent{display:flex;gap:10px!important;align-items:flex-start;text-transform:none!important;letter-spacing:0!important;line-height:1.5!important}.consent input{width:auto;margin:3px 0 0}.button-light{display:inline-flex;width:max-content;background:transparent;border:1px solid var(--cream);color:var(--cream);padding:13px 20px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.button-light:hover{background:var(--cream);color:var(--dark)}.form-success{font-size:12px;color:#eadcb6}
footer{display:flex;justify-content:space-between;gap:30px;padding:34px 4.2vw;background:#171714;color:var(--cream);font-size:11px}.footer-brand,.footer-right{display:flex;gap:20px;align-items:center}.footer-brand strong{letter-spacing:.22em}.footer-brand span,.footer-right{opacity:.78}.reveal{opacity:0;transition:opacity .85s ease,transform .95s cubic-bezier(.2,.7,.2,1)}.reveal-up{transform:translateY(60px)}.reveal-down{transform:translateY(-24px)}.reveal-left{transform:translateX(-55px)}.reveal-right{transform:translateX(55px)}.reveal.is-visible{opacity:1;transform:none}.portrait-reveal{clip-path:circle(0% at 50% 50%);transform:scale(.86);transition:clip-path 1.35s cubic-bezier(.2,.75,.2,1),transform 1.35s cubic-bezier(.2,.75,.2,1)}.portrait-reveal.is-visible{clip-path:circle(72% at 50% 50%);transform:scale(1)}
@media(max-width:900px){.site-header{height:66px}.site-header nav a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr;padding:10vw 5vw 0;min-height:auto}.hero-copy{order:1;padding:12vw 2vw}.hero-image{order:2;min-height:64vh}.hero h1{font-size:clamp(42px,12vw,50px)}.section-wrap{padding:14vw 7vw}.narrow{padding:17vw 8vw}.project-editorial-grid{grid-template-columns:1fr;gap:0}.project-a{grid-row:auto}.project-d{grid-column:auto}.project-a .image-box,.project-b .image-box,.project-c .image-box,.project-d .image-box{min-height:64vh}.service-list article{grid-template-columns:44px 1fr;gap:18px}.service-list p{grid-column:2}.about,.contact{grid-template-columns:1fr}.about{gap:12vw}.wix-about .about-image{width:min(86vw,360px);margin:0 auto}.wix-about .about-image img{object-position:50% 38%}.wix-cta{min-height:330px;padding:15vw 7vw}.visual-break{height:70vh}.two-col{grid-template-columns:1fr}footer{flex-direction:column}.footer-brand,.footer-right{flex-wrap:wrap}.reveal-left,.reveal-right{transform:translateY(44px)}}

.legal{max-width:900px;margin:0 auto;min-height:70vh}.legal h1,.error-page h1{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(46px,7vw,82px);line-height:1.05;margin:0 0 50px}.legal h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:30px;margin:42px 0 12px}.legal p{font-size:15px;line-height:1.85;color:#514c46}.error-page{min-height:100vh;display:grid;place-items:center;padding:8vw;background:var(--paper)}.consent a{text-decoration:underline;text-underline-offset:2px}footer a{color:inherit}

/* Final visual refinements */
.hero-image{background-image:url('https://static.wixstatic.com/media/d4cd47_515e6ce2a6484048919980cf0d55154c~mv2.jpg')}
.footer-brand span,.footer-right>span{opacity:.78}
.footer-right{opacity:1}
.instagram-button{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.55);border-radius:50%;transition:background .25s,color .25s,transform .25s}
.instagram-button:hover{background:var(--cream);color:var(--dark)}
.instagram-button:hover{transform:translateY(-2px)}
.instagram-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}
.instagram-button .instagram-dot{fill:currentColor;stroke:none}
