/* The residence's mineral palette and translucent controls, carried into the agency. */
:root{--paper:#202523;--white:#f2f4ed;--ink:#f2f4ed;--muted:#bdc6bf;--line:#ffffff25;--coral:#d7e0ca;--peach:#303e34;--accent:#d7e0ca;--gutter:clamp(22px,4.5vw,82px);--glass-bg:linear-gradient(135deg,#ffffff24,#ffffff0b 46%,#ffffff14);--glass-shadow:inset 0 1px 0 #ffffff75,inset 1px 0 0 #ffffff30,inset -1px -1px 0 #ffffff18,0 12px 36px #00000018;color-scheme:dark;scrollbar-color:#9aa99c var(--paper)}
body{background:var(--paper);color:var(--ink)}::selection{background:var(--accent);color:#263329}h1{font-size:clamp(42px,5.4vw,82px)}h2{font-size:clamp(32px,3.6vw,58px)}[hidden]{display:none!important}
.glass{background:var(--glass-bg);box-shadow:var(--glass-shadow);backdrop-filter:blur(24px) saturate(130%);-webkit-backdrop-filter:blur(24px) saturate(130%)}
.site-header{position:absolute;top:24px;left:var(--gutter);right:var(--gutter);height:72px;margin:0;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;border:0;border-radius:100px;z-index:10;background-color:#18231ebd;color:#fff}.site-header nav{gap:6px;font-size:13px}.site-header nav a{padding:10px 19px;border-radius:40px}.site-header nav a[aria-current]{text-decoration:none;background:#ffffff22;box-shadow:inset 0 1px 0 #ffffff3d}.header-contact{gap:24px;font-size:12px}.header-note{display:none}.button{background:var(--accent);color:#24332a;font-size:13px}.button.glass{background-color:#24362c80;color:#fff}.button.secondary{background:#ffffff16;color:var(--ink)}.text-link,.quiet-link{display:inline-flex;align-items:center;gap:20px;font-size:13px;text-decoration:underline}.quiet-link{color:var(--muted)}.section-pad{padding:100px var(--gutter)}.skip{background:var(--accent);color:#203126}
.landing{padding:134px 20px 0}.intro{min-height:0;padding:0;margin:0 calc(var(--gutter) - 20px) 32px;align-items:flex-end}.intro h1{font-size:clamp(36px,3.8vw,58px);line-height:1.08}.intro p{font-size:14px;color:var(--muted);padding-bottom:5px}.service-panels{display:flex;gap:12px;height:clamp(440px,calc(100svh - 325px),800px);grid-template-columns:none}.service-panel{isolation:isolate;flex:1;min-width:0;border-radius:16px;background:#4c534d;transition:flex 600ms var(--ease-out);container-type:inline-size}.service-panel:before{display:none}.service-panel:after{content:'';position:absolute;inset:40% 0 0;z-index:-1;background:linear-gradient(0deg,#101b18a6,transparent)}.panel-image{inset:-3% 0;width:100%;height:106%;object-fit:cover;z-index:-2}.panel-content{position:absolute;left:18px;right:18px;bottom:55px;top:auto;border-radius:16px;padding:24px;background-color:#18241eab;transform:none}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.panel-heading h2{font-size:clamp(24px,7.3cqw,43px);line-height:1.14;color:#fff;letter-spacing:-.03em}.panel-description{max-height:0;height:auto;opacity:0;overflow:hidden;transform:none;margin:0;color:#edf2eb;font-size:14px;line-height:1.6;max-width:360px;transition:opacity 250ms,max-height 500ms var(--ease-out),margin-top 500ms var(--ease-out)}.panel-caption{bottom:20px;left:25px;right:25px;font-size:11px;color:#f5f7f3;text-shadow:0 1px 8px #000}.under-panels{padding:20px 18px;color:var(--muted);font-size:11px}.service-panel:focus-visible{outline-offset:-5px;flex:1.65}.service-panel:focus-visible .panel-description{max-height:140px;opacity:1;margin-top:18px}
.approach{min-height:70vh;background:linear-gradient(155deg,#202523,#35443b)}.approach p{color:var(--muted)}.scroll-words{font-size:clamp(30px,4.5vw,68px)}.scroll-words > span{color:var(--ink)}.site-footer{margin:0;padding:35px var(--gutter);font-size:11px}.site-footer .brand{color:var(--ink)}
.immersive-hero{position:relative;isolation:isolate;min-height:720px;height:100svh;max-height:1100px;overflow:hidden;background:#3c4940}.hero-photo{width:100%;height:110%;object-fit:cover;position:absolute;inset:-5% 0;z-index:-2}.immersive-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#101b19e8,transparent 70%,#101b1940)}.hero-bottom{position:absolute;left:var(--gutter);right:var(--gutter);bottom:90px;display:flex;align-items:flex-end;justify-content:space-between;gap:50px}.hero-bottom p{margin-top:25px;color:#e4e9e2;font-size:16px;max-width:420px}.hero-bottom .button{flex-shrink:0;margin-bottom:7px}.hero-caption{position:absolute;bottom:29px;left:var(--gutter);font-size:11px;color:#d5dfd8}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;padding-bottom:50px}.section-heading>p{font-size:15px;color:var(--muted);max-width:430px}.light-showroom{position:relative;height:min(78vw,760px);min-height:520px;margin:0 20px;border-radius:16px;overflow:hidden;background:#3d4941}.light-images{position:absolute;inset:0}.light-images img{position:absolute;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 700ms var(--ease-out)}.light-images img.active{opacity:1}.time-bar{position:absolute;top:24px;left:50%;transform:translateX(-50%);display:flex;gap:5px;padding:6px;border-radius:100px;background-color:#202c248f}.time-bar button{display:flex;gap:9px;align-items:center;justify-content:center;white-space:nowrap;background:transparent;border:0;min-height:44px;padding:11px 20px;border-radius:40px;font-size:13px;color:#fff;transition:background-color 200ms,color 200ms}.time-bar button[aria-pressed=true]{background:#f2f5e8;color:#28392d}.sun-icon{width:13px;height:13px;display:block;border:1.5px solid;border-radius:50%}.sun-icon.morning{background:linear-gradient(0deg,currentColor 50%,transparent 50%)}.sun-icon.evening{background:currentColor}.light-label{position:absolute;bottom:30px;left:30px;display:flex;align-items:center;gap:25px;padding:24px 30px;border-radius:16px;background-color:#1c2c219c;max-width:calc(100% - 60px)}.light-label>span{font-size:32px;font-variant-numeric:tabular-nums;font-weight:500;line-height:1}.light-label h3{font-size:20px}.light-label p{font-size:12px;margin-top:5px;color:#e2e9df}.video-figure video{border-radius:16px}.video-figure figcaption{margin-top:14px}.detail-section{background:#28312b}.feature-list article{display:block;padding:26px 0}.feature-list article h3{font-size:21px}.feature-list article p{margin-top:12px;font-size:14px}.end-cta{background:linear-gradient(115deg,#323f36,#202a25);margin-bottom:0}.end-cta .button{flex-shrink:0}
.door-hero{display:grid;grid-template-columns:1fr 1fr;min-height:850px;height:100svh;max-height:1100px;background:#252b27}.door-hero-copy{padding:180px 5vw 80px var(--gutter);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.door-hero h1{font-size:clamp(39px,4.1vw,64px)}.door-hero p{margin-top:30px;font-size:15px;color:var(--muted)}.door-hero .button{margin:36px 0 25px}.door-hero-image{position:relative;overflow:hidden}.door-hero-image>img{height:100%;width:100%;object-fit:cover}.door-caption{position:absolute;bottom:30px;left:30px;right:30px;padding:20px 24px;border-radius:16px;display:flex;justify-content:space-between;align-items:center;gap:20px;background-color:#18251b90;font-size:12px}.door-caption span:first-child{font-size:23px}.project-stage{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;margin:0 var(--gutter);align-items:center}.project-photo-wrap{height:720px;border-radius:16px;overflow:hidden;background:#485249}.project-photo-wrap img{width:100%;height:100%;object-fit:cover;transition:opacity 200ms}.project-story{padding:35px 0}.project-switch{display:flex;flex-wrap:wrap;gap:4px;padding:5px;border-radius:30px;width:fit-content;margin-bottom:65px}.project-switch button{font-size:11px;padding:12px 16px;background:transparent;border:0;border-radius:30px;min-height:44px}.project-switch button[aria-pressed=true]{background:var(--accent);color:#27392b}.project-story h3{font-size:clamp(36px,4vw,62px)}.project-story p{margin:24px 0 35px;max-width:360px;color:var(--muted);font-size:15px}.door-services{display:grid;grid-template-columns:1fr 1.25fr;gap:8%;margin-top:30px}.service-rows details{border-top:1px solid var(--line);padding:25px 0}.service-rows details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:22px;position:relative;padding-right:30px;min-height:44px}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:0;color:var(--accent)}details[open] summary:after{content:'−'}summary span{font-size:11px;color:var(--muted);max-width:160px}.service-rows p{margin-top:22px;font-size:14px;color:var(--muted)}summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.production-note{background:#cbd4c6;color:#26382a}.production-note h2{font-size:clamp(31px,3.4vw,50px)}.production-note p{font-size:15px;color:#3b4d3f}
.handover-hero{display:grid;grid-template-columns:1fr 1.05fr;min-height:800px;padding-top:125px;background:#d8dcd5;color:#26332b;position:relative;overflow:hidden}.handover-hero-copy{padding:80px 5vw 70px var(--gutter);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.handover-hero h1{font-size:clamp(40px,4.5vw,70px)}.handover-hero p{margin:28px 0;max-width:390px;color:#4c5e50;font-size:16px}.handover-hero .button{background:#293e31;color:#f3f7ed}.handover-hero-photo{position:relative;margin:25px 25px 35px 0;overflow:hidden;border-radius:16px;background:#f2f1eb}.handover-hero-photo img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.handover-hero-photo figcaption{position:absolute;bottom:20px;left:20px;right:20px;padding:15px 20px;border-radius:12px;background:#344a39c4;color:#fff}.kit-catalog{padding-top:70px}.kit-viewer{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center}.kit-photo{background:#eeeee9;border-radius:16px;overflow:hidden;height:580px;position:relative}.kit-photo img{width:100%;height:100%;object-fit:contain;transition:opacity 200ms}.kit-detail-copy h3{font-size:36px}.kit-detail-copy p{color:var(--muted);margin:24px 0;max-width:380px;font-size:15px}.kit-options{margin:0 0 35px}.kit-options button{min-height:44px;border:0;padding:11px 17px;font-size:12px;background:#ffffff0c;box-shadow:inset 0 1px 0 #ffffff25;color:var(--muted)}.kit-options button[aria-pressed=true]{background:var(--accent);color:#273a2d}.kit-description{min-height:0;margin:0}.photo-note{font-size:11px;color:var(--muted);max-width:62ch;margin-top:20px}.item-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:65px}.item-gallery figure{min-width:0}.item-gallery img{width:100%;aspect-ratio:1;object-fit:contain;background:#eee;border-radius:12px}.item-gallery figcaption{margin-top:14px;display:flex;justify-content:space-between;gap:12px;color:var(--ink);font-size:14px}.item-gallery figcaption span{font-size:11px;color:var(--muted)}.steps li{padding:25px 0}.steps li:before{display:none}.steps h3{font-size:21px}
.brief-page{min-height:95svh;padding-top:180px}.brief-page form{padding:36px;border-radius:16px;background:var(--glass-bg);box-shadow:var(--glass-shadow);max-width:620px;align-self:start}input,select,textarea{border-bottom-color:#ffffff40;caret-color:var(--accent)}select option{background:#25332a}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
@media(hover:hover) and (pointer:fine){.service-panel:hover{flex:1.65}.service-panel:hover .panel-description{max-height:140px;opacity:1;margin-top:18px}.button:hover{background:#e7eddf;color:#24332a}.button.glass:hover{background-color:#445d4bad;color:#fff}.site-header nav a:hover{background-color:#ffffff20}.text-link:hover,.quiet-link:hover{color:var(--accent)}.project-switch button:hover,.kit-options button:hover{background:#ffffff25;color:#fff}.project-switch button[aria-pressed=true]:hover,.kit-options button[aria-pressed=true]:hover{background:var(--accent);color:#27392b}}
@media(max-width:1050px){.site-header{left:24px;right:24px;padding-inline:20px}.header-contact{font-size:11px;gap:12px}.site-header nav a{padding-inline:14px}.panel-content{left:12px;right:12px;padding:20px}.intro h1{font-size:42px}.section-pad{padding-top:75px;padding-bottom:75px}.door-hero{min-height:720px}.door-hero-copy{padding-right:30px}.door-hero h1{font-size:41px}.door-caption{left:18px;right:18px;flex-direction:column;align-items:flex-start;gap:4px}.project-stage{gap:5%}.project-photo-wrap{height:630px}.project-switch{margin-bottom:35px}.project-switch button{padding-inline:10px}.hero-bottom h1{font-size:58px}.hero-bottom{gap:30px}.hero-bottom .button{max-width:270px}.kit-photo{height:490px}.kit-viewer{gap:5%}.kit-detail-copy h3{font-size:29px}.brief-page{gap:6%}}
@media(max-width:760px){:root{--gutter:22px}.site-header{top:16px;left:16px;right:16px;height:63px;padding:0 18px;gap:15px}.brand{font-size:31px}.site-header nav{display:flex;margin-left:auto;gap:0}.site-header nav a{padding:10px 12px;font-size:11px}.header-contact{display:none}.landing{padding:114px 12px 0}.intro{margin:0 10px 28px;display:block}.intro h1{font-size:43px;line-height:1.1}.intro p{margin-top:21px;font-size:12px;line-height:1.6}.intro p br{display:none}.service-panels{height:auto;display:grid;grid-template-columns:1fr;gap:15px}.service-panel{height:530px;flex:none;container-type:normal}.panel-content{padding:23px;left:16px;right:16px;bottom:53px}.panel-heading h2{font-size:35px}.panel-description{max-height:none;opacity:1;margin-top:15px;font-size:13px}.panel-caption{left:23px;bottom:20px}.under-panels{font-size:11px;padding:22px 10px;align-items:flex-start}.under-panels>span{max-width:145px}.under-panels a{gap:10px;white-space:nowrap}.section-pad{padding:65px var(--gutter)}.approach,.split-section,.detail-section,.door-services,.production-note,.brief-page{grid-template-columns:1fr;gap:40px}.approach{min-height:auto}.scroll-words{font-size:38px}.site-footer{padding:27px var(--gutter);flex-wrap:wrap;gap:20px}.site-footer>span{max-width:190px;margin-left:auto;text-align:right}.site-footer>a:last-child{width:100%;justify-content:space-between}.immersive-hero{min-height:710px;height:92svh;max-height:920px}.hero-bottom{bottom:85px;display:block}.hero-bottom h1{font-size:47px}.hero-bottom p{font-size:14px;margin-top:22px}.hero-bottom .button{margin-top:28px;max-width:none}.hero-photo{object-position:42% center}.section-heading{display:block;padding-bottom:35px}.section-heading p{font-size:14px;margin-top:24px}.light-showroom{margin:0 12px;height:640px;min-height:0}.light-images img{object-position:52% center}.time-bar{top:18px;max-width:calc(100% - 26px);gap:2px;padding:5px}.time-bar button{font-size:12px;padding:10px 16px;gap:7px}.light-label{left:16px;right:16px;bottom:18px;max-width:none;padding:20px;gap:17px}.light-label>span{font-size:26px}.light-label h3{font-size:18px}.light-label p{font-size:11px}.sticky-copy{position:static}.end-cta{display:block}.end-cta .button{margin-top:30px}.door-hero{height:auto;min-height:0;display:flex;flex-direction:column}.door-hero-copy{padding:124px 24px 45px}.door-hero h1{font-size:45px}.door-hero p{font-size:14px;margin-top:24px}.door-hero .button{margin:28px 0 25px}.door-hero-image{height:620px;margin:0 12px;border-radius:16px}.door-caption{flex-direction:row;align-items:center}.door-caption span:last-child{font-size:11px}.project-stage{display:flex;flex-direction:column;gap:0;margin:0 22px}.project-photo-wrap{width:100%;height:540px}.project-story{width:100%;padding-top:25px}.project-switch{margin-bottom:30px;width:100%;justify-content:center}.project-story h3{font-size:38px}.project-story p{margin-top:18px}.door-services{margin-top:0}.service-rows summary{font-size:19px;gap:12px}.service-rows summary span{font-size:11px;max-width:100px}.production-note h2{font-size:36px}.handover-hero{display:flex;flex-direction:column;min-height:0;padding-top:105px}.handover-hero-copy{padding:30px 24px 40px}.handover-hero h1{font-size:46px}.handover-hero p{font-size:14px;margin-top:22px}.handover-hero-photo{margin:0 12px 20px;height:460px}.kit-viewer{display:flex;flex-direction:column;gap:30px;align-items:stretch}.kit-photo{height:390px;order:1}.kit-detail-copy{display:contents}.kit-options{order:0;margin-bottom:0;gap:6px}.kit-options button{padding:10px 13px}.kit-description{order:2}.kit-detail-copy .text-link{order:3}.kit-detail-copy h3{font-size:29px}.kit-description p{margin:18px 0}.photo-note{margin-top:25px;font-size:11px}.item-gallery{grid-template-columns:repeat(2,1fr);gap:24px 14px;margin-top:45px}.item-gallery figcaption{display:block;font-size:13px}.item-gallery figcaption span{display:block;margin-top:5px;font-size:11px}.brief-page{padding-top:125px}.brief-page form{padding:25px 20px}.brief-page .button{font-size:12px;padding:16px 20px;gap:16px}.brief-page h1{font-size:45px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.service-panel,.panel-description,.parallax-photo,.panel-image,.scroll-words > span{transition:none!important;transform:none!important}.light-images img{transition:opacity 120ms linear}.scroll-words > span{opacity:1!important}}
@supports not (backdrop-filter:blur(1px)){.glass{background:#344139f2}.site-header,.panel-content,.light-label,.time-bar{background:#27382ef5}}

/* Full-bleed crops for horizontal photographs; tall products retain their complete silhouette. */
.kit-photo img[src*="keys"],.kit-photo img[src*="candle-plain"],.item-gallery img[src*="keys"],.item-gallery img[src*="candle-plain"]{object-fit:cover}
.kit-photo img[src*="keys"],.item-gallery img[src*="keys"]{object-position:76% 50%}

@media(hover:hover) and (pointer:fine){.button.secondary:hover{background:#d7e0ca;color:#24332a}}
