:root{--paper:#fffcf5;--ink:#51463e;--muted:#82796e;--line:#ded8cc;--accent:#9b7753;--olive:#6d755b;--wash:#f0ece2;--header:94px;--footer:38px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 20px)}body{margin:0;background:var(--paper);color:var(--ink);font:400 14px/1.8 Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.02}h2{font-size:clamp(46px,5.2vw,78px);letter-spacing:-.035em}h2 em,h1 em{font-weight:400}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait}img{display:block;max-width:100%}button{border-radius:0}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:#daceb7;color:var(--ink)}[hidden]{display:none!important}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.section-width{width:calc(100% - 120px);max-width:1440px;margin:0 auto}.section-space{padding-top:125px;padding-bottom:125px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:.19em;line-height:1.8}.text-link{display:inline-flex;gap:26px;align-items:center;border:0;border-bottom:1px solid var(--ink);padding:0 0 12px;background:transparent;font-size:11px;font-weight:600}.text-link svg{width:19px;height:19px;transition:transform .3s}.text-link:hover svg{transform:translate(3px,-3px)}.skip-link{position:fixed;left:20px;top:-100px;background:var(--ink);color:var(--paper);padding:15px;z-index:100}.skip-link:focus{top:10px}
/* A quiet frame for the work. */
.header{height:var(--header);position:fixed;top:0;left:0;right:0;display:flex;align-items:center;padding:0 60px;gap:45px;background:rgb(255 252 245 / .95);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);z-index:50}.brand{margin-left:-7px;display:block;width:139px;flex-shrink:0}.brand img{width:139px;height:auto;mix-blend-mode:normal}.navigation{display:flex;gap:37px;margin-left:auto}.navigation a{font-size:11px;position:relative}.navigation a:after{content:'';position:absolute;bottom:-6px;left:0;right:0;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .3s}.navigation a:hover:after,.navigation a.active:after{transform:scaleX(1)}.header-cta{font-size:11px;padding:11px 18px;border:1px solid var(--ink);display:flex;align-items:center;gap:25px;transition:background .25s,color .25s}.header-cta span{font-size:20px;line-height:1}.header-cta:hover{background:var(--ink);color:var(--paper)}.menu-toggle{display:none}.footer{position:static;height:var(--footer);display:flex;align-items:center;justify-content:space-between;padding:0 35px;background:var(--ink);color:var(--paper);font-size:8px;letter-spacing:.13em;line-height:1.3}.footer-center{opacity:.65}.footer a{display:flex;gap:20px;align-items:center}.footer a span{font-size:15px}.footer a:hover{color:#dbc6a6}
/* First impression. */
.hero{padding-top:calc(var(--header) + 60px);display:grid;grid-template-columns:.85fr 1.15fr;column-gap:30px;align-items:center;min-height:100svh;position:relative}.hero-copy{padding:5px 0 15px;position:relative;z-index:2}.hero .eyebrow{margin-bottom:24px}.hero h1{font-size:clamp(88px,9.8vw,150px);line-height:.88;letter-spacing:-.055em;margin-left:-5px}.hero h1 em{color:var(--accent)}.hero-description{font-size:13px;line-height:1.9;margin-top:29px;color:var(--muted)}.hero .text-link{margin-top:25px}.brand-note{display:flex;gap:17px;align-items:center;margin-top:36px;font-size:9px;line-height:1.8;color:var(--muted)}#animated-mark{animation:mark-drift 8s 4s ease-in-out infinite}.hero-visual{height:clamp(420px,42vw,640px);position:relative;align-self:stretch;min-height:0;overflow:visible;margin:0 0 0 5px}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgb(0 0 0 / .2),transparent 30%,transparent 55%,rgb(27 24 17 / .6));pointer-events:none}.hero-visual:before{content:'';position:absolute;inset:13px;border:1px solid rgb(255 252 245 / .25);z-index:1;pointer-events:none}.image-kicker{position:absolute;top:29px;left:30px;right:30px;display:flex;justify-content:space-between;gap:10px;z-index:2;color:var(--paper);font-size:8px;letter-spacing:.14em}.hero-visual figcaption{position:absolute;bottom:30px;left:30px;right:30px;z-index:2;color:var(--paper);display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:500;letter-spacing:.1em;line-height:1.8}.hero-visual figcaption small{font-size:10px;font-weight:400;letter-spacing:0;opacity:.8}.image-coordinate{position:absolute;right:-24px;top:45%;writing-mode:vertical-rl;letter-spacing:.17em;font-size:8px;line-height:1}.hero-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px 0 35px;margin-top:14px;align-self:end}.hero-bottom p{font-family:'Cormorant Garamond',Georgia,serif;font-size:18px;line-height:1.25;font-style:italic;color:var(--muted)}.scroll-cue{display:flex;gap:15px;align-items:center;font-size:8px;letter-spacing:.18em}.scroll-line{display:block;width:1px;height:37px;background:var(--line);position:relative;overflow:hidden}.scroll-line:after{content:'';position:absolute;top:0;left:0;right:0;height:18px;background:var(--ink);animation:scroll-line 2.8s infinite}.hero-discipline{font-size:8px;letter-spacing:.12em;color:var(--muted)}.entrance{animation:entrance 1s both}.hero h1{animation-delay:.13s}.hero-description{animation-delay:.24s}.hero .text-link{animation-delay:.35s}.hero .brand-note{animation-delay:.5s}.hero-visual{animation-delay:.2s}
/* The idea before the drawing. */
.intro{padding-top:108px;padding-bottom:100px;display:grid;grid-template-columns:1.3fr 1fr;column-gap:9%;border-top:1px solid var(--line)}.intro .eyebrow{grid-column:1/-1;margin-bottom:28px}.intro h2{font-size:clamp(44px,4.8vw,70px)}.intro-description{align-self:end;font-size:13px;line-height:2;color:var(--muted);max-width:400px;padding-bottom:4px}
/* Scroll-scrubbed architecture. */
.story{height:440vh;background:var(--wash);position:relative;scroll-margin-top:0}.story-stage{position:sticky;top:var(--header);height:calc(100svh - var(--header));display:grid;grid-template-columns:1.42fr 1fr;gap:7%;align-items:center;padding-top:36px;padding-bottom:32px}.scene-column{min-width:0}.scene-top,.scene-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}.scene-top{margin-bottom:21px}.scene-counter{font-size:9px;letter-spacing:.16em;color:var(--muted)}.scene-frame{position:relative;aspect-ratio:3/2;width:100%;border:1px solid #d8d2c5;overflow:hidden;background:var(--paper)}#scene{display:block;width:100%;height:100%;color:var(--ink)}.scene-caption{position:absolute;bottom:13px;left:15px;font-size:7px;letter-spacing:.16em;background:rgb(255 252 245 / .85);padding:3px 7px;color:var(--ink)}.scene-bottom{font-size:8px;letter-spacing:.12em;margin-top:18px}.scene-bottom>span:last-child{color:var(--muted)}.scene-bottom>span:last-child span{margin-left:9px}.story-progress{height:1px;background:#d0c9ba;margin-top:21px}.story-progress>span{display:block;transform-origin:left;background:var(--ink);height:1px;transform:scaleX(0)}.story-copy{max-width:440px}.story-copy>.eyebrow{color:var(--accent);margin-bottom:22px}.story-copy h2{font-size:clamp(39px,4.3vw,64px);line-height:1.05}.story-copy>p:not(.eyebrow):not(.story-help){font-size:12px;color:var(--muted);line-height:1.95;margin-top:20px;max-width:370px}.architect-note{display:flex;gap:14px;margin-top:28px;border-top:1px solid #d8d0c1;padding-top:21px;min-height:147px}.note-cross{font-size:23px;font-weight:400;color:var(--accent);line-height:1;margin-top:2px}.architect-note .eyebrow{font-size:7px;letter-spacing:.16em;color:var(--muted)}.architect-note h3{font-size:24px;margin:9px 0 7px}.architect-note p:last-child{font-size:10px;line-height:1.9;color:var(--muted)}.story-tabs{display:flex;gap:20px;margin-top:24px;border-bottom:1px solid #d8d0c1}.story-tabs button{position:relative;border:0;border-bottom:1px solid transparent;margin:0 0 -1px;padding:0 0 11px;background:none;font-size:10px;color:var(--muted);min-width:40px;text-align:left}.story-tabs button span{display:block;font-size:7px;letter-spacing:.1em;margin-bottom:3px}.story-tabs button[aria-pressed=true]{border-color:var(--ink);color:var(--ink)}.story-tabs button:hover{color:var(--ink)}.story-help{display:flex;gap:15px;align-items:center;font-size:8px!important;color:var(--muted);margin-top:15px}.story-help span{font-size:14px}.wire-stroke{stroke-dasharray:1;stroke-dashoffset:1}.copy-change{animation:copy-change .45s both}
/* An image and a conversation, not a grid of boxes. */
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:55px}.section-heading .eyebrow{margin-bottom:23px}.section-heading>p{font-size:12px;line-height:1.9;color:var(--muted);padding-bottom:5px;max-width:325px}.service-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}.service-image{margin:0;position:relative;align-self:start}.service-image>img{width:100%;height:510px;object-fit:cover;transition:opacity .3s,filter .4s}.service-image.wire-mode>img{opacity:.12;filter:grayscale(1)}.service-blueprint{position:absolute;inset:0 0 36px;width:100%;height:calc(100% - 36px);color:var(--ink);background:var(--wash)}.service-image figcaption{display:flex;justify-content:space-between;gap:10px;font-size:7px;letter-spacing:.12em;margin-top:16px;color:var(--muted)}.service-list{border-top:1px solid var(--line)}.service-list details{border-bottom:1px solid var(--line)}.service-list summary{display:flex;align-items:center;gap:24px;list-style:none;padding:25px 0;cursor:pointer}.service-list summary::-webkit-details-marker{display:none}.service-number{font-size:9px;color:var(--accent);align-self:center}.service-list h3{font-size:33px;letter-spacing:-.02em}.service-plus{font-size:23px;font-weight:400;margin-left:auto;color:var(--muted);transition:transform .3s}.service-list details[open] .service-plus{transform:rotate(45deg)}.service-content{padding:0 25px 27px 40px;font-size:11px;line-height:1.95;color:var(--muted);animation:copy-change .35s both}.service-content ul{list-style:none;margin:17px 0 22px;padding:0;display:grid;grid-template-columns:1fr;gap:3px;font-size:10px}.service-content li:before{content:'—';margin-right:10px;color:var(--accent)}.service-content a{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:6px;max-width:240px}.service-content a span{font-size:19px}.service-content a:hover{border-color:var(--ink)}
/* The mark becomes an architectural object. */
.studio{background:var(--ink);color:var(--paper)}.studio-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%}.studio-symbol{position:relative;min-height:420px;display:grid;place-items:center;background:linear-gradient(90deg,transparent 49.9%,#ffffff0c 50%,transparent 50.1%),linear-gradient(transparent 49.9%,#ffffff0c 50%,transparent 50.1%);border:1px solid #ffffff1a}.studio-symbol:before,.studio-symbol:after{content:'+';position:absolute;color:#ffffff50;font-size:22px;font-weight:400}.studio-symbol:before{left:-7px;top:-21px}.studio-symbol:after{right:-7px;bottom:-20px}.studio-symbol>span{position:absolute;bottom:22px;left:25px;font-size:7px;letter-spacing:.18em;color:#c5b59d}.studio-copy>.eyebrow{color:#c5b59d;margin-bottom:25px}.studio-copy h2{font-size:clamp(43px,4.6vw,68px);margin-bottom:27px}.studio-copy>p:not(.eyebrow){font-size:12px;line-height:2;max-width:400px;color:#d4cbc0;margin-top:15px}.studio-copy .text-link{margin-top:29px;color:#f4ead9;border-color:#c0b19b;font-size:10px}
/* Every phase has something to say. */
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.process-step{position:relative;text-align:left;border:0;border-right:1px solid var(--line);background:none;padding:29px 25px 48px;min-height:222px;transition:background .35s}.process-step:first-child{border-left:1px solid var(--line)}.process-step>span:first-child{font-size:8px;letter-spacing:.14em;color:var(--muted)}.process-step h3{font-size:33px;margin-top:25px}.process-step.active,.process-step:hover{background:var(--wash)}.process-step.active:before{content:'';position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--accent)}.process-arrow{position:absolute;bottom:20px;right:25px;font-size:21px;color:var(--accent);transition:transform .3s}.process-step:hover .process-arrow{transform:translate(3px,-3px)}.process-description{display:grid;grid-template-columns:1fr 2.2fr;gap:50px;margin-top:28px;min-height:86px}.process-description .eyebrow{color:var(--accent);padding-top:4px}.process-description>p{max-width:680px;font-size:12px;line-height:2;color:var(--muted)}
/* A useful, honest enquiry. */
.contact{background:var(--wash);padding-bottom:45px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.contact-copy>.eyebrow{margin-bottom:30px;font-size:8px}.contact h2{font-size:clamp(62px,6.3vw,95px);margin-bottom:28px}.contact-copy>p:not(.eyebrow){font-size:13px;line-height:2;color:var(--muted)}.contact-mark{display:flex;align-items:center;gap:20px;margin-top:50px}.contact-mark span{font-size:8px;letter-spacing:.12em;line-height:1.9}.enquiry-form{min-width:0}.form-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:30px;margin-bottom:13px}.form-heading h3{font-size:28px}.form-heading>span{font-size:29px;font-weight:400}.field{margin-bottom:18px}.field label{display:block;font-size:8px;letter-spacing:.12em;margin-bottom:7px;font-weight:600}.field label>span{color:var(--accent)}.field label .optional{font-size:7px;color:var(--muted);font-weight:400}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:1px solid #bfb6a6;background:transparent;padding:10px 0 13px;font-size:12px;outline:none;border-radius:0;min-height:45px;transition:border-color .25s;line-height:1.6}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink);box-shadow:0 1px var(--ink)}.field input::placeholder,.field textarea::placeholder{color:#8d8579}.field textarea{resize:vertical;min-height:64px}.field select{cursor:pointer}.field select option{color:var(--ink);background:var(--paper)}.field [aria-invalid=true]{border-color:#a34131}.field-error{font-size:10px;color:#a34131;line-height:1.5;padding-top:4px}.field-error:empty{display:none}.form-error{font-size:11px;color:#a34131;margin-bottom:12px}.form-error:empty{display:none}.submit-button{display:flex;width:100%;align-items:center;justify-content:space-between;border:1px solid var(--ink);padding:17px 22px;background:var(--ink);color:var(--paper);font-size:11px;transition:background .3s}.submit-button>span:last-child{font-size:23px;line-height:1}.submit-button:hover{background:#6b5b4d}.submit-button:disabled{opacity:.6}.privacy-note{font-size:8px;line-height:1.8;color:var(--muted);margin-top:13px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-success{padding:50px 0 80px}.form-success h3{font-size:65px;margin:25px 0}.form-success>p{margin-top:12px}.form-success>.eyebrow{margin-top:25px}.success-icon{display:grid;place-items:center;width:60px;height:60px;border:1px solid var(--olive);border-radius:50%;font-size:26px;color:var(--olive)}.receipt{font-size:10px;color:var(--muted)}.form-success .text-link{margin-top:25px}.closing{margin-top:100px;padding-top:28px;border-top:1px solid #d3cbbc;display:flex;justify-content:space-between;align-items:center;gap:20px}.closing>span{font-size:8px;letter-spacing:.13em}.closing p{font:400 24px/1.5 'Cormorant Garamond',Georgia,serif}.closing>a{font-size:23px;padding:5px 10px}.noscript-message{position:fixed;bottom:38px;left:0;right:0;padding:14px;background:var(--paper);z-index:50;text-align:center;font-size:12px}
.js-ready .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s,transform .8s}.js-ready .reveal.visible{opacity:1;transform:none}
@keyframes entrance{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes draw-mark{to{stroke-dashoffset:0}}@keyframes mark-dot{from{transform:scale(0)}to{transform:scale(1)}}@keyframes mark-drift{50%{transform:translateY(-4px)}}@keyframes scroll-line{0%{transform:translateY(-20px)}80%,100%{transform:translateY(45px)}}@keyframes copy-change{from{opacity:.25;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes studio-drift{50%{transform:translateY(-9px) rotate(2deg)}}
@media(min-width:1700px){.header{padding-left:max(60px,calc((100vw - 1440px)/2));padding-right:max(60px,calc((100vw - 1440px)/2))}.hero{padding-top:calc(var(--header) + 80px)}.hero-visual{height:650px}.hero-bottom{padding-top:40px;padding-bottom:45px}}
@media(max-width:1100px){.section-width{width:calc(100% - 72px)}.header{padding:0 36px;gap:27px}.navigation{gap:24px}.hero{grid-template-columns:.9fr 1.1fr;column-gap:10px}.hero h1{font-size:11vw}.hero-visual{height:490px}.hero .eyebrow{font-size:8px}.hero-discipline{font-size:7px}.story-stage{gap:5%;grid-template-columns:1.2fr 1fr}.story-copy h2{font-size:46px}.architect-note{min-height:160px}.service-image>img{height:460px}.service-list h3{font-size:28px}.process-step{padding:23px 18px 45px}.process-step h3{font-size:29px}.footer{padding:0 25px;letter-spacing:.08em;font-size:7px}}
@media(max-width:800px){:root{--header:78px;--footer:36px}.section-width{width:calc(100% - 44px)}.section-space{padding-top:80px;padding-bottom:80px}.header{padding:0 22px;gap:20px}.brand,.brand img{width:112px}.navigation{gap:17px}.navigation a{font-size:10px}.header-cta{font-size:10px;padding:9px 12px;gap:14px}.hero{padding-top:calc(var(--header) + 43px)}.hero-copy{padding-right:5px}.hero h1{font-size:12.3vw}.hero .eyebrow{font-size:6px;letter-spacing:.14em}.hero-description{font-size:11px}.hero-visual{height:440px}.hero .text-link{font-size:9px;gap:10px}.brand-note{font-size:8px}.image-kicker{left:22px;right:22px;top:23px;font-size:6px}.hero-visual figcaption{left:22px;right:22px;bottom:24px;font-size:8px}.hero-visual figcaption small{font-size:8px}.image-coordinate{right:-16px;font-size:6px}.hero-bottom{gap:15px;padding-bottom:25px}.hero-discipline{display:none}.intro{padding-top:76px;padding-bottom:75px;gap:24px}.intro h2{font-size:43px}.intro-description{font-size:11px;line-height:1.9}.intro .eyebrow{margin-bottom:0}.story-stage{grid-template-columns:1.1fr 1fr;gap:5%}.story-copy h2{font-size:36px}.story-copy>.eyebrow{font-size:8px;margin-bottom:14px}.story-copy>p:not(.eyebrow):not(.story-help){font-size:10px;margin-top:15px}.architect-note{gap:10px;margin-top:18px;padding-top:16px;min-height:146px}.architect-note .eyebrow{font-size:6px}.architect-note h3{font-size:21px}.architect-note p:last-child{font-size:9px}.story-tabs{gap:13px;margin-top:17px}.story-tabs button{font-size:9px;min-width:28px}.scene-top .eyebrow{font-size:7px}.scene-counter,.scene-bottom{font-size:6px}.scene-caption{font-size:5px;bottom:8px;left:8px;padding:2px 4px}.section-heading h2{font-size:52px}.section-heading>p{font-size:10px}.service-layout{gap:6%}.service-image>img{height:410px}.service-list h3{font-size:26px}.service-list summary{gap:13px;padding:22px 0}.service-content{padding-left:24px;font-size:10px}.service-content ul{font-size:9px}.service-image figcaption{font-size:5px}.studio-grid{gap:8%}.studio-symbol{min-height:350px}.studio-copy h2{font-size:46px}.studio-copy>p:not(.eyebrow){font-size:10px}.studio-copy .text-link{font-size:9px;gap:14px}.process-step{padding:24px 15px 42px;min-height:198px}.process-step>span:first-child{font-size:6px}.process-step h3{font-size:26px}.process-description{gap:30px;grid-template-columns:1fr 2fr}.process-description .eyebrow{font-size:8px}.process-description>p{font-size:10px}.contact-grid{gap:8%}.contact-copy>.eyebrow{font-size:6px}.contact h2{font-size:59px}.contact-copy>p:not(.eyebrow){font-size:11px}.form-heading h3{font-size:25px}.field label{font-size:7px}.field input,.field select,.field textarea{font-size:11px}.closing{margin-top:65px}.closing p{font-size:20px}.footer-center{display:none}}
@media(max-width:600px){:root{--header:74px;--footer:36px}.section-width{width:calc(100% - 40px)}.header{padding:0 20px;gap:14px}.brand,.brand img{width:110px}.header-cta{margin-left:auto;font-size:9px;gap:12px;padding:9px 11px}.header-cta span{font-size:16px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;background:none;border:0;width:26px;height:40px;padding:3px}.menu-toggle span{display:block;width:20px;height:1px;background:var(--ink);transition:transform .3s}.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)}.navigation{position:absolute;top:var(--header);left:0;right:0;padding:20px;background:var(--paper);border-bottom:1px solid var(--line);display:none;flex-direction:column;gap:0}.navigation.open{display:flex}.navigation a{font-size:13px;padding:14px 0}.navigation a:after{display:none}.footer{padding:0 15px;font-size:6px;letter-spacing:.05em}.footer a{font-size:0;gap:0}.footer a span{font-size:18px}.hero{display:grid;grid-template-columns:1fr;padding-top:calc(var(--header) + 38px);gap:0;min-height:auto}.hero-copy{padding:0 0 30px}.hero .eyebrow{font-size:8px;letter-spacing:.15em;margin-bottom:23px}.hero h1{font-size:clamp(90px,23vw,128px);line-height:.85;letter-spacing:-.055em}.hero-description{font-size:12px;margin-top:24px}.hero .text-link{font-size:10px;margin-top:20px;gap:24px}.brand-note{position:absolute;right:3px;bottom:32px;margin:0;gap:9px}.brand-note span{display:none}.hero-visual{height:350px;margin-left:0;align-self:auto}.image-kicker{font-size:6px}.image-coordinate{display:none}.hero-visual figcaption{font-size:8px}.hero-bottom{padding:24px 0 33px;margin:0}.hero-bottom p{font-size:16px}.scroll-cue{font-size:7px;gap:10px}.scroll-line{height:27px}.intro{grid-template-columns:1fr;padding-top:65px;padding-bottom:65px;gap:0}.intro .eyebrow{font-size:8px;margin-bottom:23px}.intro h2{font-size:44px}.intro-description{font-size:12px;line-height:2;margin-top:24px;max-width:100%}.story{height:380vh}.story-stage{height:calc(100svh - var(--header));grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:0;padding-top:20px;padding-bottom:18px;align-items:start}.scene-column{width:100%}.scene-top{margin-bottom:10px}.scene-top .eyebrow{font-size:7px}.scene-counter{font-size:7px}.scene-frame{max-height:29svh;aspect-ratio:3/2}.scene-frame #scene{object-fit:contain}.scene-bottom{font-size:6px;margin-top:8px}.scene-caption{font-size:5px}.story-progress{margin-top:10px}.story-copy{padding-top:16px;max-width:none;align-self:center}.story-copy>.eyebrow{font-size:7px;margin-bottom:8px}.story-copy h2{font-size:38px}.story-copy h2 br{display:none}.story-copy>p:not(.eyebrow):not(.story-help){font-size:10px;line-height:1.8;margin-top:11px;max-width:none}.architect-note{margin-top:13px;padding-top:11px;min-height:0;gap:10px}.architect-note .eyebrow{font-size:5px;letter-spacing:.1em}.architect-note h3{font-size:20px;margin:5px 0}.architect-note p:last-child{font-size:8px;line-height:1.8}.note-cross{font-size:20px}.story-tabs{margin-top:13px;gap:0;justify-content:space-between}.story-tabs button{font-size:9px;padding-bottom:6px;min-width:55px}.story-tabs button span{font-size:6px;margin-bottom:0}.story-help{margin-top:8px;font-size:7px!important}.section-space{padding-top:72px;padding-bottom:72px}.section-heading{display:block;margin-bottom:32px}.section-heading h2{font-size:52px}.section-heading .eyebrow{font-size:8px;margin-bottom:22px}.section-heading>p{margin-top:24px;font-size:12px;max-width:none}.service-layout{grid-template-columns:1fr;gap:30px}.service-image>img{height:360px}.service-image figcaption{font-size:6px;margin-top:12px}.service-list h3{font-size:30px}.service-list summary{padding:23px 0;gap:20px}.service-number{font-size:9px}.service-content{padding-left:34px;font-size:12px}.service-content ul{font-size:10px}.service-content a{font-size:10px}.studio-grid{grid-template-columns:1fr;gap:55px}.studio-symbol{min-height:300px;width:100%}.studio-symbol>span{font-size:6px}.studio-copy h2{font-size:53px}.studio-copy>.eyebrow{font-size:8px}.studio-copy>p:not(.eyebrow){font-size:12px;max-width:none}.studio-copy .text-link{font-size:10px;gap:26px}.process-grid{grid-template-columns:1fr 1fr}.process-step{min-height:190px;padding:23px 20px 45px}.process-step:nth-child(3){border-left:1px solid var(--line)}.process-step:nth-child(n+3){border-top:1px solid var(--line)}.process-step>span:first-child{font-size:7px}.process-step h3{font-size:31px;margin-top:23px}.process-description{display:block;margin-top:24px;min-height:150px}.process-description>.eyebrow{font-size:8px;margin-bottom:11px}.process-description>p{font-size:12px}.contact-grid{grid-template-columns:1fr;gap:50px}.contact-copy>.eyebrow{font-size:7px;margin-bottom:24px}.contact h2{font-size:73px}.contact-copy>p:not(.eyebrow){font-size:12px}.contact-mark{display:none}.form-heading{padding-bottom:22px;margin-bottom:12px}.form-heading h3{font-size:29px}.field{margin-bottom:22px}.field label{font-size:8px}.field input,.field select,.field textarea{font-size:16px}.field input::placeholder,.field textarea::placeholder{font-size:12px}.field select{font-size:13px}.submit-button{font-size:12px;padding:17px 20px}.privacy-note{font-size:9px}.contact{padding-bottom:30px}.closing{margin-top:58px;align-items:start;flex-wrap:wrap;gap:14px}.closing>span{font-size:7px;flex-basis:calc(100% - 50px);order:0}.closing p{font-size:24px;order:2;flex-basis:100%}.closing>a{order:1;padding-top:0;line-height:1}.form-success h3{font-size:60px}}
@media(max-width:600px) and (max-height:740px){.story-stage{padding-top:12px;padding-bottom:10px}.scene-frame{max-height:24svh}.scene-bottom{margin-top:5px}.scene-top{margin-bottom:6px}.story-copy{padding-top:10px}.story-copy h2{font-size:32px}.story-copy>p:not(.eyebrow):not(.story-help){font-size:9px;margin-top:7px}.architect-note{margin-top:9px;padding-top:8px}.architect-note h3{font-size:18px}.architect-note p:last-child{font-size:8px}.story-help{display:none}.story-tabs{margin-top:9px}.story-tabs button{padding-bottom:4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.entrance,.js-ready .reveal{opacity:1;transform:none}.scroll-line:after{transform:none}}
@media(max-width:600px){.story-tabs button{min-height:44px}}
@media(min-width:601px) and (max-height:650px){.story-stage{padding-top:14px;padding-bottom:14px}.story-copy h2{font-size:36px}.story-copy>.eyebrow{margin-bottom:10px}.story-copy>p:not(.eyebrow):not(.story-help){font-size:10px;margin-top:10px}.architect-note{margin-top:14px;padding-top:14px;min-height:120px}.architect-note h3{font-size:21px}.architect-note p:last-child{font-size:9px}.story-tabs{margin-top:13px}.story-help{margin-top:8px}}
.process-step{min-width:0}.service-image.wire-mode>img{opacity:0}
@media(max-width:600px){.footer{font-size:7px}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.process-step{padding-left:15px;padding-right:12px}.process-step h3{font-size:28px}}
@media(max-width:360px){.header-cta{font-size:0;gap:10px}.header-cta:before{content:"Let’s talk";font-size:9px}.process-step h3{font-size:25px}.story-copy h2{font-size:30px}}
.desktop-break{display:block}
@media(max-width:600px){.desktop-break{display:none}}
@media(max-width:360px){.hero h1{font-size:25vw}}

/* The supplied brand artwork, preserved as a transparent image. */
.brand-note img{width:82px;height:auto;flex-shrink:0}
#animated-mark{animation:logo-reveal 1.5s .4s both,mark-drift 8s 3s ease-in-out infinite}
.studio-symbol img{width:min(75%,320px);height:auto;filter:brightness(0) invert(.87) sepia(.16);animation:studio-drift 12s ease-in-out infinite}
.contact-mark img{width:112px;height:auto;flex-shrink:0}
.hero-visual>img{object-position:50% 45%}
@keyframes logo-reveal{from{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0)}}
@media(max-width:800px){.studio-symbol img{width:min(78%,270px)}.brand-note img{width:70px}.contact-mark img{width:90px}}
@media(max-width:600px){.brand-note img{width:62px}.studio-symbol img{width:min(76%,270px)}.hero-visual>img{object-position:50% 45%}}

/* Direct studio contact, available throughout the page. */
.contact-details{display:grid;gap:16px;margin-top:28px;max-width:360px}
.contact-details>a{display:grid;gap:5px;padding-bottom:12px;border-bottom:1px solid #d3cbbc}
.contact-details .eyebrow{font-size:7px;color:var(--muted)}
.contact-details>a>span:last-child{display:flex;justify-content:space-between;gap:12px;font-size:13px}
.contact-details>a:hover>span:last-child{color:var(--accent)}
.footer-contact{display:flex;gap:17px;align-items:center;white-space:nowrap}
.footer .footer-contact-label{font-size:8px;letter-spacing:.1em}
.footer .footer-phone{font-size:10px;letter-spacing:.02em;gap:9px}
.footer .footer-phone>span{font-size:13px}
@media(max-width:1100px){.footer-center{display:none}.navigation{gap:20px}}
@media(max-width:800px){.contact-details>a>span:last-child{font-size:11px}.footer-contact{gap:12px}}
@media(max-width:600px){.footer{height:48px;flex-wrap:nowrap;gap:8px;padding:0 12px;align-items:center}.footer-copyright{max-width:125px;font-size:6px;line-height:1.7}.footer-contact{display:grid;gap:3px}.footer .footer-contact-label{font-size:6px;line-height:1.2}.footer .footer-phone{font-size:9px;line-height:1.2}.footer .footer-phone>span{font-size:10px}:root{--footer:48px}.contact-details{max-width:none;margin-top:25px}.contact-details>a>span:last-child{font-size:14px}.navigation{gap:0}}

@media(max-width:600px){.footer .footer-phone{font-size:11px;min-height:20px}.footer .footer-contact-label{font-size:7px}.footer-contact{gap:0}}

/* Geometry-based arrows keep the same appearance on every device. */
.icon{display:inline-block;width:18px;height:18px;vertical-align:middle;flex-shrink:0;overflow:visible}
.header-cta .icon{width:18px;height:18px}
.process-arrow .icon{width:21px;height:21px}
.contact-details .icon,.service-content .icon,.public-call .icon{width:17px;height:17px}
.submit-button .icon,.form-heading .icon{width:23px;height:23px}
.footer .icon{width:13px;height:13px}
.scene-bottom .icon{width:11px;height:11px}
.closing>a{display:grid;place-items:center;min-width:44px;min-height:44px;padding:0}
.closing>a .icon{width:24px;height:24px}
@media(max-width:600px){
  .closing{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;column-gap:12px;row-gap:14px}
  .closing>span{grid-column:1;grid-row:1;min-width:0;flex-basis:auto}
  .closing>a{grid-column:2;grid-row:1;justify-self:end;order:initial;width:44px;height:44px;padding:0}
  .closing p{grid-column:1 / -1;grid-row:2;order:initial;flex-basis:auto}
  .header-cta .icon{width:16px;height:16px}
  .footer .icon{width:11px;height:11px}
}

.form-success #email-draft-link{margin-top:24px;max-width:340px}.form-success #another-enquiry{display:flex}
