{"id":2829,"date":"2023-12-08T14:36:29","date_gmt":"2023-12-08T13:36:29","guid":{"rendered":"https:\/\/praktiska.se\/sundsvall\/?p=2829"},"modified":"2026-08-18T14:42:31","modified_gmt":"2026-08-18T12:42:31","slug":"ventilation","status":"publish","type":"program_orientation","link":"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/","title":{"rendered":"Ventilationstekniker"},"content":{"rendered":"\n\t\n\t\n\t\n\t\n\t\n\n<section \n\tclass=\"ams-hero ams-hero--classic ams-hero--75 c-block l-stacked  \"\n\tdata-color-scheme=\"hero\"\n\tstyle=\"\">\n\t<div class=\"ams-hero__container u-items-start u-justify-center\">\n\t\t<div\n\t\t\tclass=\"ams-hero__content l-stack l-stack-xl is-left is-left@md\" >\n\t\t\t<div class=\"l-stack l-stack-lg\">\n\t\t\t\t\t\n\t<div\n\tclass=\"c-heading u-font-huge u-font-mobile\"\n\tstyle=\"--font-size: 45px;\">\n\t\t\n\t\t\t\t\t\t\t\t\t<span class=\"c-heading__sub is-above u-font-title-3\">\n\t\t\t\t\tVVS- och fastighetsprogrammet\n\t\t\t\t<\/span>\n\t\t\t\tVentilations\u00adtekniker\n\t\t\t\t\t\t\t\n\t<\/div>\n\n\t\t\t\t\t\t\t\t\t<div class=\"text l-stack u-font-body\">\n\t\t\t\t\t\t<p><span data-sheets-root=\"1\" data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;Vill du vara den som ser till att luften vi andas \u00e4r fr\u00e4sch och h\u00e4lsosam? D\u00e5 kommer inriktningen ventilation att passa dig perfekt!&quot;}\" data-sheets-userformat=\"{&quot;2&quot;:5025,&quot;3&quot;:{&quot;1&quot;:0},&quot;8&quot;:{&quot;1&quot;:[{&quot;1&quot;:2,&quot;2&quot;:0,&quot;5&quot;:{&quot;1&quot;:2,&quot;2&quot;:0}},{&quot;1&quot;:0,&quot;2&quot;:0,&quot;3&quot;:3},{&quot;1&quot;:1,&quot;2&quot;:0,&quot;4&quot;:1}]},&quot;10&quot;:0,&quot;11&quot;:4,&quot;12&quot;:0,&quot;15&quot;:&quot;Arial&quot;}\">Vill du vara den som ser till att luften vi andas \u00e4r fr\u00e4sch och h\u00e4lsosam? D\u00e5 kommer inriktningen ventilation att passa dig perfekt!<\/span><\/p>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\n\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t\n\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t<div class=\"c-bg c-bg--img\" data-settings=\"{&quot;desktop_settings&quot;:{&quot;size&quot;:&quot;cover&quot;,&quot;position&quot;:&quot;top-right&quot;},&quot;mobile_settings&quot;:{&quot;size&quot;:&quot;cover&quot;,&quot;position&quot;:&quot;top-right&quot;}}\" data-position=\"middle-center\" data-size=\"cover\">\n\t\t\t<img decoding=\"async\" width=\"1200\" height=\"1573\" src=\"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfventilationsteknikweb-1200x1573.jpg\" class=\"attachment-xxl size-xxl\" alt=\"F\u00f6rem\u00e5l som representerar ventilation ligger utlagda p\u00e5 m\u00f6rkt tr\u00e4.\" sizes=\"(max-width: 1200px) 100vw, 1200px\" srcset=\"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfventilationsteknikweb-1200x1573.jpg 1200w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfventilationsteknikweb-300x393.jpg 300w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfventilationsteknikweb-400x524.jpg 400w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfventilationsteknikweb-600x786.jpg 600w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfventilationsteknikweb-800x1048.jpg 800w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfventilationsteknikweb-1024x1342.jpg 1024w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfventilationsteknikweb.jpg 1465w\" \/>\n\t\t<\/div>\n\t\n<\/section>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-layout-1 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\">\t\n\t<h1\n\t\n\tclass=\"\n\tc-heading c-heading--icon\n\tu-font-title-1\n\t\n\t\n\t\n\tc-heading--left\n\tc-heading--left@md\n\t\"\n\tdata-color-scheme=\"white\"\n\tstyle=\"\">\n\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfventilationsteknikpraktiskaikonerinriktningar94x94px.svg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"Ikon i form av ventilation.\" height=\"94\" width=\"94\" \/>\n\t\t\t\t<span class=\"text\">Ventilation i Sundsvall<\/span>\n\t\t\t\t\t\t<\/h1>\n\n\n\n\t<div class=\"module_wrapper ams_remote_pages_module \">\n\t\t\t\t\t\t\t<div class=\"container acf-preamble\">\n\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\n<p   class=\"site__ingress container text-left  site__text-color--dark  site__free_text--ingress p-0\">\n\tInriktningen ventilation p\u00e5 VVS- och fastighetsprogrammet passar dig som vill arbeta fritt och sj\u00e4lvst\u00e4ndigt inom service och underh\u00e5ll. Som ventilationstekniker jobbar du med service, drift, underh\u00e5ll samt m\u00e4tning och injustering av olika ventilationsanl\u00e4ggningar.<\/p>\n\n\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"container core-paragraph\">\n\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\n<p>Energibesparing \u00e4r och blir en allt viktigare fr\u00e5ga och i din roll kommer du att vara med och p\u00e5verka utvecklingen. Som ventilationstekniker arbetar du med att utforma ventilationssystem f\u00f6r en god inomhusmilj\u00f6.<br>Under utbildningen f\u00e5r du specialisera dig p\u00e5 ventilationer och att arbeta med underh\u00e5ll, reparation, drift samt servicearbeten. Kurserna inneh\u00e5ller praktiska moment med inl\u00e4rning av verklighetstrogna milj\u00f6er som luftbehandling, elkraftteknik och justeringar av ventilationsanl\u00e4ggningar. Du f\u00e5r ocks\u00e5 kunskap i hur du sparar energi, \u00e4r milj\u00f6medveten, undviker arbetsskador och hur man ger god service till kunder.<\/p>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"container core-heading\">\n\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\n<h3 class=\"wp-block-heading\"><strong>H\u00f6gskolebeh\u00f6righet<\/strong><\/h3>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t<div class=\"container core-paragraph\">\n\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\n<p><br>Grundl\u00e4ggande h\u00f6gskolebeh\u00f6righet ing\u00e5r i alla yrkesprogram p\u00e5 gymnasiet. Det inneb\u00e4r att du inte beh\u00f6ver v\u00e4lja till n\u00e5gra kurser f\u00f6r att bli beh\u00f6rig till vissa utbildningar p\u00e5 h\u00f6gskola eller universitet. Du kan v\u00e4lja bort kurserna som ger h\u00f6gskolebeh\u00f6righet om du k\u00e4nner att det inte \u00e4r n\u00e5got f\u00f6r dig.<\/p>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\n\t<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:33.33%\">\n\t<div class=\"module_wrapper ams_remote_pages_module \">\n\t\t<style>\n@media only screen and (min-width: 600px) {\n\t}\n@media only screen and (max-width: 600px) {\n\t}\n<\/style>\n<div   class=\"ams-fragor  site__secondary-bg--25   ams-fragor-vbbhnxodvwwlwywdfuxs\" >\n\t<p class=\"site__subheading-1  site__text-color--dark  u-mb-2xs\">\n\t\tExempel p\u00e5 framtida yrken\t<\/p>\n   \t\t <div   class=\" site__text-color--dark  ams-fragor__namn\">\n\t\t\t\t\t\t<span class=\" \">\n\t\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t<div   class=\" site__text-color--dark  ams-fragor__utbildning\">\n\t\t\t\t\t\t<span class=\" \">\n\t\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t<li   class=\" site__text-color--dark  \" >\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"\">\n\t\t\t\t\t\t\tVentilationstekniker\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t<\/ul>\n\t\t\t<\/div>\n<script>\n\tamsFragor = function() {\n\t\tvar w = window.innerWidth;\n\t\tvar siteMain = document.getElementsByClassName(\"site-main\")[0]\n\t\tif(typeof siteMain !== 'undefined'){\n\t\t\tvar testimonial = siteMain.getElementsByClassName(\"testimonial_header_module\")[0]\n\t\t\tif(typeof testimonial !== 'undefined'){\n\t\t\t\tvar amsFragor = document.getElementsByClassName(\"ams-fragor\")\n\t\t\t\tfor(var i = 0; i < amsFragor.length; i++){\n\t\t\t\t\tif(w > 769 ){\n\t\t\t\t\t\tamsFragor[i].setAttribute('style', \"margin-top: 50px\");\n\t\t\t\t\t}else{\n\t\t\t\t\t\tamsFragor[i].setAttribute('style', \"margin-top: 0px\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\tamsFragor();\n\twindow.addEventListener(\"resize\", amsFragor);\n<\/script>\n\t\t\t\t\t<div class=\"container core-spacer\">\n\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<style>\n@media only screen and (min-width: 600px) {\n\t}\n@media only screen and (max-width: 600px) {\n\t}\n<\/style>\n<div   class=\"ams-fragor  site__secondary-bg--100   ams-fragor-hkrzkpsakfzgwnhqfjxs\" >\n\t<p class=\"site__subheading-1  site__text-color--light  u-mb-2xs\">\n\t\t\u00d6vrig info\t<\/p>\n   \t\t <div   class=\" site__text-color--light  ams-fragor__namn\">\n\t\t\t\t\t\t<span class=\" \">\n\t\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t<div   class=\" site__text-color--light  ams-fragor__utbildning\">\n\t\t\t\t\t\t<span class=\" \">\n\t\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t<li   class=\" site__text-color--light  \" >\n\t\t\t\t\tProgram:\t\t\t\t\t\t\t\t\t\t\t<span class=\"\">\n\t\t\t\t\t\t\tVVS- och fastighetsprogrammet\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t<li   class=\" site__text-color--light  \" >\n\t\t\t\t\tInriktning:\t\t\t\t\t\t\t\t\t\t\t<span class=\"\">\n\t\t\t\t\t\t\tVentilation\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t<li   class=\" site__text-color--light  \" >\n\t\t\t\t\tProgramkod:\t\t\t\t\t\t\t\t\t\t\t<span class=\"\">\n\t\t\t\t\t\t\tVFVEO\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t<\/ul>\n\t\t\t<\/div>\n<script>\n\tamsFragor = function() {\n\t\tvar w = window.innerWidth;\n\t\tvar siteMain = document.getElementsByClassName(\"site-main\")[0]\n\t\tif(typeof siteMain !== 'undefined'){\n\t\t\tvar testimonial = siteMain.getElementsByClassName(\"testimonial_header_module\")[0]\n\t\t\tif(typeof testimonial !== 'undefined'){\n\t\t\t\tvar amsFragor = document.getElementsByClassName(\"ams-fragor\")\n\t\t\t\tfor(var i = 0; i < amsFragor.length; i++){\n\t\t\t\t\tif(w > 769 ){\n\t\t\t\t\t\tamsFragor[i].setAttribute('style', \"margin-top: 50px\");\n\t\t\t\t\t}else{\n\t\t\t\t\t\tamsFragor[i].setAttribute('style', \"margin-top: 0px\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\tamsFragor();\n\twindow.addEventListener(\"resize\", amsFragor);\n<\/script>\n\t<\/div>\n\n\t\n\n\n\t<div class=\"module_wrapper ams_remote_pages_module \">\n\t\t\t\t\t\t\t<div class=\"container core-spacer\">\n\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<style>\n@media only screen and (min-width: 600px) {\n\t}\n@media only screen and (max-width: 600px) {\n\t}\n<\/style>\n<div   class=\"ams-fragor  site__secondary-bg--8   ams-fragor-cuibwjwvzgwmflsbvsxr\" >\n\t<p class=\"site__subheading-1  site__text-color--dark  u-mb-2xs\">\n\t\tApl p\u00e5 denna utbildning\t<\/p>\n   \t\t <div   class=\" site__text-color--dark  ams-fragor__namn\">\n\t\t\tSkolf\u00f6rlagd utbildning med m\u00f6jlighet att ans\u00f6ka om att l\u00e4sa som l\u00e4rling fr\u00e5n \u00e5rskurs 2.\t\t\t<span class=\" \">\n\t\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t<div   class=\" site__text-color--dark  ams-fragor__utbildning\">\n\t\t\t\t\t\t<span class=\" \">\n\t\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t<ul>\n\t\t\t\t\t<\/ul>\n\t\t\t<\/div>\n<script>\n\tamsFragor = function() {\n\t\tvar w = window.innerWidth;\n\t\tvar siteMain = document.getElementsByClassName(\"site-main\")[0]\n\t\tif(typeof siteMain !== 'undefined'){\n\t\t\tvar testimonial = siteMain.getElementsByClassName(\"testimonial_header_module\")[0]\n\t\t\tif(typeof testimonial !== 'undefined'){\n\t\t\t\tvar amsFragor = document.getElementsByClassName(\"ams-fragor\")\n\t\t\t\tfor(var i = 0; i < amsFragor.length; i++){\n\t\t\t\t\tif(w > 769 ){\n\t\t\t\t\t\tamsFragor[i].setAttribute('style', \"margin-top: 50px\");\n\t\t\t\t\t}else{\n\t\t\t\t\t\tamsFragor[i].setAttribute('style', \"margin-top: 0px\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\tamsFragor();\n\twindow.addEventListener(\"resize\", amsFragor);\n<\/script>\n\t<\/div>\n\n\t<\/div>\n<\/div>\n\n\n\n<div class=\"module_wrapper ams_background_module  site__secondary-bg--13   site__text-color--dark  cp-120\" >\n<div class=\"container_width--full_width_conIcon\">\n\t\n<!-- display message when browser is MSEI --- START -->\n<script>\n\tvar ua = window.navigator.userAgent;\n\tvar isIE = \/MSIE|Trident\/.test(ua);\n\tvar elem = document.createElement('div');\n\telem.style.cssText = 'border:4px solid #000;position:absolute;top:0;left:0;width:100%;min-height:200px;z-index:100000000000;background:#fff;color:#000;padding:30px 20px;font-size:26px;text-align:center;';\n\n\twindow.addEventListener('DOMContentLoaded', function () {\n\t\tif (isIE) {\n\t\t\tvar formElem = document.querySelector('.ams-form__form-wrapper');\n\t\t\telem.innerHTML = 'Vi st\u00f6djer inte Microsoft Explorer, v\u00e4nligen anv\u00e4nd en annan webbl\u00e4sare.';\n\t\t\tformElem.innerHTML = '';\n\t\t\tformElem.appendChild(elem);\n\t\t}\n\t});\n<\/script>\n<!-- display message when browser is MSEI --- END -->\n\n\n<style>\n\n<\/style>\n\n<script>\n\tvar blog_id = '34';\n\tvar post_id = '2829';\n\tvar saved_aca_form_id = 'cbljPn5TbY5L';\n\tvar orgUnitId = '95a1bc32-ad9e-eb11-b1ac-000d3ab8a70a';\n\tvar current_api = 'ms_crm';\n\tvar current_api_type = 'leads-lead';\n<\/script>\n\n\n<div\n\t class=\"ams-form__two-columns ams-form__form-wrapper container ams-form__shape--sharp-corners  site__text-color--dark   site__secondary-bg--13  ams_active_form_state_default\"\n\t>\n\n\t\n\t<div\n\t\tclass=\"pb-5 \">\n\n\t\t\n\t\t\n\t\t\t\t\t<h3\n\t\t\t\tclass=\"site__heading-size-4 ams-form__headline text_align--Center  site__text-color--dark \">\n\t\t\t\tVill du veta mer om att l\u00e4sa till ventilationstekniker?\t\t\t<\/h3>\n\t\t\n\t\t\t\t\t<p\n\t\t\t   class=\"ams-form__description text_align--Center \">D\u00e5 ska du komma p\u00e5 \u00f6ppet hus och prata med v\u00e5ra l\u00e4rare och elever! Fyll i formul\u00e4ret s\u00e5 f\u00e5r du p\u00e5minnelser inf\u00f6r v\u00e5ra \u00f6ppna hus och annan rolig information om gymnasievalet och skolan.<\/p>\n\t\t\n\t\t<form   id=\"ams-form__6a869ebb76d5c\"\n\t\t\t  autocomplete=\"on\"\n\t\t\t  class=\"ams-form\"\n\t\t\t  method=\"POST\">\n\n\t\t\t<input type=\"hidden\" id=\"aca_send_form_nonce\" name=\"aca_send_form_nonce\" value=\"0b58dbeafd\" \/><input type=\"hidden\" name=\"_wp_http_referer\" value=\"\/sundsvall\/wp-json\/wp\/v2\/program_orientation\/2829\" \/>\t\t\t<input type=\"hidden\" name=\"aca_form_id\" value=\"cbljPn5TbY5L\"\/>\n\t\t\t\t\t\t<label\n\t\t\t\t   class=\"  ams-form__field-required ams-form__field ams-form__label\">\n\t\t\t\t<div class=\"_title site__subheading-11\">Epost<\/div>\n\t\t\t\t<input\n\t\t\t\t\t   data-nicename=\"Epost\" maxlength=\"100\" required\t\t\t\t\t   type=\"text\" name=\"email\"\/><\/label>\n\t\t\t\t\t\t<label\n\t\t\t\t   class=\"  ams-form__field-required ams-form__field ams-form__label\">\n\t\t\t\t<div class=\"_title site__subheading-11\">Mobilnummer<\/div>\n\t\t\t\t<input\n\t\t\t\t\t   data-nicename=\"Mobilnummer\" maxlength=\"50\" required\t\t\t\t\t   type=\"text\" name=\"mobilePhoneNumber\"\/><\/label>\n\t\t\t\t\t\t<fieldset   required\t\t\t\t\t  class=\" ams-form__checkbox-horizontal   ams-form__field-required ams-form__field ams-form__label ams-form__checkbox-wrapper\">\n\n\t\t\t\t<div   class=\"_title site__subheading-11\">\n\t\t\t\t\tN\u00e4r b\u00f6rjar du gymnasiet?\t\t\t\t<\/div>\n\n\t\t\t\t\n\t\n\t<div class=\"ams-form__boxes\">\n\t\t\t\t\n\t\t\t<div class=\"ams-form__box-wrapper\">\n\t\t\t\t<label   class=\"container-checkmark site__body_text-2\"\n\t\t\t\t\t   for=\"6a869ebb7e418\">\n\t\t\t\t\t2027\t\t\t\t\t<input   data-nicename=\"N\u00e4r b\u00f6rjar du gymnasiet?\"\n\t\t\t\t\t\t   type=\"radio\"\n\t\t\t\t\t\t   id=\"6a869ebb7e418\"\n\t\t\t\t\t\t   name=\"startOfStudies-597086\"\n\t\t\t\t\t\t\t\t\t\t\t\t   value=\"2027\">\n\t\t\t\t\t<span class=\"checkmark\"><\/span>\n\t\t\t\t<\/label>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"ams-form__box-wrapper\">\n\t\t\t\t<label   class=\"container-checkmark site__body_text-2\"\n\t\t\t\t\t   for=\"6a869ebb7e41b\">\n\t\t\t\t\t2028\t\t\t\t\t<input   data-nicename=\"N\u00e4r b\u00f6rjar du gymnasiet?\"\n\t\t\t\t\t\t   type=\"radio\"\n\t\t\t\t\t\t   id=\"6a869ebb7e41b\"\n\t\t\t\t\t\t   name=\"startOfStudies-597086\"\n\t\t\t\t\t\t\t\t\t\t\t\t   value=\"2028\">\n\t\t\t\t\t<span class=\"checkmark\"><\/span>\n\t\t\t\t<\/label>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"ams-form__box-wrapper\">\n\t\t\t\t<label   class=\"container-checkmark site__body_text-2\"\n\t\t\t\t\t   for=\"6a869ebb7e41d\">\n\t\t\t\t\t2029\t\t\t\t\t<input   data-nicename=\"N\u00e4r b\u00f6rjar du gymnasiet?\"\n\t\t\t\t\t\t   type=\"radio\"\n\t\t\t\t\t\t   id=\"6a869ebb7e41d\"\n\t\t\t\t\t\t   name=\"startOfStudies-597086\"\n\t\t\t\t\t\t\t\t\t\t\t\t   value=\"2029\">\n\t\t\t\t\t<span class=\"checkmark\"><\/span>\n\t\t\t\t<\/label>\n\t\t\t<\/div>\n\n\t\t\t<\/div>\n\n\t\t\t\t<\/fieldset>\n\t\t\t\t\t\t<div\n\t\t\t\tclass=\"ams-form__field-full-width  ams-form__field-required ams-form__field ams-form__label ams-form__checkbox-wrapper\">\n\t\t\t\t<div> <!-- Do not remove -->\n\t\t\t\t\t<div   class=\"ams-form__box-wrapper ams-form__consent\">\n\n\t\t\t\t\t\t<div   class=\"_title site__subheading-11\">\n\t\t\t\t\t\t\tSamtycke\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<label\n\t\t\t\t\t\t\t   class=\"container-checkmark site__body_text-2\"\n\t\t\t\t\t\t\t   for=\"box_id_6a869ebb7e421\">\n\t\t\t\t\t\t\tJag samtycker (jag har fyllt 16 \u00e5r) eller har min v\u00e5rdnadshavares samtycke (jag har inte fyllt 16 \u00e5r) till att l\u00e4mna mina kontaktuppgifter h\u00e4r.\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t   data-nicename=\"Samtycke\"\n\t\t\t\t\t\t\t\t   type=\"checkbox\"\n\t\t\t\t\t\t\t\t   id=\"box_id_6a869ebb7e421\" name=\"specialField__combinedAcceptance\"\n\t\t\t\t\t\t\t\t   value=\"Samtycke\">\n\t\t\t\t\t\t\t<span class=\"checkmark\"><\/span>\n\t\t\t\t\t\t<\/label>\n\n\t\t\t\t\t\t<p   class=\"ams-form__integrity-popup-text site__body_text-3\"><b>L\u00e4s mer h\u00e4r. <\/b><\/p>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div> <!-- END Do not remove -->\n\t\t\t<\/div>\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"operation-type\" value=\"leads-lead\"\/>\n\t\t\t\n\t\t\t<div class=\"ams-form__submit-wrapper text_align--Center\">\n\t\t\t\t<button\n\t\t\t\t\t\tclass=\"btn btn-lg site__buttons-1 rounded-corners-btn-shape ams-form__submit site__cta-bg--100 site__text-color--light site__text-color--dark rounded-corners-btn-shape ams_active_button_state_default\"\n\t\t\t\t\t\ttype=\"submit\">\n\t\t\t\t\tSkicka\t\t\t\t<\/button>\n\t\t\t\t<!--\t\t\t\t<button class=\"btn btn-lg btn_outline__primary site__buttons-1 -->\n\t\t\t\t<!-- ams-form__submit -->\n\t\t\t\t<!--\" type=\"submit\">Skicka<\/button>-->\n\t\t\t\t<div class=\"ams-form__submit-sending\">\n\t\t\t\t\t<div class=\"ams-spinner\"><\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/form>\n\n\t\t\n\t<\/div> <!-- END ams-form__form-wrapper-->\n<\/div>\n\n\n\t<div class=\"ams-form__integrity-popup-hidden-text\">\n\t\t<div class=\"ams-form__integrity-popup-holder global_body-color  site__text-color--dark \">\n\t\t\t<div class=\"ams-form__integrity-popup-hidden-text-inner\"><h3>HANTERING AV PERSONUPPGIFTER<\/h3>\n<p>N\u00e4r du eller dina f\u00f6r\u00e4ldrar skickar in en intresseanm\u00e4lan, anm\u00e4ler dig till \u00f6ppet hus\/annan skolvisning, \u00f6nskar information eller marknadsf\u00f6ring om v\u00e5ra skolor, beh\u00f6ver samtycke l\u00e4mnas. Samtycke \u00e4r frivilligt och avges n\u00e4r anm\u00e4lan eller \u00f6nskem\u00e5let skickas in. Praktiska Gymnasiet \u00e4r personuppgiftsansvarig p\u00e5 den skola som du har anm\u00e4lt intresse till. Skolan \u00e4r en del av AcadeMedia-koncernen.<\/p>\n<p>&nbsp;<\/p>\n<p>De personuppgifter vi behandlar \u00e4r namn, e-postadress och telefonnummer f\u00f6r samtliga kontakter med dig samt programval och \u00e5r f\u00f6r t\u00e4nkt studiestart f\u00f6r information och marknadsf\u00f6ring. Vissa utskick inneh\u00e5ller sp\u00e5rningspixlar s\u00e5 vi kan se antal \u00f6ppnade brev.<\/p>\n<p>&nbsp;<\/p>\n<p>Uppgifterna delas med anst\u00e4llda inom skoladministration och kommunikation p\u00e5 de skolor du visat intresse f\u00f6r. Syftena \u00e4r att administrera bes\u00f6k, skicka marknadsf\u00f6ring, andra meddelanden och p\u00e5minnelser. Vi kan \u00e4ven komma att dela uppgifter till kommunikat\u00f6rer p\u00e5 bolag inom koncernen f\u00f6r marknadsf\u00f6ring av liknande utbildningar. Vidare l\u00e4mnar vi information till myndigheter om vi \u00e4r skyldiga att g\u00f6ra s\u00e5 enligt lag.<\/p>\n<p>&nbsp;<\/p>\n<p>De r\u00e4ttsliga grunderna \u00e4r samtycke f\u00f6r administration av skolbes\u00f6k och svar p\u00e5 allm\u00e4nna fr\u00e5gor samt ber\u00e4ttigat intresse f\u00f6r den marknadsf\u00f6ring som inte f\u00f6ljer av samtycke. Reklam f\u00f6r liknande utbildningar anser vi motiverade i viss omfattning. Utl\u00e4mnande till myndigheter f\u00f6ljer av r\u00e4ttslig f\u00f6rpliktelse. Uppgifterna lagras i ett \u00e5r efter att ans\u00f6kningstiden f\u00f6r den s\u00f6kta utbildningen g\u00e5tt ut. Vid tillbakadraget samtycke gallras uppgifterna omg\u00e5ende.<\/p>\n<p>&nbsp;<\/p>\n<p>Till tekniskt st\u00f6d anlitas personuppgiftsbitr\u00e4dena AcadeMedia Support AB, Microsoft Ireland Operations Ltd och Infobip Sweden AB. Uppgifterna kan komma att behandlas i Sverige\/EU och i de s.k. tredjel\u00e4nderna USA, Brasilien, Kina, Indien, Vietnam, Malaysia och Ryssland. \u00d6verf\u00f6ring till tredjel\u00e4nderna sker med st\u00f6d av EU-kommissionens standardavtalsklausuler.<\/p>\n<p>&nbsp;<\/p>\n<p>Du kan n\u00e4r du vill dra tillbaka ditt samtycke, inv\u00e4nda mot behandlingen, beg\u00e4ra registerutdrag, r\u00e4ttelse eller att vi begr\u00e4nsar behandlingen. F\u00f6r att avregistrera dig fr\u00e5n digitala reklam- och kommunikationsutskick, f\u00f6lj instruktionerna i det SMS eller e-post som du har f\u00e5tt fr\u00e5n oss. Du kan \u00e4ven kontakta skolan f\u00f6r detta p\u00e5 fliken Kontakt i menyn.<\/p>\n<p>&nbsp;<\/p>\n<p>V\u00e5rt dataskyddsombud kontaktas p\u00e5 <a href=\"mailto:dataskydd@academedia.se\">dataskydd@academedia.se<\/a>. Vid klagom\u00e5l p\u00e5 personuppgiftsbehandlingen skickas det till tillsynsmyndigheten IMY (<a href=\"http:\/\/www.imy.se\">www.imy.se<\/a>).<\/p>\n<\/div>\t\t\t<button class=\"ams-form__integrity-popup-close site__links-9\">St\u00e4ng X<\/button>\n\t\t<\/div>\n\t<\/div>\n\n\n\n<script>\n\n(function () {\n\tconst pageForms = Array.from(\n\t\tdocument.querySelectorAll(\"#ams-form__6a869ebb76d5c\")\n\t);\n\n\tif (pageForms) {\n\t\tpageForms.forEach((formItem) => {\n\t\t\tinitForm(formItem);\n\t\t});\n\t}\n\n\tfunction initForm(formItem) {\n\t\t\/\/ clear form when back or forward was used to navigate to page\n\t\tif (window.performance && window.performance.navigation.type === window.performance.navigation.TYPE_BACK_FORWARD) {\n\n\t\twindow.addEventListener('DOMContentLoaded', function () {\n\t\t\tsetTimeout(function () {\n\t\t\t\tformItem.reset();\n\t\t\t}, 100);\n\t\t\t});\n\t\t}\n\n\t\tif ('NodeList' in window && !NodeList.prototype.forEach) {\n\t\t\tNodeList.prototype.forEach = function (callback, thisArg) {\n\t\t\t\tthisArg = thisArg || window;\n\t\t\t\tfor (var i = 0; i < this.length; i++) {\n\t\t\t\t\tcallback.call(thisArg, this[i], i, this);\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\n\t\t\/*! storejs v1.0.26 | MIT (c) 2019 kenny wang <wowohoo@qq.com> | https:\/\/github.com\/jaywcjlove\/store.js *\/\n\t\tvar store = function () {\n\t\t\"use strict\";\n\t\tvar t = window.localStorage;\n\n\t\tfunction r(t) {\n\t\t\treturn t = JSON.stringify(t), !!\/^\\{[\\s\\S]*\\}$\/.test(t)\n\t\t}\n\n\t\tfunction e(t) {\n\t\t\tif (\"string\" == typeof t) try {\n\t\t\t\treturn JSON.parse(t)\n\t\t\t} catch (r) {\n\t\t\t\treturn t\n\t\t\t}\n\t\t}\n\n\t\tfunction n(t) {\n\t\t\treturn \"[object Function]\" === {}.toString.call(t)\n\t\t}\n\n\t\tfunction i() {\n\t\t\tif (!(this instanceof i)) return new i\n\t\t}\n\n\t\tt = function (t) {\n\t\t\tvar r = \"_Is_Incognit\";\n\t\t\ttry {\n\t\t\t\tt.setItem(r, \"yes\")\n\t\t\t} catch (r) {\n\t\t\t\tif (\"QuotaExceededError\" === r.name) {\n\t\t\t\t\tvar e = function () {\n\t\t\t\t\t};\n\t\t\t\t\tt.__proto__ = {setItem: e, getItem: e, removeItem: e, clear: e}\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\t\"yes\" === t.getItem(r) && t.removeItem(r)\n\t\t\t}\n\t\t\treturn t\n\t\t}(t), i.prototype = {\n\t\t\tset: function (e, n) {\n\t\t\t\tif (e && !r(e)) t.setItem(e, function (t) {\n\t\t\t\t\treturn void 0 === t || \"function\" == typeof t ? t + \"\" : JSON.stringify(t)\n\t\t\t\t}(n)); else if (r(e)) for (var i in e) this.set(i, e[i]);\n\t\t\t\treturn this\n\t\t\t}, get: function (r) {\n\t\t\t\tif (!r) {\n\t\t\t\t\tvar n = {};\n\t\t\t\t\treturn this.forEach((function (t, r) {\n\t\t\t\t\t\treturn n[t] = r\n\t\t\t\t\t})), n\n\t\t\t\t}\n\t\t\t\tif (\"?\" === r.charAt(0)) return this.has(r.substr(1));\n\t\t\t\tvar i = arguments;\n\t\t\t\tif (i.length > 1) {\n\t\t\t\t\tfor (var o = {}, f = 0, u = i.length; f < u; f++) {\n\t\t\t\t\t\tvar s = e(t.getItem(i[f]));\n\t\t\t\t\t\ts &#038;&#038; (o[i[f]] = s)\n\t\t\t\t\t}\n\t\t\t\t\treturn o\n\t\t\t\t}\n\t\t\t\treturn e(t.getItem(r))\n\t\t\t}, clear: function () {\n\t\t\t\treturn t.clear(), this\n\t\t\t}, remove: function (r) {\n\t\t\t\tvar e = this.get(r);\n\t\t\t\treturn t.removeItem(r), e\n\t\t\t}, has: function (t) {\n\t\t\t\treturn {}.hasOwnProperty.call(this.get(), t)\n\t\t\t}, keys: function () {\n\t\t\t\tvar t = [];\n\t\t\t\treturn this.forEach((function (r) {\n\t\t\t\t\tt.push(r)\n\t\t\t\t})), t\n\t\t\t}, forEach: function (r) {\n\t\t\t\tfor (var e = 0, n = t.length; e < n; e++) {\n\t\t\t\t\tvar i = t.key(e);\n\t\t\t\t\tr(i, this.get(i))\n\t\t\t\t}\n\t\t\t\treturn this\n\t\t\t}, search: function (t) {\n\t\t\t\tfor (var r = this.keys(), e = {}, n = 0, i = r.length; n < i; n++) r[n].indexOf(t) > -1 && (e[r[n]] = this.get(r[n]));\n\t\t\t\treturn e\n\t\t\t}\n\t\t};\n\t\tvar o = null;\n\n\t\tfunction f(t, e) {\n\t\t\tvar u, s = arguments, c = null;\n\t\t\tif (o || (o = i()), 0 === s.length) return o.get();\n\t\t\tif (1 === s.length) {\n\t\t\t\tif (\"string\" == typeof t) return o.get(t);\n\t\t\t\tif (r(t)) return o.set(t)\n\t\t\t}\n\t\t\tif (2 === s.length && \"string\" == typeof t) {\n\t\t\t\tif (!e) return o.remove(t);\n\t\t\t\tif (e && \"string\" == typeof e) return o.set(t, e);\n\t\t\t\te && n(e) && (c = null, c = e(t, o.get(t)), f.set(t, c))\n\t\t\t}\n\t\t\tif (2 === s.length && (u = t, \"[object Array]\" === Object.prototype.toString.call(u)) && n(e)) for (var a = 0, h = t.length; a < h; a++) c = e(t[a], o.get(t[a])), f.set(t[a], c);\n\t\t\treturn f\n\t\t}\n\n\t\tfor (var u in i.prototype) f[u] = i.prototype[u];\n\t\treturn f\n\t\t}();\n\n\t\tvar kiosk = false;\n\t\tvar the_form = formItem;\n\t\tconsole.log(the_form, formItem);\n\t\tvar submit_button = the_form.querySelector('.ams-form__submit');\n\n\t\tvar all_fields = the_form.querySelectorAll('.ams-form__field');\n\t\tvar all_required_fields = the_form.querySelectorAll('.ams-form__field-required');\n\n\t\tvar offline_ui = document.querySelector('.ams-form__offline-ui .offline-ui__feedback');\n\t\tvar show_saved_forms_button = document.querySelector('.ams-form__open-saved-forms');\n\t\tvar delete_saved_forms = document.querySelector('.delete_saved_forms');\n\t\tvar offline_ui_wrapper = document.querySelector('.ams-form__offline-ui');\n\t\tvar offline_sending_feedback = document.querySelector('.ams-form__offline-ui .offline-ui__sending-feedback');\n\t\tvar kiosk_feedback = document.querySelector('.ams-form__kiosk-feedback');\n\t\tvar send_saved_forms = document.querySelector('.send_saved_forms');\n\t\tvar form_sending = document.querySelector('.ams-form__submit-sending');\n\n\t\t\/\/ Pre-check all event checkboxes to speed up repeated submissions with support for offline save\n\t\tfunction precheckEventCheckboxes() {\n\t\t\tvar eventCheckboxes = the_form.querySelectorAll('input[type=\"checkbox\"][name=\"events\"]');\n\t\t\teventCheckboxes.forEach(function (box) {\n\t\t\t\tif (!box.checked) {\n\t\t\t\t\tbox.checked = true;\n\t\t\t\t\tbox.dispatchEvent(new Event('change'));\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\t\/\/ Initial pre-check\n\t\tprecheckEventCheckboxes();\n\n\t\t\/\/ Re-apply pre-check after any programmatic form reset (e.g., after offline save)\n\t\tthe_form.addEventListener('reset', function () {\n\t\t\tsetTimeout(precheckEventCheckboxes, 0);\n\t\t});\n\n\t\t\/\/ Hide events checkboxes fieldset\n\t\tconst eventsCheckboxFieldset = the_form.querySelectorAll('fieldset[data-element-identifier=\"events\"]');\n\t\teventsCheckboxFieldset.forEach(fieldset => {\n\t\t\t\/\/ Check if fieldset contains event checkbox\n\t\t\tconst hasEventCheckbox = fieldset.querySelector('input[type=\"checkbox\"][name=\"events\"]');\n\n\t\t\t\/\/ Add utility class if checkbox was found\n\t\t\thasEventCheckbox ? fieldset.classList.add('u-hide') : null;\n\t\t});\n\n\t\t\/\/ dropdown button\n\t\tvar dropdowns = document.querySelectorAll('.ams-form__checkbox-dropdown');\n\t\tvar dropdown_offset = 0;\n\n\t\t\/*\n\t\tdropdowns.forEach(function(dropdown, index) {\n\t\tdropdown.addEventListener('click', function(event) {\n\t\t\t\/\/ ams-form__dropdown-button\n\n\t\t\t\/\/ open dropdown\n\t\t\tif (event.target.className.indexOf('ams-form__dropdown-button') !== -1) {\n\t\t\t\tdropdown_offset = jQuery(the_form).position().top - jQuery(event.target).position().top;\n\t\t\t\tif (dropdown.className.indexOf('ams-form__checkbox-dropdown-open') === -1) {\n\t\t\t\t\tdropdown.classList.add('ams-form__checkbox-dropdown-open');\n\t\t\t\t} else {\n\t\t\t\t\tdropdown.classList.remove('ams-form__checkbox-dropdown-open');\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t\/\/ open category\n\t\t\tif (event.target.className.indexOf('ams-form__box-category-title') !== -1) {\n\t\t\t\tvar cat_panel = dropdown.querySelector('._cat_' + event.target.getAttribute('data-category'));\n\t\t\t\tif (cat_panel.className.indexOf('ams-form__box-category-open') === -1) {\n\t\t\t\t\tcat_panel.classList.add('ams-form__box-category-open');\n\t\t\t\t} else {\n\t\t\t\t\tcat_panel.classList.remove('ams-form__box-category-open');\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\t});\n\n\t\t\/\/ radio dropdown\n\t\tvar radio_dropdowns = document.querySelectorAll('.ams-form__radio-dropdown-button');\n\t\tdropdowns.forEach(function(dropdown, index) {\n\t\t\/\/ var list = dropdown.querySelector('.ams-form__integrity-popup-text');\n\t\tdropdown.addEventListener('focus', function(event) {\n\t\t\t\/\/ var list =\n\t\t});\n\t\t});\n\t\t*\/\n\n\t\t\/\/ popup hover\n\t\tvar integrity_popup = document.querySelector('.ams-form__integrity-popup-text');\n\t\tvar integrity_text = document.querySelector('.ams-form__integrity-popup-hidden-text');\n\t\tvar overlay = document.querySelector('.ams-form__integrity-popup-hidden-text');\n\t\tvar integrity_text_inner = document.querySelector('.ams-form__integrity-popup-hidden-text-inner');\n\t\tvar integrity_popup_button = document.querySelector('.ams-form__integrity-popup-button');\n\t\tvar integrity_popup_close = document.querySelector('.ams-form__integrity-popup-close');\n\n\t\tif (integrity_popup) {\n\t\tvar popup_tabindex = integrity_popup.getAttribute('tabindex');\n\t\tintegrity_popup.addEventListener('keypress', function () {\n\t\t\tintegrity_text.style.display = 'block';\n\t\t\tvar integrity_popup_content = document.querySelector('.ams-form__integrity-popup-holder');\n\t\t\tintegrity_popup_content.tabIndex = popup_tabindex;\n\t\t\tintegrity_popup_close.tabIndex = popup_tabindex;\n\t\t\tvar innerItems = integrity_text_inner.children;\n\t\t\tfor (let i = 0; i < innerItems.length; i++) {\n\t\t\t\tinnerItems[i].tabIndex = popup_tabindex;\n\t\t\t}\n\t\t});\n\t\tintegrity_popup.addEventListener('click', function (event) {\n\t\t\tintegrity_text.style.display = 'block';\n\t\t\tvar integrity_popup_content = document.querySelector('.ams-form__integrity-popup-holder');\n\t\t\tintegrity_popup_content.tabIndex = popup_tabindex;\n\t\t\tintegrity_popup_close.tabIndex = popup_tabindex;\n\t\t\tvar innerItems = integrity_text_inner.children;\n\t\t\tfor (let i = 0; i < innerItems.length; i++) {\n\t\t\t\tinnerItems[i].tabIndex = popup_tabindex;\n\t\t\t}\n\t\t});\n\t\t}\n\n\t\tif (integrity_popup) {\n\t\toverlay.addEventListener('click', function (event) {\n\t\t\tif (event.target.className == 'ams-form__integrity-popup-hidden-text' || event.target.classList.contains('ams-form__integrity-popup-close')) {\n\t\t\t\tintegrity_text.style.display = 'none';\n\t\t\t}\n\t\t});\n\t\t}\n\n\t\t\/\/ prefill form using variables from the URL\n\t\tvar prefillValues = function () {\n\n\t\tvar prefillParamsToCRMFields = {\n\t\t\t'email': 'email',\n\t\t\t'mobile': 'mobilePhoneNumber'\n\t\t}\n\n\t\tvar params = getParams(window.location.href);\n\t\tfor (var key in params) {\n\t\t\tif (typeof prefillParamsToCRMFields[key] !== 'undefined') {\n\t\t\t\tdocument.querySelector('input[name=' + prefillParamsToCRMFields[key] + ']').value = params[key];\n\t\t\t}\n\t\t}\n\t\t}\n\n\t\tprefillValues();\n\n\t\t\/**\n\t\t* 3 Event listeners below represent probably the worst validation logic ever witnessed\n\t\t* by mighty developer, and should be refactored asap\n\t\t*\/\n\n\t\tthe_form.addEventListener('focusout', function (event) {\n\n\t\tif (event.target.parentNode.parentNode.parentNode.parentNode.className.indexOf('_event-with-session-field_') !== -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (event.target.className.indexOf('ui-multiselect') !== -1 &#038;&#038; event.relatedTarget) {\n\n\t\t\tif (event.target.className.indexOf('ui-corner-all') !== -1) {\n\t\t\t\tdo_validation(event.target);\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\t\tif (event.relatedTarget) {\n\t\t\tif (\n\t\t\t\t(event.target.name !== event.relatedTarget.name) &#038;&#038;\n\t\t\t\tevent.target.parentNode.parentNode.parentNode.parentNode.className.indexOf('ams-form__field-required') !== -1\n\t\t\t) {\n\t\t\t\tdo_validation(event.target);\n\t\t\t} else if ((event.target.name !== event.relatedTarget.name) &#038;&#038; event.target.parentNode.className.indexOf('ams-form__field-required') !== -1) {\n\t\t\t\tdo_validation(event.target);\n\t\t\t}\n\t\t} else {\n\t\t\tif (event.target.parentNode.parentNode.parentNode.parentNode.className.indexOf('ams-form__field-required') !== -1) {\n\t\t\t\tdo_validation(event.target);\n\t\t\t} else if (event.target.parentNode.className.indexOf('ams-form__field-required') !== -1) {\n\t\t\t\tdo_validation(event.target);\n\t\t\t}\n\t\t}\n\n\t\tif (!the_form.contains(event.relatedTarget)) {\n\t\t\tclose_drop_downs();\n\t\t}\n\t});\n\n\tthe_form.addEventListener('click', (e) => {\n\t\tif (e.target.parentNode && e.target.parentNode.tagName === 'FORM' || e.target.className.includes('subheading')) {\n\t\t\tclose_drop_downs();\n\t\t}\n\t})\n\n\tthe_form.addEventListener('change', function (event) {\n\n\t\tif(event.detail && event.detail.checkbox !== undefined) {\n\t\t\tdo_validation(event.detail.checkbox);\n\t\t\treturn;\n\t\t}\n\t\tif (event.target.parentNode.parentNode.parentNode.parentNode.className.indexOf('_event-with-session-field_') !== -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (\n\t\t\t(event.target.type === 'checkbox' || event.target.type === 'radio') &&\n\t\t\t(\n\t\t\t\tevent.target.parentNode.parentNode.parentNode.parentNode.className.indexOf('ams-form__field-required') !== -1 ||\n\t\t\t\tevent.target.parentNode.parentNode.parentNode.parentNode.parentNode.className.indexOf('ams-form__field-required') !== -1\n\t\t\t)\n\t\t) {\n\t\t\tdo_validation(event.target);\n\t\t} else if (\n\t\t\tevent.target.parentNode.className.indexOf('ams-form__field') !== -1 &&\n\t\t\tevent.target.parentNode.className.indexOf('ams-form__field-required') !== -1) {\n\t\t\tdo_validation(event.target);\n\t\t}\n\t\t});\n\n\t\tthe_form.addEventListener('keyup', function (event) {\n\t\treturn;\n\t\tif ((event.target.value.length > 3 && event.target.type !== 'checkbox') && event.target.parentNode.className.indexOf('ams-form__field-required') !== -1) {\n\t\t\tdo_validation(event.target);\n\t\t}\n\t\t});\n\n\tfunction close_drop_downs() {\n\t\tlet dropdownButtons = document.querySelectorAll('button[id*=aca-dropdown__]');\n\t\tdropdownButtons?.forEach(el => {\n\t\t\tif (el.className.includes('_open_')) {\n\t\t\t\tel.click();\n\t\t\t}\n\t\t})\n\t}\n\n\tfunction show_final_timer_message(elem) {\n\t\telem.querySelector('h3').innerHTML = 'Vi lyckades inte kontakta servern, sidan kommer nu laddas om, v\u00e4nligen f\u00f6rs\u00f6k igen senare.';\n\t\telem.style.display = 'flex';\n\t\tsetTimeout(function () {\n\t\t\tlocation.reload();\n\t\t}, 10000);\n\t\t}\n\n\t\tfunction start_waiting_message_timer() {\n\t\tvar waiting_message_timers = [];\n\t\tvar node = document.createElement('div');\n\t\tnode.id = 'fetch_timer_message';\n\t\tnode.style.width = '100%';\n\t\tnode.style.height = '100%';\n\t\tnode.style.position = 'fixed';\n\t\tnode.style.display = 'none';\n\t\tnode.style.flexDirection = 'column';\n\t\tnode.style.alignItems = 'center';\n\t\tnode.style.justifyContent = 'center';\n\t\tnode.style.top = '0';\n\t\tnode.style.left = '0';\n\t\tnode.style.zIndex = '99999';\n\t\tnode.style.background = '#fff';\n\t\tnode.innerHTML = '<h3 style=\"padding:30px;margin:0 auto;text-align:center;max-width:600px;font-size:26px;\">Vi upplever h\u00f6gt tryck p\u00e5 v\u00e5ra serverar f\u00f6r tillf\u00e4llet, v\u00e4nligen v\u00e4nta en liten stund<\/h3><svg style=\"display:block;width:150px;margin-left:60px;\" version=\"1.1\" id=\"L5\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" x=\"0px\" y=\"0px\" viewBox=\"0 0 100 100\" enable-background=\"new 0 0 0 0\" xml:space=\"preserve\"><circle fill=\"#333\" stroke=\"none\" cx=\"6\" cy=\"50\" r=\"6\"><animateTransform attributeName=\"transform\" dur=\"1s\" type=\"translate\" values=\"0 15 ; 0 -15; 0 15\" repeatCount=\"indefinite\" begin=\"0.1\"><\/animateTransform><\/circle><circle fill=\"#333\" stroke=\"none\" cx=\"30\" cy=\"50\" r=\"6\"><animateTransform attributeName=\"transform\" dur=\"1s\" type=\"translate\" values=\"0 10 ; 0 -10; 0 10\" repeatCount=\"indefinite\" begin=\"0.2\"><\/animateTransform><\/circle><circle fill=\"#333\" stroke=\"none\" cx=\"54\" cy=\"50\" r=\"6\"><animateTransform attributeName=\"transform\" dur=\"1s\" type=\"translate\" values=\"0 5 ; 0 -5; 0 5\" repeatCount=\"indefinite\" begin=\"0.3\"><\/animateTransform><\/circle><\/svg>';\n\t\tdocument.body.appendChild(node);\n\n\t\tvar fetch_timer_message = document.querySelector('#fetch_timer_message');\n\n\t\twaiting_message_timers[0] = setTimeout(function () {\n\t\t\tfetch_timer_message.style.display = 'flex';\n\t\t}, 10000);\n\n\t\twaiting_message_timers[1] = setTimeout(function () {\n\t\t\tfetch_timer_message.style.display = 'flex';\n\t\t\tfetch_timer_message.querySelector('h3').innerHTML = 'Vi f\u00f6rs\u00f6ker fortfarande f\u00e5 kontakt med servern, v\u00e4nligen v\u00e4nta lite till.';\n\t\t}, 25000);\n\n\t\twaiting_message_timers[2] = setTimeout(function () {\n\t\t\tshow_final_timer_message(fetch_timer_message);\n\t\t}, 50000);\n\n\t\treturn waiting_message_timers;\n\t\t}\n\n\t\tfunction clear_all_waiting_timers(waiting_message_timers) {\n\t\tfor (var i = 0; i < waiting_message_timers.length; i++) {\n\t\t\tconsole.log(i);\n\t\t\tclearTimeout(waiting_message_timers[i]);\n\t\t}\n\t\t}\n\n\t\tvar waiting_message_timers = null;\n\n\t\tsubmit_button.addEventListener('click', function (event) {\n\t\tevent.preventDefault();\n\n\t\tif (do_validation()) {\n\n\t\t\tsubmit_button.setAttribute('disabled', true);\n\t\t\tsubmit_button.classList.add('ams-form__button-sending');\n\t\t\tform_sending.style.display = 'block';\n\n\t\t\tvar form_data = serializeArray(the_form);\n\n\t\t\tvar file_inputs = the_form.querySelectorAll('[type=\"file\"]');\n\n\t\t\tvar res_promise = send_form(form_data, file_inputs, the_form.querySelector('input[name=\"aca_form_id\"]').value);\n\n\t\t\twaiting_message_timers = start_waiting_message_timer();\n\n\t\t\tres_promise.then(function (response) {\n\t\t\t\treturn response.text();\n\t\t\t})\n\t\t\t\t.then(function (response) {\n\n\t\t\t\t\t\/\/ clear popup\n\t\t\t\t\tdocument.querySelector('#fetch_timer_message').style.display = 'none';\n\n\t\t\t\t\t\n\t\t\t\t\tif (response === 'failed') {\n\t\t\t\t\t\tsaveFormInLocalStorage(form_data);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tif (response.indexOf('LimitExceeded') !== -1) {\n\t\t\t\t\t\t\talert('Tiden du f\u00f6rs\u00f6kte boka \u00e4r inte l\u00e4ngre tillg\u00e4nglig');\n\t\t\t\t\t\t\tlocation.reload();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdo_tracking(form_data);\n\n\t\t\t\t\t\t\t\/\/ navigate_to_thankspage(form_data, response);\n\n\t\t\t\t\t\t\tif (kiosk) {\n\t\t\t\t\t\t\t\talert('Tack f\u00f6r din anm\u00e4lan!');\n\t\t\t\t\t\t\t\t\/\/ alert('Formul\u00e4ret har skickats!');\n\t\t\t\t\t\t\t\tlocation.reload();\n\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tnavigate_to_thankspage(form_data, response);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t\n\t\t\t\t\tupdateOfflineUi();\n\t\t\t\t}).catch(function (err) {\n\t\t\t\tform_sending.style.display = 'none';\n\t\t\t\tclear_all_waiting_timers(waiting_message_timers);\n\t\t\t\tdocument.querySelector('#fetch_timer_message').style.display = 'none';\n\t\t\t\tsaveFormInLocalStorage(form_data);\n\t\t\t\tupdateOfflineUi();\n\t\t\t});\n\t\t} else {\n\t\t\tscroll_to_first_non_validated_field();\n\t\t}\n\t\t});\n\n\t\tfunction do_tracking(data) {\n\n\t\t\twindow.dataLayer = window.dataLayer || [];\n\t\t\twindow.dataLayer.push({event: \"signupform:sent\"}); \/\/ legacy\n\n\t\t\t\t\t}\n\n\t\tvar remove_session_from_form = function (form_data_) {\n\t\tvar selected_session = null;\n\t\tform_data_.forEach(function (item, i) {\n\t\t\tif (item.name === 'session') {\n\t\t\t\tselected_session = item.value;\n\t\t\t}\n\t\t});\n\t\tvar session_element = document.querySelector('input[value=' + selected_session + ']');\n\t\tvar container_element = session_element.parentNode.parentNode;\n\t\tcontainer_element.parentNode.removeChild(container_element);\n\t\tsubmit_button.removeAttribute('disabled');\n\t\tsubmit_button.classList.remove('ams-form__button-sending');\n\t\tform_sending.style.display = 'none';\n\t\t}\n\n\t\tfunction navigate_to_thankspage(form_data_, response_) {\n\n\t\t\/* Email AND getResponse success *\/\n\t\tif (response_ === 'email_success' || response_ === 'success') {\n\t\t\twindow.location.href = 'https:\/\/praktiska.se\/sundsvall\/tack-for-anmalan-oppet-hus\/?location=Sundsvall&#038;type=oppet-hus';\n\t\t\treturn;\n\t\t}\n\n\t\tvar response = JSON.parse(response_);\n\n\t\t\/* IF 'NORMAL' thankspage Quick-Exit *\/\n\t\tif (!response.createdRegistrations) {\n\t\t\twindow.location.href = 'https:\/\/praktiska.se\/sundsvall\/tack-for-anmalan-oppet-hus\/?location=Sundsvall&#038;type=oppet-hus';\n\t\t}\n\n\t\t\/* IF 'EVENTS with Sessions' thankspage *\/\n\t\tvar registrationId = null;\n\n\t\tif (response.createdRegistrations[0].registrationResult == 'Created') {\n\t\t\tregistrationId = response.createdRegistrations[0].registrationId;\n\t\t}\n\n\t\tif (response.createdRegistrations[0].registrationResult == 'AlreadyRegistered') {\n\t\t\talert('Du har redan bokat denna tid, om du vill forts\u00e4tta och boka en tid f\u00f6r en ytterligare bes\u00f6kare v\u00e4lj en annan tid.');\n\t\t\tlocation.reload();\n\t\t\treturn;\n\t\t}\n\n\t\t\/*   *\/\n\t\tvar event_session_date = extract_event_session(form_data_);\n\t\tvar event_session_displayName_address = extract_event_session_title_and_address(form_data_);\n\n\t\tvar session_url_part = '';\n\t\tif (event_session_date !== null) {\n\t\t\tsession_url_part = '&#038;startdateutc=' + event_session_date.startdateutc + '&#038;enddateutc=' + event_session_date.enddateutc;\n\t\t\tif (registrationId !== null) {\n\t\t\t\tsession_url_part += '&#038;registrationId=' + registrationId;\n\t\t\t\tsession_url_part += '&#038;displayname=' + event_session_displayName_address.displayName;\n\t\t\t\tsession_url_part += '&#038;address=' + event_session_displayName_address.address;\n\t\t\t}\n\t\t}\n\n\t\twindow.location.href = 'https:\/\/praktiska.se\/sundsvall\/tack-for-anmalan-oppet-hus\/?location=Sundsvall&#038;type=oppet-hus' + session_url_part;\n\t\t}\n\n\t\tvar extract_event_session_title_and_address = function (form_data_) {\n\n\t\tvar session_id = null;\n\t\tform_data_.forEach(function (data, i) {\n\t\t\tif (data.name === 'session') {\n\t\t\t\tsession_id = data.value;\n\t\t\t}\n\t\t});\n\t\tif (session_id !== null) {\n\t\t\tvar session_element = get_input_element_by_value('session', session_id);\n\n\t\t\treturn {\n\t\t\t\tdisplayName: session_element.getAttribute('data-displayname'),\n\t\t\t\taddress: session_element.getAttribute('data-eventaddress')\n\t\t\t}\n\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t\t}\n\n\t\tvar extract_event_session = function (form_data_) {\n\t\tvar event = null;\n\t\tvar session = null;\n\t\tform_data_.forEach(function (data, i) {\n\t\t\tif (data.name === 'events') {\n\t\t\t\tevent = data.value;\n\t\t\t}\n\t\t\tif (data.name === 'session') {\n\t\t\t\tsession = data.value;\n\t\t\t}\n\t\t});\n\t\tif (event !== null &#038;&#038; session !== null) {\n\t\t\tvar session_element = get_input_element_by_value('session', session);\n\n\t\t\treturn {\n\t\t\t\t'startdateutc': session_element.getAttribute('data-startdateutc'),\n\t\t\t\t'enddateutc': session_element.getAttribute('data-enddateutc')\n\t\t\t}\n\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t\t}\n\n\t\tvar get_input_element_by_value = function (name, value) {\n\t\tvar all_inputs = document.querySelectorAll('input[name=' + name + ']');\n\t\tvar found_element = null;\n\t\tall_inputs.forEach(function (item, i) {\n\t\t\tif (item.value === value) {\n\t\t\t\tfound_element = item;\n\t\t\t}\n\t\t});\n\t\treturn found_element;\n\t\t}\n\n\t\tvar scroll_to_first_non_validated_field = function () {\n\t\tvar first_unvalidated_field = document.querySelectorAll('.ams-form__not-validated')[0];\n\t\tif (first_unvalidated_field) {\n\t\t\tvar header_height = document.querySelector('.header_wrapper').offsetHeight;\n\t\t\twindow.scrollTo(0, findPos(first_unvalidated_field) - header_height);\n\t\t}\n\t\t}\n\n\t\tfunction findPos(obj) {\n\t\tvar curtop = 0;\n\t\tif (obj.offsetParent) {\n\t\t\tdo {\n\t\t\t\tcurtop += obj.offsetTop;\n\t\t\t} while (obj = obj.offsetParent);\n\t\t\treturn [curtop];\n\t\t}\n\t\t}\n\n\t\t\/*\n\t\twindow.addEventListener('DOMContentLoaded', () => {\n\t\twindow.addEventListener('online', () => {\n\t\t\tvar stored_forms_string = store.get('aca-stored-forms-' + saved_aca_form_id);\n\t\t\tvar stored_forms = JSON.parse(stored_forms_string);\n\t\t\tif (stored_forms) {\n\t\t\t\tvar send_index = 0;\n\t\t\t\tsendSavedForms(stored_forms, send_index);\n\t\t\t}\n\t\t}, false);\n\t\t});\n\t\t*\/\n\n\t\tif (send_saved_forms) {\n\t\tsend_saved_forms.addEventListener('click', function (event) {\n\t\t\tvar stored_forms_string = store.get('aca-stored-forms-' + saved_aca_form_id);\n\t\t\tvar stored_forms = JSON.parse(stored_forms_string);\n\t\t\tif (stored_forms) {\n\t\t\t\tvar send_index = 0;\n\t\t\t\tvar sent_forms = 0;\n\t\t\t\tsendSavedForms(stored_forms, send_index, sent_forms);\n\t\t\t\tsend_saved_forms.setAttribute('disabled', true);\n\t\t\t}\n\t\t});\n\t\t}\n\n\t\tvar sendSavedForms = function (stored_forms, send_index, sent_forms) {\n\n\t\toffline_sending_feedback.innerHTML = 'Skickar sparat formul\u00e4r nr ' + (send_index + 1);\n\n\t\tvar res_promise = send_form(stored_forms[send_index]);\n\n\t\tres_promise.then(function (result) {\n\t\t\treturn result.text();\n\t\t}).then(function (result) {\n\n\t\t\tif (result !== 'failed' && send_index < stored_forms.length) {\n\n\t\t\t\tsend_index++;\n\t\t\t\tsent_forms++;\n\t\t\t\t\/\/ var temp_stored_forms = stored_forms;\n\t\t\t\tvar temp_stored_forms = JSON.parse(JSON.stringify(stored_forms));\n\n\t\t\t\t\/\/ temp_stored_forms.splice(send_index, 1);\n\t\t\t\ttemp_stored_forms.splice(0, sent_forms);\n\t\t\t\tstore.set('aca-stored-forms-' + saved_aca_form_id, JSON.stringify(temp_stored_forms));\n\n\t\t\t\tif (send_index === stored_forms.length) {\n\t\t\t\t\toffline_sending_feedback.innerHTML = sent_forms + ' sparade formul\u00e4r skickade';\n\t\t\t\t} else {\n\t\t\t\t\tsendSavedForms(stored_forms, send_index, sent_forms);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\toffline_sending_feedback.innerHTML = sent_forms + ' sparade formul\u00e4r skickade';\n\t\t\t}\n\n\t\t\tupdateOfflineUi();\n\t\t});\n\t\t}\n\n\t\t\/\/ var sendSavedForms = function (stored_forms, send_index, sent_forms) {\n\t\t\/\/\n\t\t\/\/ \toffline_sending_feedback.innerHTML = 'Skickar sparat formul\u00e4r nr ' + send_index;\n\t\t\/\/\n\t\t\/\/ \tvar res_promise = send_form(stored_forms[send_index]);\n\t\t\/\/\n\t\t\/\/ \tres_promise.then(function (result) {\n\t\t\/\/ \t\treturn result.text();\n\t\t\/\/ \t}).then(function (result) {\n\t\t\/\/ \t\tsend_index++;\n\t\t\/\/ \t\tif (result !== 'failed' &#038;&#038; send_index < stored_forms.length) {\n\t\t\/\/ \t\t\tsent_forms++;\n\t\t\/\/ \t\t\tvar temp_stored_forms = stored_forms;\n\t\t\/\/ \t\t\ttemp_stored_forms.splice(send_index, 1);\n\t\t\/\/ \t\t\tstore.set('aca-stored-forms-' + saved_aca_form_id, JSON.stringify(temp_stored_forms));\n\t\t\/\/\n\t\t\/\/ \t\t\tsendSavedForms(stored_forms, send_index, sent_forms);\n\t\t\/\/ \t\t} else {\n\t\t\/\/ \t\t\toffline_sending_feedback.innerHTML = sent_forms + ' sparade formul\u00e4r skickade';\n\t\t\/\/ \t\t}\n\t\t\/\/ \t\tupdateOfflineUi();\n\t\t\/\/ \t});\n\t\t\/\/ }\n\n\t\tupdateOfflineUi();\n\n\t\tvar send_form = function (form_data, files, saved_aca_form_id) {\n\n\t\t\/\/ \"fetch\" it to the backend wp ajax\n\t\t\/\/ var params = new URLSearchParams();\n\t\tvar params = new FormData(); \/\/ @recent\n\n\t\tparams.append('action', 'aca_send_form');\n\t\tparams.append('orgunitid', orgUnitId);\n\t\tparams.append('blog-id', blog_id);\n\t\tparams.append('post-id', post_id);\n\t\tparams.append('current_api', current_api);\n\t\tparams.append('current_api_type', current_api_type);\n\t\tparams.append('saved_aca_form_id', saved_aca_form_id);\n\t\tparams.append('form_page_url', window.location.href);\n\t\tparams.append('form', JSON.stringify(form_data));\n\n\t\tif (files) {\n\t\t\tfor (var i = 0; i < files.length; i++) {\n\t\t\t\tparams.append(files[i].name, files[i].files[0]);\n\t\t\t}\n\t\t}\n\n\t\treturn fetch('\/wp-admin\/admin-ajax.php', {\n\t\t\tmethod: 'POST',\n\t\t\tcredentials: 'same-origin',\n\t\t\t\/\/ headers: {'Content-Type': 'application\/x-www-form-urlencoded'}, \/\/ @recent: will not work with FormData()\n\t\t\tbody: params,\n\t\t}) \/* .then(response => {\n\t\t\t\treturn response.text();\n\t\t\t})\n\t\t\t.then(response => {\n\t\t\t\tif (response === 'failed') {\n\t\t\t\t\tsaveFormInLocalStorage(form_data);\n\t\t\t\t}\n\t\t\t\tupdateOfflineUi();\n\t\t\t}).catch(err => {\n\t\t\t\tsaveFormInLocalStorage(form_data);\n\t\t\t\tupdateOfflineUi();\n\t\t\t});  *\/\n\t\t}\n\n\t\tvar checkOnlineStatus = function () {\n\t\tvar form = new FormData();\n\t\tform.append('action', 'check_online_status');\n\t\tvar params = new URLSearchParams(form);\n\n\t\tfetch('\/wp-admin\/admin-ajax.php', {\n\t\t\tmethod: 'POST',\n\t\t\tcredentials: 'same-origin',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'application\/x-www-form-urlencoded',\n\t\t\t\t'Cache-Control': 'no-cache',\n\t\t\t},\n\t\t\tbody: params\n\t\t}).then(function (response) {\n\t\t\treturn response.text();\n\t\t})\n\t\t\t.then(function (response) {\n\t\t\t\tif (response === 'we-are-online') {\n\t\t\t\t\tconsole.log('We are online');\n\t\t\t\t} else {\n\t\t\t\t\tconsole.log('We are OFFLINE');\n\t\t\t\t}\n\t\t\t}).catch(function (err) {\n\t\t\tconsole.log('We are OFFLINE');\n\t\t});\n\t\t}\n\n\t\tvar show_kiosk_feedback = function () {\n\n\t\tif (kiosk_feedback) {\n\n\t\t\tkiosk_feedback.querySelector('p').innerHTML = 'Tack! Dina uppgifter \u00e4r nu sparade hos oss!';\n\t\t\t\/\/ kiosk_feedback.querySelector('p').innerHTML = 'Vi f\u00e5r inte kontakt med servern f\u00f6r tillf\u00e4llet s\u00e5 formul\u00e4ret sparades lokalt i webbl\u00e4saren och kan skickas n\u00e4r det finns uppkoppling igen.';\n\n\t\t\tkiosk_feedback.classList.add('shown');\n\t\t\tkiosk_feedback.parentElement.classList.add('kiosk-enabled');\n\t\t}\n\t\t}\n\n\t\tvar saveFormInLocalStorage = function (form_data) {\n\n\t\tvar stored_forms = store.get('aca-stored-forms-' + saved_aca_form_id);\n\n\t\tif (!stored_forms || kiosk) {\n\t\t\t\/\/ show feedback\n\t\t\tshow_kiosk_feedback();\n\t\t}\n\n\t\tif (!store.get('?aca-stored-forms-' + saved_aca_form_id)) {\n\t\t\tstored_forms = [];\n\t\t} else {\n\t\t\tstored_forms = JSON.parse(stored_forms);\n\t\t}\n\n\t\tstored_forms.push(form_data);\n\t\tstore.set('aca-stored-forms-' + saved_aca_form_id, JSON.stringify(stored_forms));\n\n\t\tif(kiosk) {\n\t\t\tthe_form.reset();\n\t\t}\n\n\t\tsubmit_button.removeAttribute('disabled');\n\t\t}\n\n\t\tif (show_saved_forms_button) {\n\t\tshow_saved_forms_button.addEventListener('click', function (event) {\n\t\t\tif (offline_ui_wrapper.className.indexOf('shown') != -1) {\n\t\t\t\toffline_ui_wrapper.classList.remove('shown');\n\t\t\t} else {\n\t\t\t\toffline_ui_wrapper.classList.add('shown');\n\t\t\t}\n\t\t});\n\t\t}\n\n\t\tif (delete_saved_forms) {\n\t\tdelete_saved_forms.addEventListener('click', function (event) {\n\t\t\tstore.clear();\n\t\t\toffline_ui_wrapper.classList.remove('shown');\n\t\t\tupdateOfflineUi();\n\t\t});\n\t\t}\n\n\t\tfunction updateOfflineUi() {\n\t\tvar stored_forms = store.get('aca-stored-forms-' + saved_aca_form_id);\n\t\tif (!store.get('?aca-stored-forms-' + saved_aca_form_id)) {\n\t\t\tstored_forms = [];\n\t\t\tif (kiosk_feedback) {\n\t\t\t\tkiosk_feedback.classList.remove('shown');\n\t\t\t\tkiosk_feedback.parentElement.classList.remove('kiosk-enabled');\n\t\t\t}\n\t\t} else {\n\t\t\tif (kiosk_feedback) {\n\t\t\t\tkiosk_feedback.classList.add('shown');\n\t\t\t\tkiosk_feedback.parentElement.classList.add('kiosk-enabled');\n\t\t\t}\n\t\t\tstored_forms = JSON.parse(stored_forms);\n\t\t}\n\n\t\tif (offline_ui) {\n\n\t\t\toffline_ui.innerHTML = stored_forms.length + ' formul\u00e4r sparade';\n\n\t\t\tif (!stored_forms.length) {\n\n\t\t\t\tkiosk_feedback.classList.remove('shown');\n\t\t\t\toffline_ui.parentNode.classList.remove('shown');\n\t\t\t}\n\t\t}\n\t\t}\n\n\t\tfunction addValidationError(item, type) {\n\t\tvar text = item.querySelector('.ams-form__not-validated-text');\n\t\tif (text) {\n\t\t\treturn;\n\t\t}\n\t\tvar node = document.createElement('div');\n\t\tnode.className = 'ams-form__not-validated-text';\n\t\tnode.style.fontWeight = '300';\n\n\t\t\/*\n\t\tif (type === 'field') {\n\t\t\tvar textnode = document.createTextNode(item.querySelector('._title').textContent + ' m\u00e5ste vara ifyllt');\n\t\t} else {\n\t\t\tvar textnode = document.createTextNode('Ett ' + item.querySelector('._title').textContent + ' m\u00e5ste vara ikryssat');\n\t\t}*\/\n\t\tvar textnode = document.createTextNode('Detta f\u00e4lt m\u00e5ste fyllas i');\n\n\t\tnode.appendChild(textnode);\n\t\titem.appendChild(node);\n\n\t\t}\n\n\t\tfunction removeValidationError(item) {\n\n\t\t\/**\n\t\t * Due to a dubious nature of do_validation(), this method can be called with 'item' parameter\n\t\t * being entire '.ams_form' which, in tern, would hide validation messages on invalid\n\t\t * fields (while invalid (visual) feedback will remain). As code of do_validation()\n\t\t * is beyond fixable and has to be refactored, easiest way forward is to check\n\t\t * if 'item' is actually '.ams-form__field' element (class, which (hopefully)\n\t\t * is used for each and every input (group)).\n\t\t *\n\t\t * @see https:\/\/app.asana.com\/0\/1200531310718450\/1201976555254788\n\t\t *\/\n\n\t\tif (item.className.indexOf('ams-form__field') === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar text = item.querySelector('.ams-form__not-validated-text');\n\t\tif (text) {\n\t\t\ttext.remove();\n\t\t}\n\t\t}\n\n\t\tfunction do_validation(field) {\n\t\t\tvar is_validated = true;\n\n\t\t\tif (field) {\n\t\t\t\tif (field.type === 'checkbox' || field.type === 'radio') {\n\n\n\t\t\t\t\tvar fieldName = field.name;\n\t\t\t\t\t\/* for educationtree and City we need fifth parent *\/\n\t\t\t\t\tif (fieldName.indexOf('Educationtree') == 0 || fieldName.indexOf('City') == 0) {\n\t\t\t\t\t\tvar these_fields = [field.parentNode.parentNode.parentNode.parentNode.parentNode];\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tvar these_fields = [field.parentNode.parentNode.parentNode.parentNode];\n\t\t\t\t\t}\n\n\n\t\t\t\t\tif (these_fields[0].className.indexOf('ams-form__not-validated') === -1) {\n\n\t\t\t\t\t\t\/**\n\t\t\t\t\t\t * It's questionable if below selector should be the only one. Due to dubious\n\t\t\t\t\t\t * nature of this crap, leaving it within if() to prevent unforeseen bugs...\n\t\t\t\t\t\t *\/\n\n\t\t\t\t\t\tthese_fields = [field.parentNode.parentNode.parentNode.parentNode.parentNode];\n\t\t\t\t\t}\n\n\t\t\t\t} else {\n\t\t\t\t\tvar these_fields = [field.parentNode];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tvar these_fields = all_required_fields;\n\t\t\t}\n\n\t\t\tthese_fields.forEach(function (item, i) {\n\n\t\t\t\t\/\/ don't validate a hidden field\n\t\t\t\tif (item.parentNode.className === 'conditional-container' && item.parentNode.style.display === 'none') {\n\n\t\t\t\t\t\/**\n\t\t\t\t\t * V.S. (25th of August 2021) - setting it true here would validate otherwise invalid form\n\t\t\t\t\t * if error occurred anywhere before conditional-container. It was discovered after\n\t\t\t\t\t * reported bug on: http:\/\/academedia-ams.development\/ronninge\/\n\t\t\t\t\t *\n\t\t\t\t\t * Scenario:\n\t\t\t\t\t *\n\t\t\t\t\t * ...\n\t\t\t\t\t * Email field -> required\n\t\t\t\t\t * ...\n\t\t\t\t\t * conditional container\n\t\t\t\t\t *\n\t\t\t\t\t * Even if email was empty (invalid), form was validated at this step...\n\t\t\t\t\t *\/\n\n\t\t\t\t\t\/\/ is_validated = true;\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (item.className.indexOf('_event-with-session-field_') !== -1) {\n\n\t\t\t\t\tvar boxes_validated = false;\n\t\t\t\t\tvar selected_session = getEventSessionValue(item);\n\t\t\t\t\tif (selected_session.length) {\n\t\t\t\t\t\tboxes_validated = true;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (boxes_validated === false) {\n\t\t\t\t\t\titem.classList.add('ams-form__not-validated');\n\t\t\t\t\t\titem.setAttribute('aria-invalid', true);\n\t\t\t\t\t\taddValidationError(item, 'boxes');\n\t\t\t\t\t\tis_validated = false;\n\t\t\t\t\t} else {\n\t\t\t\t\t\titem.classList.remove('ams-form__not-validated');\n\t\t\t\t\t\titem.setAttribute('aria-invalid', false);\n\t\t\t\t\t\tremoveValidationError(item);\n\t\t\t\t\t}\n\n\t\t\t\t} else if (item.className.indexOf('ams-form__checkbox-wrapper') !== -1 || item.className.indexOf('ams-form__radio-dropdown') !== -1) {\n\n\n\t\t\t\t\t\/\/ multiples\n\t\t\t\t\t\/\/ IF select\n\n\t\t\t\t\tif (item.className.indexOf('ams-form__checkbox-dropdown') !== -1) {\n\n\t\t\t\t\t\tvar boxes_validated = false;\n\t\t\t\t\t\tlet selectionListItem = document.querySelectorAll('.aca-dropdown-selection__item:not(.markup)');\n\t\t\t\t\t\tvar selected_options = item.querySelectorAll('input:checked');\n\t\t\t\t\t\tif (selected_options.length > 0 || selectionListItem.length > 0) {\n\t\t\t\t\t\t\tboxes_validated = true;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (boxes_validated === false) {\n\t\t\t\t\t\t\titem.classList.add('ams-form__not-validated');\n\t\t\t\t\t\t\titem.setAttribute('aria-invalid', true);\n\t\t\t\t\t\t\taddValidationError(item, 'boxes');\n\t\t\t\t\t\t\tis_validated = false;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\titem.classList.remove('ams-form__not-validated');\n\t\t\t\t\t\t\titem.setAttribute('aria-invalid', false);\n\t\t\t\t\t\t\tremoveValidationError(item);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\/\/ IF checkboxes\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\/\/ var boxes_validated = false;\n\t\t\t\t\t\t\/\/ var boxes = item.querySelectorAll('input');\n\t\t\t\t\t\t\/\/ for (var i = 0; i < boxes.length; i++) {\n\t\t\t\t\t\t\/\/ \tif (boxes[i].checked) {\n\t\t\t\t\t\t\/\/ \t\tboxes_validated = true;\n\t\t\t\t\t\t\/\/ \t}\n\t\t\t\t\t\t\/\/ }\n\n\t\t\t\t\t\tvar boxes_validated = Boolean(item.querySelectorAll('input:checked').length);\n\n\t\t\t\t\t\tif (boxes_validated === false) {\n\t\t\t\t\t\t\titem.classList.add('ams-form__not-validated');\n\t\t\t\t\t\t\titem.setAttribute('aria-invalid', true);\n\t\t\t\t\t\t\taddValidationError(item, 'boxes');\n\t\t\t\t\t\t\tis_validated = false;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\titem.classList.remove('ams-form__not-validated');\n\t\t\t\t\t\t\titem.setAttribute('aria-invalid', false);\n\t\t\t\t\t\t\tremoveValidationError(item);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else if (item.className.indexOf('ams-form__recaptcha-wrapper') !== -1) {\n\n\t\t\t\t\tif (typeof grecaptcha !== 'undefined') {\n\t\t\t\t\t\tif (!grecaptcha.getResponse().length) {\n\n\t\t\t\t\t\t\titem.setAttribute('aria-invalid', true);\n\t\t\t\t\t\t\titem.classList.add('ams-form__not-validated');\n\t\t\t\t\t\t\taddValidationError(item);\n\t\t\t\t\t\t\tis_validated = false;\n\t\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\titem.setAttribute('aria-invalid', false);\n\t\t\t\t\t\t\titem.classList.remove('ams-form__not-validated');\n\t\t\t\t\t\t\tremoveValidationError(item);\n\t\t\t\t\t\t\t\/\/ is_validated = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\n\t\t\t\t\t\/\/ other inputs\n\t\t\t\t\tvar field = item.querySelector('input');\n\n\t\t\t\t\tif (!field) {\n\t\t\t\t\t\tvar field = item.querySelector('textarea');\n\t\t\t\t\t}\n\n\t\t\t\t\tif (field) {\n\t\t\t\t\t\tvar _field = item.querySelector('input');\n\t\t\t\t\t\tif (!_field) {\n\t\t\t\t\t\t\tvar _field = item.querySelector('textarea');\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\/\/ IF childInformation__  YEAR and MONTH\n\t\t\t\t\t\tif (field.name === 'childInformation__birthyear') {\n\t\t\t\t\t\t\tvar field_year = field;\n\t\t\t\t\t\t\tvar field_month = field.parentNode.parentNode.querySelector('[name=\"childInformation__birthmonth\"]');\n\n\t\t\t\t\t\t\tif (((new RegExp(\"[0-9]\")).test(field_year.value) &#038;&#038; (field_year.value.length == 4)) &#038;&#038; ((new RegExp(\"[0-9]\")).test(field_month.value) &#038;&#038; (field_month.value < 13 &#038;&#038; field_month.value != 0))) {\n\t\t\t\t\t\t\t\t\/\/ if ((\/^\\d+$\/.test(field_year.value) &#038;&#038; (field_year.value.length == 4)) &#038;&#038; (\/^\\d+$\/.test(field_month.value) &#038;&#038; (field_month.value < 13 &#038;&#038; field_month.value != 0))) {\n\t\t\t\t\t\t\t\tremoveValidationError(item);\n\t\t\t\t\t\t\t\titem.classList.remove('ams-form__not-validated');\n\t\t\t\t\t\t\t\t_field.setAttribute('aria-invalid', false);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\titem.classList.add('ams-form__not-validated');\n\t\t\t\t\t\t\t\tfield.setAttribute('aria-invalid', true);\n\t\t\t\t\t\t\t\taddValidationError(item, 'field');\n\t\t\t\t\t\t\t\tis_validated = false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else if (field.name === 'Email' || field.name === 'email') {\n\n\t\t\t\t\t\t\tif (!validate_email(field.value)) {\n\t\t\t\t\t\t\t\titem.classList.add('ams-form__not-validated');\n\t\t\t\t\t\t\t\t_field.setAttribute('aria-invalid', true);\n\t\t\t\t\t\t\t\tis_validated = false;\n\t\t\t\t\t\t\t\taddValidationError(item, 'field');\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tremoveValidationError(item);\n\t\t\t\t\t\t\t\titem.classList.remove('ams-form__not-validated');\n\t\t\t\t\t\t\t\t_field.setAttribute('aria-invalid', false);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else if (field.name === 'mobilePhoneNumber' || field.name === 'Phone') {\n\n\t\t\t\t\t\t\t\/\/ mobilePhoneNumber\n\t\t\t\t\t\t\tif (field.value.length > 8 && \/^\\d+$\/.test(field.value)) {\n\t\t\t\t\t\t\t\t\/\/ success\n\t\t\t\t\t\t\t\tremoveValidationError(item);\n\t\t\t\t\t\t\t\titem.classList.remove('ams-form__not-validated');\n\t\t\t\t\t\t\t\t_field.setAttribute('aria-invalid', false);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\/\/ Fail\n\t\t\t\t\t\t\t\titem.classList.add('ams-form__not-validated');\n\t\t\t\t\t\t\t\t_field.setAttribute('aria-invalid', true);\n\t\t\t\t\t\t\t\tis_validated = false;\n\t\t\t\t\t\t\t\taddValidationError(item, 'field');\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t} else if (field.value.length < 2) {\n\t\t\t\t\t\t\titem.classList.add('ams-form__not-validated');\n\t\t\t\t\t\t\t_field.setAttribute('aria-invalid', true);\n\t\t\t\t\t\t\tis_validated = false;\n\t\t\t\t\t\t\taddValidationError(item, 'field');\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tremoveValidationError(item);\n\t\t\t\t\t\t\titem.classList.remove('ams-form__not-validated');\n\t\t\t\t\t\t\t_field.setAttribute('aria-invalid', false);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\n\t\t\treturn is_validated;\n\t\t}\n\n\t\tfunction validate_email(string) {\n\t\tif (\/[a-z0-9!#$%&#038;'*+\/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&#038;'*+\/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\/.test(string)) {\n\t\t\treturn (true);\n\t\t}\n\t\treturn (false);\n\t\t}\n\n\t\tfunction getEventSessionValue(field) {\n\t\tvar selected_session = field.querySelectorAll('input[name=session]:checked');\n\n\t\treturn selected_session;\n\t\t}\n\n\t\tfunction getMultiSelectValues(select) {\n\t\tvar result = [];\n\t\tvar options = select &#038;&#038; select.options;\n\t\tvar opt;\n\n\t\tfor (var i = 0, iLen = options.length; i < iLen; i++) {\n\t\t\topt = options[i];\n\n\t\t\tif (opt.selected) {\n\t\t\t\tresult.push(opt.value || opt.text);\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t\t}\n\n\t\t\/*!\n\t\t* Serialize all form data into an array\n\t\t* (c) 2018 Chris Ferdinandi, MIT License, https:\/\/gomakethings.com\n\t\t* @param  {Node}   form The form to serialize\n\t\t* @return {String}      The serialized form data\n\t\t*\/\n\t\tvar serializeArray = function (form) {\n\n\t\t\/\/ Setup our serialized data\n\t\tvar serialized = [];\n\n\t\t\/\/ Loop through each field in the form\n\t\tfor (var i = 0; i < form.elements.length; i++) {\n\n\t\t\tvar field = form.elements[i];\n\n\t\t\t\/\/ Don't serialize fields without a name, submits, buttons, file and reset inputs, and disabled fields\n\t\t\tif (!field.name || field.type === 'file' || field.type === 'reset' || field.type === 'submit' || field.type === 'button') continue;\n\n\t\t\t\/\/ If a multi-select, get all selections\n\t\t\tif (field.type === 'select-multiple') {\n\n\t\t\t\tfor (var n = 0; n < field.options.length; n++) {\n\t\t\t\t\tif (!field.options[n].selected) continue;\n\t\t\t\t\tserialized.push({\n\t\t\t\t\t\tname: field.name,\n\t\t\t\t\t\tvalue: field.options[n].value\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t\/\/ Convert field data to a query string\n\t\t\telse if ((field.type !== 'checkbox' &#038;&#038; field.type !== 'radio') || field.checked) {\n\t\t\t\tserialized.push({\n\t\t\t\t\tname: field.name,\n\t\t\t\t\tvalue: field.value,\n\t\t\t\t\tnicename: field.getAttribute('data-nicename')\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\treturn serialized;\n\n\t\t};\n\n\t\tfunction getParams(url) {\n\t\tvar params = {};\n\t\tvar parser = document.createElement('a');\n\t\tparser.href = url;\n\t\tvar query = parser.search.substring(1);\n\t\tvar vars = query.split('&#038;');\n\t\tfor (var i = 0; i < vars.length; i++) {\n\t\t\tvar pair = vars[i].split('=');\n\t\t\tparams[pair[0]] = decodeURIComponent(pair[1]);\n\t\t}\n\t\treturn params;\n\t\t};\n\t}\n\n})();\n\n(function () {\n\n\twindow.addEventListener('DOMContentLoaded', function () {\n\n\t\tconst currentFormId = document.querySelector('input[name=\"aca_form_id\"]').value; \/\/Eductus Rusta och matcha form with id g6D2cDrGYSPf\n\n\t\tif(currentFormId == \"g6D2cDrGYSPf\"){\n\n\t\t\tlet isFormInteracted = false;\n\t\t\tlet formSubmitted = false;\n\t\t\tconst formId = \"ams-form__6a869ebb76d5c\";\n\t\t\tconst form = document.querySelector(\"#\" + formId);\n\t\t\tconst inputFields = form.querySelectorAll('input:not([type=\"hidden\"])');\n\n\t\t\tform.addEventListener('submit', function() {\n\t\t\t\tformSubmitted = true;\n\t\t\t});\n\n\t\t\tinputFields.forEach(field => {\n\t\t\t\tfield.addEventListener('focus', function() {\n\t\t\t\t\tisFormInteracted = true;\n\t\t\t\t});\n\t\t\t});\n\n\t\t\twindow.addEventListener('beforeunload', function(event) {\n\t\t\t\tif (isFormInteracted && !formSubmitted) {\n\t\t\t\t\ttrackAbandonedField();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tfunction getFieldsWithData(form) {\n\t\t\t\tlet data = {};\n\n\t\t\t\tfor (let inputElem of form.elements) {\n\t\t\t\t\tif (inputElem.tagName === 'INPUT' && inputElem.type !== \"hidden\") {\n\t\t\t\t\t\tlet niceName = inputElem.getAttribute('data-nicename');\n\t\t\t\t\t\tif(inputElem.type == \"text\"){\n\t\t\t\t\t\t\tdata[niceName] = inputElem.value ? \"true\" : \"false\";\n\t\t\t\t\t\t} else if(inputElem.type == \"checkbox\") {\n\t\t\t\t\t\t\tdata[niceName] = inputElem.checked ? \"true\" : \"false\";\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn data;\n\t\t\t}\n\n\t\t\tfunction trackAbandonedField() {\n\t\t\t\tlet fieldsWithData = getFieldsWithData(form);\n\t\t\t\twindow.dataLayer = window.dataLayer || [];\n\t\t\t\twindow.dataLayer.push({\n\t\t\t\t\t'event': 'formStarted',\n\t\t\t\t\t'formFields': fieldsWithData\n\t\t\t\t});\n\t\t\t}\n\n\t\t}\n\n\t})\n\n})();\n\n<\/script>\n\n\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n<\/div>\n\n\n\n\t\n\t\n\t\n\n\t\n\t\n\t\t\n<section  class=\"c-block l-stacked  \" data-color-scheme=\"white\">\n\t<div class=\"ams-fifty ams-fifty--container ams-fifty--left ams-fifty--top l-container u-pt-fluid-3xl-6xl u-pb-fluid-3xl-6xl\">\n\t\t<div class=\"ams-fifty__content l-stack l-stack-xl is-left is-left@lg\">\n\t\t\t<div class=\"ams-fifty__text l-stack l-stack-lg\">\n\t\t\t\t\t\n\t<h2\n\tclass=\"c-heading u-font-title-1 \"\n\tstyle=\"\">\n\t\t\n\t\t\t\t\tAPL &#038; l\u00e4rling\n\t\t\t\t\n\t<\/h2>\n\n\t\t\t\t\t\t\t\t\t<div class=\"text l-stack u-font-body\">\n\t\t\t\t\t\t<p>P\u00e5 gymnasiet kallas praktik f\u00f6r apl (arbetsplatsf\u00f6rlagt l\u00e4rande) och under dina tre \u00e5r hos oss kommer du att g\u00f6ra apl p\u00e5 ett f\u00f6retag i minst 15 veckor. F\u00f6r dig som l\u00e4ser till ventilationstekniker hos oss i Sundsvall finns det<i>\u00a0m\u00f6jligheter<\/i>\u00a0att\u00a0<i>ans\u00f6ka<\/i> om att f\u00e5 l\u00e4sa som l\u00e4rling fr\u00e5n \u00e5rskurs 2. Blir du antagen att l\u00e4sa som l\u00e4rling, kommer du att spendera mer \u00e4n 50 % av din studietid ute p\u00e5 ett f\u00f6retag, r\u00e4knat fr\u00e5n det l\u00e4s\u00e5r du blir antagen som l\u00e4rling. P\u00e5 arbetsplatsen f\u00e5r du l\u00e4ra dig olika moment och utveckla dina yrkeskunskaper i verkliga arbetssituationer.<\/p>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\n\t\t\t\t<div class=\"ams-fifty__action u-inline-items\">\n\t\t\t\t\t\t\t\n\n\n\n<a href=\"https:\/\/praktiska.se\/sundsvall\/om-praktiska\/apl\/\"\n\t\n\tclass=\"c-btn \"\n\tdata-style=\"round\"\n\tdata-size=\"md\"\n\tdata-width=\"full-mobile\"\n\tdata-variant=\"default\"\n\ttarget=\"_self\">\n\t\t\t<span class=\"label\"> Om APL &#038; L\u00e4rling<\/span>\n\t\t\t\t\t\t\n\t<\/a>\n\t\t\t<\/div>\n\t\t<\/div>\n\n\t\t <div class=\"ams-fifty__media u-ratio-square\">\n\t\t \t\t\t\t\t<img decoding=\"async\" width=\"600\" height=\"900\" src=\"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/praktiskagymnasietnykvarn202304-202804web20-600x900.jpg\" class=\"attachment-md size-md\" alt=\"Tv\u00e5 elever p\u00e5 ventilation monterar ihop ett ventilationssystem.\" sizes=\"(min-width: 64em) 600px, calc(100vw - 160px)\" srcset=\"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/praktiskagymnasietnykvarn202304-202804web20-600x900.jpg 600w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/praktiskagymnasietnykvarn202304-202804web20-300x450.jpg 300w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/praktiskagymnasietnykvarn202304-202804web20-400x600.jpg 400w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/praktiskagymnasietnykvarn202304-202804web20-800x1200.jpg 800w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/praktiskagymnasietnykvarn202304-202804web20-1024x1536.jpg 1024w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/praktiskagymnasietnykvarn202304-202804web20-1200x1800.jpg 1200w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/praktiskagymnasietnykvarn202304-202804web20.jpg 1365w\" \/>\n\t\t\t\n\t\t\t\n\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t\t\n\n<\/section>\n\n\n\n<section  class=\"ams-point-plan c-block l-stacked\" data-color-scheme=\"poangplan\">\n\t<div class=\"l-container-narrow l-stack l-stack-fluid-2xl u-pt-fluid-3xl-6xl u-pb-fluid-3xl-6xl is-center is-center@md\">\n\t\t\t\t\t<div class=\"ams-point-plan__intro l-stack l-stack-lg\">\n\t\t\t\t\t\n\t<h2\n\tclass=\"c-heading u-font-title-1 \"\n\tstyle=\"\">\n\t\t\n\t\t\t\t\tPo\u00e4ngplan\n\t\t\t\t\n\t<\/h2>\n\n\t\t\t\t\t\t\t\t\t<div class=\"c-text l-stack u-cs-xl u-font-body\">\n\t\t\t\t\t\t<p class=\"p1\">Vi reserverar oss f\u00f6r att po\u00e4ngplanen kan komma att \u00e4ndras.<\/p>\n<p class=\"p1\">*I alla yrkesprogram ing\u00e5r de \u00e4mnen som kr\u00e4vs f\u00f6r grundl\u00e4ggande h\u00f6gskolebeh\u00f6righet.\u00a0Du som l\u00e4ser ett yrkesprogram kan v\u00e4lja bort de \u00e4mnesniv\u00e5erna om du inte \u00f6nskar l\u00e4sa dem.<\/p>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\n\t\t\t<ul class=\"ams-point-plan__ac c-accordion\" aria-label=\"Po\u00e4ngplan\" data-variant=\"space-between\">\n\t\t<li class=\"ams-point-plan__tp u-font-title-4 u-py-sm u-px-fluid-md-xl\">\n\t\t\t<span class=\"title\">Totala po\u00e4ng<\/span>\n\t\t\t<span class=\"points\">2800p<\/span>\n\t\t<\/li>\n\t\t\t\t\t<li class=\"c-accordion__item\">\n\t\t\t\t<h3 class=\"c-accordion__header \">\n\t\t\t\t\t\t\t\t\t\t<button class=\"c-accordion__trigger u-py-sm u-px-fluid-md-xl u-font-title-4\">\n\t\t\t\t\t\t<span>Gymnasiegemensamma \u00e4mnen<\/span>\n\t\t\t\t\t\t<svg class=\"ams-icon ams-icon__arrow-down\" width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" fill=\"currentColor\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<path d=\"m11.2033 18.4294-10.872894-10.67584c-.440539-.42594-.440539-1.1147 0-1.54065l.665495-.64345c.440539-.42595 1.152899-.42595 1.593439 0l9.41066 9.27114 9.4107-9.26207c.4405-.42595 1.1529-.42595 1.5934 0l.6655.64345c.4405.42594.4405 1.1147 0 1.54065l-10.8729 10.67587c-.4405.4168-1.1529.4168-1.5934-.0091z\"\/>\n\t\t\t\t\t\n\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t<\/button>\n\t\t\t\t<\/h3>\n\t\t\t\t<div class=\"c-accordion__body u-font-body\">\n\t\t\t\t\t<ul class=\"points-list u-list-none\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Engelska niv\u00e5 1 <\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Engelska niv\u00e5 2*<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Historia niv\u00e5 1a1<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">50<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Idrott och h\u00e4lsa niv\u00e5 1<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Matematik niv\u00e5 1a<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Naturkunskap niv\u00e5 1a1<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">50<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Religionskunskap niv\u00e5 1<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">50<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Samh\u00e4llskunskap niv\u00e5 1a1<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">50<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Svenska \/ Svenska som andraspr\u00e5k niv\u00e5 1<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Svenska \/ Svenska som andraspr\u00e5k niv\u00e5 2*<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Svenska \/ Svenska som andraspr\u00e5k niv\u00e5 3*<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t<\/div>\n\t\t\t<\/li>\n\t\t\t\t\t<li class=\"c-accordion__item\">\n\t\t\t\t<h3 class=\"c-accordion__header \">\n\t\t\t\t\t\t\t\t\t\t<button class=\"c-accordion__trigger u-py-sm u-px-fluid-md-xl u-font-title-4\">\n\t\t\t\t\t\t<span>Programgemensamma \u00e4mnen<\/span>\n\t\t\t\t\t\t<svg class=\"ams-icon ams-icon__arrow-down\" width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" fill=\"currentColor\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<path d=\"m11.2033 18.4294-10.872894-10.67584c-.440539-.42594-.440539-1.1147 0-1.54065l.665495-.64345c.440539-.42595 1.152899-.42595 1.593439 0l9.41066 9.27114 9.4107-9.26207c.4405-.42595 1.1529-.42595 1.5934 0l.6655.64345c.4405.42594.4405 1.1147 0 1.54065l-10.8729 10.67587c-.4405.4168-1.1529.4168-1.5934-.0091z\"\/>\n\t\t\t\t\t\n\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t<\/button>\n\t\t\t\t<\/h3>\n\t\t\t\t<div class=\"c-accordion__body u-font-body\">\n\t\t\t\t\t<ul class=\"points-list u-list-none\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Installationsteknik niv\u00e5 1<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">VVS och fastighet niv\u00e5 1<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">VVS och fastighet niv\u00e5 2<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">200<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t<\/div>\n\t\t\t<\/li>\n\t\t\t\t\t<li class=\"c-accordion__item\">\n\t\t\t\t<h3 class=\"c-accordion__header \">\n\t\t\t\t\t\t\t\t\t\t<button class=\"c-accordion__trigger u-py-sm u-px-fluid-md-xl u-font-title-4\">\n\t\t\t\t\t\t<span>Inriktnings\u00e4mnen<\/span>\n\t\t\t\t\t\t<svg class=\"ams-icon ams-icon__arrow-down\" width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" fill=\"currentColor\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<path d=\"m11.2033 18.4294-10.872894-10.67584c-.440539-.42594-.440539-1.1147 0-1.54065l.665495-.64345c.440539-.42595 1.152899-.42595 1.593439 0l9.41066 9.27114 9.4107-9.26207c.4405-.42595 1.1529-.42595 1.5934 0l.6655.64345c.4405.42594.4405 1.1147 0 1.54065l-10.8729 10.67587c-.4405.4168-1.1529.4168-1.5934-.0091z\"\/>\n\t\t\t\t\t\n\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t<\/button>\n\t\t\t\t<\/h3>\n\t\t\t\t<div class=\"c-accordion__body u-font-body\">\n\t\t\t\t\t<ul class=\"points-list u-list-none\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Ventilation \u2013 installation niv\u00e5 1<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">200<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Ventilation \u2013 installation niv\u00e5 2<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">200<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Ventilation \u2013 installation niv\u00e5 3<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t<\/div>\n\t\t\t<\/li>\n\t\t\t\t\t<li class=\"c-accordion__item\">\n\t\t\t\t<h3 class=\"c-accordion__header \">\n\t\t\t\t\t\t\t\t\t\t<button class=\"c-accordion__trigger u-py-sm u-px-fluid-md-xl u-font-title-4\">\n\t\t\t\t\t\t<span>F\u00f6rdjupnings\u00e4mnen<\/span>\n\t\t\t\t\t\t<svg class=\"ams-icon ams-icon__arrow-down\" width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" fill=\"currentColor\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<path d=\"m11.2033 18.4294-10.872894-10.67584c-.440539-.42594-.440539-1.1147 0-1.54065l.665495-.64345c.440539-.42595 1.152899-.42595 1.593439 0l9.41066 9.27114 9.4107-9.26207c.4405-.42595 1.1529-.42595 1.5934 0l.6655.64345c.4405.42594.4405 1.1147 0 1.54065l-10.8729 10.67587c-.4405.4168-1.1529.4168-1.5934-.0091z\"\/>\n\t\t\t\t\t\n\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t<\/button>\n\t\t\t\t<\/h3>\n\t\t\t\t<div class=\"c-accordion__body u-font-body\">\n\t\t\t\t\t<ul class=\"points-list u-list-none\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Ventilationsteknik niv\u00e5 1<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Ventilationsteknik niv\u00e5 2<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">200<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Ventilationsteknik niv\u00e5 3<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">200<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Ell\u00e4ra niv\u00e5 1<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Entrepren\u00f6rskap niv\u00e5 1<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t<\/div>\n\t\t\t<\/li>\n\t\t\t\t\t<li class=\"c-accordion__item\">\n\t\t\t\t<h3 class=\"c-accordion__header \">\n\t\t\t\t\t\t\t\t\t\t<button class=\"c-accordion__trigger u-py-sm u-px-fluid-md-xl u-font-title-4\">\n\t\t\t\t\t\t<span>Gymnasiearbete<\/span>\n\t\t\t\t\t\t<svg class=\"ams-icon ams-icon__arrow-down\" width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" fill=\"currentColor\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<path d=\"m11.2033 18.4294-10.872894-10.67584c-.440539-.42594-.440539-1.1147 0-1.54065l.665495-.64345c.440539-.42595 1.152899-.42595 1.593439 0l9.41066 9.27114 9.4107-9.26207c.4405-.42595 1.1529-.42595 1.5934 0l.6655.64345c.4405.42594.4405 1.1147 0 1.54065l-10.8729 10.67587c-.4405.4168-1.1529.4168-1.5934-.0091z\"\/>\n\t\t\t\t\t\n\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t<\/button>\n\t\t\t\t<\/h3>\n\t\t\t\t<div class=\"c-accordion__body u-font-body\">\n\t\t\t\t\t<ul class=\"points-list u-list-none\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Gymnasiearbete<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">100<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t<\/div>\n\t\t\t<\/li>\n\t\t\t\t\t<li class=\"c-accordion__item\">\n\t\t\t\t<h3 class=\"c-accordion__header \">\n\t\t\t\t\t\t\t\t\t\t<button class=\"c-accordion__trigger u-py-sm u-px-fluid-md-xl u-font-title-4\">\n\t\t\t\t\t\t<span>Individuellt val<\/span>\n\t\t\t\t\t\t<svg class=\"ams-icon ams-icon__arrow-down\" width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" fill=\"currentColor\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<path d=\"m11.2033 18.4294-10.872894-10.67584c-.440539-.42594-.440539-1.1147 0-1.54065l.665495-.64345c.440539-.42595 1.152899-.42595 1.593439 0l9.41066 9.27114 9.4107-9.26207c.4405-.42595 1.1529-.42595 1.5934 0l.6655.64345c.4405.42594.4405 1.1147 0 1.54065l-10.8729 10.67587c-.4405.4168-1.1529.4168-1.5934-.0091z\"\/>\n\t\t\t\t\t\n\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t<\/button>\n\t\t\t\t<\/h3>\n\t\t\t\t<div class=\"c-accordion__body u-font-body\">\n\t\t\t\t\t<ul class=\"points-list u-list-none\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<span class=\"title\">Individuellt val<\/span>\n\t\t\t\t\t\t\t\t<span class=\"points\">200<\/span>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t<\/div>\n\t\t\t<\/li>\n\t\t\t<\/ul>\n\n\t\t\t<\/div>\n\n\t\t\n\n<\/section>\n\n\n\n\t<div class=\"module_wrapper ams_remote_pages_module \">\n\t\t\n<section  class=\"ams-cta ams-cta--stacked c-block l-stacked\" data-color-scheme=\"orange\">\n\t<div class=\"l-container-narrow l-stack l-stack-fluid-2xl u-pt-fluid-3xl-6xl u-pb-fluid-3xl-6xl is-center is-center@md\">\n\t\t\t\t\t<div class=\"ams-cta__intro l-stack l-stack-lg\">\n\t\t\t\t\t\n\t<h2\n\tclass=\"c-heading u-font-title-1 \"\n\tstyle=\"\">\n\t\t\n\t\t\t\t\tVill du bes\u00f6ka oss?\n\t\t\t\t\n\t<\/h2>\n\n\t\t\t\t\t\t\t\t\t<div class=\"c-text l-stack u-cs-xl u-font-body\">\n\t\t\t\t\t\t<p><span data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;Alla v\u00e5ra gymnasieprogram p\u00e5 Sj\u00f6lins \u00e4r h\u00f6gskolef\u00f6rberedande och ger dig en tydlig koppling till samh\u00e4llet genom case-arbete.\\n\\n\\n&quot;}\" data-sheets-userformat=\"{&quot;2&quot;:5025,&quot;3&quot;:{&quot;1&quot;:0},&quot;8&quot;:{&quot;1&quot;:[{&quot;1&quot;:2,&quot;2&quot;:0,&quot;5&quot;:{&quot;1&quot;:2,&quot;2&quot;:0}},{&quot;1&quot;:0,&quot;2&quot;:0,&quot;3&quot;:3},{&quot;1&quot;:1,&quot;2&quot;:0,&quot;4&quot;:1}]},&quot;10&quot;:0,&quot;11&quot;:4,&quot;12&quot;:0,&quot;15&quot;:&quot;Roboto&quot;}\"> Kom p\u00e5 \u00f6ppet hus och prata med l\u00e4rare och elever fr\u00e5n alla v\u00e5ra program och se dig om i v\u00e5ra lokaler. Du kan ocks\u00e5 anm\u00e4la dig till elev f\u00f6r en dag och h\u00e4nga med p\u00e5 en vanlig skoldag och k\u00e4nna hur det \u00e4r att vara elev hos oss. <\/span><\/p>\n\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\n\t\t\n\t\t\t<div class=\"ams-cta__action u-inline-items\">\n\t\t\t\t\t\t\t\n\n\n\n<a href=\"https:\/\/praktiska.se\/sundsvall\/oppet-hus\/\"\n\t\n\tclass=\"c-btn \"\n\tdata-style=\"round\"\n\tdata-size=\"md\"\n\tdata-width=\"full-mobile\"\n\tdata-variant=\"default\"\n\ttarget=\"_self\">\n\t\t\t<span class=\"label\"> Kom p\u00e5 \u00f6ppet hus<\/span>\n\t\t\t\t\t\t\n\t<\/a>\n\t\t\t\t\t\t\t\n\n\n\n<a href=\"https:\/\/praktiska.se\/sundsvall\/elev-for-en-dag\/\"\n\t\n\tclass=\"c-btn \"\n\tdata-style=\"round\"\n\tdata-size=\"md\"\n\tdata-width=\"full-mobile\"\n\tdata-variant=\"outline\"\n\ttarget=\"_self\">\n\t\t\t<span class=\"label\"> Bli elev f\u00f6r en dag<\/span>\n\t\t\t\t\t\t\n\t<\/a>\n\t\t\t<\/div>\n\t<\/div>\n\n\t\t\n\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t<div class=\"c-bg c-bg--img\" data-settings=\"{&quot;desktop_settings&quot;:{&quot;size&quot;:&quot;cover&quot;,&quot;position&quot;:&quot;middle-center&quot;},&quot;mobile_settings&quot;:{&quot;size&quot;:&quot;cover&quot;,&quot;position&quot;:&quot;middle-center&quot;}}\" data-position=\"middle-center\" data-size=\"cover\">\n\t\t\t\n\t\t<\/div>\n\t\n<\/section>\n\t<\/div>\n\n\t\n\n\n<section  class=\"ams-courses-list c-block l-stacked\" data-color-scheme=\"kurslistning\">\n\t<div class=\"l-container l-stack l-stack-fluid-2xl u-pt-fluid-3xl-6xl u-pb-fluid-3xl-6xl is-center is-center@md\">\n\t\t\t\t\t<div class=\"ams-courses-list__intro l-stack l-stack-lg\">\n\t\t\t\t\t\n\t<h2\n\tclass=\"c-heading u-font-title-1 \"\n\tstyle=\"\">\n\t\t\n\t\t\t\t\tAndra inriktningar inom VVS och fastighet i Sundsvall\n\t\t\t\t\n\t<\/h2>\n\n\t\t\t\t\t\t\t<\/div>\n\t\t\n\t\t\n\t\t\t\n<ul class=\"ams-courses-list__list l-grid u-gap-fluid-2xl-4xl u-justify-center\">\n\t\t\t<li class=\"l-col-6@md l-col-4@lg\">\n\t\t\t<article class=\"\n\t\t\t\tc-card\n\t\t\t\t\n\t\t\t\thas-media-zoom\n\t\t\t\t\n\t\t\t\t\"\n\t\t\t\tdata-variant=\"border-top\"\n\t\t\t\tdata-style=\"square\"\n\t\t\t\tdata-click-area>\n\t\t\t\t<div class=\"c-card__content l-stack l-stack-sm\">\n\t\t\t\t\t\t\t\t\t\t\t<h3 class=\"c-card__title u-font-title-3\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"c-card__title-link\" href=\"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/fastighet\/\">\n\t\t\t\t\t\t\t\t\tFastighetstekniker\n\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/h3>\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ul class=\"c-card__list u-list-none l-stack-grow u-divider-top u-font-body\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<strong>Program<\/strong>\n\t\t\t\t\t\t\t\t\t<ul class=\"u-list-dash\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>VVS- och fastighetsprogrammet<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<strong>Inriktning<\/strong>\n\t\t\t\t\t\t\t\t\t\t<ul class=\"u-list-dash\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>Fastighet<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\n\t\t\t\t\t\t<div class=\"c-card__icon c-card__icon--nl\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<svg class=\"ams-icon ams-icon--arrow-right\" width=\"32\" height=\"32\" viewbox=\"0 0 32 32\" fill=\"currentColor\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<path d=\"M15.4617 0.252159L14.9567 0.75931C14.6219 1.09545 14.6219 1.64048 14.9567 1.97669L27.7062 14.7806H0.857144C0.383786 14.7806 0 15.166 0 15.6414V16.3587C0 16.8341 0.383786 17.2195 0.857144 17.2195H27.7062L14.9567 30.0234C14.6219 30.3595 14.6219 30.9045 14.9567 31.2407L15.4617 31.7479C15.7964 32.084 16.3392 32.084 16.6739 31.7479L31.749 16.6087C32.0837 16.2725 32.0837 15.7275 31.749 15.3913L16.6739 0.252159C16.3392 -0.084053 15.7964 -0.084053 15.4617 0.252159Z\"\/>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"c-card__media \" style=\" \">\n\t\t\t\t\t<img decoding=\"async\" width=\"347\" height=\"260\" src=\"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vffastighetweb347x260px.jpg\" class=\"attachment-sm size-sm wp-post-image\" alt=\"F\u00f6rem\u00e5l som representerar fastighet ligger utlagda p\u00e5 m\u00f6rkt tr\u00e4.\" sizes=\"(min-width: 64em) 300px, (min-width: 48em) calc(.50 * (100vw - 240px)), calc(100vw - 160px)\" srcset=\"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vffastighetweb347x260px.jpg 347w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vffastighetweb347x260px-300x225.jpg 300w\" \/>\n\t\t\t\t<\/div>\n\t\t\t<\/article>\n\t\t<\/li>\n\t\t\t<li class=\"l-col-6@md l-col-4@lg\">\n\t\t\t<article class=\"\n\t\t\t\tc-card\n\t\t\t\t\n\t\t\t\thas-media-zoom\n\t\t\t\t\n\t\t\t\t\"\n\t\t\t\tdata-variant=\"border-top\"\n\t\t\t\tdata-style=\"square\"\n\t\t\t\tdata-click-area>\n\t\t\t\t<div class=\"c-card__content l-stack l-stack-sm\">\n\t\t\t\t\t\t\t\t\t\t\t<h3 class=\"c-card__title u-font-title-3\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"c-card__title-link\" href=\"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/kyl-och-varmepumpsteknik\/\">\n\t\t\t\t\t\t\t\t\tKylmont\u00f6r\n\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/h3>\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ul class=\"c-card__list u-list-none l-stack-grow u-divider-top u-font-body\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<strong>Program<\/strong>\n\t\t\t\t\t\t\t\t\t<ul class=\"u-list-dash\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>VVS- och fastighetsprogrammet<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<strong>Inriktning<\/strong>\n\t\t\t\t\t\t\t\t\t\t<ul class=\"u-list-dash\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>Kyl- och v\u00e4rmepumpsteknik<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\n\t\t\t\t\t\t<div class=\"c-card__icon c-card__icon--nl\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<svg class=\"ams-icon ams-icon--arrow-right\" width=\"32\" height=\"32\" viewbox=\"0 0 32 32\" fill=\"currentColor\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<path d=\"M15.4617 0.252159L14.9567 0.75931C14.6219 1.09545 14.6219 1.64048 14.9567 1.97669L27.7062 14.7806H0.857144C0.383786 14.7806 0 15.166 0 15.6414V16.3587C0 16.8341 0.383786 17.2195 0.857144 17.2195H27.7062L14.9567 30.0234C14.6219 30.3595 14.6219 30.9045 14.9567 31.2407L15.4617 31.7479C15.7964 32.084 16.3392 32.084 16.6739 31.7479L31.749 16.6087C32.0837 16.2725 32.0837 15.7275 31.749 15.3913L16.6739 0.252159C16.3392 -0.084053 15.7964 -0.084053 15.4617 0.252159Z\"\/>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"c-card__media \" style=\" \">\n\t\t\t\t\t<img decoding=\"async\" width=\"347\" height=\"260\" src=\"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfkylochvarmepumpsteknikweb347x260px.jpg\" class=\"attachment-sm size-sm wp-post-image\" alt=\"F\u00f6rem\u00e5l som representerar Kyl- och v\u00e4rmepumpsteknik ligger utlagda p\u00e5 m\u00f6rkt tr\u00e4.\" sizes=\"(min-width: 64em) 300px, (min-width: 48em) calc(.50 * (100vw - 240px)), calc(100vw - 160px)\" srcset=\"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfkylochvarmepumpsteknikweb347x260px.jpg 347w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfkylochvarmepumpsteknikweb347x260px-300x225.jpg 300w\" \/>\n\t\t\t\t<\/div>\n\t\t\t<\/article>\n\t\t<\/li>\n\t\t\t<li class=\"l-col-6@md l-col-4@lg\">\n\t\t\t<article class=\"\n\t\t\t\tc-card\n\t\t\t\t\n\t\t\t\thas-media-zoom\n\t\t\t\t\n\t\t\t\t\"\n\t\t\t\tdata-variant=\"border-top\"\n\t\t\t\tdata-style=\"square\"\n\t\t\t\tdata-click-area>\n\t\t\t\t<div class=\"c-card__content l-stack l-stack-sm\">\n\t\t\t\t\t\t\t\t\t\t\t<h3 class=\"c-card__title u-font-title-3\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"c-card__title-link\" href=\"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/vvs\/\">\n\t\t\t\t\t\t\t\t\tVVS-mont\u00f6r\n\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/h3>\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ul class=\"c-card__list u-list-none l-stack-grow u-divider-top u-font-body\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<strong>Program<\/strong>\n\t\t\t\t\t\t\t\t\t<ul class=\"u-list-dash\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>VVS- och fastighetsprogrammet<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<strong>Inriktning<\/strong>\n\t\t\t\t\t\t\t\t\t\t<ul class=\"u-list-dash\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li>VVS<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/ul>\n\n\t\t\t\t\t\t<div class=\"c-card__icon c-card__icon--nl\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<svg class=\"ams-icon ams-icon--arrow-right\" width=\"32\" height=\"32\" viewbox=\"0 0 32 32\" fill=\"currentColor\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<path d=\"M15.4617 0.252159L14.9567 0.75931C14.6219 1.09545 14.6219 1.64048 14.9567 1.97669L27.7062 14.7806H0.857144C0.383786 14.7806 0 15.166 0 15.6414V16.3587C0 16.8341 0.383786 17.2195 0.857144 17.2195H27.7062L14.9567 30.0234C14.6219 30.3595 14.6219 30.9045 14.9567 31.2407L15.4617 31.7479C15.7964 32.084 16.3392 32.084 16.6739 31.7479L31.749 16.6087C32.0837 16.2725 32.0837 15.7275 31.749 15.3913L16.6739 0.252159C16.3392 -0.084053 15.7964 -0.084053 15.4617 0.252159Z\"\/>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"c-card__media \" style=\" \">\n\t\t\t\t\t<img decoding=\"async\" width=\"347\" height=\"260\" src=\"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfvvsweb347x260px.jpg\" class=\"attachment-sm size-sm wp-post-image\" alt=\"F\u00f6rem\u00e5l som representerar VVS ligger utlagda p\u00e5 m\u00f6rkt tr\u00e4.\" sizes=\"(min-width: 64em) 300px, (min-width: 48em) calc(.50 * (100vw - 240px)), calc(100vw - 160px)\" srcset=\"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfvvsweb347x260px.jpg 347w, https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfvvsweb347x260px-300x225.jpg 300w\" \/>\n\t\t\t\t<\/div>\n\t\t\t<\/article>\n\t\t<\/li>\n\t<\/ul>\n\t\n\n\t\t\t<div class=\"ams-courses-list__action u-inline-items\">\n\t\t\t\t\t\t\t\n\n\n\n<a href=\"https:\/\/praktiska.se\/sundsvall\/program\/\"\n\t\n\tclass=\"c-btn \"\n\tdata-style=\"round\"\n\tdata-size=\"md\"\n\tdata-width=\"full-mobile\"\n\tdata-variant=\"default\"\n\ttarget=\"_self\">\n\t\t\t<span class=\"label\"> Tillbaka till v\u00e5ra program<\/span>\n\t\t\t\t\t\t\n\t<\/a>\n\t\t\t<\/div>\n\t<\/div>\n\n\t\t\n\n<\/section>\n","protected":false},"excerpt":{"rendered":"","protected":false},"featured_media":2842,"parent":2826,"menu_order":0,"template":"","yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Plugga till Ventilationstekniker i Sundsvall - Praktiska Gymnasiet<\/title>\n<meta name=\"description\" content=\"Vill du vara den som ser till att luften vi andas \u00e4r fr\u00e4sch och h\u00e4lsosam? D\u00e5 kommer inriktningen ventilation att passa dig perfekt!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/\" \/>\n<meta property=\"og:locale\" content=\"sv_SE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Plugga till Ventilationstekniker i Sundsvall - Praktiska Gymnasiet\" \/>\n<meta property=\"og:description\" content=\"Vill du vara den som ser till att luften vi andas \u00e4r fr\u00e4sch och h\u00e4lsosam? D\u00e5 kommer inriktningen ventilation att passa dig perfekt!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/\" \/>\n<meta property=\"og:site_name\" content=\"Sundsvall\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-18T12:42:31+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfventilationsteknikweb347x260px.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"347\" \/>\n\t<meta property=\"og:image:height\" content=\"260\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Plugga till Ventilationstekniker i Sundsvall - Praktiska Gymnasiet\" \/>\n<meta name=\"twitter:description\" content=\"Vill du vara den som ser till att luften vi andas \u00e4r fr\u00e4sch och h\u00e4lsosam? D\u00e5 kommer inriktningen ventilation att passa dig perfekt!\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfventilationsteknikweb347x260px.jpg\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minuter\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/\",\"url\":\"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/\",\"name\":\"Plugga till Ventilationstekniker i Sundsvall - Praktiska Gymnasiet\",\"isPartOf\":{\"@id\":\"https:\/\/praktiska.se\/sundsvall\/#website\"},\"datePublished\":\"2023-12-08T13:36:29+00:00\",\"dateModified\":\"2026-08-18T12:42:31+00:00\",\"description\":\"Vill du vara den som ser till att luften vi andas \u00e4r fr\u00e4sch och h\u00e4lsosam? D\u00e5 kommer inriktningen ventilation att passa dig perfekt!\",\"breadcrumb\":{\"@id\":\"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/#breadcrumb\"},\"inLanguage\":\"sv-SE\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Start\",\"item\":\"https:\/\/praktiska.se\/sundsvall\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"V\u00e5ra program\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/praktiska.se\/sundsvall\/#website\",\"url\":\"https:\/\/praktiska.se\/sundsvall\/\",\"name\":\"Sundsvall\",\"description\":\"Vi utbildar framtidens arbetskraft\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/praktiska.se\/sundsvall\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"sv-SE\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Plugga till Ventilationstekniker i Sundsvall - Praktiska Gymnasiet","description":"Vill du vara den som ser till att luften vi andas \u00e4r fr\u00e4sch och h\u00e4lsosam? D\u00e5 kommer inriktningen ventilation att passa dig perfekt!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/","og_locale":"sv_SE","og_type":"article","og_title":"Plugga till Ventilationstekniker i Sundsvall - Praktiska Gymnasiet","og_description":"Vill du vara den som ser till att luften vi andas \u00e4r fr\u00e4sch och h\u00e4lsosam? D\u00e5 kommer inriktningen ventilation att passa dig perfekt!","og_url":"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/","og_site_name":"Sundsvall","article_modified_time":"2026-08-18T12:42:31+00:00","og_image":[{"url":"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfventilationsteknikweb347x260px.jpg","width":347,"height":260,"type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_title":"Plugga till Ventilationstekniker i Sundsvall - Praktiska Gymnasiet","twitter_description":"Vill du vara den som ser till att luften vi andas \u00e4r fr\u00e4sch och h\u00e4lsosam? D\u00e5 kommer inriktningen ventilation att passa dig perfekt!","twitter_image":"https:\/\/praktiska.se\/wp-content\/uploads\/sites\/34\/2023\/12\/vfventilationsteknikweb347x260px.jpg","twitter_misc":{"Est. reading time":"3 minuter"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/","url":"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/","name":"Plugga till Ventilationstekniker i Sundsvall - Praktiska Gymnasiet","isPartOf":{"@id":"https:\/\/praktiska.se\/sundsvall\/#website"},"datePublished":"2023-12-08T13:36:29+00:00","dateModified":"2026-08-18T12:42:31+00:00","description":"Vill du vara den som ser till att luften vi andas \u00e4r fr\u00e4sch och h\u00e4lsosam? D\u00e5 kommer inriktningen ventilation att passa dig perfekt!","breadcrumb":{"@id":"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/#breadcrumb"},"inLanguage":"sv-SE","potentialAction":[{"@type":"ReadAction","target":["https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/praktiska.se\/sundsvall\/program\/vvs-och-fastighetsprogrammet\/ventilation\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Start","item":"https:\/\/praktiska.se\/sundsvall"},{"@type":"ListItem","position":2,"name":"V\u00e5ra program"}]},{"@type":"WebSite","@id":"https:\/\/praktiska.se\/sundsvall\/#website","url":"https:\/\/praktiska.se\/sundsvall\/","name":"Sundsvall","description":"Vi utbildar framtidens arbetskraft","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/praktiska.se\/sundsvall\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"sv-SE"}]}},"_links":{"self":[{"href":"https:\/\/praktiska.se\/sundsvall\/wp-json\/wp\/v2\/program_orientation\/2829"}],"collection":[{"href":"https:\/\/praktiska.se\/sundsvall\/wp-json\/wp\/v2\/program_orientation"}],"about":[{"href":"https:\/\/praktiska.se\/sundsvall\/wp-json\/wp\/v2\/types\/program_orientation"}],"version-history":[{"count":9,"href":"https:\/\/praktiska.se\/sundsvall\/wp-json\/wp\/v2\/program_orientation\/2829\/revisions"}],"predecessor-version":[{"id":3770,"href":"https:\/\/praktiska.se\/sundsvall\/wp-json\/wp\/v2\/program_orientation\/2829\/revisions\/3770"}],"up":[{"embeddable":true,"href":"https:\/\/praktiska.se\/sundsvall\/wp-json\/wp\/v2\/program_orientation\/2826"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/praktiska.se\/sundsvall\/wp-json\/wp\/v2\/media\/2842"}],"wp:attachment":[{"href":"https:\/\/praktiska.se\/sundsvall\/wp-json\/wp\/v2\/media?parent=2829"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}