/* The complete Friday story: a single, connected homepage. */
.main-nav{gap:clamp(18px,2.7vw,42px)}
.main-nav>a{font-size:11px;white-space:nowrap}
.home-page section[id],.work-card[id],.home-team{scroll-margin-top:12px}
.home-service-points{list-style:none;margin:20px 0 0;padding:0;max-width:370px;font-size:13px;line-height:1.65}
.home-service-points li{position:relative;padding-left:16px;margin-top:7px}
.home-service-points li::before{content:'';position:absolute;width:5px;height:5px;border-radius:50%;background:currentColor;left:0;top:.65em;opacity:.65}
.home-page .service-copy{padding-top:48px;max-width:57%}
.home-page .service-copy h3{margin-bottom:22px}
.home-page .service-link{margin-top:22px}
.story-heading{text-align:center;position:relative;z-index:2;max-width:1020px;margin:0 auto 65px}
.story-heading .handwritten{display:block;margin-bottom:24px;transform:rotate(-3deg)}
.story-heading .eyebrow{margin-bottom:20px}
.story-heading h2{font-size:clamp(55px,6.7vw,98px);line-height:1.04;letter-spacing:-.032em}
.story-heading>p{max-width:660px;margin:28px auto 0;font-size:17px;line-height:1.75}
/* Project gallery: forest, pale paper, and compact picture captions. */
.work-section{--yellow:#b8caba;background:linear-gradient(180deg,#000800 0%,#0b2f27 230px,#103b32 100%);color:var(--cream);padding:68px 0 100px;position:relative;isolation:isolate}
.work-section>.wrap{width:calc(100% - 32px);max-width:1120px;position:relative}
.work-contours{position:absolute;top:0;right:0;width:min(100%,800px);height:500px;color:#a9c6b5;opacity:.12;pointer-events:none;z-index:-1}
.work-section .story-heading{margin-bottom:36px}
.work-section .story-heading h2{font-size:clamp(64px,14vw,98px);line-height:1;letter-spacing:-.04em;font-weight:400}
.work-section .story-heading h2 span{color:#b8caba}
.work-gallery{display:grid;grid-template-columns:minmax(0,1fr);gap:30px;max-width:520px;margin-inline:auto;align-items:start}
.work-item{position:relative;min-width:0;scroll-margin-top:110px;background:#eef1e9;color:var(--ink);border-radius:26px;overflow:hidden}
.work-item:nth-child(even){background:#d9e4d7}
.work-item::after{display:none}
.work-picture{position:relative;overflow:hidden;aspect-ratio:1.8;background:#c3d0c1}
.work-picture>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.6,.3,1)}
.work-open{position:absolute;right:15px;bottom:15px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#f6f6ed;color:var(--green);transform:rotate(-35deg);transition:transform .35s,background .35s}
.work-open .icon{width:21px;height:21px}
.work-item figcaption{position:static;color:inherit;text-shadow:none;letter-spacing:normal;padding:21px 23px 25px}
.work-item h3{font:400 31px/1.05 var(--serif);letter-spacing:-.025em;margin-bottom:10px;text-wrap:balance}
.work-item h3 a{text-decoration:none}
.work-item h3 a::after{content:'';position:absolute;inset:0;z-index:3;border-radius:26px}
.work-item h3 a:focus-visible{outline:none}
.work-item:focus-within{outline:3px solid #cadac7;outline-offset:5px}
.work-caption-title{font:400 12px/1.65 var(--body);color:#466152;max-width:38ch}
.work-note{max-width:680px;margin:38px auto 0;text-align:center;font:400 11px/1.85 var(--body);color:#c0cec4;padding-inline:8px}
.work-note strong{font-weight:500;color:#e1e8df}
@media(hover:hover) and (pointer:fine){.work-item:hover .work-picture>img{transform:scale(1.045)}.work-item:hover .work-open{transform:rotate(0);background:#d9e4d7}}
@media(min-width:700px){.work-section{padding:90px 0 125px}.work-section>.wrap{width:calc(100% - 64px)}.work-section .story-heading{margin-bottom:60px}.work-gallery{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;gap:44px 34px}.work-item:nth-child(even){top:76px}.work-item{border-radius:30px}.work-item h3 a::after{border-radius:30px}.work-item h3{font-size:clamp(32px,3vw,44px)}.work-item figcaption{padding:26px 30px 30px}.work-note{margin-top:118px}.work-picture{aspect-ratio:1.6}}
@media(min-width:1100px){.work-gallery{gap:48px 64px}.work-section .story-heading h2{font-size:108px}.work-caption-title{font-size:13px}.work-note{font-size:12px}}
/* Low, irregular terrain edges connect the pale band to the landscapes. */
.home-page .logo-band{position:relative;z-index:2}
.home-page .logo-band::before,.home-page .logo-band::after,.home-page .work-section::before{content:'';position:absolute;left:0;width:100%;height:20px;background:var(--cream);pointer-events:none;clip-path:polygon(0 60%,3% 57%,6% 64%,10% 46%,13% 48%,16% 31%,19% 36%,22% 20%,25% 24%,28% 14%,31% 23%,34% 18%,38% 38%,41% 34%,45% 46%,48% 41%,52% 62%,55% 57%,59% 73%,62% 60%,65% 67%,68% 49%,71% 53%,74% 41%,78% 46%,81% 39%,85% 57%,88% 50%,91% 65%,94% 59%,97% 70%,100% 61%,100% 100%,0 100%)}
.home-page .logo-band::before,.home-page .work-section::before{top:-19px}
.home-page .logo-band::after{bottom:-19px;transform:rotate(180deg)}
.home-page .work-section::before{display:none}
/* A photographic route through the three steps of working together. */
.working-together{--yellow:#426747;background:var(--cream);color:var(--ink);padding:76px 0 72px;position:relative;isolation:isolate}
.working-together::before{content:'';position:absolute;left:0;right:0;top:-28px;height:29px;background:var(--cream);clip-path:polygon(0 60%,8% 74%,17% 46%,24% 52%,33% 26%,42% 34%,51% 15%,62% 41%,70% 33%,80% 61%,88% 49%,100% 70%,100% 100%,0 100%)}
.working-together>.wrap{width:calc(100% - 32px);max-width:1120px}
.working-together .story-heading{margin-bottom:45px;max-width:700px}
.working-together .story-heading h2{font:400 clamp(53px,13.5vw,80px)/.99 var(--serif);letter-spacing:-.035em}
.working-together .story-heading h2 em{font-style:normal;color:#54745c}
.working-together .story-heading>p{color:#526657;font-size:14px;line-height:1.7;margin-top:23px}
.collaboration-steps{display:grid;grid-template-columns:minmax(0,1fr);gap:72px;list-style:none;padding:0;margin:0 auto;max-width:520px}
.collaboration-step{min-width:0;position:relative}
.collaboration-step:not(:last-child)::after{content:'';position:absolute;bottom:-66px;left:22px;width:80px;height:56px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 56'%3E%3Cpath d='M2 0C2 32 66 20 66 56' fill='none' stroke='%2395ac95' stroke-width='1.5' stroke-linecap='round' stroke-dasharray='3 6'/%3E%3C/svg%3E") center/100% 100% no-repeat;pointer-events:none}
.collaboration-step figure{position:relative}
.collaboration-step figure::after{display:none}
.collaboration-step figure>img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;border-radius:80px 24px 24px 24px;background:#d2ddce}
.collaboration-step:nth-child(1) figure>img{object-position:45% 55%}
.collaboration-step:nth-child(2) figure>img{border-radius:24px 80px 24px 24px;object-position:center 55%}
.collaboration-step:nth-child(3) figure>img{border-radius:80px 80px 24px 24px}
.collaboration-step figcaption{position:static;display:flex;align-items:flex-start;gap:16px;padding:23px 5px 0;color:var(--ink);letter-spacing:normal;text-shadow:none}
.collaboration-number{flex-shrink:0;display:grid;place-items:center;width:39px;height:39px;border:1px solid #8ca48c;border-radius:50%;font:500 11px/1 var(--body);color:#426747;margin-top:2px;background:var(--cream)}
.collaboration-step h3{font:400 34px/1.05 var(--serif);letter-spacing:-.02em;margin-bottom:10px}
.collaboration-step p{font-size:13px;line-height:1.8;color:#526657;max-width:36ch}
.collaboration-finish{display:flex;align-items:center;justify-content:center;gap:25px;max-width:680px;margin:68px auto 0;padding-top:30px}
.collaboration-finish>p{font:400 clamp(28px,6vw,40px)/1.1 var(--serif);letter-spacing:-.02em}
.collaboration-cta{display:flex;flex-direction:column;gap:9px;align-items:center;justify-content:center;flex-shrink:0;width:112px;height:112px;border-radius:50%;background:var(--green);color:var(--cream);font:500 13px/1.2 var(--body);text-decoration:none;transition:background .25s,transform .25s}
.collaboration-cta .icon{width:23px;height:23px;transform:rotate(-35deg)}
.collaboration-cta:hover{background:#426747;transform:rotate(-6deg)}
.working-together :focus-visible{outline:3px solid #426747;outline-offset:5px}
.work-item.is-entering,.collaboration-step.is-entering{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.6,.3,1)}
.work-item.is-visible,.collaboration-step.is-visible{opacity:1;transform:none}
@media(min-width:700px){.working-together{padding:105px 0 90px}.working-together>.wrap{width:calc(100% - 64px)}.working-together .story-heading{margin-bottom:70px}.working-together .story-heading h2{font-size:86px}.working-together .story-heading>p{font-size:16px}.collaboration-steps{max-width:940px;gap:70px}.collaboration-step{width:65%}.collaboration-step:nth-child(2){justify-self:end}.collaboration-step figure>img{aspect-ratio:1.65;border-top-left-radius:120px}.collaboration-step:nth-child(2) figure>img{border-top-left-radius:26px;border-top-right-radius:120px}.collaboration-step:nth-child(3) figure>img{border-top-right-radius:120px}.collaboration-step:not(:last-child)::after{left:72%;bottom:-96px;width:150px;height:125px;transform:rotate(-30deg);z-index:-1}.collaboration-step:nth-child(2)::after{left:-14%;transform:scaleX(-1) rotate(-30deg)}.collaboration-step figcaption{gap:22px;padding-top:28px}.collaboration-step h3{font-size:45px}.collaboration-step p{font-size:15px;max-width:40ch}.collaboration-number{width:47px;height:47px}.collaboration-finish{margin-top:65px;gap:60px}.collaboration-cta{width:136px;height:136px;font-size:15px}}
@media(min-width:1100px){.working-together>.wrap{display:grid;grid-template-columns:310px minmax(0,1fr);column-gap:65px;align-items:start}.working-together .story-heading{position:sticky;top:155px;text-align:left;margin:80px 0 0}.working-together .story-heading h2{font-size:73px}.working-together .story-heading>p{margin-left:0}.collaboration-steps{width:100%;gap:80px}.collaboration-step{width:85%}.collaboration-step h3{font-size:42px}.collaboration-finish{grid-column:2;margin-top:60px;gap:38px;width:100%}.collaboration-finish>p{font-size:35px}.collaboration-step:not(:last-child)::after{left:70%;width:130px}.collaboration-step:nth-child(2)::after{left:0}}
@media(prefers-reduced-motion:reduce){.work-item.is-entering,.collaboration-step.is-entering{opacity:1;transform:none;transition:none}.collaboration-cta,.work-picture>img,.work-open{transition:none}.working-together .story-heading{position:static}}
@media print{.work-item.is-entering,.collaboration-step.is-entering{opacity:1;transform:none}.work-item,.collaboration-step{break-inside:avoid}.work-note,.work-note strong{color:var(--ink)}.work-contours,.collaboration-step::after{display:none}.working-together .story-heading{position:static}.work-item:nth-child(even){top:0}}
/* Real landscape, a company introduction, and small empty portrait circles. */
.who-section{position:relative;isolation:isolate;padding:130px 0 120px;background:#082e27;overflow:hidden}
.who-scenery{position:absolute;left:0;right:0;top:0;height:1150px;z-index:-1;overflow:hidden}
.who-background{width:100%;height:110%;object-fit:cover;object-position:center 50%;opacity:.7}
.who-shade{position:absolute;inset:0;background:linear-gradient(180deg,#082e27b3 0%,#082e2780 30%,#082e27cf 58%,#082e27 94%)}
.who-content{position:relative}
.who-section .story-heading{margin-bottom:35px}
.who-section .story-heading h2{font-size:clamp(66px,7.5vw,112px)}
.who-section .story-heading .handwritten{color:#f1c92c}
.who-story{max-width:730px;margin:0 auto;text-align:center}
.who-story>p{font-size:17px;line-height:1.9;color:#eef0e9}
.who-story>p+p{margin-top:18px}
.who-facts{display:flex;justify-content:center;gap:60px;margin-top:36px}
.who-facts>span{font-size:10px;letter-spacing:.6px;text-transform:uppercase;line-height:1.7;color:#cbd8ce}
.who-facts strong{display:block;color:#fff;font-size:15px;text-transform:none;letter-spacing:0;margin-top:5px;font-weight:500}
.home-team{margin:80px auto 0}
.team-caption{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding-bottom:40px}
.team-caption .handwritten{font-size:31px;transform:rotate(-3deg);color:#efc53c}
.team-caption>span:last-child{font-size:11px;color:#cbd8ce}
.team-profiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:25px;padding:0 0 65px;border-bottom:1px solid #f5f3e92e}
.team-person{text-align:center;padding:0 6px}
.portrait-space{display:block;width:94px;height:94px;aspect-ratio:1;border-radius:50%;margin:0 auto 24px;background:#bdcdb7;border:1px solid #e3ebdc;box-shadow:0 0 0 7px #ffffff07}
.team-person:nth-child(2) .portrait-space{background:#c9c9ac}
.team-person:nth-child(3) .portrait-space{background:#b8c7b6}
.team-person:nth-child(4) .portrait-space{background:#d6cfb5}
.team-person:nth-child(5) .portrait-space{background:#b5c5b3}
.team-person h3{font-size:clamp(24px,2.1vw,32px);line-height:1.15;letter-spacing:-.025em;margin-bottom:9px}
.team-person p{font-size:11px;line-height:1.65;color:#cbd8ce;max-width:180px;margin:auto}
.who-values{padding-top:90px}
.values-intro{display:flex;gap:30px;align-items:center;justify-content:space-between;margin-bottom:40px}
.values-intro .eyebrow{margin:0}
.values-intro h3{font-size:40px;max-width:550px;text-align:right}
.value-bands{display:grid;gap:12px}
.value-band{display:grid;grid-template-columns:34px 1fr 1fr;align-items:center;gap:35px;background:#28564a;border-radius:18px;padding:30px 35px;min-height:116px;color:var(--cream)}
.value-band:nth-child(2){background:#a9c0a9;color:var(--ink)}
.value-band:nth-child(3){background:#e5d7a7;color:var(--ink)}
.value-band:nth-child(4){background:#51705a;color:#fff}
.value-count{font-size:11px;align-self:start;padding-top:10px}
.value-band h4{font:700 39px/1.1 var(--serif);letter-spacing:-.02em;margin:0}
.value-band p{font-size:14px;line-height:1.7;max-width:340px}
.home-contact{background:#e3e9db;color:var(--ink);padding-bottom:0}
.home-contact .handwritten{color:#51744b}
.home-contact .eyebrow{color:#365e3e}
.home-contact .contact-layout{padding-bottom:110px}
.home-contact .enquiry-panel{background:var(--green);color:var(--cream);border:1px solid #173c3220}
.home-contact .enquiry-panel .eyebrow{color:var(--yellow)}
.home-contact .enquiry-panel h2{font-size:45px}
.home-contact .story-heading{margin-bottom:75px}
.work-section :focus-visible,.home-contact :focus-visible{outline-color:var(--ink)}
@media(min-width:1600px){.work-card h3{font-size:47px}.team-person h3{font-size:31px}}
@media(min-width:992px) and (max-width:1199px){.nav-shell{gap:20px;padding-left:25px}.main-nav{gap:19px}.main-nav>a{font-size:9px}.brand-name{font-size:20px}.nav-contact{padding-inline:17px;font-size:11px}.work-card-copy{padding-inline:28px}.journey-board{padding-inline:5px}.journey-step{padding:29px 24px}.journey-steps{gap:18px}.team-profiles{gap:13px}.team-person h3{font-size:24px}.home-page .service-copy{padding-top:35px}.home-page .service-copy h3{font-size:56px}.home-service-points{font-size:12px}}
@media(max-width:991px){
.main-nav{gap:0}.main-nav>a{font-size:16px;white-space:normal}
.home-page .service-copy{max-width:72%;padding-top:36px}.home-page .service-copy h3{font-size:56px}.home-service-points{font-size:13px;max-width:350px}
.story-heading{margin-bottom:45px}.story-heading h2{font-size:66px}.story-heading>p{font-size:16px}.story-heading .handwritten{font-size:30px}
.who-section{padding:85px 0 90px}.who-section .story-heading h2{font-size:76px}.who-story{max-width:660px}.who-story>p{font-size:16px}.team-profiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 22px}.team-person h3{font-size:29px}.team-person p{font-size:12px}.team-caption{padding-bottom:40px}.team-caption>span:last-child{font-size:10px}.portrait-space{width:88px;height:88px}.who-values{padding-top:65px}.values-intro h3{font-size:35px}.value-band{grid-template-columns:24px .9fr 1fr;padding:26px;gap:20px}.value-band h4{font-size:33px}.value-band p{font-size:12px}.home-contact .contact-layout{padding-bottom:80px}.home-contact .enquiry-panel h2{font-size:44px}
}
@media(max-width:599px){
.home-page section[id],.work-card[id],.home-team{scroll-margin-top:0}
.home-page .service-card,.home-page .service-card-link{height:670px;min-height:670px}.home-page .service-copy{max-width:100%;padding:30px 26px 0}.home-page .service-copy h3{font-size:48px;margin-bottom:18px}.home-page .service-card.sage h3{font-size:clamp(34px,10.7vw,48px)}.home-service-points{font-size:12px;max-width:265px;margin-top:17px}.home-service-points li{margin-top:6px}.home-page .service-link{margin-top:18px}.home-page .card-landscape{bottom:-15%;opacity:.8}.home-page .card-landscape.project-support{bottom:-2%}.home-page .card-landscape.environment{bottom:-10%}.home-page .card-number{top:57%;font-size:150px}
.story-heading{margin-bottom:35px}.story-heading .handwritten{font-size:25px;line-height:1.4;margin-bottom:20px}.story-heading .eyebrow{font-size:9px;letter-spacing:1.25px;margin-bottom:15px}.story-heading h2{font-size:clamp(40px,11.8vw,64px);line-height:1.07}.story-heading>p{font-size:14px;margin-top:22px}
.who-section{padding:75px 0 80px}.who-scenery{height:880px}.who-background{object-position:54% center}.who-shade{background:linear-gradient(180deg,#082e27aa,#082e27bc 45%,#082e27 92%)}.who-section .story-heading h2{font-size:clamp(49px,13vw,76px)}.who-section .story-heading{margin-bottom:28px}.who-story>p{font-size:14px;line-height:1.85}.who-facts{gap:40px;margin-top:28px}.who-facts>span{font-size:9px;letter-spacing:.4px}.who-facts strong{font-size:13px}.home-team{margin-top:60px}.team-caption{flex-direction:column;align-items:center;gap:17px;padding-bottom:38px;text-align:center}.team-caption .handwritten{font-size:26px}.team-caption>span:last-child{font-size:10px}.team-profiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:37px 15px;padding-bottom:50px}.portrait-space{width:72px;height:72px;margin-bottom:20px;box-shadow:0 0 0 5px #ffffff07}.team-person{padding:0}.team-person h3{font-size:26px;line-height:1.08;max-width:165px;margin:0 auto 9px}.team-person p{font-size:10px;max-width:150px}.team-person:last-child{grid-column:1/-1;max-width:200px;justify-self:center;width:100%}.who-values{padding-top:50px}.values-intro{display:block;margin-bottom:30px}.values-intro .eyebrow{margin-bottom:17px}.values-intro h3{font-size:37px;text-align:left}.value-bands{gap:10px}.value-band{grid-template-columns:18px 1fr;gap:10px 17px;padding:24px 23px;border-radius:17px;min-height:0}.value-count{font-size:10px;padding-top:7px}.value-band h4{font-size:34px}.value-band p{grid-column:2;font-size:12px;line-height:1.6}
.home-contact .story-heading{margin-bottom:40px}.home-contact .enquiry-panel h2{font-size:39px}.home-contact .contact-layout{padding-bottom:70px}.home-contact .story-heading h2{font-size:clamp(43px,12.8vw,65px)}
}
@media(max-width:359px){.home-page .service-copy{padding:27px 22px 0}.home-page .service-copy h3{font-size:43px}.home-service-points{font-size:11px;max-width:245px}.home-page .service-card,.home-page .service-card-link{height:650px;min-height:650px}.work-card-copy{padding:22px 21px}.work-card h3{font-size:31px}.journey-step{padding:26px 22px}.journey-step h3{font-size:33px}.team-person h3{font-size:24px}.value-band h4{font-size:31px}.who-facts{gap:26px}}
@media(prefers-reduced-motion:reduce){.work-visual>img{transition:none}.work-card,.journey-step,.value-band,.who-background{transform:none!important;opacity:1!important}.route-art{transform:none!important}}
@media print{.who-scenery,.route-art,.journey-symbol{display:none}.work-section,.working-together,.who-section,.home-contact{background:white;color:black;padding:25px 0}.work-card,.journey-step,.value-band{transform:none!important;opacity:1!important;break-inside:avoid}.work-card:nth-child(even){margin-top:0}.work-card h3{font-size:23pt}.story-heading h2{font-size:34pt}.portrait-space{border:1px solid #777}.work-gallery{gap:20px}.team-profiles{grid-template-columns:repeat(5,1fr)}.team-person h3{font-size:18pt}.who-story>p,.team-person p{color:black}}
