{"id":70859,"date":"2025-09-12T13:44:14","date_gmt":"2025-09-12T10:44:14","guid":{"rendered":"https:\/\/www.sweco.fi\/?post_type=showroom_cpt&#038;p=70859"},"modified":"2025-10-23T15:15:27","modified_gmt":"2025-10-23T12:15:27","slug":"zoning-change-for-oritkari-harbour","status":"publish","type":"showroom_cpt","link":"https:\/\/www.sweco.fi\/en\/projects\/zoning-change-for-oritkari-harbour\/","title":{"rendered":"Re-zoning for Port of Oulu"},"content":{"rendered":"<section class=\"block hero \" >\n    <img width=\"1575\" height=\"750\" src=\"https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan-2.jpg\" class=\"hero__bg-img\" alt=\"Aerial view of an industrial port with storage tanks, warehouses, and docks near a bay.\" fetchpriority=\"high\" decoding=\"async\" sizes=\"(max-width: 767px) 1080px, 1920px\" srcset=\"https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan-2.jpg 1575w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan-2-200x95.jpg 200w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan-2-768x366.jpg 768w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan-2-1536x731.jpg 1536w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan-2-520x248.jpg 520w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan-2-800x381.jpg 800w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan-2-630x300.jpg 630w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan-2-945x450.jpg 945w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan-2-652x310.jpg 652w\" \/>        \n\t        <div class=\"block__inner hero__blurbs\" data-amount=\"1\">\n\t\t\t                <a href=\"https:\/\/www.sweco.fi\/en\/services\/architecture\/land-use-and-zoning\/\" target=\"\"\n                   class=\"col--12\">\n                <span>\n                    \t                Land use                     <span class=\"last\">\n                        planning                        <i class=\"icon icon-arrow-right\"><\/i>\n                    <\/span>\n                <\/span>\n                <\/a>\n\t\t\t        <\/div>\n\t<\/section>\n\n\n\n\n<section class=\"block cb block--white\" >\n\t<div class=\"block__inner cb__inner cb__inner--one\">\n\t<div class=\"col--12 col--center col--wrapper\">\n\t\t<div class=\"col col--6 editor-content\">\n\t\t\t<h1>Land use planning for Port of Oulu and its surroundings supports the city&#8217;s green transition<\/h1>\n<p><em>The City of Oulu wants to offer attractive locations for green transition industrial projects. Sweco&#8217;s experts acted as a land use planning consultant for the detailed plan amendment of the Port of Oulu in Oritkari area, and its surroundings.<\/em><\/p>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n<\/section>\n\n\n<section class=\"block block--white columns\" >\n\t<div class=\"block__inner columns__inner\">\n\t\t<div class=\"col--11 col--wrapper col--stretch\">\n\t\t\t\t\t\t<div class=\"col col--12 editor-content columns__title\">\n\t\t\t\t<h3 class=\"h3 hyphenate\">The project in brief<\/h3>\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t\t<div class=\"columns__col col col--6\">\n\t\t\t\t\t<div class=\"editor-content columns__content columns__content--image\">\n\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1575\" height=\"750\" src=\"https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan_1.jpg\" class=\"attachment-full size-full\" alt=\"Aerial view of an industrial port with storage tanks, warehouses, and docks near a bay.\" srcset=\"https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan_1.jpg 1575w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan_1-200x95.jpg 200w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan_1-768x366.jpg 768w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan_1-1536x731.jpg 1536w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan_1-520x248.jpg 520w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan_1-800x381.jpg 800w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan_1-630x300.jpg 630w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan_1-945x450.jpg 945w, https:\/\/www.sweco.fi\/wp-content\/uploads\/sites\/7\/2025\/09\/Oritkari-zoning-plan_1-652x310.jpg 652w\" sizes=\"auto, (max-width: 1575px) 100vw, 1575px\" \/>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"columns__col col col--6\">\n\t\t\t\t\t<div class=\"editor-content columns__content columns__content--content\">\n\t\t\t\t\t\t<p>Client: City of Oulu<\/p>\n<p>The assignment includes the preparation of a draft detailed plan for Port of Oulu in Oritkari area, and the preparation of a general plan for the districts of Nuottasaari, Vihre\u00e4saari, \u00c4im\u00e4rautio and Limingantulli, e.g. land use and planning, street, traffic, infrastructure, bridge, geo- and environmental planning, Natura assessments, and nature and landscape surveys.<\/p>\n<p>Year of implementation 2024\u20132025<\/p>\n<p>Sustainability in the project: supporting the green transition industry, protecting endangered birds, securing recreational opportunities on the seashore<\/p>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t<\/div>\n<\/section>\n\n\n<section class=\"block cb block--white\" >\n\t<div class=\"block__inner cb__inner cb__inner--one\">\n\t<div class=\"col--12 col--center col--wrapper\">\n\t\t<div class=\"col col--6 editor-content\">\n\t\t\t<h2>Port of Oulu expands on a landfill area in the alteration of plan<\/h2>\n<p>The City of Oulu is making a detailed alteration of plan for the Port of Oulu, which is part of the EU&#8217;s TEN-T core network. <em>Oulu Port Green Transition Industrial Area<\/em> project develops the operations of the existing port and creates a framework for green transition industrial projects in its surroundings. An internationally significant transport hub provides, for example, carbon dioxide and renewable energy needed by the hydrogen industry.<\/p>\n<p>&#8220;The land area to be designated is exceptional in that it does not yet exist for the most part,&#8221; says <strong>Suvi J\u00e4nk\u00e4l\u00e4<\/strong>, Architect at the City of Oulu. With the alteration of the plan, the port area will be expanded westwards over the sea with land filling.<\/p>\n<p>Over the decades, the entire Port of Oulu has been built on landfill, and now the new land fills are equivalent in scale to the entire Oulu grid plan centre. The change in the local detailed plan covers an area of approximately 440 hectares, of which about half is new land.<\/p>\n<p>&#8220;Another special feature of the project was the design of a large industrial area quite close to the city centre,&#8221; says Sweco&#8217;s architect and planner <strong>Venla Lepp\u00e4nen<\/strong>. In addition to traditional industrial plots, T\/K plots were planned in connection with the port, which can be used to process and store hazardous chemicals.<\/p>\n<h2>The alteration of plan for the port was implemented as a turnkey procurement<\/h2>\n<p>The City of Oulu selected Sweco, a framework agreement partner, <a href=\"https:\/\/www.sweco.fi\/en\/services\/architecture\/land-use-and-zoning\/\">as the planning consultant<\/a> for the plan amendment process. At the same time, a general plan was created for an area of about 1000 hectares, which extends to the districts of Nuottasaari, Vihre\u00e4saari, \u00c4im\u00e4rautio and Limingantulli. Due to the diverse entity, the city experimented for the first time with the turnkey procurement enabled by the framework agreement.<\/p>\n<p>&#8220;It required a lot of work in the definition phase, but it paid off later,&#8221; J\u00e4nk\u00e4l\u00e4 says. The operating method made it possible for planning projects to acquire special expertise that is less common flexibly for the needs of the project. &#8220;Sweco had a comprehensive approach, and when the content of the work became more specific, the work program could be flexibly modified to agree on additional and alteration work.&#8221;<\/p>\n<p>The project combined local knowledge from Sweco with the special expertise of a large group, such as flow studies. &#8220;In addition to land use planning, we involved street, traffic, bridge, geo- and environmental planners as well as nature and landscape surveyors,&#8221; says <strong>Esa Paajanen, <\/strong>Sweco&#8217;s architect and project manager for the project.<\/p>\n<p>Flexible and extensive resources were an advantage, because many things went differently than initially imagined. &#8220;The giant green transition projects are new to everyone, so we learned and sought good practices together,&#8221; J\u00e4nk\u00e4l\u00e4 says. He also found the pairing between the city and Sweco&#8217;s project managers to work excellently.<\/p>\n<p>Surprising added value to the project was brought by the cooperation of the City of Oulu&#8217;s framework agreement partners. &#8220;It&#8217;s a Finnish rarity, which impressed foreign investors. Sweco and the other consultants in the project were able to put the customer first,&#8221; J\u00e4nk\u00e4l\u00e4 says with satisfaction.<\/p>\n<h2>Nature surveys protect birds in the re-zoning process<\/h2>\n<p>In the plan amendment process, a wide range of perspectives were simultaneously examined, such as the prerequisites for industrial operations, infrastructure and logistics networks, recreational use of shores, natural values and safety. &#8220;Creating a functional entity required optimization and compromises,&#8221; Paajanen says.<\/p>\n<p>There are already a lot of large-scale logistics near the port, such as a ship, rail and rubber-wheeled terminal. As industrial activity increases, traffic arrangements change. Therefore, the planning process included risk assessments of level crossings and a major accident risk assessment. &#8220;In the vicinity of the port, the perspective of national security is always included,&#8221; J\u00e4nk\u00e4l\u00e4 says.<\/p>\n<p>In his opinion, natural values were the number one priority in the project, as the area is home to birds that are valuable for the entire Bay of Bothnia, such as endangered waders. The barren and low-vegetation environment of the harbour is home to bird species, which have declined as the shores have become eutrophic.<\/p>\n<p>&#8220;The movement of people in the port area must be restricted in any case, which creates a safe haven for the area&#8217;s birdlife,&#8221; J\u00e4nk\u00e4l\u00e4 says. The construction of the industrial plots will take place in stages so that there will be enough empty and unbuilt shoreline for birds at every stage of the commissioning of the area. Eventually, part of the area will be completely excluded from construction as a bird beach.<\/p>\n<p>According to Lepp\u00e4nen, sustainable <a href=\"https:\/\/www.sweco.fi\/en\/services\/architecture\/land-use-and-zoning\/\">land use planning<\/a> must take into account all levels of responsibility, including social aspects. &#8220;Although the area is mainly developed as an industrial environment, Oritkari also has a great seashore. In the draft plan, one area was designated for the development of recreational use.&#8221;<\/p>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n<\/section>\n\n\n<section class=\"block form-block block--white\" id=\"oleyhteydessa\">\n\t<div class=\"block__inner form-block__inner \">\n\n                    <div class=\"col--11 col--wrapper\">\n                                    <div class=\"col col--4 editor-content form-block__title\">\n                        <h3 class=\"h3 hyphenate\">Contact us<\/h3>                    <\/div>\n                    <div class=\"col--12 col\"><\/div>\n                \n                <div class=\"col col--4 editor-content\">\n                                    <\/div>\n\n                <div class=\"col col--7\">\n                    <script type=\"text\/javascript\">\n\/* <![CDATA[ *\/\nvar gform;gform||(document.addEventListener(\"gform_main_scripts_loaded\",function(){gform.scriptsLoaded=!0}),document.addEventListener(\"gform\/theme\/scripts_loaded\",function(){gform.themeScriptsLoaded=!0}),window.addEventListener(\"DOMContentLoaded\",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,themeScriptsLoaded:!1,isFormEditor:()=>\"function\"==typeof InitializeEditor,callIfLoaded:function(o){return!(!gform.domLoaded||!gform.scriptsLoaded||!gform.themeScriptsLoaded&&!gform.isFormEditor()||(gform.isFormEditor()&&console.warn(\"The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1.\"),o(),0))},initializeOnLoaded:function(o){gform.callIfLoaded(o)||(document.addEventListener(\"gform_main_scripts_loaded\",()=>{gform.scriptsLoaded=!0,gform.callIfLoaded(o)}),document.addEventListener(\"gform\/theme\/scripts_loaded\",()=>{gform.themeScriptsLoaded=!0,gform.callIfLoaded(o)}),window.addEventListener(\"DOMContentLoaded\",()=>{gform.domLoaded=!0,gform.callIfLoaded(o)}))},hooks:{action:{},filter:{}},addAction:function(o,r,e,t){gform.addHook(\"action\",o,r,e,t)},addFilter:function(o,r,e,t){gform.addHook(\"filter\",o,r,e,t)},doAction:function(o){gform.doHook(\"action\",o,arguments)},applyFilters:function(o){return gform.doHook(\"filter\",o,arguments)},removeAction:function(o,r){gform.removeHook(\"action\",o,r)},removeFilter:function(o,r,e){gform.removeHook(\"filter\",o,r,e)},addHook:function(o,r,e,t,n){null==gform.hooks[o][r]&&(gform.hooks[o][r]=[]);var d=gform.hooks[o][r];null==n&&(n=r+\"_\"+d.length),gform.hooks[o][r].push({tag:n,callable:e,priority:t=null==t?10:t})},doHook:function(r,o,e){var t;if(e=Array.prototype.slice.call(e,1),null!=gform.hooks[r][o]&&((o=gform.hooks[r][o]).sort(function(o,r){return o.priority-r.priority}),o.forEach(function(o){\"function\"!=typeof(t=o.callable)&&(t=window[t]),\"action\"==r?t.apply(null,e):e[0]=t.apply(null,e)})),\"filter\"==r)return e[0]},removeHook:function(o,r,t,n){var e;null!=gform.hooks[o][r]&&(e=(e=gform.hooks[o][r]).filter(function(o,r,e){return!!(null!=n&&n!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][r]=e)}});\n\/* ]]> *\/\n<\/script>\n\n                <div class='gf_browser_gecko gform_wrapper gform_legacy_markup_wrapper gform-theme--no-framework' data-form-theme='legacy' data-form-index='0' id='gform_wrapper_6' ><form class=\"gform_analytics_tracking\" method='post' enctype='multipart\/form-data' target='gform_ajax_frame_6' id='gform_6'  action='\/en\/wp-json\/wp\/v2\/showroom_cpt\/70859' data-formid='6' novalidate autocomplete=\"off\">\n                        <div class='gform-body gform_body'><ul id='gform_fields_6' class='gform_fields top_label form_sublabel_below description_below validation_below'><li id=\"field_6_8\" class=\"gfield gfield--type-honeypot gform_validation_container field_sublabel_below gfield--has-description field_description_below field_validation_below gfield_visibility_visible gform_honeypot\"  data-field-class=\"gform_honeypot\" ><label class='gfield_label gform-field-label' for='input_6_8'>Email<\/label><div class='ginput_container'><input autocomplete=\"off\"  name='input_8' id='input_6_8' type='text' value='' autocomplete='new-password'\/><\/div><div class='gfield_description' id='gfield_description_6_8'>This field is for validation purposes and should be left unchanged.<\/div><\/li><li id=\"field_6_1\" class=\"gfield gfield--type-text half field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible gform_text\"  data-field-class=\"gform_text\" ><label class='gfield_label gform-field-label' for='input_6_1'>Name<\/label><div class='ginput_container ginput_container_text'><input autocomplete=\"off\"  name='input_1' id='input_6_1' type='text' value='' class='medium'      aria-invalid=\"false\"   \/><\/div><\/li><li id=\"field_6_2\" class=\"gfield gfield--type-text half field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible gform_text\"  data-field-class=\"gform_text\" ><label class='gfield_label gform-field-label' for='input_6_2'>Company<\/label><div class='ginput_container ginput_container_text'><input autocomplete=\"off\"  name='input_2' id='input_6_2' type='text' value='' class='medium'      aria-invalid=\"false\"   \/><\/div><\/li><li id=\"field_6_5\" class=\"gfield gfield--type-email half gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible gform_email\"  data-field-class=\"gform_email\" ><label class='gfield_label gform-field-label' for='input_6_5'>Email<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/label><div class='ginput_container ginput_container_email'>\n                            <input autocomplete=\"off\"  name='input_5' id='input_6_5' type='email' value='' class='medium'    aria-required=\"true\" aria-invalid=\"false\"  \/>\n                        <\/div><\/li><li id=\"field_6_3\" class=\"gfield gfield--type-text half gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible gform_text\"  data-field-class=\"gform_text\" ><label class='gfield_label gform-field-label' for='input_6_3'>Mobile<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/label><div class='ginput_container ginput_container_text'><input autocomplete=\"off\"  name='input_3' id='input_6_3' type='text' value='' class='medium'     aria-required=\"true\" aria-invalid=\"false\"   \/><\/div><\/li><li id=\"field_6_6\" class=\"gfield gfield--type-textarea full expanding-textarea field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible gform_textarea\"  data-field-class=\"gform_textarea\" ><label class='gfield_label gform-field-label' for='input_6_6'>How can we help you?<\/label><div class='ginput_container ginput_container_textarea'><textarea autocomplete=\"off\"  name='input_6' id='input_6_6' class='textarea medium'      aria-invalid=\"false\"   rows='10' cols='50'><\/textarea><\/div><\/li><li id=\"field_6_7\" class=\"gfield gfield--type-consent gfield--type-choice gfield--input-type-consent gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible gform_consent\"  data-field-class=\"gform_consent\" ><label class='gfield_label gform-field-label gfield_label_before_complex' >Agreement<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/label><div class='ginput_container ginput_container_consent'><input autocomplete=\"off\"  name='input_7.1' id='input_6_7_1' type='checkbox' value='1'   aria-required=\"true\" aria-invalid=\"false\"   \/> <label class=\"gform-field-label gform-field-label--type-inline gfield_consent_label\" for='input_6_7_1' >By sending this form I accept that my information will be saved in Sweco customer register. <a href=\"https:\/\/www.sweco.fi\/en\/about-sweco\/sweco-data-privacy-statement\/\">Sweco Data Privacy Statement<\/a>&gt;<\/label><input autocomplete=\"off\"  type='hidden' name='input_7.2' value='By sending this form I accept that my information will be saved in Sweco customer register. &lt;a href=&quot;https:\/\/www.sweco.fi\/en\/about-sweco\/sweco-data-privacy-statement\/&quot;&gt;Sweco Data Privacy Statement&lt;\/a&gt;&gt;' class='gform_hidden' \/><input autocomplete=\"off\"  type='hidden' name='input_7.3' value='5' class='gform_hidden' \/><\/div><\/li><\/ul><\/div>\n        <div class='gform-footer gform_footer top_label'> <button class='btn btn__primary' id='gform_submit_button_6'><span>Send<\/span><\/button> <input type='hidden' name='gform_ajax' value='form_id=6&amp;title=&amp;description=&amp;tabindex=0&amp;theme=legacy&amp;hash=4fef7decf52ef6029b89308caac65e3b' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submission_method' data-js='gform_submission_method_6' value='iframe' \/>\n            <input type='hidden' class='gform_hidden' name='gform_theme' data-js='gform_theme_6' id='gform_theme_6' value='legacy' \/>\n            <input type='hidden' class='gform_hidden' name='gform_style_settings' data-js='gform_style_settings_6' id='gform_style_settings_6' value='' \/>\n            <input type='hidden' class='gform_hidden' name='is_submit_6' value='1' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submit' value='6' \/>\n            \n            <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' \/>\n            <input type='hidden' class='gform_hidden' name='state_6' value='WyJ7XCI3LjFcIjpcIjVhYWVlZmI3NTc0MTU1YjA1ZTkwNjQxMWI2MWVlNGZiXCIsXCI3LjJcIjpcIjNiMjE4NmJlMWQ5YWNhNTQ3NTA5NzgyNzViYzNjNmM4XCIsXCI3LjNcIjpcIjY5M2FkN2IxNjZjMGFlYWRiOTEwNmMzMjZkNGEwOGZhXCJ9IiwiZTk3ZDcyNzQ2ZWYyMzZjOTU0OGJiOGM0NWQ0ZTRiNTYiXQ==' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_target_page_number_6' id='gform_target_page_number_6' value='0' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_source_page_number_6' id='gform_source_page_number_6' value='1' \/>\n            <input type='hidden' name='gform_field_values' value='' \/>\n            \n        <\/div>\n                        <\/form>\n                        <\/div>\n\t\t                <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_6' id='gform_ajax_frame_6' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'><\/iframe>\n\t\t                <script type=\"text\/javascript\">\n\/* <![CDATA[ *\/\n gform.initializeOnLoaded( function() {gformInitSpinner( 6, 'https:\/\/www.sweco.fi\/wp-content\/themes\/sweco\/assets\/dist\/oval.svg', true );jQuery('#gform_ajax_frame_6').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_6');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_6').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_6').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_6').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_6').removeClass('gform_validation_error');}setTimeout( function() { \/* delay the scroll by 50 milliseconds to fix a bug in chrome *\/  }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_6').val();gformInitSpinner( 6, 'https:\/\/www.sweco.fi\/wp-content\/themes\/sweco\/assets\/dist\/oval.svg', true );jQuery(document).trigger('gform_page_loaded', [6, current_page]);window['gf_submitting_6'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}jQuery('#gform_wrapper_6').replaceWith(confirmation_content);jQuery(document).trigger('gform_confirmation_loaded', [6]);window['gf_submitting_6'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_6').text());}else{jQuery('#gform_6').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger(\"gform_pre_post_render\", [{ formId: \"6\", currentPage: \"current_page\", abort: function() { this.preventDefault(); } }]);        if (event && event.defaultPrevented) {                return;        }        const gformWrapperDiv = document.getElementById( \"gform_wrapper_6\" );        if ( gformWrapperDiv ) {            const visibilitySpan = document.createElement( \"span\" );            visibilitySpan.id = \"gform_visibility_test_6\";            gformWrapperDiv.insertAdjacentElement( \"afterend\", visibilitySpan );        }        const visibilityTestDiv = document.getElementById( \"gform_visibility_test_6\" );        let postRenderFired = false;        function triggerPostRender() {            if ( postRenderFired ) {                return;            }            postRenderFired = true;            gform.core.triggerPostRenderEvents( 6, current_page );            if ( visibilityTestDiv ) {                visibilityTestDiv.parentNode.removeChild( visibilityTestDiv );            }        }        function debounce( func, wait, immediate ) {            var timeout;            return function() {                var context = this, args = arguments;                var later = function() {                    timeout = null;                    if ( !immediate ) func.apply( context, args );                };                var callNow = immediate && !timeout;                clearTimeout( timeout );                timeout = setTimeout( later, wait );                if ( callNow ) func.apply( context, args );            };        }        const debouncedTriggerPostRender = debounce( function() {            triggerPostRender();        }, 200 );        if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) {            const observer = new MutationObserver( ( mutations ) => {                mutations.forEach( ( mutation ) => {                    if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) {                        debouncedTriggerPostRender();                        observer.disconnect();                    }                });            });            observer.observe( document.body, {                attributes: true,                childList: false,                subtree: true,                attributeFilter: [ 'style', 'class' ],            });        } else {            triggerPostRender();        }    } );} ); \n\/* ]]> *\/\n<\/script>\n                <\/div>\n            <\/div>\n        \n\t<\/div>\n<\/section>\n","protected":false},"excerpt":{"rendered":"<p>The City of Oulu wants to offer attractive locations for green transition industrial projects. Sweco&#8217;s experts acted as a land use planning consultant for the detailed plan amendment of the Port of Oulu in Oritkari area, and its surroundings.<\/p>\n","protected":false},"featured_media":70843,"template":"","showroom_cats":[147,151,166,165],"showroom_expertise":[1022,1098],"showroom_partners":[],"showroom_location":[],"showroom_client":[],"class_list":["post-70859","showroom_cpt","type-showroom_cpt","status-publish","has-post-thumbnail","hentry","showroom_cats-sustainability","showroom_cats-urban-planning","showroom_cats-urban-areas","showroom_cats-sustainability-en","showroom_expertise-land-use","showroom_expertise-harbour"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.sweco.fi\/en\/wp-json\/wp\/v2\/showroom_cpt\/70859","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sweco.fi\/en\/wp-json\/wp\/v2\/showroom_cpt"}],"about":[{"href":"https:\/\/www.sweco.fi\/en\/wp-json\/wp\/v2\/types\/showroom_cpt"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.sweco.fi\/en\/wp-json\/wp\/v2\/media\/70843"}],"wp:attachment":[{"href":"https:\/\/www.sweco.fi\/en\/wp-json\/wp\/v2\/media?parent=70859"}],"wp:term":[{"taxonomy":"showroom_cats","embeddable":true,"href":"https:\/\/www.sweco.fi\/en\/wp-json\/wp\/v2\/showroom_cats?post=70859"},{"taxonomy":"showroom_expertise","embeddable":true,"href":"https:\/\/www.sweco.fi\/en\/wp-json\/wp\/v2\/showroom_expertise?post=70859"},{"taxonomy":"showroom_partners","embeddable":true,"href":"https:\/\/www.sweco.fi\/en\/wp-json\/wp\/v2\/showroom_partners?post=70859"},{"taxonomy":"showroom_location","embeddable":true,"href":"https:\/\/www.sweco.fi\/en\/wp-json\/wp\/v2\/showroom_location?post=70859"},{"taxonomy":"showroom_client","embeddable":true,"href":"https:\/\/www.sweco.fi\/en\/wp-json\/wp\/v2\/showroom_client?post=70859"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}