:root{--paper:#f0ece5;--ink:#292722;--muted:#777267;--line:#d2cbc0;--cream:#f3eee4;--brown:#746556;--ease:cubic-bezier(.2,.7,.3,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;max-width:100%}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #af714b;outline-offset:6px}.skip{position:fixed;top:-80px;left:20px;padding:12px 24px;background:var(--cream);z-index:100}.skip:focus{top:20px}.page-shell{padding:14px}.hero{height:calc(100svh - 28px);min-height:760px;max-height:1080px;position:relative;isolation:isolate;overflow:hidden;background:#a69785;border-radius:24px;color:var(--cream)}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(39,31,22,.62),transparent 48%);pointer-events:none}.header{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 40px;height:108px;border-bottom:1px solid #ffffff2e}.brand{font-size:23px;letter-spacing:.16em;line-height:1.2}.brand span{display:block;font-size:8px;letter-spacing:.2em;margin-top:8px}.nav{display:flex;gap:6px}.nav a{font-size:14px;padding:11px 22px;border:1px solid #ffffff36;border-radius:30px;transition:.25s}.nav a:hover{background:var(--cream);color:var(--ink)}.header-cta{font-size:14px;display:flex;gap:26px;align-items:center}.header-cta span{font-size:24px}.hero-wordmark{position:absolute;z-index:-3;top:98px;left:50%;transform:translateX(-50%);font-size:clamp(125px,20.6vw,350px);font-weight:500;letter-spacing:-.075em;line-height:1.05;white-space:nowrap;opacity:.83}.hero-portrait{position:absolute;inset:90px -5% 0 35%;z-index:-2;mix-blend-mode:multiply;pointer-events:none;overflow:hidden}.hero-portrait img{width:100%;height:130%;object-fit:cover;object-position:center 32%;filter:grayscale(1);transform:translateY(-8%)}.hero-meta{position:absolute;top:calc(110px + 19vw);left:42px;display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.15em;white-space:nowrap}.dot{width:6px;height:6px;background:currentColor;border-radius:50%;display:inline-block}.hero-location{margin-left:22px;opacity:.7}.hero-copy{position:absolute;left:42px;bottom:108px;max-width:560px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:400;margin:0 0 22px}.hero-copy h1{font-size:clamp(36px,4.1vw,64px);font-weight:400;line-height:1.08;letter-spacing:-.045em;margin:0 0 21px}.hero-copy>p:not(.eyebrow){font-size:16px;line-height:1.6;opacity:.85;margin:0 0 27px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:44px;font-size:14px;padding:16px 22px;border-radius:50px;border:1px solid #ffffff60;transition:transform .25s,background .25s}.button span{font-size:20px;line-height:1}.button:hover{transform:translateY(-3px)}.button-cream{background:var(--cream);color:var(--ink);border-color:var(--cream)}.hero-project{position:absolute;right:38px;bottom:108px;width:278px;display:grid;grid-template-columns:1fr 40px;gap:12px;padding:10px 10px 15px;background:#f5eee019;border:1px solid #ffffff58;border-radius:16px;backdrop-filter:blur(20px);transition:background .3s}.hero-project:hover{background:#f5eee030}.hero-project img{width:100%;height:120px;object-fit:cover;border-radius:9px;grid-column:1/-1}.hero-project div{padding-left:4px}.hero-project div span{font-size:9px;letter-spacing:.1em}.hero-project strong{display:block;font-weight:400;font-size:14px;margin-top:4px}.round-arrow{height:36px;width:36px;display:grid;place-items:center;border:1px solid #ffffff65;border-radius:50%;font-size:22px;align-self:center}.hero-bottom{position:absolute;bottom:29px;left:42px;right:42px;border-top:1px solid #ffffff3d;padding-top:20px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em}.hero-bottom a span{margin-left:14px;font-size:16px}.section{padding:108px 42px}.intro{display:grid;grid-template-columns:1fr 3fr;gap:45px}.section-label{max-width:180px;font-size:10px;line-height:1.8}.intro h2{font-size:clamp(32px,4.1vw,62px);font-weight:400;line-height:1.12;letter-spacing:-.045em;margin:0 0 38px}.intro h2 span{color:#9b9287}.intro-bottom{display:flex;gap:60px;align-items:flex-end;justify-content:space-between}.intro-bottom p{max-width:470px;margin:0;color:#736d63;line-height:1.7}.text-link{display:inline-flex;align-items:center;gap:24px;padding-bottom:10px;border-bottom:1px solid var(--ink);font-size:14px;white-space:nowrap}.text-link span{font-size:20px}.menu-toggle,.mobile-nav{display:none}
@media(min-width:1600px){.hero-portrait{inset:90px 0 0 38%}.hero-meta{top:420px}}
@media(max-width:1000px){.header{margin:0 28px}.nav a{padding:10px 14px}.hero-copy{left:28px;max-width:470px}.hero-project{width:228px;right:28px}.hero-wordmark{top:130px}.hero-meta{left:28px;top:calc(150px + 19vw)}.hero-portrait{left:26%;right:-12%}.hero-bottom{left:28px;right:28px}.hero-copy h1{font-size:43px}.intro{grid-template-columns:1fr;gap:20px}.intro-bottom{gap:35px}.section{padding:80px 28px}}
@media(max-width:700px){.page-shell{padding:8px}.hero{min-height:850px;height:calc(100svh - 16px);max-height:none;border-radius:19px}.header{margin:0 20px;height:82px}.brand{font-size:20px}.brand span{font-size:7px}.nav,.header-cta{display:none}.menu-toggle{display:flex;flex-direction:column;gap:5px;background:transparent;border:1px solid #ffffff60;border-radius:50%;width:42px;height:42px;align-items:center;justify-content:center}.menu-toggle span{width:16px;height:1px;background:var(--cream)}.mobile-nav:not([hidden]){display:flex;position:absolute;top:72px;left:0;right:0;padding:20px;flex-direction:column;gap:0;border:1px solid #ffffff40;background:#635a50f5;border-radius:14px;box-shadow:0 14px 30px #0002}.mobile-nav a{padding:12px;font-size:18px}.hero-wordmark{top:100px;font-size:20.6vw}.hero-portrait{inset:158px -19% 180px 5%}.hero-portrait img{height:110%;transform:translateY(-10%)}.hero-meta{top:188px;left:22px;font-size:8px;letter-spacing:.08em}.hero-location{display:none}.hero:after{background:linear-gradient(0deg,#3a3126 0%,#3a3126dd 19%,transparent 62%)}.hero-copy{left:22px;right:22px;bottom:90px;max-width:none}.hero-copy .eyebrow{font-size:9px;margin-bottom:14px}.hero-copy h1{font-size:clamp(31px,7.9vw,46px);max-width:430px}.hero-copy>p:not(.eyebrow){font-size:14px;margin-bottom:22px}.hero-project{display:none}.hero-bottom{left:22px;right:22px;bottom:21px;font-size:8px}.hero-bottom>span{max-width:155px}.hero-bottom>a{align-self:center}.section{padding:65px 18px}.intro-bottom{display:block}.intro-bottom p{font-size:16px;margin-bottom:30px}.intro h2{font-size:36px}.section-label{max-width:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Complete editorial layout */
.hero{background:#786451}.hero-portrait{inset:80px -3% 0 30%;mix-blend-mode:normal;mask-image:linear-gradient(90deg,transparent 0%,#000 35%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 35%)}.hero-portrait img{height:112%;object-position:center 34%;transform:translateY(-8%);filter:grayscale(.88) sepia(.3)}
.services{padding-top:18px;padding-bottom:105px}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:45px}.section-heading h2{font-size:43px;line-height:1.1;font-weight:400;letter-spacing:-.04em;margin:0;width:72%}.service{display:grid;grid-template-columns:5% 31% 1fr 110px;gap:24px;border-top:1px solid var(--line);padding:30px 0;align-items:center}.service:last-child{border-bottom:1px solid var(--line)}.service-no{font-size:12px;color:var(--muted);align-self:start;margin-top:6px}.service h3{font-size:27px;letter-spacing:-.025em;font-weight:400;margin:0}.service p{font-size:15px;line-height:1.65;color:#746e63;max-width:450px;margin:0}.service-tag{font-size:9px;letter-spacing:.12em;border:1px solid var(--line);border-radius:30px;padding:9px 10px;text-align:center}.work{background:#ded7cc;border-radius:20px;padding-top:78px}.work-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:42px}.work h2{font-size:clamp(36px,4.8vw,68px);font-weight:400;line-height:1.06;letter-spacing:-.045em;margin:0}.work h2 em,.contact h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400}.project-note{max-width:365px}.tiny-label{font-size:10px;letter-spacing:.12em}.project-note p{color:#6a645b;font-size:15px;line-height:1.65;margin-bottom:0}.gallery-image{position:relative;overflow:hidden;border-radius:14px;background:#bbb0a1}.gallery-image>img{width:100%;height:clamp(400px,46vw,680px);object-fit:cover;transition:opacity .15s}.gallery-image:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#1b1b1870);pointer-events:none}.gallery-count{position:absolute;top:24px;left:24px;color:#fff;font-size:12px;letter-spacing:.1em;background:#30332a38;padding:8px 14px;border-radius:30px;backdrop-filter:blur(10px)}.expand-image{position:absolute;top:22px;right:22px;width:42px;height:42px;background:#f9f3e922;border:1px solid #fff8;color:white;border-radius:50%;font-size:24px;cursor:pointer;backdrop-filter:blur(10px)}.gallery-caption{position:absolute;bottom:27px;left:27px;right:27px;display:flex;justify-content:space-between;color:#fff;font-size:10px;letter-spacing:.12em;z-index:1}.gallery-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:23px 0 0}.gallery-tabs{display:flex;gap:6px;flex-wrap:wrap}.gallery-tabs button{background:none;border:1px solid #bdb4a8;border-radius:30px;padding:10px 20px;font-size:13px;cursor:pointer;transition:.2s}.gallery-tabs button[aria-selected=true],.gallery-tabs button:hover{background:#33332c;border-color:#33332c;color:#f0ede6}.film-button{border:0;background:none;display:flex;align-items:center;gap:12px;font-size:14px;cursor:pointer;white-space:nowrap}.play-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid #999183;border-radius:50%;font-size:10px;padding-left:2px}.experience-strip{border-top:1px solid #bdb4a8;margin-top:37px;padding-top:33px;display:flex;align-items:center;justify-content:space-between;gap:20px}.experience-strip>div{display:flex;align-items:center;gap:23px}.outline-circle{width:69px;height:69px;border:1px solid #9f9588;border-radius:50%;display:grid;place-items:center;font-size:19px}.experience-strip h3{font-size:22px;letter-spacing:-.025em;font-weight:400;margin:0 0 5px}.experience-strip p{font-size:14px;color:#736b5f;margin:0}.button-dark{background:#30302a;color:#f5eee3;cursor:pointer}.image-disclosure{font-size:11px;color:#81786b;margin:28px 0 0}.audience{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.audience-image{height:640px;position:relative;overflow:hidden;border-radius:14px}.audience-image img{width:100%;height:100%;object-fit:cover;object-position:40% center}.audience-image:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#102c2480)}.audience-image>span{position:absolute;z-index:1;left:30px;bottom:30px;color:var(--cream);font-size:10px;letter-spacing:.13em;line-height:1.7}.audience h2{font-size:clamp(42px,4.5vw,64px);letter-spacing:-.045em;line-height:1.05;font-weight:400;margin:0 0 33px}.audience-item{border-top:1px solid var(--line);padding:20px 0}.audience-item h3{font-size:19px;font-weight:400;margin:0 0 8px}.audience-item p{font-size:15px;line-height:1.65;color:#777065;margin:0;max-width:420px}.process{background:#e6e0d7;border-radius:20px;display:grid;grid-template-columns:1fr 1fr;gap:90px}.process h2{font-size:clamp(35px,3.8vw,54px);letter-spacing:-.04em;font-weight:400;line-height:1.12;margin:0 0 25px}.process-intro>p:not(.eyebrow){max-width:360px;color:#777065;margin-bottom:32px}.process-steps article{display:flex;gap:32px;border-top:1px solid #c7beb0;padding:25px 0}.process-steps article:first-child{padding-top:0;border-top:0}.process-steps article:last-child{padding-bottom:0}.process-steps article>span{font-size:12px;color:#837869;padding-top:6px}.process-steps h3{font-size:22px;font-weight:400;letter-spacing:-.02em;margin:0 0 10px}.process-steps p{color:#777065;font-size:15px;line-height:1.6;margin:0}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:70px}.faq h2{font-size:44px;font-weight:400;letter-spacing:-.04em;line-height:1.1;margin:0}.faq details{border-top:1px solid var(--line);padding:23px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{list-style:none;display:flex;justify-content:space-between;gap:25px;font-size:17px;cursor:pointer;line-height:1.4}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:22px;line-height:1.1}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:15px;line-height:1.7;color:#746d62;max-width:530px;padding-right:20px;margin:20px 0 0}.contact{background:#6e6052;color:#f4eee4;padding:42px;border-radius:20px;position:relative;overflow:hidden}.contact:before{content:'';position:absolute;width:700px;height:700px;right:-300px;top:-300px;border-radius:50%;background:radial-gradient(circle,#bea18765,transparent 67%);pointer-events:none}.contact-top{display:flex;justify-content:space-between;border-bottom:1px solid #ffffff35;padding-bottom:27px}.contact-top .eyebrow{margin:0}.contact-location{font-size:9px;letter-spacing:.12em;display:flex;align-items:center;gap:10px}.contact-main{display:flex;align-items:center;justify-content:space-between;padding:65px 0 62px;position:relative}.contact h2{font-size:clamp(44px,6.8vw,96px);font-weight:400;letter-spacing:-.05em;line-height:1.07;margin:0}.contact-circle{display:grid;place-items:center;width:136px;height:136px;font-size:55px;border:1px solid #ffffff50;border-radius:50%;transition:.3s;margin-right:20px}.contact-circle:hover{background:var(--cream);color:var(--ink);transform:rotate(6deg)}.contact-bottom{border-top:1px solid #ffffff35;padding-top:29px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px;align-items:end}.contact-bottom p{font-size:15px;margin:0;color:#e3dace;line-height:1.65}.contact-bottom .tiny-label{font-size:9px;color:#c8bbae;display:block;margin-bottom:9px}.contact-bottom a{font-size:21px;letter-spacing:-.015em}.contact-bottom a:hover{text-decoration:underline;text-underline-offset:6px}footer{display:flex;align-items:center;gap:40px;padding:33px 42px 20px;font-size:11px;color:#82796c}footer .brand{color:var(--ink);font-size:20px}footer p{font-size:8px;letter-spacing:.1em;margin-right:auto}footer a:last-child{margin-left:20px;color:var(--ink)}dialog{padding:0;border:1px solid #ffffff40;border-radius:18px;background:#201e1a;color:var(--cream);max-width:1100px;width:calc(100% - 40px);max-height:92svh;box-shadow:0 30px 100px #0006}dialog::backdrop{background:#14130fea;backdrop-filter:blur(10px)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 22px}.modal-header h2{font-size:16px;font-weight:400;margin:0}.close-modal{border:1px solid #fff4;width:38px;height:38px;border-radius:50%;background:none;color:var(--cream);cursor:pointer;font-size:16px}.modal-body{position:relative}.modal-body>img{width:100%;max-height:75svh;object-fit:contain}.modal-body>video{width:100%;max-height:75svh;display:block}.modal-body [hidden]{display:none!important}#panorama-view{position:relative;background:#35332d}#panorama-canvas{width:100%;height:min(65svh,630px);display:block;cursor:grab;touch-action:none}#panorama-canvas:active{cursor:grabbing}.panorama-controls{position:absolute;top:16px;left:18px;right:18px;display:flex;gap:12px;justify-content:space-between;pointer-events:none}.panorama-controls button{background:#24271dcc;color:#fff;border:1px solid #ffffff60;border-radius:30px;padding:9px 15px;font-size:12px;cursor:pointer;pointer-events:auto;backdrop-filter:blur(10px)}.pano-rooms{display:flex;gap:6px}.pano-rooms button[aria-pressed=true]{background:#f2eee3;color:#34352b}.panorama-help{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);background:#20251dbb;border:1px solid #ffffff30;border-radius:30px;margin:0;padding:9px 18px;color:#eee;font-size:12px;white-space:nowrap;pointer-events:none}.panorama-status{position:absolute;top:45%;left:15%;right:15%;text-align:center;padding:15px 20px;background:#24291ee6;border-radius:8px;font-size:15px}.panorama-status:empty{display:none}
@media(min-width:1600px){.hero-portrait{inset:75px -3% 0 36%}}
@media(max-width:1000px){.service{grid-template-columns:30px 29% 1fr}.service-tag{display:none}.service h3{font-size:23px}.section-heading h2{width:100%}.section-heading{display:block}.work-heading{display:block}.project-note{max-width:560px;margin-top:26px}.audience{gap:38px}.audience-image{height:600px}.process{gap:45px}.faq{gap:35px;grid-template-columns:.8fr 1.2fr}.contact{padding:30px}.contact-circle{width:90px;height:90px;font-size:40px;margin:0}.contact-bottom{grid-template-columns:1.2fr 1fr 1fr;gap:18px}.contact-bottom a{font-size:17px}.gallery-tabs button{padding:9px 14px}.gallery-toolbar{gap:12px}}
@media(max-width:700px){.hero-portrait{inset:125px -15% 230px 0;mask-image:linear-gradient(0deg,transparent,#000 22%);-webkit-mask-image:linear-gradient(0deg,transparent,#000 22%)}.hero-portrait img{height:114%;object-position:center 30%;transform:translateY(-10%)}.hero-wordmark{z-index:-1;top:104px;font-size:20.4vw;opacity:.7}.hero-meta{top:183px}.hero-copy{bottom:91px}.hero-copy h1{font-size:clamp(31px,8vw,43px)}.hero:after{background:linear-gradient(0deg,#332b24 0%,#332b24ed 31%,transparent 67%)}.services{padding-top:0}.section-heading h2{font-size:36px}.service{grid-template-columns:25px 1fr;gap:12px;padding:25px 0}.service h3{font-size:25px}.service p{grid-column:2;font-size:15px}.work{padding:49px 18px;border-radius:16px}.work h2{font-size:41px}.project-note{margin-top:25px}.tiny-label{font-size:9px}.gallery-image>img{height:380px;object-position:center}.gallery-caption{left:16px;right:16px;bottom:18px;font-size:9px}.gallery-caption>span:last-child{display:none}.gallery-count{left:16px;top:16px}.expand-image{top:14px;right:14px}.gallery-toolbar{display:block}.gallery-tabs{gap:5px}.gallery-tabs button{font-size:12px;padding:9px 13px}.film-button{margin:18px 0 0;padding:0}.experience-strip{display:block}.experience-strip>div{gap:15px}.outline-circle{width:52px;height:52px;min-width:52px;font-size:15px}.experience-strip h3{font-size:20px}.experience-strip p{font-size:13px}.experience-strip .button{margin-top:24px}.image-disclosure{font-size:10px;line-height:1.6}.audience{grid-template-columns:1fr;gap:35px}.audience-image{height:400px}.audience h2{font-size:44px}.audience-item:last-child{padding-bottom:0}.process{grid-template-columns:1fr;gap:42px;border-radius:16px}.process h2{font-size:37px}.process-intro>p:not(.eyebrow){font-size:15px}.process-steps article{gap:20px}.process-steps h3{font-size:21px}.faq{grid-template-columns:1fr;gap:30px}.faq h2{font-size:38px}.faq summary{font-size:16px}.contact{padding:28px 20px;border-radius:16px}.contact-location{display:none}.contact-top{padding-bottom:22px}.contact-main{padding:40px 0;display:block}.contact h2{font-size:11vw}.contact-circle{margin-top:27px;width:70px;height:70px;font-size:33px}.contact-bottom{grid-template-columns:1fr;gap:27px}.contact-bottom a{font-size:22px}.contact-bottom p{font-size:15px}footer{padding:30px 18px 20px;display:grid;grid-template-columns:1fr 1fr;gap:14px}footer p{font-size:7px;margin:0;text-align:right}footer a:last-child{margin:0;text-align:right}footer span{font-size:10px}dialog{width:calc(100% - 20px);max-height:94svh;border-radius:13px}.modal-header{padding:12px 15px}.modal-header h2{font-size:14px}.panorama-controls{left:10px;right:10px;flex-wrap:wrap;top:10px}.panorama-controls button{font-size:11px;padding:8px 10px}.panorama-help{font-size:10px;padding:8px 12px}#panorama-canvas{height:65svh}}
/* Legibility and final hero framing */
@media(min-width:701px){.hero-portrait{inset:0 -3% 0 30%}.hero-portrait img{height:100%;transform:none;object-position:center 15%}}
.eyebrow,.section-label,.tiny-label{font-size:12px}.hero-meta{font-size:11px}.hero-bottom{font-size:11px;letter-spacing:.075em}.hero-project div span{font-size:10px}.service-no{font-size:13px}.service-tag{font-size:11px}.service p,.project-note p,.audience-item p,.process-steps p,.faq details p,.contact-bottom p{font-size:16px}.gallery-caption{font-size:12px}.gallery-tabs button{font-size:14px}.image-disclosure{font-size:12px}.audience-image>span{font-size:12px}.contact-location{font-size:11px}.contact-bottom .tiny-label{font-size:11px}footer{font-size:12px}footer p{font-size:10px}
@media(max-width:700px){.hero-meta{font-size:10px}.hero-copy .eyebrow{font-size:10px}.hero-copy>p:not(.eyebrow){font-size:15px}.hero-bottom{font-size:9px}.hero-bottom>span{max-width:145px}.gallery-caption{font-size:11px}.gallery-tabs button{font-size:13px}.contact h2{font-size:10.8vw}.process-intro>p:not(.eyebrow){font-size:16px}footer p{font-size:9px}.panorama-controls button{min-height:40px}.panorama-help{font-size:11px}}

.gallery-image>img.is-overview{object-fit:contain;background:#252e30}
@media(max-width:700px){.hero-portrait{mask-image:linear-gradient(180deg,transparent 0%,#000 10%,#000 80%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 10%,#000 80%,transparent 100%)}}

/* Architectural hero: reference 4 composition, reference 6 frame. */
:root{--paper:#eee9e1;--ink:#2c2925;--cream:#faf2e7;--brown:#6d5847;--line:#d5cabe}
.page-shell{padding:18px;max-width:2000px;margin:auto}.hero{height:calc(100svh - 36px);min-height:810px;max-height:1150px;background:#7b6d5e;isolation:isolate;border-radius:28px;position:relative;overflow:hidden}.hero:before{content:'';position:absolute;z-index:3;inset:20px;border:1px solid #fff6;border-radius:19px;pointer-events:none}.hero:after{z-index:1;background:linear-gradient(180deg,#281c1430 0%,transparent 40%,#231a15a8 100%);pointer-events:none}.hero-scene{position:absolute;inset:0;z-index:0;background:#73665b}.hero-scene img{width:100%;height:100%;object-fit:cover;object-position:center;filter:none}.hero-wordmark{z-index:2;top:121px;left:50%;width:calc(100% - 104px);transform:translateX(-50%);font-size:clamp(88px,18.8vw,332px);line-height:.85;letter-spacing:-.055em;font-weight:400;opacity:1;text-align:center;color:var(--cream);text-shadow:0 1px 20px #3c2b1217;white-space:nowrap}.header{z-index:5;margin:0 52px;height:110px;border:0;gap:20px}.brand{font-size:20px;letter-spacing:.16em}.brand span{font-size:9px;margin-top:6px}.nav{gap:5px}.nav a{border:1px solid #fff6;padding:10px 19px;background:#b1a49618;backdrop-filter:blur(14px);font-size:13px}.nav a:first-child{background:#f5eee7;color:#302a24;border-color:#f5eee7}.header-cta{border:1px solid #fff5;padding:9px 16px;border-radius:30px;gap:18px;font-size:13px;background:#b1a49618;backdrop-filter:blur(14px)}.header-cta span{font-size:19px}.hero-copy{z-index:4;left:54px;bottom:111px;max-width:580px}.hero-copy .eyebrow{font-size:11px;letter-spacing:.13em;margin-bottom:20px}.hero-copy h1{font-size:clamp(35px,3.85vw,61px);letter-spacing:-.045em;line-height:1.02;max-width:620px;font-weight:400;margin:0 0 22px}.hero-copy>p:not(.eyebrow){font-size:16px;line-height:1.6;max-width:390px;opacity:1;color:#eee7df;margin:0 0 24px}.hero-copy .button{font-size:14px;padding:15px 22px;min-width:220px}.hero-project{z-index:4;right:50px;bottom:110px;width:235px;border:1px solid #fff8;background:#f6f0eaba;backdrop-filter:blur(24px);padding:7px;border-radius:16px;grid-template-columns:1fr 32px;color:#262623;gap:10px;box-shadow:0 6px 30px #251d251a}.hero-project img{height:118px;border-radius:10px}.hero-project div{padding:2px 4px 7px}.hero-project div span{font-size:9px;letter-spacing:.07em}.hero-project strong{font-size:14px;line-height:1.3;margin-top:6px;font-weight:400}.hero-project .round-arrow{border-color:#6c645765;width:31px;height:31px;margin-right:3px;font-size:20px}.hero-project:hover{background:#f6f0eae6}.hero-bottom{z-index:4;left:54px;right:54px;bottom:46px;padding-top:17px;font-size:10px;border-top:1px solid #fff6;letter-spacing:.1em}.hero-bottom a{display:flex;align-items:center;gap:10px}.hero-bottom a span{margin:0}.hero-meta{display:none}.hero-portrait{display:none}
@media(min-width:1600px){.hero-wordmark{top:130px;font-size:18.5vw}.hero-copy{bottom:125px}.hero-copy h1{font-size:66px}.hero-project{bottom:120px;width:270px}.hero-project img{height:145px}}
@media(max-width:1100px){.hero{min-height:800px}.header{margin:0 40px}.nav a{padding:9px 13px}.brand{font-size:18px}.brand span{font-size:8px}.hero-wordmark{top:130px;width:calc(100% - 70px);font-size:18.6vw}.hero-copy{left:42px;max-width:520px}.hero-copy h1{font-size:42px}.hero-project{right:42px;width:205px}.hero-bottom{left:42px;right:42px}.hero-scene img{object-position:60% center}}
@media(max-width:700px){.page-shell{padding:8px}.hero{height:auto;min-height:870px;border-radius:22px}.hero:before{inset:12px;border-radius:14px}.hero:after{background:linear-gradient(180deg,#32281c36,transparent 35%,#21180fe0 74%,#21180ff0)}.header{height:83px;margin:0 29px}.brand{font-size:18px}.brand span{font-size:8px}.nav,.header-cta{display:none}.menu-toggle{border-color:#fff8;background:#ae9c8733;backdrop-filter:blur(20px)}.hero-wordmark{top:108px;width:calc(100% - 48px);font-size:18.65vw;line-height:.85;color:#fbf4e9;z-index:2;opacity:1;letter-spacing:-.055em}.hero-scene{inset:0}.hero-scene img{height:78%;width:100%;object-fit:cover;object-position:70% center}.hero-copy{left:29px;right:29px;bottom:112px;max-width:none;z-index:4}.hero-copy .eyebrow{font-size:10px;margin-bottom:17px}.hero-copy h1{font-size:clamp(33px,8.6vw,51px);line-height:1.07;margin-bottom:18px}.hero-copy>p:not(.eyebrow){font-size:15px;max-width:330px;line-height:1.6;margin-bottom:23px}.hero-copy .button{min-width:230px;padding:15px 20px}.hero-bottom{left:29px;right:29px;bottom:35px;font-size:9px;letter-spacing:.06em}.hero-bottom>span{max-width:150px;line-height:1.5}.hero-bottom>a{gap:6px;white-space:nowrap;font-size:9px}.hero-project{display:none}.mobile-nav:not([hidden]){top:72px;background:#6b584af5;border-color:#fff7}.hero-copy p br{display:none}}

/* Image-led sections echo the architectural references. */
.section{padding:100px 48px}.intro{margin-top:18px;min-height:630px;border-radius:24px;position:relative;isolation:isolate;overflow:hidden;display:block;padding:42px 50px;background:#4b463d;color:var(--cream)}.intro:before{content:'';position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#191b17a1,#28282060),url('assets/kitchen.webp') center 52%/cover}.intro .section-label{max-width:none;margin:0 0 30px;font-size:12px;letter-spacing:.12em}.intro-content{border:1px solid #fff6;border-radius:24px;background:#bdafa426;backdrop-filter:blur(16px);padding:40px;min-height:455px;display:flex;flex-direction:column;justify-content:space-between}.intro h2{font-size:clamp(44px,6.1vw,94px);font-weight:400;letter-spacing:-.055em;line-height:.95;margin:0 0 28px}.intro h2 span{color:#f0e5d8}.intro-bottom{gap:70px;align-items:flex-end}.intro-bottom p{color:#f0e9de;max-width:540px;font-size:16px;line-height:1.65}.intro .text-link{border:1px solid #fff6;border-radius:40px;padding:15px 20px;gap:30px;font-size:14px}.services{padding-top:84px;padding-bottom:88px}.section-heading{align-items:center;margin-bottom:34px}.section-heading h2{font-size:47px;width:auto;margin-left:auto;line-height:1.03}.service-list{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service{min-height:390px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;border:0;border-radius:20px;padding:27px;color:#f9f4eb;position:relative;isolation:isolate;overflow:hidden;background:#514736}.service:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#30271a 5%,#30271ae8 32%,#30271a05 100%)}.service:last-child{border:0}.service-visual{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:saturate(.6);transition:transform .6s}.service:hover .service-visual{transform:scale(1.04)}.service:nth-child(2){background:#cabead;color:#282921}.service:nth-child(2):before{background:linear-gradient(0deg,#d7ccbb 4%,#d7ccbbf2 34%,#d7ccbb08 100%)}.service:nth-child(2) .service-visual{object-fit:contain;object-position:50% -30px;opacity:.85}.service-no{position:absolute;left:26px;top:20px;color:inherit;font-size:13px;margin:0}.service-tag{position:absolute;right:22px;top:19px;border-color:#fff8;display:block;font-size:10px;padding:6px 10px;background:#c8c1b622;backdrop-filter:blur(10px)}.service:nth-child(2) .service-tag{border-color:#4b514766}.service h3{font-size:29px;line-height:1.08;margin:0 0 15px}.service p{font-size:15px;color:#e3dbce;line-height:1.65;max-width:none;margin:0}.service:nth-child(2) p{color:#655d50}.work{border-radius:24px;background:#ded5c8;padding:60px 36px}.work-heading{padding:0 10px;align-items:end;margin-bottom:35px}.work h2{font-size:clamp(40px,4.6vw,68px);line-height:1.06}.work h2 em{font-family:inherit;font-style:normal;color:#8c7c68}.gallery-image{border-radius:18px}.gallery-image>img{height:clamp(430px,45vw,720px)}.gallery-toolbar{padding-top:20px}.gallery-tabs button{background:#ffffff20}.experience-strip{padding:29px 8px 0;margin-top:30px}.image-disclosure{padding:0 8px}.audience{gap:55px;align-items:stretch}.audience-image{height:auto;min-height:650px;border-radius:24px}.audience-copy{padding:30px 0 10px}.audience h2{font-size:58px;font-weight:400;line-height:1.02;letter-spacing:-.055em}.audience-item{padding:23px 0}.process{padding:65px 48px;background:#dfd5c7;border:1px solid #cabba6;border-radius:24px}.process h2{font-size:47px}.process-steps article{border-color:#c0b4a2}.faq{padding-top:90px;padding-bottom:90px}.faq h2{font-size:46px}.contact{border-radius:24px;padding:42px;isolation:isolate;background:#655340}.contact:before{inset:0;width:auto;height:auto;border-radius:0;z-index:-2;background:linear-gradient(90deg,#322215ca,#33261fad),url('assets/kitchen.webp') center/cover;filter:saturate(.3)}.contact:after{content:'';position:absolute;inset:18px;border:1px solid #fff4;border-radius:15px;z-index:-1;pointer-events:none}.contact-top{padding-bottom:20px}.contact-main{padding:54px 0}.contact h2{font-size:clamp(45px,6.3vw,92px);font-weight:400}.contact h2 em{font-family:inherit;font-style:normal;color:#cbbb9e}.contact-circle{backdrop-filter:blur(10px);background:#f1e7d618}.contact-bottom{padding-top:24px}.contact-bottom a{font-size:22px}.contact-bottom .tiny-label{color:#d2c5ae}footer{padding:32px 40px 20px}
@media(max-width:1100px){.section{padding-left:34px;padding-right:34px}.intro{padding:35px}.intro-content{padding:30px}.intro h2{font-size:64px}.intro-bottom{gap:30px}.intro-bottom p{max-width:480px}.intro .text-link{white-space:normal;max-width:235px}.service{padding:23px;min-height:430px}.service h3{font-size:25px}.service p{font-size:15px}.audience{gap:38px}.audience h2{font-size:49px}.audience-image{min-height:690px}.process{gap:45px}.process h2{font-size:40px}.contact-bottom a{font-size:18px}}
@media(max-width:700px){.section{padding:60px 20px}.intro{margin-top:10px;padding:25px 20px;min-height:auto;border-radius:20px}.intro .section-label{font-size:10px;margin-bottom:22px;line-height:1.6}.intro-content{padding:26px 20px;min-height:480px;border-radius:18px}.intro h2{font-size:clamp(35px,10vw,58px);line-height:1.01;margin-bottom:28px;letter-spacing:-.05em}.intro-bottom{display:block}.intro-bottom p{font-size:15px;margin-bottom:25px}.intro .text-link{font-size:13px;padding:13px 16px;max-width:none;gap:20px}.services{padding-top:58px;padding-bottom:58px}.section-heading h2{font-size:38px;margin:0;line-height:1.08}.section-heading .eyebrow{font-size:11px}.section-heading{display:block;margin-bottom:26px}.service-list{grid-template-columns:1fr;gap:14px}.service{min-height:365px;padding:25px;border-radius:18px}.service h3{font-size:29px;max-width:270px}.service p{font-size:16px;max-width:400px}.service-no{top:20px;left:25px}.service:nth-child(2) .service-visual{object-position:50% -80px;opacity:.8}.service:nth-child(2):before{background:linear-gradient(0deg,#d7ccbb 3%,#d7ccbb 35%,#d7ccbb1a 100%)}.work{padding:40px 18px;border-radius:20px}.work-heading{padding:0}.work h2{font-size:40px;letter-spacing:-.055em}.project-note p{font-size:15px}.gallery-image>img{height:390px}.experience-strip{padding:25px 0 0}.experience-strip h3{font-size:22px}.experience-strip p{font-size:14px}.image-disclosure{padding:0;font-size:11px}.audience{gap:32px}.audience-image{min-height:410px;height:410px;border-radius:20px}.audience-copy{padding:0}.audience h2{font-size:47px}.audience-item p{font-size:16px}.process{padding:40px 24px;border-radius:20px}.process h2{font-size:38px}.process-intro>p:not(.eyebrow){font-size:16px}.process-steps p{font-size:16px}.faq{padding:58px 20px}.faq h2{font-size:38px}.contact{padding:30px 27px;border-radius:20px}.contact:after{inset:12px;border-radius:12px}.contact-top .eyebrow{font-size:10px}.contact-main{padding:38px 0}.contact h2{font-size:clamp(37px,10.5vw,58px);line-height:1.1}.contact-bottom{gap:25px}.contact-bottom a{font-size:21px}footer{padding:28px 20px 18px}}
/* Keep the full headset within the phone crop and strengthen copy contrast. */
@media(min-width:701px){.hero:after{background:linear-gradient(180deg,#281c1430 0%,transparent 28%,#231a15a0 100%),linear-gradient(90deg,#21180f4d,transparent 64%)}}
@media(max-width:700px){.hero-scene img{object-position:88% center}}

@media(max-width:700px){.hero-scene img{mask-image:linear-gradient(180deg,#000 0%,#000 77%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 77%,transparent 100%)}}
/* Standalone interactive apartment model. */
.model-section{padding-top:88px;padding-bottom:76px}.model-heading{display:flex;justify-content:space-between;align-items:end;gap:65px;margin-bottom:34px}.model-heading h2{font-size:clamp(39px,4.6vw,67px);font-weight:400;letter-spacing:-.05em;line-height:1.05;margin:0}.model-heading h2 span{color:#8c7c68}.model-heading>p{max-width:360px;font-size:16px;line-height:1.65;color:#777065;margin:0 0 4px}.model-stage{height:clamp(530px,53vw,760px);border-radius:24px;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 48% 44%,#f5efe3,#d4c5b3);border:1px solid #c5b9a8}.model-poster{width:100%;height:100%;object-fit:contain;background:#252e30}.model-stage[data-state=loading] .model-poster{filter:blur(3px);opacity:.65}.model-entry{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:14px;padding:40px 20px;background:linear-gradient(180deg,transparent 45%,#151d1bc4);z-index:3}.model-entry button{cursor:pointer;min-width:250px;justify-content:space-between}.model-entry button:disabled{opacity:.7;cursor:progress;transform:none}.model-entry p{color:#f4eee3;font-size:14px;margin:0;line-height:1.5;text-align:center}.model-entry progress{width:250px;height:5px;border:0;border-radius:10px;overflow:hidden;accent-color:#dfcdb0}.model-entry progress::-webkit-progress-bar{background:#ffffff30}.model-entry progress::-webkit-progress-value{background:#dfcdb0}.model-stage[data-state=ready] .model-poster,.model-stage[data-state=ready] .model-entry{display:none}#model-canvas{position:absolute;inset:0}#model-canvas canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}#model-canvas canvas:active{cursor:grabbing}#model-canvas canvas:focus-visible{outline:2px solid #9b7751;outline-offset:-4px}.model-topbar{position:absolute;top:22px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center;gap:20px;pointer-events:none;z-index:2}.model-badge{font-size:10px;letter-spacing:.1em;color:#625548}.model-levels{display:flex;gap:5px;pointer-events:auto}.model-levels button,.model-actions button{border:1px solid #a69b8966;background:#f8f3e99c;backdrop-filter:blur(16px);font-size:13px;padding:10px 16px;border-radius:30px;cursor:pointer;min-height:40px}.model-levels button[aria-pressed=true]{background:#4f473d;color:#f6eee3;border-color:#4f473d}.model-actions{position:absolute;right:24px;bottom:22px;display:flex;gap:7px;z-index:2}.model-hint{position:absolute;left:26px;bottom:27px;font-size:12px;color:#716350;margin:0;pointer-events:none}.model-stage [hidden]{display:none!important}.model-foot{display:flex;justify-content:space-between;align-items:center;margin-top:17px;color:#756b5f}.model-foot p{margin:0;font-size:14px}.model-foot span{font-size:11px;letter-spacing:.12em}.model-stage:fullscreen,.model-stage.expanded-model{width:100%;height:100%;border-radius:0;border:0}.model-stage.expanded-model{position:fixed;inset:0;z-index:100;background:#e7ddcf}.model-stage:fullscreen canvas{height:100%}
@media(max-width:1100px){.model-heading{gap:35px}.model-heading>p{max-width:310px}.model-badge{display:none}.model-topbar{justify-content:center}.model-hint{font-size:11px;left:22px}.model-actions{right:20px}.model-actions button{padding:10px 12px}}
@media(max-width:700px){.model-section{padding:58px 18px}.model-heading{display:block;margin-bottom:27px}.model-heading h2{font-size:41px}.model-heading>p{max-width:none;margin-top:23px;font-size:16px}.model-stage{height:530px;border-radius:20px}.model-poster{object-fit:contain}.model-entry{padding:30px 15px;gap:16px}.model-entry p{font-size:13px;max-width:260px}.model-entry button{font-size:14px;min-width:245px}.model-topbar{left:10px;right:10px;top:14px;gap:0}.model-levels{gap:4px;flex-wrap:wrap;justify-content:center}.model-levels button{font-size:11px;padding:9px 11px;min-height:40px}.model-actions{bottom:16px;right:12px;left:12px;justify-content:center}.model-actions button{font-size:12px;padding:10px 16px}.model-hint{left:12px;right:12px;bottom:69px;text-align:center;font-size:11px}.model-foot{align-items:start;gap:15px}.model-foot p{font-size:13px}.model-foot span{font-size:9px;max-width:90px;text-align:right}.model-stage:fullscreen,.model-stage.expanded-model{height:100svh}}

/* Company details and office address */
footer.site-footer{display:block;padding:42px 40px 24px;font-size:14px;color:#746e63}
.site-footer .footer-details{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.site-footer .footer-brand{display:inline-block;margin:0 0 18px;text-align:left}
.site-footer h2{font-size:16px;font-weight:400;letter-spacing:.06em;color:var(--ink);margin:0 0 18px}
.site-footer p{font-size:14px;line-height:1.7;letter-spacing:0;text-align:left;margin:0;max-width:440px}
.site-footer .footer-base{display:flex;justify-content:space-between;align-items:end;gap:24px;border-top:1px solid var(--line);margin-top:32px;padding-top:24px}
.site-footer .footer-base span{font-size:14px;color:var(--ink)}
.site-footer .footer-base p{margin-top:8px;font-size:12px}
.site-footer .footer-base a{margin:0;font-size:12px;white-space:nowrap}
@media(max-width:700px){footer.site-footer{padding:32px 20px 20px}.site-footer .footer-details{grid-template-columns:1fr;gap:28px}.site-footer .footer-brand,.site-footer h2{margin-bottom:12px}.site-footer .footer-base{margin-top:26px}}
