1<!DOCTYPE html><!-- This site was created in Webflow. https://webflow.com --><!-- Last Published: Tue Sep 22 2026 10:16:26 GMT+0000 (Coordinated Universal Time) --><html data-wf-domain="harvey-2023.webflow.io" data-wf-page="64c757b5b5a37ace0055b06b" data-wf-site="64b7752148e38bb04fb4c33a" lang="en"><head><meta charset="utf-8"/><link href="https://cdn.prod.website-files.com" rel="preconnect" crossorigin="anonymous"/><title>Contact us</title><meta content="Contact us" property="og:title"/><meta content="https://assets.website-files.com/64c727408a42b2304e0d6135/64c8fc87e7ee430115ebb2bf_becky%20and%20simon.jpeg" property="og:image"/><meta content="Contact us" name="twitter:title"/><meta content="https://assets.website-files.com/64c727408a42b2304e0d6135/64c8fc87e7ee430115ebb2bf_becky%20and%20simon.jpeg" name="twitter:image"/><meta content="width=device-width, initial-scale=1" name="viewport"/><meta content="Webflow" name="generator"/><link href="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/css/harvey-2023.webflow.shared.92d866215.min.css" rel="stylesheet" type="text/css" integrity="sha384-kthmIVYBwPInH4Zmf5pIucnvT5P+kDlVAmAh+JqgYQz8cgHFxI+dOfFuwi5JhxG2" crossorigin="anonymous"/><link href="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/css/harvey-2023.webflow.64c757b5b5a37ace0055b06b.9f5d4214f.opt.min.css" rel="stylesheet" type="text/css" integrity="sha384-n11CFPe0KNcKJOlgdYDG5I6/3P/Ylv62kgN1e+3LFqg7bx8QWPj+k8z/se1NwDmo" crossorigin="anonymous"/><link href="https://fonts.googleapis.com" rel="preconnect"/><link href="https://fonts.gstatic.com" rel="preconnect" crossorigin="anonymous"/>
1<script src="https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js" type="text/javascript"></script>
1<script type="text/javascript">WebFont.load({ google: { families: ["Montserrat:100,100italic,200,200italic,300,300italic,400,400italic,500,500italic,600,600italic,700,700italic,800,800italic,900,900italic","Lora:300,400,500,600,700"] }});</script>
1<script type="text/javascript">!function(o,c){var n=c.documentElement,t=" w-mod-";n.className+=t+"js",("ontouchstart"in o||o.DocumentTouch&&c instanceof DocumentTouch)&&(n.className+=t+"touch")}(window,document);</script>
1<link href="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/64c8bfee7aa6557bf1643564_Favicon.png" rel="shortcut icon" type="image/x-icon"/><link href="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/64c8bff40a05a8dc4ab4eca3_Webclip.png" rel="apple-touch-icon"/><!-- Block 1: ContactPage -->
2<script type="application/ld+json"> 3{ 4 "@context": "https://schema.org", 5 "@type": "ContactPage", 6 "@id": "https://www.teamharvey.co/contact-us/#contactpage", 7 "url": "https://www.teamharvey.co/contact-us", 8 "name": "Contact Harvey", 9 "description": "Get in touch with Harvey â a B Corp certified digital agency in Melbourne specialising in brand, web, ecommerce and marketing for conscious businesses.", 10 "isPartOf": { "@id": "https://www.teamharvey.co/#website" }, 11 "about": { "@id": "https://www.teamharvey.co/#organization" }, 12 "breadcrumb": { 13 "@type": "BreadcrumbList", 14 "itemListElement": [ 15 { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://www.teamharvey.co" }, 16 { "@type": "ListItem", "position": 2, "name": "Contact", "item": "https://www.teamharvey.co/contact-us" } 17 ] 18 } 19} 20</script>
20 21 22<!-- Block 2: LocalBusiness -->
23<script type="application/ld+json"> 24{ 25 "@context": "https://schema.org", 26 "@type": "LocalBusiness", 27 "@id": "https://www.teamharvey.co/#localbusiness", 28 "name": "Harvey", 29 "legalName": "Do Harvey Pty Ltd", 30 "url": "https://www.teamharvey.co", 31 "email": "[email protected]", 32 "image": "https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/6938f62e9f05f3d4bdb8ce93_Team%20harvey%202025.avif", 33 "logo": "https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/6751652ca088a217c5d2c292_Harvey%20logo%20White%20and%20yellow%20on%20transparent.avif", 34 "description": "Harvey is a B Corp certified, purpose-led digital agency in Melbourne, Australia, specialising in brand strategy, Shopify ecommerce, Webflow web development, customer research, and digital marketing for conscious businesses contributing to the UN Sustainable Development Goals.", 35 "address": { 36 "@type": "PostalAddress", 37 "streetAddress": "Level 2/696 Bourke St", 38 "addressLocality": "Melbourne", 39 "addressRegion": "VIC", 40 "postalCode": "3000", 41 "addressCountry": "AU" 42 }, 43 "geo": { 44 "@type": "GeoCoordinates", 45 "latitude": -37.8168831, 46 "longitude": 144.9534342 47 }, 48 "hasMap": "https://maps.app.goo.gl/YbFHX6uU1mDQToT39", 49 "sameAs": [ 50 "https://www.facebook.com/harveyaustralia/", 51 "https://www.instagram.com/harvey.au/", 52 "https://www.linkedin.com/company/harveyau/", 53 "https://twitter.com/Harvey1553712" 54 ], 55 "areaServed": { 56 "@type": "Country", 57 "name": "Australia" 58 }, 59 "contactPoint": { 60 "@type": "ContactPoint", 61 "contactType": "customer service", 62 "email": "[email protected]", 63 "url": "https://www.teamharvey.co/contact-us", 64 "areaServed": "AU", 65 "availableLanguage": "English" 66 } 67} 68</script>
68<script src="https://darkvisitors.com/tracker.js?project_key=f47fedb4-57f0-44e3-b21d-fafc04fba429" async type="text/plain" data-category="Personalization,Analytics,Marketing"></script>
vendor: 1 bytes, line 68
68
69<script data-category="Personalization,Analytics,Marketing">
vendor: 327 bytes, lines 69-73
69(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 70new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 71j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 72'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 73})(window,document,'script','dataLayer','
73GTM-PSL3HPS
vendor: 3 bytes, line 73
73');
73</script>
73<script src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a%2F67c7218243770a3d2c39fb1a%2F699c1cefba22cc0983722348%2Fappscript1771838703585-1.0.0.js" type="text/javascript"></script>
73<script src="https://cdn.jsdelivr.net/gh/SeattleNewMedia/ConsentBit-Public@048df66/consent.js" type="text/javascript" integrity="sha384-BzSLEHGbMrCa2MthWPcaEZoI77p2zaX8+Qk4aQDGIoQmIw6e2bUpQ4UAvMntO1Ed" crossorigin="anonymous"></script>
73</head><body><div class="page-wrapper"><div data-wf--announcement--variant="base" class="section_announcement"><div class="background-colour-yellow"><div><div class="container-large text-align-center"><a href="/impact-reports/report-6" class="padding-xsmall text-style-no-underline w-inline-block"><div>ð Impact Report #6: Growth through quality</div></a></div></div></div></div><div class="global-styles hide w-embed w-script"><style> 74 /* Make text look crisper and more legible in all browsers */ 75 body { 76 -webkit-font-smoothing: antialiased; 77 -moz-osx-font-smoothing: grayscale; 78 font-smoothing: antialiased; 79 text-rendering: optimizeLegibility; 80 } 81 82 /* Focus state style for keyboard navigation for the focusable elements */ 83 *[tabindex]:focus-visible, 84 input[type="file"]:focus-visible { 85 outline: 0.125rem solid #4d65ff; 86 outline-offset: 0.125rem; 87 } 88 89 /* Get rid of top margin on first element in any rich text element */ 90 .w-richtext > :not(div):first-child, 91 .w-richtext > div:first-child > :first-child { 92 margin-top: 0 !important; 93 } 94 95 /* Get rid of bottom margin on last element in any rich text element */ 96 .w-richtext > :last-child, 97 .w-richtext ol li:last-child, 98 .w-richtext ul li:last-child { 99 margin-bottom: 0 !important; 100 } 101 102 /* Prevent all click and hover interaction with an element */ 103 .pointer-events-off { 104 pointer-events: none; 105 } 106 107 /* Enables all click and hover interaction with an element */ 108 .pointer-events-on { 109 pointer-events: auto; 110 } 111 112 /* Create a class of .div-square which maintains a 1:1 dimension of a div */ 113 .div-square::after { 114 content: ""; 115 display: block; 116 padding-bottom: 100%; 117 } 118 119 /* Make sure containers never lose their center alignment */ 120 .container-medium, 121 .container-small, 122 .container-large { 123 margin-right: auto !important; 124 margin-left: auto !important; 125 } 126 127 /* 128Make the following elements inherit typography styles from the parent and not have hardcoded values. 129Important: You will not be able to style for example "All Links" in Designer with this CSS applied. 130Uncomment this CSS to use it in the project. Leave this message for future hand-off. 131*/ 132 /* 133a, 134.w-input, 135.w-select, 136.w-tab-link, 137.w-nav-link, 138.w-dropdown-btn, 139.w-dropdown-toggle, 140.w-dropdown-link { 141 color: inherit; 142 text-decoration: inherit; 143 font-size: inherit; 144} 145*/ 146 147 /* Apply "..." after 3 lines of text */ 148 .text-style-3lines { 149 display: -webkit-box; 150 overflow: hidden; 151 -webkit-line-clamp: 3; 152 -webkit-box-orient: vertical; 153 } 154 155 /* Apply "..." after 2 lines of text */ 156 .text-style-2lines { 157 display: -webkit-box; 158 overflow: hidden; 159 -webkit-line-clamp: 2; 160 -webkit-box-orient: vertical; 161 } 162 163 /* Adds inline flex display */ 164 .display-inlineflex { 165 display: inline-flex; 166 } 167 168 /* These classes are never overwritten */ 169 .hide { 170 display: none !important; 171 } 172 173 @media screen and (max-width: 991px) { 174 .hide, 175 .hide-tablet { 176 display: none !important; 177 } 178 } 179 @media screen and (max-width: 767px) { 180 .hide-mobile-landscape { 181 display: none !important; 182 } 183 } 184 @media screen and (max-width: 479px) { 185 .hide-mobile { 186 display: none !important; 187 } 188 } 189 190 .margin-0 { 191 margin: 0rem !important; 192 } 193 194 .padding-0 { 195 padding: 0rem !important; 196 } 197 198 .spacing-clean { 199 padding: 0rem !important; 200 margin: 0rem !important; 201 } 202 203 .margin-top { 204 margin-right: 0rem !important; 205 margin-bottom: 0rem !important; 206 margin-left: 0rem !important; 207 } 208 209 .padding-top { 210 padding-right: 0rem !important; 211 padding-bottom: 0rem !important; 212 padding-left: 0rem !important; 213 } 214 215 .margin-right { 216 margin-top: 0rem !important; 217 margin-bottom: 0rem !important; 218 margin-left: 0rem !important; 219 } 220 221 .padding-right { 222 padding-top: 0rem !important; 223 padding-bottom: 0rem !important; 224 padding-left: 0rem !important; 225 } 226 227 .margin-bottom { 228 margin-top: 0rem !important; 229 margin-right: 0rem !important; 230 margin-left: 0rem !important; 231 } 232 233 .padding-bottom { 234 padding-top: 0rem !important; 235 padding-right: 0rem !important; 236 padding-left: 0rem !important; 237 } 238 239 .margin-left { 240 margin-top: 0rem !important; 241 margin-right: 0rem !important; 242 margin-bottom: 0rem !important; 243 } 244 245 .padding-left { 246 padding-top: 0rem !important; 247 padding-right: 0rem !important; 248 padding-bottom: 0rem !important; 249 } 250 251 .margin-horizontal { 252 margin-top: 0rem !important; 253 margin-bottom: 0rem !important; 254 } 255 256 .padding-horizontal { 257 padding-top: 0rem !important; 258 padding-bottom: 0rem !important; 259 } 260 261 .margin-vertical { 262 margin-right: 0rem !important; 263 margin-left: 0rem !important; 264 } 265 266 .padding-vertical { 267 padding-right: 0rem !important; 268 padding-left: 0rem !important; 269 } 270 271 ul.breadcrumb-2 { 272 list-style-image: url("https://my-file.svg"); 273 } 274 275 :root { 276 --font-from-0: 12; 277 --font-to-0: 16; 278 --vw-from-0: calc(1 / 100); 279 --vw-to-0: calc(479 / 100); 280 --coefficient-0: calc((var(--font-to-0) - var(--font-from-0)) / (var(--vw-to-0) - var(--vw-from-0))); 281 --base-0: calc((var(--font-from-0) - var(--vw-from-0) * var(--coefficient-0)) / 16); 282 283 --font-from-1: 14; 284 --font-to-1: 16; 285 --vw-from-1: calc(479 / 100); 286 --vw-to-1: calc(767 / 100); 287 --coefficient-1: calc((var(--font-to-1) - var(--font-from-1)) / (var(--vw-to-1) - var(--vw-from-1))); 288 --base-1: calc((var(--font-from-1) - var(--vw-from-1) * var(--coefficient-1)) / 16); 289 290 --font-size-2: 0.875; 291 292 --font-from-3: 14; 293 --font-to-3: 16; 294 --vw-from-3: calc(990 / 100); 295 --vw-to-3: calc(1440 / 100); 296 --coefficient-3: calc((var(--font-to-3) - var(--font-from-3)) / (var(--vw-to-3) - var(--vw-from-3))); 297 --base-3: calc((var(--font-from-3) - var(--vw-from-3) * var(--coefficient-3)) / 16); 298 299 --font-size-4: 1; 300 301 --font-size-5: 1; 302 } 303 304 h1.text-style-underline { 305 text-underline-offset: 0.875rem; 306 text-decoration: underline 0.275rem; 307 } 308 309 html { 310 font-size: calc(var(--font-size-5) * 1rem); 311 } 312 @media screen and (max-width: 1920px) { 313 html { 314 font-size: calc(var(--font-size-4) * 1rem); 315 } 316 } 317 @media screen and (max-width: 1440px) { 318 html { 319 font-size: calc(var(--base-3) * 1rem + var(--coefficient-3) * 1vw); 320 } 321 } 322 @media screen and (max-width: 990px) { 323 html { 324 font-size: calc(var(--font-size-2) * 1rem); 325 } 326 } 327 @media screen and (max-width: 767px) { 328 html { 329 font-size: calc(var(--base-1) * 1rem + var(--coefficient-1) * 1vw); 330 } 331 } 332 @media screen and (max-width: 479px) { 333 html { 334 font-size: calc(var(--base-0) * 1rem + var(--coefficient-0) * 1vw); 335 } 336 } 337 338 ::selection { 339 background-color: #ffb200; 340 } 341 342 code::before { 343 content: ""; 344 display: inline-block; 345 width: 1.25rem; 346 height: 1.25rem; 347 float: right; 348 margin-left: 0.5rem; 349 vertical-align: middle; 350 background-size: cover; 351 background-repeat: no-repeat; 352 background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjUiIGhlaWdodD0iMjUiIHZpZXdCb3g9IjAgMCAyNSAyNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE4LjQ2NTggMTMuNVYxOS41QzE4LjQ2NTggMjAuMDMwNCAxOC4yNTUxIDIwLjUzOTEgMTcuODggMjAuOTE0MkMxNy41MDUgMjEuMjg5MyAxNi45OTYzIDIxLjUgMTYuNDY1OCAyMS41SDUuNDY1ODJDNC45MzUzOSAyMS41IDQuNDI2NjggMjEuMjg5MyA0LjA1MTYxIDIwLjkxNDJDMy42NzY1MyAyMC41MzkxIDMuNDY1ODIgMjAuMDMwNCAz
352LjQ2NTgyIDE5LjVWOC41QzMuNDY1ODIgNy45Njk1NyAzLjY3NjUzIDcuNDYwODYgNC4wNTE2MSA3LjA4NTc5QzQuNDI2NjggNi43MTA3MSA0LjkzNTM5IDYuNSA1LjQ2NTgyIDYuNUgxMS40NjU4TTE1LjQ2NTggMy41SDIxLjQ2NThNMjEuNDY1OCAzLjVWOS41TTIxLjQ2NTggMy41TDEwLjQ2NTggMTQuNSIgc3Ryb2tlPSIjQkUyMDc4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4="); 353 } 354 355 .text-rich-text.article { 356 ol { 357 list-style: none; 358 counter-reset: item; 359 padding-left: 0.5rem; 360 } 361 362 ol li { 363 counter-increment: item; 364 position: relative; 365 } 366 367 ol li::before { 368 content: counter(item); 369 background-color: var(--eee-grey); 370 border-radius: 50%; 371 width: 1.5em; 372 height: 1.5em; 373 display: inline-flex; 374 align-items: center; 375 justify-content: center; 376 margin-right: 0.5em; 377 } 378 } 379 .text-rich-text.article { 380 .no-border { 381 border: 0px !important; 382 border-radius: 0px !important; 383 } 384 .text-colour-dark-grey { 385 color: var(--dark-grey); 386 } 387 } 388</style> 389 390<!-- Table styles for richtext --> 391 392<style> 393.table-bold-text { 394 font-weight: bold; 395} 396 397.table-center-text { 398 text-align: center; 399} 400 401 .text-rich-text { 402 .table-container { 403 max-width: 90vw; 404 margin: 0 auto 40px auto; 405 display: inline-block; 406 background: white; 407 border-radius: 8px; 408 overflow-x: auto; 409 box-shadow: 0 2px 10px rgba(0, 0, 0, 0.5); 410 } 411 412 @media (max-width: 768px) { 413 .table-container { 414 overflow-x: auto; 415 -webkit-overflow-scrolling: touch; 416 } 417 } 418 table { 419 table-layout: fixed; 420 } 421 422 /* Risk/Value Matrix Table */ 423 .risk-value-table { 424 border-collapse: collapse; 425 font-size: 12px; 426 } 427 428 .risk-value-table th { 429 background-color: #f1f3f4; 430 color: #5f6368; 431 font-weight: 600; 432 padding: 16px 20px; 433 text-align: center; 434 border-bottom: 2px solid #e8eaed; 435 font-size: 13px; 436 text-transform: uppercase; 437 letter-spacing: 0.5px; 438 } 439 440 .risk-value-table td { 441 padding: 20px; 442 border-bottom: 1px solid #e8eaed; 443 border-right: 1px solid #e8eaed; 444 vertical-align: top; 445 } 446 447 .risk-value-table td:last-child { 448 border-right: none; 449 } 450 451 .risk-value-table tr:last-child td { 452 border-bottom: none; 453 } 454 455 /* AI Usage Framework Table */ 456 .framework-table { 457 border-collapse: collapse; 458 font-size: 12px; 459 } 460 461 .framework-table th { 462 background-color: #f1f3f4; 463 color: #5f6368; 464 font-weight: 600; 465 padding: 12px 16px; 466 text-align: center; 467 border: 1px solid #dadce0; 468 font-size: 13px; 469 } 470 471 .framework-table td { 472 padding: 12px; 473 border: 1px solid #dadce0; 474 vertical-align: top; 475 line-height: 1.4; 476 } 477 478 /* Usage Matrix Table */ 479 .matrix-table { 480 border-collapse: collapse; 481 font-size: 14px; 482 max-width: 600px; 483 } 484 485 .matrix-table th { 486 background-color: #f1f3f4; 487 color: #5f6368; 488 font-weight: 600; 489 padding: 12px 16px; 490 text-align: center; 491 border: 1px solid #dadce0; 492 font-size: 13px; 493 } 494 495 .matrix-table td { 496 padding: 12px 16px; 497 border: 1px solid #dadce0; 498 text-align: center; 499 vertical-align: middle; 500 } 501 502 /* Shared styles */ 503 .category { 504 font-weight: 600; 505 color: #202124; 506 margin-bottom: 8px; 507 font-size: 15px; 508 } 509 510 .tools { 511 color: #5f6368; 512 line-height: 1.6; 513 } 514 515 .tools div { 516 margin-bottom: 4px; 517 } 518 519 .tools div:last-child { 520 margin-bottom: 0; 521 } 522 523 .gray-bg { 524 background-color: #f8f9fa; 525 } 526 527 .row-header { 528 background-color: #f8f9fa; 529 font-weight: 500; 530 text-align: left; 531 } 532 533 .checkmark { 534 color: #34a853; 535 font-size: 18px; 536 font-weight: bold; 537 } 538 539 .cross { 540 color: #ea4335; 541 font-size: 18px; 542 font-weight: bold; 543 } 544 545 .warning { 546 font-size: 18px; 547 } 548 549 /* Responsive design */ 550 @media (max-width: 768px) { 551 .risk-value-table, 552 .framework-table, 553 .matrix-table { 554 font-size: 12px; 555 } 556 557 .risk-value-table th, 558 .risk-value-table td { 559 padding: 12px 16px; 560 } 561 562 .framework-table th, 563 .framework-table td, 564 .matrix-table th, 565 .matrix-table td { 566 padding: 8px 12px; 567 } 568 569 .category { 570 font-size: 14px; 571 } 572 573 .matrix-table { 574 font-size: 10px; 575 } 576 577 .matrix-table th, 578 .matrix-table td { 579 padding: 8px; 580 } 581 } 582 } 583</style> 584 585<!-- [Attributes by Finsweet] Powerful Rich Text -->
586<script defer src="https://cdn.jsdelivr.net/npm/@finsweet/attributes-richtext@1/richtext.js"></script>
586 587 588<!-- Vidstack video player --> 589 590<link rel="stylesheet" href="https://cdn.vidstack.io/player/theme.css" /> 591<link rel="stylesheet" href="https://cdn.vidstack.io/player/video.css" />
592<script src="https://cdn.vidstack.io/player" type="module"></script>
592 593 594<style> 595 media-player { 596 aspect-ratio: 16/9; 597 /*height: 100%;*/ 598 } 599 .vds-poster img { 600 object-fit: cover; 601 } 602 .vds-chapter-title{ 603 line-height: var(--_font---height--tag--video-title); 604 } 605 606 :root { 607 --video-brand: #f5f5f5; 608 --video-controls-color: #f5f5f5; 609 --video-focus-ring-color: rgb(78 156 246); 610 --video-focus-ring: 0 0 0 3px var(--media-focus-ring-color); 611 --video-font-family: sans-serif; 612 613 --video-bg: white; 614 --video-border-radius: 1rem; 615 --video-border: 0px solid rgb(255 255 255 / 0.1); 616 617 --video-fullscreen-chapter-title-font-size: var(--_font---size--tag--video-title); 618 --video-gesture-seek-width: 20%; 619 620 /* Load. */ 621 --video-load-button-size: 56px; 622 --video-load-button-border: var(--color); 623 --video-load-button-bg: var(--media-brand); 624 --video-load-button-border-radius: 100%; 625 626 --video-sm-load-button-size: 48px; 627 628 /* Buttons. */ 629 --video-sm-button-size: 32px; 630 --video-sm-play-button-size: 40px; 631 --video-sm-play-button-transform: translateY(25%); 632 --video-sm-play-button-bg: rgba(0 0 0 / 0.6); 633 634 /* Sliders. */ 635 --video-slider-thumbnail-border: 1px solid #f5f5f5; 636 --video-slider-thumbnail-border-radius: 2px; 637 --video-volume-slider-max-width: 72px; 638 639 --video-sm-slider-focus-track-height: 12px; 640 641 /* Time. */ 642 --video-time-bg: unset; 643 --video-fullscreen-time-font-size: var(--_font---size--tag--video-title); 644 645 --video-sm-time-font-size: calc(0.8 * var(--_font---size--tag--video-title)) 646 --video-sm-start-duration-bg: rgba(0 0 0 / 0.64); 647 --video-sm-start-duration-padding: 3px 6px; 648 --video-sm-start-duration-color: var(--video: controls-color); 649 650 /* Captions. */ 651 --video-captions-offset: 78px; 652 --video-captions-transition: bottom 0.15s linear; 653 654 --video-sm-captions-offset: 48px; 655 --video-lg-fullscreen-captions-offset: 54px; 656 657 --video-sm-captions-offset: 48px; 658 } 659 660/* Target all Vidstack players directly */ 661media-player { 662 pointer-events: none; 663} 664 665/* Hide all possible control elements */ 666media-player .media-controls, 667media-player[data-controls] .media-controls, 668media-player [data-media-controls], 669media-player .vds-controls { 670 display: none !important; 671 opacity: 0 !important; 672 visibility: hidden !important; 673 pointer-events: none !important; 674} 675 676/* Ensure video itself can still receive clicks if needed */ 677media-player video { 678 pointer-events: auto; 679} 680 681</style> 682
683<script> 684// Lightweight Video Component Tracker 685(function() { 686 'use strict'; 687 688 const mediaPlayer = document.querySelector('media-player'); 689 if (!mediaPlayer) return; 690 691 let isInitialized = false; 692 let isVisible = false; 693 let isPlaying = false; 694 let videoData = null; 695 696 // Send data to GTM 697 function sendEvent(eventName, data = {}) { 698 window.dataLayer = window.dataLayer || []; 699 window.dataLayer.push({ 700 event: eventName, 701 ...videoData, 702 ...data, 703 timestamp: Date.now() 704 }); 705 } 706 707 // Extract video information 708 function getVideoInfo() { 709 const titleElement = mediaPlayer.querySelector('media-title, .vds-chapter-title'); 710 const iframe = mediaPlayer.querySelector('iframe'); 711 let videoId = 'unknown'; 712 713 if (iframe && iframe.src) { 714 const urlMatch = iframe.src.match(/\/embed\/([^?]+)/); 715 videoId = urlMatch ? urlMatch[1] : 'unknown'; 716 } 717 718 return { 719 video_title: titleElement ? titleElement.textContent.trim() : 'Unknown Video', 720 video_id: videoId, 721 video_url: iframe ? iframe.src : '', 722 component_id: mediaPlayer.id || 'video-component' 723 }; 724 } 725 726 // Initialize tracking when video comes into view 727 function initializeTracking() { 728 if (isInitialized) return; 729 isInitialized = true; 730 731 videoData = getVideoInfo(); 732 733 // Send initialization event to GTM 734 sendEvent('video_component_init', { 735 video_initialized: true 736 }); 737 738 // Setup play/pause tracking 739 const observer = new MutationObserver(() => { 740 const isPaused = mediaPlayer.hasAttribute('data-paused'); 741 const isEnded = mediaPlayer.hasAttribute('data-ended'); 742 743 if (!isPaused && !isEnded && !isPlaying) { 744 isPlaying = true; 745 sendEvent('video_play_raw', { 746 action: 'play', 747 video_visible: isVisible 748 }); 749 } else if ((isPaused || isEnded) && isPlaying) { 750 isPlaying = false; 751 sendEvent('video_pause_raw', { 752 action: isEnded ? 'ended' : 'pause', 753 video_visible: isVisible 754 }); 755 } 756 }); 757 758 observer.observe(mediaPlayer, { 759 attributes: true, 760 attributeFilter: ['data-paused', 'data-ended'] 761 }); 762 763 // Send periodic updates when playing (for GTM to process) 764 setInterval(() => { 765 if (isPlaying && isVisible) { 766 const currentTimeEl = mediaPlayer.querySelector('media-time[type="current"]'); 767 const durationEl = mediaPlayer.querySelector('media-time[type="duration"]'); 768 769 if (currentTimeEl && durationEl) { 770 sendEvent('video_progress_raw', { 771 current_time_text: currentTimeEl.textContent, 772 duration_text: durationEl.textContent, 773 is_playing: true, 774 is_visible: true 775 }); 776 } 777 } 778 }, 2000); // Every 2 seconds 779 } 780 781 // Setup visibility observer - only initialize when video comes into view 782 const visibilityObserver = new IntersectionObserver((entries) => { 783 const entry = entries[0]; 784 const wasVisible = isVisible; 785 isVisible = entry.isIntersecting && entry.intersectionRatio >= 0.5; 786 787 // Initialize tracking when video first becomes visible 788 if (isVisible && !isInitialized) { 789 initializeTracking(); 790 } 791 792 // Send visibility changes 793 if (isInitialized && wasVisible !== isVisible) { 794 sendEvent('video_visibility_raw', { 795 video_visible: isVisible, 796 intersection_ratio: Math.round(entry.intersectionRatio * 100) 797 }); 798 } 799 }, {
800 threshold: [0, 0.5, 1] 801 }); 802 803 // Start observing visibility 804 visibilityObserver.observe(mediaPlayer); 805 806 // Cleanup on page unload 807 window.addEventListener('beforeunload', () => { 808 if (isInitialized) { 809 sendEvent('video_component_cleanup', { 810 final_state: isPlaying ? 'playing' : 'paused', 811 was_visible: isVisible 812 }); 813 } 814 }); 815 816})(); 817</script>
817</div><header class="section_header_secondary"><div data-wf--nav--variant="base" class="navbar"><div data-animation="default" data-collapse="medium" data-duration="400" data-easing="ease" data-easing2="ease" role="banner" class="navbar-2 w-nav"><div class="padding-global"><div class="container-large"><a href="/" class="navbar_logo w-nav-brand"><img src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/64c7a305f6808f545dc97266_Logo.webp" loading="eager" alt="" class="logo"/><img src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/64c854e4e6ecef4a91e14d4d_Harvey%20Logo.webp" loading="lazy" alt="" class="logo on-yellow"/><img src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/6751652ca088a217c5d2c292_Harvey%20logo%20White%20and%20yellow%20on%20transparent.avif" loading="lazy" alt="" class="logo on-dark"/></a><nav role="navigation" class="nav-menu w-nav-menu"><a href="/our-work" class="navbar_button w-inline-block"><p class="text-size-medium">Our Work</p></a><a href="/impact-reports" class="navbar_button w-inline-block"><p class="text-size-medium">Impact Reports</p></a><a href="/team" class="navbar_button w-inline-block"><p class="text-size-medium">Team</p></a><a href="/stories" class="navbar_button w-inline-block"><p class="text-size-medium">Stories</p></a><a href="/work-at-harvey" class="navbar_button w-inline-block"><p class="text-size-medium">Careers</p></a><a href="/contact-us" aria-current="page" class="button is-dark-grey w-button w--current">Get in touch</a></nav><div class="menu-button w-nav-button"><div class="icon-2 w-icon-nav-menu"></div></div></div></div></div></div><div class="padding-section-medium"><div class="padding-global"><div class="container-large"><div class="grid_col-2"><div id="w-node-ab4e25c4-f858-494a-4bce-caac299a61a1-0055b06b"><h1>Contact</h1><p class="spacer-medium">Need help to grow your impact? Reach out and speak with our team.</p></div><div class="w-widget w-widget-map" data-widget-style="roadmap" data-widget-latlng="-37.816788,144.9541364" aria-label="Harvey, Hub Southern Cross" data-enable-scroll="true" role="region" title="Harvey, Hub Southern Cross" data-enable-touch="true" data-widget-zoom="12" id="w-node-fec9335a-7f8e-69f5-34cf-8b2416a98fcb-0055b06b" data-widget-tooltip="Harvey, Hub Southern Cross"></div></div></div></div></div></header><main class="main-wrapper"><div id="contact" class="section_lead-form"><div class="padding-section-medium"><div class="padding-global"><div class="container-large"><div class="grid_col-2"><div id="w-node-_7620a7fc-faf1-4202-caf3-0d35f9493df8-f9493df7" class="line-top-dark-grey"><p class="heading-style-h1">Say hi ð</p><p class="heading-style-h1 spacer-small">We want to hear all about the things you're doing.</p><div class="spacer-huge"></div></div><div id="w-node-_7620a7fc-faf1-4202-caf3-0d35f9493dfe-f9493df7"><div class="w-embed w-script">
817<script charset="utf-8" type="text/javascript" src="//js.hsforms.net/forms/embed/v2.js"></script>
vendor: 1 bytes, line 817
817
818<script> 819 hbspt.forms.create({ 820 region: "na1", 821 portalId: "5110191", 822 formId: "74aa5045-4a3d-4ca8-b17c-c2bb87ec6fec" 823 }); 824</script>
824</div></div></div></div></div></div></div></main><footer id="consentbit-container"><div id="consent-banner" data-animation="fade" data-cookie-banner="false" data-site-info="64b7752148e38bb04fb4c33a" data-all-banners="false" class="consentbit-gdpr_banner_div"><div class="consentbit-innerdiv"><h2 class="consentbit-banner_headings">Cookie Settings</h2><p class="consentbit-gdpr_banner_text">We use cookies to provide you with the best possible experience. They also allow us to analyze user behavior in order to constantly improve the website for you. </p><div class="consentbit-banner_button_container"><a id="preferences-btn" href="#" class="consentbit-banner_button_preference w-button">Preference</a><a id="decline-btn" href="#" class="consentbit-banner_button_decline w-button">Reject</a><a id="accept-btn" href="#" class="consentbit-banner_accept w-button">Accept</a></div></div></div><div class="padding-section-medium"><div class="padding-global"><div class="container-large"><div class="footer_site-map"><div><div class="grid_col-4"><div id="w-node-_10149062-a197-3a56-d1c6-15acd5d66342-63688684" class="footer_col"><a href="/contact-us" aria-current="page" class="footer_link w--current">Contact us</a><div class="footer_link"><a href="https://www.facebook.com/harveyaustralia/" target="_blank" class="footer-social-link-three w-inline-block"><img src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/64f9097018a099ba4390364f_Facebook%20Icon.avif" loading="lazy" width="24" alt="" class="image"/></a><a href="https://www.instagram.com/harvey.au/" target="_blank" class="footer-social-link-three w-inline-block"><img src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/64f90970ca6e2359d32538e0_Instagram%20icon.avif" loading="lazy" width="24" alt=""/></a><a href="https://www.linkedin.com/company/harveyau/" target="_blank" class="footer-social-link-three w-inline-block"><img src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/64f909701d34e78a32f60330_LinkedIn%20Icon.avif" loading="lazy" width="24" height="Auto" alt=""/></a><a href="https://twitter.com/Harvey1553712" target="_blank" class="footer-social-link-three w-inline-block"><img src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/65fe0462750a56257183c2ed_X%20Twitter%20Vector%20Icon.avif" loading="lazy" width="24" height="Auto" alt=""/></a></div><a href="https://www.goodnative.co" target="_blank" class="footer_link">Good Native Apps</a><div class="spacer-medium"></div></div><div id="w-node-_28264d0e-5f19-488e-fd03-0d316521bee9-63688684" class="footer_col"><a href="/stories" class="footer_link">Latest updates</a><a href="/topic/our-learning-journey" class="footer_link">Resources & learning</a><a href="/our-work" class="footer_link">Our work</a><a href="/impact-reports" class="footer_link">Impact reports</a><a href="/topic/client-stories" class="footer_link">Client stories</a></div><div id="w-node-_6ea956ea-e46d-85a7-5bb3-721896a422ef-63688684" class="footer_col"><a href="/manifesto" class="footer_link">Manifesto</a><a href="/team" class="footer_link">Team</a><a href="/polices-and-procedures/code-of-ethics" class="footer_link footer_link-spacer">Code of Ethics</a><a href="/policies-and-procedures" class="footer_link">Policies & Procedures</a><a href="/polices-and-procedures/privacy-policy-t-cs" class="footer_link">Privacy Policy</a></div><div id="w-node-_4f65c567-8cba-f687-aa38-c814b80a633d-63688684" class="footer_col"><div class="space-between"><a href="https://www.bcorporation.net/en-us/find-a-b-corp/company/harvey/" target="_blank" class="w-inline-block"><img src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/64c7af7f537f6929b28e25b7_B%20Corp%20Logo.webp" loading="lazy" width="63" alt="B Corporation logo "Certified B Corporate""/></a><a href="https://www.socialtraders.com.au/" target="_blank" class="w-inline-block"><img src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/69768f4bf3df77c1229fd735_SocialTraders_CertificationLogo_Solid_White_RGB%201.svg" loading="lazy" width="63" alt=""/></a></div></div></div></div></div><div class="footer_divider"></div><div class="footer_acknowledgement"><div class="footer_block-1 max-width-medium"><div>We acknowledge Aboriginal Traditional Owners of Country throughout Australia and pay respect to their cultures and Elders past and present.</div></div><div class="footer_block-1"><img src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/64c72338339c9f8e9865085f_Aboriginal%20Flag.webp" loading="lazy" width="48" alt="" class="image_flag"/><img src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/64c72337bf2156a87d40e447_Torres%20straight%20islands%20flag.webp" loading="lazy" width="48" alt="" class="image_flag"/></div></div><div class="footer_divider"></div><div>Owned by Rebecca (50%) and Simon (50%) Smallchua and Rebecca is the sole director.</div><div class="spacer-medium"></div><div class="footer_bottom"><div class="footer_block-1"><a href="/contact-us" aria-current="page" class="w-inline-block w--current"><div>Level 2/696 Bourke St, Melbourne VIC 3000</div></a></div><div class="footer-copyright">⸠Do Harvey Pty Ltd 2026</div></div></div></div></div><div id="main-banner" data-animation="fade" data-cookie-banner="false" class="consentbit-preference"><div id="consentbit-preference_div" class="consentbit-preference_div"><div class="consentheadingclosewrapper"><h4 class="consebit-prefrence-heading">Cookie Preferences</h4></div><p class="consentbit-prefrence_text">By clicking, you agree to store cookies on your device to enhance navigation, analyze usage, and support marketing. </p><div class="consentbit-prefrence_block"><div class="w-form"><form id="email-form" name="email-form" data-name="Email Form" method="get" data-wf-page-id="64c757b5b5a37ace0055b06b" data-wf-element-id="32fb9174-82bb-1559-efb4-8361aacc95e6" data-turnstile-sitekey="0x4AAAAAAAQTptj2So4dx43e"><div><div class="consentbit-prefrence_toggle"><p class="consentbit-button-preference">Essential</p><label id="necessary-checkbox" customtoggle="false" class="w-checkbox consentbit-toggle"><input type="checkbox" id="checkbox" name="checkbox" data-name="Checkbox" data-consent-id="necessary-checkbox" class="w-checkbox-input"/><span class="w-form-label" for="checkbox"></span></label></div><p class="consentbit-prefrence_text">Essential cookies enable core site functions like security and accessibility. They don't store personal data and cant be disabled.</p></div><div><div class="consentbit-prefrence_toggle"><p class="consentbit-button-preference">Analytics</p><label id="analytics-checkbox" customtoggle="false" class="w-checkbox consentbit-toggle"><input type="checkbox" id="checkbox-2" name="checkbox-2" data-name="Checkbox 2" data-consent-id="analytics-checkbox" class="w-checkbox-input"/><span class="w-form-label" for="checkbox-2"></span></label></div><p class="consentbit-prefrence_text">These cookies collect anonymous data to help us improve website functionality and enhance user experience.</p></div><div><div class="consentbit-prefrence_toggle"><p class="consentbit-button-preference">Marketing</p><label id="marketing-checkbox" customtoggle="false" class="w-checkbox consentbit-toggle"><input type="checkbox" id="checkbox-3" name="checkbox-3" data-name="Checkbox 3" data-consent-id="marketing-checkbox" class="w-checkbox-input"/><span class="w-form-label" for="checkbox-3"></span></label></div><p class="consentbit-prefrence_text">These cookies track users across websites to deliver relevant ads and may process personal data, requiring explicit consent.</p></div><div><div class="consentbit-prefrence_toggle"><p class="consentbit-button-preference">Preferences</p><label id="personalization-checkbox" customtoggle="false" class="w-checkbox consentbit-toggle"><input type="checkbox" id="checkbox-4" name="checkbox-4" data-name="Checkbox 4" data-consent-id="personalization-checkbox" class="w-checkbox-input"/><span class="w-form-label" for="checkbox-4"></span></label></div><p class="consentbit-prefrence_text">These cookies remember settings like language or region and store display preferences to offer a more personalized, seamless experience.</p></div></form><div class="w-form-done"><div>Thank you! Your submission has been received!</div></div><div class="w-form-fail"><div>Oops! Something went wrong while submitting the form.</div></div></div></div><div class="consentbit-prefrence-container"><a id="save-preferences-btn" href="#" class="consebit-prefrence-accept w-button">Save Preference</a><a id="cancel-btn" href="#" class="consentbit-prefrence-decline w-button">Reject</a></div><div class="consentbrandwrapper"><a href="https://www.consentbit.com/" target="_blank" class="consentbrandlink w-inline-block"><img src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/6994e3316321a846060fb39f_consent-brand-000000.svg" loading="lazy" alt="" class="consentbrandimage"/></a></div></div></div><div id="toggle-consent-btn" scroll-control="true" class="consentbit-change-preference"><img src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/6994e329684cd013bc01821e_consent-icon.svg" loading="lazy" data-consent-toggle="true" alt="" class="consenttoggleicon"/></div></footer></div>
824<script src="https://d3e54v103j8qbb.cloudfront.net/js/jquery-3.5.1.min.dc5e7f18c8.js?site=64b7752148e38bb04fb4c33a" type="text/javascript" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
824<script src="https://cdn.prod.website-files.com/64b7752148e38bb04fb4c33a/js/webflow.442096a5.b37dc8d32e7babbd.js" type="text/javascript" integrity="sha384-2k+hQNUv/BsDq8R4ED+33OJnpUaeY3m9Rogt3WykvBDfQoA0zFTX398mAhmx9dic" crossorigin="anonymous"></script>
824<!-- Google Tag Manager (noscript) -->
vendor: 68 bytes, lines 824-825
824 825<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
825GTM-PSL3HPS
vendor: 83 bytes, lines 825-826
825" 826height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
827<!-- End Google Tag Manager (noscript) -->
827<script src="https://hubspotonwebflow.com/assets/js/form-124.js" type="text/javascript" integrity="sha384-bjyNIOqAKScdeQ3THsDZLGagNN56B4X2Auu9YZIGu+tA/PlggMk4jbWruG/P6zYj" crossorigin="anonymous"></script>
827</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.