1<!doctype html> 2<html lang="en-US" data-theme="joensuu"> 3 <head> 4 <meta charset="utf-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1"> 6 7
7<script 8 id="Cookiebot" 9 data-culture="en" 10 src="https://consent.cookiebot.com/uc.js" 11 data-cbid="141e5939-6ad0-48d4-be65-ceba8df7d25e" 12 type="text/javascript" 13 async> 14 </script>
14 15 16
16<script> 17 (function(){ 18 const colors = ["#0026E1", "#FFFCD6", "#DCF9FF", "#FCE6FF"]; 19 const savedColor = sessionStorage.getItem("gradientColor") || colors[0]; 20 let idx = colors.indexOf(savedColor); 21 22 if (idx === -1) { 23 idx = 0; 24 } 25 26 // Set initial background and pass the same color to the SVG via CSS. 27 document.write( 28 '<style>.gradient-scroll{background-color:' + savedColor + ';--shape-color:' + savedColor + '}</style>' 29 ); 30 31 // Sync the data attribute early so headings, etc. match the color. 32 document.addEventListener("DOMContentLoaded", function(){ 33 const el = document.querySelector(".gradient-scroll"); 34 35 if (el) { 36 el.setAttribute("data-bg-index", idx); 37 } 38 }); 39 })(); 40 </script>
40 41 42 <title>Joensuu - Helppo hengittää</title> 43<link rel="alternate" href="https://www.joensuu.fi/" hreflang="fi" /> 44<link rel="alternate" href="https://www.joensuu.fi/en/" hreflang="en" /> 45 46<!-- The SEO Framework by Sybre Waaijer --> 47<meta name="robots" content="max-snippet:-1,max-image-preview:large,max-video-preview:-1" /> 48<link rel="canonical" href="https://www.joensuu.fi/" /> 49<meta name="theme-color" content="#1259f5" /> 50<meta property="og:type" content="website" /> 51<meta property="og:locale" content="en_US" /> 52<meta property="og:site_name" content="Joensuu" /> 53<meta property="og:title" content="Joensuu" /> 54<meta property="og:url" content="https://www.joensuu.fi/" /> 55<meta property="og:image" content="https://www.joensuu.fi/app/uploads/2026/03/cropped-somejako_Joensuu.jpg" /> 56<meta property="og:image:width" content="2559" /> 57<meta property="og:image:height" content="1344" /> 58<meta name="twitter:card" content="summary_large_image" /> 59<meta name="twitter:title" content="Joensuu" /> 60<meta name="twitter:image" content="https://www.joensuu.fi/app/uploads/2026/03/cropped-somejako_Joensuu.jpg" />
61<script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":"WebSite","@id":"https://www.joensuu.fi/#/schema/WebSite","url":"https://www.joensuu.fi/","name":"Joensuu","description":"Helppo hengittää","inLanguage":"en-US","publisher":{"@id":"https://www.joensuu.fi/#/schema/Organization"}},{"@type":"WebPage","@id":"https://www.joensuu.fi/","url":"https://www.joensuu.fi/","name":"Joensuu - Helppo hengittää","inLanguage":"en-US","isPartOf":{"@id":"https://www.joensuu.fi/#/schema/WebSite"},"breadcrumb":{"@type":"BreadcrumbList","@id":"https://www.joensuu.fi/#/schema/BreadcrumbList","itemListElement":{"@type":"ListItem","position":1,"name":"Joensuu"}},"potentialAction":{"@type":"ReadAction","target":"https://www.joensuu.fi/"},"about":{"@id":"https://www.joensuu.fi/#/schema/Organization"}},{"@type":"Organization","@id":"https://www.joensuu.fi/#/schema/Organization","name":"Joensuu","url":"https://www.joensuu.fi/","logo":{"@type":"ImageObject","url":"https://www.joensuu.fi/app/uploads/2025/06/cropped-joensuu.png","contentUrl":"https://www.joensuu.fi/app/uploads/2025/06/cropped-joensuu.png","width":512,"height":512,"contentSize":"16225"}}]}</script>
61 62<!-- / The SEO Framework by Sybre Waaijer | 2.22ms meta | 0.11ms boot --> 63 64<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.joensuu.fi/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.joensuu.fi%2Fen%2F&lang=en" /> 65<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.joensuu.fi/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.joensuu.fi%2Fen%2F&format=xml&lang=en" /> 66<style id='wp-img-auto-sizes-contain-inline-css'> 67img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 68/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 69</style> 70<style id='wp-block-paragraph-inline-css'> 71.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-left[style*="writing-mode:vertical-lr"],p.has-text-align-right[style*="writing-mode:vertical-rl"]{rotate:180deg} 72/*# sourceURL=https://www.joensuu.fi/wp-includes/blocks/paragraph/style.min.css */ 73</style> 74<style id='wp-block-heading-inline-css'> 75h1:where(.wp-block-heading).has-background,h2:where(.wp-block-heading).has-background,h3:where(.wp-block-heading).has-background,h4:where(.wp-block-heading).has-background,h5:where(.wp-block-heading).has-background,h6:where(.wp-block-heading).has-background{padding:1.25em 2.375em}h1.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h1.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h2.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h2.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h3.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h3.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h4.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h4.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h5.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h5.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h6.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h6.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]){rotate:180deg} 76/*# sourceURL=https://www.joensuu.fi/wp-includes/blocks/heading/style.min.css */ 77</style> 78<style id='wp-emoji-styles-inline-css'> 79 80 img.wp-smiley, img.emoji { 81 display: inline !important; 82 border: none !important; 83 box-shadow: none !important; 84 height: 1em !important; 85 width: 1em !important; 86 margin: 0 0.07em !important; 87 vertical-align: -0.1em !important; 88 background: none !important; 89 padding: 0 !important; 90 } 91/*# sourceURL=wp-emoji-styles-inline-css */ 92</style> 93<link rel='stylesheet' id='wp-block-library-css' href='https://www.joensuu.fi/wp-includes/css/dist/block-library/style.min.css?ver=798760783' media='all' /> 94 95<style id='global-styles-inline-css'> 96:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--theme-white: #FFFFFF;
96--wp--preset--color--theme-alabaster: #F0EBDD;--wp--preset--color--theme-nyanza: #DBEDD3;--wp--preset--color--theme-pale-purple: #EDD3EA;--wp--preset--color--theme-misty-rose: #EDD3D3;--wp--preset--color--theme-timberwolf: #DCD6D6;--wp--preset--color--theme-black: #000000;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--spacing--xs: var(--wp--custom--spacing--xs);--wp--preset--spacing--s: var(--wp--custom--spacing--s);--wp--preset--spacing--m: var(--wp--custom--spacing--m);--wp--preset--spacing--l: var(--wp--custom--spacing--l);--wp--preset--spacing--xl: var(--wp--custom--spacing--xl);--wp--preset--spacing--xxl: var(--wp--custom--spacing--xxl);--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-heading{--wp--preset--font-size--small: var(--wp--custom--font-size--small);--wp--preset--font-size--medium: var(--wp--custom--font-size--medium);--wp--preset--font-size--large: var(--wp--custom--font-size--large);--wp--preset--font-size--x-large: var(--wp--custom--font-size--xl);--wp--preset--font-size--xx-large: var(--wp--custom--font-size--xxl);}:root { --wp--style--global--content-size: var(--content-size);--wp--style--global--wide-size: var(--wide-size); }:where(body) { margin: 0; }.wp-site-blocks { padding-top: var(--wp--style--root--padding-top); padding-bottom: var(--wp--style--root--padding-bottom); }.has-global-padding { padding-right: var(--wp--style--root--padding-right); padding-left: var(--wp--style--root--padding-left); }.has-global-padding > .alignfull { margin-right: calc(var(--wp--style--root--padding-right) * -1); margin-left: calc(var(--wp--style--root--padding-left) * -1); }.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull)) { padding-right: 0; padding-left: 0; }.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull)) > .alignfull { margin-left: 0; margin-right: 0; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.wp-site-blocks) > * { margin-block-start: var(--wp--preset--spacing--l); margin-block-end: 0; }:where(.wp-site-blocks) > :first-child { margin-block-start: 0; }:where(.wp-site-blocks) > :last-child { margin-block-end: 0; }:root { --wp--style--block-gap: var(--wp--preset--spacing--l); }:root :where(.is-layout-flow) > :first-child{margin-block-start: 0;}:root :where(.is-layout-flow) > :last-child{margin-block-end: 0;}:root :where(.is-layout-flow) > *{margin-block-start: var(--wp--preset--spacing--l);margin-block-end: 0;}:root :where(.is-layout-constrained) > :first-child{margin-block-start: 0;}:root :where(.is-layout-constrained) > :last-child{margin-block-end: 0;}:root :where(.is-layout-constrained) > *{margin-block-start: var(--wp--preset--spacing--l);margin-block-end: 0;}:root :where(.is-layout-flex){gap: var(--wp--preset--spacing--l);}:root :where(.is-layout-grid){gap: var(--wp--preset--spacing--l);}.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained >
96 :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{--wp--style--root--padding-top: 0px;--wp--style--root--padding-right: 1.5rem;--wp--style--root--padding-bottom: 0px;--wp--style--root--padding-left: 1.5rem;}a:where(:not(.wp-element-button)){text-decoration: underline;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-theme-white-color{color: var(--wp--preset--color--theme-white) !important;}.has-theme-alabaster-color{color: var(--wp--preset--color--theme-alabaster) !important;}.has-theme-nyanza-color{color: var(--wp--preset--color--theme-nyanza) !important;}.has-theme-pale-purple-color{color: var(--wp--preset--color--theme-pale-purple) !important;}.has-theme-misty-rose-color{color: var(--wp--preset--color--theme-misty-rose) !important;}.has-theme-timberwolf-color{color: var(--wp--preset--color--theme-timberwolf) !important;}.has-theme-black-color{color: var(--wp--preset--color--theme-black) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-theme-white-background-color{background-color: var(--wp--preset--color--theme-white) !important;}.has-theme-alabaster-background-color{background-color: var(--wp--preset--color--theme-alabaster) !important;}.has-theme-nyanza-background-color{background-color: var(--wp--preset--color--theme-nyanza) !important;}.has-theme-pale-purple-background-color{background-color: var(--wp--preset--color--theme-pale-purple) !important;}.has-theme-misty-rose-background-color{background-color: var(--wp--preset--color--theme-misty-rose) !important;}.has-theme-timberwolf-background-color{background-color: var(--wp--preset--color--theme-timberwolf) !important;}.has-theme-black-background-color{background-color: var(--wp--preset--color--theme-black) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-theme-white-border-color{border-color: var(--wp--preset--color--theme-white) !important;}.has-theme-alabaster-border-color{border-color: var(--wp--preset--color--theme-alabaster) !important;}.has-theme-nyanza-border-color{border-color: var(--wp--preset--color--theme-nyanza) !important;}.has-theme-pale-purple-border-color{border-color: var(--wp--preset--color--theme-pale-purple) !important;}.has-theme-misty-rose-border-color{border-color: var(--wp--preset--color--theme-misty-rose) !important;}.has-theme-timberwolf-border-color{border-color: var(--wp--preset--color--theme-timberwolf) !important;}.has-theme-black-border-color{border-color: var(--wp--preset--color--theme-black) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
96.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.wp-block-heading.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.wp-block-heading.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.wp-block-heading.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.wp-block-heading.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.wp-block-heading.has-xx-large-font-size{font-size: var(--wp--preset--font-size--xx-large) !important;} 97/*# sourceURL=global-styles-inline-css */ 98</style> 99
100<script id="joe_inline_scripts-js-before"> 101window.globalVariables = Object.assign({}, window.globalVariables || {}, {"homeUrl":"https:\/\/www.joensuu.fi\/en\/","blogPath":null,"locale":"en_US","externalLinkSrText":"opens an external website"}); const globalVariables = window.globalVariables; 102//# sourceURL=joe_inline_scripts-js-before 103</script>
103 104<link rel="https://api.w.org/" href="https://www.joensuu.fi/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.joensuu.fi/wp-json/wp/v2/pages/10" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.joensuu.fi/xmlrpc.php?rsd" /> 105 106<link rel="preload" as="style" href="https://www.joensuu.fi/app/themes/joensuu/public/build/assets/app-MqYJPu75.css" /><link rel="preload" as="style" href="https://www.joensuu.fi/app/themes/joensuu/public/build/assets/app-DHBATib1.css" /><link rel="modulepreload" as="script" href="https://www.joensuu.fi/app/themes/joensuu/public/build/assets/app-DDY07Cje.js" /><link rel="modulepreload" as="script" href="https://www.joensuu.fi/app/themes/joensuu/public/build/assets/_commonjsHelpers-cqllCxmf.js" /><link rel="stylesheet" href="https://www.joensuu.fi/app/themes/joensuu/public/build/assets/app-MqYJPu75.css" /><link rel="stylesheet" href="https://www.joensuu.fi/app/themes/joensuu/public/build/assets/app-DHBATib1.css" />
106<script type="module" src="https://www.joensuu.fi/app/themes/joensuu/public/build/assets/app-DDY07Cje.js"></script>
106 107<link rel="icon" href="https://www.joensuu.fi/app/uploads/2025/06/cropped-joensuu-150x150.png" sizes="32x32" /> 108<link rel="icon" href="https://www.joensuu.fi/app/uploads/2025/06/cropped-joensuu.png" sizes="192x192" /> 109<link rel="apple-touch-icon" href="https://www.joensuu.fi/app/uploads/2025/06/cropped-joensuu.png" /> 110<meta name="msapplication-TileImage" content="https://www.joensuu.fi/app/uploads/2025/06/cropped-joensuu.png" /> 111 </head> 112 113 <body class="home wp-singular page-template page-template-template-front-page page page-id-10 wp-embed-responsive wp-theme-joensuu w-screen relative text-black font-sans"> 114 115
115<script data-cookieconsent="ignore" type="text/javascript"> 116(function(window, document, dataLayerName, id) { 117window[dataLayerName]=window[dataLayerName]||[],window[dataLayerName].push({start:(new Date).getTime(),event:"stg.start"});var scripts=document.getElementsByTagName('script')[0],tags=document.createElement('script'); 118var qP=[];dataLayerName!=="dataLayer"&&qP.push("data_layer_name="+dataLayerName);var qPString=qP.length>0?("?"+qP.join("&")):""; 119tags.async=!0,tags.src="https://joensuu.containers.piwik.pro/"+id+".js"+qPString,scripts.parentNode.insertBefore(tags,scripts); 120!function(a,n,i){a[n]=a[n]||{};for(var c=0;c<i.length;c++)!function(i){a[n][i]=a[n][i]||{},a[n][i].api=a[n][i].api||function(){var a=[].slice.call(arguments,0);"string"==typeof a[0]&&window[dataLayerName].push({event:n+"."+i+":"+a[0],parameters:[].slice.call(arguments,1)})}}(i[c])}(window,"ppms",["tm","cm"]); 121})(window, document, 'dataLayer', 'a654cac0-25b8-4e13-900f-7914cd74d7c2'); 122</script>
122 123 <div id="app"> 124 125 <a href="#main" class="sr-only focus:not-sr-only text-accent !absolute top-16 left-16 !py-6 !px-8 bg-white inline-block fit-content skip-to-main ">Jump to content</a> 126 127 128 <header 129 id="header" 130 class="absolute top-0 left-0 w-full z-50 " 131 x-bind:class=" 132 { 133 'nav-state--active-delay': isOpen || isOpenDelay, 134 } 135 " 136 x-bind:data-header-nav-active="isOpen" 137 x-data=" 138 { 139 searchIsOpen: false, 140 searchIsOpenDelayShort: false, 141 searchIsOpenDelay: false, 142 isOpen: false, 143 isOpenDelayShort: false, 144 isOpenDelay: false, 145 closedMainNavWithEscape: false, 146 closedSearchWithEscape: false, 147 closedMobileSearchWithEscape: false, 148 mobileSearchIsOpen: false, 149 mobileSearchIsOpenDelayShort: false, 150 mobileSearchIsOpenDelay: false, 151 langSwitcherIsOpenDelayShort: false, 152 langSwitcherIsOpenDelay: false, 153 langSwitcherIsOpen: false, 154 } 155 " 156 x-init=" 157 $watch('isOpen', value => { 158 setTimeout(() => { isOpenDelay = value }, 700); 159 setTimeout(() => { isOpenDelayShort = value }, 30); 160 }); 161 $watch('langSwitcherIsOpen', value => { 162 setTimeout(() => { langSwitcherIsOpenDelay = value }, 700); 163 setTimeout(() => { langSwitcherIsOpenDelayShort = value }, 30); 164 }); 165 $watch('searchIsOpen', value => { 166 setTimeout(() => { searchIsOpenDelay = value }, 700); 167 setTimeout(() => { searchIsOpenDelayShort = value }, 30); 168 if (value) { 169 setTimeout(() => { document.getElementById('site-search-header')?.focus(); }, 300); 170 } 171 }); 172 $watch(() => isOpen || searchIsOpen || mobileSearchIsOpen || langSwitcherIsOpen, value => { 173 if (value) { 174 document.documentElement.classList.add('scroll-locked'); 175 } else { 176 document.documentElement.classList.remove('scroll-locked'); 177 } 178 } 179 ); 180 " 181 x-trap="isOpen" 182 > 183 184 <div class="header-container"> 185 <div id="header-controls" class="header-controls relative w-full h-full flex items-center text-accent"> 186 <div class="container px-18 md:px-24 mx-auto relative z-20"> 187 <div class="flex justify-between items-center font-semibold text-base 2xl:text-baseb gap-32 front-page-logo-container" x-bind:class="isOpen ? '!hidden' : ''"> 188 <a class="header-logo max-w-[9rem] md:max-w-[12rem]" href="https://www.joensuu.fi/en/"> 189 <svg class="w-full h-auto header-logo--color" role="img" alt="" aria-hidden="true" width="198" height="23" viewBox="0 0 198 23" fill="none" xmlns="http://www.w3.org/2000/svg"> 190<g> 191<path fill-rule="evenodd" clip-rule="evenodd" d="M129.412 9.91726L124.306 8.93529C122.358 8.54494 120.916 8.05701 120.916 6.47122C120.916 4.64147 122.863 3.58631 125.596 3.58631C129.065 3.58631 131.365 5.09891 132.656 7.10554L135.973 4.22063C133.83 1.75656 130.355 0 125.602 0C119.833 0 116.011 2.74463 116.011 6.75178C116.011 10.4418 118.975 12.1679 122.717 12.8693L128.256 13.8878C130.325 14.3087 131.846 14.8393 131.846 16.4556C131.846 18.389 129.503 19.4076 126.387 19.4076C122.955 19.4076 119.644 17.9987 117.849 15.2906L114.769 18.4927C117.07 21.3044 121.281 22.9939 126.387 22.9939C132.157 22.9939 136.758 20.5664 136.758 16.2787C136.758 12.5521 134.031 10.7955 129.43 9.91116L129.412 9.91726ZM13.8893 14.2782C13.8893 17.3704 12.5626 19.2002 9.48314 19.2002C6.40368 19.2002 4.8396 17.2058 4.96741 13.961H0.00739743C-0.187351 19.554 3.47636 23 9.44054 23C14.8205 23 18.8372 20.048 18.8372 14.5587V0.420846H13.8833V14.2782H13.8893ZM61.0672 13.0827H72.1375V9.35615H61.0672V4.18405H75.7647V0.420861H56.2715V22.5792H76.1116V18.816H61.0672V13.0827ZM90.5778 0.420861L102.354 15.6139V0.420861H106.876V22.5792H102.549L89.5675 6.15408V22.5792H85.0822V0.420861H90.5778ZM193.119 0.420861V12.9059C193.119 16.9496 190.977 19.2368 187.076 19.2368C183.175 19.2368 181.075 16.9496 181.075 12.9059V0.420861H176.164V13.5036C176.164 19.9748 181.191 23 187.082 23C192.973 23 198 19.9748 198 13.5036V0.420861H193.125H193.119ZM155.849 19.2368C159.75 19.2368 161.892 16.9496 161.892 12.9059V0.420861H166.767V13.5036C166.767 19.9748 161.74 23 155.849 23C149.958 23 144.931 19.9748 144.931 13.5036V0.420861H149.842V12.9059C149.842 16.9496 151.948 19.2368 155.849 19.2368ZM30.37 11.3201C30.37 7.69716 33.3034 4.75736 36.9184 4.75736C40.5334 4.75736 43.4668 7.69716 43.4668 11.3201C43.4668 14.943 40.5334 17.8828 36.9184 17.8828C33.3034 17.8828 30.37 14.943 30.37 11.3201Z" fill="#0026E1"/> 192</g> 193</svg> 194 <svg class="w-full h-auto header-logo--white" role="img" alt="" aria-hidden="true" width="198" height="23" viewBox="0 0 198 23" fill="none" xmlns="http://www.w3.org/2000/svg"> 195<g> 196<path fill-rule="evenodd" clip-rule="evenodd" d="M129.412 9.91726L124.306 8.93529C122.358 8.54494 120.916 8.05701 120.916 6.47122C120.916 4.64147 122.863 3.58631 125.596 3.58631C129.065 3.58631 131.365 5.09891 132.656 7.10554L135.973 4.22063C133.83 1.75656 130.355 0 125.602 0C119.833 0 116.011 2.74463 116.011 6.75178C116.011 10.4418 118.975 12.1679 122.717 12.8693L128.256 13.8878C130.325 14.3087 131.846 14.8393 131.846 16.4556C131.846 18.389 129.503 19.4076 126.387 19.4076C122.955 19.4076 119.644 17.9987 117.849 15.2906L114.769 18.4927C117.07 21.3044 121.281 22.9939 126.387 22.9939C132.157 22.9939 136.758 20.5664 136.758 16.2787C136.758 12.5521 134.031 10.7955 129.43 9.91116L129.412 9.91726ZM13.8893 14.2782C13.8893 17.3704 12.5626 19.2002 9.48314 19.2002C6.40368 19.2002 4.8396 17.2058 4.96741 13.961H0.00739743C-0.187351 19.554 3.47636 23 9.44054 23C14.8205 23 18.8372 20.048 18.8372 14.5587V0.420846H13.8833V14.2782H13.8893ZM61.0672 13.0827H72.1375V9.35615H61.0672V4.18405H75.7647V0.420861H56.2715V22.5792H76.1116V18.816H61.0672V13.0827ZM90.5778 0.420861L102.354 15.6139V0.420861H106.876V22.5792H102.549L89.5675 6.15408V22.5792H85.0822V0.420861H90.5778ZM193.119 0.420861V12.9059C193.119 16.9496 190.977 19.2368 187.076 19.2368C183.175 19.2368 181.075 16.9496 181.075 12.9059V0.420861H176.164V13.5036C176.164 19.9748 181.191 23 187.082 23C192.973 23 198 19.9748 198 13.5036V0.420861H193.125H193.119ZM155.849 19.2368C159.75 19.2368 161.892 16.9496 161.892 12.9059V0.420861H166.767V13.5036C166.767 19.9748 161.74 23 155.849 23C149.958 23 144.931 19.9748 144.931 13.5036V0.420861H149.842V12.9059C149.842 16.9496 151.948 19.2368 155.849 19.2368ZM30.37 11.3201C30.37 7.69716 33.3034 4.75736 36.9184 4.75736C40.5334 4.75736 43.4668 7.69716 43.4668 11.3201C43.4668 14.943 40.5334 17.8828 36.9184 17.8828C33.3034 17.8828 30.37 14.943 30.37 11.3201Z" fill="#ffffff"/> 197</g> 198</svg>
198 <span class="sr-only">Go to homepage</span> 199 </a> 200 201 <div class="header-icons relative flex gap-32 md:gap-36 2xl:gap-48 transition duration-300 font-mono font-600 text-white md:bg-white md:text-accent md:pb-4"> 202 <button 203 type="button" 204 x-ref="searchToggleButton" 205 class="nav-toggle hidden md:flex gap-2 2xl:gap-4 items-center justify-center group animated-underline-invert-accent" 206 aria-controls="site-search" 207 :aria-expanded="searchIsOpen" 208 x-on:click.throttle.700ms="searchIsOpen = !searchIsOpen; setTimeout(() => { isOpen = false }, 150)" 209 x-bind:class="searchIsOpen ? 'md:hidden' : ''" 210> 211 <span> 212 <span class="font-mono" aria-hidden="true">Search</span> 213 <span class="sr-only">Open search</span> 214 </span> 215 <svg class="inherit-color-fill w-24 h-24" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 216<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 217<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 218</mask> 219<g> 220<path d="M15.9157 17.9473L10.854 12.8857C10.4453 13.1598 9.99429 13.3759 9.50109 13.5338C9.0079 13.6917 8.47693 13.7707 7.90818 13.7707C6.44818 13.7707 5.20457 13.2571 4.17734 12.2298C3.15026 11.2028 2.63672 9.95942 2.63672 8.49984C2.63672 7.04025 3.15026 5.79692 4.17734 4.76984C5.20457 3.74262 6.44797 3.229 7.90755 3.229C9.36714 3.229 10.6105 3.74262 11.6376 4.76984C12.6648 5.79692 13.1784 7.04046 13.1784 8.50046C13.1784 9.07713 13.0994 9.6081 12.9415 10.0934C12.7836 10.5787 12.5676 11.0218 12.2934 11.4228L17.3667 16.508L15.9157 17.9473ZM7.90755 11.729C8.80908 11.729 9.57262 11.4162 10.1982 10.7907C10.8239 10.165 11.1367 9.40137 11.1367 8.49984C11.1367 7.59831 10.8239 6.8347 10.1982 6.209C9.57262 5.58345 8.80908 5.27067 7.90755 5.27067C7.00602 5.27067 6.24241 5.58345 5.61672 6.209C4.99116 6.8347 4.67839 7.59831 4.67839 8.49984C4.67839 9.40137 4.99116 10.165 5.61672 10.7907C6.24241 11.4162 7.00602 11.729 7.90755 11.729Z" fill="#0026E1"/> 221</g> 222</svg></button> 223 224<button 225 type="button" 226 x-ref="mobileSearchButton" 227 class="nav-toggle flex md:hidden items-center justify-center" 228 x-bind:aria-label="mobileSearchIsOpen ? 'Close search' : 'Open search'" 229 aria-controls="mobile-site-search" 230 :aria-expanded="mobileSearchIsOpen" 231 x-on:click.throttle.700ms="mobileSearchIsOpen = !mobileSearchIsOpen; setTimeout(() => { isOpen = false }, 150)" 232> 233 <svg class="inherit-color-fill w-24 h-24" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 234<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 235<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 236</mask> 237<g> 238<path d="M15.9157 17.9473L10.854 12.8857C10.4453 13.1598 9.99429 13.3759 9.50109 13.5338C9.0079 13.6917 8.47693 13.7707 7.90818 13.7707C6.44818 13.7707 5.20457 13.2571 4.17734 12.2298C3.15026 11.2028 2.63672 9.95942 2.63672 8.49984C2.63672 7.04025 3.15026 5.79692 4.17734 4.76984C5.20457 3.74262 6.44797 3.229 7.90755 3.229C9.36714 3.229 10.6105 3.74262 11.6376 4.76984C12.6648 5.79692 13.1784 7.04046 13.1784 8.50046C13.1784 9.07713 13.0994 9.6081 12.9415 10.0934C12.7836 10.5787 12.5676 11.0218 12.2934 11.4228L17.3667 16.508L15.9157 17.9473ZM7.90755 11.729C8.80908 11.729 9.57262 11.4162 10.1982 10.7907C10.8239 10.165 11.1367 9.40137 11.1367 8.49984C11.1367 7.59831 10.8239 6.8347 10.1982 6.209C9.57262 5.58345 8.80908 5.27067 7.90755 5.27067C7.00602 5.27067 6.24241 5.58345 5.61672 6.209C4.99116 6.8347 4.67839 7.59831 4.67839 8.49984C4.67839 9.40137 4.99116 10.165 5.61672 10.7907C6.24241 11.4162 7.00602 11.729 7.90755 11.729Z" fill="#0026E1"/> 239</g> 240</svg></button> 241 242 <button 243 type="button" 244 class="nav-toggle flex md:hidden items-center justify-center" 245 aria-label="Open language menu" 246 aria-controls="lang-switcher" 247 :aria-expanded="langSwitcherIsOpen" 248 x-on:click.throttle.700ms="langSwitcherIsOpen = !langSwitcherIsOpen; setTimeout(() => { isOpen = false }, 150)" 249> 250 <svg class="w-24 h-24 inherit-color-fill" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 251<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 252<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 253</mask> 254<g> 255<path d="M9.99807 18.9004C8.84585 18.9004 7.76009 18.6803 6.74078 18.24C5.72148 17.7999 4.8296 17.1975 4.06516 16.4329C3.30057 15.6685 2.69821 14.7766 2.25807 13.7573C1.8178 12.738 1.59766 11.6522 1.59766 10.5C1.59766 9.34183 1.8178 8.25454 2.25807 7.23815C2.69821 6.2219 3.30057 5.33155 4.06516 4.56711C4.8296 3.8
2550252 5.72148 3.20016 6.74078 2.76003C7.76009 2.31975 8.84585 2.09961 9.99807 2.09961C11.1563 2.09961 12.2436 2.31975 13.2599 2.76003C14.2762 3.20016 15.1665 3.80252 15.931 4.56711C16.6956 5.33155 17.2979 6.2219 17.7381 7.23815C18.1784 8.25454 18.3985 9.34183 18.3985 10.5C18.3985 11.6522 18.1784 12.738 17.7381 13.7573C17.2979 14.7766 16.6956 15.6685 15.931 16.4329C15.1665 17.1975 14.2762 17.7999 13.2599 18.24C12.2436 18.6803 11.1563 18.9004 9.99807 18.9004ZM9.97453 16.8079C10.1793 16.5875 10.3997 16.1564 10.6358 15.5146C10.8719 14.8727 11.0524 14.1776 11.1774 13.4294H8.80703C8.93203 14.1776 9.10668 14.8727 9.33099 15.5146C9.5553 16.1564 9.76981 16.5875 9.97453 16.8079ZM8.13766 16.5996C7.92752 16.1986 7.75738 15.7273 7.62724 15.1857C7.4971 14.644 7.38342 14.0586 7.2862 13.4294H4.37766C4.75682 14.2054 5.27384 14.8707 5.9287 15.4252C6.5837 15.98 7.32002 16.3714 8.13766 16.5996ZM11.8233 16.5996C12.6409 16.3714 13.3811 15.98 14.0439 15.4252C14.7065 14.8707 15.2275 14.2054 15.6068 13.4294H12.6983C12.6011 14.0586 12.4834 14.644 12.3454 15.1857C12.2074 15.7273 12.0334 16.1986 11.8233 16.5996ZM3.82682 11.9646H7.0987C7.07092 11.7007 7.05356 11.4443 7.04661 11.1952C7.03967 10.9461 7.0362 10.7004 7.0362 10.4584C7.0362 10.2084 7.03967 9.96773 7.04661 9.73648C7.05356 9.50523 7.07092 9.27155 7.0987 9.03544H3.82682C3.75738 9.29141 3.70877 9.53704 3.68099 9.77232C3.65321 10.0075 3.63932 10.25 3.63932 10.5C3.63932 10.7421 3.65321 10.9827 3.68099 11.2219C3.70877 11.4611 3.75738 11.7086 3.82682 11.9646ZM8.61953 11.9646H11.3649C11.3927 11.6868 11.4061 11.4304 11.4052 11.1952C11.4043 10.96 11.4039 10.7282 11.4039 10.5C11.4039 10.2639 11.4043 10.0268 11.4052 9.78857C11.4061 9.55037 11.3927 9.29933 11.3649 9.03544H8.61953C8.59175 9.29933 8.57439 9.55037 8.56745 9.78857C8.5605 10.0268 8.55703 10.2639 8.55703 10.5C8.55703 10.7282 8.5605 10.9634 8.56745 11.2057C8.57439 11.4477 8.59175 11.7007 8.61953 11.9646ZM12.8858 11.9646H16.1458C16.2152 11.7086 16.2638 11.4611 16.2916 11.2219C16.3194 10.9827 16.3333 10.7421 16.3333 10.5C16.3333 10.25 16.3194 10.004 16.2916 9.7619C16.2638 9.51968 16.2152 9.27753 16.1458 9.03544H12.8858C12.9056 9.29933 12.9171 9.55384 12.9202 9.79898C12.9232 10.0441 12.9247 10.2917 12.9247 10.5417C12.9247 10.7838 12.9232 11.0225 12.9202 11.2577C12.9171 11.4929 12.9056 11.7285 12.8858 11.9646ZM12.6983 7.55898H15.6068C15.2275 6.78301 14.7065 6.11961 14.0439 5.56878C13.3811 5.01808 12.6409 4.62864 11.8233 4.40044C12.0334 4.80141 12.2074 5.27072 12.3454 5.80836C12.4834 6.34614 12.6011 6.92968 12.6983 7.55898ZM8.80703 7.55898H11.1774C11.0602 6.81079 10.8836 6.11766 10.6474 5.47961C10.4113 4.84169 10.187 4.41252 9.97453 4.19211C9.76981 4.41252 9.5553 4.84169 9.33099 5.47961C9.10668 6.11766 8.93203 6.81079 8.80703 7.55898ZM4.37766 7.55898H7.2862C7.38342 6.92968 7.4971 6.34614 7.62724 5.80836C7.75738 5.27072 7.92752 4.80141 8.13766 4.40044C7.32002 4.62864 6.5837 5.01808 5.9287 5.56878C5.27384 6.11961 4.75682 6.78301 4.37766 7.55898Z" fill="#0026E1"/> 256</g> 257</svg></button> 258 <div class="gap-4 md:gap-6 2xl:gap-8 items-center justify-center hidden md:flex "> 259 <ul class="uppercase flex gap-4 md:gap-6 2xl:gap-8" aria-label="Select language"> 260 <li class="flex items-center"> 261 <a href="https://www.joensuu.fi/" lang="fi" aria-label="Suomi" class="animated-underline-invert-accent !no-underline" > 262 <span> 263 <span class="font-mono" aria-hidden="true">fi</span> 264 <span class="sr-only">Suomi</span> 265 </span> 266 </a> 267 </li> 268 <li class="flex items-center"> 269 <a href="https://www.joensuu.fi/en/" lang="en-US" aria-label="English" class="animated-underline-invert-accent !no-underline" aria-current="true" > 270 <span> 271 <span class="font-mono" aria-hidden="true">en</span> 272 <span class="sr-only">English</span> 273 </span> 274 </a> 275 </li> 276 </ul> 277 278 <svg class="w-24 h-24 inherit-color-fill" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 279<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 280<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 281</mask> 282<g> 283<path d="M9.99807 18.9004C8.84585 18.9004 7.76009 18.6803 6.74078 18.24C5.72148 17.7999 4.8296 17.1975 4.06516 16.4329C3.30057 15.6685 2.69821 14.7766 2.25807 13.7573C1.8178 12.738 1.59766 11.6522 1.59766 10.5C1.59766 9.34183 1.8178 8.25454 2.25807 7.23815C2.69821 6.2219 3.30057 5.33155 4.06516 4.56711C4.8296 3.8
2830252 5.72148 3.20016 6.74078 2.76003C7.76009 2.31975 8.84585 2.09961 9.99807 2.09961C11.1563 2.09961 12.2436 2.31975 13.2599 2.76003C14.2762 3.20016 15.1665 3.80252 15.931 4.56711C16.6956 5.33155 17.2979 6.2219 17.7381 7.23815C18.1784 8.25454 18.3985 9.34183 18.3985 10.5C18.3985 11.6522 18.1784 12.738 17.7381 13.7573C17.2979 14.7766 16.6956 15.6685 15.931 16.4329C15.1665 17.1975 14.2762 17.7999 13.2599 18.24C12.2436 18.6803 11.1563 18.9004 9.99807 18.9004ZM9.97453 16.8079C10.1793 16.5875 10.3997 16.1564 10.6358 15.5146C10.8719 14.8727 11.0524 14.1776 11.1774 13.4294H8.80703C8.93203 14.1776 9.10668 14.8727 9.33099 15.5146C9.5553 16.1564 9.76981 16.5875 9.97453 16.8079ZM8.13766 16.5996C7.92752 16.1986 7.75738 15.7273 7.62724 15.1857C7.4971 14.644 7.38342 14.0586 7.2862 13.4294H4.37766C4.75682 14.2054 5.27384 14.8707 5.9287 15.4252C6.5837 15.98 7.32002 16.3714 8.13766 16.5996ZM11.8233 16.5996C12.6409 16.3714 13.3811 15.98 14.0439 15.4252C14.7065 14.8707 15.2275 14.2054 15.6068 13.4294H12.6983C12.6011 14.0586 12.4834 14.644 12.3454 15.1857C12.2074 15.7273 12.0334 16.1986 11.8233 16.5996ZM3.82682 11.9646H7.0987C7.07092 11.7007 7.05356 11.4443 7.04661 11.1952C7.03967 10.9461 7.0362 10.7004 7.0362 10.4584C7.0362 10.2084 7.03967 9.96773 7.04661 9.73648C7.05356 9.50523 7.07092 9.27155 7.0987 9.03544H3.82682C3.75738 9.29141 3.70877 9.53704 3.68099 9.77232C3.65321 10.0075 3.63932 10.25 3.63932 10.5C3.63932 10.7421 3.65321 10.9827 3.68099 11.2219C3.70877 11.4611 3.75738 11.7086 3.82682 11.9646ZM8.61953 11.9646H11.3649C11.3927 11.6868 11.4061 11.4304 11.4052 11.1952C11.4043 10.96 11.4039 10.7282 11.4039 10.5C11.4039 10.2639 11.4043 10.0268 11.4052 9.78857C11.4061 9.55037 11.3927 9.29933 11.3649 9.03544H8.61953C8.59175 9.29933 8.57439 9.55037 8.56745 9.78857C8.5605 10.0268 8.55703 10.2639 8.55703 10.5C8.55703 10.7282 8.5605 10.9634 8.56745 11.2057C8.57439 11.4477 8.59175 11.7007 8.61953 11.9646ZM12.8858 11.9646H16.1458C16.2152 11.7086 16.2638 11.4611 16.2916 11.2219C16.3194 10.9827 16.3333 10.7421 16.3333 10.5C16.3333 10.25 16.3194 10.004 16.2916 9.7619C16.2638 9.51968 16.2152 9.27753 16.1458 9.03544H12.8858C12.9056 9.29933 12.9171 9.55384 12.9202 9.79898C12.9232 10.0441 12.9247 10.2917 12.9247 10.5417C12.9247 10.7838 12.9232 11.0225 12.9202 11.2577C12.9171 11.4929 12.9056 11.7285 12.8858 11.9646ZM12.6983 7.55898H15.6068C15.2275 6.78301 14.7065 6.11961 14.0439 5.56878C13.3811 5.01808 12.6409 4.62864 11.8233 4.40044C12.0334 4.80141 12.2074 5.27072 12.3454 5.80836C12.4834 6.34614 12.6011 6.92968 12.6983 7.55898ZM8.80703 7.55898H11.1774C11.0602 6.81079 10.8836 6.11766 10.6474 5.47961C10.4113 4.84169 10.187 4.41252 9.97453 4.19211C9.76981 4.41252 9.5553 4.84169 9.33099 5.47961C9.10668 6.11766 8.93203 6.81079 8.80703 7.55898ZM4.37766 7.55898H7.2862C7.38342 6.92968 7.4971 6.34614 7.62724 5.80836C7.75738 5.27072 7.92752 4.80141 8.13766 4.40044C7.32002 4.62864 6.5837 5.01808 5.9287 5.56878C5.27384 6.11961 4.75682 6.78301 4.37766 7.55898Z" fill="#0026E1"/> 284</g> 285</svg></div> 286 287<button 288 type="button" 289 x-ref="mainNavButton" 290 class="nav-toggle menu-toggle-main flex items-center justify-center group gap-2 2xl:gap-4 font-sans font-600 text-base 2xl:text-baseb relative animated-underline-invert-accent" 291 aria-controls="navbar" 292 :aria-expanded="isOpen" 293 aria-label="Open menu" 294 x-on:click.throttle.700ms="isOpen = true" 295> 296 <span> 297 <span class="hidden md:block font-mono">Menu</span> 298 </span> 299 <span> 300 <svg class="w-24 h-24 inherit-color-fill" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 301<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 302<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 303</mask> 304<g> 305<path d="M2.59766 15.577V13.5354H17.3985V15.577H2.59766ZM2.59766 11.5208V9.4791H17.3985V11.5208H2.59766ZM2.59766 7.46452V5.42285H17.3985V7.46452H2.59766Z" fill="#0026E1"/> 306</g> 307</svg> </span> 308</button> 309 <div 310 x-data="{ prevOpen: false, closedSearchWithEscape: false }" 311 x-effect=" 312 if (searchIsOpen && !prevOpen) { 313 $nextTick(() => { 314 $refs.searchInput?.focus(); 315 prevOpen = true; 316 closedSearchWithEscape = false;
317 }); 318 } else if (!searchIsOpen && prevOpen) { 319 if (closedSearchWithEscape) { 320 $nextTick(() => { 321 $refs.searchToggleButton?.focus(); 322 }); 323 } 324 prevOpen = false; 325 } 326 " 327 @keydown.escape.window=" 328 if (searchIsOpen && !isOpen && !mobileSearchIsOpen && !langSwitcherIsOpen) { 329 closedSearchWithEscape = true; 330 searchIsOpen = false; 331 } 332" 333 class="hidden md:block invisible w-[15rem] lg:w-[20rem] absolute top-1/2 -translate-y-1/2 -left-[17rem] lg:-left-[22rem]" 334 x-bind:class="searchIsOpen || searchIsOpenDelay ? '!visible' : ''" 335 x-show="searchIsOpen" 336> 337 338 <form role="search" method="get" class="search-form relative w-full" action="https://www.joensuu.fi/en/" @click.outside="searchIsOpen = false"> 339 <label> 340 <span class="sr-only"> 341 Search the site 342 </span> 343 344 <input type="hidden" name="site" value="Joensuu" /> 345 346 <input 347 id="site-search-header" 348 x-ref="searchInput" 349 type="search" 350 class="w-full bg-white text-grey-700 font-normal text-base font-sans border-2 border-accent py-8 px-12 rounded-xs shadow-input" 351 placeholder="Enter a search term" 352 value="" 353 name="s" 354 required 355 > 356 </label> 357 358 <button 359 type="submit" 360 class="cursor-pointer absolute top-1/2 -translate-y-1/2 right-12" 361 > 362 <span class="sr-only"> 363 Search 364 </span> 365 <span> 366 <svg class="w-20 h-20 inherit-color-fill" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 367<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 368<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 369</mask> 370<g> 371<path d="M15.9157 17.9473L10.854 12.8857C10.4453 13.1598 9.99429 13.3759 9.50109 13.5338C9.0079 13.6917 8.47693 13.7707 7.90818 13.7707C6.44818 13.7707 5.20457 13.2571 4.17734 12.2298C3.15026 11.2028 2.63672 9.95942 2.63672 8.49984C2.63672 7.04025 3.15026 5.79692 4.17734 4.76984C5.20457 3.74262 6.44797 3.229 7.90755 3.229C9.36714 3.229 10.6105 3.74262 11.6376 4.76984C12.6648 5.79692 13.1784 7.04046 13.1784 8.50046C13.1784 9.07713 13.0994 9.6081 12.9415 10.0934C12.7836 10.5787 12.5676 11.0218 12.2934 11.4228L17.3667 16.508L15.9157 17.9473ZM7.90755 11.729C8.80908 11.729 9.57262 11.4162 10.1982 10.7907C10.8239 10.165 11.1367 9.40137 11.1367 8.49984C11.1367 7.59831 10.8239 6.8347 10.1982 6.209C9.57262 5.58345 8.80908 5.27067 7.90755 5.27067C7.00602 5.27067 6.24241 5.58345 5.61672 6.209C4.99116 6.8347 4.67839 7.59831 4.67839 8.49984C4.67839 9.40137 4.99116 10.165 5.61672 10.7907C6.24241 11.4162 7.00602 11.729 7.90755 11.729Z" fill="#0026E1"/> 372</g> 373</svg> </span> 374 </button> 375 376 </form> 377</div> 378 379 </div> 380 </div> 381 </div> 382 </div> 383 384 <div 385 role="dialog" 386 aria-modal="true" 387 x-init="closedMainNavWithEscape = false" 388 x-effect=" 389 if (!isOpen && closedMainNavWithEscape) { 390 $nextTick(() => { 391 if ($refs.mainNavButton && typeof $refs.mainNavButton.focus === 'function') { 392 $refs.mainNavButton.focus(); 393 } 394 closedMainNavWithEscape = false;
395 }); 396 } 397 " 398 x-cloak 399 class="header-overlay fixed inset-0 flex flex-col bg-header-footer text-white transition duration-300 invisible white-focus" 400 x-bind:class="isOpen || isOpenDelay ? '!visible' : ''" 401 x-show="isOpen" 402 x-trap="isOpen" 403 @keydown.escape.window=" 404 if (isOpen && !searchIsOpen && !mobileSearchIsOpen && !langSwitcherIsOpen) { 405 closedMainNavWithEscape = true; 406 isOpen = false; 407 } 408 " 409 x-transition:enter="ease-out" 410 x-transition:enter-start="opacity-0" 411 x-transition:enter-end="opacity-100" 412 x-transition:leave="ease-in" 413 x-transition:leave-start="opacity-100" 414 x-transition:leave-end="opacity-0" 415 id="header-nav-scrollable" 416 x-trap.inert.noscroll="isOpen" 417> 418 <div class="header-overlay-controls fixed z-50 top-0 left-0 right-0 w-full flex items-center"> 419 <div class="container px-18 md:px-24 mx-auto"> 420 <div class="flex justify-between items-center"> 421 <div class="max-w-[9rem] md:max-w-[12rem]"> 422 <svg class="w-full h-auto" role="img" alt="" aria-hidden="true" width="198" height="23" viewBox="0 0 198 23" fill="none" xmlns="http://www.w3.org/2000/svg"> 423<g> 424<path fill-rule="evenodd" clip-rule="evenodd" d="M129.412 9.91726L124.306 8.93529C122.358 8.54494 120.916 8.05701 120.916 6.47122C120.916 4.64147 122.863 3.58631 125.596 3.58631C129.065 3.58631 131.365 5.09891 132.656 7.10554L135.973 4.22063C133.83 1.75656 130.355 0 125.602 0C119.833 0 116.011 2.74463 116.011 6.75178C116.011 10.4418 118.975 12.1679 122.717 12.8693L128.256 13.8878C130.325 14.3087 131.846 14.8393 131.846 16.4556C131.846 18.389 129.503 19.4076 126.387 19.4076C122.955 19.4076 119.644 17.9987 117.849 15.2906L114.769 18.4927C117.07 21.3044 121.281 22.9939 126.387 22.9939C132.157 22.9939 136.758 20.5664 136.758 16.2787C136.758 12.5521 134.031 10.7955 129.43 9.91116L129.412 9.91726ZM13.8893 14.2782C13.8893 17.3704 12.5626 19.2002 9.48314 19.2002C6.40368 19.2002 4.8396 17.2058 4.96741 13.961H0.00739743C-0.187351 19.554 3.47636 23 9.44054 23C14.8205 23 18.8372 20.048 18.8372 14.5587V0.420846H13.8833V14.2782H13.8893ZM61.0672 13.0827H72.1375V9.35615H61.0672V4.18405H75.7647V0.420861H56.2715V22.5792H76.1116V18.816H61.0672V13.0827ZM90.5778 0.420861L102.354 15.6139V0.420861H106.876V22.5792H102.549L89.5675 6.15408V22.5792H85.0822V0.420861H90.5778ZM193.119 0.420861V12.9059C193.119 16.9496 190.977 19.2368 187.076 19.2368C183.175 19.2368 181.075 16.9496 181.075 12.9059V0.420861H176.164V13.5036C176.164 19.9748 181.191 23 187.082 23C192.973 23 198 19.9748 198 13.5036V0.420861H193.125H193.119ZM155.849 19.2368C159.75 19.2368 161.892 16.9496 161.892 12.9059V0.420861H166.767V13.5036C166.767 19.9748 161.74 23 155.849 23C149.958 23 144.931 19.9748 144.931 13.5036V0.420861H149.842V12.9059C149.842 16.9496 151.948 19.2368 155.849 19.2368ZM30.37 11.3201C30.37 7.69716 33.3034 4.75736 36.9184 4.75736C40.5334 4.75736 43.4668 7.69716 43.4668 11.3201C43.4668 14.943 40.5334 17.8828 36.9184 17.8828C33.3034 17.8828 30.37 14.943 30.37 11.3201Z" fill="#ffffff"/> 425</g> 426</svg></div> 427 428 <div class="flex gap-32 md:gap-36 2xl:gap-48 text-white header-overlay-control-focusable md:pb-4"> 429 <button 430 class="-mr-[0.2rem] md:mr-0 animated-underline-invert-white nav-toggle flex items-center justify-center cursor-pointer text-base 2xl:text-baseb font-mono font-600 gap-2 2xl:gap-4 relative" 431 aria-label="Close menu" 432 x-on:click=" 433 closedMainNavWithEscape = true; 434 isOpen = false; 435 " 436 > 437 <span> 438 <span class="hidden md:block"> 439 Close 440 </span> 441 </span> 442 <svg class="w-20 h-20 mt-[0.2rem]" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 443<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 444<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 445</mask> 446<g> 447<path d="M6.06437 15.8768L4.625 14.4374L8.5625 10.4999L4.625 6.56242L6.06437 5.12305L10.0019 9.06055L13.9394 5.12305L15.3788 6.56242L11.4413 10.4999L15.3788 14.4374L13.9394 15.8768L10.0019 11.9393L6.06437 15.8768Z" fill="white"/> 448</g> 449</svg> 450 <svg class="pointer-events-none hidden md:block w-[42.5rem] h-[48.125rem] absolute -top-[40.5rem] -right-[13rem]" role="img" aria-hidden="true" width="680" height="770" viewB
450ox="0 0 680 770" fill="none" xmlns="http://www.w3.org/2000/svg"> 451<path d="M679.5 9.66602V483.959C679.5 575.887 644.632 646.573 586.412 694.286C528.18 742.01 446.542 766.787 352.959 766.787C249.162 766.787 165.481 737.888 108.597 685.597C51.8175 633.401 21.681 557.848 24.9277 464.294H196.717C194.497 518.621 206.947 562.575 233.393 592.979C259.929 623.489 300.488 640.279 354.224 640.279C407.948 640.279 446.457 624.87 471.523 596.368C496.579 567.878 508.13 526.389 508.13 474.386V9.66602H679.5ZM122.008 0.5C189.179 0.5 243.516 53.0469 243.516 117.935C243.516 182.618 188.968 235.369 121.797 235.369C54.6278 235.369 0.500051 182.62 0.5 117.935C0.5 53.2501 54.8374 0.50012 122.008 0.5Z" stroke="white"/> 452</svg> </button> 453 </div> 454 </div> 455 </div> 456 </div> 457 458 <div class="flex flex-col md:justify-center mt-128 mb-32 md:my-auto"> 459 <div class="container px-18 md:px-24 mx-auto"> 460 <div class="flex flex-col transition duration-500 gap-48"> 461 <nav 462 id="navbar" 463 class="md:py-128" 464 aria-label="Main menu" 465 x-data="{ subOpen: { 466 1: null, 467 2: null, 468 3: null, 469 } }" 470 > 471 <ul class="flex flex-col gap-12 2xl:gap-16 opacity-100 items-baseline relative"> 472 <li 473 class="py-4 transition duration-500 w-full md:w-[30%] 2xl:w-[27%]" 474 x-bind:class="!isOpenDelayShort ? 'opacity-0' : 'opacity-100'" 475 > 476 <span 477 class="group nav-item nav-item-main flex flex-nowrap gap-8 transition duration-500" 478 x-bind:class="subOpen[1] == '37' ? 'nav-item-active' : ''" 479 x-bind:style="!isOpenDelayShort ? { 'transition-delay': '0ms', transform: 'translateY(1.5rem)' } : { 'transition-delay': '0ms' }" 480 > 481 <a 482 href="https://www.joensuu.fi/en/everyday-services/" 483 class="!no-underline flex-1 font-display text-base 2xl:text-baseb very-low-text-3xl leading-normal" 484 x-bind:class="subOpen[1] == '37' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 485 > 486 <span class="!w-auto">Everyday services</span> 487 </a> 488 <button 489 :aria-expanded="subOpen[1] == '37'" 490 class="submenu-toggle cursor-pointer shrink-0 w-24 h-24 ml-auto flex justify-center items-center" 491 @click=" 492 if(subOpen[1] == '37') { 493 subOpen[1] = null; 494 } else { 495 subOpen[1] = '37'; 496 }; 497 subOpen[2] = null; 498 subOpen[3] = null; 499 " 500 > 501 <span class="block"> 502 <span 503 class="shrink-0 block transform transition duration-300 mx-auto menu-plus scale-130 mr-[0.3rem] md:mr-0" 504 x-bind:class="subOpen[1] == '37' ? 'menu-plus-active text-menu-hover' : ''" 505 aria-hidden="true"> 506 <span x-bind:class="subOpen[1] == '37' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 507<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 508<rect width="24" height="24" fill="#D9D9D9"/> 509</mask> 510<g> 511<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 512</g> 513</svg></span> 514
515 <span x-bind:class="subOpen[1] == '37' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 516<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 517<rect width="24" height="24" fill="#D9D9D9"/> 518</mask> 519<g> 520<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 521</g> 522</svg></span> 523 </span> 524 <span class="sr-only" x-bind:class="subOpen[1] == '37' ? 'hidden' : ''">Open "Everyday services" submenu</span> 525 <span class="sr-only" x-bind:class="subOpen[1] == '37' ? '' : 'hidden'">Close "Everyday services" submenu</span> 526 </span> 527 </button> 528 </span> 529 <div 530 x-cloak 531 class="md:absolute md:top-0 transition-all transform duration-500 pl-24 md:pl-0 grid z-20 md:mt-4 2xl:mt-9 3xl:mt-8 md:left-1/3 md:max-w-[33%] 2xl:left-[31%] 2xl:max-w-[31%]" 532 x-bind:class="subOpen[1] == '37' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 533 x-bind:style="subOpen[1] == '37' && !subOpen[2] && { maxHeight: '420px' }" 534 > 535 <ul 536 class="flex flex-col gap-12 2xl:gap-16 transition duration-500 my-24 md:my-0 md:-mt-[0.4rem]" 537 x-bind:class="!isOpenDelayShort ? 'opacity-0 translate-y-32' : 'opacity-100 translate-y-0'" 538 > 539 <li class="w-full pb-8 pr-4 md:pr-0"> 540 <span 541 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 542 x-bind:class="subOpen[2] == '28215' ? 'nav-item-active' : ''" 543 > 544 <a 545 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 546 href="https://www.joensuu.fi/en/everyday-services/housing/" 547 x-bind:class="subOpen[2] == '28215' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 548 > 549 <span>Housing</span> 550 </a> 551 <button 552 :aria-expanded="subOpen[2] == '28215'" 553 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 554 @click=" 555 if(subOpen[2] == '28215') { 556 subOpen[2] = null; 557 } else { 558 subOpen[2] = '28215'; 559 }; 560 subOpen[3] = null; 561 subOpen[4] = null; 562 " 563 > 564 <span class="block"> 565 <span 566 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 567 x-bind:class="subOpen[2] == '28215' ? 'menu-plus-active text-menu-hover' : ''" 568 aria-hidden="true"> 569 <span x-bind:class="subOpen[2] == '28215' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 570<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 571<rect width="24" height="24" fill="#D9D9D9"/> 572</mask> 573<g> 574<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 575</g> 576</svg></span> 577 578 <span x-bind:class="subOpen[2] == '28215' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 579<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 580<rect width="24" height="24" fill="#D9D9D9"/> 581</mask> 582<g> 583<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 584</g> 585</svg></span> 586 </span>
587 <span class="sr-only" x-bind:class="subOpen[2] == '28215' ? 'hidden' : ''"> 588 Open "Housing" submenu 589 </span> 590 <span class="sr-only" x-bind:class="subOpen[2] == '28215' ? '' : 'hidden'"> 591 Close "Housing" submenu 592 </span> 593 </span> 594 </button> 595 </span> 596 <div 597 x-cloak 598 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 599 x-bind:class="subOpen[2] == '28215' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 600 x-bind:style="subOpen[2] == '28215' && !subOpen[3] && { maxHeight: '120px' }" 601 > 602 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 603 <li class="w-full pb-8 pr-4 md:pr-0"> 604 <span 605 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 606 x-bind:class="subOpen[3] == '28222' ? 'nav-item-active' : ''" 607 > 608 <a 609 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 610 href="https://www.joensuu.fi/en/everyday-services/housing/waste-management/" 611 x-bind:class="subOpen[3] == '28222' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 612 > 613 <span>Waste Management</span> 614 </a> 615 </span> 616 </li> 617 618 <li class="w-full pb-8 pr-4 md:pr-0"> 619 <span 620 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 621 x-bind:class="subOpen[3] == '28216' ? 'nav-item-active' : ''" 622 > 623 <a 624 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 625 href="https://www.joensuu.fi/en/everyday-services/housing/stormwater/" 626 x-bind:class="subOpen[3] == '28216' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 627 > 628 <span>Stormwater</span> 629 </a> 630 </span> 631 </li> 632 633 </ul> 634 </div> 635 </li> 636 637 <li class="w-full pb-8 pr-4 md:pr-0"> 638 <span 639 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 640 x-bind:class="subOpen[2] == '29331' ? 'nav-item-active' : ''" 641 > 642 <a 643 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 644 href="https://www.joensuu.fi/en/everyday-services/early-childhood-education-and-pre-primary-education/" 645 x-bind:class="subOpen[2] == '29331' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 646 > 647 <span>Early childhood education and pre-primary education</span> 648 </a> 649 <button 650 :aria-expanded="subOpen[2] == '29331'" 651 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 652 @click=" 653 if(subOpen[2] == '29331') { 654 subOpen[2] = null; 655 } else { 656 subOpen[2] = '29331'; 657 }; 658 subOpen[3] = null; 659 subOpen[4] = null; 660 " 661 > 662 <span class="block"> 663 <span 664 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 665 x-bind:class="subOpen[2] == '29331' ? 'menu-plus-active text-menu-hover' : ''" 666 aria-hidden="true"> 667 <span x-bind:class="subOpen[2] == '29331' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 668<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 669<rect width="24" height="24" fill="#D9D9D9"/> 670</mask> 671<g> 672<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 673</g> 674</svg></span> 675
676 <span x-bind:class="subOpen[2] == '29331' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 677<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 678<rect width="24" height="24" fill="#D9D9D9"/> 679</mask> 680<g> 681<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 682</g> 683</svg></span> 684 </span> 685 <span class="sr-only" x-bind:class="subOpen[2] == '29331' ? 'hidden' : ''"> 686 Open "Early childhood education and pre-primary education" submenu 687 </span> 688 <span class="sr-only" x-bind:class="subOpen[2] == '29331' ? '' : 'hidden'"> 689 Close "Early childhood education and pre-primary education" submenu 690 </span> 691 </span> 692 </button> 693 </span> 694 <div 695 x-cloak 696 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 697 x-bind:class="subOpen[2] == '29331' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 698 x-bind:style="subOpen[2] == '29331' && !subOpen[3] && { maxHeight: '120px' }" 699 > 700 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 701 <li class="w-full pb-8 pr-4 md:pr-0"> 702 <span 703 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 704 x-bind:class="subOpen[3] == '29358' ? 'nav-item-active' : ''" 705 > 706 <a 707 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 708 href="https://www.joensuu.fi/en/everyday-services/early-childhood-education-and-pre-primary-education/early-childhood-education-and-daycare/" 709 x-bind:class="subOpen[3] == '29358' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 710 > 711 <span>Early childhood education and daycare</span> 712 </a> 713 </span> 714 </li> 715 716 <li class="w-full pb-8 pr-4 md:pr-0"> 717 <span 718 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 719 x-bind:class="subOpen[3] == '31324' ? 'nav-item-active' : ''" 720 > 721 <a 722 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 723 href="https://www.joensuu.fi/en/everyday-services/early-childhood-education-and-pre-primary-education/pre-primary-education/" 724 x-bind:class="subOpen[3] == '31324' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 725 > 726 <span>Pre-primary education</span> 727 </a> 728 </span> 729 </li> 730 731 </ul> 732 </div> 733 </li> 734 735 <li class="w-full pb-8 pr-4 md:pr-0"> 736 <span 737 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 738 x-bind:class="subOpen[2] == '31021' ? 'nav-item-active' : ''" 739 > 740 <a 741 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 742 href="https://www.joensuu.fi/en/everyday-services/basic-education/" 743 x-bind:class="subOpen[2] == '31021' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 744 > 745 <span>Basic education</span> 746 </a> 747 <button 748 :aria-expanded="subOpen[2] == '31021'" 749 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 750 @click=" 751 if(subOpen[2] == '31021') { 752 subOpen[2] = null; 753 } else { 754 subOpen[2] = '31021'; 755 }; 756 subOpen[3] = null; 757 subOpen[4] = null; 758 " 759 > 760 <span class="block">
761 <span 762 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 763 x-bind:class="subOpen[2] == '31021' ? 'menu-plus-active text-menu-hover' : ''" 764 aria-hidden="true"> 765 <span x-bind:class="subOpen[2] == '31021' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 766<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 767<rect width="24" height="24" fill="#D9D9D9"/> 768</mask> 769<g> 770<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 771</g> 772</svg></span> 773 774 <span x-bind:class="subOpen[2] == '31021' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 775<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 776<rect width="24" height="24" fill="#D9D9D9"/> 777</mask> 778<g> 779<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 780</g> 781</svg></span> 782 </span> 783 <span class="sr-only" x-bind:class="subOpen[2] == '31021' ? 'hidden' : ''"> 784 Open "Basic education" submenu 785 </span> 786 <span class="sr-only" x-bind:class="subOpen[2] == '31021' ? '' : 'hidden'"> 787 Close "Basic education" submenu 788 </span> 789 </span> 790 </button> 791 </span> 792 <div 793 x-cloak 794 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 795 x-bind:class="subOpen[2] == '31021' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 796 x-bind:style="subOpen[2] == '31021' && !subOpen[3] && { maxHeight: '420px' }" 797 > 798 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 799 <li class="w-full pb-8 pr-4 md:pr-0"> 800 <span 801 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 802 x-bind:class="subOpen[3] == '31022' ? 'nav-item-active' : ''" 803 > 804 <a 805 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 806 href="https://www.joensuu.fi/en/everyday-services/basic-education/comprehensive-schools/" 807 x-bind:class="subOpen[3] == '31022' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 808 > 809 <span>Comprehensive schools</span> 810 </a> 811 </span> 812 </li> 813 814 <li class="w-full pb-8 pr-4 md:pr-0"> 815 <span 816 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 817 x-bind:class="subOpen[3] == '31023' ? 'nav-item-active' : ''" 818 > 819 <a 820 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 821 href="https://www.joensuu.fi/en/everyday-services/basic-education/school-registration/" 822 x-bind:class="subOpen[3] == '31023' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 823 > 824 <span>School registration</span> 825 </a> 826 </span> 827 </li> 828 829 <li class="w-full pb-8 pr-4 md:pr-0"> 830 <span 831 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 832 x-bind:class="subOpen[3] == '31024' ? 'nav-item-active' : ''" 833 > 834 <a 835 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 836 href="https://www.joensuu.fi/en/everyday-services/basic-education/school-transport/" 837 x-bind:class="subOpen[3] == '31024' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 838 >
839 <span>School transport</span> 840 </a> 841 </span> 842 </li> 843 844 <li class="w-full pb-8 pr-4 md:pr-0"> 845 <span 846 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 847 x-bind:class="subOpen[3] == '31034' ? 'nav-item-active' : ''" 848 > 849 <a 850 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 851 href="https://www.joensuu.fi/en/everyday-services/basic-education/school-term-dates-and-holidays/" 852 x-bind:class="subOpen[3] == '31034' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 853 > 854 <span>School term dates and holidays</span> 855 </a> 856 </span> 857 </li> 858 859 <li class="w-full pb-8 pr-4 md:pr-0"> 860 <span 861 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 862 x-bind:class="subOpen[3] == '31025' ? 'nav-item-active' : ''" 863 > 864 <a 865 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 866 href="https://www.joensuu.fi/en/everyday-services/basic-education/support-for-learning/" 867 x-bind:class="subOpen[3] == '31025' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 868 > 869 <span>Support for learning</span> 870 </a> 871 </span> 872 </li> 873 874 <li class="w-full pb-8 pr-4 md:pr-0"> 875 <span 876 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 877 x-bind:class="subOpen[3] == '31026' ? 'nav-item-active' : ''" 878 > 879 <a 880 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 881 href="https://www.joensuu.fi/en/everyday-services/basic-education/afternoon-activities/" 882 x-bind:class="subOpen[3] == '31026' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 883 > 884 <span>Afternoon activities</span> 885 </a> 886 </span> 887 </li> 888 889 <li class="w-full pb-8 pr-4 md:pr-0"> 890 <span 891 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 892 x-bind:class="subOpen[3] == '31027' ? 'nav-item-active' : ''" 893 > 894 <a 895 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 896 href="https://www.joensuu.fi/en/everyday-services/basic-education/instruction-in-language-and-culture-groups/" 897 x-bind:class="subOpen[3] == '31027' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 898 > 899 <span>Instruction in language and culture groups</span> 900 </a> 901 </span> 902 </li> 903 904 </ul> 905 </div> 906 </li> 907 908 <li class="w-full pb-8 pr-4 md:pr-0"> 909 <span 910 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 911 x-bind:class="subOpen[2] == '31327' ? 'nav-item-active' : ''" 912 > 913 <a 914 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 915 href="https://www.joensuu.fi/en/everyday-services/integration-services/" 916 x-bind:class="subOpen[2] == '31327' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 917 > 918 <span>Integration services</span> 919 </a> 920 </span> 921 </li> 922 923 <li class="w-full pb-8 pr-4 md:pr-0"> 924 <span 925 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 926 x-bind:class="subOpen[2] == '28242' ? 'nav-item-active' : ''" 927 > 928 <a 929 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 930 href="https://www.joensuu.fi/en/everyday-services/transport-streets-and-infrastructure-maintenance/" 931 x-bind:class="subOpen[2] == '28242' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 932 > 933 <span>Transport, streets and infrastructure maintenance</span> 934 </a> 935 <button 936 :aria-expanded="subOpen[2] == '28242'" 937 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 938 @click=" 939 if(subOpen[2] == '28242') { 940 subOpen[2] = null; 941 } else { 942 subOpen[2] = '28242'; 943 }; 944 subOpen[3] = null; 945 subOpen[4] = null; 946 " 947 >
948 <span class="block"> 949 <span 950 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 951 x-bind:class="subOpen[2] == '28242' ? 'menu-plus-active text-menu-hover' : ''" 952 aria-hidden="true"> 953 <span x-bind:class="subOpen[2] == '28242' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 954<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 955<rect width="24" height="24" fill="#D9D9D9"/> 956</mask> 957<g> 958<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 959</g> 960</svg></span> 961 962 <span x-bind:class="subOpen[2] == '28242' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 963<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 964<rect width="24" height="24" fill="#D9D9D9"/> 965</mask> 966<g> 967<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 968</g> 969</svg></span> 970 </span> 971 <span class="sr-only" x-bind:class="subOpen[2] == '28242' ? 'hidden' : ''"> 972 Open "Transport, streets and infrastructure maintenance" submenu 973 </span> 974 <span class="sr-only" x-bind:class="subOpen[2] == '28242' ? '' : 'hidden'"> 975 Close "Transport, streets and infrastructure maintenance" submenu 976 </span> 977 </span> 978 </button> 979 </span> 980 <div 981 x-cloak 982 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 983 x-bind:class="subOpen[2] == '28242' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 984 x-bind:style="subOpen[2] == '28242' && !subOpen[3] && { maxHeight: '300px' }" 985 > 986 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 987 <li class="w-full pb-8 pr-4 md:pr-0"> 988 <span 989 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 990 x-bind:class="subOpen[3] == '28863' ? 'nav-item-active' : ''" 991 > 992 <a 993 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 994 href="https://www.joensuu.fi/en/everyday-services/transport-streets-and-infrastructure-maintenance/public-transport/" 995 x-bind:class="subOpen[3] == '28863' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 996 > 997 <span>Public Transport</span> 998 </a> 999 </span> 1000 </li> 1001 1002 <li class="w-full pb-8 pr-4 md:pr-0"> 1003 <span 1004 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1005 x-bind:class="subOpen[3] == '34212' ? 'nav-item-active' : ''" 1006 > 1007 <a 1008 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1009 href="https://www.joensuu.fi/arjen-palvelut/liikenne-kadut-ja-kunnossapito/parking/" 1010 x-bind:class="subOpen[3] == '34212' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1011 > 1012 <span>Parking</span> 1013 </a> 1014 </span> 1015 </li> 1016 1017 <li class="w-full pb-8 pr-4 md:pr-0"> 1018 <span 1019 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1020 x-bind:class="subOpen[3] == '31182' ? 'nav-item-active' : ''" 1021 > 1022 <a 1023 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1024 href="https://www.joensuu.fi/en/everyday-services/transport-streets-and-infrastru
1024cture-maintenance/parking-enforcement/" 1025 x-bind:class="subOpen[3] == '31182' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1026 > 1027 <span>Parking Enforcement</span> 1028 </a> 1029 </span> 1030 </li> 1031 1032 <li class="w-full pb-8 pr-4 md:pr-0"> 1033 <span 1034 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1035 x-bind:class="subOpen[3] == '31183' ? 'nav-item-active' : ''" 1036 > 1037 <a 1038 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1039 href="https://www.joensuu.fi/en/everyday-services/transport-streets-and-infrastructure-maintenance/summer-maintenance-of-streets/" 1040 x-bind:class="subOpen[3] == '31183' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1041 > 1042 <span>Summer maintenance of streets</span> 1043 </a> 1044 </span> 1045 </li> 1046 1047 <li class="w-full pb-8 pr-4 md:pr-0"> 1048 <span 1049 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1050 x-bind:class="subOpen[3] == '28243' ? 'nav-item-active' : ''" 1051 > 1052 <a 1053 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1054 href="https://www.joensuu.fi/en/everyday-services/transport-streets-and-infrastructure-maintenance/outdoor-lighting/" 1055 x-bind:class="subOpen[3] == '28243' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1056 > 1057 <span>Outdoor lighting</span> 1058 </a> 1059 </span> 1060 </li> 1061 1062 </ul> 1063 </div> 1064 </li> 1065 1066 <li class="w-full pb-8 pr-4 md:pr-0"> 1067 <span 1068 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1069 x-bind:class="subOpen[2] == '38014' ? 'nav-item-active' : ''" 1070 > 1071 <a 1072 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 1073 href="https://www.joensuu.fi/en/everyday-services/environment-and-nature/" 1074 x-bind:class="subOpen[2] == '38014' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1075 > 1076 <span>Environment and nature</span> 1077 </a> 1078 <button 1079 :aria-expanded="subOpen[2] == '38014'" 1080 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 1081 @click=" 1082 if(subOpen[2] == '38014') { 1083 subOpen[2] = null; 1084 } else { 1085 subOpen[2] = '38014'; 1086 }; 1087 subOpen[3] = null; 1088 subOpen[4] = null; 1089 " 1090 > 1091 <span class="block"> 1092 <span 1093 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 1094 x-bind:class="subOpen[2] == '38014' ? 'menu-plus-active text-menu-hover' : ''" 1095 aria-hidden="true"> 1096 <span x-bind:class="subOpen[2] == '38014' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1097<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1098<rect width="24" height="24" fill="#D9D9D9"/> 1099</mask> 1100<g> 1101<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 1102</g> 1103</svg></span> 1104 1105 <span x-bind:class="subOpen[2] == '38014' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1106<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1107<rect width="24" height="24" fill="#D9D9D9"/> 1108</mask> 1109<g> 1110<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 1111</g> 1112</svg></span> 1113 </span>
1114 <span class="sr-only" x-bind:class="subOpen[2] == '38014' ? 'hidden' : ''"> 1115 Open "Environment and nature" submenu 1116 </span> 1117 <span class="sr-only" x-bind:class="subOpen[2] == '38014' ? '' : 'hidden'"> 1118 Close "Environment and nature" submenu 1119 </span> 1120 </span> 1121 </button> 1122 </span> 1123 <div 1124 x-cloak 1125 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 1126 x-bind:class="subOpen[2] == '38014' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 1127 x-bind:style="subOpen[2] == '38014' && !subOpen[3] && { maxHeight: '240px' }" 1128 > 1129 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 1130 <li class="w-full pb-8 pr-4 md:pr-0"> 1131 <span 1132 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1133 x-bind:class="subOpen[3] == '38016' ? 'nav-item-active' : ''" 1134 > 1135 <a 1136 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1137 href="https://www.joensuu.fi/en/everyday-services/environment-and-nature/environmental-permits-and-notifications/" 1138 x-bind:class="subOpen[3] == '38016' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1139 > 1140 <span>Environmental permits and notifications</span> 1141 </a> 1142 </span> 1143 </li> 1144 1145 <li class="w-full pb-8 pr-4 md:pr-0"> 1146 <span 1147 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1148 x-bind:class="subOpen[3] == '38015' ? 'nav-item-active' : ''" 1149 > 1150 <a 1151 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1152 href="https://www.joensuu.fi/en/everyday-services/environment-and-nature/state-of-the-environment/" 1153 x-bind:class="subOpen[3] == '38015' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1154 > 1155 <span>State of the environment</span> 1156 </a> 1157 </span> 1158 </li> 1159 1160 <li class="w-full pb-8 pr-4 md:pr-0"> 1161 <span 1162 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1163 x-bind:class="subOpen[3] == '39004' ? 'nav-item-active' : ''" 1164 > 1165 <a 1166 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1167 href="https://www.joensuu.fi/en/everyday-services/environment-and-nature/tree-remowal-and-landscape-work/" 1168 x-bind:class="subOpen[3] == '39004' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1169 > 1170 <span>Tree remowal and landscape work</span> 1171 </a> 1172 </span> 1173 </li> 1174 1175 <li class="w-full pb-8 pr-4 md:pr-0"> 1176 <span 1177 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1178 x-bind:class="subOpen[3] == '38204' ? 'nav-item-active' : ''" 1179 > 1180 <a 1181 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1182 href="https://www.joensuu.fi/en/everyday-services/environment-and-nature/park-volunteers/" 1183 x-bind:class="subOpen[3] == '38204' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1184 > 1185 <span>Park volunteers</span> 1186 </a> 1187 </span> 1188 </li> 1189 1190 </ul> 1191 </div> 1192 </li> 1193 1194 <li class="w-full pb-8 pr-4 md:pr-0"> 1195 <span 1196 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1197 x-bind:class="subOpen[2] == '31535' ? 'nav-item-active' : ''" 1198 > 1199 <a 1200 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 1201 href="https://www.joensuu.fi/en/everyday-services/job-search/" 1202 x-bind:class="subOpen[2] == '31535' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1203 >
1204 <span>Job search</span> 1205 </a> 1206 <button 1207 :aria-expanded="subOpen[2] == '31535'" 1208 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 1209 @click=" 1210 if(subOpen[2] == '31535') { 1211 subOpen[2] = null; 1212 } else { 1213 subOpen[2] = '31535'; 1214 }; 1215 subOpen[3] = null; 1216 subOpen[4] = null; 1217 " 1218 > 1219 <span class="block"> 1220 <span 1221 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 1222 x-bind:class="subOpen[2] == '31535' ? 'menu-plus-active text-menu-hover' : ''" 1223 aria-hidden="true"> 1224 <span x-bind:class="subOpen[2] == '31535' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1225<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1226<rect width="24" height="24" fill="#D9D9D9"/> 1227</mask> 1228<g> 1229<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 1230</g> 1231</svg></span> 1232 1233 <span x-bind:class="subOpen[2] == '31535' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1234<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1235<rect width="24" height="24" fill="#D9D9D9"/> 1236</mask> 1237<g> 1238<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 1239</g> 1240</svg></span> 1241 </span> 1242 <span class="sr-only" x-bind:class="subOpen[2] == '31535' ? 'hidden' : ''"> 1243 Open "Job search" submenu 1244 </span> 1245 <span class="sr-only" x-bind:class="subOpen[2] == '31535' ? '' : 'hidden'"> 1246 Close "Job search" submenu 1247 </span> 1248 </span> 1249 </button> 1250 </span> 1251 <div 1252 x-cloak 1253 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 1254 x-bind:class="subOpen[2] == '31535' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 1255 x-bind:style="subOpen[2] == '31535' && !subOpen[3] && { maxHeight: '180px' }" 1256 > 1257 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 1258 <li class="w-full pb-8 pr-4 md:pr-0"> 1259 <span 1260 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1261 x-bind:class="subOpen[3] == '31539' ? 'nav-item-active' : ''" 1262 > 1263 <a 1264 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1265 href="https://www.joensuu.fi/en/everyday-services/job-search/register-as-a-job-seeker/" 1266 x-bind:class="subOpen[3] == '31539' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1267 > 1268 <span>Register as a job seeker</span> 1269 </a> 1270 </span> 1271 </li> 1272 1273 <li class="w-full pb-8 pr-4 md:pr-0"> 1274 <span 1275 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1276 x-bind:class="subOpen[3] == '31538' ? 'nav-item-active' : ''" 1277 > 1278 <a 1279 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1280 href="https://www.joensuu.fi/en/everyday-services/job-search/services-for-job-seekers/" 1281 x-bind:class="subOpen[3] == '31538' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1282 > 1283 <span>Services for job seekers</span> 1284 </a> 1285 </span> 1286 </li> 1287 1288 <li class="w-full pb-8 pr-4 md:pr-0"> 1289 <span 1290 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1291 x-bind:class="subOpen[3] == '31537' ? 'nav-item-active' : ''" 1292 > 1293 <a 1294 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1295 href="https://www.joensuu.fi/en/everyday-services/job-search/transactions-and-contact-information/" 1296 x-bind:class="subOpen[3] == '31537' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1297 >
1298 <span>Transactions and contact information</span> 1299 </a> 1300 </span> 1301 </li> 1302 1303 </ul> 1304 </div> 1305 </li> 1306 1307 </ul> 1308 </div> 1309 </li> 1310 <li 1311 class="py-4 transition duration-500 w-full md:w-[30%] 2xl:w-[27%]" 1312 x-bind:class="!isOpenDelayShort ? 'opacity-0' : 'opacity-100'" 1313 > 1314 <span 1315 class="group nav-item nav-item-main flex flex-nowrap gap-8 transition duration-500" 1316 x-bind:class="subOpen[1] == '25944' ? 'nav-item-active' : ''" 1317 x-bind:style="!isOpenDelayShort ? { 'transition-delay': '20ms', transform: 'translateY(1.5rem)' } : { 'transition-delay': '20ms' }" 1318 > 1319 <a 1320 href="https://www.joensuu.fi/en/leisure/" 1321 class="!no-underline flex-1 font-display text-base 2xl:text-baseb very-low-text-3xl leading-normal" 1322 x-bind:class="subOpen[1] == '25944' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1323 > 1324 <span class="!w-auto">Leisure</span> 1325 </a> 1326 <button 1327 :aria-expanded="subOpen[1] == '25944'" 1328 class="submenu-toggle cursor-pointer shrink-0 w-24 h-24 ml-auto flex justify-center items-center" 1329 @click=" 1330 if(subOpen[1] == '25944') { 1331 subOpen[1] = null; 1332 } else { 1333 subOpen[1] = '25944'; 1334 }; 1335 subOpen[2] = null; 1336 subOpen[3] = null; 1337 " 1338 > 1339 <span class="block"> 1340 <span 1341 class="shrink-0 block transform transition duration-300 mx-auto menu-plus scale-130 mr-[0.3rem] md:mr-0" 1342 x-bind:class="subOpen[1] == '25944' ? 'menu-plus-active text-menu-hover' : ''" 1343 aria-hidden="true"> 1344 <span x-bind:class="subOpen[1] == '25944' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1345<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1346<rect width="24" height="24" fill="#D9D9D9"/> 1347</mask> 1348<g> 1349<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 1350</g> 1351</svg></span> 1352 1353 <span x-bind:class="subOpen[1] == '25944' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1354<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1355<rect width="24" height="24" fill="#D9D9D9"/> 1356</mask> 1357<g> 1358<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 1359</g> 1360</svg></span> 1361 </span> 1362 <span class="sr-only" x-bind:class="subOpen[1] == '25944' ? 'hidden' : ''">Open "Leisure" submenu</span> 1363 <span class="sr-only" x-bind:class="subOpen[1] == '25944' ? '' : 'hidden'">Close "Leisure" submenu</span> 1364 </span> 1365 </button> 1366 </span> 1367 <div 1368 x-cloak 1369 class="md:absolute md:top-0 transition-all transform duration-500 pl-24 md:pl-0 grid z-20 md:mt-4 2xl:mt-9 3xl:mt-8 md:left-1/3 md:max-w-[33%] 2xl:left-[31%
1369] 2xl:max-w-[31%]" 1370 x-bind:class="subOpen[1] == '25944' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 1371 x-bind:style="subOpen[1] == '25944' && !subOpen[2] && { maxHeight: '360px' }" 1372 > 1373 <ul 1374 class="flex flex-col gap-12 2xl:gap-16 transition duration-500 my-24 md:my-0 md:-mt-[0.4rem]" 1375 x-bind:class="!isOpenDelayShort ? 'opacity-0 translate-y-32' : 'opacity-100 translate-y-0'" 1376 > 1377 <li class="w-full pb-8 pr-4 md:pr-0"> 1378 <span 1379 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1380 x-bind:class="subOpen[2] == '29297' ? 'nav-item-active' : ''" 1381 > 1382 <a 1383 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 1384 href="https://www.joensuu.fi/en/leisure/culture-and-libraries/" 1385 x-bind:class="subOpen[2] == '29297' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1386 > 1387 <span>Culture and libraries</span> 1388 </a> 1389 <button 1390 :aria-expanded="subOpen[2] == '29297'" 1391 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 1392 @click=" 1393 if(subOpen[2] == '29297') { 1394 subOpen[2] = null; 1395 } else { 1396 subOpen[2] = '29297'; 1397 }; 1398 subOpen[3] = null; 1399 subOpen[4] = null; 1400 " 1401 > 1402 <span class="block"> 1403 <span 1404 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 1405 x-bind:class="subOpen[2] == '29297' ? 'menu-plus-active text-menu-hover' : ''" 1406 aria-hidden="true"> 1407 <span x-bind:class="subOpen[2] == '29297' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1408<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1409<rect width="24" height="24" fill="#D9D9D9"/> 1410</mask> 1411<g> 1412<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 1413</g> 1414</svg></span> 1415 1416 <span x-bind:class="subOpen[2] == '29297' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1417<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1418<rect width="24" height="24" fill="#D9D9D9"/> 1419</mask> 1420<g> 1421<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 1422</g> 1423</svg></span> 1424 </span> 1425 <span class="sr-only" x-bind:class="subOpen[2] == '29297' ? 'hidden' : ''"> 1426 Open "Culture and libraries" submenu 1427 </span> 1428 <span class="sr-only" x-bind:class="subOpen[2] == '29297' ? '' : 'hidden'"> 1429 Close "Culture and libraries" submenu 1430 </span> 1431 </span> 1432 </button> 1433 </span> 1434 <div 1435 x-cloak 1436 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 1437 x-bind:class="subOpen[2] == '29297' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 1438 x-bind:style="subOpen[2] == '29297' && !subOpen[3] && { maxHeight: '300px' }" 1439 > 1440 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 1441 <li class="w-full pb-8 pr-4 md:pr-0"> 1442 <span 1443 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1444 x-bind:class="subOpen[3] == '30570' ? 'nav-item-active' : ''" 1445 > 1446 <a 1447 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1448 href="https://www.joensuu.fi/en/leisure/culture-and-libraries/museums/" 1449 x-bind:class="subOpen[3] == '30570' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1450 >
1451 <span>Museums</span> 1452 </a> 1453 </span> 1454 </li> 1455 1456 <li class="w-full pb-8 pr-4 md:pr-0"> 1457 <span 1458 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1459 x-bind:class="subOpen[3] == '29298' ? 'nav-item-active' : ''" 1460 > 1461 <a 1462 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1463 href="https://www.joensuu.fi/en/leisure/culture-and-libraries/libraries/" 1464 x-bind:class="subOpen[3] == '29298' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1465 > 1466 <span>Libraries</span> 1467 </a> 1468 </span> 1469 </li> 1470 1471 <li class="w-full pb-8 pr-4 md:pr-0"> 1472 <span 1473 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1474 x-bind:class="subOpen[3] == '30571' ? 'nav-item-active' : ''" 1475 > 1476 <a 1477 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1478 href="https://www.joensuu.fi/en/leisure/culture-and-libraries/joensuu-city-orchestra/" 1479 x-bind:class="subOpen[3] == '30571' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1480 > 1481 <span>Joensuu City Orchestra</span> 1482 </a> 1483 </span> 1484 </li> 1485 1486 <li class="w-full pb-8 pr-4 md:pr-0"> 1487 <span 1488 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1489 x-bind:class="subOpen[3] == '30569' ? 'nav-item-active' : ''" 1490 > 1491 <a 1492 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1493 href="https://www.joensuu.fi/en/leisure/culture-and-libraries/joensuu-city-theatre/" 1494 x-bind:class="subOpen[3] == '30569' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1495 > 1496 <span>Joensuu City Theatre</span> 1497 </a> 1498 </span> 1499 </li> 1500 1501 <li class="w-full pb-8 pr-4 md:pr-0"> 1502 <span 1503 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1504 x-bind:class="subOpen[3] == '30572' ? 'nav-item-active' : ''" 1505 > 1506 <a 1507 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1508 href="https://www.joensuu.fi/en/leisure/culture-and-libraries/printmaking-studio/" 1509 x-bind:class="subOpen[3] == '30572' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1510 > 1511 <span>Printmaking studio</span> 1512 </a> 1513 </span> 1514 </li> 1515 1516 </ul> 1517 </div> 1518 </li> 1519 1520 <li class="w-full pb-8 pr-4 md:pr-0"> 1521 <span 1522 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1523 x-bind:class="subOpen[2] == '31463' ? 'nav-item-active' : ''" 1524 > 1525 <a 1526 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 1527 href="https://www.joensuu.fi/en/leisure/sports-and-outdoor-facilities/" 1528 x-bind:class="subOpen[2] == '31463' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1529 > 1530 <span>Sports and Outdoor Facilities</span> 1531 </a> 1532 <button 1533 :aria-expanded="subOpen[2] == '31463'" 1534 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 1535 @click=" 1536 if(subOpen[2] == '31463') { 1537 subOpen[2] = null; 1538 } else { 1539 subOpen[2] = '31463'; 1540 }; 1541 subOpen[3] = null; 1542 subOpen[4] = null; 1543 " 1544 > 1545 <span class="block"> 1546 <span 1547 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 1548 x-bind:class="subOpen[2] == '31463' ? 'menu-plus-active text-menu-hover' : ''" 1549 aria-hidden="true"> 1550 <span x-bind:class="subOpen[2] == '31463' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1551<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1552<rect width="24" height="24" fill="#D9D9D9"/> 1553</mask> 1554<g> 1555<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 1556</g> 1557</svg></span> 1558
1559 <span x-bind:class="subOpen[2] == '31463' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1560<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1561<rect width="24" height="24" fill="#D9D9D9"/> 1562</mask> 1563<g> 1564<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 1565</g> 1566</svg></span> 1567 </span> 1568 <span class="sr-only" x-bind:class="subOpen[2] == '31463' ? 'hidden' : ''"> 1569 Open "Sports and Outdoor Facilities" submenu 1570 </span> 1571 <span class="sr-only" x-bind:class="subOpen[2] == '31463' ? '' : 'hidden'"> 1572 Close "Sports and Outdoor Facilities" submenu 1573 </span> 1574 </span> 1575 </button> 1576 </span> 1577 <div 1578 x-cloak 1579 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 1580 x-bind:class="subOpen[2] == '31463' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 1581 x-bind:style="subOpen[2] == '31463' && !subOpen[3] && { maxHeight: '120px' }" 1582 > 1583 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 1584 <li class="w-full pb-8 pr-4 md:pr-0"> 1585 <span 1586 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1587 x-bind:class="subOpen[3] == '31462' ? 'nav-item-active' : ''" 1588 > 1589 <a 1590 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1591 href="https://www.joensuu.fi/en/leisure/sports-and-outdoor-facilities/aquatic-centre-vesikko/" 1592 x-bind:class="subOpen[3] == '31462' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1593 > 1594 <span>Aquatic centre Vesikko</span> 1595 </a> 1596 </span> 1597 </li> 1598 1599 <li class="w-full pb-8 pr-4 md:pr-0"> 1600 <span 1601 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1602 x-bind:class="subOpen[3] == '31461' ? 'nav-item-active' : ''" 1603 > 1604 <a 1605 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1606 href="https://www.joensuu.fi/en/leisure/sports-and-outdoor-facilities/rantakyla-swimming-hall/" 1607 x-bind:class="subOpen[3] == '31461' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1608 > 1609 <span>Rantakylä Swimming Hall</span> 1610 </a> 1611 </span> 1612 </li> 1613 1614 </ul> 1615 </div> 1616 </li> 1617 1618 <li class="w-full pb-8 pr-4 md:pr-0"> 1619 <span 1620 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1621 x-bind:class="subOpen[2] == '30573' ? 'nav-item-active' : ''" 1622 > 1623 <a 1624 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 1625 href="https://www.joensuu.fi/en/leisure/sports-and-physical-activities/" 1626 x-bind:class="subOpen[2] == '30573' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1627 > 1628 <span>Sports and physical activities</span> 1629 </a> 1630 <button 1631 :aria-expanded="subOpen[2] == '30573'" 1632 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 1633 @click=" 1634 if(subOpen[2] == '30573') { 1635 subOpen[2] = null; 1636 } else { 1637 subOpen[2] = '30573'; 1638 }; 1639 subOpen[3] = null; 1640 subOpen[4] = null; 1641 " 1642 > 1643 <span class="block"> 1644 <span 1645 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 1646 x-bind:class="subOpen[2] == '30573' ? 'menu-plus-active text-menu-hover' : ''" 1647 aria-hidden="true">
1648 <span x-bind:class="subOpen[2] == '30573' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1649<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1650<rect width="24" height="24" fill="#D9D9D9"/> 1651</mask> 1652<g> 1653<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 1654</g> 1655</svg></span> 1656 1657 <span x-bind:class="subOpen[2] == '30573' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1658<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1659<rect width="24" height="24" fill="#D9D9D9"/> 1660</mask> 1661<g> 1662<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 1663</g> 1664</svg></span> 1665 </span> 1666 <span class="sr-only" x-bind:class="subOpen[2] == '30573' ? 'hidden' : ''"> 1667 Open "Sports and physical activities" submenu 1668 </span> 1669 <span class="sr-only" x-bind:class="subOpen[2] == '30573' ? '' : 'hidden'"> 1670 Close "Sports and physical activities" submenu 1671 </span> 1672 </span> 1673 </button> 1674 </span> 1675 <div 1676 x-cloak 1677 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 1678 x-bind:class="subOpen[2] == '30573' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 1679 x-bind:style="subOpen[2] == '30573' && !subOpen[3] && { maxHeight: '180px' }" 1680 > 1681 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 1682 <li class="w-full pb-8 pr-4 md:pr-0"> 1683 <span 1684 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1685 x-bind:class="subOpen[3] == '30574' ? 'nav-item-active' : ''" 1686 > 1687 <a 1688 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1689 href="https://www.joensuu.fi/en/leisure/sports-and-physical-activities/baby-swimming-and-swimming-schools/" 1690 x-bind:class="subOpen[3] == '30574' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1691 > 1692 <span>Baby swimming and swimming schools</span> 1693 </a> 1694 </span> 1695 </li> 1696 1697 <li class="w-full pb-8 pr-4 md:pr-0"> 1698 <span 1699 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1700 x-bind:class="subOpen[3] == '30575' ? 'nav-item-active' : ''" 1701 > 1702 <a 1703 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1704 href="https://www.joensuu.fi/en/leisure/sports-and-physical-activities/exercise-classes-and-open-sessions/" 1705 x-bind:class="subOpen[3] == '30575' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1706 > 1707 <span>Exercise classes and open sessions</span> 1708 </a> 1709 </span> 1710 </li> 1711 1712 <li class="w-full pb-8 pr-4 md:pr-0"> 1713 <span 1714 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1715 x-bind:class="subOpen[3] == '30576' ? 'nav-item-active' : ''" 1716 > 1717 <a 1718 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1719 href="https://www.joensuu.fi/en/leisure/sports-and-physical-activities/adapted-physical-activity-and-senior-exercise/" 1720 x-bind:class="subOpen[3] == '30576' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1721 > 1722 <span>Adapted physical activity and senior exercise</span> 1723 </a> 1724 </span> 1725 </li> 1726 1727 </ul> 1728 </div> 1729 </li> 1730 1731 <li class="w-full pb-8 pr-4 md:pr-0"> 1732 <span 1733 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1734 x-bind:class="subOpen[2] == '30577' ? 'nav-item-active' : ''" 1735 > 1736 <a 1737 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 1738 href="https://www.joensuu.fi/en/leisure/high-performance-sports/" 1739 x-bind:class="subOpen[2] == '30577' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1740 >
1741 <span>High-performance sports</span> 1742 </a> 1743 <button 1744 :aria-expanded="subOpen[2] == '30577'" 1745 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 1746 @click=" 1747 if(subOpen[2] == '30577') { 1748 subOpen[2] = null; 1749 } else { 1750 subOpen[2] = '30577'; 1751 }; 1752 subOpen[3] = null; 1753 subOpen[4] = null; 1754 " 1755 > 1756 <span class="block"> 1757 <span 1758 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 1759 x-bind:class="subOpen[2] == '30577' ? 'menu-plus-active text-menu-hover' : ''" 1760 aria-hidden="true"> 1761 <span x-bind:class="subOpen[2] == '30577' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1762<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1763<rect width="24" height="24" fill="#D9D9D9"/> 1764</mask> 1765<g> 1766<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 1767</g> 1768</svg></span> 1769 1770 <span x-bind:class="subOpen[2] == '30577' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1771<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1772<rect width="24" height="24" fill="#D9D9D9"/> 1773</mask> 1774<g> 1775<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 1776</g> 1777</svg></span> 1778 </span> 1779 <span class="sr-only" x-bind:class="subOpen[2] == '30577' ? 'hidden' : ''"> 1780 Open "High-performance sports" submenu 1781 </span> 1782 <span class="sr-only" x-bind:class="subOpen[2] == '30577' ? '' : 'hidden'"> 1783 Close "High-performance sports" submenu 1784 </span> 1785 </span> 1786 </button> 1787 </span> 1788 <div 1789 x-cloak 1790 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 1791 x-bind:class="subOpen[2] == '30577' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 1792 x-bind:style="subOpen[2] == '30577' && !subOpen[3] && { maxHeight: '60px' }" 1793 > 1794 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 1795 <li class="w-full pb-8 pr-4 md:pr-0"> 1796 <span 1797 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1798 x-bind:class="subOpen[3] == '30578' ? 'nav-item-active' : ''" 1799 > 1800 <a 1801 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1802 href="https://www.joensuu.fi/en/leisure/high-performance-sports/joensuu-sports-academy/" 1803 x-bind:class="subOpen[3] == '30578' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1804 > 1805 <span>Joensuu Sports Academy</span> 1806 </a> 1807 </span> 1808 </li> 1809 1810 </ul> 1811 </div> 1812 </li> 1813 1814 <li class="w-full pb-8 pr-4 md:pr-0"> 1815 <span 1816 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1817 x-bind:class="subOpen[2] == '35163' ? 'nav-item-active' : ''" 1818 > 1819 <a 1820 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 1821 href="https://www.joensuu.fi/en/leisure/events/" 1822 x-bind:class="subOpen[2] == '35163' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1823 >
1824 <span>Events</span> 1825 </a> 1826 <button 1827 :aria-expanded="subOpen[2] == '35163'" 1828 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 1829 @click=" 1830 if(subOpen[2] == '35163') { 1831 subOpen[2] = null; 1832 } else { 1833 subOpen[2] = '35163'; 1834 }; 1835 subOpen[3] = null; 1836 subOpen[4] = null; 1837 " 1838 > 1839 <span class="block"> 1840 <span 1841 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 1842 x-bind:class="subOpen[2] == '35163' ? 'menu-plus-active text-menu-hover' : ''" 1843 aria-hidden="true"> 1844 <span x-bind:class="subOpen[2] == '35163' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1845<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1846<rect width="24" height="24" fill="#D9D9D9"/> 1847</mask> 1848<g> 1849<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 1850</g> 1851</svg></span> 1852 1853 <span x-bind:class="subOpen[2] == '35163' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1854<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1855<rect width="24" height="24" fill="#D9D9D9"/> 1856</mask> 1857<g> 1858<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 1859</g> 1860</svg></span> 1861 </span> 1862 <span class="sr-only" x-bind:class="subOpen[2] == '35163' ? 'hidden' : ''"> 1863 Open "Events" submenu 1864 </span> 1865 <span class="sr-only" x-bind:class="subOpen[2] == '35163' ? '' : 'hidden'"> 1866 Close "Events" submenu 1867 </span> 1868 </span> 1869 </button> 1870 </span> 1871 <div 1872 x-cloak 1873 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 1874 x-bind:class="subOpen[2] == '35163' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 1875 x-bind:style="subOpen[2] == '35163' && !subOpen[3] && { maxHeight: '60px' }" 1876 > 1877 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 1878 <li class="w-full pb-8 pr-4 md:pr-0"> 1879 <span 1880 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1881 x-bind:class="subOpen[3] == '35164' ? 'nav-item-active' : ''" 1882 > 1883 <a 1884 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1885 href="https://www.joensuu.fi/en/leisure/events/summer-welcoming/" 1886 x-bind:class="subOpen[3] == '35164' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1887 > 1888 <span>Summer Welcoming</span> 1889 </a> 1890 </span> 1891 </li> 1892 1893 </ul> 1894 </div> 1895 </li> 1896 1897 <li class="w-full pb-8 pr-4 md:pr-0"> 1898 <span 1899 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1900 x-bind:class="subOpen[2] == '38306' ? 'nav-item-active' : ''" 1901 > 1902 <a 1903 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 1904 href="https://www.joensuu.fi/en/leisure/services-for-young-people/" 1905 x-bind:class="subOpen[2] == '38306' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1906 > 1907 <span>Services for Young People</span> 1908 </a> 1909 <button 1910 :aria-expanded="subOpen[2] == '38306'" 1911 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 1912 @click=" 1913 if(subOpen[2] == '38306') { 1914 subOpen[2] = null; 1915 } else { 1916 subOpen[2] = '38306'; 1917 }; 1918 subOpen[3] = null; 1919 subOpen[4] = null; 1920 " 1921 >
1922 <span class="block"> 1923 <span 1924 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 1925 x-bind:class="subOpen[2] == '38306' ? 'menu-plus-active text-menu-hover' : ''" 1926 aria-hidden="true"> 1927 <span x-bind:class="subOpen[2] == '38306' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1928<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1929<rect width="24" height="24" fill="#D9D9D9"/> 1930</mask> 1931<g> 1932<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 1933</g> 1934</svg></span> 1935 1936 <span x-bind:class="subOpen[2] == '38306' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 1937<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 1938<rect width="24" height="24" fill="#D9D9D9"/> 1939</mask> 1940<g> 1941<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 1942</g> 1943</svg></span> 1944 </span> 1945 <span class="sr-only" x-bind:class="subOpen[2] == '38306' ? 'hidden' : ''"> 1946 Open "Services for Young People" submenu 1947 </span> 1948 <span class="sr-only" x-bind:class="subOpen[2] == '38306' ? '' : 'hidden'"> 1949 Close "Services for Young People" submenu 1950 </span> 1951 </span> 1952 </button> 1953 </span> 1954 <div 1955 x-cloak 1956 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 1957 x-bind:class="subOpen[2] == '38306' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 1958 x-bind:style="subOpen[2] == '38306' && !subOpen[3] && { maxHeight: '360px' }" 1959 > 1960 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 1961 <li class="w-full pb-8 pr-4 md:pr-0"> 1962 <span 1963 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1964 x-bind:class="subOpen[3] == '38321' ? 'nav-item-active' : ''" 1965 > 1966 <a 1967 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1968 href="https://www.joensuu.fi/en/leisure/services-for-young-people/youth-centres/" 1969 x-bind:class="subOpen[3] == '38321' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1970 > 1971 <span>Youth Centres</span> 1972 </a> 1973 </span> 1974 </li> 1975 1976 <li class="w-full pb-8 pr-4 md:pr-0"> 1977 <span 1978 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1979 x-bind:class="subOpen[3] == '39005' ? 'nav-item-active' : ''" 1980 > 1981 <a 1982 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1983 href="https://www.joensuu.fi/en/leisure/services-for-young-people/youth-card-and-benefits/" 1984 x-bind:class="subOpen[3] == '39005' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 1985 > 1986 <span>Youth Card and Benefits</span> 1987 </a> 1988 </span> 1989 </li> 1990 1991 <li class="w-full pb-8 pr-4 md:pr-0"> 1992 <span 1993 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 1994 x-bind:class="subOpen[3] == '38322' ? 'nav-item-active' : ''" 1995 > 1996 <a 1997 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 1998 href="https://www.joensuu.fi/en/leisure/services-for-young-people/finnish-model-for-leisure-activities-in-joensuu/" 1999 x-bind:class="subOpen[3] == '38322' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2000 >
2001 <span>Finnish Model for Leisure Activities in Joensuu</span> 2002 </a> 2003 </span> 2004 </li> 2005 2006 <li class="w-full pb-8 pr-4 md:pr-0"> 2007 <span 2008 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2009 x-bind:class="subOpen[3] == '38320' ? 'nav-item-active' : ''" 2010 > 2011 <a 2012 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2013 href="https://www.joensuu.fi/en/leisure/services-for-young-people/outreach-youth-work/" 2014 x-bind:class="subOpen[3] == '38320' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2015 > 2016 <span>Outreach youth work</span> 2017 </a> 2018 </span> 2019 </li> 2020 2021 <li class="w-full pb-8 pr-4 md:pr-0"> 2022 <span 2023 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2024 x-bind:class="subOpen[3] == '39006' ? 'nav-item-active' : ''" 2025 > 2026 <a 2027 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2028 href="https://www.joensuu.fi/en/leisure/services-for-young-people/mobile-youth-work/" 2029 x-bind:class="subOpen[3] == '39006' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2030 > 2031 <span>Mobile Youth Work</span> 2032 </a> 2033 </span> 2034 </li> 2035 2036 <li class="w-full pb-8 pr-4 md:pr-0"> 2037 <span 2038 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2039 x-bind:class="subOpen[3] == '38319' ? 'nav-item-active' : ''" 2040 > 2041 <a 2042 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2043 href="https://www.joensuu.fi/en/leisure/services-for-young-people/harrastepankki-hobby-bank/" 2044 x-bind:class="subOpen[3] == '38319' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2045 > 2046 <span>Harrastepankki (Hobby Bank)</span> 2047 </a> 2048 </span> 2049 </li> 2050 2051 </ul> 2052 </div> 2053 </li> 2054 2055 </ul> 2056 </div> 2057 </li> 2058 <li 2059 class="py-4 transition duration-500 w-full md:w-[30%] 2xl:w-[27%]" 2060 x-bind:class="!isOpenDelayShort ? 'opacity-0' : 'opacity-100'" 2061 > 2062 <span 2063 class="group nav-item nav-item-main flex flex-nowrap gap-8 transition duration-500" 2064 x-bind:class="subOpen[1] == '25943' ? 'nav-item-active' : ''" 2065 x-bind:style="!isOpenDelayShort ? { 'transition-delay': '40ms', transform: 'translateY(1.5rem)' } : { 'transition-delay': '40ms' }" 2066 > 2067 <a 2068 href="https://www.joensuu.fi/en/businesses-and-communities/" 2069 class="!no-underline flex-1 font-display text-base 2xl:text-baseb very-low-text-3xl leading-normal" 2070 x-bind:class="subOpen[1] == '25943' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2071 > 2072 <span class="!w-auto">Businesses and communities</span> 2073 </a> 2074 <button 2075 :aria-expanded="subOpen[1] == '25943'" 2076 class="submenu-toggle cursor-pointer shrink-0 w-24 h-24 ml-auto flex justify-center items-center" 2077 @click=" 2078 if(subOpen[1] == '25943') { 2079 subOpen[1] = null; 2080 } else { 2081 subOpen[1] = '25943'; 2082 }; 2083 subOpen[2] = null; 2084 subOpen[3] = null; 2085 " 2086 >
2087 <span class="block"> 2088 <span 2089 class="shrink-0 block transform transition duration-300 mx-auto menu-plus scale-130 mr-[0.3rem] md:mr-0" 2090 x-bind:class="subOpen[1] == '25943' ? 'menu-plus-active text-menu-hover' : ''" 2091 aria-hidden="true"> 2092 <span x-bind:class="subOpen[1] == '25943' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2093<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2094<rect width="24" height="24" fill="#D9D9D9"/> 2095</mask> 2096<g> 2097<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 2098</g> 2099</svg></span> 2100 2101 <span x-bind:class="subOpen[1] == '25943' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2102<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2103<rect width="24" height="24" fill="#D9D9D9"/> 2104</mask> 2105<g> 2106<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 2107</g> 2108</svg></span> 2109 </span> 2110 <span class="sr-only" x-bind:class="subOpen[1] == '25943' ? 'hidden' : ''">Open "Businesses and communities" submenu</span> 2111 <span class="sr-only" x-bind:class="subOpen[1] == '25943' ? '' : 'hidden'">Close "Businesses and communities" submenu</span> 2112 </span> 2113 </button> 2114 </span> 2115 <div 2116 x-cloak 2117 class="md:absolute md:top-0 transition-all transform duration-500 pl-24 md:pl-0 grid z-20 md:mt-4 2xl:mt-9 3xl:mt-8 md:left-1/3 md:max-w-[33%] 2xl:left-[31%] 2xl:max-w-[31%]" 2118 x-bind:class="subOpen[1] == '25943' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 2119 x-bind:style="subOpen[1] == '25943' && !subOpen[2] && { maxHeight: '240px' }" 2120 > 2121 <ul 2122 class="flex flex-col gap-12 2xl:gap-16 transition duration-500 my-24 md:my-0 md:-mt-[0.4rem]" 2123 x-bind:class="!isOpenDelayShort ? 'opacity-0 translate-y-32' : 'opacity-100 translate-y-0'" 2124 > 2125 <li class="w-full pb-8 pr-4 md:pr-0"> 2126 <span 2127 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2128 x-bind:class="subOpen[2] == '32641' ? 'nav-item-active' : ''" 2129 > 2130 <a 2131 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 2132 href="https://www.joensuu.fi/en/businesses-and-communities/services-for-companies-and-employers/" 2133 x-bind:class="subOpen[2] == '32641' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2134 > 2135 <span>Services for companies and employers</span> 2136 </a> 2137 <button 2138 :aria-expanded="subOpen[2] == '32641'" 2139 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 2140 @click=" 2141 if(subOpen[2] == '32641') { 2142 subOpen[2] = null; 2143 } else { 2144 subOpen[2] = '32641'; 2145 }; 2146 subOpen[3] = null; 2147 subOpen[4] = null; 2148 " 2149 >
2150 <span class="block"> 2151 <span 2152 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 2153 x-bind:class="subOpen[2] == '32641' ? 'menu-plus-active text-menu-hover' : ''" 2154 aria-hidden="true"> 2155 <span x-bind:class="subOpen[2] == '32641' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2156<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2157<rect width="24" height="24" fill="#D9D9D9"/> 2158</mask> 2159<g> 2160<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 2161</g> 2162</svg></span> 2163 2164 <span x-bind:class="subOpen[2] == '32641' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2165<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2166<rect width="24" height="24" fill="#D9D9D9"/> 2167</mask> 2168<g> 2169<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 2170</g> 2171</svg></span> 2172 </span> 2173 <span class="sr-only" x-bind:class="subOpen[2] == '32641' ? 'hidden' : ''"> 2174 Open "Services for companies and employers" submenu 2175 </span> 2176 <span class="sr-only" x-bind:class="subOpen[2] == '32641' ? '' : 'hidden'"> 2177 Close "Services for companies and employers" submenu 2178 </span> 2179 </span> 2180 </button> 2181 </span> 2182 <div 2183 x-cloak 2184 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 2185 x-bind:class="subOpen[2] == '32641' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 2186 x-bind:style="subOpen[2] == '32641' && !subOpen[3] && { maxHeight: '60px' }" 2187 > 2188 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 2189 <li class="w-full pb-8 pr-4 md:pr-0"> 2190 <span 2191 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2192 x-bind:class="subOpen[3] == '32640' ? 'nav-item-active' : ''" 2193 > 2194 <a 2195 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2196 href="https://www.joensuu.fi/en/businesses-and-communities/services-for-companies-and-employers/employment-and-recruitment-services/" 2197 x-bind:class="subOpen[3] == '32640' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2198 > 2199 <span>Employment and recruitment services</span> 2200 </a> 2201 </span> 2202 </li> 2203 2204 </ul> 2205 </div> 2206 </li> 2207 2208 <li class="w-full pb-8 pr-4 md:pr-0"> 2209 <span 2210 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2211 x-bind:class="subOpen[2] == '31293' ? 'nav-item-active' : ''" 2212 > 2213 <a 2214 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 2215 href="https://www.joensuu.fi/en/businesses-and-communities/services-for-associations/" 2216 x-bind:class="subOpen[2] == '31293' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2217 > 2218 <span>Services for associations</span> 2219 </a> 2220 </span> 2221 </li> 2222 2223 <li class="w-full pb-8 pr-4 md:pr-0"> 2224 <span 2225 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2226 x-bind:class="subOpen[2] == '25958' ? 'nav-item-active' : ''" 2227 > 2228 <a 2229 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 2230 href="https://www.joensuu.fi/en/businesses-and-communities/for-event-organizers/" 2231 x-bind:class="subOpen[2] == '25958' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2232 >
2233 <span>For event organizers</span> 2234 </a> 2235 <button 2236 :aria-expanded="subOpen[2] == '25958'" 2237 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 2238 @click=" 2239 if(subOpen[2] == '25958') { 2240 subOpen[2] = null; 2241 } else { 2242 subOpen[2] = '25958'; 2243 }; 2244 subOpen[3] = null; 2245 subOpen[4] = null; 2246 " 2247 > 2248 <span class="block"> 2249 <span 2250 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 2251 x-bind:class="subOpen[2] == '25958' ? 'menu-plus-active text-menu-hover' : ''" 2252 aria-hidden="true"> 2253 <span x-bind:class="subOpen[2] == '25958' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2254<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2255<rect width="24" height="24" fill="#D9D9D9"/> 2256</mask> 2257<g> 2258<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 2259</g> 2260</svg></span> 2261 2262 <span x-bind:class="subOpen[2] == '25958' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2263<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2264<rect width="24" height="24" fill="#D9D9D9"/> 2265</mask> 2266<g> 2267<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 2268</g> 2269</svg></span> 2270 </span> 2271 <span class="sr-only" x-bind:class="subOpen[2] == '25958' ? 'hidden' : ''"> 2272 Open "For event organizers" submenu 2273 </span> 2274 <span class="sr-only" x-bind:class="subOpen[2] == '25958' ? '' : 'hidden'"> 2275 Close "For event organizers" submenu 2276 </span> 2277 </span> 2278 </button> 2279 </span> 2280 <div 2281 x-cloak 2282 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 2283 x-bind:class="subOpen[2] == '25958' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 2284 x-bind:style="subOpen[2] == '25958' && !subOpen[3] && { maxHeight: '300px' }" 2285 > 2286 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 2287 <li class="w-full pb-8 pr-4 md:pr-0"> 2288 <span 2289 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2290 x-bind:class="subOpen[3] == '25959' ? 'nav-item-active' : ''" 2291 > 2292 <a 2293 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2294 href="https://www.joensuu.fi/en/businesses-and-communities/for-event-organizers/event-venues/" 2295 x-bind:class="subOpen[3] == '25959' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2296 > 2297 <span>Event venues</span> 2298 </a> 2299 </span> 2300 </li> 2301 2302 <li class="w-full pb-8 pr-4 md:pr-0"> 2303 <span 2304 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2305 x-bind:class="subOpen[3] == '25960' ? 'nav-item-active' : ''" 2306 > 2307 <a 2308 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2309 href="https://www.joensuu.fi/en/businesses-and-communities/for-event-organizers/event-permits/" 2310 x-bind:class="subOpen[3] == '25960' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2311 > 2312 <span>Event Permits</span> 2313 </a> 2314 </span> 2315 </li> 2316 2317 <li class="w-full pb-8 pr-4 md:pr-0"> 2318 <span 2319 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2320 x-bind:class="subOpen[3] == '25961' ? 'nav-item-active' : ''" 2321 > 2322 <a 2323 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2324 href="https://www.joensuu.fi/en/businesses-and-communities/for-event-organizers/advertising-locations/" 2325 x-bind:class="subOpen[3] == '25961' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2326 >
2327 <span>Advertising Locations</span> 2328 </a> 2329 </span> 2330 </li> 2331 2332 <li class="w-full pb-8 pr-4 md:pr-0"> 2333 <span 2334 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2335 x-bind:class="subOpen[3] == '25962' ? 'nav-item-active' : ''" 2336 > 2337 <a 2338 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2339 href="https://www.joensuu.fi/en/businesses-and-communities/for-event-organizers/instructions-for-event-organizers/" 2340 x-bind:class="subOpen[3] == '25962' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2341 > 2342 <span>Instructions for Event Organizers</span> 2343 </a> 2344 </span> 2345 </li> 2346 2347 <li class="w-full pb-8 pr-4 md:pr-0"> 2348 <span 2349 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2350 x-bind:class="subOpen[3] == '25963' ? 'nav-item-active' : ''" 2351 > 2352 <a 2353 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2354 href="https://www.joensuu.fi/en/businesses-and-communities/for-event-organizers/school-accommodation/" 2355 x-bind:class="subOpen[3] == '25963' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2356 > 2357 <span>School Accommodation</span> 2358 </a> 2359 </span> 2360 </li> 2361 2362 </ul> 2363 </div> 2364 </li> 2365 2366 <li class="w-full pb-8 pr-4 md:pr-0"> 2367 <span 2368 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2369 x-bind:class="subOpen[2] == '31279' ? 'nav-item-active' : ''" 2370 > 2371 <a 2372 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 2373 href="https://www.joensuu.fi/en/businesses-and-communities/north-karelia-procurement-unit/" 2374 x-bind:class="subOpen[2] == '31279' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2375 > 2376 <span>North Karelia Procurement Unit</span> 2377 </a> 2378 <button 2379 :aria-expanded="subOpen[2] == '31279'" 2380 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 2381 @click=" 2382 if(subOpen[2] == '31279') { 2383 subOpen[2] = null; 2384 } else { 2385 subOpen[2] = '31279'; 2386 }; 2387 subOpen[3] = null; 2388 subOpen[4] = null; 2389 " 2390 > 2391 <span class="block"> 2392 <span 2393 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 2394 x-bind:class="subOpen[2] == '31279' ? 'menu-plus-active text-menu-hover' : ''" 2395 aria-hidden="true"> 2396 <span x-bind:class="subOpen[2] == '31279' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2397<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2398<rect width="24" height="24" fill="#D9D9D9"/> 2399</mask> 2400<g> 2401<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 2402</g> 2403</svg></span> 2404 2405 <span x-bind:class="subOpen[2] == '31279' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2406<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2407<rect width="24" height="24" fill="#D9D9D9"/> 2408</mask> 2409<g> 2410<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 2411</g> 2412</svg></span> 2413 </span> 2414 <span class="sr-only" x-bind:class="subOpen[2] == '31279' ? 'hidden' : ''"> 2415 Open "North Karelia Procurement Unit" submenu 2416 </span>
2417 <span class="sr-only" x-bind:class="subOpen[2] == '31279' ? '' : 'hidden'"> 2418 Close "North Karelia Procurement Unit" submenu 2419 </span> 2420 </span> 2421 </button> 2422 </span> 2423 <div 2424 x-cloak 2425 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 2426 x-bind:class="subOpen[2] == '31279' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 2427 x-bind:style="subOpen[2] == '31279' && !subOpen[3] && { maxHeight: '120px' }" 2428 > 2429 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 2430 <li class="w-full pb-8 pr-4 md:pr-0"> 2431 <span 2432 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2433 x-bind:class="subOpen[3] == '31278' ? 'nav-item-active' : ''" 2434 > 2435 <a 2436 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2437 href="https://www.joensuu.fi/en/businesses-and-communities/north-karelia-procurement-unit/for-contracting-authorities/" 2438 x-bind:class="subOpen[3] == '31278' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2439 > 2440 <span>For Contracting Authorities</span> 2441 </a> 2442 </span> 2443 </li> 2444 2445 <li class="w-full pb-8 pr-4 md:pr-0"> 2446 <span 2447 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2448 x-bind:class="subOpen[3] == '31277' ? 'nav-item-active' : ''" 2449 > 2450 <a 2451 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2452 href="https://www.joensuu.fi/en/businesses-and-communities/north-karelia-procurement-unit/for-suppliers/" 2453 x-bind:class="subOpen[3] == '31277' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2454 > 2455 <span>For suppliers</span> 2456 </a> 2457 </span> 2458 </li> 2459 2460 </ul> 2461 </div> 2462 </li> 2463 2464 </ul> 2465 </div> 2466 </li> 2467 <li 2468 class="py-4 transition duration-500 w-full md:w-[30%] 2xl:w-[27%]" 2469 x-bind:class="!isOpenDelayShort ? 'opacity-0' : 'opacity-100'" 2470 > 2471 <span 2472 class="group nav-item nav-item-main flex flex-nowrap gap-8 transition duration-500" 2473 x-bind:class="subOpen[1] == '25942' ? 'nav-item-active' : ''" 2474 x-bind:style="!isOpenDelayShort ? { 'transition-delay': '60ms', transform: 'translateY(1.5rem)' } : { 'transition-delay': '60ms' }" 2475 > 2476 <a 2477 href="https://www.joensuu.fi/en/city-and-development/" 2478 class="!no-underline flex-1 font-display text-base 2xl:text-baseb very-low-text-3xl leading-normal" 2479 x-bind:class="subOpen[1] == '25942' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2480 > 2481 <span class="!w-auto">City and development</span> 2482 </a> 2483 <button 2484 :aria-expanded="subOpen[1] == '25942'" 2485 class="submenu-toggle cursor-pointer shrink-0 w-24 h-24 ml-auto flex justify-center items-center" 2486 @click=" 2487 if(subOpen[1] == '25942') { 2488 subOpen[1] = null; 2489 } else { 2490 subOpen[1] = '25942'; 2491 }; 2492 subOpen[2] = null; 2493 subOpen[3] = null; 2494 " 2495 >
2496 <span class="block"> 2497 <span 2498 class="shrink-0 block transform transition duration-300 mx-auto menu-plus scale-130 mr-[0.3rem] md:mr-0" 2499 x-bind:class="subOpen[1] == '25942' ? 'menu-plus-active text-menu-hover' : ''" 2500 aria-hidden="true"> 2501 <span x-bind:class="subOpen[1] == '25942' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2502<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2503<rect width="24" height="24" fill="#D9D9D9"/> 2504</mask> 2505<g> 2506<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 2507</g> 2508</svg></span> 2509 2510 <span x-bind:class="subOpen[1] == '25942' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2511<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2512<rect width="24" height="24" fill="#D9D9D9"/> 2513</mask> 2514<g> 2515<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 2516</g> 2517</svg></span> 2518 </span> 2519 <span class="sr-only" x-bind:class="subOpen[1] == '25942' ? 'hidden' : ''">Open "City and development" submenu</span> 2520 <span class="sr-only" x-bind:class="subOpen[1] == '25942' ? '' : 'hidden'">Close "City and development" submenu</span> 2521 </span> 2522 </button> 2523 </span> 2524 <div 2525 x-cloak 2526 class="md:absolute md:top-0 transition-all transform duration-500 pl-24 md:pl-0 grid z-20 md:mt-4 2xl:mt-9 3xl:mt-8 md:left-1/3 md:max-w-[33%] 2xl:left-[31%] 2xl:max-w-[31%]" 2527 x-bind:class="subOpen[1] == '25942' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 2528 x-bind:style="subOpen[1] == '25942' && !subOpen[2] && { maxHeight: '300px' }" 2529 > 2530 <ul 2531 class="flex flex-col gap-12 2xl:gap-16 transition duration-500 my-24 md:my-0 md:-mt-[0.4rem]" 2532 x-bind:class="!isOpenDelayShort ? 'opacity-0 translate-y-32' : 'opacity-100 translate-y-0'" 2533 > 2534 <li class="w-full pb-8 pr-4 md:pr-0"> 2535 <span 2536 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2537 x-bind:class="subOpen[2] == '25974' ? 'nav-item-active' : ''" 2538 > 2539 <a 2540 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 2541 href="https://www.joensuu.fi/en/city-and-development/our-joensuu/" 2542 x-bind:class="subOpen[2] == '25974' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2543 > 2544 <span>Our Joensuu</span> 2545 </a> 2546 <button 2547 :aria-expanded="subOpen[2] == '25974'" 2548 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 2549 @click=" 2550 if(subOpen[2] == '25974') { 2551 subOpen[2] = null; 2552 } else { 2553 subOpen[2] = '25974'; 2554 }; 2555 subOpen[3] = null; 2556 subOpen[4] = null; 2557 " 2558 > 2559 <span class="block"> 2560 <span 2561 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 2562 x-bind:class="subOpen[2] == '25974' ? 'menu-plus-active text-menu-hover' : ''" 2563 aria-hidden="true">
2564 <span x-bind:class="subOpen[2] == '25974' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2565<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2566<rect width="24" height="24" fill="#D9D9D9"/> 2567</mask> 2568<g> 2569<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 2570</g> 2571</svg></span> 2572 2573 <span x-bind:class="subOpen[2] == '25974' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2574<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2575<rect width="24" height="24" fill="#D9D9D9"/> 2576</mask> 2577<g> 2578<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 2579</g> 2580</svg></span> 2581 </span> 2582 <span class="sr-only" x-bind:class="subOpen[2] == '25974' ? 'hidden' : ''"> 2583 Open "Our Joensuu" submenu 2584 </span> 2585 <span class="sr-only" x-bind:class="subOpen[2] == '25974' ? '' : 'hidden'"> 2586 Close "Our Joensuu" submenu 2587 </span> 2588 </span> 2589 </button> 2590 </span> 2591 <div 2592 x-cloak 2593 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 2594 x-bind:class="subOpen[2] == '25974' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 2595 x-bind:style="subOpen[2] == '25974' && !subOpen[3] && { maxHeight: '360px' }" 2596 > 2597 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 2598 <li class="w-full pb-8 pr-4 md:pr-0"> 2599 <span 2600 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2601 x-bind:class="subOpen[3] == '26494' ? 'nav-item-active' : ''" 2602 > 2603 <a 2604 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2605 href="https://www.joensuu.fi/en/city-and-development/our-joensuu/move-to-joensuu/" 2606 x-bind:class="subOpen[3] == '26494' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2607 > 2608 <span>Move to Joensuu</span> 2609 </a> 2610 </span> 2611 </li> 2612 2613 <li class="w-full pb-8 pr-4 md:pr-0"> 2614 <span 2615 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2616 x-bind:class="subOpen[3] == '28654' ? 'nav-item-active' : ''" 2617 > 2618 <a 2619 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2620 href="https://www.joensuu.fi/en/city-and-development/our-joensuu/arriving-in-joensuu/" 2621 x-bind:class="subOpen[3] == '28654' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2622 > 2623 <span>Arriving in Joensuu</span> 2624 </a> 2625 </span> 2626 </li> 2627 2628 <li class="w-full pb-8 pr-4 md:pr-0"> 2629 <span 2630 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2631 x-bind:class="subOpen[3] == '31174' ? 'nav-item-active' : ''" 2632 > 2633 <a 2634 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2635 href="https://www.joensuu.fi/en/city-and-development/our-joensuu/carelicum/" 2636 x-bind:class="subOpen[3] == '31174' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2637 > 2638 <span>Carelicum service point</span> 2639 </a> 2640 </span> 2641 </li> 2642 2643 <li class="w-full pb-8 pr-4 md:pr-0"> 2644 <span 2645 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2646 x-bind:class="subOpen[3] == '38538' ? 'nav-item-active' : ''" 2647 > 2648 <a 2649 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2650 href="https://www.joensuu.fi/en/city-and-development/our-joensuu/about-joensuu/" 2651 x-bind:class="subOpen[3] == '38538' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2652 >
2653 <span>About Joensuu</span> 2654 </a> 2655 </span> 2656 </li> 2657 2658 <li class="w-full pb-8 pr-4 md:pr-0"> 2659 <span 2660 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2661 x-bind:class="subOpen[3] == '31290' ? 'nav-item-active' : ''" 2662 > 2663 <a 2664 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2665 href="https://www.joensuu.fi/en/city-and-development/our-joensuu/rural-areas/" 2666 x-bind:class="subOpen[3] == '31290' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2667 > 2668 <span>Rural areas</span> 2669 </a> 2670 </span> 2671 </li> 2672 2673 <li class="w-full pb-8 pr-4 md:pr-0"> 2674 <span 2675 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2676 x-bind:class="subOpen[3] == '25975' ? 'nav-item-active' : ''" 2677 > 2678 <a 2679 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2680 href="https://www.joensuu.fi/en/city-and-development/our-joensuu/values/" 2681 x-bind:class="subOpen[3] == '25975' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2682 > 2683 <span>Values</span> 2684 </a> 2685 </span> 2686 </li> 2687 2688 </ul> 2689 </div> 2690 </li> 2691 2692 <li class="w-full pb-8 pr-4 md:pr-0"> 2693 <span 2694 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2695 x-bind:class="subOpen[2] == '31317' ? 'nav-item-active' : ''" 2696 > 2697 <a 2698 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 2699 href="https://www.joensuu.fi/en/city-and-development/well-being-and-community-development/" 2700 x-bind:class="subOpen[2] == '31317' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2701 > 2702 <span>Well-being and community development</span> 2703 </a> 2704 <button 2705 :aria-expanded="subOpen[2] == '31317'" 2706 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 2707 @click=" 2708 if(subOpen[2] == '31317') { 2709 subOpen[2] = null; 2710 } else { 2711 subOpen[2] = '31317'; 2712 }; 2713 subOpen[3] = null; 2714 subOpen[4] = null; 2715 " 2716 > 2717 <span class="block"> 2718 <span 2719 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 2720 x-bind:class="subOpen[2] == '31317' ? 'menu-plus-active text-menu-hover' : ''" 2721 aria-hidden="true"> 2722 <span x-bind:class="subOpen[2] == '31317' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2723<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2724<rect width="24" height="24" fill="#D9D9D9"/> 2725</mask> 2726<g> 2727<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 2728</g> 2729</svg></span> 2730 2731 <span x-bind:class="subOpen[2] == '31317' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2732<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2733<rect width="24" height="24" fill="#D9D9D9"/> 2734</mask> 2735<g> 2736<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 2737</g> 2738</svg></span> 2739 </span> 2740 <span class="sr-only" x-bind:class="subOpen[2] == '31317' ? 'hidden' : ''"> 2741 Open "Well-being and community development" submenu 2742 </span> 2743 <span class="sr-only" x-bind:class="subOpen[2] == '31317' ? '' : 'hidden'"> 2744 Close "Well-being and community development" submenu 2745 </span> 2746 </span> 2747 </button> 2748 </span> 2749 <div 2750 x-cloak 2751 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 2752 x-bind:class="subOpen[2] == '31317' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 2753 x-bind:style="subOpen[2] == '31317' && !subOpen[3] && { maxHeight: '180px' }" 2754 > 2755 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 2756 <li class="w-full pb-8 pr-4 md:pr-0"> 2757 <span 2758 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2759 x-bind:class="subOpen[3] == '31318' ? 'nav-item-active' : ''" 2760 > 2761 <a 2762 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2763 href="https://www.joensuu.fi/en/city-and-development/well-being-and-community-development/child-friendly-municipality/" 2764 x-bind:class="subOpen[3] == '31318' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2765 >
2766 <span>Child Friendly municipality</span> 2767 </a> 2768 </span> 2769 </li> 2770 2771 <li class="w-full pb-8 pr-4 md:pr-0"> 2772 <span 2773 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2774 x-bind:class="subOpen[3] == '31319' ? 'nav-item-active' : ''" 2775 > 2776 <a 2777 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2778 href="https://www.joensuu.fi/en/city-and-development/well-being-and-community-development/strenght-in-old-age/" 2779 x-bind:class="subOpen[3] == '31319' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2780 > 2781 <span>Strenght in Old Age</span> 2782 </a> 2783 </span> 2784 </li> 2785 2786 <li class="w-full pb-8 pr-4 md:pr-0"> 2787 <span 2788 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2789 x-bind:class="subOpen[3] == '31320' ? 'nav-item-active' : ''" 2790 > 2791 <a 2792 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2793 href="https://www.joensuu.fi/en/city-and-development/well-being-and-community-development/promotion-of-wellbeing-and-health/" 2794 x-bind:class="subOpen[3] == '31320' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2795 > 2796 <span>Promotion of wellbeing and health</span> 2797 </a> 2798 </span> 2799 </li> 2800 2801 </ul> 2802 </div> 2803 </li> 2804 2805 <li class="w-full pb-8 pr-4 md:pr-0"> 2806 <span 2807 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2808 x-bind:class="subOpen[2] == '28373' ? 'nav-item-active' : ''" 2809 > 2810 <a 2811 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 2812 href="https://www.joensuu.fi/en/city-and-development/development-and-innovation/" 2813 x-bind:class="subOpen[2] == '28373' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2814 > 2815 <span>Development and Innovation</span> 2816 </a> 2817 <button 2818 :aria-expanded="subOpen[2] == '28373'" 2819 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 2820 @click=" 2821 if(subOpen[2] == '28373') { 2822 subOpen[2] = null; 2823 } else { 2824 subOpen[2] = '28373'; 2825 }; 2826 subOpen[3] = null; 2827 subOpen[4] = null; 2828 " 2829 > 2830 <span class="block"> 2831 <span 2832 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 2833 x-bind:class="subOpen[2] == '28373' ? 'menu-plus-active text-menu-hover' : ''" 2834 aria-hidden="true"> 2835 <span x-bind:class="subOpen[2] == '28373' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2836<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2837<rect width="24" height="24" fill="#D9D9D9"/> 2838</mask> 2839<g> 2840<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 2841</g> 2842</svg></span> 2843 2844 <span x-bind:class="subOpen[2] == '28373' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2845<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2846<rect width="24" height="24" fill="#D9D9D9"/> 2847</mask> 2848<g> 2849<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 2850</g> 2851</svg></span> 2852 </span> 2853 <span class="sr-only" x-bind:class="subOpen[2] == '28373' ? 'hidden' : ''"> 2854 Open "Development and Innovation" submenu 2855 </span>
2856 <span class="sr-only" x-bind:class="subOpen[2] == '28373' ? '' : 'hidden'"> 2857 Close "Development and Innovation" submenu 2858 </span> 2859 </span> 2860 </button> 2861 </span> 2862 <div 2863 x-cloak 2864 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 2865 x-bind:class="subOpen[2] == '28373' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 2866 x-bind:style="subOpen[2] == '28373' && !subOpen[3] && { maxHeight: '240px' }" 2867 > 2868 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 2869 <li class="w-full pb-8 pr-4 md:pr-0"> 2870 <span 2871 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2872 x-bind:class="subOpen[3] == '28374' ? 'nav-item-active' : ''" 2873 > 2874 <a 2875 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2876 href="https://www.joensuu.fi/en/city-and-development/development-and-innovation/strategy/" 2877 x-bind:class="subOpen[3] == '28374' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2878 > 2879 <span>Strategy</span> 2880 </a> 2881 </span> 2882 </li> 2883 2884 <li class="w-full pb-8 pr-4 md:pr-0"> 2885 <span 2886 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2887 x-bind:class="subOpen[3] == '31291' ? 'nav-item-active' : ''" 2888 > 2889 <a 2890 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2891 href="https://www.joensuu.fi/en/city-and-development/development-and-innovation/european-forest-capital/" 2892 x-bind:class="subOpen[3] == '31291' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2893 > 2894 <span>European Forest Capital</span> 2895 </a> 2896 </span> 2897 </li> 2898 2899 <li class="w-full pb-8 pr-4 md:pr-0"> 2900 <span 2901 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2902 x-bind:class="subOpen[3] == '31292' ? 'nav-item-active' : ''" 2903 > 2904 <a 2905 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2906 href="https://www.joensuu.fi/en/city-and-development/development-and-innovation/photonics/" 2907 x-bind:class="subOpen[3] == '31292' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2908 > 2909 <span>Photonics</span> 2910 </a> 2911 </span> 2912 </li> 2913 2914 <li class="w-full pb-8 pr-4 md:pr-0"> 2915 <span 2916 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2917 x-bind:class="subOpen[3] == '34641' ? 'nav-item-active' : ''" 2918 > 2919 <a 2920 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 2921 href="https://www.joensuu.fi/en/city-and-development/development-and-innovation/carbon-neutral-joensuu/" 2922 x-bind:class="subOpen[3] == '34641' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2923 > 2924 <span>Carbon-neutral Joensuu</span> 2925 </a> 2926 </span> 2927 </li> 2928 2929 </ul> 2930 </div> 2931 </li> 2932 2933 <li class="w-full pb-8 pr-4 md:pr-0"> 2934 <span 2935 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 2936 x-bind:class="subOpen[2] == '31280' ? 'nav-item-active' : ''" 2937 > 2938 <a 2939 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 2940 href="https://www.joensuu.fi/en/city-and-development/urban-planning-and-construction/" 2941 x-bind:class="subOpen[2] == '31280' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 2942 > 2943 <span>Urban Planning and Construction</span> 2944 </a> 2945 <button 2946 :aria-expanded="subOpen[2] == '31280'" 2947 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 2948 @click=" 2949 if(subOpen[2] == '31280') { 2950 subOpen[2] = null; 2951 } else { 2952 subOpen[2] = '31280'; 2953 }; 2954 subOpen[3] = null; 2955 subOpen[4] = null; 2956 " 2957 >
2958 <span class="block"> 2959 <span 2960 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 2961 x-bind:class="subOpen[2] == '31280' ? 'menu-plus-active text-menu-hover' : ''" 2962 aria-hidden="true"> 2963 <span x-bind:class="subOpen[2] == '31280' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2964<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2965<rect width="24" height="24" fill="#D9D9D9"/> 2966</mask> 2967<g> 2968<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 2969</g> 2970</svg></span> 2971 2972 <span x-bind:class="subOpen[2] == '31280' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 2973<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 2974<rect width="24" height="24" fill="#D9D9D9"/> 2975</mask> 2976<g> 2977<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 2978</g> 2979</svg></span> 2980 </span> 2981 <span class="sr-only" x-bind:class="subOpen[2] == '31280' ? 'hidden' : ''"> 2982 Open "Urban Planning and Construction" submenu 2983 </span> 2984 <span class="sr-only" x-bind:class="subOpen[2] == '31280' ? '' : 'hidden'"> 2985 Close "Urban Planning and Construction" submenu 2986 </span> 2987 </span> 2988 </button> 2989 </span> 2990 <div 2991 x-cloak 2992 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 2993 x-bind:class="subOpen[2] == '31280' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 2994 x-bind:style="subOpen[2] == '31280' && !subOpen[3] && { maxHeight: '120px' }" 2995 > 2996 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 2997 <li class="w-full pb-8 pr-4 md:pr-0"> 2998 <span 2999 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3000 x-bind:class="subOpen[3] == '31281' ? 'nav-item-active' : ''" 3001 > 3002 <a 3003 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3004 href="https://www.joensuu.fi/en/city-and-development/urban-planning-and-construction/urban-planning/" 3005 x-bind:class="subOpen[3] == '31281' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3006 > 3007 <span>Urban planning</span> 3008 </a> 3009 </span> 3010 </li> 3011 3012 <li class="w-full pb-8 pr-4 md:pr-0"> 3013 <span 3014 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3015 x-bind:class="subOpen[3] == '40822' ? 'nav-item-active' : ''" 3016 > 3017 <a 3018 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3019 href="https://www.joensuu.fi/en/city-and-development/urban-planning-and-construction/forest-management/" 3020 x-bind:class="subOpen[3] == '40822' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3021 > 3022 <span>Forest Management</span> 3023 </a> 3024 </span> 3025 </li> 3026 3027 </ul> 3028 </div> 3029 </li> 3030 3031 <li class="w-full pb-8 pr-4 md:pr-0"> 3032 <span 3033 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3034 x-bind:class="subOpen[2] == '31305' ? 'nav-item-active' : ''" 3035 > 3036 <a 3037 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 3038 href="https://www.joensuu.fi/en/city-and-development/grants/" 3039 x-bind:class="subOpen[2] == '31305' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3040 >
3041 <span>Grants</span> 3042 </a> 3043 <button 3044 :aria-expanded="subOpen[2] == '31305'" 3045 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 3046 @click=" 3047 if(subOpen[2] == '31305') { 3048 subOpen[2] = null; 3049 } else { 3050 subOpen[2] = '31305'; 3051 }; 3052 subOpen[3] = null; 3053 subOpen[4] = null; 3054 " 3055 > 3056 <span class="block"> 3057 <span 3058 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 3059 x-bind:class="subOpen[2] == '31305' ? 'menu-plus-active text-menu-hover' : ''" 3060 aria-hidden="true"> 3061 <span x-bind:class="subOpen[2] == '31305' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3062<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3063<rect width="24" height="24" fill="#D9D9D9"/> 3064</mask> 3065<g> 3066<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 3067</g> 3068</svg></span> 3069 3070 <span x-bind:class="subOpen[2] == '31305' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3071<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3072<rect width="24" height="24" fill="#D9D9D9"/> 3073</mask> 3074<g> 3075<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 3076</g> 3077</svg></span> 3078 </span> 3079 <span class="sr-only" x-bind:class="subOpen[2] == '31305' ? 'hidden' : ''"> 3080 Open "Grants" submenu 3081 </span> 3082 <span class="sr-only" x-bind:class="subOpen[2] == '31305' ? '' : 'hidden'"> 3083 Close "Grants" submenu 3084 </span> 3085 </span> 3086 </button> 3087 </span> 3088 <div 3089 x-cloak 3090 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 3091 x-bind:class="subOpen[2] == '31305' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 3092 x-bind:style="subOpen[2] == '31305' && !subOpen[3] && { maxHeight: '180px' }" 3093 > 3094 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 3095 <li class="w-full pb-8 pr-4 md:pr-0"> 3096 <span 3097 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3098 x-bind:class="subOpen[3] == '31308' ? 'nav-item-active' : ''" 3099 > 3100 <a 3101 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3102 href="https://www.joensuu.fi/en/city-and-development/grants/resident-participation-grants/" 3103 x-bind:class="subOpen[3] == '31308' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3104 > 3105 <span>Resident participation grants</span> 3106 </a> 3107 </span> 3108 </li> 3109 3110 <li class="w-full pb-8 pr-4 md:pr-0"> 3111 <span 3112 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3113 x-bind:class="subOpen[3] == '31307' ? 'nav-item-active' : ''" 3114 > 3115 <a 3116 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3117 href="https://www.joensuu.fi/en/city-and-development/grants/fund-of-albert-vartiainen/" 3118 x-bind:class="subOpen[3] == '31307' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3119 > 3120 <span>Fund of Albert Vartiainen</span> 3121 </a> 3122 </span> 3123 </li> 3124 3125 <li class="w-full pb-8 pr-4 md:pr-0"> 3126 <span 3127 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3128 x-bind:class="subOpen[3] == '31306' ? 'nav-item-active' : ''" 3129 > 3130 <a 3131 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3132 href="https://www.joensuu.fi/en/city-and-development/grants/grants-and-scholarships-for-private-individuals/" 3133 x-bind:class="subOpen[3] == '31306' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3134 >
3135 <span>Grants and scholarships for private individuals</span> 3136 </a> 3137 </span> 3138 </li> 3139 3140 </ul> 3141 </div> 3142 </li> 3143 3144 </ul> 3145 </div> 3146 </li> 3147 <li 3148 class="py-4 transition duration-500 w-full md:w-[30%] 2xl:w-[27%]" 3149 x-bind:class="!isOpenDelayShort ? 'opacity-0' : 'opacity-100'" 3150 > 3151 <span 3152 class="group nav-item nav-item-main flex flex-nowrap gap-8 transition duration-500" 3153 x-bind:class="subOpen[1] == '25941' ? 'nav-item-active' : ''" 3154 x-bind:style="!isOpenDelayShort ? { 'transition-delay': '80ms', transform: 'translateY(1.5rem)' } : { 'transition-delay': '80ms' }" 3155 > 3156 <a 3157 href="https://www.joensuu.fi/en/governance-and-decision-making/" 3158 class="!no-underline flex-1 font-display text-base 2xl:text-baseb very-low-text-3xl leading-normal" 3159 x-bind:class="subOpen[1] == '25941' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3160 > 3161 <span class="!w-auto">Governance and decision-making</span> 3162 </a> 3163 <button 3164 :aria-expanded="subOpen[1] == '25941'" 3165 class="submenu-toggle cursor-pointer shrink-0 w-24 h-24 ml-auto flex justify-center items-center" 3166 @click=" 3167 if(subOpen[1] == '25941') { 3168 subOpen[1] = null; 3169 } else { 3170 subOpen[1] = '25941'; 3171 }; 3172 subOpen[2] = null; 3173 subOpen[3] = null; 3174 " 3175 > 3176 <span class="block"> 3177 <span 3178 class="shrink-0 block transform transition duration-300 mx-auto menu-plus scale-130 mr-[0.3rem] md:mr-0" 3179 x-bind:class="subOpen[1] == '25941' ? 'menu-plus-active text-menu-hover' : ''" 3180 aria-hidden="true"> 3181 <span x-bind:class="subOpen[1] == '25941' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3182<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3183<rect width="24" height="24" fill="#D9D9D9"/> 3184</mask> 3185<g> 3186<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 3187</g> 3188</svg></span> 3189 3190 <span x-bind:class="subOpen[1] == '25941' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3191<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3192<rect width="24" height="24" fill="#D9D9D9"/> 3193</mask> 3194<g> 3195<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 3196</g> 3197</svg></span> 3198 </span> 3199 <span class="sr-only" x-bind:class="subOpen[1] == '25941' ? 'hidden' : ''">Open "Governance and decision-making" submenu</span> 3200 <span class="sr-only" x-bind:class="subOpen[1] == '25941' ? '' : 'hidden'">Close "Governance and decision-making"
3200 submenu</span> 3201 </span> 3202 </button> 3203 </span> 3204 <div 3205 x-cloak 3206 class="md:absolute md:top-0 transition-all transform duration-500 pl-24 md:pl-0 grid z-20 md:mt-4 2xl:mt-9 3xl:mt-8 md:left-1/3 md:max-w-[33%] 2xl:left-[31%] 2xl:max-w-[31%]" 3207 x-bind:class="subOpen[1] == '25941' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 3208 x-bind:style="subOpen[1] == '25941' && !subOpen[2] && { maxHeight: '300px' }" 3209 > 3210 <ul 3211 class="flex flex-col gap-12 2xl:gap-16 transition duration-500 my-24 md:my-0 md:-mt-[0.4rem]" 3212 x-bind:class="!isOpenDelayShort ? 'opacity-0 translate-y-32' : 'opacity-100 translate-y-0'" 3213 > 3214 <li class="w-full pb-8 pr-4 md:pr-0"> 3215 <span 3216 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3217 x-bind:class="subOpen[2] == '27644' ? 'nav-item-active' : ''" 3218 > 3219 <a 3220 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 3221 href="https://www.joensuu.fi/en/governance-and-decision-making/participate-and-have-your-say/" 3222 x-bind:class="subOpen[2] == '27644' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3223 > 3224 <span>Participate and have your say</span> 3225 </a> 3226 <button 3227 :aria-expanded="subOpen[2] == '27644'" 3228 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 3229 @click=" 3230 if(subOpen[2] == '27644') { 3231 subOpen[2] = null; 3232 } else { 3233 subOpen[2] = '27644'; 3234 }; 3235 subOpen[3] = null; 3236 subOpen[4] = null; 3237 " 3238 > 3239 <span class="block"> 3240 <span 3241 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 3242 x-bind:class="subOpen[2] == '27644' ? 'menu-plus-active text-menu-hover' : ''" 3243 aria-hidden="true"> 3244 <span x-bind:class="subOpen[2] == '27644' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3245<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3246<rect width="24" height="24" fill="#D9D9D9"/> 3247</mask> 3248<g> 3249<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 3250</g> 3251</svg></span> 3252 3253 <span x-bind:class="subOpen[2] == '27644' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3254<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3255<rect width="24" height="24" fill="#D9D9D9"/> 3256</mask> 3257<g> 3258<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 3259</g> 3260</svg></span> 3261 </span> 3262 <span class="sr-only" x-bind:class="subOpen[2] == '27644' ? 'hidden' : ''"> 3263 Open "Participate and have your say" submenu 3264 </span> 3265 <span class="sr-only" x-bind:class="subOpen[2] == '27644' ? '' : 'hidden'"> 3266 Close "Participate and have your say" submenu 3267 </span> 3268 </span> 3269 </button> 3270 </span> 3271 <div 3272 x-cloak 3273 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 3274 x-bind:class="subOpen[2] == '27644' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 3275 x-bind:style="subOpen[2] == '27644' && !subOpen[3] && { maxHeight: '180px' }" 3276 > 3277 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 3278 <li class="w-full pb-8 pr-4 md:pr-0"> 3279 <span 3280 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3281 x-bind:class="subOpen[3] == '31313' ? 'nav-item-active' : ''" 3282 > 3283 <a 3284 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3285 href="https://www.joensuu.fi/en/governance-and-decision-making/participate-and-have-your-say/advisory-board-for-persons-with-disabilities/" 3286 x-bind:class="subOpen[3] == '31313' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3287 >
3288 <span>Advisory Board for Persons with Disabilities</span> 3289 </a> 3290 </span> 3291 </li> 3292 3293 <li class="w-full pb-8 pr-4 md:pr-0"> 3294 <span 3295 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3296 x-bind:class="subOpen[3] == '31312' ? 'nav-item-active' : ''" 3297 > 3298 <a 3299 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3300 href="https://www.joensuu.fi/en/governance-and-decision-making/participate-and-have-your-say/senior-citizens-advisory-board/" 3301 x-bind:class="subOpen[3] == '31312' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3302 > 3303 <span>Senior Citizensâ Advisory Board</span> 3304 </a> 3305 </span> 3306 </li> 3307 3308 <li class="w-full pb-8 pr-4 md:pr-0"> 3309 <span 3310 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3311 x-bind:class="subOpen[3] == '27645' ? 'nav-item-active' : ''" 3312 > 3313 <a 3314 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3315 href="https://www.joensuu.fi/en/governance-and-decision-making/participate-and-have-your-say/elections/" 3316 x-bind:class="subOpen[3] == '27645' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3317 > 3318 <span>Elections</span> 3319 </a> 3320 </span> 3321 </li> 3322 3323 </ul> 3324 </div> 3325 </li> 3326 3327 <li class="w-full pb-8 pr-4 md:pr-0"> 3328 <span 3329 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3330 x-bind:class="subOpen[2] == '25951' ? 'nav-item-active' : ''" 3331 > 3332 <a 3333 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 3334 href="https://www.joensuu.fi/en/governance-and-decision-making/finance/" 3335 x-bind:class="subOpen[2] == '25951' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3336 > 3337 <span>Finance</span> 3338 </a> 3339 <button 3340 :aria-expanded="subOpen[2] == '25951'" 3341 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 3342 @click=" 3343 if(subOpen[2] == '25951') { 3344 subOpen[2] = null; 3345 } else { 3346 subOpen[2] = '25951'; 3347 }; 3348 subOpen[3] = null; 3349 subOpen[4] = null; 3350 " 3351 > 3352 <span class="block"> 3353 <span 3354 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 3355 x-bind:class="subOpen[2] == '25951' ? 'menu-plus-active text-menu-hover' : ''" 3356 aria-hidden="true"> 3357 <span x-bind:class="subOpen[2] == '25951' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3358<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3359<rect width="24" height="24" fill="#D9D9D9"/> 3360</mask> 3361<g> 3362<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 3363</g> 3364</svg></span> 3365 3366 <span x-bind:class="subOpen[2] == '25951' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3367<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3368<rect width="24" height="24" fill="#D9D9D9"/> 3369</mask> 3370<g> 3371<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 3372</g> 3373</svg></span> 3374 </span> 3375 <span class="sr-only" x-bind:class="subOpen[2] == '25951' ? 'hidden' : ''"> 3376 Open "Finance" submenu 3377 </span>
3378 <span class="sr-only" x-bind:class="subOpen[2] == '25951' ? '' : 'hidden'"> 3379 Close "Finance" submenu 3380 </span> 3381 </span> 3382 </button> 3383 </span> 3384 <div 3385 x-cloak 3386 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 3387 x-bind:class="subOpen[2] == '25951' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 3388 x-bind:style="subOpen[2] == '25951' && !subOpen[3] && { maxHeight: '240px' }" 3389 > 3390 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 3391 <li class="w-full pb-8 pr-4 md:pr-0"> 3392 <span 3393 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3394 x-bind:class="subOpen[3] == '25955' ? 'nav-item-active' : ''" 3395 > 3396 <a 3397 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3398 href="https://www.joensuu.fi/en/governance-and-decision-making/finance/budget/" 3399 x-bind:class="subOpen[3] == '25955' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3400 > 3401 <span>Budget</span> 3402 </a> 3403 </span> 3404 </li> 3405 3406 <li class="w-full pb-8 pr-4 md:pr-0"> 3407 <span 3408 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3409 x-bind:class="subOpen[3] == '25954' ? 'nav-item-active' : ''" 3410 > 3411 <a 3412 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3413 href="https://www.joensuu.fi/en/governance-and-decision-making/finance/interim-reports/" 3414 x-bind:class="subOpen[3] == '25954' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3415 > 3416 <span>Monitoring budget implementation</span> 3417 </a> 3418 </span> 3419 </li> 3420 3421 <li class="w-full pb-8 pr-4 md:pr-0"> 3422 <span 3423 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3424 x-bind:class="subOpen[3] == '25953' ? 'nav-item-active' : ''" 3425 > 3426 <a 3427 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3428 href="https://www.joensuu.fi/en/governance-and-decision-making/finance/financial-statements/" 3429 x-bind:class="subOpen[3] == '25953' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3430 > 3431 <span>Financial statements</span> 3432 </a> 3433 </span> 3434 </li> 3435 3436 <li class="w-full pb-8 pr-4 md:pr-0"> 3437 <span 3438 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3439 x-bind:class="subOpen[3] == '25952' ? 'nav-item-active' : ''" 3440 > 3441 <a 3442 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3443 href="https://www.joensuu.fi/en/governance-and-decision-making/finance/billing-and-invoicing/" 3444 x-bind:class="subOpen[3] == '25952' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3445 > 3446 <span>Billing and invoicing</span> 3447 </a> 3448 </span> 3449 </li> 3450 3451 </ul> 3452 </div> 3453 </li> 3454 3455 <li class="w-full pb-8 pr-4 md:pr-0"> 3456 <span 3457 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3458 x-bind:class="subOpen[2] == '26991' ? 'nav-item-active' : ''" 3459 > 3460 <a 3461 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 3462 href="https://www.joensuu.fi/en/governance-and-decision-making/decision-making/" 3463 x-bind:class="subOpen[2] == '26991' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3464 > 3465 <span>Decision-making</span> 3466 </a> 3467 <button 3468 :aria-expanded="subOpen[2] == '26991'" 3469 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 3470 @click=" 3471 if(subOpen[2] == '26991') { 3472 subOpen[2] = null; 3473 } else { 3474 subOpen[2] = '26991'; 3475 }; 3476 subOpen[3] = null; 3477 subOpen[4] = null; 3478 " 3479 >
3480 <span class="block"> 3481 <span 3482 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 3483 x-bind:class="subOpen[2] == '26991' ? 'menu-plus-active text-menu-hover' : ''" 3484 aria-hidden="true"> 3485 <span x-bind:class="subOpen[2] == '26991' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3486<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3487<rect width="24" height="24" fill="#D9D9D9"/> 3488</mask> 3489<g> 3490<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 3491</g> 3492</svg></span> 3493 3494 <span x-bind:class="subOpen[2] == '26991' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3495<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3496<rect width="24" height="24" fill="#D9D9D9"/> 3497</mask> 3498<g> 3499<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 3500</g> 3501</svg></span> 3502 </span> 3503 <span class="sr-only" x-bind:class="subOpen[2] == '26991' ? 'hidden' : ''"> 3504 Open "Decision-making" submenu 3505 </span> 3506 <span class="sr-only" x-bind:class="subOpen[2] == '26991' ? '' : 'hidden'"> 3507 Close "Decision-making" submenu 3508 </span> 3509 </span> 3510 </button> 3511 </span> 3512 <div 3513 x-cloak 3514 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 3515 x-bind:class="subOpen[2] == '26991' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 3516 x-bind:style="subOpen[2] == '26991' && !subOpen[3] && { maxHeight: '60px' }" 3517 > 3518 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 3519 <li class="w-full pb-8 pr-4 md:pr-0"> 3520 <span 3521 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3522 x-bind:class="subOpen[3] == '26992' ? 'nav-item-active' : ''" 3523 > 3524 <a 3525 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3526 href="https://www.joensuu.fi/en/governance-and-decision-making/decision-making/governance-structure/" 3527 x-bind:class="subOpen[3] == '26992' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3528 > 3529 <span>Governance structure</span> 3530 </a> 3531 </span> 3532 </li> 3533 3534 </ul> 3535 </div> 3536 </li> 3537 3538 <li class="w-full pb-8 pr-4 md:pr-0"> 3539 <span 3540 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3541 x-bind:class="subOpen[2] == '28347' ? 'nav-item-active' : ''" 3542 > 3543 <a 3544 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 3545 href="https://www.joensuu.fi/en/governance-and-decision-making/safety-and-data-protection/" 3546 x-bind:class="subOpen[2] == '28347' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3547 > 3548 <span>Safety and Data Protection</span> 3549 </a> 3550 <button 3551 :aria-expanded="subOpen[2] == '28347'" 3552 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 3553 @click=" 3554 if(subOpen[2] == '28347') { 3555 subOpen[2] = null; 3556 } else { 3557 subOpen[2] = '28347'; 3558 }; 3559 subOpen[3] = null; 3560 subOpen[4] = null; 3561 " 3562 >
3563 <span class="block"> 3564 <span 3565 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 3566 x-bind:class="subOpen[2] == '28347' ? 'menu-plus-active text-menu-hover' : ''" 3567 aria-hidden="true"> 3568 <span x-bind:class="subOpen[2] == '28347' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3569<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3570<rect width="24" height="24" fill="#D9D9D9"/> 3571</mask> 3572<g> 3573<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 3574</g> 3575</svg></span> 3576 3577 <span x-bind:class="subOpen[2] == '28347' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3578<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3579<rect width="24" height="24" fill="#D9D9D9"/> 3580</mask> 3581<g> 3582<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 3583</g> 3584</svg></span> 3585 </span> 3586 <span class="sr-only" x-bind:class="subOpen[2] == '28347' ? 'hidden' : ''"> 3587 Open "Safety and Data Protection" submenu 3588 </span> 3589 <span class="sr-only" x-bind:class="subOpen[2] == '28347' ? '' : 'hidden'"> 3590 Close "Safety and Data Protection" submenu 3591 </span> 3592 </span> 3593 </button> 3594 </span> 3595 <div 3596 x-cloak 3597 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 3598 x-bind:class="subOpen[2] == '28347' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 3599 x-bind:style="subOpen[2] == '28347' && !subOpen[3] && { maxHeight: '60px' }" 3600 > 3601 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 3602 <li class="w-full pb-8 pr-4 md:pr-0"> 3603 <span 3604 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3605 x-bind:class="subOpen[3] == '28348' ? 'nav-item-active' : ''" 3606 > 3607 <a 3608 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3609 href="https://www.joensuu.fi/en/governance-and-decision-making/safety-and-data-protection/rules-for-a-safe-space/" 3610 x-bind:class="subOpen[3] == '28348' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3611 > 3612 <span>Rules for a safe space</span> 3613 </a> 3614 </span> 3615 </li> 3616 3617 </ul> 3618 </div> 3619 </li> 3620 3621 <li class="w-full pb-8 pr-4 md:pr-0"> 3622 <span 3623 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3624 x-bind:class="subOpen[2] == '25947' ? 'nav-item-active' : ''" 3625 > 3626 <a 3627 class="!no-underline block font-sans leading-snug flex-1 text-baseb 2xl:text-md low-text-md" 3628 href="https://www.joensuu.fi/en/governance-and-decision-making/communications-and-marketing/" 3629 x-bind:class="subOpen[2] == '25947' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3630 > 3631 <span>Communications and marketing</span> 3632 </a> 3633 <button 3634 :aria-expanded="subOpen[2] == '25947'" 3635 class="submenu-toggle cursor-pointer shrink-0 grow-0 self-start scale-125 w-20 h-20 ml-auto flex justify-center items-center mt-[0.3rem]" 3636 @click=" 3637 if(subOpen[2] == '25947') { 3638 subOpen[2] = null; 3639 } else { 3640 subOpen[2] = '25947'; 3641 }; 3642 subOpen[3] = null; 3643 subOpen[4] = null; 3644 " 3645 >
3646 <span class="block"> 3647 <span 3648 class="shrink-0 block transform transition duration-300 mx-auto menu-plus menu-plus-mini scale-85" 3649 x-bind:class="subOpen[2] == '25947' ? 'menu-plus-active text-menu-hover' : ''" 3650 aria-hidden="true"> 3651 <span x-bind:class="subOpen[2] == '25947' ? 'hidden' : 'block'"><svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3652<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3653<rect width="24" height="24" fill="#D9D9D9"/> 3654</mask> 3655<g> 3656<path d="M10.775 13.225H5.51953V10.775H10.775V5.51953H13.225V10.775H18.4805V13.225H13.225V18.4805H10.775V13.225Z" fill="#DEF8FF"/> 3657</g> 3658</svg></span> 3659 3660 <span x-bind:class="subOpen[2] == '25947' ? 'block' : 'hidden'"><svg class="rotate-90 md:rotate-none w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3661<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"> 3662<rect width="24" height="24" fill="#D9D9D9"/> 3663</mask> 3664<g> 3665<path d="M14.4151 17.2521L12.6878 15.5531L15.0161 13.2248H4.32031V10.7748H15.0161L12.6878 8.44656L14.4151 6.74756L19.6813 11.9998L14.4151 17.2521Z" fill="#FFA0FF"/> 3666</g> 3667</svg></span> 3668 </span> 3669 <span class="sr-only" x-bind:class="subOpen[2] == '25947' ? 'hidden' : ''"> 3670 Open "Communications and marketing" submenu 3671 </span> 3672 <span class="sr-only" x-bind:class="subOpen[2] == '25947' ? '' : 'hidden'"> 3673 Close "Communications and marketing" submenu 3674 </span> 3675 </span> 3676 </button> 3677 </span> 3678 <div 3679 x-cloak 3680 class="md:absolute md:top-0 transition-all transform duration-500 pl-16 md:pl-0 grid z-20 left-full w-full md:min-w-[16rem] lg:min-w-[20rem] xl:min-w-[24rem]" 3681 x-bind:class="subOpen[2] == '25947' ? 'md:max-h-max' : 'max-h-[0px] md:max-h-max opacity-0 pointer-events-none invisible translate-y-32 md:translate-y-6'" 3682 x-bind:style="subOpen[2] == '25947' && !subOpen[3] && { maxHeight: '180px' }" 3683 > 3684 <ul class="md:pl-24 lg:pl-32 xl:pl-40 2xl:pl-48 flex flex-col my-24 md:my-0 gap-12 2xl:gap-16"> 3685 <li class="w-full pb-8 pr-4 md:pr-0"> 3686 <span 3687 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3688 x-bind:class="subOpen[3] == '25948' ? 'nav-item-active' : ''" 3689 > 3690 <a 3691 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3692 href="https://www.joensuu.fi/en/governance-and-decision-making/communications-and-marketing/for-the-media/" 3693 x-bind:class="subOpen[3] == '25948' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3694 > 3695 <span>For the media</span> 3696 </a> 3697 </span> 3698 </li> 3699 3700 <li class="w-full pb-8 pr-4 md:pr-0"> 3701 <span 3702 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3703 x-bind:class="subOpen[3] == '25949' ? 'nav-item-active' : ''" 3704 > 3705 <a 3706 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3707 href="https://www.joensuu.fi/en/governance-and-decision-making/communications-and-marketing/brand/" 3708 x-bind:class="subOpen[3] == '25949' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3709 > 3710 <span>Brand</span> 3711 </a> 3712 </span> 3713 </li> 3714 3715 <li class="w-full pb-8 pr-4 md:pr-0"> 3716 <span 3717 class="group nav-item nav-item-sub flex flex-nowrap items-center gap-16" 3718 x-bind:class="subOpen[3] == '25950' ? 'nav-item-active' : ''" 3719 > 3720 <a 3721 class="!no-underline block font-sans leading-snug flex-1 text-base 2xl:text-baseb low-text-md" 3722 href="https://www.joensuu.fi/en/governance-and-decision-making/communications-and-marketing/joensuu-app/" 3723 x-bind:class="subOpen[3] == '25950' ? 'text-menu-hover' : 'text-menu group-hover:text-menu-hover focus-visible:text-menu-hover'" 3724 >
3725 <span>Joensuu app</span> 3726 </a> 3727 </span> 3728 </li> 3729 3730 </ul> 3731 </div> 3732 </li> 3733 3734 </ul> 3735 </div> 3736 </li> 3737 </ul> 3738 </nav> 3739 </div> 3740 </div> 3741 </div> 3742 3743 <div 3744 class="header-helper-navigation mb-64 md:mb-0 md:absolute md:bottom-32 md:left-0 md:right-0 w-full xs-low-hidden transition duration-500 relative pb-96 md:pb-0 font-mono font-600" 3745 x-bind:style="!isOpenDelayShort ? { 'transition-delay': '80ms', transform: 'translateY(1.5rem)' } : { 'transition-delay': '80ms' }" 3746 > 3747 <div class="container px-18 md:px-24 mx-auto"> 3748 <ul class="flex flex-col md:flex-row md:flex-wrap gap-16 md:gap-20 2xl:gap-24 md:items-center md:justify-start"> 3749 <li> 3750 <a href="https://www.joensuu.fi/en/latest/" class="animated-underline-invert-white block w-fit"> 3751 <span class="flex gap-2 2xl:gap-4 items-center"> 3752 <span> 3753 Latest from Joensuu 3754 </span> 3755 <svg class="inherit-color-fill w-20 h-20" role="img" alt="" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none"> 3756 <mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 3757 <rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 3758 </mask> 3759 <g> 3760 <path d="M10.5 10.4999L6.5625 6.56242L8.00187 5.12305L13.3788 10.4999L8.00187 15.8768L6.5625 14.4374L10.5 10.4999Z" fill="#DEF8FF"/> 3761 </g> 3762</svg> </span> 3763 </a> 3764 </li> 3765 <li> 3766 <a href="https://www.joensuu.fi/en/contacts/" class="animated-underline-invert-white block w-fit"> 3767 <span class="flex gap-2 2xl:gap-4 items-center"> 3768 <span> 3769 Contacts 3770 </span> 3771 <svg class="inherit-color-fill w-20 h-20" role="img" alt="" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none"> 3772 <mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 3773 <rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 3774 </mask> 3775 <g> 3776 <path d="M10.5 10.4999L6.5625 6.56242L8.00187 5.12305L13.3788 10.4999L8.00187 15.8768L6.5625 14.4374L10.5 10.4999Z" fill="#DEF8FF"/> 3777 </g> 3778</svg> </span> 3779 </a> 3780 </li> 3781 <li> 3782 <a href="https://www.joensuu.fi/en/feedback/" class="animated-underline-invert-white block w-fit"> 3783 <span class="flex gap-2 2xl:gap-4 items-center"> 3784 <span> 3785 Feedback 3786 </span> 3787 <svg class="inherit-color-fill w-20 h-20" role="img" alt="" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none"> 3788 <mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 3789 <rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 3790 </mask> 3791 <g> 3792 <path d="M10.5 10.4999L6.5625 6.56242L8.00187 5.12305L13.3788 10.4999L8.00187 15.8768L6.5625 14.4374L10.5 10.4999Z" fill="#DEF8FF"/> 3793 </g> 3794</svg> </span> 3795 </a> 3796 </li> 3797 </ul> 3798 </div> 3799 </div> 3800 </div> 3801 </div> 3802 3803 <div 3804 role="dialog" 3805 aria-modal="true" 3806 x-data="{ closedMobileSearchWithEscape: false, prevOpen: false }" 3807 @keydown.escape.window=" 3808 if (mobileSearchIsOpen && !isOpen && !searchIsOpen && !langSwitcherIsOpen) { 3809 closedMobileSearchWithEscape = true; 3810 mobileSearchIsOpen = false; 3811 } 3812 " 3813 x-effect=" 3814 if (!mobileSearchIsOpen && closedMobileSearchWithEscape) { 3815 $nextTick(() => { 3816 $refs.searchToggleButton?.focus(); 3817 closedMobileSearchWithEscape = false;
3818 }); 3819 } 3820" 3821 x-cloak 3822 class="header-overlay fixed inset-0 flex flex-col bg-header-footer transition-opacity duration-300 white-focus" 3823 x-show="mobileSearchIsOpen" 3824 x-transition:enter="transition ease-out duration-300" 3825 x-transition:enter-start="opacity-0" 3826 x-transition:enter-end="opacity-100" 3827 x-transition:leave="transition ease-in duration-300" 3828 x-transition:leave-start="opacity-100" 3829 x-transition:leave-end="opacity-0" 3830 x-trap.inert.noscroll="mobileSearchIsOpen" 3831> 3832 <div class="header-overlay-controls fixed z-50 top-0 left-0 right-0 w-full flex items-center white-focus"> 3833 <div class="container px-18 md:px-24 mx-auto"> 3834 <div class="flex justify-between items-center h-32"> 3835 <div class="max-w-[9rem] md:max-w-[12rem]"> 3836 <svg class="w-full h-auto" role="img" alt="" aria-hidden="true" width="198" height="23" viewBox="0 0 198 23" fill="none" xmlns="http://www.w3.org/2000/svg"> 3837<g> 3838<path fill-rule="evenodd" clip-rule="evenodd" d="M129.412 9.91726L124.306 8.93529C122.358 8.54494 120.916 8.05701 120.916 6.47122C120.916 4.64147 122.863 3.58631 125.596 3.58631C129.065 3.58631 131.365 5.09891 132.656 7.10554L135.973 4.22063C133.83 1.75656 130.355 0 125.602 0C119.833 0 116.011 2.74463 116.011 6.75178C116.011 10.4418 118.975 12.1679 122.717 12.8693L128.256 13.8878C130.325 14.3087 131.846 14.8393 131.846 16.4556C131.846 18.389 129.503 19.4076 126.387 19.4076C122.955 19.4076 119.644 17.9987 117.849 15.2906L114.769 18.4927C117.07 21.3044 121.281 22.9939 126.387 22.9939C132.157 22.9939 136.758 20.5664 136.758 16.2787C136.758 12.5521 134.031 10.7955 129.43 9.91116L129.412 9.91726ZM13.8893 14.2782C13.8893 17.3704 12.5626 19.2002 9.48314 19.2002C6.40368 19.2002 4.8396 17.2058 4.96741 13.961H0.00739743C-0.187351 19.554 3.47636 23 9.44054 23C14.8205 23 18.8372 20.048 18.8372 14.5587V0.420846H13.8833V14.2782H13.8893ZM61.0672 13.0827H72.1375V9.35615H61.0672V4.18405H75.7647V0.420861H56.2715V22.5792H76.1116V18.816H61.0672V13.0827ZM90.5778 0.420861L102.354 15.6139V0.420861H106.876V22.5792H102.549L89.5675 6.15408V22.5792H85.0822V0.420861H90.5778ZM193.119 0.420861V12.9059C193.119 16.9496 190.977 19.2368 187.076 19.2368C183.175 19.2368 181.075 16.9496 181.075 12.9059V0.420861H176.164V13.5036C176.164 19.9748 181.191 23 187.082 23C192.973 23 198 19.9748 198 13.5036V0.420861H193.125H193.119ZM155.849 19.2368C159.75 19.2368 161.892 16.9496 161.892 12.9059V0.420861H166.767V13.5036C166.767 19.9748 161.74 23 155.849 23C149.958 23 144.931 19.9748 144.931 13.5036V0.420861H149.842V12.9059C149.842 16.9496 151.948 19.2368 155.849 19.2368ZM30.37 11.3201C30.37 7.69716 33.3034 4.75736 36.9184 4.75736C40.5334 4.75736 43.4668 7.69716 43.4668 11.3201C43.4668 14.943 40.5334 17.8828 36.9184 17.8828C33.3034 17.8828 30.37 14.943 30.37 11.3201Z" fill="#ffffff"/> 3839</g> 3840</svg></div> 3841 3842 <div class="flex gap-32 md:gap-36 2xl:gap-48 text-white header-overlay-control-focusable md:pb-4"> 3843 <button 3844 type="button" 3845 class="nav-toggle flex items-center justify-center cursor-pointer" 3846 aria-label="Close search" 3847 aria-controls="navbar" 3848 :aria-expanded="mobileSearchIsOpen" 3849 x-on:click.throttle.700ms="mobileSearchIsOpen = false" 3850 > 3851 <svg class="w-20 h-20" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 3852<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 3853<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 3854</mask> 3855<g> 3856<path d="M6.06437 15.8768L4.625 14.4374L8.5625 10.4999L4.625 6.56242L6.06437 5.12305L10.0019 9.06055L13.9394 5.12305L15.3788 6.56242L11.4413 10.4999L15.3788 14.4374L13.9394 15.8768L10.0019 11.9393L6.06437 15.8768Z" fill="white"/> 3857</g> 3858</svg> </button> 3859 </div> 3860 </div> 3861 </div> 3862</div> 3863 3864 <div class="header-search-scrollable overflow-y-scroll min-h-screen max-h-screen" id="header-search-scrollable"> 3865 <div class="header-search-container flex flex-col md:justify-center mt-128 md:mt-192 mb-32 md:mb-112 2xl:mb-160"> 3866 <div class="container px-18 md:px-24 mx-auto relative z-5 pb-96"> 3867 <form 3868 role="search" 3869 method="get" 3870 class="search-form relative w-full" 3871 action="https://www.joensuu.fi/en/" 3872> 3873 3874 <label for="search-form-input-6ab4e60bace9c">
3875 <span class="sr-only"> 3876 Search the site 3877 </span> 3878 3879 <input 3880 type="search" 3881 id="search-form-input-6ab4e60bace9c" 3882 class="w-full bg-white text-grey-700 font-normal text-base font-sans border-2 border-accent py-8 px-12 rounded-xs shadow-input" 3883 placeholder="Type search term" 3884 value="" 3885 name="s" 3886 required 3887 > 3888 </label> 3889 3890 <span class="primary-focus"> 3891 <button 3892 type="submit" 3893 class="cursor-pointer absolute top-1/2 -translate-y-1/2 right-12 text-accent" 3894 > 3895 <span class="sr-only"> 3896 Search 3897 </span> 3898 <span> 3899 <svg class="w-20 h-20 inherit-color-fill" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 3900<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 3901<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 3902</mask> 3903<g> 3904<path d="M15.9157 17.9473L10.854 12.8857C10.4453 13.1598 9.99429 13.3759 9.50109 13.5338C9.0079 13.6917 8.47693 13.7707 7.90818 13.7707C6.44818 13.7707 5.20457 13.2571 4.17734 12.2298C3.15026 11.2028 2.63672 9.95942 2.63672 8.49984C2.63672 7.04025 3.15026 5.79692 4.17734 4.76984C5.20457 3.74262 6.44797 3.229 7.90755 3.229C9.36714 3.229 10.6105 3.74262 11.6376 4.76984C12.6648 5.79692 13.1784 7.04046 13.1784 8.50046C13.1784 9.07713 13.0994 9.6081 12.9415 10.0934C12.7836 10.5787 12.5676 11.0218 12.2934 11.4228L17.3667 16.508L15.9157 17.9473ZM7.90755 11.729C8.80908 11.729 9.57262 11.4162 10.1982 10.7907C10.8239 10.165 11.1367 9.40137 11.1367 8.49984C11.1367 7.59831 10.8239 6.8347 10.1982 6.209C9.57262 5.58345 8.80908 5.27067 7.90755 5.27067C7.00602 5.27067 6.24241 5.58345 5.61672 6.209C4.99116 6.8347 4.67839 7.59831 4.67839 8.49984C4.67839 9.40137 4.99116 10.165 5.61672 10.7907C6.24241 11.4162 7.00602 11.729 7.90755 11.729Z" fill="#0026E1"/> 3905</g> 3906</svg> </span> 3907 </button> 3908 </span> 3909</form> 3910 </div> 3911 </div> 3912 </div> 3913</div> 3914 <div 3915 role="dialog" 3916 aria-modal="true" 3917 x-cloak 3918 class="header-overlay fixed inset-0 text-white flex flex-col bg-header-footer transition duration-300 invisible white-focus" 3919 x-bind:class="langSwitcherIsOpen || langSwitcherIsOpenDelay ? 'visible' : 'invisible'" 3920 x-bind:data-header-lang-switcher-active="langSwitcherIsOpen" 3921 x-show="langSwitcherIsOpen" 3922 x-transition:enter="ease-out" 3923 x-transition:enter-start="opacity-0" 3924 x-transition:enter-end="opacity-100" 3925 x-transition:leave="ease-in" 3926 x-transition:leave-start="opacity-100" 3927 x-transition:leave-end="opacity-0" 3928 x-trap.inert.noscroll="langSwitcherIsOpen" 3929 id="header-lang-switcher" 3930 @keydown.escape.window=" 3931 if (langSwitcherIsOpen && !isOpen && !searchIsOpen && !mobileSearchIsOpen) { 3932 langSwitcherIsOpen = false; 3933 } 3934" 3935 > 3936 <div class="header-overlay-controls fixed z-50 top-0 left-0 right-0 w-full flex items-center white-focus"> 3937 <div class="container px-18 md:px-24 mx-auto"> 3938 <div class="flex justify-between items-center h-32"> 3939 <div class="max-w-[9rem] md:max-w-[12rem]"> 3940 <svg class="w-full h-auto" role="img" alt="" aria-hidden="true" width="198" height="23" viewBox="0 0 198 23" fill="none" xmlns="http://www.w3.org/2000/svg"> 3941<g> 3942<path fill-rule="evenodd" clip-rule="evenodd" d="M129.412 9.91726L124.306 8.93529C122.358 8.54494 120.916 8.05701 120.916 6.47122C120.916 4.64147 122.863 3.58631 125.596 3.58631C129.065 3.58631 131.365 5.09891 132.656 7.10554L135.973 4.22063C133.83 1.75656 130.355 0 125.602 0C119.833 0 116.011 2.74463 116.011 6.75178C116.011 10.4418 118.975 12.1679 122.717 12.8693L128.256 13.8878C130.325 14.3087 131.846 14.8393 131.846 16.4556C131.846 18.389 129.503 19.4076 126.387 19.4076C122.955 19.4076 119.644 17.9987 117.849 15.2906L114.769 18.4927C117.07 21.3044 121.281 22.9939 126.387 22.9939C132.157 22.9939 136.758 20.5664 136.758 16.2787C136.758 12.5521 134.031 10.7955 129.43 9.91116L129.412 9.91726ZM13.8893 14.2782C13.8893 17.3704 12.5626 19.2002 9.48314 19.2002C6.40368 19.2002 4.8396 17.2058 4.96741 13.961H0.00739743C-0.187351 19.554 3.47636 23 9.44054 23C14.8205 23 18.8372 20.048 18.8372 14.5587V0.420846H13.8833V14.2782H13.8893ZM61.0672 13.0827H72.1375V9.35615H61.0672V4.18405H75.7647V0.420861H56.2715V22.5792H76.1116V18.816H61.0672V13.0827ZM90.5778 0.420861L102.354 15.6139V0.420861H106.876V22.5792H102.549L89.5675 6.15408V22.5792H85.0822V0.420861H90.5778ZM193.119 0.420861V12.9059C193.119 16.9496 190.977 19.2368 187.076 19.2368C183.175 19.2368 181.075 16.9496 181.075 12.9059V0.420861H176.164V13.5036C176.164 19.9748 181.191 23 187.082 23C192.973 23 198 19.9748 198 13.5036V0.420861H193.125H193.119ZM155.849 19.2368C159.75 19.2368 161.892 16.9496 161.892 12.9059V0.420861H166.767V13.5036C166.767 19.9748 161.74 23 155.849 23C149.958 23 144.931 19.9748 144.931 13.5036V0.420861H149.842V12.9059C149.842 16.9496 151.948 19.2368 155.849 19.2368ZM30.37 11.3201C30.37 7.69716 33.3034 4.75736 36.9184 4.75736C40.5334 4.75736 43.4668 7.69716 43.4668 11.3201C43.4668 14.943 40.5334 17.8828 36.9184 17.8828C33.3034 17.8828 30.37 14.943 30.37 11.3201Z" fill="#ffffff"/> 3943</g> 3944</svg></div> 3945 3946 <div class="flex gap-32 md:gap-36 2xl:gap-48 text-white header-overlay-control-focusable md:pb-4"> 3947 <button 3948 type="button" 3949 class="nav-toggle flex items-center justify-center cursor-pointer" 3950 aria-label="Close language menu" 3951 aria-controls="navbar" 3952 :aria-expanded="langSwitcherIsOpen" 3953 x-on:click.throttle.700ms="langSwitcherIsOpen = false" 3954 > 3955 <svg class="w-20 h-20" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 3956<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 3957<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 3958</mask> 3959<g> 3960<path d="M6.06437 15.8768L4.625 14.4374L8.5625 10.4999L4.625 6.56242L6.06437 5.12305L10.0019 9.06055L13.9394 5.12305L15.3788 6.56242L11.4413 10.4999L15.3788 14.4374L13.9394 15.8768L10.0019 11.9393L6.06437 15.8768Z" fill="white"/> 3961</g> 3962</svg> </button> 3963 </div> 3964 </div> 3965 </div> 3966</div> 3967 3968 <div class="flex flex-col md:justify-center mt-128 mb-32 md:my-auto"> 3969 <div class="container px-18 md:px-24 mx-auto"> 3970 <ul class="flex flex-col items-center transition duration-500 gap-16 md:gap-20 2xl:gap-24" aria-label="Select language"> 3971 <li 3972 class="transition duration-500" 3973 x-bind:class="!langSwitcherIsOpenDelayShort ? 'opacity-0' : 'opacity-100'" 3974 x-bind:style="!langSwitcherIsOpenDelayShort 3975 ? { 'transition-delay': '20ms', transform: 'translateY(1.25rem)' } 3976 : { 'transition-delay': '20ms', transform: 'translateY(0)' }" 3977> 3978 <span 3979 class="group lang-menu-item nav-item nav-item-main flex items-center " 3980 > 3981 <a 3982 href="https://www.joensuu.fi/" 3983 lang="fi" 3984 class="!no-underline flex-1 font-display text-base 2xl:text-baseb very-low-text-3xl leading-normal transition-[background-size] duration-500 3985 text-menu group-hover:text-menu-hover focus-visible:text-menu-hover" 3986 >
3987 <span class="!w-auto">Suomi</span> 3988 </a> 3989 </span> 3990</li> 3991 <li 3992 class="transition duration-500" 3993 x-bind:class="!langSwitcherIsOpenDelayShort ? 'opacity-0' : 'opacity-100'" 3994 x-bind:style="!langSwitcherIsOpenDelayShort 3995 ? { 'transition-delay': '40ms', transform: 'translateY(1.25rem)' } 3996 : { 'transition-delay': '40ms', transform: 'translateY(0)' }" 3997> 3998 <span 3999 class="group lang-menu-item nav-item nav-item-main flex items-center nav-item-active" 4000 > 4001 <a 4002 href="https://www.joensuu.fi/en/" 4003 lang="en-US" 4004 class="!no-underline flex-1 font-display text-base 2xl:text-baseb very-low-text-3xl leading-normal transition-[background-size] duration-500 4005 text-menu-hover" 4006 aria-current="true" > 4007 <span class="!w-auto">English</span> 4008 </a> 4009 </span> 4010</li> 4011 </ul> 4012 </div> 4013 </div> 4014 </div> 4015</header> 4016 4017 <div class="bg-accent w-screen h-[4.5rem] sm:h-[1.5rem] md:hidden"></div> 4018 4019<style> 4020 [x-cloak] { 4021 display: none !important; 4022 } 4023</style> 4024 4025 <main 4026 id="main" 4027 class="relative overflow-x-hidden gradient-scroll" 4028 x-data="gradientScroll()" 4029 x-init="init()" 4030 x-bind:data-bg-index="currentIndex" 4031 > 4032 <div class="container px-18 md:px-24 mx-auto pt-72 md:pt-120 mb-48 md:mb-64 2xl:mb-80 relative z-5"> 4033 <section class="components-atoms-section -mt-[4.5rem] md:-mt-120 template-partial-hero-front-page front-page-hero-height break-out mobile-full-width"> 4034 <div class="container z-5 px-18 md:px-24 mx-auto h-full relative"> 4035 <div class="grid grid-cols-4 md:grid-cols-12 pt-48 md:pt-64 2xl:pt-80 w-full justify-between hero-content-container absolute bottom-40 sm:bottom-64 md:bottom-96 lg:bottom-120 xl:bottom-152 2xl:bottom-176 3xl:bottom-208 pr-32 lg:pr-0"> 4036 <div class="col-span-4 md:col-span-8 lg:col-span-5"> 4037 <h1 class="components-atoms-heading text-left text-4xl lg:text-6xl 2xl:text-7xl 3xl:text-8xl leading-snug font-fp-hero text-accent font-400 hyphens-auto lg:hyphens-none "> 4038 Easy to breathe 4039</h1> 4040 </div> 4041 </div> 4042 </div> 4043 4044 <div class="absolute inset-0 front-page-hero-height"> 4045 <div class="relative w-full h-full"> 4046 <div class="w-full h-full hero-mask-shape-front-page"> 4047 <svg class="hero-shape-svg" viewBox="0 0 1728 600" preserveAspectRatio="xMidYMax slice" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"> 4048 <path d="M-294.047 0C-92.1802 381.549 319.215 600 874.595 600C1401.3 600 1833.68 393.155 2042.04 0" stroke="currentColor" stroke-width="1" fill="none"/> 4049 </svg> 4050 </div> 4051 4052 <div class="w-full h-full hero-mask-front-page"> 4053 <img width="1648" height="927" src="https://www.joensuu.fi/app/uploads/2025/10/joensuu_kaupungitalo-scaled-1648x927.jpg" class="w-full !h-full absolute inset-0 object-cover object-right-bottom" alt="" loading="lazy" decoding="async" srcset="https://www.joensuu.fi/app/uploads/2025/10/joensuu_kaupungitalo-scaled-1648x927.jpg 1648w, https://www.joensuu.fi/app/uploads/2025/10/joensuu_kaupungitalo-scaled-600x338.jpg 600w, https://www.joensuu.fi/app/uploads/2025/10/joensuu_kaupungitalo-scaled-1024x576.jpg 1024w, https://www.joensuu.fi/app/uploads/2025/10/joensuu_kaupungitalo-scaled-800x450.jpg 800w, https://www.joensuu.fi/app/uploads/2025/10/joensuu_kaupungitalo-scaled-1536x864.jpg 1536w, https://www.joensuu.fi/app/uploads/2025/10/joensuu_kaupungitalo-scaled-2048x1152.jpg 2048w" sizes="auto, (max-width: 1648px) 100vw, 1648px" /> <span class="absolute inset-0 gradient-mask"></span> 4054 </div> 4055 </div> 4056 </div> 4057</section> 4058 4059 4060 4061<section class="components-atoms-section my-48 md:my-64 2xl:my-80 components-organisms-quick-links block-quick-links"> 4062 <div class="flex flex-col gap-48 md:gap-64 2xl:gap-80"> 4063 <div class="relative"> 4064 <div class="grid grid-cols-4 md:grid-cols-12 w-full md:grid-cols-12 sm:gap-32 md:gap-40 2xl:gap-56"> 4065 <div class="col-span-4 md:col-span-12"> 4066 <div class="flex flex-col gap-16 md:gap-20 2xl:gap-24"> 4067 <div class="flex flex-col-reverse gap-16 md:gap-20 2xl:gap-24"> 4068 <h2 class="components-atoms-heading text-left font-sans font-600 text-mdb md:text-xl 2xl:text-xxl leading-normal text-accent "> 4069 Shortcuts 4070</h2> 4071 </div> 4072 4073 <ul class="flex flex-row flex-wrap gap-16 md:gap-20 2xl:gap-24"> 4074 <li class="inline-flex"> 4075 <a 4076 href="https://www.joensuu.fi/en/everyday-services/" class="components-atoms-button text-baseb w-fit leading-snug relative perspective-0 !no-underline group rounded-full font-mono font-600 block overflow-hidden border-2 cursor-pointer transition duration-150 hover:bg-surface-button-hover p-8 bg-quick-link-button border-border-accent shadow-button-quick-link p-16 text-quick-link " 4077 > 4078 <span class="flex items-center gap-8 relative z-20">
4079 <span class="shrink-0"> 4080 <?xml version="1.0" encoding="UTF-8"?> 4081<svg class="inherit-color-fill w-20 h-20" role="img" alt="" aria-hidden="true" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"> 4082 <defs> 4083 <style> 4084 .cls-1 { 4085 fill: #0026e1; 4086 } 4087 </style> 4088 </defs> 4089 <path class="cls-1" d="M9.2,14.94h1.73v-5.88h-1.73v5.88ZM9.99,7.48c.28,0,.52-.09.71-.28.19-.19.28-.42.28-.69,0-.3-.09-.54-.28-.73-.19-.19-.43-.28-.71-.28s-.53.09-.71.28c-.19.19-.28.43-.28.72,0,.28.1.51.29.7.19.18.43.28.71.28ZM10,19.9c-1.37,0-2.66-.26-3.86-.77-1.2-.52-2.25-1.22-3.15-2.12-.9-.9-1.61-1.95-2.12-3.15-.52-1.2-.77-2.49-.77-3.86s.26-2.66.77-3.86c.52-1.2,1.22-2.25,2.12-3.14.9-.89,1.95-1.6,3.15-2.12C7.34.36,8.63.1,10,.1s2.66.26,3.87.78c1.2.52,2.25,1.22,3.14,2.12.89.89,1.6,1.94,2.12,3.14.52,1.2.78,2.49.78,3.87s-.26,2.66-.78,3.86c-.52,1.2-1.23,2.25-2.12,3.14-.89.9-1.94,1.6-3.14,2.12-1.2.52-2.49.78-3.86.78ZM10.01,18.01c2.22,0,4.11-.78,5.66-2.34,1.55-1.56,2.33-3.45,2.33-5.68,0-2.22-.78-4.11-2.33-5.66-1.55-1.55-3.45-2.33-5.68-2.33-2.22,0-4.1.78-5.66,2.33-1.56,1.55-2.34,3.45-2.34,5.68s.78,4.1,2.34,5.66c1.56,1.56,3.45,2.34,5.68,2.34Z"/> 4090</svg> </span> 4091 <span> 4092 Everyday services 4093 </span> 4094 4095 <span class="shrink-0 w-16 md:w-20 transform transition duration-300 group-hover:translate-x-3"> 4096 <svg class="inherit-color-fill w-full h-auto" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 4097<g> 4098<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 4099<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 4100</mask> 4101<g> 4102<path d="M10.0119 14.8768L8.57253 13.461L10.5127 11.5208H1.59961V9.47909H10.5127L8.57253 7.53888L10.0119 6.12305L14.4004 10.4999L10.0119 14.8768Z" fill="#0026E1"/> 4103</g> 4104</g> 4105</svg> </span> 4106 </span> 4107</a> 4108 </li> 4109 <li class="inline-flex"> 4110 <a 4111 href="https://www.joensuu.fi/en/leisure/" class="components-atoms-button text-baseb w-fit leading-snug relative perspective-0 !no-underline group rounded-full font-mono font-600 block overflow-hidden border-2 cursor-pointer transition duration-150 hover:bg-surface-button-hover p-8 bg-quick-link-button border-border-accent shadow-button-quick-link p-16 text-quick-link " 4112 > 4113 <span class="flex items-center gap-8 relative z-20"> 4114 <span class="shrink-0"> 4115 <?xml version="1.0" encoding="UTF-8"?> 4116<svg class="inherit-color-fill w-20 h-20" role="img" alt="" aria-hidden="true" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"> 4117 <defs> 4118 <style> 4119 .cls-1 { 4120 fill: #0026e1; 4121 } 4122 </style> 4123 </defs> 4124 <path class="cls-1" d="M9.2,14.94h1.73v-5.88h-1.73v5.88ZM9.99,7.48c.28,0,.52-.09.71-.28.19-.19.28-.42.28-.69,0-.3-.09-.54-.28-.73-.19-.19-.43-.28-.71-.28s-.53.09-.71.28c-.19.19-.28.43-.28.72,0,.28.1.51.29.7.19.18.43.28.71.28ZM10,19.9c-1.37,0-2.66-.26-3.86-.77-1.2-.52-2.25-1.22-3.15-2.12-.9-.9-1.61-1.95-2.12-3.15-.52-1.2-.77-2.49-.77-3.86s.26-2.66.77-3.86c.52-1.2,1.22-2.25,2.12-3.14.9-.89,1.95-1.6,3.15-2.12C7.34.36,8.63.1,10,.1s2.66.26,3.87.78c1.2.52,2.25,1.22,3.14,2.12.89.89,1.6,1.94,2.12,3.14.52,1.2.78,2.49.78,3.87s-.26,2.66-.78,3.86c-.52,1.2-1.23,2.25-2.12,3.14-.89.9-1.94,1.6-3.14,2.12-1.2.52-2.49.78-3.86.78ZM10.01,18.01c2.22,0,4.11-.78,5.66-2.34,1.55-1.56,2.33-3.45,2.33-5.68,0-2.22-.78-4.11-2.33-5.66-1.55-1.55-3.45-2.33-5.68-2.33-2.22,0-4.1.78-5.66,2.33-1.56,1.55-2.34,3.45-2.34,5.68s.78,4.1,2.34,5.66c1.56,1.56,3.45,2.34,5.68,2.34Z"/> 4125</svg> </span> 4126 <span> 4127 Leisure 4128 </span> 4129 4130 <span class="shrink-0 w-16 md:w-20 transform transition duration-300 group-hover:translate-x-3"> 4131 <svg class="inherit-color-fill w-full h-auto" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 4132<g> 4133<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 4134<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 4135</mask> 4136<g> 4137<path d="M10.0119 14.8768L8.57253 13.461L10.5127 11.5208H1.59961V9.47909H10.5127L8.57253 7.53888L10.0119 6.12305L14.4004 10.4999L10.0119 14.8768Z" fill="#0026E1"/> 4138</g> 4139</g> 4140</svg> </span> 4141 </span> 4142</a> 4143 </li> 4144 <li class="inline-flex"> 4145 <a 4146 href="https://www.joensuu.fi/en/businesses-and-communities/" class="components-atoms-button text-baseb w-fit leading-snug relative perspective-0 !no-underline group rounded-full font-mono font-600 block overflow-hidden border-2 cursor-pointer transition duration-150 hover:bg-surface-button-hover p-8 bg-quick-link-button border-border-accent shadow-button-quick-link p-16 text-quick-link " 4147 > 4148 <span class="flex items-center gap-8 relative z-20">
4149 <span class="shrink-0"> 4150 <?xml version="1.0" encoding="UTF-8"?> 4151<svg class="inherit-color-fill w-20 h-20" role="img" alt="" aria-hidden="true" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"> 4152 <defs> 4153 <style> 4154 .cls-1 { 4155 fill: #0026e1; 4156 } 4157 </style> 4158 </defs> 4159 <path class="cls-1" d="M9.2,14.94h1.73v-5.88h-1.73v5.88ZM9.99,7.48c.28,0,.52-.09.71-.28.19-.19.28-.42.28-.69,0-.3-.09-.54-.28-.73-.19-.19-.43-.28-.71-.28s-.53.09-.71.28c-.19.19-.28.43-.28.72,0,.28.1.51.29.7.19.18.43.28.71.28ZM10,19.9c-1.37,0-2.66-.26-3.86-.77-1.2-.52-2.25-1.22-3.15-2.12-.9-.9-1.61-1.95-2.12-3.15-.52-1.2-.77-2.49-.77-3.86s.26-2.66.77-3.86c.52-1.2,1.22-2.25,2.12-3.14.9-.89,1.95-1.6,3.15-2.12C7.34.36,8.63.1,10,.1s2.66.26,3.87.78c1.2.52,2.25,1.22,3.14,2.12.89.89,1.6,1.94,2.12,3.14.52,1.2.78,2.49.78,3.87s-.26,2.66-.78,3.86c-.52,1.2-1.23,2.25-2.12,3.14-.89.9-1.94,1.6-3.14,2.12-1.2.52-2.49.78-3.86.78ZM10.01,18.01c2.22,0,4.11-.78,5.66-2.34,1.55-1.56,2.33-3.45,2.33-5.68,0-2.22-.78-4.11-2.33-5.66-1.55-1.55-3.45-2.33-5.68-2.33-2.22,0-4.1.78-5.66,2.33-1.56,1.55-2.34,3.45-2.34,5.68s.78,4.1,2.34,5.66c1.56,1.56,3.45,2.34,5.68,2.34Z"/> 4160</svg> </span> 4161 <span> 4162 Businesses and communities 4163 </span> 4164 4165 <span class="shrink-0 w-16 md:w-20 transform transition duration-300 group-hover:translate-x-3"> 4166 <svg class="inherit-color-fill w-full h-auto" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 4167<g> 4168<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 4169<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 4170</mask> 4171<g> 4172<path d="M10.0119 14.8768L8.57253 13.461L10.5127 11.5208H1.59961V9.47909H10.5127L8.57253 7.53888L10.0119 6.12305L14.4004 10.4999L10.0119 14.8768Z" fill="#0026E1"/> 4173</g> 4174</g> 4175</svg> </span> 4176 </span> 4177</a> 4178 </li> 4179 <li class="inline-flex"> 4180 <a 4181 href="https://www.joensuu.fi/en/city-and-development/" class="components-atoms-button text-baseb w-fit leading-snug relative perspective-0 !no-underline group rounded-full font-mono font-600 block overflow-hidden border-2 cursor-pointer transition duration-150 hover:bg-surface-button-hover p-8 bg-quick-link-button border-border-accent shadow-button-quick-link p-16 text-quick-link " 4182 > 4183 <span class="flex items-center gap-8 relative z-20"> 4184 <span class="shrink-0"> 4185 <?xml version="1.0" encoding="UTF-8"?> 4186<svg class="inherit-color-fill w-20 h-20" role="img" alt="" aria-hidden="true" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"> 4187 <defs> 4188 <style> 4189 .cls-1 { 4190 fill: #0026e1; 4191 } 4192 </style> 4193 </defs> 4194 <path class="cls-1" d="M9.2,14.94h1.73v-5.88h-1.73v5.88ZM9.99,7.48c.28,0,.52-.09.71-.28.19-.19.28-.42.28-.69,0-.3-.09-.54-.28-.73-.19-.19-.43-.28-.71-.28s-.53.09-.71.28c-.19.19-.28.43-.28.72,0,.28.1.51.29.7.19.18.43.28.71.28ZM10,19.9c-1.37,0-2.66-.26-3.86-.77-1.2-.52-2.25-1.22-3.15-2.12-.9-.9-1.61-1.95-2.12-3.15-.52-1.2-.77-2.49-.77-3.86s.26-2.66.77-3.86c.52-1.2,1.22-2.25,2.12-3.14.9-.89,1.95-1.6,3.15-2.12C7.34.36,8.63.1,10,.1s2.66.26,3.87.78c1.2.52,2.25,1.22,3.14,2.12.89.89,1.6,1.94,2.12,3.14.52,1.2.78,2.49.78,3.87s-.26,2.66-.78,3.86c-.52,1.2-1.23,2.25-2.12,3.14-.89.9-1.94,1.6-3.14,2.12-1.2.52-2.49.78-3.86.78ZM10.01,18.01c2.22,0,4.11-.78,5.66-2.34,1.55-1.56,2.33-3.45,2.33-5.68,0-2.22-.78-4.11-2.33-5.66-1.55-1.55-3.45-2.33-5.68-2.33-2.22,0-4.1.78-5.66,2.33-1.56,1.55-2.34,3.45-2.34,5.68s.78,4.1,2.34,5.66c1.56,1.56,3.45,2.34,5.68,2.34Z"/> 4195</svg> </span> 4196 <span> 4197 City and development 4198 </span> 4199 4200 <span class="shrink-0 w-16 md:w-20 transform transition duration-300 group-hover:translate-x-3"> 4201 <svg class="inherit-color-fill w-full h-auto" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 4202<g> 4203<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 4204<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 4205</mask> 4206<g> 4207<path d="M10.0119 14.8768L8.57253 13.461L10.5127 11.5208H1.59961V9.47909H10.5127L8.57253 7.53888L10.0119 6.12305L14.4004 10.4999L10.0119 14.8768Z" fill="#0026E1"/> 4208</g> 4209</g> 4210</svg> </span> 4211 </span> 4212</a> 4213 </li> 4214 <li class="inline-flex"> 4215 <a 4216 href="https://www.joensuu.fi/en/governance-and-decision-making/" class="components-atoms-button text-baseb w-fit leading-snug relative perspective-0 !no-underline group rounded-full font-mono font-600 block overflow-hidden border-2 cursor-pointer transition duration-150 hover:bg-surface-button-hover p-8 bg-quick-link-button border-border-accent shadow-button-quick-link p-16 text-quick-link " 4217 > 4218 <span class="flex items-center gap-8 relative z-20">
4219 <span class="shrink-0"> 4220 <?xml version="1.0" encoding="UTF-8"?> 4221<svg class="inherit-color-fill w-20 h-20" role="img" alt="" aria-hidden="true" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"> 4222 <defs> 4223 <style> 4224 .cls-1 { 4225 fill: #0026e1; 4226 } 4227 </style> 4228 </defs> 4229 <path class="cls-1" d="M9.2,14.94h1.73v-5.88h-1.73v5.88ZM9.99,7.48c.28,0,.52-.09.71-.28.19-.19.28-.42.28-.69,0-.3-.09-.54-.28-.73-.19-.19-.43-.28-.71-.28s-.53.09-.71.28c-.19.19-.28.43-.28.72,0,.28.1.51.29.7.19.18.43.28.71.28ZM10,19.9c-1.37,0-2.66-.26-3.86-.77-1.2-.52-2.25-1.22-3.15-2.12-.9-.9-1.61-1.95-2.12-3.15-.52-1.2-.77-2.49-.77-3.86s.26-2.66.77-3.86c.52-1.2,1.22-2.25,2.12-3.14.9-.89,1.95-1.6,3.15-2.12C7.34.36,8.63.1,10,.1s2.66.26,3.87.78c1.2.52,2.25,1.22,3.14,2.12.89.89,1.6,1.94,2.12,3.14.52,1.2.78,2.49.78,3.87s-.26,2.66-.78,3.86c-.52,1.2-1.23,2.25-2.12,3.14-.89.9-1.94,1.6-3.14,2.12-1.2.52-2.49.78-3.86.78ZM10.01,18.01c2.22,0,4.11-.78,5.66-2.34,1.55-1.56,2.33-3.45,2.33-5.68,0-2.22-.78-4.11-2.33-5.66-1.55-1.55-3.45-2.33-5.68-2.33-2.22,0-4.1.78-5.66,2.33-1.56,1.55-2.34,3.45-2.34,5.68s.78,4.1,2.34,5.66c1.56,1.56,3.45,2.34,5.68,2.34Z"/> 4230</svg> </span> 4231 <span> 4232 Governance and decision-making 4233 </span> 4234 4235 <span class="shrink-0 w-16 md:w-20 transform transition duration-300 group-hover:translate-x-3"> 4236 <svg class="inherit-color-fill w-full h-auto" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 4237<g> 4238<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 4239<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 4240</mask> 4241<g> 4242<path d="M10.0119 14.8768L8.57253 13.461L10.5127 11.5208H1.59961V9.47909H10.5127L8.57253 7.53888L10.0119 6.12305L14.4004 10.4999L10.0119 14.8768Z" fill="#0026E1"/> 4243</g> 4244</g> 4245</svg> </span> 4246 </span> 4247</a> 4248 </li> 4249 </ul> 4250 </div> 4251 </div> 4252</div> </div> 4253 </div> 4254</section> 4255 4256 4257<section class="components-atoms-section my-48 md:my-64 2xl:my-80 components-organisms-content-cards-floating block-content-cards-floating wp-block-content-cards"> 4258 <a href="#skip-target-6ab4e60b92c65" class="sr-only focus:not-sr-only text-accent !mb-16 inline-block ">Skip featured content: In the spotlight</a> 4259 4260 <div class="flex flex-col gap-40 md:gap-48 2xl:gap-64"> 4261 <div class="relative"> 4262 <div class="grid grid-cols-4 md:grid-cols-12 w-full md:grid-cols-12 sm:gap-32 md:gap-40 2xl:gap-56"> 4263 <div class="col-span-4 md:col-span-12"> 4264 <div class="grid flex-col gap-48"> 4265 <div class="flex gap-32 justify-between items-center"> 4266 <h2 class="components-atoms-heading text-left font-display font-400 text-mdb md:text-xl 2xl:text-xxl leading-normal text-accent "> 4267 In the spotlight 4268</h2> 4269 </div> 4270 <ul class="grid grid-cols-12 w-full sm:gap-32 md:gap-40 2xl:gap-56 gap-y-48 md:gap-y-64 2xl:gap-y-80"> 4271 <li class="col-span-12 md:col-span-6 "> 4272 <div class="flex flex-col gap-16 md:gap-20 2xl:gap-24 relative"> 4273 <div class="flex flex-col gap-12 2xl:gap-16 order-2"> 4274 <span class="flex gap-6 items-center text-accent order-2"> 4275 <a href="https://www.joensuu.fi/en/latest/news/nominate-candidates-for-the-joensuu-day-awards/" class="link-mask text-accent inline-block leading-snug animated-underline-invert-accent-thick"> 4276 <h3 class="text-baseb 2xl:text-md font-display leading-snug"> 4277 <span> 4278 <span> 4279 Nominate candidates for the Joensuu Day Awards 4280 </span> 4281 </span> 4282 </h3> 4283 </a> 4284 4285 </span> 4286 4287 <span class="order-1"> 4288 </span> 4289 4290 <p class="text-sm 2xl:text-base text-black leading-relaxed order-3"> 4291 On Joensuu Day, Joensuu residents who have distinguished themselves in various ways are recognized and awarded. Submit your nomination by the end of September. 4292 </p> 4293 </div> 4294 <div class="rounded-sm sm:rounded-sm 2xl:rounded-base 3xl:rounded-base overflow-hidden aspect-[4/3] order-1"> 4295 <img decoding="async" width="800" height="600" src="https://www.joensuu.fi/app/uploads/2026/04/Joensuun-lippu-800x600.jpg" class="w-full h-full object-cover" alt="" loading="lazy" srcset="https://www.joensuu.fi/app/uploads/2026/04/Joensuun-lippu-800x600.jpg 800w, https://www.joensuu.fi/app/uploads/2026/04/Joensuun-lippu-600x450.jpg 600w, https://www.joensuu.fi/app/uploads/2026/04/Joensuun-lippu-1024x768.jpg 1024w, https://www.joensuu.fi/app/uploads/2026/04/Joensuun-lippu-1536x1151.jpg 1536w, https://www.joensuu.fi/app/uploads/2026/04/Joensuun-lippu-1648x1235.jpg 1648w, https://www.joensuu.fi/app/uploads/2026/04/Joensuun-lippu.jpg 2048w" sizes="auto, (max-width: 800px) 100v
4295w, 800px" /> </div> 4296 </div> 4297 </li> 4298 <li class="col-span-12 md:col-span-6 transform md:translate-y-160 2xl:translate-y-240"> 4299 <div class="flex flex-col gap-16 md:gap-20 2xl:gap-24 relative"> 4300 <div class="flex flex-col gap-12 2xl:gap-16 order-2"> 4301 <span class="flex gap-6 items-center text-accent order-2"> 4302 <a href="https://www.joensuu.fi/en/latest/news/free-bus-rides-and-bicycle-repairs-on-tuesday-22-september/" class="link-mask text-accent inline-block leading-snug animated-underline-invert-accent-thick"> 4303 <h3 class="text-baseb 2xl:text-md font-display leading-snug"> 4304 <span> 4305 <span> 4306 Leave the car at home and get around for free 4307 </span> 4308 </span> 4309 </h3> 4310 </a> 4311 4312 </span> 4313 4314 <span class="order-1"> 4315 </span> 4316 4317 <p class="text-sm 2xl:text-base text-black leading-relaxed order-3"> 4318 On 22 September, the final day of the European Mobility Week, bus travel is free of charge. During the day, you can also take advantage of a free bicycle service station. 4319 </p> 4320 </div> 4321 <div class="rounded-sm sm:rounded-sm 2xl:rounded-base 3xl:rounded-base overflow-hidden aspect-[4/3] order-1"> 4322 <img decoding="async" width="800" height="533" src="https://www.joensuu.fi/app/uploads/2026/05/jojo_kaasubussi2_040825-1-800x533.jpg" class="w-full h-full object-cover" alt="" loading="lazy" srcset="https://www.joensuu.fi/app/uploads/2026/05/jojo_kaasubussi2_040825-1-800x533.jpg 800w, https://www.joensuu.fi/app/uploads/2026/05/jojo_kaasubussi2_040825-1-600x400.jpg 600w, https://www.joensuu.fi/app/uploads/2026/05/jojo_kaasubussi2_040825-1-1024x683.jpg 1024w, https://www.joensuu.fi/app/uploads/2026/05/jojo_kaasubussi2_040825-1-1536x1024.jpg 1536w, https://www.joensuu.fi/app/uploads/2026/05/jojo_kaasubussi2_040825-1-1648x1098.jpg 1648w, https://www.joensuu.fi/app/uploads/2026/05/jojo_kaasubussi2_040825-1.jpg 2048w" sizes="auto, (max-width: 800px) 100vw, 800px" /> </div> 4323 </div> 4324 </li> 4325 <li class="col-span-12 md:col-span-6 "> 4326 <div class="flex flex-col gap-16 md:gap-20 2xl:gap-24 relative"> 4327 <div class="flex flex-col gap-12 2xl:gap-16 order-2"> 4328 <span class="flex gap-6 items-center text-accent order-2"> 4329 <a href="https://www.joensuu.fi/en/latest/news/suvantosilta-bridge-opens-on-28-august-ylisoutaja-bridge-closes-for-repairs-on-1-september/" class="link-mask text-accent inline-block leading-snug animated-underline-invert-accent-thick"> 4330 <h3 class="text-baseb 2xl:text-md font-display leading-snug"> 4331 <span> 4332 <span> 4333 Ylisoutaja bridge closes on 1 September 4334 </span> 4335 </span> 4336 </h3> 4337 </a> 4338 4339 </span> 4340 4341 <span class="order-1"> 4342 </span> 4343 4344 <p class="text-sm 2xl:text-base text-black leading-relaxed order-3"> 4345 The Ylisoutaja Bridge is under renovation until at least November 2026. The river can be crossed using other bridges, such as the Suvantosilta Bridge. 4346 </p> 4347 </div> 4348 <div class="rounded-sm sm:rounded-sm 2xl:rounded-base 3xl:rounded-base overflow-hidden aspect-[4/3] order-1"> 4349 <img decoding="async" width="800" height="534" src="https://www.joensuu.fi/app/uploads/2026/08/Joensuu-Syksy2025-Vaganza-32-800x534.jpg" class="w-full h-full object-cover" alt="" loading="lazy" srcset="https://www.joensuu.fi/app/uploads/2026/08/Joensuu-Syksy2025-Vaganza-32-800x534.jpg 800w, https://www.joensuu.fi/app/uploads/2026/08/Joensuu-Syksy2025-Vaganza-32-600x400.jpg 600w, https://www.joensuu.fi/app/uploads/2026/08/Joensuu-Syksy2025-Vaganza-32.jpg 1024w" sizes="auto, (max-width: 800px) 100vw, 800px" /> </div> 4350 </div> 4351 </li> 4352 </ul> 4353 </div> 4354 </div> 4355</div> </div> 4356 </div> 4357 4358 <div id="skip-target-6ab4e60b92c65" tabindex="-1" class="sr-only"> 4359 Section skipped. 4360 </div> 4361</section> 4362 4363 4364<section class="components-atoms-section my-48 md:my-64 2xl:my-80 components-organisms-news-list block-release-listing-list wp-block-release-listing text-accent break-out mobile-full-width"> 4365 <div class="container px-18 md:px-24 mx-auto"> 4366
4367 <a href="#skip-target-6ab4e60b9a4c5" class="sr-only focus:not-sr-only text-accent !mb-16 inline-block ">Skip list view: News</a> 4368 4369 <div class="flex flex-col gap-24 md:gap-28 2xl:gap-32"> 4370 <h2 class="components-atoms-heading text-left font-display font-400 text-mdb md:text-xl 2xl:text-xxl leading-normal text-accent "> 4371 News 4372</h2> 4373 <ul class="flex flex-col gap-16 md:gap-20 2xl:gap-24"> 4374 <li> 4375 <span class="max-w-fit flex relative flex-col font-sans gap-2 2xl:gap-4"> 4376 <span class="order-2"> 4377 <a href="https://www.joensuu.fi/en/latest/news/renovation-of-the-joensuu-art-museum-nearing-completion-museum-to-reopen-to-the-public-in-2027/" class="link-mask text-accent animated-underline-invert-accent !no-underline text-baseb 2xl:text-md"> 4378 <span> 4379 <span> 4380 Renovation of the Joensuu Art Museum nearing completion â museum to reopen to the public in 2027 4381 </span> 4382 </span> 4383 </a> 4384 </span> 4385 <span class="order-1"> 4386 <span class="text-xxs text-grey-700 flex gap-4 md:gap-6 2xl:gap-8 items-center flex-nowrap"> 4387 <span class="text-xxs md:text-xs 2xl:text-sm leading-normal font-700">Infrastructure</span> 4388 <span class="sr-only">, </span> 4389 <span class="w-10 h-2 bg-grey-700"></span> 4390 <span class="leading-normal">16.9.2026</span> 4391 </span> 4392 </span> 4393 </span> 4394 </li> 4395 <li> 4396 <span class="max-w-fit flex relative flex-col font-sans gap-2 2xl:gap-4"> 4397 <span class="order-2"> 4398 <a href="https://www.joensuu.fi/en/latest/news/free-bus-rides-and-bicycle-repairs-on-tuesday-22-september/" class="link-mask text-accent animated-underline-invert-accent !no-underline text-baseb 2xl:text-md"> 4399 <span> 4400 <span> 4401 Free bus rides and bicycle repairs on Tuesday, 22 September 4402 </span> 4403 </span> 4404 </a> 4405 </span> 4406 <span class="order-1"> 4407 <span class="text-xxs text-grey-700 flex gap-4 md:gap-6 2xl:gap-8 items-center flex-nowrap"> 4408 <span class="text-xxs md:text-xs 2xl:text-sm leading-normal font-700">Traffic</span> 4409 <span class="sr-only">, </span> 4410 <span class="w-10 h-2 bg-grey-700"></span> 4411 <span class="leading-normal">15.9.2026</span> 4412 </span> 4413 </span> 4414 </span> 4415 </li> 4416 <li> 4417 <span class="max-w-fit flex relative flex-col font-sans gap-2 2xl:gap-4"> 4418 <span class="order-2"> 4419 <a href="https://www.joensuu.fi/en/latest/news/joensuu-youth-council-is-looking-for-new-members-you-can-now-stand-for-election/" class="link-mask text-accent animated-underline-invert-accent !no-underline text-baseb 2xl:text-md"> 4420 <span> 4421 <span> 4422 Joensuu Youth Council is looking for new members â you can now stand for election 4423 </span> 4424 </span> 4425 </a> 4426 </span> 4427 <span class="order-1"> 4428 <span class="text-xxs text-grey-700 flex gap-4 md:gap-6 2xl:gap-8 items-center flex-nowrap"> 4429 <span class="text-xxs md:text-xs 2xl:text-sm leading-normal font-700">Youth</span> 4430 <span class="sr-only">, </span> 4431 <span class="w-10 h-2 bg-grey-700"></span> 4432 <span class="leading-normal">14.9.2026</span> 4433 </span> 4434 </span> 4435 </span> 4436 </li> 4437 <li> 4438 <span class="max-w-fit flex relative flex-col font-sans gap-2 2xl:gap-4"> 4439 <span class="order-2"> 4440 <a href="https://www.joensuu.fi/en/latest/news/new-students-looking-for-furniture-and-household-items-kiertamo-seeks-donations/" class="link-mask text-accent animated-underline-invert-accent !no-underline text-baseb 2xl:text-md"> 4441 <span> 4442 <span> 4443 New students looking for furniture and household items â Kiertämö seeks donations 4444 </span> 4445 </span> 4446 </a> 4447 </span> 4448 <span class="order-1"> 4449 <span class="text-xxs text-grey-700 flex gap-4 md:gap-6 2xl:gap-8 items-center flex-nowrap">
4450 <span class="text-xxs md:text-xs 2xl:text-sm leading-normal font-700">Housing</span> 4451 <span class="sr-only">, </span> 4452 <span class="w-10 h-2 bg-grey-700"></span> 4453 <span class="leading-normal">10.9.2026</span> 4454 </span> 4455 </span> 4456 </span> 4457 </li> 4458 <li> 4459 <span class="max-w-fit flex relative flex-col font-sans gap-2 2xl:gap-4"> 4460 <span class="order-2"> 4461 <a href="https://www.joensuu.fi/en/latest/news/city-of-joensuu-accepts-pkos-proposal-for-a-music-and-cultural-hall/" class="link-mask text-accent animated-underline-invert-accent !no-underline text-baseb 2xl:text-md"> 4462 <span> 4463 <span> 4464 City of Joensuu accepts PKOâs proposal for a music and cultural hall 4465 </span> 4466 </span> 4467 </a> 4468 </span> 4469 <span class="order-1"> 4470 <span class="text-xxs text-grey-700 flex gap-4 md:gap-6 2xl:gap-8 items-center flex-nowrap"> 4471 <span class="text-xxs md:text-xs 2xl:text-sm leading-normal font-700">Regional vitality</span> 4472 <span class="sr-only">, </span> 4473 <span class="w-10 h-2 bg-grey-700"></span> 4474 <span class="leading-normal">9.9.2026</span> 4475 </span> 4476 </span> 4477 </span> 4478 </li> 4479 <li> 4480 <span class="max-w-fit flex relative flex-col font-sans gap-2 2xl:gap-4"> 4481 <span class="order-2"> 4482 <a href="https://www.joensuu.fi/en/latest/news/delicate-and-nuanced-river-serenade-opens-the-city-orchestras-concert-season/" class="link-mask text-accent animated-underline-invert-accent !no-underline text-baseb 2xl:text-md"> 4483 <span> 4484 <span> 4485 Delicate and Nuanced River Serenade Opens the City Orchestra’s Concert Season 4486 </span> 4487 </span> 4488 </a> 4489 </span> 4490 <span class="order-1"> 4491 <span class="text-xxs text-grey-700 flex gap-4 md:gap-6 2xl:gap-8 items-center flex-nowrap"> 4492 <span class="text-xxs md:text-xs 2xl:text-sm leading-normal font-700">Events</span> 4493 <span class="sr-only">, </span> 4494 <span class="w-10 h-2 bg-grey-700"></span> 4495 <span class="leading-normal">7.9.2026</span> 4496 </span> 4497 </span> 4498 </span> 4499 </li> 4500 </ul> 4501 <div class="flex"> 4502 <a 4503 href="https://www.joensuu.fi/en/latest/news/" class="components-atoms-button text-base 2xl:text-baseb w-fit leading-snug relative perspective-0 !no-underline group rounded-full font-mono font-600 block overflow-hidden border-2 cursor-pointer transition duration-150 hover:bg-surface-button-hover p-8 bg-surface-button border-border-accent shadow-button-main-complement md:py-12 md:px-24 text-button " 4504 aria-label="Show all news" > 4505 <span class="flex items-center gap-8 relative z-20"> 4506 <span> 4507 Show all 4508 </span> 4509 4510 <span class="shrink-0 w-16 md:w-20 transform transition duration-300 group-hover:translate-x-3"> 4511 <svg class="inherit-color-fill w-full h-auto" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 4512<g> 4513<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 4514<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 4515</mask> 4516<g> 4517<path d="M10.0119 14.8768L8.57253 13.461L10.5127 11.5208H1.59961V9.47909H10.5127L8.57253 7.53888L10.0119 6.12305L14.4004 10.4999L10.0119 14.8768Z" fill="#0026E1"/> 4518</g> 4519</g> 4520</svg> </span> 4521 </span> 4522</a> 4523 </div> 4524 4525 <div> 4526 <div class="w-80 md:w-128"> 4527 <svg xmlns="http://www.w3.org/2000/svg" width="123" height="13" viewBox="0 0 123 13" fill="none" role="img" alt="" class="max-w-full" aria-hidden="true"> 4528 <path fill-rule="evenodd" clip-rule="evenodd" d="M22.965 0.510283C19.4097 0.510283 16.5365 3.19411 16.5365 6.50518C16.5365 9.81626 19.42 12.5001 22.965 12.5001C26.51 12.5001 29.3936 9.82654 29.3936 6.51546C29.3936 3.19411 26.51 0.5 22.965 0.5V0.510283ZM4.01526 2.76243C1.79555 2.76503 0 4.44014 0 6.51567C0 8.5928 1.79834 10.2586 4.02043 10.2586C6.23218 10.2586 8.03052 8.58252 8.03052 6.51567C8.03052 4.44014 6.23497 2.76503 4.01526 2.76243ZM4.01526 2.76243L4.01009 2.76243H4.02043L4.01526 2.76243ZM37.8994 6.50538C37.8994 4.30485 39.8114 2.51564 42.1782 2.51564V2.50536C44.545 2.50536 46.457 4.29457 46.457 6.51567C46.457 8.71619 44.5347 10.4951 42.1782 10.4951C39.8114 10.4951 37.8994 8.70591 37.8994 6.50538ZM61.3866 0.510044C57.8337 0.512647 54.9632 3.19547 54.9632 6.50494C54.9632 9.81602 57.8468 12.4998 61.3918 12.4998C64.9368 12.4998 67.81 9.81602 67.81 6.51522C67.81 3.19548 64.9292 0.512647 61.3866 0.510044ZM61.3866 0.510044L61.3918
45280.510042H61.3814L61.3866 0.510044ZM76.3262 6.50538C76.3262 4.30485 78.2382 2.51564 80.605 2.51564V2.50536C82.9718 2.50536 84.8838 4.29457 84.8838 6.51567C84.8838 8.71619 82.9614 10.4951 80.605 10.4951C78.2382 10.4951 76.3262 8.70591 76.3262 6.50538ZM99.8181 0.510283C96.2627 0.510283 93.3895 3.19411 93.3895 6.50518C93.3895 9.81626 96.273 12.5001 99.8181 12.5001C103.363 12.5001 106.247 9.82654 106.247 6.51546C106.247 3.19411 103.363 0.5 99.8181 0.5V0.510283ZM114.752 6.50502C114.752 4.38675 116.592 2.65924 118.876 2.65924V2.64895C121.15 2.64895 123 4.37647 123 6.5153C123 8.63357 121.15 10.3508 118.876 10.3508C116.602 10.3508 114.752 8.62329 114.752 6.50502Z" fill="var(--color-main-primary)"/> 4529 </svg> 4530</div> 4531 </div> 4532 </div> 4533 </div> 4534 4535 <div id="skip-target-6ab4e60b9a4c5" tabindex="-1" class="sr-only"> 4536 Section skipped. 4537 </div> 4538</section> 4539 4540 4541<section class="components-atoms-section my-40 md:my-48 2xl:my-64 components-organisms-image-banner block-image-banner wp-block-image-banner break-out mobile-full-width"> 4542 <div class="container px-18 md:px-24 mx-auto"> 4543 <div class="flex flex-col gap-48 md:gap-64 2xl:gap-80"> 4544 <div class="flex flex-col 2xl:grid 2xl:grid-cols-12 sm:gap-32 md:gap-40 2xl:gap-56 w-full justify-between relative"> 4545 4546 4547 <div class="col-span-4 md:col-span-7 md:col-start-6 rounded-sm sm:rounded-sm 2xl:rounded-base 3xl:rounded-base overflow-hidden block 2xl:hidden mb-[1.75rem] sm:mb-0"> 4548 <div class="relative w-full h-full overflow-hidden "> 4549 <div class="w-full aspect-[3/2]"> 4550 <img decoding="async" width="1024" height="606" src="https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-1024x606.jpg" class="w-full !h-full absolute inset-0 object-cover" alt="" loading="lazy" srcset="https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-1024x606.jpg 1024w, https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-600x355.jpg 600w, https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-800x473.jpg 800w, https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-1536x909.jpg 1536w, https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-2048x1212.jpg 2048w, https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-1648x975.jpg 1648w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /> </div> 4551 </div> 4552 </div> 4553 4554 4555 4556 4557 <div class="flex flex-col col-span-4 md:col-span-5 "> 4558 <div class="flex flex-col mt-auto gap-40 md:gap-48 2xl:gap-64"> 4559 <div class="flex flex-col gap-24 md:gap-28 2xl:gap-32"> 4560 <div class="flex flex-col-reverse gap-16 md:gap-20 2xl:gap-24"> 4561 <h2 class="components-atoms-heading text-left font-display font-400 text-mdb md:text-xl 2xl:text-xxl leading-normal text-accent "> 4562 Move to Joensuu 4563</h2> 4564 </div> 4565 4566 <p class="text-base 2xl:text-baseb leading-normal capsize"> 4567 Joensuu is a growing university city where you can truly breathe easy. In our 15-minute city, you wonât waste time in traffic jams, ski trails start right outside your window, and schools and daycare centers are full of dedicated adults. So stop spinning your wheels and move to Joensuu! 4568 </p> 4569 4570 <div class="flex flex-row md:flex-col xl:flex-row flex-wrap gap-16 md:gap-20 2xl:gap-24"> 4571 <div class="flex"> 4572 <a 4573 href="https://www.joensuu.fi/en/city-and-development/our-joensuu/move-to-joensuu/" class="components-atoms-button text-base 2xl:text-baseb w-fit leading-snug relative perspective-0 !no-underline group rounded-full font-mono font-600 block overflow-hidden border-2 cursor-pointer transition duration-150 hover:bg-surface-button-hover p-8 bg-surface-button border-border-accent shadow-button-main-complement md:py-12 md:px-24 text-button " 4574 > 4575 <span class="flex items-center gap-8 relative z-20">
4576 <span> 4577 Make Joensuu your home 4578 </span> 4579 4580 <span class="shrink-0 w-16 md:w-20 transform transition duration-300 group-hover:translate-x-3"> 4581 <svg class="inherit-color-fill w-full h-auto" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 4582<g> 4583<mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 4584<rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 4585</mask> 4586<g> 4587<path d="M10.0119 14.8768L8.57253 13.461L10.5127 11.5208H1.59961V9.47909H10.5127L8.57253 7.53888L10.0119 6.12305L14.4004 10.4999L10.0119 14.8768Z" fill="#0026E1"/> 4588</g> 4589</g> 4590</svg> </span> 4591 </span> 4592</a> 4593 </div> 4594 </div> 4595 </div> 4596 4597 <div class="p-8 w-[5rem] md:w-[8rem]"> 4598 <div class="w-80 md:w-128"> 4599 <svg xmlns="http://www.w3.org/2000/svg" width="123" height="13" viewBox="0 0 123 13" fill="none" role="img" alt="" class="max-w-full" aria-hidden="true"> 4600 <path fill-rule="evenodd" clip-rule="evenodd" d="M22.965 0.510283C19.4097 0.510283 16.5365 3.19411 16.5365 6.50518C16.5365 9.81626 19.42 12.5001 22.965 12.5001C26.51 12.5001 29.3936 9.82654 29.3936 6.51546C29.3936 3.19411 26.51 0.5 22.965 0.5V0.510283ZM4.01526 2.76243C1.79555 2.76503 0 4.44014 0 6.51567C0 8.5928 1.79834 10.2586 4.02043 10.2586C6.23218 10.2586 8.03052 8.58252 8.03052 6.51567C8.03052 4.44014 6.23497 2.76503 4.01526 2.76243ZM4.01526 2.76243L4.01009 2.76243H4.02043L4.01526 2.76243ZM37.8994 6.50538C37.8994 4.30485 39.8114 2.51564 42.1782 2.51564V2.50536C44.545 2.50536 46.457 4.29457 46.457 6.51567C46.457 8.71619 44.5347 10.4951 42.1782 10.4951C39.8114 10.4951 37.8994 8.70591 37.8994 6.50538ZM61.3866 0.510044C57.8337 0.512647 54.9632 3.19547 54.9632 6.50494C54.9632 9.81602 57.8468 12.4998 61.3918 12.4998C64.9368 12.4998 67.81 9.81602 67.81 6.51522C67.81 3.19548 64.9292 0.512647 61.3866 0.510044ZM61.3866 0.510044L61.3918 0.510042H61.3814L61.3866 0.510044ZM76.3262 6.50538C76.3262 4.30485 78.2382 2.51564 80.605 2.51564V2.50536C82.9718 2.50536 84.8838 4.29457 84.8838 6.51567C84.8838 8.71619 82.9614 10.4951 80.605 10.4951C78.2382 10.4951 76.3262 8.70591 76.3262 6.50538ZM99.8181 0.510283C96.2627 0.510283 93.3895 3.19411 93.3895 6.50518C93.3895 9.81626 96.273 12.5001 99.8181 12.5001C103.363 12.5001 106.247 9.82654 106.247 6.51546C106.247 3.19411 103.363 0.5 99.8181 0.5V0.510283ZM114.752 6.50502C114.752 4.38675 116.592 2.65924 118.876 2.65924V2.64895C121.15 2.64895 123 4.37647 123 6.5153C123 8.63357 121.15 10.3508 118.876 10.3508C116.602 10.3508 114.752 8.62329 114.752 6.50502Z" fill="var(--color-main-primary)"/> 4601 </svg> 4602</div> 4603 </div> 4604 4605 </div> 4606 </div> 4607 4608 4609 <div class="col-span-4 md:col-span-7 md:col-start-6 rounded-sm sm:rounded-sm 2xl:rounded-base 3xl:rounded-base overflow-hidden hidden 2xl:!block"> 4610 <div class="relative w-full h-full overflow-hidden "> 4611 <div class="w-full aspect-[3/2]"> 4612 <img decoding="async" width="1024" height="606" src="https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-1024x606.jpg" class="w-full !h-full absolute inset-0 object-cover" alt="" loading="lazy" srcset="https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-1024x606.jpg 1024w, https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-600x355.jpg 600w, https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-800x473.jpg 800w, https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-1536x909.jpg 1536w, https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-2048x1212.jpg 2048w, https://www.joensuu.fi/app/uploads/2025/10/joensuun-kaupunki_kesa_2022-10_samuli-kuittinen-3-scaled-1648x975.jpg 1648w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /> </div> 4613 </div> 4614 </div> 4615 4616 </div> 4617 4618 </div> 4619 </div> 4620</section> 4621 4622 4623<section class="components-atoms-section my-48 md:my-64 2xl:my-80 components-organisms-content-cards-grid block-post-listing-grid wp-block-post-listing">
4624 <a href="#skip-target-6ab4e60b9c89e" class="sr-only focus:not-sr-only text-accent !mb-16 inline-block ">Skip featured content: Articles</a> 4625 4626 <div class="flex flex-col gap-40 md:gap-48 2xl:gap-64"> 4627 <div class="grid grid-cols-4 md:grid-cols-12 w-full md:grid-cols-12 sm:gap-32 md:gap-40 2xl:gap-56"> 4628 <div class="col-span-4 md:col-span-12"> 4629 <div class="flex flex-col gap-32"> 4630 <div class="flex gap-32 justify-between items-center"> 4631 <h2 class="components-atoms-heading text-left font-display font-400 text-mdb md:text-xl 2xl:text-xxl leading-normal text-accent "> 4632 Articles 4633</h2> 4634 <div class="hidden lg:block"> 4635 <a href="https://www.joensuu.fi/en/latest/articles/" aria-label="Show all articles" class="px-6 -mx-6 py-11 -my-11 flex items-center gap-2 2xl:gap-4 group text-left !no-underline text-button animated-underline-invert-accent"> 4636 <span class="text-base 2xl:text-baseb font-mono font-600 leading-snug"> 4637 <span>Show all</span> 4638 </span> 4639 <span class="w-20 shrink-0 transform -translate-y-1"> 4640 <svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none"> 4641 <mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 4642 <rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 4643 </mask> 4644 <g> 4645 <path d="M10.5 10.4999L6.5625 6.56242L8.00187 5.12305L13.3788 10.4999L8.00187 15.8768L6.5625 14.4374L10.5 10.4999Z" fill="#0026E1"/> 4646 </g> 4647</svg> </span> 4648 </a> 4649 </div> 4650 </div> 4651 <ul class="grid grid-cols-4 md:grid-cols-12 w-full gap-x-36 md:gap-x-40 2xl:gap-x-56 gap-y-24 md:gap-y-28 2xl:gap-y-32"> 4652 <li class="col-span-4 md:col-span-4"> 4653 <div class="flex flex-col gap-12 2xl:gap-16 relative"> 4654 <div class="flex flex-col gap-2 2xl:gap-4 order-2"> 4655 <span class="flex gap-6 items-center text-accent order-2"> 4656 <a href="https://www.joensuu.fi/en/latest/articles/light-art-from-joensuu-connected-cities-science-and-businesses-in-australia/" class="link-mask text-accent inline-block leading-snug animated-underline-invert-accent"> 4657 <h3 class="text-md 2xl:text-mdb leading-comfy"> 4658 <span> 4659 <span> 4660 Light Art from Joensuu Connected Cities, Science, and Businesses in Australia 4661 </span> 4662 </span> 4663 </h3> 4664 </a> 4665 4666 </span> 4667 4668 <span class="order-1"> 4669 <span class="text-xxs text-grey-700 flex gap-4 md:gap-6 2xl:gap-8 items-center flex-nowrap"> 4670 <span class="text-xxs md:text-xs 2xl:text-sm leading-normal font-700">Photonics</span> 4671 <span class="sr-only">, </span> 4672 <span class="w-10 h-2 bg-grey-700"></span> 4673 <span class="leading-normal">22.4.2026</span> 4674 </span> 4675 </span> 4676 4677 <p class="text-sm 2xl:text-base text-black leading-relaxed order-3"> 4678 Partnerships can be found across many different fields 4679 </p> 4680 </div> 4681 <div class="rounded-sm sm:rounded-sm 2xl:rounded-base 3xl:rounded-base overflow-hidden aspect-[4/3] order-1"> 4682 <img decoding="async" width="600" height="348" src="https://www.joensuu.fi/app/uploads/2026/04/valoteos_kuva-600x348.jpg" class="w-full h-full object-cover" alt="" loading="lazy" srcset="https://www.joensuu.fi/app/uploads/2026/04/valoteos_kuva-600x348.jpg 600w, https://www.joensuu.fi/app/uploads/2026/04/valoteos_kuva-1024x593.jpg 1024w, https://www.joensuu.fi/app/uploads/2026/04/valoteos_kuva-800x463.jpg 800w, https://www.joensuu.fi/app/uploads/2026/04/valoteos_kuva-1536x890.jpg 1536w, https://www.joensuu.fi/app/uploads/2026/04/valoteos_kuva-2048x1187.jpg 2048w, https://www.joensuu.fi/app/uploads/2026/04/valoteos_kuva-1648x955.jpg 1648w" sizes="auto, (max-width: 600px) 100vw, 600px" /> </div> 4683 </div> 4684 </li> 4685 <li class="col-span-4 md:col-span-4"> 4686 <div class="flex flex-col gap-12 2xl:gap-16 relative"> 4687 <div class="flex flex-col gap-2 2xl:gap-4 order-2">
4688 <span class="flex gap-6 items-center text-accent order-2"> 4689 <a href="https://www.joensuu.fi/en/latest/articles/school-dogs-bring-joy-and-support-to-lessons/" class="link-mask text-accent inline-block leading-snug animated-underline-invert-accent"> 4690 <h3 class="text-md 2xl:text-mdb leading-comfy"> 4691 <span> 4692 <span> 4693 School dogs bring joy and support to lessons 4694 </span> 4695 </span> 4696 </h3> 4697 </a> 4698 4699 </span> 4700 4701 <span class="order-1"> 4702 <span class="text-xxs text-grey-700 flex gap-4 md:gap-6 2xl:gap-8 items-center flex-nowrap"> 4703 <span class="text-xxs md:text-xs 2xl:text-sm leading-normal font-700">Schools</span> 4704 <span class="sr-only">, </span> 4705 <span class="w-10 h-2 bg-grey-700"></span> 4706 <span class="leading-normal">19.3.2025</span> 4707 </span> 4708 </span> 4709 4710 <p class="text-sm 2xl:text-base text-black leading-relaxed order-3"> 4711 School dogs are involved in the school environment to support learning 4712 </p> 4713 </div> 4714 <div class="rounded-sm sm:rounded-sm 2xl:rounded-base 3xl:rounded-base overflow-hidden aspect-[4/3] order-1"> 4715 <img decoding="async" width="600" height="339" src="https://www.joensuu.fi/app/uploads/2025/11/Herokuva-3-e1742301660919-600x339.jpg" class="w-full h-full object-cover" alt="" loading="lazy" srcset="https://www.joensuu.fi/app/uploads/2025/11/Herokuva-3-e1742301660919-600x339.jpg 600w, https://www.joensuu.fi/app/uploads/2025/11/Herokuva-3-e1742301660919-1024x578.jpg 1024w, https://www.joensuu.fi/app/uploads/2025/11/Herokuva-3-e1742301660919-800x452.jpg 800w, https://www.joensuu.fi/app/uploads/2025/11/Herokuva-3-e1742301660919-1536x867.jpg 1536w, https://www.joensuu.fi/app/uploads/2025/11/Herokuva-3-e1742301660919-1648x930.jpg 1648w, https://www.joensuu.fi/app/uploads/2025/11/Herokuva-3-e1742301660919.jpg 1718w" sizes="auto, (max-width: 600px) 100vw, 600px" /> </div> 4716 </div> 4717 </li> 4718 <li class="col-span-4 md:col-span-4"> 4719 <div class="flex flex-col gap-12 2xl:gap-16 relative"> 4720 <div class="flex flex-col gap-2 2xl:gap-4 order-2"> 4721 <span class="flex gap-6 items-center text-accent order-2"> 4722 <a href="https://www.joensuu.fi/en/latest/articles/the-presidents-award-boosts-forest-joensuu-to-international-success/" class="link-mask text-accent inline-block leading-snug animated-underline-invert-accent"> 4723 <h3 class="text-md 2xl:text-mdb leading-comfy"> 4724 <span> 4725 <span> 4726 The Presidentâs award boosts Forest Joensuu to international success 4727 </span> 4728 </span> 4729 </h3> 4730 </a> 4731 4732 </span> 4733 4734 <span class="order-1"> 4735 <span class="text-xxs text-grey-700 flex gap-4 md:gap-6 2xl:gap-8 items-center flex-nowrap"> 4736 <span class="text-xxs md:text-xs 2xl:text-sm leading-normal font-700">Forest Joensuu</span> 4737 <span class="sr-only">, </span> 4738 <span class="w-10 h-2 bg-grey-700"></span> 4739 <span class="leading-normal">18.2.2025</span> 4740 </span> 4741 </span> 4742 4743 <p class="text-sm 2xl:text-base text-black leading-relaxed order-3"> 4744 Forest Joensuu carries out significant international collaboration 4745 </p> 4746 </div> 4747 <div class="rounded-sm sm:rounded-sm 2xl:rounded-base 3xl:rounded-base overflow-hidden aspect-[4/3] order-1"> 4748 <img decoding="async" width="600" height="400" src="https://www.joensuu.fi/app/uploads/2025/11/herokuva-scaled-1-600x400.jpg" class="w-full h-full object-cover" alt="" loading="lazy" srcset="https://www.joensuu.fi/app/uploads/2025/11/herokuva-scaled-1-600x400.jpg 600w, https://www.joensuu.fi/app/uploads/2025/11/herokuva-scaled-1-1024x682.jpg 1024w, https://www.joensuu.fi/app/uploads/2025/11/herokuva-scaled-1-800x533.jpg 800w, https://www.joensuu.fi/app/uploads/2025/11/herokuva-scaled-1-1536x1023.jpg 1536w, https://www.joensuu.fi/app/uploads/2025/11/herokuva-scaled-1-2048x1364.jpg 2048w, https://www.joensuu.fi/app/uploads/2025/11/herokuva-scaled-1-1648x1098.jpg 1648w" sizes="auto, (max-width: 600px) 100v
4748w, 600px" /> </div> 4749 </div> 4750 </li> 4751 </ul> 4752 </div> 4753 </div> 4754</div> <div class="lg:hidden"> 4755 <a href="https://www.joensuu.fi/en/latest/articles/" aria-label="Show all articles" class="px-6 -mx-6 py-11 -my-11 flex items-center gap-2 2xl:gap-4 group text-left !no-underline text-button animated-underline-invert-accent"> 4756 <span class="text-base 2xl:text-baseb font-mono font-600 leading-snug"> 4757 <span>Show all</span> 4758 </span> 4759 <span class="w-20 shrink-0 transform -translate-y-1"> 4760 <svg class="w-full h-auto inherit-color-fill" role="img" alt="" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none"> 4761 <mask style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="21"> 4762 <rect y="0.5" width="20" height="20" fill="#D9D9D9"/> 4763 </mask> 4764 <g> 4765 <path d="M10.5 10.4999L6.5625 6.56242L8.00187 5.12305L13.3788 10.4999L8.00187 15.8768L6.5625 14.4374L10.5 10.4999Z" fill="#0026E1"/> 4766 </g> 4767</svg> </span> 4768 </a> 4769 </div> 4770 4771 <div> 4772 <div class="w-80 md:w-128"> 4773 <svg xmlns="http://www.w3.org/2000/svg" width="123" height="13" viewBox="0 0 123 13" fill="none" role="img" alt="" class="max-w-full" aria-hidden="true"> 4774 <path fill-rule="evenodd" clip-rule="evenodd" d="M22.965 0.510283C19.4097 0.510283 16.5365 3.19411 16.5365 6.50518C16.5365 9.81626 19.42 12.5001 22.965 12.5001C26.51 12.5001 29.3936 9.82654 29.3936 6.51546C29.3936 3.19411 26.51 0.5 22.965 0.5V0.510283ZM4.01526 2.76243C1.79555 2.76503 0 4.44014 0 6.51567C0 8.5928 1.79834 10.2586 4.02043 10.2586C6.23218 10.2586 8.03052 8.58252 8.03052 6.51567C8.03052 4.44014 6.23497 2.76503 4.01526 2.76243ZM4.01526 2.76243L4.01009 2.76243H4.02043L4.01526 2.76243ZM37.8994 6.50538C37.8994 4.30485 39.8114 2.51564 42.1782 2.51564V2.50536C44.545 2.50536 46.457 4.29457 46.457 6.51567C46.457 8.71619 44.5347 10.4951 42.1782 10.4951C39.8114 10.4951 37.8994 8.70591 37.8994 6.50538ZM61.3866 0.510044C57.8337 0.512647 54.9632 3.19547 54.9632 6.50494C54.9632 9.81602 57.8468 12.4998 61.3918 12.4998C64.9368 12.4998 67.81 9.81602 67.81 6.51522C67.81 3.19548 64.9292 0.512647 61.3866 0.510044ZM61.3866 0.510044L61.3918 0.510042H61.3814L61.3866 0.510044ZM76.3262 6.50538C76.3262 4.30485 78.2382 2.51564 80.605 2.51564V2.50536C82.9718 2.50536 84.8838 4.29457 84.8838 6.51567C84.8838 8.71619 82.9614 10.4951 80.605 10.4951C78.2382 10.4951 76.3262 8.70591 76.3262 6.50538ZM99.8181 0.510283C96.2627 0.510283 93.3895 3.19411 93.3895 6.50518C93.3895 9.81626 96.273 12.5001 99.8181 12.5001C103.363 12.5001 106.247 9.82654 106.247 6.51546C106.247 3.19411 103.363 0.5 99.8181 0.5V0.510283ZM114.752 6.50502C114.752 4.38675 116.592 2.65924 118.876 2.65924V2.64895C121.15 2.64895 123 4.37647 123 6.5153C123 8.63357 121.15 10.3508 118.876 10.3508C116.602 10.3508 114.752 8.62329 114.752 6.50502Z" fill="var(--color-main-primary)"/> 4775 </svg> 4776</div> 4777 </div> 4778 </div> 4779 4780 <div id="skip-target-6ab4e60b9c89e" tabindex="-1" class="sr-only"> 4781 Section skipped. 4782 </div> 4783</section> 4784 </div> 4785 4786 </main> 4787 4788 <footer class="site-footer white-focus text-xxs md:text-xs 2xl:text-sm bg-header-footer text-white relative pt-72 md:pt-96 2xl:pt-144 pb-28 md:pb-32 2xl:pb-40"> 4789 <div class="container px-18 md:px-24 mx-auto"> 4790 <div class="flex flex-col gap-40 md:gap-48 2xl:gap-64"> 4791 <svg class="w-full h-auto max-w-[21.6rem]" role="img" alt="" aria-hidden="true" width="198" height="23" viewBox="0 0 198 23" fill="none" xmlns="http://www.w3.org/2000/svg"> 4792<g> 4793<path fill-rule="evenodd" clip-rule="evenodd" d="M129.412 9.91726L124.306 8.93529C122.358 8.54494 120.916 8.05701 120.916 6.47122C120.916 4.64147 122.863 3.58631 125.596 3.58631C129.065 3.58631 131.365 5.09891 132.656 7.10554L135.973 4.22063C133.83 1.75656 130.355 0 125.602 0C119.833 0 116.011 2.74463 116.011 6.75178C116.011 10.4418 118.975 12.1679 122.717 12.8693L128.256 13.8878C130.325 14.3087 131.846 14.8393 131.846 16.4556C131.846 18.389 129.503 19.4076 126.387 19.4076C122.955 19.4076 119.644 17.9987 117.849 15.2906L114.769 18.4927C117.07 21.3044 121.281 22.9939 126.387 22.9939C132.157 22.9939 136.758 20.5664 136.758 16.2787C136.758 12.5521 134.031 10.7955 129.43 9.91116L129.412 9.91726ZM13.8893 14.2782C13.8893 17.3704 12.5626 19.2002 9.48314 19.2002C6.40368 19.2002 4.8396 17.2058 4.96741 13.961H0.00739743C-0.187351 19.554 3.47636 23 9.44054 23C14.8205 23 18.8372 20.048 18.8372 14.5587V0.420846H13.8833V14.2782H13.8893ZM61.0672 13.0827H72.1375V9.35615H61.0672V4.18405H75.7647V0.420861H56.2715V22.5792H76.1116V18.816H61.0672V13.0827ZM90.5778 0.420861L102.354 15.6139V0.420861H106.876V22.5792H102.549L89.5675 6.15408V22.5792H85.0822V0.420861H90.5778ZM193.119 0.420861V12.9059C193.119 16.9496 190.977 19.2368 187.076 19.2368C183.175 19.2368 181.075 16.9496 181.075 12.9059V0.420861H176.164V13.5036C176.164 19.9748 181.191 23 187.082 23C192.973 23 198 19.9748 198 13.5036V0.420861H193.125H193.119ZM155.849 19.2368C159.75 19.2368 161.892 16.9496 161.892 12.9059V0.420861H166.767V13.5036C166.767 19.9748 161.74 23 155.849 23C149.958 23 144.931 19.9748 144.931 13.5036V0.420861H149.842V12.9059C149.842 16.9496 151.948 19.2368 155.849 19.2368ZM30.37 11.3201C30.37 7.69716 33.3034 4.75736 36.9184 4.75736C40.5334 4.75736 43.4668 7.69716 43.4668 11.3201C43.4668 14.943 40.5334 17.8828 36.9184 17.8828C33.3034 17.8828 30.37 14.943 30.37 11.3201Z" fill="#ffffff"/> 4794</g> 4795</svg> 4796 <div class="max-w-[5rem] md:max-w-[8rem]"> 4797 <div class="w-80 md:w-128"> 4798 <svg width="128" height="24" viewBox="0 0 128 24" fill="none" xmlns="http://www.w3.org/2000/svg" role="img" alt="" class="max-w-full" aria-hidden="true"> 4799 <path d="M126.869 9.73611C125.583 8.73615 123.715 8.93394 122.682 10.1976C120.198 13.2415 116.44 14.9997 112.462 14.9887C105.254 14.9887 99.4189 9.28558 99.3969 2.25283H93.4411C93.1663 9.29657 87.0896 14.7909 79.881 14.5272C73.2109 14.2744 67.8045 9.15372 67.3429 2.64842V2.16492L61.3431 2.25283V2.71435C61.2662 5.83513 59.9695 8.81307 57.7059 11.0218C55.2444 13.5492 51.8379 14.9887 48.2666 15.0327C41.2119
479915.0327 35.4318 9.53832 35.2121 2.64842C35.2121 2.49458 35.2121 2.34074 35.2121 2.17591L29.2562 2.25283V2.72534C29.2342 5.85711 27.9705 8.85702 25.7178 11.0987C23.2014 13.5931 19.773 14.9997 16.1797 14.9997C11.9161 14.9997 7.92718 12.9778 5.46571 9.58227C4.55365 8.24165 2.70756 7.87903 1.33397 8.76911C-0.0396134 9.65919 -0.413228 11.4613 0.498832 12.802C0.531798 12.8459 0.553775 12.8899 0.586741 12.9228C4.14707 17.8897 9.97107 20.8457 16.1797 20.8567C21.3773 20.8567 26.3442 18.7908 29.9815 15.1645C30.8496 14.3074 31.6188 13.3624 32.2891 12.3404C35.7945 17.648 41.8163 20.8457 48.2776 20.8567C53.4533 20.8127 58.3982 18.7358 61.9915 15.0876C62.8596 14.2085 63.6398 13.2525 64.3211 12.2305C69.9473 20.8896 81.6942 23.45 90.562 17.9556C92.9246 16.4942 94.9245 14.5382 96.419 12.2305C99.9024 17.593 105.957 20.8457 112.462 20.8457C118.264 20.8567 123.748 18.2743 127.352 13.8349C128.374 12.5822 128.165 10.7471 126.88 9.7471" fill="var(--color-main-complement)"/> 4800 </svg> 4801</div> 4802 </div> 4803 4804 <div class="flex flex-col gap-40 md:gap-48 2xl:gap-64"> 4805 <div class="flex flex-col gap-40 md:gap-28 lg:gap-48 2xl:gap-32 lg:flex-row lg:justify-between block-prose"> 4806 <div class="flex flex-col md:flex-row gap-40 md:gap-48 2xl:gap-64"> 4807 4808 <div class="flex flex-col gap-12 2xl:gap-16"> 4809 <h2 class="components-atoms-heading text-left text-base 2xl:text-baseb font-600 "> 4810 City of Joensuu 4811</h2> 4812 4813 4814 <div class="flex flex-col gap-2 2xl:gap-4 leading-relaxed block-prose"> 4815 <p>PL 59, 80101 JOENSUU</p> 4816<p>Tel. <a href="tel:+ 358132677111">+ 358 13 267 7111</a></p> 4817<p><a title="Kirjaamon sähköpostiosoite" href="/cdn-cgi/l/email-protection#a0cbc9d2cac1c1cdcfe0cacfc5ced3d5d58ec6c9"><span class="__cf_email__" data-cfemail="b4dfddc6ded5d5d9dbf4dedbd1dac7c1c19ad2dd">[email protected]</span></a></p> 4818<p>Business ID: 0242746-2</p> 4819<p><a href="https://www.joensuu.fi/en/contacts/">Contacts</a></p> 4820 4821 </div> 4822 </div> 4823 4824 <div class="flex flex-col gap-12 2xl:gap-16"> 4825 <h2 class="components-atoms-heading text-left text-base 2xl:text-baseb font-600 "> 4826 Useful Links 4827</h2> 4828 4829 <ul class="flex flex-col gap-2 2xl:gap-4"> 4830 <li> 4831 <a href="https://www.joensuu.fi/en/governance-and-decision-making/finance/invoices-to-and-from-the-city/" class="flex items-center py-4 ">Invoices to and from the city</a> 4832 </li> 4833 4834 <li> 4835 <a href="https://www.joensuu.fi/en/governance-and-decision-making/communications-and-marketing/for-the-media/" class="flex items-center py-4 ">For the media</a> 4836 </li> 4837 4838 <li> 4839 <a href="https://youtu.be/yA4aFD0AjDs" class="flex items-center py-4 ">Webcam</a> 4840 </li> 4841 4842 <li> 4843 <a href="https://www.joensuu.fi/en/feedback/" class="flex items-center py-4 ">Feedback</a> 4844 </li> 4845 4846 <li> 4847 <a href="https://www.joensuu.fi/en/employee-links/" class="flex items-center py-4 ">Employee Links</a> 4848 </li> 4849 4850 </ul> 4851 </div> 4852 <div class="flex flex-col gap-12 2xl:gap-16"> 4853 <h2 class="components-atoms-heading text-left text-base 2xl:text-baseb font-600 "> 4854 City Online 4855</h2> 4856 4857 <ul class="flex flex-col gap-2 2xl:gap-4"> 4858 <li> 4859 <a href="https://www.visitjoensuu.fi/en-FI" class="flex items-center py-4 ">Visit Joensuu</a> 4860 </li> 4861 4862 <li> 4863 <a href="https://jojo.joensuu.fi/en/" class="flex items-center py-4 ">Joensuu Region Public Transport</a> 4864 </li> 4865 4866 <li> 4867 <a href="https://vaara.finna.fi/?lng=en-gb" class="flex items-center py-4 ">Vaara Libraries</a> 4868 </li> 4869 4870 <li> 4871 <a href="https://www.museoeliel.fi/" class="flex items-center py-4 ">Museum Eliel</a> 4872 </li> 4873 4874 <li> 4875 <a href="https://joensuuntaidemuseo.fi/" class="flex items-center py-4 ">Joensuu Art Museum</a> 4876 </li> 4877 4878 <li> 4879 <a href="https://joensuunkaupunginorkesteri.fi/" class="flex items-center py-4 ">Joensuu City Orchestra</a> 4880 </li> 4881 4882 <li> 4883 <a href="https://www.joensuunseudunkansalaisopisto.fi/en/etusivu-english/" class="flex items-center py-4 ">The adult education center of Joensuu Area</a> 4884 </li> 4885 4886 <li> 4887 <a href="https://luotsipohjoiskarjala.fi/" class="flex items-center py-4 ">Luotsi (employment services)</a> 4888 </li> 4889 4890 <li> 4891 <a href="https://www.joensuunvesi.fi/" class="flex items-center py-4 ">Joensuun Vesi (water utility)</a> 4892 </li> 4893 4894 <li> 4895 <a href="https://www.internationaljoensuu.fi/" class="flex items-center py-4 ">International House Joensuu</a> 4896 </li> 4897 4898 </ul> 4899 </div> 4900 </div> 4901 4902 <div class="flex flex-col md:flex-row gap-40 md:gap-48 2xl:gap-64"> 4903 <div class="flex flex-col gap-12 2xl:gap-16"> 4904 <h2 class="components-atoms-heading text-left text-base 2xl:text-baseb font-600 "> 4905 Municipal Group Companies 4906</h2> 4907 4908 <ul class="flex flex-col gap-2 2xl:gap-4"> 4909 <li> 4910 <a href="https://www.karelia.fi/en/frontpage/" class="flex items-center py-4 ">Karelia University of Applied Sciences</a> 4911 </li> 4912 4913 <li> 4914 <a href="https://www.islo.fi/en/" class="flex items-center py-4 ">Sports Institute of Eastern Finland</a> 4915 </li> 4916 4917 <li> 4918 <a href="http://www.joensuunyrityskiinteistot.fi/" class="flex items-center py-4 ">Joensuun yrityskiinteistöt</a> 4919 </li> 4920 4921 <li> 4922 <a href="https://www.joensuunelli.fi/joensuun-ellin-kodit-oy/" class="flex items-center py-4 ">Joensuun Ellin Kodit Oy</a> 4923 </li> 4924 4925 <li> 4926 <a href="https://businessjoensuu.fi/en/" class="flex items-center py-4 ">Business Joensuu</a> 4927 </li> 4928 4929 <li> 4930 <a href="https://www.joensuunpysakointi.fi/" class="flex items-center py-4 ">Joensuun pysäköinti</a> 4931 </li> 4932 4933 <li> 4934 <a href="https://www.puhas.fi/en/puhas.html" class="flex items-center py-4 ">Puhas</a> 4935 </li> 4936 4937 <li> 4938 <a href="https://joensuunsatama.fi/" class="flex items-center py-4 ">Joensuun satama</a> 4939 </li> 4940 4941 </ul> 4942 </div> 4943 </div> 4944 </div> 4945 4946 <div class="flex flex-col gap-16"> 4947 4948 <h2 class="components-atoms-heading text-left text-base 2xl:text-baseb font-600 "> 4949 Follow us on social media 4950</h2> 4951 4952 <div class="flex flex-col gap-40 md:gap-48 2xl:gap-64 xl:flex-row xl:justify-between"> 4953 <div class="flex flex-col gap-12 2xl:gap-16"> 4954 <ul class="flex flex-wrap gap-16 md:gap-20 2xl:gap-24"> 4955 <li> 4956 <a href="https://www.facebook.com/Joensuunkaupunki/" class="flex items-center gap-8 2xl:gap-12 group" >
4957 <span class="flex justify-center items-center rounded-full border-2 p-12 transition duration-150 shadow-button-social-icon text-button bg-surface-button border-border-social-icon group-hover:bg-surface-button-hover" aria-hidden="true""> 4958 <svg class="w-20 h-20 inherit-color-fill" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 4959<path d="M7.80469 11.2246H6V8.54492H7.80469V7.39648C7.80469 4.41602 9.14453 3.02148 12.0703 3.02148C12.6172 3.02148 13.5742 3.13086 13.957 3.24023V5.67383C13.7656 5.64648 13.4102 5.64648 12.9453 5.64648C11.5234 5.64648 10.9766 6.19336 10.9766 7.58789V8.54492H13.8203L13.3281 11.2246H10.9766V17.0215H7.80469V11.2246Z" fill="#0026E1"/> 4960</svg> </span> 4961 4962 <span>Facebook</span> 4963 </a> 4964 </li> 4965 <li> 4966 <a href="https://www.instagram.com/joensuu_idassa/" class="flex items-center gap-8 2xl:gap-12 group" > 4967 <span class="flex justify-center items-center rounded-full border-2 p-12 transition duration-150 shadow-button-social-icon text-button bg-surface-button border-border-social-icon group-hover:bg-surface-button-hover" aria-hidden="true""> 4968 <svg class="w-20 h-20 inherit-color-fill" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 4969<path d="M10.1387 6.98828C11.8613 6.98828 13.2832 8.41016 13.2832 10.1328C13.2832 11.8828 11.8613 13.2773 10.1387 13.2773C8.38867 13.2773 6.99414 11.8828 6.99414 10.1328C6.99414 8.41016 8.38867 6.98828 10.1387 6.98828ZM10.1387 12.1836C11.2598 12.1836 12.1621 11.2812 12.1621 10.
49691328C12.1621 9.01172 11.2598 8.10938 10.1387 8.10938C8.99023 8.10938 8.08789 9.01172 8.08789 10.1328C8.08789 11.2812 9.01758 12.1836 10.1387 12.1836ZM14.1309 6.87891C14.1309 6.46875 13.8027 6.14062 13.3926 6.14062C12.9824 6.14062 12.6543 6.46875 12.6543 6.87891C12.6543 7.28906 12.9824 7.61719 13.3926 7.61719C13.8027 7.61719 14.1309 7.28906 14.1309 6.87891ZM16.209 7.61719C16.2637 8.62891 16.2637 11.6641 16.209 12.6758C16.1543 13.6602 15.9355 14.5078 15.2246 15.2461C14.5137 15.957 13.6387 16.1758 12.6543 16.2305C11.6426 16.2852 8.60742 16.2852 7.5957 16.2305C6.61133 16.1758 5.76367 15.957 5.02539 15.2461C4.31445 14.5078 4.0957 13.6602 4.04102 12.6758C3.98633 11.6641 3.98633 8.62891 4.04102 7.61719C4.0957 6.63281 4.31445 5.75781 5.02539 5.04688C5.76367 4.33594 6.61133 4.11719 7.5957 4.0625C8.60742 4.00781 11.6426 4.00781 12.6543 4.0625C13.6387 4.11719 14.5137 4.33594 15.2246 5.04688C15.9355 5.75781 16.1543 6.63281 16.209 7.61719ZM14.8965 13.7422C15.2246 12.9492 15.1426 11.0352 15.1426 10.1328C15.1426 9.25781 15.2246 7.34375 14.8965 6.52344C14.6777 6.00391 14.2676 5.56641 13.748 5.375C12.9277 5.04688 11.0137 5.12891 10.1387 5.12891C9.23633 5.12891 7.32227 5.04688 6.5293 5.375C5.98242 5.59375 5.57227 6.00391 5.35352 6.52344C5.02539 7.34375 5.10742 9.25781 5.10742 10.1328C5.10742 11.0352 5.02539 12.9492 5.35352 13.7422C5.57227 14.2891 5.98242 14.6992 6.5293 14.918C7.32227 15.2461 9.23633 15.1641 10.1387 15.1641C11.0137 15.1641 12.9277 15.2461 13.748 14.918C14.2676 14.6992 14.7051 14.2891 14.8965 13.7422Z" fill="#0026E1"/> 4970</svg> </span> 4971 4972 <span>Instagram</span> 4973 </a> 4974 </li> 4975 <li> 4976 <a href="https://fi.linkedin.com/company/joensuunkaupunki" class="flex items-center gap-8 2xl:gap-12 group" > 4977 <span class="flex justify-center items-center rounded-full border-2 p-12 transition duration-150 shadow-button-social-icon text-button bg-surface-button border-border-social-icon group-hover:bg-surface-button-hover" aria-hidden="true""> 4978 <svg class="w-20 h-20 inherit-color-fill" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 4979<path d="M6.73438 16.2578H4.19141V8.08203H6.73438V16.2578ZM5.44922 6.98828C4.65625 6.98828 4 6.30469 4 5.48438C4 4.96484 4.27344 4.47266 4.71094 4.22656C5.17578 3.95312 5.75 3.95312 6.1875 4.22656C6.65234 4.47266 6.92578 4.96484 6.92578 5.48438C6.92578 6.30469 6.26953 6.98828 5.44922 6.98828ZM16.2227 16.2578H13.707V12.293C13.707 11.3359 13.6797 10.1328 12.3672 10.1328C11.0547 10.1328 10.8633 11.1445 10.8633 12.2109V16.2578H8.32031V8.08203H10.7539V9.20312H10.7812C11.1367 8.57422 11.957 7.89062 13.1875 7.89062C15.7578 7.89062 16.25 9.58594 16.25 11.7734V16.2578H16.2227Z" fill="#0026E1"/> 4980</svg> </span> 4981 4982 <span>LinkedIn</span> 4983 </a> 4984 </li> 4985 <li> 4986 <a href="https://www.youtube.com/joensuunkaupunki" class="flex items-center gap-8 2xl:gap-12 group" > 4987 <span class="flex justify-center items-center rounded-full border-2 p-12 transition duration-150 shadow-button-social-icon text-button bg-surface-button border-border-social-icon group-hover:bg-surface-button-hover" aria-hidden="true""> 4988 <svg class="w-20 h-20 inherit-color-fill" role="img" alt="" aria-hidden="true" width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"> 4989<path d="M17.6289 6.68945C17.957 7.83789 17.957 10.2988 17.957 10.2988C17.957 10.2988 17.957 12.7324 17.6289 13.9082C17.4648 14.5645 16.9453 15.0566 16.3164 15.2207C15.1406 15.5215 10.4922 15.5215 10.4922 15.5215C10.4922 15.5215 5.81641 15.5215 4.64062 15.2207C4.01172 15.0566 3.49219 14.5645 3.32812 13.9082C3 12.7324 3 10.2988 3 10.2988C3 10.2988 3 7.83789 3.32812 6.68945C3.49219 6.0332 4.01172 5.51367 4.64062 5.34961C5.81641 5.02148 10.4922 5.02148 10.4922 5.02148C10.4922 5.02148 15.1406 5.02148 16.3164 5.34961C16.9453 5.51367 17.4648 6.0332 17.6289 6.68945ZM8.96094 12.5137L12.8438 10.2988L8.96094 8.08398V12.5137Z" fill="#0026E1"/> 4990</svg> </span> 4991
4992 <span>YouTube</span> 4993 </a> 4994 </li> 4995 </ul> 4996 </div> 4997 4998 <div class="flex flex-wrap gap-16 md:gap-20 2xl:gap-24 items-center"> 4999 <p class="inline-block">© 2026</p> 5000 5001 <nav aria-label="Footer menu"> 5002 <ul class="flex flex-wrap gap-16 md:gap-20 2xl:gap-24 block-prose"> 5003 <li class="flex items-center py-4"> 5004 <button onclick="javascript: Cookiebot.show()" class="cursor-pointer hover:underline focus-visible:underline"> 5005 Change cookie settings 5006 </button> 5007 </li> 5008 <li> 5009 <a href="https://www.joensuu.fi/en/about-the-website/" class="flex items-center py-4 ">About the website</a> 5010 </li> 5011 5012 <li> 5013 <a href="https://www.joensuu.fi/en/accessibility-statement/" class="flex items-center py-4 ">Accessibility statement</a> 5014 </li> 5015 5016 </ul> 5017 </nav> 5018 </div> 5019 </div> 5020 </div> 5021 </div> 5022 </div> 5023 </div> 5024</footer> 5025 </div>
vendor: 118 bytes, lines 5025-5027
5025 5026 5027 <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
5027<script type="speculationrules"> 5028{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/app/uploads/*","/app/*","/app/plugins/*","/app/themes/joensuu/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 5029</script>
vendor: 1 bytes, line 5029
5029
5030<script> 5031 (g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({ 5032 key: "AIzaSyBeZ04Tc0paWREvtNVCNmaWlwyLdDrLoCc", 5033 v: "weekly", 5034 language: "en" 5035 });</script>
5035<script id="wp-emoji-settings" type="application/json"> 5036{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://www.joensuu.fi/wp-includes/js/wp-emoji-release.min.js?ver=798760783"}} 5037</script>
vendor: 1 bytes, line 5037
5037
5038<script type="module"> 5039/*! This file is auto-generated */ 5040var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))}); 5041//# sourceURL=https://www.joensuu.fi/wp-includes/js/wp-emoji-loader.min.js 5042</script>
5042 5043 </body> 5044</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.