:root{--ink:#141714;--sage:#c8d5c5;--paper:#f4f4ee;--muted:#62685f;--line:#d1d5cb;--gutter:clamp(24px,4.15vw,80px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #779765;outline-offset:6px}.skip-link{position:fixed;left:20px;top:16px;transform:translateY(-180%);background:white;color:var(--ink);padding:16px;z-index:20}.skip-link:focus{transform:translateY(0)}.hero-shell{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:#222820}.hero-image,.hero-image:after{position:absolute;inset:0;z-index:-1}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 45%;display:block}.hero-image:after{z-index:0;content:"";background:linear-gradient(90deg,rgba(5,10,5,.48),rgba(5,10,5,.18) 48%,transparent 69%),linear-gradient(180deg,rgba(0,0,0,.24),transparent 23%)}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:27px var(--gutter);height:110px}.brand{text-decoration:none;display:flex;align-items:center;gap:28px;flex-shrink:0}.monogram{font-size:56px;font-weight:800;letter-spacing:-5px;line-height:1}.brand-name{text-transform:uppercase;letter-spacing:2.5px;font-size:19px;line-height:1.4}.brand small{display:block;font-size:11px;letter-spacing:3px}.site-header nav{display:flex;align-items:center;gap:40px;font-size:18px}.site-header nav>a:not(.button){text-decoration:none;text-shadow:0 1px 6px #000}.site-header nav>a:not(.button):hover{text-decoration:underline;text-underline-offset:6px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-width:212px;min-height:54px;padding:15px 30px;background:var(--sage);color:#141714;text-decoration:none;border:1px solid transparent;border-radius:2px;font-size:18px;transition:background .15s,transform .15s}.button:hover{background:#e0e8dc;transform:translateY(-2px)}.button span{font-size:26px;line-height:.7}.hero{padding:48px var(--gutter) 7.5vw;min-height:calc(50.25vw - 110px);display:flex;align-items:flex-start;flex-direction:column}.eyebrow{text-transform:uppercase;font-size:13px;letter-spacing:2.4px;line-height:1.7;margin:0 0 22px;font-weight:500}.hero .eyebrow{font-size:clamp(12px,1vw,17px);letter-spacing:2.5px;margin-bottom:14px}.hero h1{font-size:clamp(40px,4.04vw,78px);line-height:1.02;letter-spacing:-2px;margin:0;font-weight:750;text-shadow:0 1px 12px #0002}.hero h1 span{color:#d0ddcc}.hero-cta{margin-top:auto;position:relative;top:0}.hero h1+.hero-cta{margin-top:clamp(120px,15.5vw,280px)}.menu-toggle{display:none;border:1px solid #fff8;background:#141714b0;color:white;border-radius:2px;padding:12px}.experience-strip{background:#101310;color:#fff;display:flex;align-items:center;gap:3vw;padding:24px var(--gutter);min-height:102px}.strip-label,.strip-note{text-transform:uppercase;font-size:11px;letter-spacing:1.35px;line-height:1.7;margin:0;flex-shrink:0}.strip-label{padding-right:2.6vw;border-right:1px solid #d7dfd1}.strip-note{padding-left:2.4vw;border-left:1px solid #d7dfd1}.brands{display:flex;flex:1;align-items:center;justify-content:space-between;gap:25px;list-style:none;margin:0;padding:0}.brands li{white-space:nowrap}.calvin{font-size:29px;letter-spacing:-1.8px;font-weight:300}.tommy{font-size:12px;text-transform:uppercase;letter-spacing:3px;display:flex;align-items:center;gap:5px}.tommy-flag{display:inline-block;width:17px;height:11px;border-block:3px solid #16275a;background:linear-gradient(90deg,white 50%,#d52237 50%)}.panasonic{font-size:25px;font-weight:800;letter-spacing:-1px}.casio{font-size:25px;font-weight:900;letter-spacing:.5px}.fuji{font-size:24px;font-weight:800;letter-spacing:-.5px}.stripe{font-size:33px;font-weight:800;letter-spacing:-1.5px}.section{padding:110px var(--gutter);max-width:1800px;margin:auto}.section h2{font-size:clamp(38px,4vw,65px);font-weight:500;letter-spacing:-2.4px;line-height:1.08;margin:0 0 30px}.section h2 span{color:#687b62}.section p{line-height:1.65}.section .eyebrow{line-height:1.7}.services{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.section-heading>p:last-child{max-width:380px;color:var(--muted);font-size:18px}.service-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;padding:25px 0;font-size:25px;list-style:none}summary::-webkit-details-marker{display:none}summary small{font-size:12px;margin-right:25px;color:var(--muted)}.plus{font-size:28px;font-weight:300}details[open] .plus{transform:rotate(45deg)}.detail-body{padding:0 26px 25px 43px;color:#555f51;max-width:530px}.detail-body p{margin-top:0}.detail-body ul{padding-left:18px;line-height:1.8;font-size:14px}.approach{background:var(--ink);color:var(--paper);max-width:none}.approach-intro{display:flex;justify-content:space-between;align-items:start;gap:30px}.approach h2{color:var(--sage)}.steps{list-style:none;padding:35px 0 0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:6vw}.steps li{border-top:1px solid #52604e;padding-top:25px}.step-number{font-size:13px;color:var(--sage)}.steps h3{font-size:25px;line-height:1.25;font-weight:400;max-width:280px;margin:30px 0 20px}.steps p{font-size:16px;color:#bec7b9;max-width:330px;margin:0}.selected-work{border-bottom:1px solid var(--line)}.work-layout{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.large-copy{font-size:25px;line-height:1.45!important;margin-top:0}.work-layout>div>p:not(.large-copy){color:var(--muted);max-width:500px}.text-link{display:inline-flex;align-items:center;gap:35px;font-size:16px;text-decoration:none;border-bottom:1px solid;padding:10px 0;margin-top:20px}.text-link:hover{color:#627859}.about{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.about-copy{max-width:500px}.about-copy>p:not(.large-copy){color:var(--muted)}.contact{background:var(--sage);max-width:none;position:relative}.contact h2{font-size:clamp(52px,7vw,110px);line-height:.97;letter-spacing:-4px}.contact>p:not(.eyebrow){max-width:450px;font-size:18px}.contact .button{background:var(--ink);color:white;margin-top:22px;min-width:255px}.contact .button:hover{background:#354331}.contact-pending{font-size:15px;color:#47533f}footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:35px var(--gutter);font-size:12px;background:var(--ink);color:#c4cbbb}footer a{text-decoration:none}.footer-brand{display:flex;align-items:center;gap:20px;font-size:32px;font-weight:800;letter-spacing:-2px}.footer-brand span{font-size:12px;font-weight:400;letter-spacing:0}footer>a:last-child{padding:12px 0}footer a:hover{text-decoration:underline}
@media(min-width:1800px){.hero{min-height:800px}.hero h1+.hero-cta{margin-top:240px}}
@media(max-width:1250px){.site-header nav{gap:25px;font-size:16px}.brand{gap:20px}.brand-name{font-size:16px}.monogram{font-size:48px}.button{min-width:170px;padding-inline:23px}.hero{padding-top:25px}.hero h1+.hero-cta{margin-top:13vw}.experience-strip{gap:25px}.strip-note{display:none}.brands{gap:25px}.calvin{font-size:24px}.tommy{font-size:10px}.panasonic,.casio,.fuji{font-size:21px}.stripe{font-size:28px}}
@media(max-width:900px){.site-header{height:95px}.brand-name{font-size:13px;letter-spacing:1.7px}.brand small{font-size:9px;letter-spacing:2px}.monogram{font-size:43px}.site-header nav{gap:18px;font-size:14px}.site-header .button{min-width:140px;font-size:15px;padding:13px 17px;gap:18px}.hero{min-height:500px;padding-top:45px;padding-bottom:50px}.hero h1{font-size:45px;letter-spacing:-1.5px;max-width:560px}.hero h1+.hero-cta{margin-top:135px}.hero-image img{object-position:58% center}.hero-image:after{background:linear-gradient(90deg,#050a05a8,#050a0544 60%,#050a0511)}.strip-label{font-size:9px}.brands{flex-wrap:wrap;justify-content:center;gap:18px 30px}.brands li{font-size:20px}.brands .tommy{font-size:10px}.section{padding-block:80px}.services,.work-layout,.about{gap:6vw}.section h2{font-size:40px;letter-spacing:-1.5px}.large-copy{font-size:22px}.steps h3{font-size:22px}summary{font-size:22px}summary small{margin-right:15px}.detail-body{padding-left:28px}.contact h2{font-size:75px}}
@media(max-width:700px){.site-header{height:auto;min-height:91px;flex-wrap:wrap;padding-block:22px;gap:20px}.brand{gap:15px}.brand-name{font-size:13px}.monogram{font-size:42px}.menu-toggle:not([hidden]){display:block}.site-header nav{width:100%;display:flex;flex-wrap:wrap;gap:20px;padding-bottom:8px}.site-header nav[data-collapsible="true"]:not(.is-open){display:none}.site-header nav .button{min-height:44px}.hero{padding-top:30px;min-height:590px;padding-bottom:40px}.hero .eyebrow{font-size:10px;letter-spacing:1.6px;max-width:280px}.hero h1{font-size:clamp(35px,8.7vw,57px);letter-spacing:-1.35px;line-height:1.06;max-width:540px}.desktop-break{display:none}.hero h1+.hero-cta{margin-top:auto}.hero-image img{object-position:63% center}.hero-image:after{background:linear-gradient(180deg,#081008b3 0%,#08100888 35%,#0810080d 64%,#08100830),linear-gradient(90deg,#08100866,transparent)}.button{font-size:16px;min-width:185px;min-height:54px}.experience-strip{display:block;padding-block:27px}.strip-label{border:0;padding:0;margin-bottom:22px;font-size:10px;letter-spacing:2px}.strip-label br{display:none}.strip-label br:after{content:" "}.brands{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;gap:26px 15px}.brands .tommy{display:flex;justify-content:center;font-size:8px;letter-spacing:1.3px}.brands li{font-size:20px}.brands .calvin{font-size:21px}.section{padding-block:65px}.services,.work-layout,.about{grid-template-columns:1fr;gap:32px}.section h2{font-size:42px}.section-heading>p:last-child{max-width:none}.service-list{margin-top:4px}.approach-intro{display:block}.steps{grid-template-columns:1fr;gap:30px;padding-top:5px}.steps li{display:grid;grid-template-columns:30px 1fr;column-gap:20px}.steps h3{margin:0 0 15px;max-width:none}.steps p{grid-column:2;max-width:none}.step-number{padding-top:5px}.work-layout h2{margin-bottom:0}.large-copy{font-size:23px}.about h2{margin-bottom:0}.contact h2{font-size:64px;letter-spacing:-2.8px}footer{align-items:flex-start;flex-wrap:wrap;gap:15px}.footer-brand{width:100%}footer>p{margin:12px 0}footer>a:last-child{margin-left:auto}.eyebrow{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.email-link{display:inline-block;margin:24px 0 0 28px;font-size:17px;text-underline-offset:5px}.email-link:hover{color:#3c5235}@media(max-width:700px){.email-link{display:block;margin-left:0;font-size:16px}}

.brands{flex-wrap:wrap;justify-content:space-around;row-gap:25px}.brands .australian-ethical{font-size:19px;font-weight:600;letter-spacing:-.5px}.brands .centrecom{font-size:24px;font-weight:750;letter-spacing:-1px}.brands .vaneck{font-size:26px;font-weight:600;letter-spacing:-1.5px}@media(max-width:700px){.brands .australian-ethical{font-size:12px;letter-spacing:-.4px}.brands .centrecom{font-size:19px}.brands .vaneck{font-size:21px}}

/* Audience routes retain the approved hero while making both offers explicit. */
.hero-routes{display:flex;flex-wrap:wrap;gap:14px;margin-top:clamp(120px,15.5vw,280px)}
.button-outline{background:rgba(14,22,14,.72);border-color:var(--sage);color:#fff}
.button-outline:hover{background:var(--sage);color:var(--ink)}
.role-label{font-size:18px;font-weight:700;line-height:1.4!important;margin:0 0 25px}
.role-label span{display:block;font-weight:400;color:var(--muted);font-size:13px;margin-top:4px}
.audience-track .section-heading>p:not(.eyebrow):not(.role-label){max-width:460px;font-size:18px;color:var(--muted)}
.audience-track .text-link{margin-top:8px;line-height:1.5}
.brand-track{background:#e9ede4;max-width:none;border-top:1px solid var(--line)}
.brand-track .service-list,.brand-track details{border-color:#c7d0be}
@media(min-width:1800px){.hero-routes{margin-top:240px}}
@media(max-width:1250px){.hero-routes{margin-top:13vw}}
@media(max-width:900px){.hero-routes{margin-top:135px}.hero .eyebrow{max-width:460px}.site-header nav{gap:15px}}
@media(max-width:700px){.hero-routes{margin-top:auto;width:100%;gap:10px}.hero-routes .button{min-width:0;flex:1;gap:14px;padding-inline:17px;font-size:15px}.hero .eyebrow{max-width:285px}.audience-track .section-heading>p:not(.eyebrow):not(.role-label){max-width:none}.role-label{font-size:18px;margin-bottom:23px}.brand small{letter-spacing:1.5px}.audience-track .section-heading{min-width:0}}
@media(max-width:360px){.hero-routes .button{font-size:12px;padding-inline:12px;gap:6px;white-space:nowrap}.hero-routes .button span{font-size:23px}.menu-toggle{padding-inline:9px}.brand-name{font-size:12px}.brand{gap:12px}.monogram{font-size:38px}.site-header{gap:12px}}
@media(max-width:360px){.brands{grid-template-columns:repeat(2,minmax(0,1fr))}.brands li:last-child{grid-column:1 / -1}}

/* Continuous, duplicated strip creates a seamless loop without controls. */
.brand-carousel{flex:1;min-width:0;overflow:hidden;touch-action:pan-y;user-select:none}
.brand-marquee{display:flex;width:max-content;animation:brand-drift 45s linear infinite;will-change:transform}
.brand-carousel .brands{display:flex;flex:0 0 auto;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:48px;width:max-content;margin:0;padding:8px 48px 8px 0}
.brand-carousel .brands li{flex:0 0 auto;white-space:nowrap;grid-column:auto}
.brand-carousel .brands .zhou,.brand-carousel .brands .key-nutrition{font-size:23px;font-weight:600;letter-spacing:-.6px}
@keyframes brand-drift{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(hover:hover){.brand-carousel:hover .brand-marquee{animation-play-state:paused}}
@media(max-width:700px){.experience-strip{padding-block:20px}.strip-label{margin-bottom:12px}.brand-carousel .brands{gap:36px;padding:8px 36px 8px 0;min-height:48px}.brand-carousel .brands .tommy{font-size:10px;letter-spacing:2px}.brand-carousel .brands .australian-ethical{font-size:18px}.brand-carousel .brands .centrecom{font-size:22px}.brand-carousel .brands .vaneck{font-size:24px}.brand-carousel .brands .zhou,.brand-carousel .brands .key-nutrition{font-size:21px}}
@media(prefers-reduced-motion:reduce){.brand-marquee{animation-duration:120s}}
