@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url('assets/manrope-400.ttf') format('truetype')}
@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url('assets/manrope-500.ttf') format('truetype')}
@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url('assets/manrope-600.ttf') format('truetype')}
:root{--forest:#2D5440;--leaf:#568954;--paper:#F7F4EE;--ink:#173A2A;--muted:#53685A;--line:#D5D9CF;--mist:#E6EBDF;--gutter:clamp(24px,3.333vw,64px);--section:clamp(64px,7.78vw,144px);color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--paper);color:var(--forest);font-family:Manrope,Arial,Helvetica,sans-serif;line-height:1.5}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block}h1,h2,h3,p{margin:0}h1,h2{font-weight:600;letter-spacing:-.04em}h3{font-weight:400;letter-spacing:-.03em}p{font-size:1.375rem;line-height:1.5}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--leaf);outline-offset:6px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;left:24px;z-index:200;padding:12px 20px;background:var(--paper);transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{height:94px;position:absolute;z-index:30;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:24px var(--gutter);color:var(--forest);transition:color .25s,background .25s}.site-header.on-scene{position:fixed;background:rgba(23,58,42,.35);color:var(--paper);backdrop-filter:blur(12px)}.site-header.on-scene .logo img,.dark .logo img{filter:brightness(0) invert(1)}.logo{display:block;width:238px;height:39px;flex:none}.desktop-nav{display:flex;align-items:center;gap:clamp(32px,5vw,72px);font-size:15px;font-weight:600}.desktop-nav a{padding:10px 0;border-bottom:1px solid transparent}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{border-color:currentColor}.menu-toggle{display:none;background:none;border:0;font-size:15px;padding:12px 0;min-height:44px}.mobile-menu{position:fixed;inset:0;z-index:25;background:var(--forest);color:var(--paper);padding:150px var(--gutter) 48px}.mobile-menu[hidden]{display:none}.mobile-menu nav{display:flex;flex-direction:column;gap:24px}.mobile-menu a{font-size:clamp(36px,6vw,64px);font-weight:600;letter-spacing:-.04em}.menu-open{overflow:hidden}.menu-open .site-header{position:fixed;color:var(--paper)}.menu-open .logo img{filter:brightness(0) invert(1)}
.section{padding:var(--section) var(--gutter)}.page-start{padding-top:calc(94px + var(--section))}.display{font-size:clamp(54px,7.778vw,128px);line-height:1.04;max-width:1300px}.headline{font-size:clamp(46px,6.111vw,100px);line-height:1.068;max-width:1344px}.subhead{font-size:clamp(44px,3.889vw,64px);line-height:1.11;font-weight:400;letter-spacing:-.03em}.eyebrow,.small{font-size:14px;line-height:1.5}.intro{max-width:830px;margin-top:48px}.body-copy{max-width:920px}.stack{display:flex;flex-direction:column;gap:32px}.section>h2+.two-columns,.section>h2+.stack{margin-top:56px}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:clamp(64px,7.8vw,120px)}.two-columns p{max-width:590px}.operations{display:grid;gap:28px}.operations h3{font-size:32px;line-height:1.22;margin-bottom:20px}.operations p{font-size:18px;line-height:1.55}.button{display:inline-flex;align-items:center;justify-content:center;min-height:56px;min-width:224px;padding:16px 24px;background:var(--forest);color:var(--paper);border:1px solid var(--forest);font-size:15px;font-weight:600;line-height:1.45;transition:background .2s,color .2s;align-self:flex-start}.button:hover{background:var(--ink)}.button.outline{background:transparent;color:var(--forest)}.button.outline:hover{background:var(--forest);color:var(--paper)}.dark{background:var(--forest);color:var(--paper)}.dark .button{background:var(--paper);color:var(--forest);border-color:var(--paper)}.dark .button:hover{background:var(--mist)}.dark .button.outline{background:transparent;color:var(--paper)}.dark .button.outline:hover{background:var(--paper);color:var(--forest)}
.hero-scroll{height:240svh;position:relative}.hero-stage{height:100svh;min-height:720px;position:sticky;top:0;overflow:hidden;background:var(--paper)}.hero-photo{position:absolute;inset:0;mask-image:url('assets/mark.svg');mask-repeat:no-repeat;mask-size:calc(53vw - var(--gutter)) calc((53vw - var(--gutter))*.6667);mask-position:47vw 20svh;-webkit-mask-image:url('assets/mark.svg');-webkit-mask-repeat:no-repeat;-webkit-mask-size:calc(53vw - var(--gutter)) calc((53vw - var(--gutter))*.6667);-webkit-mask-position:47vw 20svh;will-change:mask-size,mask-position}.hero-photo img{width:100vw;height:66.667vw;object-fit:cover;position:absolute;top:0;left:0;transform-origin:0 0;transform:translate(47vw,20svh) scale(.495);will-change:transform}.hero-shade{position:absolute;inset:0;background:var(--ink);opacity:0;pointer-events:none;will-change:opacity}.hero-editorial{position:absolute;left:var(--gutter);top:calc(94px + 60px);width:calc(47vw - var(--gutter) - clamp(48px,5.56vw,100px));max-width:none;display:flex;flex-direction:column;align-items:flex-start;gap:32px;will-change:transform,opacity}.hero-editorial h1{font-size:clamp(34px,4.75vw,88px);line-height:1.048;letter-spacing:-.04em;white-space:normal;overflow-wrap:normal}.hero-editorial p{max-width:480px}.hero-editorial .button{min-width:270px}.hero-ending{position:absolute;left:var(--gutter);right:var(--gutter);bottom:100px;color:var(--paper);opacity:0;transform:translateY(80px);will-change:transform,opacity}.hero-ending h2{font-size:clamp(60px,7.778vw,128px);line-height:1.04}.hero-caption{position:absolute;left:var(--gutter);bottom:28px;font-size:14px;line-height:1.5;z-index:2}.interior-scroll{height:135svh;position:relative}.interior-stage{height:100svh;min-height:760px;position:sticky;top:0;overflow:hidden;background:var(--forest);color:var(--paper)}.interior-image{position:absolute;inset:-8% 0;width:100%;height:116%;object-fit:cover;transform:scale(1.12);will-change:transform}.interior-stage:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,58,42,.4),rgba(23,58,42,.6));pointer-events:none}.interior-headline{position:absolute;z-index:1;left:var(--gutter);right:var(--gutter);bottom:118px;font-size:clamp(54px,7.778vw,128px);line-height:1.035;letter-spacing:-.04em;will-change:transform}.interior-caption{position:absolute;left:var(--gutter);right:var(--gutter);bottom:30px;z-index:1;font-size:14px;line-height:1.5}.page-header{display:flex;flex-direction:column;gap:48px}.page-header .intro{margin:0}.project-cycle .steps{margin-top:56px;display:grid;gap:40px}.step{display:grid;grid-template-columns:500fr 812fr;gap:32px}.step h3{font-size:32px;line-height:1.22}.step p{font-size:22px;line-height:1.5}.case-draft{margin-top:56px;max-width:980px;font-size:14px;line-height:1.5}.case-actions{display:flex;gap:24px;flex-wrap:wrap;margin-top:48px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:112px;margin-top:64px}.contact-form{display:flex;flex-direction:column;gap:24px}.field{display:flex;flex-direction:column;gap:12px;border:1px solid var(--line);padding:18px 24px}.field label{font-size:15px;font-weight:600}.field input,.field select,.field textarea{background:none;border:0;width:100%;font-size:18px;line-height:1.55;border-radius:0;outline-offset:4px;min-height:32px}.field textarea{min-height:130px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:var(--muted);opacity:1}.contact-form .button{width:100%}.prototype-note{font-size:14px;line-height:1.5}.enquiry-output{background:var(--mist);padding:24px;display:flex;flex-direction:column;gap:20px}.enquiry-output[hidden]{display:none}.enquiry-output h2{font-size:32px;line-height:1.15}.enquiry-output textarea{width:100%;min-height:220px;background:var(--paper);border:1px solid var(--line);padding:16px;resize:vertical;font-size:16px}.contact-aside{display:flex;flex-direction:column;gap:48px}.contact-aside .subhead{max-width:600px}.contact-aside p{font-size:18px;max-width:540px}.curtains{position:fixed;inset:0;pointer-events:none;z-index:100;display:flex;overflow:hidden;visibility:hidden}.curtains i{width:40%;height:130%;flex:none;background:var(--forest);transform:translateY(-130%) skewX(-24deg);margin-left:-7%}.curtains i:nth-child(2){background:var(--leaf)}.curtains i:nth-child(3){width:55%}.curtains.active{visibility:visible}.curtains.active i{animation:curtain .75s cubic-bezier(.65,0,.2,1) both}.curtains.active i:nth-child(2){animation-delay:.055s}.curtains.active i:nth-child(3){animation-delay:.11s}@keyframes curtain{0%{transform:translateY(-130%) skewX(-24deg)}42%,58%{transform:translateY(-10%) skewX(-24deg)}100%{transform:translateY(130%) skewX(-24deg)}}
@media(min-width:1800px){.hero-editorial{max-width:none}.hero-editorial p{max-width:600px}}
@media(max-width:900px){.desktop-nav{gap:24px}.site-header{height:86px}.hero-editorial{top:140px}.hero-editorial h1{font-size:4.75vw}.hero-editorial p{font-size:18px}.two-columns{gap:48px}.contact-grid{gap:48px}}
@media(max-width:700px){:root{--gutter:24px;--section:64px}.site-header{height:80px;padding-top:20px;padding-bottom:20px}.desktop-nav{display:none}.menu-toggle{display:block}.logo{width:238px}.hero-scroll{height:200svh}.hero-stage{min-height:820px}.hero-editorial{top:112px;width:calc(100% - 48px);max-width:none;gap:28px}.hero-editorial h1{font-size:clamp(42px,13.333vw,68px);line-height:1.077;white-space:normal}.hero-editorial p{font-size:22px;line-height:1.5;max-width:450px}.hero-editorial .button{width:100%;min-width:0;max-width:450px}.hero-photo{mask-size:calc(100vw - 48px) calc((100vw - 48px)*.6667);mask-position:24px 58svh;-webkit-mask-size:calc(100vw - 48px) calc((100vw - 48px)*.6667);-webkit-mask-position:24px 58svh}.hero-photo img{transform:translate(24px,58svh) scale(.877)}.hero-ending{bottom:112px}.hero-ending h2{font-size:54px;line-height:1.07}.hero-caption{bottom:24px;max-width:calc(100% - 48px)}.display{font-size:54px;line-height:1.075}.headline{font-size:46px;line-height:1.087}.subhead{font-size:46px;line-height:1.12}.intro{margin-top:32px}.two-columns{grid-template-columns:1fr;gap:40px}.section>h2+.two-columns,.section>h2+.stack{margin-top:32px}.interior-scroll{height:115svh}.interior-stage{min-height:760px}.interior-headline{font-size:54px;line-height:1.075;bottom:128px}.interior-caption{bottom:24px;max-width:342px}.button{min-width:0;width:100%;max-width:450px}.page-start{padding-top:144px}.page-header{gap:32px}.step{grid-template-columns:1fr;gap:16px}.project-cycle .steps{gap:40px;margin-top:32px}.contact-grid{grid-template-columns:1fr;gap:64px;margin-top:48px}.contact-aside{gap:32px}.field{padding:18px 20px}.case-draft{margin-top:32px}.case-actions{gap:16px;margin-top:32px}.project-copy .button{max-width:none}}
@media(max-width:360px){.logo{width:185px;height:31px}.logo img{transform:scale(.777);transform-origin:0 0}.hero-editorial h1{font-size:42px}.hero-editorial p{font-size:19px}.display{font-size:46px}.headline{font-size:40px}.subhead{font-size:40px}.hero-ending h2{font-size:46px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hero-scroll,.interior-scroll{height:auto}.hero-stage,.interior-stage{position:relative}.hero-editorial,.hero-photo img,.interior-image,.interior-headline{will-change:auto}.hero-ending{display:none}.curtains{display:none}}
.site-footer{padding:100px var(--gutter) 32px}.footer-content{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.6fr) minmax(0,.85fr) minmax(0,.8fr);gap:clamp(32px,4vw,80px);padding-bottom:100px}
.footer-label{font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--mist);margin-bottom:36px}
.footer-contact-link{display:block;font-size:clamp(38px,4.2vw,72px);font-weight:500;line-height:1.12;letter-spacing:-.04em;margin-bottom:32px}
.footer-contact>p:not(.footer-label){font-size:20px;line-height:1.5}.footer-contact>.small{margin-top:24px;font-size:14px!important}
.footer-nav,.footer-projects,.footer-company{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.footer-nav .footer-label,.footer-projects .footer-label,.footer-company .footer-label{margin-bottom:16px}
.footer-nav a,.footer-projects a{font-size:16px;line-height:1.5;padding:4px 0}.footer-nav a:hover,.footer-projects a:hover,.footer-contact-link:hover{text-decoration:underline;text-underline-offset:6px}
.footer-projects a span{display:block;font-size:14px;color:var(--mist)}.footer-company p:not(.footer-label){font-size:16px;line-height:1.6}.footer-company .small{font-size:14px!important}
.footer-wordmark{display:block;border-top:1px solid rgba(247,244,238,.25);padding-top:56px}.footer-wordmark img{width:100%;height:auto;filter:brightness(0) invert(1)}
.footer-bottom{display:flex;justify-content:space-between;gap:24px;margin-top:36px}.footer-bottom p{font-size:14px;line-height:1.5}
@media(max-width:1100px){.footer-content{grid-template-columns:1fr 1fr;gap:56px}.footer-contact-link{font-size:56px}}
@media(max-width:700px){.site-footer{padding:64px 24px 24px}.footer-content{grid-template-columns:1fr;gap:48px;padding-bottom:64px}.footer-contact-link{font-size:54px}.footer-label{margin-bottom:24px}.footer-wordmark{padding-top:32px}.footer-bottom{flex-direction:column;gap:12px;margin-top:24px}}
/* Editorial direction: clean photographs, project records and compact founder identity. */
.eyebrow{font-weight:500;letter-spacing:.04em;text-transform:uppercase;font-size:14px}
.hero-editorial .eyebrow{font-size:14px;max-width:none}.hero-editorial>p:not(.eyebrow){font-size:20px;line-height:1.5}
.hero-editorial{gap:24px}.hero-editorial h1{font-size:clamp(34px,4.65vw,84px);line-height:1.04}
.hero-ending h2{font-size:clamp(56px,7.3vw,116px)}
.section-heading h2,.founder-editorial h2,.enquiry-intro h2,.case-contact h2{font-size:clamp(36px,4.25vw,68px);line-height:1.12;letter-spacing:-.035em;font-weight:500}
.section-heading .eyebrow{margin-bottom:24px}.text-link{font-size:16px;line-height:1.5;display:inline-block;width:fit-content;border-bottom:1px solid currentColor;padding:8px 0 6px;transition:opacity .2s}.text-link:hover{opacity:.6}
.approach,.participation,.biography,.company-overview{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(48px,8vw,128px)}
.approach-body{min-width:0}.lead-copy{font-size:clamp(22px,2.25vw,34px);line-height:1.4;letter-spacing:-.02em}.operations{margin-top:56px;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.operations h3{font-size:26px;line-height:1.2;margin:18px 0}.operations p{font-size:16px;line-height:1.6}.operations .eyebrow{font-size:12px}
.interior-kicker{position:absolute;top:40px;left:var(--gutter);z-index:1}.interior-headline{font-size:clamp(54px,7.3vw,116px)}
.project-section-top{display:flex;align-items:end;justify-content:space-between;gap:32px}.project-section-top .eyebrow{margin-bottom:24px}.project-section-top .display{font-size:clamp(48px,7.2vw,116px)}
.project-gallery{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);margin-top:64px;align-items:start}.project-card:nth-child(2){margin-top:180px}.project-photo-link{display:block;min-width:0}.project-photo{margin:0;background:none;position:relative;min-width:0}.project-image{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:filter .3s}.project-photo-link:hover .project-image{filter:brightness(.93)}.project-photo figcaption{position:static;padding-top:12px;color:var(--muted);font-size:12px;line-height:1.5}.project-card-meta{display:flex;justify-content:space-between;gap:16px;margin-top:24px}.project-card h3{font-size:clamp(28px,2.6vw,42px);line-height:1.15;font-weight:500;margin:16px 0}.project-card>p{font-size:18px;line-height:1.5;max-width:540px}.project-card .text-link{margin-top:16px}
.project-list{display:grid;gap:88px;margin-top:48px;width:100%}.project-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:center}.project-copy{display:flex;flex-direction:column;align-items:start;gap:24px;min-width:0}.project-copy h3{font-size:clamp(32px,3.7vw,60px);line-height:1.12;font-weight:500}.project-copy .scope{font-size:18px}.project-status{display:block;margin-top:8px;color:var(--muted)}
.founder-identity{margin:0;width:240px;justify-self:start}.founder-photo{display:block;width:240px;height:300px;min-height:0;object-fit:cover;object-position:50% 30%}.founder-identity figcaption{display:flex;flex-direction:column;gap:5px;margin-top:20px;font-size:14px;line-height:1.5}.founder-identity figcaption strong{font-size:16px;font-weight:500}.founder-editorial{padding:0;display:flex;flex-direction:column;align-items:start;gap:24px;max-width:760px}.founder-editorial p:not(.eyebrow){font-size:20px;max-width:700px}.founder-editorial .text-link{margin-top:8px}
.participation{padding-top:72px;padding-bottom:72px;border-bottom:1px solid var(--line)}.participation-body{display:flex;flex-direction:column;align-items:start;gap:24px}.participation-body>p:first-child{font-size:22px;max-width:650px}.terms-list{width:100%;margin:8px 0}.terms-list>div{position:relative;padding:18px 0 18px 46px;border-top:1px solid var(--line)}.terms-list>div>span{position:absolute;left:0;top:20px;font-size:14px;color:var(--muted)}.terms-list h3{font-size:20px;font-weight:500;margin-bottom:6px;letter-spacing:0}.terms-list p{font-size:16px;line-height:1.5}
.home-enquiry{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(48px,8vw,128px);background:var(--mist)}.enquiry-intro{display:flex;flex-direction:column;align-items:start;gap:28px}.enquiry-intro>p:not(.eyebrow):not(.small){font-size:20px;max-width:460px}.enquiry-intro .small{line-height:1.8}.contact-form{min-width:0;gap:24px}.form-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.field{padding:0 0 16px;border:none;border-bottom:1px solid var(--muted);gap:10px}.field label{font-size:14px;font-weight:500}.field input,.field select,.field textarea{font-size:16px;min-height:44px}.field textarea{min-height:110px}.field select{max-width:100%;width:100%;white-space:normal}.contact-form .button{margin-top:8px}.enquiry-output{background:var(--paper);width:100%;min-width:0}.enquiry-output h2{font-size:28px}.enquiry-output textarea{font-size:16px;max-width:100%}
.about-intro{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:80px;align-items:center}.about-intro .eyebrow{margin-bottom:24px}.about-intro .display{font-size:clamp(48px,7.2vw,112px)}.about-intro .intro{font-size:24px;line-height:1.5}.biography,.company-overview{border-top:1px solid var(--line)}.biography p,.company-overview p{font-size:20px}.project-cycle{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(48px,8vw,128px)}.project-cycle .steps{margin-top:0;gap:28px}.step{grid-template-columns:1fr;gap:8px;border-top:1px solid rgba(247,244,238,.3);padding-top:24px}.step h3{font-size:20px;font-weight:500;letter-spacing:0}.step p{font-size:18px}.contact-aside h3{font-size:24px;font-weight:500;margin-bottom:12px}.contact-aside p{font-size:18px}.case-header>.eyebrow{margin-bottom:24px}.case-photo{margin-top:48px}.case-photo .project-image{aspect-ratio:16/9;max-height:820px}.case-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;border-top:1px solid var(--line);padding-top:28px;margin-top:32px}.case-facts dt{font-size:14px;color:var(--muted);margin-bottom:8px}.case-facts dd{font-size:20px;margin:0}.case-draft{margin-top:32px}.case-contact{padding-top:64px;padding-bottom:64px;border-top:1px solid var(--line)}.case-actions{margin-top:32px}
@media(max-width:1100px){.operations{grid-template-columns:1fr;gap:24px}.operations>div{border-top:1px solid var(--line);padding-top:20px}.operations h3{margin:12px 0}.project-card:nth-child(2){margin-top:110px}.about-intro{gap:48px}.about-intro .display{font-size:7vw}}
@media(max-width:700px){.hero-editorial{gap:20px;top:112px}.hero-editorial h1{font-size:clamp(36px,11.1vw,68px);line-height:1.08}.hero-editorial>p:not(.eyebrow){font-size:18px;max-width:450px}.hero-editorial .eyebrow{font-size:12px;line-height:1.5}.hero-ending h2{font-size:48px;line-height:1.1}.hero-stage{min-height:900px}.section-heading h2,.founder-editorial h2,.enquiry-intro h2,.case-contact h2{font-size:36px;line-height:1.15}.approach,.participation,.biography,.company-overview,.project-cycle,.home-enquiry{grid-template-columns:1fr;gap:32px}.operations{margin-top:32px}.lead-copy{font-size:24px}.project-section-top{display:block}.project-section-top .display{font-size:48px}.project-section-top>.text-link{margin-top:24px}.project-gallery{grid-template-columns:1fr;gap:48px;margin-top:40px}.project-card:nth-child(2){margin-top:0}.project-card-meta{margin-top:20px;gap:12px}.project-card-meta .eyebrow{font-size:12px}.project-card h3{font-size:30px}.project-card>p{font-size:16px}.project-list{gap:56px;margin-top:8px}.project-row{grid-template-columns:1fr;gap:24px}.project-copy{gap:16px}.project-copy h3{font-size:32px}.project-copy .scope{font-size:16px}.project-status{display:inline;margin-left:12px}.project-image{aspect-ratio:3/2}.project-photo figcaption{font-size:12px;padding-top:10px}.founder-identity{width:160px}.founder-photo{width:160px;height:200px}.founder-identity figcaption{margin-top:14px;font-size:12px}.founder-identity figcaption strong{font-size:14px}.founder-editorial p:not(.eyebrow){font-size:18px}.participation{padding-top:48px;padding-bottom:48px}.participation-body>p:first-child{font-size:20px}.terms-list>div{padding-left:36px}.terms-list h3{font-size:18px}.about-intro{grid-template-columns:1fr;gap:40px}.about-intro .display{font-size:48px;overflow-wrap:normal}.about-intro .intro{font-size:20px;margin-top:24px}.biography p,.company-overview p{font-size:18px}.form-pair{grid-template-columns:1fr;gap:24px}.contact-grid{margin-top:40px}.case-photo{margin-top:32px}.case-photo .project-image{aspect-ratio:4/3}.case-facts{grid-template-columns:1fr;gap:20px}.case-facts dd{font-size:18px}.case-contact{padding-top:48px;padding-bottom:48px}.interior-headline{font-size:48px}.interior-stage{min-height:600px}.interior-kicker{top:24px}.hero-caption{font-size:12px;max-width:calc(100% - 48px)}.enquiry-output h2{font-size:24px}}
@media(min-width:701px) and (max-width:820px){.hero-editorial h1{font-size:4.5vw}.hero-editorial>p:not(.eyebrow){font-size:16px}.hero-editorial .button{min-width:0;width:100%}.hero-editorial .eyebrow{font-size:12px}.home-enquiry{gap:40px}.form-pair{grid-template-columns:1fr}}
@media(max-width:360px){.hero-editorial h1{font-size:36px}.about-intro .display{font-size:40px}.project-card-meta{flex-direction:column;gap:4px}}
@media(prefers-reduced-motion:reduce){.project-image{transition:none}.hero-stage{height:auto;min-height:720px}.hero-editorial{position:relative;left:auto;top:auto;padding:150px var(--gutter) 48px;width:47%;}.hero-photo{position:relative;height:450px;mask-image:none!important;-webkit-mask-image:none!important;margin:0 var(--gutter) 32px}.hero-photo img{position:static;width:100%;height:100%;object-fit:cover;transform:none!important}.hero-editorial{width:100%;max-width:900px}.hero-stage{display:flex;flex-direction:column}.hero-photo{order:2}.hero-caption{position:static;padding:0 var(--gutter) 32px;order:3}.hero-shade{display:none}}

/* Full-screen photographic scenes move together, with readable pauses. */
.journey-scroll{position:relative;background:var(--forest);color:var(--paper)}
.journey-stage{position:relative;width:100%}.journey-viewport{width:100%;overflow:hidden}.journey-track{width:100%;display:block}
.journey-slide{position:relative;isolation:isolate;display:flex;align-items:end;width:100%;height:100vh;height:100dvh;min-height:480px;padding:clamp(24px,4vw,72px) var(--gutter) 88px;overflow:hidden}
.journey-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.journey-slide:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(15,32,23,.25) 0%,rgba(15,32,23,.12) 35%,rgba(15,32,23,.78) 100%)}
.journey-eyebrow{position:absolute;top:36px;left:var(--gutter);font-size:14px;line-height:1.5}
.journey-content{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:clamp(40px,6vw,100px);align-items:end;width:100%;max-width:1840px}
.journey-content h2{font-size:clamp(48px,7.2vw,120px);font-weight:500;line-height:1.04;letter-spacing:-.04em}
.journey-content>p{font-size:clamp(18px,1.4vw,24px);line-height:1.5;max-width:480px;padding-bottom:8px}
.journey-controls{display:none;position:absolute;bottom:22px;right:var(--gutter);z-index:5;gap:10px}
.journey-controls button{width:48px;height:44px;padding:0;background:transparent;color:var(--paper);font-size:14px;border:0;border-bottom:1px solid rgba(247,244,238,.45);border-radius:0;transition:background .2s}
.journey-controls button:hover{background:rgba(247,244,238,.15)}.journey-controls button.is-active{background:var(--paper);color:var(--forest);border-color:var(--paper)}.journey-controls button:focus-visible{outline:2px solid var(--paper);outline-offset:3px}
.journey-progress{display:none;position:absolute;left:0;right:0;bottom:0;height:2px;z-index:5;background:rgba(247,244,238,.3)}.journey-progress span{display:block;width:100%;height:100%;background:var(--paper);transform-origin:0 50%;transform:scaleX(0)}
/* Follow Safari's visible viewport as its browser bars open and close. */
.journey-scroll.is-horizontal .journey-stage{position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden;padding:0}
.journey-scroll.is-horizontal .journey-viewport{height:100%;padding:0}
.journey-scroll.is-horizontal .journey-track{display:flex;height:100%;gap:0;will-change:transform}
.journey-scroll.is-horizontal .journey-slide{flex:0 0 100%;width:100%;height:100%;min-height:0;margin:0}
.journey-scroll.is-horizontal .journey-controls{display:flex}.journey-scroll.is-horizontal .journey-progress{display:block}
@media(max-width:1000px){.journey-content{grid-template-columns:1fr;gap:24px}.journey-content h2{font-size:clamp(48px,7vw,72px)}.journey-content>p{max-width:600px;font-size:18px;padding-bottom:0}}
@media(max-width:700px){.journey-slide{padding:24px 24px 92px}.journey-eyebrow{top:24px;left:24px;font-size:12px}.journey-content{gap:20px}.journey-content h2{font-size:clamp(38px,11vw,64px);line-height:1.08}.journey-content>p{font-size:16px;line-height:1.5;max-width:460px}.journey-controls{left:24px;right:auto;bottom:22px;gap:8px}.journey-controls button{width:44px}}
@media(max-height:600px) and (min-width:701px){.journey-slide{padding-bottom:80px}.journey-eyebrow{top:24px}.journey-content{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px}.journey-content h2{font-size:clamp(38px,5.5vw,72px)}.journey-content>p{font-size:16px;line-height:1.45}}
@media(prefers-reduced-motion:reduce){.journey-scroll.is-horizontal{height:auto!important}.journey-scroll.is-horizontal .journey-stage{height:auto;position:relative}.journey-scroll.is-horizontal .journey-track{transform:none!important;display:block}.journey-scroll.is-horizontal .journey-slide{height:100vh;height:100dvh;min-height:480px}.journey-controls,.journey-progress{display:none!important}}

/* Full-width founder statement, followed by a portrait and signature. */
.founder-scene{display:flex;flex-direction:column;align-items:flex-start;gap:28px;padding-top:56px;padding-bottom:56px}
.founder-pill{display:inline-block;padding:8px 22px;border:1px solid rgba(247,244,238,.7);border-radius:999px;font-size:18px;font-weight:400;line-height:1.35;letter-spacing:0}
.founder-message{display:flex;flex-direction:column;gap:24px;width:100%}
.founder-message p{font-size:clamp(26px,2.55vw,42px);font-weight:400;line-height:1.4;letter-spacing:-.025em}
.founder-signature{display:flex;align-items:center;justify-content:space-between;gap:32px;width:100%;margin-top:8px}
.founder-scene .founder-identity{display:flex;align-items:center;gap:24px;width:auto;min-width:0}
.founder-scene .founder-photo{width:176px;height:176px;flex:none;border-radius:50%;object-fit:cover;object-position:center}
.founder-scene .founder-identity figcaption{margin-top:0;font-size:14px;line-height:1.5}
.founder-scene .founder-identity figcaption strong{font-size:20px;font-weight:500}
.founder-signature .text-link{flex:none}
@media(max-width:700px){.founder-scene{gap:24px;padding-top:40px;padding-bottom:40px}.founder-pill{font-size:16px;padding:7px 18px}.founder-message{gap:20px}.founder-message p{font-size:clamp(22px,5.64vw,28px);line-height:1.45}.founder-signature{flex-direction:column;align-items:flex-start;gap:24px;margin-top:4px}.founder-scene .founder-identity{gap:18px}.founder-scene .founder-photo{width:112px;height:112px}.founder-scene .founder-identity figcaption{font-size:12px}.founder-scene .founder-identity figcaption strong{font-size:17px}}
@media(max-width:360px){.founder-scene .founder-identity{gap:14px}.founder-scene .founder-identity figcaption strong{font-size:16px}}
