:root{--paper:#f5f1e8;--ink:#35221f;--wine:#542c33;--muted:#72675d;--line:#d7cec1;--wall:#c18c74;--trim:#60343b;--ceiling:#ece3cf;--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit;cursor:pointer}button:disabled{cursor:default}button,a,summary{-webkit-touch-callout:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #9b6238;outline-offset:5px}button{border:0}svg{width:24px;height:24px;flex-shrink:0}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2,.closing p{font-family:var(--serif);letter-spacing:-.025em;line-height:1.01}em{font-weight:400}h2{font-size:clamp(44px,4.7vw,72px)}.eyebrow,.small-label{font-size:10px;font-weight:600;letter-spacing:.15em;line-height:1.5}.eyebrow{margin-bottom:25px}.skip{position:fixed;left:16px;top:-100px;z-index:100;background:var(--ink);color:white;padding:12px 20px}.skip:focus{top:12px}.header{height:99px;display:flex;align-items:center;justify-content:space-between;padding:0 4.2%;border-bottom:1px solid var(--line);position:relative;z-index:20;background:var(--paper)}.wordmark{display:inline-flex;align-items:center;gap:4px;font-size:30px;letter-spacing:-1.6px;font-weight:600;line-height:1}.wordmark svg{width:19px;height:19px;align-self:flex-start;margin-top:-2px}.desktop-nav{display:flex;gap:34px;font-size:12px}.desktop-nav a{padding:14px 0}.desktop-nav a:hover{box-shadow:0 1px var(--ink)}.header-cta{font-size:12px;display:flex;align-items:center;gap:25px;border-bottom:1px solid;padding:10px 0}.header-cta svg{width:20px}.menu-toggle{display:none}.mobile-nav{display:none}.hero{padding:0 4.2%}.hero-copy{padding:58px 20px 46px 0;grid-area:copy;position:relative}.hero{display:grid;grid-template-columns:46% 54%;grid-template-areas:'copy image' 'bottom bottom'}.hero-copy .eyebrow{font-size:9px;margin-bottom:24px}.tiny-star{font-size:13px;display:inline-block;margin-right:7px}.hero h1{font-size:clamp(76px,7.6vw,116px);line-height:.96;letter-spacing:-.035em}.hero h1 em{color:var(--wine)}.hero-description{font-size:13px;line-height:1.7;max-width:340px;margin:26px 0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;padding:17px 23px;min-height:54px;font-size:12px;font-weight:500;border:1px solid transparent;transition:background .2s,transform .2s}.button svg{width:20px}.primary{background:var(--wine);color:var(--paper)}.primary:hover{background:#362027;transform:translateY(-2px)}.outline{border-color:var(--line);background:transparent}.outline:hover{background:#e8e1d5}.hero-secondary{display:block;font-size:10px;line-height:1.8;margin-top:23px;color:var(--muted)}.hero-secondary span{color:var(--ink);border-bottom:1px solid;margin-left:4px}.hero-image{grid-area:image;margin:28px 0 28px 22px;position:relative;min-height:600px;overflow:hidden}.hero-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:58% center}.image-note{position:absolute;right:23px;top:23px;width:146px;height:146px;border-radius:50%;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;transform:rotate(9deg)}.image-note span{font-family:var(--serif);font-size:21px;text-align:center;line-height:1.1}.image-note svg{width:22px;height:22px}.hero-image figcaption{position:absolute;bottom:16px;left:16px;font-size:8px;letter-spacing:.1em;color:white;background:#35221fe0;padding:7px 9px}.hero-bottom{grid-area:bottom;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.1em;padding:20px 0}.hero-bottom a{display:flex;align-items:center;gap:16px;text-transform:uppercase}.hero-bottom svg{width:18px;transform:rotate(90deg)}.section{padding:100px 7.8%}.services{display:grid;grid-template-columns:44% 56%;padding-top:95px;padding-bottom:110px}.section-intro{padding-right:55px}.section-intro h2{font-size:clamp(42px,4.25vw,64px)}.section-intro>p:last-child{font-size:13px;line-height:1.8;max-width:335px;margin-top:26px;color:var(--muted)}.service-list{border-top:1px solid var(--line);padding-top:0}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;min-height:83px;gap:22px}summary::-webkit-details-marker{display:none}.service-number{font-size:10px;color:var(--muted)}summary h3{font-family:var(--serif);font-size:28px;line-height:1.2}.plus{width:20px;height:20px;margin-left:auto;position:relative;flex-shrink:0}.plus:before,.plus:after{content:'';position:absolute;top:9px;left:3px;width:14px;height:1px;background:currentColor}.plus:after{transform:rotate(90deg)}details[open]>summary .plus:after{transform:rotate(0)}.service-body{margin:0 25px 29px 38px}.service-body p{font-size:13px;color:var(--muted);line-height:1.8;max-width:430px}.service-tags{display:block;font-size:8px;letter-spacing:.1em;margin:18px 0}.service-body a{display:inline-flex;align-items:center;gap:18px;font-size:11px;border-bottom:1px solid var(--line);padding:5px 0}.service-body a svg{width:18px}.colour{background:#eae5d9;padding-top:80px;padding-bottom:90px}.colour-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:44px}.colour-heading>p{font-size:13px;max-width:335px;line-height:1.8;padding-bottom:5px}.studio{display:grid;grid-template-columns:59% 41%;background:var(--paper)}.studio-art{position:relative;overflow:hidden;background:var(--wall);display:flex;align-items:center;min-height:520px}.room-study{width:100%;height:100%;align-self:stretch;display:block}.wall-fill{fill:var(--wall)}.trim-fill,.door-fill{fill:var(--trim)}.ceiling-fill{fill:var(--ceiling)}.room-study path,.room-study circle{transition:fill .5s}.art-top,.art-bottom{position:absolute;left:25px;right:25px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.14em;color:#2c241e}.art-top{top:21px}.art-bottom{bottom:19px}.studio-panel{padding:37px 36px}.studio-panel .eyebrow{font-size:9px;margin-bottom:13px}.palette-tabs{display:flex;border-bottom:1px solid var(--line);padding-bottom:24px;gap:25px}.palette-tabs button{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:10px;background:none;padding:5px 4px;min-width:48px}.palette-dot{width:36px;height:36px;border-radius:50%;display:block;border:4px solid var(--paper);outline:1px solid transparent}.palette-tabs [aria-pressed=true] .palette-dot{outline:1px solid var(--ink)}.palette-dot.clay{background:#b77c64}.palette-dot.sage{background:#8d967f}.palette-dot.ink{background:#3e5363}.palette-content{padding-top:24px}.palette-content .small-label{font-size:8px}.palette-content h3{font-family:var(--serif);font-size:43px;line-height:1.05;margin:11px 0 14px}.palette-content p{font-size:11px;color:var(--muted);line-height:1.8;max-width:300px}.swatch-list{display:flex;margin:24px 0;gap:18px}.swatch-list>div{flex:1;min-width:0}.swatch-list i{display:block;width:100%;height:16px;margin-bottom:6px}.swatch-list span,.swatch-list strong{display:block;font-size:8px;font-weight:400}.swatch-list span{color:var(--muted)}.swatch-list strong{font-size:10px}.text-button{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;padding:12px 0;border-bottom:1px solid var(--ink);font-size:10px;gap:10px;text-align:left}.text-button svg{width:19px}.studio-disclaimer{font-size:9px;color:var(--muted);margin-top:14px;line-height:1.7}.approach{background:var(--wine);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:95px;padding-bottom:95px}.approach .eyebrow{color:#d2b9ad}.approach h2{font-size:64px}.big-star{width:68px;height:68px;margin-top:48px;color:#c6957f}.approach-steps article{padding:25px 0;border-top:1px solid #98777a}.approach-steps article:first-child{padding-top:4px;border:0}.approach-steps article:last-child{padding-bottom:0}.approach-steps span{font-size:8px;letter-spacing:.12em;color:#e4c5b6}.approach-steps h3{font-family:var(--serif);font-size:29px;margin:10px 0 12px}.approach-steps p{font-size:12px;line-height:1.9;color:#e2d6cd}.project{display:grid;grid-template-columns:40% 52%;gap:8%;padding-top:110px;padding-bottom:100px}.project-intro>p:not(.eyebrow){margin:24px 0;font-size:13px;line-height:1.9;max-width:330px;color:var(--muted)}.preview-note{display:flex;gap:13px;max-width:330px;border-top:1px solid var(--line);padding-top:22px;margin-top:30px}.preview-note p{font-size:10px;color:var(--muted);line-height:1.8}.preview-note strong{font-weight:500;color:var(--ink)}.note-icon{border:1px solid var(--line);border-radius:50%;width:19px;height:19px;flex-shrink:0;font-family:Georgia,serif;font-size:11px;display:flex;align-items:center;justify-content:center}.direct-link{display:inline-flex;align-items:center;gap:15px;font-size:11px;margin-top:28px;border-bottom:1px solid var(--line);padding-bottom:8px}.direct-link svg{width:18px}fieldset{margin:0;padding:0;border:0;min-width:0}legend{font-size:12px;margin-bottom:17px;padding:0;font-weight:500}legend span{font-size:9px;color:var(--muted);padding-right:13px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:27px}.choice{background:transparent;border:1px solid var(--line);font-size:11px;padding:13px 14px;text-align:left;min-height:48px;transition:background .2s}.choice:hover{background:#ece4d8}.choice.selected{background:var(--wine);border-color:var(--wine);color:var(--paper)}.choice-row{display:flex;gap:8px}.choice-row .choice{flex:1;text-align:center}.project-palette{display:flex;align-items:center;justify-content:space-between;padding:20px 0;margin-top:9px;font-size:11px;border-bottom:1px solid var(--line)}.palette-link{display:flex;align-items:center;gap:12px;font-size:11px;background:none;min-height:44px;padding:4px}.palette-link svg{width:17px}.brief{padding:24px 0}.brief .small-label{font-size:8px}.brief p{font-family:var(--serif);font-size:23px;line-height:1.4;margin-top:13px}.builder-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.builder-actions .button{padding:14px;font-size:11px;gap:10px}.copy-status{font-size:9px;color:var(--muted);margin-top:13px;min-height:18px}.questions{display:grid;grid-template-columns:40% 52%;gap:8%;padding-top:30px;padding-bottom:90px}.questions h2{font-size:48px}.faq-list{border-top:1px solid var(--line)}.faq-list summary{font-size:12px;min-height:66px;gap:10px}.faq-list p{font-size:12px;line-height:1.9;color:var(--muted);padding:0 35px 24px 0}.closing{background:#c3917a;padding:62px 7.8%;display:flex;justify-content:space-between;align-items:center}.closing p{font-size:70px}.round-link{width:92px;height:92px;border:1px solid #674133;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s}.round-link:hover{background:#d8ac94}.round-link svg{width:38px;height:38px}footer{padding:48px 4.2% 20px;background:#ede8dd}.footer-top{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:45px}.footer-top p{font-size:11px;line-height:1.9}.footer-top>div{display:flex;gap:25px}.footer-top>div a{font-size:11px;display:flex;align-items:center;gap:8px}.footer-top>div svg{width:15px}.footer-bottom{border-top:1px solid var(--line);padding-top:18px;display:flex;align-items:center;justify-content:space-between;font-size:9px;color:var(--muted)}.footer-bottom a{display:flex;align-items:center;gap:8px}.footer-bottom svg{width:14px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:var(--wine);color:white;padding:12px 22px;font-size:12px;box-shadow:0 5px 30px #0002;z-index:30;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;max-width:90%;text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:1600px){body{max-width:1800px;margin:auto}.hero h1{font-size:124px}.hero-image{min-height:680px}.hero-copy{padding-top:70px}}
@media(max-width:1100px){.header{height:83px}.hero-copy{padding-top:40px}.hero h1{font-size:83px}.hero-image{min-height:570px;margin-left:12px}.hero-copy .eyebrow{font-size:8px;letter-spacing:.09em}.hero-description{font-size:12px;max-width:280px}.image-note{width:116px;height:116px;right:16px;top:16px}.image-note span{font-size:18px}.section{padding-left:5%;padding-right:5%}.studio-panel{padding:30px 24px}.studio{grid-template-columns:56% 44%}.studio-art{min-height:530px}.room-study{width:112%;max-width:none;margin-left:-6%}.approach h2{font-size:55px}.builder-actions{grid-template-columns:1fr}.builder-actions .button{justify-content:center}.section-intro{padding-right:35px}summary h3{font-size:25px}.hero-secondary{max-width:230px}.hero-secondary span{display:block;margin:0;width:max-content}.hero-bottom{font-size:8px}.hero-bottom>span:last-child{max-width:200px;text-align:right}}
@media(max-width:760px){html{scroll-padding-top:26px}.header{height:76px;padding:0 6%}.wordmark{font-size:27px}.desktop-nav{display:none}.header-cta{margin-left:auto;margin-right:24px;font-size:11px;gap:10px}.menu-toggle{display:flex;width:30px;height:44px;padding:12px 0;justify-content:center;flex-direction:column;gap:6px;background:none}.menu-toggle span{height:1px;width:24px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav:not([hidden]){display:flex;position:absolute;top:76px;left:0;right:0;background:var(--paper);z-index:19;flex-direction:column;padding:18px 6%;border-bottom:1px solid var(--line)}.mobile-nav a{padding:14px 0;font-size:15px}.hero{padding:0 6%;grid-template-columns:1fr;grid-template-areas:'copy' 'image' 'bottom'}.hero-copy{padding:35px 0 30px}.hero-copy .eyebrow{font-size:8px;letter-spacing:.13em;margin-bottom:21px}.hero h1{font-size:clamp(66px,13.8vw,100px);line-height:.96}.hero h1 br:nth-child(2){display:none}.hero h1 em{display:inline-block}.hero-description{font-size:12px;max-width:340px;margin:20px 0}.hero-description br{display:none}.hero-copy .button{padding:15px 19px;font-size:11px}.hero-secondary{max-width:none;font-size:9px;margin-top:15px}.hero-secondary span{display:inline;margin-left:4px}.hero-image{margin:0 0 22px;min-height:365px;aspect-ratio:1.05}.hero-image img{object-position:56% center}.image-note{width:104px;height:104px;right:14px;top:14px}.image-note span{font-size:16px}.image-note svg{width:18px;height:18px}.hero-image figcaption{font-size:7px;left:12px;bottom:12px}.hero-bottom{font-size:7px;padding:15px 0;gap:15px}.hero-bottom>span:last-child{display:none}.hero-bottom a{gap:6px}.section{padding:66px 6%}.services{grid-template-columns:1fr;gap:32px}.section-intro{padding:0}.section-intro h2{font-size:48px}.section-intro>p:last-child{font-size:12px;max-width:360px;margin-top:19px}.eyebrow{font-size:8px;margin-bottom:18px}summary{min-height:75px;gap:15px}summary h3{font-size:25px}.service-body{margin-left:29px;margin-right:15px}.service-body p{font-size:12px}.colour-heading{display:block;margin-bottom:28px}.colour-heading h2{font-size:52px}.colour-heading>p{font-size:12px;margin-top:20px;max-width:300px}.studio{grid-template-columns:1fr}.studio-art{min-height:0;aspect-ratio:1.2;display:block}.room-study{width:100%;height:100%;margin:0}.art-top,.art-bottom{left:17px;right:17px;font-size:7px}.art-top{top:15px}.art-bottom{bottom:13px}.studio-panel{padding:28px}.palette-tabs{gap:30px;padding-bottom:18px}.palette-content h3{font-size:43px}.palette-content p{max-width:none;font-size:12px}.swatch-list{gap:18px}.swatch-list i{height:23px}.swatch-list strong{font-size:11px}.text-button{font-size:11px;min-height:48px}.studio-disclaimer{font-size:9px}.approach{grid-template-columns:1fr;gap:36px}.approach-intro{position:relative}.approach h2{font-size:51px}.big-star{position:absolute;width:47px;height:47px;right:4px;bottom:5px;margin:0}.approach-steps h3{font-size:27px}.approach-steps p{font-size:12px}.project{grid-template-columns:1fr;gap:35px}.project h2{font-size:56px}.project-intro>p:not(.eyebrow){max-width:none;font-size:12px;margin:20px 0}.preview-note{max-width:none;margin-top:22px;padding-top:18px}.direct-link{margin-top:18px}.project-builder{padding-top:10px}.choice-grid{gap:7px}.choice{font-size:10px;padding:12px}.builder-actions{grid-template-columns:1fr 1fr}.builder-actions .button{font-size:10px;padding:13px 10px;gap:7px;justify-content:space-between}.brief p{font-size:24px}.copy-status{font-size:9px}.questions{grid-template-columns:1fr;gap:28px;padding-top:0}.questions h2{font-size:46px}.faq-list summary{font-size:11px}.closing{padding:45px 6%;gap:10px}.closing p{font-size:45px}.round-link{width:57px;height:57px;flex-shrink:0}.round-link svg{width:25px;height:25px}footer{padding:38px 6% 20px}.footer-top{flex-wrap:wrap;gap:26px;padding-bottom:30px}.footer-top .wordmark{width:100%}.footer-top p{font-size:10px}.footer-top>div{flex-direction:column;gap:12px}.footer-bottom{flex-wrap:wrap;gap:13px;font-size:8px}.footer-bottom>span:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.primary:hover{transform:none}}
/* Readability refinements after first browser inspection. */
.tiny-star{width:12px;height:12px;vertical-align:-2px;margin-right:7px}
.hero-description,.section-intro>p:last-child,.service-body p,.colour-heading>p{font-size:15px}
.desktop-nav,.header-cta,.button{font-size:13px}.hero-secondary{font-size:11px}
.approach-steps p,.project-intro>p:not(.eyebrow),.faq-list p{font-size:14px}
.palette-content p{font-size:13px}.text-button{font-size:12px}.studio-disclaimer{font-size:11px}
.service-body a{font-size:13px}.service-tags{font-size:10px}
.preview-note p,.direct-link,.choice,.palette-link,.project-palette,.faq-list summary{font-size:13px}
legend{font-size:14px}.builder-actions .button{font-size:12px}.copy-status{font-size:11px}
.footer-top p,.footer-top>div a{font-size:12px}
@media(max-width:1100px) and (min-width:761px){.hero h1{font-size:clamp(67px,8.1vw,83px)}.hero-description{font-size:14px}.studio-panel{padding:28px 22px}.service-list summary h3{font-size:24px}}
@media(max-width:760px){.hero-description,.section-intro>p:last-child,.service-body p,.colour-heading>p,.approach-steps p,.project-intro>p:not(.eyebrow){font-size:14px}.hero-copy .button{font-size:12px}.hero-secondary{font-size:10px}.choice{font-size:12px}.builder-actions{grid-template-columns:1fr}.builder-actions .button{font-size:13px;justify-content:space-between}.copy-status{font-size:11px}.faq-list summary{font-size:13px}.preview-note p{font-size:12px}.studio-art{aspect-ratio:1.1}.hero-copy .eyebrow{font-size:9px}}

@media(max-width:760px){.hero-image{min-height:0;min-width:0;width:100%;aspect-ratio:1.05}.hero>*{min-width:0}}

.hero-secondary,.service-body a,.direct-link,.footer-top>div a,.footer-bottom a{min-height:44px;align-content:center}
.header-cta{min-height:44px}
@media(max-width:360px){.header{padding:0 5%}.wordmark{font-size:23px}.header-cta{margin-right:13px;gap:6px}.hero-copy .eyebrow{font-size:8px}.hero h1{font-size:61px}.choice-row{gap:5px}.choice-row .choice{padding:10px 7px}.art-bottom{font-size:6px}.closing p{font-size:38px}}
