:root { --ink:#102d35; --mist:#edf0ea; --sand:#d8c4a1; --clay:#bd623d; --line:rgba(16,45,53,.18); }
.brand-mark { width:23px; height:23px; object-fit:contain; }
.client-wordmark img,.client-grid img{display:block;max-width:150px;max-height:62px;width:auto;height:auto;object-fit:contain}.client-grid span{justify-content:center}.client-grid .text-client{font-size:clamp(18px,2vw,27px);font-weight:800;letter-spacing:-.06em;line-height:1.05}@media(max-width:760px){.client-wordmark img{max-width:125px;max-height:52px}.client-grid img{max-width:115px;max-height:50px}.client-grid .text-client{font-size:20px}}
.client-marquee-section { padding:130px 0; overflow:hidden; background:#f6f2ea; }.client-marquee-heading { padding:0 11vw 60px; display:flex; justify-content:space-between; align-items:end; gap:30px; }.client-marquee-heading h2 { font-size:clamp(46px,5.5vw,78px); }.client-marquee-heading a { color:var(--ink); font-size:13px; font-weight:800; text-decoration:none; white-space:nowrap; }.client-marquee-heading a span { color:var(--clay); font-size:20px; margin-left:10px; }.client-marquee { border-top:1px solid var(--line); border-bottom:1px solid var(--line); overflow:hidden; }.client-track { display:flex; width:max-content; animation:client-scroll 34s linear infinite; }.client-set { display:flex; align-items:stretch; flex-shrink:0; }.client-wordmark { min-width:230px; min-height:126px; padding:24px 30px; display:flex; align-items:center; justify-content:center; border-right:1px solid var(--line); color:var(--ink); font-weight:800; letter-spacing:-.06em; font-size:26px; }.client-wordmark.salesforce { font-size:22px; color:#1876bb; }.client-wordmark.optus { color:#ea5a24; font-size:29px; }.client-wordmark.anz { color:#0072ac; letter-spacing:-.1em; }.client-wordmark.mirvac { font-family:"Playfair Display",serif; font-size:29px; }.client-wordmark.cbre { color:#377c2b; letter-spacing:-.09em; }.client-wordmark.skedulo { color:#f15b41; font-size:23px; }.client-wordmark.holland { font-size:20px; }.client-wordmark.water { color:#247b9a; font-size:20px; } @keyframes client-scroll { to { transform:translateX(-50%); } }.clients-hero { padding-bottom:120px; }.clients-list { padding:100px 11vw 120px; }.client-intro { display:flex; justify-content:space-between; gap:60px; padding-bottom:60px; }.client-intro>p:last-child { max-width:500px; font-size:16px; line-height:1.75; margin:0; }.client-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }.client-grid span { min-height:145px; display:flex; align-items:center; padding:25px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); font-size:clamp(18px,2vw,27px); font-weight:800; letter-spacing:-.06em; line-height:1.05; } @media(max-width:760px){.client-marquee-section{padding:85px 0}.client-marquee-heading{padding:0 24px 42px;display:block}.client-marquee-heading a{display:inline-block;margin-top:30px}.client-wordmark{min-width:190px;min-height:105px;font-size:23px}.client-intro{display:block;padding-bottom:45px}.client-intro>p:last-child{margin-top:25px}.clients-list{padding:75px 24px}.client-grid{grid-template-columns:1fr 1fr}.client-grid span{min-height:120px;padding:19px;font-size:20px}}
.hero-photo { background:#d7c7aa; }.hero-photo img { width:100%; height:100%; display:block; object-fit:cover; }.collaboration-panel { padding:0; display:block; background:#d7c7aa; }.collaboration-panel:after { display:none; }.collaboration-panel img { width:100%; height:100%; min-height:720px; display:block; object-fit:cover; object-position:center; } @media(max-width:760px){.collaboration-panel img{min-height:380px}}
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--mist); color:var(--ink); font-family:Manrope, sans-serif; } .site-header { height:86px; display:flex; align-items:center; justify-content:space-between; padding:0 5.5vw; border-bottom:1px solid var(--line); position:absolute; inset:0 0 auto; z-index:2; } .brand { display:flex; gap:10px; color:var(--ink); align-items:center; text-decoration:none; font-size:15px; font-weight:500; letter-spacing:-.04em; } .brand b { font-weight:800; } .brand-mark { display:flex; gap:3px; align-items:flex-end; height:18px; } .brand-mark i { display:block; width:5px; border-radius:4px; background:var(--clay); transform:skew(-25deg); } .brand-mark i:nth-child(1) { height:8px }.brand-mark i:nth-child(2) {height:14px}.brand-mark i:nth-child(3) {height:18px} nav { display:flex; gap:28px; align-items:center; } nav a { color:var(--ink); text-decoration:none; font-size:13px; font-weight:700; } .nav-cta { border:1px solid var(--ink); padding:11px 15px; margin-left:8px; } .nav-cta span { margin-left:7px; color:var(--clay); font-size:16px; }.menu-toggle{display:none}
.hero { min-height:100vh; padding:170px 11vw 60px; display:grid; grid-template-columns:1.2fr 1fr; align-items:center; position:relative; overflow:hidden; }.eyebrow { text-transform:uppercase; font-family:"DM Mono",monospace; font-size:10px; letter-spacing:.1em; margin:0 0 26px; font-weight:500; }.hero h1,.statement h2,.section-heading h2,.principles h2,.perspective h2,.contact h2 { margin:0; font-size:clamp(52px,7vw,104px); letter-spacing:-.07em; font-weight:700; line-height:.94; } h2 { font-size:clamp(39px,4.6vw,70px); letter-spacing:-.065em; line-height:.98; margin:0; } em { font-family:"Playfair Display",serif; font-weight:600; } .intro { max-width:440px; font-size:16px; line-height:1.7; margin:35px 0; }.button { display:inline-flex; align-items:center; gap:25px; color:white; background:var(--ink); text-decoration:none; padding:15px 18px; font-size:13px; font-weight:700; }.button span { font-size:20px; color:var(--sand); }.hero-art { justify-self:end; position:relative; height:440px; width:min(39vw,500px); background:#c8d7d0; overflow:hidden; }.sun { height:108px; width:108px; border-radius:50%; background:#eec875; top:65px; right:90px; position:absolute; }.mountain { position:absolute; bottom:-30px; transform:rotate(45deg); }.mountain-back { width:350px; height:350px; background:#6e9690; left:45px; }.mountain-front { width:360px; height:360px; background:#285b62; right:-95px; bottom:-145px; }.hero-art p { position:absolute; bottom:16px; left:18px; z-index:1; color:white; font:10px "DM Mono"; letter-spacing:.05em; }.scroll-note { position:absolute; bottom:28px; left:5.5vw; font:10px "DM Mono"; text-transform:uppercase; letter-spacing:.08em; display:flex; align-items:center; gap:12px; }.scroll-note span { height:1px; width:55px; background:var(--ink); }
.statement { padding:150px 11vw; background:var(--ink); color:var(--mist); }.statement-grid { display:grid; grid-template-columns:1.5fr .7fr; gap:8vw; align-items:end; }.statement-grid p,.section-heading>p,.perspective-foot p { font-size:15px; line-height:1.8; margin:0; }.statement em{color:#e9b786}.services { padding:150px 5.5vw 130px; }.section-heading { display:flex; justify-content:space-between; align-items:end; padding:0 5.5vw 70px; }.section-heading>p { max-width:320px; }.service-list { display:grid; grid-template-columns:repeat(3,1fr); }.service-card { min-height:350px; padding:28px; border:1px solid var(--line); position:relative; }.service-card:nth-child(2) { background:#e2ded2; }.service-card span { font:10px "DM Mono"; }.service-card h3 { font-size:29px; letter-spacing:-.06em; line-height:1.05; margin:70px 0 18px; }.service-card p { margin:0; max-width:260px; line-height:1.65; font-size:13px; }.service-card a { position:absolute; right:25px; bottom:20px; color:var(--clay); font-size:27px; text-decoration:none; }
.principles { display:grid; grid-template-columns:1fr 1fr; background:#e1d6c4; }.principles-image { min-height:720px; background:linear-gradient(180deg,rgba(17,49,56,.1),rgba(17,49,56,.5)),linear-gradient(180deg,#a9c8cd 0 50%,#306b75 50% 62%,#1c555e 62%); position:relative; }.principles-image:after { content:""; position:absolute; inset:0; opacity:.5; background:repeating-linear-gradient(170deg,transparent 0 20px,rgba(255,255,255,.12) 21px 22px); }.principles-copy { padding:110px 9vw 80px 8vw; }.principles-copy h2 { font-size:clamp(40px,4vw,64px); }.principles ul { list-style:none; padding:40px 0 0; margin:0; }.principles li { padding:20px 0; border-top:1px solid var(--line); display:flex; gap:24px; }.principles li>span { font:10px "DM Mono"; color:var(--clay); padding-top:5px; }.principles h3 { font-size:15px; margin:0 0 6px; }.principles li p { margin:0; font-size:13px; line-height:1.6; }.perspective { padding:150px 11vw 80px; }.perspective h2 { font-size:clamp(50px,6vw,90px); }.perspective-foot { border-top:1px solid var(--line); display:flex; justify-content:space-between; padding-top:25px; margin-top:85px; }.perspective-foot p { max-width:380px; }.perspective-foot a { color:var(--ink); text-decoration:none; font-weight:700; font-size:14px; }.perspective-foot a span { color:var(--clay); margin-left:15px; font-size:19px; }.contact { text-align:center; padding:135px 20px; background:var(--clay); color:#fff5e3; }.contact p:not(.eyebrow) { font-size:15px; margin:30px auto; line-height:1.7; max-width:410px; }.contact .button { background:#fff5e3; color:var(--ink); }.contact .button span { color:var(--clay); } footer { display:flex; justify-content:space-between; align-items:center; padding:32px 5.5vw; font-size:11px; } footer>a:last-child { text-decoration:none; color:var(--ink); font-weight:700; }
.reveal { opacity:0; transform:translateY(18px); transition:opacity .7s ease,transform .7s ease; }.reveal.visible {opacity:1;transform:none}@media(max-width:760px){.site-header{height:68px;padding:0 24px}.menu-toggle{display:flex;flex-direction:column;gap:5px;background:none;border:0}.menu-toggle span{width:23px;height:1px;background:var(--ink)}nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--mist);padding:20px 24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}nav.open{display:flex}.nav-cta{margin:5px 0 0}.hero{padding:130px 24px 50px;display:block}.hero-art{width:100%;height:300px;margin-top:50px}.scroll-note{display:none}.statement,.services,.perspective{padding:85px 24px}.statement-grid,.principles{display:block}.statement-grid p{margin-top:34px}.section-heading{display:block;padding:0 0 45px}.section-heading>p{margin-top:28px}.service-list{grid-template-columns:1fr}.service-card{min-height:280px}.principles-image{min-height:380px}.principles-copy{padding:75px 24px}.perspective-foot{display:block;margin-top:50px}.perspective-foot a{display:inline-block;margin-top:28px}.contact{padding:90px 24px}footer{padding:28px 24px;gap:18px;flex-wrap:wrap}.hero h1{font-size:58px}}
.team-hero { padding:185px 11vw 110px; background:var(--ink); color:var(--mist); }.team-hero h1 { margin:0; font-size:clamp(57px,7vw,105px); line-height:.94; letter-spacing:-.07em; }.team-hero em { color:#e9b786; }.team-hero>p:last-child { max-width:500px; font-size:16px; line-height:1.75; margin:36px 0 0; }.team-list { padding:30px 5.5vw 100px; }.team-member { display:grid; grid-template-columns:1fr 1fr; gap:8vw; align-items:center; padding:110px 5.5vw; border-bottom:1px solid var(--line); }.team-member-reverse .portrait { order:2; }.team-member-reverse .member-info { order:1; }.portrait { min-height:490px; position:relative; overflow:hidden; background:#d8c4a1; }.portrait img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:center top; filter:saturate(.82) contrast(1.04); }.portrait-nick img { object-position:center 18%; }.portrait-carl img { object-position:center 22%; }.member-info h2 { font-size:clamp(50px,5vw,79px); margin:0; }.member-role { font:11px "DM Mono"; text-transform:uppercase; letter-spacing:.08em; margin:22px 0 32px; color:var(--clay); }.member-info>p:not(.eyebrow):not(.member-role) { max-width:470px; line-height:1.75; font-size:15px; }.member-info a { display:inline-block; color:var(--ink); font-size:13px; font-weight:800; margin-top:20px; text-decoration:none; }.member-info a span { color:var(--clay); font-size:19px; margin-left:10px; }.team-contact { padding:115px 24px; }.team-contact h2 { font-size:clamp(51px,6vw,88px); } @media(max-width:760px){.team-hero{padding:130px 24px 75px}.team-list{padding:0 24px 60px}.team-member,.team-member-reverse{display:flex;flex-direction:column;gap:45px;padding:70px 0}.team-member-reverse .portrait,.team-member-reverse .member-info{order:initial}.portrait{width:100%;min-height:340px}.member-info h2{font-size:56px}}
.site-header.on-dark { border-color:rgba(237,240,234,.2); }.site-header.on-dark .brand,.site-header.on-dark nav a { color:var(--mist); }.site-header.on-dark .nav-cta { border-color:var(--mist); }.site-header.on-dark .menu-toggle span { background:var(--mist); }
.hero-people { background:#c9d2cc; }.hero-people .hero-person { position:absolute; object-fit:cover; box-shadow:0 15px 36px rgba(16,45,53,.2); }.hero-nick { width:57%; height:75%; left:8%; top:9%; object-position:center 18%; }.hero-carl { width:42%; height:53%; right:7%; bottom:8%; object-position:center 18%; border:7px solid #c9d2cc; }.hero-people p { z-index:2; }.people-panel { background:#d9c9ae; display:grid; grid-template-columns:1fr 1fr; gap:7px; padding:7px; }.people-panel:after { display:none; }.people-panel img { width:100%; height:100%; min-height:710px; object-fit:cover; object-position:center 18%; }.people-panel img:last-child { object-position:center 22%; } @media(max-width:760px){.people-panel img{min-height:365px}.hero-nick{height:78%}.hero-carl{height:50%}}
.brand-mark { width:23px; height:23px; object-fit:contain; }
