( ! ) Deprecated: Creation of dynamic property PostTypes\PostType::$save is deprecated in /srv/www/louvreclad/current/web/app/plugins/types-main/inc/types/postType.php on line 27
Call Stack
#TimeMemoryFunctionLocation
10.0000463432{main}( ).../index.php:0
20.0000463784require( '/srv/www/louvreclad/current/web/wp/wp-blog-header.php ).../index.php:3
30.0001464424require_once( '/srv/www/louvreclad/current/web/wp/wp-load.php ).../wp-blog-header.php:13
40.0001464856require_once( '/srv/www/louvreclad/current/web/wp-config.php ).../wp-load.php:55
50.0044631104require_once( '/srv/www/louvreclad/current/web/wp/wp-settings.php ).../wp-config.php:9
60.11836131480do_action( $hook_name = 'plugins_loaded' ).../wp-settings.php:555
70.11836131696WP_Hook->do_action( $args = [0 => ''] ).../plugin.php:517
80.11836131696WP_Hook->apply_filters( $value = '', $args = [0 => ''] ).../class-wp-hook.php:348
90.14606941296{closure:/srv/www/louvreclad/current/web/app/plugins/types-main/inc/init.php:23-25}( '' ).../class-wp-hook.php:324
100.14606941408MBC\inc\types\types::init( ).../init.php:24
110.14606941776MBC\inc\types\Load::directory( ).../init.php:54
120.14616942648MBC\inc\types\PostType::load( ).../load.php:15

( ! ) Deprecated: Creation of dynamic property PostTypes\PostType::$save is deprecated in /srv/www/louvreclad/current/web/app/plugins/types-main/inc/types/postType.php on line 27
Call Stack
#TimeMemoryFunctionLocation
10.0000463432{main}( ).../index.php:0
20.0000463784require( '/srv/www/louvreclad/current/web/wp/wp-blog-header.php ).../index.php:3
30.0001464424require_once( '/srv/www/louvreclad/current/web/wp/wp-load.php ).../wp-blog-header.php:13
40.0001464856require_once( '/srv/www/louvreclad/current/web/wp-config.php ).../wp-load.php:55
50.0044631104require_once( '/srv/www/louvreclad/current/web/wp/wp-settings.php ).../wp-config.php:9
60.11836131480do_action( $hook_name = 'plugins_loaded' ).../wp-settings.php:555
70.11836131696WP_Hook->do_action( $args = [0 => ''] ).../plugin.php:517
80.11836131696WP_Hook->apply_filters( $value = '', $args = [0 => ''] ).../class-wp-hook.php:348
90.14606941296{closure:/srv/www/louvreclad/current/web/app/plugins/types-main/inc/init.php:23-25}( '' ).../class-wp-hook.php:324
100.14606941408MBC\inc\types\types::init( ).../init.php:24
110.14606941776MBC\inc\types\Load::directory( ).../init.php:54
120.14656974176MBC\inc\types\PostType::load( ).../load.php:15

( ! ) Deprecated: Creation of dynamic property PostTypes\PostType::$save is deprecated in /srv/www/louvreclad/current/web/app/plugins/types-main/inc/types/postType.php on line 27
Call Stack
#TimeMemoryFunctionLocation
10.0000463432{main}( ).../index.php:0
20.0000463784require( '/srv/www/louvreclad/current/web/wp/wp-blog-header.php ).../index.php:3
30.0001464424require_once( '/srv/www/louvreclad/current/web/wp/wp-load.php ).../wp-blog-header.php:13
40.0001464856require_once( '/srv/www/louvreclad/current/web/wp-config.php ).../wp-load.php:55
50.0044631104require_once( '/srv/www/louvreclad/current/web/wp/wp-settings.php ).../wp-config.php:9
60.11836131480do_action( $hook_name = 'plugins_loaded' ).../wp-settings.php:555
70.11836131696WP_Hook->do_action( $args = [0 => ''] ).../plugin.php:517
80.11836131696WP_Hook->apply_filters( $value = '', $args = [0 => ''] ).../class-wp-hook.php:348
90.14606941296{closure:/srv/www/louvreclad/current/web/app/plugins/types-main/inc/init.php:23-25}( '' ).../class-wp-hook.php:324
100.14606941408MBC\inc\types\types::init( ).../init.php:24
110.14606941776MBC\inc\types\Load::directory( ).../init.php:54
120.14717027616MBC\inc\types\PostType::load( ).../load.php:15

( ! ) Deprecated: Creation of dynamic property PostTypes\PostType::$save is deprecated in /srv/www/louvreclad/current/web/app/plugins/types-main/inc/types/postType.php on line 27
Call Stack
#TimeMemoryFunctionLocation
10.0000463432{main}( ).../index.php:0
20.0000463784require( '/srv/www/louvreclad/current/web/wp/wp-blog-header.php ).../index.php:3
30.0001464424require_once( '/srv/www/louvreclad/current/web/wp/wp-load.php ).../wp-blog-header.php:13
40.0001464856require_once( '/srv/www/louvreclad/current/web/wp-config.php ).../wp-load.php:55
50.0044631104require_once( '/srv/www/louvreclad/current/web/wp/wp-settings.php ).../wp-config.php:9
60.11836131480do_action( $hook_name = 'plugins_loaded' ).../wp-settings.php:555
70.11836131696WP_Hook->do_action( $args = [0 => ''] ).../plugin.php:517
80.11836131696WP_Hook->apply_filters( $value = '', $args = [0 => ''] ).../class-wp-hook.php:348
90.14606941296{closure:/srv/www/louvreclad/current/web/app/plugins/types-main/inc/init.php:23-25}( '' ).../class-wp-hook.php:324
100.14606941408MBC\inc\types\types::init( ).../init.php:24
110.14606941776MBC\inc\types\Load::directory( ).../init.php:54
120.14757037568MBC\inc\types\PostType::load( ).../load.php:15

( ! ) Deprecated: Creation of dynamic property PostTypes\PostType::$save is deprecated in /srv/www/louvreclad/current/web/app/plugins/types-main/inc/types/postType.php on line 27
Call Stack
#TimeMemoryFunctionLocation
10.0000463432{main}( ).../index.php:0
20.0000463784require( '/srv/www/louvreclad/current/web/wp/wp-blog-header.php ).../index.php:3
30.0001464424require_once( '/srv/www/louvreclad/current/web/wp/wp-load.php ).../wp-blog-header.php:13
40.0001464856require_once( '/srv/www/louvreclad/current/web/wp-config.php ).../wp-load.php:55
50.0044631104require_once( '/srv/www/louvreclad/current/web/wp/wp-settings.php ).../wp-config.php:9
60.11836131480do_action( $hook_name = 'plugins_loaded' ).../wp-settings.php:555
70.11836131696WP_Hook->do_action( $args = [0 => ''] ).../plugin.php:517
80.11836131696WP_Hook->apply_filters( $value = '', $args = [0 => ''] ).../class-wp-hook.php:348
90.14606941296{closure:/srv/www/louvreclad/current/web/app/plugins/types-main/inc/init.php:23-25}( '' ).../class-wp-hook.php:324
100.14606941408MBC\inc\types\types::init( ).../init.php:24
110.14606941776MBC\inc\types\Load::directory( ).../init.php:54
120.14797066640MBC\inc\types\PostType::load( ).../load.php:15

( ! ) Deprecated: Creation of dynamic property PostTypes\PostType::$save is deprecated in /srv/www/louvreclad/current/web/app/plugins/types-main/inc/types/postType.php on line 27
Call Stack
#TimeMemoryFunctionLocation
10.0000463432{main}( ).../index.php:0
20.0000463784require( '/srv/www/louvreclad/current/web/wp/wp-blog-header.php ).../index.php:3
30.0001464424require_once( '/srv/www/louvreclad/current/web/wp/wp-load.php ).../wp-blog-header.php:13
40.0001464856require_once( '/srv/www/louvreclad/current/web/wp-config.php ).../wp-load.php:55
50.0044631104require_once( '/srv/www/louvreclad/current/web/wp/wp-settings.php ).../wp-config.php:9
60.11836131480do_action( $hook_name = 'plugins_loaded' ).../wp-settings.php:555
70.11836131696WP_Hook->do_action( $args = [0 => ''] ).../plugin.php:517
80.11836131696WP_Hook->apply_filters( $value = '', $args = [0 => ''] ).../class-wp-hook.php:348
90.14606941296{closure:/srv/www/louvreclad/current/web/app/plugins/types-main/inc/init.php:23-25}( '' ).../class-wp-hook.php:324
100.14606941408MBC\inc\types\types::init( ).../init.php:24
110.14606941776MBC\inc\types\Load::directory( ).../init.php:54
120.14837095864MBC\inc\types\PostType::load( ).../load.php:15

( ! ) Warning: Cannot modify header information - headers already sent by (output started at /srv/www/louvreclad/current/web/app/plugins/types-main/inc/types/postType.php:27) in /srv/www/louvreclad/current/web/app/themes/mage-child__louvreclad/functions.php on line 23
Call Stack
#TimeMemoryFunctionLocation
10.0000463432{main}( ).../index.php:0
20.0000463784require( '/srv/www/louvreclad/current/web/wp/wp-blog-header.php ).../index.php:3
30.0001464424require_once( '/srv/www/louvreclad/current/web/wp/wp-load.php ).../wp-blog-header.php:13
40.0001464856require_once( '/srv/www/louvreclad/current/web/wp-config.php ).../wp-load.php:55
50.0044631104require_once( '/srv/www/louvreclad/current/web/wp/wp-settings.php ).../wp-config.php:9
60.18038204040do_action( $hook_name = 'init' ).../wp-settings.php:700
70.18038204256WP_Hook->do_action( $args = [0 => ''] ).../plugin.php:517
80.18038204256WP_Hook->apply_filters( $value = '', $args = [0 => ''] ).../class-wp-hook.php:348
90.20218582056{closure:/srv/www/louvreclad/current/web/app/themes/mage-child__louvreclad/functions.php:16-48}( '' ).../class-wp-hook.php:324
100.20218582184setcookie( $name = 'wordpress_no_cache', $value = '1', $expires_or_options = 2094878626, $path = '/', $domain = '', $secure = TRUE, $httponly = TRUE ).../functions.php:23

( ! ) Notice: Accessing static property PerformanceLouvresSeriesHandler::$use_cache_ as non static in /srv/www/louvreclad/current/web/app/themes/mage-child__louvreclad/resources/lib/performance-louvres.php on line 260
Call Stack
#TimeMemoryFunctionLocation
10.0000463432{main}( ).../index.php:0
20.0000463784require( '/srv/www/louvreclad/current/web/wp/wp-blog-header.php ).../index.php:3
30.0001464424require_once( '/srv/www/louvreclad/current/web/wp/wp-load.php ).../wp-blog-header.php:13
40.0001464856require_once( '/srv/www/louvreclad/current/web/wp-config.php ).../wp-load.php:55
50.0044631104require_once( '/srv/www/louvreclad/current/web/wp/wp-settings.php ).../wp-config.php:9
60.18038204040do_action( $hook_name = 'init' ).../wp-settings.php:700
70.18038204256WP_Hook->do_action( $args = [0 => ''] ).../plugin.php:517
80.18038204256WP_Hook->apply_filters( $value = '', $args = [0 => ''] ).../class-wp-hook.php:348
90.298514227232ACF->init( '' ).../class-wp-hook.php:324
100.305515195208do_action( $hook_name = 'acf/include_fields', ...$arg = variadic(5) ).../acf.php:379
110.305515195424WP_Hook->do_action( $args = [0 => 5] ).../plugin.php:517
120.305515195424WP_Hook->apply_filters( $value = '', $args = [0 => 5] ).../class-wp-hook.php:348
130.305715201472Calculator_CPT->register_calculator_acf_fields( 5 ).../class-wp-hook.php:324
140.305715202544Calculator_CPT->get_series_choices( ).../calculator-cpt.php:158
150.305715202672PerformanceLouvresSeriesHandler->getCalculatorSeriesPostsWithCategories( $specific_post_id = ??? ).../calculator-cpt.php:401
160.305715202672PerformanceLouvresSeriesHandler->getSeriesPostsWithCategories( $specific_post_id = NULL, $calculator_only = TRUE ).../performance-louvres.php:518

( ! ) Warning: Undefined property: PerformanceLouvresSeriesHandler::$use_cache_ in /srv/www/louvreclad/current/web/app/themes/mage-child__louvreclad/resources/lib/performance-louvres.php on line 260
Call Stack
#TimeMemoryFunctionLocation
10.0000463432{main}( ).../index.php:0
20.0000463784require( '/srv/www/louvreclad/current/web/wp/wp-blog-header.php ).../index.php:3
30.0001464424require_once( '/srv/www/louvreclad/current/web/wp/wp-load.php ).../wp-blog-header.php:13
40.0001464856require_once( '/srv/www/louvreclad/current/web/wp-config.php ).../wp-load.php:55
50.0044631104require_once( '/srv/www/louvreclad/current/web/wp/wp-settings.php ).../wp-config.php:9
60.18038204040do_action( $hook_name = 'init' ).../wp-settings.php:700
70.18038204256WP_Hook->do_action( $args = [0 => ''] ).../plugin.php:517
80.18038204256WP_Hook->apply_filters( $value = '', $args = [0 => ''] ).../class-wp-hook.php:348
90.298514227232ACF->init( '' ).../class-wp-hook.php:324
100.305515195208do_action( $hook_name = 'acf/include_fields', ...$arg = variadic(5) ).../acf.php:379
110.305515195424WP_Hook->do_action( $args = [0 => 5] ).../plugin.php:517
120.305515195424WP_Hook->apply_filters( $value = '', $args = [0 => 5] ).../class-wp-hook.php:348
130.305715201472Calculator_CPT->register_calculator_acf_fields( 5 ).../class-wp-hook.php:324
140.305715202544Calculator_CPT->get_series_choices( ).../calculator-cpt.php:158
150.305715202672PerformanceLouvresSeriesHandler->getCalculatorSeriesPostsWithCategories( $specific_post_id = ??? ).../calculator-cpt.php:401
160.305715202672PerformanceLouvresSeriesHandler->getSeriesPostsWithCategories( $specific_post_id = NULL, $calculator_only = TRUE ).../performance-louvres.php:518

( ! ) Warning: session_start(): Session cannot be started after headers have already been sent in /srv/www/louvreclad/current/web/app/plugins/better-gc/lib/gatekeeper.php on line 69
Call Stack
#TimeMemoryFunctionLocation
10.0000463432{main}( ).../index.php:0
20.0000463784require( '/srv/www/louvreclad/current/web/wp/wp-blog-header.php ).../index.php:3
30.0001464424require_once( '/srv/www/louvreclad/current/web/wp/wp-load.php ).../wp-blog-header.php:13
40.0001464856require_once( '/srv/www/louvreclad/current/web/wp-config.php ).../wp-load.php:55
50.0044631104require_once( '/srv/www/louvreclad/current/web/wp/wp-settings.php ).../wp-config.php:9
60.18038204040do_action( $hook_name = 'init' ).../wp-settings.php:700
70.18038204256WP_Hook->do_action( $args = [0 => ''] ).../plugin.php:517
80.18038204256WP_Hook->apply_filters( $value = '', $args = [0 => ''] ).../class-wp-hook.php:348
90.325216165144Better_GC_Gatekeeper->maybe_start_session( '' ).../class-wp-hook.php:324
100.325216165144session_start( ).../gatekeeper.php:69

( ! ) Warning: Cannot modify header information - headers already sent by (output started at /srv/www/louvreclad/current/web/app/plugins/types-main/inc/types/postType.php:27) in /srv/www/louvreclad/current/web/app/themes/mage-child__louvreclad/resources/lib/login-redirect.php on line 38
Call Stack
#TimeMemoryFunctionLocation
10.0000463432{main}( ).../index.php:0
20.0000463784require( '/srv/www/louvreclad/current/web/wp/wp-blog-header.php ).../index.php:3
30.441421700136require_once( '/srv/www/louvreclad/current/web/wp/wp-includes/template-loader.php ).../wp-blog-header.php:19
40.441421700136do_action( $hook_name = 'template_redirect' ).../template-loader.php:13
50.441421700352WP_Hook->do_action( $args = [0 => ''] ).../plugin.php:517
60.441421700352WP_Hook->apply_filters( $value = '', $args = [0 => ''] ).../class-wp-hook.php:348
70.443721702936User_Redirect->set_cookie_for_logged_out_users( '' ).../class-wp-hook.php:324
80.443721703096setcookie( $name = 'redirect_after_login', $value = 'https://louvreclad.victor.nichestudio.biz/insights/how-collaboration-brought-sydney-metros-waterloo-station-to-life', $expires_or_options = 1779522227, $path = '/', $domain = '', $secure = TRUE ).../login-redirect.php:38
Engineering the Invisible: How Collaboration Brought Sydney Metro’s Waterloo Station to Life

Engineering the Invisible: How Collaboration Brought Sydney Metro’s Waterloo Station to Life

Shaping the Future of Transport

Sydney Metro’s Waterloo Station is a masterpiece in collaboration, systems integration, and design resilience. Danielle Kwik, WSP’s Associate Director and Transport Sector Lead, joined us on Inside Out, the Louvreclad podcast, to unpack the five-year journey that made it all possible.

6 Star Green Star – Waterloo Station redefines collaboration and performance in transport design.

Balancing Design and Performance

“There’s often competing interests,” Danielle explained. “You’ve got an architectural finish that the architect wants to achieve, and you have performance requirements that our systems are required to meet.” She recalled the technical tension around louvre selection, and how the team pushed to meet airflow and pressure drop standards without compromising design. “Ultimately, I think we end up with a good outcome. We’re both pushing each other to get something, meet somewhere in the middle.”

That balance helped the station achieve a 6 Star Green Star As Built rating—an accolade Danielle doesn’t take lightly. “It is really not easy,” she said. “The systems were as efficient as we had designed them… the installed performance turned out really well.”

Bringing Waterloo to Life

It wasn’t just about technical specs. Danielle described the project’s visual and urban impact—how the station reflects Waterloo’s community identity through its colour palette, public art, and integration with surrounding developments. “The customer experience is front and centre of Sydney Metro,” she added, noting that natural ventilation, subtle transitions into conditioned spaces, and even CFD modelling were used to ensure seamless passenger comfort.

Built Together

Behind the scenes, Waterloo’s success was forged in cross-disciplinary collaboration—with designers, contractors, suppliers, and specialists like Louvreclad contributing to a shared vision. “I really enjoy working with other people,” Danielle reflected. “Everybody’s important and plays a part in the delivery of these projects.”

Setting a New Benchmark

It’s no accident this project became a benchmark. From redesigning chilled water systems to managing complex stakeholder relationships, Danielle has shaped what it means to lead with both capability and care. “You do develop very strong relationships with those that you work with on the project and form a very close network… which I think is great moving forward.”

At Louvreclad, we believe collaboration is what transforms good into iconic. Danielle’s story is proof that when teams dig deep to align design, engineering and sustainability, the results speak for themselves.

Want to hear more?
Listen to Danielle’s full episode on Inside Out. Available now on Spotify, Apple Podcasts, and on our Resources Hub.