.corporate-page{background:#fff}.corporate-main{padding-top:var(--header)}
.page-hero{position:relative;height:calc(100svh - var(--header));min-height:640px;overflow:hidden;background:#202020;color:#fff}.page-hero>img{filter:brightness(.62);transition:transform 1.4s cubic-bezier(.2,.65,.25,1)}.page-hero-copy{position:absolute;right:var(--gutter);bottom:clamp(38px,6vw,85px);left:var(--gutter)}.page-hero-copy .eyebrow{color:rgba(255,255,255,.7)}.page-hero h1{max-width:1200px;margin:0;font-size:clamp(78px,12vw,190px);line-height:.78;letter-spacing:-.075em;text-transform:uppercase;font-weight:300}.page-hero-note{position:absolute;right:var(--gutter);bottom:clamp(42px,5vw,72px);max-width:310px;margin:0;font-size:11px;line-height:1.65;text-transform:uppercase}
.page-title-panel{min-height:72svh;padding:clamp(140px,14vw,230px) var(--gutter) clamp(80px,9vw,145px);display:flex;flex-direction:column;justify-content:flex-end;border-bottom:1px solid var(--line)}.page-title-panel h1{max-width:1300px;margin:0;font-size:clamp(75px,13vw,210px);line-height:.78;letter-spacing:-.075em;text-transform:uppercase;font-weight:300}.page-title-panel .page-deck{display:grid;grid-template-columns:5fr 7fr;gap:8vw;margin-top:clamp(70px,9vw,140px)}.page-title-panel .page-deck p{max-width:690px;margin:0;font-size:clamp(17px,1.7vw,28px);line-height:1.48;letter-spacing:-.025em}.page-title-panel .page-deck p:last-child{max-width:400px;justify-self:end;color:var(--muted);font-size:11px;line-height:1.7;text-transform:uppercase;letter-spacing:.03em}
.editorial-intro{min-height:72svh;padding:clamp(100px,12vw,190px) max(var(--gutter),11vw);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.editorial-intro h2{max-width:1120px;margin:0;font-size:clamp(28px,3vw,50px);line-height:1.35;letter-spacing:-.04em;font-weight:300}.editorial-intro .line-link{margin-top:52px}
.story-split{display:grid;grid-template-columns:1fr 1fr;min-height:84svh;background:var(--soft)}.story-split.reverse .story-image{order:2}.story-image{min-height:650px;margin:0;overflow:hidden}.story-image img{filter:saturate(.65)}.story-copy{align-self:center;padding:clamp(70px,9vw,145px)}.story-copy .eyebrow{margin-bottom:38px}.story-copy h2{max-width:620px;margin:0;font-size:clamp(38px,4vw,66px);line-height:1.04;letter-spacing:-.05em;font-weight:300}.story-copy p{max-width:560px;margin:44px 0 0;font-size:clamp(17px,1.55vw,25px);line-height:1.55;letter-spacing:-.02em}
.principles{padding:clamp(100px,12vw,190px) var(--gutter)}.principles-header{display:grid;grid-template-columns:5fr 7fr;gap:8vw;margin-bottom:clamp(70px,9vw,140px)}.principles-header h2{margin:0;font-size:clamp(42px,5vw,82px);line-height:.96;letter-spacing:-.06em;font-weight:300}.principles-header p{max-width:620px;margin:0;font-size:clamp(17px,1.55vw,25px);line-height:1.55}.principle-list{border-top:1px solid var(--line)}.principle-row{display:grid;grid-template-columns:1fr 4fr 5fr;gap:30px;padding:38px 0;border-bottom:1px solid var(--line)}.principle-row>span{color:var(--muted);font-size:10px}.principle-row h3{margin:0;font-size:clamp(22px,2vw,32px);font-weight:400;letter-spacing:-.035em}.principle-row p{max-width:650px;margin:0;color:#444;font-size:15px;line-height:1.65}
.trust-visual{position:relative;height:68svh;min-height:560px;overflow:hidden;color:#fff}.trust-visual>img{filter:grayscale(1) brightness(.5)}.trust-values{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr);align-items:center}.trust-values div{text-align:center}.trust-values strong{display:block;font-size:clamp(58px,6vw,100px);font-weight:300;line-height:1;letter-spacing:-.07em}.trust-values span{display:block;margin-top:16px;font-size:10px;text-transform:uppercase}
.trust-message{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:clamp(42px,5vw,80px) var(--gutter)}.trust-message p{margin:0 0 24px;font-size:9px;text-transform:uppercase;letter-spacing:.16em}.trust-message h2{max-width:920px;margin:0;font-size:clamp(54px,7vw,112px);line-height:.86;letter-spacing:-.07em;text-transform:uppercase;font-weight:300}.trust-message span{max-width:560px;margin-top:30px;font-size:clamp(13px,1.15vw,18px);line-height:1.5}
.process-index{padding:clamp(100px,12vw,190px) var(--gutter)}.process-index h2{max-width:900px;margin:0 0 clamp(80px,10vw,150px);font-size:clamp(50px,7vw,112px);line-height:.9;letter-spacing:-.065em;text-transform:uppercase;font-weight:300}.process-index ol{list-style:none;padding:0;margin:0;border-top:1px solid var(--line);counter-reset:steps}.process-index li{counter-increment:steps;display:grid;grid-template-columns:1fr 4fr 5fr;gap:30px;padding:34px 0;border-bottom:1px solid var(--line)}.process-index li:before{content:counter(steps,decimal-leading-zero);color:var(--muted);font-size:10px}.process-index h3{margin:0;font-size:clamp(22px,2vw,32px);font-weight:400}.process-index p{max-width:650px;margin:0;color:#444;font-size:15px;line-height:1.65}
.responsibility-hero>img{filter:brightness(.72) saturate(.55)}.commitment-banner{padding:clamp(110px,14vw,220px) max(var(--gutter),11vw);background:#102018;color:#fff;text-align:center}.commitment-banner h2{max-width:1100px;margin:0 auto;font-size:clamp(32px,4vw,66px);line-height:1.25;letter-spacing:-.045em;font-weight:300}.commitment-banner p{max-width:660px;margin:48px auto 0;color:rgba(255,255,255,.72);font-size:15px;line-height:1.7}
.disclosure{display:grid;grid-template-columns:5fr 7fr;gap:8vw;padding:clamp(100px,12vw,190px) var(--gutter);background:var(--soft)}.disclosure h2{margin:0;font-size:clamp(42px,5vw,80px);line-height:1;letter-spacing:-.055em;font-weight:300}.disclosure div{max-width:680px}.disclosure p{margin:0 0 24px;font-size:clamp(17px,1.5vw,24px);line-height:1.55}.disclosure small{display:block;margin-top:45px;color:var(--muted);font-size:10px;line-height:1.7;text-transform:uppercase}
.contact-hero{min-height:68svh;padding:clamp(150px,15vw,240px) var(--gutter) clamp(90px,10vw,160px);display:flex;flex-direction:column;justify-content:flex-end;border-bottom:1px solid var(--line)}.contact-hero h1{margin:0;font-size:clamp(75px,14vw,225px);line-height:.76;letter-spacing:-.075em;text-transform:uppercase;font-weight:300}.contact-hero p{max-width:720px;margin:clamp(70px,8vw,130px) 0 0;font-size:clamp(18px,1.8vw,29px);line-height:1.45;letter-spacing:-.03em}.contact-grid{display:grid;grid-template-columns:5fr 7fr;gap:8vw;padding:clamp(100px,12vw,180px) var(--gutter)}.contact-aside h2{margin:0;font-size:clamp(38px,4.4vw,72px);line-height:1;letter-spacing:-.055em;font-weight:300}.contact-aside p{max-width:390px;margin:38px 0 0;color:var(--muted);font-size:14px;line-height:1.7}.brief-list{border-top:1px solid var(--line)}.brief-list div{display:grid;grid-template-columns:60px 1fr;gap:20px;padding:25px 0;border-bottom:1px solid var(--line)}.brief-list span{color:var(--muted);font-size:10px}.brief-list p{margin:0;font-size:clamp(18px,1.8vw,28px)}.contact-direct{padding:clamp(100px,12vw,190px) var(--gutter);background:#111;color:#fff;text-align:center}.contact-direct p{margin:0 0 35px;font-size:10px;text-transform:uppercase}.contact-direct h2{max-width:1150px;margin:0 auto;font-size:clamp(55px,9vw,145px);line-height:.86;letter-spacing:-.07em;text-transform:uppercase;font-weight:300}
.page-next{padding:clamp(100px,12vw,180px) var(--gutter);text-align:center}.page-next p{margin:0 0 30px;color:var(--muted);font-size:10px;text-transform:uppercase}.page-next a{font-size:clamp(42px,6vw,95px);line-height:1;letter-spacing:-.06em;font-weight:300}.page-next a:after{content:" →";display:inline-block;transition:transform .25s}.page-next a:hover:after{transform:translateX(8px)}
@media(max-width:900px){.page-hero h1{font-size:clamp(70px,17vw,125px)}.page-hero-note{display:none}.page-title-panel .page-deck,.principles-header,.disclosure,.contact-grid{grid-template-columns:1fr}.page-title-panel .page-deck p:last-child{justify-self:start}.story-split{grid-template-columns:1fr}.story-split.reverse .story-image{order:0}.story-image{min-height:65svh}.story-copy{padding:90px 22px}.principle-row,.process-index li{grid-template-columns:50px 1fr}.principle-row p,.process-index p{grid-column:2}.trust-values{grid-template-columns:1fr;grid-template-rows:repeat(3,1fr);padding:35px 0}.contact-aside{margin-bottom:50px}}
@media(max-width:600px){.page-hero{height:calc(100svh - var(--header));min-height:620px}.page-hero h1{font-size:clamp(64px,20vw,92px);line-height:.8}.page-title-panel{min-height:68svh;padding-top:140px}.page-title-panel h1{font-size:clamp(64px,21vw,98px);line-height:.8}.page-title-panel .page-deck{margin-top:70px}.page-title-panel .page-deck p{font-size:18px}.editorial-intro{min-height:70svh;padding-right:22px;padding-left:22px}.editorial-intro h2{font-size:27px}.story-image{min-height:60svh}.story-copy h2{font-size:42px}.story-copy p{font-size:18px}.principles,.process-index{padding-right:22px;padding-left:22px}.principles-header h2{font-size:52px}.principle-row,.process-index li{grid-template-columns:38px 1fr;gap:16px}.principle-row p,.process-index p{font-size:14px}.trust-visual{height:calc(100svh - var(--header));min-height:650px}.trust-values strong{font-size:60px}.process-index h2{font-size:58px}.disclosure,.contact-grid{padding-right:22px;padding-left:22px}.disclosure h2{font-size:48px}.contact-hero{min-height:70svh;padding-top:150px}.contact-hero h1{font-size:clamp(65px,21vw,95px)}.contact-hero p{font-size:19px}.contact-aside h2{font-size:46px}.contact-direct h2{font-size:clamp(55px,16vw,76px)}.page-next a{font-size:48px}}
@media(max-width:600px){.trust-message{padding:42px 22px}.trust-message p{margin-bottom:18px}.trust-message h2{font-size:clamp(48px,15vw,64px);line-height:.9}.trust-message span{max-width:310px;margin-top:22px;font-size:14px}}

/* Our approach — chapter-led editorial page */
.approach-main{overflow:clip}.approach-subnav{position:sticky;z-index:30;top:var(--header);height:56px;display:grid;grid-template-columns:25% 1fr;align-items:center;background:#fff;border-bottom:1px solid rgba(17,17,17,.35)}.approach-subnav a{height:56px;display:flex;align-items:center;font-size:11px;white-space:nowrap}.approach-label{padding-left:16px}.approach-subnav>div{height:100%;display:flex;align-items:center;justify-content:center;gap:0}.approach-subnav>div a{position:relative;padding:0 18px;color:#616161}.approach-subnav>div a:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:1px;background:#111;transform:scaleX(0);transition:transform .25s}.approach-subnav>div a[aria-current="true"]{color:#111}.approach-subnav>div a[aria-current="true"]:after{transform:scaleX(1)}
.approach-hero{position:relative;height:calc(100vh - var(--header) - 56px);min-height:610px;scroll-margin-top:calc(var(--header) + 56px);overflow:hidden;display:flex;align-items:center;justify-content:center;padding:18px var(--gutter) 24px;background:#e9e8e4;color:#171717}.approach-hero::before{content:"";position:absolute;inset:0;opacity:.24;background-image:radial-gradient(rgba(23,23,23,.18) .55px,transparent .55px);background-size:5px 5px;pointer-events:none}.approach-board{position:relative;width:min(76vw,820px);height:calc(100% - 44px);max-height:548px}.approach-board>*{position:absolute;opacity:0;box-shadow:0 12px 28px rgba(30,28,24,.12);transform:translateY(20px) scale(.985) rotate(var(--turn,0deg));will-change:transform,opacity}.approach-board-sheet{left:18%;top:2%;width:35%;height:57%;padding:26px 20px 15px;background:#f8f7f2;color:#252525;--turn:-1.8deg;animation:approach-pin-sketch 12s cubic-bezier(.2,.75,.25,1) infinite both}.approach-board-sketch svg{display:block;width:100%;height:calc(100% - 22px)}.approach-board-sketch p{display:flex;justify-content:space-between;gap:12px;margin:4px 0 0;font-size:7px;line-height:1;text-transform:uppercase;letter-spacing:.12em}.approach-board-sketch p span{color:#777}.approach-board-clip{position:absolute;top:-7px;left:50%;width:25px;height:15px;margin-left:-12px;border-radius:1px 1px 3px 3px;background:#2b2b2b;box-shadow:inset 0 -2px 0 rgba(255,255,255,.18)}.approach-board-clip::before,.approach-board-clip::after{content:"";position:absolute;top:-9px;width:7px;height:12px;border:1px solid #4a4a4a;border-bottom:0;border-radius:5px 5px 0 0}.approach-board-clip::before{left:3px}.approach-board-clip::after{right:3px}.approach-board-photo{z-index:2;right:19%;top:7%;width:25%;height:49%;margin:0;padding:8px 8px 25px;background:#f7f5ee;--turn:2.4deg;animation:approach-pin-photo 12s cubic-bezier(.2,.75,.25,1) infinite both}.approach-board-photo img{width:100%;height:100%;object-fit:cover;object-position:center 28%;filter:saturate(.5) contrast(.96)}.approach-board-note{z-index:3;left:24%;bottom:8%;width:23%;min-height:27%;padding:20px 20px;background:#d8d1c4;--turn:1.4deg;animation:approach-pin-note 12s cubic-bezier(.2,.75,.25,1) infinite both}.approach-board-note span,.approach-board-spec span{display:block;font-size:7px;line-height:1;text-transform:uppercase;letter-spacing:.13em}.approach-board-note p{margin:18px 0 0;font-family:"Cormorant Garamond",Georgia,serif;font-size:18px;font-style:italic;line-height:1.08}.approach-board-spec{z-index:2;left:46%;bottom:4%;width:21%;min-height:32%;padding:18px 16px;background:#f5f4ef;--turn:-2deg;animation:approach-pin-spec 12s cubic-bezier(.2,.75,.25,1) infinite both}.approach-board-spec i{display:block;height:1px;margin-top:15px;background:#c4c1ba}.approach-board-spec b{display:block;margin-top:14px;font-size:6px;letter-spacing:.1em}.approach-board-swatch{z-index:3;right:12%;bottom:10%;width:19%;height:31%;margin:0;padding:7px 7px 24px;background:#f6f5f0;--turn:2.8deg;animation:approach-pin-swatch 12s cubic-bezier(.2,.75,.25,1) infinite both}.approach-board-swatch img{width:100%;height:100%;object-fit:cover}.approach-board-swatch figcaption{margin-top:7px;font-size:6px;text-align:center;text-transform:uppercase;letter-spacing:.12em}.approach-board-colours{z-index:4;left:14%;bottom:1%;width:12%;height:25%;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:7px 7px 23px;background:#f4f2ec;--turn:-3deg;animation:approach-pin-colours 12s cubic-bezier(.2,.75,.25,1) infinite both}.approach-board-colours span:nth-child(1){background:#d7d0bf}.approach-board-colours span:nth-child(2){background:#777166}.approach-board-colours span:nth-child(3){background:#312e2b}.approach-board-colours small{position:absolute;right:4px;bottom:7px;left:4px;font-size:5px;text-align:center;letter-spacing:.09em}.approach-board-copy{position:absolute;z-index:6;left:50%;top:47%;width:min(86vw,680px);text-align:center;transform:translate(-50%,-50%);pointer-events:none}.approach-board-copy p{margin:0 0 18px;font-size:9px;text-transform:uppercase;letter-spacing:.18em}.approach-board-copy h1{margin:0;font-size:clamp(54px,5.8vw,86px);font-weight:300;line-height:.88;letter-spacing:-.055em;white-space:nowrap}.approach-board-copy h1 em{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400}.approach-board-copy>span{display:block;margin-top:22px;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.approach-hero-edge{position:absolute;z-index:7;right:var(--gutter);bottom:18px;left:var(--gutter);display:flex;justify-content:space-between;margin:0;font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.08em}@keyframes approach-pin-sketch{0%,2%{opacity:0;transform:translateY(-30px) scale(.985) rotate(-4deg)}7%,86%{opacity:1;transform:translateY(0) scale(1) rotate(var(--turn))}94%,100%{opacity:0;transform:translateY(0) scale(.99) rotate(var(--turn))}}@keyframes approach-pin-photo{0%,15%{opacity:0;transform:translate(30px,-22px) scale(.985) rotate(5deg)}21%,86%{opacity:1;transform:translate(0,0) scale(1) rotate(var(--turn))}94%,100%{opacity:0;transform:translate(0,0) scale(.99) rotate(var(--turn))}}@keyframes approach-pin-note{0%,29%{opacity:0;transform:translate(-25px,24px) scale(.985) rotate(-2deg)}35%,86%{opacity:1;transform:translate(0,0) scale(1) rotate(var(--turn))}94%,100%{opacity:0;transform:translate(0,0) scale(.99) rotate(var(--turn))}}@keyframes approach-pin-spec{0%,42%{opacity:0;transform:translateY(30px) scale(.985) rotate(1deg)}48%,86%{opacity:1;transform:translateY(0) scale(1) rotate(var(--turn))}94%,100%{opacity:0;transform:translateY(0) scale(.99) rotate(var(--turn))}}@keyframes approach-pin-swatch{0%,55%{opacity:0;transform:translate(28px,22px) scale(.985) rotate(5deg)}61%,86%{opacity:1;transform:translate(0,0) scale(1) rotate(var(--turn))}94%,100%{opacity:0;transform:translate(0,0) scale(.99) rotate(var(--turn))}}@keyframes approach-pin-colours{0%,67%{opacity:0;transform:translate(-22px,18px) scale(.985) rotate(-5deg)}73%,86%{opacity:1;transform:translate(0,0) scale(1) rotate(var(--turn))}94%,100%{opacity:0;transform:translate(0,0) scale(.99) rotate(var(--turn))}}
.approach-intro{min-height:72vh;padding:clamp(115px,13vw,200px) max(var(--gutter),11.25vw);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.approach-intro h2{max-width:1040px;margin:0;font-size:clamp(35px,4vw,62px);font-weight:300;line-height:1.16;letter-spacing:-.05em}.approach-intro p{max-width:820px;margin:42px 0 0;color:#555;font-size:clamp(16px,1.45vw,21px);line-height:1.52;letter-spacing:-.015em}
.approach-chapter{scroll-margin-top:calc(var(--header) + 56px);padding-top:clamp(120px,14vw,220px);border-top:1px solid #ececea}.approach-split-intro{min-height:730px;padding:0 max(var(--gutter),11.25vw);display:grid;grid-template-columns:1fr 1fr;gap:6.25vw;align-items:start}.approach-split-intro .approach-chapter-copy{padding-top:40px}.approach-split-intro>figure{width:100%;height:565px;margin:0;overflow:hidden}.approach-split-intro>figure img{filter:saturate(.55)}.approach-chapter-copy h2,.approach-centered-copy h2{margin:0;font-size:clamp(34px,3.2vw,52px);font-weight:300;line-height:1.08;letter-spacing:-.045em}.approach-chapter-copy p,.approach-centered-copy p{margin:34px 0 0;color:#555;font-size:clamp(16px,1.45vw,21px);line-height:1.55;letter-spacing:-.015em}.approach-centered-copy{max-width:1020px;margin:0 auto;padding:0 var(--gutter) clamp(100px,10vw,150px);text-align:center}.approach-centered-copy p{max-width:1000px;margin-right:auto;margin-left:auto}
.approach-product-strip,.approach-production-grid{max-width:992px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.approach-product-strip figure,.approach-production-grid figure{margin:0;aspect-ratio:3/4;overflow:hidden;background:var(--soft)}.approach-product-strip img,.approach-production-grid img{filter:saturate(.5) brightness(1.03);transition:transform .8s cubic-bezier(.2,.65,.25,1)}.approach-product-strip figure:hover img,.approach-production-grid figure:hover img{transform:scale(1.02)}.approach-follow-copy{max-width:992px;margin:clamp(110px,12vw,190px) auto 0;padding:0 var(--gutter);color:#4c4c4c;text-align:center;font-size:clamp(17px,1.55vw,23px);line-height:1.55;letter-spacing:-.02em}
.approach-carousel{width:100%;height:550px;display:grid;grid-template-columns:repeat(3,51vw);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scrollbar-width:none}.approach-carousel::-webkit-scrollbar{display:none}.approach-carousel figure{margin:0;overflow:hidden;scroll-snap-align:start}.approach-carousel img{filter:saturate(.55)}
.approach-inset-visual{height:min(72vw,900px);margin:0 32px;overflow:hidden}.approach-inset-visual img{filter:saturate(.35);object-position:center 46%}.production-chapter .approach-centered-copy{padding-bottom:70px}.approach-production-grid figure:first-child img{filter:grayscale(1) brightness(.95);object-position:center}.delivery-chapter{padding-bottom:0}.approach-film{height:calc(100vh - var(--header));min-height:620px;margin-top:clamp(110px,12vw,180px);overflow:hidden;background:#777}.approach-film video{width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(.68) contrast(1.04)}
@media(max-width:900px){.approach-subnav{grid-template-columns:auto 1fr}.approach-label{padding:0 20px}.approach-subnav>div{justify-content:flex-start;overflow-x:auto;scrollbar-width:none}.approach-subnav>div::-webkit-scrollbar{display:none}.approach-subnav>div a{padding:0 16px}.approach-split-intro{min-height:0;padding:0;grid-template-columns:1fr;gap:80px}.approach-split-intro .approach-chapter-copy{padding:0 22px}.approach-split-intro>figure{height:70svh}.approach-product-strip,.approach-production-grid{padding:0 22px}.approach-inset-visual{margin:0 22px}.approach-carousel{grid-template-columns:repeat(3,82vw)}}
@media(max-width:600px){.approach-subnav{top:var(--header);height:50px}.approach-subnav a{height:50px;font-size:10px}.approach-label{padding:0 14px}.approach-subnav>div a{padding:0 13px}.approach-hero,.approach-chapter{scroll-margin-top:calc(var(--header) + 50px)}.approach-hero{height:calc(100svh - var(--header) - 50px);min-height:560px;padding:12px 12px 16px}.approach-board{width:100%;height:calc(100% - 32px)}.approach-board-sheet{left:5%;top:5%;width:53%;height:50%;padding:24px 12px 12px}.approach-board-photo{right:4%;top:9%;width:38%;height:43%}.approach-board-note{left:10%;bottom:8%;width:35%;min-height:25%;padding:16px}.approach-board-note p{margin-top:13px;font-size:15px}.approach-board-spec{left:43%;bottom:3%;width:29%;min-height:31%;padding:15px 12px}.approach-board-swatch{right:3%;bottom:10%;width:27%;height:27%}.approach-board-colours{display:none}.approach-board-copy{top:48%;width:96%}.approach-board-copy p{margin-bottom:14px}.approach-board-copy h1{font-size:clamp(43px,13vw,55px)}.approach-board-copy>span{max-width:280px;margin:18px auto 0;line-height:1.35}.approach-hero-edge{display:none}.approach-intro{min-height:76svh;padding:100px 22px}.approach-intro h2{font-size:34px}.approach-intro p{margin-top:32px;font-size:17px}.approach-chapter{padding-top:105px}.approach-split-intro{gap:70px}.approach-split-intro>figure{height:66svh}.approach-chapter-copy h2,.approach-centered-copy h2{font-size:38px}.approach-chapter-copy p,.approach-centered-copy p{font-size:17px}.approach-centered-copy{padding:0 22px 80px}.approach-product-strip,.approach-production-grid{grid-template-columns:repeat(2,1fr);gap:3px;padding:0 14px}.approach-follow-copy{margin-top:100px;padding:0 22px;font-size:18px}.approach-carousel{height:62svh;grid-template-columns:repeat(3,88vw)}.approach-inset-visual{height:72svh;margin:0 14px}.production-chapter .approach-centered-copy{padding-bottom:65px}.approach-film{height:calc(100svh - var(--header));min-height:560px;margin-top:100px}.approach-film video{object-position:center}}

@media(prefers-reduced-motion:reduce){.approach-board>*{opacity:1;animation:none;transform:rotate(var(--turn,0deg))}}

.approach-hero{background:#e7e6e2;color:#fff}.approach-hero::before{opacity:.16}.approach-design-film{position:relative;z-index:2;height:calc(100% - 34px);aspect-ratio:9/16;max-width:calc(100vw - (var(--gutter) * 2));overflow:hidden;background:#827f79;box-shadow:0 24px 70px rgba(30,28,24,.2)}.approach-design-film video{width:100%;height:100%;object-fit:cover;filter:saturate(.62) contrast(.96) brightness(.82)}.approach-design-film-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.02) 43%,rgba(0,0,0,.45));pointer-events:none}.approach-design-copy{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px 18px;text-align:center}.approach-design-copy p{margin:0 0 18px;font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.18em}.approach-design-copy h1{margin:0;font-size:clamp(55px,5vw,72px);font-weight:300;line-height:.72;letter-spacing:-.06em}.approach-design-copy h1 span,.approach-design-copy h1 em{display:block}.approach-design-copy h1 em{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400}.approach-design-copy>span{position:absolute;right:14px;bottom:22px;left:14px;font-size:8px;line-height:1.35;text-transform:uppercase;letter-spacing:.08em}.approach-hero-edge{color:#171717}

@media(max-width:600px){.approach-design-film{height:calc(100% - 22px);max-width:calc(100vw - 24px)}.approach-design-copy h1{font-size:clamp(55px,17vw,66px)}}

.approach-hero{padding:0;background:#292824}.approach-hero::before{display:none}.approach-design-film{position:absolute;inset:0;width:100%;height:100%;max-width:none;aspect-ratio:auto;box-shadow:none}.approach-design-film video{object-fit:cover;object-position:center center;filter:saturate(.52) contrast(.98) brightness(.72)}.approach-design-film-shade{z-index:1;background:linear-gradient(90deg,rgba(225,223,216,.5),rgba(225,223,216,.12) 43%,rgba(0,0,0,.42))}.approach-resort-sheet{position:absolute;z-index:2;left:16%;top:50%;width:clamp(255px,24vw,330px);aspect-ratio:4/5;padding:28px 22px 18px;background:rgba(247,246,241,.94);color:#24221f;box-shadow:0 22px 55px rgba(0,0,0,.2);transform:translateY(-50%) rotate(-1.2deg)}.approach-resort-sheet small{display:block;font-size:7px;line-height:1;text-transform:uppercase;letter-spacing:.15em}.approach-resort-sheet svg{display:block;width:100%;height:calc(100% - 46px);margin-top:8px}.approach-resort-sheet p{display:flex;justify-content:space-between;gap:14px;margin:5px 0 0;font-size:6px;line-height:1;text-transform:uppercase;letter-spacing:.1em}.approach-resort-sheet p span{color:#77736d;text-align:right}.approach-resort-pin{position:absolute;top:-8px;left:50%;width:27px;height:16px;margin-left:-13px;border-radius:1px 1px 3px 3px;background:#272727;box-shadow:inset 0 -2px 0 rgba(255,255,255,.2)}.approach-resort-pin::before,.approach-resort-pin::after{content:"";position:absolute;top:-9px;width:7px;height:12px;border:1px solid #4a4a4a;border-bottom:0;border-radius:5px 5px 0 0}.approach-resort-pin::before{left:3px}.approach-resort-pin::after{right:3px}.approach-design-copy{z-index:3;inset:0 6vw 0 auto;width:38%;align-items:flex-start;text-align:left}.approach-design-copy h1{font-size:clamp(64px,6vw,92px);line-height:.74}.approach-design-copy>span{position:static;max-width:340px;margin-top:28px;font-size:9px}.approach-hero-edge{z-index:4;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.45)}

@media(max-width:700px){.approach-design-film{height:100%;max-width:none}.approach-design-film video{object-position:52% center}.approach-design-film-shade{background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.08) 45%,rgba(0,0,0,.55))}.approach-resort-sheet{left:5%;top:9%;width:min(58vw,265px);padding:22px 15px 13px;transform:rotate(-1.2deg)}.approach-resort-sheet small{font-size:5px}.approach-resort-sheet p{font-size:5px}.approach-design-copy{inset:auto 5% 8% 5%;width:auto;align-items:center;justify-content:flex-end;padding:0;text-align:center}.approach-design-copy p{margin-bottom:14px}.approach-design-copy h1{font-size:clamp(52px,16vw,70px)}.approach-design-copy>span{max-width:290px;margin-top:20px}.approach-hero-edge{display:none}}

/* Contact — buyer project enquiry */
.contact-form-section{display:grid;grid-template-columns:minmax(280px,4fr) minmax(560px,7fr);gap:clamp(70px,9vw,150px);padding:clamp(110px,12vw,190px) var(--gutter);background:#fff;border-bottom:1px solid var(--line)}.contact-form-intro{align-self:start;position:sticky;top:calc(var(--header) + 45px)}.contact-form-intro .eyebrow{margin-bottom:34px}.contact-form-intro h2{margin:0;font-size:clamp(48px,5.2vw,84px);font-weight:300;line-height:.94;letter-spacing:-.06em}.contact-form-intro>p:not(.eyebrow){max-width:520px;margin:50px 0 0;color:#716d67;font-size:clamp(17px,1.5vw,23px);line-height:1.6;letter-spacing:-.02em}.contact-form-intro .contact-response{max-width:440px!important;margin-top:42px!important;padding-top:28px;border-top:1px solid #ccc7bf;font-size:12px!important;line-height:1.7!important;letter-spacing:0!important}.project-form{min-width:0}.project-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:38px;row-gap:34px}.project-form-grid label{display:block}.project-form-grid label>span{display:block;margin-bottom:13px;color:#716d67;font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.18em}.project-form input,.project-form select,.project-form textarea{width:100%;min-height:48px;padding:8px 0;border:0;border-bottom:1px solid #bdb8b0;border-radius:0;outline:0;background:transparent;color:#171717;font:inherit;font-size:17px;line-height:1.45;transition:border-color .2s}.project-form input::placeholder,.project-form textarea::placeholder{color:#9c978f;opacity:1}.project-form select{appearance:none;padding-right:35px;background-image:linear-gradient(45deg,transparent 50%,#56524d 50%),linear-gradient(135deg,#56524d 50%,transparent 50%);background-position:calc(100% - 13px) 22px,calc(100% - 8px) 22px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.project-form input:focus,.project-form select:focus,.project-form textarea:focus{border-color:#171717}.project-form input:focus-visible,.project-form select:focus-visible,.project-form textarea:focus-visible{outline:1px solid #171717;outline-offset:4px}.project-form textarea{min-height:150px;resize:vertical}.project-message{grid-column:1/-1}.project-file-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.project-upload{min-height:128px;display:flex;align-items:center;gap:24px;margin-top:42px;padding:28px 32px;border:1px dashed #aaa49b;cursor:pointer;transition:border-color .2s,background-color .2s}.project-upload:hover{border-color:#4b4843;background:#f7f7f5}.project-file-input:focus-visible+.project-upload{outline:2px solid #171717;outline-offset:4px}.project-upload svg{width:27px;height:27px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.project-upload span{display:flex;flex-direction:column;gap:7px}.project-upload b{font-size:15px;font-weight:400}.project-upload small{color:#716d67;font-size:13px;line-height:1.45}.project-submit{min-width:278px;min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:38px;padding:0 28px;border:1px solid #211e1a;background:#211e1a;color:#fff;cursor:pointer;font:inherit;font-size:11px;text-transform:uppercase;letter-spacing:.18em;transition:background-color .2s,color .2s}.project-submit:hover{background:transparent;color:#211e1a}.project-submit:focus-visible{outline:2px solid #171717;outline-offset:4px}.project-submit span:last-child{font-size:18px;line-height:1}.project-form-note{margin:25px 0 0;color:#716d67;font-size:12px;line-height:1.6}.project-form-status{min-height:22px;margin:12px 0 0;color:#3f3c38;font-size:12px;line-height:1.5}

@media(max-width:900px){.contact-form-section{grid-template-columns:1fr;gap:80px}.contact-form-intro{position:static}.contact-form-intro>p:not(.eyebrow){max-width:650px}.contact-form-intro .contact-response{max-width:560px!important}}

@media(max-width:600px){.contact-form-section{gap:65px;padding:90px 22px}.contact-form-intro h2{font-size:clamp(46px,14vw,62px)}.contact-form-intro>p:not(.eyebrow){margin-top:36px;font-size:17px}.contact-form-intro .contact-response{margin-top:32px!important}.project-form-grid{grid-template-columns:1fr;row-gap:28px}.project-message{grid-column:auto}.project-form input,.project-form select,.project-form textarea{font-size:16px}.project-upload{min-height:140px;align-items:flex-start;margin-top:36px;padding:25px 22px}.project-submit{width:100%;min-width:0}.project-form-note{font-size:11px}}

.contact-form-intro>p:not(.eyebrow){margin-top:0}.project-form .project-file-input{position:absolute;width:1px;height:1px;padding:0;border:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}

@media(max-width:600px){.contact-form-intro>p:not(.eyebrow){margin-top:0}}

/* Contact — direct details */
.contact-details{min-height:78svh;display:flex;align-items:center;padding:clamp(110px,12vw,190px) max(var(--gutter),9vw);background:#fff;border-bottom:1px solid var(--line)}.contact-details-address{width:min(100%,760px);margin:0;font-style:normal}.contact-detail-group+.contact-detail-group{margin-top:clamp(55px,6vw,92px)}.contact-detail-label{margin:0 0 24px;color:#716d67;font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.22em}.contact-detail-group>p:last-child{margin:0;color:#272421;font-size:clamp(22px,2.25vw,36px);font-weight:300;line-height:1.55;letter-spacing:-.035em}.contact-detail-group a{transition:opacity .2s}.contact-detail-group a:hover{opacity:.55}.contact-detail-group a:focus-visible{outline:1px solid currentColor;outline-offset:5px}.contact-phone span{margin-left:8px;color:#aaa49c}.contact-detail-group:last-child a{overflow-wrap:anywhere}
@media(max-width:600px){.contact-details{min-height:auto;padding:95px 22px}.contact-detail-label{margin-bottom:20px}.contact-detail-group>p:last-child{font-size:22px;line-height:1.6}.contact-detail-group+.contact-detail-group{margin-top:58px}.contact-phone span{margin-left:5px}}

/* Our approach — refined visual process */
.approach-design-film-shade{background:linear-gradient(180deg,rgba(0,0,0,.14),rgba(0,0,0,.08) 46%,rgba(0,0,0,.58))}
.approach-design-copy{inset:0;width:100%;align-items:center;justify-content:center;padding:clamp(28px,5vw,70px) var(--gutter);text-align:center}
.approach-design-copy>span{position:static;max-width:420px;margin-top:28px}
.approach-split-intro>figure img{object-position:center 45%;filter:saturate(.72) contrast(.98)}
.approach-carousel figure:first-child img{object-position:center 38%}
.approach-production-grid figure{position:relative}
.approach-production-grid img{object-position:center;filter:saturate(.72) contrast(.98);transition:transform .8s cubic-bezier(.2,.65,.25,1)}
.approach-production-grid figure:first-child img{object-position:center;filter:saturate(.72) contrast(.98)}
.approach-production-grid figcaption{position:absolute;z-index:2;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:34px 14px 14px;background:linear-gradient(180deg,transparent,rgba(18,17,15,.72));color:#fff;font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.1em;pointer-events:none}
.approach-production-grid figcaption span{opacity:.72}
.approach-production-grid figcaption b{font-weight:400;text-align:right}
.delivery-chapter{padding-top:0}
.approach-delivery-film{margin-top:0}
.approach-delivery-story{display:grid;grid-template-columns:minmax(300px,4fr) minmax(0,6fr);gap:clamp(50px,7vw,120px);align-items:center;padding:clamp(110px,13vw,200px) max(var(--gutter),8vw);background:#f3f2ee}
.approach-delivery-story .approach-centered-copy{max-width:none;margin:0;padding:0;text-align:left}
.approach-delivery-story .approach-centered-copy p{margin-right:0;margin-left:0}
.approach-delivery-visual{margin:0;aspect-ratio:16/10;overflow:hidden;background:#d9d7d0}
.approach-delivery-visual img{object-position:center;filter:saturate(.72) contrast(.98)}

@media(max-width:900px){.approach-delivery-story{grid-template-columns:1fr;padding-right:22px;padding-left:22px}.approach-delivery-story .approach-centered-copy{max-width:680px}.approach-delivery-visual{aspect-ratio:4/3}}
@media(max-width:700px){.approach-design-copy{inset:0;width:100%;align-items:center;justify-content:flex-end;padding:0 22px 70px;text-align:center}.approach-design-copy>span{max-width:290px;margin-top:20px}}
@media(max-width:600px){.approach-delivery-film{height:70svh;min-height:520px}.approach-delivery-story{padding-top:95px;padding-bottom:95px}.approach-production-grid figcaption{padding:28px 10px 11px;font-size:8px}}

/* Development — single full-bleed campaign image */
.approach-development-visual{width:100%;height:clamp(680px,78vw,1120px);margin:0;overflow:hidden;background:#e7e5df}
.approach-development-visual img{width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.72) contrast(.98)}
@media(max-width:600px){.approach-development-visual{height:auto}.approach-development-visual img{height:auto;object-fit:contain}}

/* Expertise — keep the chapter introduction connected to its material detail */
.expertise-chapter{padding-top:clamp(82px,8vw,128px)}
.expertise-chapter .approach-centered-copy{padding-bottom:clamp(62px,6vw,96px)}
@media(max-width:600px){.expertise-chapter{padding-top:82px}.expertise-chapter .approach-centered-copy{padding-bottom:62px}}

/* Approach subnavigation — one compact, optically centered chapter group */
.approach-subnav{display:flex;justify-content:center;gap:0;padding:0 12px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
.approach-subnav::-webkit-scrollbar{display:none}
.approach-subnav .approach-label,.approach-subnav>div a{flex:0 0 auto;padding:0 clamp(12px,1.35vw,20px);color:#616161}
.approach-subnav .approach-label{position:relative}
.approach-subnav>div{width:auto;flex:0 0 auto;justify-content:flex-start;overflow:visible}
@media(max-width:600px){.approach-subnav{justify-content:flex-start;padding:0 2px}.approach-subnav .approach-label,.approach-subnav>div a{padding:0 12px}}
