/* Additive refinement: retain the existing layout, sizing and brand palette. */
.site-header .header-inner{width:calc(100% - 40px);max-width:none}
.site-header .brand{display:block;position:relative;width:430px;height:94px;overflow:hidden;flex-shrink:0}
.site-header .brand img.brand-logo{position:absolute;display:block;width:520px;height:auto;max-width:none;left:-45px;top:50%;transform:translateY(-50%);object-fit:contain}
@media(max-width:1100px) and (min-width:761px){.site-header .brand{width:300px}.site-header .brand img.brand-logo{width:360px;left:-30px}.site-header .header-inner nav{gap:18px}}
@media(max-width:760px){.site-header .header-inner{width:calc(100% - 24px)}.site-header .brand{width:275px;height:68px}.site-header .brand img.brand-logo{width:350px;left:-38px}}
@media(max-width:360px){.site-header .brand{width:245px}.site-header .brand img.brand-logo{width:310px;left:-34px}}
main{animation:page-in .5s ease both}
@keyframes page-in{from{opacity:.4}to{opacity:1}}
.motion-line{display:block;overflow:clip;perspective:700px;line-height:inherit}
.motion-line-inner{display:block;line-height:inherit;position:relative;color:transparent;-webkit-text-stroke:.65px var(--title-color,var(--ink))}
.motion-line-inner:after{content:attr(data-text);position:absolute;inset:0;color:var(--title-color,var(--ink));-webkit-text-stroke:0;clip-path:inset(100% 0 0 0);transition:clip-path .95s cubic-bezier(.22,1,.36,1) var(--fill-delay,0ms)}
.motion-line-inner.text-filled:after{clip-path:inset(0 0 0 0)}
.hero-slide{transition:opacity 1s cubic-bezier(.2,.65,.3,1)}
.hero-slide.active{animation:none}
@keyframes hero-image-drift{from{background-position:center 53%}to{background-position:center 55%}}
@media(max-width:760px){@keyframes hero-image-drift{from{background-position:63% 48%}to{background-position:63% 50%}}}
.room-card img,.inspiration-card img{transition:transform .85s cubic-bezier(.2,.65,.3,1)}
.room-card>span,.inspiration-card>span{transition:transform .45s cubic-bezier(.16,1,.3,1)}
@media(hover:hover) and (pointer:fine){.room-card:hover>span,.inspiration-card:hover>span{transform:translateY(-4px)}}
.site-header{transition:box-shadow .3s ease,border-color .3s ease}
.site-header.is-scrolled{box-shadow:0 5px 22px #0000000c;border-bottom-color:transparent}
.header-inner nav>a:not(.button){position:relative}
.header-inner nav>a:not(.button):after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.header-inner nav>a:not(.button):hover:after,.header-inner nav>a[aria-current=page]:not(.button):after{transform:scaleX(1)}
.service-card{transition:box-shadow .35s ease,border-color .35s ease,transform .35s ease}
.service-card>img{transition:filter .4s ease}
.gallery-card img{transition:filter .35s ease,box-shadow .35s ease}
.button{transition:background .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease}
.text-link{transition:color .25s ease,border-color .25s ease}
.faq-list summary:after{transition:transform .25s ease}
.faq-list details[open] summary:after{transform:rotate(180deg)}
.lightbox[open]{animation:dialog-enter .25s ease both}
.lightbox[open]::backdrop{animation:backdrop-enter .25s ease both}
@keyframes dialog-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes backdrop-enter{from{opacity:0}to{opacity:1}}
.testimonials-section{background:#fff}
.testimonials-section .section-heading{margin-bottom:32px}
.testimonials-section .section-heading h2{margin-bottom:12px}
.testimonials-section .testimonials-note{font-size:.9rem;max-width:none;margin:0;color:var(--muted)}
.testimonial-controls{display:flex;gap:10px;flex-shrink:0}
.testimonial-controls button{min-height:44px;padding:10px 18px;border:1px solid var(--line);border-radius:4px;background:white;color:var(--ink);font-size:.9rem;transition:background .25s,border-color .25s,color .25s}
.testimonial-controls button:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:white}
.testimonial-controls button:disabled{opacity:.4;cursor:default}
.testimonial-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:1px;scrollbar-width:thin;scrollbar-color:#d8d2ca transparent;padding:5px 1px 16px;min-width:0}
.testimonial-card{min-width:0;scroll-snap-align:start;border:1px solid var(--line);border-radius:8px;padding:28px;display:flex;flex-direction:column;background:var(--soft);transition:border-color .3s,box-shadow .3s}
.sample-badge{align-self:flex-start;border:1px solid #d8d2ca;color:#6a635c;padding:3px 8px;border-radius:3px;font-size:.7rem;letter-spacing:.1em;line-height:1.6}
.quote-mark{display:block;font-family:Georgia,serif;color:var(--accent);font-size:5rem;line-height:.85;margin-top:25px}
.testimonial-card h3{font-family:var(--heading);text-transform:uppercase;font-size:1.4rem;font-weight:500;margin-bottom:16px}
.testimonial-card blockquote{margin:0 0 25px;flex:1;color:var(--muted);font-size:1rem;line-height:1.65}
.testimonial-card blockquote p{margin:0}
.reviewer{display:flex;align-items:center;gap:13px;border-top:1px solid #dfdcd5;padding-top:20px}
.reviewer-avatar{width:42px;height:42px;display:grid;place-items:center;flex-shrink:0;border-radius:50%;background:#f2dfe2;color:var(--brand);font-size:.8rem;font-weight:600}
.reviewer strong{display:block;font-size:.94rem;font-weight:500;line-height:1.5}
.reviewer div>span{display:block;font-size:.83rem;color:var(--muted);line-height:1.5}
.testimonial-footer{display:flex;justify-content:space-between;gap:20px;margin-top:16px;color:var(--muted);font-size:.85rem}
.testimonial-position{color:var(--accent);white-space:nowrap}
@media(hover:hover) and (pointer:fine){.service-card:hover{transform:translateY(-4px);border-color:#dbb0b4;box-shadow:0 12px 30px #3423160c}.service-card:hover>img{filter:brightness(1.035)}.gallery-card:hover img{box-shadow:0 8px 20px #00000014}.button:hover{box-shadow:0 6px 16px #7b16201c}.testimonial-card:hover{border-color:#dbb0b4}}
@media(max-width:1000px){.testimonial-track{grid-auto-columns:calc((100% - 24px)/2)}}
@media(max-width:760px){.testimonial-track{grid-auto-columns:100%;gap:18px}.testimonial-card{padding:25px}.testimonial-footer{align-items:flex-start}.testimonial-footer>span:last-child{max-width:220px;text-align:right}.header-inner nav>a:not(.button):after{right:auto;width:28px;bottom:0}.header-inner nav.open{animation:nav-enter .2s ease both}@keyframes nav-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}}
/* Scoped exclusively to the About page's thoughtful process section. */
.thoughtful-process{background:linear-gradient(180deg,#f4f3f0,#f8f7f4)}
.thoughtful-process .section-heading{margin-bottom:48px}
.thoughtful-process .process-grid{position:relative;gap:22px;align-items:stretch}
.thoughtful-process .process-grid:before{content:'';position:absolute;top:55px;left:8%;right:8%;height:1px;background:#e7afb4;pointer-events:none}
.thoughtful-process .process-grid article{position:relative;min-width:0;border:1px solid #e3dfd8;border-radius:10px;background:#fff;padding:28px 25px 30px;box-shadow:0 4px 18px #34231604;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.thoughtful-process .process-grid article>.process-number{display:grid;place-items:center;width:56px;height:56px;margin-bottom:24px;border:1px solid #efb7bc;border-radius:50%;background:#fcecef;color:var(--accent);font-size:1.8rem;line-height:1;position:relative;transition:background .3s ease,color .3s ease,border-color .3s ease}
.thoughtful-process .process-stage{display:block;color:var(--accent);font-size:.74rem;font-weight:500;letter-spacing:.17em;margin-bottom:12px;line-height:1.6}
.thoughtful-process .process-grid h3{max-width:none;font-family:var(--heading);text-transform:uppercase;font-size:1.45rem;line-height:1.35;margin-bottom:16px}
.thoughtful-process .process-grid p{font-size:1rem;line-height:1.65;margin-bottom:0}
@media(hover:hover) and (pointer:fine){.thoughtful-process .process-grid article:hover{transform:translateY(-5px);border-color:#df9da4;box-shadow:0 12px 28px #3423160c}.thoughtful-process .process-grid article:hover>.process-number{background:var(--accent);border-color:var(--accent);color:white}}
@media(min-width:761px) and (max-width:1000px){.thoughtful-process .process-grid{grid-template-columns:repeat(2,1fr)}.thoughtful-process .process-grid:before{display:none}}
@media(max-width:760px){.thoughtful-process .section-heading{margin-bottom:32px}.thoughtful-process .process-grid{gap:18px}.thoughtful-process .process-grid:before{display:none}.thoughtful-process .process-grid article{padding:24px 20px}.thoughtful-process .process-grid h3{font-size:1.35rem}.thoughtful-process .process-grid article>.process-number{width:48px;height:48px;font-size:1.6rem;margin-bottom:20px}}
@media(max-width:480px){.thoughtful-process .process-grid{grid-template-columns:1fr}.thoughtful-process .process-grid article{padding:25px 24px 25px 94px}.thoughtful-process .process-grid article>.process-number{position:absolute;left:24px;top:27px;margin:0}.thoughtful-process .process-stage{margin-bottom:8px}.thoughtful-process .process-grid h3{margin-bottom:12px}}
.hero-slide{background-image:none!important;overflow:hidden}
.hero-slide:before{content:'';position:absolute;inset:-2%;background-image:linear-gradient(90deg,#000a,#0002),var(--slide-image);background-size:cover;background-position:center 55%;transform:scale(1.08);transition:transform 7s cubic-bezier(.2,.6,.3,1);z-index:-1}
.hero-slide.active:before{transform:scale(1)}
.hero-slide:before{z-index:0}
.hero-copy{position:relative;z-index:1}
.hero-copy:before{left:64px}
.site-header:after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--accent);transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none}
.feature-image{overflow:hidden}
.feature-image img{transform:translateY(var(--image-depth,0px)) scale(1.08);transition:transform .15s linear}
.thoughtful-process .process-grid:after{content:'';position:absolute;top:55px;left:8%;right:8%;height:2px;background:var(--accent);transform:scaleX(var(--process-progress,0));transform-origin:left;pointer-events:none;z-index:0}
.thoughtful-process .process-grid article{z-index:1}
.thoughtful-process .process-grid article.step-current{border-color:#df9da4;background:#fff8f9}
.thoughtful-process .process-grid article.step-current>.process-number{background:var(--accent);color:white;border-color:var(--accent)}
.room-card,.inspiration-card,.gallery-card{isolation:isolate}
@media(hover:hover) and (pointer:fine){.room-card:hover img,.inspiration-card:hover img{transform:translate(var(--image-x,0px),var(--image-y,0px)) scale(1.08)}.gallery-card{overflow:hidden;border-radius:6px}.gallery-card:hover img{transform:translate(var(--image-x,0px),var(--image-y,0px)) scale(1.025)}.gallery-card img{transition:transform .6s cubic-bezier(.22,1,.36,1),filter .4s}.room-card:before,.inspiration-card:before{content:'Explore this space';position:absolute;right:18px;top:18px;background:#ffffffed;color:var(--ink);padding:8px 13px;font-size:.8rem;border-radius:3px;z-index:3;opacity:0;transform:translateY(-8px);transition:opacity .3s,transform .4s}.room-card:hover:before,.inspiration-card:hover:before{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){.thoughtful-process .process-grid:after{display:none}.hero-copy:before{left:15px}}
@media(max-width:760px){.hero-slide:before{background-position:63% center}.hero-copy:before{left:0}}
.service-grid,.room-grid,.inspiration-grid,.gallery-grid{position:relative}
.reference-scroll-card{translate:0 var(--card-rise,0px);opacity:var(--card-opacity,1);transition:translate .55s cubic-bezier(.22,1,.36,1),opacity .45s ease}
.gallery-card{position:relative}
.brand-transition{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:#d92128;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .32s ease,visibility .32s;overflow:hidden}
.brand-transition.transition-active{opacity:1;visibility:visible;pointer-events:auto}
.transition-wordmark{position:relative;font-family:Arial,Helvetica,sans-serif;font-weight:800;font-size:clamp(3rem,14vw,15rem);letter-spacing:-.065em;line-height:1.15;white-space:nowrap;color:transparent;-webkit-text-stroke:1px #fff}
.transition-wordmark:after{content:attr(data-text);position:absolute;inset:0;color:white;-webkit-text-stroke:0;clip-path:inset(100% 0 0 0);transition:clip-path .7s cubic-bezier(.22,1,.36,1)}
.transition-filled .transition-wordmark:after{clip-path:inset(0 0 0 0)}
@media(hover:hover) and (pointer:fine){.room-card:before,.inspiration-card:before{display:none}.room-card:hover img,.inspiration-card:hover img,.gallery-card:hover img{transform:none;filter:none}.room-card,.inspiration-card,.gallery-card{cursor:pointer}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.testimonial-track{scroll-behavior:auto}.feature-image img{transform:none}.hero-slide:before{transform:none}.room-card:hover img,.inspiration-card:hover img,.gallery-card:hover img{transform:none}.reference-scroll-card{translate:none;opacity:1}.brand-transition{display:none}.motion-line-inner{color:var(--title-color,var(--ink));-webkit-text-stroke:0}.motion-line-inner:after{display:none}}
